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
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://www.googleapis.com/content/v2.1/"
78
79// OAuth2 scopes used by this API.
80const (
81	// Manage your product listings and accounts for Google Shopping
82	ContentScope = "https://www.googleapis.com/auth/content"
83)
84
85// NewService creates a new APIService.
86func NewService(ctx context.Context, opts ...option.ClientOption) (*APIService, error) {
87	scopesOption := option.WithScopes(
88		"https://www.googleapis.com/auth/content",
89	)
90	// NOTE: prepend, so we don't override user-specified scopes.
91	opts = append([]option.ClientOption{scopesOption}, opts...)
92	opts = append(opts, internaloption.WithDefaultEndpoint(basePath))
93	client, endpoint, err := htransport.NewClient(ctx, opts...)
94	if err != nil {
95		return nil, err
96	}
97	s, err := New(client)
98	if err != nil {
99		return nil, err
100	}
101	if endpoint != "" {
102		s.BasePath = endpoint
103	}
104	return s, nil
105}
106
107// New creates a new APIService. It uses the provided http.Client for requests.
108//
109// Deprecated: please use NewService instead.
110// To provide a custom HTTP client, use option.WithHTTPClient.
111// If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead.
112func New(client *http.Client) (*APIService, error) {
113	if client == nil {
114		return nil, errors.New("client is nil")
115	}
116	s := &APIService{client: client, BasePath: basePath}
117	s.Accounts = NewAccountsService(s)
118	s.Accountstatuses = NewAccountstatusesService(s)
119	s.Accounttax = NewAccounttaxService(s)
120	s.Datafeeds = NewDatafeedsService(s)
121	s.Datafeedstatuses = NewDatafeedstatusesService(s)
122	s.Liasettings = NewLiasettingsService(s)
123	s.Orderinvoices = NewOrderinvoicesService(s)
124	s.Orderreports = NewOrderreportsService(s)
125	s.Orderreturns = NewOrderreturnsService(s)
126	s.Orders = NewOrdersService(s)
127	s.Pos = NewPosService(s)
128	s.Products = NewProductsService(s)
129	s.Productstatuses = NewProductstatusesService(s)
130	s.Regionalinventory = NewRegionalinventoryService(s)
131	s.Returnaddress = NewReturnaddressService(s)
132	s.Returnpolicy = NewReturnpolicyService(s)
133	s.Shippingsettings = NewShippingsettingsService(s)
134	return s, nil
135}
136
137type APIService struct {
138	client    *http.Client
139	BasePath  string // API endpoint base URL
140	UserAgent string // optional additional User-Agent fragment
141
142	Accounts *AccountsService
143
144	Accountstatuses *AccountstatusesService
145
146	Accounttax *AccounttaxService
147
148	Datafeeds *DatafeedsService
149
150	Datafeedstatuses *DatafeedstatusesService
151
152	Liasettings *LiasettingsService
153
154	Orderinvoices *OrderinvoicesService
155
156	Orderreports *OrderreportsService
157
158	Orderreturns *OrderreturnsService
159
160	Orders *OrdersService
161
162	Pos *PosService
163
164	Products *ProductsService
165
166	Productstatuses *ProductstatusesService
167
168	Regionalinventory *RegionalinventoryService
169
170	Returnaddress *ReturnaddressService
171
172	Returnpolicy *ReturnpolicyService
173
174	Shippingsettings *ShippingsettingsService
175}
176
177func (s *APIService) userAgent() string {
178	if s.UserAgent == "" {
179		return googleapi.UserAgent
180	}
181	return googleapi.UserAgent + " " + s.UserAgent
182}
183
184func NewAccountsService(s *APIService) *AccountsService {
185	rs := &AccountsService{s: s}
186	return rs
187}
188
189type AccountsService struct {
190	s *APIService
191}
192
193func NewAccountstatusesService(s *APIService) *AccountstatusesService {
194	rs := &AccountstatusesService{s: s}
195	return rs
196}
197
198type AccountstatusesService struct {
199	s *APIService
200}
201
202func NewAccounttaxService(s *APIService) *AccounttaxService {
203	rs := &AccounttaxService{s: s}
204	return rs
205}
206
207type AccounttaxService struct {
208	s *APIService
209}
210
211func NewDatafeedsService(s *APIService) *DatafeedsService {
212	rs := &DatafeedsService{s: s}
213	return rs
214}
215
216type DatafeedsService struct {
217	s *APIService
218}
219
220func NewDatafeedstatusesService(s *APIService) *DatafeedstatusesService {
221	rs := &DatafeedstatusesService{s: s}
222	return rs
223}
224
225type DatafeedstatusesService struct {
226	s *APIService
227}
228
229func NewLiasettingsService(s *APIService) *LiasettingsService {
230	rs := &LiasettingsService{s: s}
231	return rs
232}
233
234type LiasettingsService struct {
235	s *APIService
236}
237
238func NewOrderinvoicesService(s *APIService) *OrderinvoicesService {
239	rs := &OrderinvoicesService{s: s}
240	return rs
241}
242
243type OrderinvoicesService struct {
244	s *APIService
245}
246
247func NewOrderreportsService(s *APIService) *OrderreportsService {
248	rs := &OrderreportsService{s: s}
249	return rs
250}
251
252type OrderreportsService struct {
253	s *APIService
254}
255
256func NewOrderreturnsService(s *APIService) *OrderreturnsService {
257	rs := &OrderreturnsService{s: s}
258	return rs
259}
260
261type OrderreturnsService struct {
262	s *APIService
263}
264
265func NewOrdersService(s *APIService) *OrdersService {
266	rs := &OrdersService{s: s}
267	return rs
268}
269
270type OrdersService struct {
271	s *APIService
272}
273
274func NewPosService(s *APIService) *PosService {
275	rs := &PosService{s: s}
276	return rs
277}
278
279type PosService struct {
280	s *APIService
281}
282
283func NewProductsService(s *APIService) *ProductsService {
284	rs := &ProductsService{s: s}
285	return rs
286}
287
288type ProductsService struct {
289	s *APIService
290}
291
292func NewProductstatusesService(s *APIService) *ProductstatusesService {
293	rs := &ProductstatusesService{s: s}
294	return rs
295}
296
297type ProductstatusesService struct {
298	s *APIService
299}
300
301func NewRegionalinventoryService(s *APIService) *RegionalinventoryService {
302	rs := &RegionalinventoryService{s: s}
303	return rs
304}
305
306type RegionalinventoryService struct {
307	s *APIService
308}
309
310func NewReturnaddressService(s *APIService) *ReturnaddressService {
311	rs := &ReturnaddressService{s: s}
312	return rs
313}
314
315type ReturnaddressService struct {
316	s *APIService
317}
318
319func NewReturnpolicyService(s *APIService) *ReturnpolicyService {
320	rs := &ReturnpolicyService{s: s}
321	return rs
322}
323
324type ReturnpolicyService struct {
325	s *APIService
326}
327
328func NewShippingsettingsService(s *APIService) *ShippingsettingsService {
329	rs := &ShippingsettingsService{s: s}
330	return rs
331}
332
333type ShippingsettingsService struct {
334	s *APIService
335}
336
337// Account: Account data. After the creation of a new account it may
338// take a few minutes before it is fully operational. The methods
339// delete, insert, and update require the admin role.
340type Account struct {
341	// AdsLinks: List of linked Ads accounts that are active or pending
342	// approval. To create a new link request, add a new link with status
343	// active to the list. It will remain in a pending state until approved
344	// or rejected either in the Ads interface or through the AdWords API.
345	// To delete an active link, or to cancel a link request, remove it from
346	// the list.
347	AdsLinks []*AccountAdsLink `json:"adsLinks,omitempty"`
348
349	// AdultContent: Indicates whether the merchant sells adult content.
350	AdultContent bool `json:"adultContent,omitempty"`
351
352	// BusinessInformation: The business information of the account.
353	BusinessInformation *AccountBusinessInformation `json:"businessInformation,omitempty"`
354
355	// GoogleMyBusinessLink: The GMB account which is linked or in the
356	// process of being linked with the Merchant Center account.
357	GoogleMyBusinessLink *AccountGoogleMyBusinessLink `json:"googleMyBusinessLink,omitempty"`
358
359	// Id: Merchant Center account ID.
360	Id uint64 `json:"id,omitempty,string"`
361
362	// Kind: Identifies what kind of resource this is. Value: the fixed
363	// string "content#account".
364	Kind string `json:"kind,omitempty"`
365
366	// Name: Display name for the account.
367	Name string `json:"name,omitempty"`
368
369	// SellerId: Client-specific, locally-unique, internal ID for the child
370	// account.
371	SellerId string `json:"sellerId,omitempty"`
372
373	// Users: Users with access to the account. Every account (except for
374	// subaccounts) must have at least one admin user.
375	Users []*AccountUser `json:"users,omitempty"`
376
377	// WebsiteUrl: The merchant's website.
378	WebsiteUrl string `json:"websiteUrl,omitempty"`
379
380	// YoutubeChannelLinks: List of linked YouTube channels that are active
381	// or pending approval. To create a new link request, add a new link
382	// with status active to the list. It will remain in a pending state
383	// until approved or rejected in the YT Creator Studio interface. To
384	// delete an active link, or to cancel a link request, remove it from
385	// the list.
386	YoutubeChannelLinks []*AccountYouTubeChannelLink `json:"youtubeChannelLinks,omitempty"`
387
388	// ServerResponse contains the HTTP response code and headers from the
389	// server.
390	googleapi.ServerResponse `json:"-"`
391
392	// ForceSendFields is a list of field names (e.g. "AdsLinks") to
393	// unconditionally include in API requests. By default, fields with
394	// empty values are omitted from API requests. However, any non-pointer,
395	// non-interface field appearing in ForceSendFields will be sent to the
396	// server regardless of whether the field is empty or not. This may be
397	// used to include empty fields in Patch requests.
398	ForceSendFields []string `json:"-"`
399
400	// NullFields is a list of field names (e.g. "AdsLinks") to include in
401	// API requests with the JSON null value. By default, fields with empty
402	// values are omitted from API requests. However, any field with an
403	// empty value appearing in NullFields will be sent to the server as
404	// null. It is an error if a field in this list has a non-empty value.
405	// This may be used to include null fields in Patch requests.
406	NullFields []string `json:"-"`
407}
408
409func (s *Account) MarshalJSON() ([]byte, error) {
410	type NoMethod Account
411	raw := NoMethod(*s)
412	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
413}
414
415type AccountAddress struct {
416	// Country: CLDR country code (e.g. "US").
417	Country string `json:"country,omitempty"`
418
419	// Locality: City, town or commune. May also include dependent
420	// localities or sublocalities (e.g. neighborhoods or suburbs).
421	Locality string `json:"locality,omitempty"`
422
423	// PostalCode: Postal code or ZIP (e.g. "94043").
424	PostalCode string `json:"postalCode,omitempty"`
425
426	// Region: Top-level administrative subdivision of the country. For
427	// example, a state like California ("CA") or a province like Quebec
428	// ("QC").
429	Region string `json:"region,omitempty"`
430
431	// StreetAddress: Street-level part of the address.
432	StreetAddress string `json:"streetAddress,omitempty"`
433
434	// ForceSendFields is a list of field names (e.g. "Country") to
435	// unconditionally include in API requests. By default, fields with
436	// empty values are omitted from API requests. However, any non-pointer,
437	// non-interface field appearing in ForceSendFields will be sent to the
438	// server regardless of whether the field is empty or not. This may be
439	// used to include empty fields in Patch requests.
440	ForceSendFields []string `json:"-"`
441
442	// NullFields is a list of field names (e.g. "Country") to include in
443	// API requests with the JSON null value. By default, fields with empty
444	// values are omitted from API requests. However, any field with an
445	// empty value appearing in NullFields will be sent to the server as
446	// null. It is an error if a field in this list has a non-empty value.
447	// This may be used to include null fields in Patch requests.
448	NullFields []string `json:"-"`
449}
450
451func (s *AccountAddress) MarshalJSON() ([]byte, error) {
452	type NoMethod AccountAddress
453	raw := NoMethod(*s)
454	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
455}
456
457type AccountAdsLink struct {
458	// AdsId: Customer ID of the Ads account.
459	AdsId uint64 `json:"adsId,omitempty,string"`
460
461	// Status: Status of the link between this Merchant Center account and
462	// the Ads account. Upon retrieval, it represents the actual status of
463	// the link and can be either active if it was approved in Google Ads or
464	// pending if it's pending approval. Upon insertion, it represents the
465	// intended status of the link. Re-uploading a link with status active
466	// when it's still pending or with status pending when it's already
467	// active will have no effect: the status will remain unchanged.
468	// Re-uploading a link with deprecated status inactive is equivalent to
469	// not submitting the link at all and will delete the link if it was
470	// active or cancel the link request if it was pending.
471	Status string `json:"status,omitempty"`
472
473	// ForceSendFields is a list of field names (e.g. "AdsId") to
474	// unconditionally include in API requests. By default, fields with
475	// empty values are omitted from API requests. However, any non-pointer,
476	// non-interface field appearing in ForceSendFields will be sent to the
477	// server regardless of whether the field is empty or not. This may be
478	// used to include empty fields in Patch requests.
479	ForceSendFields []string `json:"-"`
480
481	// NullFields is a list of field names (e.g. "AdsId") to include in API
482	// requests with the JSON null value. By default, fields with empty
483	// values are omitted from API requests. However, any field with an
484	// empty value appearing in NullFields will be sent to the server as
485	// null. It is an error if a field in this list has a non-empty value.
486	// This may be used to include null fields in Patch requests.
487	NullFields []string `json:"-"`
488}
489
490func (s *AccountAdsLink) MarshalJSON() ([]byte, error) {
491	type NoMethod AccountAdsLink
492	raw := NoMethod(*s)
493	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
494}
495
496type AccountBusinessInformation struct {
497	// Address: The address of the business.
498	Address *AccountAddress `json:"address,omitempty"`
499
500	// CustomerService: The customer service information of the business.
501	CustomerService *AccountCustomerService `json:"customerService,omitempty"`
502
503	// PhoneNumber: The phone number of the business.
504	PhoneNumber string `json:"phoneNumber,omitempty"`
505
506	// ForceSendFields is a list of field names (e.g. "Address") to
507	// unconditionally include in API requests. By default, fields with
508	// empty values are omitted from API requests. However, any non-pointer,
509	// non-interface field appearing in ForceSendFields will be sent to the
510	// server regardless of whether the field is empty or not. This may be
511	// used to include empty fields in Patch requests.
512	ForceSendFields []string `json:"-"`
513
514	// NullFields is a list of field names (e.g. "Address") to include in
515	// API requests with the JSON null value. By default, fields with empty
516	// values are omitted from API requests. However, any field with an
517	// empty value appearing in NullFields will be sent to the server as
518	// null. It is an error if a field in this list has a non-empty value.
519	// This may be used to include null fields in Patch requests.
520	NullFields []string `json:"-"`
521}
522
523func (s *AccountBusinessInformation) MarshalJSON() ([]byte, error) {
524	type NoMethod AccountBusinessInformation
525	raw := NoMethod(*s)
526	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
527}
528
529type AccountCustomerService struct {
530	// Email: Customer service email.
531	Email string `json:"email,omitempty"`
532
533	// PhoneNumber: Customer service phone number.
534	PhoneNumber string `json:"phoneNumber,omitempty"`
535
536	// Url: Customer service URL.
537	Url string `json:"url,omitempty"`
538
539	// ForceSendFields is a list of field names (e.g. "Email") to
540	// unconditionally include in API requests. By default, fields with
541	// empty values are omitted from API requests. However, any non-pointer,
542	// non-interface field appearing in ForceSendFields will be sent to the
543	// server regardless of whether the field is empty or not. This may be
544	// used to include empty fields in Patch requests.
545	ForceSendFields []string `json:"-"`
546
547	// NullFields is a list of field names (e.g. "Email") to include in API
548	// requests with the JSON null value. By default, fields with empty
549	// values are omitted from API requests. However, any field with an
550	// empty value appearing in NullFields will be sent to the server as
551	// null. It is an error if a field in this list has a non-empty value.
552	// This may be used to include null fields in Patch requests.
553	NullFields []string `json:"-"`
554}
555
556func (s *AccountCustomerService) MarshalJSON() ([]byte, error) {
557	type NoMethod AccountCustomerService
558	raw := NoMethod(*s)
559	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
560}
561
562type AccountGoogleMyBusinessLink struct {
563	// GmbEmail: The GMB email address of which a specific account within a
564	// GMB account. A sample account within a GMB account could be a
565	// business account with set of locations, managed under the GMB
566	// account.
567	GmbEmail string `json:"gmbEmail,omitempty"`
568
569	// Status: Status of the link between this Merchant Center account and
570	// the GMB account.
571	Status string `json:"status,omitempty"`
572
573	// ForceSendFields is a list of field names (e.g. "GmbEmail") to
574	// unconditionally include in API requests. By default, fields with
575	// empty values are omitted from API requests. However, any non-pointer,
576	// non-interface field appearing in ForceSendFields will be sent to the
577	// server regardless of whether the field is empty or not. This may be
578	// used to include empty fields in Patch requests.
579	ForceSendFields []string `json:"-"`
580
581	// NullFields is a list of field names (e.g. "GmbEmail") to include in
582	// API requests with the JSON null value. By default, fields with empty
583	// values are omitted from API requests. However, any field with an
584	// empty value appearing in NullFields will be sent to the server as
585	// null. It is an error if a field in this list has a non-empty value.
586	// This may be used to include null fields in Patch requests.
587	NullFields []string `json:"-"`
588}
589
590func (s *AccountGoogleMyBusinessLink) MarshalJSON() ([]byte, error) {
591	type NoMethod AccountGoogleMyBusinessLink
592	raw := NoMethod(*s)
593	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
594}
595
596type AccountIdentifier struct {
597	// AggregatorId: The aggregator ID, set for aggregators and subaccounts
598	// (in that case, it represents the aggregator of the subaccount).
599	AggregatorId uint64 `json:"aggregatorId,omitempty,string"`
600
601	// MerchantId: The merchant account ID, set for individual accounts and
602	// subaccounts.
603	MerchantId uint64 `json:"merchantId,omitempty,string"`
604
605	// ForceSendFields is a list of field names (e.g. "AggregatorId") to
606	// unconditionally include in API requests. By default, fields with
607	// empty values are omitted from API requests. However, any non-pointer,
608	// non-interface field appearing in ForceSendFields will be sent to the
609	// server regardless of whether the field is empty or not. This may be
610	// used to include empty fields in Patch requests.
611	ForceSendFields []string `json:"-"`
612
613	// NullFields is a list of field names (e.g. "AggregatorId") to include
614	// in API requests with the JSON null value. By default, fields with
615	// empty values are omitted from API requests. However, any field with
616	// an empty value appearing in NullFields will be sent to the server as
617	// null. It is an error if a field in this list has a non-empty value.
618	// This may be used to include null fields in Patch requests.
619	NullFields []string `json:"-"`
620}
621
622func (s *AccountIdentifier) MarshalJSON() ([]byte, error) {
623	type NoMethod AccountIdentifier
624	raw := NoMethod(*s)
625	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
626}
627
628// AccountStatus: The status of an account, i.e., information about its
629// products, which is computed offline and not returned immediately at
630// insertion time.
631type AccountStatus struct {
632	// AccountId: The ID of the account for which the status is reported.
633	AccountId string `json:"accountId,omitempty"`
634
635	// AccountLevelIssues: A list of account level issues.
636	AccountLevelIssues []*AccountStatusAccountLevelIssue `json:"accountLevelIssues,omitempty"`
637
638	// Kind: Identifies what kind of resource this is. Value: the fixed
639	// string "content#accountStatus".
640	Kind string `json:"kind,omitempty"`
641
642	// Products: List of product-related data by channel, destination, and
643	// country. Data in this field may be delayed by up to 30 minutes.
644	Products []*AccountStatusProducts `json:"products,omitempty"`
645
646	// WebsiteClaimed: Whether the account's website is claimed or not.
647	WebsiteClaimed bool `json:"websiteClaimed,omitempty"`
648
649	// ServerResponse contains the HTTP response code and headers from the
650	// server.
651	googleapi.ServerResponse `json:"-"`
652
653	// ForceSendFields is a list of field names (e.g. "AccountId") to
654	// unconditionally include in API requests. By default, fields with
655	// empty values are omitted from API requests. However, any non-pointer,
656	// non-interface field appearing in ForceSendFields will be sent to the
657	// server regardless of whether the field is empty or not. This may be
658	// used to include empty fields in Patch requests.
659	ForceSendFields []string `json:"-"`
660
661	// NullFields is a list of field names (e.g. "AccountId") to include in
662	// API requests with the JSON null value. By default, fields with empty
663	// values are omitted from API requests. However, any field with an
664	// empty value appearing in NullFields will be sent to the server as
665	// null. It is an error if a field in this list has a non-empty value.
666	// This may be used to include null fields in Patch requests.
667	NullFields []string `json:"-"`
668}
669
670func (s *AccountStatus) MarshalJSON() ([]byte, error) {
671	type NoMethod AccountStatus
672	raw := NoMethod(*s)
673	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
674}
675
676type AccountStatusAccountLevelIssue struct {
677	// Country: Country for which this issue is reported.
678	Country string `json:"country,omitempty"`
679
680	// Destination: The destination the issue applies to.
681	Destination string `json:"destination,omitempty"`
682
683	// Detail: Additional details about the issue.
684	Detail string `json:"detail,omitempty"`
685
686	// Documentation: The URL of a web page to help resolving this issue.
687	Documentation string `json:"documentation,omitempty"`
688
689	// Id: Issue identifier.
690	Id string `json:"id,omitempty"`
691
692	// Severity: Severity of the issue.
693	Severity string `json:"severity,omitempty"`
694
695	// Title: Short description of the issue.
696	Title string `json:"title,omitempty"`
697
698	// ForceSendFields is a list of field names (e.g. "Country") to
699	// unconditionally include in API requests. By default, fields with
700	// empty values are omitted from API requests. However, any non-pointer,
701	// non-interface field appearing in ForceSendFields will be sent to the
702	// server regardless of whether the field is empty or not. This may be
703	// used to include empty fields in Patch requests.
704	ForceSendFields []string `json:"-"`
705
706	// NullFields is a list of field names (e.g. "Country") to include in
707	// API requests with the JSON null value. By default, fields with empty
708	// values are omitted from API requests. However, any field with an
709	// empty value appearing in NullFields will be sent to the server as
710	// null. It is an error if a field in this list has a non-empty value.
711	// This may be used to include null fields in Patch requests.
712	NullFields []string `json:"-"`
713}
714
715func (s *AccountStatusAccountLevelIssue) MarshalJSON() ([]byte, error) {
716	type NoMethod AccountStatusAccountLevelIssue
717	raw := NoMethod(*s)
718	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
719}
720
721type AccountStatusItemLevelIssue struct {
722	// AttributeName: The attribute's name, if the issue is caused by a
723	// single attribute.
724	AttributeName string `json:"attributeName,omitempty"`
725
726	// Code: The error code of the issue.
727	Code string `json:"code,omitempty"`
728
729	// Description: A short issue description in English.
730	Description string `json:"description,omitempty"`
731
732	// Detail: A detailed issue description in English.
733	Detail string `json:"detail,omitempty"`
734
735	// Documentation: The URL of a web page to help with resolving this
736	// issue.
737	Documentation string `json:"documentation,omitempty"`
738
739	// NumItems: Number of items with this issue.
740	NumItems int64 `json:"numItems,omitempty,string"`
741
742	// Resolution: Whether the issue can be resolved by the merchant.
743	Resolution string `json:"resolution,omitempty"`
744
745	// Servability: How this issue affects serving of the offer.
746	Servability string `json:"servability,omitempty"`
747
748	// ForceSendFields is a list of field names (e.g. "AttributeName") to
749	// unconditionally include in API requests. By default, fields with
750	// empty values are omitted from API requests. However, any non-pointer,
751	// non-interface field appearing in ForceSendFields will be sent to the
752	// server regardless of whether the field is empty or not. This may be
753	// used to include empty fields in Patch requests.
754	ForceSendFields []string `json:"-"`
755
756	// NullFields is a list of field names (e.g. "AttributeName") to include
757	// in API requests with the JSON null value. By default, fields with
758	// empty values are omitted from API requests. However, any field with
759	// an empty value appearing in NullFields will be sent to the server as
760	// null. It is an error if a field in this list has a non-empty value.
761	// This may be used to include null fields in Patch requests.
762	NullFields []string `json:"-"`
763}
764
765func (s *AccountStatusItemLevelIssue) MarshalJSON() ([]byte, error) {
766	type NoMethod AccountStatusItemLevelIssue
767	raw := NoMethod(*s)
768	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
769}
770
771type AccountStatusProducts struct {
772	// Channel: The channel the data applies to.
773	Channel string `json:"channel,omitempty"`
774
775	// Country: The country the data applies to.
776	Country string `json:"country,omitempty"`
777
778	// Destination: The destination the data applies to.
779	Destination string `json:"destination,omitempty"`
780
781	// ItemLevelIssues: List of item-level issues.
782	ItemLevelIssues []*AccountStatusItemLevelIssue `json:"itemLevelIssues,omitempty"`
783
784	// Statistics: Aggregated product statistics.
785	Statistics *AccountStatusStatistics `json:"statistics,omitempty"`
786
787	// ForceSendFields is a list of field names (e.g. "Channel") to
788	// unconditionally include in API requests. By default, fields with
789	// empty values are omitted from API requests. However, any non-pointer,
790	// non-interface field appearing in ForceSendFields will be sent to the
791	// server regardless of whether the field is empty or not. This may be
792	// used to include empty fields in Patch requests.
793	ForceSendFields []string `json:"-"`
794
795	// NullFields is a list of field names (e.g. "Channel") to include in
796	// API requests with the JSON null value. By default, fields with empty
797	// values are omitted from API requests. However, any field with an
798	// empty value appearing in NullFields will be sent to the server as
799	// null. It is an error if a field in this list has a non-empty value.
800	// This may be used to include null fields in Patch requests.
801	NullFields []string `json:"-"`
802}
803
804func (s *AccountStatusProducts) MarshalJSON() ([]byte, error) {
805	type NoMethod AccountStatusProducts
806	raw := NoMethod(*s)
807	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
808}
809
810type AccountStatusStatistics struct {
811	// Active: Number of active offers.
812	Active int64 `json:"active,omitempty,string"`
813
814	// Disapproved: Number of disapproved offers.
815	Disapproved int64 `json:"disapproved,omitempty,string"`
816
817	// Expiring: Number of expiring offers.
818	Expiring int64 `json:"expiring,omitempty,string"`
819
820	// Pending: Number of pending offers.
821	Pending int64 `json:"pending,omitempty,string"`
822
823	// ForceSendFields is a list of field names (e.g. "Active") to
824	// unconditionally include in API requests. By default, fields with
825	// empty values are omitted from API requests. However, any non-pointer,
826	// non-interface field appearing in ForceSendFields will be sent to the
827	// server regardless of whether the field is empty or not. This may be
828	// used to include empty fields in Patch requests.
829	ForceSendFields []string `json:"-"`
830
831	// NullFields is a list of field names (e.g. "Active") to include in API
832	// requests with the JSON null value. By default, fields with empty
833	// values are omitted from API requests. However, any field with an
834	// empty value appearing in NullFields will be sent to the server as
835	// null. It is an error if a field in this list has a non-empty value.
836	// This may be used to include null fields in Patch requests.
837	NullFields []string `json:"-"`
838}
839
840func (s *AccountStatusStatistics) MarshalJSON() ([]byte, error) {
841	type NoMethod AccountStatusStatistics
842	raw := NoMethod(*s)
843	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
844}
845
846// AccountTax: The tax settings of a merchant account. All methods
847// require the admin role.
848type AccountTax struct {
849	// AccountId: The ID of the account to which these account tax settings
850	// belong.
851	AccountId uint64 `json:"accountId,omitempty,string"`
852
853	// Kind: Identifies what kind of resource this is. Value: the fixed
854	// string "content#accountTax".
855	Kind string `json:"kind,omitempty"`
856
857	// Rules: Tax rules. Updating the tax rules will enable US taxes (not
858	// reversible). Defining no rules is equivalent to not charging tax at
859	// all.
860	Rules []*AccountTaxTaxRule `json:"rules,omitempty"`
861
862	// ServerResponse contains the HTTP response code and headers from the
863	// server.
864	googleapi.ServerResponse `json:"-"`
865
866	// ForceSendFields is a list of field names (e.g. "AccountId") to
867	// unconditionally include in API requests. By default, fields with
868	// empty values are omitted from API requests. However, any non-pointer,
869	// non-interface field appearing in ForceSendFields will be sent to the
870	// server regardless of whether the field is empty or not. This may be
871	// used to include empty fields in Patch requests.
872	ForceSendFields []string `json:"-"`
873
874	// NullFields is a list of field names (e.g. "AccountId") to include in
875	// API requests with the JSON null value. By default, fields with empty
876	// values are omitted from API requests. However, any field with an
877	// empty value appearing in NullFields will be sent to the server as
878	// null. It is an error if a field in this list has a non-empty value.
879	// This may be used to include null fields in Patch requests.
880	NullFields []string `json:"-"`
881}
882
883func (s *AccountTax) MarshalJSON() ([]byte, error) {
884	type NoMethod AccountTax
885	raw := NoMethod(*s)
886	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
887}
888
889// AccountTaxTaxRule: Tax calculation rule to apply in a state or
890// province (USA only).
891type AccountTaxTaxRule struct {
892	// Country: Country code in which tax is applicable.
893	Country string `json:"country,omitempty"`
894
895	// LocationId: State (or province) is which the tax is applicable,
896	// described by its location ID (also called criteria ID).
897	LocationId uint64 `json:"locationId,omitempty,string"`
898
899	// RatePercent: Explicit tax rate in percent, represented as a floating
900	// point number without the percentage character. Must not be negative.
901	RatePercent string `json:"ratePercent,omitempty"`
902
903	// ShippingTaxed: If true, shipping charges are also taxed.
904	ShippingTaxed bool `json:"shippingTaxed,omitempty"`
905
906	// UseGlobalRate: Whether the tax rate is taken from a global tax table
907	// or specified explicitly.
908	UseGlobalRate bool `json:"useGlobalRate,omitempty"`
909
910	// ForceSendFields is a list of field names (e.g. "Country") to
911	// unconditionally include in API requests. By default, fields with
912	// empty values are omitted from API requests. However, any non-pointer,
913	// non-interface field appearing in ForceSendFields will be sent to the
914	// server regardless of whether the field is empty or not. This may be
915	// used to include empty fields in Patch requests.
916	ForceSendFields []string `json:"-"`
917
918	// NullFields is a list of field names (e.g. "Country") to include in
919	// API requests with the JSON null value. By default, fields with empty
920	// values are omitted from API requests. However, any field with an
921	// empty value appearing in NullFields will be sent to the server as
922	// null. It is an error if a field in this list has a non-empty value.
923	// This may be used to include null fields in Patch requests.
924	NullFields []string `json:"-"`
925}
926
927func (s *AccountTaxTaxRule) MarshalJSON() ([]byte, error) {
928	type NoMethod AccountTaxTaxRule
929	raw := NoMethod(*s)
930	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
931}
932
933type AccountUser struct {
934	// Admin: Whether user is an admin.
935	Admin bool `json:"admin,omitempty"`
936
937	// EmailAddress: User's email address.
938	EmailAddress string `json:"emailAddress,omitempty"`
939
940	// OrderManager: Whether user is an order manager.
941	OrderManager bool `json:"orderManager,omitempty"`
942
943	// PaymentsAnalyst: Whether user can access payment statements.
944	PaymentsAnalyst bool `json:"paymentsAnalyst,omitempty"`
945
946	// PaymentsManager: Whether user can manage payment settings.
947	PaymentsManager bool `json:"paymentsManager,omitempty"`
948
949	// ForceSendFields is a list of field names (e.g. "Admin") to
950	// unconditionally include in API requests. By default, fields with
951	// empty values are omitted from API requests. However, any non-pointer,
952	// non-interface field appearing in ForceSendFields will be sent to the
953	// server regardless of whether the field is empty or not. This may be
954	// used to include empty fields in Patch requests.
955	ForceSendFields []string `json:"-"`
956
957	// NullFields is a list of field names (e.g. "Admin") to include in API
958	// requests with the JSON null value. By default, fields with empty
959	// values are omitted from API requests. However, any field with an
960	// empty value appearing in NullFields will be sent to the server as
961	// null. It is an error if a field in this list has a non-empty value.
962	// This may be used to include null fields in Patch requests.
963	NullFields []string `json:"-"`
964}
965
966func (s *AccountUser) MarshalJSON() ([]byte, error) {
967	type NoMethod AccountUser
968	raw := NoMethod(*s)
969	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
970}
971
972type AccountYouTubeChannelLink struct {
973	// ChannelId: Channel ID.
974	ChannelId string `json:"channelId,omitempty"`
975
976	// Status: Status of the link between this Merchant Center account and
977	// the YouTube channel. Upon retrieval, it represents the actual status
978	// of the link and can be either active if it was approved in YT Creator
979	// Studio or pending if it's pending approval. Upon insertion, it
980	// represents the intended status of the link. Re-uploading a link with
981	// status active when it's still pending or with status pending when
982	// it's already active will have no effect: the status will remain
983	// unchanged. Re-uploading a link with deprecated status inactive is
984	// equivalent to not submitting the link at all and will delete the link
985	// if it was active or cancel the link request if it was pending.
986	Status string `json:"status,omitempty"`
987
988	// ForceSendFields is a list of field names (e.g. "ChannelId") to
989	// unconditionally include in API requests. By default, fields with
990	// empty values are omitted from API requests. However, any non-pointer,
991	// non-interface field appearing in ForceSendFields will be sent to the
992	// server regardless of whether the field is empty or not. This may be
993	// used to include empty fields in Patch requests.
994	ForceSendFields []string `json:"-"`
995
996	// NullFields is a list of field names (e.g. "ChannelId") to include in
997	// API requests with the JSON null value. By default, fields with empty
998	// values are omitted from API requests. However, any field with an
999	// empty value appearing in NullFields will be sent to the server as
1000	// null. It is an error if a field in this list has a non-empty value.
1001	// This may be used to include null fields in Patch requests.
1002	NullFields []string `json:"-"`
1003}
1004
1005func (s *AccountYouTubeChannelLink) MarshalJSON() ([]byte, error) {
1006	type NoMethod AccountYouTubeChannelLink
1007	raw := NoMethod(*s)
1008	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1009}
1010
1011type AccountsAuthInfoResponse struct {
1012	// AccountIdentifiers: The account identifiers corresponding to the
1013	// authenticated user.
1014	// - For an individual account: only the merchant ID is defined
1015	// - For an aggregator: only the aggregator ID is defined
1016	// - For a subaccount of an MCA: both the merchant ID and the aggregator
1017	// ID are defined.
1018	AccountIdentifiers []*AccountIdentifier `json:"accountIdentifiers,omitempty"`
1019
1020	// Kind: Identifies what kind of resource this is. Value: the fixed
1021	// string "content#accountsAuthInfoResponse".
1022	Kind string `json:"kind,omitempty"`
1023
1024	// ServerResponse contains the HTTP response code and headers from the
1025	// server.
1026	googleapi.ServerResponse `json:"-"`
1027
1028	// ForceSendFields is a list of field names (e.g. "AccountIdentifiers")
1029	// to unconditionally include in API requests. By default, fields with
1030	// empty values are omitted from API requests. However, any non-pointer,
1031	// non-interface field appearing in ForceSendFields will be sent to the
1032	// server regardless of whether the field is empty or not. This may be
1033	// used to include empty fields in Patch requests.
1034	ForceSendFields []string `json:"-"`
1035
1036	// NullFields is a list of field names (e.g. "AccountIdentifiers") to
1037	// include in API requests with the JSON null value. By default, fields
1038	// with empty values are omitted from API requests. However, any field
1039	// with an empty value appearing in NullFields will be sent to the
1040	// server as null. It is an error if a field in this list has a
1041	// non-empty value. This may be used to include null fields in Patch
1042	// requests.
1043	NullFields []string `json:"-"`
1044}
1045
1046func (s *AccountsAuthInfoResponse) MarshalJSON() ([]byte, error) {
1047	type NoMethod AccountsAuthInfoResponse
1048	raw := NoMethod(*s)
1049	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1050}
1051
1052type AccountsClaimWebsiteResponse struct {
1053	// Kind: Identifies what kind of resource this is. Value: the fixed
1054	// string "content#accountsClaimWebsiteResponse".
1055	Kind string `json:"kind,omitempty"`
1056
1057	// ServerResponse contains the HTTP response code and headers from the
1058	// server.
1059	googleapi.ServerResponse `json:"-"`
1060
1061	// ForceSendFields is a list of field names (e.g. "Kind") to
1062	// unconditionally include in API requests. By default, fields with
1063	// empty values are omitted from API requests. However, any non-pointer,
1064	// non-interface field appearing in ForceSendFields will be sent to the
1065	// server regardless of whether the field is empty or not. This may be
1066	// used to include empty fields in Patch requests.
1067	ForceSendFields []string `json:"-"`
1068
1069	// NullFields is a list of field names (e.g. "Kind") to include in API
1070	// requests with the JSON null value. By default, fields with empty
1071	// values are omitted from API requests. However, any field with an
1072	// empty value appearing in NullFields will be sent to the server as
1073	// null. It is an error if a field in this list has a non-empty value.
1074	// This may be used to include null fields in Patch requests.
1075	NullFields []string `json:"-"`
1076}
1077
1078func (s *AccountsClaimWebsiteResponse) MarshalJSON() ([]byte, error) {
1079	type NoMethod AccountsClaimWebsiteResponse
1080	raw := NoMethod(*s)
1081	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1082}
1083
1084type AccountsCustomBatchRequest struct {
1085	// Entries: The request entries to be processed in the batch.
1086	Entries []*AccountsCustomBatchRequestEntry `json:"entries,omitempty"`
1087
1088	// ForceSendFields is a list of field names (e.g. "Entries") to
1089	// unconditionally include in API requests. By default, fields with
1090	// empty values are omitted from API requests. However, any non-pointer,
1091	// non-interface field appearing in ForceSendFields will be sent to the
1092	// server regardless of whether the field is empty or not. This may be
1093	// used to include empty fields in Patch requests.
1094	ForceSendFields []string `json:"-"`
1095
1096	// NullFields is a list of field names (e.g. "Entries") to include in
1097	// API requests with the JSON null value. By default, fields with empty
1098	// values are omitted from API requests. However, any field with an
1099	// empty value appearing in NullFields will be sent to the server as
1100	// null. It is an error if a field in this list has a non-empty value.
1101	// This may be used to include null fields in Patch requests.
1102	NullFields []string `json:"-"`
1103}
1104
1105func (s *AccountsCustomBatchRequest) MarshalJSON() ([]byte, error) {
1106	type NoMethod AccountsCustomBatchRequest
1107	raw := NoMethod(*s)
1108	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1109}
1110
1111// AccountsCustomBatchRequestEntry: A batch entry encoding a single
1112// non-batch accounts request.
1113type AccountsCustomBatchRequestEntry struct {
1114	// Account: The account to create or update. Only defined if the method
1115	// is insert or update.
1116	Account *Account `json:"account,omitempty"`
1117
1118	// AccountId: The ID of the targeted account. Only defined if the method
1119	// is not insert.
1120	AccountId uint64 `json:"accountId,omitempty,string"`
1121
1122	// BatchId: An entry ID, unique within the batch request.
1123	BatchId int64 `json:"batchId,omitempty"`
1124
1125	// Force: Whether the account should be deleted if the account has
1126	// offers. Only applicable if the method is delete.
1127	Force bool `json:"force,omitempty"`
1128
1129	// LinkRequest: Details about the link request.
1130	LinkRequest *AccountsCustomBatchRequestEntryLinkRequest `json:"linkRequest,omitempty"`
1131
1132	// MerchantId: The ID of the managing account.
1133	MerchantId uint64 `json:"merchantId,omitempty,string"`
1134
1135	// Method: The method of the batch entry.
1136	Method string `json:"method,omitempty"`
1137
1138	// Overwrite: Only applicable if the method is claimwebsite. Indicates
1139	// whether or not to take the claim from another account in case there
1140	// is a conflict.
1141	Overwrite bool `json:"overwrite,omitempty"`
1142
1143	// ForceSendFields is a list of field names (e.g. "Account") to
1144	// unconditionally include in API requests. By default, fields with
1145	// empty values are omitted from API requests. However, any non-pointer,
1146	// non-interface field appearing in ForceSendFields will be sent to the
1147	// server regardless of whether the field is empty or not. This may be
1148	// used to include empty fields in Patch requests.
1149	ForceSendFields []string `json:"-"`
1150
1151	// NullFields is a list of field names (e.g. "Account") to include in
1152	// API requests with the JSON null value. By default, fields with empty
1153	// values are omitted from API requests. However, any field with an
1154	// empty value appearing in NullFields will be sent to the server as
1155	// null. It is an error if a field in this list has a non-empty value.
1156	// This may be used to include null fields in Patch requests.
1157	NullFields []string `json:"-"`
1158}
1159
1160func (s *AccountsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
1161	type NoMethod AccountsCustomBatchRequestEntry
1162	raw := NoMethod(*s)
1163	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1164}
1165
1166type AccountsCustomBatchRequestEntryLinkRequest struct {
1167	// Action: Action to perform for this link. The "request" action is only
1168	// available to select merchants.
1169	Action string `json:"action,omitempty"`
1170
1171	// LinkType: Type of the link between the two accounts.
1172	LinkType string `json:"linkType,omitempty"`
1173
1174	// LinkedAccountId: The ID of the linked account.
1175	LinkedAccountId string `json:"linkedAccountId,omitempty"`
1176
1177	// Services: List of provided services.
1178	Services []string `json:"services,omitempty"`
1179
1180	// ForceSendFields is a list of field names (e.g. "Action") to
1181	// unconditionally include in API requests. By default, fields with
1182	// empty values are omitted from API requests. However, any non-pointer,
1183	// non-interface field appearing in ForceSendFields will be sent to the
1184	// server regardless of whether the field is empty or not. This may be
1185	// used to include empty fields in Patch requests.
1186	ForceSendFields []string `json:"-"`
1187
1188	// NullFields is a list of field names (e.g. "Action") to include in API
1189	// requests with the JSON null value. By default, fields with empty
1190	// values are omitted from API requests. However, any field with an
1191	// empty value appearing in NullFields will be sent to the server as
1192	// null. It is an error if a field in this list has a non-empty value.
1193	// This may be used to include null fields in Patch requests.
1194	NullFields []string `json:"-"`
1195}
1196
1197func (s *AccountsCustomBatchRequestEntryLinkRequest) MarshalJSON() ([]byte, error) {
1198	type NoMethod AccountsCustomBatchRequestEntryLinkRequest
1199	raw := NoMethod(*s)
1200	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1201}
1202
1203type AccountsCustomBatchResponse struct {
1204	// Entries: The result of the execution of the batch requests.
1205	Entries []*AccountsCustomBatchResponseEntry `json:"entries,omitempty"`
1206
1207	// Kind: Identifies what kind of resource this is. Value: the fixed
1208	// string "content#accountsCustomBatchResponse".
1209	Kind string `json:"kind,omitempty"`
1210
1211	// ServerResponse contains the HTTP response code and headers from the
1212	// server.
1213	googleapi.ServerResponse `json:"-"`
1214
1215	// ForceSendFields is a list of field names (e.g. "Entries") to
1216	// unconditionally include in API requests. By default, fields with
1217	// empty values are omitted from API requests. However, any non-pointer,
1218	// non-interface field appearing in ForceSendFields will be sent to the
1219	// server regardless of whether the field is empty or not. This may be
1220	// used to include empty fields in Patch requests.
1221	ForceSendFields []string `json:"-"`
1222
1223	// NullFields is a list of field names (e.g. "Entries") to include in
1224	// API requests with the JSON null value. By default, fields with empty
1225	// values are omitted from API requests. However, any field with an
1226	// empty value appearing in NullFields will be sent to the server as
1227	// null. It is an error if a field in this list has a non-empty value.
1228	// This may be used to include null fields in Patch requests.
1229	NullFields []string `json:"-"`
1230}
1231
1232func (s *AccountsCustomBatchResponse) MarshalJSON() ([]byte, error) {
1233	type NoMethod AccountsCustomBatchResponse
1234	raw := NoMethod(*s)
1235	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1236}
1237
1238// AccountsCustomBatchResponseEntry: A batch entry encoding a single
1239// non-batch accounts response.
1240type AccountsCustomBatchResponseEntry struct {
1241	// Account: The retrieved, created, or updated account. Not defined if
1242	// the method was delete, claimwebsite or link.
1243	Account *Account `json:"account,omitempty"`
1244
1245	// BatchId: The ID of the request entry this entry responds to.
1246	BatchId int64 `json:"batchId,omitempty"`
1247
1248	// Errors: A list of errors defined if and only if the request failed.
1249	Errors *Errors `json:"errors,omitempty"`
1250
1251	// Kind: Identifies what kind of resource this is. Value: the fixed
1252	// string "content#accountsCustomBatchResponseEntry".
1253	Kind string `json:"kind,omitempty"`
1254
1255	// ForceSendFields is a list of field names (e.g. "Account") to
1256	// unconditionally include in API requests. By default, fields with
1257	// empty values are omitted from API requests. However, any non-pointer,
1258	// non-interface field appearing in ForceSendFields will be sent to the
1259	// server regardless of whether the field is empty or not. This may be
1260	// used to include empty fields in Patch requests.
1261	ForceSendFields []string `json:"-"`
1262
1263	// NullFields is a list of field names (e.g. "Account") to include in
1264	// API requests with the JSON null value. By default, fields with empty
1265	// values are omitted from API requests. However, any field with an
1266	// empty value appearing in NullFields will be sent to the server as
1267	// null. It is an error if a field in this list has a non-empty value.
1268	// This may be used to include null fields in Patch requests.
1269	NullFields []string `json:"-"`
1270}
1271
1272func (s *AccountsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
1273	type NoMethod AccountsCustomBatchResponseEntry
1274	raw := NoMethod(*s)
1275	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1276}
1277
1278type AccountsLinkRequest struct {
1279	// Action: Action to perform for this link. The "request" action is only
1280	// available to select merchants.
1281	Action string `json:"action,omitempty"`
1282
1283	// LinkType: Type of the link between the two accounts.
1284	LinkType string `json:"linkType,omitempty"`
1285
1286	// LinkedAccountId: The ID of the linked account.
1287	LinkedAccountId string `json:"linkedAccountId,omitempty"`
1288
1289	// Services: List of provided services.
1290	Services []string `json:"services,omitempty"`
1291
1292	// ForceSendFields is a list of field names (e.g. "Action") to
1293	// unconditionally include in API requests. By default, fields with
1294	// empty values are omitted from API requests. However, any non-pointer,
1295	// non-interface field appearing in ForceSendFields will be sent to the
1296	// server regardless of whether the field is empty or not. This may be
1297	// used to include empty fields in Patch requests.
1298	ForceSendFields []string `json:"-"`
1299
1300	// NullFields is a list of field names (e.g. "Action") to include in API
1301	// requests with the JSON null value. By default, fields with empty
1302	// values are omitted from API requests. However, any field with an
1303	// empty value appearing in NullFields will be sent to the server as
1304	// null. It is an error if a field in this list has a non-empty value.
1305	// This may be used to include null fields in Patch requests.
1306	NullFields []string `json:"-"`
1307}
1308
1309func (s *AccountsLinkRequest) MarshalJSON() ([]byte, error) {
1310	type NoMethod AccountsLinkRequest
1311	raw := NoMethod(*s)
1312	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1313}
1314
1315type AccountsLinkResponse struct {
1316	// Kind: Identifies what kind of resource this is. Value: the fixed
1317	// string "content#accountsLinkResponse".
1318	Kind string `json:"kind,omitempty"`
1319
1320	// ServerResponse contains the HTTP response code and headers from the
1321	// server.
1322	googleapi.ServerResponse `json:"-"`
1323
1324	// ForceSendFields is a list of field names (e.g. "Kind") to
1325	// unconditionally include in API requests. By default, fields with
1326	// empty values are omitted from API requests. However, any non-pointer,
1327	// non-interface field appearing in ForceSendFields will be sent to the
1328	// server regardless of whether the field is empty or not. This may be
1329	// used to include empty fields in Patch requests.
1330	ForceSendFields []string `json:"-"`
1331
1332	// NullFields is a list of field names (e.g. "Kind") to include in API
1333	// requests with the JSON null value. By default, fields with empty
1334	// values are omitted from API requests. However, any field with an
1335	// empty value appearing in NullFields will be sent to the server as
1336	// null. It is an error if a field in this list has a non-empty value.
1337	// This may be used to include null fields in Patch requests.
1338	NullFields []string `json:"-"`
1339}
1340
1341func (s *AccountsLinkResponse) MarshalJSON() ([]byte, error) {
1342	type NoMethod AccountsLinkResponse
1343	raw := NoMethod(*s)
1344	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1345}
1346
1347type AccountsListLinksResponse struct {
1348	// Kind: Identifies what kind of resource this is. Value: the fixed
1349	// string "content#accountsListLinksResponse".
1350	Kind string `json:"kind,omitempty"`
1351
1352	// Links: The list of available links.
1353	Links []*LinkedAccount `json:"links,omitempty"`
1354
1355	// NextPageToken: The token for the retrieval of the next page of links.
1356	NextPageToken string `json:"nextPageToken,omitempty"`
1357
1358	// ServerResponse contains the HTTP response code and headers from the
1359	// server.
1360	googleapi.ServerResponse `json:"-"`
1361
1362	// ForceSendFields is a list of field names (e.g. "Kind") to
1363	// unconditionally include in API requests. By default, fields with
1364	// empty values are omitted from API requests. However, any non-pointer,
1365	// non-interface field appearing in ForceSendFields will be sent to the
1366	// server regardless of whether the field is empty or not. This may be
1367	// used to include empty fields in Patch requests.
1368	ForceSendFields []string `json:"-"`
1369
1370	// NullFields is a list of field names (e.g. "Kind") to include in API
1371	// requests with the JSON null value. By default, fields with empty
1372	// values are omitted from API requests. However, any field with an
1373	// empty value appearing in NullFields will be sent to the server as
1374	// null. It is an error if a field in this list has a non-empty value.
1375	// This may be used to include null fields in Patch requests.
1376	NullFields []string `json:"-"`
1377}
1378
1379func (s *AccountsListLinksResponse) MarshalJSON() ([]byte, error) {
1380	type NoMethod AccountsListLinksResponse
1381	raw := NoMethod(*s)
1382	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1383}
1384
1385type AccountsListResponse struct {
1386	// Kind: Identifies what kind of resource this is. Value: the fixed
1387	// string "content#accountsListResponse".
1388	Kind string `json:"kind,omitempty"`
1389
1390	// NextPageToken: The token for the retrieval of the next page of
1391	// accounts.
1392	NextPageToken string `json:"nextPageToken,omitempty"`
1393
1394	Resources []*Account `json:"resources,omitempty"`
1395
1396	// ServerResponse contains the HTTP response code and headers from the
1397	// server.
1398	googleapi.ServerResponse `json:"-"`
1399
1400	// ForceSendFields is a list of field names (e.g. "Kind") to
1401	// unconditionally include in API requests. By default, fields with
1402	// empty values are omitted from API requests. However, any non-pointer,
1403	// non-interface field appearing in ForceSendFields will be sent to the
1404	// server regardless of whether the field is empty or not. This may be
1405	// used to include empty fields in Patch requests.
1406	ForceSendFields []string `json:"-"`
1407
1408	// NullFields is a list of field names (e.g. "Kind") to include in API
1409	// requests with the JSON null value. By default, fields with empty
1410	// values are omitted from API requests. However, any field with an
1411	// empty value appearing in NullFields will be sent to the server as
1412	// null. It is an error if a field in this list has a non-empty value.
1413	// This may be used to include null fields in Patch requests.
1414	NullFields []string `json:"-"`
1415}
1416
1417func (s *AccountsListResponse) MarshalJSON() ([]byte, error) {
1418	type NoMethod AccountsListResponse
1419	raw := NoMethod(*s)
1420	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1421}
1422
1423type AccountstatusesCustomBatchRequest struct {
1424	// Entries: The request entries to be processed in the batch.
1425	Entries []*AccountstatusesCustomBatchRequestEntry `json:"entries,omitempty"`
1426
1427	// ForceSendFields is a list of field names (e.g. "Entries") to
1428	// unconditionally include in API requests. By default, fields with
1429	// empty values are omitted from API requests. However, any non-pointer,
1430	// non-interface field appearing in ForceSendFields will be sent to the
1431	// server regardless of whether the field is empty or not. This may be
1432	// used to include empty fields in Patch requests.
1433	ForceSendFields []string `json:"-"`
1434
1435	// NullFields is a list of field names (e.g. "Entries") to include in
1436	// API requests with the JSON null value. By default, fields with empty
1437	// values are omitted from API requests. However, any field with an
1438	// empty value appearing in NullFields will be sent to the server as
1439	// null. It is an error if a field in this list has a non-empty value.
1440	// This may be used to include null fields in Patch requests.
1441	NullFields []string `json:"-"`
1442}
1443
1444func (s *AccountstatusesCustomBatchRequest) MarshalJSON() ([]byte, error) {
1445	type NoMethod AccountstatusesCustomBatchRequest
1446	raw := NoMethod(*s)
1447	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1448}
1449
1450// AccountstatusesCustomBatchRequestEntry: A batch entry encoding a
1451// single non-batch accountstatuses request.
1452type AccountstatusesCustomBatchRequestEntry struct {
1453	// AccountId: The ID of the (sub-)account whose status to get.
1454	AccountId uint64 `json:"accountId,omitempty,string"`
1455
1456	// BatchId: An entry ID, unique within the batch request.
1457	BatchId int64 `json:"batchId,omitempty"`
1458
1459	// Destinations: If set, only issues for the specified destinations are
1460	// returned, otherwise only issues for the Shopping destination.
1461	Destinations []string `json:"destinations,omitempty"`
1462
1463	// MerchantId: The ID of the managing account.
1464	MerchantId uint64 `json:"merchantId,omitempty,string"`
1465
1466	// Method: The method (get).
1467	Method string `json:"method,omitempty"`
1468
1469	// ForceSendFields is a list of field names (e.g. "AccountId") to
1470	// unconditionally include in API requests. By default, fields with
1471	// empty values are omitted from API requests. However, any non-pointer,
1472	// non-interface field appearing in ForceSendFields will be sent to the
1473	// server regardless of whether the field is empty or not. This may be
1474	// used to include empty fields in Patch requests.
1475	ForceSendFields []string `json:"-"`
1476
1477	// NullFields is a list of field names (e.g. "AccountId") to include in
1478	// API requests with the JSON null value. By default, fields with empty
1479	// values are omitted from API requests. However, any field with an
1480	// empty value appearing in NullFields will be sent to the server as
1481	// null. It is an error if a field in this list has a non-empty value.
1482	// This may be used to include null fields in Patch requests.
1483	NullFields []string `json:"-"`
1484}
1485
1486func (s *AccountstatusesCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
1487	type NoMethod AccountstatusesCustomBatchRequestEntry
1488	raw := NoMethod(*s)
1489	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1490}
1491
1492type AccountstatusesCustomBatchResponse struct {
1493	// Entries: The result of the execution of the batch requests.
1494	Entries []*AccountstatusesCustomBatchResponseEntry `json:"entries,omitempty"`
1495
1496	// Kind: Identifies what kind of resource this is. Value: the fixed
1497	// string "content#accountstatusesCustomBatchResponse".
1498	Kind string `json:"kind,omitempty"`
1499
1500	// ServerResponse contains the HTTP response code and headers from the
1501	// server.
1502	googleapi.ServerResponse `json:"-"`
1503
1504	// ForceSendFields is a list of field names (e.g. "Entries") to
1505	// unconditionally include in API requests. By default, fields with
1506	// empty values are omitted from API requests. However, any non-pointer,
1507	// non-interface field appearing in ForceSendFields will be sent to the
1508	// server regardless of whether the field is empty or not. This may be
1509	// used to include empty fields in Patch requests.
1510	ForceSendFields []string `json:"-"`
1511
1512	// NullFields is a list of field names (e.g. "Entries") to include in
1513	// API requests with the JSON null value. By default, fields with empty
1514	// values are omitted from API requests. However, any field with an
1515	// empty value appearing in NullFields will be sent to the server as
1516	// null. It is an error if a field in this list has a non-empty value.
1517	// This may be used to include null fields in Patch requests.
1518	NullFields []string `json:"-"`
1519}
1520
1521func (s *AccountstatusesCustomBatchResponse) MarshalJSON() ([]byte, error) {
1522	type NoMethod AccountstatusesCustomBatchResponse
1523	raw := NoMethod(*s)
1524	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1525}
1526
1527// AccountstatusesCustomBatchResponseEntry: A batch entry encoding a
1528// single non-batch accountstatuses response.
1529type AccountstatusesCustomBatchResponseEntry struct {
1530	// AccountStatus: The requested account status. Defined if and only if
1531	// the request was successful.
1532	AccountStatus *AccountStatus `json:"accountStatus,omitempty"`
1533
1534	// BatchId: The ID of the request entry this entry responds to.
1535	BatchId int64 `json:"batchId,omitempty"`
1536
1537	// Errors: A list of errors defined if and only if the request failed.
1538	Errors *Errors `json:"errors,omitempty"`
1539
1540	// ForceSendFields is a list of field names (e.g. "AccountStatus") to
1541	// unconditionally include in API requests. By default, fields with
1542	// empty values are omitted from API requests. However, any non-pointer,
1543	// non-interface field appearing in ForceSendFields will be sent to the
1544	// server regardless of whether the field is empty or not. This may be
1545	// used to include empty fields in Patch requests.
1546	ForceSendFields []string `json:"-"`
1547
1548	// NullFields is a list of field names (e.g. "AccountStatus") to include
1549	// in API requests with the JSON null value. By default, fields with
1550	// empty values are omitted from API requests. However, any field with
1551	// an empty value appearing in NullFields will be sent to the server as
1552	// null. It is an error if a field in this list has a non-empty value.
1553	// This may be used to include null fields in Patch requests.
1554	NullFields []string `json:"-"`
1555}
1556
1557func (s *AccountstatusesCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
1558	type NoMethod AccountstatusesCustomBatchResponseEntry
1559	raw := NoMethod(*s)
1560	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1561}
1562
1563type AccountstatusesListResponse struct {
1564	// Kind: Identifies what kind of resource this is. Value: the fixed
1565	// string "content#accountstatusesListResponse".
1566	Kind string `json:"kind,omitempty"`
1567
1568	// NextPageToken: The token for the retrieval of the next page of
1569	// account statuses.
1570	NextPageToken string `json:"nextPageToken,omitempty"`
1571
1572	Resources []*AccountStatus `json:"resources,omitempty"`
1573
1574	// ServerResponse contains the HTTP response code and headers from the
1575	// server.
1576	googleapi.ServerResponse `json:"-"`
1577
1578	// ForceSendFields is a list of field names (e.g. "Kind") to
1579	// unconditionally include in API requests. By default, fields with
1580	// empty values are omitted from API requests. However, any non-pointer,
1581	// non-interface field appearing in ForceSendFields will be sent to the
1582	// server regardless of whether the field is empty or not. This may be
1583	// used to include empty fields in Patch requests.
1584	ForceSendFields []string `json:"-"`
1585
1586	// NullFields is a list of field names (e.g. "Kind") to include in API
1587	// requests with the JSON null value. By default, fields with empty
1588	// values are omitted from API requests. However, any field with an
1589	// empty value appearing in NullFields will be sent to the server as
1590	// null. It is an error if a field in this list has a non-empty value.
1591	// This may be used to include null fields in Patch requests.
1592	NullFields []string `json:"-"`
1593}
1594
1595func (s *AccountstatusesListResponse) MarshalJSON() ([]byte, error) {
1596	type NoMethod AccountstatusesListResponse
1597	raw := NoMethod(*s)
1598	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1599}
1600
1601type AccounttaxCustomBatchRequest struct {
1602	// Entries: The request entries to be processed in the batch.
1603	Entries []*AccounttaxCustomBatchRequestEntry `json:"entries,omitempty"`
1604
1605	// ForceSendFields is a list of field names (e.g. "Entries") to
1606	// unconditionally include in API requests. By default, fields with
1607	// empty values are omitted from API requests. However, any non-pointer,
1608	// non-interface field appearing in ForceSendFields will be sent to the
1609	// server regardless of whether the field is empty or not. This may be
1610	// used to include empty fields in Patch requests.
1611	ForceSendFields []string `json:"-"`
1612
1613	// NullFields is a list of field names (e.g. "Entries") to include in
1614	// API requests with the JSON null value. By default, fields with empty
1615	// values are omitted from API requests. However, any field with an
1616	// empty value appearing in NullFields will be sent to the server as
1617	// null. It is an error if a field in this list has a non-empty value.
1618	// This may be used to include null fields in Patch requests.
1619	NullFields []string `json:"-"`
1620}
1621
1622func (s *AccounttaxCustomBatchRequest) MarshalJSON() ([]byte, error) {
1623	type NoMethod AccounttaxCustomBatchRequest
1624	raw := NoMethod(*s)
1625	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1626}
1627
1628// AccounttaxCustomBatchRequestEntry: A batch entry encoding a single
1629// non-batch accounttax request.
1630type AccounttaxCustomBatchRequestEntry struct {
1631	// AccountId: The ID of the account for which to get/update account tax
1632	// settings.
1633	AccountId uint64 `json:"accountId,omitempty,string"`
1634
1635	// AccountTax: The account tax settings to update. Only defined if the
1636	// method is update.
1637	AccountTax *AccountTax `json:"accountTax,omitempty"`
1638
1639	// BatchId: An entry ID, unique within the batch request.
1640	BatchId int64 `json:"batchId,omitempty"`
1641
1642	// MerchantId: The ID of the managing account.
1643	MerchantId uint64 `json:"merchantId,omitempty,string"`
1644
1645	Method string `json:"method,omitempty"`
1646
1647	// ForceSendFields is a list of field names (e.g. "AccountId") to
1648	// unconditionally include in API requests. By default, fields with
1649	// empty values are omitted from API requests. However, any non-pointer,
1650	// non-interface field appearing in ForceSendFields will be sent to the
1651	// server regardless of whether the field is empty or not. This may be
1652	// used to include empty fields in Patch requests.
1653	ForceSendFields []string `json:"-"`
1654
1655	// NullFields is a list of field names (e.g. "AccountId") to include in
1656	// API requests with the JSON null value. By default, fields with empty
1657	// values are omitted from API requests. However, any field with an
1658	// empty value appearing in NullFields will be sent to the server as
1659	// null. It is an error if a field in this list has a non-empty value.
1660	// This may be used to include null fields in Patch requests.
1661	NullFields []string `json:"-"`
1662}
1663
1664func (s *AccounttaxCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
1665	type NoMethod AccounttaxCustomBatchRequestEntry
1666	raw := NoMethod(*s)
1667	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1668}
1669
1670type AccounttaxCustomBatchResponse struct {
1671	// Entries: The result of the execution of the batch requests.
1672	Entries []*AccounttaxCustomBatchResponseEntry `json:"entries,omitempty"`
1673
1674	// Kind: Identifies what kind of resource this is. Value: the fixed
1675	// string "content#accounttaxCustomBatchResponse".
1676	Kind string `json:"kind,omitempty"`
1677
1678	// ServerResponse contains the HTTP response code and headers from the
1679	// server.
1680	googleapi.ServerResponse `json:"-"`
1681
1682	// ForceSendFields is a list of field names (e.g. "Entries") to
1683	// unconditionally include in API requests. By default, fields with
1684	// empty values are omitted from API requests. However, any non-pointer,
1685	// non-interface field appearing in ForceSendFields will be sent to the
1686	// server regardless of whether the field is empty or not. This may be
1687	// used to include empty fields in Patch requests.
1688	ForceSendFields []string `json:"-"`
1689
1690	// NullFields is a list of field names (e.g. "Entries") to include in
1691	// API requests with the JSON null value. By default, fields with empty
1692	// values are omitted from API requests. However, any field with an
1693	// empty value appearing in NullFields will be sent to the server as
1694	// null. It is an error if a field in this list has a non-empty value.
1695	// This may be used to include null fields in Patch requests.
1696	NullFields []string `json:"-"`
1697}
1698
1699func (s *AccounttaxCustomBatchResponse) MarshalJSON() ([]byte, error) {
1700	type NoMethod AccounttaxCustomBatchResponse
1701	raw := NoMethod(*s)
1702	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1703}
1704
1705// AccounttaxCustomBatchResponseEntry: A batch entry encoding a single
1706// non-batch accounttax response.
1707type AccounttaxCustomBatchResponseEntry struct {
1708	// AccountTax: The retrieved or updated account tax settings.
1709	AccountTax *AccountTax `json:"accountTax,omitempty"`
1710
1711	// BatchId: The ID of the request entry this entry responds to.
1712	BatchId int64 `json:"batchId,omitempty"`
1713
1714	// Errors: A list of errors defined if and only if the request failed.
1715	Errors *Errors `json:"errors,omitempty"`
1716
1717	// Kind: Identifies what kind of resource this is. Value: the fixed
1718	// string "content#accounttaxCustomBatchResponseEntry".
1719	Kind string `json:"kind,omitempty"`
1720
1721	// ForceSendFields is a list of field names (e.g. "AccountTax") to
1722	// unconditionally include in API requests. By default, fields with
1723	// empty values are omitted from API requests. However, any non-pointer,
1724	// non-interface field appearing in ForceSendFields will be sent to the
1725	// server regardless of whether the field is empty or not. This may be
1726	// used to include empty fields in Patch requests.
1727	ForceSendFields []string `json:"-"`
1728
1729	// NullFields is a list of field names (e.g. "AccountTax") to include in
1730	// API requests with the JSON null value. By default, fields with empty
1731	// values are omitted from API requests. However, any field with an
1732	// empty value appearing in NullFields will be sent to the server as
1733	// null. It is an error if a field in this list has a non-empty value.
1734	// This may be used to include null fields in Patch requests.
1735	NullFields []string `json:"-"`
1736}
1737
1738func (s *AccounttaxCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
1739	type NoMethod AccounttaxCustomBatchResponseEntry
1740	raw := NoMethod(*s)
1741	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1742}
1743
1744type AccounttaxListResponse struct {
1745	// Kind: Identifies what kind of resource this is. Value: the fixed
1746	// string "content#accounttaxListResponse".
1747	Kind string `json:"kind,omitempty"`
1748
1749	// NextPageToken: The token for the retrieval of the next page of
1750	// account tax settings.
1751	NextPageToken string `json:"nextPageToken,omitempty"`
1752
1753	Resources []*AccountTax `json:"resources,omitempty"`
1754
1755	// ServerResponse contains the HTTP response code and headers from the
1756	// server.
1757	googleapi.ServerResponse `json:"-"`
1758
1759	// ForceSendFields is a list of field names (e.g. "Kind") to
1760	// unconditionally include in API requests. By default, fields with
1761	// empty values are omitted from API requests. However, any non-pointer,
1762	// non-interface field appearing in ForceSendFields will be sent to the
1763	// server regardless of whether the field is empty or not. This may be
1764	// used to include empty fields in Patch requests.
1765	ForceSendFields []string `json:"-"`
1766
1767	// NullFields is a list of field names (e.g. "Kind") to include in API
1768	// requests with the JSON null value. By default, fields with empty
1769	// values are omitted from API requests. However, any field with an
1770	// empty value appearing in NullFields will be sent to the server as
1771	// null. It is an error if a field in this list has a non-empty value.
1772	// This may be used to include null fields in Patch requests.
1773	NullFields []string `json:"-"`
1774}
1775
1776func (s *AccounttaxListResponse) MarshalJSON() ([]byte, error) {
1777	type NoMethod AccounttaxListResponse
1778	raw := NoMethod(*s)
1779	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1780}
1781
1782type Amount struct {
1783	// PriceAmount: [required] The pre-tax or post-tax price depending on
1784	// the location of the order.
1785	PriceAmount *Price `json:"priceAmount,omitempty"`
1786
1787	// TaxAmount: [required] Tax value.
1788	TaxAmount *Price `json:"taxAmount,omitempty"`
1789
1790	// ForceSendFields is a list of field names (e.g. "PriceAmount") to
1791	// unconditionally include in API requests. By default, fields with
1792	// empty values are omitted from API requests. However, any non-pointer,
1793	// non-interface field appearing in ForceSendFields will be sent to the
1794	// server regardless of whether the field is empty or not. This may be
1795	// used to include empty fields in Patch requests.
1796	ForceSendFields []string `json:"-"`
1797
1798	// NullFields is a list of field names (e.g. "PriceAmount") to include
1799	// in API requests with the JSON null value. By default, fields with
1800	// empty values are omitted from API requests. However, any field with
1801	// an empty value appearing in NullFields will be sent to the server as
1802	// null. It is an error if a field in this list has a non-empty value.
1803	// This may be used to include null fields in Patch requests.
1804	NullFields []string `json:"-"`
1805}
1806
1807func (s *Amount) MarshalJSON() ([]byte, error) {
1808	type NoMethod Amount
1809	raw := NoMethod(*s)
1810	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1811}
1812
1813type BusinessDayConfig struct {
1814	// BusinessDays: Regular business days. May not be empty.
1815	BusinessDays []string `json:"businessDays,omitempty"`
1816
1817	// ForceSendFields is a list of field names (e.g. "BusinessDays") to
1818	// unconditionally include in API requests. By default, fields with
1819	// empty values are omitted from API requests. However, any non-pointer,
1820	// non-interface field appearing in ForceSendFields will be sent to the
1821	// server regardless of whether the field is empty or not. This may be
1822	// used to include empty fields in Patch requests.
1823	ForceSendFields []string `json:"-"`
1824
1825	// NullFields is a list of field names (e.g. "BusinessDays") to include
1826	// in API requests with the JSON null value. By default, fields with
1827	// empty values are omitted from API requests. However, any field with
1828	// an empty value appearing in NullFields will be sent to the server as
1829	// null. It is an error if a field in this list has a non-empty value.
1830	// This may be used to include null fields in Patch requests.
1831	NullFields []string `json:"-"`
1832}
1833
1834func (s *BusinessDayConfig) MarshalJSON() ([]byte, error) {
1835	type NoMethod BusinessDayConfig
1836	raw := NoMethod(*s)
1837	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1838}
1839
1840type CarrierRate struct {
1841	// CarrierName: Carrier service, such as "UPS" or "Fedex". The list of
1842	// supported carriers can be retrieved via the getSupportedCarriers
1843	// method. Required.
1844	CarrierName string `json:"carrierName,omitempty"`
1845
1846	// CarrierService: Carrier service, such as "ground" or "2 days". The
1847	// list of supported services for a carrier can be retrieved via the
1848	// getSupportedCarriers method. Required.
1849	CarrierService string `json:"carrierService,omitempty"`
1850
1851	// FlatAdjustment: Additive shipping rate modifier. Can be negative. For
1852	// example { "value": "1", "currency" : "USD" } adds $1 to the rate, {
1853	// "value": "-3", "currency" : "USD" } removes $3 from the rate.
1854	// Optional.
1855	FlatAdjustment *Price `json:"flatAdjustment,omitempty"`
1856
1857	// Name: Name of the carrier rate. Must be unique per rate group.
1858	// Required.
1859	Name string `json:"name,omitempty"`
1860
1861	// OriginPostalCode: Shipping origin for this carrier rate. Required.
1862	OriginPostalCode string `json:"originPostalCode,omitempty"`
1863
1864	// PercentageAdjustment: Multiplicative shipping rate modifier as a
1865	// number in decimal notation. Can be negative. For example "5.4"
1866	// increases the rate by 5.4%, "-3" decreases the rate by 3%. Optional.
1867	PercentageAdjustment string `json:"percentageAdjustment,omitempty"`
1868
1869	// ForceSendFields is a list of field names (e.g. "CarrierName") to
1870	// unconditionally include in API requests. By default, fields with
1871	// empty values are omitted from API requests. However, any non-pointer,
1872	// non-interface field appearing in ForceSendFields will be sent to the
1873	// server regardless of whether the field is empty or not. This may be
1874	// used to include empty fields in Patch requests.
1875	ForceSendFields []string `json:"-"`
1876
1877	// NullFields is a list of field names (e.g. "CarrierName") to include
1878	// in API requests with the JSON null value. By default, fields with
1879	// empty values are omitted from API requests. However, any field with
1880	// an empty value appearing in NullFields will be sent to the server as
1881	// null. It is an error if a field in this list has a non-empty value.
1882	// This may be used to include null fields in Patch requests.
1883	NullFields []string `json:"-"`
1884}
1885
1886func (s *CarrierRate) MarshalJSON() ([]byte, error) {
1887	type NoMethod CarrierRate
1888	raw := NoMethod(*s)
1889	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1890}
1891
1892type CarriersCarrier struct {
1893	// Country: The CLDR country code of the carrier (e.g., "US"). Always
1894	// present.
1895	Country string `json:"country,omitempty"`
1896
1897	// Name: The name of the carrier (e.g., "UPS"). Always present.
1898	Name string `json:"name,omitempty"`
1899
1900	// Services: A list of supported services (e.g., "ground") for that
1901	// carrier. Contains at least one service.
1902	Services []string `json:"services,omitempty"`
1903
1904	// ForceSendFields is a list of field names (e.g. "Country") to
1905	// unconditionally include in API requests. By default, fields with
1906	// empty values are omitted from API requests. However, any non-pointer,
1907	// non-interface field appearing in ForceSendFields will be sent to the
1908	// server regardless of whether the field is empty or not. This may be
1909	// used to include empty fields in Patch requests.
1910	ForceSendFields []string `json:"-"`
1911
1912	// NullFields is a list of field names (e.g. "Country") to include in
1913	// API requests with the JSON null value. By default, fields with empty
1914	// values are omitted from API requests. However, any field with an
1915	// empty value appearing in NullFields will be sent to the server as
1916	// null. It is an error if a field in this list has a non-empty value.
1917	// This may be used to include null fields in Patch requests.
1918	NullFields []string `json:"-"`
1919}
1920
1921func (s *CarriersCarrier) MarshalJSON() ([]byte, error) {
1922	type NoMethod CarriersCarrier
1923	raw := NoMethod(*s)
1924	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1925}
1926
1927type CustomAttribute struct {
1928	// GroupValues: Subattributes within this attribute group. Exactly one
1929	// of value or groupValues must be provided.
1930	GroupValues []*CustomAttribute `json:"groupValues,omitempty"`
1931
1932	// Name: The name of the attribute. Underscores will be replaced by
1933	// spaces upon insertion.
1934	Name string `json:"name,omitempty"`
1935
1936	// Value: The value of the attribute.
1937	Value string `json:"value,omitempty"`
1938
1939	// ForceSendFields is a list of field names (e.g. "GroupValues") to
1940	// unconditionally include in API requests. By default, fields with
1941	// empty values are omitted from API requests. However, any non-pointer,
1942	// non-interface field appearing in ForceSendFields will be sent to the
1943	// server regardless of whether the field is empty or not. This may be
1944	// used to include empty fields in Patch requests.
1945	ForceSendFields []string `json:"-"`
1946
1947	// NullFields is a list of field names (e.g. "GroupValues") to include
1948	// in API requests with the JSON null value. By default, fields with
1949	// empty values are omitted from API requests. However, any field with
1950	// an empty value appearing in NullFields will be sent to the server as
1951	// null. It is an error if a field in this list has a non-empty value.
1952	// This may be used to include null fields in Patch requests.
1953	NullFields []string `json:"-"`
1954}
1955
1956func (s *CustomAttribute) MarshalJSON() ([]byte, error) {
1957	type NoMethod CustomAttribute
1958	raw := NoMethod(*s)
1959	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1960}
1961
1962type CustomerReturnReason struct {
1963	// Description: Description of the reason.
1964	Description string `json:"description,omitempty"`
1965
1966	// ReasonCode: Code of the return reason.
1967	ReasonCode string `json:"reasonCode,omitempty"`
1968
1969	// ForceSendFields is a list of field names (e.g. "Description") to
1970	// unconditionally include in API requests. By default, fields with
1971	// empty values are omitted from API requests. However, any non-pointer,
1972	// non-interface field appearing in ForceSendFields will be sent to the
1973	// server regardless of whether the field is empty or not. This may be
1974	// used to include empty fields in Patch requests.
1975	ForceSendFields []string `json:"-"`
1976
1977	// NullFields is a list of field names (e.g. "Description") to include
1978	// in API requests with the JSON null value. By default, fields with
1979	// empty values are omitted from API requests. However, any field with
1980	// an empty value appearing in NullFields will be sent to the server as
1981	// null. It is an error if a field in this list has a non-empty value.
1982	// This may be used to include null fields in Patch requests.
1983	NullFields []string `json:"-"`
1984}
1985
1986func (s *CustomerReturnReason) MarshalJSON() ([]byte, error) {
1987	type NoMethod CustomerReturnReason
1988	raw := NoMethod(*s)
1989	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1990}
1991
1992type CutoffTime struct {
1993	// Hour: Hour of the cutoff time until which an order has to be placed
1994	// to be processed in the same day. Required.
1995	Hour int64 `json:"hour,omitempty"`
1996
1997	// Minute: Minute of the cutoff time until which an order has to be
1998	// placed to be processed in the same day. Required.
1999	Minute int64 `json:"minute,omitempty"`
2000
2001	// Timezone: Timezone identifier for the cutoff time. A list of
2002	// identifiers can be found in  the AdWords API documentation. E.g.
2003	// "Europe/Zurich". Required.
2004	Timezone string `json:"timezone,omitempty"`
2005
2006	// ForceSendFields is a list of field names (e.g. "Hour") to
2007	// unconditionally include in API requests. By default, fields with
2008	// empty values are omitted from API requests. However, any non-pointer,
2009	// non-interface field appearing in ForceSendFields will be sent to the
2010	// server regardless of whether the field is empty or not. This may be
2011	// used to include empty fields in Patch requests.
2012	ForceSendFields []string `json:"-"`
2013
2014	// NullFields is a list of field names (e.g. "Hour") to include in API
2015	// requests with the JSON null value. By default, fields with empty
2016	// values are omitted from API requests. However, any field with an
2017	// empty value appearing in NullFields will be sent to the server as
2018	// null. It is an error if a field in this list has a non-empty value.
2019	// This may be used to include null fields in Patch requests.
2020	NullFields []string `json:"-"`
2021}
2022
2023func (s *CutoffTime) MarshalJSON() ([]byte, error) {
2024	type NoMethod CutoffTime
2025	raw := NoMethod(*s)
2026	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2027}
2028
2029// Datafeed: Datafeed configuration data.
2030type Datafeed struct {
2031	// AttributeLanguage: The two-letter ISO 639-1 language in which the
2032	// attributes are defined in the data feed.
2033	AttributeLanguage string `json:"attributeLanguage,omitempty"`
2034
2035	// ContentType: The type of data feed. For product inventory feeds, only
2036	// feeds for local stores, not online stores, are supported.
2037	ContentType string `json:"contentType,omitempty"`
2038
2039	// FetchSchedule: Fetch schedule for the feed file.
2040	FetchSchedule *DatafeedFetchSchedule `json:"fetchSchedule,omitempty"`
2041
2042	// FileName: The filename of the feed. All feeds must have a unique file
2043	// name.
2044	FileName string `json:"fileName,omitempty"`
2045
2046	// Format: Format of the feed file.
2047	Format *DatafeedFormat `json:"format,omitempty"`
2048
2049	// Id: The ID of the data feed.
2050	Id int64 `json:"id,omitempty,string"`
2051
2052	// Kind: Identifies what kind of resource this is. Value: the fixed
2053	// string "content#datafeed".
2054	Kind string `json:"kind,omitempty"`
2055
2056	// Name: A descriptive name of the data feed.
2057	Name string `json:"name,omitempty"`
2058
2059	// Targets: The targets this feed should apply to (country, language,
2060	// destinations).
2061	Targets []*DatafeedTarget `json:"targets,omitempty"`
2062
2063	// ServerResponse contains the HTTP response code and headers from the
2064	// server.
2065	googleapi.ServerResponse `json:"-"`
2066
2067	// ForceSendFields is a list of field names (e.g. "AttributeLanguage")
2068	// to unconditionally include in API requests. By default, fields with
2069	// empty values are omitted from API requests. However, any non-pointer,
2070	// non-interface field appearing in ForceSendFields will be sent to the
2071	// server regardless of whether the field is empty or not. This may be
2072	// used to include empty fields in Patch requests.
2073	ForceSendFields []string `json:"-"`
2074
2075	// NullFields is a list of field names (e.g. "AttributeLanguage") to
2076	// include in API requests with the JSON null value. By default, fields
2077	// with empty values are omitted from API requests. However, any field
2078	// with an empty value appearing in NullFields will be sent to the
2079	// server as null. It is an error if a field in this list has a
2080	// non-empty value. This may be used to include null fields in Patch
2081	// requests.
2082	NullFields []string `json:"-"`
2083}
2084
2085func (s *Datafeed) MarshalJSON() ([]byte, error) {
2086	type NoMethod Datafeed
2087	raw := NoMethod(*s)
2088	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2089}
2090
2091// DatafeedFetchSchedule: The required fields vary based on the
2092// frequency of fetching. For a monthly fetch schedule, day_of_month and
2093// hour are required. For a weekly fetch schedule, weekday and hour are
2094// required. For a daily fetch schedule, only hour is required.
2095type DatafeedFetchSchedule struct {
2096	// DayOfMonth: The day of the month the feed file should be fetched
2097	// (1-31).
2098	DayOfMonth int64 `json:"dayOfMonth,omitempty"`
2099
2100	// FetchUrl: The URL where the feed file can be fetched. Google Merchant
2101	// Center will support automatic scheduled uploads using the HTTP,
2102	// HTTPS, FTP, or SFTP protocols, so the value will need to be a valid
2103	// link using one of those four protocols.
2104	FetchUrl string `json:"fetchUrl,omitempty"`
2105
2106	// Hour: The hour of the day the feed file should be fetched (0-23).
2107	Hour int64 `json:"hour,omitempty"`
2108
2109	// MinuteOfHour: The minute of the hour the feed file should be fetched
2110	// (0-59). Read-only.
2111	MinuteOfHour int64 `json:"minuteOfHour,omitempty"`
2112
2113	// Password: An optional password for fetch_url.
2114	Password string `json:"password,omitempty"`
2115
2116	// Paused: Whether the scheduled fetch is paused or not.
2117	Paused bool `json:"paused,omitempty"`
2118
2119	// TimeZone: Time zone used for schedule. UTC by default. E.g.,
2120	// "America/Los_Angeles".
2121	TimeZone string `json:"timeZone,omitempty"`
2122
2123	// Username: An optional user name for fetch_url.
2124	Username string `json:"username,omitempty"`
2125
2126	// Weekday: The day of the week the feed file should be fetched.
2127	Weekday string `json:"weekday,omitempty"`
2128
2129	// ForceSendFields is a list of field names (e.g. "DayOfMonth") to
2130	// unconditionally include in API requests. By default, fields with
2131	// empty values are omitted from API requests. However, any non-pointer,
2132	// non-interface field appearing in ForceSendFields will be sent to the
2133	// server regardless of whether the field is empty or not. This may be
2134	// used to include empty fields in Patch requests.
2135	ForceSendFields []string `json:"-"`
2136
2137	// NullFields is a list of field names (e.g. "DayOfMonth") to include in
2138	// API requests with the JSON null value. By default, fields with empty
2139	// values are omitted from API requests. However, any field with an
2140	// empty value appearing in NullFields will be sent to the server as
2141	// null. It is an error if a field in this list has a non-empty value.
2142	// This may be used to include null fields in Patch requests.
2143	NullFields []string `json:"-"`
2144}
2145
2146func (s *DatafeedFetchSchedule) MarshalJSON() ([]byte, error) {
2147	type NoMethod DatafeedFetchSchedule
2148	raw := NoMethod(*s)
2149	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2150}
2151
2152type DatafeedFormat struct {
2153	// ColumnDelimiter: Delimiter for the separation of values in a
2154	// delimiter-separated values feed. If not specified, the delimiter will
2155	// be auto-detected. Ignored for non-DSV data feeds.
2156	ColumnDelimiter string `json:"columnDelimiter,omitempty"`
2157
2158	// FileEncoding: Character encoding scheme of the data feed. If not
2159	// specified, the encoding will be auto-detected.
2160	FileEncoding string `json:"fileEncoding,omitempty"`
2161
2162	// QuotingMode: Specifies how double quotes are interpreted. If not
2163	// specified, the mode will be auto-detected. Ignored for non-DSV data
2164	// feeds.
2165	QuotingMode string `json:"quotingMode,omitempty"`
2166
2167	// ForceSendFields is a list of field names (e.g. "ColumnDelimiter") to
2168	// unconditionally include in API requests. By default, fields with
2169	// empty values are omitted from API requests. However, any non-pointer,
2170	// non-interface field appearing in ForceSendFields will be sent to the
2171	// server regardless of whether the field is empty or not. This may be
2172	// used to include empty fields in Patch requests.
2173	ForceSendFields []string `json:"-"`
2174
2175	// NullFields is a list of field names (e.g. "ColumnDelimiter") to
2176	// include in API requests with the JSON null value. By default, fields
2177	// with empty values are omitted from API requests. However, any field
2178	// with an empty value appearing in NullFields will be sent to the
2179	// server as null. It is an error if a field in this list has a
2180	// non-empty value. This may be used to include null fields in Patch
2181	// requests.
2182	NullFields []string `json:"-"`
2183}
2184
2185func (s *DatafeedFormat) MarshalJSON() ([]byte, error) {
2186	type NoMethod DatafeedFormat
2187	raw := NoMethod(*s)
2188	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2189}
2190
2191// DatafeedStatus: The status of a datafeed, i.e., the result of the
2192// last retrieval of the datafeed computed asynchronously when the feed
2193// processing is finished.
2194type DatafeedStatus struct {
2195	// Country: The country for which the status is reported, represented as
2196	// a  CLDR territory code.
2197	Country string `json:"country,omitempty"`
2198
2199	// DatafeedId: The ID of the feed for which the status is reported.
2200	DatafeedId uint64 `json:"datafeedId,omitempty,string"`
2201
2202	// Errors: The list of errors occurring in the feed.
2203	Errors []*DatafeedStatusError `json:"errors,omitempty"`
2204
2205	// ItemsTotal: The number of items in the feed that were processed.
2206	ItemsTotal uint64 `json:"itemsTotal,omitempty,string"`
2207
2208	// ItemsValid: The number of items in the feed that were valid.
2209	ItemsValid uint64 `json:"itemsValid,omitempty,string"`
2210
2211	// Kind: Identifies what kind of resource this is. Value: the fixed
2212	// string "content#datafeedStatus".
2213	Kind string `json:"kind,omitempty"`
2214
2215	// Language: The two-letter ISO 639-1 language for which the status is
2216	// reported.
2217	Language string `json:"language,omitempty"`
2218
2219	// LastUploadDate: The last date at which the feed was uploaded.
2220	LastUploadDate string `json:"lastUploadDate,omitempty"`
2221
2222	// ProcessingStatus: The processing status of the feed.
2223	ProcessingStatus string `json:"processingStatus,omitempty"`
2224
2225	// Warnings: The list of errors occurring in the feed.
2226	Warnings []*DatafeedStatusError `json:"warnings,omitempty"`
2227
2228	// ServerResponse contains the HTTP response code and headers from the
2229	// server.
2230	googleapi.ServerResponse `json:"-"`
2231
2232	// ForceSendFields is a list of field names (e.g. "Country") to
2233	// unconditionally include in API requests. By default, fields with
2234	// empty values are omitted from API requests. However, any non-pointer,
2235	// non-interface field appearing in ForceSendFields will be sent to the
2236	// server regardless of whether the field is empty or not. This may be
2237	// used to include empty fields in Patch requests.
2238	ForceSendFields []string `json:"-"`
2239
2240	// NullFields is a list of field names (e.g. "Country") to include in
2241	// API requests with the JSON null value. By default, fields with empty
2242	// values are omitted from API requests. However, any field with an
2243	// empty value appearing in NullFields will be sent to the server as
2244	// null. It is an error if a field in this list has a non-empty value.
2245	// This may be used to include null fields in Patch requests.
2246	NullFields []string `json:"-"`
2247}
2248
2249func (s *DatafeedStatus) MarshalJSON() ([]byte, error) {
2250	type NoMethod DatafeedStatus
2251	raw := NoMethod(*s)
2252	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2253}
2254
2255// DatafeedStatusError: An error occurring in the feed, like "invalid
2256// price".
2257type DatafeedStatusError struct {
2258	// Code: The code of the error, e.g., "validation/invalid_value".
2259	Code string `json:"code,omitempty"`
2260
2261	// Count: The number of occurrences of the error in the feed.
2262	Count uint64 `json:"count,omitempty,string"`
2263
2264	// Examples: A list of example occurrences of the error, grouped by
2265	// product.
2266	Examples []*DatafeedStatusExample `json:"examples,omitempty"`
2267
2268	// Message: The error message, e.g., "Invalid price".
2269	Message string `json:"message,omitempty"`
2270
2271	// ForceSendFields is a list of field names (e.g. "Code") to
2272	// unconditionally include in API requests. By default, fields with
2273	// empty values are omitted from API requests. However, any non-pointer,
2274	// non-interface field appearing in ForceSendFields will be sent to the
2275	// server regardless of whether the field is empty or not. This may be
2276	// used to include empty fields in Patch requests.
2277	ForceSendFields []string `json:"-"`
2278
2279	// NullFields is a list of field names (e.g. "Code") to include in API
2280	// requests with the JSON null value. By default, fields with empty
2281	// values are omitted from API requests. However, any field with an
2282	// empty value appearing in NullFields will be sent to the server as
2283	// null. It is an error if a field in this list has a non-empty value.
2284	// This may be used to include null fields in Patch requests.
2285	NullFields []string `json:"-"`
2286}
2287
2288func (s *DatafeedStatusError) MarshalJSON() ([]byte, error) {
2289	type NoMethod DatafeedStatusError
2290	raw := NoMethod(*s)
2291	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2292}
2293
2294// DatafeedStatusExample: An example occurrence for a particular error.
2295type DatafeedStatusExample struct {
2296	// ItemId: The ID of the example item.
2297	ItemId string `json:"itemId,omitempty"`
2298
2299	// LineNumber: Line number in the data feed where the example is found.
2300	LineNumber uint64 `json:"lineNumber,omitempty,string"`
2301
2302	// Value: The problematic value.
2303	Value string `json:"value,omitempty"`
2304
2305	// ForceSendFields is a list of field names (e.g. "ItemId") to
2306	// unconditionally include in API requests. By default, fields with
2307	// empty values are omitted from API requests. However, any non-pointer,
2308	// non-interface field appearing in ForceSendFields will be sent to the
2309	// server regardless of whether the field is empty or not. This may be
2310	// used to include empty fields in Patch requests.
2311	ForceSendFields []string `json:"-"`
2312
2313	// NullFields is a list of field names (e.g. "ItemId") to include in API
2314	// requests with the JSON null value. By default, fields with empty
2315	// values are omitted from API requests. However, any field with an
2316	// empty value appearing in NullFields will be sent to the server as
2317	// null. It is an error if a field in this list has a non-empty value.
2318	// This may be used to include null fields in Patch requests.
2319	NullFields []string `json:"-"`
2320}
2321
2322func (s *DatafeedStatusExample) MarshalJSON() ([]byte, error) {
2323	type NoMethod DatafeedStatusExample
2324	raw := NoMethod(*s)
2325	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2326}
2327
2328type DatafeedTarget struct {
2329	// Country: The country where the items in the feed will be included in
2330	// the search index, represented as a  CLDR territory code.
2331	Country string `json:"country,omitempty"`
2332
2333	// ExcludedDestinations: The list of destinations to exclude for this
2334	// target (corresponds to unchecked check boxes in Merchant Center).
2335	ExcludedDestinations []string `json:"excludedDestinations,omitempty"`
2336
2337	// IncludedDestinations: The list of destinations to include for this
2338	// target (corresponds to checked check boxes in Merchant Center).
2339	// Default destinations are always included unless provided in
2340	// excludedDestinations.
2341	//
2342	// List of supported destinations (if available to the account):
2343	// - DisplayAds
2344	// - Shopping
2345	// - ShoppingActions
2346	// - SurfacesAcrossGoogle
2347	IncludedDestinations []string `json:"includedDestinations,omitempty"`
2348
2349	// Language: The two-letter ISO 639-1 language of the items in the feed.
2350	// Must be a valid language for targets[].country.
2351	Language string `json:"language,omitempty"`
2352
2353	// ForceSendFields is a list of field names (e.g. "Country") to
2354	// unconditionally include in API requests. By default, fields with
2355	// empty values are omitted from API requests. However, any non-pointer,
2356	// non-interface field appearing in ForceSendFields will be sent to the
2357	// server regardless of whether the field is empty or not. This may be
2358	// used to include empty fields in Patch requests.
2359	ForceSendFields []string `json:"-"`
2360
2361	// NullFields is a list of field names (e.g. "Country") to include in
2362	// API requests with the JSON null value. By default, fields with empty
2363	// values are omitted from API requests. However, any field with an
2364	// empty value appearing in NullFields will be sent to the server as
2365	// null. It is an error if a field in this list has a non-empty value.
2366	// This may be used to include null fields in Patch requests.
2367	NullFields []string `json:"-"`
2368}
2369
2370func (s *DatafeedTarget) MarshalJSON() ([]byte, error) {
2371	type NoMethod DatafeedTarget
2372	raw := NoMethod(*s)
2373	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2374}
2375
2376type DatafeedsCustomBatchRequest struct {
2377	// Entries: The request entries to be processed in the batch.
2378	Entries []*DatafeedsCustomBatchRequestEntry `json:"entries,omitempty"`
2379
2380	// ForceSendFields is a list of field names (e.g. "Entries") to
2381	// unconditionally include in API requests. By default, fields with
2382	// empty values are omitted from API requests. However, any non-pointer,
2383	// non-interface field appearing in ForceSendFields will be sent to the
2384	// server regardless of whether the field is empty or not. This may be
2385	// used to include empty fields in Patch requests.
2386	ForceSendFields []string `json:"-"`
2387
2388	// NullFields is a list of field names (e.g. "Entries") to include in
2389	// API requests with the JSON null value. By default, fields with empty
2390	// values are omitted from API requests. However, any field with an
2391	// empty value appearing in NullFields will be sent to the server as
2392	// null. It is an error if a field in this list has a non-empty value.
2393	// This may be used to include null fields in Patch requests.
2394	NullFields []string `json:"-"`
2395}
2396
2397func (s *DatafeedsCustomBatchRequest) MarshalJSON() ([]byte, error) {
2398	type NoMethod DatafeedsCustomBatchRequest
2399	raw := NoMethod(*s)
2400	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2401}
2402
2403// DatafeedsCustomBatchRequestEntry: A batch entry encoding a single
2404// non-batch datafeeds request.
2405type DatafeedsCustomBatchRequestEntry struct {
2406	// BatchId: An entry ID, unique within the batch request.
2407	BatchId int64 `json:"batchId,omitempty"`
2408
2409	// Datafeed: The data feed to insert.
2410	Datafeed *Datafeed `json:"datafeed,omitempty"`
2411
2412	// DatafeedId: The ID of the data feed to get, delete or fetch.
2413	DatafeedId uint64 `json:"datafeedId,omitempty,string"`
2414
2415	// MerchantId: The ID of the managing account.
2416	MerchantId uint64 `json:"merchantId,omitempty,string"`
2417
2418	Method string `json:"method,omitempty"`
2419
2420	// ForceSendFields is a list of field names (e.g. "BatchId") to
2421	// unconditionally include in API requests. By default, fields with
2422	// empty values are omitted from API requests. However, any non-pointer,
2423	// non-interface field appearing in ForceSendFields will be sent to the
2424	// server regardless of whether the field is empty or not. This may be
2425	// used to include empty fields in Patch requests.
2426	ForceSendFields []string `json:"-"`
2427
2428	// NullFields is a list of field names (e.g. "BatchId") to include in
2429	// API requests with the JSON null value. By default, fields with empty
2430	// values are omitted from API requests. However, any field with an
2431	// empty value appearing in NullFields will be sent to the server as
2432	// null. It is an error if a field in this list has a non-empty value.
2433	// This may be used to include null fields in Patch requests.
2434	NullFields []string `json:"-"`
2435}
2436
2437func (s *DatafeedsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
2438	type NoMethod DatafeedsCustomBatchRequestEntry
2439	raw := NoMethod(*s)
2440	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2441}
2442
2443type DatafeedsCustomBatchResponse struct {
2444	// Entries: The result of the execution of the batch requests.
2445	Entries []*DatafeedsCustomBatchResponseEntry `json:"entries,omitempty"`
2446
2447	// Kind: Identifies what kind of resource this is. Value: the fixed
2448	// string "content#datafeedsCustomBatchResponse".
2449	Kind string `json:"kind,omitempty"`
2450
2451	// ServerResponse contains the HTTP response code and headers from the
2452	// server.
2453	googleapi.ServerResponse `json:"-"`
2454
2455	// ForceSendFields is a list of field names (e.g. "Entries") to
2456	// unconditionally include in API requests. By default, fields with
2457	// empty values are omitted from API requests. However, any non-pointer,
2458	// non-interface field appearing in ForceSendFields will be sent to the
2459	// server regardless of whether the field is empty or not. This may be
2460	// used to include empty fields in Patch requests.
2461	ForceSendFields []string `json:"-"`
2462
2463	// NullFields is a list of field names (e.g. "Entries") to include in
2464	// API requests with the JSON null value. By default, fields with empty
2465	// values are omitted from API requests. However, any field with an
2466	// empty value appearing in NullFields will be sent to the server as
2467	// null. It is an error if a field in this list has a non-empty value.
2468	// This may be used to include null fields in Patch requests.
2469	NullFields []string `json:"-"`
2470}
2471
2472func (s *DatafeedsCustomBatchResponse) MarshalJSON() ([]byte, error) {
2473	type NoMethod DatafeedsCustomBatchResponse
2474	raw := NoMethod(*s)
2475	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2476}
2477
2478// DatafeedsCustomBatchResponseEntry: A batch entry encoding a single
2479// non-batch datafeeds response.
2480type DatafeedsCustomBatchResponseEntry struct {
2481	// BatchId: The ID of the request entry this entry responds to.
2482	BatchId int64 `json:"batchId,omitempty"`
2483
2484	// Datafeed: The requested data feed. Defined if and only if the request
2485	// was successful.
2486	Datafeed *Datafeed `json:"datafeed,omitempty"`
2487
2488	// Errors: A list of errors defined if and only if the request failed.
2489	Errors *Errors `json:"errors,omitempty"`
2490
2491	// ForceSendFields is a list of field names (e.g. "BatchId") to
2492	// unconditionally include in API requests. By default, fields with
2493	// empty values are omitted from API requests. However, any non-pointer,
2494	// non-interface field appearing in ForceSendFields will be sent to the
2495	// server regardless of whether the field is empty or not. This may be
2496	// used to include empty fields in Patch requests.
2497	ForceSendFields []string `json:"-"`
2498
2499	// NullFields is a list of field names (e.g. "BatchId") to include in
2500	// API requests with the JSON null value. By default, fields with empty
2501	// values are omitted from API requests. However, any field with an
2502	// empty value appearing in NullFields will be sent to the server as
2503	// null. It is an error if a field in this list has a non-empty value.
2504	// This may be used to include null fields in Patch requests.
2505	NullFields []string `json:"-"`
2506}
2507
2508func (s *DatafeedsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
2509	type NoMethod DatafeedsCustomBatchResponseEntry
2510	raw := NoMethod(*s)
2511	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2512}
2513
2514type DatafeedsFetchNowResponse struct {
2515	// Kind: Identifies what kind of resource this is. Value: the fixed
2516	// string "content#datafeedsFetchNowResponse".
2517	Kind string `json:"kind,omitempty"`
2518
2519	// ServerResponse contains the HTTP response code and headers from the
2520	// server.
2521	googleapi.ServerResponse `json:"-"`
2522
2523	// ForceSendFields is a list of field names (e.g. "Kind") to
2524	// unconditionally include in API requests. By default, fields with
2525	// empty values are omitted from API requests. However, any non-pointer,
2526	// non-interface field appearing in ForceSendFields will be sent to the
2527	// server regardless of whether the field is empty or not. This may be
2528	// used to include empty fields in Patch requests.
2529	ForceSendFields []string `json:"-"`
2530
2531	// NullFields is a list of field names (e.g. "Kind") to include in API
2532	// requests with the JSON null value. By default, fields with empty
2533	// values are omitted from API requests. However, any field with an
2534	// empty value appearing in NullFields will be sent to the server as
2535	// null. It is an error if a field in this list has a non-empty value.
2536	// This may be used to include null fields in Patch requests.
2537	NullFields []string `json:"-"`
2538}
2539
2540func (s *DatafeedsFetchNowResponse) MarshalJSON() ([]byte, error) {
2541	type NoMethod DatafeedsFetchNowResponse
2542	raw := NoMethod(*s)
2543	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2544}
2545
2546type DatafeedsListResponse struct {
2547	// Kind: Identifies what kind of resource this is. Value: the fixed
2548	// string "content#datafeedsListResponse".
2549	Kind string `json:"kind,omitempty"`
2550
2551	// NextPageToken: The token for the retrieval of the next page of
2552	// datafeeds.
2553	NextPageToken string `json:"nextPageToken,omitempty"`
2554
2555	Resources []*Datafeed `json:"resources,omitempty"`
2556
2557	// ServerResponse contains the HTTP response code and headers from the
2558	// server.
2559	googleapi.ServerResponse `json:"-"`
2560
2561	// ForceSendFields is a list of field names (e.g. "Kind") to
2562	// unconditionally include in API requests. By default, fields with
2563	// empty values are omitted from API requests. However, any non-pointer,
2564	// non-interface field appearing in ForceSendFields will be sent to the
2565	// server regardless of whether the field is empty or not. This may be
2566	// used to include empty fields in Patch requests.
2567	ForceSendFields []string `json:"-"`
2568
2569	// NullFields is a list of field names (e.g. "Kind") to include in API
2570	// requests with the JSON null value. By default, fields with empty
2571	// values are omitted from API requests. However, any field with an
2572	// empty value appearing in NullFields will be sent to the server as
2573	// null. It is an error if a field in this list has a non-empty value.
2574	// This may be used to include null fields in Patch requests.
2575	NullFields []string `json:"-"`
2576}
2577
2578func (s *DatafeedsListResponse) MarshalJSON() ([]byte, error) {
2579	type NoMethod DatafeedsListResponse
2580	raw := NoMethod(*s)
2581	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2582}
2583
2584type DatafeedstatusesCustomBatchRequest struct {
2585	// Entries: The request entries to be processed in the batch.
2586	Entries []*DatafeedstatusesCustomBatchRequestEntry `json:"entries,omitempty"`
2587
2588	// ForceSendFields is a list of field names (e.g. "Entries") to
2589	// unconditionally include in API requests. By default, fields with
2590	// empty values are omitted from API requests. However, any non-pointer,
2591	// non-interface field appearing in ForceSendFields will be sent to the
2592	// server regardless of whether the field is empty or not. This may be
2593	// used to include empty fields in Patch requests.
2594	ForceSendFields []string `json:"-"`
2595
2596	// NullFields is a list of field names (e.g. "Entries") to include in
2597	// API requests with the JSON null value. By default, fields with empty
2598	// values are omitted from API requests. However, any field with an
2599	// empty value appearing in NullFields will be sent to the server as
2600	// null. It is an error if a field in this list has a non-empty value.
2601	// This may be used to include null fields in Patch requests.
2602	NullFields []string `json:"-"`
2603}
2604
2605func (s *DatafeedstatusesCustomBatchRequest) MarshalJSON() ([]byte, error) {
2606	type NoMethod DatafeedstatusesCustomBatchRequest
2607	raw := NoMethod(*s)
2608	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2609}
2610
2611// DatafeedstatusesCustomBatchRequestEntry: A batch entry encoding a
2612// single non-batch datafeedstatuses request.
2613type DatafeedstatusesCustomBatchRequestEntry struct {
2614	// BatchId: An entry ID, unique within the batch request.
2615	BatchId int64 `json:"batchId,omitempty"`
2616
2617	// Country: The country for which to get the datafeed status. If this
2618	// parameter is provided then language must also be provided. Note that
2619	// for multi-target datafeeds this parameter is required.
2620	Country string `json:"country,omitempty"`
2621
2622	// DatafeedId: The ID of the data feed to get.
2623	DatafeedId uint64 `json:"datafeedId,omitempty,string"`
2624
2625	// Language: The language for which to get the datafeed status. If this
2626	// parameter is provided then country must also be provided. Note that
2627	// for multi-target datafeeds this parameter is required.
2628	Language string `json:"language,omitempty"`
2629
2630	// MerchantId: The ID of the managing account.
2631	MerchantId uint64 `json:"merchantId,omitempty,string"`
2632
2633	Method string `json:"method,omitempty"`
2634
2635	// ForceSendFields is a list of field names (e.g. "BatchId") to
2636	// unconditionally include in API requests. By default, fields with
2637	// empty values are omitted from API requests. However, any non-pointer,
2638	// non-interface field appearing in ForceSendFields will be sent to the
2639	// server regardless of whether the field is empty or not. This may be
2640	// used to include empty fields in Patch requests.
2641	ForceSendFields []string `json:"-"`
2642
2643	// NullFields is a list of field names (e.g. "BatchId") to include in
2644	// API requests with the JSON null value. By default, fields with empty
2645	// values are omitted from API requests. However, any field with an
2646	// empty value appearing in NullFields will be sent to the server as
2647	// null. It is an error if a field in this list has a non-empty value.
2648	// This may be used to include null fields in Patch requests.
2649	NullFields []string `json:"-"`
2650}
2651
2652func (s *DatafeedstatusesCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
2653	type NoMethod DatafeedstatusesCustomBatchRequestEntry
2654	raw := NoMethod(*s)
2655	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2656}
2657
2658type DatafeedstatusesCustomBatchResponse struct {
2659	// Entries: The result of the execution of the batch requests.
2660	Entries []*DatafeedstatusesCustomBatchResponseEntry `json:"entries,omitempty"`
2661
2662	// Kind: Identifies what kind of resource this is. Value: the fixed
2663	// string "content#datafeedstatusesCustomBatchResponse".
2664	Kind string `json:"kind,omitempty"`
2665
2666	// ServerResponse contains the HTTP response code and headers from the
2667	// server.
2668	googleapi.ServerResponse `json:"-"`
2669
2670	// ForceSendFields is a list of field names (e.g. "Entries") to
2671	// unconditionally include in API requests. By default, fields with
2672	// empty values are omitted from API requests. However, any non-pointer,
2673	// non-interface field appearing in ForceSendFields will be sent to the
2674	// server regardless of whether the field is empty or not. This may be
2675	// used to include empty fields in Patch requests.
2676	ForceSendFields []string `json:"-"`
2677
2678	// NullFields is a list of field names (e.g. "Entries") to include in
2679	// API requests with the JSON null value. By default, fields with empty
2680	// values are omitted from API requests. However, any field with an
2681	// empty value appearing in NullFields will be sent to the server as
2682	// null. It is an error if a field in this list has a non-empty value.
2683	// This may be used to include null fields in Patch requests.
2684	NullFields []string `json:"-"`
2685}
2686
2687func (s *DatafeedstatusesCustomBatchResponse) MarshalJSON() ([]byte, error) {
2688	type NoMethod DatafeedstatusesCustomBatchResponse
2689	raw := NoMethod(*s)
2690	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2691}
2692
2693// DatafeedstatusesCustomBatchResponseEntry: A batch entry encoding a
2694// single non-batch datafeedstatuses response.
2695type DatafeedstatusesCustomBatchResponseEntry struct {
2696	// BatchId: The ID of the request entry this entry responds to.
2697	BatchId int64 `json:"batchId,omitempty"`
2698
2699	// DatafeedStatus: The requested data feed status. Defined if and only
2700	// if the request was successful.
2701	DatafeedStatus *DatafeedStatus `json:"datafeedStatus,omitempty"`
2702
2703	// Errors: A list of errors defined if and only if the request failed.
2704	Errors *Errors `json:"errors,omitempty"`
2705
2706	// ForceSendFields is a list of field names (e.g. "BatchId") to
2707	// unconditionally include in API requests. By default, fields with
2708	// empty values are omitted from API requests. However, any non-pointer,
2709	// non-interface field appearing in ForceSendFields will be sent to the
2710	// server regardless of whether the field is empty or not. This may be
2711	// used to include empty fields in Patch requests.
2712	ForceSendFields []string `json:"-"`
2713
2714	// NullFields is a list of field names (e.g. "BatchId") to include in
2715	// API requests with the JSON null value. By default, fields with empty
2716	// values are omitted from API requests. However, any field with an
2717	// empty value appearing in NullFields will be sent to the server as
2718	// null. It is an error if a field in this list has a non-empty value.
2719	// This may be used to include null fields in Patch requests.
2720	NullFields []string `json:"-"`
2721}
2722
2723func (s *DatafeedstatusesCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
2724	type NoMethod DatafeedstatusesCustomBatchResponseEntry
2725	raw := NoMethod(*s)
2726	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2727}
2728
2729type DatafeedstatusesListResponse struct {
2730	// Kind: Identifies what kind of resource this is. Value: the fixed
2731	// string "content#datafeedstatusesListResponse".
2732	Kind string `json:"kind,omitempty"`
2733
2734	// NextPageToken: The token for the retrieval of the next page of
2735	// datafeed statuses.
2736	NextPageToken string `json:"nextPageToken,omitempty"`
2737
2738	Resources []*DatafeedStatus `json:"resources,omitempty"`
2739
2740	// ServerResponse contains the HTTP response code and headers from the
2741	// server.
2742	googleapi.ServerResponse `json:"-"`
2743
2744	// ForceSendFields is a list of field names (e.g. "Kind") to
2745	// unconditionally include in API requests. By default, fields with
2746	// empty values are omitted from API requests. However, any non-pointer,
2747	// non-interface field appearing in ForceSendFields will be sent to the
2748	// server regardless of whether the field is empty or not. This may be
2749	// used to include empty fields in Patch requests.
2750	ForceSendFields []string `json:"-"`
2751
2752	// NullFields is a list of field names (e.g. "Kind") to include in API
2753	// requests with the JSON null value. By default, fields with empty
2754	// values are omitted from API requests. However, any field with an
2755	// empty value appearing in NullFields will be sent to the server as
2756	// null. It is an error if a field in this list has a non-empty value.
2757	// This may be used to include null fields in Patch requests.
2758	NullFields []string `json:"-"`
2759}
2760
2761func (s *DatafeedstatusesListResponse) MarshalJSON() ([]byte, error) {
2762	type NoMethod DatafeedstatusesListResponse
2763	raw := NoMethod(*s)
2764	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2765}
2766
2767type DeliveryTime struct {
2768	// CutoffTime: Business days cutoff time definition. If not configured
2769	// the cutoff time will be defaulted to 8AM PST.
2770	CutoffTime *CutoffTime `json:"cutoffTime,omitempty"`
2771
2772	// HandlingBusinessDayConfig: The business days during which orders can
2773	// be handled. If not provided, Monday to Friday business days will be
2774	// assumed.
2775	HandlingBusinessDayConfig *BusinessDayConfig `json:"handlingBusinessDayConfig,omitempty"`
2776
2777	// HolidayCutoffs: Holiday cutoff definitions. If configured, they
2778	// specify order cutoff times for holiday-specific shipping.
2779	HolidayCutoffs []*HolidayCutoff `json:"holidayCutoffs,omitempty"`
2780
2781	// MaxHandlingTimeInDays: Maximum number of business days spent before
2782	// an order is shipped. 0 means same day shipped, 1 means next day
2783	// shipped. Must be greater than or equal to minHandlingTimeInDays.
2784	MaxHandlingTimeInDays int64 `json:"maxHandlingTimeInDays,omitempty"`
2785
2786	// MaxTransitTimeInDays: Maximum number of business days that is spent
2787	// in transit. 0 means same day delivery, 1 means next day delivery.
2788	// Must be greater than or equal to minTransitTimeInDays.
2789	MaxTransitTimeInDays int64 `json:"maxTransitTimeInDays,omitempty"`
2790
2791	// MinHandlingTimeInDays: Minimum number of business days spent before
2792	// an order is shipped. 0 means same day shipped, 1 means next day
2793	// shipped.
2794	MinHandlingTimeInDays int64 `json:"minHandlingTimeInDays,omitempty"`
2795
2796	// MinTransitTimeInDays: Minimum number of business days that is spent
2797	// in transit. 0 means same day delivery, 1 means next day delivery.
2798	// Either {min,max}TransitTimeInDays or transitTimeTable must be set,
2799	// but not both.
2800	MinTransitTimeInDays int64 `json:"minTransitTimeInDays,omitempty"`
2801
2802	// TransitBusinessDayConfig: The business days during which orders can
2803	// be in-transit. If not provided, Monday to Friday business days will
2804	// be assumed.
2805	TransitBusinessDayConfig *BusinessDayConfig `json:"transitBusinessDayConfig,omitempty"`
2806
2807	// TransitTimeTable: Transit time table, number of business days spent
2808	// in transit based on row and column dimensions. Either
2809	// {min,max}TransitTimeInDays or transitTimeTable can be set, but not
2810	// both.
2811	TransitTimeTable *TransitTable `json:"transitTimeTable,omitempty"`
2812
2813	// ForceSendFields is a list of field names (e.g. "CutoffTime") to
2814	// unconditionally include in API requests. By default, fields with
2815	// empty values are omitted from API requests. However, any non-pointer,
2816	// non-interface field appearing in ForceSendFields will be sent to the
2817	// server regardless of whether the field is empty or not. This may be
2818	// used to include empty fields in Patch requests.
2819	ForceSendFields []string `json:"-"`
2820
2821	// NullFields is a list of field names (e.g. "CutoffTime") to include in
2822	// API requests with the JSON null value. By default, fields with empty
2823	// values are omitted from API requests. However, any field with an
2824	// empty value appearing in NullFields will be sent to the server as
2825	// null. It is an error if a field in this list has a non-empty value.
2826	// This may be used to include null fields in Patch requests.
2827	NullFields []string `json:"-"`
2828}
2829
2830func (s *DeliveryTime) MarshalJSON() ([]byte, error) {
2831	type NoMethod DeliveryTime
2832	raw := NoMethod(*s)
2833	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2834}
2835
2836// Error: An error returned by the API.
2837type Error struct {
2838	// Domain: The domain of the error.
2839	Domain string `json:"domain,omitempty"`
2840
2841	// Message: A description of the error.
2842	Message string `json:"message,omitempty"`
2843
2844	// Reason: The error code.
2845	Reason string `json:"reason,omitempty"`
2846
2847	// ForceSendFields is a list of field names (e.g. "Domain") to
2848	// unconditionally include in API requests. By default, fields with
2849	// empty values are omitted from API requests. However, any non-pointer,
2850	// non-interface field appearing in ForceSendFields will be sent to the
2851	// server regardless of whether the field is empty or not. This may be
2852	// used to include empty fields in Patch requests.
2853	ForceSendFields []string `json:"-"`
2854
2855	// NullFields is a list of field names (e.g. "Domain") to include in API
2856	// requests with the JSON null value. By default, fields with empty
2857	// values are omitted from API requests. However, any field with an
2858	// empty value appearing in NullFields will be sent to the server as
2859	// null. It is an error if a field in this list has a non-empty value.
2860	// This may be used to include null fields in Patch requests.
2861	NullFields []string `json:"-"`
2862}
2863
2864func (s *Error) MarshalJSON() ([]byte, error) {
2865	type NoMethod Error
2866	raw := NoMethod(*s)
2867	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2868}
2869
2870// Errors: A list of errors returned by a failed batch entry.
2871type Errors struct {
2872	// Code: The HTTP status of the first error in errors.
2873	Code int64 `json:"code,omitempty"`
2874
2875	// Errors: A list of errors.
2876	Errors []*Error `json:"errors,omitempty"`
2877
2878	// Message: The message of the first error in errors.
2879	Message string `json:"message,omitempty"`
2880
2881	// ForceSendFields is a list of field names (e.g. "Code") to
2882	// unconditionally include in API requests. By default, fields with
2883	// empty values are omitted from API requests. However, any non-pointer,
2884	// non-interface field appearing in ForceSendFields will be sent to the
2885	// server regardless of whether the field is empty or not. This may be
2886	// used to include empty fields in Patch requests.
2887	ForceSendFields []string `json:"-"`
2888
2889	// NullFields is a list of field names (e.g. "Code") to include in API
2890	// requests with the JSON null value. By default, fields with empty
2891	// values are omitted from API requests. However, any field with an
2892	// empty value appearing in NullFields will be sent to the server as
2893	// null. It is an error if a field in this list has a non-empty value.
2894	// This may be used to include null fields in Patch requests.
2895	NullFields []string `json:"-"`
2896}
2897
2898func (s *Errors) MarshalJSON() ([]byte, error) {
2899	type NoMethod Errors
2900	raw := NoMethod(*s)
2901	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2902}
2903
2904type GmbAccounts struct {
2905	// AccountId: The ID of the account.
2906	AccountId uint64 `json:"accountId,omitempty,string"`
2907
2908	// GmbAccounts: A list of GMB accounts which are available to the
2909	// merchant.
2910	GmbAccounts []*GmbAccountsGmbAccount `json:"gmbAccounts,omitempty"`
2911
2912	// ForceSendFields is a list of field names (e.g. "AccountId") to
2913	// unconditionally include in API requests. By default, fields with
2914	// empty values are omitted from API requests. However, any non-pointer,
2915	// non-interface field appearing in ForceSendFields will be sent to the
2916	// server regardless of whether the field is empty or not. This may be
2917	// used to include empty fields in Patch requests.
2918	ForceSendFields []string `json:"-"`
2919
2920	// NullFields is a list of field names (e.g. "AccountId") to include in
2921	// API requests with the JSON null value. By default, fields with empty
2922	// values are omitted from API requests. However, any field with an
2923	// empty value appearing in NullFields will be sent to the server as
2924	// null. It is an error if a field in this list has a non-empty value.
2925	// This may be used to include null fields in Patch requests.
2926	NullFields []string `json:"-"`
2927}
2928
2929func (s *GmbAccounts) MarshalJSON() ([]byte, error) {
2930	type NoMethod GmbAccounts
2931	raw := NoMethod(*s)
2932	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2933}
2934
2935type GmbAccountsGmbAccount struct {
2936	// Email: The email which identifies the GMB account.
2937	Email string `json:"email,omitempty"`
2938
2939	// ListingCount: Number of listings under this account.
2940	ListingCount uint64 `json:"listingCount,omitempty,string"`
2941
2942	// Name: The name of the GMB account.
2943	Name string `json:"name,omitempty"`
2944
2945	// Type: The type of the GMB account (User or Business).
2946	Type string `json:"type,omitempty"`
2947
2948	// ForceSendFields is a list of field names (e.g. "Email") to
2949	// unconditionally include in API requests. By default, fields with
2950	// empty values are omitted from API requests. However, any non-pointer,
2951	// non-interface field appearing in ForceSendFields will be sent to the
2952	// server regardless of whether the field is empty or not. This may be
2953	// used to include empty fields in Patch requests.
2954	ForceSendFields []string `json:"-"`
2955
2956	// NullFields is a list of field names (e.g. "Email") to include in API
2957	// requests with the JSON null value. By default, fields with empty
2958	// values are omitted from API requests. However, any field with an
2959	// empty value appearing in NullFields will be sent to the server as
2960	// null. It is an error if a field in this list has a non-empty value.
2961	// This may be used to include null fields in Patch requests.
2962	NullFields []string `json:"-"`
2963}
2964
2965func (s *GmbAccountsGmbAccount) MarshalJSON() ([]byte, error) {
2966	type NoMethod GmbAccountsGmbAccount
2967	raw := NoMethod(*s)
2968	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2969}
2970
2971// Headers: A non-empty list of row or column headers for a table.
2972// Exactly one of prices, weights, numItems, postalCodeGroupNames, or
2973// location must be set.
2974type Headers struct {
2975	// Locations: A list of location ID sets. Must be non-empty. Can only be
2976	// set if all other fields are not set.
2977	Locations []*LocationIdSet `json:"locations,omitempty"`
2978
2979	// NumberOfItems: A list of inclusive number of items upper bounds. The
2980	// last value can be "infinity". For example ["10", "50", "infinity"]
2981	// represents the headers "<= 10 items", " 50 items". Must be non-empty.
2982	// Can only be set if all other fields are not set.
2983	NumberOfItems []string `json:"numberOfItems,omitempty"`
2984
2985	// PostalCodeGroupNames: A list of postal group names. The last value
2986	// can be "all other locations". Example: ["zone 1", "zone 2", "all
2987	// other locations"]. The referred postal code groups must match the
2988	// delivery country of the service. Must be non-empty. Can only be set
2989	// if all other fields are not set.
2990	PostalCodeGroupNames []string `json:"postalCodeGroupNames,omitempty"`
2991
2992	// Prices: A list of inclusive order price upper bounds. The last
2993	// price's value can be "infinity". For example [{"value": "10",
2994	// "currency": "USD"}, {"value": "500", "currency": "USD"}, {"value":
2995	// "infinity", "currency": "USD"}] represents the headers "<= $10", "
2996	// $500". All prices within a service must have the same currency. Must
2997	// be non-empty. Can only be set if all other fields are not set.
2998	Prices []*Price `json:"prices,omitempty"`
2999
3000	// Weights: A list of inclusive order weight upper bounds. The last
3001	// weight's value can be "infinity". For example [{"value": "10",
3002	// "unit": "kg"}, {"value": "50", "unit": "kg"}, {"value": "infinity",
3003	// "unit": "kg"}] represents the headers "<= 10kg", " 50kg". All weights
3004	// within a service must have the same unit. Must be non-empty. Can only
3005	// be set if all other fields are not set.
3006	Weights []*Weight `json:"weights,omitempty"`
3007
3008	// ForceSendFields is a list of field names (e.g. "Locations") to
3009	// unconditionally include in API requests. By default, fields with
3010	// empty values are omitted from API requests. However, any non-pointer,
3011	// non-interface field appearing in ForceSendFields will be sent to the
3012	// server regardless of whether the field is empty or not. This may be
3013	// used to include empty fields in Patch requests.
3014	ForceSendFields []string `json:"-"`
3015
3016	// NullFields is a list of field names (e.g. "Locations") to include in
3017	// API requests with the JSON null value. By default, fields with empty
3018	// values are omitted from API requests. However, any field with an
3019	// empty value appearing in NullFields will be sent to the server as
3020	// null. It is an error if a field in this list has a non-empty value.
3021	// This may be used to include null fields in Patch requests.
3022	NullFields []string `json:"-"`
3023}
3024
3025func (s *Headers) MarshalJSON() ([]byte, error) {
3026	type NoMethod Headers
3027	raw := NoMethod(*s)
3028	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3029}
3030
3031type HolidayCutoff struct {
3032	// DeadlineDate: Date of the order deadline, in ISO 8601 format. E.g.
3033	// "2016-11-29" for 29th November 2016. Required.
3034	DeadlineDate string `json:"deadlineDate,omitempty"`
3035
3036	// DeadlineHour: Hour of the day on the deadline date until which the
3037	// order has to be placed to qualify for the delivery guarantee.
3038	// Possible values are: 0 (midnight), 1, ..., 12 (noon), 13, ..., 23.
3039	// Required.
3040	DeadlineHour int64 `json:"deadlineHour,omitempty"`
3041
3042	// DeadlineTimezone: Timezone identifier for the deadline hour. A list
3043	// of identifiers can be found in  the AdWords API documentation. E.g.
3044	// "Europe/Zurich". Required.
3045	DeadlineTimezone string `json:"deadlineTimezone,omitempty"`
3046
3047	// HolidayId: Unique identifier for the holiday. Required.
3048	HolidayId string `json:"holidayId,omitempty"`
3049
3050	// VisibleFromDate: Date on which the deadline will become visible to
3051	// consumers in ISO 8601 format. E.g. "2016-10-31" for 31st October
3052	// 2016. Required.
3053	VisibleFromDate string `json:"visibleFromDate,omitempty"`
3054
3055	// ForceSendFields is a list of field names (e.g. "DeadlineDate") to
3056	// unconditionally include in API requests. By default, fields with
3057	// empty values are omitted from API requests. However, any non-pointer,
3058	// non-interface field appearing in ForceSendFields will be sent to the
3059	// server regardless of whether the field is empty or not. This may be
3060	// used to include empty fields in Patch requests.
3061	ForceSendFields []string `json:"-"`
3062
3063	// NullFields is a list of field names (e.g. "DeadlineDate") to include
3064	// in API requests with the JSON null value. By default, fields with
3065	// empty values are omitted from API requests. However, any field with
3066	// an empty value appearing in NullFields will be sent to the server as
3067	// null. It is an error if a field in this list has a non-empty value.
3068	// This may be used to include null fields in Patch requests.
3069	NullFields []string `json:"-"`
3070}
3071
3072func (s *HolidayCutoff) MarshalJSON() ([]byte, error) {
3073	type NoMethod HolidayCutoff
3074	raw := NoMethod(*s)
3075	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3076}
3077
3078type HolidaysHoliday struct {
3079	// CountryCode: The CLDR territory code of the country in which the
3080	// holiday is available. E.g. "US", "DE", "GB". A holiday cutoff can
3081	// only be configured in a shipping settings service with matching
3082	// delivery country. Always present.
3083	CountryCode string `json:"countryCode,omitempty"`
3084
3085	// Date: Date of the holiday, in ISO 8601 format. E.g. "2016-12-25" for
3086	// Christmas 2016. Always present.
3087	Date string `json:"date,omitempty"`
3088
3089	// DeliveryGuaranteeDate: Date on which the order has to arrive at the
3090	// customer's, in ISO 8601 format. E.g. "2016-12-24" for 24th December
3091	// 2016. Always present.
3092	DeliveryGuaranteeDate string `json:"deliveryGuaranteeDate,omitempty"`
3093
3094	// DeliveryGuaranteeHour: Hour of the day in the delivery location's
3095	// timezone on the guaranteed delivery date by which the order has to
3096	// arrive at the customer's. Possible values are: 0 (midnight), 1, ...,
3097	// 12 (noon), 13, ..., 23. Always present.
3098	DeliveryGuaranteeHour uint64 `json:"deliveryGuaranteeHour,omitempty,string"`
3099
3100	// Id: Unique identifier for the holiday to be used when configuring
3101	// holiday cutoffs. Always present.
3102	Id string `json:"id,omitempty"`
3103
3104	// Type: The holiday type. Always present.
3105	Type string `json:"type,omitempty"`
3106
3107	// ForceSendFields is a list of field names (e.g. "CountryCode") to
3108	// unconditionally include in API requests. By default, fields with
3109	// empty values are omitted from API requests. However, any non-pointer,
3110	// non-interface field appearing in ForceSendFields will be sent to the
3111	// server regardless of whether the field is empty or not. This may be
3112	// used to include empty fields in Patch requests.
3113	ForceSendFields []string `json:"-"`
3114
3115	// NullFields is a list of field names (e.g. "CountryCode") to include
3116	// in API requests with the JSON null value. By default, fields with
3117	// empty values are omitted from API requests. However, any field with
3118	// an empty value appearing in NullFields will be sent to the server as
3119	// null. It is an error if a field in this list has a non-empty value.
3120	// This may be used to include null fields in Patch requests.
3121	NullFields []string `json:"-"`
3122}
3123
3124func (s *HolidaysHoliday) MarshalJSON() ([]byte, error) {
3125	type NoMethod HolidaysHoliday
3126	raw := NoMethod(*s)
3127	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3128}
3129
3130type Installment struct {
3131	// Amount: The amount the buyer has to pay per month.
3132	Amount *Price `json:"amount,omitempty"`
3133
3134	// Months: The number of installments the buyer has to pay.
3135	Months int64 `json:"months,omitempty,string"`
3136
3137	// ForceSendFields is a list of field names (e.g. "Amount") to
3138	// unconditionally include in API requests. By default, fields with
3139	// empty values are omitted from API requests. However, any non-pointer,
3140	// non-interface field appearing in ForceSendFields will be sent to the
3141	// server regardless of whether the field is empty or not. This may be
3142	// used to include empty fields in Patch requests.
3143	ForceSendFields []string `json:"-"`
3144
3145	// NullFields is a list of field names (e.g. "Amount") to include in API
3146	// requests with the JSON null value. By default, fields with empty
3147	// values are omitted from API requests. However, any field with an
3148	// empty value appearing in NullFields will be sent to the server as
3149	// null. It is an error if a field in this list has a non-empty value.
3150	// This may be used to include null fields in Patch requests.
3151	NullFields []string `json:"-"`
3152}
3153
3154func (s *Installment) MarshalJSON() ([]byte, error) {
3155	type NoMethod Installment
3156	raw := NoMethod(*s)
3157	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3158}
3159
3160type InvoiceSummary struct {
3161	// AdditionalChargeSummaries: Summary of the total amounts of the
3162	// additional charges.
3163	AdditionalChargeSummaries []*InvoiceSummaryAdditionalChargeSummary `json:"additionalChargeSummaries,omitempty"`
3164
3165	// ProductTotal: [required] Total price for the product.
3166	ProductTotal *Amount `json:"productTotal,omitempty"`
3167
3168	// ForceSendFields is a list of field names (e.g.
3169	// "AdditionalChargeSummaries") to unconditionally include in API
3170	// requests. By default, fields with empty values are omitted from API
3171	// requests. However, any non-pointer, non-interface field appearing in
3172	// ForceSendFields will be sent to the server regardless of whether the
3173	// field is empty or not. This may be used to include empty fields in
3174	// Patch requests.
3175	ForceSendFields []string `json:"-"`
3176
3177	// NullFields is a list of field names (e.g.
3178	// "AdditionalChargeSummaries") to include in API requests with the JSON
3179	// null value. By default, fields with empty values are omitted from API
3180	// requests. However, any field with an empty value appearing in
3181	// NullFields will be sent to the server as null. It is an error if a
3182	// field in this list has a non-empty value. This may be used to include
3183	// null fields in Patch requests.
3184	NullFields []string `json:"-"`
3185}
3186
3187func (s *InvoiceSummary) MarshalJSON() ([]byte, error) {
3188	type NoMethod InvoiceSummary
3189	raw := NoMethod(*s)
3190	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3191}
3192
3193type InvoiceSummaryAdditionalChargeSummary struct {
3194	// TotalAmount: [required] Total additional charge for this type.
3195	TotalAmount *Amount `json:"totalAmount,omitempty"`
3196
3197	// Type: [required] Type of the additional charge.
3198	Type string `json:"type,omitempty"`
3199
3200	// ForceSendFields is a list of field names (e.g. "TotalAmount") to
3201	// unconditionally include in API requests. By default, fields with
3202	// empty values are omitted from API requests. However, any non-pointer,
3203	// non-interface field appearing in ForceSendFields will be sent to the
3204	// server regardless of whether the field is empty or not. This may be
3205	// used to include empty fields in Patch requests.
3206	ForceSendFields []string `json:"-"`
3207
3208	// NullFields is a list of field names (e.g. "TotalAmount") to include
3209	// in API requests with the JSON null value. By default, fields with
3210	// empty values are omitted from API requests. However, any field with
3211	// an empty value appearing in NullFields will be sent to the server as
3212	// null. It is an error if a field in this list has a non-empty value.
3213	// This may be used to include null fields in Patch requests.
3214	NullFields []string `json:"-"`
3215}
3216
3217func (s *InvoiceSummaryAdditionalChargeSummary) MarshalJSON() ([]byte, error) {
3218	type NoMethod InvoiceSummaryAdditionalChargeSummary
3219	raw := NoMethod(*s)
3220	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3221}
3222
3223type LiaAboutPageSettings struct {
3224	// Status: The status of the verification process for the About page.
3225	Status string `json:"status,omitempty"`
3226
3227	// Url: The URL for the About page.
3228	Url string `json:"url,omitempty"`
3229
3230	// ForceSendFields is a list of field names (e.g. "Status") to
3231	// unconditionally include in API requests. By default, fields with
3232	// empty values are omitted from API requests. However, any non-pointer,
3233	// non-interface field appearing in ForceSendFields will be sent to the
3234	// server regardless of whether the field is empty or not. This may be
3235	// used to include empty fields in Patch requests.
3236	ForceSendFields []string `json:"-"`
3237
3238	// NullFields is a list of field names (e.g. "Status") to include in API
3239	// requests with the JSON null value. By default, fields with empty
3240	// values are omitted from API requests. However, any field with an
3241	// empty value appearing in NullFields will be sent to the server as
3242	// null. It is an error if a field in this list has a non-empty value.
3243	// This may be used to include null fields in Patch requests.
3244	NullFields []string `json:"-"`
3245}
3246
3247func (s *LiaAboutPageSettings) MarshalJSON() ([]byte, error) {
3248	type NoMethod LiaAboutPageSettings
3249	raw := NoMethod(*s)
3250	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3251}
3252
3253type LiaCountrySettings struct {
3254	// About: The settings for the About page.
3255	About *LiaAboutPageSettings `json:"about,omitempty"`
3256
3257	// Country: CLDR country code (e.g. "US").
3258	Country string `json:"country,omitempty"`
3259
3260	// HostedLocalStorefrontActive: The status of the "Merchant hosted local
3261	// storefront" feature.
3262	HostedLocalStorefrontActive bool `json:"hostedLocalStorefrontActive,omitempty"`
3263
3264	// Inventory: LIA inventory verification settings.
3265	Inventory *LiaInventorySettings `json:"inventory,omitempty"`
3266
3267	// OnDisplayToOrder: LIA "On Display To Order" settings.
3268	OnDisplayToOrder *LiaOnDisplayToOrderSettings `json:"onDisplayToOrder,omitempty"`
3269
3270	// PosDataProvider: The POS data provider linked with this country.
3271	PosDataProvider *LiaPosDataProvider `json:"posDataProvider,omitempty"`
3272
3273	// StorePickupActive: The status of the "Store pickup" feature.
3274	StorePickupActive bool `json:"storePickupActive,omitempty"`
3275
3276	// ForceSendFields is a list of field names (e.g. "About") to
3277	// unconditionally include in API requests. By default, fields with
3278	// empty values are omitted from API requests. However, any non-pointer,
3279	// non-interface field appearing in ForceSendFields will be sent to the
3280	// server regardless of whether the field is empty or not. This may be
3281	// used to include empty fields in Patch requests.
3282	ForceSendFields []string `json:"-"`
3283
3284	// NullFields is a list of field names (e.g. "About") to include in API
3285	// requests with the JSON null value. By default, fields with empty
3286	// values are omitted from API requests. However, any field with an
3287	// empty value appearing in NullFields will be sent to the server as
3288	// null. It is an error if a field in this list has a non-empty value.
3289	// This may be used to include null fields in Patch requests.
3290	NullFields []string `json:"-"`
3291}
3292
3293func (s *LiaCountrySettings) MarshalJSON() ([]byte, error) {
3294	type NoMethod LiaCountrySettings
3295	raw := NoMethod(*s)
3296	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3297}
3298
3299type LiaInventorySettings struct {
3300	// InventoryVerificationContactEmail: The email of the contact for the
3301	// inventory verification process.
3302	InventoryVerificationContactEmail string `json:"inventoryVerificationContactEmail,omitempty"`
3303
3304	// InventoryVerificationContactName: The name of the contact for the
3305	// inventory verification process.
3306	InventoryVerificationContactName string `json:"inventoryVerificationContactName,omitempty"`
3307
3308	// InventoryVerificationContactStatus: The status of the verification
3309	// contact.
3310	InventoryVerificationContactStatus string `json:"inventoryVerificationContactStatus,omitempty"`
3311
3312	// Status: The status of the inventory verification process.
3313	Status string `json:"status,omitempty"`
3314
3315	// ForceSendFields is a list of field names (e.g.
3316	// "InventoryVerificationContactEmail") to unconditionally include in
3317	// API requests. By default, fields with empty values are omitted from
3318	// API requests. However, any non-pointer, non-interface field appearing
3319	// in ForceSendFields will be sent to the server regardless of whether
3320	// the field is empty or not. This may be used to include empty fields
3321	// in Patch requests.
3322	ForceSendFields []string `json:"-"`
3323
3324	// NullFields is a list of field names (e.g.
3325	// "InventoryVerificationContactEmail") to include in API requests with
3326	// the JSON null value. By default, fields with empty values are omitted
3327	// from API requests. However, any field with an empty value appearing
3328	// in NullFields will be sent to the server as null. It is an error if a
3329	// field in this list has a non-empty value. This may be used to include
3330	// null fields in Patch requests.
3331	NullFields []string `json:"-"`
3332}
3333
3334func (s *LiaInventorySettings) MarshalJSON() ([]byte, error) {
3335	type NoMethod LiaInventorySettings
3336	raw := NoMethod(*s)
3337	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3338}
3339
3340type LiaOnDisplayToOrderSettings struct {
3341	// ShippingCostPolicyUrl: Shipping cost and policy URL.
3342	ShippingCostPolicyUrl string `json:"shippingCostPolicyUrl,omitempty"`
3343
3344	// Status: The status of the ?On display to order? feature.
3345	Status string `json:"status,omitempty"`
3346
3347	// ForceSendFields is a list of field names (e.g.
3348	// "ShippingCostPolicyUrl") to unconditionally include in API requests.
3349	// By default, fields with empty values are omitted from API requests.
3350	// However, any non-pointer, non-interface field appearing in
3351	// ForceSendFields will be sent to the server regardless of whether the
3352	// field is empty or not. This may be used to include empty fields in
3353	// Patch requests.
3354	ForceSendFields []string `json:"-"`
3355
3356	// NullFields is a list of field names (e.g. "ShippingCostPolicyUrl") to
3357	// include in API requests with the JSON null value. By default, fields
3358	// with empty values are omitted from API requests. However, any field
3359	// with an empty value appearing in NullFields will be sent to the
3360	// server as null. It is an error if a field in this list has a
3361	// non-empty value. This may be used to include null fields in Patch
3362	// requests.
3363	NullFields []string `json:"-"`
3364}
3365
3366func (s *LiaOnDisplayToOrderSettings) MarshalJSON() ([]byte, error) {
3367	type NoMethod LiaOnDisplayToOrderSettings
3368	raw := NoMethod(*s)
3369	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3370}
3371
3372type LiaPosDataProvider struct {
3373	// PosDataProviderId: The ID of the POS data provider.
3374	PosDataProviderId uint64 `json:"posDataProviderId,omitempty,string"`
3375
3376	// PosExternalAccountId: The account ID by which this merchant is known
3377	// to the POS data provider.
3378	PosExternalAccountId string `json:"posExternalAccountId,omitempty"`
3379
3380	// ForceSendFields is a list of field names (e.g. "PosDataProviderId")
3381	// to unconditionally include in API requests. By default, fields with
3382	// empty values are omitted from API requests. However, any non-pointer,
3383	// non-interface field appearing in ForceSendFields will be sent to the
3384	// server regardless of whether the field is empty or not. This may be
3385	// used to include empty fields in Patch requests.
3386	ForceSendFields []string `json:"-"`
3387
3388	// NullFields is a list of field names (e.g. "PosDataProviderId") to
3389	// include in API requests with the JSON null value. By default, fields
3390	// with empty values are omitted from API requests. However, any field
3391	// with an empty value appearing in NullFields will be sent to the
3392	// server as null. It is an error if a field in this list has a
3393	// non-empty value. This may be used to include null fields in Patch
3394	// requests.
3395	NullFields []string `json:"-"`
3396}
3397
3398func (s *LiaPosDataProvider) MarshalJSON() ([]byte, error) {
3399	type NoMethod LiaPosDataProvider
3400	raw := NoMethod(*s)
3401	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3402}
3403
3404// LiaSettings: Local Inventory ads (LIA) settings. All methods except
3405// listposdataproviders require the admin role.
3406type LiaSettings struct {
3407	// AccountId: The ID of the account to which these LIA settings belong.
3408	// Ignored upon update, always present in get request responses.
3409	AccountId uint64 `json:"accountId,omitempty,string"`
3410
3411	// CountrySettings: The LIA settings for each country.
3412	CountrySettings []*LiaCountrySettings `json:"countrySettings,omitempty"`
3413
3414	// Kind: Identifies what kind of resource this is. Value: the fixed
3415	// string "content#liaSettings".
3416	Kind string `json:"kind,omitempty"`
3417
3418	// ServerResponse contains the HTTP response code and headers from the
3419	// server.
3420	googleapi.ServerResponse `json:"-"`
3421
3422	// ForceSendFields is a list of field names (e.g. "AccountId") to
3423	// unconditionally include in API requests. By default, fields with
3424	// empty values are omitted from API requests. However, any non-pointer,
3425	// non-interface field appearing in ForceSendFields will be sent to the
3426	// server regardless of whether the field is empty or not. This may be
3427	// used to include empty fields in Patch requests.
3428	ForceSendFields []string `json:"-"`
3429
3430	// NullFields is a list of field names (e.g. "AccountId") to include in
3431	// API requests with the JSON null value. By default, fields with empty
3432	// values are omitted from API requests. However, any field with an
3433	// empty value appearing in NullFields will be sent to the server as
3434	// null. It is an error if a field in this list has a non-empty value.
3435	// This may be used to include null fields in Patch requests.
3436	NullFields []string `json:"-"`
3437}
3438
3439func (s *LiaSettings) MarshalJSON() ([]byte, error) {
3440	type NoMethod LiaSettings
3441	raw := NoMethod(*s)
3442	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3443}
3444
3445type LiasettingsCustomBatchRequest struct {
3446	// Entries: The request entries to be processed in the batch.
3447	Entries []*LiasettingsCustomBatchRequestEntry `json:"entries,omitempty"`
3448
3449	// ForceSendFields is a list of field names (e.g. "Entries") to
3450	// unconditionally include in API requests. By default, fields with
3451	// empty values are omitted from API requests. However, any non-pointer,
3452	// non-interface field appearing in ForceSendFields will be sent to the
3453	// server regardless of whether the field is empty or not. This may be
3454	// used to include empty fields in Patch requests.
3455	ForceSendFields []string `json:"-"`
3456
3457	// NullFields is a list of field names (e.g. "Entries") to include in
3458	// API requests with the JSON null value. By default, fields with empty
3459	// values are omitted from API requests. However, any field with an
3460	// empty value appearing in NullFields will be sent to the server as
3461	// null. It is an error if a field in this list has a non-empty value.
3462	// This may be used to include null fields in Patch requests.
3463	NullFields []string `json:"-"`
3464}
3465
3466func (s *LiasettingsCustomBatchRequest) MarshalJSON() ([]byte, error) {
3467	type NoMethod LiasettingsCustomBatchRequest
3468	raw := NoMethod(*s)
3469	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3470}
3471
3472type LiasettingsCustomBatchRequestEntry struct {
3473	// AccountId: The ID of the account for which to get/update account
3474	// shipping settings.
3475	AccountId uint64 `json:"accountId,omitempty,string"`
3476
3477	// BatchId: An entry ID, unique within the batch request.
3478	BatchId int64 `json:"batchId,omitempty"`
3479
3480	// ContactEmail: Inventory validation contact email. Required only for
3481	// SetInventoryValidationContact.
3482	ContactEmail string `json:"contactEmail,omitempty"`
3483
3484	// ContactName: Inventory validation contact name. Required only for
3485	// SetInventoryValidationContact.
3486	ContactName string `json:"contactName,omitempty"`
3487
3488	// Country: The country code. Required only for
3489	// RequestInventoryVerification.
3490	Country string `json:"country,omitempty"`
3491
3492	// GmbEmail: The GMB account. Required only for RequestGmbAccess.
3493	GmbEmail string `json:"gmbEmail,omitempty"`
3494
3495	// LiaSettings: The account Lia settings to update. Only defined if the
3496	// method is update.
3497	LiaSettings *LiaSettings `json:"liaSettings,omitempty"`
3498
3499	// MerchantId: The ID of the managing account.
3500	MerchantId uint64 `json:"merchantId,omitempty,string"`
3501
3502	Method string `json:"method,omitempty"`
3503
3504	// PosDataProviderId: The ID of POS data provider. Required only for
3505	// SetPosProvider.
3506	PosDataProviderId uint64 `json:"posDataProviderId,omitempty,string"`
3507
3508	// PosExternalAccountId: The account ID by which this merchant is known
3509	// to the POS provider.
3510	PosExternalAccountId string `json:"posExternalAccountId,omitempty"`
3511
3512	// ForceSendFields is a list of field names (e.g. "AccountId") to
3513	// unconditionally include in API requests. By default, fields with
3514	// empty values are omitted from API requests. However, any non-pointer,
3515	// non-interface field appearing in ForceSendFields will be sent to the
3516	// server regardless of whether the field is empty or not. This may be
3517	// used to include empty fields in Patch requests.
3518	ForceSendFields []string `json:"-"`
3519
3520	// NullFields is a list of field names (e.g. "AccountId") to include in
3521	// API requests with the JSON null value. By default, fields with empty
3522	// values are omitted from API requests. However, any field with an
3523	// empty value appearing in NullFields will be sent to the server as
3524	// null. It is an error if a field in this list has a non-empty value.
3525	// This may be used to include null fields in Patch requests.
3526	NullFields []string `json:"-"`
3527}
3528
3529func (s *LiasettingsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
3530	type NoMethod LiasettingsCustomBatchRequestEntry
3531	raw := NoMethod(*s)
3532	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3533}
3534
3535type LiasettingsCustomBatchResponse struct {
3536	// Entries: The result of the execution of the batch requests.
3537	Entries []*LiasettingsCustomBatchResponseEntry `json:"entries,omitempty"`
3538
3539	// Kind: Identifies what kind of resource this is. Value: the fixed
3540	// string "content#liasettingsCustomBatchResponse".
3541	Kind string `json:"kind,omitempty"`
3542
3543	// ServerResponse contains the HTTP response code and headers from the
3544	// server.
3545	googleapi.ServerResponse `json:"-"`
3546
3547	// ForceSendFields is a list of field names (e.g. "Entries") to
3548	// unconditionally include in API requests. By default, fields with
3549	// empty values are omitted from API requests. However, any non-pointer,
3550	// non-interface field appearing in ForceSendFields will be sent to the
3551	// server regardless of whether the field is empty or not. This may be
3552	// used to include empty fields in Patch requests.
3553	ForceSendFields []string `json:"-"`
3554
3555	// NullFields is a list of field names (e.g. "Entries") to include in
3556	// API requests with the JSON null value. By default, fields with empty
3557	// values are omitted from API requests. However, any field with an
3558	// empty value appearing in NullFields will be sent to the server as
3559	// null. It is an error if a field in this list has a non-empty value.
3560	// This may be used to include null fields in Patch requests.
3561	NullFields []string `json:"-"`
3562}
3563
3564func (s *LiasettingsCustomBatchResponse) MarshalJSON() ([]byte, error) {
3565	type NoMethod LiasettingsCustomBatchResponse
3566	raw := NoMethod(*s)
3567	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3568}
3569
3570type LiasettingsCustomBatchResponseEntry struct {
3571	// BatchId: The ID of the request entry to which this entry responds.
3572	BatchId int64 `json:"batchId,omitempty"`
3573
3574	// Errors: A list of errors defined if, and only if, the request failed.
3575	Errors *Errors `json:"errors,omitempty"`
3576
3577	// GmbAccounts: The the list of accessible GMB accounts.
3578	GmbAccounts *GmbAccounts `json:"gmbAccounts,omitempty"`
3579
3580	// Kind: Identifies what kind of resource this is. Value: the fixed
3581	// string "content#liasettingsCustomBatchResponseEntry".
3582	Kind string `json:"kind,omitempty"`
3583
3584	// LiaSettings: The retrieved or updated Lia settings.
3585	LiaSettings *LiaSettings `json:"liaSettings,omitempty"`
3586
3587	// PosDataProviders: The list of POS data providers.
3588	PosDataProviders []*PosDataProviders `json:"posDataProviders,omitempty"`
3589
3590	// ForceSendFields is a list of field names (e.g. "BatchId") to
3591	// unconditionally include in API requests. By default, fields with
3592	// empty values are omitted from API requests. However, any non-pointer,
3593	// non-interface field appearing in ForceSendFields will be sent to the
3594	// server regardless of whether the field is empty or not. This may be
3595	// used to include empty fields in Patch requests.
3596	ForceSendFields []string `json:"-"`
3597
3598	// NullFields is a list of field names (e.g. "BatchId") to include in
3599	// API requests with the JSON null value. By default, fields with empty
3600	// values are omitted from API requests. However, any field with an
3601	// empty value appearing in NullFields will be sent to the server as
3602	// null. It is an error if a field in this list has a non-empty value.
3603	// This may be used to include null fields in Patch requests.
3604	NullFields []string `json:"-"`
3605}
3606
3607func (s *LiasettingsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
3608	type NoMethod LiasettingsCustomBatchResponseEntry
3609	raw := NoMethod(*s)
3610	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3611}
3612
3613type LiasettingsGetAccessibleGmbAccountsResponse struct {
3614	// AccountId: The ID of the account.
3615	AccountId uint64 `json:"accountId,omitempty,string"`
3616
3617	// GmbAccounts: A list of GMB accounts which are available to the
3618	// merchant.
3619	GmbAccounts []*GmbAccountsGmbAccount `json:"gmbAccounts,omitempty"`
3620
3621	// Kind: Identifies what kind of resource this is. Value: the fixed
3622	// string "content#liasettingsGetAccessibleGmbAccountsResponse".
3623	Kind string `json:"kind,omitempty"`
3624
3625	// ServerResponse contains the HTTP response code and headers from the
3626	// server.
3627	googleapi.ServerResponse `json:"-"`
3628
3629	// ForceSendFields is a list of field names (e.g. "AccountId") to
3630	// unconditionally include in API requests. By default, fields with
3631	// empty values are omitted from API requests. However, any non-pointer,
3632	// non-interface field appearing in ForceSendFields will be sent to the
3633	// server regardless of whether the field is empty or not. This may be
3634	// used to include empty fields in Patch requests.
3635	ForceSendFields []string `json:"-"`
3636
3637	// NullFields is a list of field names (e.g. "AccountId") to include in
3638	// API requests with the JSON null value. By default, fields with empty
3639	// values are omitted from API requests. However, any field with an
3640	// empty value appearing in NullFields will be sent to the server as
3641	// null. It is an error if a field in this list has a non-empty value.
3642	// This may be used to include null fields in Patch requests.
3643	NullFields []string `json:"-"`
3644}
3645
3646func (s *LiasettingsGetAccessibleGmbAccountsResponse) MarshalJSON() ([]byte, error) {
3647	type NoMethod LiasettingsGetAccessibleGmbAccountsResponse
3648	raw := NoMethod(*s)
3649	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3650}
3651
3652type LiasettingsListPosDataProvidersResponse struct {
3653	// Kind: Identifies what kind of resource this is. Value: the fixed
3654	// string "content#liasettingsListPosDataProvidersResponse".
3655	Kind string `json:"kind,omitempty"`
3656
3657	// PosDataProviders: The list of POS data providers for each eligible
3658	// country
3659	PosDataProviders []*PosDataProviders `json:"posDataProviders,omitempty"`
3660
3661	// ServerResponse contains the HTTP response code and headers from the
3662	// server.
3663	googleapi.ServerResponse `json:"-"`
3664
3665	// ForceSendFields is a list of field names (e.g. "Kind") to
3666	// unconditionally include in API requests. By default, fields with
3667	// empty values are omitted from API requests. However, any non-pointer,
3668	// non-interface field appearing in ForceSendFields will be sent to the
3669	// server regardless of whether the field is empty or not. This may be
3670	// used to include empty fields in Patch requests.
3671	ForceSendFields []string `json:"-"`
3672
3673	// NullFields is a list of field names (e.g. "Kind") to include in API
3674	// requests with the JSON null value. By default, fields with empty
3675	// values are omitted from API requests. However, any field with an
3676	// empty value appearing in NullFields will be sent to the server as
3677	// null. It is an error if a field in this list has a non-empty value.
3678	// This may be used to include null fields in Patch requests.
3679	NullFields []string `json:"-"`
3680}
3681
3682func (s *LiasettingsListPosDataProvidersResponse) MarshalJSON() ([]byte, error) {
3683	type NoMethod LiasettingsListPosDataProvidersResponse
3684	raw := NoMethod(*s)
3685	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3686}
3687
3688type LiasettingsListResponse struct {
3689	// Kind: Identifies what kind of resource this is. Value: the fixed
3690	// string "content#liasettingsListResponse".
3691	Kind string `json:"kind,omitempty"`
3692
3693	// NextPageToken: The token for the retrieval of the next page of LIA
3694	// settings.
3695	NextPageToken string `json:"nextPageToken,omitempty"`
3696
3697	Resources []*LiaSettings `json:"resources,omitempty"`
3698
3699	// ServerResponse contains the HTTP response code and headers from the
3700	// server.
3701	googleapi.ServerResponse `json:"-"`
3702
3703	// ForceSendFields is a list of field names (e.g. "Kind") to
3704	// unconditionally include in API requests. By default, fields with
3705	// empty values are omitted from API requests. However, any non-pointer,
3706	// non-interface field appearing in ForceSendFields will be sent to the
3707	// server regardless of whether the field is empty or not. This may be
3708	// used to include empty fields in Patch requests.
3709	ForceSendFields []string `json:"-"`
3710
3711	// NullFields is a list of field names (e.g. "Kind") to include in API
3712	// requests with the JSON null value. By default, fields with empty
3713	// values are omitted from API requests. However, any field with an
3714	// empty value appearing in NullFields will be sent to the server as
3715	// null. It is an error if a field in this list has a non-empty value.
3716	// This may be used to include null fields in Patch requests.
3717	NullFields []string `json:"-"`
3718}
3719
3720func (s *LiasettingsListResponse) MarshalJSON() ([]byte, error) {
3721	type NoMethod LiasettingsListResponse
3722	raw := NoMethod(*s)
3723	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3724}
3725
3726type LiasettingsRequestGmbAccessResponse struct {
3727	// Kind: Identifies what kind of resource this is. Value: the fixed
3728	// string "content#liasettingsRequestGmbAccessResponse".
3729	Kind string `json:"kind,omitempty"`
3730
3731	// ServerResponse contains the HTTP response code and headers from the
3732	// server.
3733	googleapi.ServerResponse `json:"-"`
3734
3735	// ForceSendFields is a list of field names (e.g. "Kind") to
3736	// unconditionally include in API requests. By default, fields with
3737	// empty values are omitted from API requests. However, any non-pointer,
3738	// non-interface field appearing in ForceSendFields will be sent to the
3739	// server regardless of whether the field is empty or not. This may be
3740	// used to include empty fields in Patch requests.
3741	ForceSendFields []string `json:"-"`
3742
3743	// NullFields is a list of field names (e.g. "Kind") to include in API
3744	// requests with the JSON null value. By default, fields with empty
3745	// values are omitted from API requests. However, any field with an
3746	// empty value appearing in NullFields will be sent to the server as
3747	// null. It is an error if a field in this list has a non-empty value.
3748	// This may be used to include null fields in Patch requests.
3749	NullFields []string `json:"-"`
3750}
3751
3752func (s *LiasettingsRequestGmbAccessResponse) MarshalJSON() ([]byte, error) {
3753	type NoMethod LiasettingsRequestGmbAccessResponse
3754	raw := NoMethod(*s)
3755	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3756}
3757
3758type LiasettingsRequestInventoryVerificationResponse struct {
3759	// Kind: Identifies what kind of resource this is. Value: the fixed
3760	// string "content#liasettingsRequestInventoryVerificationResponse".
3761	Kind string `json:"kind,omitempty"`
3762
3763	// ServerResponse contains the HTTP response code and headers from the
3764	// server.
3765	googleapi.ServerResponse `json:"-"`
3766
3767	// ForceSendFields is a list of field names (e.g. "Kind") to
3768	// unconditionally include in API requests. By default, fields with
3769	// empty values are omitted from API requests. However, any non-pointer,
3770	// non-interface field appearing in ForceSendFields will be sent to the
3771	// server regardless of whether the field is empty or not. This may be
3772	// used to include empty fields in Patch requests.
3773	ForceSendFields []string `json:"-"`
3774
3775	// NullFields is a list of field names (e.g. "Kind") to include in API
3776	// requests with the JSON null value. By default, fields with empty
3777	// values are omitted from API requests. However, any field with an
3778	// empty value appearing in NullFields will be sent to the server as
3779	// null. It is an error if a field in this list has a non-empty value.
3780	// This may be used to include null fields in Patch requests.
3781	NullFields []string `json:"-"`
3782}
3783
3784func (s *LiasettingsRequestInventoryVerificationResponse) MarshalJSON() ([]byte, error) {
3785	type NoMethod LiasettingsRequestInventoryVerificationResponse
3786	raw := NoMethod(*s)
3787	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3788}
3789
3790type LiasettingsSetInventoryVerificationContactResponse struct {
3791	// Kind: Identifies what kind of resource this is. Value: the fixed
3792	// string "content#liasettingsSetInventoryVerificationContactResponse".
3793	Kind string `json:"kind,omitempty"`
3794
3795	// ServerResponse contains the HTTP response code and headers from the
3796	// server.
3797	googleapi.ServerResponse `json:"-"`
3798
3799	// ForceSendFields is a list of field names (e.g. "Kind") to
3800	// unconditionally include in API requests. By default, fields with
3801	// empty values are omitted from API requests. However, any non-pointer,
3802	// non-interface field appearing in ForceSendFields will be sent to the
3803	// server regardless of whether the field is empty or not. This may be
3804	// used to include empty fields in Patch requests.
3805	ForceSendFields []string `json:"-"`
3806
3807	// NullFields is a list of field names (e.g. "Kind") to include in API
3808	// requests with the JSON null value. By default, fields with empty
3809	// values are omitted from API requests. However, any field with an
3810	// empty value appearing in NullFields will be sent to the server as
3811	// null. It is an error if a field in this list has a non-empty value.
3812	// This may be used to include null fields in Patch requests.
3813	NullFields []string `json:"-"`
3814}
3815
3816func (s *LiasettingsSetInventoryVerificationContactResponse) MarshalJSON() ([]byte, error) {
3817	type NoMethod LiasettingsSetInventoryVerificationContactResponse
3818	raw := NoMethod(*s)
3819	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3820}
3821
3822type LiasettingsSetPosDataProviderResponse struct {
3823	// Kind: Identifies what kind of resource this is. Value: the fixed
3824	// string "content#liasettingsSetPosDataProviderResponse".
3825	Kind string `json:"kind,omitempty"`
3826
3827	// ServerResponse contains the HTTP response code and headers from the
3828	// server.
3829	googleapi.ServerResponse `json:"-"`
3830
3831	// ForceSendFields is a list of field names (e.g. "Kind") to
3832	// unconditionally include in API requests. By default, fields with
3833	// empty values are omitted from API requests. However, any non-pointer,
3834	// non-interface field appearing in ForceSendFields will be sent to the
3835	// server regardless of whether the field is empty or not. This may be
3836	// used to include empty fields in Patch requests.
3837	ForceSendFields []string `json:"-"`
3838
3839	// NullFields is a list of field names (e.g. "Kind") to include in API
3840	// requests with the JSON null value. By default, fields with empty
3841	// values are omitted from API requests. However, any field with an
3842	// empty value appearing in NullFields will be sent to the server as
3843	// null. It is an error if a field in this list has a non-empty value.
3844	// This may be used to include null fields in Patch requests.
3845	NullFields []string `json:"-"`
3846}
3847
3848func (s *LiasettingsSetPosDataProviderResponse) MarshalJSON() ([]byte, error) {
3849	type NoMethod LiasettingsSetPosDataProviderResponse
3850	raw := NoMethod(*s)
3851	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3852}
3853
3854type LinkService struct {
3855	// Service: Service provided to or by the linked account.
3856	Service string `json:"service,omitempty"`
3857
3858	// Status: Status of the link
3859	Status string `json:"status,omitempty"`
3860
3861	// ForceSendFields is a list of field names (e.g. "Service") to
3862	// unconditionally include in API requests. By default, fields with
3863	// empty values are omitted from API requests. However, any non-pointer,
3864	// non-interface field appearing in ForceSendFields will be sent to the
3865	// server regardless of whether the field is empty or not. This may be
3866	// used to include empty fields in Patch requests.
3867	ForceSendFields []string `json:"-"`
3868
3869	// NullFields is a list of field names (e.g. "Service") to include in
3870	// API requests with the JSON null value. By default, fields with empty
3871	// values are omitted from API requests. However, any field with an
3872	// empty value appearing in NullFields will be sent to the server as
3873	// null. It is an error if a field in this list has a non-empty value.
3874	// This may be used to include null fields in Patch requests.
3875	NullFields []string `json:"-"`
3876}
3877
3878func (s *LinkService) MarshalJSON() ([]byte, error) {
3879	type NoMethod LinkService
3880	raw := NoMethod(*s)
3881	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3882}
3883
3884type LinkedAccount struct {
3885	// LinkedAccountId: The ID of the linked account.
3886	LinkedAccountId string `json:"linkedAccountId,omitempty"`
3887
3888	// Services: List of provided services.
3889	Services []*LinkService `json:"services,omitempty"`
3890
3891	// ForceSendFields is a list of field names (e.g. "LinkedAccountId") to
3892	// unconditionally include in API requests. By default, fields with
3893	// empty values are omitted from API requests. However, any non-pointer,
3894	// non-interface field appearing in ForceSendFields will be sent to the
3895	// server regardless of whether the field is empty or not. This may be
3896	// used to include empty fields in Patch requests.
3897	ForceSendFields []string `json:"-"`
3898
3899	// NullFields is a list of field names (e.g. "LinkedAccountId") to
3900	// include in API requests with the JSON null value. By default, fields
3901	// with empty values are omitted from API requests. However, any field
3902	// with an empty value appearing in NullFields will be sent to the
3903	// server as null. It is an error if a field in this list has a
3904	// non-empty value. This may be used to include null fields in Patch
3905	// requests.
3906	NullFields []string `json:"-"`
3907}
3908
3909func (s *LinkedAccount) MarshalJSON() ([]byte, error) {
3910	type NoMethod LinkedAccount
3911	raw := NoMethod(*s)
3912	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3913}
3914
3915type LocationIdSet struct {
3916	// LocationIds: A non-empty list of location IDs. They must all be of
3917	// the same location type (e.g., state).
3918	LocationIds []string `json:"locationIds,omitempty"`
3919
3920	// ForceSendFields is a list of field names (e.g. "LocationIds") to
3921	// unconditionally include in API requests. By default, fields with
3922	// empty values are omitted from API requests. However, any non-pointer,
3923	// non-interface field appearing in ForceSendFields will be sent to the
3924	// server regardless of whether the field is empty or not. This may be
3925	// used to include empty fields in Patch requests.
3926	ForceSendFields []string `json:"-"`
3927
3928	// NullFields is a list of field names (e.g. "LocationIds") to include
3929	// in API requests with the JSON null value. By default, fields with
3930	// empty values are omitted from API requests. However, any field with
3931	// an empty value appearing in NullFields will be sent to the server as
3932	// null. It is an error if a field in this list has a non-empty value.
3933	// This may be used to include null fields in Patch requests.
3934	NullFields []string `json:"-"`
3935}
3936
3937func (s *LocationIdSet) MarshalJSON() ([]byte, error) {
3938	type NoMethod LocationIdSet
3939	raw := NoMethod(*s)
3940	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3941}
3942
3943type LoyaltyPoints struct {
3944	// Name: Name of loyalty points program. It is recommended to limit the
3945	// name to 12 full-width characters or 24 Roman characters.
3946	Name string `json:"name,omitempty"`
3947
3948	// PointsValue: The retailer's loyalty points in absolute value.
3949	PointsValue int64 `json:"pointsValue,omitempty,string"`
3950
3951	// Ratio: The ratio of a point when converted to currency. Google
3952	// assumes currency based on Merchant Center settings. If ratio is left
3953	// out, it defaults to 1.0.
3954	Ratio float64 `json:"ratio,omitempty"`
3955
3956	// ForceSendFields is a list of field names (e.g. "Name") to
3957	// unconditionally include in API requests. By default, fields with
3958	// empty values are omitted from API requests. However, any non-pointer,
3959	// non-interface field appearing in ForceSendFields will be sent to the
3960	// server regardless of whether the field is empty or not. This may be
3961	// used to include empty fields in Patch requests.
3962	ForceSendFields []string `json:"-"`
3963
3964	// NullFields is a list of field names (e.g. "Name") to include in API
3965	// requests with the JSON null value. By default, fields with empty
3966	// values are omitted from API requests. However, any field with an
3967	// empty value appearing in NullFields will be sent to the server as
3968	// null. It is an error if a field in this list has a non-empty value.
3969	// This may be used to include null fields in Patch requests.
3970	NullFields []string `json:"-"`
3971}
3972
3973func (s *LoyaltyPoints) MarshalJSON() ([]byte, error) {
3974	type NoMethod LoyaltyPoints
3975	raw := NoMethod(*s)
3976	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3977}
3978
3979func (s *LoyaltyPoints) UnmarshalJSON(data []byte) error {
3980	type NoMethod LoyaltyPoints
3981	var s1 struct {
3982		Ratio gensupport.JSONFloat64 `json:"ratio"`
3983		*NoMethod
3984	}
3985	s1.NoMethod = (*NoMethod)(s)
3986	if err := json.Unmarshal(data, &s1); err != nil {
3987		return err
3988	}
3989	s.Ratio = float64(s1.Ratio)
3990	return nil
3991}
3992
3993// MerchantOrderReturn: Order return. Production access (all methods)
3994// requires the order manager role. Sandbox access does not.
3995type MerchantOrderReturn struct {
3996	// CreationDate: The date of creation of the return, in ISO 8601 format.
3997	CreationDate string `json:"creationDate,omitempty"`
3998
3999	// MerchantOrderId: Merchant defined order ID.
4000	MerchantOrderId string `json:"merchantOrderId,omitempty"`
4001
4002	// OrderId: Google order ID.
4003	OrderId string `json:"orderId,omitempty"`
4004
4005	// OrderReturnId: Order return ID generated by Google.
4006	OrderReturnId string `json:"orderReturnId,omitempty"`
4007
4008	// ReturnItems: Items of the return.
4009	ReturnItems []*MerchantOrderReturnItem `json:"returnItems,omitempty"`
4010
4011	// ReturnShipments: Shipments of the return.
4012	ReturnShipments []*ReturnShipment `json:"returnShipments,omitempty"`
4013
4014	// ServerResponse contains the HTTP response code and headers from the
4015	// server.
4016	googleapi.ServerResponse `json:"-"`
4017
4018	// ForceSendFields is a list of field names (e.g. "CreationDate") to
4019	// unconditionally include in API requests. By default, fields with
4020	// empty values are omitted from API requests. However, any non-pointer,
4021	// non-interface field appearing in ForceSendFields will be sent to the
4022	// server regardless of whether the field is empty or not. This may be
4023	// used to include empty fields in Patch requests.
4024	ForceSendFields []string `json:"-"`
4025
4026	// NullFields is a list of field names (e.g. "CreationDate") to include
4027	// in API requests with the JSON null value. By default, fields with
4028	// empty values are omitted from API requests. However, any field with
4029	// an empty value appearing in NullFields will be sent to the server as
4030	// null. It is an error if a field in this list has a non-empty value.
4031	// This may be used to include null fields in Patch requests.
4032	NullFields []string `json:"-"`
4033}
4034
4035func (s *MerchantOrderReturn) MarshalJSON() ([]byte, error) {
4036	type NoMethod MerchantOrderReturn
4037	raw := NoMethod(*s)
4038	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4039}
4040
4041type MerchantOrderReturnItem struct {
4042	// CustomerReturnReason: The reason that the customer chooses to return
4043	// an item.
4044	CustomerReturnReason *CustomerReturnReason `json:"customerReturnReason,omitempty"`
4045
4046	// ItemId: Product level item ID. If the returned items are of the same
4047	// product, they will have the same ID.
4048	ItemId string `json:"itemId,omitempty"`
4049
4050	// MerchantReturnReason: The reason that merchant chooses to accept a
4051	// return item.
4052	MerchantReturnReason *RefundReason `json:"merchantReturnReason,omitempty"`
4053
4054	// Product: Product data from the time of the order placement.
4055	Product *OrderLineItemProduct `json:"product,omitempty"`
4056
4057	// ReturnShipmentIds: IDs of the return shipments that this return item
4058	// belongs to.
4059	ReturnShipmentIds []string `json:"returnShipmentIds,omitempty"`
4060
4061	// State: State of the item.
4062	State string `json:"state,omitempty"`
4063
4064	// ForceSendFields is a list of field names (e.g.
4065	// "CustomerReturnReason") to unconditionally include in API requests.
4066	// By default, fields with empty values are omitted from API requests.
4067	// However, any non-pointer, non-interface field appearing in
4068	// ForceSendFields will be sent to the server regardless of whether the
4069	// field is empty or not. This may be used to include empty fields in
4070	// Patch requests.
4071	ForceSendFields []string `json:"-"`
4072
4073	// NullFields is a list of field names (e.g. "CustomerReturnReason") to
4074	// include in API requests with the JSON null value. By default, fields
4075	// with empty values are omitted from API requests. However, any field
4076	// with an empty value appearing in NullFields will be sent to the
4077	// server as null. It is an error if a field in this list has a
4078	// non-empty value. This may be used to include null fields in Patch
4079	// requests.
4080	NullFields []string `json:"-"`
4081}
4082
4083func (s *MerchantOrderReturnItem) MarshalJSON() ([]byte, error) {
4084	type NoMethod MerchantOrderReturnItem
4085	raw := NoMethod(*s)
4086	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4087}
4088
4089// Order: Order. Production access (all methods) requires the order
4090// manager role. Sandbox access does not.
4091type Order struct {
4092	// Acknowledged: Whether the order was acknowledged.
4093	Acknowledged bool `json:"acknowledged,omitempty"`
4094
4095	// BillingAddress: The billing address.
4096	BillingAddress *OrderAddress `json:"billingAddress,omitempty"`
4097
4098	// Customer: The details of the customer who placed the order.
4099	Customer *OrderCustomer `json:"customer,omitempty"`
4100
4101	// DeliveryDetails: Delivery details for shipments of type delivery.
4102	DeliveryDetails *OrderDeliveryDetails `json:"deliveryDetails,omitempty"`
4103
4104	// Id: The REST ID of the order. Globally unique.
4105	Id string `json:"id,omitempty"`
4106
4107	// Kind: Identifies what kind of resource this is. Value: the fixed
4108	// string "content#order".
4109	Kind string `json:"kind,omitempty"`
4110
4111	// LineItems: Line items that are ordered.
4112	LineItems []*OrderLineItem `json:"lineItems,omitempty"`
4113
4114	MerchantId uint64 `json:"merchantId,omitempty,string"`
4115
4116	// MerchantOrderId: Merchant-provided ID of the order.
4117	MerchantOrderId string `json:"merchantOrderId,omitempty"`
4118
4119	// NetPriceAmount: The net amount for the order (price part). For
4120	// example, if an order was originally for $100 and a refund was issued
4121	// for $20, the net amount will be $80.
4122	NetPriceAmount *Price `json:"netPriceAmount,omitempty"`
4123
4124	// NetTaxAmount: The net amount for the order (tax part). Note that in
4125	// certain cases due to taxable base adjustment netTaxAmount might not
4126	// match to a sum of tax field across all lineItems and refunds.
4127	NetTaxAmount *Price `json:"netTaxAmount,omitempty"`
4128
4129	// PaymentStatus: The status of the payment.
4130	PaymentStatus string `json:"paymentStatus,omitempty"`
4131
4132	// PickupDetails: Pickup details for shipments of type pickup.
4133	PickupDetails *OrderPickupDetails `json:"pickupDetails,omitempty"`
4134
4135	// PlacedDate: The date when the order was placed, in ISO 8601 format.
4136	PlacedDate string `json:"placedDate,omitempty"`
4137
4138	// Promotions: Promotions associated with the order.
4139	Promotions []*OrderPromotion `json:"promotions,omitempty"`
4140
4141	// Refunds: Refunds for the order.
4142	Refunds []*OrderRefund `json:"refunds,omitempty"`
4143
4144	// Shipments: Shipments of the order.
4145	Shipments []*OrderShipment `json:"shipments,omitempty"`
4146
4147	// ShippingCost: The total cost of shipping for all items.
4148	ShippingCost *Price `json:"shippingCost,omitempty"`
4149
4150	// ShippingCostTax: The tax for the total shipping cost.
4151	ShippingCostTax *Price `json:"shippingCostTax,omitempty"`
4152
4153	// Status: The status of the order.
4154	Status string `json:"status,omitempty"`
4155
4156	// TaxCollector: The party responsible for collecting and remitting
4157	// taxes.
4158	TaxCollector string `json:"taxCollector,omitempty"`
4159
4160	// ServerResponse contains the HTTP response code and headers from the
4161	// server.
4162	googleapi.ServerResponse `json:"-"`
4163
4164	// ForceSendFields is a list of field names (e.g. "Acknowledged") to
4165	// unconditionally include in API requests. By default, fields with
4166	// empty values are omitted from API requests. However, any non-pointer,
4167	// non-interface field appearing in ForceSendFields will be sent to the
4168	// server regardless of whether the field is empty or not. This may be
4169	// used to include empty fields in Patch requests.
4170	ForceSendFields []string `json:"-"`
4171
4172	// NullFields is a list of field names (e.g. "Acknowledged") to include
4173	// in API requests with the JSON null value. By default, fields with
4174	// empty values are omitted from API requests. However, any field with
4175	// an empty value appearing in NullFields will be sent to the server as
4176	// null. It is an error if a field in this list has a non-empty value.
4177	// This may be used to include null fields in Patch requests.
4178	NullFields []string `json:"-"`
4179}
4180
4181func (s *Order) MarshalJSON() ([]byte, error) {
4182	type NoMethod Order
4183	raw := NoMethod(*s)
4184	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4185}
4186
4187type OrderAddress struct {
4188	// Country: CLDR country code (e.g. "US").
4189	Country string `json:"country,omitempty"`
4190
4191	// FullAddress: Strings representing the lines of the printed label for
4192	// mailing the order, for example:
4193	// John Smith
4194	// 1600 Amphitheatre Parkway
4195	// Mountain View, CA, 94043
4196	// United States
4197	FullAddress []string `json:"fullAddress,omitempty"`
4198
4199	// IsPostOfficeBox: Whether the address is a post office box.
4200	IsPostOfficeBox bool `json:"isPostOfficeBox,omitempty"`
4201
4202	// Locality: City, town or commune. May also include dependent
4203	// localities or sublocalities (e.g. neighborhoods or suburbs).
4204	Locality string `json:"locality,omitempty"`
4205
4206	// PostalCode: Postal Code or ZIP (e.g. "94043").
4207	PostalCode string `json:"postalCode,omitempty"`
4208
4209	// RecipientName: Name of the recipient.
4210	RecipientName string `json:"recipientName,omitempty"`
4211
4212	// Region: Top-level administrative subdivision of the country. For
4213	// example, a state like California ("CA") or a province like Quebec
4214	// ("QC").
4215	Region string `json:"region,omitempty"`
4216
4217	// StreetAddress: Street-level part of the address.
4218	StreetAddress []string `json:"streetAddress,omitempty"`
4219
4220	// ForceSendFields is a list of field names (e.g. "Country") to
4221	// unconditionally include in API requests. By default, fields with
4222	// empty values are omitted from API requests. However, any non-pointer,
4223	// non-interface field appearing in ForceSendFields will be sent to the
4224	// server regardless of whether the field is empty or not. This may be
4225	// used to include empty fields in Patch requests.
4226	ForceSendFields []string `json:"-"`
4227
4228	// NullFields is a list of field names (e.g. "Country") to include in
4229	// API requests with the JSON null value. By default, fields with empty
4230	// values are omitted from API requests. However, any field with an
4231	// empty value appearing in NullFields will be sent to the server as
4232	// null. It is an error if a field in this list has a non-empty value.
4233	// This may be used to include null fields in Patch requests.
4234	NullFields []string `json:"-"`
4235}
4236
4237func (s *OrderAddress) MarshalJSON() ([]byte, error) {
4238	type NoMethod OrderAddress
4239	raw := NoMethod(*s)
4240	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4241}
4242
4243type OrderCancellation struct {
4244	// Actor: The actor that created the cancellation.
4245	Actor string `json:"actor,omitempty"`
4246
4247	// CreationDate: Date on which the cancellation has been created, in ISO
4248	// 8601 format.
4249	CreationDate string `json:"creationDate,omitempty"`
4250
4251	// Quantity: The quantity that was canceled.
4252	Quantity int64 `json:"quantity,omitempty"`
4253
4254	// Reason: The reason for the cancellation. Orders that are canceled
4255	// with a noInventory reason will lead to the removal of the product
4256	// from Shopping Actions until you make an update to that product. This
4257	// will not affect your Shopping ads.
4258	Reason string `json:"reason,omitempty"`
4259
4260	// ReasonText: The explanation of the reason.
4261	ReasonText string `json:"reasonText,omitempty"`
4262
4263	// ForceSendFields is a list of field names (e.g. "Actor") to
4264	// unconditionally include in API requests. By default, fields with
4265	// empty values are omitted from API requests. However, any non-pointer,
4266	// non-interface field appearing in ForceSendFields will be sent to the
4267	// server regardless of whether the field is empty or not. This may be
4268	// used to include empty fields in Patch requests.
4269	ForceSendFields []string `json:"-"`
4270
4271	// NullFields is a list of field names (e.g. "Actor") to include in API
4272	// requests with the JSON null value. By default, fields with empty
4273	// values are omitted from API requests. However, any field with an
4274	// empty value appearing in NullFields will be sent to the server as
4275	// null. It is an error if a field in this list has a non-empty value.
4276	// This may be used to include null fields in Patch requests.
4277	NullFields []string `json:"-"`
4278}
4279
4280func (s *OrderCancellation) MarshalJSON() ([]byte, error) {
4281	type NoMethod OrderCancellation
4282	raw := NoMethod(*s)
4283	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4284}
4285
4286type OrderCustomer struct {
4287	// FullName: Full name of the customer.
4288	FullName string `json:"fullName,omitempty"`
4289
4290	// InvoiceReceivingEmail: Email address for the merchant to send
4291	// value-added tax or invoice documentation of the order. This
4292	// documentation is made available to the customer.
4293	InvoiceReceivingEmail string `json:"invoiceReceivingEmail,omitempty"`
4294
4295	// LoyaltyInfo: Loyalty program information.
4296	LoyaltyInfo *OrderCustomerLoyaltyInfo `json:"loyaltyInfo,omitempty"`
4297
4298	// MarketingRightsInfo: Customer's marketing preferences. Contains the
4299	// marketing opt-in information that is current at the time that the
4300	// merchant call. User preference selections can change from one order
4301	// to the next so preferences must be checked with every order.
4302	MarketingRightsInfo *OrderCustomerMarketingRightsInfo `json:"marketingRightsInfo,omitempty"`
4303
4304	// ForceSendFields is a list of field names (e.g. "FullName") to
4305	// unconditionally include in API requests. By default, fields with
4306	// empty values are omitted from API requests. However, any non-pointer,
4307	// non-interface field appearing in ForceSendFields will be sent to the
4308	// server regardless of whether the field is empty or not. This may be
4309	// used to include empty fields in Patch requests.
4310	ForceSendFields []string `json:"-"`
4311
4312	// NullFields is a list of field names (e.g. "FullName") to include in
4313	// API requests with the JSON null value. By default, fields with empty
4314	// values are omitted from API requests. However, any field with an
4315	// empty value appearing in NullFields will be sent to the server as
4316	// null. It is an error if a field in this list has a non-empty value.
4317	// This may be used to include null fields in Patch requests.
4318	NullFields []string `json:"-"`
4319}
4320
4321func (s *OrderCustomer) MarshalJSON() ([]byte, error) {
4322	type NoMethod OrderCustomer
4323	raw := NoMethod(*s)
4324	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4325}
4326
4327type OrderCustomerLoyaltyInfo struct {
4328	// LoyaltyNumber: The loyalty card/membership number.
4329	LoyaltyNumber string `json:"loyaltyNumber,omitempty"`
4330
4331	// Name: Name of card/membership holder, this field will be populated
4332	// when
4333	Name string `json:"name,omitempty"`
4334
4335	// ForceSendFields is a list of field names (e.g. "LoyaltyNumber") to
4336	// unconditionally include in API requests. By default, fields with
4337	// empty values are omitted from API requests. However, any non-pointer,
4338	// non-interface field appearing in ForceSendFields will be sent to the
4339	// server regardless of whether the field is empty or not. This may be
4340	// used to include empty fields in Patch requests.
4341	ForceSendFields []string `json:"-"`
4342
4343	// NullFields is a list of field names (e.g. "LoyaltyNumber") to include
4344	// in API requests with the JSON null value. By default, fields with
4345	// empty values are omitted from API requests. However, any field with
4346	// an empty value appearing in NullFields will be sent to the server as
4347	// null. It is an error if a field in this list has a non-empty value.
4348	// This may be used to include null fields in Patch requests.
4349	NullFields []string `json:"-"`
4350}
4351
4352func (s *OrderCustomerLoyaltyInfo) MarshalJSON() ([]byte, error) {
4353	type NoMethod OrderCustomerLoyaltyInfo
4354	raw := NoMethod(*s)
4355	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4356}
4357
4358type OrderCustomerMarketingRightsInfo struct {
4359	// ExplicitMarketingPreference: Last known customer selection regarding
4360	// marketing preferences. In certain cases this selection might not be
4361	// known, so this field would be empty. If a customer selected granted
4362	// in their most recent order, they can be subscribed to marketing
4363	// emails. Customers who have chosen denied must not be subscribed, or
4364	// must be unsubscribed if already opted-in.
4365	ExplicitMarketingPreference string `json:"explicitMarketingPreference,omitempty"`
4366
4367	// LastUpdatedTimestamp: Timestamp when last time marketing preference
4368	// was updated. Could be empty, if user wasn't offered a selection yet.
4369	LastUpdatedTimestamp string `json:"lastUpdatedTimestamp,omitempty"`
4370
4371	// MarketingEmailAddress: Email address that can be used for marketing
4372	// purposes. The field may be empty even if explicitMarketingPreference
4373	// is 'granted'. This happens when retrieving an old order from the
4374	// customer who deleted their account.
4375	MarketingEmailAddress string `json:"marketingEmailAddress,omitempty"`
4376
4377	// ForceSendFields is a list of field names (e.g.
4378	// "ExplicitMarketingPreference") to unconditionally include in API
4379	// requests. By default, fields with empty values are omitted from API
4380	// requests. However, any non-pointer, non-interface field appearing in
4381	// ForceSendFields will be sent to the server regardless of whether the
4382	// field is empty or not. This may be used to include empty fields in
4383	// Patch requests.
4384	ForceSendFields []string `json:"-"`
4385
4386	// NullFields is a list of field names (e.g.
4387	// "ExplicitMarketingPreference") to include in API requests with the
4388	// JSON null value. By default, fields with empty values are omitted
4389	// from API requests. However, any field with an empty value appearing
4390	// in NullFields will be sent to the server as null. It is an error if a
4391	// field in this list has a non-empty value. This may be used to include
4392	// null fields in Patch requests.
4393	NullFields []string `json:"-"`
4394}
4395
4396func (s *OrderCustomerMarketingRightsInfo) MarshalJSON() ([]byte, error) {
4397	type NoMethod OrderCustomerMarketingRightsInfo
4398	raw := NoMethod(*s)
4399	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4400}
4401
4402type OrderDeliveryDetails struct {
4403	// Address: The delivery address
4404	Address *OrderAddress `json:"address,omitempty"`
4405
4406	// PhoneNumber: The phone number of the person receiving the delivery.
4407	PhoneNumber string `json:"phoneNumber,omitempty"`
4408
4409	// ForceSendFields is a list of field names (e.g. "Address") to
4410	// unconditionally include in API requests. By default, fields with
4411	// empty values are omitted from API requests. However, any non-pointer,
4412	// non-interface field appearing in ForceSendFields will be sent to the
4413	// server regardless of whether the field is empty or not. This may be
4414	// used to include empty fields in Patch requests.
4415	ForceSendFields []string `json:"-"`
4416
4417	// NullFields is a list of field names (e.g. "Address") to include in
4418	// API requests with the JSON null value. By default, fields with empty
4419	// values are omitted from API requests. However, any field with an
4420	// empty value appearing in NullFields will be sent to the server as
4421	// null. It is an error if a field in this list has a non-empty value.
4422	// This may be used to include null fields in Patch requests.
4423	NullFields []string `json:"-"`
4424}
4425
4426func (s *OrderDeliveryDetails) MarshalJSON() ([]byte, error) {
4427	type NoMethod OrderDeliveryDetails
4428	raw := NoMethod(*s)
4429	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4430}
4431
4432type OrderLineItem struct {
4433	// Adjustments: Price and tax adjustments applied on the line item.
4434	Adjustments []*OrderLineItemAdjustment `json:"adjustments,omitempty"`
4435
4436	// Annotations: Annotations that are attached to the line item.
4437	Annotations []*OrderMerchantProvidedAnnotation `json:"annotations,omitempty"`
4438
4439	// Cancellations: Cancellations of the line item.
4440	Cancellations []*OrderCancellation `json:"cancellations,omitempty"`
4441
4442	// Id: The ID of the line item.
4443	Id string `json:"id,omitempty"`
4444
4445	// Price: Total price for the line item. For example, if two items for
4446	// $10 are purchased, the total price will be $20.
4447	Price *Price `json:"price,omitempty"`
4448
4449	// Product: Product data as seen by customer from the time of the order
4450	// placement. Note that certain attributes values (e.g. title or gtin)
4451	// might be reformatted and no longer match values submitted via product
4452	// feed.
4453	Product *OrderLineItemProduct `json:"product,omitempty"`
4454
4455	// QuantityCanceled: Number of items canceled.
4456	QuantityCanceled int64 `json:"quantityCanceled,omitempty"`
4457
4458	// QuantityDelivered: Number of items delivered.
4459	QuantityDelivered int64 `json:"quantityDelivered,omitempty"`
4460
4461	// QuantityOrdered: Number of items ordered.
4462	QuantityOrdered int64 `json:"quantityOrdered,omitempty"`
4463
4464	// QuantityPending: Number of items pending.
4465	QuantityPending int64 `json:"quantityPending,omitempty"`
4466
4467	// QuantityReadyForPickup: Number of items ready for pickup.
4468	QuantityReadyForPickup int64 `json:"quantityReadyForPickup,omitempty"`
4469
4470	// QuantityReturned: Number of items returned.
4471	QuantityReturned int64 `json:"quantityReturned,omitempty"`
4472
4473	// QuantityShipped: Number of items shipped.
4474	QuantityShipped int64 `json:"quantityShipped,omitempty"`
4475
4476	// QuantityUndeliverable: Number of items undeliverable.
4477	QuantityUndeliverable int64 `json:"quantityUndeliverable,omitempty"`
4478
4479	// ReturnInfo: Details of the return policy for the line item.
4480	ReturnInfo *OrderLineItemReturnInfo `json:"returnInfo,omitempty"`
4481
4482	// Returns: Returns of the line item.
4483	Returns []*OrderReturn `json:"returns,omitempty"`
4484
4485	// ShippingDetails: Details of the requested shipping for the line item.
4486	ShippingDetails *OrderLineItemShippingDetails `json:"shippingDetails,omitempty"`
4487
4488	// Tax: Total tax amount for the line item. For example, if two items
4489	// are purchased, and each have a cost tax of $2, the total tax amount
4490	// will be $4.
4491	Tax *Price `json:"tax,omitempty"`
4492
4493	// ForceSendFields is a list of field names (e.g. "Adjustments") to
4494	// unconditionally include in API requests. By default, fields with
4495	// empty values are omitted from API requests. However, any non-pointer,
4496	// non-interface field appearing in ForceSendFields will be sent to the
4497	// server regardless of whether the field is empty or not. This may be
4498	// used to include empty fields in Patch requests.
4499	ForceSendFields []string `json:"-"`
4500
4501	// NullFields is a list of field names (e.g. "Adjustments") to include
4502	// in API requests with the JSON null value. By default, fields with
4503	// empty values are omitted from API requests. However, any field with
4504	// an empty value appearing in NullFields will be sent to the server as
4505	// null. It is an error if a field in this list has a non-empty value.
4506	// This may be used to include null fields in Patch requests.
4507	NullFields []string `json:"-"`
4508}
4509
4510func (s *OrderLineItem) MarshalJSON() ([]byte, error) {
4511	type NoMethod OrderLineItem
4512	raw := NoMethod(*s)
4513	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4514}
4515
4516type OrderLineItemAdjustment struct {
4517	// PriceAdjustment: Adjustment for total price of the line item.
4518	PriceAdjustment *Price `json:"priceAdjustment,omitempty"`
4519
4520	// TaxAdjustment: Adjustment for total tax of the line item.
4521	TaxAdjustment *Price `json:"taxAdjustment,omitempty"`
4522
4523	// Type: Type of this adjustment.
4524	Type string `json:"type,omitempty"`
4525
4526	// ForceSendFields is a list of field names (e.g. "PriceAdjustment") to
4527	// unconditionally include in API requests. By default, fields with
4528	// empty values are omitted from API requests. However, any non-pointer,
4529	// non-interface field appearing in ForceSendFields will be sent to the
4530	// server regardless of whether the field is empty or not. This may be
4531	// used to include empty fields in Patch requests.
4532	ForceSendFields []string `json:"-"`
4533
4534	// NullFields is a list of field names (e.g. "PriceAdjustment") to
4535	// include in API requests with the JSON null value. By default, fields
4536	// with empty values are omitted from API requests. However, any field
4537	// with an empty value appearing in NullFields will be sent to the
4538	// server as null. It is an error if a field in this list has a
4539	// non-empty value. This may be used to include null fields in Patch
4540	// requests.
4541	NullFields []string `json:"-"`
4542}
4543
4544func (s *OrderLineItemAdjustment) MarshalJSON() ([]byte, error) {
4545	type NoMethod OrderLineItemAdjustment
4546	raw := NoMethod(*s)
4547	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4548}
4549
4550type OrderLineItemProduct struct {
4551	// Brand: Brand of the item.
4552	Brand string `json:"brand,omitempty"`
4553
4554	// Condition: Condition or state of the item.
4555	Condition string `json:"condition,omitempty"`
4556
4557	// ContentLanguage: The two-letter ISO 639-1 language code for the item.
4558	ContentLanguage string `json:"contentLanguage,omitempty"`
4559
4560	// Fees: Associated fees at order creation time.
4561	Fees []*OrderLineItemProductFee `json:"fees,omitempty"`
4562
4563	// Gtin: Global Trade Item Number (GTIN) of the item.
4564	Gtin string `json:"gtin,omitempty"`
4565
4566	// Id: The REST ID of the product.
4567	Id string `json:"id,omitempty"`
4568
4569	// ImageLink: URL of an image of the item.
4570	ImageLink string `json:"imageLink,omitempty"`
4571
4572	// ItemGroupId: Shared identifier for all variants of the same product.
4573	ItemGroupId string `json:"itemGroupId,omitempty"`
4574
4575	// Mpn: Manufacturer Part Number (MPN) of the item.
4576	Mpn string `json:"mpn,omitempty"`
4577
4578	// OfferId: An identifier of the item.
4579	OfferId string `json:"offerId,omitempty"`
4580
4581	// Price: Price of the item.
4582	Price *Price `json:"price,omitempty"`
4583
4584	// ShownImage: URL to the cached image shown to the user when order was
4585	// placed.
4586	ShownImage string `json:"shownImage,omitempty"`
4587
4588	// TargetCountry: The CLDR territory code of the target country of the
4589	// product.
4590	TargetCountry string `json:"targetCountry,omitempty"`
4591
4592	// Title: The title of the product.
4593	Title string `json:"title,omitempty"`
4594
4595	// VariantAttributes: Variant attributes for the item. These are
4596	// dimensions of the product, such as color, gender, material, pattern,
4597	// and size. You can find a comprehensive list of variant attributes
4598	// here.
4599	VariantAttributes []*OrderLineItemProductVariantAttribute `json:"variantAttributes,omitempty"`
4600
4601	// ForceSendFields is a list of field names (e.g. "Brand") to
4602	// unconditionally include in API requests. By default, fields with
4603	// empty values are omitted from API requests. However, any non-pointer,
4604	// non-interface field appearing in ForceSendFields will be sent to the
4605	// server regardless of whether the field is empty or not. This may be
4606	// used to include empty fields in Patch requests.
4607	ForceSendFields []string `json:"-"`
4608
4609	// NullFields is a list of field names (e.g. "Brand") to include in API
4610	// requests with the JSON null value. By default, fields with empty
4611	// values are omitted from API requests. However, any field with an
4612	// empty value appearing in NullFields will be sent to the server as
4613	// null. It is an error if a field in this list has a non-empty value.
4614	// This may be used to include null fields in Patch requests.
4615	NullFields []string `json:"-"`
4616}
4617
4618func (s *OrderLineItemProduct) MarshalJSON() ([]byte, error) {
4619	type NoMethod OrderLineItemProduct
4620	raw := NoMethod(*s)
4621	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4622}
4623
4624type OrderLineItemProductFee struct {
4625	// Amount: Amount of the fee.
4626	Amount *Price `json:"amount,omitempty"`
4627
4628	// Name: Name of the fee.
4629	Name string `json:"name,omitempty"`
4630
4631	// ForceSendFields is a list of field names (e.g. "Amount") to
4632	// unconditionally include in API requests. By default, fields with
4633	// empty values are omitted from API requests. However, any non-pointer,
4634	// non-interface field appearing in ForceSendFields will be sent to the
4635	// server regardless of whether the field is empty or not. This may be
4636	// used to include empty fields in Patch requests.
4637	ForceSendFields []string `json:"-"`
4638
4639	// NullFields is a list of field names (e.g. "Amount") to include in API
4640	// requests with the JSON null value. By default, fields with empty
4641	// values are omitted from API requests. However, any field with an
4642	// empty value appearing in NullFields will be sent to the server as
4643	// null. It is an error if a field in this list has a non-empty value.
4644	// This may be used to include null fields in Patch requests.
4645	NullFields []string `json:"-"`
4646}
4647
4648func (s *OrderLineItemProductFee) MarshalJSON() ([]byte, error) {
4649	type NoMethod OrderLineItemProductFee
4650	raw := NoMethod(*s)
4651	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4652}
4653
4654type OrderLineItemProductVariantAttribute struct {
4655	// Dimension: The dimension of the variant.
4656	Dimension string `json:"dimension,omitempty"`
4657
4658	// Value: The value for the dimension.
4659	Value string `json:"value,omitempty"`
4660
4661	// ForceSendFields is a list of field names (e.g. "Dimension") to
4662	// unconditionally include in API requests. By default, fields with
4663	// empty values are omitted from API requests. However, any non-pointer,
4664	// non-interface field appearing in ForceSendFields will be sent to the
4665	// server regardless of whether the field is empty or not. This may be
4666	// used to include empty fields in Patch requests.
4667	ForceSendFields []string `json:"-"`
4668
4669	// NullFields is a list of field names (e.g. "Dimension") to include in
4670	// API requests with the JSON null value. By default, fields with empty
4671	// values are omitted from API requests. However, any field with an
4672	// empty value appearing in NullFields will be sent to the server as
4673	// null. It is an error if a field in this list has a non-empty value.
4674	// This may be used to include null fields in Patch requests.
4675	NullFields []string `json:"-"`
4676}
4677
4678func (s *OrderLineItemProductVariantAttribute) MarshalJSON() ([]byte, error) {
4679	type NoMethod OrderLineItemProductVariantAttribute
4680	raw := NoMethod(*s)
4681	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4682}
4683
4684type OrderLineItemReturnInfo struct {
4685	// DaysToReturn: How many days later the item can be returned.
4686	DaysToReturn int64 `json:"daysToReturn,omitempty"`
4687
4688	// IsReturnable: Whether the item is returnable.
4689	IsReturnable bool `json:"isReturnable,omitempty"`
4690
4691	// PolicyUrl: URL of the item return policy.
4692	PolicyUrl string `json:"policyUrl,omitempty"`
4693
4694	// ForceSendFields is a list of field names (e.g. "DaysToReturn") to
4695	// unconditionally include in API requests. By default, fields with
4696	// empty values are omitted from API requests. However, any non-pointer,
4697	// non-interface field appearing in ForceSendFields will be sent to the
4698	// server regardless of whether the field is empty or not. This may be
4699	// used to include empty fields in Patch requests.
4700	ForceSendFields []string `json:"-"`
4701
4702	// NullFields is a list of field names (e.g. "DaysToReturn") to include
4703	// in API requests with the JSON null value. By default, fields with
4704	// empty values are omitted from API requests. However, any field with
4705	// an empty value appearing in NullFields will be sent to the server as
4706	// null. It is an error if a field in this list has a non-empty value.
4707	// This may be used to include null fields in Patch requests.
4708	NullFields []string `json:"-"`
4709}
4710
4711func (s *OrderLineItemReturnInfo) MarshalJSON() ([]byte, error) {
4712	type NoMethod OrderLineItemReturnInfo
4713	raw := NoMethod(*s)
4714	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4715}
4716
4717type OrderLineItemShippingDetails struct {
4718	// DeliverByDate: The delivery by date, in ISO 8601 format.
4719	DeliverByDate string `json:"deliverByDate,omitempty"`
4720
4721	// Method: Details of the shipping method.
4722	Method *OrderLineItemShippingDetailsMethod `json:"method,omitempty"`
4723
4724	// ShipByDate: The ship by date, in ISO 8601 format.
4725	ShipByDate string `json:"shipByDate,omitempty"`
4726
4727	// Type: Type of shipment. Indicates whether deliveryDetails or
4728	// pickupDetails is applicable for this shipment.
4729	Type string `json:"type,omitempty"`
4730
4731	// ForceSendFields is a list of field names (e.g. "DeliverByDate") to
4732	// unconditionally include in API requests. By default, fields with
4733	// empty values are omitted from API requests. However, any non-pointer,
4734	// non-interface field appearing in ForceSendFields will be sent to the
4735	// server regardless of whether the field is empty or not. This may be
4736	// used to include empty fields in Patch requests.
4737	ForceSendFields []string `json:"-"`
4738
4739	// NullFields is a list of field names (e.g. "DeliverByDate") to include
4740	// in API requests with the JSON null value. By default, fields with
4741	// empty values are omitted from API requests. However, any field with
4742	// an empty value appearing in NullFields will be sent to the server as
4743	// null. It is an error if a field in this list has a non-empty value.
4744	// This may be used to include null fields in Patch requests.
4745	NullFields []string `json:"-"`
4746}
4747
4748func (s *OrderLineItemShippingDetails) MarshalJSON() ([]byte, error) {
4749	type NoMethod OrderLineItemShippingDetails
4750	raw := NoMethod(*s)
4751	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4752}
4753
4754type OrderLineItemShippingDetailsMethod struct {
4755	// Carrier: The carrier for the shipping. Optional. See
4756	// shipments[].carrier for a list of acceptable values.
4757	Carrier string `json:"carrier,omitempty"`
4758
4759	// MaxDaysInTransit: Maximum transit time.
4760	MaxDaysInTransit int64 `json:"maxDaysInTransit,omitempty"`
4761
4762	// MethodName: The name of the shipping method.
4763	MethodName string `json:"methodName,omitempty"`
4764
4765	// MinDaysInTransit: Minimum transit time.
4766	MinDaysInTransit int64 `json:"minDaysInTransit,omitempty"`
4767
4768	// ForceSendFields is a list of field names (e.g. "Carrier") to
4769	// unconditionally include in API requests. By default, fields with
4770	// empty values are omitted from API requests. However, any non-pointer,
4771	// non-interface field appearing in ForceSendFields will be sent to the
4772	// server regardless of whether the field is empty or not. This may be
4773	// used to include empty fields in Patch requests.
4774	ForceSendFields []string `json:"-"`
4775
4776	// NullFields is a list of field names (e.g. "Carrier") to include in
4777	// API requests with the JSON null value. By default, fields with empty
4778	// values are omitted from API requests. However, any field with an
4779	// empty value appearing in NullFields will be sent to the server as
4780	// null. It is an error if a field in this list has a non-empty value.
4781	// This may be used to include null fields in Patch requests.
4782	NullFields []string `json:"-"`
4783}
4784
4785func (s *OrderLineItemShippingDetailsMethod) MarshalJSON() ([]byte, error) {
4786	type NoMethod OrderLineItemShippingDetailsMethod
4787	raw := NoMethod(*s)
4788	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4789}
4790
4791type OrderMerchantProvidedAnnotation struct {
4792	// Key: Key for additional merchant provided (as key-value pairs)
4793	// annotation about the line item.
4794	Key string `json:"key,omitempty"`
4795
4796	// Value: Value for additional merchant provided (as key-value pairs)
4797	// annotation about the line item.
4798	Value string `json:"value,omitempty"`
4799
4800	// ForceSendFields is a list of field names (e.g. "Key") to
4801	// unconditionally include in API requests. By default, fields with
4802	// empty values are omitted from API requests. However, any non-pointer,
4803	// non-interface field appearing in ForceSendFields will be sent to the
4804	// server regardless of whether the field is empty or not. This may be
4805	// used to include empty fields in Patch requests.
4806	ForceSendFields []string `json:"-"`
4807
4808	// NullFields is a list of field names (e.g. "Key") to include in API
4809	// requests with the JSON null value. By default, fields with empty
4810	// values are omitted from API requests. However, any field with an
4811	// empty value appearing in NullFields will be sent to the server as
4812	// null. It is an error if a field in this list has a non-empty value.
4813	// This may be used to include null fields in Patch requests.
4814	NullFields []string `json:"-"`
4815}
4816
4817func (s *OrderMerchantProvidedAnnotation) MarshalJSON() ([]byte, error) {
4818	type NoMethod OrderMerchantProvidedAnnotation
4819	raw := NoMethod(*s)
4820	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4821}
4822
4823type OrderPickupDetails struct {
4824	// Address: Address of the pickup location where the shipment should be
4825	// sent. Note that recipientName in the address is the name of the
4826	// business at the pickup location.
4827	Address *OrderAddress `json:"address,omitempty"`
4828
4829	// Collectors: Collectors authorized to pick up shipment from the pickup
4830	// location.
4831	Collectors []*OrderPickupDetailsCollector `json:"collectors,omitempty"`
4832
4833	// LocationId: ID of the pickup location.
4834	LocationId string `json:"locationId,omitempty"`
4835
4836	// ForceSendFields is a list of field names (e.g. "Address") to
4837	// unconditionally include in API requests. By default, fields with
4838	// empty values are omitted from API requests. However, any non-pointer,
4839	// non-interface field appearing in ForceSendFields will be sent to the
4840	// server regardless of whether the field is empty or not. This may be
4841	// used to include empty fields in Patch requests.
4842	ForceSendFields []string `json:"-"`
4843
4844	// NullFields is a list of field names (e.g. "Address") to include in
4845	// API requests with the JSON null value. By default, fields with empty
4846	// values are omitted from API requests. However, any field with an
4847	// empty value appearing in NullFields will be sent to the server as
4848	// null. It is an error if a field in this list has a non-empty value.
4849	// This may be used to include null fields in Patch requests.
4850	NullFields []string `json:"-"`
4851}
4852
4853func (s *OrderPickupDetails) MarshalJSON() ([]byte, error) {
4854	type NoMethod OrderPickupDetails
4855	raw := NoMethod(*s)
4856	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4857}
4858
4859type OrderPickupDetailsCollector struct {
4860	// Name: Name of the person picking up the shipment.
4861	Name string `json:"name,omitempty"`
4862
4863	// PhoneNumber: Phone number of the person picking up the shipment.
4864	PhoneNumber string `json:"phoneNumber,omitempty"`
4865
4866	// ForceSendFields is a list of field names (e.g. "Name") to
4867	// unconditionally include in API requests. By default, fields with
4868	// empty values are omitted from API requests. However, any non-pointer,
4869	// non-interface field appearing in ForceSendFields will be sent to the
4870	// server regardless of whether the field is empty or not. This may be
4871	// used to include empty fields in Patch requests.
4872	ForceSendFields []string `json:"-"`
4873
4874	// NullFields is a list of field names (e.g. "Name") to include in API
4875	// requests with the JSON null value. By default, fields with empty
4876	// values are omitted from API requests. However, any field with an
4877	// empty value appearing in NullFields will be sent to the server as
4878	// null. It is an error if a field in this list has a non-empty value.
4879	// This may be used to include null fields in Patch requests.
4880	NullFields []string `json:"-"`
4881}
4882
4883func (s *OrderPickupDetailsCollector) MarshalJSON() ([]byte, error) {
4884	type NoMethod OrderPickupDetailsCollector
4885	raw := NoMethod(*s)
4886	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4887}
4888
4889type OrderPromotion struct {
4890	// ApplicableItems: Items which this promotion may be applied to. If
4891	// empty, there are no restrictions on applicable items and quantity.
4892	ApplicableItems []*OrderPromotionItem `json:"applicableItems,omitempty"`
4893
4894	// AppliedItems: Items which this promotion have been applied to. Do not
4895	// provide for orders.createtestorder.
4896	AppliedItems []*OrderPromotionItem `json:"appliedItems,omitempty"`
4897
4898	// EndTime: Promotion end time in ISO 8601 format. Date, time, and
4899	// offset required, e.g., "2020-01-02T09:00:00+01:00" or
4900	// "2020-01-02T09:00:00Z".
4901	EndTime string `json:"endTime,omitempty"`
4902
4903	// Funder: The party funding the promotion. Only merchant is supported
4904	// for orders.createtestorder.
4905	Funder string `json:"funder,omitempty"`
4906
4907	// MerchantPromotionId: This field is used to identify promotions within
4908	// merchants' own systems.
4909	MerchantPromotionId string `json:"merchantPromotionId,omitempty"`
4910
4911	// PriceValue: Estimated discount applied to price. Amount is pre-tax or
4912	// post-tax depending on location of order.
4913	PriceValue *Price `json:"priceValue,omitempty"`
4914
4915	// ShortTitle: A short title of the promotion to be shown on the
4916	// checkout page. Do not provide for orders.createtestorder.
4917	ShortTitle string `json:"shortTitle,omitempty"`
4918
4919	// StartTime: Promotion start time in ISO 8601 format. Date, time, and
4920	// offset required, e.g., "2020-01-02T09:00:00+01:00" or
4921	// "2020-01-02T09:00:00Z".
4922	StartTime string `json:"startTime,omitempty"`
4923
4924	// Subtype: The category of the promotion. Only moneyOff is supported
4925	// for orders.createtestorder.
4926	Subtype string `json:"subtype,omitempty"`
4927
4928	// TaxValue: Estimated discount applied to tax (if allowed by law). Do
4929	// not provide for orders.createtestorder.
4930	TaxValue *Price `json:"taxValue,omitempty"`
4931
4932	// Title: The title of the promotion.
4933	Title string `json:"title,omitempty"`
4934
4935	// Type: The scope of the promotion. Only product is supported for
4936	// orders.createtestorder.
4937	Type string `json:"type,omitempty"`
4938
4939	// ForceSendFields is a list of field names (e.g. "ApplicableItems") to
4940	// unconditionally include in API requests. By default, fields with
4941	// empty values are omitted from API requests. However, any non-pointer,
4942	// non-interface field appearing in ForceSendFields will be sent to the
4943	// server regardless of whether the field is empty or not. This may be
4944	// used to include empty fields in Patch requests.
4945	ForceSendFields []string `json:"-"`
4946
4947	// NullFields is a list of field names (e.g. "ApplicableItems") to
4948	// include in API requests with the JSON null value. By default, fields
4949	// with empty values are omitted from API requests. However, any field
4950	// with an empty value appearing in NullFields will be sent to the
4951	// server as null. It is an error if a field in this list has a
4952	// non-empty value. This may be used to include null fields in Patch
4953	// requests.
4954	NullFields []string `json:"-"`
4955}
4956
4957func (s *OrderPromotion) MarshalJSON() ([]byte, error) {
4958	type NoMethod OrderPromotion
4959	raw := NoMethod(*s)
4960	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4961}
4962
4963type OrderPromotionItem struct {
4964	// LineItemId: The line item ID of a product. Do not provide for
4965	// orders.createtestorder.
4966	LineItemId string `json:"lineItemId,omitempty"`
4967
4968	// OfferId: Offer ID of a product. Only for orders.createtestorder.
4969	OfferId string `json:"offerId,omitempty"`
4970
4971	// ProductId: orders.createtestorder.
4972	ProductId string `json:"productId,omitempty"`
4973
4974	// Quantity: The quantity of the associated product. Do not provide for
4975	// orders.createtestorder.
4976	Quantity int64 `json:"quantity,omitempty"`
4977
4978	// ForceSendFields is a list of field names (e.g. "LineItemId") to
4979	// unconditionally include in API requests. By default, fields with
4980	// empty values are omitted from API requests. However, any non-pointer,
4981	// non-interface field appearing in ForceSendFields will be sent to the
4982	// server regardless of whether the field is empty or not. This may be
4983	// used to include empty fields in Patch requests.
4984	ForceSendFields []string `json:"-"`
4985
4986	// NullFields is a list of field names (e.g. "LineItemId") to include in
4987	// API requests with the JSON null value. By default, fields with empty
4988	// values are omitted from API requests. However, any field with an
4989	// empty value appearing in NullFields will be sent to the server as
4990	// null. It is an error if a field in this list has a non-empty value.
4991	// This may be used to include null fields in Patch requests.
4992	NullFields []string `json:"-"`
4993}
4994
4995func (s *OrderPromotionItem) MarshalJSON() ([]byte, error) {
4996	type NoMethod OrderPromotionItem
4997	raw := NoMethod(*s)
4998	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4999}
5000
5001type OrderRefund struct {
5002	// Actor: The actor that created the refund.
5003	Actor string `json:"actor,omitempty"`
5004
5005	// Amount: The amount that is refunded.
5006	Amount *Price `json:"amount,omitempty"`
5007
5008	// CreationDate: Date on which the item has been created, in ISO 8601
5009	// format.
5010	CreationDate string `json:"creationDate,omitempty"`
5011
5012	// Reason: The reason for the refund.
5013	Reason string `json:"reason,omitempty"`
5014
5015	// ReasonText: The explanation of the reason.
5016	ReasonText string `json:"reasonText,omitempty"`
5017
5018	// ForceSendFields is a list of field names (e.g. "Actor") to
5019	// unconditionally include in API requests. By default, fields with
5020	// empty values are omitted from API requests. However, any non-pointer,
5021	// non-interface field appearing in ForceSendFields will be sent to the
5022	// server regardless of whether the field is empty or not. This may be
5023	// used to include empty fields in Patch requests.
5024	ForceSendFields []string `json:"-"`
5025
5026	// NullFields is a list of field names (e.g. "Actor") to include in API
5027	// requests with the JSON null value. By default, fields with empty
5028	// values are omitted from API requests. However, any field with an
5029	// empty value appearing in NullFields will be sent to the server as
5030	// null. It is an error if a field in this list has a non-empty value.
5031	// This may be used to include null fields in Patch requests.
5032	NullFields []string `json:"-"`
5033}
5034
5035func (s *OrderRefund) MarshalJSON() ([]byte, error) {
5036	type NoMethod OrderRefund
5037	raw := NoMethod(*s)
5038	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5039}
5040
5041// OrderReportDisbursement: Order disbursement. All methods require the
5042// payment analyst role.
5043type OrderReportDisbursement struct {
5044	// DisbursementAmount: The disbursement amount.
5045	DisbursementAmount *Price `json:"disbursementAmount,omitempty"`
5046
5047	// DisbursementCreationDate: The disbursement date, in ISO 8601 format.
5048	DisbursementCreationDate string `json:"disbursementCreationDate,omitempty"`
5049
5050	// DisbursementDate: The date the disbursement was initiated, in ISO
5051	// 8601 format.
5052	DisbursementDate string `json:"disbursementDate,omitempty"`
5053
5054	// DisbursementId: The ID of the disbursement.
5055	DisbursementId string `json:"disbursementId,omitempty"`
5056
5057	// MerchantId: The ID of the managing account.
5058	MerchantId uint64 `json:"merchantId,omitempty,string"`
5059
5060	// ForceSendFields is a list of field names (e.g. "DisbursementAmount")
5061	// to unconditionally include in API requests. By default, fields with
5062	// empty values are omitted from API requests. However, any non-pointer,
5063	// non-interface field appearing in ForceSendFields will be sent to the
5064	// server regardless of whether the field is empty or not. This may be
5065	// used to include empty fields in Patch requests.
5066	ForceSendFields []string `json:"-"`
5067
5068	// NullFields is a list of field names (e.g. "DisbursementAmount") to
5069	// include in API requests with the JSON null value. By default, fields
5070	// with empty values are omitted from API requests. However, any field
5071	// with an empty value appearing in NullFields will be sent to the
5072	// server as null. It is an error if a field in this list has a
5073	// non-empty value. This may be used to include null fields in Patch
5074	// requests.
5075	NullFields []string `json:"-"`
5076}
5077
5078func (s *OrderReportDisbursement) MarshalJSON() ([]byte, error) {
5079	type NoMethod OrderReportDisbursement
5080	raw := NoMethod(*s)
5081	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5082}
5083
5084type OrderReportTransaction struct {
5085	// DisbursementAmount: The disbursement amount.
5086	DisbursementAmount *Price `json:"disbursementAmount,omitempty"`
5087
5088	// DisbursementCreationDate: The date the disbursement was created, in
5089	// ISO 8601 format.
5090	DisbursementCreationDate string `json:"disbursementCreationDate,omitempty"`
5091
5092	// DisbursementDate: The date the disbursement was initiated, in ISO
5093	// 8601 format.
5094	DisbursementDate string `json:"disbursementDate,omitempty"`
5095
5096	// DisbursementId: The ID of the disbursement.
5097	DisbursementId string `json:"disbursementId,omitempty"`
5098
5099	// MerchantId: The ID of the managing account.
5100	MerchantId uint64 `json:"merchantId,omitempty,string"`
5101
5102	// MerchantOrderId: Merchant-provided ID of the order.
5103	MerchantOrderId string `json:"merchantOrderId,omitempty"`
5104
5105	// OrderId: The ID of the order.
5106	OrderId string `json:"orderId,omitempty"`
5107
5108	// ProductAmount: Total amount for the items.
5109	ProductAmount *ProductAmount `json:"productAmount,omitempty"`
5110
5111	// TransactionDate: The date of the transaction, in ISO 8601 format.
5112	TransactionDate string `json:"transactionDate,omitempty"`
5113
5114	// ForceSendFields is a list of field names (e.g. "DisbursementAmount")
5115	// to unconditionally include in API requests. By default, fields with
5116	// empty values are omitted from API requests. However, any non-pointer,
5117	// non-interface field appearing in ForceSendFields will be sent to the
5118	// server regardless of whether the field is empty or not. This may be
5119	// used to include empty fields in Patch requests.
5120	ForceSendFields []string `json:"-"`
5121
5122	// NullFields is a list of field names (e.g. "DisbursementAmount") to
5123	// include in API requests with the JSON null value. By default, fields
5124	// with empty values are omitted from API requests. However, any field
5125	// with an empty value appearing in NullFields will be sent to the
5126	// server as null. It is an error if a field in this list has a
5127	// non-empty value. This may be used to include null fields in Patch
5128	// requests.
5129	NullFields []string `json:"-"`
5130}
5131
5132func (s *OrderReportTransaction) MarshalJSON() ([]byte, error) {
5133	type NoMethod OrderReportTransaction
5134	raw := NoMethod(*s)
5135	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5136}
5137
5138type OrderReturn struct {
5139	// Actor: The actor that created the refund.
5140	Actor string `json:"actor,omitempty"`
5141
5142	// CreationDate: Date on which the item has been created, in ISO 8601
5143	// format.
5144	CreationDate string `json:"creationDate,omitempty"`
5145
5146	// Quantity: Quantity that is returned.
5147	Quantity int64 `json:"quantity,omitempty"`
5148
5149	// Reason: The reason for the return.
5150	Reason string `json:"reason,omitempty"`
5151
5152	// ReasonText: The explanation of the reason.
5153	ReasonText string `json:"reasonText,omitempty"`
5154
5155	// ForceSendFields is a list of field names (e.g. "Actor") to
5156	// unconditionally include in API requests. By default, fields with
5157	// empty values are omitted from API requests. However, any non-pointer,
5158	// non-interface field appearing in ForceSendFields will be sent to the
5159	// server regardless of whether the field is empty or not. This may be
5160	// used to include empty fields in Patch requests.
5161	ForceSendFields []string `json:"-"`
5162
5163	// NullFields is a list of field names (e.g. "Actor") to include in API
5164	// requests with the JSON null value. By default, fields with empty
5165	// values are omitted from API requests. However, any field with an
5166	// empty value appearing in NullFields will be sent to the server as
5167	// null. It is an error if a field in this list has a non-empty value.
5168	// This may be used to include null fields in Patch requests.
5169	NullFields []string `json:"-"`
5170}
5171
5172func (s *OrderReturn) MarshalJSON() ([]byte, error) {
5173	type NoMethod OrderReturn
5174	raw := NoMethod(*s)
5175	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5176}
5177
5178type OrderShipment struct {
5179	// Carrier: The carrier handling the shipment.
5180	//
5181	// For supported carriers, Google includes the carrier name and tracking
5182	// URL in emails to customers. For select supported carriers, Google
5183	// also automatically updates the shipment status based on the provided
5184	// shipment ID. Note: You can also use unsupported carriers, but emails
5185	// to customers will not include the carrier name or tracking URL, and
5186	// there will be no automatic order status updates.
5187	// Supported carriers for US are:
5188	// - "ups" (United Parcel Service) automatic status updates
5189	// - "usps" (United States Postal Service) automatic status updates
5190	// - "fedex" (FedEx) automatic status updates
5191	// - "dhl" (DHL eCommerce) automatic status updates (US only)
5192	// - "ontrac" (OnTrac) automatic status updates
5193	// - "dhl express" (DHL Express)
5194	// - "deliv" (Deliv)
5195	// - "dynamex" (TForce)
5196	// - "lasership" (LaserShip)
5197	// - "mpx" (Military Parcel Xpress)
5198	// - "uds" (United Delivery Service)
5199	// - "efw" (Estes Forwarding Worldwide)
5200	// - "jd logistics" (JD Logistics)
5201	// - "yunexpress" (YunExpress)
5202	// - "china post" (China Post)
5203	// - "china ems" (China Post Express Mail Service)
5204	// - "singapore post" (Singapore Post)
5205	// - "pos malaysia" (Pos Malaysia)
5206	// - "postnl" (PostNL)
5207	// - "ptt" (PTT Turkish Post)
5208	// - "eub" (ePacket)
5209	// - "chukou1" (Chukou1 Logistics)
5210	// Supported carriers for FR are:
5211	// - "la poste" (La Poste) automatic status updates
5212	// - "colissimo" (Colissimo by La Poste) automatic status updates
5213	// - "ups" (United Parcel Service) automatic status updates
5214	// - "chronopost" (Chronopost by La Poste)
5215	// - "gls" (General Logistics Systems France)
5216	// - "dpd" (DPD Group by GeoPost)
5217	// - "bpost" (Belgian Post Group)
5218	// - "colis prive" (Colis Privé)
5219	// - "boxtal" (Boxtal)
5220	// - "geodis" (GEODIS)
5221	// - "tnt" (TNT)
5222	// - "db schenker" (DB Schenker)
5223	// - "aramex" (Aramex)
5224	Carrier string `json:"carrier,omitempty"`
5225
5226	// CreationDate: Date on which the shipment has been created, in ISO
5227	// 8601 format.
5228	CreationDate string `json:"creationDate,omitempty"`
5229
5230	// DeliveryDate: Date on which the shipment has been delivered, in ISO
5231	// 8601 format. Present only if status is delivered
5232	DeliveryDate string `json:"deliveryDate,omitempty"`
5233
5234	// Id: The ID of the shipment.
5235	Id string `json:"id,omitempty"`
5236
5237	// LineItems: The line items that are shipped.
5238	LineItems []*OrderShipmentLineItemShipment `json:"lineItems,omitempty"`
5239
5240	// ShipmentGroupId: The shipment group ID of the shipment. This is set
5241	// in shiplineitems request.
5242	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
5243
5244	// Status: The status of the shipment.
5245	Status string `json:"status,omitempty"`
5246
5247	// TrackingId: The tracking ID for the shipment.
5248	TrackingId string `json:"trackingId,omitempty"`
5249
5250	// ForceSendFields is a list of field names (e.g. "Carrier") to
5251	// unconditionally include in API requests. By default, fields with
5252	// empty values are omitted from API requests. However, any non-pointer,
5253	// non-interface field appearing in ForceSendFields will be sent to the
5254	// server regardless of whether the field is empty or not. This may be
5255	// used to include empty fields in Patch requests.
5256	ForceSendFields []string `json:"-"`
5257
5258	// NullFields is a list of field names (e.g. "Carrier") to include in
5259	// API requests with the JSON null value. By default, fields with empty
5260	// values are omitted from API requests. However, any field with an
5261	// empty value appearing in NullFields will be sent to the server as
5262	// null. It is an error if a field in this list has a non-empty value.
5263	// This may be used to include null fields in Patch requests.
5264	NullFields []string `json:"-"`
5265}
5266
5267func (s *OrderShipment) MarshalJSON() ([]byte, error) {
5268	type NoMethod OrderShipment
5269	raw := NoMethod(*s)
5270	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5271}
5272
5273type OrderShipmentLineItemShipment struct {
5274	// LineItemId: The ID of the line item that is shipped. This value is
5275	// assigned by Google when an order is created. Either lineItemId or
5276	// productId is required.
5277	LineItemId string `json:"lineItemId,omitempty"`
5278
5279	// ProductId: The ID of the product to ship. This is the REST ID used in
5280	// the products service. Either lineItemId or productId is required.
5281	ProductId string `json:"productId,omitempty"`
5282
5283	// Quantity: The quantity that is shipped.
5284	Quantity int64 `json:"quantity,omitempty"`
5285
5286	// ForceSendFields is a list of field names (e.g. "LineItemId") to
5287	// unconditionally include in API requests. By default, fields with
5288	// empty values are omitted from API requests. However, any non-pointer,
5289	// non-interface field appearing in ForceSendFields will be sent to the
5290	// server regardless of whether the field is empty or not. This may be
5291	// used to include empty fields in Patch requests.
5292	ForceSendFields []string `json:"-"`
5293
5294	// NullFields is a list of field names (e.g. "LineItemId") to include in
5295	// API requests with the JSON null value. By default, fields with empty
5296	// values are omitted from API requests. However, any field with an
5297	// empty value appearing in NullFields will be sent to the server as
5298	// null. It is an error if a field in this list has a non-empty value.
5299	// This may be used to include null fields in Patch requests.
5300	NullFields []string `json:"-"`
5301}
5302
5303func (s *OrderShipmentLineItemShipment) MarshalJSON() ([]byte, error) {
5304	type NoMethod OrderShipmentLineItemShipment
5305	raw := NoMethod(*s)
5306	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5307}
5308
5309type OrderinvoicesCreateChargeInvoiceRequest struct {
5310	// InvoiceId: [required] The ID of the invoice.
5311	InvoiceId string `json:"invoiceId,omitempty"`
5312
5313	// InvoiceSummary: [required] Invoice summary.
5314	InvoiceSummary *InvoiceSummary `json:"invoiceSummary,omitempty"`
5315
5316	// LineItemInvoices: [required] Invoice details per line item.
5317	LineItemInvoices []*ShipmentInvoiceLineItemInvoice `json:"lineItemInvoices,omitempty"`
5318
5319	// OperationId: [required] The ID of the operation, unique across all
5320	// operations for a given order.
5321	OperationId string `json:"operationId,omitempty"`
5322
5323	// ShipmentGroupId: [required] ID of the shipment group. It is assigned
5324	// by the merchant in the shipLineItems method and is used to group
5325	// multiple line items that have the same kind of shipping charges.
5326	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
5327
5328	// ForceSendFields is a list of field names (e.g. "InvoiceId") 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. "InvoiceId") to include in
5337	// API requests with the JSON null value. By default, fields with empty
5338	// values are omitted from API requests. However, any field with an
5339	// 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 *OrderinvoicesCreateChargeInvoiceRequest) MarshalJSON() ([]byte, error) {
5346	type NoMethod OrderinvoicesCreateChargeInvoiceRequest
5347	raw := NoMethod(*s)
5348	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5349}
5350
5351type OrderinvoicesCreateChargeInvoiceResponse struct {
5352	// ExecutionStatus: The status of the execution.
5353	ExecutionStatus string `json:"executionStatus,omitempty"`
5354
5355	// Kind: Identifies what kind of resource this is. Value: the fixed
5356	// string "content#orderinvoicesCreateChargeInvoiceResponse".
5357	Kind string `json:"kind,omitempty"`
5358
5359	// ServerResponse contains the HTTP response code and headers from the
5360	// server.
5361	googleapi.ServerResponse `json:"-"`
5362
5363	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
5364	// unconditionally include in API requests. By default, fields with
5365	// empty values are omitted from API requests. However, any non-pointer,
5366	// non-interface field appearing in ForceSendFields will be sent to the
5367	// server regardless of whether the field is empty or not. This may be
5368	// used to include empty fields in Patch requests.
5369	ForceSendFields []string `json:"-"`
5370
5371	// NullFields is a list of field names (e.g. "ExecutionStatus") to
5372	// include in API requests with the JSON null value. By default, fields
5373	// with empty values are omitted from API requests. However, any field
5374	// with an empty value appearing in NullFields will be sent to the
5375	// server as null. It is an error if a field in this list has a
5376	// non-empty value. This may be used to include null fields in Patch
5377	// requests.
5378	NullFields []string `json:"-"`
5379}
5380
5381func (s *OrderinvoicesCreateChargeInvoiceResponse) MarshalJSON() ([]byte, error) {
5382	type NoMethod OrderinvoicesCreateChargeInvoiceResponse
5383	raw := NoMethod(*s)
5384	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5385}
5386
5387type OrderinvoicesCreateRefundInvoiceRequest struct {
5388	// InvoiceId: [required] The ID of the invoice.
5389	InvoiceId string `json:"invoiceId,omitempty"`
5390
5391	// OperationId: [required] The ID of the operation, unique across all
5392	// operations for a given order.
5393	OperationId string `json:"operationId,omitempty"`
5394
5395	// RefundOnlyOption: Option to create a refund-only invoice. Exactly one
5396	// of refundOnlyOption or returnOption must be provided.
5397	RefundOnlyOption *OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceRefundOption `json:"refundOnlyOption,omitempty"`
5398
5399	// ReturnOption: Option to create an invoice for a refund and mark all
5400	// items within the invoice as returned. Exactly one of refundOnlyOption
5401	// or returnOption must be provided.
5402	ReturnOption *OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceReturnOption `json:"returnOption,omitempty"`
5403
5404	// ShipmentInvoices: Invoice details for different shipment groups.
5405	ShipmentInvoices []*ShipmentInvoice `json:"shipmentInvoices,omitempty"`
5406
5407	// ForceSendFields is a list of field names (e.g. "InvoiceId") to
5408	// unconditionally include in API requests. By default, fields with
5409	// empty values are omitted from API requests. However, any non-pointer,
5410	// non-interface field appearing in ForceSendFields will be sent to the
5411	// server regardless of whether the field is empty or not. This may be
5412	// used to include empty fields in Patch requests.
5413	ForceSendFields []string `json:"-"`
5414
5415	// NullFields is a list of field names (e.g. "InvoiceId") to include in
5416	// API requests with the JSON null value. By default, fields with empty
5417	// values are omitted from API requests. However, any field with an
5418	// empty value appearing in NullFields will be sent to the server as
5419	// null. It is an error if a field in this list has a non-empty value.
5420	// This may be used to include null fields in Patch requests.
5421	NullFields []string `json:"-"`
5422}
5423
5424func (s *OrderinvoicesCreateRefundInvoiceRequest) MarshalJSON() ([]byte, error) {
5425	type NoMethod OrderinvoicesCreateRefundInvoiceRequest
5426	raw := NoMethod(*s)
5427	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5428}
5429
5430type OrderinvoicesCreateRefundInvoiceResponse struct {
5431	// ExecutionStatus: The status of the execution.
5432	ExecutionStatus string `json:"executionStatus,omitempty"`
5433
5434	// Kind: Identifies what kind of resource this is. Value: the fixed
5435	// string "content#orderinvoicesCreateRefundInvoiceResponse".
5436	Kind string `json:"kind,omitempty"`
5437
5438	// ServerResponse contains the HTTP response code and headers from the
5439	// server.
5440	googleapi.ServerResponse `json:"-"`
5441
5442	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
5443	// unconditionally include in API requests. By default, fields with
5444	// empty values are omitted from API requests. However, any non-pointer,
5445	// non-interface field appearing in ForceSendFields will be sent to the
5446	// server regardless of whether the field is empty or not. This may be
5447	// used to include empty fields in Patch requests.
5448	ForceSendFields []string `json:"-"`
5449
5450	// NullFields is a list of field names (e.g. "ExecutionStatus") to
5451	// include in API requests with the JSON null value. By default, fields
5452	// with empty values are omitted from API requests. However, any field
5453	// with an empty value appearing in NullFields will be sent to the
5454	// server as null. It is an error if a field in this list has a
5455	// non-empty value. This may be used to include null fields in Patch
5456	// requests.
5457	NullFields []string `json:"-"`
5458}
5459
5460func (s *OrderinvoicesCreateRefundInvoiceResponse) MarshalJSON() ([]byte, error) {
5461	type NoMethod OrderinvoicesCreateRefundInvoiceResponse
5462	raw := NoMethod(*s)
5463	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5464}
5465
5466type OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceRefundOption struct {
5467	// Description: Optional description of the refund reason.
5468	Description string `json:"description,omitempty"`
5469
5470	// Reason: [required] Reason for the refund.
5471	Reason string `json:"reason,omitempty"`
5472
5473	// ForceSendFields is a list of field names (e.g. "Description") to
5474	// unconditionally include in API requests. By default, fields with
5475	// empty values are omitted from API requests. However, any non-pointer,
5476	// non-interface field appearing in ForceSendFields will be sent to the
5477	// server regardless of whether the field is empty or not. This may be
5478	// used to include empty fields in Patch requests.
5479	ForceSendFields []string `json:"-"`
5480
5481	// NullFields is a list of field names (e.g. "Description") to include
5482	// in API requests with the JSON null value. By default, fields with
5483	// empty values are omitted from API requests. However, any field with
5484	// an empty value appearing in NullFields will be sent to the server as
5485	// null. It is an error if a field in this list has a non-empty value.
5486	// This may be used to include null fields in Patch requests.
5487	NullFields []string `json:"-"`
5488}
5489
5490func (s *OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceRefundOption) MarshalJSON() ([]byte, error) {
5491	type NoMethod OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceRefundOption
5492	raw := NoMethod(*s)
5493	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5494}
5495
5496type OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceReturnOption struct {
5497	// Description: Optional description of the return reason.
5498	Description string `json:"description,omitempty"`
5499
5500	// Reason: [required] Reason for the return.
5501	Reason string `json:"reason,omitempty"`
5502
5503	// ForceSendFields is a list of field names (e.g. "Description") to
5504	// unconditionally include in API requests. By default, fields with
5505	// empty values are omitted from API requests. However, any non-pointer,
5506	// non-interface field appearing in ForceSendFields will be sent to the
5507	// server regardless of whether the field is empty or not. This may be
5508	// used to include empty fields in Patch requests.
5509	ForceSendFields []string `json:"-"`
5510
5511	// NullFields is a list of field names (e.g. "Description") to include
5512	// in API requests with the JSON null value. By default, fields with
5513	// empty values are omitted from API requests. However, any field with
5514	// an empty value appearing in NullFields will be sent to the server as
5515	// null. It is an error if a field in this list has a non-empty value.
5516	// This may be used to include null fields in Patch requests.
5517	NullFields []string `json:"-"`
5518}
5519
5520func (s *OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceReturnOption) MarshalJSON() ([]byte, error) {
5521	type NoMethod OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceReturnOption
5522	raw := NoMethod(*s)
5523	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5524}
5525
5526type OrderreportsListDisbursementsResponse struct {
5527	// Disbursements: The list of disbursements.
5528	Disbursements []*OrderReportDisbursement `json:"disbursements,omitempty"`
5529
5530	// Kind: Identifies what kind of resource this is. Value: the fixed
5531	// string "content#orderreportsListDisbursementsResponse".
5532	Kind string `json:"kind,omitempty"`
5533
5534	// NextPageToken: The token for the retrieval of the next page of
5535	// disbursements.
5536	NextPageToken string `json:"nextPageToken,omitempty"`
5537
5538	// ServerResponse contains the HTTP response code and headers from the
5539	// server.
5540	googleapi.ServerResponse `json:"-"`
5541
5542	// ForceSendFields is a list of field names (e.g. "Disbursements") to
5543	// unconditionally include in API requests. By default, fields with
5544	// empty values are omitted from API requests. However, any non-pointer,
5545	// non-interface field appearing in ForceSendFields will be sent to the
5546	// server regardless of whether the field is empty or not. This may be
5547	// used to include empty fields in Patch requests.
5548	ForceSendFields []string `json:"-"`
5549
5550	// NullFields is a list of field names (e.g. "Disbursements") to include
5551	// in API requests with the JSON null value. By default, fields with
5552	// empty values are omitted from API requests. However, any field with
5553	// an empty value appearing in NullFields will be sent to the server as
5554	// null. It is an error if a field in this list has a non-empty value.
5555	// This may be used to include null fields in Patch requests.
5556	NullFields []string `json:"-"`
5557}
5558
5559func (s *OrderreportsListDisbursementsResponse) MarshalJSON() ([]byte, error) {
5560	type NoMethod OrderreportsListDisbursementsResponse
5561	raw := NoMethod(*s)
5562	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5563}
5564
5565type OrderreportsListTransactionsResponse struct {
5566	// Kind: Identifies what kind of resource this is. Value: the fixed
5567	// string "content#orderreportsListTransactionsResponse".
5568	Kind string `json:"kind,omitempty"`
5569
5570	// NextPageToken: The token for the retrieval of the next page of
5571	// transactions.
5572	NextPageToken string `json:"nextPageToken,omitempty"`
5573
5574	// Transactions: The list of transactions.
5575	Transactions []*OrderReportTransaction `json:"transactions,omitempty"`
5576
5577	// ServerResponse contains the HTTP response code and headers from the
5578	// server.
5579	googleapi.ServerResponse `json:"-"`
5580
5581	// ForceSendFields is a list of field names (e.g. "Kind") to
5582	// unconditionally include in API requests. By default, fields with
5583	// empty values are omitted from API requests. However, any non-pointer,
5584	// non-interface field appearing in ForceSendFields will be sent to the
5585	// server regardless of whether the field is empty or not. This may be
5586	// used to include empty fields in Patch requests.
5587	ForceSendFields []string `json:"-"`
5588
5589	// NullFields is a list of field names (e.g. "Kind") to include in API
5590	// requests with the JSON null value. By default, fields with empty
5591	// values are omitted from API requests. However, any field with an
5592	// empty value appearing in NullFields will be sent to the server as
5593	// null. It is an error if a field in this list has a non-empty value.
5594	// This may be used to include null fields in Patch requests.
5595	NullFields []string `json:"-"`
5596}
5597
5598func (s *OrderreportsListTransactionsResponse) MarshalJSON() ([]byte, error) {
5599	type NoMethod OrderreportsListTransactionsResponse
5600	raw := NoMethod(*s)
5601	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5602}
5603
5604type OrderreturnsListResponse struct {
5605	// Kind: Identifies what kind of resource this is. Value: the fixed
5606	// string "content#orderreturnsListResponse".
5607	Kind string `json:"kind,omitempty"`
5608
5609	// NextPageToken: The token for the retrieval of the next page of
5610	// returns.
5611	NextPageToken string `json:"nextPageToken,omitempty"`
5612
5613	Resources []*MerchantOrderReturn `json:"resources,omitempty"`
5614
5615	// ServerResponse contains the HTTP response code and headers from the
5616	// server.
5617	googleapi.ServerResponse `json:"-"`
5618
5619	// ForceSendFields is a list of field names (e.g. "Kind") to
5620	// unconditionally include in API requests. By default, fields with
5621	// empty values are omitted from API requests. However, any non-pointer,
5622	// non-interface field appearing in ForceSendFields will be sent to the
5623	// server regardless of whether the field is empty or not. This may be
5624	// used to include empty fields in Patch requests.
5625	ForceSendFields []string `json:"-"`
5626
5627	// NullFields is a list of field names (e.g. "Kind") to include in API
5628	// requests with the JSON null value. By default, fields with empty
5629	// values are omitted from API requests. However, any field with an
5630	// empty value appearing in NullFields will be sent to the server as
5631	// null. It is an error if a field in this list has a non-empty value.
5632	// This may be used to include null fields in Patch requests.
5633	NullFields []string `json:"-"`
5634}
5635
5636func (s *OrderreturnsListResponse) MarshalJSON() ([]byte, error) {
5637	type NoMethod OrderreturnsListResponse
5638	raw := NoMethod(*s)
5639	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5640}
5641
5642type OrdersAcknowledgeRequest struct {
5643	// OperationId: The ID of the operation. Unique across all operations
5644	// for a given order.
5645	OperationId string `json:"operationId,omitempty"`
5646
5647	// ForceSendFields is a list of field names (e.g. "OperationId") to
5648	// unconditionally include in API requests. By default, fields with
5649	// empty values are omitted from API requests. However, any non-pointer,
5650	// non-interface field appearing in ForceSendFields will be sent to the
5651	// server regardless of whether the field is empty or not. This may be
5652	// used to include empty fields in Patch requests.
5653	ForceSendFields []string `json:"-"`
5654
5655	// NullFields is a list of field names (e.g. "OperationId") to include
5656	// in API requests with the JSON null value. By default, fields with
5657	// empty values are omitted from API requests. However, any field with
5658	// an empty value appearing in NullFields will be sent to the server as
5659	// null. It is an error if a field in this list has a non-empty value.
5660	// This may be used to include null fields in Patch requests.
5661	NullFields []string `json:"-"`
5662}
5663
5664func (s *OrdersAcknowledgeRequest) MarshalJSON() ([]byte, error) {
5665	type NoMethod OrdersAcknowledgeRequest
5666	raw := NoMethod(*s)
5667	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5668}
5669
5670type OrdersAcknowledgeResponse struct {
5671	// ExecutionStatus: The status of the execution.
5672	ExecutionStatus string `json:"executionStatus,omitempty"`
5673
5674	// Kind: Identifies what kind of resource this is. Value: the fixed
5675	// string "content#ordersAcknowledgeResponse".
5676	Kind string `json:"kind,omitempty"`
5677
5678	// ServerResponse contains the HTTP response code and headers from the
5679	// server.
5680	googleapi.ServerResponse `json:"-"`
5681
5682	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
5683	// unconditionally include in API requests. By default, fields with
5684	// empty values are omitted from API requests. However, any non-pointer,
5685	// non-interface field appearing in ForceSendFields will be sent to the
5686	// server regardless of whether the field is empty or not. This may be
5687	// used to include empty fields in Patch requests.
5688	ForceSendFields []string `json:"-"`
5689
5690	// NullFields is a list of field names (e.g. "ExecutionStatus") to
5691	// include in API requests with the JSON null value. By default, fields
5692	// with empty values are omitted from API requests. However, any field
5693	// with an empty value appearing in NullFields will be sent to the
5694	// server as null. It is an error if a field in this list has a
5695	// non-empty value. This may be used to include null fields in Patch
5696	// requests.
5697	NullFields []string `json:"-"`
5698}
5699
5700func (s *OrdersAcknowledgeResponse) MarshalJSON() ([]byte, error) {
5701	type NoMethod OrdersAcknowledgeResponse
5702	raw := NoMethod(*s)
5703	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5704}
5705
5706type OrdersAdvanceTestOrderResponse struct {
5707	// Kind: Identifies what kind of resource this is. Value: the fixed
5708	// string "content#ordersAdvanceTestOrderResponse".
5709	Kind string `json:"kind,omitempty"`
5710
5711	// ServerResponse contains the HTTP response code and headers from the
5712	// server.
5713	googleapi.ServerResponse `json:"-"`
5714
5715	// ForceSendFields is a list of field names (e.g. "Kind") to
5716	// unconditionally include in API requests. By default, fields with
5717	// empty values are omitted from API requests. However, any non-pointer,
5718	// non-interface field appearing in ForceSendFields will be sent to the
5719	// server regardless of whether the field is empty or not. This may be
5720	// used to include empty fields in Patch requests.
5721	ForceSendFields []string `json:"-"`
5722
5723	// NullFields is a list of field names (e.g. "Kind") to include in API
5724	// requests with the JSON null value. By default, fields with empty
5725	// values are omitted from API requests. However, any field with an
5726	// empty value appearing in NullFields will be sent to the server as
5727	// null. It is an error if a field in this list has a non-empty value.
5728	// This may be used to include null fields in Patch requests.
5729	NullFields []string `json:"-"`
5730}
5731
5732func (s *OrdersAdvanceTestOrderResponse) MarshalJSON() ([]byte, error) {
5733	type NoMethod OrdersAdvanceTestOrderResponse
5734	raw := NoMethod(*s)
5735	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5736}
5737
5738type OrdersCancelLineItemRequest struct {
5739	// LineItemId: The ID of the line item to cancel. Either lineItemId or
5740	// productId is required.
5741	LineItemId string `json:"lineItemId,omitempty"`
5742
5743	// OperationId: The ID of the operation. Unique across all operations
5744	// for a given order.
5745	OperationId string `json:"operationId,omitempty"`
5746
5747	// ProductId: The ID of the product to cancel. This is the REST ID used
5748	// in the products service. Either lineItemId or productId is required.
5749	ProductId string `json:"productId,omitempty"`
5750
5751	// Quantity: The quantity to cancel.
5752	Quantity int64 `json:"quantity,omitempty"`
5753
5754	// Reason: The reason for the cancellation.
5755	Reason string `json:"reason,omitempty"`
5756
5757	// ReasonText: The explanation of the reason.
5758	ReasonText string `json:"reasonText,omitempty"`
5759
5760	// ForceSendFields is a list of field names (e.g. "LineItemId") to
5761	// unconditionally include in API requests. By default, fields with
5762	// empty values are omitted from API requests. However, any non-pointer,
5763	// non-interface field appearing in ForceSendFields will be sent to the
5764	// server regardless of whether the field is empty or not. This may be
5765	// used to include empty fields in Patch requests.
5766	ForceSendFields []string `json:"-"`
5767
5768	// NullFields is a list of field names (e.g. "LineItemId") to include in
5769	// API requests with the JSON null value. By default, fields with empty
5770	// values are omitted from API requests. However, any field with an
5771	// empty value appearing in NullFields will be sent to the server as
5772	// null. It is an error if a field in this list has a non-empty value.
5773	// This may be used to include null fields in Patch requests.
5774	NullFields []string `json:"-"`
5775}
5776
5777func (s *OrdersCancelLineItemRequest) MarshalJSON() ([]byte, error) {
5778	type NoMethod OrdersCancelLineItemRequest
5779	raw := NoMethod(*s)
5780	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5781}
5782
5783type OrdersCancelLineItemResponse struct {
5784	// ExecutionStatus: The status of the execution.
5785	ExecutionStatus string `json:"executionStatus,omitempty"`
5786
5787	// Kind: Identifies what kind of resource this is. Value: the fixed
5788	// string "content#ordersCancelLineItemResponse".
5789	Kind string `json:"kind,omitempty"`
5790
5791	// ServerResponse contains the HTTP response code and headers from the
5792	// server.
5793	googleapi.ServerResponse `json:"-"`
5794
5795	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
5796	// unconditionally include in API requests. By default, fields with
5797	// empty values are omitted from API requests. However, any non-pointer,
5798	// non-interface field appearing in ForceSendFields will be sent to the
5799	// server regardless of whether the field is empty or not. This may be
5800	// used to include empty fields in Patch requests.
5801	ForceSendFields []string `json:"-"`
5802
5803	// NullFields is a list of field names (e.g. "ExecutionStatus") to
5804	// include in API requests with the JSON null value. By default, fields
5805	// with empty values are omitted from API requests. However, any field
5806	// with an empty value appearing in NullFields will be sent to the
5807	// server as null. It is an error if a field in this list has a
5808	// non-empty value. This may be used to include null fields in Patch
5809	// requests.
5810	NullFields []string `json:"-"`
5811}
5812
5813func (s *OrdersCancelLineItemResponse) MarshalJSON() ([]byte, error) {
5814	type NoMethod OrdersCancelLineItemResponse
5815	raw := NoMethod(*s)
5816	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5817}
5818
5819type OrdersCancelRequest struct {
5820	// OperationId: The ID of the operation. Unique across all operations
5821	// for a given order.
5822	OperationId string `json:"operationId,omitempty"`
5823
5824	// Reason: The reason for the cancellation.
5825	Reason string `json:"reason,omitempty"`
5826
5827	// ReasonText: The explanation of the reason.
5828	ReasonText string `json:"reasonText,omitempty"`
5829
5830	// ForceSendFields is a list of field names (e.g. "OperationId") to
5831	// unconditionally include in API requests. By default, fields with
5832	// empty values are omitted from API requests. However, any non-pointer,
5833	// non-interface field appearing in ForceSendFields will be sent to the
5834	// server regardless of whether the field is empty or not. This may be
5835	// used to include empty fields in Patch requests.
5836	ForceSendFields []string `json:"-"`
5837
5838	// NullFields is a list of field names (e.g. "OperationId") to include
5839	// in API requests with the JSON null value. By default, fields with
5840	// empty values are omitted from API requests. However, any field with
5841	// an empty value appearing in NullFields will be sent to the server as
5842	// null. It is an error if a field in this list has a non-empty value.
5843	// This may be used to include null fields in Patch requests.
5844	NullFields []string `json:"-"`
5845}
5846
5847func (s *OrdersCancelRequest) MarshalJSON() ([]byte, error) {
5848	type NoMethod OrdersCancelRequest
5849	raw := NoMethod(*s)
5850	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5851}
5852
5853type OrdersCancelResponse struct {
5854	// ExecutionStatus: The status of the execution.
5855	ExecutionStatus string `json:"executionStatus,omitempty"`
5856
5857	// Kind: Identifies what kind of resource this is. Value: the fixed
5858	// string "content#ordersCancelResponse".
5859	Kind string `json:"kind,omitempty"`
5860
5861	// ServerResponse contains the HTTP response code and headers from the
5862	// server.
5863	googleapi.ServerResponse `json:"-"`
5864
5865	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
5866	// unconditionally include in API requests. By default, fields with
5867	// empty values are omitted from API requests. However, any non-pointer,
5868	// non-interface field appearing in ForceSendFields will be sent to the
5869	// server regardless of whether the field is empty or not. This may be
5870	// used to include empty fields in Patch requests.
5871	ForceSendFields []string `json:"-"`
5872
5873	// NullFields is a list of field names (e.g. "ExecutionStatus") to
5874	// include in API requests with the JSON null value. By default, fields
5875	// with empty values are omitted from API requests. However, any field
5876	// with an empty value appearing in NullFields will be sent to the
5877	// server as null. It is an error if a field in this list has a
5878	// non-empty value. This may be used to include null fields in Patch
5879	// requests.
5880	NullFields []string `json:"-"`
5881}
5882
5883func (s *OrdersCancelResponse) MarshalJSON() ([]byte, error) {
5884	type NoMethod OrdersCancelResponse
5885	raw := NoMethod(*s)
5886	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5887}
5888
5889type OrdersCancelTestOrderByCustomerRequest struct {
5890	// Reason: The reason for the cancellation.
5891	Reason string `json:"reason,omitempty"`
5892
5893	// ForceSendFields is a list of field names (e.g. "Reason") to
5894	// unconditionally include in API requests. By default, fields with
5895	// empty values are omitted from API requests. However, any non-pointer,
5896	// non-interface field appearing in ForceSendFields will be sent to the
5897	// server regardless of whether the field is empty or not. This may be
5898	// used to include empty fields in Patch requests.
5899	ForceSendFields []string `json:"-"`
5900
5901	// NullFields is a list of field names (e.g. "Reason") to include in API
5902	// requests with the JSON null value. By default, fields with empty
5903	// values are omitted from API requests. However, any field with an
5904	// empty value appearing in NullFields will be sent to the server as
5905	// null. It is an error if a field in this list has a non-empty value.
5906	// This may be used to include null fields in Patch requests.
5907	NullFields []string `json:"-"`
5908}
5909
5910func (s *OrdersCancelTestOrderByCustomerRequest) MarshalJSON() ([]byte, error) {
5911	type NoMethod OrdersCancelTestOrderByCustomerRequest
5912	raw := NoMethod(*s)
5913	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5914}
5915
5916type OrdersCancelTestOrderByCustomerResponse struct {
5917	// Kind: Identifies what kind of resource this is. Value: the fixed
5918	// string "content#ordersCancelTestOrderByCustomerResponse".
5919	Kind string `json:"kind,omitempty"`
5920
5921	// ServerResponse contains the HTTP response code and headers from the
5922	// server.
5923	googleapi.ServerResponse `json:"-"`
5924
5925	// ForceSendFields is a list of field names (e.g. "Kind") to
5926	// unconditionally include in API requests. By default, fields with
5927	// empty values are omitted from API requests. However, any non-pointer,
5928	// non-interface field appearing in ForceSendFields will be sent to the
5929	// server regardless of whether the field is empty or not. This may be
5930	// used to include empty fields in Patch requests.
5931	ForceSendFields []string `json:"-"`
5932
5933	// NullFields is a list of field names (e.g. "Kind") to include in API
5934	// requests with the JSON null value. By default, fields with empty
5935	// values are omitted from API requests. However, any field with an
5936	// empty value appearing in NullFields will be sent to the server as
5937	// null. It is an error if a field in this list has a non-empty value.
5938	// This may be used to include null fields in Patch requests.
5939	NullFields []string `json:"-"`
5940}
5941
5942func (s *OrdersCancelTestOrderByCustomerResponse) MarshalJSON() ([]byte, error) {
5943	type NoMethod OrdersCancelTestOrderByCustomerResponse
5944	raw := NoMethod(*s)
5945	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5946}
5947
5948type OrdersCreateTestOrderRequest struct {
5949	// Country: The  CLDR territory code of the country of the test order to
5950	// create. Affects the currency and addresses of orders created via
5951	// template_name, or the addresses of orders created via
5952	// test_order.
5953	//
5954	// Acceptable values are:
5955	// - "US"
5956	// - "FR"  Defaults to US.
5957	Country string `json:"country,omitempty"`
5958
5959	// TemplateName: The test order template to use. Specify as an
5960	// alternative to testOrder as a shortcut for retrieving a template and
5961	// then creating an order using that template.
5962	TemplateName string `json:"templateName,omitempty"`
5963
5964	// TestOrder: The test order to create.
5965	TestOrder *TestOrder `json:"testOrder,omitempty"`
5966
5967	// ForceSendFields is a list of field names (e.g. "Country") to
5968	// unconditionally include in API requests. By default, fields with
5969	// empty values are omitted from API requests. However, any non-pointer,
5970	// non-interface field appearing in ForceSendFields will be sent to the
5971	// server regardless of whether the field is empty or not. This may be
5972	// used to include empty fields in Patch requests.
5973	ForceSendFields []string `json:"-"`
5974
5975	// NullFields is a list of field names (e.g. "Country") to include in
5976	// API requests with the JSON null value. By default, fields with empty
5977	// values are omitted from API requests. However, any field with an
5978	// empty value appearing in NullFields will be sent to the server as
5979	// null. It is an error if a field in this list has a non-empty value.
5980	// This may be used to include null fields in Patch requests.
5981	NullFields []string `json:"-"`
5982}
5983
5984func (s *OrdersCreateTestOrderRequest) MarshalJSON() ([]byte, error) {
5985	type NoMethod OrdersCreateTestOrderRequest
5986	raw := NoMethod(*s)
5987	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5988}
5989
5990type OrdersCreateTestOrderResponse struct {
5991	// Kind: Identifies what kind of resource this is. Value: the fixed
5992	// string "content#ordersCreateTestOrderResponse".
5993	Kind string `json:"kind,omitempty"`
5994
5995	// OrderId: The ID of the newly created test order.
5996	OrderId string `json:"orderId,omitempty"`
5997
5998	// ServerResponse contains the HTTP response code and headers from the
5999	// server.
6000	googleapi.ServerResponse `json:"-"`
6001
6002	// ForceSendFields is a list of field names (e.g. "Kind") to
6003	// unconditionally include in API requests. By default, fields with
6004	// empty values are omitted from API requests. However, any non-pointer,
6005	// non-interface field appearing in ForceSendFields will be sent to the
6006	// server regardless of whether the field is empty or not. This may be
6007	// used to include empty fields in Patch requests.
6008	ForceSendFields []string `json:"-"`
6009
6010	// NullFields is a list of field names (e.g. "Kind") to include in API
6011	// requests with the JSON null value. By default, fields with empty
6012	// values are omitted from API requests. However, any field with an
6013	// empty value appearing in NullFields will be sent to the server as
6014	// null. It is an error if a field in this list has a non-empty value.
6015	// This may be used to include null fields in Patch requests.
6016	NullFields []string `json:"-"`
6017}
6018
6019func (s *OrdersCreateTestOrderResponse) MarshalJSON() ([]byte, error) {
6020	type NoMethod OrdersCreateTestOrderResponse
6021	raw := NoMethod(*s)
6022	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6023}
6024
6025type OrdersCreateTestReturnRequest struct {
6026	// Items: Returned items.
6027	Items []*OrdersCustomBatchRequestEntryCreateTestReturnReturnItem `json:"items,omitempty"`
6028
6029	// ForceSendFields is a list of field names (e.g. "Items") 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. "Items") to include in API
6038	// 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 *OrdersCreateTestReturnRequest) MarshalJSON() ([]byte, error) {
6047	type NoMethod OrdersCreateTestReturnRequest
6048	raw := NoMethod(*s)
6049	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6050}
6051
6052type OrdersCreateTestReturnResponse struct {
6053	// Kind: Identifies what kind of resource this is. Value: the fixed
6054	// string "content#ordersCreateTestReturnResponse".
6055	Kind string `json:"kind,omitempty"`
6056
6057	// ReturnId: The ID of the newly created test order return.
6058	ReturnId string `json:"returnId,omitempty"`
6059
6060	// ServerResponse contains the HTTP response code and headers from the
6061	// server.
6062	googleapi.ServerResponse `json:"-"`
6063
6064	// ForceSendFields is a list of field names (e.g. "Kind") to
6065	// unconditionally include in API requests. By default, fields with
6066	// empty values are omitted from API requests. However, any non-pointer,
6067	// non-interface field appearing in ForceSendFields will be sent to the
6068	// server regardless of whether the field is empty or not. This may be
6069	// used to include empty fields in Patch requests.
6070	ForceSendFields []string `json:"-"`
6071
6072	// NullFields is a list of field names (e.g. "Kind") to include in API
6073	// requests with the JSON null value. By default, fields with empty
6074	// values are omitted from API requests. However, any field with an
6075	// empty value appearing in NullFields will be sent to the server as
6076	// null. It is an error if a field in this list has a non-empty value.
6077	// This may be used to include null fields in Patch requests.
6078	NullFields []string `json:"-"`
6079}
6080
6081func (s *OrdersCreateTestReturnResponse) MarshalJSON() ([]byte, error) {
6082	type NoMethod OrdersCreateTestReturnResponse
6083	raw := NoMethod(*s)
6084	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6085}
6086
6087type OrdersCustomBatchRequestEntryCreateTestReturnReturnItem struct {
6088	// LineItemId: The ID of the line item to return.
6089	LineItemId string `json:"lineItemId,omitempty"`
6090
6091	// Quantity: Quantity that is returned.
6092	Quantity int64 `json:"quantity,omitempty"`
6093
6094	// ForceSendFields is a list of field names (e.g. "LineItemId") to
6095	// unconditionally include in API requests. By default, fields with
6096	// empty values are omitted from API requests. However, any non-pointer,
6097	// non-interface field appearing in ForceSendFields will be sent to the
6098	// server regardless of whether the field is empty or not. This may be
6099	// used to include empty fields in Patch requests.
6100	ForceSendFields []string `json:"-"`
6101
6102	// NullFields is a list of field names (e.g. "LineItemId") to include in
6103	// API requests with the JSON null value. By default, fields with empty
6104	// values are omitted from API requests. However, any field with an
6105	// empty value appearing in NullFields will be sent to the server as
6106	// null. It is an error if a field in this list has a non-empty value.
6107	// This may be used to include null fields in Patch requests.
6108	NullFields []string `json:"-"`
6109}
6110
6111func (s *OrdersCustomBatchRequestEntryCreateTestReturnReturnItem) MarshalJSON() ([]byte, error) {
6112	type NoMethod OrdersCustomBatchRequestEntryCreateTestReturnReturnItem
6113	raw := NoMethod(*s)
6114	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6115}
6116
6117type OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo struct {
6118	// Carrier: The carrier handling the shipment. See shipments[].carrier
6119	// in the  Orders resource representation for a list of acceptable
6120	// values.
6121	Carrier string `json:"carrier,omitempty"`
6122
6123	// ShipmentId: The ID of the shipment. This is assigned by the merchant
6124	// and is unique to each shipment.
6125	ShipmentId string `json:"shipmentId,omitempty"`
6126
6127	// TrackingId: The tracking ID for the shipment.
6128	TrackingId string `json:"trackingId,omitempty"`
6129
6130	// ForceSendFields is a list of field names (e.g. "Carrier") to
6131	// unconditionally include in API requests. By default, fields with
6132	// empty values are omitted from API requests. However, any non-pointer,
6133	// non-interface field appearing in ForceSendFields will be sent to the
6134	// server regardless of whether the field is empty or not. This may be
6135	// used to include empty fields in Patch requests.
6136	ForceSendFields []string `json:"-"`
6137
6138	// NullFields is a list of field names (e.g. "Carrier") to include in
6139	// API requests with the JSON null value. By default, fields with empty
6140	// values are omitted from API requests. However, any field with an
6141	// empty value appearing in NullFields will be sent to the server as
6142	// null. It is an error if a field in this list has a non-empty value.
6143	// This may be used to include null fields in Patch requests.
6144	NullFields []string `json:"-"`
6145}
6146
6147func (s *OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo) MarshalJSON() ([]byte, error) {
6148	type NoMethod OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo
6149	raw := NoMethod(*s)
6150	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6151}
6152
6153type OrdersGetByMerchantOrderIdResponse struct {
6154	// Kind: Identifies what kind of resource this is. Value: the fixed
6155	// string "content#ordersGetByMerchantOrderIdResponse".
6156	Kind string `json:"kind,omitempty"`
6157
6158	// Order: The requested order.
6159	Order *Order `json:"order,omitempty"`
6160
6161	// ServerResponse contains the HTTP response code and headers from the
6162	// server.
6163	googleapi.ServerResponse `json:"-"`
6164
6165	// ForceSendFields is a list of field names (e.g. "Kind") to
6166	// unconditionally include in API requests. By default, fields with
6167	// empty values are omitted from API requests. However, any non-pointer,
6168	// non-interface field appearing in ForceSendFields will be sent to the
6169	// server regardless of whether the field is empty or not. This may be
6170	// used to include empty fields in Patch requests.
6171	ForceSendFields []string `json:"-"`
6172
6173	// NullFields is a list of field names (e.g. "Kind") to include in API
6174	// requests with the JSON null value. By default, fields with empty
6175	// values are omitted from API requests. However, any field with an
6176	// empty value appearing in NullFields will be sent to the server as
6177	// null. It is an error if a field in this list has a non-empty value.
6178	// This may be used to include null fields in Patch requests.
6179	NullFields []string `json:"-"`
6180}
6181
6182func (s *OrdersGetByMerchantOrderIdResponse) MarshalJSON() ([]byte, error) {
6183	type NoMethod OrdersGetByMerchantOrderIdResponse
6184	raw := NoMethod(*s)
6185	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6186}
6187
6188type OrdersGetTestOrderTemplateResponse struct {
6189	// Kind: Identifies what kind of resource this is. Value: the fixed
6190	// string "content#ordersGetTestOrderTemplateResponse".
6191	Kind string `json:"kind,omitempty"`
6192
6193	// Template: The requested test order template.
6194	Template *TestOrder `json:"template,omitempty"`
6195
6196	// ServerResponse contains the HTTP response code and headers from the
6197	// server.
6198	googleapi.ServerResponse `json:"-"`
6199
6200	// ForceSendFields is a list of field names (e.g. "Kind") to
6201	// unconditionally include in API requests. By default, fields with
6202	// empty values are omitted from API requests. However, any non-pointer,
6203	// non-interface field appearing in ForceSendFields will be sent to the
6204	// server regardless of whether the field is empty or not. This may be
6205	// used to include empty fields in Patch requests.
6206	ForceSendFields []string `json:"-"`
6207
6208	// NullFields is a list of field names (e.g. "Kind") to include in API
6209	// requests with the JSON null value. By default, fields with empty
6210	// values are omitted from API requests. However, any field with an
6211	// empty value appearing in NullFields will be sent to the server as
6212	// null. It is an error if a field in this list has a non-empty value.
6213	// This may be used to include null fields in Patch requests.
6214	NullFields []string `json:"-"`
6215}
6216
6217func (s *OrdersGetTestOrderTemplateResponse) MarshalJSON() ([]byte, error) {
6218	type NoMethod OrdersGetTestOrderTemplateResponse
6219	raw := NoMethod(*s)
6220	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6221}
6222
6223type OrdersInStoreRefundLineItemRequest struct {
6224	// LineItemId: The ID of the line item to return. Either lineItemId or
6225	// productId is required.
6226	LineItemId string `json:"lineItemId,omitempty"`
6227
6228	// OperationId: The ID of the operation. Unique across all operations
6229	// for a given order.
6230	OperationId string `json:"operationId,omitempty"`
6231
6232	// PriceAmount: The amount to be refunded. This may be pre-tax or
6233	// post-tax depending on the location of the order. Required.
6234	PriceAmount *Price `json:"priceAmount,omitempty"`
6235
6236	// ProductId: The ID of the product to return. This is the REST ID used
6237	// in the products service. Either lineItemId or productId is required.
6238	ProductId string `json:"productId,omitempty"`
6239
6240	// Quantity: The quantity to return and refund.
6241	Quantity int64 `json:"quantity,omitempty"`
6242
6243	// Reason: The reason for the return.
6244	Reason string `json:"reason,omitempty"`
6245
6246	// ReasonText: The explanation of the reason.
6247	ReasonText string `json:"reasonText,omitempty"`
6248
6249	// TaxAmount: The amount of tax to be refunded. Required.
6250	TaxAmount *Price `json:"taxAmount,omitempty"`
6251
6252	// ForceSendFields is a list of field names (e.g. "LineItemId") to
6253	// unconditionally include in API requests. By default, fields with
6254	// empty values are omitted from API requests. However, any non-pointer,
6255	// non-interface field appearing in ForceSendFields will be sent to the
6256	// server regardless of whether the field is empty or not. This may be
6257	// used to include empty fields in Patch requests.
6258	ForceSendFields []string `json:"-"`
6259
6260	// NullFields is a list of field names (e.g. "LineItemId") to include in
6261	// API requests with the JSON null value. By default, fields with empty
6262	// values are omitted from API requests. However, any field with an
6263	// empty value appearing in NullFields will be sent to the server as
6264	// null. It is an error if a field in this list has a non-empty value.
6265	// This may be used to include null fields in Patch requests.
6266	NullFields []string `json:"-"`
6267}
6268
6269func (s *OrdersInStoreRefundLineItemRequest) MarshalJSON() ([]byte, error) {
6270	type NoMethod OrdersInStoreRefundLineItemRequest
6271	raw := NoMethod(*s)
6272	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6273}
6274
6275type OrdersInStoreRefundLineItemResponse struct {
6276	// ExecutionStatus: The status of the execution.
6277	ExecutionStatus string `json:"executionStatus,omitempty"`
6278
6279	// Kind: Identifies what kind of resource this is. Value: the fixed
6280	// string "content#ordersInStoreRefundLineItemResponse".
6281	Kind string `json:"kind,omitempty"`
6282
6283	// ServerResponse contains the HTTP response code and headers from the
6284	// server.
6285	googleapi.ServerResponse `json:"-"`
6286
6287	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
6288	// unconditionally include in API requests. By default, fields with
6289	// empty values are omitted from API requests. However, any non-pointer,
6290	// non-interface field appearing in ForceSendFields will be sent to the
6291	// server regardless of whether the field is empty or not. This may be
6292	// used to include empty fields in Patch requests.
6293	ForceSendFields []string `json:"-"`
6294
6295	// NullFields is a list of field names (e.g. "ExecutionStatus") to
6296	// include in API requests with the JSON null value. By default, fields
6297	// with empty values are omitted from API requests. However, any field
6298	// with an empty value appearing in NullFields will be sent to the
6299	// server as null. It is an error if a field in this list has a
6300	// non-empty value. This may be used to include null fields in Patch
6301	// requests.
6302	NullFields []string `json:"-"`
6303}
6304
6305func (s *OrdersInStoreRefundLineItemResponse) MarshalJSON() ([]byte, error) {
6306	type NoMethod OrdersInStoreRefundLineItemResponse
6307	raw := NoMethod(*s)
6308	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6309}
6310
6311type OrdersListResponse struct {
6312	// Kind: Identifies what kind of resource this is. Value: the fixed
6313	// string "content#ordersListResponse".
6314	Kind string `json:"kind,omitempty"`
6315
6316	// NextPageToken: The token for the retrieval of the next page of
6317	// orders.
6318	NextPageToken string `json:"nextPageToken,omitempty"`
6319
6320	Resources []*Order `json:"resources,omitempty"`
6321
6322	// ServerResponse contains the HTTP response code and headers from the
6323	// server.
6324	googleapi.ServerResponse `json:"-"`
6325
6326	// ForceSendFields is a list of field names (e.g. "Kind") to
6327	// unconditionally include in API requests. By default, fields with
6328	// empty values are omitted from API requests. However, any non-pointer,
6329	// non-interface field appearing in ForceSendFields will be sent to the
6330	// server regardless of whether the field is empty or not. This may be
6331	// used to include empty fields in Patch requests.
6332	ForceSendFields []string `json:"-"`
6333
6334	// NullFields is a list of field names (e.g. "Kind") to include in API
6335	// requests with the JSON null value. By default, fields with empty
6336	// values are omitted from API requests. However, any field with an
6337	// empty value appearing in NullFields will be sent to the server as
6338	// null. It is an error if a field in this list has a non-empty value.
6339	// This may be used to include null fields in Patch requests.
6340	NullFields []string `json:"-"`
6341}
6342
6343func (s *OrdersListResponse) MarshalJSON() ([]byte, error) {
6344	type NoMethod OrdersListResponse
6345	raw := NoMethod(*s)
6346	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6347}
6348
6349type OrdersRejectReturnLineItemRequest struct {
6350	// LineItemId: The ID of the line item to return. Either lineItemId or
6351	// productId is required.
6352	LineItemId string `json:"lineItemId,omitempty"`
6353
6354	// OperationId: The ID of the operation. Unique across all operations
6355	// for a given order.
6356	OperationId string `json:"operationId,omitempty"`
6357
6358	// ProductId: The ID of the product to return. This is the REST ID used
6359	// in the products service. Either lineItemId or productId is required.
6360	ProductId string `json:"productId,omitempty"`
6361
6362	// Quantity: The quantity to return and refund.
6363	Quantity int64 `json:"quantity,omitempty"`
6364
6365	// Reason: The reason for the return.
6366	Reason string `json:"reason,omitempty"`
6367
6368	// ReasonText: The explanation of the reason.
6369	ReasonText string `json:"reasonText,omitempty"`
6370
6371	// ForceSendFields is a list of field names (e.g. "LineItemId") to
6372	// unconditionally include in API requests. By default, fields with
6373	// empty values are omitted from API requests. However, any non-pointer,
6374	// non-interface field appearing in ForceSendFields will be sent to the
6375	// server regardless of whether the field is empty or not. This may be
6376	// used to include empty fields in Patch requests.
6377	ForceSendFields []string `json:"-"`
6378
6379	// NullFields is a list of field names (e.g. "LineItemId") to include in
6380	// API requests with the JSON null value. By default, fields with empty
6381	// values are omitted from API requests. However, any field with an
6382	// empty value appearing in NullFields will be sent to the server as
6383	// null. It is an error if a field in this list has a non-empty value.
6384	// This may be used to include null fields in Patch requests.
6385	NullFields []string `json:"-"`
6386}
6387
6388func (s *OrdersRejectReturnLineItemRequest) MarshalJSON() ([]byte, error) {
6389	type NoMethod OrdersRejectReturnLineItemRequest
6390	raw := NoMethod(*s)
6391	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6392}
6393
6394type OrdersRejectReturnLineItemResponse struct {
6395	// ExecutionStatus: The status of the execution.
6396	ExecutionStatus string `json:"executionStatus,omitempty"`
6397
6398	// Kind: Identifies what kind of resource this is. Value: the fixed
6399	// string "content#ordersRejectReturnLineItemResponse".
6400	Kind string `json:"kind,omitempty"`
6401
6402	// ServerResponse contains the HTTP response code and headers from the
6403	// server.
6404	googleapi.ServerResponse `json:"-"`
6405
6406	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
6407	// unconditionally include in API requests. By default, fields with
6408	// empty values are omitted from API requests. However, any non-pointer,
6409	// non-interface field appearing in ForceSendFields will be sent to the
6410	// server regardless of whether the field is empty or not. This may be
6411	// used to include empty fields in Patch requests.
6412	ForceSendFields []string `json:"-"`
6413
6414	// NullFields is a list of field names (e.g. "ExecutionStatus") to
6415	// include in API requests with the JSON null value. By default, fields
6416	// with empty values are omitted from API requests. However, any field
6417	// with an empty value appearing in NullFields will be sent to the
6418	// server as null. It is an error if a field in this list has a
6419	// non-empty value. This may be used to include null fields in Patch
6420	// requests.
6421	NullFields []string `json:"-"`
6422}
6423
6424func (s *OrdersRejectReturnLineItemResponse) MarshalJSON() ([]byte, error) {
6425	type NoMethod OrdersRejectReturnLineItemResponse
6426	raw := NoMethod(*s)
6427	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6428}
6429
6430type OrdersReturnRefundLineItemRequest struct {
6431	// LineItemId: The ID of the line item to return. Either lineItemId or
6432	// productId is required.
6433	LineItemId string `json:"lineItemId,omitempty"`
6434
6435	// OperationId: The ID of the operation. Unique across all operations
6436	// for a given order.
6437	OperationId string `json:"operationId,omitempty"`
6438
6439	// PriceAmount: The amount to be refunded. This may be pre-tax or
6440	// post-tax depending on the location of the order. If omitted,
6441	// refundless return is assumed.
6442	PriceAmount *Price `json:"priceAmount,omitempty"`
6443
6444	// ProductId: The ID of the product to return. This is the REST ID used
6445	// in the products service. Either lineItemId or productId is required.
6446	ProductId string `json:"productId,omitempty"`
6447
6448	// Quantity: The quantity to return and refund.
6449	Quantity int64 `json:"quantity,omitempty"`
6450
6451	// Reason: The reason for the return.
6452	Reason string `json:"reason,omitempty"`
6453
6454	// ReasonText: The explanation of the reason.
6455	ReasonText string `json:"reasonText,omitempty"`
6456
6457	// TaxAmount: The amount of tax to be refunded. Optional, but if filled,
6458	// then priceAmount must be set. Calculated automatically if not
6459	// provided.
6460	TaxAmount *Price `json:"taxAmount,omitempty"`
6461
6462	// ForceSendFields is a list of field names (e.g. "LineItemId") to
6463	// unconditionally include in API requests. By default, fields with
6464	// empty values are omitted from API requests. However, any non-pointer,
6465	// non-interface field appearing in ForceSendFields will be sent to the
6466	// server regardless of whether the field is empty or not. This may be
6467	// used to include empty fields in Patch requests.
6468	ForceSendFields []string `json:"-"`
6469
6470	// NullFields is a list of field names (e.g. "LineItemId") to include in
6471	// API requests with the JSON null value. By default, fields with empty
6472	// values are omitted from API requests. However, any field with an
6473	// empty value appearing in NullFields will be sent to the server as
6474	// null. It is an error if a field in this list has a non-empty value.
6475	// This may be used to include null fields in Patch requests.
6476	NullFields []string `json:"-"`
6477}
6478
6479func (s *OrdersReturnRefundLineItemRequest) MarshalJSON() ([]byte, error) {
6480	type NoMethod OrdersReturnRefundLineItemRequest
6481	raw := NoMethod(*s)
6482	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6483}
6484
6485type OrdersReturnRefundLineItemResponse struct {
6486	// ExecutionStatus: The status of the execution.
6487	ExecutionStatus string `json:"executionStatus,omitempty"`
6488
6489	// Kind: Identifies what kind of resource this is. Value: the fixed
6490	// string "content#ordersReturnRefundLineItemResponse".
6491	Kind string `json:"kind,omitempty"`
6492
6493	// ServerResponse contains the HTTP response code and headers from the
6494	// server.
6495	googleapi.ServerResponse `json:"-"`
6496
6497	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
6498	// unconditionally include in API requests. By default, fields with
6499	// empty values are omitted from API requests. However, any non-pointer,
6500	// non-interface field appearing in ForceSendFields will be sent to the
6501	// server regardless of whether the field is empty or not. This may be
6502	// used to include empty fields in Patch requests.
6503	ForceSendFields []string `json:"-"`
6504
6505	// NullFields is a list of field names (e.g. "ExecutionStatus") to
6506	// include in API requests with the JSON null value. By default, fields
6507	// with empty values are omitted from API requests. However, any field
6508	// with an empty value appearing in NullFields will be sent to the
6509	// server as null. It is an error if a field in this list has a
6510	// non-empty value. This may be used to include null fields in Patch
6511	// requests.
6512	NullFields []string `json:"-"`
6513}
6514
6515func (s *OrdersReturnRefundLineItemResponse) MarshalJSON() ([]byte, error) {
6516	type NoMethod OrdersReturnRefundLineItemResponse
6517	raw := NoMethod(*s)
6518	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6519}
6520
6521type OrdersSetLineItemMetadataRequest struct {
6522	Annotations []*OrderMerchantProvidedAnnotation `json:"annotations,omitempty"`
6523
6524	// LineItemId: The ID of the line item to set metadata. Either
6525	// lineItemId or productId is required.
6526	LineItemId string `json:"lineItemId,omitempty"`
6527
6528	// OperationId: The ID of the operation. Unique across all operations
6529	// for a given order.
6530	OperationId string `json:"operationId,omitempty"`
6531
6532	// ProductId: The ID of the product to set metadata. This is the REST ID
6533	// used in the products service. Either lineItemId or productId is
6534	// required.
6535	ProductId string `json:"productId,omitempty"`
6536
6537	// ForceSendFields is a list of field names (e.g. "Annotations") to
6538	// unconditionally include in API requests. By default, fields with
6539	// empty values are omitted from API requests. However, any non-pointer,
6540	// non-interface field appearing in ForceSendFields will be sent to the
6541	// server regardless of whether the field is empty or not. This may be
6542	// used to include empty fields in Patch requests.
6543	ForceSendFields []string `json:"-"`
6544
6545	// NullFields is a list of field names (e.g. "Annotations") to include
6546	// in API requests with the JSON null value. By default, fields with
6547	// empty values are omitted from API requests. However, any field with
6548	// an empty value appearing in NullFields will be sent to the server as
6549	// null. It is an error if a field in this list has a non-empty value.
6550	// This may be used to include null fields in Patch requests.
6551	NullFields []string `json:"-"`
6552}
6553
6554func (s *OrdersSetLineItemMetadataRequest) MarshalJSON() ([]byte, error) {
6555	type NoMethod OrdersSetLineItemMetadataRequest
6556	raw := NoMethod(*s)
6557	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6558}
6559
6560type OrdersSetLineItemMetadataResponse struct {
6561	// ExecutionStatus: The status of the execution.
6562	ExecutionStatus string `json:"executionStatus,omitempty"`
6563
6564	// Kind: Identifies what kind of resource this is. Value: the fixed
6565	// string "content#ordersSetLineItemMetadataResponse".
6566	Kind string `json:"kind,omitempty"`
6567
6568	// ServerResponse contains the HTTP response code and headers from the
6569	// server.
6570	googleapi.ServerResponse `json:"-"`
6571
6572	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
6573	// unconditionally include in API requests. By default, fields with
6574	// empty values are omitted from API requests. However, any non-pointer,
6575	// non-interface field appearing in ForceSendFields will be sent to the
6576	// server regardless of whether the field is empty or not. This may be
6577	// used to include empty fields in Patch requests.
6578	ForceSendFields []string `json:"-"`
6579
6580	// NullFields is a list of field names (e.g. "ExecutionStatus") to
6581	// include in API requests with the JSON null value. By default, fields
6582	// with empty values are omitted from API requests. However, any field
6583	// with an empty value appearing in NullFields will be sent to the
6584	// server as null. It is an error if a field in this list has a
6585	// non-empty value. This may be used to include null fields in Patch
6586	// requests.
6587	NullFields []string `json:"-"`
6588}
6589
6590func (s *OrdersSetLineItemMetadataResponse) MarshalJSON() ([]byte, error) {
6591	type NoMethod OrdersSetLineItemMetadataResponse
6592	raw := NoMethod(*s)
6593	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6594}
6595
6596type OrdersShipLineItemsRequest struct {
6597	// LineItems: Line items to ship.
6598	LineItems []*OrderShipmentLineItemShipment `json:"lineItems,omitempty"`
6599
6600	// OperationId: The ID of the operation. Unique across all operations
6601	// for a given order.
6602	OperationId string `json:"operationId,omitempty"`
6603
6604	// ShipmentGroupId: ID of the shipment group. Required for orders that
6605	// use the orderinvoices service.
6606	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
6607
6608	// ShipmentInfos: Shipment information. This field is repeated because a
6609	// single line item can be shipped in several packages (and have several
6610	// tracking IDs).
6611	ShipmentInfos []*OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo `json:"shipmentInfos,omitempty"`
6612
6613	// ForceSendFields is a list of field names (e.g. "LineItems") to
6614	// unconditionally include in API requests. By default, fields with
6615	// empty values are omitted from API requests. However, any non-pointer,
6616	// non-interface field appearing in ForceSendFields will be sent to the
6617	// server regardless of whether the field is empty or not. This may be
6618	// used to include empty fields in Patch requests.
6619	ForceSendFields []string `json:"-"`
6620
6621	// NullFields is a list of field names (e.g. "LineItems") to include in
6622	// API requests with the JSON null value. By default, fields with empty
6623	// values are omitted from API requests. However, any field with an
6624	// empty value appearing in NullFields will be sent to the server as
6625	// null. It is an error if a field in this list has a non-empty value.
6626	// This may be used to include null fields in Patch requests.
6627	NullFields []string `json:"-"`
6628}
6629
6630func (s *OrdersShipLineItemsRequest) MarshalJSON() ([]byte, error) {
6631	type NoMethod OrdersShipLineItemsRequest
6632	raw := NoMethod(*s)
6633	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6634}
6635
6636type OrdersShipLineItemsResponse struct {
6637	// ExecutionStatus: The status of the execution.
6638	ExecutionStatus string `json:"executionStatus,omitempty"`
6639
6640	// Kind: Identifies what kind of resource this is. Value: the fixed
6641	// string "content#ordersShipLineItemsResponse".
6642	Kind string `json:"kind,omitempty"`
6643
6644	// ServerResponse contains the HTTP response code and headers from the
6645	// server.
6646	googleapi.ServerResponse `json:"-"`
6647
6648	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
6649	// unconditionally include in API requests. By default, fields with
6650	// empty values are omitted from API requests. However, any non-pointer,
6651	// non-interface field appearing in ForceSendFields will be sent to the
6652	// server regardless of whether the field is empty or not. This may be
6653	// used to include empty fields in Patch requests.
6654	ForceSendFields []string `json:"-"`
6655
6656	// NullFields is a list of field names (e.g. "ExecutionStatus") to
6657	// include in API requests with the JSON null value. By default, fields
6658	// with empty values are omitted from API requests. However, any field
6659	// with an empty value appearing in NullFields will be sent to the
6660	// server as null. It is an error if a field in this list has a
6661	// non-empty value. This may be used to include null fields in Patch
6662	// requests.
6663	NullFields []string `json:"-"`
6664}
6665
6666func (s *OrdersShipLineItemsResponse) MarshalJSON() ([]byte, error) {
6667	type NoMethod OrdersShipLineItemsResponse
6668	raw := NoMethod(*s)
6669	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6670}
6671
6672type OrdersUpdateLineItemShippingDetailsRequest struct {
6673	// DeliverByDate: Updated delivery by date, in ISO 8601 format. If not
6674	// specified only ship by date is updated.
6675	//
6676	// Provided date should be within 1 year timeframe and can not be a date
6677	// in the past.
6678	DeliverByDate string `json:"deliverByDate,omitempty"`
6679
6680	// LineItemId: The ID of the line item to set metadata. Either
6681	// lineItemId or productId is required.
6682	LineItemId string `json:"lineItemId,omitempty"`
6683
6684	// OperationId: The ID of the operation. Unique across all operations
6685	// for a given order.
6686	OperationId string `json:"operationId,omitempty"`
6687
6688	// ProductId: The ID of the product to set metadata. This is the REST ID
6689	// used in the products service. Either lineItemId or productId is
6690	// required.
6691	ProductId string `json:"productId,omitempty"`
6692
6693	// ShipByDate: Updated ship by date, in ISO 8601 format. If not
6694	// specified only deliver by date is updated.
6695	//
6696	// Provided date should be within 1 year timeframe and can not be a date
6697	// in the past.
6698	ShipByDate string `json:"shipByDate,omitempty"`
6699
6700	// ForceSendFields is a list of field names (e.g. "DeliverByDate") to
6701	// unconditionally include in API requests. By default, fields with
6702	// empty values are omitted from API requests. However, any non-pointer,
6703	// non-interface field appearing in ForceSendFields will be sent to the
6704	// server regardless of whether the field is empty or not. This may be
6705	// used to include empty fields in Patch requests.
6706	ForceSendFields []string `json:"-"`
6707
6708	// NullFields is a list of field names (e.g. "DeliverByDate") to include
6709	// in API requests with the JSON null value. By default, fields with
6710	// empty values are omitted from API requests. However, any field with
6711	// an empty value appearing in NullFields will be sent to the server as
6712	// null. It is an error if a field in this list has a non-empty value.
6713	// This may be used to include null fields in Patch requests.
6714	NullFields []string `json:"-"`
6715}
6716
6717func (s *OrdersUpdateLineItemShippingDetailsRequest) MarshalJSON() ([]byte, error) {
6718	type NoMethod OrdersUpdateLineItemShippingDetailsRequest
6719	raw := NoMethod(*s)
6720	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6721}
6722
6723type OrdersUpdateLineItemShippingDetailsResponse struct {
6724	// ExecutionStatus: The status of the execution.
6725	ExecutionStatus string `json:"executionStatus,omitempty"`
6726
6727	// Kind: Identifies what kind of resource this is. Value: the fixed
6728	// string "content#ordersUpdateLineItemShippingDetailsResponse".
6729	Kind string `json:"kind,omitempty"`
6730
6731	// ServerResponse contains the HTTP response code and headers from the
6732	// server.
6733	googleapi.ServerResponse `json:"-"`
6734
6735	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
6736	// unconditionally include in API requests. By default, fields with
6737	// empty values are omitted from API requests. However, any non-pointer,
6738	// non-interface field appearing in ForceSendFields will be sent to the
6739	// server regardless of whether the field is empty or not. This may be
6740	// used to include empty fields in Patch requests.
6741	ForceSendFields []string `json:"-"`
6742
6743	// NullFields is a list of field names (e.g. "ExecutionStatus") to
6744	// include in API requests with the JSON null value. By default, fields
6745	// with empty values are omitted from API requests. However, any field
6746	// with an empty value appearing in NullFields will be sent to the
6747	// server as null. It is an error if a field in this list has a
6748	// non-empty value. This may be used to include null fields in Patch
6749	// requests.
6750	NullFields []string `json:"-"`
6751}
6752
6753func (s *OrdersUpdateLineItemShippingDetailsResponse) MarshalJSON() ([]byte, error) {
6754	type NoMethod OrdersUpdateLineItemShippingDetailsResponse
6755	raw := NoMethod(*s)
6756	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6757}
6758
6759type OrdersUpdateMerchantOrderIdRequest struct {
6760	// MerchantOrderId: The merchant order id to be assigned to the order.
6761	// Must be unique per merchant.
6762	MerchantOrderId string `json:"merchantOrderId,omitempty"`
6763
6764	// OperationId: The ID of the operation. Unique across all operations
6765	// for a given order.
6766	OperationId string `json:"operationId,omitempty"`
6767
6768	// ForceSendFields is a list of field names (e.g. "MerchantOrderId") to
6769	// unconditionally include in API requests. By default, fields with
6770	// empty values are omitted from API requests. However, any non-pointer,
6771	// non-interface field appearing in ForceSendFields will be sent to the
6772	// server regardless of whether the field is empty or not. This may be
6773	// used to include empty fields in Patch requests.
6774	ForceSendFields []string `json:"-"`
6775
6776	// NullFields is a list of field names (e.g. "MerchantOrderId") to
6777	// include in API requests with the JSON null value. By default, fields
6778	// with empty values are omitted from API requests. However, any field
6779	// with an empty value appearing in NullFields will be sent to the
6780	// server as null. It is an error if a field in this list has a
6781	// non-empty value. This may be used to include null fields in Patch
6782	// requests.
6783	NullFields []string `json:"-"`
6784}
6785
6786func (s *OrdersUpdateMerchantOrderIdRequest) MarshalJSON() ([]byte, error) {
6787	type NoMethod OrdersUpdateMerchantOrderIdRequest
6788	raw := NoMethod(*s)
6789	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6790}
6791
6792type OrdersUpdateMerchantOrderIdResponse struct {
6793	// ExecutionStatus: The status of the execution.
6794	ExecutionStatus string `json:"executionStatus,omitempty"`
6795
6796	// Kind: Identifies what kind of resource this is. Value: the fixed
6797	// string "content#ordersUpdateMerchantOrderIdResponse".
6798	Kind string `json:"kind,omitempty"`
6799
6800	// ServerResponse contains the HTTP response code and headers from the
6801	// server.
6802	googleapi.ServerResponse `json:"-"`
6803
6804	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
6805	// unconditionally include in API requests. By default, fields with
6806	// empty values are omitted from API requests. However, any non-pointer,
6807	// non-interface field appearing in ForceSendFields will be sent to the
6808	// server regardless of whether the field is empty or not. This may be
6809	// used to include empty fields in Patch requests.
6810	ForceSendFields []string `json:"-"`
6811
6812	// NullFields is a list of field names (e.g. "ExecutionStatus") to
6813	// include in API requests with the JSON null value. By default, fields
6814	// with empty values are omitted from API requests. However, any field
6815	// with an empty value appearing in NullFields will be sent to the
6816	// server as null. It is an error if a field in this list has a
6817	// non-empty value. This may be used to include null fields in Patch
6818	// requests.
6819	NullFields []string `json:"-"`
6820}
6821
6822func (s *OrdersUpdateMerchantOrderIdResponse) MarshalJSON() ([]byte, error) {
6823	type NoMethod OrdersUpdateMerchantOrderIdResponse
6824	raw := NoMethod(*s)
6825	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6826}
6827
6828type OrdersUpdateShipmentRequest struct {
6829	// Carrier: The carrier handling the shipment. Not updated if missing.
6830	// See shipments[].carrier in the  Orders resource representation for a
6831	// list of acceptable values.
6832	Carrier string `json:"carrier,omitempty"`
6833
6834	// DeliveryDate: Date on which the shipment has been delivered, in ISO
6835	// 8601 format. Optional and can be provided only if status is
6836	// delivered.
6837	DeliveryDate string `json:"deliveryDate,omitempty"`
6838
6839	// OperationId: The ID of the operation. Unique across all operations
6840	// for a given order.
6841	OperationId string `json:"operationId,omitempty"`
6842
6843	// ShipmentId: The ID of the shipment.
6844	ShipmentId string `json:"shipmentId,omitempty"`
6845
6846	// Status: New status for the shipment. Not updated if missing.
6847	Status string `json:"status,omitempty"`
6848
6849	// TrackingId: The tracking ID for the shipment. Not updated if missing.
6850	TrackingId string `json:"trackingId,omitempty"`
6851
6852	// ForceSendFields is a list of field names (e.g. "Carrier") to
6853	// unconditionally include in API requests. By default, fields with
6854	// empty values are omitted from API requests. However, any non-pointer,
6855	// non-interface field appearing in ForceSendFields will be sent to the
6856	// server regardless of whether the field is empty or not. This may be
6857	// used to include empty fields in Patch requests.
6858	ForceSendFields []string `json:"-"`
6859
6860	// NullFields is a list of field names (e.g. "Carrier") to include in
6861	// API requests with the JSON null value. By default, fields with empty
6862	// values are omitted from API requests. However, any field with an
6863	// empty value appearing in NullFields will be sent to the server as
6864	// null. It is an error if a field in this list has a non-empty value.
6865	// This may be used to include null fields in Patch requests.
6866	NullFields []string `json:"-"`
6867}
6868
6869func (s *OrdersUpdateShipmentRequest) MarshalJSON() ([]byte, error) {
6870	type NoMethod OrdersUpdateShipmentRequest
6871	raw := NoMethod(*s)
6872	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6873}
6874
6875type OrdersUpdateShipmentResponse struct {
6876	// ExecutionStatus: The status of the execution.
6877	ExecutionStatus string `json:"executionStatus,omitempty"`
6878
6879	// Kind: Identifies what kind of resource this is. Value: the fixed
6880	// string "content#ordersUpdateShipmentResponse".
6881	Kind string `json:"kind,omitempty"`
6882
6883	// ServerResponse contains the HTTP response code and headers from the
6884	// server.
6885	googleapi.ServerResponse `json:"-"`
6886
6887	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
6888	// unconditionally include in API requests. By default, fields with
6889	// empty values are omitted from API requests. However, any non-pointer,
6890	// non-interface field appearing in ForceSendFields will be sent to the
6891	// server regardless of whether the field is empty or not. This may be
6892	// used to include empty fields in Patch requests.
6893	ForceSendFields []string `json:"-"`
6894
6895	// NullFields is a list of field names (e.g. "ExecutionStatus") to
6896	// include in API requests with the JSON null value. By default, fields
6897	// with empty values are omitted from API requests. However, any field
6898	// with an empty value appearing in NullFields will be sent to the
6899	// server as null. It is an error if a field in this list has a
6900	// non-empty value. This may be used to include null fields in Patch
6901	// requests.
6902	NullFields []string `json:"-"`
6903}
6904
6905func (s *OrdersUpdateShipmentResponse) MarshalJSON() ([]byte, error) {
6906	type NoMethod OrdersUpdateShipmentResponse
6907	raw := NoMethod(*s)
6908	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6909}
6910
6911type PickupCarrierService struct {
6912	// CarrierName: The name of the pickup carrier (e.g., "UPS"). Required.
6913	CarrierName string `json:"carrierName,omitempty"`
6914
6915	// ServiceName: The name of the pickup service (e.g., "Access point").
6916	// Required.
6917	ServiceName string `json:"serviceName,omitempty"`
6918
6919	// ForceSendFields is a list of field names (e.g. "CarrierName") to
6920	// unconditionally include in API requests. By default, fields with
6921	// empty values are omitted from API requests. However, any non-pointer,
6922	// non-interface field appearing in ForceSendFields will be sent to the
6923	// server regardless of whether the field is empty or not. This may be
6924	// used to include empty fields in Patch requests.
6925	ForceSendFields []string `json:"-"`
6926
6927	// NullFields is a list of field names (e.g. "CarrierName") to include
6928	// in API requests with the JSON null value. By default, fields with
6929	// empty values are omitted from API requests. However, any field with
6930	// an empty value appearing in NullFields will be sent to the server as
6931	// null. It is an error if a field in this list has a non-empty value.
6932	// This may be used to include null fields in Patch requests.
6933	NullFields []string `json:"-"`
6934}
6935
6936func (s *PickupCarrierService) MarshalJSON() ([]byte, error) {
6937	type NoMethod PickupCarrierService
6938	raw := NoMethod(*s)
6939	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6940}
6941
6942type PickupServicesPickupService struct {
6943	// CarrierName: The name of the carrier (e.g., "UPS"). Always present.
6944	CarrierName string `json:"carrierName,omitempty"`
6945
6946	// Country: The CLDR country code of the carrier (e.g., "US"). Always
6947	// present.
6948	Country string `json:"country,omitempty"`
6949
6950	// ServiceName: The name of the pickup service (e.g., "Access point").
6951	// Always present.
6952	ServiceName string `json:"serviceName,omitempty"`
6953
6954	// ForceSendFields is a list of field names (e.g. "CarrierName") to
6955	// unconditionally include in API requests. By default, fields with
6956	// empty values are omitted from API requests. However, any non-pointer,
6957	// non-interface field appearing in ForceSendFields will be sent to the
6958	// server regardless of whether the field is empty or not. This may be
6959	// used to include empty fields in Patch requests.
6960	ForceSendFields []string `json:"-"`
6961
6962	// NullFields is a list of field names (e.g. "CarrierName") to include
6963	// in API requests with the JSON null value. By default, fields with
6964	// empty values are omitted from API requests. However, any field with
6965	// an empty value appearing in NullFields will be sent to the server as
6966	// null. It is an error if a field in this list has a non-empty value.
6967	// This may be used to include null fields in Patch requests.
6968	NullFields []string `json:"-"`
6969}
6970
6971func (s *PickupServicesPickupService) MarshalJSON() ([]byte, error) {
6972	type NoMethod PickupServicesPickupService
6973	raw := NoMethod(*s)
6974	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6975}
6976
6977type PosCustomBatchRequest struct {
6978	// Entries: The request entries to be processed in the batch.
6979	Entries []*PosCustomBatchRequestEntry `json:"entries,omitempty"`
6980
6981	// ForceSendFields is a list of field names (e.g. "Entries") 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. "Entries") to include in
6990	// API requests with the JSON null value. By default, fields with empty
6991	// values are omitted from API requests. However, any field with an
6992	// 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 *PosCustomBatchRequest) MarshalJSON() ([]byte, error) {
6999	type NoMethod PosCustomBatchRequest
7000	raw := NoMethod(*s)
7001	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7002}
7003
7004type PosCustomBatchRequestEntry struct {
7005	// BatchId: An entry ID, unique within the batch request.
7006	BatchId int64 `json:"batchId,omitempty"`
7007
7008	// Inventory: The inventory to submit. Set this only if the method is
7009	// inventory.
7010	Inventory *PosInventory `json:"inventory,omitempty"`
7011
7012	// MerchantId: The ID of the POS data provider.
7013	MerchantId uint64 `json:"merchantId,omitempty,string"`
7014
7015	Method string `json:"method,omitempty"`
7016
7017	// Sale: The sale information to submit. Set this only if the method is
7018	// sale.
7019	Sale *PosSale `json:"sale,omitempty"`
7020
7021	// Store: The store information to submit. Set this only if the method
7022	// is insert.
7023	Store *PosStore `json:"store,omitempty"`
7024
7025	// StoreCode: The store code. Set this only if the method is delete or
7026	// get.
7027	StoreCode string `json:"storeCode,omitempty"`
7028
7029	// TargetMerchantId: The ID of the account for which to get/submit data.
7030	TargetMerchantId uint64 `json:"targetMerchantId,omitempty,string"`
7031
7032	// ForceSendFields is a list of field names (e.g. "BatchId") to
7033	// unconditionally include in API requests. By default, fields with
7034	// empty values are omitted from API requests. However, any non-pointer,
7035	// non-interface field appearing in ForceSendFields will be sent to the
7036	// server regardless of whether the field is empty or not. This may be
7037	// used to include empty fields in Patch requests.
7038	ForceSendFields []string `json:"-"`
7039
7040	// NullFields is a list of field names (e.g. "BatchId") to include in
7041	// API requests with the JSON null value. By default, fields with empty
7042	// values are omitted from API requests. However, any field with an
7043	// empty value appearing in NullFields will be sent to the server as
7044	// null. It is an error if a field in this list has a non-empty value.
7045	// This may be used to include null fields in Patch requests.
7046	NullFields []string `json:"-"`
7047}
7048
7049func (s *PosCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
7050	type NoMethod PosCustomBatchRequestEntry
7051	raw := NoMethod(*s)
7052	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7053}
7054
7055type PosCustomBatchResponse struct {
7056	// Entries: The result of the execution of the batch requests.
7057	Entries []*PosCustomBatchResponseEntry `json:"entries,omitempty"`
7058
7059	// Kind: Identifies what kind of resource this is. Value: the fixed
7060	// string "content#posCustomBatchResponse".
7061	Kind string `json:"kind,omitempty"`
7062
7063	// ServerResponse contains the HTTP response code and headers from the
7064	// server.
7065	googleapi.ServerResponse `json:"-"`
7066
7067	// ForceSendFields is a list of field names (e.g. "Entries") to
7068	// unconditionally include in API requests. By default, fields with
7069	// empty values are omitted from API requests. However, any non-pointer,
7070	// non-interface field appearing in ForceSendFields will be sent to the
7071	// server regardless of whether the field is empty or not. This may be
7072	// used to include empty fields in Patch requests.
7073	ForceSendFields []string `json:"-"`
7074
7075	// NullFields is a list of field names (e.g. "Entries") to include in
7076	// API requests with the JSON null value. By default, fields with empty
7077	// values are omitted from API requests. However, any field with an
7078	// empty value appearing in NullFields will be sent to the server as
7079	// null. It is an error if a field in this list has a non-empty value.
7080	// This may be used to include null fields in Patch requests.
7081	NullFields []string `json:"-"`
7082}
7083
7084func (s *PosCustomBatchResponse) MarshalJSON() ([]byte, error) {
7085	type NoMethod PosCustomBatchResponse
7086	raw := NoMethod(*s)
7087	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7088}
7089
7090type PosCustomBatchResponseEntry struct {
7091	// BatchId: The ID of the request entry to which this entry responds.
7092	BatchId int64 `json:"batchId,omitempty"`
7093
7094	// Errors: A list of errors defined if, and only if, the request failed.
7095	Errors *Errors `json:"errors,omitempty"`
7096
7097	// Inventory: The updated inventory information.
7098	Inventory *PosInventory `json:"inventory,omitempty"`
7099
7100	// Kind: Identifies what kind of resource this is. Value: the fixed
7101	// string "content#posCustomBatchResponseEntry".
7102	Kind string `json:"kind,omitempty"`
7103
7104	// Sale: The updated sale information.
7105	Sale *PosSale `json:"sale,omitempty"`
7106
7107	// Store: The retrieved or updated store information.
7108	Store *PosStore `json:"store,omitempty"`
7109
7110	// ForceSendFields is a list of field names (e.g. "BatchId") to
7111	// unconditionally include in API requests. By default, fields with
7112	// empty values are omitted from API requests. However, any non-pointer,
7113	// non-interface field appearing in ForceSendFields will be sent to the
7114	// server regardless of whether the field is empty or not. This may be
7115	// used to include empty fields in Patch requests.
7116	ForceSendFields []string `json:"-"`
7117
7118	// NullFields is a list of field names (e.g. "BatchId") to include in
7119	// API requests with the JSON null value. By default, fields with empty
7120	// values are omitted from API requests. However, any field with an
7121	// empty value appearing in NullFields will be sent to the server as
7122	// null. It is an error if a field in this list has a non-empty value.
7123	// This may be used to include null fields in Patch requests.
7124	NullFields []string `json:"-"`
7125}
7126
7127func (s *PosCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
7128	type NoMethod PosCustomBatchResponseEntry
7129	raw := NoMethod(*s)
7130	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7131}
7132
7133type PosDataProviders struct {
7134	// Country: Country code.
7135	Country string `json:"country,omitempty"`
7136
7137	// PosDataProviders: A list of POS data providers.
7138	PosDataProviders []*PosDataProvidersPosDataProvider `json:"posDataProviders,omitempty"`
7139
7140	// ForceSendFields is a list of field names (e.g. "Country") to
7141	// unconditionally include in API requests. By default, fields with
7142	// empty values are omitted from API requests. However, any non-pointer,
7143	// non-interface field appearing in ForceSendFields will be sent to the
7144	// server regardless of whether the field is empty or not. This may be
7145	// used to include empty fields in Patch requests.
7146	ForceSendFields []string `json:"-"`
7147
7148	// NullFields is a list of field names (e.g. "Country") to include in
7149	// API requests with the JSON null value. By default, fields with empty
7150	// values are omitted from API requests. However, any field with an
7151	// empty value appearing in NullFields will be sent to the server as
7152	// null. It is an error if a field in this list has a non-empty value.
7153	// This may be used to include null fields in Patch requests.
7154	NullFields []string `json:"-"`
7155}
7156
7157func (s *PosDataProviders) MarshalJSON() ([]byte, error) {
7158	type NoMethod PosDataProviders
7159	raw := NoMethod(*s)
7160	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7161}
7162
7163type PosDataProvidersPosDataProvider struct {
7164	// DisplayName: The display name of Pos data Provider.
7165	DisplayName string `json:"displayName,omitempty"`
7166
7167	// FullName: The full name of this POS data Provider.
7168	FullName string `json:"fullName,omitempty"`
7169
7170	// ProviderId: The ID of the account.
7171	ProviderId uint64 `json:"providerId,omitempty,string"`
7172
7173	// ForceSendFields is a list of field names (e.g. "DisplayName") to
7174	// unconditionally include in API requests. By default, fields with
7175	// empty values are omitted from API requests. However, any non-pointer,
7176	// non-interface field appearing in ForceSendFields will be sent to the
7177	// server regardless of whether the field is empty or not. This may be
7178	// used to include empty fields in Patch requests.
7179	ForceSendFields []string `json:"-"`
7180
7181	// NullFields is a list of field names (e.g. "DisplayName") to include
7182	// in API requests with the JSON null value. By default, fields with
7183	// empty values are omitted from API requests. However, any field with
7184	// an empty value appearing in NullFields will be sent to the server as
7185	// null. It is an error if a field in this list has a non-empty value.
7186	// This may be used to include null fields in Patch requests.
7187	NullFields []string `json:"-"`
7188}
7189
7190func (s *PosDataProvidersPosDataProvider) MarshalJSON() ([]byte, error) {
7191	type NoMethod PosDataProvidersPosDataProvider
7192	raw := NoMethod(*s)
7193	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7194}
7195
7196// PosInventory: The absolute quantity of an item available at the given
7197// store.
7198type PosInventory struct {
7199	// ContentLanguage: The two-letter ISO 639-1 language code for the item.
7200	ContentLanguage string `json:"contentLanguage,omitempty"`
7201
7202	// Gtin: Global Trade Item Number.
7203	Gtin string `json:"gtin,omitempty"`
7204
7205	// ItemId: A unique identifier for the item.
7206	ItemId string `json:"itemId,omitempty"`
7207
7208	// Kind: Identifies what kind of resource this is. Value: the fixed
7209	// string "content#posInventory".
7210	Kind string `json:"kind,omitempty"`
7211
7212	// Price: The current price of the item.
7213	Price *Price `json:"price,omitempty"`
7214
7215	// Quantity: The available quantity of the item.
7216	Quantity int64 `json:"quantity,omitempty,string"`
7217
7218	// StoreCode: The identifier of the merchant's store. Either a storeCode
7219	// inserted via the API or the code of the store in Google My Business.
7220	StoreCode string `json:"storeCode,omitempty"`
7221
7222	// TargetCountry: The CLDR territory code for the item.
7223	TargetCountry string `json:"targetCountry,omitempty"`
7224
7225	// Timestamp: The inventory timestamp, in ISO 8601 format.
7226	Timestamp string `json:"timestamp,omitempty"`
7227
7228	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
7229	// unconditionally include in API requests. By default, fields with
7230	// empty values are omitted from API requests. However, any non-pointer,
7231	// non-interface field appearing in ForceSendFields will be sent to the
7232	// server regardless of whether the field is empty or not. This may be
7233	// used to include empty fields in Patch requests.
7234	ForceSendFields []string `json:"-"`
7235
7236	// NullFields is a list of field names (e.g. "ContentLanguage") to
7237	// include in API requests with the JSON null value. By default, fields
7238	// with empty values are omitted from API requests. However, any field
7239	// with an empty value appearing in NullFields will be sent to the
7240	// server as null. It is an error if a field in this list has a
7241	// non-empty value. This may be used to include null fields in Patch
7242	// requests.
7243	NullFields []string `json:"-"`
7244}
7245
7246func (s *PosInventory) MarshalJSON() ([]byte, error) {
7247	type NoMethod PosInventory
7248	raw := NoMethod(*s)
7249	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7250}
7251
7252type PosInventoryRequest struct {
7253	// ContentLanguage: The two-letter ISO 639-1 language code for the item.
7254	ContentLanguage string `json:"contentLanguage,omitempty"`
7255
7256	// Gtin: Global Trade Item Number.
7257	Gtin string `json:"gtin,omitempty"`
7258
7259	// ItemId: A unique identifier for the item.
7260	ItemId string `json:"itemId,omitempty"`
7261
7262	// Price: The current price of the item.
7263	Price *Price `json:"price,omitempty"`
7264
7265	// Quantity: The available quantity of the item.
7266	Quantity int64 `json:"quantity,omitempty,string"`
7267
7268	// StoreCode: The identifier of the merchant's store. Either a storeCode
7269	// inserted via the API or the code of the store in Google My Business.
7270	StoreCode string `json:"storeCode,omitempty"`
7271
7272	// TargetCountry: The CLDR territory code for the item.
7273	TargetCountry string `json:"targetCountry,omitempty"`
7274
7275	// Timestamp: The inventory timestamp, in ISO 8601 format.
7276	Timestamp string `json:"timestamp,omitempty"`
7277
7278	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
7279	// unconditionally include in API requests. By default, fields with
7280	// empty values are omitted from API requests. However, any non-pointer,
7281	// non-interface field appearing in ForceSendFields will be sent to the
7282	// server regardless of whether the field is empty or not. This may be
7283	// used to include empty fields in Patch requests.
7284	ForceSendFields []string `json:"-"`
7285
7286	// NullFields is a list of field names (e.g. "ContentLanguage") to
7287	// include in API requests with the JSON null value. By default, fields
7288	// with empty values are omitted from API requests. However, any field
7289	// with an empty value appearing in NullFields will be sent to the
7290	// server as null. It is an error if a field in this list has a
7291	// non-empty value. This may be used to include null fields in Patch
7292	// requests.
7293	NullFields []string `json:"-"`
7294}
7295
7296func (s *PosInventoryRequest) MarshalJSON() ([]byte, error) {
7297	type NoMethod PosInventoryRequest
7298	raw := NoMethod(*s)
7299	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7300}
7301
7302type PosInventoryResponse struct {
7303	// ContentLanguage: The two-letter ISO 639-1 language code for the item.
7304	ContentLanguage string `json:"contentLanguage,omitempty"`
7305
7306	// Gtin: Global Trade Item Number.
7307	Gtin string `json:"gtin,omitempty"`
7308
7309	// ItemId: A unique identifier for the item.
7310	ItemId string `json:"itemId,omitempty"`
7311
7312	// Kind: Identifies what kind of resource this is. Value: the fixed
7313	// string "content#posInventoryResponse".
7314	Kind string `json:"kind,omitempty"`
7315
7316	// Price: The current price of the item.
7317	Price *Price `json:"price,omitempty"`
7318
7319	// Quantity: The available quantity of the item.
7320	Quantity int64 `json:"quantity,omitempty,string"`
7321
7322	// StoreCode: The identifier of the merchant's store. Either a storeCode
7323	// inserted via the API or the code of the store in Google My Business.
7324	StoreCode string `json:"storeCode,omitempty"`
7325
7326	// TargetCountry: The CLDR territory code for the item.
7327	TargetCountry string `json:"targetCountry,omitempty"`
7328
7329	// Timestamp: The inventory timestamp, in ISO 8601 format.
7330	Timestamp string `json:"timestamp,omitempty"`
7331
7332	// ServerResponse contains the HTTP response code and headers from the
7333	// server.
7334	googleapi.ServerResponse `json:"-"`
7335
7336	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
7337	// unconditionally include in API requests. By default, fields with
7338	// empty values are omitted from API requests. However, any non-pointer,
7339	// non-interface field appearing in ForceSendFields will be sent to the
7340	// server regardless of whether the field is empty or not. This may be
7341	// used to include empty fields in Patch requests.
7342	ForceSendFields []string `json:"-"`
7343
7344	// NullFields is a list of field names (e.g. "ContentLanguage") to
7345	// include in API requests with the JSON null value. By default, fields
7346	// with empty values are omitted from API requests. However, any field
7347	// with an empty value appearing in NullFields will be sent to the
7348	// server as null. It is an error if a field in this list has a
7349	// non-empty value. This may be used to include null fields in Patch
7350	// requests.
7351	NullFields []string `json:"-"`
7352}
7353
7354func (s *PosInventoryResponse) MarshalJSON() ([]byte, error) {
7355	type NoMethod PosInventoryResponse
7356	raw := NoMethod(*s)
7357	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7358}
7359
7360type PosListResponse struct {
7361	// Kind: Identifies what kind of resource this is. Value: the fixed
7362	// string "content#posListResponse".
7363	Kind string `json:"kind,omitempty"`
7364
7365	Resources []*PosStore `json:"resources,omitempty"`
7366
7367	// ServerResponse contains the HTTP response code and headers from the
7368	// server.
7369	googleapi.ServerResponse `json:"-"`
7370
7371	// ForceSendFields is a list of field names (e.g. "Kind") to
7372	// unconditionally include in API requests. By default, fields with
7373	// empty values are omitted from API requests. However, any non-pointer,
7374	// non-interface field appearing in ForceSendFields will be sent to the
7375	// server regardless of whether the field is empty or not. This may be
7376	// used to include empty fields in Patch requests.
7377	ForceSendFields []string `json:"-"`
7378
7379	// NullFields is a list of field names (e.g. "Kind") to include in API
7380	// requests with the JSON null value. By default, fields with empty
7381	// values are omitted from API requests. However, any field with an
7382	// empty value appearing in NullFields will be sent to the server as
7383	// null. It is an error if a field in this list has a non-empty value.
7384	// This may be used to include null fields in Patch requests.
7385	NullFields []string `json:"-"`
7386}
7387
7388func (s *PosListResponse) MarshalJSON() ([]byte, error) {
7389	type NoMethod PosListResponse
7390	raw := NoMethod(*s)
7391	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7392}
7393
7394// PosSale: The change of the available quantity of an item at the given
7395// store.
7396type PosSale struct {
7397	// ContentLanguage: The two-letter ISO 639-1 language code for the item.
7398	ContentLanguage string `json:"contentLanguage,omitempty"`
7399
7400	// Gtin: Global Trade Item Number.
7401	Gtin string `json:"gtin,omitempty"`
7402
7403	// ItemId: A unique identifier for the item.
7404	ItemId string `json:"itemId,omitempty"`
7405
7406	// Kind: Identifies what kind of resource this is. Value: the fixed
7407	// string "content#posSale".
7408	Kind string `json:"kind,omitempty"`
7409
7410	// Price: The price of the item.
7411	Price *Price `json:"price,omitempty"`
7412
7413	// Quantity: The relative change of the available quantity. Negative for
7414	// items returned.
7415	Quantity int64 `json:"quantity,omitempty,string"`
7416
7417	// SaleId: A unique ID to group items from the same sale event.
7418	SaleId string `json:"saleId,omitempty"`
7419
7420	// StoreCode: The identifier of the merchant's store. Either a storeCode
7421	// inserted via the API or the code of the store in Google My Business.
7422	StoreCode string `json:"storeCode,omitempty"`
7423
7424	// TargetCountry: The CLDR territory code for the item.
7425	TargetCountry string `json:"targetCountry,omitempty"`
7426
7427	// Timestamp: The inventory timestamp, in ISO 8601 format.
7428	Timestamp string `json:"timestamp,omitempty"`
7429
7430	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
7431	// unconditionally include in API requests. By default, fields with
7432	// empty values are omitted from API requests. However, any non-pointer,
7433	// non-interface field appearing in ForceSendFields will be sent to the
7434	// server regardless of whether the field is empty or not. This may be
7435	// used to include empty fields in Patch requests.
7436	ForceSendFields []string `json:"-"`
7437
7438	// NullFields is a list of field names (e.g. "ContentLanguage") to
7439	// include in API requests with the JSON null value. By default, fields
7440	// with empty values are omitted from API requests. However, any field
7441	// with an empty value appearing in NullFields will be sent to the
7442	// server as null. It is an error if a field in this list has a
7443	// non-empty value. This may be used to include null fields in Patch
7444	// requests.
7445	NullFields []string `json:"-"`
7446}
7447
7448func (s *PosSale) MarshalJSON() ([]byte, error) {
7449	type NoMethod PosSale
7450	raw := NoMethod(*s)
7451	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7452}
7453
7454type PosSaleRequest struct {
7455	// ContentLanguage: The two-letter ISO 639-1 language code for the item.
7456	ContentLanguage string `json:"contentLanguage,omitempty"`
7457
7458	// Gtin: Global Trade Item Number.
7459	Gtin string `json:"gtin,omitempty"`
7460
7461	// ItemId: A unique identifier for the item.
7462	ItemId string `json:"itemId,omitempty"`
7463
7464	// Price: The price of the item.
7465	Price *Price `json:"price,omitempty"`
7466
7467	// Quantity: The relative change of the available quantity. Negative for
7468	// items returned.
7469	Quantity int64 `json:"quantity,omitempty,string"`
7470
7471	// SaleId: A unique ID to group items from the same sale event.
7472	SaleId string `json:"saleId,omitempty"`
7473
7474	// StoreCode: The identifier of the merchant's store. Either a storeCode
7475	// inserted via the API or the code of the store in Google My Business.
7476	StoreCode string `json:"storeCode,omitempty"`
7477
7478	// TargetCountry: The CLDR territory code for the item.
7479	TargetCountry string `json:"targetCountry,omitempty"`
7480
7481	// Timestamp: The inventory timestamp, in ISO 8601 format.
7482	Timestamp string `json:"timestamp,omitempty"`
7483
7484	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
7485	// unconditionally include in API requests. By default, fields with
7486	// empty values are omitted from API requests. However, any non-pointer,
7487	// non-interface field appearing in ForceSendFields will be sent to the
7488	// server regardless of whether the field is empty or not. This may be
7489	// used to include empty fields in Patch requests.
7490	ForceSendFields []string `json:"-"`
7491
7492	// NullFields is a list of field names (e.g. "ContentLanguage") to
7493	// include in API requests with the JSON null value. By default, fields
7494	// with empty values are omitted from API requests. However, any field
7495	// with an empty value appearing in NullFields will be sent to the
7496	// server as null. It is an error if a field in this list has a
7497	// non-empty value. This may be used to include null fields in Patch
7498	// requests.
7499	NullFields []string `json:"-"`
7500}
7501
7502func (s *PosSaleRequest) MarshalJSON() ([]byte, error) {
7503	type NoMethod PosSaleRequest
7504	raw := NoMethod(*s)
7505	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7506}
7507
7508type PosSaleResponse struct {
7509	// ContentLanguage: The two-letter ISO 639-1 language code for the item.
7510	ContentLanguage string `json:"contentLanguage,omitempty"`
7511
7512	// Gtin: Global Trade Item Number.
7513	Gtin string `json:"gtin,omitempty"`
7514
7515	// ItemId: A unique identifier for the item.
7516	ItemId string `json:"itemId,omitempty"`
7517
7518	// Kind: Identifies what kind of resource this is. Value: the fixed
7519	// string "content#posSaleResponse".
7520	Kind string `json:"kind,omitempty"`
7521
7522	// Price: The price of the item.
7523	Price *Price `json:"price,omitempty"`
7524
7525	// Quantity: The relative change of the available quantity. Negative for
7526	// items returned.
7527	Quantity int64 `json:"quantity,omitempty,string"`
7528
7529	// SaleId: A unique ID to group items from the same sale event.
7530	SaleId string `json:"saleId,omitempty"`
7531
7532	// StoreCode: The identifier of the merchant's store. Either a storeCode
7533	// inserted via the API or the code of the store in Google My Business.
7534	StoreCode string `json:"storeCode,omitempty"`
7535
7536	// TargetCountry: The CLDR territory code for the item.
7537	TargetCountry string `json:"targetCountry,omitempty"`
7538
7539	// Timestamp: The inventory timestamp, in ISO 8601 format.
7540	Timestamp string `json:"timestamp,omitempty"`
7541
7542	// ServerResponse contains the HTTP response code and headers from the
7543	// server.
7544	googleapi.ServerResponse `json:"-"`
7545
7546	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
7547	// unconditionally include in API requests. By default, fields with
7548	// empty values are omitted from API requests. However, any non-pointer,
7549	// non-interface field appearing in ForceSendFields will be sent to the
7550	// server regardless of whether the field is empty or not. This may be
7551	// used to include empty fields in Patch requests.
7552	ForceSendFields []string `json:"-"`
7553
7554	// NullFields is a list of field names (e.g. "ContentLanguage") to
7555	// include in API requests with the JSON null value. By default, fields
7556	// with empty values are omitted from API requests. However, any field
7557	// with an empty value appearing in NullFields will be sent to the
7558	// server as null. It is an error if a field in this list has a
7559	// non-empty value. This may be used to include null fields in Patch
7560	// requests.
7561	NullFields []string `json:"-"`
7562}
7563
7564func (s *PosSaleResponse) MarshalJSON() ([]byte, error) {
7565	type NoMethod PosSaleResponse
7566	raw := NoMethod(*s)
7567	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7568}
7569
7570// PosStore: Store resource.
7571type PosStore struct {
7572	// Kind: Identifies what kind of resource this is. Value: the fixed
7573	// string "content#posStore".
7574	Kind string `json:"kind,omitempty"`
7575
7576	// StoreAddress: The street address of the store.
7577	StoreAddress string `json:"storeAddress,omitempty"`
7578
7579	// StoreCode: A store identifier that is unique for the given merchant.
7580	StoreCode string `json:"storeCode,omitempty"`
7581
7582	// ServerResponse contains the HTTP response code and headers from the
7583	// server.
7584	googleapi.ServerResponse `json:"-"`
7585
7586	// ForceSendFields is a list of field names (e.g. "Kind") to
7587	// unconditionally include in API requests. By default, fields with
7588	// empty values are omitted from API requests. However, any non-pointer,
7589	// non-interface field appearing in ForceSendFields will be sent to the
7590	// server regardless of whether the field is empty or not. This may be
7591	// used to include empty fields in Patch requests.
7592	ForceSendFields []string `json:"-"`
7593
7594	// NullFields is a list of field names (e.g. "Kind") to include in API
7595	// requests with the JSON null value. By default, fields with empty
7596	// values are omitted from API requests. However, any field with an
7597	// empty value appearing in NullFields will be sent to the server as
7598	// null. It is an error if a field in this list has a non-empty value.
7599	// This may be used to include null fields in Patch requests.
7600	NullFields []string `json:"-"`
7601}
7602
7603func (s *PosStore) MarshalJSON() ([]byte, error) {
7604	type NoMethod PosStore
7605	raw := NoMethod(*s)
7606	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7607}
7608
7609type PostalCodeGroup struct {
7610	// Country: The CLDR territory code of the country the postal code group
7611	// applies to. Required.
7612	Country string `json:"country,omitempty"`
7613
7614	// Name: The name of the postal code group, referred to in headers.
7615	// Required.
7616	Name string `json:"name,omitempty"`
7617
7618	// PostalCodeRanges: A range of postal codes. Required.
7619	PostalCodeRanges []*PostalCodeRange `json:"postalCodeRanges,omitempty"`
7620
7621	// ForceSendFields is a list of field names (e.g. "Country") to
7622	// unconditionally include in API requests. By default, fields with
7623	// empty values are omitted from API requests. However, any non-pointer,
7624	// non-interface field appearing in ForceSendFields will be sent to the
7625	// server regardless of whether the field is empty or not. This may be
7626	// used to include empty fields in Patch requests.
7627	ForceSendFields []string `json:"-"`
7628
7629	// NullFields is a list of field names (e.g. "Country") to include in
7630	// API requests with the JSON null value. By default, fields with empty
7631	// values are omitted from API requests. However, any field with an
7632	// empty value appearing in NullFields will be sent to the server as
7633	// null. It is an error if a field in this list has a non-empty value.
7634	// This may be used to include null fields in Patch requests.
7635	NullFields []string `json:"-"`
7636}
7637
7638func (s *PostalCodeGroup) MarshalJSON() ([]byte, error) {
7639	type NoMethod PostalCodeGroup
7640	raw := NoMethod(*s)
7641	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7642}
7643
7644type PostalCodeRange struct {
7645	// PostalCodeRangeBegin: A postal code or a pattern of the form prefix*
7646	// denoting the inclusive lower bound of the range defining the area.
7647	// Examples values: "94108", "9410*", "9*". Required.
7648	PostalCodeRangeBegin string `json:"postalCodeRangeBegin,omitempty"`
7649
7650	// PostalCodeRangeEnd: A postal code or a pattern of the form prefix*
7651	// denoting the inclusive upper bound of the range defining the area. It
7652	// must have the same length as postalCodeRangeBegin: if
7653	// postalCodeRangeBegin is a postal code then postalCodeRangeEnd must be
7654	// a postal code too; if postalCodeRangeBegin is a pattern then
7655	// postalCodeRangeEnd must be a pattern with the same prefix length.
7656	// Optional: if not set, then the area is defined as being all the
7657	// postal codes matching postalCodeRangeBegin.
7658	PostalCodeRangeEnd string `json:"postalCodeRangeEnd,omitempty"`
7659
7660	// ForceSendFields is a list of field names (e.g.
7661	// "PostalCodeRangeBegin") to unconditionally include in API requests.
7662	// By default, fields with empty values are omitted from API requests.
7663	// However, any non-pointer, non-interface field appearing in
7664	// ForceSendFields will be sent to the server regardless of whether the
7665	// field is empty or not. This may be used to include empty fields in
7666	// Patch requests.
7667	ForceSendFields []string `json:"-"`
7668
7669	// NullFields is a list of field names (e.g. "PostalCodeRangeBegin") to
7670	// include in API requests with the JSON null value. By default, fields
7671	// with empty values are omitted from API requests. However, any field
7672	// with an empty value appearing in NullFields will be sent to the
7673	// server as null. It is an error if a field in this list has a
7674	// non-empty value. This may be used to include null fields in Patch
7675	// requests.
7676	NullFields []string `json:"-"`
7677}
7678
7679func (s *PostalCodeRange) MarshalJSON() ([]byte, error) {
7680	type NoMethod PostalCodeRange
7681	raw := NoMethod(*s)
7682	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7683}
7684
7685type Price struct {
7686	// Currency: The currency of the price.
7687	Currency string `json:"currency,omitempty"`
7688
7689	// Value: The price represented as a number.
7690	Value string `json:"value,omitempty"`
7691
7692	// ForceSendFields is a list of field names (e.g. "Currency") to
7693	// unconditionally include in API requests. By default, fields with
7694	// empty values are omitted from API requests. However, any non-pointer,
7695	// non-interface field appearing in ForceSendFields will be sent to the
7696	// server regardless of whether the field is empty or not. This may be
7697	// used to include empty fields in Patch requests.
7698	ForceSendFields []string `json:"-"`
7699
7700	// NullFields is a list of field names (e.g. "Currency") to include in
7701	// API requests with the JSON null value. By default, fields with empty
7702	// values are omitted from API requests. However, any field with an
7703	// empty value appearing in NullFields will be sent to the server as
7704	// null. It is an error if a field in this list has a non-empty value.
7705	// This may be used to include null fields in Patch requests.
7706	NullFields []string `json:"-"`
7707}
7708
7709func (s *Price) MarshalJSON() ([]byte, error) {
7710	type NoMethod Price
7711	raw := NoMethod(*s)
7712	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7713}
7714
7715// Product: Product data. After inserting, updating, or deleting a
7716// product, it may take several minutes before changes take effect.
7717type Product struct {
7718	// AdditionalImageLinks: Additional URLs of images of the item.
7719	AdditionalImageLinks []string `json:"additionalImageLinks,omitempty"`
7720
7721	// AdsGrouping: Used to group items in an arbitrary way. Only for CPA%,
7722	// discouraged otherwise.
7723	AdsGrouping string `json:"adsGrouping,omitempty"`
7724
7725	// AdsLabels: Similar to ads_grouping, but only works on CPC.
7726	AdsLabels []string `json:"adsLabels,omitempty"`
7727
7728	// AdsRedirect: Allows advertisers to override the item URL when the
7729	// product is shown within the context of Product Ads.
7730	AdsRedirect string `json:"adsRedirect,omitempty"`
7731
7732	// Adult: Set to true if the item is targeted towards adults.
7733	Adult bool `json:"adult,omitempty"`
7734
7735	// AgeGroup: Target age group of the item.
7736	AgeGroup string `json:"ageGroup,omitempty"`
7737
7738	// Availability: Availability status of the item.
7739	Availability string `json:"availability,omitempty"`
7740
7741	// AvailabilityDate: The day a pre-ordered product becomes available for
7742	// delivery, in ISO 8601 format.
7743	AvailabilityDate string `json:"availabilityDate,omitempty"`
7744
7745	// Brand: Brand of the item.
7746	Brand string `json:"brand,omitempty"`
7747
7748	// Channel: The item's channel (online or local).
7749	Channel string `json:"channel,omitempty"`
7750
7751	// Color: Color of the item.
7752	Color string `json:"color,omitempty"`
7753
7754	// Condition: Condition or state of the item.
7755	Condition string `json:"condition,omitempty"`
7756
7757	// ContentLanguage: The two-letter ISO 639-1 language code for the item.
7758	ContentLanguage string `json:"contentLanguage,omitempty"`
7759
7760	// CostOfGoodsSold: Cost of goods sold. Used for gross profit reporting.
7761	CostOfGoodsSold *Price `json:"costOfGoodsSold,omitempty"`
7762
7763	// CustomAttributes: A list of custom (merchant-provided) attributes. It
7764	// can also be used for submitting any attribute of the feed
7765	// specification in its generic form (e.g., { "name": "size type",
7766	// "value": "regular" }). This is useful for submitting attributes not
7767	// explicitly exposed by the API, such as additional attributes used for
7768	// Shopping Actions.
7769	CustomAttributes []*CustomAttribute `json:"customAttributes,omitempty"`
7770
7771	// CustomLabel0: Custom label 0 for custom grouping of items in a
7772	// Shopping campaign.
7773	CustomLabel0 string `json:"customLabel0,omitempty"`
7774
7775	// CustomLabel1: Custom label 1 for custom grouping of items in a
7776	// Shopping campaign.
7777	CustomLabel1 string `json:"customLabel1,omitempty"`
7778
7779	// CustomLabel2: Custom label 2 for custom grouping of items in a
7780	// Shopping campaign.
7781	CustomLabel2 string `json:"customLabel2,omitempty"`
7782
7783	// CustomLabel3: Custom label 3 for custom grouping of items in a
7784	// Shopping campaign.
7785	CustomLabel3 string `json:"customLabel3,omitempty"`
7786
7787	// CustomLabel4: Custom label 4 for custom grouping of items in a
7788	// Shopping campaign.
7789	CustomLabel4 string `json:"customLabel4,omitempty"`
7790
7791	// Description: Description of the item.
7792	Description string `json:"description,omitempty"`
7793
7794	// DisplayAdsId: An identifier for an item for dynamic remarketing
7795	// campaigns.
7796	DisplayAdsId string `json:"displayAdsId,omitempty"`
7797
7798	// DisplayAdsLink: URL directly to your item's landing page for dynamic
7799	// remarketing campaigns.
7800	DisplayAdsLink string `json:"displayAdsLink,omitempty"`
7801
7802	// DisplayAdsSimilarIds: Advertiser-specified recommendations.
7803	DisplayAdsSimilarIds []string `json:"displayAdsSimilarIds,omitempty"`
7804
7805	// DisplayAdsTitle: Title of an item for dynamic remarketing campaigns.
7806	DisplayAdsTitle string `json:"displayAdsTitle,omitempty"`
7807
7808	// DisplayAdsValue: Offer margin for dynamic remarketing campaigns.
7809	DisplayAdsValue float64 `json:"displayAdsValue,omitempty"`
7810
7811	// EnergyEfficiencyClass: The energy efficiency class as defined in EU
7812	// directive 2010/30/EU.
7813	EnergyEfficiencyClass string `json:"energyEfficiencyClass,omitempty"`
7814
7815	// ExcludedDestinations: The list of destinations to exclude for this
7816	// target (corresponds to unchecked check boxes in Merchant Center).
7817	ExcludedDestinations []string `json:"excludedDestinations,omitempty"`
7818
7819	// ExpirationDate: Date on which the item should expire, as specified
7820	// upon insertion, in ISO 8601 format. The actual expiration date in
7821	// Google Shopping is exposed in productstatuses as googleExpirationDate
7822	// and might be earlier if expirationDate is too far in the future.
7823	ExpirationDate string `json:"expirationDate,omitempty"`
7824
7825	// Gender: Target gender of the item.
7826	Gender string `json:"gender,omitempty"`
7827
7828	// GoogleProductCategory: Google's category of the item (see Google
7829	// product taxonomy).
7830	GoogleProductCategory string `json:"googleProductCategory,omitempty"`
7831
7832	// Gtin: Global Trade Item Number (GTIN) of the item.
7833	Gtin string `json:"gtin,omitempty"`
7834
7835	// Id: The REST ID of the product. Content API methods that operate on
7836	// products take this as their productId parameter.
7837	// The REST ID for a product is of the form
7838	// channel:contentLanguage:targetCountry:offerId.
7839	Id string `json:"id,omitempty"`
7840
7841	// IdentifierExists: False when the item does not have unique product
7842	// identifiers appropriate to its category, such as GTIN, MPN, and
7843	// brand. Required according to the Unique Product Identifier Rules for
7844	// all target countries except for Canada.
7845	IdentifierExists bool `json:"identifierExists,omitempty"`
7846
7847	// ImageLink: URL of an image of the item.
7848	ImageLink string `json:"imageLink,omitempty"`
7849
7850	// IncludedDestinations: The list of destinations to include for this
7851	// target (corresponds to checked check boxes in Merchant Center).
7852	// Default destinations are always included unless provided in
7853	// excludedDestinations.
7854	IncludedDestinations []string `json:"includedDestinations,omitempty"`
7855
7856	// Installment: Number and amount of installments to pay for an item.
7857	// Brazil only.
7858	Installment *Installment `json:"installment,omitempty"`
7859
7860	// IsBundle: Whether the item is a merchant-defined bundle. A bundle is
7861	// a custom grouping of different products sold by a merchant for a
7862	// single price.
7863	IsBundle bool `json:"isBundle,omitempty"`
7864
7865	// ItemGroupId: Shared identifier for all variants of the same product.
7866	ItemGroupId string `json:"itemGroupId,omitempty"`
7867
7868	// Kind: Identifies what kind of resource this is. Value: the fixed
7869	// string "content#product".
7870	Kind string `json:"kind,omitempty"`
7871
7872	// Link: URL directly linking to your item's page on your website.
7873	Link string `json:"link,omitempty"`
7874
7875	// LoyaltyPoints: Loyalty points that users receive after purchasing the
7876	// item. Japan only.
7877	LoyaltyPoints *LoyaltyPoints `json:"loyaltyPoints,omitempty"`
7878
7879	// Material: The material of which the item is made.
7880	Material string `json:"material,omitempty"`
7881
7882	// MaxEnergyEfficiencyClass: The energy efficiency class as defined in
7883	// EU directive 2010/30/EU.
7884	MaxEnergyEfficiencyClass string `json:"maxEnergyEfficiencyClass,omitempty"`
7885
7886	// MaxHandlingTime: Maximal product handling time (in business days).
7887	MaxHandlingTime int64 `json:"maxHandlingTime,omitempty,string"`
7888
7889	// MinEnergyEfficiencyClass: The energy efficiency class as defined in
7890	// EU directive 2010/30/EU.
7891	MinEnergyEfficiencyClass string `json:"minEnergyEfficiencyClass,omitempty"`
7892
7893	// MinHandlingTime: Minimal product handling time (in business days).
7894	MinHandlingTime int64 `json:"minHandlingTime,omitempty,string"`
7895
7896	// MobileLink: Link to a mobile-optimized version of the landing page.
7897	MobileLink string `json:"mobileLink,omitempty"`
7898
7899	// Mpn: Manufacturer Part Number (MPN) of the item.
7900	Mpn string `json:"mpn,omitempty"`
7901
7902	// Multipack: The number of identical products in a merchant-defined
7903	// multipack.
7904	Multipack int64 `json:"multipack,omitempty,string"`
7905
7906	// OfferId: A unique identifier for the item. Leading and trailing
7907	// whitespaces are stripped and multiple whitespaces are replaced by a
7908	// single whitespace upon submission. Only valid unicode characters are
7909	// accepted. See the products feed specification for details.
7910	// Note: Content API methods that operate on products take the REST ID
7911	// of the product, not this identifier.
7912	OfferId string `json:"offerId,omitempty"`
7913
7914	// Pattern: The item's pattern (e.g. polka dots).
7915	Pattern string `json:"pattern,omitempty"`
7916
7917	// Price: Price of the item.
7918	Price *Price `json:"price,omitempty"`
7919
7920	// ProductTypes: Categories of the item (formatted as in products data
7921	// specification).
7922	ProductTypes []string `json:"productTypes,omitempty"`
7923
7924	// PromotionIds: The unique ID of a promotion.
7925	PromotionIds []string `json:"promotionIds,omitempty"`
7926
7927	// SalePrice: Advertised sale price of the item.
7928	SalePrice *Price `json:"salePrice,omitempty"`
7929
7930	// SalePriceEffectiveDate: Date range during which the item is on sale
7931	// (see products data specification).
7932	SalePriceEffectiveDate string `json:"salePriceEffectiveDate,omitempty"`
7933
7934	// SellOnGoogleQuantity: The quantity of the product that is available
7935	// for selling on Google. Supported only for online products.
7936	SellOnGoogleQuantity int64 `json:"sellOnGoogleQuantity,omitempty,string"`
7937
7938	// Shipping: Shipping rules.
7939	Shipping []*ProductShipping `json:"shipping,omitempty"`
7940
7941	// ShippingHeight: Height of the item for shipping.
7942	ShippingHeight *ProductShippingDimension `json:"shippingHeight,omitempty"`
7943
7944	// ShippingLabel: The shipping label of the product, used to group
7945	// product in account-level shipping rules.
7946	ShippingLabel string `json:"shippingLabel,omitempty"`
7947
7948	// ShippingLength: Length of the item for shipping.
7949	ShippingLength *ProductShippingDimension `json:"shippingLength,omitempty"`
7950
7951	// ShippingWeight: Weight of the item for shipping.
7952	ShippingWeight *ProductShippingWeight `json:"shippingWeight,omitempty"`
7953
7954	// ShippingWidth: Width of the item for shipping.
7955	ShippingWidth *ProductShippingDimension `json:"shippingWidth,omitempty"`
7956
7957	// SizeSystem: System in which the size is specified. Recommended for
7958	// apparel items.
7959	SizeSystem string `json:"sizeSystem,omitempty"`
7960
7961	// SizeType: The cut of the item. Recommended for apparel items.
7962	SizeType string `json:"sizeType,omitempty"`
7963
7964	// Sizes: Size of the item. Only one value is allowed. For variants with
7965	// different sizes, insert a separate product for each size with the
7966	// same itemGroupId value (see size definition).
7967	Sizes []string `json:"sizes,omitempty"`
7968
7969	// Source: The source of the offer, i.e., how the offer was created.
7970	Source string `json:"source,omitempty"`
7971
7972	// TargetCountry: The CLDR territory code for the item.
7973	TargetCountry string `json:"targetCountry,omitempty"`
7974
7975	// TaxCategory: The tax category of the product, used to configure
7976	// detailed tax nexus in account-level tax settings.
7977	TaxCategory string `json:"taxCategory,omitempty"`
7978
7979	// Taxes: Tax information.
7980	Taxes []*ProductTax `json:"taxes,omitempty"`
7981
7982	// Title: Title of the item.
7983	Title string `json:"title,omitempty"`
7984
7985	// TransitTimeLabel: The transit time label of the product, used to
7986	// group product in account-level transit time tables.
7987	TransitTimeLabel string `json:"transitTimeLabel,omitempty"`
7988
7989	// UnitPricingBaseMeasure: The preference of the denominator of the unit
7990	// price.
7991	UnitPricingBaseMeasure *ProductUnitPricingBaseMeasure `json:"unitPricingBaseMeasure,omitempty"`
7992
7993	// UnitPricingMeasure: The measure and dimension of an item.
7994	UnitPricingMeasure *ProductUnitPricingMeasure `json:"unitPricingMeasure,omitempty"`
7995
7996	// ServerResponse contains the HTTP response code and headers from the
7997	// server.
7998	googleapi.ServerResponse `json:"-"`
7999
8000	// ForceSendFields is a list of field names (e.g.
8001	// "AdditionalImageLinks") to unconditionally include in API requests.
8002	// By default, fields with empty values are omitted from API requests.
8003	// However, any non-pointer, non-interface field appearing in
8004	// ForceSendFields will be sent to the server regardless of whether the
8005	// field is empty or not. This may be used to include empty fields in
8006	// Patch requests.
8007	ForceSendFields []string `json:"-"`
8008
8009	// NullFields is a list of field names (e.g. "AdditionalImageLinks") to
8010	// include in API requests with the JSON null value. By default, fields
8011	// with empty values are omitted from API requests. However, any field
8012	// with an empty value appearing in NullFields will be sent to the
8013	// server as null. It is an error if a field in this list has a
8014	// non-empty value. This may be used to include null fields in Patch
8015	// requests.
8016	NullFields []string `json:"-"`
8017}
8018
8019func (s *Product) MarshalJSON() ([]byte, error) {
8020	type NoMethod Product
8021	raw := NoMethod(*s)
8022	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8023}
8024
8025func (s *Product) UnmarshalJSON(data []byte) error {
8026	type NoMethod Product
8027	var s1 struct {
8028		DisplayAdsValue gensupport.JSONFloat64 `json:"displayAdsValue"`
8029		*NoMethod
8030	}
8031	s1.NoMethod = (*NoMethod)(s)
8032	if err := json.Unmarshal(data, &s1); err != nil {
8033		return err
8034	}
8035	s.DisplayAdsValue = float64(s1.DisplayAdsValue)
8036	return nil
8037}
8038
8039type ProductAmount struct {
8040	// PriceAmount: The pre-tax or post-tax price depending on the location
8041	// of the order.
8042	PriceAmount *Price `json:"priceAmount,omitempty"`
8043
8044	// RemittedTaxAmount: Remitted tax value.
8045	RemittedTaxAmount *Price `json:"remittedTaxAmount,omitempty"`
8046
8047	// TaxAmount: Tax value.
8048	TaxAmount *Price `json:"taxAmount,omitempty"`
8049
8050	// ForceSendFields is a list of field names (e.g. "PriceAmount") to
8051	// unconditionally include in API requests. By default, fields with
8052	// empty values are omitted from API requests. However, any non-pointer,
8053	// non-interface field appearing in ForceSendFields will be sent to the
8054	// server regardless of whether the field is empty or not. This may be
8055	// used to include empty fields in Patch requests.
8056	ForceSendFields []string `json:"-"`
8057
8058	// NullFields is a list of field names (e.g. "PriceAmount") to include
8059	// in API requests with the JSON null value. By default, fields with
8060	// empty values are omitted from API requests. However, any field with
8061	// an empty value appearing in NullFields will be sent to the server as
8062	// null. It is an error if a field in this list has a non-empty value.
8063	// This may be used to include null fields in Patch requests.
8064	NullFields []string `json:"-"`
8065}
8066
8067func (s *ProductAmount) MarshalJSON() ([]byte, error) {
8068	type NoMethod ProductAmount
8069	raw := NoMethod(*s)
8070	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8071}
8072
8073type ProductShipping struct {
8074	// Country: The CLDR territory code of the country to which an item will
8075	// ship.
8076	Country string `json:"country,omitempty"`
8077
8078	// LocationGroupName: The location where the shipping is applicable,
8079	// represented by a location group name.
8080	LocationGroupName string `json:"locationGroupName,omitempty"`
8081
8082	// LocationId: The numeric ID of a location that the shipping rate
8083	// applies to as defined in the AdWords API.
8084	LocationId int64 `json:"locationId,omitempty,string"`
8085
8086	// PostalCode: The postal code range that the shipping rate applies to,
8087	// represented by a postal code, a postal code prefix followed by a *
8088	// wildcard, a range between two postal codes or two postal code
8089	// prefixes of equal length.
8090	PostalCode string `json:"postalCode,omitempty"`
8091
8092	// Price: Fixed shipping price, represented as a number.
8093	Price *Price `json:"price,omitempty"`
8094
8095	// Region: The geographic region to which a shipping rate applies.
8096	Region string `json:"region,omitempty"`
8097
8098	// Service: A free-form description of the service class or delivery
8099	// speed.
8100	Service string `json:"service,omitempty"`
8101
8102	// ForceSendFields is a list of field names (e.g. "Country") to
8103	// unconditionally include in API requests. By default, fields with
8104	// empty values are omitted from API requests. However, any non-pointer,
8105	// non-interface field appearing in ForceSendFields will be sent to the
8106	// server regardless of whether the field is empty or not. This may be
8107	// used to include empty fields in Patch requests.
8108	ForceSendFields []string `json:"-"`
8109
8110	// NullFields is a list of field names (e.g. "Country") to include in
8111	// API requests with the JSON null value. By default, fields with empty
8112	// values are omitted from API requests. However, any field with an
8113	// empty value appearing in NullFields will be sent to the server as
8114	// null. It is an error if a field in this list has a non-empty value.
8115	// This may be used to include null fields in Patch requests.
8116	NullFields []string `json:"-"`
8117}
8118
8119func (s *ProductShipping) MarshalJSON() ([]byte, error) {
8120	type NoMethod ProductShipping
8121	raw := NoMethod(*s)
8122	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8123}
8124
8125type ProductShippingDimension struct {
8126	// Unit: The unit of value.
8127	Unit string `json:"unit,omitempty"`
8128
8129	// Value: The dimension of the product used to calculate the shipping
8130	// cost of the item.
8131	Value float64 `json:"value,omitempty"`
8132
8133	// ForceSendFields is a list of field names (e.g. "Unit") to
8134	// unconditionally include in API requests. By default, fields with
8135	// empty values are omitted from API requests. However, any non-pointer,
8136	// non-interface field appearing in ForceSendFields will be sent to the
8137	// server regardless of whether the field is empty or not. This may be
8138	// used to include empty fields in Patch requests.
8139	ForceSendFields []string `json:"-"`
8140
8141	// NullFields is a list of field names (e.g. "Unit") to include in API
8142	// requests with the JSON null value. By default, fields with empty
8143	// values are omitted from API requests. However, any field with an
8144	// empty value appearing in NullFields will be sent to the server as
8145	// null. It is an error if a field in this list has a non-empty value.
8146	// This may be used to include null fields in Patch requests.
8147	NullFields []string `json:"-"`
8148}
8149
8150func (s *ProductShippingDimension) MarshalJSON() ([]byte, error) {
8151	type NoMethod ProductShippingDimension
8152	raw := NoMethod(*s)
8153	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8154}
8155
8156func (s *ProductShippingDimension) UnmarshalJSON(data []byte) error {
8157	type NoMethod ProductShippingDimension
8158	var s1 struct {
8159		Value gensupport.JSONFloat64 `json:"value"`
8160		*NoMethod
8161	}
8162	s1.NoMethod = (*NoMethod)(s)
8163	if err := json.Unmarshal(data, &s1); err != nil {
8164		return err
8165	}
8166	s.Value = float64(s1.Value)
8167	return nil
8168}
8169
8170type ProductShippingWeight struct {
8171	// Unit: The unit of value.
8172	Unit string `json:"unit,omitempty"`
8173
8174	// Value: The weight of the product used to calculate the shipping cost
8175	// of the item.
8176	Value float64 `json:"value,omitempty"`
8177
8178	// ForceSendFields is a list of field names (e.g. "Unit") to
8179	// unconditionally include in API requests. By default, fields with
8180	// empty values are omitted from API requests. However, any non-pointer,
8181	// non-interface field appearing in ForceSendFields will be sent to the
8182	// server regardless of whether the field is empty or not. This may be
8183	// used to include empty fields in Patch requests.
8184	ForceSendFields []string `json:"-"`
8185
8186	// NullFields is a list of field names (e.g. "Unit") to include in API
8187	// requests with the JSON null value. By default, fields with empty
8188	// values are omitted from API requests. However, any field with an
8189	// empty value appearing in NullFields will be sent to the server as
8190	// null. It is an error if a field in this list has a non-empty value.
8191	// This may be used to include null fields in Patch requests.
8192	NullFields []string `json:"-"`
8193}
8194
8195func (s *ProductShippingWeight) MarshalJSON() ([]byte, error) {
8196	type NoMethod ProductShippingWeight
8197	raw := NoMethod(*s)
8198	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8199}
8200
8201func (s *ProductShippingWeight) UnmarshalJSON(data []byte) error {
8202	type NoMethod ProductShippingWeight
8203	var s1 struct {
8204		Value gensupport.JSONFloat64 `json:"value"`
8205		*NoMethod
8206	}
8207	s1.NoMethod = (*NoMethod)(s)
8208	if err := json.Unmarshal(data, &s1); err != nil {
8209		return err
8210	}
8211	s.Value = float64(s1.Value)
8212	return nil
8213}
8214
8215// ProductStatus: The status of a product, i.e., information about a
8216// product computed asynchronously.
8217type ProductStatus struct {
8218	// CreationDate: Date on which the item has been created, in ISO 8601
8219	// format.
8220	CreationDate string `json:"creationDate,omitempty"`
8221
8222	// DestinationStatuses: The intended destinations for the product.
8223	DestinationStatuses []*ProductStatusDestinationStatus `json:"destinationStatuses,omitempty"`
8224
8225	// GoogleExpirationDate: Date on which the item expires in Google
8226	// Shopping, in ISO 8601 format.
8227	GoogleExpirationDate string `json:"googleExpirationDate,omitempty"`
8228
8229	// ItemLevelIssues: A list of all issues associated with the product.
8230	ItemLevelIssues []*ProductStatusItemLevelIssue `json:"itemLevelIssues,omitempty"`
8231
8232	// Kind: Identifies what kind of resource this is. Value: the fixed
8233	// string "content#productStatus".
8234	Kind string `json:"kind,omitempty"`
8235
8236	// LastUpdateDate: Date on which the item has been last updated, in ISO
8237	// 8601 format.
8238	LastUpdateDate string `json:"lastUpdateDate,omitempty"`
8239
8240	// Link: The link to the product.
8241	Link string `json:"link,omitempty"`
8242
8243	// ProductId: The ID of the product for which status is reported.
8244	ProductId string `json:"productId,omitempty"`
8245
8246	// Title: The title of the product.
8247	Title string `json:"title,omitempty"`
8248
8249	// ServerResponse contains the HTTP response code and headers from the
8250	// server.
8251	googleapi.ServerResponse `json:"-"`
8252
8253	// ForceSendFields is a list of field names (e.g. "CreationDate") to
8254	// unconditionally include in API requests. By default, fields with
8255	// empty values are omitted from API requests. However, any non-pointer,
8256	// non-interface field appearing in ForceSendFields will be sent to the
8257	// server regardless of whether the field is empty or not. This may be
8258	// used to include empty fields in Patch requests.
8259	ForceSendFields []string `json:"-"`
8260
8261	// NullFields is a list of field names (e.g. "CreationDate") to include
8262	// in API requests with the JSON null value. By default, fields with
8263	// empty values are omitted from API requests. However, any field with
8264	// an empty value appearing in NullFields will be sent to the server as
8265	// null. It is an error if a field in this list has a non-empty value.
8266	// This may be used to include null fields in Patch requests.
8267	NullFields []string `json:"-"`
8268}
8269
8270func (s *ProductStatus) MarshalJSON() ([]byte, error) {
8271	type NoMethod ProductStatus
8272	raw := NoMethod(*s)
8273	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8274}
8275
8276type ProductStatusDestinationStatus struct {
8277	// Destination: The name of the destination
8278	Destination string `json:"destination,omitempty"`
8279
8280	Status string `json:"status,omitempty"`
8281
8282	// ForceSendFields is a list of field names (e.g. "Destination") to
8283	// unconditionally include in API requests. By default, fields with
8284	// empty values are omitted from API requests. However, any non-pointer,
8285	// non-interface field appearing in ForceSendFields will be sent to the
8286	// server regardless of whether the field is empty or not. This may be
8287	// used to include empty fields in Patch requests.
8288	ForceSendFields []string `json:"-"`
8289
8290	// NullFields is a list of field names (e.g. "Destination") to include
8291	// in API requests with the JSON null value. By default, fields with
8292	// empty values are omitted from API requests. However, any field with
8293	// an empty value appearing in NullFields will be sent to the server as
8294	// null. It is an error if a field in this list has a non-empty value.
8295	// This may be used to include null fields in Patch requests.
8296	NullFields []string `json:"-"`
8297}
8298
8299func (s *ProductStatusDestinationStatus) MarshalJSON() ([]byte, error) {
8300	type NoMethod ProductStatusDestinationStatus
8301	raw := NoMethod(*s)
8302	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8303}
8304
8305type ProductStatusItemLevelIssue struct {
8306	// AttributeName: The attribute's name, if the issue is caused by a
8307	// single attribute.
8308	AttributeName string `json:"attributeName,omitempty"`
8309
8310	// Code: The error code of the issue.
8311	Code string `json:"code,omitempty"`
8312
8313	// Description: A short issue description in English.
8314	Description string `json:"description,omitempty"`
8315
8316	// Destination: The destination the issue applies to.
8317	Destination string `json:"destination,omitempty"`
8318
8319	// Detail: A detailed issue description in English.
8320	Detail string `json:"detail,omitempty"`
8321
8322	// Documentation: The URL of a web page to help with resolving this
8323	// issue.
8324	Documentation string `json:"documentation,omitempty"`
8325
8326	// Resolution: Whether the issue can be resolved by the merchant.
8327	Resolution string `json:"resolution,omitempty"`
8328
8329	// Servability: How this issue affects serving of the offer.
8330	Servability string `json:"servability,omitempty"`
8331
8332	// ForceSendFields is a list of field names (e.g. "AttributeName") to
8333	// unconditionally include in API requests. By default, fields with
8334	// empty values are omitted from API requests. However, any non-pointer,
8335	// non-interface field appearing in ForceSendFields will be sent to the
8336	// server regardless of whether the field is empty or not. This may be
8337	// used to include empty fields in Patch requests.
8338	ForceSendFields []string `json:"-"`
8339
8340	// NullFields is a list of field names (e.g. "AttributeName") to include
8341	// in API requests with the JSON null value. By default, fields with
8342	// empty values are omitted from API requests. However, any field with
8343	// an empty value appearing in NullFields will be sent to the server as
8344	// null. It is an error if a field in this list has a non-empty value.
8345	// This may be used to include null fields in Patch requests.
8346	NullFields []string `json:"-"`
8347}
8348
8349func (s *ProductStatusItemLevelIssue) MarshalJSON() ([]byte, error) {
8350	type NoMethod ProductStatusItemLevelIssue
8351	raw := NoMethod(*s)
8352	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8353}
8354
8355type ProductTax struct {
8356	// Country: The country within which the item is taxed, specified as a
8357	// CLDR territory code.
8358	Country string `json:"country,omitempty"`
8359
8360	// LocationId: The numeric ID of a location that the tax rate applies to
8361	// as defined in the AdWords API.
8362	LocationId int64 `json:"locationId,omitempty,string"`
8363
8364	// PostalCode: The postal code range that the tax rate applies to,
8365	// represented by a ZIP code, a ZIP code prefix using * wildcard, a
8366	// range between two ZIP codes or two ZIP code prefixes of equal length.
8367	// Examples: 94114, 94*, 94002-95460, 94*-95*.
8368	PostalCode string `json:"postalCode,omitempty"`
8369
8370	// Rate: The percentage of tax rate that applies to the item price.
8371	Rate float64 `json:"rate,omitempty"`
8372
8373	// Region: The geographic region to which the tax rate applies.
8374	Region string `json:"region,omitempty"`
8375
8376	// TaxShip: Set to true if tax is charged on shipping.
8377	TaxShip bool `json:"taxShip,omitempty"`
8378
8379	// ForceSendFields is a list of field names (e.g. "Country") to
8380	// unconditionally include in API requests. By default, fields with
8381	// empty values are omitted from API requests. However, any non-pointer,
8382	// non-interface field appearing in ForceSendFields will be sent to the
8383	// server regardless of whether the field is empty or not. This may be
8384	// used to include empty fields in Patch requests.
8385	ForceSendFields []string `json:"-"`
8386
8387	// NullFields is a list of field names (e.g. "Country") to include in
8388	// API requests with the JSON null value. By default, fields with empty
8389	// values are omitted from API requests. However, any field with an
8390	// empty value appearing in NullFields will be sent to the server as
8391	// null. It is an error if a field in this list has a non-empty value.
8392	// This may be used to include null fields in Patch requests.
8393	NullFields []string `json:"-"`
8394}
8395
8396func (s *ProductTax) MarshalJSON() ([]byte, error) {
8397	type NoMethod ProductTax
8398	raw := NoMethod(*s)
8399	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8400}
8401
8402func (s *ProductTax) UnmarshalJSON(data []byte) error {
8403	type NoMethod ProductTax
8404	var s1 struct {
8405		Rate gensupport.JSONFloat64 `json:"rate"`
8406		*NoMethod
8407	}
8408	s1.NoMethod = (*NoMethod)(s)
8409	if err := json.Unmarshal(data, &s1); err != nil {
8410		return err
8411	}
8412	s.Rate = float64(s1.Rate)
8413	return nil
8414}
8415
8416type ProductUnitPricingBaseMeasure struct {
8417	// Unit: The unit of the denominator.
8418	Unit string `json:"unit,omitempty"`
8419
8420	// Value: The denominator of the unit price.
8421	Value int64 `json:"value,omitempty,string"`
8422
8423	// ForceSendFields is a list of field names (e.g. "Unit") to
8424	// unconditionally include in API requests. By default, fields with
8425	// empty values are omitted from API requests. However, any non-pointer,
8426	// non-interface field appearing in ForceSendFields will be sent to the
8427	// server regardless of whether the field is empty or not. This may be
8428	// used to include empty fields in Patch requests.
8429	ForceSendFields []string `json:"-"`
8430
8431	// NullFields is a list of field names (e.g. "Unit") to include in API
8432	// requests with the JSON null value. By default, fields with empty
8433	// values are omitted from API requests. However, any field with an
8434	// empty value appearing in NullFields will be sent to the server as
8435	// null. It is an error if a field in this list has a non-empty value.
8436	// This may be used to include null fields in Patch requests.
8437	NullFields []string `json:"-"`
8438}
8439
8440func (s *ProductUnitPricingBaseMeasure) MarshalJSON() ([]byte, error) {
8441	type NoMethod ProductUnitPricingBaseMeasure
8442	raw := NoMethod(*s)
8443	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8444}
8445
8446type ProductUnitPricingMeasure struct {
8447	// Unit: The unit of the measure.
8448	Unit string `json:"unit,omitempty"`
8449
8450	// Value: The measure of an item.
8451	Value float64 `json:"value,omitempty"`
8452
8453	// ForceSendFields is a list of field names (e.g. "Unit") to
8454	// unconditionally include in API requests. By default, fields with
8455	// empty values are omitted from API requests. However, any non-pointer,
8456	// non-interface field appearing in ForceSendFields will be sent to the
8457	// server regardless of whether the field is empty or not. This may be
8458	// used to include empty fields in Patch requests.
8459	ForceSendFields []string `json:"-"`
8460
8461	// NullFields is a list of field names (e.g. "Unit") to include in API
8462	// requests with the JSON null value. By default, fields with empty
8463	// values are omitted from API requests. However, any field with an
8464	// empty value appearing in NullFields will be sent to the server as
8465	// null. It is an error if a field in this list has a non-empty value.
8466	// This may be used to include null fields in Patch requests.
8467	NullFields []string `json:"-"`
8468}
8469
8470func (s *ProductUnitPricingMeasure) MarshalJSON() ([]byte, error) {
8471	type NoMethod ProductUnitPricingMeasure
8472	raw := NoMethod(*s)
8473	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8474}
8475
8476func (s *ProductUnitPricingMeasure) UnmarshalJSON(data []byte) error {
8477	type NoMethod ProductUnitPricingMeasure
8478	var s1 struct {
8479		Value gensupport.JSONFloat64 `json:"value"`
8480		*NoMethod
8481	}
8482	s1.NoMethod = (*NoMethod)(s)
8483	if err := json.Unmarshal(data, &s1); err != nil {
8484		return err
8485	}
8486	s.Value = float64(s1.Value)
8487	return nil
8488}
8489
8490type ProductsCustomBatchRequest struct {
8491	// Entries: The request entries to be processed in the batch.
8492	Entries []*ProductsCustomBatchRequestEntry `json:"entries,omitempty"`
8493
8494	// ForceSendFields is a list of field names (e.g. "Entries") to
8495	// unconditionally include in API requests. By default, fields with
8496	// empty values are omitted from API requests. However, any non-pointer,
8497	// non-interface field appearing in ForceSendFields will be sent to the
8498	// server regardless of whether the field is empty or not. This may be
8499	// used to include empty fields in Patch requests.
8500	ForceSendFields []string `json:"-"`
8501
8502	// NullFields is a list of field names (e.g. "Entries") to include in
8503	// API requests with the JSON null value. By default, fields with empty
8504	// values are omitted from API requests. However, any field with an
8505	// empty value appearing in NullFields will be sent to the server as
8506	// null. It is an error if a field in this list has a non-empty value.
8507	// This may be used to include null fields in Patch requests.
8508	NullFields []string `json:"-"`
8509}
8510
8511func (s *ProductsCustomBatchRequest) MarshalJSON() ([]byte, error) {
8512	type NoMethod ProductsCustomBatchRequest
8513	raw := NoMethod(*s)
8514	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8515}
8516
8517// ProductsCustomBatchRequestEntry: A batch entry encoding a single
8518// non-batch products request.
8519type ProductsCustomBatchRequestEntry struct {
8520	// BatchId: An entry ID, unique within the batch request.
8521	BatchId int64 `json:"batchId,omitempty"`
8522
8523	// FeedId: The Content API feed id.
8524	FeedId uint64 `json:"feedId,omitempty,string"`
8525
8526	// MerchantId: The ID of the managing account.
8527	MerchantId uint64 `json:"merchantId,omitempty,string"`
8528
8529	Method string `json:"method,omitempty"`
8530
8531	// Product: The product to insert. Only required if the method is
8532	// insert.
8533	Product *Product `json:"product,omitempty"`
8534
8535	// ProductId: The ID of the product to get or delete. Only defined if
8536	// the method is get or delete.
8537	ProductId string `json:"productId,omitempty"`
8538
8539	// ForceSendFields is a list of field names (e.g. "BatchId") to
8540	// unconditionally include in API requests. By default, fields with
8541	// empty values are omitted from API requests. However, any non-pointer,
8542	// non-interface field appearing in ForceSendFields will be sent to the
8543	// server regardless of whether the field is empty or not. This may be
8544	// used to include empty fields in Patch requests.
8545	ForceSendFields []string `json:"-"`
8546
8547	// NullFields is a list of field names (e.g. "BatchId") to include in
8548	// API requests with the JSON null value. By default, fields with empty
8549	// values are omitted from API requests. However, any field with an
8550	// empty value appearing in NullFields will be sent to the server as
8551	// null. It is an error if a field in this list has a non-empty value.
8552	// This may be used to include null fields in Patch requests.
8553	NullFields []string `json:"-"`
8554}
8555
8556func (s *ProductsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
8557	type NoMethod ProductsCustomBatchRequestEntry
8558	raw := NoMethod(*s)
8559	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8560}
8561
8562type ProductsCustomBatchResponse struct {
8563	// Entries: The result of the execution of the batch requests.
8564	Entries []*ProductsCustomBatchResponseEntry `json:"entries,omitempty"`
8565
8566	// Kind: Identifies what kind of resource this is. Value: the fixed
8567	// string "content#productsCustomBatchResponse".
8568	Kind string `json:"kind,omitempty"`
8569
8570	// ServerResponse contains the HTTP response code and headers from the
8571	// server.
8572	googleapi.ServerResponse `json:"-"`
8573
8574	// ForceSendFields is a list of field names (e.g. "Entries") to
8575	// unconditionally include in API requests. By default, fields with
8576	// empty values are omitted from API requests. However, any non-pointer,
8577	// non-interface field appearing in ForceSendFields will be sent to the
8578	// server regardless of whether the field is empty or not. This may be
8579	// used to include empty fields in Patch requests.
8580	ForceSendFields []string `json:"-"`
8581
8582	// NullFields is a list of field names (e.g. "Entries") to include in
8583	// API requests with the JSON null value. By default, fields with empty
8584	// values are omitted from API requests. However, any field with an
8585	// empty value appearing in NullFields will be sent to the server as
8586	// null. It is an error if a field in this list has a non-empty value.
8587	// This may be used to include null fields in Patch requests.
8588	NullFields []string `json:"-"`
8589}
8590
8591func (s *ProductsCustomBatchResponse) MarshalJSON() ([]byte, error) {
8592	type NoMethod ProductsCustomBatchResponse
8593	raw := NoMethod(*s)
8594	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8595}
8596
8597// ProductsCustomBatchResponseEntry: A batch entry encoding a single
8598// non-batch products response.
8599type ProductsCustomBatchResponseEntry struct {
8600	// BatchId: The ID of the request entry this entry responds to.
8601	BatchId int64 `json:"batchId,omitempty"`
8602
8603	// Errors: A list of errors defined if and only if the request failed.
8604	Errors *Errors `json:"errors,omitempty"`
8605
8606	// Kind: Identifies what kind of resource this is. Value: the fixed
8607	// string "content#productsCustomBatchResponseEntry".
8608	Kind string `json:"kind,omitempty"`
8609
8610	// Product: The inserted product. Only defined if the method is insert
8611	// and if the request was successful.
8612	Product *Product `json:"product,omitempty"`
8613
8614	// ForceSendFields is a list of field names (e.g. "BatchId") to
8615	// unconditionally include in API requests. By default, fields with
8616	// empty values are omitted from API requests. However, any non-pointer,
8617	// non-interface field appearing in ForceSendFields will be sent to the
8618	// server regardless of whether the field is empty or not. This may be
8619	// used to include empty fields in Patch requests.
8620	ForceSendFields []string `json:"-"`
8621
8622	// NullFields is a list of field names (e.g. "BatchId") to include in
8623	// API requests with the JSON null value. By default, fields with empty
8624	// values are omitted from API requests. However, any field with an
8625	// empty value appearing in NullFields will be sent to the server as
8626	// null. It is an error if a field in this list has a non-empty value.
8627	// This may be used to include null fields in Patch requests.
8628	NullFields []string `json:"-"`
8629}
8630
8631func (s *ProductsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
8632	type NoMethod ProductsCustomBatchResponseEntry
8633	raw := NoMethod(*s)
8634	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8635}
8636
8637type ProductsListResponse struct {
8638	// Kind: Identifies what kind of resource this is. Value: the fixed
8639	// string "content#productsListResponse".
8640	Kind string `json:"kind,omitempty"`
8641
8642	// NextPageToken: The token for the retrieval of the next page of
8643	// products.
8644	NextPageToken string `json:"nextPageToken,omitempty"`
8645
8646	Resources []*Product `json:"resources,omitempty"`
8647
8648	// ServerResponse contains the HTTP response code and headers from the
8649	// server.
8650	googleapi.ServerResponse `json:"-"`
8651
8652	// ForceSendFields is a list of field names (e.g. "Kind") to
8653	// unconditionally include in API requests. By default, fields with
8654	// empty values are omitted from API requests. However, any non-pointer,
8655	// non-interface field appearing in ForceSendFields will be sent to the
8656	// server regardless of whether the field is empty or not. This may be
8657	// used to include empty fields in Patch requests.
8658	ForceSendFields []string `json:"-"`
8659
8660	// NullFields is a list of field names (e.g. "Kind") to include in API
8661	// requests with the JSON null value. By default, fields with empty
8662	// values are omitted from API requests. However, any field with an
8663	// empty value appearing in NullFields will be sent to the server as
8664	// null. It is an error if a field in this list has a non-empty value.
8665	// This may be used to include null fields in Patch requests.
8666	NullFields []string `json:"-"`
8667}
8668
8669func (s *ProductsListResponse) MarshalJSON() ([]byte, error) {
8670	type NoMethod ProductsListResponse
8671	raw := NoMethod(*s)
8672	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8673}
8674
8675type ProductstatusesCustomBatchRequest struct {
8676	// Entries: The request entries to be processed in the batch.
8677	Entries []*ProductstatusesCustomBatchRequestEntry `json:"entries,omitempty"`
8678
8679	// ForceSendFields is a list of field names (e.g. "Entries") to
8680	// unconditionally include in API requests. By default, fields with
8681	// empty values are omitted from API requests. However, any non-pointer,
8682	// non-interface field appearing in ForceSendFields will be sent to the
8683	// server regardless of whether the field is empty or not. This may be
8684	// used to include empty fields in Patch requests.
8685	ForceSendFields []string `json:"-"`
8686
8687	// NullFields is a list of field names (e.g. "Entries") to include in
8688	// API requests with the JSON null value. By default, fields with empty
8689	// values are omitted from API requests. However, any field with an
8690	// empty value appearing in NullFields will be sent to the server as
8691	// null. It is an error if a field in this list has a non-empty value.
8692	// This may be used to include null fields in Patch requests.
8693	NullFields []string `json:"-"`
8694}
8695
8696func (s *ProductstatusesCustomBatchRequest) MarshalJSON() ([]byte, error) {
8697	type NoMethod ProductstatusesCustomBatchRequest
8698	raw := NoMethod(*s)
8699	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8700}
8701
8702// ProductstatusesCustomBatchRequestEntry: A batch entry encoding a
8703// single non-batch productstatuses request.
8704type ProductstatusesCustomBatchRequestEntry struct {
8705	// BatchId: An entry ID, unique within the batch request.
8706	BatchId int64 `json:"batchId,omitempty"`
8707
8708	// Destinations: If set, only issues for the specified destinations are
8709	// returned, otherwise only issues for the Shopping destination.
8710	Destinations []string `json:"destinations,omitempty"`
8711
8712	IncludeAttributes bool `json:"includeAttributes,omitempty"`
8713
8714	// MerchantId: The ID of the managing account.
8715	MerchantId uint64 `json:"merchantId,omitempty,string"`
8716
8717	Method string `json:"method,omitempty"`
8718
8719	// ProductId: The ID of the product whose status to get.
8720	ProductId string `json:"productId,omitempty"`
8721
8722	// ForceSendFields is a list of field names (e.g. "BatchId") to
8723	// unconditionally include in API requests. By default, fields with
8724	// empty values are omitted from API requests. However, any non-pointer,
8725	// non-interface field appearing in ForceSendFields will be sent to the
8726	// server regardless of whether the field is empty or not. This may be
8727	// used to include empty fields in Patch requests.
8728	ForceSendFields []string `json:"-"`
8729
8730	// NullFields is a list of field names (e.g. "BatchId") to include in
8731	// API requests with the JSON null value. By default, fields with empty
8732	// values are omitted from API requests. However, any field with an
8733	// empty value appearing in NullFields will be sent to the server as
8734	// null. It is an error if a field in this list has a non-empty value.
8735	// This may be used to include null fields in Patch requests.
8736	NullFields []string `json:"-"`
8737}
8738
8739func (s *ProductstatusesCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
8740	type NoMethod ProductstatusesCustomBatchRequestEntry
8741	raw := NoMethod(*s)
8742	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8743}
8744
8745type ProductstatusesCustomBatchResponse struct {
8746	// Entries: The result of the execution of the batch requests.
8747	Entries []*ProductstatusesCustomBatchResponseEntry `json:"entries,omitempty"`
8748
8749	// Kind: Identifies what kind of resource this is. Value: the fixed
8750	// string "content#productstatusesCustomBatchResponse".
8751	Kind string `json:"kind,omitempty"`
8752
8753	// ServerResponse contains the HTTP response code and headers from the
8754	// server.
8755	googleapi.ServerResponse `json:"-"`
8756
8757	// ForceSendFields is a list of field names (e.g. "Entries") to
8758	// unconditionally include in API requests. By default, fields with
8759	// empty values are omitted from API requests. However, any non-pointer,
8760	// non-interface field appearing in ForceSendFields will be sent to the
8761	// server regardless of whether the field is empty or not. This may be
8762	// used to include empty fields in Patch requests.
8763	ForceSendFields []string `json:"-"`
8764
8765	// NullFields is a list of field names (e.g. "Entries") to include in
8766	// API requests with the JSON null value. By default, fields with empty
8767	// values are omitted from API requests. However, any field with an
8768	// empty value appearing in NullFields will be sent to the server as
8769	// null. It is an error if a field in this list has a non-empty value.
8770	// This may be used to include null fields in Patch requests.
8771	NullFields []string `json:"-"`
8772}
8773
8774func (s *ProductstatusesCustomBatchResponse) MarshalJSON() ([]byte, error) {
8775	type NoMethod ProductstatusesCustomBatchResponse
8776	raw := NoMethod(*s)
8777	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8778}
8779
8780// ProductstatusesCustomBatchResponseEntry: A batch entry encoding a
8781// single non-batch productstatuses response.
8782type ProductstatusesCustomBatchResponseEntry struct {
8783	// BatchId: The ID of the request entry this entry responds to.
8784	BatchId int64 `json:"batchId,omitempty"`
8785
8786	// Errors: A list of errors, if the request failed.
8787	Errors *Errors `json:"errors,omitempty"`
8788
8789	// Kind: Identifies what kind of resource this is. Value: the fixed
8790	// string "content#productstatusesCustomBatchResponseEntry".
8791	Kind string `json:"kind,omitempty"`
8792
8793	// ProductStatus: The requested product status. Only defined if the
8794	// request was successful.
8795	ProductStatus *ProductStatus `json:"productStatus,omitempty"`
8796
8797	// ForceSendFields is a list of field names (e.g. "BatchId") to
8798	// unconditionally include in API requests. By default, fields with
8799	// empty values are omitted from API requests. However, any non-pointer,
8800	// non-interface field appearing in ForceSendFields will be sent to the
8801	// server regardless of whether the field is empty or not. This may be
8802	// used to include empty fields in Patch requests.
8803	ForceSendFields []string `json:"-"`
8804
8805	// NullFields is a list of field names (e.g. "BatchId") to include in
8806	// API requests with the JSON null value. By default, fields with empty
8807	// values are omitted from API requests. However, any field with an
8808	// empty value appearing in NullFields will be sent to the server as
8809	// null. It is an error if a field in this list has a non-empty value.
8810	// This may be used to include null fields in Patch requests.
8811	NullFields []string `json:"-"`
8812}
8813
8814func (s *ProductstatusesCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
8815	type NoMethod ProductstatusesCustomBatchResponseEntry
8816	raw := NoMethod(*s)
8817	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8818}
8819
8820type ProductstatusesListResponse struct {
8821	// Kind: Identifies what kind of resource this is. Value: the fixed
8822	// string "content#productstatusesListResponse".
8823	Kind string `json:"kind,omitempty"`
8824
8825	// NextPageToken: The token for the retrieval of the next page of
8826	// products statuses.
8827	NextPageToken string `json:"nextPageToken,omitempty"`
8828
8829	Resources []*ProductStatus `json:"resources,omitempty"`
8830
8831	// ServerResponse contains the HTTP response code and headers from the
8832	// server.
8833	googleapi.ServerResponse `json:"-"`
8834
8835	// ForceSendFields is a list of field names (e.g. "Kind") to
8836	// unconditionally include in API requests. By default, fields with
8837	// empty values are omitted from API requests. However, any non-pointer,
8838	// non-interface field appearing in ForceSendFields will be sent to the
8839	// server regardless of whether the field is empty or not. This may be
8840	// used to include empty fields in Patch requests.
8841	ForceSendFields []string `json:"-"`
8842
8843	// NullFields is a list of field names (e.g. "Kind") to include in API
8844	// requests with the JSON null value. By default, fields with empty
8845	// values are omitted from API requests. However, any field with an
8846	// empty value appearing in NullFields will be sent to the server as
8847	// null. It is an error if a field in this list has a non-empty value.
8848	// This may be used to include null fields in Patch requests.
8849	NullFields []string `json:"-"`
8850}
8851
8852func (s *ProductstatusesListResponse) MarshalJSON() ([]byte, error) {
8853	type NoMethod ProductstatusesListResponse
8854	raw := NoMethod(*s)
8855	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8856}
8857
8858type RateGroup struct {
8859	// ApplicableShippingLabels: A list of shipping labels defining the
8860	// products to which this rate group applies to. This is a disjunction:
8861	// only one of the labels has to match for the rate group to apply. May
8862	// only be empty for the last rate group of a service. Required.
8863	ApplicableShippingLabels []string `json:"applicableShippingLabels,omitempty"`
8864
8865	// CarrierRates: A list of carrier rates that can be referred to by
8866	// mainTable or singleValue.
8867	CarrierRates []*CarrierRate `json:"carrierRates,omitempty"`
8868
8869	// MainTable: A table defining the rate group, when singleValue is not
8870	// expressive enough. Can only be set if singleValue is not set.
8871	MainTable *Table `json:"mainTable,omitempty"`
8872
8873	// Name: Name of the rate group. Optional. If set has to be unique
8874	// within shipping service.
8875	Name string `json:"name,omitempty"`
8876
8877	// SingleValue: The value of the rate group (e.g. flat rate $10). Can
8878	// only be set if mainTable and subtables are not set.
8879	SingleValue *Value `json:"singleValue,omitempty"`
8880
8881	// Subtables: A list of subtables referred to by mainTable. Can only be
8882	// set if mainTable is set.
8883	Subtables []*Table `json:"subtables,omitempty"`
8884
8885	// ForceSendFields is a list of field names (e.g.
8886	// "ApplicableShippingLabels") to unconditionally include in API
8887	// requests. By default, fields with empty values are omitted from API
8888	// requests. However, any non-pointer, non-interface field appearing in
8889	// ForceSendFields will be sent to the server regardless of whether the
8890	// field is empty or not. This may be used to include empty fields in
8891	// Patch requests.
8892	ForceSendFields []string `json:"-"`
8893
8894	// NullFields is a list of field names (e.g. "ApplicableShippingLabels")
8895	// to include in API requests with the JSON null value. By default,
8896	// fields with empty values are omitted from API requests. However, any
8897	// field with an empty value appearing in NullFields will be sent to the
8898	// server as null. It is an error if a field in this list has a
8899	// non-empty value. This may be used to include null fields in Patch
8900	// requests.
8901	NullFields []string `json:"-"`
8902}
8903
8904func (s *RateGroup) MarshalJSON() ([]byte, error) {
8905	type NoMethod RateGroup
8906	raw := NoMethod(*s)
8907	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8908}
8909
8910type RefundReason struct {
8911	// Description: Description of the reason.
8912	Description string `json:"description,omitempty"`
8913
8914	// ReasonCode: Code of the refund reason.
8915	ReasonCode string `json:"reasonCode,omitempty"`
8916
8917	// ForceSendFields is a list of field names (e.g. "Description") to
8918	// unconditionally include in API requests. By default, fields with
8919	// empty values are omitted from API requests. However, any non-pointer,
8920	// non-interface field appearing in ForceSendFields will be sent to the
8921	// server regardless of whether the field is empty or not. This may be
8922	// used to include empty fields in Patch requests.
8923	ForceSendFields []string `json:"-"`
8924
8925	// NullFields is a list of field names (e.g. "Description") to include
8926	// in API requests with the JSON null value. By default, fields with
8927	// empty values are omitted from API requests. However, any field with
8928	// an empty value appearing in NullFields will be sent to the server as
8929	// null. It is an error if a field in this list has a non-empty value.
8930	// This may be used to include null fields in Patch requests.
8931	NullFields []string `json:"-"`
8932}
8933
8934func (s *RefundReason) MarshalJSON() ([]byte, error) {
8935	type NoMethod RefundReason
8936	raw := NoMethod(*s)
8937	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8938}
8939
8940// RegionalInventory: Regional inventory resource. contains the regional
8941// name and all attributes which are overridden for the specified
8942// region.
8943type RegionalInventory struct {
8944	// Availability: The availability of the product.
8945	Availability string `json:"availability,omitempty"`
8946
8947	// CustomAttributes: A list of custom (merchant-provided) attributes. It
8948	// can also be used for submitting any attribute of the feed
8949	// specification in its generic form.
8950	CustomAttributes []*CustomAttribute `json:"customAttributes,omitempty"`
8951
8952	// Kind: Identifies what kind of resource this is. Value: the fixed
8953	// string "content#regionalInventory".
8954	Kind string `json:"kind,omitempty"`
8955
8956	// Price: The price of the product.
8957	Price *Price `json:"price,omitempty"`
8958
8959	// RegionId: The ID (name) of the region.
8960	RegionId string `json:"regionId,omitempty"`
8961
8962	// SalePrice: The sale price of the product. Mandatory if
8963	// sale_price_effective_date is defined.
8964	SalePrice *Price `json:"salePrice,omitempty"`
8965
8966	// SalePriceEffectiveDate: A date range represented by a pair of ISO
8967	// 8601 dates separated by a space, comma, or slash. Both dates might be
8968	// specified as 'null' if undecided.
8969	SalePriceEffectiveDate string `json:"salePriceEffectiveDate,omitempty"`
8970
8971	// ServerResponse contains the HTTP response code and headers from the
8972	// server.
8973	googleapi.ServerResponse `json:"-"`
8974
8975	// ForceSendFields is a list of field names (e.g. "Availability") to
8976	// unconditionally include in API requests. By default, fields with
8977	// empty values are omitted from API requests. However, any non-pointer,
8978	// non-interface field appearing in ForceSendFields will be sent to the
8979	// server regardless of whether the field is empty or not. This may be
8980	// used to include empty fields in Patch requests.
8981	ForceSendFields []string `json:"-"`
8982
8983	// NullFields is a list of field names (e.g. "Availability") to include
8984	// in API requests with the JSON null value. By default, fields with
8985	// empty values are omitted from API requests. However, any field with
8986	// an empty value appearing in NullFields will be sent to the server as
8987	// null. It is an error if a field in this list has a non-empty value.
8988	// This may be used to include null fields in Patch requests.
8989	NullFields []string `json:"-"`
8990}
8991
8992func (s *RegionalInventory) MarshalJSON() ([]byte, error) {
8993	type NoMethod RegionalInventory
8994	raw := NoMethod(*s)
8995	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8996}
8997
8998type RegionalinventoryCustomBatchRequest struct {
8999	// Entries: The request entries to be processed in the batch.
9000	Entries []*RegionalinventoryCustomBatchRequestEntry `json:"entries,omitempty"`
9001
9002	// ForceSendFields is a list of field names (e.g. "Entries") to
9003	// unconditionally include in API requests. By default, fields with
9004	// empty values are omitted from API requests. However, any non-pointer,
9005	// non-interface field appearing in ForceSendFields will be sent to the
9006	// server regardless of whether the field is empty or not. This may be
9007	// used to include empty fields in Patch requests.
9008	ForceSendFields []string `json:"-"`
9009
9010	// NullFields is a list of field names (e.g. "Entries") to include in
9011	// API requests with the JSON null value. By default, fields with empty
9012	// values are omitted from API requests. However, any field with an
9013	// empty value appearing in NullFields will be sent to the server as
9014	// null. It is an error if a field in this list has a non-empty value.
9015	// This may be used to include null fields in Patch requests.
9016	NullFields []string `json:"-"`
9017}
9018
9019func (s *RegionalinventoryCustomBatchRequest) MarshalJSON() ([]byte, error) {
9020	type NoMethod RegionalinventoryCustomBatchRequest
9021	raw := NoMethod(*s)
9022	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9023}
9024
9025// RegionalinventoryCustomBatchRequestEntry: A batch entry encoding a
9026// single non-batch regional inventory request.
9027type RegionalinventoryCustomBatchRequestEntry struct {
9028	// BatchId: An entry ID, unique within the batch request.
9029	BatchId int64 `json:"batchId,omitempty"`
9030
9031	// MerchantId: The ID of the managing account.
9032	MerchantId uint64 `json:"merchantId,omitempty,string"`
9033
9034	Method string `json:"method,omitempty"`
9035
9036	// ProductId: The ID of the product for which to update price and
9037	// availability.
9038	ProductId string `json:"productId,omitempty"`
9039
9040	// RegionalInventory: Price and availability of the product.
9041	RegionalInventory *RegionalInventory `json:"regionalInventory,omitempty"`
9042
9043	// ForceSendFields is a list of field names (e.g. "BatchId") to
9044	// unconditionally include in API requests. By default, fields with
9045	// empty values are omitted from API requests. However, any non-pointer,
9046	// non-interface field appearing in ForceSendFields will be sent to the
9047	// server regardless of whether the field is empty or not. This may be
9048	// used to include empty fields in Patch requests.
9049	ForceSendFields []string `json:"-"`
9050
9051	// NullFields is a list of field names (e.g. "BatchId") to include in
9052	// API requests with the JSON null value. By default, fields with empty
9053	// values are omitted from API requests. However, any field with an
9054	// empty value appearing in NullFields will be sent to the server as
9055	// null. It is an error if a field in this list has a non-empty value.
9056	// This may be used to include null fields in Patch requests.
9057	NullFields []string `json:"-"`
9058}
9059
9060func (s *RegionalinventoryCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
9061	type NoMethod RegionalinventoryCustomBatchRequestEntry
9062	raw := NoMethod(*s)
9063	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9064}
9065
9066type RegionalinventoryCustomBatchResponse struct {
9067	// Entries: The result of the execution of the batch requests.
9068	Entries []*RegionalinventoryCustomBatchResponseEntry `json:"entries,omitempty"`
9069
9070	// Kind: Identifies what kind of resource this is. Value: the fixed
9071	// string "content#regionalinventoryCustomBatchResponse".
9072	Kind string `json:"kind,omitempty"`
9073
9074	// ServerResponse contains the HTTP response code and headers from the
9075	// server.
9076	googleapi.ServerResponse `json:"-"`
9077
9078	// ForceSendFields is a list of field names (e.g. "Entries") to
9079	// unconditionally include in API requests. By default, fields with
9080	// empty values are omitted from API requests. However, any non-pointer,
9081	// non-interface field appearing in ForceSendFields will be sent to the
9082	// server regardless of whether the field is empty or not. This may be
9083	// used to include empty fields in Patch requests.
9084	ForceSendFields []string `json:"-"`
9085
9086	// NullFields is a list of field names (e.g. "Entries") to include in
9087	// API requests with the JSON null value. By default, fields with empty
9088	// values are omitted from API requests. However, any field with an
9089	// empty value appearing in NullFields will be sent to the server as
9090	// null. It is an error if a field in this list has a non-empty value.
9091	// This may be used to include null fields in Patch requests.
9092	NullFields []string `json:"-"`
9093}
9094
9095func (s *RegionalinventoryCustomBatchResponse) MarshalJSON() ([]byte, error) {
9096	type NoMethod RegionalinventoryCustomBatchResponse
9097	raw := NoMethod(*s)
9098	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9099}
9100
9101// RegionalinventoryCustomBatchResponseEntry: A batch entry encoding a
9102// single non-batch regional inventory response.
9103type RegionalinventoryCustomBatchResponseEntry struct {
9104	// BatchId: The ID of the request entry this entry responds to.
9105	BatchId int64 `json:"batchId,omitempty"`
9106
9107	// Errors: A list of errors defined if and only if the request failed.
9108	Errors *Errors `json:"errors,omitempty"`
9109
9110	// Kind: Identifies what kind of resource this is. Value: the fixed
9111	// string "content#regionalinventoryCustomBatchResponseEntry".
9112	Kind string `json:"kind,omitempty"`
9113
9114	// RegionalInventory: Price and availability of the product.
9115	RegionalInventory *RegionalInventory `json:"regionalInventory,omitempty"`
9116
9117	// ForceSendFields is a list of field names (e.g. "BatchId") to
9118	// unconditionally include in API requests. By default, fields with
9119	// empty values are omitted from API requests. However, any non-pointer,
9120	// non-interface field appearing in ForceSendFields will be sent to the
9121	// server regardless of whether the field is empty or not. This may be
9122	// used to include empty fields in Patch requests.
9123	ForceSendFields []string `json:"-"`
9124
9125	// NullFields is a list of field names (e.g. "BatchId") to include in
9126	// API requests with the JSON null value. By default, fields with empty
9127	// values are omitted from API requests. However, any field with an
9128	// empty value appearing in NullFields will be sent to the server as
9129	// null. It is an error if a field in this list has a non-empty value.
9130	// This may be used to include null fields in Patch requests.
9131	NullFields []string `json:"-"`
9132}
9133
9134func (s *RegionalinventoryCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
9135	type NoMethod RegionalinventoryCustomBatchResponseEntry
9136	raw := NoMethod(*s)
9137	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9138}
9139
9140// ReturnAddress: Return address resource.
9141type ReturnAddress struct {
9142	// Address: The address.
9143	Address *ReturnAddressAddress `json:"address,omitempty"`
9144
9145	// Country: The country of sale where the return address is applicable.
9146	Country string `json:"country,omitempty"`
9147
9148	// Kind: Identifies what kind of resource this is. Value: the fixed
9149	// string "content#returnAddress".
9150	Kind string `json:"kind,omitempty"`
9151
9152	// Label: The user-defined label of the return address. For the default
9153	// address, use the label "default".
9154	Label string `json:"label,omitempty"`
9155
9156	// PhoneNumber: The merchant's contact phone number regarding the
9157	// return.
9158	PhoneNumber string `json:"phoneNumber,omitempty"`
9159
9160	// ReturnAddressId: Return address ID generated by Google.
9161	ReturnAddressId string `json:"returnAddressId,omitempty"`
9162
9163	// ServerResponse contains the HTTP response code and headers from the
9164	// server.
9165	googleapi.ServerResponse `json:"-"`
9166
9167	// ForceSendFields is a list of field names (e.g. "Address") to
9168	// unconditionally include in API requests. By default, fields with
9169	// empty values are omitted from API requests. However, any non-pointer,
9170	// non-interface field appearing in ForceSendFields will be sent to the
9171	// server regardless of whether the field is empty or not. This may be
9172	// used to include empty fields in Patch requests.
9173	ForceSendFields []string `json:"-"`
9174
9175	// NullFields is a list of field names (e.g. "Address") to include in
9176	// API requests with the JSON null value. By default, fields with empty
9177	// values are omitted from API requests. However, any field with an
9178	// empty value appearing in NullFields will be sent to the server as
9179	// null. It is an error if a field in this list has a non-empty value.
9180	// This may be used to include null fields in Patch requests.
9181	NullFields []string `json:"-"`
9182}
9183
9184func (s *ReturnAddress) MarshalJSON() ([]byte, error) {
9185	type NoMethod ReturnAddress
9186	raw := NoMethod(*s)
9187	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9188}
9189
9190type ReturnAddressAddress struct {
9191	// Country: CLDR country code (e.g. "US").
9192	Country string `json:"country,omitempty"`
9193
9194	// Locality: City, town or commune. May also include dependent
9195	// localities or sublocalities (e.g. neighborhoods or suburbs).
9196	Locality string `json:"locality,omitempty"`
9197
9198	// PostalCode: Postal code or ZIP (e.g. "94043").
9199	PostalCode string `json:"postalCode,omitempty"`
9200
9201	// RecipientName: Name of the recipient to address returns to.
9202	RecipientName string `json:"recipientName,omitempty"`
9203
9204	// Region: Top-level administrative subdivision of the country. For
9205	// example, a state like California ("CA") or a province like Quebec
9206	// ("QC").
9207	Region string `json:"region,omitempty"`
9208
9209	// StreetAddress: Street-level part of the address. May be up to two
9210	// lines, each line specified as an array element.
9211	StreetAddress []string `json:"streetAddress,omitempty"`
9212
9213	// ForceSendFields is a list of field names (e.g. "Country") to
9214	// unconditionally include in API requests. By default, fields with
9215	// empty values are omitted from API requests. However, any non-pointer,
9216	// non-interface field appearing in ForceSendFields will be sent to the
9217	// server regardless of whether the field is empty or not. This may be
9218	// used to include empty fields in Patch requests.
9219	ForceSendFields []string `json:"-"`
9220
9221	// NullFields is a list of field names (e.g. "Country") to include in
9222	// API requests with the JSON null value. By default, fields with empty
9223	// values are omitted from API requests. However, any field with an
9224	// empty value appearing in NullFields will be sent to the server as
9225	// null. It is an error if a field in this list has a non-empty value.
9226	// This may be used to include null fields in Patch requests.
9227	NullFields []string `json:"-"`
9228}
9229
9230func (s *ReturnAddressAddress) MarshalJSON() ([]byte, error) {
9231	type NoMethod ReturnAddressAddress
9232	raw := NoMethod(*s)
9233	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9234}
9235
9236// ReturnPolicy: Return policy resource.
9237type ReturnPolicy struct {
9238	// Country: The country of sale where the return policy is applicable.
9239	Country string `json:"country,omitempty"`
9240
9241	// Kind: Identifies what kind of resource this is. Value: the fixed
9242	// string "content#returnPolicy".
9243	Kind string `json:"kind,omitempty"`
9244
9245	// Label: The user-defined label of the return policy. For the default
9246	// policy, use the label "default".
9247	Label string `json:"label,omitempty"`
9248
9249	// Name: The name of the policy as shown in Merchant Center.
9250	Name string `json:"name,omitempty"`
9251
9252	// NonFreeReturnReasons: Return reasons that will incur return fees.
9253	NonFreeReturnReasons []string `json:"nonFreeReturnReasons,omitempty"`
9254
9255	// Policy: The policy.
9256	Policy *ReturnPolicyPolicy `json:"policy,omitempty"`
9257
9258	// ReturnPolicyId: Return policy ID generated by Google.
9259	ReturnPolicyId string `json:"returnPolicyId,omitempty"`
9260
9261	// SeasonalOverrides: An optional list of seasonal overrides.
9262	SeasonalOverrides []*ReturnPolicySeasonalOverride `json:"seasonalOverrides,omitempty"`
9263
9264	// ServerResponse contains the HTTP response code and headers from the
9265	// server.
9266	googleapi.ServerResponse `json:"-"`
9267
9268	// ForceSendFields is a list of field names (e.g. "Country") to
9269	// unconditionally include in API requests. By default, fields with
9270	// empty values are omitted from API requests. However, any non-pointer,
9271	// non-interface field appearing in ForceSendFields will be sent to the
9272	// server regardless of whether the field is empty or not. This may be
9273	// used to include empty fields in Patch requests.
9274	ForceSendFields []string `json:"-"`
9275
9276	// NullFields is a list of field names (e.g. "Country") to include in
9277	// API requests with the JSON null value. By default, fields with empty
9278	// values are omitted from API requests. However, any field with an
9279	// empty value appearing in NullFields will be sent to the server as
9280	// null. It is an error if a field in this list has a non-empty value.
9281	// This may be used to include null fields in Patch requests.
9282	NullFields []string `json:"-"`
9283}
9284
9285func (s *ReturnPolicy) MarshalJSON() ([]byte, error) {
9286	type NoMethod ReturnPolicy
9287	raw := NoMethod(*s)
9288	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9289}
9290
9291type ReturnPolicyPolicy struct {
9292	// LastReturnDate: Last day for returning the items. In ISO 8601 format.
9293	// When specifying the return window like this, set the policy type to
9294	// "lastReturnDate". Use this for seasonal overrides only.
9295	LastReturnDate string `json:"lastReturnDate,omitempty"`
9296
9297	// NumberOfDays: The number of days items can be returned after
9298	// delivery, where one day is defined to be 24 hours after the delivery
9299	// timestamp. When specifying the return window like this, set the
9300	// policy type to "numberOfDaysAfterDelivery". Acceptable values are 30,
9301	// 45, 60, 90, 100, 180, 270 and 365 for the default policy. Additional
9302	// policies further allow 14, 15, 21 and 28 days, but note that for most
9303	// items a minimum of 30 days is required for returns. Exceptions may be
9304	// made for electronics. A policy of less than 30 days can only be
9305	// applied to those items.
9306	NumberOfDays int64 `json:"numberOfDays,omitempty,string"`
9307
9308	// Type: Policy type. Use "lastReturnDate" for seasonal overrides only.
9309	// Note that for most items a minimum of 30 days is required for
9310	// returns. Exceptions may be made for electronics or non-returnable
9311	// items such as food, perishables, and living things. A policy of less
9312	// than 30 days can only be applied to those items.
9313	Type string `json:"type,omitempty"`
9314
9315	// ForceSendFields is a list of field names (e.g. "LastReturnDate") to
9316	// unconditionally include in API requests. By default, fields with
9317	// empty values are omitted from API requests. However, any non-pointer,
9318	// non-interface field appearing in ForceSendFields will be sent to the
9319	// server regardless of whether the field is empty or not. This may be
9320	// used to include empty fields in Patch requests.
9321	ForceSendFields []string `json:"-"`
9322
9323	// NullFields is a list of field names (e.g. "LastReturnDate") to
9324	// include in API requests with the JSON null value. By default, fields
9325	// with empty values are omitted from API requests. However, any field
9326	// with an empty value appearing in NullFields will be sent to the
9327	// server as null. It is an error if a field in this list has a
9328	// non-empty value. This may be used to include null fields in Patch
9329	// requests.
9330	NullFields []string `json:"-"`
9331}
9332
9333func (s *ReturnPolicyPolicy) MarshalJSON() ([]byte, error) {
9334	type NoMethod ReturnPolicyPolicy
9335	raw := NoMethod(*s)
9336	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9337}
9338
9339type ReturnPolicySeasonalOverride struct {
9340	// EndDate: Last day on which the override applies. In ISO 8601 format.
9341	EndDate string `json:"endDate,omitempty"`
9342
9343	// Name: The name of the seasonal override as shown in Merchant Center.
9344	Name string `json:"name,omitempty"`
9345
9346	// Policy: The policy which is in effect during that time.
9347	Policy *ReturnPolicyPolicy `json:"policy,omitempty"`
9348
9349	// StartDate: First day on which the override applies. In ISO 8601
9350	// format.
9351	StartDate string `json:"startDate,omitempty"`
9352
9353	// ForceSendFields is a list of field names (e.g. "EndDate") to
9354	// unconditionally include in API requests. By default, fields with
9355	// empty values are omitted from API requests. However, any non-pointer,
9356	// non-interface field appearing in ForceSendFields will be sent to the
9357	// server regardless of whether the field is empty or not. This may be
9358	// used to include empty fields in Patch requests.
9359	ForceSendFields []string `json:"-"`
9360
9361	// NullFields is a list of field names (e.g. "EndDate") to include in
9362	// API requests with the JSON null value. By default, fields with empty
9363	// values are omitted from API requests. However, any field with an
9364	// empty value appearing in NullFields will be sent to the server as
9365	// null. It is an error if a field in this list has a non-empty value.
9366	// This may be used to include null fields in Patch requests.
9367	NullFields []string `json:"-"`
9368}
9369
9370func (s *ReturnPolicySeasonalOverride) MarshalJSON() ([]byte, error) {
9371	type NoMethod ReturnPolicySeasonalOverride
9372	raw := NoMethod(*s)
9373	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9374}
9375
9376type ReturnShipment struct {
9377	// CreationDate: The date of creation of the shipment, in ISO 8601
9378	// format.
9379	CreationDate string `json:"creationDate,omitempty"`
9380
9381	// DeliveryDate: The date of delivery of the shipment, in ISO 8601
9382	// format.
9383	DeliveryDate string `json:"deliveryDate,omitempty"`
9384
9385	// ReturnMethodType: Type of the return method.
9386	ReturnMethodType string `json:"returnMethodType,omitempty"`
9387
9388	// ShipmentId: Shipment ID generated by Google.
9389	ShipmentId string `json:"shipmentId,omitempty"`
9390
9391	// ShipmentTrackingInfos: Tracking information of the shipment. One
9392	// return shipment might be handled by several shipping carriers
9393	// sequentially.
9394	ShipmentTrackingInfos []*ShipmentTrackingInfo `json:"shipmentTrackingInfos,omitempty"`
9395
9396	// ShippingDate: The date of shipping of the shipment, in ISO 8601
9397	// format.
9398	ShippingDate string `json:"shippingDate,omitempty"`
9399
9400	// State: State of the shipment.
9401	State string `json:"state,omitempty"`
9402
9403	// ForceSendFields is a list of field names (e.g. "CreationDate") to
9404	// unconditionally include in API requests. By default, fields with
9405	// empty values are omitted from API requests. However, any non-pointer,
9406	// non-interface field appearing in ForceSendFields will be sent to the
9407	// server regardless of whether the field is empty or not. This may be
9408	// used to include empty fields in Patch requests.
9409	ForceSendFields []string `json:"-"`
9410
9411	// NullFields is a list of field names (e.g. "CreationDate") to include
9412	// in API requests with the JSON null value. By default, fields with
9413	// empty values are omitted from API requests. However, any field with
9414	// an empty value appearing in NullFields will be sent to the server as
9415	// null. It is an error if a field in this list has a non-empty value.
9416	// This may be used to include null fields in Patch requests.
9417	NullFields []string `json:"-"`
9418}
9419
9420func (s *ReturnShipment) MarshalJSON() ([]byte, error) {
9421	type NoMethod ReturnShipment
9422	raw := NoMethod(*s)
9423	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9424}
9425
9426type ReturnaddressCustomBatchRequest struct {
9427	// Entries: The request entries to be processed in the batch.
9428	Entries []*ReturnaddressCustomBatchRequestEntry `json:"entries,omitempty"`
9429
9430	// ForceSendFields is a list of field names (e.g. "Entries") to
9431	// unconditionally include in API requests. By default, fields with
9432	// empty values are omitted from API requests. However, any non-pointer,
9433	// non-interface field appearing in ForceSendFields will be sent to the
9434	// server regardless of whether the field is empty or not. This may be
9435	// used to include empty fields in Patch requests.
9436	ForceSendFields []string `json:"-"`
9437
9438	// NullFields is a list of field names (e.g. "Entries") to include in
9439	// API requests with the JSON null value. By default, fields with empty
9440	// values are omitted from API requests. However, any field with an
9441	// empty value appearing in NullFields will be sent to the server as
9442	// null. It is an error if a field in this list has a non-empty value.
9443	// This may be used to include null fields in Patch requests.
9444	NullFields []string `json:"-"`
9445}
9446
9447func (s *ReturnaddressCustomBatchRequest) MarshalJSON() ([]byte, error) {
9448	type NoMethod ReturnaddressCustomBatchRequest
9449	raw := NoMethod(*s)
9450	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9451}
9452
9453type ReturnaddressCustomBatchRequestEntry struct {
9454	// BatchId: An entry ID, unique within the batch request.
9455	BatchId int64 `json:"batchId,omitempty"`
9456
9457	// MerchantId: The Merchant Center account ID.
9458	MerchantId uint64 `json:"merchantId,omitempty,string"`
9459
9460	Method string `json:"method,omitempty"`
9461
9462	// ReturnAddress: The return address to submit. Set this only if the
9463	// method is insert.
9464	ReturnAddress *ReturnAddress `json:"returnAddress,omitempty"`
9465
9466	// ReturnAddressId: The return address ID. Set this only if the method
9467	// is delete or get.
9468	ReturnAddressId string `json:"returnAddressId,omitempty"`
9469
9470	// ForceSendFields is a list of field names (e.g. "BatchId") to
9471	// unconditionally include in API requests. By default, fields with
9472	// empty values are omitted from API requests. However, any non-pointer,
9473	// non-interface field appearing in ForceSendFields will be sent to the
9474	// server regardless of whether the field is empty or not. This may be
9475	// used to include empty fields in Patch requests.
9476	ForceSendFields []string `json:"-"`
9477
9478	// NullFields is a list of field names (e.g. "BatchId") to include in
9479	// API requests with the JSON null value. By default, fields with empty
9480	// values are omitted from API requests. However, any field with an
9481	// empty value appearing in NullFields will be sent to the server as
9482	// null. It is an error if a field in this list has a non-empty value.
9483	// This may be used to include null fields in Patch requests.
9484	NullFields []string `json:"-"`
9485}
9486
9487func (s *ReturnaddressCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
9488	type NoMethod ReturnaddressCustomBatchRequestEntry
9489	raw := NoMethod(*s)
9490	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9491}
9492
9493type ReturnaddressCustomBatchResponse struct {
9494	// Entries: The result of the execution of the batch requests.
9495	Entries []*ReturnaddressCustomBatchResponseEntry `json:"entries,omitempty"`
9496
9497	// Kind: Identifies what kind of resource this is. Value: the fixed
9498	// string "content#returnaddressCustomBatchResponse".
9499	Kind string `json:"kind,omitempty"`
9500
9501	// ServerResponse contains the HTTP response code and headers from the
9502	// server.
9503	googleapi.ServerResponse `json:"-"`
9504
9505	// ForceSendFields is a list of field names (e.g. "Entries") to
9506	// unconditionally include in API requests. By default, fields with
9507	// empty values are omitted from API requests. However, any non-pointer,
9508	// non-interface field appearing in ForceSendFields will be sent to the
9509	// server regardless of whether the field is empty or not. This may be
9510	// used to include empty fields in Patch requests.
9511	ForceSendFields []string `json:"-"`
9512
9513	// NullFields is a list of field names (e.g. "Entries") to include in
9514	// API requests with the JSON null value. By default, fields with empty
9515	// values are omitted from API requests. However, any field with an
9516	// empty value appearing in NullFields will be sent to the server as
9517	// null. It is an error if a field in this list has a non-empty value.
9518	// This may be used to include null fields in Patch requests.
9519	NullFields []string `json:"-"`
9520}
9521
9522func (s *ReturnaddressCustomBatchResponse) MarshalJSON() ([]byte, error) {
9523	type NoMethod ReturnaddressCustomBatchResponse
9524	raw := NoMethod(*s)
9525	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9526}
9527
9528type ReturnaddressCustomBatchResponseEntry struct {
9529	// BatchId: The ID of the request entry to which this entry responds.
9530	BatchId int64 `json:"batchId,omitempty"`
9531
9532	// Errors: A list of errors defined if, and only if, the request failed.
9533	Errors *Errors `json:"errors,omitempty"`
9534
9535	// Kind: Identifies what kind of resource this is. Value: the fixed
9536	// string "content#returnaddressCustomBatchResponseEntry".
9537	Kind string `json:"kind,omitempty"`
9538
9539	// ReturnAddress: The retrieved return address.
9540	ReturnAddress *ReturnAddress `json:"returnAddress,omitempty"`
9541
9542	// ForceSendFields is a list of field names (e.g. "BatchId") to
9543	// unconditionally include in API requests. By default, fields with
9544	// empty values are omitted from API requests. However, any non-pointer,
9545	// non-interface field appearing in ForceSendFields will be sent to the
9546	// server regardless of whether the field is empty or not. This may be
9547	// used to include empty fields in Patch requests.
9548	ForceSendFields []string `json:"-"`
9549
9550	// NullFields is a list of field names (e.g. "BatchId") to include in
9551	// API requests with the JSON null value. By default, fields with empty
9552	// values are omitted from API requests. However, any field with an
9553	// empty value appearing in NullFields will be sent to the server as
9554	// null. It is an error if a field in this list has a non-empty value.
9555	// This may be used to include null fields in Patch requests.
9556	NullFields []string `json:"-"`
9557}
9558
9559func (s *ReturnaddressCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
9560	type NoMethod ReturnaddressCustomBatchResponseEntry
9561	raw := NoMethod(*s)
9562	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9563}
9564
9565type ReturnaddressListResponse struct {
9566	// Kind: Identifies what kind of resource this is. Value: the fixed
9567	// string "content#returnaddressListResponse".
9568	Kind string `json:"kind,omitempty"`
9569
9570	// NextPageToken: The token for the retrieval of the next page of
9571	// addresses.
9572	NextPageToken string `json:"nextPageToken,omitempty"`
9573
9574	Resources []*ReturnAddress `json:"resources,omitempty"`
9575
9576	// ServerResponse contains the HTTP response code and headers from the
9577	// server.
9578	googleapi.ServerResponse `json:"-"`
9579
9580	// ForceSendFields is a list of field names (e.g. "Kind") to
9581	// unconditionally include in API requests. By default, fields with
9582	// empty values are omitted from API requests. However, any non-pointer,
9583	// non-interface field appearing in ForceSendFields will be sent to the
9584	// server regardless of whether the field is empty or not. This may be
9585	// used to include empty fields in Patch requests.
9586	ForceSendFields []string `json:"-"`
9587
9588	// NullFields is a list of field names (e.g. "Kind") to include in API
9589	// requests with the JSON null value. By default, fields with empty
9590	// values are omitted from API requests. However, any field with an
9591	// empty value appearing in NullFields will be sent to the server as
9592	// null. It is an error if a field in this list has a non-empty value.
9593	// This may be used to include null fields in Patch requests.
9594	NullFields []string `json:"-"`
9595}
9596
9597func (s *ReturnaddressListResponse) MarshalJSON() ([]byte, error) {
9598	type NoMethod ReturnaddressListResponse
9599	raw := NoMethod(*s)
9600	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9601}
9602
9603type ReturnpolicyCustomBatchRequest struct {
9604	// Entries: The request entries to be processed in the batch.
9605	Entries []*ReturnpolicyCustomBatchRequestEntry `json:"entries,omitempty"`
9606
9607	// ForceSendFields is a list of field names (e.g. "Entries") to
9608	// unconditionally include in API requests. By default, fields with
9609	// empty values are omitted from API requests. However, any non-pointer,
9610	// non-interface field appearing in ForceSendFields will be sent to the
9611	// server regardless of whether the field is empty or not. This may be
9612	// used to include empty fields in Patch requests.
9613	ForceSendFields []string `json:"-"`
9614
9615	// NullFields is a list of field names (e.g. "Entries") to include in
9616	// API requests with the JSON null value. By default, fields with empty
9617	// values are omitted from API requests. However, any field with an
9618	// empty value appearing in NullFields will be sent to the server as
9619	// null. It is an error if a field in this list has a non-empty value.
9620	// This may be used to include null fields in Patch requests.
9621	NullFields []string `json:"-"`
9622}
9623
9624func (s *ReturnpolicyCustomBatchRequest) MarshalJSON() ([]byte, error) {
9625	type NoMethod ReturnpolicyCustomBatchRequest
9626	raw := NoMethod(*s)
9627	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9628}
9629
9630type ReturnpolicyCustomBatchRequestEntry struct {
9631	// BatchId: An entry ID, unique within the batch request.
9632	BatchId int64 `json:"batchId,omitempty"`
9633
9634	// MerchantId: The Merchant Center account ID.
9635	MerchantId uint64 `json:"merchantId,omitempty,string"`
9636
9637	Method string `json:"method,omitempty"`
9638
9639	// ReturnPolicy: The return policy to submit. Set this only if the
9640	// method is insert.
9641	ReturnPolicy *ReturnPolicy `json:"returnPolicy,omitempty"`
9642
9643	// ReturnPolicyId: The return policy ID. Set this only if the method is
9644	// delete or get.
9645	ReturnPolicyId string `json:"returnPolicyId,omitempty"`
9646
9647	// ForceSendFields is a list of field names (e.g. "BatchId") to
9648	// unconditionally include in API requests. By default, fields with
9649	// empty values are omitted from API requests. However, any non-pointer,
9650	// non-interface field appearing in ForceSendFields will be sent to the
9651	// server regardless of whether the field is empty or not. This may be
9652	// used to include empty fields in Patch requests.
9653	ForceSendFields []string `json:"-"`
9654
9655	// NullFields is a list of field names (e.g. "BatchId") to include in
9656	// API requests with the JSON null value. By default, fields with empty
9657	// values are omitted from API requests. However, any field with an
9658	// empty value appearing in NullFields will be sent to the server as
9659	// null. It is an error if a field in this list has a non-empty value.
9660	// This may be used to include null fields in Patch requests.
9661	NullFields []string `json:"-"`
9662}
9663
9664func (s *ReturnpolicyCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
9665	type NoMethod ReturnpolicyCustomBatchRequestEntry
9666	raw := NoMethod(*s)
9667	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9668}
9669
9670type ReturnpolicyCustomBatchResponse struct {
9671	// Entries: The result of the execution of the batch requests.
9672	Entries []*ReturnpolicyCustomBatchResponseEntry `json:"entries,omitempty"`
9673
9674	// Kind: Identifies what kind of resource this is. Value: the fixed
9675	// string "content#returnpolicyCustomBatchResponse".
9676	Kind string `json:"kind,omitempty"`
9677
9678	// ServerResponse contains the HTTP response code and headers from the
9679	// server.
9680	googleapi.ServerResponse `json:"-"`
9681
9682	// ForceSendFields is a list of field names (e.g. "Entries") to
9683	// unconditionally include in API requests. By default, fields with
9684	// empty values are omitted from API requests. However, any non-pointer,
9685	// non-interface field appearing in ForceSendFields will be sent to the
9686	// server regardless of whether the field is empty or not. This may be
9687	// used to include empty fields in Patch requests.
9688	ForceSendFields []string `json:"-"`
9689
9690	// NullFields is a list of field names (e.g. "Entries") to include in
9691	// API requests with the JSON null value. By default, fields with empty
9692	// values are omitted from API requests. However, any field with an
9693	// empty value appearing in NullFields will be sent to the server as
9694	// null. It is an error if a field in this list has a non-empty value.
9695	// This may be used to include null fields in Patch requests.
9696	NullFields []string `json:"-"`
9697}
9698
9699func (s *ReturnpolicyCustomBatchResponse) MarshalJSON() ([]byte, error) {
9700	type NoMethod ReturnpolicyCustomBatchResponse
9701	raw := NoMethod(*s)
9702	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9703}
9704
9705type ReturnpolicyCustomBatchResponseEntry struct {
9706	// BatchId: The ID of the request entry to which this entry responds.
9707	BatchId int64 `json:"batchId,omitempty"`
9708
9709	// Errors: A list of errors defined if, and only if, the request failed.
9710	Errors *Errors `json:"errors,omitempty"`
9711
9712	// Kind: Identifies what kind of resource this is. Value: the fixed
9713	// string "content#returnpolicyCustomBatchResponseEntry".
9714	Kind string `json:"kind,omitempty"`
9715
9716	// ReturnPolicy: The retrieved return policy.
9717	ReturnPolicy *ReturnPolicy `json:"returnPolicy,omitempty"`
9718
9719	// ForceSendFields is a list of field names (e.g. "BatchId") to
9720	// unconditionally include in API requests. By default, fields with
9721	// empty values are omitted from API requests. However, any non-pointer,
9722	// non-interface field appearing in ForceSendFields will be sent to the
9723	// server regardless of whether the field is empty or not. This may be
9724	// used to include empty fields in Patch requests.
9725	ForceSendFields []string `json:"-"`
9726
9727	// NullFields is a list of field names (e.g. "BatchId") to include in
9728	// API requests with the JSON null value. By default, fields with empty
9729	// values are omitted from API requests. However, any field with an
9730	// empty value appearing in NullFields will be sent to the server as
9731	// null. It is an error if a field in this list has a non-empty value.
9732	// This may be used to include null fields in Patch requests.
9733	NullFields []string `json:"-"`
9734}
9735
9736func (s *ReturnpolicyCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
9737	type NoMethod ReturnpolicyCustomBatchResponseEntry
9738	raw := NoMethod(*s)
9739	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9740}
9741
9742type ReturnpolicyListResponse struct {
9743	// Kind: Identifies what kind of resource this is. Value: the fixed
9744	// string "content#returnpolicyListResponse".
9745	Kind string `json:"kind,omitempty"`
9746
9747	Resources []*ReturnPolicy `json:"resources,omitempty"`
9748
9749	// ServerResponse contains the HTTP response code and headers from the
9750	// server.
9751	googleapi.ServerResponse `json:"-"`
9752
9753	// ForceSendFields is a list of field names (e.g. "Kind") to
9754	// unconditionally include in API requests. By default, fields with
9755	// empty values are omitted from API requests. However, any non-pointer,
9756	// non-interface field appearing in ForceSendFields will be sent to the
9757	// server regardless of whether the field is empty or not. This may be
9758	// used to include empty fields in Patch requests.
9759	ForceSendFields []string `json:"-"`
9760
9761	// NullFields is a list of field names (e.g. "Kind") to include in API
9762	// requests with the JSON null value. By default, fields with empty
9763	// values are omitted from API requests. However, any field with an
9764	// empty value appearing in NullFields will be sent to the server as
9765	// null. It is an error if a field in this list has a non-empty value.
9766	// This may be used to include null fields in Patch requests.
9767	NullFields []string `json:"-"`
9768}
9769
9770func (s *ReturnpolicyListResponse) MarshalJSON() ([]byte, error) {
9771	type NoMethod ReturnpolicyListResponse
9772	raw := NoMethod(*s)
9773	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9774}
9775
9776type Row struct {
9777	// Cells: The list of cells that constitute the row. Must have the same
9778	// length as columnHeaders for two-dimensional tables, a length of 1 for
9779	// one-dimensional tables. Required.
9780	Cells []*Value `json:"cells,omitempty"`
9781
9782	// ForceSendFields is a list of field names (e.g. "Cells") to
9783	// unconditionally include in API requests. By default, fields with
9784	// empty values are omitted from API requests. However, any non-pointer,
9785	// non-interface field appearing in ForceSendFields will be sent to the
9786	// server regardless of whether the field is empty or not. This may be
9787	// used to include empty fields in Patch requests.
9788	ForceSendFields []string `json:"-"`
9789
9790	// NullFields is a list of field names (e.g. "Cells") to include in API
9791	// requests with the JSON null value. By default, fields with empty
9792	// values are omitted from API requests. However, any field with an
9793	// empty value appearing in NullFields will be sent to the server as
9794	// null. It is an error if a field in this list has a non-empty value.
9795	// This may be used to include null fields in Patch requests.
9796	NullFields []string `json:"-"`
9797}
9798
9799func (s *Row) MarshalJSON() ([]byte, error) {
9800	type NoMethod Row
9801	raw := NoMethod(*s)
9802	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9803}
9804
9805type Service struct {
9806	// Active: A boolean exposing the active status of the shipping service.
9807	// Required.
9808	Active bool `json:"active,omitempty"`
9809
9810	// Currency: The CLDR code of the currency to which this service
9811	// applies. Must match that of the prices in rate groups.
9812	Currency string `json:"currency,omitempty"`
9813
9814	// DeliveryCountry: The CLDR territory code of the country to which the
9815	// service applies. Required.
9816	DeliveryCountry string `json:"deliveryCountry,omitempty"`
9817
9818	// DeliveryTime: Time spent in various aspects from order to the
9819	// delivery of the product. Required.
9820	DeliveryTime *DeliveryTime `json:"deliveryTime,omitempty"`
9821
9822	// Eligibility: Eligibility for this service.
9823	Eligibility string `json:"eligibility,omitempty"`
9824
9825	// MinimumOrderValue: Minimum order value for this service. If set,
9826	// indicates that customers will have to spend at least this amount. All
9827	// prices within a service must have the same currency.
9828	MinimumOrderValue *Price `json:"minimumOrderValue,omitempty"`
9829
9830	// Name: Free-form name of the service. Must be unique within target
9831	// account. Required.
9832	Name string `json:"name,omitempty"`
9833
9834	// PickupService: The carrier-service pair delivering items to
9835	// collection points. The list of supported pickup services can be
9836	// retrieved via the getSupportedPickupServices method. Required if and
9837	// only if the service delivery type is pickup.
9838	PickupService *PickupCarrierService `json:"pickupService,omitempty"`
9839
9840	// RateGroups: Shipping rate group definitions. Only the last one is
9841	// allowed to have an empty applicableShippingLabels, which means
9842	// "everything else". The other applicableShippingLabels must not
9843	// overlap.
9844	RateGroups []*RateGroup `json:"rateGroups,omitempty"`
9845
9846	// ShipmentType: Type of locations this service ships orders to.
9847	ShipmentType string `json:"shipmentType,omitempty"`
9848
9849	// ForceSendFields is a list of field names (e.g. "Active") to
9850	// unconditionally include in API requests. By default, fields with
9851	// empty values are omitted from API requests. However, any non-pointer,
9852	// non-interface field appearing in ForceSendFields will be sent to the
9853	// server regardless of whether the field is empty or not. This may be
9854	// used to include empty fields in Patch requests.
9855	ForceSendFields []string `json:"-"`
9856
9857	// NullFields is a list of field names (e.g. "Active") to include in API
9858	// requests with the JSON null value. By default, fields with empty
9859	// values are omitted from API requests. However, any field with an
9860	// empty value appearing in NullFields will be sent to the server as
9861	// null. It is an error if a field in this list has a non-empty value.
9862	// This may be used to include null fields in Patch requests.
9863	NullFields []string `json:"-"`
9864}
9865
9866func (s *Service) MarshalJSON() ([]byte, error) {
9867	type NoMethod Service
9868	raw := NoMethod(*s)
9869	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9870}
9871
9872type ShipmentInvoice struct {
9873	// InvoiceSummary: [required] Invoice summary.
9874	InvoiceSummary *InvoiceSummary `json:"invoiceSummary,omitempty"`
9875
9876	// LineItemInvoices: [required] Invoice details per line item.
9877	LineItemInvoices []*ShipmentInvoiceLineItemInvoice `json:"lineItemInvoices,omitempty"`
9878
9879	// ShipmentGroupId: [required] ID of the shipment group. It is assigned
9880	// by the merchant in the shipLineItems method and is used to group
9881	// multiple line items that have the same kind of shipping charges.
9882	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
9883
9884	// ForceSendFields is a list of field names (e.g. "InvoiceSummary") to
9885	// unconditionally include in API requests. By default, fields with
9886	// empty values are omitted from API requests. However, any non-pointer,
9887	// non-interface field appearing in ForceSendFields will be sent to the
9888	// server regardless of whether the field is empty or not. This may be
9889	// used to include empty fields in Patch requests.
9890	ForceSendFields []string `json:"-"`
9891
9892	// NullFields is a list of field names (e.g. "InvoiceSummary") to
9893	// include in API requests with the JSON null value. By default, fields
9894	// with empty values are omitted from API requests. However, any field
9895	// with an empty value appearing in NullFields will be sent to the
9896	// server as null. It is an error if a field in this list has a
9897	// non-empty value. This may be used to include null fields in Patch
9898	// requests.
9899	NullFields []string `json:"-"`
9900}
9901
9902func (s *ShipmentInvoice) MarshalJSON() ([]byte, error) {
9903	type NoMethod ShipmentInvoice
9904	raw := NoMethod(*s)
9905	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9906}
9907
9908type ShipmentInvoiceLineItemInvoice struct {
9909	// LineItemId: ID of the line item. Either lineItemId or productId must
9910	// be set.
9911	LineItemId string `json:"lineItemId,omitempty"`
9912
9913	// ProductId: ID of the product. This is the REST ID used in the
9914	// products service. Either lineItemId or productId must be set.
9915	ProductId string `json:"productId,omitempty"`
9916
9917	// ShipmentUnitIds: [required] The shipment unit ID is assigned by the
9918	// merchant and defines individual quantities within a line item. The
9919	// same ID can be assigned to units that are the same while units that
9920	// differ must be assigned a different ID (for example: free or
9921	// promotional units).
9922	ShipmentUnitIds []string `json:"shipmentUnitIds,omitempty"`
9923
9924	// UnitInvoice: [required] Invoice details for a single unit.
9925	UnitInvoice *UnitInvoice `json:"unitInvoice,omitempty"`
9926
9927	// ForceSendFields is a list of field names (e.g. "LineItemId") to
9928	// unconditionally include in API requests. By default, fields with
9929	// empty values are omitted from API requests. However, any non-pointer,
9930	// non-interface field appearing in ForceSendFields will be sent to the
9931	// server regardless of whether the field is empty or not. This may be
9932	// used to include empty fields in Patch requests.
9933	ForceSendFields []string `json:"-"`
9934
9935	// NullFields is a list of field names (e.g. "LineItemId") to include in
9936	// API requests with the JSON null value. By default, fields with empty
9937	// values are omitted from API requests. However, any field with an
9938	// empty value appearing in NullFields will be sent to the server as
9939	// null. It is an error if a field in this list has a non-empty value.
9940	// This may be used to include null fields in Patch requests.
9941	NullFields []string `json:"-"`
9942}
9943
9944func (s *ShipmentInvoiceLineItemInvoice) MarshalJSON() ([]byte, error) {
9945	type NoMethod ShipmentInvoiceLineItemInvoice
9946	raw := NoMethod(*s)
9947	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9948}
9949
9950type ShipmentTrackingInfo struct {
9951	// Carrier: The shipping carrier that handles the package.
9952	Carrier string `json:"carrier,omitempty"`
9953
9954	// TrackingNumber: The tracking number for the package.
9955	TrackingNumber string `json:"trackingNumber,omitempty"`
9956
9957	// ForceSendFields is a list of field names (e.g. "Carrier") to
9958	// unconditionally include in API requests. By default, fields with
9959	// empty values are omitted from API requests. However, any non-pointer,
9960	// non-interface field appearing in ForceSendFields will be sent to the
9961	// server regardless of whether the field is empty or not. This may be
9962	// used to include empty fields in Patch requests.
9963	ForceSendFields []string `json:"-"`
9964
9965	// NullFields is a list of field names (e.g. "Carrier") to include in
9966	// API requests with the JSON null value. By default, fields with empty
9967	// values are omitted from API requests. However, any field with an
9968	// empty value appearing in NullFields will be sent to the server as
9969	// null. It is an error if a field in this list has a non-empty value.
9970	// This may be used to include null fields in Patch requests.
9971	NullFields []string `json:"-"`
9972}
9973
9974func (s *ShipmentTrackingInfo) MarshalJSON() ([]byte, error) {
9975	type NoMethod ShipmentTrackingInfo
9976	raw := NoMethod(*s)
9977	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9978}
9979
9980// ShippingSettings: The merchant account's shipping settings. All
9981// methods except getsupportedcarriers and getsupportedholidays require
9982// the admin role.
9983type ShippingSettings struct {
9984	// AccountId: The ID of the account to which these account shipping
9985	// settings belong. Ignored upon update, always present in get request
9986	// responses.
9987	AccountId uint64 `json:"accountId,omitempty,string"`
9988
9989	// PostalCodeGroups: A list of postal code groups that can be referred
9990	// to in services. Optional.
9991	PostalCodeGroups []*PostalCodeGroup `json:"postalCodeGroups,omitempty"`
9992
9993	// Services: The target account's list of services. Optional.
9994	Services []*Service `json:"services,omitempty"`
9995
9996	// ServerResponse contains the HTTP response code and headers from the
9997	// server.
9998	googleapi.ServerResponse `json:"-"`
9999
10000	// ForceSendFields is a list of field names (e.g. "AccountId") to
10001	// unconditionally include in API requests. By default, fields with
10002	// empty values are omitted from API requests. However, any non-pointer,
10003	// non-interface field appearing in ForceSendFields will be sent to the
10004	// server regardless of whether the field is empty or not. This may be
10005	// used to include empty fields in Patch requests.
10006	ForceSendFields []string `json:"-"`
10007
10008	// NullFields is a list of field names (e.g. "AccountId") to include in
10009	// API requests with the JSON null value. By default, fields with empty
10010	// values are omitted from API requests. However, any field with an
10011	// empty value appearing in NullFields will be sent to the server as
10012	// null. It is an error if a field in this list has a non-empty value.
10013	// This may be used to include null fields in Patch requests.
10014	NullFields []string `json:"-"`
10015}
10016
10017func (s *ShippingSettings) MarshalJSON() ([]byte, error) {
10018	type NoMethod ShippingSettings
10019	raw := NoMethod(*s)
10020	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10021}
10022
10023type ShippingsettingsCustomBatchRequest struct {
10024	// Entries: The request entries to be processed in the batch.
10025	Entries []*ShippingsettingsCustomBatchRequestEntry `json:"entries,omitempty"`
10026
10027	// ForceSendFields is a list of field names (e.g. "Entries") to
10028	// unconditionally include in API requests. By default, fields with
10029	// empty values are omitted from API requests. However, any non-pointer,
10030	// non-interface field appearing in ForceSendFields will be sent to the
10031	// server regardless of whether the field is empty or not. This may be
10032	// used to include empty fields in Patch requests.
10033	ForceSendFields []string `json:"-"`
10034
10035	// NullFields is a list of field names (e.g. "Entries") to include in
10036	// API requests with the JSON null value. By default, fields with empty
10037	// values are omitted from API requests. However, any field with an
10038	// empty value appearing in NullFields will be sent to the server as
10039	// null. It is an error if a field in this list has a non-empty value.
10040	// This may be used to include null fields in Patch requests.
10041	NullFields []string `json:"-"`
10042}
10043
10044func (s *ShippingsettingsCustomBatchRequest) MarshalJSON() ([]byte, error) {
10045	type NoMethod ShippingsettingsCustomBatchRequest
10046	raw := NoMethod(*s)
10047	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10048}
10049
10050// ShippingsettingsCustomBatchRequestEntry: A batch entry encoding a
10051// single non-batch shippingsettings request.
10052type ShippingsettingsCustomBatchRequestEntry struct {
10053	// AccountId: The ID of the account for which to get/update account
10054	// shipping settings.
10055	AccountId uint64 `json:"accountId,omitempty,string"`
10056
10057	// BatchId: An entry ID, unique within the batch request.
10058	BatchId int64 `json:"batchId,omitempty"`
10059
10060	// MerchantId: The ID of the managing account.
10061	MerchantId uint64 `json:"merchantId,omitempty,string"`
10062
10063	Method string `json:"method,omitempty"`
10064
10065	// ShippingSettings: The account shipping settings to update. Only
10066	// defined if the method is update.
10067	ShippingSettings *ShippingSettings `json:"shippingSettings,omitempty"`
10068
10069	// ForceSendFields is a list of field names (e.g. "AccountId") to
10070	// unconditionally include in API requests. By default, fields with
10071	// empty values are omitted from API requests. However, any non-pointer,
10072	// non-interface field appearing in ForceSendFields will be sent to the
10073	// server regardless of whether the field is empty or not. This may be
10074	// used to include empty fields in Patch requests.
10075	ForceSendFields []string `json:"-"`
10076
10077	// NullFields is a list of field names (e.g. "AccountId") to include in
10078	// API requests with the JSON null value. By default, fields with empty
10079	// values are omitted from API requests. However, any field with an
10080	// empty value appearing in NullFields will be sent to the server as
10081	// null. It is an error if a field in this list has a non-empty value.
10082	// This may be used to include null fields in Patch requests.
10083	NullFields []string `json:"-"`
10084}
10085
10086func (s *ShippingsettingsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
10087	type NoMethod ShippingsettingsCustomBatchRequestEntry
10088	raw := NoMethod(*s)
10089	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10090}
10091
10092type ShippingsettingsCustomBatchResponse struct {
10093	// Entries: The result of the execution of the batch requests.
10094	Entries []*ShippingsettingsCustomBatchResponseEntry `json:"entries,omitempty"`
10095
10096	// Kind: Identifies what kind of resource this is. Value: the fixed
10097	// string "content#shippingsettingsCustomBatchResponse".
10098	Kind string `json:"kind,omitempty"`
10099
10100	// ServerResponse contains the HTTP response code and headers from the
10101	// server.
10102	googleapi.ServerResponse `json:"-"`
10103
10104	// ForceSendFields is a list of field names (e.g. "Entries") to
10105	// unconditionally include in API requests. By default, fields with
10106	// empty values are omitted from API requests. However, any non-pointer,
10107	// non-interface field appearing in ForceSendFields will be sent to the
10108	// server regardless of whether the field is empty or not. This may be
10109	// used to include empty fields in Patch requests.
10110	ForceSendFields []string `json:"-"`
10111
10112	// NullFields is a list of field names (e.g. "Entries") to include in
10113	// API requests with the JSON null value. By default, fields with empty
10114	// values are omitted from API requests. However, any field with an
10115	// empty value appearing in NullFields will be sent to the server as
10116	// null. It is an error if a field in this list has a non-empty value.
10117	// This may be used to include null fields in Patch requests.
10118	NullFields []string `json:"-"`
10119}
10120
10121func (s *ShippingsettingsCustomBatchResponse) MarshalJSON() ([]byte, error) {
10122	type NoMethod ShippingsettingsCustomBatchResponse
10123	raw := NoMethod(*s)
10124	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10125}
10126
10127// ShippingsettingsCustomBatchResponseEntry: A batch entry encoding a
10128// single non-batch shipping settings response.
10129type ShippingsettingsCustomBatchResponseEntry struct {
10130	// BatchId: The ID of the request entry to which this entry responds.
10131	BatchId int64 `json:"batchId,omitempty"`
10132
10133	// Errors: A list of errors defined if, and only if, the request failed.
10134	Errors *Errors `json:"errors,omitempty"`
10135
10136	// Kind: Identifies what kind of resource this is. Value: the fixed
10137	// string "content#shippingsettingsCustomBatchResponseEntry".
10138	Kind string `json:"kind,omitempty"`
10139
10140	// ShippingSettings: The retrieved or updated account shipping settings.
10141	ShippingSettings *ShippingSettings `json:"shippingSettings,omitempty"`
10142
10143	// ForceSendFields is a list of field names (e.g. "BatchId") to
10144	// unconditionally include in API requests. By default, fields with
10145	// empty values are omitted from API requests. However, any non-pointer,
10146	// non-interface field appearing in ForceSendFields will be sent to the
10147	// server regardless of whether the field is empty or not. This may be
10148	// used to include empty fields in Patch requests.
10149	ForceSendFields []string `json:"-"`
10150
10151	// NullFields is a list of field names (e.g. "BatchId") to include in
10152	// API requests with the JSON null value. By default, fields with empty
10153	// values are omitted from API requests. However, any field with an
10154	// empty value appearing in NullFields will be sent to the server as
10155	// null. It is an error if a field in this list has a non-empty value.
10156	// This may be used to include null fields in Patch requests.
10157	NullFields []string `json:"-"`
10158}
10159
10160func (s *ShippingsettingsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
10161	type NoMethod ShippingsettingsCustomBatchResponseEntry
10162	raw := NoMethod(*s)
10163	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10164}
10165
10166type ShippingsettingsGetSupportedCarriersResponse struct {
10167	// Carriers: A list of supported carriers. May be empty.
10168	Carriers []*CarriersCarrier `json:"carriers,omitempty"`
10169
10170	// Kind: Identifies what kind of resource this is. Value: the fixed
10171	// string "content#shippingsettingsGetSupportedCarriersResponse".
10172	Kind string `json:"kind,omitempty"`
10173
10174	// ServerResponse contains the HTTP response code and headers from the
10175	// server.
10176	googleapi.ServerResponse `json:"-"`
10177
10178	// ForceSendFields is a list of field names (e.g. "Carriers") to
10179	// unconditionally include in API requests. By default, fields with
10180	// empty values are omitted from API requests. However, any non-pointer,
10181	// non-interface field appearing in ForceSendFields will be sent to the
10182	// server regardless of whether the field is empty or not. This may be
10183	// used to include empty fields in Patch requests.
10184	ForceSendFields []string `json:"-"`
10185
10186	// NullFields is a list of field names (e.g. "Carriers") to include in
10187	// API requests with the JSON null value. By default, fields with empty
10188	// values are omitted from API requests. However, any field with an
10189	// empty value appearing in NullFields will be sent to the server as
10190	// null. It is an error if a field in this list has a non-empty value.
10191	// This may be used to include null fields in Patch requests.
10192	NullFields []string `json:"-"`
10193}
10194
10195func (s *ShippingsettingsGetSupportedCarriersResponse) MarshalJSON() ([]byte, error) {
10196	type NoMethod ShippingsettingsGetSupportedCarriersResponse
10197	raw := NoMethod(*s)
10198	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10199}
10200
10201type ShippingsettingsGetSupportedHolidaysResponse struct {
10202	// Holidays: A list of holidays applicable for delivery guarantees. May
10203	// be empty.
10204	Holidays []*HolidaysHoliday `json:"holidays,omitempty"`
10205
10206	// Kind: Identifies what kind of resource this is. Value: the fixed
10207	// string "content#shippingsettingsGetSupportedHolidaysResponse".
10208	Kind string `json:"kind,omitempty"`
10209
10210	// ServerResponse contains the HTTP response code and headers from the
10211	// server.
10212	googleapi.ServerResponse `json:"-"`
10213
10214	// ForceSendFields is a list of field names (e.g. "Holidays") to
10215	// unconditionally include in API requests. By default, fields with
10216	// empty values are omitted from API requests. However, any non-pointer,
10217	// non-interface field appearing in ForceSendFields will be sent to the
10218	// server regardless of whether the field is empty or not. This may be
10219	// used to include empty fields in Patch requests.
10220	ForceSendFields []string `json:"-"`
10221
10222	// NullFields is a list of field names (e.g. "Holidays") to include in
10223	// API requests with the JSON null value. By default, fields with empty
10224	// values are omitted from API requests. However, any field with an
10225	// empty value appearing in NullFields will be sent to the server as
10226	// null. It is an error if a field in this list has a non-empty value.
10227	// This may be used to include null fields in Patch requests.
10228	NullFields []string `json:"-"`
10229}
10230
10231func (s *ShippingsettingsGetSupportedHolidaysResponse) MarshalJSON() ([]byte, error) {
10232	type NoMethod ShippingsettingsGetSupportedHolidaysResponse
10233	raw := NoMethod(*s)
10234	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10235}
10236
10237type ShippingsettingsGetSupportedPickupServicesResponse struct {
10238	// Kind: Identifies what kind of resource this is. Value: the fixed
10239	// string "content#shippingsettingsGetSupportedPickupServicesResponse".
10240	Kind string `json:"kind,omitempty"`
10241
10242	// PickupServices: A list of supported pickup services. May be empty.
10243	PickupServices []*PickupServicesPickupService `json:"pickupServices,omitempty"`
10244
10245	// ServerResponse contains the HTTP response code and headers from the
10246	// server.
10247	googleapi.ServerResponse `json:"-"`
10248
10249	// ForceSendFields is a list of field names (e.g. "Kind") to
10250	// unconditionally include in API requests. By default, fields with
10251	// empty values are omitted from API requests. However, any non-pointer,
10252	// non-interface field appearing in ForceSendFields will be sent to the
10253	// server regardless of whether the field is empty or not. This may be
10254	// used to include empty fields in Patch requests.
10255	ForceSendFields []string `json:"-"`
10256
10257	// NullFields is a list of field names (e.g. "Kind") to include in API
10258	// requests with the JSON null value. By default, fields with empty
10259	// values are omitted from API requests. However, any field with an
10260	// empty value appearing in NullFields will be sent to the server as
10261	// null. It is an error if a field in this list has a non-empty value.
10262	// This may be used to include null fields in Patch requests.
10263	NullFields []string `json:"-"`
10264}
10265
10266func (s *ShippingsettingsGetSupportedPickupServicesResponse) MarshalJSON() ([]byte, error) {
10267	type NoMethod ShippingsettingsGetSupportedPickupServicesResponse
10268	raw := NoMethod(*s)
10269	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10270}
10271
10272type ShippingsettingsListResponse struct {
10273	// Kind: Identifies what kind of resource this is. Value: the fixed
10274	// string "content#shippingsettingsListResponse".
10275	Kind string `json:"kind,omitempty"`
10276
10277	// NextPageToken: The token for the retrieval of the next page of
10278	// shipping settings.
10279	NextPageToken string `json:"nextPageToken,omitempty"`
10280
10281	Resources []*ShippingSettings `json:"resources,omitempty"`
10282
10283	// ServerResponse contains the HTTP response code and headers from the
10284	// server.
10285	googleapi.ServerResponse `json:"-"`
10286
10287	// ForceSendFields is a list of field names (e.g. "Kind") to
10288	// unconditionally include in API requests. By default, fields with
10289	// empty values are omitted from API requests. However, any non-pointer,
10290	// non-interface field appearing in ForceSendFields will be sent to the
10291	// server regardless of whether the field is empty or not. This may be
10292	// used to include empty fields in Patch requests.
10293	ForceSendFields []string `json:"-"`
10294
10295	// NullFields is a list of field names (e.g. "Kind") to include in API
10296	// requests with the JSON null value. By default, fields with empty
10297	// values are omitted from API requests. However, any field with an
10298	// empty value appearing in NullFields will be sent to the server as
10299	// null. It is an error if a field in this list has a non-empty value.
10300	// This may be used to include null fields in Patch requests.
10301	NullFields []string `json:"-"`
10302}
10303
10304func (s *ShippingsettingsListResponse) MarshalJSON() ([]byte, error) {
10305	type NoMethod ShippingsettingsListResponse
10306	raw := NoMethod(*s)
10307	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10308}
10309
10310type Table struct {
10311	// ColumnHeaders: Headers of the table's columns. Optional: if not set
10312	// then the table has only one dimension.
10313	ColumnHeaders *Headers `json:"columnHeaders,omitempty"`
10314
10315	// Name: Name of the table. Required for subtables, ignored for the main
10316	// table.
10317	Name string `json:"name,omitempty"`
10318
10319	// RowHeaders: Headers of the table's rows. Required.
10320	RowHeaders *Headers `json:"rowHeaders,omitempty"`
10321
10322	// Rows: The list of rows that constitute the table. Must have the same
10323	// length as rowHeaders. Required.
10324	Rows []*Row `json:"rows,omitempty"`
10325
10326	// ForceSendFields is a list of field names (e.g. "ColumnHeaders") to
10327	// unconditionally include in API requests. By default, fields with
10328	// empty values are omitted from API requests. However, any non-pointer,
10329	// non-interface field appearing in ForceSendFields will be sent to the
10330	// server regardless of whether the field is empty or not. This may be
10331	// used to include empty fields in Patch requests.
10332	ForceSendFields []string `json:"-"`
10333
10334	// NullFields is a list of field names (e.g. "ColumnHeaders") to include
10335	// in API requests with the JSON null value. By default, fields with
10336	// empty values are omitted from API requests. However, any field with
10337	// an empty value appearing in NullFields will be sent to the server as
10338	// null. It is an error if a field in this list has a non-empty value.
10339	// This may be used to include null fields in Patch requests.
10340	NullFields []string `json:"-"`
10341}
10342
10343func (s *Table) MarshalJSON() ([]byte, error) {
10344	type NoMethod Table
10345	raw := NoMethod(*s)
10346	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10347}
10348
10349type TestOrder struct {
10350	// EnableOrderinvoices: Whether the orderinvoices service should support
10351	// this order.
10352	EnableOrderinvoices bool `json:"enableOrderinvoices,omitempty"`
10353
10354	// Kind: Identifies what kind of resource this is. Value: the fixed
10355	// string "content#testOrder".
10356	Kind string `json:"kind,omitempty"`
10357
10358	// LineItems: Line items that are ordered. At least one line item must
10359	// be provided.
10360	LineItems []*TestOrderLineItem `json:"lineItems,omitempty"`
10361
10362	// NotificationMode: Determines if test order must be pulled by merchant
10363	// or pushed to merchant via push integration.
10364	NotificationMode string `json:"notificationMode,omitempty"`
10365
10366	// PredefinedBillingAddress: The billing address.
10367	PredefinedBillingAddress string `json:"predefinedBillingAddress,omitempty"`
10368
10369	// PredefinedDeliveryAddress: Identifier of one of the predefined
10370	// delivery addresses for the delivery.
10371	PredefinedDeliveryAddress string `json:"predefinedDeliveryAddress,omitempty"`
10372
10373	// PredefinedEmail: Email address of the customer.
10374	PredefinedEmail string `json:"predefinedEmail,omitempty"`
10375
10376	// PredefinedPickupDetails: Identifier of one of the predefined pickup
10377	// details. Required for orders containing line items with shipping type
10378	// pickup.
10379	PredefinedPickupDetails string `json:"predefinedPickupDetails,omitempty"`
10380
10381	// Promotions: Promotions associated with the order.
10382	Promotions []*OrderPromotion `json:"promotions,omitempty"`
10383
10384	// ShippingCost: The price of shipping for all items. Shipping tax is
10385	// automatically calculated for orders where marketplace facilitator tax
10386	// laws are applicable. Otherwise, tax settings from Merchant Center are
10387	// applied. Note that shipping is not taxed in certain states.
10388	ShippingCost *Price `json:"shippingCost,omitempty"`
10389
10390	// ShippingOption: The requested shipping option.
10391	ShippingOption string `json:"shippingOption,omitempty"`
10392
10393	// ForceSendFields is a list of field names (e.g. "EnableOrderinvoices")
10394	// to unconditionally include in API requests. By default, fields with
10395	// empty values are omitted from API requests. However, any non-pointer,
10396	// non-interface field appearing in ForceSendFields will be sent to the
10397	// server regardless of whether the field is empty or not. This may be
10398	// used to include empty fields in Patch requests.
10399	ForceSendFields []string `json:"-"`
10400
10401	// NullFields is a list of field names (e.g. "EnableOrderinvoices") to
10402	// include in API requests with the JSON null value. By default, fields
10403	// with empty values are omitted from API requests. However, any field
10404	// with an empty value appearing in NullFields will be sent to the
10405	// server as null. It is an error if a field in this list has a
10406	// non-empty value. This may be used to include null fields in Patch
10407	// requests.
10408	NullFields []string `json:"-"`
10409}
10410
10411func (s *TestOrder) MarshalJSON() ([]byte, error) {
10412	type NoMethod TestOrder
10413	raw := NoMethod(*s)
10414	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10415}
10416
10417type TestOrderLineItem struct {
10418	// Product: Product data from the time of the order placement.
10419	Product *TestOrderLineItemProduct `json:"product,omitempty"`
10420
10421	// QuantityOrdered: Number of items ordered.
10422	QuantityOrdered int64 `json:"quantityOrdered,omitempty"`
10423
10424	// ReturnInfo: Details of the return policy for the line item.
10425	ReturnInfo *OrderLineItemReturnInfo `json:"returnInfo,omitempty"`
10426
10427	// ShippingDetails: Details of the requested shipping for the line item.
10428	ShippingDetails *OrderLineItemShippingDetails `json:"shippingDetails,omitempty"`
10429
10430	// ForceSendFields is a list of field names (e.g. "Product") to
10431	// unconditionally include in API requests. By default, fields with
10432	// empty values are omitted from API requests. However, any non-pointer,
10433	// non-interface field appearing in ForceSendFields will be sent to the
10434	// server regardless of whether the field is empty or not. This may be
10435	// used to include empty fields in Patch requests.
10436	ForceSendFields []string `json:"-"`
10437
10438	// NullFields is a list of field names (e.g. "Product") to include in
10439	// API requests with the JSON null value. By default, fields with empty
10440	// values are omitted from API requests. However, any field with an
10441	// empty value appearing in NullFields will be sent to the server as
10442	// null. It is an error if a field in this list has a non-empty value.
10443	// This may be used to include null fields in Patch requests.
10444	NullFields []string `json:"-"`
10445}
10446
10447func (s *TestOrderLineItem) MarshalJSON() ([]byte, error) {
10448	type NoMethod TestOrderLineItem
10449	raw := NoMethod(*s)
10450	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10451}
10452
10453type TestOrderLineItemProduct struct {
10454	// Brand: Brand of the item.
10455	Brand string `json:"brand,omitempty"`
10456
10457	// Condition: Condition or state of the item.
10458	Condition string `json:"condition,omitempty"`
10459
10460	// ContentLanguage: The two-letter ISO 639-1 language code for the item.
10461	ContentLanguage string `json:"contentLanguage,omitempty"`
10462
10463	// Fees: Fees for the item. Optional.
10464	Fees []*OrderLineItemProductFee `json:"fees,omitempty"`
10465
10466	// Gtin: Global Trade Item Number (GTIN) of the item. Optional.
10467	Gtin string `json:"gtin,omitempty"`
10468
10469	// ImageLink: URL of an image of the item.
10470	ImageLink string `json:"imageLink,omitempty"`
10471
10472	// ItemGroupId: Shared identifier for all variants of the same product.
10473	// Optional.
10474	ItemGroupId string `json:"itemGroupId,omitempty"`
10475
10476	// Mpn: Manufacturer Part Number (MPN) of the item. Optional.
10477	Mpn string `json:"mpn,omitempty"`
10478
10479	// OfferId: An identifier of the item.
10480	OfferId string `json:"offerId,omitempty"`
10481
10482	// Price: The price for the product. Tax is automatically calculated for
10483	// orders where marketplace facilitator tax laws are applicable.
10484	// Otherwise, tax settings from Merchant Center are applied.
10485	Price *Price `json:"price,omitempty"`
10486
10487	// TargetCountry: The CLDR territory code of the target country of the
10488	// product.
10489	TargetCountry string `json:"targetCountry,omitempty"`
10490
10491	// Title: The title of the product.
10492	Title string `json:"title,omitempty"`
10493
10494	// VariantAttributes: Variant attributes for the item. Optional.
10495	VariantAttributes []*OrderLineItemProductVariantAttribute `json:"variantAttributes,omitempty"`
10496
10497	// ForceSendFields is a list of field names (e.g. "Brand") to
10498	// unconditionally include in API requests. By default, fields with
10499	// empty values are omitted from API requests. However, any non-pointer,
10500	// non-interface field appearing in ForceSendFields will be sent to the
10501	// server regardless of whether the field is empty or not. This may be
10502	// used to include empty fields in Patch requests.
10503	ForceSendFields []string `json:"-"`
10504
10505	// NullFields is a list of field names (e.g. "Brand") to include in API
10506	// requests with the JSON null value. By default, fields with empty
10507	// values are omitted from API requests. However, any field with an
10508	// empty value appearing in NullFields will be sent to the server as
10509	// null. It is an error if a field in this list has a non-empty value.
10510	// This may be used to include null fields in Patch requests.
10511	NullFields []string `json:"-"`
10512}
10513
10514func (s *TestOrderLineItemProduct) MarshalJSON() ([]byte, error) {
10515	type NoMethod TestOrderLineItemProduct
10516	raw := NoMethod(*s)
10517	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10518}
10519
10520type TransitTable struct {
10521	// PostalCodeGroupNames: A list of postal group names. The last value
10522	// can be "all other locations". Example: ["zone 1", "zone 2", "all
10523	// other locations"]. The referred postal code groups must match the
10524	// delivery country of the service.
10525	PostalCodeGroupNames []string `json:"postalCodeGroupNames,omitempty"`
10526
10527	Rows []*TransitTableTransitTimeRow `json:"rows,omitempty"`
10528
10529	// TransitTimeLabels: A list of transit time labels. The last value can
10530	// be "all other labels". Example: ["food", "electronics", "all other
10531	// labels"].
10532	TransitTimeLabels []string `json:"transitTimeLabels,omitempty"`
10533
10534	// ForceSendFields is a list of field names (e.g.
10535	// "PostalCodeGroupNames") to unconditionally include in API requests.
10536	// By default, fields with empty values are omitted from API requests.
10537	// However, any non-pointer, non-interface field appearing in
10538	// ForceSendFields will be sent to the server regardless of whether the
10539	// field is empty or not. This may be used to include empty fields in
10540	// Patch requests.
10541	ForceSendFields []string `json:"-"`
10542
10543	// NullFields is a list of field names (e.g. "PostalCodeGroupNames") to
10544	// include in API requests with the JSON null value. By default, fields
10545	// with empty values are omitted from API requests. However, any field
10546	// with an empty value appearing in NullFields will be sent to the
10547	// server as null. It is an error if a field in this list has a
10548	// non-empty value. This may be used to include null fields in Patch
10549	// requests.
10550	NullFields []string `json:"-"`
10551}
10552
10553func (s *TransitTable) MarshalJSON() ([]byte, error) {
10554	type NoMethod TransitTable
10555	raw := NoMethod(*s)
10556	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10557}
10558
10559type TransitTableTransitTimeRow struct {
10560	Values []*TransitTableTransitTimeRowTransitTimeValue `json:"values,omitempty"`
10561
10562	// ForceSendFields is a list of field names (e.g. "Values") to
10563	// unconditionally include in API requests. By default, fields with
10564	// empty values are omitted from API requests. However, any non-pointer,
10565	// non-interface field appearing in ForceSendFields will be sent to the
10566	// server regardless of whether the field is empty or not. This may be
10567	// used to include empty fields in Patch requests.
10568	ForceSendFields []string `json:"-"`
10569
10570	// NullFields is a list of field names (e.g. "Values") to include in API
10571	// requests with the JSON null value. By default, fields with empty
10572	// values are omitted from API requests. However, any field with an
10573	// empty value appearing in NullFields will be sent to the server as
10574	// null. It is an error if a field in this list has a non-empty value.
10575	// This may be used to include null fields in Patch requests.
10576	NullFields []string `json:"-"`
10577}
10578
10579func (s *TransitTableTransitTimeRow) MarshalJSON() ([]byte, error) {
10580	type NoMethod TransitTableTransitTimeRow
10581	raw := NoMethod(*s)
10582	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10583}
10584
10585type TransitTableTransitTimeRowTransitTimeValue struct {
10586	// MaxTransitTimeInDays: Must be greater than or equal to
10587	// minTransitTimeInDays.
10588	MaxTransitTimeInDays int64 `json:"maxTransitTimeInDays,omitempty"`
10589
10590	// MinTransitTimeInDays: Transit time range (min-max) in business days.
10591	// 0 means same day delivery, 1 means next day delivery.
10592	MinTransitTimeInDays int64 `json:"minTransitTimeInDays,omitempty"`
10593
10594	// ForceSendFields is a list of field names (e.g.
10595	// "MaxTransitTimeInDays") to unconditionally include in API requests.
10596	// By default, fields with empty values are omitted from API requests.
10597	// However, any non-pointer, non-interface field appearing in
10598	// ForceSendFields will be sent to the server regardless of whether the
10599	// field is empty or not. This may be used to include empty fields in
10600	// Patch requests.
10601	ForceSendFields []string `json:"-"`
10602
10603	// NullFields is a list of field names (e.g. "MaxTransitTimeInDays") to
10604	// include in API requests with the JSON null value. By default, fields
10605	// with empty values are omitted from API requests. However, any field
10606	// with an empty value appearing in NullFields will be sent to the
10607	// server as null. It is an error if a field in this list has a
10608	// non-empty value. This may be used to include null fields in Patch
10609	// requests.
10610	NullFields []string `json:"-"`
10611}
10612
10613func (s *TransitTableTransitTimeRowTransitTimeValue) MarshalJSON() ([]byte, error) {
10614	type NoMethod TransitTableTransitTimeRowTransitTimeValue
10615	raw := NoMethod(*s)
10616	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10617}
10618
10619type UnitInvoice struct {
10620	// AdditionalCharges: Additional charges for a unit, e.g. shipping
10621	// costs.
10622	AdditionalCharges []*UnitInvoiceAdditionalCharge `json:"additionalCharges,omitempty"`
10623
10624	// UnitPrice: [required] Pre-tax or post-tax price of the unit depending
10625	// on the locality of the order.
10626	UnitPrice *Price `json:"unitPrice,omitempty"`
10627
10628	// UnitPriceTaxes: Tax amounts to apply to the unit price.
10629	UnitPriceTaxes []*UnitInvoiceTaxLine `json:"unitPriceTaxes,omitempty"`
10630
10631	// ForceSendFields is a list of field names (e.g. "AdditionalCharges")
10632	// to unconditionally include in API requests. By default, fields with
10633	// empty values are omitted from API requests. However, any non-pointer,
10634	// non-interface field appearing in ForceSendFields will be sent to the
10635	// server regardless of whether the field is empty or not. This may be
10636	// used to include empty fields in Patch requests.
10637	ForceSendFields []string `json:"-"`
10638
10639	// NullFields is a list of field names (e.g. "AdditionalCharges") to
10640	// include in API requests with the JSON null value. By default, fields
10641	// with empty values are omitted from API requests. However, any field
10642	// with an empty value appearing in NullFields will be sent to the
10643	// server as null. It is an error if a field in this list has a
10644	// non-empty value. This may be used to include null fields in Patch
10645	// requests.
10646	NullFields []string `json:"-"`
10647}
10648
10649func (s *UnitInvoice) MarshalJSON() ([]byte, error) {
10650	type NoMethod UnitInvoice
10651	raw := NoMethod(*s)
10652	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10653}
10654
10655type UnitInvoiceAdditionalCharge struct {
10656	// AdditionalChargeAmount: [required] Amount of the additional charge.
10657	AdditionalChargeAmount *Amount `json:"additionalChargeAmount,omitempty"`
10658
10659	// Type: [required] Type of the additional charge.
10660	Type string `json:"type,omitempty"`
10661
10662	// ForceSendFields is a list of field names (e.g.
10663	// "AdditionalChargeAmount") to unconditionally include in API requests.
10664	// By default, fields with empty values are omitted from API requests.
10665	// However, any non-pointer, non-interface field appearing in
10666	// ForceSendFields will be sent to the server regardless of whether the
10667	// field is empty or not. This may be used to include empty fields in
10668	// Patch requests.
10669	ForceSendFields []string `json:"-"`
10670
10671	// NullFields is a list of field names (e.g. "AdditionalChargeAmount")
10672	// to include in API requests with the JSON null value. By default,
10673	// fields with empty values are omitted from API requests. However, any
10674	// field with an empty value appearing in NullFields will be sent to the
10675	// server as null. It is an error if a field in this list has a
10676	// non-empty value. This may be used to include null fields in Patch
10677	// requests.
10678	NullFields []string `json:"-"`
10679}
10680
10681func (s *UnitInvoiceAdditionalCharge) MarshalJSON() ([]byte, error) {
10682	type NoMethod UnitInvoiceAdditionalCharge
10683	raw := NoMethod(*s)
10684	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10685}
10686
10687type UnitInvoiceTaxLine struct {
10688	// TaxAmount: [required] Tax amount for the tax type.
10689	TaxAmount *Price `json:"taxAmount,omitempty"`
10690
10691	// TaxName: Optional name of the tax type. This should only be provided
10692	// if taxType is otherFeeTax.
10693	TaxName string `json:"taxName,omitempty"`
10694
10695	// TaxType: [required] Type of the tax.
10696	TaxType string `json:"taxType,omitempty"`
10697
10698	// ForceSendFields is a list of field names (e.g. "TaxAmount") to
10699	// unconditionally include in API requests. By default, fields with
10700	// empty values are omitted from API requests. However, any non-pointer,
10701	// non-interface field appearing in ForceSendFields will be sent to the
10702	// server regardless of whether the field is empty or not. This may be
10703	// used to include empty fields in Patch requests.
10704	ForceSendFields []string `json:"-"`
10705
10706	// NullFields is a list of field names (e.g. "TaxAmount") to include in
10707	// API requests with the JSON null value. By default, fields with empty
10708	// values are omitted from API requests. However, any field with an
10709	// empty value appearing in NullFields will be sent to the server as
10710	// null. It is an error if a field in this list has a non-empty value.
10711	// This may be used to include null fields in Patch requests.
10712	NullFields []string `json:"-"`
10713}
10714
10715func (s *UnitInvoiceTaxLine) MarshalJSON() ([]byte, error) {
10716	type NoMethod UnitInvoiceTaxLine
10717	raw := NoMethod(*s)
10718	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10719}
10720
10721// Value: The single value of a rate group or the value of a rate group
10722// table's cell. Exactly one of noShipping, flatRate, pricePercentage,
10723// carrierRateName, subtableName must be set.
10724type Value struct {
10725	// CarrierRateName: The name of a carrier rate referring to a carrier
10726	// rate defined in the same rate group. Can only be set if all other
10727	// fields are not set.
10728	CarrierRateName string `json:"carrierRateName,omitempty"`
10729
10730	// FlatRate: A flat rate. Can only be set if all other fields are not
10731	// set.
10732	FlatRate *Price `json:"flatRate,omitempty"`
10733
10734	// NoShipping: If true, then the product can't ship. Must be true when
10735	// set, can only be set if all other fields are not set.
10736	NoShipping bool `json:"noShipping,omitempty"`
10737
10738	// PricePercentage: A percentage of the price represented as a number in
10739	// decimal notation (e.g., "5.4"). Can only be set if all other fields
10740	// are not set.
10741	PricePercentage string `json:"pricePercentage,omitempty"`
10742
10743	// SubtableName: The name of a subtable. Can only be set in table cells
10744	// (i.e., not for single values), and only if all other fields are not
10745	// set.
10746	SubtableName string `json:"subtableName,omitempty"`
10747
10748	// ForceSendFields is a list of field names (e.g. "CarrierRateName") to
10749	// unconditionally include in API requests. By default, fields with
10750	// empty values are omitted from API requests. However, any non-pointer,
10751	// non-interface field appearing in ForceSendFields will be sent to the
10752	// server regardless of whether the field is empty or not. This may be
10753	// used to include empty fields in Patch requests.
10754	ForceSendFields []string `json:"-"`
10755
10756	// NullFields is a list of field names (e.g. "CarrierRateName") to
10757	// include in API requests with the JSON null value. By default, fields
10758	// with empty values are omitted from API requests. However, any field
10759	// with an empty value appearing in NullFields will be sent to the
10760	// server as null. It is an error if a field in this list has a
10761	// non-empty value. This may be used to include null fields in Patch
10762	// requests.
10763	NullFields []string `json:"-"`
10764}
10765
10766func (s *Value) MarshalJSON() ([]byte, error) {
10767	type NoMethod Value
10768	raw := NoMethod(*s)
10769	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10770}
10771
10772type Weight struct {
10773	// Unit: The weight unit.
10774	Unit string `json:"unit,omitempty"`
10775
10776	// Value: The weight represented as a number.
10777	Value string `json:"value,omitempty"`
10778
10779	// ForceSendFields is a list of field names (e.g. "Unit") to
10780	// unconditionally include in API requests. By default, fields with
10781	// empty values are omitted from API requests. However, any non-pointer,
10782	// non-interface field appearing in ForceSendFields will be sent to the
10783	// server regardless of whether the field is empty or not. This may be
10784	// used to include empty fields in Patch requests.
10785	ForceSendFields []string `json:"-"`
10786
10787	// NullFields is a list of field names (e.g. "Unit") to include in API
10788	// requests with the JSON null value. By default, fields with empty
10789	// values are omitted from API requests. However, any field with an
10790	// empty value appearing in NullFields will be sent to the server as
10791	// null. It is an error if a field in this list has a non-empty value.
10792	// This may be used to include null fields in Patch requests.
10793	NullFields []string `json:"-"`
10794}
10795
10796func (s *Weight) MarshalJSON() ([]byte, error) {
10797	type NoMethod Weight
10798	raw := NoMethod(*s)
10799	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10800}
10801
10802// method id "content.accounts.authinfo":
10803
10804type AccountsAuthinfoCall struct {
10805	s            *APIService
10806	urlParams_   gensupport.URLParams
10807	ifNoneMatch_ string
10808	ctx_         context.Context
10809	header_      http.Header
10810}
10811
10812// Authinfo: Returns information about the authenticated user.
10813func (r *AccountsService) Authinfo() *AccountsAuthinfoCall {
10814	c := &AccountsAuthinfoCall{s: r.s, urlParams_: make(gensupport.URLParams)}
10815	return c
10816}
10817
10818// Fields allows partial responses to be retrieved. See
10819// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
10820// for more information.
10821func (c *AccountsAuthinfoCall) Fields(s ...googleapi.Field) *AccountsAuthinfoCall {
10822	c.urlParams_.Set("fields", googleapi.CombineFields(s))
10823	return c
10824}
10825
10826// IfNoneMatch sets the optional parameter which makes the operation
10827// fail if the object's ETag matches the given value. This is useful for
10828// getting updates only after the object has changed since the last
10829// request. Use googleapi.IsNotModified to check whether the response
10830// error from Do is the result of In-None-Match.
10831func (c *AccountsAuthinfoCall) IfNoneMatch(entityTag string) *AccountsAuthinfoCall {
10832	c.ifNoneMatch_ = entityTag
10833	return c
10834}
10835
10836// Context sets the context to be used in this call's Do method. Any
10837// pending HTTP request will be aborted if the provided context is
10838// canceled.
10839func (c *AccountsAuthinfoCall) Context(ctx context.Context) *AccountsAuthinfoCall {
10840	c.ctx_ = ctx
10841	return c
10842}
10843
10844// Header returns an http.Header that can be modified by the caller to
10845// add HTTP headers to the request.
10846func (c *AccountsAuthinfoCall) Header() http.Header {
10847	if c.header_ == nil {
10848		c.header_ = make(http.Header)
10849	}
10850	return c.header_
10851}
10852
10853func (c *AccountsAuthinfoCall) doRequest(alt string) (*http.Response, error) {
10854	reqHeaders := make(http.Header)
10855	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
10856	for k, v := range c.header_ {
10857		reqHeaders[k] = v
10858	}
10859	reqHeaders.Set("User-Agent", c.s.userAgent())
10860	if c.ifNoneMatch_ != "" {
10861		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
10862	}
10863	var body io.Reader = nil
10864	c.urlParams_.Set("alt", alt)
10865	c.urlParams_.Set("prettyPrint", "false")
10866	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/authinfo")
10867	urls += "?" + c.urlParams_.Encode()
10868	req, err := http.NewRequest("GET", urls, body)
10869	if err != nil {
10870		return nil, err
10871	}
10872	req.Header = reqHeaders
10873	return gensupport.SendRequest(c.ctx_, c.s.client, req)
10874}
10875
10876// Do executes the "content.accounts.authinfo" call.
10877// Exactly one of *AccountsAuthInfoResponse or error will be non-nil.
10878// Any non-2xx status code is an error. Response headers are in either
10879// *AccountsAuthInfoResponse.ServerResponse.Header or (if a response was
10880// returned at all) in error.(*googleapi.Error).Header. Use
10881// googleapi.IsNotModified to check whether the returned error was
10882// because http.StatusNotModified was returned.
10883func (c *AccountsAuthinfoCall) Do(opts ...googleapi.CallOption) (*AccountsAuthInfoResponse, error) {
10884	gensupport.SetOptions(c.urlParams_, opts...)
10885	res, err := c.doRequest("json")
10886	if res != nil && res.StatusCode == http.StatusNotModified {
10887		if res.Body != nil {
10888			res.Body.Close()
10889		}
10890		return nil, &googleapi.Error{
10891			Code:   res.StatusCode,
10892			Header: res.Header,
10893		}
10894	}
10895	if err != nil {
10896		return nil, err
10897	}
10898	defer googleapi.CloseBody(res)
10899	if err := googleapi.CheckResponse(res); err != nil {
10900		return nil, err
10901	}
10902	ret := &AccountsAuthInfoResponse{
10903		ServerResponse: googleapi.ServerResponse{
10904			Header:         res.Header,
10905			HTTPStatusCode: res.StatusCode,
10906		},
10907	}
10908	target := &ret
10909	if err := gensupport.DecodeResponse(target, res); err != nil {
10910		return nil, err
10911	}
10912	return ret, nil
10913	// {
10914	//   "description": "Returns information about the authenticated user.",
10915	//   "httpMethod": "GET",
10916	//   "id": "content.accounts.authinfo",
10917	//   "path": "accounts/authinfo",
10918	//   "response": {
10919	//     "$ref": "AccountsAuthInfoResponse"
10920	//   },
10921	//   "scopes": [
10922	//     "https://www.googleapis.com/auth/content"
10923	//   ]
10924	// }
10925
10926}
10927
10928// method id "content.accounts.claimwebsite":
10929
10930type AccountsClaimwebsiteCall struct {
10931	s          *APIService
10932	merchantId uint64
10933	accountId  uint64
10934	urlParams_ gensupport.URLParams
10935	ctx_       context.Context
10936	header_    http.Header
10937}
10938
10939// Claimwebsite: Claims the website of a Merchant Center sub-account.
10940func (r *AccountsService) Claimwebsite(merchantId uint64, accountId uint64) *AccountsClaimwebsiteCall {
10941	c := &AccountsClaimwebsiteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
10942	c.merchantId = merchantId
10943	c.accountId = accountId
10944	return c
10945}
10946
10947// Overwrite sets the optional parameter "overwrite": Only available to
10948// selected merchants. When set to True, this flag removes any existing
10949// claim on the requested website by another account and replaces it
10950// with a claim from this account.
10951func (c *AccountsClaimwebsiteCall) Overwrite(overwrite bool) *AccountsClaimwebsiteCall {
10952	c.urlParams_.Set("overwrite", fmt.Sprint(overwrite))
10953	return c
10954}
10955
10956// Fields allows partial responses to be retrieved. See
10957// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
10958// for more information.
10959func (c *AccountsClaimwebsiteCall) Fields(s ...googleapi.Field) *AccountsClaimwebsiteCall {
10960	c.urlParams_.Set("fields", googleapi.CombineFields(s))
10961	return c
10962}
10963
10964// Context sets the context to be used in this call's Do method. Any
10965// pending HTTP request will be aborted if the provided context is
10966// canceled.
10967func (c *AccountsClaimwebsiteCall) Context(ctx context.Context) *AccountsClaimwebsiteCall {
10968	c.ctx_ = ctx
10969	return c
10970}
10971
10972// Header returns an http.Header that can be modified by the caller to
10973// add HTTP headers to the request.
10974func (c *AccountsClaimwebsiteCall) Header() http.Header {
10975	if c.header_ == nil {
10976		c.header_ = make(http.Header)
10977	}
10978	return c.header_
10979}
10980
10981func (c *AccountsClaimwebsiteCall) doRequest(alt string) (*http.Response, error) {
10982	reqHeaders := make(http.Header)
10983	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
10984	for k, v := range c.header_ {
10985		reqHeaders[k] = v
10986	}
10987	reqHeaders.Set("User-Agent", c.s.userAgent())
10988	var body io.Reader = nil
10989	c.urlParams_.Set("alt", alt)
10990	c.urlParams_.Set("prettyPrint", "false")
10991	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}/claimwebsite")
10992	urls += "?" + c.urlParams_.Encode()
10993	req, err := http.NewRequest("POST", urls, body)
10994	if err != nil {
10995		return nil, err
10996	}
10997	req.Header = reqHeaders
10998	googleapi.Expand(req.URL, map[string]string{
10999		"merchantId": strconv.FormatUint(c.merchantId, 10),
11000		"accountId":  strconv.FormatUint(c.accountId, 10),
11001	})
11002	return gensupport.SendRequest(c.ctx_, c.s.client, req)
11003}
11004
11005// Do executes the "content.accounts.claimwebsite" call.
11006// Exactly one of *AccountsClaimWebsiteResponse or error will be
11007// non-nil. Any non-2xx status code is an error. Response headers are in
11008// either *AccountsClaimWebsiteResponse.ServerResponse.Header or (if a
11009// response was returned at all) in error.(*googleapi.Error).Header. Use
11010// googleapi.IsNotModified to check whether the returned error was
11011// because http.StatusNotModified was returned.
11012func (c *AccountsClaimwebsiteCall) Do(opts ...googleapi.CallOption) (*AccountsClaimWebsiteResponse, error) {
11013	gensupport.SetOptions(c.urlParams_, opts...)
11014	res, err := c.doRequest("json")
11015	if res != nil && res.StatusCode == http.StatusNotModified {
11016		if res.Body != nil {
11017			res.Body.Close()
11018		}
11019		return nil, &googleapi.Error{
11020			Code:   res.StatusCode,
11021			Header: res.Header,
11022		}
11023	}
11024	if err != nil {
11025		return nil, err
11026	}
11027	defer googleapi.CloseBody(res)
11028	if err := googleapi.CheckResponse(res); err != nil {
11029		return nil, err
11030	}
11031	ret := &AccountsClaimWebsiteResponse{
11032		ServerResponse: googleapi.ServerResponse{
11033			Header:         res.Header,
11034			HTTPStatusCode: res.StatusCode,
11035		},
11036	}
11037	target := &ret
11038	if err := gensupport.DecodeResponse(target, res); err != nil {
11039		return nil, err
11040	}
11041	return ret, nil
11042	// {
11043	//   "description": "Claims the website of a Merchant Center sub-account.",
11044	//   "httpMethod": "POST",
11045	//   "id": "content.accounts.claimwebsite",
11046	//   "parameterOrder": [
11047	//     "merchantId",
11048	//     "accountId"
11049	//   ],
11050	//   "parameters": {
11051	//     "accountId": {
11052	//       "description": "The ID of the account whose website is claimed.",
11053	//       "format": "uint64",
11054	//       "location": "path",
11055	//       "required": true,
11056	//       "type": "string"
11057	//     },
11058	//     "merchantId": {
11059	//       "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.",
11060	//       "format": "uint64",
11061	//       "location": "path",
11062	//       "required": true,
11063	//       "type": "string"
11064	//     },
11065	//     "overwrite": {
11066	//       "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.",
11067	//       "location": "query",
11068	//       "type": "boolean"
11069	//     }
11070	//   },
11071	//   "path": "{merchantId}/accounts/{accountId}/claimwebsite",
11072	//   "response": {
11073	//     "$ref": "AccountsClaimWebsiteResponse"
11074	//   },
11075	//   "scopes": [
11076	//     "https://www.googleapis.com/auth/content"
11077	//   ]
11078	// }
11079
11080}
11081
11082// method id "content.accounts.custombatch":
11083
11084type AccountsCustombatchCall struct {
11085	s                          *APIService
11086	accountscustombatchrequest *AccountsCustomBatchRequest
11087	urlParams_                 gensupport.URLParams
11088	ctx_                       context.Context
11089	header_                    http.Header
11090}
11091
11092// Custombatch: Retrieves, inserts, updates, and deletes multiple
11093// Merchant Center (sub-)accounts in a single request.
11094func (r *AccountsService) Custombatch(accountscustombatchrequest *AccountsCustomBatchRequest) *AccountsCustombatchCall {
11095	c := &AccountsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
11096	c.accountscustombatchrequest = accountscustombatchrequest
11097	return c
11098}
11099
11100// Fields allows partial responses to be retrieved. See
11101// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
11102// for more information.
11103func (c *AccountsCustombatchCall) Fields(s ...googleapi.Field) *AccountsCustombatchCall {
11104	c.urlParams_.Set("fields", googleapi.CombineFields(s))
11105	return c
11106}
11107
11108// Context sets the context to be used in this call's Do method. Any
11109// pending HTTP request will be aborted if the provided context is
11110// canceled.
11111func (c *AccountsCustombatchCall) Context(ctx context.Context) *AccountsCustombatchCall {
11112	c.ctx_ = ctx
11113	return c
11114}
11115
11116// Header returns an http.Header that can be modified by the caller to
11117// add HTTP headers to the request.
11118func (c *AccountsCustombatchCall) Header() http.Header {
11119	if c.header_ == nil {
11120		c.header_ = make(http.Header)
11121	}
11122	return c.header_
11123}
11124
11125func (c *AccountsCustombatchCall) doRequest(alt string) (*http.Response, error) {
11126	reqHeaders := make(http.Header)
11127	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
11128	for k, v := range c.header_ {
11129		reqHeaders[k] = v
11130	}
11131	reqHeaders.Set("User-Agent", c.s.userAgent())
11132	var body io.Reader = nil
11133	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountscustombatchrequest)
11134	if err != nil {
11135		return nil, err
11136	}
11137	reqHeaders.Set("Content-Type", "application/json")
11138	c.urlParams_.Set("alt", alt)
11139	c.urlParams_.Set("prettyPrint", "false")
11140	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/batch")
11141	urls += "?" + c.urlParams_.Encode()
11142	req, err := http.NewRequest("POST", urls, body)
11143	if err != nil {
11144		return nil, err
11145	}
11146	req.Header = reqHeaders
11147	return gensupport.SendRequest(c.ctx_, c.s.client, req)
11148}
11149
11150// Do executes the "content.accounts.custombatch" call.
11151// Exactly one of *AccountsCustomBatchResponse or error will be non-nil.
11152// Any non-2xx status code is an error. Response headers are in either
11153// *AccountsCustomBatchResponse.ServerResponse.Header or (if a response
11154// was returned at all) in error.(*googleapi.Error).Header. Use
11155// googleapi.IsNotModified to check whether the returned error was
11156// because http.StatusNotModified was returned.
11157func (c *AccountsCustombatchCall) Do(opts ...googleapi.CallOption) (*AccountsCustomBatchResponse, error) {
11158	gensupport.SetOptions(c.urlParams_, opts...)
11159	res, err := c.doRequest("json")
11160	if res != nil && res.StatusCode == http.StatusNotModified {
11161		if res.Body != nil {
11162			res.Body.Close()
11163		}
11164		return nil, &googleapi.Error{
11165			Code:   res.StatusCode,
11166			Header: res.Header,
11167		}
11168	}
11169	if err != nil {
11170		return nil, err
11171	}
11172	defer googleapi.CloseBody(res)
11173	if err := googleapi.CheckResponse(res); err != nil {
11174		return nil, err
11175	}
11176	ret := &AccountsCustomBatchResponse{
11177		ServerResponse: googleapi.ServerResponse{
11178			Header:         res.Header,
11179			HTTPStatusCode: res.StatusCode,
11180		},
11181	}
11182	target := &ret
11183	if err := gensupport.DecodeResponse(target, res); err != nil {
11184		return nil, err
11185	}
11186	return ret, nil
11187	// {
11188	//   "description": "Retrieves, inserts, updates, and deletes multiple Merchant Center (sub-)accounts in a single request.",
11189	//   "httpMethod": "POST",
11190	//   "id": "content.accounts.custombatch",
11191	//   "path": "accounts/batch",
11192	//   "request": {
11193	//     "$ref": "AccountsCustomBatchRequest"
11194	//   },
11195	//   "response": {
11196	//     "$ref": "AccountsCustomBatchResponse"
11197	//   },
11198	//   "scopes": [
11199	//     "https://www.googleapis.com/auth/content"
11200	//   ]
11201	// }
11202
11203}
11204
11205// method id "content.accounts.delete":
11206
11207type AccountsDeleteCall struct {
11208	s          *APIService
11209	merchantId uint64
11210	accountId  uint64
11211	urlParams_ gensupport.URLParams
11212	ctx_       context.Context
11213	header_    http.Header
11214}
11215
11216// Delete: Deletes a Merchant Center sub-account.
11217func (r *AccountsService) Delete(merchantId uint64, accountId uint64) *AccountsDeleteCall {
11218	c := &AccountsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
11219	c.merchantId = merchantId
11220	c.accountId = accountId
11221	return c
11222}
11223
11224// Force sets the optional parameter "force": Flag to delete
11225// sub-accounts with products. The default value is false.
11226func (c *AccountsDeleteCall) Force(force bool) *AccountsDeleteCall {
11227	c.urlParams_.Set("force", fmt.Sprint(force))
11228	return c
11229}
11230
11231// Fields allows partial responses to be retrieved. See
11232// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
11233// for more information.
11234func (c *AccountsDeleteCall) Fields(s ...googleapi.Field) *AccountsDeleteCall {
11235	c.urlParams_.Set("fields", googleapi.CombineFields(s))
11236	return c
11237}
11238
11239// Context sets the context to be used in this call's Do method. Any
11240// pending HTTP request will be aborted if the provided context is
11241// canceled.
11242func (c *AccountsDeleteCall) Context(ctx context.Context) *AccountsDeleteCall {
11243	c.ctx_ = ctx
11244	return c
11245}
11246
11247// Header returns an http.Header that can be modified by the caller to
11248// add HTTP headers to the request.
11249func (c *AccountsDeleteCall) Header() http.Header {
11250	if c.header_ == nil {
11251		c.header_ = make(http.Header)
11252	}
11253	return c.header_
11254}
11255
11256func (c *AccountsDeleteCall) doRequest(alt string) (*http.Response, error) {
11257	reqHeaders := make(http.Header)
11258	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
11259	for k, v := range c.header_ {
11260		reqHeaders[k] = v
11261	}
11262	reqHeaders.Set("User-Agent", c.s.userAgent())
11263	var body io.Reader = nil
11264	c.urlParams_.Set("alt", alt)
11265	c.urlParams_.Set("prettyPrint", "false")
11266	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}")
11267	urls += "?" + c.urlParams_.Encode()
11268	req, err := http.NewRequest("DELETE", urls, body)
11269	if err != nil {
11270		return nil, err
11271	}
11272	req.Header = reqHeaders
11273	googleapi.Expand(req.URL, map[string]string{
11274		"merchantId": strconv.FormatUint(c.merchantId, 10),
11275		"accountId":  strconv.FormatUint(c.accountId, 10),
11276	})
11277	return gensupport.SendRequest(c.ctx_, c.s.client, req)
11278}
11279
11280// Do executes the "content.accounts.delete" call.
11281func (c *AccountsDeleteCall) Do(opts ...googleapi.CallOption) error {
11282	gensupport.SetOptions(c.urlParams_, opts...)
11283	res, err := c.doRequest("json")
11284	if err != nil {
11285		return err
11286	}
11287	defer googleapi.CloseBody(res)
11288	if err := googleapi.CheckResponse(res); err != nil {
11289		return err
11290	}
11291	return nil
11292	// {
11293	//   "description": "Deletes a Merchant Center sub-account.",
11294	//   "httpMethod": "DELETE",
11295	//   "id": "content.accounts.delete",
11296	//   "parameterOrder": [
11297	//     "merchantId",
11298	//     "accountId"
11299	//   ],
11300	//   "parameters": {
11301	//     "accountId": {
11302	//       "description": "The ID of the account.",
11303	//       "format": "uint64",
11304	//       "location": "path",
11305	//       "required": true,
11306	//       "type": "string"
11307	//     },
11308	//     "force": {
11309	//       "default": "false",
11310	//       "description": "Flag to delete sub-accounts with products. The default value is false.",
11311	//       "location": "query",
11312	//       "type": "boolean"
11313	//     },
11314	//     "merchantId": {
11315	//       "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.",
11316	//       "format": "uint64",
11317	//       "location": "path",
11318	//       "required": true,
11319	//       "type": "string"
11320	//     }
11321	//   },
11322	//   "path": "{merchantId}/accounts/{accountId}",
11323	//   "scopes": [
11324	//     "https://www.googleapis.com/auth/content"
11325	//   ]
11326	// }
11327
11328}
11329
11330// method id "content.accounts.get":
11331
11332type AccountsGetCall struct {
11333	s            *APIService
11334	merchantId   uint64
11335	accountId    uint64
11336	urlParams_   gensupport.URLParams
11337	ifNoneMatch_ string
11338	ctx_         context.Context
11339	header_      http.Header
11340}
11341
11342// Get: Retrieves a Merchant Center account.
11343func (r *AccountsService) Get(merchantId uint64, accountId uint64) *AccountsGetCall {
11344	c := &AccountsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
11345	c.merchantId = merchantId
11346	c.accountId = accountId
11347	return c
11348}
11349
11350// Fields allows partial responses to be retrieved. See
11351// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
11352// for more information.
11353func (c *AccountsGetCall) Fields(s ...googleapi.Field) *AccountsGetCall {
11354	c.urlParams_.Set("fields", googleapi.CombineFields(s))
11355	return c
11356}
11357
11358// IfNoneMatch sets the optional parameter which makes the operation
11359// fail if the object's ETag matches the given value. This is useful for
11360// getting updates only after the object has changed since the last
11361// request. Use googleapi.IsNotModified to check whether the response
11362// error from Do is the result of In-None-Match.
11363func (c *AccountsGetCall) IfNoneMatch(entityTag string) *AccountsGetCall {
11364	c.ifNoneMatch_ = entityTag
11365	return c
11366}
11367
11368// Context sets the context to be used in this call's Do method. Any
11369// pending HTTP request will be aborted if the provided context is
11370// canceled.
11371func (c *AccountsGetCall) Context(ctx context.Context) *AccountsGetCall {
11372	c.ctx_ = ctx
11373	return c
11374}
11375
11376// Header returns an http.Header that can be modified by the caller to
11377// add HTTP headers to the request.
11378func (c *AccountsGetCall) Header() http.Header {
11379	if c.header_ == nil {
11380		c.header_ = make(http.Header)
11381	}
11382	return c.header_
11383}
11384
11385func (c *AccountsGetCall) doRequest(alt string) (*http.Response, error) {
11386	reqHeaders := make(http.Header)
11387	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
11388	for k, v := range c.header_ {
11389		reqHeaders[k] = v
11390	}
11391	reqHeaders.Set("User-Agent", c.s.userAgent())
11392	if c.ifNoneMatch_ != "" {
11393		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
11394	}
11395	var body io.Reader = nil
11396	c.urlParams_.Set("alt", alt)
11397	c.urlParams_.Set("prettyPrint", "false")
11398	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}")
11399	urls += "?" + c.urlParams_.Encode()
11400	req, err := http.NewRequest("GET", urls, body)
11401	if err != nil {
11402		return nil, err
11403	}
11404	req.Header = reqHeaders
11405	googleapi.Expand(req.URL, map[string]string{
11406		"merchantId": strconv.FormatUint(c.merchantId, 10),
11407		"accountId":  strconv.FormatUint(c.accountId, 10),
11408	})
11409	return gensupport.SendRequest(c.ctx_, c.s.client, req)
11410}
11411
11412// Do executes the "content.accounts.get" call.
11413// Exactly one of *Account or error will be non-nil. Any non-2xx status
11414// code is an error. Response headers are in either
11415// *Account.ServerResponse.Header or (if a response was returned at all)
11416// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
11417// check whether the returned error was because http.StatusNotModified
11418// was returned.
11419func (c *AccountsGetCall) Do(opts ...googleapi.CallOption) (*Account, error) {
11420	gensupport.SetOptions(c.urlParams_, opts...)
11421	res, err := c.doRequest("json")
11422	if res != nil && res.StatusCode == http.StatusNotModified {
11423		if res.Body != nil {
11424			res.Body.Close()
11425		}
11426		return nil, &googleapi.Error{
11427			Code:   res.StatusCode,
11428			Header: res.Header,
11429		}
11430	}
11431	if err != nil {
11432		return nil, err
11433	}
11434	defer googleapi.CloseBody(res)
11435	if err := googleapi.CheckResponse(res); err != nil {
11436		return nil, err
11437	}
11438	ret := &Account{
11439		ServerResponse: googleapi.ServerResponse{
11440			Header:         res.Header,
11441			HTTPStatusCode: res.StatusCode,
11442		},
11443	}
11444	target := &ret
11445	if err := gensupport.DecodeResponse(target, res); err != nil {
11446		return nil, err
11447	}
11448	return ret, nil
11449	// {
11450	//   "description": "Retrieves a Merchant Center account.",
11451	//   "httpMethod": "GET",
11452	//   "id": "content.accounts.get",
11453	//   "parameterOrder": [
11454	//     "merchantId",
11455	//     "accountId"
11456	//   ],
11457	//   "parameters": {
11458	//     "accountId": {
11459	//       "description": "The ID of the account.",
11460	//       "format": "uint64",
11461	//       "location": "path",
11462	//       "required": true,
11463	//       "type": "string"
11464	//     },
11465	//     "merchantId": {
11466	//       "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.",
11467	//       "format": "uint64",
11468	//       "location": "path",
11469	//       "required": true,
11470	//       "type": "string"
11471	//     }
11472	//   },
11473	//   "path": "{merchantId}/accounts/{accountId}",
11474	//   "response": {
11475	//     "$ref": "Account"
11476	//   },
11477	//   "scopes": [
11478	//     "https://www.googleapis.com/auth/content"
11479	//   ]
11480	// }
11481
11482}
11483
11484// method id "content.accounts.insert":
11485
11486type AccountsInsertCall struct {
11487	s          *APIService
11488	merchantId uint64
11489	account    *Account
11490	urlParams_ gensupport.URLParams
11491	ctx_       context.Context
11492	header_    http.Header
11493}
11494
11495// Insert: Creates a Merchant Center sub-account.
11496func (r *AccountsService) Insert(merchantId uint64, account *Account) *AccountsInsertCall {
11497	c := &AccountsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
11498	c.merchantId = merchantId
11499	c.account = account
11500	return c
11501}
11502
11503// Fields allows partial responses to be retrieved. See
11504// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
11505// for more information.
11506func (c *AccountsInsertCall) Fields(s ...googleapi.Field) *AccountsInsertCall {
11507	c.urlParams_.Set("fields", googleapi.CombineFields(s))
11508	return c
11509}
11510
11511// Context sets the context to be used in this call's Do method. Any
11512// pending HTTP request will be aborted if the provided context is
11513// canceled.
11514func (c *AccountsInsertCall) Context(ctx context.Context) *AccountsInsertCall {
11515	c.ctx_ = ctx
11516	return c
11517}
11518
11519// Header returns an http.Header that can be modified by the caller to
11520// add HTTP headers to the request.
11521func (c *AccountsInsertCall) Header() http.Header {
11522	if c.header_ == nil {
11523		c.header_ = make(http.Header)
11524	}
11525	return c.header_
11526}
11527
11528func (c *AccountsInsertCall) doRequest(alt string) (*http.Response, error) {
11529	reqHeaders := make(http.Header)
11530	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
11531	for k, v := range c.header_ {
11532		reqHeaders[k] = v
11533	}
11534	reqHeaders.Set("User-Agent", c.s.userAgent())
11535	var body io.Reader = nil
11536	body, err := googleapi.WithoutDataWrapper.JSONReader(c.account)
11537	if err != nil {
11538		return nil, err
11539	}
11540	reqHeaders.Set("Content-Type", "application/json")
11541	c.urlParams_.Set("alt", alt)
11542	c.urlParams_.Set("prettyPrint", "false")
11543	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts")
11544	urls += "?" + c.urlParams_.Encode()
11545	req, err := http.NewRequest("POST", urls, body)
11546	if err != nil {
11547		return nil, err
11548	}
11549	req.Header = reqHeaders
11550	googleapi.Expand(req.URL, map[string]string{
11551		"merchantId": strconv.FormatUint(c.merchantId, 10),
11552	})
11553	return gensupport.SendRequest(c.ctx_, c.s.client, req)
11554}
11555
11556// Do executes the "content.accounts.insert" call.
11557// Exactly one of *Account or error will be non-nil. Any non-2xx status
11558// code is an error. Response headers are in either
11559// *Account.ServerResponse.Header or (if a response was returned at all)
11560// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
11561// check whether the returned error was because http.StatusNotModified
11562// was returned.
11563func (c *AccountsInsertCall) Do(opts ...googleapi.CallOption) (*Account, error) {
11564	gensupport.SetOptions(c.urlParams_, opts...)
11565	res, err := c.doRequest("json")
11566	if res != nil && res.StatusCode == http.StatusNotModified {
11567		if res.Body != nil {
11568			res.Body.Close()
11569		}
11570		return nil, &googleapi.Error{
11571			Code:   res.StatusCode,
11572			Header: res.Header,
11573		}
11574	}
11575	if err != nil {
11576		return nil, err
11577	}
11578	defer googleapi.CloseBody(res)
11579	if err := googleapi.CheckResponse(res); err != nil {
11580		return nil, err
11581	}
11582	ret := &Account{
11583		ServerResponse: googleapi.ServerResponse{
11584			Header:         res.Header,
11585			HTTPStatusCode: res.StatusCode,
11586		},
11587	}
11588	target := &ret
11589	if err := gensupport.DecodeResponse(target, res); err != nil {
11590		return nil, err
11591	}
11592	return ret, nil
11593	// {
11594	//   "description": "Creates a Merchant Center sub-account.",
11595	//   "httpMethod": "POST",
11596	//   "id": "content.accounts.insert",
11597	//   "parameterOrder": [
11598	//     "merchantId"
11599	//   ],
11600	//   "parameters": {
11601	//     "merchantId": {
11602	//       "description": "The ID of the managing account. This must be a multi-client account.",
11603	//       "format": "uint64",
11604	//       "location": "path",
11605	//       "required": true,
11606	//       "type": "string"
11607	//     }
11608	//   },
11609	//   "path": "{merchantId}/accounts",
11610	//   "request": {
11611	//     "$ref": "Account"
11612	//   },
11613	//   "response": {
11614	//     "$ref": "Account"
11615	//   },
11616	//   "scopes": [
11617	//     "https://www.googleapis.com/auth/content"
11618	//   ]
11619	// }
11620
11621}
11622
11623// method id "content.accounts.link":
11624
11625type AccountsLinkCall struct {
11626	s                   *APIService
11627	merchantId          uint64
11628	accountId           uint64
11629	accountslinkrequest *AccountsLinkRequest
11630	urlParams_          gensupport.URLParams
11631	ctx_                context.Context
11632	header_             http.Header
11633}
11634
11635// Link: Performs an action on a link between two Merchant Center
11636// accounts, namely accountId and linkedAccountId.
11637func (r *AccountsService) Link(merchantId uint64, accountId uint64, accountslinkrequest *AccountsLinkRequest) *AccountsLinkCall {
11638	c := &AccountsLinkCall{s: r.s, urlParams_: make(gensupport.URLParams)}
11639	c.merchantId = merchantId
11640	c.accountId = accountId
11641	c.accountslinkrequest = accountslinkrequest
11642	return c
11643}
11644
11645// Fields allows partial responses to be retrieved. See
11646// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
11647// for more information.
11648func (c *AccountsLinkCall) Fields(s ...googleapi.Field) *AccountsLinkCall {
11649	c.urlParams_.Set("fields", googleapi.CombineFields(s))
11650	return c
11651}
11652
11653// Context sets the context to be used in this call's Do method. Any
11654// pending HTTP request will be aborted if the provided context is
11655// canceled.
11656func (c *AccountsLinkCall) Context(ctx context.Context) *AccountsLinkCall {
11657	c.ctx_ = ctx
11658	return c
11659}
11660
11661// Header returns an http.Header that can be modified by the caller to
11662// add HTTP headers to the request.
11663func (c *AccountsLinkCall) Header() http.Header {
11664	if c.header_ == nil {
11665		c.header_ = make(http.Header)
11666	}
11667	return c.header_
11668}
11669
11670func (c *AccountsLinkCall) doRequest(alt string) (*http.Response, error) {
11671	reqHeaders := make(http.Header)
11672	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
11673	for k, v := range c.header_ {
11674		reqHeaders[k] = v
11675	}
11676	reqHeaders.Set("User-Agent", c.s.userAgent())
11677	var body io.Reader = nil
11678	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountslinkrequest)
11679	if err != nil {
11680		return nil, err
11681	}
11682	reqHeaders.Set("Content-Type", "application/json")
11683	c.urlParams_.Set("alt", alt)
11684	c.urlParams_.Set("prettyPrint", "false")
11685	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}/link")
11686	urls += "?" + c.urlParams_.Encode()
11687	req, err := http.NewRequest("POST", urls, body)
11688	if err != nil {
11689		return nil, err
11690	}
11691	req.Header = reqHeaders
11692	googleapi.Expand(req.URL, map[string]string{
11693		"merchantId": strconv.FormatUint(c.merchantId, 10),
11694		"accountId":  strconv.FormatUint(c.accountId, 10),
11695	})
11696	return gensupport.SendRequest(c.ctx_, c.s.client, req)
11697}
11698
11699// Do executes the "content.accounts.link" call.
11700// Exactly one of *AccountsLinkResponse or error will be non-nil. Any
11701// non-2xx status code is an error. Response headers are in either
11702// *AccountsLinkResponse.ServerResponse.Header or (if a response was
11703// returned at all) in error.(*googleapi.Error).Header. Use
11704// googleapi.IsNotModified to check whether the returned error was
11705// because http.StatusNotModified was returned.
11706func (c *AccountsLinkCall) Do(opts ...googleapi.CallOption) (*AccountsLinkResponse, error) {
11707	gensupport.SetOptions(c.urlParams_, opts...)
11708	res, err := c.doRequest("json")
11709	if res != nil && res.StatusCode == http.StatusNotModified {
11710		if res.Body != nil {
11711			res.Body.Close()
11712		}
11713		return nil, &googleapi.Error{
11714			Code:   res.StatusCode,
11715			Header: res.Header,
11716		}
11717	}
11718	if err != nil {
11719		return nil, err
11720	}
11721	defer googleapi.CloseBody(res)
11722	if err := googleapi.CheckResponse(res); err != nil {
11723		return nil, err
11724	}
11725	ret := &AccountsLinkResponse{
11726		ServerResponse: googleapi.ServerResponse{
11727			Header:         res.Header,
11728			HTTPStatusCode: res.StatusCode,
11729		},
11730	}
11731	target := &ret
11732	if err := gensupport.DecodeResponse(target, res); err != nil {
11733		return nil, err
11734	}
11735	return ret, nil
11736	// {
11737	//   "description": "Performs an action on a link between two Merchant Center accounts, namely accountId and linkedAccountId.",
11738	//   "httpMethod": "POST",
11739	//   "id": "content.accounts.link",
11740	//   "parameterOrder": [
11741	//     "merchantId",
11742	//     "accountId"
11743	//   ],
11744	//   "parameters": {
11745	//     "accountId": {
11746	//       "description": "The ID of the account that should be linked.",
11747	//       "format": "uint64",
11748	//       "location": "path",
11749	//       "required": true,
11750	//       "type": "string"
11751	//     },
11752	//     "merchantId": {
11753	//       "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.",
11754	//       "format": "uint64",
11755	//       "location": "path",
11756	//       "required": true,
11757	//       "type": "string"
11758	//     }
11759	//   },
11760	//   "path": "{merchantId}/accounts/{accountId}/link",
11761	//   "request": {
11762	//     "$ref": "AccountsLinkRequest"
11763	//   },
11764	//   "response": {
11765	//     "$ref": "AccountsLinkResponse"
11766	//   },
11767	//   "scopes": [
11768	//     "https://www.googleapis.com/auth/content"
11769	//   ]
11770	// }
11771
11772}
11773
11774// method id "content.accounts.list":
11775
11776type AccountsListCall struct {
11777	s            *APIService
11778	merchantId   uint64
11779	urlParams_   gensupport.URLParams
11780	ifNoneMatch_ string
11781	ctx_         context.Context
11782	header_      http.Header
11783}
11784
11785// List: Lists the sub-accounts in your Merchant Center account.
11786func (r *AccountsService) List(merchantId uint64) *AccountsListCall {
11787	c := &AccountsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
11788	c.merchantId = merchantId
11789	return c
11790}
11791
11792// MaxResults sets the optional parameter "maxResults": The maximum
11793// number of accounts to return in the response, used for paging.
11794func (c *AccountsListCall) MaxResults(maxResults int64) *AccountsListCall {
11795	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
11796	return c
11797}
11798
11799// PageToken sets the optional parameter "pageToken": The token returned
11800// by the previous request.
11801func (c *AccountsListCall) PageToken(pageToken string) *AccountsListCall {
11802	c.urlParams_.Set("pageToken", pageToken)
11803	return c
11804}
11805
11806// Fields allows partial responses to be retrieved. See
11807// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
11808// for more information.
11809func (c *AccountsListCall) Fields(s ...googleapi.Field) *AccountsListCall {
11810	c.urlParams_.Set("fields", googleapi.CombineFields(s))
11811	return c
11812}
11813
11814// IfNoneMatch sets the optional parameter which makes the operation
11815// fail if the object's ETag matches the given value. This is useful for
11816// getting updates only after the object has changed since the last
11817// request. Use googleapi.IsNotModified to check whether the response
11818// error from Do is the result of In-None-Match.
11819func (c *AccountsListCall) IfNoneMatch(entityTag string) *AccountsListCall {
11820	c.ifNoneMatch_ = entityTag
11821	return c
11822}
11823
11824// Context sets the context to be used in this call's Do method. Any
11825// pending HTTP request will be aborted if the provided context is
11826// canceled.
11827func (c *AccountsListCall) Context(ctx context.Context) *AccountsListCall {
11828	c.ctx_ = ctx
11829	return c
11830}
11831
11832// Header returns an http.Header that can be modified by the caller to
11833// add HTTP headers to the request.
11834func (c *AccountsListCall) Header() http.Header {
11835	if c.header_ == nil {
11836		c.header_ = make(http.Header)
11837	}
11838	return c.header_
11839}
11840
11841func (c *AccountsListCall) doRequest(alt string) (*http.Response, error) {
11842	reqHeaders := make(http.Header)
11843	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
11844	for k, v := range c.header_ {
11845		reqHeaders[k] = v
11846	}
11847	reqHeaders.Set("User-Agent", c.s.userAgent())
11848	if c.ifNoneMatch_ != "" {
11849		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
11850	}
11851	var body io.Reader = nil
11852	c.urlParams_.Set("alt", alt)
11853	c.urlParams_.Set("prettyPrint", "false")
11854	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts")
11855	urls += "?" + c.urlParams_.Encode()
11856	req, err := http.NewRequest("GET", urls, body)
11857	if err != nil {
11858		return nil, err
11859	}
11860	req.Header = reqHeaders
11861	googleapi.Expand(req.URL, map[string]string{
11862		"merchantId": strconv.FormatUint(c.merchantId, 10),
11863	})
11864	return gensupport.SendRequest(c.ctx_, c.s.client, req)
11865}
11866
11867// Do executes the "content.accounts.list" call.
11868// Exactly one of *AccountsListResponse or error will be non-nil. Any
11869// non-2xx status code is an error. Response headers are in either
11870// *AccountsListResponse.ServerResponse.Header or (if a response was
11871// returned at all) in error.(*googleapi.Error).Header. Use
11872// googleapi.IsNotModified to check whether the returned error was
11873// because http.StatusNotModified was returned.
11874func (c *AccountsListCall) Do(opts ...googleapi.CallOption) (*AccountsListResponse, error) {
11875	gensupport.SetOptions(c.urlParams_, opts...)
11876	res, err := c.doRequest("json")
11877	if res != nil && res.StatusCode == http.StatusNotModified {
11878		if res.Body != nil {
11879			res.Body.Close()
11880		}
11881		return nil, &googleapi.Error{
11882			Code:   res.StatusCode,
11883			Header: res.Header,
11884		}
11885	}
11886	if err != nil {
11887		return nil, err
11888	}
11889	defer googleapi.CloseBody(res)
11890	if err := googleapi.CheckResponse(res); err != nil {
11891		return nil, err
11892	}
11893	ret := &AccountsListResponse{
11894		ServerResponse: googleapi.ServerResponse{
11895			Header:         res.Header,
11896			HTTPStatusCode: res.StatusCode,
11897		},
11898	}
11899	target := &ret
11900	if err := gensupport.DecodeResponse(target, res); err != nil {
11901		return nil, err
11902	}
11903	return ret, nil
11904	// {
11905	//   "description": "Lists the sub-accounts in your Merchant Center account.",
11906	//   "httpMethod": "GET",
11907	//   "id": "content.accounts.list",
11908	//   "parameterOrder": [
11909	//     "merchantId"
11910	//   ],
11911	//   "parameters": {
11912	//     "maxResults": {
11913	//       "description": "The maximum number of accounts to return in the response, used for paging.",
11914	//       "format": "uint32",
11915	//       "location": "query",
11916	//       "type": "integer"
11917	//     },
11918	//     "merchantId": {
11919	//       "description": "The ID of the managing account. This must be a multi-client account.",
11920	//       "format": "uint64",
11921	//       "location": "path",
11922	//       "required": true,
11923	//       "type": "string"
11924	//     },
11925	//     "pageToken": {
11926	//       "description": "The token returned by the previous request.",
11927	//       "location": "query",
11928	//       "type": "string"
11929	//     }
11930	//   },
11931	//   "path": "{merchantId}/accounts",
11932	//   "response": {
11933	//     "$ref": "AccountsListResponse"
11934	//   },
11935	//   "scopes": [
11936	//     "https://www.googleapis.com/auth/content"
11937	//   ]
11938	// }
11939
11940}
11941
11942// Pages invokes f for each page of results.
11943// A non-nil error returned from f will halt the iteration.
11944// The provided context supersedes any context provided to the Context method.
11945func (c *AccountsListCall) Pages(ctx context.Context, f func(*AccountsListResponse) error) error {
11946	c.ctx_ = ctx
11947	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
11948	for {
11949		x, err := c.Do()
11950		if err != nil {
11951			return err
11952		}
11953		if err := f(x); err != nil {
11954			return err
11955		}
11956		if x.NextPageToken == "" {
11957			return nil
11958		}
11959		c.PageToken(x.NextPageToken)
11960	}
11961}
11962
11963// method id "content.accounts.listlinks":
11964
11965type AccountsListlinksCall struct {
11966	s            *APIService
11967	merchantId   uint64
11968	accountId    uint64
11969	urlParams_   gensupport.URLParams
11970	ifNoneMatch_ string
11971	ctx_         context.Context
11972	header_      http.Header
11973}
11974
11975// Listlinks: Returns the list of accounts linked to your Merchant
11976// Center account.
11977func (r *AccountsService) Listlinks(merchantId uint64, accountId uint64) *AccountsListlinksCall {
11978	c := &AccountsListlinksCall{s: r.s, urlParams_: make(gensupport.URLParams)}
11979	c.merchantId = merchantId
11980	c.accountId = accountId
11981	return c
11982}
11983
11984// MaxResults sets the optional parameter "maxResults": The maximum
11985// number of links to return in the response, used for pagination.
11986func (c *AccountsListlinksCall) MaxResults(maxResults int64) *AccountsListlinksCall {
11987	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
11988	return c
11989}
11990
11991// PageToken sets the optional parameter "pageToken": The token returned
11992// by the previous request.
11993func (c *AccountsListlinksCall) PageToken(pageToken string) *AccountsListlinksCall {
11994	c.urlParams_.Set("pageToken", pageToken)
11995	return c
11996}
11997
11998// Fields allows partial responses to be retrieved. See
11999// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
12000// for more information.
12001func (c *AccountsListlinksCall) Fields(s ...googleapi.Field) *AccountsListlinksCall {
12002	c.urlParams_.Set("fields", googleapi.CombineFields(s))
12003	return c
12004}
12005
12006// IfNoneMatch sets the optional parameter which makes the operation
12007// fail if the object's ETag matches the given value. This is useful for
12008// getting updates only after the object has changed since the last
12009// request. Use googleapi.IsNotModified to check whether the response
12010// error from Do is the result of In-None-Match.
12011func (c *AccountsListlinksCall) IfNoneMatch(entityTag string) *AccountsListlinksCall {
12012	c.ifNoneMatch_ = entityTag
12013	return c
12014}
12015
12016// Context sets the context to be used in this call's Do method. Any
12017// pending HTTP request will be aborted if the provided context is
12018// canceled.
12019func (c *AccountsListlinksCall) Context(ctx context.Context) *AccountsListlinksCall {
12020	c.ctx_ = ctx
12021	return c
12022}
12023
12024// Header returns an http.Header that can be modified by the caller to
12025// add HTTP headers to the request.
12026func (c *AccountsListlinksCall) Header() http.Header {
12027	if c.header_ == nil {
12028		c.header_ = make(http.Header)
12029	}
12030	return c.header_
12031}
12032
12033func (c *AccountsListlinksCall) doRequest(alt string) (*http.Response, error) {
12034	reqHeaders := make(http.Header)
12035	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
12036	for k, v := range c.header_ {
12037		reqHeaders[k] = v
12038	}
12039	reqHeaders.Set("User-Agent", c.s.userAgent())
12040	if c.ifNoneMatch_ != "" {
12041		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
12042	}
12043	var body io.Reader = nil
12044	c.urlParams_.Set("alt", alt)
12045	c.urlParams_.Set("prettyPrint", "false")
12046	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}/listlinks")
12047	urls += "?" + c.urlParams_.Encode()
12048	req, err := http.NewRequest("GET", urls, body)
12049	if err != nil {
12050		return nil, err
12051	}
12052	req.Header = reqHeaders
12053	googleapi.Expand(req.URL, map[string]string{
12054		"merchantId": strconv.FormatUint(c.merchantId, 10),
12055		"accountId":  strconv.FormatUint(c.accountId, 10),
12056	})
12057	return gensupport.SendRequest(c.ctx_, c.s.client, req)
12058}
12059
12060// Do executes the "content.accounts.listlinks" call.
12061// Exactly one of *AccountsListLinksResponse or error will be non-nil.
12062// Any non-2xx status code is an error. Response headers are in either
12063// *AccountsListLinksResponse.ServerResponse.Header or (if a response
12064// was returned at all) in error.(*googleapi.Error).Header. Use
12065// googleapi.IsNotModified to check whether the returned error was
12066// because http.StatusNotModified was returned.
12067func (c *AccountsListlinksCall) Do(opts ...googleapi.CallOption) (*AccountsListLinksResponse, error) {
12068	gensupport.SetOptions(c.urlParams_, opts...)
12069	res, err := c.doRequest("json")
12070	if res != nil && res.StatusCode == http.StatusNotModified {
12071		if res.Body != nil {
12072			res.Body.Close()
12073		}
12074		return nil, &googleapi.Error{
12075			Code:   res.StatusCode,
12076			Header: res.Header,
12077		}
12078	}
12079	if err != nil {
12080		return nil, err
12081	}
12082	defer googleapi.CloseBody(res)
12083	if err := googleapi.CheckResponse(res); err != nil {
12084		return nil, err
12085	}
12086	ret := &AccountsListLinksResponse{
12087		ServerResponse: googleapi.ServerResponse{
12088			Header:         res.Header,
12089			HTTPStatusCode: res.StatusCode,
12090		},
12091	}
12092	target := &ret
12093	if err := gensupport.DecodeResponse(target, res); err != nil {
12094		return nil, err
12095	}
12096	return ret, nil
12097	// {
12098	//   "description": "Returns the list of accounts linked to your Merchant Center account.",
12099	//   "httpMethod": "GET",
12100	//   "id": "content.accounts.listlinks",
12101	//   "parameterOrder": [
12102	//     "merchantId",
12103	//     "accountId"
12104	//   ],
12105	//   "parameters": {
12106	//     "accountId": {
12107	//       "description": "The ID of the account for which to list links.",
12108	//       "format": "uint64",
12109	//       "location": "path",
12110	//       "required": true,
12111	//       "type": "string"
12112	//     },
12113	//     "maxResults": {
12114	//       "description": "The maximum number of links to return in the response, used for pagination.",
12115	//       "format": "uint32",
12116	//       "location": "query",
12117	//       "type": "integer"
12118	//     },
12119	//     "merchantId": {
12120	//       "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.",
12121	//       "format": "uint64",
12122	//       "location": "path",
12123	//       "required": true,
12124	//       "type": "string"
12125	//     },
12126	//     "pageToken": {
12127	//       "description": "The token returned by the previous request.",
12128	//       "location": "query",
12129	//       "type": "string"
12130	//     }
12131	//   },
12132	//   "path": "{merchantId}/accounts/{accountId}/listlinks",
12133	//   "response": {
12134	//     "$ref": "AccountsListLinksResponse"
12135	//   },
12136	//   "scopes": [
12137	//     "https://www.googleapis.com/auth/content"
12138	//   ]
12139	// }
12140
12141}
12142
12143// Pages invokes f for each page of results.
12144// A non-nil error returned from f will halt the iteration.
12145// The provided context supersedes any context provided to the Context method.
12146func (c *AccountsListlinksCall) Pages(ctx context.Context, f func(*AccountsListLinksResponse) error) error {
12147	c.ctx_ = ctx
12148	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
12149	for {
12150		x, err := c.Do()
12151		if err != nil {
12152			return err
12153		}
12154		if err := f(x); err != nil {
12155			return err
12156		}
12157		if x.NextPageToken == "" {
12158			return nil
12159		}
12160		c.PageToken(x.NextPageToken)
12161	}
12162}
12163
12164// method id "content.accounts.update":
12165
12166type AccountsUpdateCall struct {
12167	s          *APIService
12168	merchantId uint64
12169	accountId  uint64
12170	account    *Account
12171	urlParams_ gensupport.URLParams
12172	ctx_       context.Context
12173	header_    http.Header
12174}
12175
12176// Update: Updates a Merchant Center account.
12177func (r *AccountsService) Update(merchantId uint64, accountId uint64, account *Account) *AccountsUpdateCall {
12178	c := &AccountsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
12179	c.merchantId = merchantId
12180	c.accountId = accountId
12181	c.account = account
12182	return c
12183}
12184
12185// Fields allows partial responses to be retrieved. See
12186// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
12187// for more information.
12188func (c *AccountsUpdateCall) Fields(s ...googleapi.Field) *AccountsUpdateCall {
12189	c.urlParams_.Set("fields", googleapi.CombineFields(s))
12190	return c
12191}
12192
12193// Context sets the context to be used in this call's Do method. Any
12194// pending HTTP request will be aborted if the provided context is
12195// canceled.
12196func (c *AccountsUpdateCall) Context(ctx context.Context) *AccountsUpdateCall {
12197	c.ctx_ = ctx
12198	return c
12199}
12200
12201// Header returns an http.Header that can be modified by the caller to
12202// add HTTP headers to the request.
12203func (c *AccountsUpdateCall) Header() http.Header {
12204	if c.header_ == nil {
12205		c.header_ = make(http.Header)
12206	}
12207	return c.header_
12208}
12209
12210func (c *AccountsUpdateCall) doRequest(alt string) (*http.Response, error) {
12211	reqHeaders := make(http.Header)
12212	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
12213	for k, v := range c.header_ {
12214		reqHeaders[k] = v
12215	}
12216	reqHeaders.Set("User-Agent", c.s.userAgent())
12217	var body io.Reader = nil
12218	body, err := googleapi.WithoutDataWrapper.JSONReader(c.account)
12219	if err != nil {
12220		return nil, err
12221	}
12222	reqHeaders.Set("Content-Type", "application/json")
12223	c.urlParams_.Set("alt", alt)
12224	c.urlParams_.Set("prettyPrint", "false")
12225	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}")
12226	urls += "?" + c.urlParams_.Encode()
12227	req, err := http.NewRequest("PUT", urls, body)
12228	if err != nil {
12229		return nil, err
12230	}
12231	req.Header = reqHeaders
12232	googleapi.Expand(req.URL, map[string]string{
12233		"merchantId": strconv.FormatUint(c.merchantId, 10),
12234		"accountId":  strconv.FormatUint(c.accountId, 10),
12235	})
12236	return gensupport.SendRequest(c.ctx_, c.s.client, req)
12237}
12238
12239// Do executes the "content.accounts.update" call.
12240// Exactly one of *Account or error will be non-nil. Any non-2xx status
12241// code is an error. Response headers are in either
12242// *Account.ServerResponse.Header or (if a response was returned at all)
12243// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
12244// check whether the returned error was because http.StatusNotModified
12245// was returned.
12246func (c *AccountsUpdateCall) Do(opts ...googleapi.CallOption) (*Account, error) {
12247	gensupport.SetOptions(c.urlParams_, opts...)
12248	res, err := c.doRequest("json")
12249	if res != nil && res.StatusCode == http.StatusNotModified {
12250		if res.Body != nil {
12251			res.Body.Close()
12252		}
12253		return nil, &googleapi.Error{
12254			Code:   res.StatusCode,
12255			Header: res.Header,
12256		}
12257	}
12258	if err != nil {
12259		return nil, err
12260	}
12261	defer googleapi.CloseBody(res)
12262	if err := googleapi.CheckResponse(res); err != nil {
12263		return nil, err
12264	}
12265	ret := &Account{
12266		ServerResponse: googleapi.ServerResponse{
12267			Header:         res.Header,
12268			HTTPStatusCode: res.StatusCode,
12269		},
12270	}
12271	target := &ret
12272	if err := gensupport.DecodeResponse(target, res); err != nil {
12273		return nil, err
12274	}
12275	return ret, nil
12276	// {
12277	//   "description": "Updates a Merchant Center account.",
12278	//   "httpMethod": "PUT",
12279	//   "id": "content.accounts.update",
12280	//   "parameterOrder": [
12281	//     "merchantId",
12282	//     "accountId"
12283	//   ],
12284	//   "parameters": {
12285	//     "accountId": {
12286	//       "description": "The ID of the account.",
12287	//       "format": "uint64",
12288	//       "location": "path",
12289	//       "required": true,
12290	//       "type": "string"
12291	//     },
12292	//     "merchantId": {
12293	//       "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.",
12294	//       "format": "uint64",
12295	//       "location": "path",
12296	//       "required": true,
12297	//       "type": "string"
12298	//     }
12299	//   },
12300	//   "path": "{merchantId}/accounts/{accountId}",
12301	//   "request": {
12302	//     "$ref": "Account"
12303	//   },
12304	//   "response": {
12305	//     "$ref": "Account"
12306	//   },
12307	//   "scopes": [
12308	//     "https://www.googleapis.com/auth/content"
12309	//   ]
12310	// }
12311
12312}
12313
12314// method id "content.accountstatuses.custombatch":
12315
12316type AccountstatusesCustombatchCall struct {
12317	s                                 *APIService
12318	accountstatusescustombatchrequest *AccountstatusesCustomBatchRequest
12319	urlParams_                        gensupport.URLParams
12320	ctx_                              context.Context
12321	header_                           http.Header
12322}
12323
12324// Custombatch: Retrieves multiple Merchant Center account statuses in a
12325// single request.
12326func (r *AccountstatusesService) Custombatch(accountstatusescustombatchrequest *AccountstatusesCustomBatchRequest) *AccountstatusesCustombatchCall {
12327	c := &AccountstatusesCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
12328	c.accountstatusescustombatchrequest = accountstatusescustombatchrequest
12329	return c
12330}
12331
12332// Fields allows partial responses to be retrieved. See
12333// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
12334// for more information.
12335func (c *AccountstatusesCustombatchCall) Fields(s ...googleapi.Field) *AccountstatusesCustombatchCall {
12336	c.urlParams_.Set("fields", googleapi.CombineFields(s))
12337	return c
12338}
12339
12340// Context sets the context to be used in this call's Do method. Any
12341// pending HTTP request will be aborted if the provided context is
12342// canceled.
12343func (c *AccountstatusesCustombatchCall) Context(ctx context.Context) *AccountstatusesCustombatchCall {
12344	c.ctx_ = ctx
12345	return c
12346}
12347
12348// Header returns an http.Header that can be modified by the caller to
12349// add HTTP headers to the request.
12350func (c *AccountstatusesCustombatchCall) Header() http.Header {
12351	if c.header_ == nil {
12352		c.header_ = make(http.Header)
12353	}
12354	return c.header_
12355}
12356
12357func (c *AccountstatusesCustombatchCall) doRequest(alt string) (*http.Response, error) {
12358	reqHeaders := make(http.Header)
12359	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
12360	for k, v := range c.header_ {
12361		reqHeaders[k] = v
12362	}
12363	reqHeaders.Set("User-Agent", c.s.userAgent())
12364	var body io.Reader = nil
12365	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountstatusescustombatchrequest)
12366	if err != nil {
12367		return nil, err
12368	}
12369	reqHeaders.Set("Content-Type", "application/json")
12370	c.urlParams_.Set("alt", alt)
12371	c.urlParams_.Set("prettyPrint", "false")
12372	urls := googleapi.ResolveRelative(c.s.BasePath, "accountstatuses/batch")
12373	urls += "?" + c.urlParams_.Encode()
12374	req, err := http.NewRequest("POST", urls, body)
12375	if err != nil {
12376		return nil, err
12377	}
12378	req.Header = reqHeaders
12379	return gensupport.SendRequest(c.ctx_, c.s.client, req)
12380}
12381
12382// Do executes the "content.accountstatuses.custombatch" call.
12383// Exactly one of *AccountstatusesCustomBatchResponse or error will be
12384// non-nil. Any non-2xx status code is an error. Response headers are in
12385// either *AccountstatusesCustomBatchResponse.ServerResponse.Header or
12386// (if a response was returned at all) in
12387// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
12388// whether the returned error was because http.StatusNotModified was
12389// returned.
12390func (c *AccountstatusesCustombatchCall) Do(opts ...googleapi.CallOption) (*AccountstatusesCustomBatchResponse, error) {
12391	gensupport.SetOptions(c.urlParams_, opts...)
12392	res, err := c.doRequest("json")
12393	if res != nil && res.StatusCode == http.StatusNotModified {
12394		if res.Body != nil {
12395			res.Body.Close()
12396		}
12397		return nil, &googleapi.Error{
12398			Code:   res.StatusCode,
12399			Header: res.Header,
12400		}
12401	}
12402	if err != nil {
12403		return nil, err
12404	}
12405	defer googleapi.CloseBody(res)
12406	if err := googleapi.CheckResponse(res); err != nil {
12407		return nil, err
12408	}
12409	ret := &AccountstatusesCustomBatchResponse{
12410		ServerResponse: googleapi.ServerResponse{
12411			Header:         res.Header,
12412			HTTPStatusCode: res.StatusCode,
12413		},
12414	}
12415	target := &ret
12416	if err := gensupport.DecodeResponse(target, res); err != nil {
12417		return nil, err
12418	}
12419	return ret, nil
12420	// {
12421	//   "description": "Retrieves multiple Merchant Center account statuses in a single request.",
12422	//   "httpMethod": "POST",
12423	//   "id": "content.accountstatuses.custombatch",
12424	//   "path": "accountstatuses/batch",
12425	//   "request": {
12426	//     "$ref": "AccountstatusesCustomBatchRequest"
12427	//   },
12428	//   "response": {
12429	//     "$ref": "AccountstatusesCustomBatchResponse"
12430	//   },
12431	//   "scopes": [
12432	//     "https://www.googleapis.com/auth/content"
12433	//   ]
12434	// }
12435
12436}
12437
12438// method id "content.accountstatuses.get":
12439
12440type AccountstatusesGetCall struct {
12441	s            *APIService
12442	merchantId   uint64
12443	accountId    uint64
12444	urlParams_   gensupport.URLParams
12445	ifNoneMatch_ string
12446	ctx_         context.Context
12447	header_      http.Header
12448}
12449
12450// Get: Retrieves the status of a Merchant Center account. No
12451// itemLevelIssues are returned for multi-client accounts.
12452func (r *AccountstatusesService) Get(merchantId uint64, accountId uint64) *AccountstatusesGetCall {
12453	c := &AccountstatusesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
12454	c.merchantId = merchantId
12455	c.accountId = accountId
12456	return c
12457}
12458
12459// Destinations sets the optional parameter "destinations": If set, only
12460// issues for the specified destinations are returned, otherwise only
12461// issues for the Shopping destination.
12462func (c *AccountstatusesGetCall) Destinations(destinations ...string) *AccountstatusesGetCall {
12463	c.urlParams_.SetMulti("destinations", append([]string{}, destinations...))
12464	return c
12465}
12466
12467// Fields allows partial responses to be retrieved. See
12468// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
12469// for more information.
12470func (c *AccountstatusesGetCall) Fields(s ...googleapi.Field) *AccountstatusesGetCall {
12471	c.urlParams_.Set("fields", googleapi.CombineFields(s))
12472	return c
12473}
12474
12475// IfNoneMatch sets the optional parameter which makes the operation
12476// fail if the object's ETag matches the given value. This is useful for
12477// getting updates only after the object has changed since the last
12478// request. Use googleapi.IsNotModified to check whether the response
12479// error from Do is the result of In-None-Match.
12480func (c *AccountstatusesGetCall) IfNoneMatch(entityTag string) *AccountstatusesGetCall {
12481	c.ifNoneMatch_ = entityTag
12482	return c
12483}
12484
12485// Context sets the context to be used in this call's Do method. Any
12486// pending HTTP request will be aborted if the provided context is
12487// canceled.
12488func (c *AccountstatusesGetCall) Context(ctx context.Context) *AccountstatusesGetCall {
12489	c.ctx_ = ctx
12490	return c
12491}
12492
12493// Header returns an http.Header that can be modified by the caller to
12494// add HTTP headers to the request.
12495func (c *AccountstatusesGetCall) Header() http.Header {
12496	if c.header_ == nil {
12497		c.header_ = make(http.Header)
12498	}
12499	return c.header_
12500}
12501
12502func (c *AccountstatusesGetCall) doRequest(alt string) (*http.Response, error) {
12503	reqHeaders := make(http.Header)
12504	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
12505	for k, v := range c.header_ {
12506		reqHeaders[k] = v
12507	}
12508	reqHeaders.Set("User-Agent", c.s.userAgent())
12509	if c.ifNoneMatch_ != "" {
12510		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
12511	}
12512	var body io.Reader = nil
12513	c.urlParams_.Set("alt", alt)
12514	c.urlParams_.Set("prettyPrint", "false")
12515	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accountstatuses/{accountId}")
12516	urls += "?" + c.urlParams_.Encode()
12517	req, err := http.NewRequest("GET", urls, body)
12518	if err != nil {
12519		return nil, err
12520	}
12521	req.Header = reqHeaders
12522	googleapi.Expand(req.URL, map[string]string{
12523		"merchantId": strconv.FormatUint(c.merchantId, 10),
12524		"accountId":  strconv.FormatUint(c.accountId, 10),
12525	})
12526	return gensupport.SendRequest(c.ctx_, c.s.client, req)
12527}
12528
12529// Do executes the "content.accountstatuses.get" call.
12530// Exactly one of *AccountStatus or error will be non-nil. Any non-2xx
12531// status code is an error. Response headers are in either
12532// *AccountStatus.ServerResponse.Header or (if a response was returned
12533// at all) in error.(*googleapi.Error).Header. Use
12534// googleapi.IsNotModified to check whether the returned error was
12535// because http.StatusNotModified was returned.
12536func (c *AccountstatusesGetCall) Do(opts ...googleapi.CallOption) (*AccountStatus, error) {
12537	gensupport.SetOptions(c.urlParams_, opts...)
12538	res, err := c.doRequest("json")
12539	if res != nil && res.StatusCode == http.StatusNotModified {
12540		if res.Body != nil {
12541			res.Body.Close()
12542		}
12543		return nil, &googleapi.Error{
12544			Code:   res.StatusCode,
12545			Header: res.Header,
12546		}
12547	}
12548	if err != nil {
12549		return nil, err
12550	}
12551	defer googleapi.CloseBody(res)
12552	if err := googleapi.CheckResponse(res); err != nil {
12553		return nil, err
12554	}
12555	ret := &AccountStatus{
12556		ServerResponse: googleapi.ServerResponse{
12557			Header:         res.Header,
12558			HTTPStatusCode: res.StatusCode,
12559		},
12560	}
12561	target := &ret
12562	if err := gensupport.DecodeResponse(target, res); err != nil {
12563		return nil, err
12564	}
12565	return ret, nil
12566	// {
12567	//   "description": "Retrieves the status of a Merchant Center account. No itemLevelIssues are returned for multi-client accounts.",
12568	//   "httpMethod": "GET",
12569	//   "id": "content.accountstatuses.get",
12570	//   "parameterOrder": [
12571	//     "merchantId",
12572	//     "accountId"
12573	//   ],
12574	//   "parameters": {
12575	//     "accountId": {
12576	//       "description": "The ID of the account.",
12577	//       "format": "uint64",
12578	//       "location": "path",
12579	//       "required": true,
12580	//       "type": "string"
12581	//     },
12582	//     "destinations": {
12583	//       "description": "If set, only issues for the specified destinations are returned, otherwise only issues for the Shopping destination.",
12584	//       "location": "query",
12585	//       "repeated": true,
12586	//       "type": "string"
12587	//     },
12588	//     "merchantId": {
12589	//       "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.",
12590	//       "format": "uint64",
12591	//       "location": "path",
12592	//       "required": true,
12593	//       "type": "string"
12594	//     }
12595	//   },
12596	//   "path": "{merchantId}/accountstatuses/{accountId}",
12597	//   "response": {
12598	//     "$ref": "AccountStatus"
12599	//   },
12600	//   "scopes": [
12601	//     "https://www.googleapis.com/auth/content"
12602	//   ]
12603	// }
12604
12605}
12606
12607// method id "content.accountstatuses.list":
12608
12609type AccountstatusesListCall struct {
12610	s            *APIService
12611	merchantId   uint64
12612	urlParams_   gensupport.URLParams
12613	ifNoneMatch_ string
12614	ctx_         context.Context
12615	header_      http.Header
12616}
12617
12618// List: Lists the statuses of the sub-accounts in your Merchant Center
12619// account.
12620func (r *AccountstatusesService) List(merchantId uint64) *AccountstatusesListCall {
12621	c := &AccountstatusesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
12622	c.merchantId = merchantId
12623	return c
12624}
12625
12626// Destinations sets the optional parameter "destinations": If set, only
12627// issues for the specified destinations are returned, otherwise only
12628// issues for the Shopping destination.
12629func (c *AccountstatusesListCall) Destinations(destinations ...string) *AccountstatusesListCall {
12630	c.urlParams_.SetMulti("destinations", append([]string{}, destinations...))
12631	return c
12632}
12633
12634// MaxResults sets the optional parameter "maxResults": The maximum
12635// number of account statuses to return in the response, used for
12636// paging.
12637func (c *AccountstatusesListCall) MaxResults(maxResults int64) *AccountstatusesListCall {
12638	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
12639	return c
12640}
12641
12642// PageToken sets the optional parameter "pageToken": The token returned
12643// by the previous request.
12644func (c *AccountstatusesListCall) PageToken(pageToken string) *AccountstatusesListCall {
12645	c.urlParams_.Set("pageToken", pageToken)
12646	return c
12647}
12648
12649// Fields allows partial responses to be retrieved. See
12650// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
12651// for more information.
12652func (c *AccountstatusesListCall) Fields(s ...googleapi.Field) *AccountstatusesListCall {
12653	c.urlParams_.Set("fields", googleapi.CombineFields(s))
12654	return c
12655}
12656
12657// IfNoneMatch sets the optional parameter which makes the operation
12658// fail if the object's ETag matches the given value. This is useful for
12659// getting updates only after the object has changed since the last
12660// request. Use googleapi.IsNotModified to check whether the response
12661// error from Do is the result of In-None-Match.
12662func (c *AccountstatusesListCall) IfNoneMatch(entityTag string) *AccountstatusesListCall {
12663	c.ifNoneMatch_ = entityTag
12664	return c
12665}
12666
12667// Context sets the context to be used in this call's Do method. Any
12668// pending HTTP request will be aborted if the provided context is
12669// canceled.
12670func (c *AccountstatusesListCall) Context(ctx context.Context) *AccountstatusesListCall {
12671	c.ctx_ = ctx
12672	return c
12673}
12674
12675// Header returns an http.Header that can be modified by the caller to
12676// add HTTP headers to the request.
12677func (c *AccountstatusesListCall) Header() http.Header {
12678	if c.header_ == nil {
12679		c.header_ = make(http.Header)
12680	}
12681	return c.header_
12682}
12683
12684func (c *AccountstatusesListCall) doRequest(alt string) (*http.Response, error) {
12685	reqHeaders := make(http.Header)
12686	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
12687	for k, v := range c.header_ {
12688		reqHeaders[k] = v
12689	}
12690	reqHeaders.Set("User-Agent", c.s.userAgent())
12691	if c.ifNoneMatch_ != "" {
12692		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
12693	}
12694	var body io.Reader = nil
12695	c.urlParams_.Set("alt", alt)
12696	c.urlParams_.Set("prettyPrint", "false")
12697	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accountstatuses")
12698	urls += "?" + c.urlParams_.Encode()
12699	req, err := http.NewRequest("GET", urls, body)
12700	if err != nil {
12701		return nil, err
12702	}
12703	req.Header = reqHeaders
12704	googleapi.Expand(req.URL, map[string]string{
12705		"merchantId": strconv.FormatUint(c.merchantId, 10),
12706	})
12707	return gensupport.SendRequest(c.ctx_, c.s.client, req)
12708}
12709
12710// Do executes the "content.accountstatuses.list" call.
12711// Exactly one of *AccountstatusesListResponse or error will be non-nil.
12712// Any non-2xx status code is an error. Response headers are in either
12713// *AccountstatusesListResponse.ServerResponse.Header or (if a response
12714// was returned at all) in error.(*googleapi.Error).Header. Use
12715// googleapi.IsNotModified to check whether the returned error was
12716// because http.StatusNotModified was returned.
12717func (c *AccountstatusesListCall) Do(opts ...googleapi.CallOption) (*AccountstatusesListResponse, error) {
12718	gensupport.SetOptions(c.urlParams_, opts...)
12719	res, err := c.doRequest("json")
12720	if res != nil && res.StatusCode == http.StatusNotModified {
12721		if res.Body != nil {
12722			res.Body.Close()
12723		}
12724		return nil, &googleapi.Error{
12725			Code:   res.StatusCode,
12726			Header: res.Header,
12727		}
12728	}
12729	if err != nil {
12730		return nil, err
12731	}
12732	defer googleapi.CloseBody(res)
12733	if err := googleapi.CheckResponse(res); err != nil {
12734		return nil, err
12735	}
12736	ret := &AccountstatusesListResponse{
12737		ServerResponse: googleapi.ServerResponse{
12738			Header:         res.Header,
12739			HTTPStatusCode: res.StatusCode,
12740		},
12741	}
12742	target := &ret
12743	if err := gensupport.DecodeResponse(target, res); err != nil {
12744		return nil, err
12745	}
12746	return ret, nil
12747	// {
12748	//   "description": "Lists the statuses of the sub-accounts in your Merchant Center account.",
12749	//   "httpMethod": "GET",
12750	//   "id": "content.accountstatuses.list",
12751	//   "parameterOrder": [
12752	//     "merchantId"
12753	//   ],
12754	//   "parameters": {
12755	//     "destinations": {
12756	//       "description": "If set, only issues for the specified destinations are returned, otherwise only issues for the Shopping destination.",
12757	//       "location": "query",
12758	//       "repeated": true,
12759	//       "type": "string"
12760	//     },
12761	//     "maxResults": {
12762	//       "description": "The maximum number of account statuses to return in the response, used for paging.",
12763	//       "format": "uint32",
12764	//       "location": "query",
12765	//       "type": "integer"
12766	//     },
12767	//     "merchantId": {
12768	//       "description": "The ID of the managing account. This must be a multi-client account.",
12769	//       "format": "uint64",
12770	//       "location": "path",
12771	//       "required": true,
12772	//       "type": "string"
12773	//     },
12774	//     "pageToken": {
12775	//       "description": "The token returned by the previous request.",
12776	//       "location": "query",
12777	//       "type": "string"
12778	//     }
12779	//   },
12780	//   "path": "{merchantId}/accountstatuses",
12781	//   "response": {
12782	//     "$ref": "AccountstatusesListResponse"
12783	//   },
12784	//   "scopes": [
12785	//     "https://www.googleapis.com/auth/content"
12786	//   ]
12787	// }
12788
12789}
12790
12791// Pages invokes f for each page of results.
12792// A non-nil error returned from f will halt the iteration.
12793// The provided context supersedes any context provided to the Context method.
12794func (c *AccountstatusesListCall) Pages(ctx context.Context, f func(*AccountstatusesListResponse) error) error {
12795	c.ctx_ = ctx
12796	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
12797	for {
12798		x, err := c.Do()
12799		if err != nil {
12800			return err
12801		}
12802		if err := f(x); err != nil {
12803			return err
12804		}
12805		if x.NextPageToken == "" {
12806			return nil
12807		}
12808		c.PageToken(x.NextPageToken)
12809	}
12810}
12811
12812// method id "content.accounttax.custombatch":
12813
12814type AccounttaxCustombatchCall struct {
12815	s                            *APIService
12816	accounttaxcustombatchrequest *AccounttaxCustomBatchRequest
12817	urlParams_                   gensupport.URLParams
12818	ctx_                         context.Context
12819	header_                      http.Header
12820}
12821
12822// Custombatch: Retrieves and updates tax settings of multiple accounts
12823// in a single request.
12824func (r *AccounttaxService) Custombatch(accounttaxcustombatchrequest *AccounttaxCustomBatchRequest) *AccounttaxCustombatchCall {
12825	c := &AccounttaxCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
12826	c.accounttaxcustombatchrequest = accounttaxcustombatchrequest
12827	return c
12828}
12829
12830// Fields allows partial responses to be retrieved. See
12831// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
12832// for more information.
12833func (c *AccounttaxCustombatchCall) Fields(s ...googleapi.Field) *AccounttaxCustombatchCall {
12834	c.urlParams_.Set("fields", googleapi.CombineFields(s))
12835	return c
12836}
12837
12838// Context sets the context to be used in this call's Do method. Any
12839// pending HTTP request will be aborted if the provided context is
12840// canceled.
12841func (c *AccounttaxCustombatchCall) Context(ctx context.Context) *AccounttaxCustombatchCall {
12842	c.ctx_ = ctx
12843	return c
12844}
12845
12846// Header returns an http.Header that can be modified by the caller to
12847// add HTTP headers to the request.
12848func (c *AccounttaxCustombatchCall) Header() http.Header {
12849	if c.header_ == nil {
12850		c.header_ = make(http.Header)
12851	}
12852	return c.header_
12853}
12854
12855func (c *AccounttaxCustombatchCall) doRequest(alt string) (*http.Response, error) {
12856	reqHeaders := make(http.Header)
12857	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
12858	for k, v := range c.header_ {
12859		reqHeaders[k] = v
12860	}
12861	reqHeaders.Set("User-Agent", c.s.userAgent())
12862	var body io.Reader = nil
12863	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accounttaxcustombatchrequest)
12864	if err != nil {
12865		return nil, err
12866	}
12867	reqHeaders.Set("Content-Type", "application/json")
12868	c.urlParams_.Set("alt", alt)
12869	c.urlParams_.Set("prettyPrint", "false")
12870	urls := googleapi.ResolveRelative(c.s.BasePath, "accounttax/batch")
12871	urls += "?" + c.urlParams_.Encode()
12872	req, err := http.NewRequest("POST", urls, body)
12873	if err != nil {
12874		return nil, err
12875	}
12876	req.Header = reqHeaders
12877	return gensupport.SendRequest(c.ctx_, c.s.client, req)
12878}
12879
12880// Do executes the "content.accounttax.custombatch" call.
12881// Exactly one of *AccounttaxCustomBatchResponse or error will be
12882// non-nil. Any non-2xx status code is an error. Response headers are in
12883// either *AccounttaxCustomBatchResponse.ServerResponse.Header or (if a
12884// response was returned at all) in error.(*googleapi.Error).Header. Use
12885// googleapi.IsNotModified to check whether the returned error was
12886// because http.StatusNotModified was returned.
12887func (c *AccounttaxCustombatchCall) Do(opts ...googleapi.CallOption) (*AccounttaxCustomBatchResponse, error) {
12888	gensupport.SetOptions(c.urlParams_, opts...)
12889	res, err := c.doRequest("json")
12890	if res != nil && res.StatusCode == http.StatusNotModified {
12891		if res.Body != nil {
12892			res.Body.Close()
12893		}
12894		return nil, &googleapi.Error{
12895			Code:   res.StatusCode,
12896			Header: res.Header,
12897		}
12898	}
12899	if err != nil {
12900		return nil, err
12901	}
12902	defer googleapi.CloseBody(res)
12903	if err := googleapi.CheckResponse(res); err != nil {
12904		return nil, err
12905	}
12906	ret := &AccounttaxCustomBatchResponse{
12907		ServerResponse: googleapi.ServerResponse{
12908			Header:         res.Header,
12909			HTTPStatusCode: res.StatusCode,
12910		},
12911	}
12912	target := &ret
12913	if err := gensupport.DecodeResponse(target, res); err != nil {
12914		return nil, err
12915	}
12916	return ret, nil
12917	// {
12918	//   "description": "Retrieves and updates tax settings of multiple accounts in a single request.",
12919	//   "httpMethod": "POST",
12920	//   "id": "content.accounttax.custombatch",
12921	//   "path": "accounttax/batch",
12922	//   "request": {
12923	//     "$ref": "AccounttaxCustomBatchRequest"
12924	//   },
12925	//   "response": {
12926	//     "$ref": "AccounttaxCustomBatchResponse"
12927	//   },
12928	//   "scopes": [
12929	//     "https://www.googleapis.com/auth/content"
12930	//   ]
12931	// }
12932
12933}
12934
12935// method id "content.accounttax.get":
12936
12937type AccounttaxGetCall struct {
12938	s            *APIService
12939	merchantId   uint64
12940	accountId    uint64
12941	urlParams_   gensupport.URLParams
12942	ifNoneMatch_ string
12943	ctx_         context.Context
12944	header_      http.Header
12945}
12946
12947// Get: Retrieves the tax settings of the account.
12948func (r *AccounttaxService) Get(merchantId uint64, accountId uint64) *AccounttaxGetCall {
12949	c := &AccounttaxGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
12950	c.merchantId = merchantId
12951	c.accountId = accountId
12952	return c
12953}
12954
12955// Fields allows partial responses to be retrieved. See
12956// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
12957// for more information.
12958func (c *AccounttaxGetCall) Fields(s ...googleapi.Field) *AccounttaxGetCall {
12959	c.urlParams_.Set("fields", googleapi.CombineFields(s))
12960	return c
12961}
12962
12963// IfNoneMatch sets the optional parameter which makes the operation
12964// fail if the object's ETag matches the given value. This is useful for
12965// getting updates only after the object has changed since the last
12966// request. Use googleapi.IsNotModified to check whether the response
12967// error from Do is the result of In-None-Match.
12968func (c *AccounttaxGetCall) IfNoneMatch(entityTag string) *AccounttaxGetCall {
12969	c.ifNoneMatch_ = entityTag
12970	return c
12971}
12972
12973// Context sets the context to be used in this call's Do method. Any
12974// pending HTTP request will be aborted if the provided context is
12975// canceled.
12976func (c *AccounttaxGetCall) Context(ctx context.Context) *AccounttaxGetCall {
12977	c.ctx_ = ctx
12978	return c
12979}
12980
12981// Header returns an http.Header that can be modified by the caller to
12982// add HTTP headers to the request.
12983func (c *AccounttaxGetCall) Header() http.Header {
12984	if c.header_ == nil {
12985		c.header_ = make(http.Header)
12986	}
12987	return c.header_
12988}
12989
12990func (c *AccounttaxGetCall) doRequest(alt string) (*http.Response, error) {
12991	reqHeaders := make(http.Header)
12992	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
12993	for k, v := range c.header_ {
12994		reqHeaders[k] = v
12995	}
12996	reqHeaders.Set("User-Agent", c.s.userAgent())
12997	if c.ifNoneMatch_ != "" {
12998		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
12999	}
13000	var body io.Reader = nil
13001	c.urlParams_.Set("alt", alt)
13002	c.urlParams_.Set("prettyPrint", "false")
13003	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounttax/{accountId}")
13004	urls += "?" + c.urlParams_.Encode()
13005	req, err := http.NewRequest("GET", urls, body)
13006	if err != nil {
13007		return nil, err
13008	}
13009	req.Header = reqHeaders
13010	googleapi.Expand(req.URL, map[string]string{
13011		"merchantId": strconv.FormatUint(c.merchantId, 10),
13012		"accountId":  strconv.FormatUint(c.accountId, 10),
13013	})
13014	return gensupport.SendRequest(c.ctx_, c.s.client, req)
13015}
13016
13017// Do executes the "content.accounttax.get" call.
13018// Exactly one of *AccountTax or error will be non-nil. Any non-2xx
13019// status code is an error. Response headers are in either
13020// *AccountTax.ServerResponse.Header or (if a response was returned at
13021// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
13022// to check whether the returned error was because
13023// http.StatusNotModified was returned.
13024func (c *AccounttaxGetCall) Do(opts ...googleapi.CallOption) (*AccountTax, error) {
13025	gensupport.SetOptions(c.urlParams_, opts...)
13026	res, err := c.doRequest("json")
13027	if res != nil && res.StatusCode == http.StatusNotModified {
13028		if res.Body != nil {
13029			res.Body.Close()
13030		}
13031		return nil, &googleapi.Error{
13032			Code:   res.StatusCode,
13033			Header: res.Header,
13034		}
13035	}
13036	if err != nil {
13037		return nil, err
13038	}
13039	defer googleapi.CloseBody(res)
13040	if err := googleapi.CheckResponse(res); err != nil {
13041		return nil, err
13042	}
13043	ret := &AccountTax{
13044		ServerResponse: googleapi.ServerResponse{
13045			Header:         res.Header,
13046			HTTPStatusCode: res.StatusCode,
13047		},
13048	}
13049	target := &ret
13050	if err := gensupport.DecodeResponse(target, res); err != nil {
13051		return nil, err
13052	}
13053	return ret, nil
13054	// {
13055	//   "description": "Retrieves the tax settings of the account.",
13056	//   "httpMethod": "GET",
13057	//   "id": "content.accounttax.get",
13058	//   "parameterOrder": [
13059	//     "merchantId",
13060	//     "accountId"
13061	//   ],
13062	//   "parameters": {
13063	//     "accountId": {
13064	//       "description": "The ID of the account for which to get/update account tax settings.",
13065	//       "format": "uint64",
13066	//       "location": "path",
13067	//       "required": true,
13068	//       "type": "string"
13069	//     },
13070	//     "merchantId": {
13071	//       "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.",
13072	//       "format": "uint64",
13073	//       "location": "path",
13074	//       "required": true,
13075	//       "type": "string"
13076	//     }
13077	//   },
13078	//   "path": "{merchantId}/accounttax/{accountId}",
13079	//   "response": {
13080	//     "$ref": "AccountTax"
13081	//   },
13082	//   "scopes": [
13083	//     "https://www.googleapis.com/auth/content"
13084	//   ]
13085	// }
13086
13087}
13088
13089// method id "content.accounttax.list":
13090
13091type AccounttaxListCall struct {
13092	s            *APIService
13093	merchantId   uint64
13094	urlParams_   gensupport.URLParams
13095	ifNoneMatch_ string
13096	ctx_         context.Context
13097	header_      http.Header
13098}
13099
13100// List: Lists the tax settings of the sub-accounts in your Merchant
13101// Center account.
13102func (r *AccounttaxService) List(merchantId uint64) *AccounttaxListCall {
13103	c := &AccounttaxListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
13104	c.merchantId = merchantId
13105	return c
13106}
13107
13108// MaxResults sets the optional parameter "maxResults": The maximum
13109// number of tax settings to return in the response, used for paging.
13110func (c *AccounttaxListCall) MaxResults(maxResults int64) *AccounttaxListCall {
13111	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
13112	return c
13113}
13114
13115// PageToken sets the optional parameter "pageToken": The token returned
13116// by the previous request.
13117func (c *AccounttaxListCall) PageToken(pageToken string) *AccounttaxListCall {
13118	c.urlParams_.Set("pageToken", pageToken)
13119	return c
13120}
13121
13122// Fields allows partial responses to be retrieved. See
13123// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
13124// for more information.
13125func (c *AccounttaxListCall) Fields(s ...googleapi.Field) *AccounttaxListCall {
13126	c.urlParams_.Set("fields", googleapi.CombineFields(s))
13127	return c
13128}
13129
13130// IfNoneMatch sets the optional parameter which makes the operation
13131// fail if the object's ETag matches the given value. This is useful for
13132// getting updates only after the object has changed since the last
13133// request. Use googleapi.IsNotModified to check whether the response
13134// error from Do is the result of In-None-Match.
13135func (c *AccounttaxListCall) IfNoneMatch(entityTag string) *AccounttaxListCall {
13136	c.ifNoneMatch_ = entityTag
13137	return c
13138}
13139
13140// Context sets the context to be used in this call's Do method. Any
13141// pending HTTP request will be aborted if the provided context is
13142// canceled.
13143func (c *AccounttaxListCall) Context(ctx context.Context) *AccounttaxListCall {
13144	c.ctx_ = ctx
13145	return c
13146}
13147
13148// Header returns an http.Header that can be modified by the caller to
13149// add HTTP headers to the request.
13150func (c *AccounttaxListCall) Header() http.Header {
13151	if c.header_ == nil {
13152		c.header_ = make(http.Header)
13153	}
13154	return c.header_
13155}
13156
13157func (c *AccounttaxListCall) doRequest(alt string) (*http.Response, error) {
13158	reqHeaders := make(http.Header)
13159	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
13160	for k, v := range c.header_ {
13161		reqHeaders[k] = v
13162	}
13163	reqHeaders.Set("User-Agent", c.s.userAgent())
13164	if c.ifNoneMatch_ != "" {
13165		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
13166	}
13167	var body io.Reader = nil
13168	c.urlParams_.Set("alt", alt)
13169	c.urlParams_.Set("prettyPrint", "false")
13170	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounttax")
13171	urls += "?" + c.urlParams_.Encode()
13172	req, err := http.NewRequest("GET", urls, body)
13173	if err != nil {
13174		return nil, err
13175	}
13176	req.Header = reqHeaders
13177	googleapi.Expand(req.URL, map[string]string{
13178		"merchantId": strconv.FormatUint(c.merchantId, 10),
13179	})
13180	return gensupport.SendRequest(c.ctx_, c.s.client, req)
13181}
13182
13183// Do executes the "content.accounttax.list" call.
13184// Exactly one of *AccounttaxListResponse or error will be non-nil. Any
13185// non-2xx status code is an error. Response headers are in either
13186// *AccounttaxListResponse.ServerResponse.Header or (if a response was
13187// returned at all) in error.(*googleapi.Error).Header. Use
13188// googleapi.IsNotModified to check whether the returned error was
13189// because http.StatusNotModified was returned.
13190func (c *AccounttaxListCall) Do(opts ...googleapi.CallOption) (*AccounttaxListResponse, error) {
13191	gensupport.SetOptions(c.urlParams_, opts...)
13192	res, err := c.doRequest("json")
13193	if res != nil && res.StatusCode == http.StatusNotModified {
13194		if res.Body != nil {
13195			res.Body.Close()
13196		}
13197		return nil, &googleapi.Error{
13198			Code:   res.StatusCode,
13199			Header: res.Header,
13200		}
13201	}
13202	if err != nil {
13203		return nil, err
13204	}
13205	defer googleapi.CloseBody(res)
13206	if err := googleapi.CheckResponse(res); err != nil {
13207		return nil, err
13208	}
13209	ret := &AccounttaxListResponse{
13210		ServerResponse: googleapi.ServerResponse{
13211			Header:         res.Header,
13212			HTTPStatusCode: res.StatusCode,
13213		},
13214	}
13215	target := &ret
13216	if err := gensupport.DecodeResponse(target, res); err != nil {
13217		return nil, err
13218	}
13219	return ret, nil
13220	// {
13221	//   "description": "Lists the tax settings of the sub-accounts in your Merchant Center account.",
13222	//   "httpMethod": "GET",
13223	//   "id": "content.accounttax.list",
13224	//   "parameterOrder": [
13225	//     "merchantId"
13226	//   ],
13227	//   "parameters": {
13228	//     "maxResults": {
13229	//       "description": "The maximum number of tax settings to return in the response, used for paging.",
13230	//       "format": "uint32",
13231	//       "location": "query",
13232	//       "type": "integer"
13233	//     },
13234	//     "merchantId": {
13235	//       "description": "The ID of the managing account. This must be a multi-client account.",
13236	//       "format": "uint64",
13237	//       "location": "path",
13238	//       "required": true,
13239	//       "type": "string"
13240	//     },
13241	//     "pageToken": {
13242	//       "description": "The token returned by the previous request.",
13243	//       "location": "query",
13244	//       "type": "string"
13245	//     }
13246	//   },
13247	//   "path": "{merchantId}/accounttax",
13248	//   "response": {
13249	//     "$ref": "AccounttaxListResponse"
13250	//   },
13251	//   "scopes": [
13252	//     "https://www.googleapis.com/auth/content"
13253	//   ]
13254	// }
13255
13256}
13257
13258// Pages invokes f for each page of results.
13259// A non-nil error returned from f will halt the iteration.
13260// The provided context supersedes any context provided to the Context method.
13261func (c *AccounttaxListCall) Pages(ctx context.Context, f func(*AccounttaxListResponse) error) error {
13262	c.ctx_ = ctx
13263	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
13264	for {
13265		x, err := c.Do()
13266		if err != nil {
13267			return err
13268		}
13269		if err := f(x); err != nil {
13270			return err
13271		}
13272		if x.NextPageToken == "" {
13273			return nil
13274		}
13275		c.PageToken(x.NextPageToken)
13276	}
13277}
13278
13279// method id "content.accounttax.update":
13280
13281type AccounttaxUpdateCall struct {
13282	s          *APIService
13283	merchantId uint64
13284	accountId  uint64
13285	accounttax *AccountTax
13286	urlParams_ gensupport.URLParams
13287	ctx_       context.Context
13288	header_    http.Header
13289}
13290
13291// Update: Updates the tax settings of the account.
13292func (r *AccounttaxService) Update(merchantId uint64, accountId uint64, accounttax *AccountTax) *AccounttaxUpdateCall {
13293	c := &AccounttaxUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
13294	c.merchantId = merchantId
13295	c.accountId = accountId
13296	c.accounttax = accounttax
13297	return c
13298}
13299
13300// Fields allows partial responses to be retrieved. See
13301// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
13302// for more information.
13303func (c *AccounttaxUpdateCall) Fields(s ...googleapi.Field) *AccounttaxUpdateCall {
13304	c.urlParams_.Set("fields", googleapi.CombineFields(s))
13305	return c
13306}
13307
13308// Context sets the context to be used in this call's Do method. Any
13309// pending HTTP request will be aborted if the provided context is
13310// canceled.
13311func (c *AccounttaxUpdateCall) Context(ctx context.Context) *AccounttaxUpdateCall {
13312	c.ctx_ = ctx
13313	return c
13314}
13315
13316// Header returns an http.Header that can be modified by the caller to
13317// add HTTP headers to the request.
13318func (c *AccounttaxUpdateCall) Header() http.Header {
13319	if c.header_ == nil {
13320		c.header_ = make(http.Header)
13321	}
13322	return c.header_
13323}
13324
13325func (c *AccounttaxUpdateCall) doRequest(alt string) (*http.Response, error) {
13326	reqHeaders := make(http.Header)
13327	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
13328	for k, v := range c.header_ {
13329		reqHeaders[k] = v
13330	}
13331	reqHeaders.Set("User-Agent", c.s.userAgent())
13332	var body io.Reader = nil
13333	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accounttax)
13334	if err != nil {
13335		return nil, err
13336	}
13337	reqHeaders.Set("Content-Type", "application/json")
13338	c.urlParams_.Set("alt", alt)
13339	c.urlParams_.Set("prettyPrint", "false")
13340	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounttax/{accountId}")
13341	urls += "?" + c.urlParams_.Encode()
13342	req, err := http.NewRequest("PUT", urls, body)
13343	if err != nil {
13344		return nil, err
13345	}
13346	req.Header = reqHeaders
13347	googleapi.Expand(req.URL, map[string]string{
13348		"merchantId": strconv.FormatUint(c.merchantId, 10),
13349		"accountId":  strconv.FormatUint(c.accountId, 10),
13350	})
13351	return gensupport.SendRequest(c.ctx_, c.s.client, req)
13352}
13353
13354// Do executes the "content.accounttax.update" call.
13355// Exactly one of *AccountTax or error will be non-nil. Any non-2xx
13356// status code is an error. Response headers are in either
13357// *AccountTax.ServerResponse.Header or (if a response was returned at
13358// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
13359// to check whether the returned error was because
13360// http.StatusNotModified was returned.
13361func (c *AccounttaxUpdateCall) Do(opts ...googleapi.CallOption) (*AccountTax, error) {
13362	gensupport.SetOptions(c.urlParams_, opts...)
13363	res, err := c.doRequest("json")
13364	if res != nil && res.StatusCode == http.StatusNotModified {
13365		if res.Body != nil {
13366			res.Body.Close()
13367		}
13368		return nil, &googleapi.Error{
13369			Code:   res.StatusCode,
13370			Header: res.Header,
13371		}
13372	}
13373	if err != nil {
13374		return nil, err
13375	}
13376	defer googleapi.CloseBody(res)
13377	if err := googleapi.CheckResponse(res); err != nil {
13378		return nil, err
13379	}
13380	ret := &AccountTax{
13381		ServerResponse: googleapi.ServerResponse{
13382			Header:         res.Header,
13383			HTTPStatusCode: res.StatusCode,
13384		},
13385	}
13386	target := &ret
13387	if err := gensupport.DecodeResponse(target, res); err != nil {
13388		return nil, err
13389	}
13390	return ret, nil
13391	// {
13392	//   "description": "Updates the tax settings of the account.",
13393	//   "httpMethod": "PUT",
13394	//   "id": "content.accounttax.update",
13395	//   "parameterOrder": [
13396	//     "merchantId",
13397	//     "accountId"
13398	//   ],
13399	//   "parameters": {
13400	//     "accountId": {
13401	//       "description": "The ID of the account for which to get/update account tax settings.",
13402	//       "format": "uint64",
13403	//       "location": "path",
13404	//       "required": true,
13405	//       "type": "string"
13406	//     },
13407	//     "merchantId": {
13408	//       "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.",
13409	//       "format": "uint64",
13410	//       "location": "path",
13411	//       "required": true,
13412	//       "type": "string"
13413	//     }
13414	//   },
13415	//   "path": "{merchantId}/accounttax/{accountId}",
13416	//   "request": {
13417	//     "$ref": "AccountTax"
13418	//   },
13419	//   "response": {
13420	//     "$ref": "AccountTax"
13421	//   },
13422	//   "scopes": [
13423	//     "https://www.googleapis.com/auth/content"
13424	//   ]
13425	// }
13426
13427}
13428
13429// method id "content.datafeeds.custombatch":
13430
13431type DatafeedsCustombatchCall struct {
13432	s                           *APIService
13433	datafeedscustombatchrequest *DatafeedsCustomBatchRequest
13434	urlParams_                  gensupport.URLParams
13435	ctx_                        context.Context
13436	header_                     http.Header
13437}
13438
13439// Custombatch: Deletes, fetches, gets, inserts and updates multiple
13440// datafeeds in a single request.
13441func (r *DatafeedsService) Custombatch(datafeedscustombatchrequest *DatafeedsCustomBatchRequest) *DatafeedsCustombatchCall {
13442	c := &DatafeedsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
13443	c.datafeedscustombatchrequest = datafeedscustombatchrequest
13444	return c
13445}
13446
13447// Fields allows partial responses to be retrieved. See
13448// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
13449// for more information.
13450func (c *DatafeedsCustombatchCall) Fields(s ...googleapi.Field) *DatafeedsCustombatchCall {
13451	c.urlParams_.Set("fields", googleapi.CombineFields(s))
13452	return c
13453}
13454
13455// Context sets the context to be used in this call's Do method. Any
13456// pending HTTP request will be aborted if the provided context is
13457// canceled.
13458func (c *DatafeedsCustombatchCall) Context(ctx context.Context) *DatafeedsCustombatchCall {
13459	c.ctx_ = ctx
13460	return c
13461}
13462
13463// Header returns an http.Header that can be modified by the caller to
13464// add HTTP headers to the request.
13465func (c *DatafeedsCustombatchCall) Header() http.Header {
13466	if c.header_ == nil {
13467		c.header_ = make(http.Header)
13468	}
13469	return c.header_
13470}
13471
13472func (c *DatafeedsCustombatchCall) doRequest(alt string) (*http.Response, error) {
13473	reqHeaders := make(http.Header)
13474	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
13475	for k, v := range c.header_ {
13476		reqHeaders[k] = v
13477	}
13478	reqHeaders.Set("User-Agent", c.s.userAgent())
13479	var body io.Reader = nil
13480	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeedscustombatchrequest)
13481	if err != nil {
13482		return nil, err
13483	}
13484	reqHeaders.Set("Content-Type", "application/json")
13485	c.urlParams_.Set("alt", alt)
13486	c.urlParams_.Set("prettyPrint", "false")
13487	urls := googleapi.ResolveRelative(c.s.BasePath, "datafeeds/batch")
13488	urls += "?" + c.urlParams_.Encode()
13489	req, err := http.NewRequest("POST", urls, body)
13490	if err != nil {
13491		return nil, err
13492	}
13493	req.Header = reqHeaders
13494	return gensupport.SendRequest(c.ctx_, c.s.client, req)
13495}
13496
13497// Do executes the "content.datafeeds.custombatch" call.
13498// Exactly one of *DatafeedsCustomBatchResponse or error will be
13499// non-nil. Any non-2xx status code is an error. Response headers are in
13500// either *DatafeedsCustomBatchResponse.ServerResponse.Header or (if a
13501// response was returned at all) in error.(*googleapi.Error).Header. Use
13502// googleapi.IsNotModified to check whether the returned error was
13503// because http.StatusNotModified was returned.
13504func (c *DatafeedsCustombatchCall) Do(opts ...googleapi.CallOption) (*DatafeedsCustomBatchResponse, error) {
13505	gensupport.SetOptions(c.urlParams_, opts...)
13506	res, err := c.doRequest("json")
13507	if res != nil && res.StatusCode == http.StatusNotModified {
13508		if res.Body != nil {
13509			res.Body.Close()
13510		}
13511		return nil, &googleapi.Error{
13512			Code:   res.StatusCode,
13513			Header: res.Header,
13514		}
13515	}
13516	if err != nil {
13517		return nil, err
13518	}
13519	defer googleapi.CloseBody(res)
13520	if err := googleapi.CheckResponse(res); err != nil {
13521		return nil, err
13522	}
13523	ret := &DatafeedsCustomBatchResponse{
13524		ServerResponse: googleapi.ServerResponse{
13525			Header:         res.Header,
13526			HTTPStatusCode: res.StatusCode,
13527		},
13528	}
13529	target := &ret
13530	if err := gensupport.DecodeResponse(target, res); err != nil {
13531		return nil, err
13532	}
13533	return ret, nil
13534	// {
13535	//   "description": "Deletes, fetches, gets, inserts and updates multiple datafeeds in a single request.",
13536	//   "httpMethod": "POST",
13537	//   "id": "content.datafeeds.custombatch",
13538	//   "path": "datafeeds/batch",
13539	//   "request": {
13540	//     "$ref": "DatafeedsCustomBatchRequest"
13541	//   },
13542	//   "response": {
13543	//     "$ref": "DatafeedsCustomBatchResponse"
13544	//   },
13545	//   "scopes": [
13546	//     "https://www.googleapis.com/auth/content"
13547	//   ]
13548	// }
13549
13550}
13551
13552// method id "content.datafeeds.delete":
13553
13554type DatafeedsDeleteCall struct {
13555	s          *APIService
13556	merchantId uint64
13557	datafeedId uint64
13558	urlParams_ gensupport.URLParams
13559	ctx_       context.Context
13560	header_    http.Header
13561}
13562
13563// Delete: Deletes a datafeed configuration from your Merchant Center
13564// account.
13565func (r *DatafeedsService) Delete(merchantId uint64, datafeedId uint64) *DatafeedsDeleteCall {
13566	c := &DatafeedsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
13567	c.merchantId = merchantId
13568	c.datafeedId = datafeedId
13569	return c
13570}
13571
13572// Fields allows partial responses to be retrieved. See
13573// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
13574// for more information.
13575func (c *DatafeedsDeleteCall) Fields(s ...googleapi.Field) *DatafeedsDeleteCall {
13576	c.urlParams_.Set("fields", googleapi.CombineFields(s))
13577	return c
13578}
13579
13580// Context sets the context to be used in this call's Do method. Any
13581// pending HTTP request will be aborted if the provided context is
13582// canceled.
13583func (c *DatafeedsDeleteCall) Context(ctx context.Context) *DatafeedsDeleteCall {
13584	c.ctx_ = ctx
13585	return c
13586}
13587
13588// Header returns an http.Header that can be modified by the caller to
13589// add HTTP headers to the request.
13590func (c *DatafeedsDeleteCall) Header() http.Header {
13591	if c.header_ == nil {
13592		c.header_ = make(http.Header)
13593	}
13594	return c.header_
13595}
13596
13597func (c *DatafeedsDeleteCall) doRequest(alt string) (*http.Response, error) {
13598	reqHeaders := make(http.Header)
13599	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
13600	for k, v := range c.header_ {
13601		reqHeaders[k] = v
13602	}
13603	reqHeaders.Set("User-Agent", c.s.userAgent())
13604	var body io.Reader = nil
13605	c.urlParams_.Set("alt", alt)
13606	c.urlParams_.Set("prettyPrint", "false")
13607	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds/{datafeedId}")
13608	urls += "?" + c.urlParams_.Encode()
13609	req, err := http.NewRequest("DELETE", urls, body)
13610	if err != nil {
13611		return nil, err
13612	}
13613	req.Header = reqHeaders
13614	googleapi.Expand(req.URL, map[string]string{
13615		"merchantId": strconv.FormatUint(c.merchantId, 10),
13616		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
13617	})
13618	return gensupport.SendRequest(c.ctx_, c.s.client, req)
13619}
13620
13621// Do executes the "content.datafeeds.delete" call.
13622func (c *DatafeedsDeleteCall) Do(opts ...googleapi.CallOption) error {
13623	gensupport.SetOptions(c.urlParams_, opts...)
13624	res, err := c.doRequest("json")
13625	if err != nil {
13626		return err
13627	}
13628	defer googleapi.CloseBody(res)
13629	if err := googleapi.CheckResponse(res); err != nil {
13630		return err
13631	}
13632	return nil
13633	// {
13634	//   "description": "Deletes a datafeed configuration from your Merchant Center account.",
13635	//   "httpMethod": "DELETE",
13636	//   "id": "content.datafeeds.delete",
13637	//   "parameterOrder": [
13638	//     "merchantId",
13639	//     "datafeedId"
13640	//   ],
13641	//   "parameters": {
13642	//     "datafeedId": {
13643	//       "description": "The ID of the datafeed.",
13644	//       "format": "uint64",
13645	//       "location": "path",
13646	//       "required": true,
13647	//       "type": "string"
13648	//     },
13649	//     "merchantId": {
13650	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
13651	//       "format": "uint64",
13652	//       "location": "path",
13653	//       "required": true,
13654	//       "type": "string"
13655	//     }
13656	//   },
13657	//   "path": "{merchantId}/datafeeds/{datafeedId}",
13658	//   "scopes": [
13659	//     "https://www.googleapis.com/auth/content"
13660	//   ]
13661	// }
13662
13663}
13664
13665// method id "content.datafeeds.fetchnow":
13666
13667type DatafeedsFetchnowCall struct {
13668	s          *APIService
13669	merchantId uint64
13670	datafeedId uint64
13671	urlParams_ gensupport.URLParams
13672	ctx_       context.Context
13673	header_    http.Header
13674}
13675
13676// Fetchnow: Invokes a fetch for the datafeed in your Merchant Center
13677// account.
13678func (r *DatafeedsService) Fetchnow(merchantId uint64, datafeedId uint64) *DatafeedsFetchnowCall {
13679	c := &DatafeedsFetchnowCall{s: r.s, urlParams_: make(gensupport.URLParams)}
13680	c.merchantId = merchantId
13681	c.datafeedId = datafeedId
13682	return c
13683}
13684
13685// Fields allows partial responses to be retrieved. See
13686// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
13687// for more information.
13688func (c *DatafeedsFetchnowCall) Fields(s ...googleapi.Field) *DatafeedsFetchnowCall {
13689	c.urlParams_.Set("fields", googleapi.CombineFields(s))
13690	return c
13691}
13692
13693// Context sets the context to be used in this call's Do method. Any
13694// pending HTTP request will be aborted if the provided context is
13695// canceled.
13696func (c *DatafeedsFetchnowCall) Context(ctx context.Context) *DatafeedsFetchnowCall {
13697	c.ctx_ = ctx
13698	return c
13699}
13700
13701// Header returns an http.Header that can be modified by the caller to
13702// add HTTP headers to the request.
13703func (c *DatafeedsFetchnowCall) Header() http.Header {
13704	if c.header_ == nil {
13705		c.header_ = make(http.Header)
13706	}
13707	return c.header_
13708}
13709
13710func (c *DatafeedsFetchnowCall) doRequest(alt string) (*http.Response, error) {
13711	reqHeaders := make(http.Header)
13712	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
13713	for k, v := range c.header_ {
13714		reqHeaders[k] = v
13715	}
13716	reqHeaders.Set("User-Agent", c.s.userAgent())
13717	var body io.Reader = nil
13718	c.urlParams_.Set("alt", alt)
13719	c.urlParams_.Set("prettyPrint", "false")
13720	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds/{datafeedId}/fetchNow")
13721	urls += "?" + c.urlParams_.Encode()
13722	req, err := http.NewRequest("POST", urls, body)
13723	if err != nil {
13724		return nil, err
13725	}
13726	req.Header = reqHeaders
13727	googleapi.Expand(req.URL, map[string]string{
13728		"merchantId": strconv.FormatUint(c.merchantId, 10),
13729		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
13730	})
13731	return gensupport.SendRequest(c.ctx_, c.s.client, req)
13732}
13733
13734// Do executes the "content.datafeeds.fetchnow" call.
13735// Exactly one of *DatafeedsFetchNowResponse or error will be non-nil.
13736// Any non-2xx status code is an error. Response headers are in either
13737// *DatafeedsFetchNowResponse.ServerResponse.Header or (if a response
13738// was returned at all) in error.(*googleapi.Error).Header. Use
13739// googleapi.IsNotModified to check whether the returned error was
13740// because http.StatusNotModified was returned.
13741func (c *DatafeedsFetchnowCall) Do(opts ...googleapi.CallOption) (*DatafeedsFetchNowResponse, error) {
13742	gensupport.SetOptions(c.urlParams_, opts...)
13743	res, err := c.doRequest("json")
13744	if res != nil && res.StatusCode == http.StatusNotModified {
13745		if res.Body != nil {
13746			res.Body.Close()
13747		}
13748		return nil, &googleapi.Error{
13749			Code:   res.StatusCode,
13750			Header: res.Header,
13751		}
13752	}
13753	if err != nil {
13754		return nil, err
13755	}
13756	defer googleapi.CloseBody(res)
13757	if err := googleapi.CheckResponse(res); err != nil {
13758		return nil, err
13759	}
13760	ret := &DatafeedsFetchNowResponse{
13761		ServerResponse: googleapi.ServerResponse{
13762			Header:         res.Header,
13763			HTTPStatusCode: res.StatusCode,
13764		},
13765	}
13766	target := &ret
13767	if err := gensupport.DecodeResponse(target, res); err != nil {
13768		return nil, err
13769	}
13770	return ret, nil
13771	// {
13772	//   "description": "Invokes a fetch for the datafeed in your Merchant Center account.",
13773	//   "httpMethod": "POST",
13774	//   "id": "content.datafeeds.fetchnow",
13775	//   "parameterOrder": [
13776	//     "merchantId",
13777	//     "datafeedId"
13778	//   ],
13779	//   "parameters": {
13780	//     "datafeedId": {
13781	//       "description": "The ID of the datafeed to be fetched.",
13782	//       "format": "uint64",
13783	//       "location": "path",
13784	//       "required": true,
13785	//       "type": "string"
13786	//     },
13787	//     "merchantId": {
13788	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
13789	//       "format": "uint64",
13790	//       "location": "path",
13791	//       "required": true,
13792	//       "type": "string"
13793	//     }
13794	//   },
13795	//   "path": "{merchantId}/datafeeds/{datafeedId}/fetchNow",
13796	//   "response": {
13797	//     "$ref": "DatafeedsFetchNowResponse"
13798	//   },
13799	//   "scopes": [
13800	//     "https://www.googleapis.com/auth/content"
13801	//   ]
13802	// }
13803
13804}
13805
13806// method id "content.datafeeds.get":
13807
13808type DatafeedsGetCall struct {
13809	s            *APIService
13810	merchantId   uint64
13811	datafeedId   uint64
13812	urlParams_   gensupport.URLParams
13813	ifNoneMatch_ string
13814	ctx_         context.Context
13815	header_      http.Header
13816}
13817
13818// Get: Retrieves a datafeed configuration from your Merchant Center
13819// account.
13820func (r *DatafeedsService) Get(merchantId uint64, datafeedId uint64) *DatafeedsGetCall {
13821	c := &DatafeedsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
13822	c.merchantId = merchantId
13823	c.datafeedId = datafeedId
13824	return c
13825}
13826
13827// Fields allows partial responses to be retrieved. See
13828// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
13829// for more information.
13830func (c *DatafeedsGetCall) Fields(s ...googleapi.Field) *DatafeedsGetCall {
13831	c.urlParams_.Set("fields", googleapi.CombineFields(s))
13832	return c
13833}
13834
13835// IfNoneMatch sets the optional parameter which makes the operation
13836// fail if the object's ETag matches the given value. This is useful for
13837// getting updates only after the object has changed since the last
13838// request. Use googleapi.IsNotModified to check whether the response
13839// error from Do is the result of In-None-Match.
13840func (c *DatafeedsGetCall) IfNoneMatch(entityTag string) *DatafeedsGetCall {
13841	c.ifNoneMatch_ = entityTag
13842	return c
13843}
13844
13845// Context sets the context to be used in this call's Do method. Any
13846// pending HTTP request will be aborted if the provided context is
13847// canceled.
13848func (c *DatafeedsGetCall) Context(ctx context.Context) *DatafeedsGetCall {
13849	c.ctx_ = ctx
13850	return c
13851}
13852
13853// Header returns an http.Header that can be modified by the caller to
13854// add HTTP headers to the request.
13855func (c *DatafeedsGetCall) Header() http.Header {
13856	if c.header_ == nil {
13857		c.header_ = make(http.Header)
13858	}
13859	return c.header_
13860}
13861
13862func (c *DatafeedsGetCall) doRequest(alt string) (*http.Response, error) {
13863	reqHeaders := make(http.Header)
13864	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
13865	for k, v := range c.header_ {
13866		reqHeaders[k] = v
13867	}
13868	reqHeaders.Set("User-Agent", c.s.userAgent())
13869	if c.ifNoneMatch_ != "" {
13870		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
13871	}
13872	var body io.Reader = nil
13873	c.urlParams_.Set("alt", alt)
13874	c.urlParams_.Set("prettyPrint", "false")
13875	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds/{datafeedId}")
13876	urls += "?" + c.urlParams_.Encode()
13877	req, err := http.NewRequest("GET", urls, body)
13878	if err != nil {
13879		return nil, err
13880	}
13881	req.Header = reqHeaders
13882	googleapi.Expand(req.URL, map[string]string{
13883		"merchantId": strconv.FormatUint(c.merchantId, 10),
13884		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
13885	})
13886	return gensupport.SendRequest(c.ctx_, c.s.client, req)
13887}
13888
13889// Do executes the "content.datafeeds.get" call.
13890// Exactly one of *Datafeed or error will be non-nil. Any non-2xx status
13891// code is an error. Response headers are in either
13892// *Datafeed.ServerResponse.Header or (if a response was returned at
13893// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
13894// to check whether the returned error was because
13895// http.StatusNotModified was returned.
13896func (c *DatafeedsGetCall) Do(opts ...googleapi.CallOption) (*Datafeed, error) {
13897	gensupport.SetOptions(c.urlParams_, opts...)
13898	res, err := c.doRequest("json")
13899	if res != nil && res.StatusCode == http.StatusNotModified {
13900		if res.Body != nil {
13901			res.Body.Close()
13902		}
13903		return nil, &googleapi.Error{
13904			Code:   res.StatusCode,
13905			Header: res.Header,
13906		}
13907	}
13908	if err != nil {
13909		return nil, err
13910	}
13911	defer googleapi.CloseBody(res)
13912	if err := googleapi.CheckResponse(res); err != nil {
13913		return nil, err
13914	}
13915	ret := &Datafeed{
13916		ServerResponse: googleapi.ServerResponse{
13917			Header:         res.Header,
13918			HTTPStatusCode: res.StatusCode,
13919		},
13920	}
13921	target := &ret
13922	if err := gensupport.DecodeResponse(target, res); err != nil {
13923		return nil, err
13924	}
13925	return ret, nil
13926	// {
13927	//   "description": "Retrieves a datafeed configuration from your Merchant Center account.",
13928	//   "httpMethod": "GET",
13929	//   "id": "content.datafeeds.get",
13930	//   "parameterOrder": [
13931	//     "merchantId",
13932	//     "datafeedId"
13933	//   ],
13934	//   "parameters": {
13935	//     "datafeedId": {
13936	//       "description": "The ID of the datafeed.",
13937	//       "format": "uint64",
13938	//       "location": "path",
13939	//       "required": true,
13940	//       "type": "string"
13941	//     },
13942	//     "merchantId": {
13943	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
13944	//       "format": "uint64",
13945	//       "location": "path",
13946	//       "required": true,
13947	//       "type": "string"
13948	//     }
13949	//   },
13950	//   "path": "{merchantId}/datafeeds/{datafeedId}",
13951	//   "response": {
13952	//     "$ref": "Datafeed"
13953	//   },
13954	//   "scopes": [
13955	//     "https://www.googleapis.com/auth/content"
13956	//   ]
13957	// }
13958
13959}
13960
13961// method id "content.datafeeds.insert":
13962
13963type DatafeedsInsertCall struct {
13964	s          *APIService
13965	merchantId uint64
13966	datafeed   *Datafeed
13967	urlParams_ gensupport.URLParams
13968	ctx_       context.Context
13969	header_    http.Header
13970}
13971
13972// Insert: Registers a datafeed configuration with your Merchant Center
13973// account.
13974func (r *DatafeedsService) Insert(merchantId uint64, datafeed *Datafeed) *DatafeedsInsertCall {
13975	c := &DatafeedsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
13976	c.merchantId = merchantId
13977	c.datafeed = datafeed
13978	return c
13979}
13980
13981// Fields allows partial responses to be retrieved. See
13982// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
13983// for more information.
13984func (c *DatafeedsInsertCall) Fields(s ...googleapi.Field) *DatafeedsInsertCall {
13985	c.urlParams_.Set("fields", googleapi.CombineFields(s))
13986	return c
13987}
13988
13989// Context sets the context to be used in this call's Do method. Any
13990// pending HTTP request will be aborted if the provided context is
13991// canceled.
13992func (c *DatafeedsInsertCall) Context(ctx context.Context) *DatafeedsInsertCall {
13993	c.ctx_ = ctx
13994	return c
13995}
13996
13997// Header returns an http.Header that can be modified by the caller to
13998// add HTTP headers to the request.
13999func (c *DatafeedsInsertCall) Header() http.Header {
14000	if c.header_ == nil {
14001		c.header_ = make(http.Header)
14002	}
14003	return c.header_
14004}
14005
14006func (c *DatafeedsInsertCall) doRequest(alt string) (*http.Response, error) {
14007	reqHeaders := make(http.Header)
14008	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
14009	for k, v := range c.header_ {
14010		reqHeaders[k] = v
14011	}
14012	reqHeaders.Set("User-Agent", c.s.userAgent())
14013	var body io.Reader = nil
14014	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeed)
14015	if err != nil {
14016		return nil, err
14017	}
14018	reqHeaders.Set("Content-Type", "application/json")
14019	c.urlParams_.Set("alt", alt)
14020	c.urlParams_.Set("prettyPrint", "false")
14021	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds")
14022	urls += "?" + c.urlParams_.Encode()
14023	req, err := http.NewRequest("POST", urls, body)
14024	if err != nil {
14025		return nil, err
14026	}
14027	req.Header = reqHeaders
14028	googleapi.Expand(req.URL, map[string]string{
14029		"merchantId": strconv.FormatUint(c.merchantId, 10),
14030	})
14031	return gensupport.SendRequest(c.ctx_, c.s.client, req)
14032}
14033
14034// Do executes the "content.datafeeds.insert" call.
14035// Exactly one of *Datafeed or error will be non-nil. Any non-2xx status
14036// code is an error. Response headers are in either
14037// *Datafeed.ServerResponse.Header or (if a response was returned at
14038// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
14039// to check whether the returned error was because
14040// http.StatusNotModified was returned.
14041func (c *DatafeedsInsertCall) Do(opts ...googleapi.CallOption) (*Datafeed, error) {
14042	gensupport.SetOptions(c.urlParams_, opts...)
14043	res, err := c.doRequest("json")
14044	if res != nil && res.StatusCode == http.StatusNotModified {
14045		if res.Body != nil {
14046			res.Body.Close()
14047		}
14048		return nil, &googleapi.Error{
14049			Code:   res.StatusCode,
14050			Header: res.Header,
14051		}
14052	}
14053	if err != nil {
14054		return nil, err
14055	}
14056	defer googleapi.CloseBody(res)
14057	if err := googleapi.CheckResponse(res); err != nil {
14058		return nil, err
14059	}
14060	ret := &Datafeed{
14061		ServerResponse: googleapi.ServerResponse{
14062			Header:         res.Header,
14063			HTTPStatusCode: res.StatusCode,
14064		},
14065	}
14066	target := &ret
14067	if err := gensupport.DecodeResponse(target, res); err != nil {
14068		return nil, err
14069	}
14070	return ret, nil
14071	// {
14072	//   "description": "Registers a datafeed configuration with your Merchant Center account.",
14073	//   "httpMethod": "POST",
14074	//   "id": "content.datafeeds.insert",
14075	//   "parameterOrder": [
14076	//     "merchantId"
14077	//   ],
14078	//   "parameters": {
14079	//     "merchantId": {
14080	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
14081	//       "format": "uint64",
14082	//       "location": "path",
14083	//       "required": true,
14084	//       "type": "string"
14085	//     }
14086	//   },
14087	//   "path": "{merchantId}/datafeeds",
14088	//   "request": {
14089	//     "$ref": "Datafeed"
14090	//   },
14091	//   "response": {
14092	//     "$ref": "Datafeed"
14093	//   },
14094	//   "scopes": [
14095	//     "https://www.googleapis.com/auth/content"
14096	//   ]
14097	// }
14098
14099}
14100
14101// method id "content.datafeeds.list":
14102
14103type DatafeedsListCall struct {
14104	s            *APIService
14105	merchantId   uint64
14106	urlParams_   gensupport.URLParams
14107	ifNoneMatch_ string
14108	ctx_         context.Context
14109	header_      http.Header
14110}
14111
14112// List: Lists the configurations for datafeeds in your Merchant Center
14113// account.
14114func (r *DatafeedsService) List(merchantId uint64) *DatafeedsListCall {
14115	c := &DatafeedsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
14116	c.merchantId = merchantId
14117	return c
14118}
14119
14120// MaxResults sets the optional parameter "maxResults": The maximum
14121// number of products to return in the response, used for paging.
14122func (c *DatafeedsListCall) MaxResults(maxResults int64) *DatafeedsListCall {
14123	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
14124	return c
14125}
14126
14127// PageToken sets the optional parameter "pageToken": The token returned
14128// by the previous request.
14129func (c *DatafeedsListCall) PageToken(pageToken string) *DatafeedsListCall {
14130	c.urlParams_.Set("pageToken", pageToken)
14131	return c
14132}
14133
14134// Fields allows partial responses to be retrieved. See
14135// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
14136// for more information.
14137func (c *DatafeedsListCall) Fields(s ...googleapi.Field) *DatafeedsListCall {
14138	c.urlParams_.Set("fields", googleapi.CombineFields(s))
14139	return c
14140}
14141
14142// IfNoneMatch sets the optional parameter which makes the operation
14143// fail if the object's ETag matches the given value. This is useful for
14144// getting updates only after the object has changed since the last
14145// request. Use googleapi.IsNotModified to check whether the response
14146// error from Do is the result of In-None-Match.
14147func (c *DatafeedsListCall) IfNoneMatch(entityTag string) *DatafeedsListCall {
14148	c.ifNoneMatch_ = entityTag
14149	return c
14150}
14151
14152// Context sets the context to be used in this call's Do method. Any
14153// pending HTTP request will be aborted if the provided context is
14154// canceled.
14155func (c *DatafeedsListCall) Context(ctx context.Context) *DatafeedsListCall {
14156	c.ctx_ = ctx
14157	return c
14158}
14159
14160// Header returns an http.Header that can be modified by the caller to
14161// add HTTP headers to the request.
14162func (c *DatafeedsListCall) Header() http.Header {
14163	if c.header_ == nil {
14164		c.header_ = make(http.Header)
14165	}
14166	return c.header_
14167}
14168
14169func (c *DatafeedsListCall) doRequest(alt string) (*http.Response, error) {
14170	reqHeaders := make(http.Header)
14171	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
14172	for k, v := range c.header_ {
14173		reqHeaders[k] = v
14174	}
14175	reqHeaders.Set("User-Agent", c.s.userAgent())
14176	if c.ifNoneMatch_ != "" {
14177		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
14178	}
14179	var body io.Reader = nil
14180	c.urlParams_.Set("alt", alt)
14181	c.urlParams_.Set("prettyPrint", "false")
14182	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds")
14183	urls += "?" + c.urlParams_.Encode()
14184	req, err := http.NewRequest("GET", urls, body)
14185	if err != nil {
14186		return nil, err
14187	}
14188	req.Header = reqHeaders
14189	googleapi.Expand(req.URL, map[string]string{
14190		"merchantId": strconv.FormatUint(c.merchantId, 10),
14191	})
14192	return gensupport.SendRequest(c.ctx_, c.s.client, req)
14193}
14194
14195// Do executes the "content.datafeeds.list" call.
14196// Exactly one of *DatafeedsListResponse or error will be non-nil. Any
14197// non-2xx status code is an error. Response headers are in either
14198// *DatafeedsListResponse.ServerResponse.Header or (if a response was
14199// returned at all) in error.(*googleapi.Error).Header. Use
14200// googleapi.IsNotModified to check whether the returned error was
14201// because http.StatusNotModified was returned.
14202func (c *DatafeedsListCall) Do(opts ...googleapi.CallOption) (*DatafeedsListResponse, error) {
14203	gensupport.SetOptions(c.urlParams_, opts...)
14204	res, err := c.doRequest("json")
14205	if res != nil && res.StatusCode == http.StatusNotModified {
14206		if res.Body != nil {
14207			res.Body.Close()
14208		}
14209		return nil, &googleapi.Error{
14210			Code:   res.StatusCode,
14211			Header: res.Header,
14212		}
14213	}
14214	if err != nil {
14215		return nil, err
14216	}
14217	defer googleapi.CloseBody(res)
14218	if err := googleapi.CheckResponse(res); err != nil {
14219		return nil, err
14220	}
14221	ret := &DatafeedsListResponse{
14222		ServerResponse: googleapi.ServerResponse{
14223			Header:         res.Header,
14224			HTTPStatusCode: res.StatusCode,
14225		},
14226	}
14227	target := &ret
14228	if err := gensupport.DecodeResponse(target, res); err != nil {
14229		return nil, err
14230	}
14231	return ret, nil
14232	// {
14233	//   "description": "Lists the configurations for datafeeds in your Merchant Center account.",
14234	//   "httpMethod": "GET",
14235	//   "id": "content.datafeeds.list",
14236	//   "parameterOrder": [
14237	//     "merchantId"
14238	//   ],
14239	//   "parameters": {
14240	//     "maxResults": {
14241	//       "description": "The maximum number of products to return in the response, used for paging.",
14242	//       "format": "uint32",
14243	//       "location": "query",
14244	//       "type": "integer"
14245	//     },
14246	//     "merchantId": {
14247	//       "description": "The ID of the account that manages the datafeeds. This account cannot be a multi-client account.",
14248	//       "format": "uint64",
14249	//       "location": "path",
14250	//       "required": true,
14251	//       "type": "string"
14252	//     },
14253	//     "pageToken": {
14254	//       "description": "The token returned by the previous request.",
14255	//       "location": "query",
14256	//       "type": "string"
14257	//     }
14258	//   },
14259	//   "path": "{merchantId}/datafeeds",
14260	//   "response": {
14261	//     "$ref": "DatafeedsListResponse"
14262	//   },
14263	//   "scopes": [
14264	//     "https://www.googleapis.com/auth/content"
14265	//   ]
14266	// }
14267
14268}
14269
14270// Pages invokes f for each page of results.
14271// A non-nil error returned from f will halt the iteration.
14272// The provided context supersedes any context provided to the Context method.
14273func (c *DatafeedsListCall) Pages(ctx context.Context, f func(*DatafeedsListResponse) error) error {
14274	c.ctx_ = ctx
14275	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
14276	for {
14277		x, err := c.Do()
14278		if err != nil {
14279			return err
14280		}
14281		if err := f(x); err != nil {
14282			return err
14283		}
14284		if x.NextPageToken == "" {
14285			return nil
14286		}
14287		c.PageToken(x.NextPageToken)
14288	}
14289}
14290
14291// method id "content.datafeeds.update":
14292
14293type DatafeedsUpdateCall struct {
14294	s          *APIService
14295	merchantId uint64
14296	datafeedId uint64
14297	datafeed   *Datafeed
14298	urlParams_ gensupport.URLParams
14299	ctx_       context.Context
14300	header_    http.Header
14301}
14302
14303// Update: Updates a datafeed configuration of your Merchant Center
14304// account.
14305func (r *DatafeedsService) Update(merchantId uint64, datafeedId uint64, datafeed *Datafeed) *DatafeedsUpdateCall {
14306	c := &DatafeedsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
14307	c.merchantId = merchantId
14308	c.datafeedId = datafeedId
14309	c.datafeed = datafeed
14310	return c
14311}
14312
14313// Fields allows partial responses to be retrieved. See
14314// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
14315// for more information.
14316func (c *DatafeedsUpdateCall) Fields(s ...googleapi.Field) *DatafeedsUpdateCall {
14317	c.urlParams_.Set("fields", googleapi.CombineFields(s))
14318	return c
14319}
14320
14321// Context sets the context to be used in this call's Do method. Any
14322// pending HTTP request will be aborted if the provided context is
14323// canceled.
14324func (c *DatafeedsUpdateCall) Context(ctx context.Context) *DatafeedsUpdateCall {
14325	c.ctx_ = ctx
14326	return c
14327}
14328
14329// Header returns an http.Header that can be modified by the caller to
14330// add HTTP headers to the request.
14331func (c *DatafeedsUpdateCall) Header() http.Header {
14332	if c.header_ == nil {
14333		c.header_ = make(http.Header)
14334	}
14335	return c.header_
14336}
14337
14338func (c *DatafeedsUpdateCall) doRequest(alt string) (*http.Response, error) {
14339	reqHeaders := make(http.Header)
14340	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
14341	for k, v := range c.header_ {
14342		reqHeaders[k] = v
14343	}
14344	reqHeaders.Set("User-Agent", c.s.userAgent())
14345	var body io.Reader = nil
14346	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeed)
14347	if err != nil {
14348		return nil, err
14349	}
14350	reqHeaders.Set("Content-Type", "application/json")
14351	c.urlParams_.Set("alt", alt)
14352	c.urlParams_.Set("prettyPrint", "false")
14353	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds/{datafeedId}")
14354	urls += "?" + c.urlParams_.Encode()
14355	req, err := http.NewRequest("PUT", urls, body)
14356	if err != nil {
14357		return nil, err
14358	}
14359	req.Header = reqHeaders
14360	googleapi.Expand(req.URL, map[string]string{
14361		"merchantId": strconv.FormatUint(c.merchantId, 10),
14362		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
14363	})
14364	return gensupport.SendRequest(c.ctx_, c.s.client, req)
14365}
14366
14367// Do executes the "content.datafeeds.update" call.
14368// Exactly one of *Datafeed or error will be non-nil. Any non-2xx status
14369// code is an error. Response headers are in either
14370// *Datafeed.ServerResponse.Header or (if a response was returned at
14371// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
14372// to check whether the returned error was because
14373// http.StatusNotModified was returned.
14374func (c *DatafeedsUpdateCall) Do(opts ...googleapi.CallOption) (*Datafeed, error) {
14375	gensupport.SetOptions(c.urlParams_, opts...)
14376	res, err := c.doRequest("json")
14377	if res != nil && res.StatusCode == http.StatusNotModified {
14378		if res.Body != nil {
14379			res.Body.Close()
14380		}
14381		return nil, &googleapi.Error{
14382			Code:   res.StatusCode,
14383			Header: res.Header,
14384		}
14385	}
14386	if err != nil {
14387		return nil, err
14388	}
14389	defer googleapi.CloseBody(res)
14390	if err := googleapi.CheckResponse(res); err != nil {
14391		return nil, err
14392	}
14393	ret := &Datafeed{
14394		ServerResponse: googleapi.ServerResponse{
14395			Header:         res.Header,
14396			HTTPStatusCode: res.StatusCode,
14397		},
14398	}
14399	target := &ret
14400	if err := gensupport.DecodeResponse(target, res); err != nil {
14401		return nil, err
14402	}
14403	return ret, nil
14404	// {
14405	//   "description": "Updates a datafeed configuration of your Merchant Center account.",
14406	//   "httpMethod": "PUT",
14407	//   "id": "content.datafeeds.update",
14408	//   "parameterOrder": [
14409	//     "merchantId",
14410	//     "datafeedId"
14411	//   ],
14412	//   "parameters": {
14413	//     "datafeedId": {
14414	//       "description": "The ID of the datafeed.",
14415	//       "format": "uint64",
14416	//       "location": "path",
14417	//       "required": true,
14418	//       "type": "string"
14419	//     },
14420	//     "merchantId": {
14421	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
14422	//       "format": "uint64",
14423	//       "location": "path",
14424	//       "required": true,
14425	//       "type": "string"
14426	//     }
14427	//   },
14428	//   "path": "{merchantId}/datafeeds/{datafeedId}",
14429	//   "request": {
14430	//     "$ref": "Datafeed"
14431	//   },
14432	//   "response": {
14433	//     "$ref": "Datafeed"
14434	//   },
14435	//   "scopes": [
14436	//     "https://www.googleapis.com/auth/content"
14437	//   ]
14438	// }
14439
14440}
14441
14442// method id "content.datafeedstatuses.custombatch":
14443
14444type DatafeedstatusesCustombatchCall struct {
14445	s                                  *APIService
14446	datafeedstatusescustombatchrequest *DatafeedstatusesCustomBatchRequest
14447	urlParams_                         gensupport.URLParams
14448	ctx_                               context.Context
14449	header_                            http.Header
14450}
14451
14452// Custombatch: Gets multiple Merchant Center datafeed statuses in a
14453// single request.
14454func (r *DatafeedstatusesService) Custombatch(datafeedstatusescustombatchrequest *DatafeedstatusesCustomBatchRequest) *DatafeedstatusesCustombatchCall {
14455	c := &DatafeedstatusesCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
14456	c.datafeedstatusescustombatchrequest = datafeedstatusescustombatchrequest
14457	return c
14458}
14459
14460// Fields allows partial responses to be retrieved. See
14461// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
14462// for more information.
14463func (c *DatafeedstatusesCustombatchCall) Fields(s ...googleapi.Field) *DatafeedstatusesCustombatchCall {
14464	c.urlParams_.Set("fields", googleapi.CombineFields(s))
14465	return c
14466}
14467
14468// Context sets the context to be used in this call's Do method. Any
14469// pending HTTP request will be aborted if the provided context is
14470// canceled.
14471func (c *DatafeedstatusesCustombatchCall) Context(ctx context.Context) *DatafeedstatusesCustombatchCall {
14472	c.ctx_ = ctx
14473	return c
14474}
14475
14476// Header returns an http.Header that can be modified by the caller to
14477// add HTTP headers to the request.
14478func (c *DatafeedstatusesCustombatchCall) Header() http.Header {
14479	if c.header_ == nil {
14480		c.header_ = make(http.Header)
14481	}
14482	return c.header_
14483}
14484
14485func (c *DatafeedstatusesCustombatchCall) doRequest(alt string) (*http.Response, error) {
14486	reqHeaders := make(http.Header)
14487	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
14488	for k, v := range c.header_ {
14489		reqHeaders[k] = v
14490	}
14491	reqHeaders.Set("User-Agent", c.s.userAgent())
14492	var body io.Reader = nil
14493	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeedstatusescustombatchrequest)
14494	if err != nil {
14495		return nil, err
14496	}
14497	reqHeaders.Set("Content-Type", "application/json")
14498	c.urlParams_.Set("alt", alt)
14499	c.urlParams_.Set("prettyPrint", "false")
14500	urls := googleapi.ResolveRelative(c.s.BasePath, "datafeedstatuses/batch")
14501	urls += "?" + c.urlParams_.Encode()
14502	req, err := http.NewRequest("POST", urls, body)
14503	if err != nil {
14504		return nil, err
14505	}
14506	req.Header = reqHeaders
14507	return gensupport.SendRequest(c.ctx_, c.s.client, req)
14508}
14509
14510// Do executes the "content.datafeedstatuses.custombatch" call.
14511// Exactly one of *DatafeedstatusesCustomBatchResponse or error will be
14512// non-nil. Any non-2xx status code is an error. Response headers are in
14513// either *DatafeedstatusesCustomBatchResponse.ServerResponse.Header or
14514// (if a response was returned at all) in
14515// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
14516// whether the returned error was because http.StatusNotModified was
14517// returned.
14518func (c *DatafeedstatusesCustombatchCall) Do(opts ...googleapi.CallOption) (*DatafeedstatusesCustomBatchResponse, error) {
14519	gensupport.SetOptions(c.urlParams_, opts...)
14520	res, err := c.doRequest("json")
14521	if res != nil && res.StatusCode == http.StatusNotModified {
14522		if res.Body != nil {
14523			res.Body.Close()
14524		}
14525		return nil, &googleapi.Error{
14526			Code:   res.StatusCode,
14527			Header: res.Header,
14528		}
14529	}
14530	if err != nil {
14531		return nil, err
14532	}
14533	defer googleapi.CloseBody(res)
14534	if err := googleapi.CheckResponse(res); err != nil {
14535		return nil, err
14536	}
14537	ret := &DatafeedstatusesCustomBatchResponse{
14538		ServerResponse: googleapi.ServerResponse{
14539			Header:         res.Header,
14540			HTTPStatusCode: res.StatusCode,
14541		},
14542	}
14543	target := &ret
14544	if err := gensupport.DecodeResponse(target, res); err != nil {
14545		return nil, err
14546	}
14547	return ret, nil
14548	// {
14549	//   "description": "Gets multiple Merchant Center datafeed statuses in a single request.",
14550	//   "httpMethod": "POST",
14551	//   "id": "content.datafeedstatuses.custombatch",
14552	//   "path": "datafeedstatuses/batch",
14553	//   "request": {
14554	//     "$ref": "DatafeedstatusesCustomBatchRequest"
14555	//   },
14556	//   "response": {
14557	//     "$ref": "DatafeedstatusesCustomBatchResponse"
14558	//   },
14559	//   "scopes": [
14560	//     "https://www.googleapis.com/auth/content"
14561	//   ]
14562	// }
14563
14564}
14565
14566// method id "content.datafeedstatuses.get":
14567
14568type DatafeedstatusesGetCall struct {
14569	s            *APIService
14570	merchantId   uint64
14571	datafeedId   uint64
14572	urlParams_   gensupport.URLParams
14573	ifNoneMatch_ string
14574	ctx_         context.Context
14575	header_      http.Header
14576}
14577
14578// Get: Retrieves the status of a datafeed from your Merchant Center
14579// account.
14580func (r *DatafeedstatusesService) Get(merchantId uint64, datafeedId uint64) *DatafeedstatusesGetCall {
14581	c := &DatafeedstatusesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
14582	c.merchantId = merchantId
14583	c.datafeedId = datafeedId
14584	return c
14585}
14586
14587// Country sets the optional parameter "country": The country for which
14588// to get the datafeed status. If this parameter is provided then
14589// language must also be provided. Note that this parameter is required
14590// for feeds targeting multiple countries and languages, since a feed
14591// may have a different status for each target.
14592func (c *DatafeedstatusesGetCall) Country(country string) *DatafeedstatusesGetCall {
14593	c.urlParams_.Set("country", country)
14594	return c
14595}
14596
14597// Language sets the optional parameter "language": The language for
14598// which to get the datafeed status. If this parameter is provided then
14599// country must also be provided. Note that this parameter is required
14600// for feeds targeting multiple countries and languages, since a feed
14601// may have a different status for each target.
14602func (c *DatafeedstatusesGetCall) Language(language string) *DatafeedstatusesGetCall {
14603	c.urlParams_.Set("language", language)
14604	return c
14605}
14606
14607// Fields allows partial responses to be retrieved. See
14608// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
14609// for more information.
14610func (c *DatafeedstatusesGetCall) Fields(s ...googleapi.Field) *DatafeedstatusesGetCall {
14611	c.urlParams_.Set("fields", googleapi.CombineFields(s))
14612	return c
14613}
14614
14615// IfNoneMatch sets the optional parameter which makes the operation
14616// fail if the object's ETag matches the given value. This is useful for
14617// getting updates only after the object has changed since the last
14618// request. Use googleapi.IsNotModified to check whether the response
14619// error from Do is the result of In-None-Match.
14620func (c *DatafeedstatusesGetCall) IfNoneMatch(entityTag string) *DatafeedstatusesGetCall {
14621	c.ifNoneMatch_ = entityTag
14622	return c
14623}
14624
14625// Context sets the context to be used in this call's Do method. Any
14626// pending HTTP request will be aborted if the provided context is
14627// canceled.
14628func (c *DatafeedstatusesGetCall) Context(ctx context.Context) *DatafeedstatusesGetCall {
14629	c.ctx_ = ctx
14630	return c
14631}
14632
14633// Header returns an http.Header that can be modified by the caller to
14634// add HTTP headers to the request.
14635func (c *DatafeedstatusesGetCall) Header() http.Header {
14636	if c.header_ == nil {
14637		c.header_ = make(http.Header)
14638	}
14639	return c.header_
14640}
14641
14642func (c *DatafeedstatusesGetCall) doRequest(alt string) (*http.Response, error) {
14643	reqHeaders := make(http.Header)
14644	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
14645	for k, v := range c.header_ {
14646		reqHeaders[k] = v
14647	}
14648	reqHeaders.Set("User-Agent", c.s.userAgent())
14649	if c.ifNoneMatch_ != "" {
14650		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
14651	}
14652	var body io.Reader = nil
14653	c.urlParams_.Set("alt", alt)
14654	c.urlParams_.Set("prettyPrint", "false")
14655	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeedstatuses/{datafeedId}")
14656	urls += "?" + c.urlParams_.Encode()
14657	req, err := http.NewRequest("GET", urls, body)
14658	if err != nil {
14659		return nil, err
14660	}
14661	req.Header = reqHeaders
14662	googleapi.Expand(req.URL, map[string]string{
14663		"merchantId": strconv.FormatUint(c.merchantId, 10),
14664		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
14665	})
14666	return gensupport.SendRequest(c.ctx_, c.s.client, req)
14667}
14668
14669// Do executes the "content.datafeedstatuses.get" call.
14670// Exactly one of *DatafeedStatus or error will be non-nil. Any non-2xx
14671// status code is an error. Response headers are in either
14672// *DatafeedStatus.ServerResponse.Header or (if a response was returned
14673// at all) in error.(*googleapi.Error).Header. Use
14674// googleapi.IsNotModified to check whether the returned error was
14675// because http.StatusNotModified was returned.
14676func (c *DatafeedstatusesGetCall) Do(opts ...googleapi.CallOption) (*DatafeedStatus, error) {
14677	gensupport.SetOptions(c.urlParams_, opts...)
14678	res, err := c.doRequest("json")
14679	if res != nil && res.StatusCode == http.StatusNotModified {
14680		if res.Body != nil {
14681			res.Body.Close()
14682		}
14683		return nil, &googleapi.Error{
14684			Code:   res.StatusCode,
14685			Header: res.Header,
14686		}
14687	}
14688	if err != nil {
14689		return nil, err
14690	}
14691	defer googleapi.CloseBody(res)
14692	if err := googleapi.CheckResponse(res); err != nil {
14693		return nil, err
14694	}
14695	ret := &DatafeedStatus{
14696		ServerResponse: googleapi.ServerResponse{
14697			Header:         res.Header,
14698			HTTPStatusCode: res.StatusCode,
14699		},
14700	}
14701	target := &ret
14702	if err := gensupport.DecodeResponse(target, res); err != nil {
14703		return nil, err
14704	}
14705	return ret, nil
14706	// {
14707	//   "description": "Retrieves the status of a datafeed from your Merchant Center account.",
14708	//   "httpMethod": "GET",
14709	//   "id": "content.datafeedstatuses.get",
14710	//   "parameterOrder": [
14711	//     "merchantId",
14712	//     "datafeedId"
14713	//   ],
14714	//   "parameters": {
14715	//     "country": {
14716	//       "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.",
14717	//       "location": "query",
14718	//       "type": "string"
14719	//     },
14720	//     "datafeedId": {
14721	//       "description": "The ID of the datafeed.",
14722	//       "format": "uint64",
14723	//       "location": "path",
14724	//       "required": true,
14725	//       "type": "string"
14726	//     },
14727	//     "language": {
14728	//       "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.",
14729	//       "location": "query",
14730	//       "type": "string"
14731	//     },
14732	//     "merchantId": {
14733	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
14734	//       "format": "uint64",
14735	//       "location": "path",
14736	//       "required": true,
14737	//       "type": "string"
14738	//     }
14739	//   },
14740	//   "path": "{merchantId}/datafeedstatuses/{datafeedId}",
14741	//   "response": {
14742	//     "$ref": "DatafeedStatus"
14743	//   },
14744	//   "scopes": [
14745	//     "https://www.googleapis.com/auth/content"
14746	//   ]
14747	// }
14748
14749}
14750
14751// method id "content.datafeedstatuses.list":
14752
14753type DatafeedstatusesListCall struct {
14754	s            *APIService
14755	merchantId   uint64
14756	urlParams_   gensupport.URLParams
14757	ifNoneMatch_ string
14758	ctx_         context.Context
14759	header_      http.Header
14760}
14761
14762// List: Lists the statuses of the datafeeds in your Merchant Center
14763// account.
14764func (r *DatafeedstatusesService) List(merchantId uint64) *DatafeedstatusesListCall {
14765	c := &DatafeedstatusesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
14766	c.merchantId = merchantId
14767	return c
14768}
14769
14770// MaxResults sets the optional parameter "maxResults": The maximum
14771// number of products to return in the response, used for paging.
14772func (c *DatafeedstatusesListCall) MaxResults(maxResults int64) *DatafeedstatusesListCall {
14773	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
14774	return c
14775}
14776
14777// PageToken sets the optional parameter "pageToken": The token returned
14778// by the previous request.
14779func (c *DatafeedstatusesListCall) PageToken(pageToken string) *DatafeedstatusesListCall {
14780	c.urlParams_.Set("pageToken", pageToken)
14781	return c
14782}
14783
14784// Fields allows partial responses to be retrieved. See
14785// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
14786// for more information.
14787func (c *DatafeedstatusesListCall) Fields(s ...googleapi.Field) *DatafeedstatusesListCall {
14788	c.urlParams_.Set("fields", googleapi.CombineFields(s))
14789	return c
14790}
14791
14792// IfNoneMatch sets the optional parameter which makes the operation
14793// fail if the object's ETag matches the given value. This is useful for
14794// getting updates only after the object has changed since the last
14795// request. Use googleapi.IsNotModified to check whether the response
14796// error from Do is the result of In-None-Match.
14797func (c *DatafeedstatusesListCall) IfNoneMatch(entityTag string) *DatafeedstatusesListCall {
14798	c.ifNoneMatch_ = entityTag
14799	return c
14800}
14801
14802// Context sets the context to be used in this call's Do method. Any
14803// pending HTTP request will be aborted if the provided context is
14804// canceled.
14805func (c *DatafeedstatusesListCall) Context(ctx context.Context) *DatafeedstatusesListCall {
14806	c.ctx_ = ctx
14807	return c
14808}
14809
14810// Header returns an http.Header that can be modified by the caller to
14811// add HTTP headers to the request.
14812func (c *DatafeedstatusesListCall) Header() http.Header {
14813	if c.header_ == nil {
14814		c.header_ = make(http.Header)
14815	}
14816	return c.header_
14817}
14818
14819func (c *DatafeedstatusesListCall) doRequest(alt string) (*http.Response, error) {
14820	reqHeaders := make(http.Header)
14821	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
14822	for k, v := range c.header_ {
14823		reqHeaders[k] = v
14824	}
14825	reqHeaders.Set("User-Agent", c.s.userAgent())
14826	if c.ifNoneMatch_ != "" {
14827		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
14828	}
14829	var body io.Reader = nil
14830	c.urlParams_.Set("alt", alt)
14831	c.urlParams_.Set("prettyPrint", "false")
14832	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeedstatuses")
14833	urls += "?" + c.urlParams_.Encode()
14834	req, err := http.NewRequest("GET", urls, body)
14835	if err != nil {
14836		return nil, err
14837	}
14838	req.Header = reqHeaders
14839	googleapi.Expand(req.URL, map[string]string{
14840		"merchantId": strconv.FormatUint(c.merchantId, 10),
14841	})
14842	return gensupport.SendRequest(c.ctx_, c.s.client, req)
14843}
14844
14845// Do executes the "content.datafeedstatuses.list" call.
14846// Exactly one of *DatafeedstatusesListResponse or error will be
14847// non-nil. Any non-2xx status code is an error. Response headers are in
14848// either *DatafeedstatusesListResponse.ServerResponse.Header or (if a
14849// response was returned at all) in error.(*googleapi.Error).Header. Use
14850// googleapi.IsNotModified to check whether the returned error was
14851// because http.StatusNotModified was returned.
14852func (c *DatafeedstatusesListCall) Do(opts ...googleapi.CallOption) (*DatafeedstatusesListResponse, error) {
14853	gensupport.SetOptions(c.urlParams_, opts...)
14854	res, err := c.doRequest("json")
14855	if res != nil && res.StatusCode == http.StatusNotModified {
14856		if res.Body != nil {
14857			res.Body.Close()
14858		}
14859		return nil, &googleapi.Error{
14860			Code:   res.StatusCode,
14861			Header: res.Header,
14862		}
14863	}
14864	if err != nil {
14865		return nil, err
14866	}
14867	defer googleapi.CloseBody(res)
14868	if err := googleapi.CheckResponse(res); err != nil {
14869		return nil, err
14870	}
14871	ret := &DatafeedstatusesListResponse{
14872		ServerResponse: googleapi.ServerResponse{
14873			Header:         res.Header,
14874			HTTPStatusCode: res.StatusCode,
14875		},
14876	}
14877	target := &ret
14878	if err := gensupport.DecodeResponse(target, res); err != nil {
14879		return nil, err
14880	}
14881	return ret, nil
14882	// {
14883	//   "description": "Lists the statuses of the datafeeds in your Merchant Center account.",
14884	//   "httpMethod": "GET",
14885	//   "id": "content.datafeedstatuses.list",
14886	//   "parameterOrder": [
14887	//     "merchantId"
14888	//   ],
14889	//   "parameters": {
14890	//     "maxResults": {
14891	//       "description": "The maximum number of products to return in the response, used for paging.",
14892	//       "format": "uint32",
14893	//       "location": "query",
14894	//       "type": "integer"
14895	//     },
14896	//     "merchantId": {
14897	//       "description": "The ID of the account that manages the datafeeds. This account cannot be a multi-client account.",
14898	//       "format": "uint64",
14899	//       "location": "path",
14900	//       "required": true,
14901	//       "type": "string"
14902	//     },
14903	//     "pageToken": {
14904	//       "description": "The token returned by the previous request.",
14905	//       "location": "query",
14906	//       "type": "string"
14907	//     }
14908	//   },
14909	//   "path": "{merchantId}/datafeedstatuses",
14910	//   "response": {
14911	//     "$ref": "DatafeedstatusesListResponse"
14912	//   },
14913	//   "scopes": [
14914	//     "https://www.googleapis.com/auth/content"
14915	//   ]
14916	// }
14917
14918}
14919
14920// Pages invokes f for each page of results.
14921// A non-nil error returned from f will halt the iteration.
14922// The provided context supersedes any context provided to the Context method.
14923func (c *DatafeedstatusesListCall) Pages(ctx context.Context, f func(*DatafeedstatusesListResponse) error) error {
14924	c.ctx_ = ctx
14925	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
14926	for {
14927		x, err := c.Do()
14928		if err != nil {
14929			return err
14930		}
14931		if err := f(x); err != nil {
14932			return err
14933		}
14934		if x.NextPageToken == "" {
14935			return nil
14936		}
14937		c.PageToken(x.NextPageToken)
14938	}
14939}
14940
14941// method id "content.liasettings.custombatch":
14942
14943type LiasettingsCustombatchCall struct {
14944	s                             *APIService
14945	liasettingscustombatchrequest *LiasettingsCustomBatchRequest
14946	urlParams_                    gensupport.URLParams
14947	ctx_                          context.Context
14948	header_                       http.Header
14949}
14950
14951// Custombatch: Retrieves and/or updates the LIA settings of multiple
14952// accounts in a single request.
14953func (r *LiasettingsService) Custombatch(liasettingscustombatchrequest *LiasettingsCustomBatchRequest) *LiasettingsCustombatchCall {
14954	c := &LiasettingsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
14955	c.liasettingscustombatchrequest = liasettingscustombatchrequest
14956	return c
14957}
14958
14959// Fields allows partial responses to be retrieved. See
14960// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
14961// for more information.
14962func (c *LiasettingsCustombatchCall) Fields(s ...googleapi.Field) *LiasettingsCustombatchCall {
14963	c.urlParams_.Set("fields", googleapi.CombineFields(s))
14964	return c
14965}
14966
14967// Context sets the context to be used in this call's Do method. Any
14968// pending HTTP request will be aborted if the provided context is
14969// canceled.
14970func (c *LiasettingsCustombatchCall) Context(ctx context.Context) *LiasettingsCustombatchCall {
14971	c.ctx_ = ctx
14972	return c
14973}
14974
14975// Header returns an http.Header that can be modified by the caller to
14976// add HTTP headers to the request.
14977func (c *LiasettingsCustombatchCall) Header() http.Header {
14978	if c.header_ == nil {
14979		c.header_ = make(http.Header)
14980	}
14981	return c.header_
14982}
14983
14984func (c *LiasettingsCustombatchCall) doRequest(alt string) (*http.Response, error) {
14985	reqHeaders := make(http.Header)
14986	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
14987	for k, v := range c.header_ {
14988		reqHeaders[k] = v
14989	}
14990	reqHeaders.Set("User-Agent", c.s.userAgent())
14991	var body io.Reader = nil
14992	body, err := googleapi.WithoutDataWrapper.JSONReader(c.liasettingscustombatchrequest)
14993	if err != nil {
14994		return nil, err
14995	}
14996	reqHeaders.Set("Content-Type", "application/json")
14997	c.urlParams_.Set("alt", alt)
14998	c.urlParams_.Set("prettyPrint", "false")
14999	urls := googleapi.ResolveRelative(c.s.BasePath, "liasettings/batch")
15000	urls += "?" + c.urlParams_.Encode()
15001	req, err := http.NewRequest("POST", urls, body)
15002	if err != nil {
15003		return nil, err
15004	}
15005	req.Header = reqHeaders
15006	return gensupport.SendRequest(c.ctx_, c.s.client, req)
15007}
15008
15009// Do executes the "content.liasettings.custombatch" call.
15010// Exactly one of *LiasettingsCustomBatchResponse or error will be
15011// non-nil. Any non-2xx status code is an error. Response headers are in
15012// either *LiasettingsCustomBatchResponse.ServerResponse.Header or (if a
15013// response was returned at all) in error.(*googleapi.Error).Header. Use
15014// googleapi.IsNotModified to check whether the returned error was
15015// because http.StatusNotModified was returned.
15016func (c *LiasettingsCustombatchCall) Do(opts ...googleapi.CallOption) (*LiasettingsCustomBatchResponse, error) {
15017	gensupport.SetOptions(c.urlParams_, opts...)
15018	res, err := c.doRequest("json")
15019	if res != nil && res.StatusCode == http.StatusNotModified {
15020		if res.Body != nil {
15021			res.Body.Close()
15022		}
15023		return nil, &googleapi.Error{
15024			Code:   res.StatusCode,
15025			Header: res.Header,
15026		}
15027	}
15028	if err != nil {
15029		return nil, err
15030	}
15031	defer googleapi.CloseBody(res)
15032	if err := googleapi.CheckResponse(res); err != nil {
15033		return nil, err
15034	}
15035	ret := &LiasettingsCustomBatchResponse{
15036		ServerResponse: googleapi.ServerResponse{
15037			Header:         res.Header,
15038			HTTPStatusCode: res.StatusCode,
15039		},
15040	}
15041	target := &ret
15042	if err := gensupport.DecodeResponse(target, res); err != nil {
15043		return nil, err
15044	}
15045	return ret, nil
15046	// {
15047	//   "description": "Retrieves and/or updates the LIA settings of multiple accounts in a single request.",
15048	//   "httpMethod": "POST",
15049	//   "id": "content.liasettings.custombatch",
15050	//   "path": "liasettings/batch",
15051	//   "request": {
15052	//     "$ref": "LiasettingsCustomBatchRequest"
15053	//   },
15054	//   "response": {
15055	//     "$ref": "LiasettingsCustomBatchResponse"
15056	//   },
15057	//   "scopes": [
15058	//     "https://www.googleapis.com/auth/content"
15059	//   ]
15060	// }
15061
15062}
15063
15064// method id "content.liasettings.get":
15065
15066type LiasettingsGetCall struct {
15067	s            *APIService
15068	merchantId   uint64
15069	accountId    uint64
15070	urlParams_   gensupport.URLParams
15071	ifNoneMatch_ string
15072	ctx_         context.Context
15073	header_      http.Header
15074}
15075
15076// Get: Retrieves the LIA settings of the account.
15077func (r *LiasettingsService) Get(merchantId uint64, accountId uint64) *LiasettingsGetCall {
15078	c := &LiasettingsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
15079	c.merchantId = merchantId
15080	c.accountId = accountId
15081	return c
15082}
15083
15084// Fields allows partial responses to be retrieved. See
15085// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
15086// for more information.
15087func (c *LiasettingsGetCall) Fields(s ...googleapi.Field) *LiasettingsGetCall {
15088	c.urlParams_.Set("fields", googleapi.CombineFields(s))
15089	return c
15090}
15091
15092// IfNoneMatch sets the optional parameter which makes the operation
15093// fail if the object's ETag matches the given value. This is useful for
15094// getting updates only after the object has changed since the last
15095// request. Use googleapi.IsNotModified to check whether the response
15096// error from Do is the result of In-None-Match.
15097func (c *LiasettingsGetCall) IfNoneMatch(entityTag string) *LiasettingsGetCall {
15098	c.ifNoneMatch_ = entityTag
15099	return c
15100}
15101
15102// Context sets the context to be used in this call's Do method. Any
15103// pending HTTP request will be aborted if the provided context is
15104// canceled.
15105func (c *LiasettingsGetCall) Context(ctx context.Context) *LiasettingsGetCall {
15106	c.ctx_ = ctx
15107	return c
15108}
15109
15110// Header returns an http.Header that can be modified by the caller to
15111// add HTTP headers to the request.
15112func (c *LiasettingsGetCall) Header() http.Header {
15113	if c.header_ == nil {
15114		c.header_ = make(http.Header)
15115	}
15116	return c.header_
15117}
15118
15119func (c *LiasettingsGetCall) doRequest(alt string) (*http.Response, error) {
15120	reqHeaders := make(http.Header)
15121	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
15122	for k, v := range c.header_ {
15123		reqHeaders[k] = v
15124	}
15125	reqHeaders.Set("User-Agent", c.s.userAgent())
15126	if c.ifNoneMatch_ != "" {
15127		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
15128	}
15129	var body io.Reader = nil
15130	c.urlParams_.Set("alt", alt)
15131	c.urlParams_.Set("prettyPrint", "false")
15132	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}")
15133	urls += "?" + c.urlParams_.Encode()
15134	req, err := http.NewRequest("GET", urls, body)
15135	if err != nil {
15136		return nil, err
15137	}
15138	req.Header = reqHeaders
15139	googleapi.Expand(req.URL, map[string]string{
15140		"merchantId": strconv.FormatUint(c.merchantId, 10),
15141		"accountId":  strconv.FormatUint(c.accountId, 10),
15142	})
15143	return gensupport.SendRequest(c.ctx_, c.s.client, req)
15144}
15145
15146// Do executes the "content.liasettings.get" call.
15147// Exactly one of *LiaSettings or error will be non-nil. Any non-2xx
15148// status code is an error. Response headers are in either
15149// *LiaSettings.ServerResponse.Header or (if a response was returned at
15150// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
15151// to check whether the returned error was because
15152// http.StatusNotModified was returned.
15153func (c *LiasettingsGetCall) Do(opts ...googleapi.CallOption) (*LiaSettings, error) {
15154	gensupport.SetOptions(c.urlParams_, opts...)
15155	res, err := c.doRequest("json")
15156	if res != nil && res.StatusCode == http.StatusNotModified {
15157		if res.Body != nil {
15158			res.Body.Close()
15159		}
15160		return nil, &googleapi.Error{
15161			Code:   res.StatusCode,
15162			Header: res.Header,
15163		}
15164	}
15165	if err != nil {
15166		return nil, err
15167	}
15168	defer googleapi.CloseBody(res)
15169	if err := googleapi.CheckResponse(res); err != nil {
15170		return nil, err
15171	}
15172	ret := &LiaSettings{
15173		ServerResponse: googleapi.ServerResponse{
15174			Header:         res.Header,
15175			HTTPStatusCode: res.StatusCode,
15176		},
15177	}
15178	target := &ret
15179	if err := gensupport.DecodeResponse(target, res); err != nil {
15180		return nil, err
15181	}
15182	return ret, nil
15183	// {
15184	//   "description": "Retrieves the LIA settings of the account.",
15185	//   "httpMethod": "GET",
15186	//   "id": "content.liasettings.get",
15187	//   "parameterOrder": [
15188	//     "merchantId",
15189	//     "accountId"
15190	//   ],
15191	//   "parameters": {
15192	//     "accountId": {
15193	//       "description": "The ID of the account for which to get or update LIA settings.",
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": "{merchantId}/liasettings/{accountId}",
15208	//   "response": {
15209	//     "$ref": "LiaSettings"
15210	//   },
15211	//   "scopes": [
15212	//     "https://www.googleapis.com/auth/content"
15213	//   ]
15214	// }
15215
15216}
15217
15218// method id "content.liasettings.getaccessiblegmbaccounts":
15219
15220type LiasettingsGetaccessiblegmbaccountsCall struct {
15221	s            *APIService
15222	merchantId   uint64
15223	accountId    uint64
15224	urlParams_   gensupport.URLParams
15225	ifNoneMatch_ string
15226	ctx_         context.Context
15227	header_      http.Header
15228}
15229
15230// Getaccessiblegmbaccounts: Retrieves the list of accessible Google My
15231// Business accounts.
15232func (r *LiasettingsService) Getaccessiblegmbaccounts(merchantId uint64, accountId uint64) *LiasettingsGetaccessiblegmbaccountsCall {
15233	c := &LiasettingsGetaccessiblegmbaccountsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
15234	c.merchantId = merchantId
15235	c.accountId = accountId
15236	return c
15237}
15238
15239// Fields allows partial responses to be retrieved. See
15240// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
15241// for more information.
15242func (c *LiasettingsGetaccessiblegmbaccountsCall) Fields(s ...googleapi.Field) *LiasettingsGetaccessiblegmbaccountsCall {
15243	c.urlParams_.Set("fields", googleapi.CombineFields(s))
15244	return c
15245}
15246
15247// IfNoneMatch sets the optional parameter which makes the operation
15248// fail if the object's ETag matches the given value. This is useful for
15249// getting updates only after the object has changed since the last
15250// request. Use googleapi.IsNotModified to check whether the response
15251// error from Do is the result of In-None-Match.
15252func (c *LiasettingsGetaccessiblegmbaccountsCall) IfNoneMatch(entityTag string) *LiasettingsGetaccessiblegmbaccountsCall {
15253	c.ifNoneMatch_ = entityTag
15254	return c
15255}
15256
15257// Context sets the context to be used in this call's Do method. Any
15258// pending HTTP request will be aborted if the provided context is
15259// canceled.
15260func (c *LiasettingsGetaccessiblegmbaccountsCall) Context(ctx context.Context) *LiasettingsGetaccessiblegmbaccountsCall {
15261	c.ctx_ = ctx
15262	return c
15263}
15264
15265// Header returns an http.Header that can be modified by the caller to
15266// add HTTP headers to the request.
15267func (c *LiasettingsGetaccessiblegmbaccountsCall) Header() http.Header {
15268	if c.header_ == nil {
15269		c.header_ = make(http.Header)
15270	}
15271	return c.header_
15272}
15273
15274func (c *LiasettingsGetaccessiblegmbaccountsCall) doRequest(alt string) (*http.Response, error) {
15275	reqHeaders := make(http.Header)
15276	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
15277	for k, v := range c.header_ {
15278		reqHeaders[k] = v
15279	}
15280	reqHeaders.Set("User-Agent", c.s.userAgent())
15281	if c.ifNoneMatch_ != "" {
15282		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
15283	}
15284	var body io.Reader = nil
15285	c.urlParams_.Set("alt", alt)
15286	c.urlParams_.Set("prettyPrint", "false")
15287	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/accessiblegmbaccounts")
15288	urls += "?" + c.urlParams_.Encode()
15289	req, err := http.NewRequest("GET", urls, body)
15290	if err != nil {
15291		return nil, err
15292	}
15293	req.Header = reqHeaders
15294	googleapi.Expand(req.URL, map[string]string{
15295		"merchantId": strconv.FormatUint(c.merchantId, 10),
15296		"accountId":  strconv.FormatUint(c.accountId, 10),
15297	})
15298	return gensupport.SendRequest(c.ctx_, c.s.client, req)
15299}
15300
15301// Do executes the "content.liasettings.getaccessiblegmbaccounts" call.
15302// Exactly one of *LiasettingsGetAccessibleGmbAccountsResponse or error
15303// will be non-nil. Any non-2xx status code is an error. Response
15304// headers are in either
15305// *LiasettingsGetAccessibleGmbAccountsResponse.ServerResponse.Header or
15306// (if a response was returned at all) in
15307// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
15308// whether the returned error was because http.StatusNotModified was
15309// returned.
15310func (c *LiasettingsGetaccessiblegmbaccountsCall) Do(opts ...googleapi.CallOption) (*LiasettingsGetAccessibleGmbAccountsResponse, error) {
15311	gensupport.SetOptions(c.urlParams_, opts...)
15312	res, err := c.doRequest("json")
15313	if res != nil && res.StatusCode == http.StatusNotModified {
15314		if res.Body != nil {
15315			res.Body.Close()
15316		}
15317		return nil, &googleapi.Error{
15318			Code:   res.StatusCode,
15319			Header: res.Header,
15320		}
15321	}
15322	if err != nil {
15323		return nil, err
15324	}
15325	defer googleapi.CloseBody(res)
15326	if err := googleapi.CheckResponse(res); err != nil {
15327		return nil, err
15328	}
15329	ret := &LiasettingsGetAccessibleGmbAccountsResponse{
15330		ServerResponse: googleapi.ServerResponse{
15331			Header:         res.Header,
15332			HTTPStatusCode: res.StatusCode,
15333		},
15334	}
15335	target := &ret
15336	if err := gensupport.DecodeResponse(target, res); err != nil {
15337		return nil, err
15338	}
15339	return ret, nil
15340	// {
15341	//   "description": "Retrieves the list of accessible Google My Business accounts.",
15342	//   "httpMethod": "GET",
15343	//   "id": "content.liasettings.getaccessiblegmbaccounts",
15344	//   "parameterOrder": [
15345	//     "merchantId",
15346	//     "accountId"
15347	//   ],
15348	//   "parameters": {
15349	//     "accountId": {
15350	//       "description": "The ID of the account for which to retrieve accessible Google My Business accounts.",
15351	//       "format": "uint64",
15352	//       "location": "path",
15353	//       "required": true,
15354	//       "type": "string"
15355	//     },
15356	//     "merchantId": {
15357	//       "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.",
15358	//       "format": "uint64",
15359	//       "location": "path",
15360	//       "required": true,
15361	//       "type": "string"
15362	//     }
15363	//   },
15364	//   "path": "{merchantId}/liasettings/{accountId}/accessiblegmbaccounts",
15365	//   "response": {
15366	//     "$ref": "LiasettingsGetAccessibleGmbAccountsResponse"
15367	//   },
15368	//   "scopes": [
15369	//     "https://www.googleapis.com/auth/content"
15370	//   ]
15371	// }
15372
15373}
15374
15375// method id "content.liasettings.list":
15376
15377type LiasettingsListCall struct {
15378	s            *APIService
15379	merchantId   uint64
15380	urlParams_   gensupport.URLParams
15381	ifNoneMatch_ string
15382	ctx_         context.Context
15383	header_      http.Header
15384}
15385
15386// List: Lists the LIA settings of the sub-accounts in your Merchant
15387// Center account.
15388func (r *LiasettingsService) List(merchantId uint64) *LiasettingsListCall {
15389	c := &LiasettingsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
15390	c.merchantId = merchantId
15391	return c
15392}
15393
15394// MaxResults sets the optional parameter "maxResults": The maximum
15395// number of LIA settings to return in the response, used for paging.
15396func (c *LiasettingsListCall) MaxResults(maxResults int64) *LiasettingsListCall {
15397	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
15398	return c
15399}
15400
15401// PageToken sets the optional parameter "pageToken": The token returned
15402// by the previous request.
15403func (c *LiasettingsListCall) PageToken(pageToken string) *LiasettingsListCall {
15404	c.urlParams_.Set("pageToken", pageToken)
15405	return c
15406}
15407
15408// Fields allows partial responses to be retrieved. See
15409// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
15410// for more information.
15411func (c *LiasettingsListCall) Fields(s ...googleapi.Field) *LiasettingsListCall {
15412	c.urlParams_.Set("fields", googleapi.CombineFields(s))
15413	return c
15414}
15415
15416// IfNoneMatch sets the optional parameter which makes the operation
15417// fail if the object's ETag matches the given value. This is useful for
15418// getting updates only after the object has changed since the last
15419// request. Use googleapi.IsNotModified to check whether the response
15420// error from Do is the result of In-None-Match.
15421func (c *LiasettingsListCall) IfNoneMatch(entityTag string) *LiasettingsListCall {
15422	c.ifNoneMatch_ = entityTag
15423	return c
15424}
15425
15426// Context sets the context to be used in this call's Do method. Any
15427// pending HTTP request will be aborted if the provided context is
15428// canceled.
15429func (c *LiasettingsListCall) Context(ctx context.Context) *LiasettingsListCall {
15430	c.ctx_ = ctx
15431	return c
15432}
15433
15434// Header returns an http.Header that can be modified by the caller to
15435// add HTTP headers to the request.
15436func (c *LiasettingsListCall) Header() http.Header {
15437	if c.header_ == nil {
15438		c.header_ = make(http.Header)
15439	}
15440	return c.header_
15441}
15442
15443func (c *LiasettingsListCall) doRequest(alt string) (*http.Response, error) {
15444	reqHeaders := make(http.Header)
15445	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
15446	for k, v := range c.header_ {
15447		reqHeaders[k] = v
15448	}
15449	reqHeaders.Set("User-Agent", c.s.userAgent())
15450	if c.ifNoneMatch_ != "" {
15451		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
15452	}
15453	var body io.Reader = nil
15454	c.urlParams_.Set("alt", alt)
15455	c.urlParams_.Set("prettyPrint", "false")
15456	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings")
15457	urls += "?" + c.urlParams_.Encode()
15458	req, err := http.NewRequest("GET", urls, body)
15459	if err != nil {
15460		return nil, err
15461	}
15462	req.Header = reqHeaders
15463	googleapi.Expand(req.URL, map[string]string{
15464		"merchantId": strconv.FormatUint(c.merchantId, 10),
15465	})
15466	return gensupport.SendRequest(c.ctx_, c.s.client, req)
15467}
15468
15469// Do executes the "content.liasettings.list" call.
15470// Exactly one of *LiasettingsListResponse or error will be non-nil. Any
15471// non-2xx status code is an error. Response headers are in either
15472// *LiasettingsListResponse.ServerResponse.Header or (if a response was
15473// returned at all) in error.(*googleapi.Error).Header. Use
15474// googleapi.IsNotModified to check whether the returned error was
15475// because http.StatusNotModified was returned.
15476func (c *LiasettingsListCall) Do(opts ...googleapi.CallOption) (*LiasettingsListResponse, error) {
15477	gensupport.SetOptions(c.urlParams_, opts...)
15478	res, err := c.doRequest("json")
15479	if res != nil && res.StatusCode == http.StatusNotModified {
15480		if res.Body != nil {
15481			res.Body.Close()
15482		}
15483		return nil, &googleapi.Error{
15484			Code:   res.StatusCode,
15485			Header: res.Header,
15486		}
15487	}
15488	if err != nil {
15489		return nil, err
15490	}
15491	defer googleapi.CloseBody(res)
15492	if err := googleapi.CheckResponse(res); err != nil {
15493		return nil, err
15494	}
15495	ret := &LiasettingsListResponse{
15496		ServerResponse: googleapi.ServerResponse{
15497			Header:         res.Header,
15498			HTTPStatusCode: res.StatusCode,
15499		},
15500	}
15501	target := &ret
15502	if err := gensupport.DecodeResponse(target, res); err != nil {
15503		return nil, err
15504	}
15505	return ret, nil
15506	// {
15507	//   "description": "Lists the LIA settings of the sub-accounts in your Merchant Center account.",
15508	//   "httpMethod": "GET",
15509	//   "id": "content.liasettings.list",
15510	//   "parameterOrder": [
15511	//     "merchantId"
15512	//   ],
15513	//   "parameters": {
15514	//     "maxResults": {
15515	//       "description": "The maximum number of LIA settings to return in the response, used for paging.",
15516	//       "format": "uint32",
15517	//       "location": "query",
15518	//       "type": "integer"
15519	//     },
15520	//     "merchantId": {
15521	//       "description": "The ID of the managing account. This must be a multi-client account.",
15522	//       "format": "uint64",
15523	//       "location": "path",
15524	//       "required": true,
15525	//       "type": "string"
15526	//     },
15527	//     "pageToken": {
15528	//       "description": "The token returned by the previous request.",
15529	//       "location": "query",
15530	//       "type": "string"
15531	//     }
15532	//   },
15533	//   "path": "{merchantId}/liasettings",
15534	//   "response": {
15535	//     "$ref": "LiasettingsListResponse"
15536	//   },
15537	//   "scopes": [
15538	//     "https://www.googleapis.com/auth/content"
15539	//   ]
15540	// }
15541
15542}
15543
15544// Pages invokes f for each page of results.
15545// A non-nil error returned from f will halt the iteration.
15546// The provided context supersedes any context provided to the Context method.
15547func (c *LiasettingsListCall) Pages(ctx context.Context, f func(*LiasettingsListResponse) error) error {
15548	c.ctx_ = ctx
15549	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
15550	for {
15551		x, err := c.Do()
15552		if err != nil {
15553			return err
15554		}
15555		if err := f(x); err != nil {
15556			return err
15557		}
15558		if x.NextPageToken == "" {
15559			return nil
15560		}
15561		c.PageToken(x.NextPageToken)
15562	}
15563}
15564
15565// method id "content.liasettings.listposdataproviders":
15566
15567type LiasettingsListposdataprovidersCall struct {
15568	s            *APIService
15569	urlParams_   gensupport.URLParams
15570	ifNoneMatch_ string
15571	ctx_         context.Context
15572	header_      http.Header
15573}
15574
15575// Listposdataproviders: Retrieves the list of POS data providers that
15576// have active settings for the all eiligible countries.
15577func (r *LiasettingsService) Listposdataproviders() *LiasettingsListposdataprovidersCall {
15578	c := &LiasettingsListposdataprovidersCall{s: r.s, urlParams_: make(gensupport.URLParams)}
15579	return c
15580}
15581
15582// Fields allows partial responses to be retrieved. See
15583// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
15584// for more information.
15585func (c *LiasettingsListposdataprovidersCall) Fields(s ...googleapi.Field) *LiasettingsListposdataprovidersCall {
15586	c.urlParams_.Set("fields", googleapi.CombineFields(s))
15587	return c
15588}
15589
15590// IfNoneMatch sets the optional parameter which makes the operation
15591// fail if the object's ETag matches the given value. This is useful for
15592// getting updates only after the object has changed since the last
15593// request. Use googleapi.IsNotModified to check whether the response
15594// error from Do is the result of In-None-Match.
15595func (c *LiasettingsListposdataprovidersCall) IfNoneMatch(entityTag string) *LiasettingsListposdataprovidersCall {
15596	c.ifNoneMatch_ = entityTag
15597	return c
15598}
15599
15600// Context sets the context to be used in this call's Do method. Any
15601// pending HTTP request will be aborted if the provided context is
15602// canceled.
15603func (c *LiasettingsListposdataprovidersCall) Context(ctx context.Context) *LiasettingsListposdataprovidersCall {
15604	c.ctx_ = ctx
15605	return c
15606}
15607
15608// Header returns an http.Header that can be modified by the caller to
15609// add HTTP headers to the request.
15610func (c *LiasettingsListposdataprovidersCall) Header() http.Header {
15611	if c.header_ == nil {
15612		c.header_ = make(http.Header)
15613	}
15614	return c.header_
15615}
15616
15617func (c *LiasettingsListposdataprovidersCall) doRequest(alt string) (*http.Response, error) {
15618	reqHeaders := make(http.Header)
15619	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
15620	for k, v := range c.header_ {
15621		reqHeaders[k] = v
15622	}
15623	reqHeaders.Set("User-Agent", c.s.userAgent())
15624	if c.ifNoneMatch_ != "" {
15625		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
15626	}
15627	var body io.Reader = nil
15628	c.urlParams_.Set("alt", alt)
15629	c.urlParams_.Set("prettyPrint", "false")
15630	urls := googleapi.ResolveRelative(c.s.BasePath, "liasettings/posdataproviders")
15631	urls += "?" + c.urlParams_.Encode()
15632	req, err := http.NewRequest("GET", urls, body)
15633	if err != nil {
15634		return nil, err
15635	}
15636	req.Header = reqHeaders
15637	return gensupport.SendRequest(c.ctx_, c.s.client, req)
15638}
15639
15640// Do executes the "content.liasettings.listposdataproviders" call.
15641// Exactly one of *LiasettingsListPosDataProvidersResponse or error will
15642// be non-nil. Any non-2xx status code is an error. Response headers are
15643// in either
15644// *LiasettingsListPosDataProvidersResponse.ServerResponse.Header or (if
15645// a response was returned at all) in error.(*googleapi.Error).Header.
15646// Use googleapi.IsNotModified to check whether the returned error was
15647// because http.StatusNotModified was returned.
15648func (c *LiasettingsListposdataprovidersCall) Do(opts ...googleapi.CallOption) (*LiasettingsListPosDataProvidersResponse, error) {
15649	gensupport.SetOptions(c.urlParams_, opts...)
15650	res, err := c.doRequest("json")
15651	if res != nil && res.StatusCode == http.StatusNotModified {
15652		if res.Body != nil {
15653			res.Body.Close()
15654		}
15655		return nil, &googleapi.Error{
15656			Code:   res.StatusCode,
15657			Header: res.Header,
15658		}
15659	}
15660	if err != nil {
15661		return nil, err
15662	}
15663	defer googleapi.CloseBody(res)
15664	if err := googleapi.CheckResponse(res); err != nil {
15665		return nil, err
15666	}
15667	ret := &LiasettingsListPosDataProvidersResponse{
15668		ServerResponse: googleapi.ServerResponse{
15669			Header:         res.Header,
15670			HTTPStatusCode: res.StatusCode,
15671		},
15672	}
15673	target := &ret
15674	if err := gensupport.DecodeResponse(target, res); err != nil {
15675		return nil, err
15676	}
15677	return ret, nil
15678	// {
15679	//   "description": "Retrieves the list of POS data providers that have active settings for the all eiligible countries.",
15680	//   "httpMethod": "GET",
15681	//   "id": "content.liasettings.listposdataproviders",
15682	//   "path": "liasettings/posdataproviders",
15683	//   "response": {
15684	//     "$ref": "LiasettingsListPosDataProvidersResponse"
15685	//   },
15686	//   "scopes": [
15687	//     "https://www.googleapis.com/auth/content"
15688	//   ]
15689	// }
15690
15691}
15692
15693// method id "content.liasettings.requestgmbaccess":
15694
15695type LiasettingsRequestgmbaccessCall struct {
15696	s          *APIService
15697	merchantId uint64
15698	accountId  uint64
15699	urlParams_ gensupport.URLParams
15700	ctx_       context.Context
15701	header_    http.Header
15702}
15703
15704// Requestgmbaccess: Requests access to a specified Google My Business
15705// account.
15706func (r *LiasettingsService) Requestgmbaccess(merchantId uint64, accountId uint64, gmbEmail string) *LiasettingsRequestgmbaccessCall {
15707	c := &LiasettingsRequestgmbaccessCall{s: r.s, urlParams_: make(gensupport.URLParams)}
15708	c.merchantId = merchantId
15709	c.accountId = accountId
15710	c.urlParams_.Set("gmbEmail", gmbEmail)
15711	return c
15712}
15713
15714// Fields allows partial responses to be retrieved. See
15715// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
15716// for more information.
15717func (c *LiasettingsRequestgmbaccessCall) Fields(s ...googleapi.Field) *LiasettingsRequestgmbaccessCall {
15718	c.urlParams_.Set("fields", googleapi.CombineFields(s))
15719	return c
15720}
15721
15722// Context sets the context to be used in this call's Do method. Any
15723// pending HTTP request will be aborted if the provided context is
15724// canceled.
15725func (c *LiasettingsRequestgmbaccessCall) Context(ctx context.Context) *LiasettingsRequestgmbaccessCall {
15726	c.ctx_ = ctx
15727	return c
15728}
15729
15730// Header returns an http.Header that can be modified by the caller to
15731// add HTTP headers to the request.
15732func (c *LiasettingsRequestgmbaccessCall) Header() http.Header {
15733	if c.header_ == nil {
15734		c.header_ = make(http.Header)
15735	}
15736	return c.header_
15737}
15738
15739func (c *LiasettingsRequestgmbaccessCall) doRequest(alt string) (*http.Response, error) {
15740	reqHeaders := make(http.Header)
15741	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
15742	for k, v := range c.header_ {
15743		reqHeaders[k] = v
15744	}
15745	reqHeaders.Set("User-Agent", c.s.userAgent())
15746	var body io.Reader = nil
15747	c.urlParams_.Set("alt", alt)
15748	c.urlParams_.Set("prettyPrint", "false")
15749	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/requestgmbaccess")
15750	urls += "?" + c.urlParams_.Encode()
15751	req, err := http.NewRequest("POST", urls, body)
15752	if err != nil {
15753		return nil, err
15754	}
15755	req.Header = reqHeaders
15756	googleapi.Expand(req.URL, map[string]string{
15757		"merchantId": strconv.FormatUint(c.merchantId, 10),
15758		"accountId":  strconv.FormatUint(c.accountId, 10),
15759	})
15760	return gensupport.SendRequest(c.ctx_, c.s.client, req)
15761}
15762
15763// Do executes the "content.liasettings.requestgmbaccess" call.
15764// Exactly one of *LiasettingsRequestGmbAccessResponse or error will be
15765// non-nil. Any non-2xx status code is an error. Response headers are in
15766// either *LiasettingsRequestGmbAccessResponse.ServerResponse.Header or
15767// (if a response was returned at all) in
15768// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
15769// whether the returned error was because http.StatusNotModified was
15770// returned.
15771func (c *LiasettingsRequestgmbaccessCall) Do(opts ...googleapi.CallOption) (*LiasettingsRequestGmbAccessResponse, error) {
15772	gensupport.SetOptions(c.urlParams_, opts...)
15773	res, err := c.doRequest("json")
15774	if res != nil && res.StatusCode == http.StatusNotModified {
15775		if res.Body != nil {
15776			res.Body.Close()
15777		}
15778		return nil, &googleapi.Error{
15779			Code:   res.StatusCode,
15780			Header: res.Header,
15781		}
15782	}
15783	if err != nil {
15784		return nil, err
15785	}
15786	defer googleapi.CloseBody(res)
15787	if err := googleapi.CheckResponse(res); err != nil {
15788		return nil, err
15789	}
15790	ret := &LiasettingsRequestGmbAccessResponse{
15791		ServerResponse: googleapi.ServerResponse{
15792			Header:         res.Header,
15793			HTTPStatusCode: res.StatusCode,
15794		},
15795	}
15796	target := &ret
15797	if err := gensupport.DecodeResponse(target, res); err != nil {
15798		return nil, err
15799	}
15800	return ret, nil
15801	// {
15802	//   "description": "Requests access to a specified Google My Business account.",
15803	//   "httpMethod": "POST",
15804	//   "id": "content.liasettings.requestgmbaccess",
15805	//   "parameterOrder": [
15806	//     "merchantId",
15807	//     "accountId",
15808	//     "gmbEmail"
15809	//   ],
15810	//   "parameters": {
15811	//     "accountId": {
15812	//       "description": "The ID of the account for which GMB access is requested.",
15813	//       "format": "uint64",
15814	//       "location": "path",
15815	//       "required": true,
15816	//       "type": "string"
15817	//     },
15818	//     "gmbEmail": {
15819	//       "description": "The email of the Google My Business account.",
15820	//       "location": "query",
15821	//       "required": true,
15822	//       "type": "string"
15823	//     },
15824	//     "merchantId": {
15825	//       "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.",
15826	//       "format": "uint64",
15827	//       "location": "path",
15828	//       "required": true,
15829	//       "type": "string"
15830	//     }
15831	//   },
15832	//   "path": "{merchantId}/liasettings/{accountId}/requestgmbaccess",
15833	//   "response": {
15834	//     "$ref": "LiasettingsRequestGmbAccessResponse"
15835	//   },
15836	//   "scopes": [
15837	//     "https://www.googleapis.com/auth/content"
15838	//   ]
15839	// }
15840
15841}
15842
15843// method id "content.liasettings.requestinventoryverification":
15844
15845type LiasettingsRequestinventoryverificationCall struct {
15846	s          *APIService
15847	merchantId uint64
15848	accountId  uint64
15849	country    string
15850	urlParams_ gensupport.URLParams
15851	ctx_       context.Context
15852	header_    http.Header
15853}
15854
15855// Requestinventoryverification: Requests inventory validation for the
15856// specified country.
15857func (r *LiasettingsService) Requestinventoryverification(merchantId uint64, accountId uint64, country string) *LiasettingsRequestinventoryverificationCall {
15858	c := &LiasettingsRequestinventoryverificationCall{s: r.s, urlParams_: make(gensupport.URLParams)}
15859	c.merchantId = merchantId
15860	c.accountId = accountId
15861	c.country = country
15862	return c
15863}
15864
15865// Fields allows partial responses to be retrieved. See
15866// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
15867// for more information.
15868func (c *LiasettingsRequestinventoryverificationCall) Fields(s ...googleapi.Field) *LiasettingsRequestinventoryverificationCall {
15869	c.urlParams_.Set("fields", googleapi.CombineFields(s))
15870	return c
15871}
15872
15873// Context sets the context to be used in this call's Do method. Any
15874// pending HTTP request will be aborted if the provided context is
15875// canceled.
15876func (c *LiasettingsRequestinventoryverificationCall) Context(ctx context.Context) *LiasettingsRequestinventoryverificationCall {
15877	c.ctx_ = ctx
15878	return c
15879}
15880
15881// Header returns an http.Header that can be modified by the caller to
15882// add HTTP headers to the request.
15883func (c *LiasettingsRequestinventoryverificationCall) Header() http.Header {
15884	if c.header_ == nil {
15885		c.header_ = make(http.Header)
15886	}
15887	return c.header_
15888}
15889
15890func (c *LiasettingsRequestinventoryverificationCall) doRequest(alt string) (*http.Response, error) {
15891	reqHeaders := make(http.Header)
15892	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
15893	for k, v := range c.header_ {
15894		reqHeaders[k] = v
15895	}
15896	reqHeaders.Set("User-Agent", c.s.userAgent())
15897	var body io.Reader = nil
15898	c.urlParams_.Set("alt", alt)
15899	c.urlParams_.Set("prettyPrint", "false")
15900	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/requestinventoryverification/{country}")
15901	urls += "?" + c.urlParams_.Encode()
15902	req, err := http.NewRequest("POST", urls, body)
15903	if err != nil {
15904		return nil, err
15905	}
15906	req.Header = reqHeaders
15907	googleapi.Expand(req.URL, map[string]string{
15908		"merchantId": strconv.FormatUint(c.merchantId, 10),
15909		"accountId":  strconv.FormatUint(c.accountId, 10),
15910		"country":    c.country,
15911	})
15912	return gensupport.SendRequest(c.ctx_, c.s.client, req)
15913}
15914
15915// Do executes the "content.liasettings.requestinventoryverification" call.
15916// Exactly one of *LiasettingsRequestInventoryVerificationResponse or
15917// error will be non-nil. Any non-2xx status code is an error. Response
15918// headers are in either
15919// *LiasettingsRequestInventoryVerificationResponse.ServerResponse.Header
15920//  or (if a response was returned at all) in
15921// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
15922// whether the returned error was because http.StatusNotModified was
15923// returned.
15924func (c *LiasettingsRequestinventoryverificationCall) Do(opts ...googleapi.CallOption) (*LiasettingsRequestInventoryVerificationResponse, error) {
15925	gensupport.SetOptions(c.urlParams_, opts...)
15926	res, err := c.doRequest("json")
15927	if res != nil && res.StatusCode == http.StatusNotModified {
15928		if res.Body != nil {
15929			res.Body.Close()
15930		}
15931		return nil, &googleapi.Error{
15932			Code:   res.StatusCode,
15933			Header: res.Header,
15934		}
15935	}
15936	if err != nil {
15937		return nil, err
15938	}
15939	defer googleapi.CloseBody(res)
15940	if err := googleapi.CheckResponse(res); err != nil {
15941		return nil, err
15942	}
15943	ret := &LiasettingsRequestInventoryVerificationResponse{
15944		ServerResponse: googleapi.ServerResponse{
15945			Header:         res.Header,
15946			HTTPStatusCode: res.StatusCode,
15947		},
15948	}
15949	target := &ret
15950	if err := gensupport.DecodeResponse(target, res); err != nil {
15951		return nil, err
15952	}
15953	return ret, nil
15954	// {
15955	//   "description": "Requests inventory validation for the specified country.",
15956	//   "httpMethod": "POST",
15957	//   "id": "content.liasettings.requestinventoryverification",
15958	//   "parameterOrder": [
15959	//     "merchantId",
15960	//     "accountId",
15961	//     "country"
15962	//   ],
15963	//   "parameters": {
15964	//     "accountId": {
15965	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
15966	//       "format": "uint64",
15967	//       "location": "path",
15968	//       "required": true,
15969	//       "type": "string"
15970	//     },
15971	//     "country": {
15972	//       "description": "The country for which inventory validation is requested.",
15973	//       "location": "path",
15974	//       "required": true,
15975	//       "type": "string"
15976	//     },
15977	//     "merchantId": {
15978	//       "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.",
15979	//       "format": "uint64",
15980	//       "location": "path",
15981	//       "required": true,
15982	//       "type": "string"
15983	//     }
15984	//   },
15985	//   "path": "{merchantId}/liasettings/{accountId}/requestinventoryverification/{country}",
15986	//   "response": {
15987	//     "$ref": "LiasettingsRequestInventoryVerificationResponse"
15988	//   },
15989	//   "scopes": [
15990	//     "https://www.googleapis.com/auth/content"
15991	//   ]
15992	// }
15993
15994}
15995
15996// method id "content.liasettings.setinventoryverificationcontact":
15997
15998type LiasettingsSetinventoryverificationcontactCall struct {
15999	s          *APIService
16000	merchantId uint64
16001	accountId  uint64
16002	urlParams_ gensupport.URLParams
16003	ctx_       context.Context
16004	header_    http.Header
16005}
16006
16007// Setinventoryverificationcontact: Sets the inventory verification
16008// contract for the specified country.
16009func (r *LiasettingsService) Setinventoryverificationcontact(merchantId uint64, accountId uint64, contactEmail string, contactName string, country string, language string) *LiasettingsSetinventoryverificationcontactCall {
16010	c := &LiasettingsSetinventoryverificationcontactCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16011	c.merchantId = merchantId
16012	c.accountId = accountId
16013	c.urlParams_.Set("contactEmail", contactEmail)
16014	c.urlParams_.Set("contactName", contactName)
16015	c.urlParams_.Set("country", country)
16016	c.urlParams_.Set("language", language)
16017	return c
16018}
16019
16020// Fields allows partial responses to be retrieved. See
16021// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16022// for more information.
16023func (c *LiasettingsSetinventoryverificationcontactCall) Fields(s ...googleapi.Field) *LiasettingsSetinventoryverificationcontactCall {
16024	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16025	return c
16026}
16027
16028// Context sets the context to be used in this call's Do method. Any
16029// pending HTTP request will be aborted if the provided context is
16030// canceled.
16031func (c *LiasettingsSetinventoryverificationcontactCall) Context(ctx context.Context) *LiasettingsSetinventoryverificationcontactCall {
16032	c.ctx_ = ctx
16033	return c
16034}
16035
16036// Header returns an http.Header that can be modified by the caller to
16037// add HTTP headers to the request.
16038func (c *LiasettingsSetinventoryverificationcontactCall) Header() http.Header {
16039	if c.header_ == nil {
16040		c.header_ = make(http.Header)
16041	}
16042	return c.header_
16043}
16044
16045func (c *LiasettingsSetinventoryverificationcontactCall) doRequest(alt string) (*http.Response, error) {
16046	reqHeaders := make(http.Header)
16047	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
16048	for k, v := range c.header_ {
16049		reqHeaders[k] = v
16050	}
16051	reqHeaders.Set("User-Agent", c.s.userAgent())
16052	var body io.Reader = nil
16053	c.urlParams_.Set("alt", alt)
16054	c.urlParams_.Set("prettyPrint", "false")
16055	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/setinventoryverificationcontact")
16056	urls += "?" + c.urlParams_.Encode()
16057	req, err := http.NewRequest("POST", urls, body)
16058	if err != nil {
16059		return nil, err
16060	}
16061	req.Header = reqHeaders
16062	googleapi.Expand(req.URL, map[string]string{
16063		"merchantId": strconv.FormatUint(c.merchantId, 10),
16064		"accountId":  strconv.FormatUint(c.accountId, 10),
16065	})
16066	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16067}
16068
16069// Do executes the "content.liasettings.setinventoryverificationcontact" call.
16070// Exactly one of *LiasettingsSetInventoryVerificationContactResponse or
16071// error will be non-nil. Any non-2xx status code is an error. Response
16072// headers are in either
16073// *LiasettingsSetInventoryVerificationContactResponse.ServerResponse.Hea
16074// der or (if a response was returned at all) in
16075// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
16076// whether the returned error was because http.StatusNotModified was
16077// returned.
16078func (c *LiasettingsSetinventoryverificationcontactCall) Do(opts ...googleapi.CallOption) (*LiasettingsSetInventoryVerificationContactResponse, error) {
16079	gensupport.SetOptions(c.urlParams_, opts...)
16080	res, err := c.doRequest("json")
16081	if res != nil && res.StatusCode == http.StatusNotModified {
16082		if res.Body != nil {
16083			res.Body.Close()
16084		}
16085		return nil, &googleapi.Error{
16086			Code:   res.StatusCode,
16087			Header: res.Header,
16088		}
16089	}
16090	if err != nil {
16091		return nil, err
16092	}
16093	defer googleapi.CloseBody(res)
16094	if err := googleapi.CheckResponse(res); err != nil {
16095		return nil, err
16096	}
16097	ret := &LiasettingsSetInventoryVerificationContactResponse{
16098		ServerResponse: googleapi.ServerResponse{
16099			Header:         res.Header,
16100			HTTPStatusCode: res.StatusCode,
16101		},
16102	}
16103	target := &ret
16104	if err := gensupport.DecodeResponse(target, res); err != nil {
16105		return nil, err
16106	}
16107	return ret, nil
16108	// {
16109	//   "description": "Sets the inventory verification contract for the specified country.",
16110	//   "httpMethod": "POST",
16111	//   "id": "content.liasettings.setinventoryverificationcontact",
16112	//   "parameterOrder": [
16113	//     "merchantId",
16114	//     "accountId",
16115	//     "contactEmail",
16116	//     "contactName",
16117	//     "country",
16118	//     "language"
16119	//   ],
16120	//   "parameters": {
16121	//     "accountId": {
16122	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
16123	//       "format": "uint64",
16124	//       "location": "path",
16125	//       "required": true,
16126	//       "type": "string"
16127	//     },
16128	//     "contactEmail": {
16129	//       "description": "The email of the inventory verification contact.",
16130	//       "location": "query",
16131	//       "required": true,
16132	//       "type": "string"
16133	//     },
16134	//     "contactName": {
16135	//       "description": "The name of the inventory verification contact.",
16136	//       "location": "query",
16137	//       "required": true,
16138	//       "type": "string"
16139	//     },
16140	//     "country": {
16141	//       "description": "The country for which inventory verification is requested.",
16142	//       "location": "query",
16143	//       "required": true,
16144	//       "type": "string"
16145	//     },
16146	//     "language": {
16147	//       "description": "The language for which inventory verification is requested.",
16148	//       "location": "query",
16149	//       "required": true,
16150	//       "type": "string"
16151	//     },
16152	//     "merchantId": {
16153	//       "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.",
16154	//       "format": "uint64",
16155	//       "location": "path",
16156	//       "required": true,
16157	//       "type": "string"
16158	//     }
16159	//   },
16160	//   "path": "{merchantId}/liasettings/{accountId}/setinventoryverificationcontact",
16161	//   "response": {
16162	//     "$ref": "LiasettingsSetInventoryVerificationContactResponse"
16163	//   },
16164	//   "scopes": [
16165	//     "https://www.googleapis.com/auth/content"
16166	//   ]
16167	// }
16168
16169}
16170
16171// method id "content.liasettings.setposdataprovider":
16172
16173type LiasettingsSetposdataproviderCall struct {
16174	s          *APIService
16175	merchantId uint64
16176	accountId  uint64
16177	urlParams_ gensupport.URLParams
16178	ctx_       context.Context
16179	header_    http.Header
16180}
16181
16182// Setposdataprovider: Sets the POS data provider for the specified
16183// country.
16184func (r *LiasettingsService) Setposdataprovider(merchantId uint64, accountId uint64, country string) *LiasettingsSetposdataproviderCall {
16185	c := &LiasettingsSetposdataproviderCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16186	c.merchantId = merchantId
16187	c.accountId = accountId
16188	c.urlParams_.Set("country", country)
16189	return c
16190}
16191
16192// PosDataProviderId sets the optional parameter "posDataProviderId":
16193// The ID of POS data provider.
16194func (c *LiasettingsSetposdataproviderCall) PosDataProviderId(posDataProviderId uint64) *LiasettingsSetposdataproviderCall {
16195	c.urlParams_.Set("posDataProviderId", fmt.Sprint(posDataProviderId))
16196	return c
16197}
16198
16199// PosExternalAccountId sets the optional parameter
16200// "posExternalAccountId": The account ID by which this merchant is
16201// known to the POS data provider.
16202func (c *LiasettingsSetposdataproviderCall) PosExternalAccountId(posExternalAccountId string) *LiasettingsSetposdataproviderCall {
16203	c.urlParams_.Set("posExternalAccountId", posExternalAccountId)
16204	return c
16205}
16206
16207// Fields allows partial responses to be retrieved. See
16208// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16209// for more information.
16210func (c *LiasettingsSetposdataproviderCall) Fields(s ...googleapi.Field) *LiasettingsSetposdataproviderCall {
16211	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16212	return c
16213}
16214
16215// Context sets the context to be used in this call's Do method. Any
16216// pending HTTP request will be aborted if the provided context is
16217// canceled.
16218func (c *LiasettingsSetposdataproviderCall) Context(ctx context.Context) *LiasettingsSetposdataproviderCall {
16219	c.ctx_ = ctx
16220	return c
16221}
16222
16223// Header returns an http.Header that can be modified by the caller to
16224// add HTTP headers to the request.
16225func (c *LiasettingsSetposdataproviderCall) Header() http.Header {
16226	if c.header_ == nil {
16227		c.header_ = make(http.Header)
16228	}
16229	return c.header_
16230}
16231
16232func (c *LiasettingsSetposdataproviderCall) doRequest(alt string) (*http.Response, error) {
16233	reqHeaders := make(http.Header)
16234	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
16235	for k, v := range c.header_ {
16236		reqHeaders[k] = v
16237	}
16238	reqHeaders.Set("User-Agent", c.s.userAgent())
16239	var body io.Reader = nil
16240	c.urlParams_.Set("alt", alt)
16241	c.urlParams_.Set("prettyPrint", "false")
16242	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/setposdataprovider")
16243	urls += "?" + c.urlParams_.Encode()
16244	req, err := http.NewRequest("POST", urls, body)
16245	if err != nil {
16246		return nil, err
16247	}
16248	req.Header = reqHeaders
16249	googleapi.Expand(req.URL, map[string]string{
16250		"merchantId": strconv.FormatUint(c.merchantId, 10),
16251		"accountId":  strconv.FormatUint(c.accountId, 10),
16252	})
16253	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16254}
16255
16256// Do executes the "content.liasettings.setposdataprovider" call.
16257// Exactly one of *LiasettingsSetPosDataProviderResponse or error will
16258// be non-nil. Any non-2xx status code is an error. Response headers are
16259// in either
16260// *LiasettingsSetPosDataProviderResponse.ServerResponse.Header or (if a
16261// response was returned at all) in error.(*googleapi.Error).Header. Use
16262// googleapi.IsNotModified to check whether the returned error was
16263// because http.StatusNotModified was returned.
16264func (c *LiasettingsSetposdataproviderCall) Do(opts ...googleapi.CallOption) (*LiasettingsSetPosDataProviderResponse, error) {
16265	gensupport.SetOptions(c.urlParams_, opts...)
16266	res, err := c.doRequest("json")
16267	if res != nil && res.StatusCode == http.StatusNotModified {
16268		if res.Body != nil {
16269			res.Body.Close()
16270		}
16271		return nil, &googleapi.Error{
16272			Code:   res.StatusCode,
16273			Header: res.Header,
16274		}
16275	}
16276	if err != nil {
16277		return nil, err
16278	}
16279	defer googleapi.CloseBody(res)
16280	if err := googleapi.CheckResponse(res); err != nil {
16281		return nil, err
16282	}
16283	ret := &LiasettingsSetPosDataProviderResponse{
16284		ServerResponse: googleapi.ServerResponse{
16285			Header:         res.Header,
16286			HTTPStatusCode: res.StatusCode,
16287		},
16288	}
16289	target := &ret
16290	if err := gensupport.DecodeResponse(target, res); err != nil {
16291		return nil, err
16292	}
16293	return ret, nil
16294	// {
16295	//   "description": "Sets the POS data provider for the specified country.",
16296	//   "httpMethod": "POST",
16297	//   "id": "content.liasettings.setposdataprovider",
16298	//   "parameterOrder": [
16299	//     "merchantId",
16300	//     "accountId",
16301	//     "country"
16302	//   ],
16303	//   "parameters": {
16304	//     "accountId": {
16305	//       "description": "The ID of the account for which to retrieve accessible Google My Business accounts.",
16306	//       "format": "uint64",
16307	//       "location": "path",
16308	//       "required": true,
16309	//       "type": "string"
16310	//     },
16311	//     "country": {
16312	//       "description": "The country for which the POS data provider is selected.",
16313	//       "location": "query",
16314	//       "required": true,
16315	//       "type": "string"
16316	//     },
16317	//     "merchantId": {
16318	//       "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.",
16319	//       "format": "uint64",
16320	//       "location": "path",
16321	//       "required": true,
16322	//       "type": "string"
16323	//     },
16324	//     "posDataProviderId": {
16325	//       "description": "The ID of POS data provider.",
16326	//       "format": "uint64",
16327	//       "location": "query",
16328	//       "type": "string"
16329	//     },
16330	//     "posExternalAccountId": {
16331	//       "description": "The account ID by which this merchant is known to the POS data provider.",
16332	//       "location": "query",
16333	//       "type": "string"
16334	//     }
16335	//   },
16336	//   "path": "{merchantId}/liasettings/{accountId}/setposdataprovider",
16337	//   "response": {
16338	//     "$ref": "LiasettingsSetPosDataProviderResponse"
16339	//   },
16340	//   "scopes": [
16341	//     "https://www.googleapis.com/auth/content"
16342	//   ]
16343	// }
16344
16345}
16346
16347// method id "content.liasettings.update":
16348
16349type LiasettingsUpdateCall struct {
16350	s           *APIService
16351	merchantId  uint64
16352	accountId   uint64
16353	liasettings *LiaSettings
16354	urlParams_  gensupport.URLParams
16355	ctx_        context.Context
16356	header_     http.Header
16357}
16358
16359// Update: Updates the LIA settings of the account.
16360func (r *LiasettingsService) Update(merchantId uint64, accountId uint64, liasettings *LiaSettings) *LiasettingsUpdateCall {
16361	c := &LiasettingsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16362	c.merchantId = merchantId
16363	c.accountId = accountId
16364	c.liasettings = liasettings
16365	return c
16366}
16367
16368// Fields allows partial responses to be retrieved. See
16369// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16370// for more information.
16371func (c *LiasettingsUpdateCall) Fields(s ...googleapi.Field) *LiasettingsUpdateCall {
16372	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16373	return c
16374}
16375
16376// Context sets the context to be used in this call's Do method. Any
16377// pending HTTP request will be aborted if the provided context is
16378// canceled.
16379func (c *LiasettingsUpdateCall) Context(ctx context.Context) *LiasettingsUpdateCall {
16380	c.ctx_ = ctx
16381	return c
16382}
16383
16384// Header returns an http.Header that can be modified by the caller to
16385// add HTTP headers to the request.
16386func (c *LiasettingsUpdateCall) Header() http.Header {
16387	if c.header_ == nil {
16388		c.header_ = make(http.Header)
16389	}
16390	return c.header_
16391}
16392
16393func (c *LiasettingsUpdateCall) doRequest(alt string) (*http.Response, error) {
16394	reqHeaders := make(http.Header)
16395	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
16396	for k, v := range c.header_ {
16397		reqHeaders[k] = v
16398	}
16399	reqHeaders.Set("User-Agent", c.s.userAgent())
16400	var body io.Reader = nil
16401	body, err := googleapi.WithoutDataWrapper.JSONReader(c.liasettings)
16402	if err != nil {
16403		return nil, err
16404	}
16405	reqHeaders.Set("Content-Type", "application/json")
16406	c.urlParams_.Set("alt", alt)
16407	c.urlParams_.Set("prettyPrint", "false")
16408	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}")
16409	urls += "?" + c.urlParams_.Encode()
16410	req, err := http.NewRequest("PUT", urls, body)
16411	if err != nil {
16412		return nil, err
16413	}
16414	req.Header = reqHeaders
16415	googleapi.Expand(req.URL, map[string]string{
16416		"merchantId": strconv.FormatUint(c.merchantId, 10),
16417		"accountId":  strconv.FormatUint(c.accountId, 10),
16418	})
16419	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16420}
16421
16422// Do executes the "content.liasettings.update" call.
16423// Exactly one of *LiaSettings or error will be non-nil. Any non-2xx
16424// status code is an error. Response headers are in either
16425// *LiaSettings.ServerResponse.Header or (if a response was returned at
16426// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
16427// to check whether the returned error was because
16428// http.StatusNotModified was returned.
16429func (c *LiasettingsUpdateCall) Do(opts ...googleapi.CallOption) (*LiaSettings, error) {
16430	gensupport.SetOptions(c.urlParams_, opts...)
16431	res, err := c.doRequest("json")
16432	if res != nil && res.StatusCode == http.StatusNotModified {
16433		if res.Body != nil {
16434			res.Body.Close()
16435		}
16436		return nil, &googleapi.Error{
16437			Code:   res.StatusCode,
16438			Header: res.Header,
16439		}
16440	}
16441	if err != nil {
16442		return nil, err
16443	}
16444	defer googleapi.CloseBody(res)
16445	if err := googleapi.CheckResponse(res); err != nil {
16446		return nil, err
16447	}
16448	ret := &LiaSettings{
16449		ServerResponse: googleapi.ServerResponse{
16450			Header:         res.Header,
16451			HTTPStatusCode: res.StatusCode,
16452		},
16453	}
16454	target := &ret
16455	if err := gensupport.DecodeResponse(target, res); err != nil {
16456		return nil, err
16457	}
16458	return ret, nil
16459	// {
16460	//   "description": "Updates the LIA settings of the account.",
16461	//   "httpMethod": "PUT",
16462	//   "id": "content.liasettings.update",
16463	//   "parameterOrder": [
16464	//     "merchantId",
16465	//     "accountId"
16466	//   ],
16467	//   "parameters": {
16468	//     "accountId": {
16469	//       "description": "The ID of the account for which to get or update LIA settings.",
16470	//       "format": "uint64",
16471	//       "location": "path",
16472	//       "required": true,
16473	//       "type": "string"
16474	//     },
16475	//     "merchantId": {
16476	//       "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.",
16477	//       "format": "uint64",
16478	//       "location": "path",
16479	//       "required": true,
16480	//       "type": "string"
16481	//     }
16482	//   },
16483	//   "path": "{merchantId}/liasettings/{accountId}",
16484	//   "request": {
16485	//     "$ref": "LiaSettings"
16486	//   },
16487	//   "response": {
16488	//     "$ref": "LiaSettings"
16489	//   },
16490	//   "scopes": [
16491	//     "https://www.googleapis.com/auth/content"
16492	//   ]
16493	// }
16494
16495}
16496
16497// method id "content.orderinvoices.createchargeinvoice":
16498
16499type OrderinvoicesCreatechargeinvoiceCall struct {
16500	s                                       *APIService
16501	merchantId                              uint64
16502	orderId                                 string
16503	orderinvoicescreatechargeinvoicerequest *OrderinvoicesCreateChargeInvoiceRequest
16504	urlParams_                              gensupport.URLParams
16505	ctx_                                    context.Context
16506	header_                                 http.Header
16507}
16508
16509// Createchargeinvoice: Creates a charge invoice for a shipment group,
16510// and triggers a charge capture for orderinvoice enabled orders.
16511func (r *OrderinvoicesService) Createchargeinvoice(merchantId uint64, orderId string, orderinvoicescreatechargeinvoicerequest *OrderinvoicesCreateChargeInvoiceRequest) *OrderinvoicesCreatechargeinvoiceCall {
16512	c := &OrderinvoicesCreatechargeinvoiceCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16513	c.merchantId = merchantId
16514	c.orderId = orderId
16515	c.orderinvoicescreatechargeinvoicerequest = orderinvoicescreatechargeinvoicerequest
16516	return c
16517}
16518
16519// Fields allows partial responses to be retrieved. See
16520// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16521// for more information.
16522func (c *OrderinvoicesCreatechargeinvoiceCall) Fields(s ...googleapi.Field) *OrderinvoicesCreatechargeinvoiceCall {
16523	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16524	return c
16525}
16526
16527// Context sets the context to be used in this call's Do method. Any
16528// pending HTTP request will be aborted if the provided context is
16529// canceled.
16530func (c *OrderinvoicesCreatechargeinvoiceCall) Context(ctx context.Context) *OrderinvoicesCreatechargeinvoiceCall {
16531	c.ctx_ = ctx
16532	return c
16533}
16534
16535// Header returns an http.Header that can be modified by the caller to
16536// add HTTP headers to the request.
16537func (c *OrderinvoicesCreatechargeinvoiceCall) Header() http.Header {
16538	if c.header_ == nil {
16539		c.header_ = make(http.Header)
16540	}
16541	return c.header_
16542}
16543
16544func (c *OrderinvoicesCreatechargeinvoiceCall) doRequest(alt string) (*http.Response, error) {
16545	reqHeaders := make(http.Header)
16546	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
16547	for k, v := range c.header_ {
16548		reqHeaders[k] = v
16549	}
16550	reqHeaders.Set("User-Agent", c.s.userAgent())
16551	var body io.Reader = nil
16552	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderinvoicescreatechargeinvoicerequest)
16553	if err != nil {
16554		return nil, err
16555	}
16556	reqHeaders.Set("Content-Type", "application/json")
16557	c.urlParams_.Set("alt", alt)
16558	c.urlParams_.Set("prettyPrint", "false")
16559	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderinvoices/{orderId}/createChargeInvoice")
16560	urls += "?" + c.urlParams_.Encode()
16561	req, err := http.NewRequest("POST", urls, body)
16562	if err != nil {
16563		return nil, err
16564	}
16565	req.Header = reqHeaders
16566	googleapi.Expand(req.URL, map[string]string{
16567		"merchantId": strconv.FormatUint(c.merchantId, 10),
16568		"orderId":    c.orderId,
16569	})
16570	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16571}
16572
16573// Do executes the "content.orderinvoices.createchargeinvoice" call.
16574// Exactly one of *OrderinvoicesCreateChargeInvoiceResponse or error
16575// will be non-nil. Any non-2xx status code is an error. Response
16576// headers are in either
16577// *OrderinvoicesCreateChargeInvoiceResponse.ServerResponse.Header or
16578// (if a response was returned at all) in
16579// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
16580// whether the returned error was because http.StatusNotModified was
16581// returned.
16582func (c *OrderinvoicesCreatechargeinvoiceCall) Do(opts ...googleapi.CallOption) (*OrderinvoicesCreateChargeInvoiceResponse, error) {
16583	gensupport.SetOptions(c.urlParams_, opts...)
16584	res, err := c.doRequest("json")
16585	if res != nil && res.StatusCode == http.StatusNotModified {
16586		if res.Body != nil {
16587			res.Body.Close()
16588		}
16589		return nil, &googleapi.Error{
16590			Code:   res.StatusCode,
16591			Header: res.Header,
16592		}
16593	}
16594	if err != nil {
16595		return nil, err
16596	}
16597	defer googleapi.CloseBody(res)
16598	if err := googleapi.CheckResponse(res); err != nil {
16599		return nil, err
16600	}
16601	ret := &OrderinvoicesCreateChargeInvoiceResponse{
16602		ServerResponse: googleapi.ServerResponse{
16603			Header:         res.Header,
16604			HTTPStatusCode: res.StatusCode,
16605		},
16606	}
16607	target := &ret
16608	if err := gensupport.DecodeResponse(target, res); err != nil {
16609		return nil, err
16610	}
16611	return ret, nil
16612	// {
16613	//   "description": "Creates a charge invoice for a shipment group, and triggers a charge capture for orderinvoice enabled orders.",
16614	//   "httpMethod": "POST",
16615	//   "id": "content.orderinvoices.createchargeinvoice",
16616	//   "parameterOrder": [
16617	//     "merchantId",
16618	//     "orderId"
16619	//   ],
16620	//   "parameters": {
16621	//     "merchantId": {
16622	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
16623	//       "format": "uint64",
16624	//       "location": "path",
16625	//       "required": true,
16626	//       "type": "string"
16627	//     },
16628	//     "orderId": {
16629	//       "description": "The ID of the order.",
16630	//       "location": "path",
16631	//       "required": true,
16632	//       "type": "string"
16633	//     }
16634	//   },
16635	//   "path": "{merchantId}/orderinvoices/{orderId}/createChargeInvoice",
16636	//   "request": {
16637	//     "$ref": "OrderinvoicesCreateChargeInvoiceRequest"
16638	//   },
16639	//   "response": {
16640	//     "$ref": "OrderinvoicesCreateChargeInvoiceResponse"
16641	//   },
16642	//   "scopes": [
16643	//     "https://www.googleapis.com/auth/content"
16644	//   ]
16645	// }
16646
16647}
16648
16649// method id "content.orderinvoices.createrefundinvoice":
16650
16651type OrderinvoicesCreaterefundinvoiceCall struct {
16652	s                                       *APIService
16653	merchantId                              uint64
16654	orderId                                 string
16655	orderinvoicescreaterefundinvoicerequest *OrderinvoicesCreateRefundInvoiceRequest
16656	urlParams_                              gensupport.URLParams
16657	ctx_                                    context.Context
16658	header_                                 http.Header
16659}
16660
16661// Createrefundinvoice: Creates a refund invoice for one or more
16662// shipment groups, and triggers a refund for orderinvoice enabled
16663// orders. This can only be used for line items that have previously
16664// been charged using createChargeInvoice. All amounts (except for the
16665// summary) are incremental with respect to the previous invoice.
16666func (r *OrderinvoicesService) Createrefundinvoice(merchantId uint64, orderId string, orderinvoicescreaterefundinvoicerequest *OrderinvoicesCreateRefundInvoiceRequest) *OrderinvoicesCreaterefundinvoiceCall {
16667	c := &OrderinvoicesCreaterefundinvoiceCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16668	c.merchantId = merchantId
16669	c.orderId = orderId
16670	c.orderinvoicescreaterefundinvoicerequest = orderinvoicescreaterefundinvoicerequest
16671	return c
16672}
16673
16674// Fields allows partial responses to be retrieved. See
16675// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16676// for more information.
16677func (c *OrderinvoicesCreaterefundinvoiceCall) Fields(s ...googleapi.Field) *OrderinvoicesCreaterefundinvoiceCall {
16678	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16679	return c
16680}
16681
16682// Context sets the context to be used in this call's Do method. Any
16683// pending HTTP request will be aborted if the provided context is
16684// canceled.
16685func (c *OrderinvoicesCreaterefundinvoiceCall) Context(ctx context.Context) *OrderinvoicesCreaterefundinvoiceCall {
16686	c.ctx_ = ctx
16687	return c
16688}
16689
16690// Header returns an http.Header that can be modified by the caller to
16691// add HTTP headers to the request.
16692func (c *OrderinvoicesCreaterefundinvoiceCall) Header() http.Header {
16693	if c.header_ == nil {
16694		c.header_ = make(http.Header)
16695	}
16696	return c.header_
16697}
16698
16699func (c *OrderinvoicesCreaterefundinvoiceCall) doRequest(alt string) (*http.Response, error) {
16700	reqHeaders := make(http.Header)
16701	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
16702	for k, v := range c.header_ {
16703		reqHeaders[k] = v
16704	}
16705	reqHeaders.Set("User-Agent", c.s.userAgent())
16706	var body io.Reader = nil
16707	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderinvoicescreaterefundinvoicerequest)
16708	if err != nil {
16709		return nil, err
16710	}
16711	reqHeaders.Set("Content-Type", "application/json")
16712	c.urlParams_.Set("alt", alt)
16713	c.urlParams_.Set("prettyPrint", "false")
16714	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderinvoices/{orderId}/createRefundInvoice")
16715	urls += "?" + c.urlParams_.Encode()
16716	req, err := http.NewRequest("POST", urls, body)
16717	if err != nil {
16718		return nil, err
16719	}
16720	req.Header = reqHeaders
16721	googleapi.Expand(req.URL, map[string]string{
16722		"merchantId": strconv.FormatUint(c.merchantId, 10),
16723		"orderId":    c.orderId,
16724	})
16725	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16726}
16727
16728// Do executes the "content.orderinvoices.createrefundinvoice" call.
16729// Exactly one of *OrderinvoicesCreateRefundInvoiceResponse or error
16730// will be non-nil. Any non-2xx status code is an error. Response
16731// headers are in either
16732// *OrderinvoicesCreateRefundInvoiceResponse.ServerResponse.Header or
16733// (if a response was returned at all) in
16734// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
16735// whether the returned error was because http.StatusNotModified was
16736// returned.
16737func (c *OrderinvoicesCreaterefundinvoiceCall) Do(opts ...googleapi.CallOption) (*OrderinvoicesCreateRefundInvoiceResponse, error) {
16738	gensupport.SetOptions(c.urlParams_, opts...)
16739	res, err := c.doRequest("json")
16740	if res != nil && res.StatusCode == http.StatusNotModified {
16741		if res.Body != nil {
16742			res.Body.Close()
16743		}
16744		return nil, &googleapi.Error{
16745			Code:   res.StatusCode,
16746			Header: res.Header,
16747		}
16748	}
16749	if err != nil {
16750		return nil, err
16751	}
16752	defer googleapi.CloseBody(res)
16753	if err := googleapi.CheckResponse(res); err != nil {
16754		return nil, err
16755	}
16756	ret := &OrderinvoicesCreateRefundInvoiceResponse{
16757		ServerResponse: googleapi.ServerResponse{
16758			Header:         res.Header,
16759			HTTPStatusCode: res.StatusCode,
16760		},
16761	}
16762	target := &ret
16763	if err := gensupport.DecodeResponse(target, res); err != nil {
16764		return nil, err
16765	}
16766	return ret, nil
16767	// {
16768	//   "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.",
16769	//   "httpMethod": "POST",
16770	//   "id": "content.orderinvoices.createrefundinvoice",
16771	//   "parameterOrder": [
16772	//     "merchantId",
16773	//     "orderId"
16774	//   ],
16775	//   "parameters": {
16776	//     "merchantId": {
16777	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
16778	//       "format": "uint64",
16779	//       "location": "path",
16780	//       "required": true,
16781	//       "type": "string"
16782	//     },
16783	//     "orderId": {
16784	//       "description": "The ID of the order.",
16785	//       "location": "path",
16786	//       "required": true,
16787	//       "type": "string"
16788	//     }
16789	//   },
16790	//   "path": "{merchantId}/orderinvoices/{orderId}/createRefundInvoice",
16791	//   "request": {
16792	//     "$ref": "OrderinvoicesCreateRefundInvoiceRequest"
16793	//   },
16794	//   "response": {
16795	//     "$ref": "OrderinvoicesCreateRefundInvoiceResponse"
16796	//   },
16797	//   "scopes": [
16798	//     "https://www.googleapis.com/auth/content"
16799	//   ]
16800	// }
16801
16802}
16803
16804// method id "content.orderreports.listdisbursements":
16805
16806type OrderreportsListdisbursementsCall struct {
16807	s            *APIService
16808	merchantId   uint64
16809	urlParams_   gensupport.URLParams
16810	ifNoneMatch_ string
16811	ctx_         context.Context
16812	header_      http.Header
16813}
16814
16815// Listdisbursements: Retrieves a report for disbursements from your
16816// Merchant Center account.
16817func (r *OrderreportsService) Listdisbursements(merchantId uint64, disbursementStartDate string) *OrderreportsListdisbursementsCall {
16818	c := &OrderreportsListdisbursementsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16819	c.merchantId = merchantId
16820	c.urlParams_.Set("disbursementStartDate", disbursementStartDate)
16821	return c
16822}
16823
16824// DisbursementEndDate sets the optional parameter
16825// "disbursementEndDate": The last date which disbursements occurred. In
16826// ISO 8601 format. Default: current date.
16827func (c *OrderreportsListdisbursementsCall) DisbursementEndDate(disbursementEndDate string) *OrderreportsListdisbursementsCall {
16828	c.urlParams_.Set("disbursementEndDate", disbursementEndDate)
16829	return c
16830}
16831
16832// MaxResults sets the optional parameter "maxResults": The maximum
16833// number of disbursements to return in the response, used for paging.
16834func (c *OrderreportsListdisbursementsCall) MaxResults(maxResults int64) *OrderreportsListdisbursementsCall {
16835	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
16836	return c
16837}
16838
16839// PageToken sets the optional parameter "pageToken": The token returned
16840// by the previous request.
16841func (c *OrderreportsListdisbursementsCall) PageToken(pageToken string) *OrderreportsListdisbursementsCall {
16842	c.urlParams_.Set("pageToken", pageToken)
16843	return c
16844}
16845
16846// Fields allows partial responses to be retrieved. See
16847// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16848// for more information.
16849func (c *OrderreportsListdisbursementsCall) Fields(s ...googleapi.Field) *OrderreportsListdisbursementsCall {
16850	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16851	return c
16852}
16853
16854// IfNoneMatch sets the optional parameter which makes the operation
16855// fail if the object's ETag matches the given value. This is useful for
16856// getting updates only after the object has changed since the last
16857// request. Use googleapi.IsNotModified to check whether the response
16858// error from Do is the result of In-None-Match.
16859func (c *OrderreportsListdisbursementsCall) IfNoneMatch(entityTag string) *OrderreportsListdisbursementsCall {
16860	c.ifNoneMatch_ = entityTag
16861	return c
16862}
16863
16864// Context sets the context to be used in this call's Do method. Any
16865// pending HTTP request will be aborted if the provided context is
16866// canceled.
16867func (c *OrderreportsListdisbursementsCall) Context(ctx context.Context) *OrderreportsListdisbursementsCall {
16868	c.ctx_ = ctx
16869	return c
16870}
16871
16872// Header returns an http.Header that can be modified by the caller to
16873// add HTTP headers to the request.
16874func (c *OrderreportsListdisbursementsCall) Header() http.Header {
16875	if c.header_ == nil {
16876		c.header_ = make(http.Header)
16877	}
16878	return c.header_
16879}
16880
16881func (c *OrderreportsListdisbursementsCall) doRequest(alt string) (*http.Response, error) {
16882	reqHeaders := make(http.Header)
16883	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
16884	for k, v := range c.header_ {
16885		reqHeaders[k] = v
16886	}
16887	reqHeaders.Set("User-Agent", c.s.userAgent())
16888	if c.ifNoneMatch_ != "" {
16889		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
16890	}
16891	var body io.Reader = nil
16892	c.urlParams_.Set("alt", alt)
16893	c.urlParams_.Set("prettyPrint", "false")
16894	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreports/disbursements")
16895	urls += "?" + c.urlParams_.Encode()
16896	req, err := http.NewRequest("GET", urls, body)
16897	if err != nil {
16898		return nil, err
16899	}
16900	req.Header = reqHeaders
16901	googleapi.Expand(req.URL, map[string]string{
16902		"merchantId": strconv.FormatUint(c.merchantId, 10),
16903	})
16904	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16905}
16906
16907// Do executes the "content.orderreports.listdisbursements" call.
16908// Exactly one of *OrderreportsListDisbursementsResponse or error will
16909// be non-nil. Any non-2xx status code is an error. Response headers are
16910// in either
16911// *OrderreportsListDisbursementsResponse.ServerResponse.Header or (if a
16912// response was returned at all) in error.(*googleapi.Error).Header. Use
16913// googleapi.IsNotModified to check whether the returned error was
16914// because http.StatusNotModified was returned.
16915func (c *OrderreportsListdisbursementsCall) Do(opts ...googleapi.CallOption) (*OrderreportsListDisbursementsResponse, error) {
16916	gensupport.SetOptions(c.urlParams_, opts...)
16917	res, err := c.doRequest("json")
16918	if res != nil && res.StatusCode == http.StatusNotModified {
16919		if res.Body != nil {
16920			res.Body.Close()
16921		}
16922		return nil, &googleapi.Error{
16923			Code:   res.StatusCode,
16924			Header: res.Header,
16925		}
16926	}
16927	if err != nil {
16928		return nil, err
16929	}
16930	defer googleapi.CloseBody(res)
16931	if err := googleapi.CheckResponse(res); err != nil {
16932		return nil, err
16933	}
16934	ret := &OrderreportsListDisbursementsResponse{
16935		ServerResponse: googleapi.ServerResponse{
16936			Header:         res.Header,
16937			HTTPStatusCode: res.StatusCode,
16938		},
16939	}
16940	target := &ret
16941	if err := gensupport.DecodeResponse(target, res); err != nil {
16942		return nil, err
16943	}
16944	return ret, nil
16945	// {
16946	//   "description": "Retrieves a report for disbursements from your Merchant Center account.",
16947	//   "httpMethod": "GET",
16948	//   "id": "content.orderreports.listdisbursements",
16949	//   "parameterOrder": [
16950	//     "merchantId",
16951	//     "disbursementStartDate"
16952	//   ],
16953	//   "parameters": {
16954	//     "disbursementEndDate": {
16955	//       "description": "The last date which disbursements occurred. In ISO 8601 format. Default: current date.",
16956	//       "location": "query",
16957	//       "type": "string"
16958	//     },
16959	//     "disbursementStartDate": {
16960	//       "description": "The first date which disbursements occurred. In ISO 8601 format.",
16961	//       "location": "query",
16962	//       "required": true,
16963	//       "type": "string"
16964	//     },
16965	//     "maxResults": {
16966	//       "description": "The maximum number of disbursements to return in the response, used for paging.",
16967	//       "format": "uint32",
16968	//       "location": "query",
16969	//       "type": "integer"
16970	//     },
16971	//     "merchantId": {
16972	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
16973	//       "format": "uint64",
16974	//       "location": "path",
16975	//       "required": true,
16976	//       "type": "string"
16977	//     },
16978	//     "pageToken": {
16979	//       "description": "The token returned by the previous request.",
16980	//       "location": "query",
16981	//       "type": "string"
16982	//     }
16983	//   },
16984	//   "path": "{merchantId}/orderreports/disbursements",
16985	//   "response": {
16986	//     "$ref": "OrderreportsListDisbursementsResponse"
16987	//   },
16988	//   "scopes": [
16989	//     "https://www.googleapis.com/auth/content"
16990	//   ]
16991	// }
16992
16993}
16994
16995// Pages invokes f for each page of results.
16996// A non-nil error returned from f will halt the iteration.
16997// The provided context supersedes any context provided to the Context method.
16998func (c *OrderreportsListdisbursementsCall) Pages(ctx context.Context, f func(*OrderreportsListDisbursementsResponse) error) error {
16999	c.ctx_ = ctx
17000	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
17001	for {
17002		x, err := c.Do()
17003		if err != nil {
17004			return err
17005		}
17006		if err := f(x); err != nil {
17007			return err
17008		}
17009		if x.NextPageToken == "" {
17010			return nil
17011		}
17012		c.PageToken(x.NextPageToken)
17013	}
17014}
17015
17016// method id "content.orderreports.listtransactions":
17017
17018type OrderreportsListtransactionsCall struct {
17019	s              *APIService
17020	merchantId     uint64
17021	disbursementId string
17022	urlParams_     gensupport.URLParams
17023	ifNoneMatch_   string
17024	ctx_           context.Context
17025	header_        http.Header
17026}
17027
17028// Listtransactions: Retrieves a list of transactions for a disbursement
17029// from your Merchant Center account.
17030func (r *OrderreportsService) Listtransactions(merchantId uint64, disbursementId string, transactionStartDate string) *OrderreportsListtransactionsCall {
17031	c := &OrderreportsListtransactionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17032	c.merchantId = merchantId
17033	c.disbursementId = disbursementId
17034	c.urlParams_.Set("transactionStartDate", transactionStartDate)
17035	return c
17036}
17037
17038// MaxResults sets the optional parameter "maxResults": The maximum
17039// number of disbursements to return in the response, used for paging.
17040func (c *OrderreportsListtransactionsCall) MaxResults(maxResults int64) *OrderreportsListtransactionsCall {
17041	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
17042	return c
17043}
17044
17045// PageToken sets the optional parameter "pageToken": The token returned
17046// by the previous request.
17047func (c *OrderreportsListtransactionsCall) PageToken(pageToken string) *OrderreportsListtransactionsCall {
17048	c.urlParams_.Set("pageToken", pageToken)
17049	return c
17050}
17051
17052// TransactionEndDate sets the optional parameter "transactionEndDate":
17053// The last date in which transaction occurred. In ISO 8601 format.
17054// Default: current date.
17055func (c *OrderreportsListtransactionsCall) TransactionEndDate(transactionEndDate string) *OrderreportsListtransactionsCall {
17056	c.urlParams_.Set("transactionEndDate", transactionEndDate)
17057	return c
17058}
17059
17060// Fields allows partial responses to be retrieved. See
17061// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17062// for more information.
17063func (c *OrderreportsListtransactionsCall) Fields(s ...googleapi.Field) *OrderreportsListtransactionsCall {
17064	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17065	return c
17066}
17067
17068// IfNoneMatch sets the optional parameter which makes the operation
17069// fail if the object's ETag matches the given value. This is useful for
17070// getting updates only after the object has changed since the last
17071// request. Use googleapi.IsNotModified to check whether the response
17072// error from Do is the result of In-None-Match.
17073func (c *OrderreportsListtransactionsCall) IfNoneMatch(entityTag string) *OrderreportsListtransactionsCall {
17074	c.ifNoneMatch_ = entityTag
17075	return c
17076}
17077
17078// Context sets the context to be used in this call's Do method. Any
17079// pending HTTP request will be aborted if the provided context is
17080// canceled.
17081func (c *OrderreportsListtransactionsCall) Context(ctx context.Context) *OrderreportsListtransactionsCall {
17082	c.ctx_ = ctx
17083	return c
17084}
17085
17086// Header returns an http.Header that can be modified by the caller to
17087// add HTTP headers to the request.
17088func (c *OrderreportsListtransactionsCall) Header() http.Header {
17089	if c.header_ == nil {
17090		c.header_ = make(http.Header)
17091	}
17092	return c.header_
17093}
17094
17095func (c *OrderreportsListtransactionsCall) doRequest(alt string) (*http.Response, error) {
17096	reqHeaders := make(http.Header)
17097	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
17098	for k, v := range c.header_ {
17099		reqHeaders[k] = v
17100	}
17101	reqHeaders.Set("User-Agent", c.s.userAgent())
17102	if c.ifNoneMatch_ != "" {
17103		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
17104	}
17105	var body io.Reader = nil
17106	c.urlParams_.Set("alt", alt)
17107	c.urlParams_.Set("prettyPrint", "false")
17108	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreports/disbursements/{disbursementId}/transactions")
17109	urls += "?" + c.urlParams_.Encode()
17110	req, err := http.NewRequest("GET", urls, body)
17111	if err != nil {
17112		return nil, err
17113	}
17114	req.Header = reqHeaders
17115	googleapi.Expand(req.URL, map[string]string{
17116		"merchantId":     strconv.FormatUint(c.merchantId, 10),
17117		"disbursementId": c.disbursementId,
17118	})
17119	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17120}
17121
17122// Do executes the "content.orderreports.listtransactions" call.
17123// Exactly one of *OrderreportsListTransactionsResponse or error will be
17124// non-nil. Any non-2xx status code is an error. Response headers are in
17125// either *OrderreportsListTransactionsResponse.ServerResponse.Header or
17126// (if a response was returned at all) in
17127// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
17128// whether the returned error was because http.StatusNotModified was
17129// returned.
17130func (c *OrderreportsListtransactionsCall) Do(opts ...googleapi.CallOption) (*OrderreportsListTransactionsResponse, error) {
17131	gensupport.SetOptions(c.urlParams_, opts...)
17132	res, err := c.doRequest("json")
17133	if res != nil && res.StatusCode == http.StatusNotModified {
17134		if res.Body != nil {
17135			res.Body.Close()
17136		}
17137		return nil, &googleapi.Error{
17138			Code:   res.StatusCode,
17139			Header: res.Header,
17140		}
17141	}
17142	if err != nil {
17143		return nil, err
17144	}
17145	defer googleapi.CloseBody(res)
17146	if err := googleapi.CheckResponse(res); err != nil {
17147		return nil, err
17148	}
17149	ret := &OrderreportsListTransactionsResponse{
17150		ServerResponse: googleapi.ServerResponse{
17151			Header:         res.Header,
17152			HTTPStatusCode: res.StatusCode,
17153		},
17154	}
17155	target := &ret
17156	if err := gensupport.DecodeResponse(target, res); err != nil {
17157		return nil, err
17158	}
17159	return ret, nil
17160	// {
17161	//   "description": "Retrieves a list of transactions for a disbursement from your Merchant Center account.",
17162	//   "httpMethod": "GET",
17163	//   "id": "content.orderreports.listtransactions",
17164	//   "parameterOrder": [
17165	//     "merchantId",
17166	//     "disbursementId",
17167	//     "transactionStartDate"
17168	//   ],
17169	//   "parameters": {
17170	//     "disbursementId": {
17171	//       "description": "The Google-provided ID of the disbursement (found in Wallet).",
17172	//       "location": "path",
17173	//       "required": true,
17174	//       "type": "string"
17175	//     },
17176	//     "maxResults": {
17177	//       "description": "The maximum number of disbursements to return in the response, used for paging.",
17178	//       "format": "uint32",
17179	//       "location": "query",
17180	//       "type": "integer"
17181	//     },
17182	//     "merchantId": {
17183	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
17184	//       "format": "uint64",
17185	//       "location": "path",
17186	//       "required": true,
17187	//       "type": "string"
17188	//     },
17189	//     "pageToken": {
17190	//       "description": "The token returned by the previous request.",
17191	//       "location": "query",
17192	//       "type": "string"
17193	//     },
17194	//     "transactionEndDate": {
17195	//       "description": "The last date in which transaction occurred. In ISO 8601 format. Default: current date.",
17196	//       "location": "query",
17197	//       "type": "string"
17198	//     },
17199	//     "transactionStartDate": {
17200	//       "description": "The first date in which transaction occurred. In ISO 8601 format.",
17201	//       "location": "query",
17202	//       "required": true,
17203	//       "type": "string"
17204	//     }
17205	//   },
17206	//   "path": "{merchantId}/orderreports/disbursements/{disbursementId}/transactions",
17207	//   "response": {
17208	//     "$ref": "OrderreportsListTransactionsResponse"
17209	//   },
17210	//   "scopes": [
17211	//     "https://www.googleapis.com/auth/content"
17212	//   ]
17213	// }
17214
17215}
17216
17217// Pages invokes f for each page of results.
17218// A non-nil error returned from f will halt the iteration.
17219// The provided context supersedes any context provided to the Context method.
17220func (c *OrderreportsListtransactionsCall) Pages(ctx context.Context, f func(*OrderreportsListTransactionsResponse) error) error {
17221	c.ctx_ = ctx
17222	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
17223	for {
17224		x, err := c.Do()
17225		if err != nil {
17226			return err
17227		}
17228		if err := f(x); err != nil {
17229			return err
17230		}
17231		if x.NextPageToken == "" {
17232			return nil
17233		}
17234		c.PageToken(x.NextPageToken)
17235	}
17236}
17237
17238// method id "content.orderreturns.get":
17239
17240type OrderreturnsGetCall struct {
17241	s            *APIService
17242	merchantId   uint64
17243	returnId     string
17244	urlParams_   gensupport.URLParams
17245	ifNoneMatch_ string
17246	ctx_         context.Context
17247	header_      http.Header
17248}
17249
17250// Get: Retrieves an order return from your Merchant Center account.
17251func (r *OrderreturnsService) Get(merchantId uint64, returnId string) *OrderreturnsGetCall {
17252	c := &OrderreturnsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17253	c.merchantId = merchantId
17254	c.returnId = returnId
17255	return c
17256}
17257
17258// Fields allows partial responses to be retrieved. See
17259// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17260// for more information.
17261func (c *OrderreturnsGetCall) Fields(s ...googleapi.Field) *OrderreturnsGetCall {
17262	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17263	return c
17264}
17265
17266// IfNoneMatch sets the optional parameter which makes the operation
17267// fail if the object's ETag matches the given value. This is useful for
17268// getting updates only after the object has changed since the last
17269// request. Use googleapi.IsNotModified to check whether the response
17270// error from Do is the result of In-None-Match.
17271func (c *OrderreturnsGetCall) IfNoneMatch(entityTag string) *OrderreturnsGetCall {
17272	c.ifNoneMatch_ = entityTag
17273	return c
17274}
17275
17276// Context sets the context to be used in this call's Do method. Any
17277// pending HTTP request will be aborted if the provided context is
17278// canceled.
17279func (c *OrderreturnsGetCall) Context(ctx context.Context) *OrderreturnsGetCall {
17280	c.ctx_ = ctx
17281	return c
17282}
17283
17284// Header returns an http.Header that can be modified by the caller to
17285// add HTTP headers to the request.
17286func (c *OrderreturnsGetCall) Header() http.Header {
17287	if c.header_ == nil {
17288		c.header_ = make(http.Header)
17289	}
17290	return c.header_
17291}
17292
17293func (c *OrderreturnsGetCall) doRequest(alt string) (*http.Response, error) {
17294	reqHeaders := make(http.Header)
17295	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
17296	for k, v := range c.header_ {
17297		reqHeaders[k] = v
17298	}
17299	reqHeaders.Set("User-Agent", c.s.userAgent())
17300	if c.ifNoneMatch_ != "" {
17301		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
17302	}
17303	var body io.Reader = nil
17304	c.urlParams_.Set("alt", alt)
17305	c.urlParams_.Set("prettyPrint", "false")
17306	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreturns/{returnId}")
17307	urls += "?" + c.urlParams_.Encode()
17308	req, err := http.NewRequest("GET", urls, body)
17309	if err != nil {
17310		return nil, err
17311	}
17312	req.Header = reqHeaders
17313	googleapi.Expand(req.URL, map[string]string{
17314		"merchantId": strconv.FormatUint(c.merchantId, 10),
17315		"returnId":   c.returnId,
17316	})
17317	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17318}
17319
17320// Do executes the "content.orderreturns.get" call.
17321// Exactly one of *MerchantOrderReturn or error will be non-nil. Any
17322// non-2xx status code is an error. Response headers are in either
17323// *MerchantOrderReturn.ServerResponse.Header or (if a response was
17324// returned at all) in error.(*googleapi.Error).Header. Use
17325// googleapi.IsNotModified to check whether the returned error was
17326// because http.StatusNotModified was returned.
17327func (c *OrderreturnsGetCall) Do(opts ...googleapi.CallOption) (*MerchantOrderReturn, error) {
17328	gensupport.SetOptions(c.urlParams_, opts...)
17329	res, err := c.doRequest("json")
17330	if res != nil && res.StatusCode == http.StatusNotModified {
17331		if res.Body != nil {
17332			res.Body.Close()
17333		}
17334		return nil, &googleapi.Error{
17335			Code:   res.StatusCode,
17336			Header: res.Header,
17337		}
17338	}
17339	if err != nil {
17340		return nil, err
17341	}
17342	defer googleapi.CloseBody(res)
17343	if err := googleapi.CheckResponse(res); err != nil {
17344		return nil, err
17345	}
17346	ret := &MerchantOrderReturn{
17347		ServerResponse: googleapi.ServerResponse{
17348			Header:         res.Header,
17349			HTTPStatusCode: res.StatusCode,
17350		},
17351	}
17352	target := &ret
17353	if err := gensupport.DecodeResponse(target, res); err != nil {
17354		return nil, err
17355	}
17356	return ret, nil
17357	// {
17358	//   "description": "Retrieves an order return from your Merchant Center account.",
17359	//   "httpMethod": "GET",
17360	//   "id": "content.orderreturns.get",
17361	//   "parameterOrder": [
17362	//     "merchantId",
17363	//     "returnId"
17364	//   ],
17365	//   "parameters": {
17366	//     "merchantId": {
17367	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
17368	//       "format": "uint64",
17369	//       "location": "path",
17370	//       "required": true,
17371	//       "type": "string"
17372	//     },
17373	//     "returnId": {
17374	//       "description": "Merchant order return ID generated by Google.",
17375	//       "location": "path",
17376	//       "required": true,
17377	//       "type": "string"
17378	//     }
17379	//   },
17380	//   "path": "{merchantId}/orderreturns/{returnId}",
17381	//   "response": {
17382	//     "$ref": "MerchantOrderReturn"
17383	//   },
17384	//   "scopes": [
17385	//     "https://www.googleapis.com/auth/content"
17386	//   ]
17387	// }
17388
17389}
17390
17391// method id "content.orderreturns.list":
17392
17393type OrderreturnsListCall struct {
17394	s            *APIService
17395	merchantId   uint64
17396	urlParams_   gensupport.URLParams
17397	ifNoneMatch_ string
17398	ctx_         context.Context
17399	header_      http.Header
17400}
17401
17402// List: Lists order returns in your Merchant Center account.
17403func (r *OrderreturnsService) List(merchantId uint64) *OrderreturnsListCall {
17404	c := &OrderreturnsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17405	c.merchantId = merchantId
17406	return c
17407}
17408
17409// CreatedEndDate sets the optional parameter "createdEndDate": Obtains
17410// order returns created before this date (inclusively), in ISO 8601
17411// format.
17412func (c *OrderreturnsListCall) CreatedEndDate(createdEndDate string) *OrderreturnsListCall {
17413	c.urlParams_.Set("createdEndDate", createdEndDate)
17414	return c
17415}
17416
17417// CreatedStartDate sets the optional parameter "createdStartDate":
17418// Obtains order returns created after this date (inclusively), in ISO
17419// 8601 format.
17420func (c *OrderreturnsListCall) CreatedStartDate(createdStartDate string) *OrderreturnsListCall {
17421	c.urlParams_.Set("createdStartDate", createdStartDate)
17422	return c
17423}
17424
17425// MaxResults sets the optional parameter "maxResults": The maximum
17426// number of order returns to return in the response, used for paging.
17427// The default value is 25 returns per page, and the maximum allowed
17428// value is 250 returns per page.
17429func (c *OrderreturnsListCall) MaxResults(maxResults int64) *OrderreturnsListCall {
17430	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
17431	return c
17432}
17433
17434// OrderBy sets the optional parameter "orderBy": Return the results in
17435// the specified order.
17436//
17437// Possible values:
17438//   "returnCreationTimeAsc"
17439//   "returnCreationTimeDesc"
17440func (c *OrderreturnsListCall) OrderBy(orderBy string) *OrderreturnsListCall {
17441	c.urlParams_.Set("orderBy", orderBy)
17442	return c
17443}
17444
17445// PageToken sets the optional parameter "pageToken": The token returned
17446// by the previous request.
17447func (c *OrderreturnsListCall) PageToken(pageToken string) *OrderreturnsListCall {
17448	c.urlParams_.Set("pageToken", pageToken)
17449	return c
17450}
17451
17452// Fields allows partial responses to be retrieved. See
17453// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17454// for more information.
17455func (c *OrderreturnsListCall) Fields(s ...googleapi.Field) *OrderreturnsListCall {
17456	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17457	return c
17458}
17459
17460// IfNoneMatch sets the optional parameter which makes the operation
17461// fail if the object's ETag matches the given value. This is useful for
17462// getting updates only after the object has changed since the last
17463// request. Use googleapi.IsNotModified to check whether the response
17464// error from Do is the result of In-None-Match.
17465func (c *OrderreturnsListCall) IfNoneMatch(entityTag string) *OrderreturnsListCall {
17466	c.ifNoneMatch_ = entityTag
17467	return c
17468}
17469
17470// Context sets the context to be used in this call's Do method. Any
17471// pending HTTP request will be aborted if the provided context is
17472// canceled.
17473func (c *OrderreturnsListCall) Context(ctx context.Context) *OrderreturnsListCall {
17474	c.ctx_ = ctx
17475	return c
17476}
17477
17478// Header returns an http.Header that can be modified by the caller to
17479// add HTTP headers to the request.
17480func (c *OrderreturnsListCall) Header() http.Header {
17481	if c.header_ == nil {
17482		c.header_ = make(http.Header)
17483	}
17484	return c.header_
17485}
17486
17487func (c *OrderreturnsListCall) doRequest(alt string) (*http.Response, error) {
17488	reqHeaders := make(http.Header)
17489	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
17490	for k, v := range c.header_ {
17491		reqHeaders[k] = v
17492	}
17493	reqHeaders.Set("User-Agent", c.s.userAgent())
17494	if c.ifNoneMatch_ != "" {
17495		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
17496	}
17497	var body io.Reader = nil
17498	c.urlParams_.Set("alt", alt)
17499	c.urlParams_.Set("prettyPrint", "false")
17500	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreturns")
17501	urls += "?" + c.urlParams_.Encode()
17502	req, err := http.NewRequest("GET", urls, body)
17503	if err != nil {
17504		return nil, err
17505	}
17506	req.Header = reqHeaders
17507	googleapi.Expand(req.URL, map[string]string{
17508		"merchantId": strconv.FormatUint(c.merchantId, 10),
17509	})
17510	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17511}
17512
17513// Do executes the "content.orderreturns.list" call.
17514// Exactly one of *OrderreturnsListResponse or error will be non-nil.
17515// Any non-2xx status code is an error. Response headers are in either
17516// *OrderreturnsListResponse.ServerResponse.Header or (if a response was
17517// returned at all) in error.(*googleapi.Error).Header. Use
17518// googleapi.IsNotModified to check whether the returned error was
17519// because http.StatusNotModified was returned.
17520func (c *OrderreturnsListCall) Do(opts ...googleapi.CallOption) (*OrderreturnsListResponse, error) {
17521	gensupport.SetOptions(c.urlParams_, opts...)
17522	res, err := c.doRequest("json")
17523	if res != nil && res.StatusCode == http.StatusNotModified {
17524		if res.Body != nil {
17525			res.Body.Close()
17526		}
17527		return nil, &googleapi.Error{
17528			Code:   res.StatusCode,
17529			Header: res.Header,
17530		}
17531	}
17532	if err != nil {
17533		return nil, err
17534	}
17535	defer googleapi.CloseBody(res)
17536	if err := googleapi.CheckResponse(res); err != nil {
17537		return nil, err
17538	}
17539	ret := &OrderreturnsListResponse{
17540		ServerResponse: googleapi.ServerResponse{
17541			Header:         res.Header,
17542			HTTPStatusCode: res.StatusCode,
17543		},
17544	}
17545	target := &ret
17546	if err := gensupport.DecodeResponse(target, res); err != nil {
17547		return nil, err
17548	}
17549	return ret, nil
17550	// {
17551	//   "description": "Lists order returns in your Merchant Center account.",
17552	//   "httpMethod": "GET",
17553	//   "id": "content.orderreturns.list",
17554	//   "parameterOrder": [
17555	//     "merchantId"
17556	//   ],
17557	//   "parameters": {
17558	//     "createdEndDate": {
17559	//       "description": "Obtains order returns created before this date (inclusively), in ISO 8601 format.",
17560	//       "location": "query",
17561	//       "type": "string"
17562	//     },
17563	//     "createdStartDate": {
17564	//       "description": "Obtains order returns created after this date (inclusively), in ISO 8601 format.",
17565	//       "location": "query",
17566	//       "type": "string"
17567	//     },
17568	//     "maxResults": {
17569	//       "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.",
17570	//       "format": "uint32",
17571	//       "location": "query",
17572	//       "type": "integer"
17573	//     },
17574	//     "merchantId": {
17575	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
17576	//       "format": "uint64",
17577	//       "location": "path",
17578	//       "required": true,
17579	//       "type": "string"
17580	//     },
17581	//     "orderBy": {
17582	//       "description": "Return the results in the specified order.",
17583	//       "enum": [
17584	//         "returnCreationTimeAsc",
17585	//         "returnCreationTimeDesc"
17586	//       ],
17587	//       "enumDescriptions": [
17588	//         "",
17589	//         ""
17590	//       ],
17591	//       "location": "query",
17592	//       "type": "string"
17593	//     },
17594	//     "pageToken": {
17595	//       "description": "The token returned by the previous request.",
17596	//       "location": "query",
17597	//       "type": "string"
17598	//     }
17599	//   },
17600	//   "path": "{merchantId}/orderreturns",
17601	//   "response": {
17602	//     "$ref": "OrderreturnsListResponse"
17603	//   },
17604	//   "scopes": [
17605	//     "https://www.googleapis.com/auth/content"
17606	//   ]
17607	// }
17608
17609}
17610
17611// Pages invokes f for each page of results.
17612// A non-nil error returned from f will halt the iteration.
17613// The provided context supersedes any context provided to the Context method.
17614func (c *OrderreturnsListCall) Pages(ctx context.Context, f func(*OrderreturnsListResponse) error) error {
17615	c.ctx_ = ctx
17616	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
17617	for {
17618		x, err := c.Do()
17619		if err != nil {
17620			return err
17621		}
17622		if err := f(x); err != nil {
17623			return err
17624		}
17625		if x.NextPageToken == "" {
17626			return nil
17627		}
17628		c.PageToken(x.NextPageToken)
17629	}
17630}
17631
17632// method id "content.orders.acknowledge":
17633
17634type OrdersAcknowledgeCall struct {
17635	s                        *APIService
17636	merchantId               uint64
17637	orderId                  string
17638	ordersacknowledgerequest *OrdersAcknowledgeRequest
17639	urlParams_               gensupport.URLParams
17640	ctx_                     context.Context
17641	header_                  http.Header
17642}
17643
17644// Acknowledge: Marks an order as acknowledged.
17645func (r *OrdersService) Acknowledge(merchantId uint64, orderId string, ordersacknowledgerequest *OrdersAcknowledgeRequest) *OrdersAcknowledgeCall {
17646	c := &OrdersAcknowledgeCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17647	c.merchantId = merchantId
17648	c.orderId = orderId
17649	c.ordersacknowledgerequest = ordersacknowledgerequest
17650	return c
17651}
17652
17653// Fields allows partial responses to be retrieved. See
17654// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17655// for more information.
17656func (c *OrdersAcknowledgeCall) Fields(s ...googleapi.Field) *OrdersAcknowledgeCall {
17657	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17658	return c
17659}
17660
17661// Context sets the context to be used in this call's Do method. Any
17662// pending HTTP request will be aborted if the provided context is
17663// canceled.
17664func (c *OrdersAcknowledgeCall) Context(ctx context.Context) *OrdersAcknowledgeCall {
17665	c.ctx_ = ctx
17666	return c
17667}
17668
17669// Header returns an http.Header that can be modified by the caller to
17670// add HTTP headers to the request.
17671func (c *OrdersAcknowledgeCall) Header() http.Header {
17672	if c.header_ == nil {
17673		c.header_ = make(http.Header)
17674	}
17675	return c.header_
17676}
17677
17678func (c *OrdersAcknowledgeCall) doRequest(alt string) (*http.Response, error) {
17679	reqHeaders := make(http.Header)
17680	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
17681	for k, v := range c.header_ {
17682		reqHeaders[k] = v
17683	}
17684	reqHeaders.Set("User-Agent", c.s.userAgent())
17685	var body io.Reader = nil
17686	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersacknowledgerequest)
17687	if err != nil {
17688		return nil, err
17689	}
17690	reqHeaders.Set("Content-Type", "application/json")
17691	c.urlParams_.Set("alt", alt)
17692	c.urlParams_.Set("prettyPrint", "false")
17693	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/acknowledge")
17694	urls += "?" + c.urlParams_.Encode()
17695	req, err := http.NewRequest("POST", urls, body)
17696	if err != nil {
17697		return nil, err
17698	}
17699	req.Header = reqHeaders
17700	googleapi.Expand(req.URL, map[string]string{
17701		"merchantId": strconv.FormatUint(c.merchantId, 10),
17702		"orderId":    c.orderId,
17703	})
17704	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17705}
17706
17707// Do executes the "content.orders.acknowledge" call.
17708// Exactly one of *OrdersAcknowledgeResponse or error will be non-nil.
17709// Any non-2xx status code is an error. Response headers are in either
17710// *OrdersAcknowledgeResponse.ServerResponse.Header or (if a response
17711// was returned at all) in error.(*googleapi.Error).Header. Use
17712// googleapi.IsNotModified to check whether the returned error was
17713// because http.StatusNotModified was returned.
17714func (c *OrdersAcknowledgeCall) Do(opts ...googleapi.CallOption) (*OrdersAcknowledgeResponse, error) {
17715	gensupport.SetOptions(c.urlParams_, opts...)
17716	res, err := c.doRequest("json")
17717	if res != nil && res.StatusCode == http.StatusNotModified {
17718		if res.Body != nil {
17719			res.Body.Close()
17720		}
17721		return nil, &googleapi.Error{
17722			Code:   res.StatusCode,
17723			Header: res.Header,
17724		}
17725	}
17726	if err != nil {
17727		return nil, err
17728	}
17729	defer googleapi.CloseBody(res)
17730	if err := googleapi.CheckResponse(res); err != nil {
17731		return nil, err
17732	}
17733	ret := &OrdersAcknowledgeResponse{
17734		ServerResponse: googleapi.ServerResponse{
17735			Header:         res.Header,
17736			HTTPStatusCode: res.StatusCode,
17737		},
17738	}
17739	target := &ret
17740	if err := gensupport.DecodeResponse(target, res); err != nil {
17741		return nil, err
17742	}
17743	return ret, nil
17744	// {
17745	//   "description": "Marks an order as acknowledged.",
17746	//   "httpMethod": "POST",
17747	//   "id": "content.orders.acknowledge",
17748	//   "parameterOrder": [
17749	//     "merchantId",
17750	//     "orderId"
17751	//   ],
17752	//   "parameters": {
17753	//     "merchantId": {
17754	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
17755	//       "format": "uint64",
17756	//       "location": "path",
17757	//       "required": true,
17758	//       "type": "string"
17759	//     },
17760	//     "orderId": {
17761	//       "description": "The ID of the order.",
17762	//       "location": "path",
17763	//       "required": true,
17764	//       "type": "string"
17765	//     }
17766	//   },
17767	//   "path": "{merchantId}/orders/{orderId}/acknowledge",
17768	//   "request": {
17769	//     "$ref": "OrdersAcknowledgeRequest"
17770	//   },
17771	//   "response": {
17772	//     "$ref": "OrdersAcknowledgeResponse"
17773	//   },
17774	//   "scopes": [
17775	//     "https://www.googleapis.com/auth/content"
17776	//   ]
17777	// }
17778
17779}
17780
17781// method id "content.orders.advancetestorder":
17782
17783type OrdersAdvancetestorderCall struct {
17784	s          *APIService
17785	merchantId uint64
17786	orderId    string
17787	urlParams_ gensupport.URLParams
17788	ctx_       context.Context
17789	header_    http.Header
17790}
17791
17792// Advancetestorder: Sandbox only. Moves a test order from state
17793// "inProgress" to state "pendingShipment".
17794func (r *OrdersService) Advancetestorder(merchantId uint64, orderId string) *OrdersAdvancetestorderCall {
17795	c := &OrdersAdvancetestorderCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17796	c.merchantId = merchantId
17797	c.orderId = orderId
17798	return c
17799}
17800
17801// Fields allows partial responses to be retrieved. See
17802// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17803// for more information.
17804func (c *OrdersAdvancetestorderCall) Fields(s ...googleapi.Field) *OrdersAdvancetestorderCall {
17805	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17806	return c
17807}
17808
17809// Context sets the context to be used in this call's Do method. Any
17810// pending HTTP request will be aborted if the provided context is
17811// canceled.
17812func (c *OrdersAdvancetestorderCall) Context(ctx context.Context) *OrdersAdvancetestorderCall {
17813	c.ctx_ = ctx
17814	return c
17815}
17816
17817// Header returns an http.Header that can be modified by the caller to
17818// add HTTP headers to the request.
17819func (c *OrdersAdvancetestorderCall) Header() http.Header {
17820	if c.header_ == nil {
17821		c.header_ = make(http.Header)
17822	}
17823	return c.header_
17824}
17825
17826func (c *OrdersAdvancetestorderCall) doRequest(alt string) (*http.Response, error) {
17827	reqHeaders := make(http.Header)
17828	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
17829	for k, v := range c.header_ {
17830		reqHeaders[k] = v
17831	}
17832	reqHeaders.Set("User-Agent", c.s.userAgent())
17833	var body io.Reader = nil
17834	c.urlParams_.Set("alt", alt)
17835	c.urlParams_.Set("prettyPrint", "false")
17836	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/testorders/{orderId}/advance")
17837	urls += "?" + c.urlParams_.Encode()
17838	req, err := http.NewRequest("POST", urls, body)
17839	if err != nil {
17840		return nil, err
17841	}
17842	req.Header = reqHeaders
17843	googleapi.Expand(req.URL, map[string]string{
17844		"merchantId": strconv.FormatUint(c.merchantId, 10),
17845		"orderId":    c.orderId,
17846	})
17847	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17848}
17849
17850// Do executes the "content.orders.advancetestorder" call.
17851// Exactly one of *OrdersAdvanceTestOrderResponse or error will be
17852// non-nil. Any non-2xx status code is an error. Response headers are in
17853// either *OrdersAdvanceTestOrderResponse.ServerResponse.Header or (if a
17854// response was returned at all) in error.(*googleapi.Error).Header. Use
17855// googleapi.IsNotModified to check whether the returned error was
17856// because http.StatusNotModified was returned.
17857func (c *OrdersAdvancetestorderCall) Do(opts ...googleapi.CallOption) (*OrdersAdvanceTestOrderResponse, error) {
17858	gensupport.SetOptions(c.urlParams_, opts...)
17859	res, err := c.doRequest("json")
17860	if res != nil && res.StatusCode == http.StatusNotModified {
17861		if res.Body != nil {
17862			res.Body.Close()
17863		}
17864		return nil, &googleapi.Error{
17865			Code:   res.StatusCode,
17866			Header: res.Header,
17867		}
17868	}
17869	if err != nil {
17870		return nil, err
17871	}
17872	defer googleapi.CloseBody(res)
17873	if err := googleapi.CheckResponse(res); err != nil {
17874		return nil, err
17875	}
17876	ret := &OrdersAdvanceTestOrderResponse{
17877		ServerResponse: googleapi.ServerResponse{
17878			Header:         res.Header,
17879			HTTPStatusCode: res.StatusCode,
17880		},
17881	}
17882	target := &ret
17883	if err := gensupport.DecodeResponse(target, res); err != nil {
17884		return nil, err
17885	}
17886	return ret, nil
17887	// {
17888	//   "description": "Sandbox only. Moves a test order from state \"inProgress\" to state \"pendingShipment\".",
17889	//   "httpMethod": "POST",
17890	//   "id": "content.orders.advancetestorder",
17891	//   "parameterOrder": [
17892	//     "merchantId",
17893	//     "orderId"
17894	//   ],
17895	//   "parameters": {
17896	//     "merchantId": {
17897	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
17898	//       "format": "uint64",
17899	//       "location": "path",
17900	//       "required": true,
17901	//       "type": "string"
17902	//     },
17903	//     "orderId": {
17904	//       "description": "The ID of the test order to modify.",
17905	//       "location": "path",
17906	//       "required": true,
17907	//       "type": "string"
17908	//     }
17909	//   },
17910	//   "path": "{merchantId}/testorders/{orderId}/advance",
17911	//   "response": {
17912	//     "$ref": "OrdersAdvanceTestOrderResponse"
17913	//   },
17914	//   "scopes": [
17915	//     "https://www.googleapis.com/auth/content"
17916	//   ]
17917	// }
17918
17919}
17920
17921// method id "content.orders.cancel":
17922
17923type OrdersCancelCall struct {
17924	s                   *APIService
17925	merchantId          uint64
17926	orderId             string
17927	orderscancelrequest *OrdersCancelRequest
17928	urlParams_          gensupport.URLParams
17929	ctx_                context.Context
17930	header_             http.Header
17931}
17932
17933// Cancel: Cancels all line items in an order, making a full refund.
17934func (r *OrdersService) Cancel(merchantId uint64, orderId string, orderscancelrequest *OrdersCancelRequest) *OrdersCancelCall {
17935	c := &OrdersCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17936	c.merchantId = merchantId
17937	c.orderId = orderId
17938	c.orderscancelrequest = orderscancelrequest
17939	return c
17940}
17941
17942// Fields allows partial responses to be retrieved. See
17943// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17944// for more information.
17945func (c *OrdersCancelCall) Fields(s ...googleapi.Field) *OrdersCancelCall {
17946	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17947	return c
17948}
17949
17950// Context sets the context to be used in this call's Do method. Any
17951// pending HTTP request will be aborted if the provided context is
17952// canceled.
17953func (c *OrdersCancelCall) Context(ctx context.Context) *OrdersCancelCall {
17954	c.ctx_ = ctx
17955	return c
17956}
17957
17958// Header returns an http.Header that can be modified by the caller to
17959// add HTTP headers to the request.
17960func (c *OrdersCancelCall) Header() http.Header {
17961	if c.header_ == nil {
17962		c.header_ = make(http.Header)
17963	}
17964	return c.header_
17965}
17966
17967func (c *OrdersCancelCall) doRequest(alt string) (*http.Response, error) {
17968	reqHeaders := make(http.Header)
17969	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
17970	for k, v := range c.header_ {
17971		reqHeaders[k] = v
17972	}
17973	reqHeaders.Set("User-Agent", c.s.userAgent())
17974	var body io.Reader = nil
17975	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscancelrequest)
17976	if err != nil {
17977		return nil, err
17978	}
17979	reqHeaders.Set("Content-Type", "application/json")
17980	c.urlParams_.Set("alt", alt)
17981	c.urlParams_.Set("prettyPrint", "false")
17982	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/cancel")
17983	urls += "?" + c.urlParams_.Encode()
17984	req, err := http.NewRequest("POST", urls, body)
17985	if err != nil {
17986		return nil, err
17987	}
17988	req.Header = reqHeaders
17989	googleapi.Expand(req.URL, map[string]string{
17990		"merchantId": strconv.FormatUint(c.merchantId, 10),
17991		"orderId":    c.orderId,
17992	})
17993	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17994}
17995
17996// Do executes the "content.orders.cancel" call.
17997// Exactly one of *OrdersCancelResponse or error will be non-nil. Any
17998// non-2xx status code is an error. Response headers are in either
17999// *OrdersCancelResponse.ServerResponse.Header or (if a response was
18000// returned at all) in error.(*googleapi.Error).Header. Use
18001// googleapi.IsNotModified to check whether the returned error was
18002// because http.StatusNotModified was returned.
18003func (c *OrdersCancelCall) Do(opts ...googleapi.CallOption) (*OrdersCancelResponse, error) {
18004	gensupport.SetOptions(c.urlParams_, opts...)
18005	res, err := c.doRequest("json")
18006	if res != nil && res.StatusCode == http.StatusNotModified {
18007		if res.Body != nil {
18008			res.Body.Close()
18009		}
18010		return nil, &googleapi.Error{
18011			Code:   res.StatusCode,
18012			Header: res.Header,
18013		}
18014	}
18015	if err != nil {
18016		return nil, err
18017	}
18018	defer googleapi.CloseBody(res)
18019	if err := googleapi.CheckResponse(res); err != nil {
18020		return nil, err
18021	}
18022	ret := &OrdersCancelResponse{
18023		ServerResponse: googleapi.ServerResponse{
18024			Header:         res.Header,
18025			HTTPStatusCode: res.StatusCode,
18026		},
18027	}
18028	target := &ret
18029	if err := gensupport.DecodeResponse(target, res); err != nil {
18030		return nil, err
18031	}
18032	return ret, nil
18033	// {
18034	//   "description": "Cancels all line items in an order, making a full refund.",
18035	//   "httpMethod": "POST",
18036	//   "id": "content.orders.cancel",
18037	//   "parameterOrder": [
18038	//     "merchantId",
18039	//     "orderId"
18040	//   ],
18041	//   "parameters": {
18042	//     "merchantId": {
18043	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
18044	//       "format": "uint64",
18045	//       "location": "path",
18046	//       "required": true,
18047	//       "type": "string"
18048	//     },
18049	//     "orderId": {
18050	//       "description": "The ID of the order to cancel.",
18051	//       "location": "path",
18052	//       "required": true,
18053	//       "type": "string"
18054	//     }
18055	//   },
18056	//   "path": "{merchantId}/orders/{orderId}/cancel",
18057	//   "request": {
18058	//     "$ref": "OrdersCancelRequest"
18059	//   },
18060	//   "response": {
18061	//     "$ref": "OrdersCancelResponse"
18062	//   },
18063	//   "scopes": [
18064	//     "https://www.googleapis.com/auth/content"
18065	//   ]
18066	// }
18067
18068}
18069
18070// method id "content.orders.cancellineitem":
18071
18072type OrdersCancellineitemCall struct {
18073	s                           *APIService
18074	merchantId                  uint64
18075	orderId                     string
18076	orderscancellineitemrequest *OrdersCancelLineItemRequest
18077	urlParams_                  gensupport.URLParams
18078	ctx_                        context.Context
18079	header_                     http.Header
18080}
18081
18082// Cancellineitem: Cancels a line item, making a full refund.
18083func (r *OrdersService) Cancellineitem(merchantId uint64, orderId string, orderscancellineitemrequest *OrdersCancelLineItemRequest) *OrdersCancellineitemCall {
18084	c := &OrdersCancellineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18085	c.merchantId = merchantId
18086	c.orderId = orderId
18087	c.orderscancellineitemrequest = orderscancellineitemrequest
18088	return c
18089}
18090
18091// Fields allows partial responses to be retrieved. See
18092// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18093// for more information.
18094func (c *OrdersCancellineitemCall) Fields(s ...googleapi.Field) *OrdersCancellineitemCall {
18095	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18096	return c
18097}
18098
18099// Context sets the context to be used in this call's Do method. Any
18100// pending HTTP request will be aborted if the provided context is
18101// canceled.
18102func (c *OrdersCancellineitemCall) Context(ctx context.Context) *OrdersCancellineitemCall {
18103	c.ctx_ = ctx
18104	return c
18105}
18106
18107// Header returns an http.Header that can be modified by the caller to
18108// add HTTP headers to the request.
18109func (c *OrdersCancellineitemCall) Header() http.Header {
18110	if c.header_ == nil {
18111		c.header_ = make(http.Header)
18112	}
18113	return c.header_
18114}
18115
18116func (c *OrdersCancellineitemCall) doRequest(alt string) (*http.Response, error) {
18117	reqHeaders := make(http.Header)
18118	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
18119	for k, v := range c.header_ {
18120		reqHeaders[k] = v
18121	}
18122	reqHeaders.Set("User-Agent", c.s.userAgent())
18123	var body io.Reader = nil
18124	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscancellineitemrequest)
18125	if err != nil {
18126		return nil, err
18127	}
18128	reqHeaders.Set("Content-Type", "application/json")
18129	c.urlParams_.Set("alt", alt)
18130	c.urlParams_.Set("prettyPrint", "false")
18131	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/cancelLineItem")
18132	urls += "?" + c.urlParams_.Encode()
18133	req, err := http.NewRequest("POST", urls, body)
18134	if err != nil {
18135		return nil, err
18136	}
18137	req.Header = reqHeaders
18138	googleapi.Expand(req.URL, map[string]string{
18139		"merchantId": strconv.FormatUint(c.merchantId, 10),
18140		"orderId":    c.orderId,
18141	})
18142	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18143}
18144
18145// Do executes the "content.orders.cancellineitem" call.
18146// Exactly one of *OrdersCancelLineItemResponse or error will be
18147// non-nil. Any non-2xx status code is an error. Response headers are in
18148// either *OrdersCancelLineItemResponse.ServerResponse.Header or (if a
18149// response was returned at all) in error.(*googleapi.Error).Header. Use
18150// googleapi.IsNotModified to check whether the returned error was
18151// because http.StatusNotModified was returned.
18152func (c *OrdersCancellineitemCall) Do(opts ...googleapi.CallOption) (*OrdersCancelLineItemResponse, error) {
18153	gensupport.SetOptions(c.urlParams_, opts...)
18154	res, err := c.doRequest("json")
18155	if res != nil && res.StatusCode == http.StatusNotModified {
18156		if res.Body != nil {
18157			res.Body.Close()
18158		}
18159		return nil, &googleapi.Error{
18160			Code:   res.StatusCode,
18161			Header: res.Header,
18162		}
18163	}
18164	if err != nil {
18165		return nil, err
18166	}
18167	defer googleapi.CloseBody(res)
18168	if err := googleapi.CheckResponse(res); err != nil {
18169		return nil, err
18170	}
18171	ret := &OrdersCancelLineItemResponse{
18172		ServerResponse: googleapi.ServerResponse{
18173			Header:         res.Header,
18174			HTTPStatusCode: res.StatusCode,
18175		},
18176	}
18177	target := &ret
18178	if err := gensupport.DecodeResponse(target, res); err != nil {
18179		return nil, err
18180	}
18181	return ret, nil
18182	// {
18183	//   "description": "Cancels a line item, making a full refund.",
18184	//   "httpMethod": "POST",
18185	//   "id": "content.orders.cancellineitem",
18186	//   "parameterOrder": [
18187	//     "merchantId",
18188	//     "orderId"
18189	//   ],
18190	//   "parameters": {
18191	//     "merchantId": {
18192	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
18193	//       "format": "uint64",
18194	//       "location": "path",
18195	//       "required": true,
18196	//       "type": "string"
18197	//     },
18198	//     "orderId": {
18199	//       "description": "The ID of the order.",
18200	//       "location": "path",
18201	//       "required": true,
18202	//       "type": "string"
18203	//     }
18204	//   },
18205	//   "path": "{merchantId}/orders/{orderId}/cancelLineItem",
18206	//   "request": {
18207	//     "$ref": "OrdersCancelLineItemRequest"
18208	//   },
18209	//   "response": {
18210	//     "$ref": "OrdersCancelLineItemResponse"
18211	//   },
18212	//   "scopes": [
18213	//     "https://www.googleapis.com/auth/content"
18214	//   ]
18215	// }
18216
18217}
18218
18219// method id "content.orders.canceltestorderbycustomer":
18220
18221type OrdersCanceltestorderbycustomerCall struct {
18222	s                                      *APIService
18223	merchantId                             uint64
18224	orderId                                string
18225	orderscanceltestorderbycustomerrequest *OrdersCancelTestOrderByCustomerRequest
18226	urlParams_                             gensupport.URLParams
18227	ctx_                                   context.Context
18228	header_                                http.Header
18229}
18230
18231// Canceltestorderbycustomer: Sandbox only. Cancels a test order for
18232// customer-initiated cancellation.
18233func (r *OrdersService) Canceltestorderbycustomer(merchantId uint64, orderId string, orderscanceltestorderbycustomerrequest *OrdersCancelTestOrderByCustomerRequest) *OrdersCanceltestorderbycustomerCall {
18234	c := &OrdersCanceltestorderbycustomerCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18235	c.merchantId = merchantId
18236	c.orderId = orderId
18237	c.orderscanceltestorderbycustomerrequest = orderscanceltestorderbycustomerrequest
18238	return c
18239}
18240
18241// Fields allows partial responses to be retrieved. See
18242// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18243// for more information.
18244func (c *OrdersCanceltestorderbycustomerCall) Fields(s ...googleapi.Field) *OrdersCanceltestorderbycustomerCall {
18245	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18246	return c
18247}
18248
18249// Context sets the context to be used in this call's Do method. Any
18250// pending HTTP request will be aborted if the provided context is
18251// canceled.
18252func (c *OrdersCanceltestorderbycustomerCall) Context(ctx context.Context) *OrdersCanceltestorderbycustomerCall {
18253	c.ctx_ = ctx
18254	return c
18255}
18256
18257// Header returns an http.Header that can be modified by the caller to
18258// add HTTP headers to the request.
18259func (c *OrdersCanceltestorderbycustomerCall) Header() http.Header {
18260	if c.header_ == nil {
18261		c.header_ = make(http.Header)
18262	}
18263	return c.header_
18264}
18265
18266func (c *OrdersCanceltestorderbycustomerCall) doRequest(alt string) (*http.Response, error) {
18267	reqHeaders := make(http.Header)
18268	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
18269	for k, v := range c.header_ {
18270		reqHeaders[k] = v
18271	}
18272	reqHeaders.Set("User-Agent", c.s.userAgent())
18273	var body io.Reader = nil
18274	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscanceltestorderbycustomerrequest)
18275	if err != nil {
18276		return nil, err
18277	}
18278	reqHeaders.Set("Content-Type", "application/json")
18279	c.urlParams_.Set("alt", alt)
18280	c.urlParams_.Set("prettyPrint", "false")
18281	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/testorders/{orderId}/cancelByCustomer")
18282	urls += "?" + c.urlParams_.Encode()
18283	req, err := http.NewRequest("POST", urls, body)
18284	if err != nil {
18285		return nil, err
18286	}
18287	req.Header = reqHeaders
18288	googleapi.Expand(req.URL, map[string]string{
18289		"merchantId": strconv.FormatUint(c.merchantId, 10),
18290		"orderId":    c.orderId,
18291	})
18292	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18293}
18294
18295// Do executes the "content.orders.canceltestorderbycustomer" call.
18296// Exactly one of *OrdersCancelTestOrderByCustomerResponse or error will
18297// be non-nil. Any non-2xx status code is an error. Response headers are
18298// in either
18299// *OrdersCancelTestOrderByCustomerResponse.ServerResponse.Header or (if
18300// a response was returned at all) in error.(*googleapi.Error).Header.
18301// Use googleapi.IsNotModified to check whether the returned error was
18302// because http.StatusNotModified was returned.
18303func (c *OrdersCanceltestorderbycustomerCall) Do(opts ...googleapi.CallOption) (*OrdersCancelTestOrderByCustomerResponse, error) {
18304	gensupport.SetOptions(c.urlParams_, opts...)
18305	res, err := c.doRequest("json")
18306	if res != nil && res.StatusCode == http.StatusNotModified {
18307		if res.Body != nil {
18308			res.Body.Close()
18309		}
18310		return nil, &googleapi.Error{
18311			Code:   res.StatusCode,
18312			Header: res.Header,
18313		}
18314	}
18315	if err != nil {
18316		return nil, err
18317	}
18318	defer googleapi.CloseBody(res)
18319	if err := googleapi.CheckResponse(res); err != nil {
18320		return nil, err
18321	}
18322	ret := &OrdersCancelTestOrderByCustomerResponse{
18323		ServerResponse: googleapi.ServerResponse{
18324			Header:         res.Header,
18325			HTTPStatusCode: res.StatusCode,
18326		},
18327	}
18328	target := &ret
18329	if err := gensupport.DecodeResponse(target, res); err != nil {
18330		return nil, err
18331	}
18332	return ret, nil
18333	// {
18334	//   "description": "Sandbox only. Cancels a test order for customer-initiated cancellation.",
18335	//   "httpMethod": "POST",
18336	//   "id": "content.orders.canceltestorderbycustomer",
18337	//   "parameterOrder": [
18338	//     "merchantId",
18339	//     "orderId"
18340	//   ],
18341	//   "parameters": {
18342	//     "merchantId": {
18343	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
18344	//       "format": "uint64",
18345	//       "location": "path",
18346	//       "required": true,
18347	//       "type": "string"
18348	//     },
18349	//     "orderId": {
18350	//       "description": "The ID of the test order to cancel.",
18351	//       "location": "path",
18352	//       "required": true,
18353	//       "type": "string"
18354	//     }
18355	//   },
18356	//   "path": "{merchantId}/testorders/{orderId}/cancelByCustomer",
18357	//   "request": {
18358	//     "$ref": "OrdersCancelTestOrderByCustomerRequest"
18359	//   },
18360	//   "response": {
18361	//     "$ref": "OrdersCancelTestOrderByCustomerResponse"
18362	//   },
18363	//   "scopes": [
18364	//     "https://www.googleapis.com/auth/content"
18365	//   ]
18366	// }
18367
18368}
18369
18370// method id "content.orders.createtestorder":
18371
18372type OrdersCreatetestorderCall struct {
18373	s                            *APIService
18374	merchantId                   uint64
18375	orderscreatetestorderrequest *OrdersCreateTestOrderRequest
18376	urlParams_                   gensupport.URLParams
18377	ctx_                         context.Context
18378	header_                      http.Header
18379}
18380
18381// Createtestorder: Sandbox only. Creates a test order.
18382func (r *OrdersService) Createtestorder(merchantId uint64, orderscreatetestorderrequest *OrdersCreateTestOrderRequest) *OrdersCreatetestorderCall {
18383	c := &OrdersCreatetestorderCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18384	c.merchantId = merchantId
18385	c.orderscreatetestorderrequest = orderscreatetestorderrequest
18386	return c
18387}
18388
18389// Fields allows partial responses to be retrieved. See
18390// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18391// for more information.
18392func (c *OrdersCreatetestorderCall) Fields(s ...googleapi.Field) *OrdersCreatetestorderCall {
18393	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18394	return c
18395}
18396
18397// Context sets the context to be used in this call's Do method. Any
18398// pending HTTP request will be aborted if the provided context is
18399// canceled.
18400func (c *OrdersCreatetestorderCall) Context(ctx context.Context) *OrdersCreatetestorderCall {
18401	c.ctx_ = ctx
18402	return c
18403}
18404
18405// Header returns an http.Header that can be modified by the caller to
18406// add HTTP headers to the request.
18407func (c *OrdersCreatetestorderCall) Header() http.Header {
18408	if c.header_ == nil {
18409		c.header_ = make(http.Header)
18410	}
18411	return c.header_
18412}
18413
18414func (c *OrdersCreatetestorderCall) doRequest(alt string) (*http.Response, error) {
18415	reqHeaders := make(http.Header)
18416	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
18417	for k, v := range c.header_ {
18418		reqHeaders[k] = v
18419	}
18420	reqHeaders.Set("User-Agent", c.s.userAgent())
18421	var body io.Reader = nil
18422	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscreatetestorderrequest)
18423	if err != nil {
18424		return nil, err
18425	}
18426	reqHeaders.Set("Content-Type", "application/json")
18427	c.urlParams_.Set("alt", alt)
18428	c.urlParams_.Set("prettyPrint", "false")
18429	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/testorders")
18430	urls += "?" + c.urlParams_.Encode()
18431	req, err := http.NewRequest("POST", urls, body)
18432	if err != nil {
18433		return nil, err
18434	}
18435	req.Header = reqHeaders
18436	googleapi.Expand(req.URL, map[string]string{
18437		"merchantId": strconv.FormatUint(c.merchantId, 10),
18438	})
18439	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18440}
18441
18442// Do executes the "content.orders.createtestorder" call.
18443// Exactly one of *OrdersCreateTestOrderResponse or error will be
18444// non-nil. Any non-2xx status code is an error. Response headers are in
18445// either *OrdersCreateTestOrderResponse.ServerResponse.Header or (if a
18446// response was returned at all) in error.(*googleapi.Error).Header. Use
18447// googleapi.IsNotModified to check whether the returned error was
18448// because http.StatusNotModified was returned.
18449func (c *OrdersCreatetestorderCall) Do(opts ...googleapi.CallOption) (*OrdersCreateTestOrderResponse, error) {
18450	gensupport.SetOptions(c.urlParams_, opts...)
18451	res, err := c.doRequest("json")
18452	if res != nil && res.StatusCode == http.StatusNotModified {
18453		if res.Body != nil {
18454			res.Body.Close()
18455		}
18456		return nil, &googleapi.Error{
18457			Code:   res.StatusCode,
18458			Header: res.Header,
18459		}
18460	}
18461	if err != nil {
18462		return nil, err
18463	}
18464	defer googleapi.CloseBody(res)
18465	if err := googleapi.CheckResponse(res); err != nil {
18466		return nil, err
18467	}
18468	ret := &OrdersCreateTestOrderResponse{
18469		ServerResponse: googleapi.ServerResponse{
18470			Header:         res.Header,
18471			HTTPStatusCode: res.StatusCode,
18472		},
18473	}
18474	target := &ret
18475	if err := gensupport.DecodeResponse(target, res); err != nil {
18476		return nil, err
18477	}
18478	return ret, nil
18479	// {
18480	//   "description": "Sandbox only. Creates a test order.",
18481	//   "httpMethod": "POST",
18482	//   "id": "content.orders.createtestorder",
18483	//   "parameterOrder": [
18484	//     "merchantId"
18485	//   ],
18486	//   "parameters": {
18487	//     "merchantId": {
18488	//       "description": "The ID of the account that should manage the order. This cannot be a multi-client account.",
18489	//       "format": "uint64",
18490	//       "location": "path",
18491	//       "required": true,
18492	//       "type": "string"
18493	//     }
18494	//   },
18495	//   "path": "{merchantId}/testorders",
18496	//   "request": {
18497	//     "$ref": "OrdersCreateTestOrderRequest"
18498	//   },
18499	//   "response": {
18500	//     "$ref": "OrdersCreateTestOrderResponse"
18501	//   },
18502	//   "scopes": [
18503	//     "https://www.googleapis.com/auth/content"
18504	//   ]
18505	// }
18506
18507}
18508
18509// method id "content.orders.createtestreturn":
18510
18511type OrdersCreatetestreturnCall struct {
18512	s                             *APIService
18513	merchantId                    uint64
18514	orderId                       string
18515	orderscreatetestreturnrequest *OrdersCreateTestReturnRequest
18516	urlParams_                    gensupport.URLParams
18517	ctx_                          context.Context
18518	header_                       http.Header
18519}
18520
18521// Createtestreturn: Sandbox only. Creates a test return.
18522func (r *OrdersService) Createtestreturn(merchantId uint64, orderId string, orderscreatetestreturnrequest *OrdersCreateTestReturnRequest) *OrdersCreatetestreturnCall {
18523	c := &OrdersCreatetestreturnCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18524	c.merchantId = merchantId
18525	c.orderId = orderId
18526	c.orderscreatetestreturnrequest = orderscreatetestreturnrequest
18527	return c
18528}
18529
18530// Fields allows partial responses to be retrieved. See
18531// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18532// for more information.
18533func (c *OrdersCreatetestreturnCall) Fields(s ...googleapi.Field) *OrdersCreatetestreturnCall {
18534	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18535	return c
18536}
18537
18538// Context sets the context to be used in this call's Do method. Any
18539// pending HTTP request will be aborted if the provided context is
18540// canceled.
18541func (c *OrdersCreatetestreturnCall) Context(ctx context.Context) *OrdersCreatetestreturnCall {
18542	c.ctx_ = ctx
18543	return c
18544}
18545
18546// Header returns an http.Header that can be modified by the caller to
18547// add HTTP headers to the request.
18548func (c *OrdersCreatetestreturnCall) Header() http.Header {
18549	if c.header_ == nil {
18550		c.header_ = make(http.Header)
18551	}
18552	return c.header_
18553}
18554
18555func (c *OrdersCreatetestreturnCall) doRequest(alt string) (*http.Response, error) {
18556	reqHeaders := make(http.Header)
18557	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
18558	for k, v := range c.header_ {
18559		reqHeaders[k] = v
18560	}
18561	reqHeaders.Set("User-Agent", c.s.userAgent())
18562	var body io.Reader = nil
18563	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscreatetestreturnrequest)
18564	if err != nil {
18565		return nil, err
18566	}
18567	reqHeaders.Set("Content-Type", "application/json")
18568	c.urlParams_.Set("alt", alt)
18569	c.urlParams_.Set("prettyPrint", "false")
18570	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/testreturn")
18571	urls += "?" + c.urlParams_.Encode()
18572	req, err := http.NewRequest("POST", urls, body)
18573	if err != nil {
18574		return nil, err
18575	}
18576	req.Header = reqHeaders
18577	googleapi.Expand(req.URL, map[string]string{
18578		"merchantId": strconv.FormatUint(c.merchantId, 10),
18579		"orderId":    c.orderId,
18580	})
18581	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18582}
18583
18584// Do executes the "content.orders.createtestreturn" call.
18585// Exactly one of *OrdersCreateTestReturnResponse or error will be
18586// non-nil. Any non-2xx status code is an error. Response headers are in
18587// either *OrdersCreateTestReturnResponse.ServerResponse.Header or (if a
18588// response was returned at all) in error.(*googleapi.Error).Header. Use
18589// googleapi.IsNotModified to check whether the returned error was
18590// because http.StatusNotModified was returned.
18591func (c *OrdersCreatetestreturnCall) Do(opts ...googleapi.CallOption) (*OrdersCreateTestReturnResponse, error) {
18592	gensupport.SetOptions(c.urlParams_, opts...)
18593	res, err := c.doRequest("json")
18594	if res != nil && res.StatusCode == http.StatusNotModified {
18595		if res.Body != nil {
18596			res.Body.Close()
18597		}
18598		return nil, &googleapi.Error{
18599			Code:   res.StatusCode,
18600			Header: res.Header,
18601		}
18602	}
18603	if err != nil {
18604		return nil, err
18605	}
18606	defer googleapi.CloseBody(res)
18607	if err := googleapi.CheckResponse(res); err != nil {
18608		return nil, err
18609	}
18610	ret := &OrdersCreateTestReturnResponse{
18611		ServerResponse: googleapi.ServerResponse{
18612			Header:         res.Header,
18613			HTTPStatusCode: res.StatusCode,
18614		},
18615	}
18616	target := &ret
18617	if err := gensupport.DecodeResponse(target, res); err != nil {
18618		return nil, err
18619	}
18620	return ret, nil
18621	// {
18622	//   "description": "Sandbox only. Creates a test return.",
18623	//   "httpMethod": "POST",
18624	//   "id": "content.orders.createtestreturn",
18625	//   "parameterOrder": [
18626	//     "merchantId",
18627	//     "orderId"
18628	//   ],
18629	//   "parameters": {
18630	//     "merchantId": {
18631	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
18632	//       "format": "uint64",
18633	//       "location": "path",
18634	//       "required": true,
18635	//       "type": "string"
18636	//     },
18637	//     "orderId": {
18638	//       "description": "The ID of the order.",
18639	//       "location": "path",
18640	//       "required": true,
18641	//       "type": "string"
18642	//     }
18643	//   },
18644	//   "path": "{merchantId}/orders/{orderId}/testreturn",
18645	//   "request": {
18646	//     "$ref": "OrdersCreateTestReturnRequest"
18647	//   },
18648	//   "response": {
18649	//     "$ref": "OrdersCreateTestReturnResponse"
18650	//   },
18651	//   "scopes": [
18652	//     "https://www.googleapis.com/auth/content"
18653	//   ]
18654	// }
18655
18656}
18657
18658// method id "content.orders.get":
18659
18660type OrdersGetCall struct {
18661	s            *APIService
18662	merchantId   uint64
18663	orderId      string
18664	urlParams_   gensupport.URLParams
18665	ifNoneMatch_ string
18666	ctx_         context.Context
18667	header_      http.Header
18668}
18669
18670// Get: Retrieves an order from your Merchant Center account.
18671func (r *OrdersService) Get(merchantId uint64, orderId string) *OrdersGetCall {
18672	c := &OrdersGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18673	c.merchantId = merchantId
18674	c.orderId = orderId
18675	return c
18676}
18677
18678// Fields allows partial responses to be retrieved. See
18679// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18680// for more information.
18681func (c *OrdersGetCall) Fields(s ...googleapi.Field) *OrdersGetCall {
18682	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18683	return c
18684}
18685
18686// IfNoneMatch sets the optional parameter which makes the operation
18687// fail if the object's ETag matches the given value. This is useful for
18688// getting updates only after the object has changed since the last
18689// request. Use googleapi.IsNotModified to check whether the response
18690// error from Do is the result of In-None-Match.
18691func (c *OrdersGetCall) IfNoneMatch(entityTag string) *OrdersGetCall {
18692	c.ifNoneMatch_ = entityTag
18693	return c
18694}
18695
18696// Context sets the context to be used in this call's Do method. Any
18697// pending HTTP request will be aborted if the provided context is
18698// canceled.
18699func (c *OrdersGetCall) Context(ctx context.Context) *OrdersGetCall {
18700	c.ctx_ = ctx
18701	return c
18702}
18703
18704// Header returns an http.Header that can be modified by the caller to
18705// add HTTP headers to the request.
18706func (c *OrdersGetCall) Header() http.Header {
18707	if c.header_ == nil {
18708		c.header_ = make(http.Header)
18709	}
18710	return c.header_
18711}
18712
18713func (c *OrdersGetCall) doRequest(alt string) (*http.Response, error) {
18714	reqHeaders := make(http.Header)
18715	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
18716	for k, v := range c.header_ {
18717		reqHeaders[k] = v
18718	}
18719	reqHeaders.Set("User-Agent", c.s.userAgent())
18720	if c.ifNoneMatch_ != "" {
18721		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
18722	}
18723	var body io.Reader = nil
18724	c.urlParams_.Set("alt", alt)
18725	c.urlParams_.Set("prettyPrint", "false")
18726	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}")
18727	urls += "?" + c.urlParams_.Encode()
18728	req, err := http.NewRequest("GET", urls, body)
18729	if err != nil {
18730		return nil, err
18731	}
18732	req.Header = reqHeaders
18733	googleapi.Expand(req.URL, map[string]string{
18734		"merchantId": strconv.FormatUint(c.merchantId, 10),
18735		"orderId":    c.orderId,
18736	})
18737	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18738}
18739
18740// Do executes the "content.orders.get" call.
18741// Exactly one of *Order or error will be non-nil. Any non-2xx status
18742// code is an error. Response headers are in either
18743// *Order.ServerResponse.Header or (if a response was returned at all)
18744// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
18745// check whether the returned error was because http.StatusNotModified
18746// was returned.
18747func (c *OrdersGetCall) Do(opts ...googleapi.CallOption) (*Order, error) {
18748	gensupport.SetOptions(c.urlParams_, opts...)
18749	res, err := c.doRequest("json")
18750	if res != nil && res.StatusCode == http.StatusNotModified {
18751		if res.Body != nil {
18752			res.Body.Close()
18753		}
18754		return nil, &googleapi.Error{
18755			Code:   res.StatusCode,
18756			Header: res.Header,
18757		}
18758	}
18759	if err != nil {
18760		return nil, err
18761	}
18762	defer googleapi.CloseBody(res)
18763	if err := googleapi.CheckResponse(res); err != nil {
18764		return nil, err
18765	}
18766	ret := &Order{
18767		ServerResponse: googleapi.ServerResponse{
18768			Header:         res.Header,
18769			HTTPStatusCode: res.StatusCode,
18770		},
18771	}
18772	target := &ret
18773	if err := gensupport.DecodeResponse(target, res); err != nil {
18774		return nil, err
18775	}
18776	return ret, nil
18777	// {
18778	//   "description": "Retrieves an order from your Merchant Center account.",
18779	//   "httpMethod": "GET",
18780	//   "id": "content.orders.get",
18781	//   "parameterOrder": [
18782	//     "merchantId",
18783	//     "orderId"
18784	//   ],
18785	//   "parameters": {
18786	//     "merchantId": {
18787	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
18788	//       "format": "uint64",
18789	//       "location": "path",
18790	//       "required": true,
18791	//       "type": "string"
18792	//     },
18793	//     "orderId": {
18794	//       "description": "The ID of the order.",
18795	//       "location": "path",
18796	//       "required": true,
18797	//       "type": "string"
18798	//     }
18799	//   },
18800	//   "path": "{merchantId}/orders/{orderId}",
18801	//   "response": {
18802	//     "$ref": "Order"
18803	//   },
18804	//   "scopes": [
18805	//     "https://www.googleapis.com/auth/content"
18806	//   ]
18807	// }
18808
18809}
18810
18811// method id "content.orders.getbymerchantorderid":
18812
18813type OrdersGetbymerchantorderidCall struct {
18814	s               *APIService
18815	merchantId      uint64
18816	merchantOrderId string
18817	urlParams_      gensupport.URLParams
18818	ifNoneMatch_    string
18819	ctx_            context.Context
18820	header_         http.Header
18821}
18822
18823// Getbymerchantorderid: Retrieves an order using merchant order ID.
18824func (r *OrdersService) Getbymerchantorderid(merchantId uint64, merchantOrderId string) *OrdersGetbymerchantorderidCall {
18825	c := &OrdersGetbymerchantorderidCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18826	c.merchantId = merchantId
18827	c.merchantOrderId = merchantOrderId
18828	return c
18829}
18830
18831// Fields allows partial responses to be retrieved. See
18832// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18833// for more information.
18834func (c *OrdersGetbymerchantorderidCall) Fields(s ...googleapi.Field) *OrdersGetbymerchantorderidCall {
18835	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18836	return c
18837}
18838
18839// IfNoneMatch sets the optional parameter which makes the operation
18840// fail if the object's ETag matches the given value. This is useful for
18841// getting updates only after the object has changed since the last
18842// request. Use googleapi.IsNotModified to check whether the response
18843// error from Do is the result of In-None-Match.
18844func (c *OrdersGetbymerchantorderidCall) IfNoneMatch(entityTag string) *OrdersGetbymerchantorderidCall {
18845	c.ifNoneMatch_ = entityTag
18846	return c
18847}
18848
18849// Context sets the context to be used in this call's Do method. Any
18850// pending HTTP request will be aborted if the provided context is
18851// canceled.
18852func (c *OrdersGetbymerchantorderidCall) Context(ctx context.Context) *OrdersGetbymerchantorderidCall {
18853	c.ctx_ = ctx
18854	return c
18855}
18856
18857// Header returns an http.Header that can be modified by the caller to
18858// add HTTP headers to the request.
18859func (c *OrdersGetbymerchantorderidCall) Header() http.Header {
18860	if c.header_ == nil {
18861		c.header_ = make(http.Header)
18862	}
18863	return c.header_
18864}
18865
18866func (c *OrdersGetbymerchantorderidCall) doRequest(alt string) (*http.Response, error) {
18867	reqHeaders := make(http.Header)
18868	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
18869	for k, v := range c.header_ {
18870		reqHeaders[k] = v
18871	}
18872	reqHeaders.Set("User-Agent", c.s.userAgent())
18873	if c.ifNoneMatch_ != "" {
18874		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
18875	}
18876	var body io.Reader = nil
18877	c.urlParams_.Set("alt", alt)
18878	c.urlParams_.Set("prettyPrint", "false")
18879	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/ordersbymerchantid/{merchantOrderId}")
18880	urls += "?" + c.urlParams_.Encode()
18881	req, err := http.NewRequest("GET", urls, body)
18882	if err != nil {
18883		return nil, err
18884	}
18885	req.Header = reqHeaders
18886	googleapi.Expand(req.URL, map[string]string{
18887		"merchantId":      strconv.FormatUint(c.merchantId, 10),
18888		"merchantOrderId": c.merchantOrderId,
18889	})
18890	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18891}
18892
18893// Do executes the "content.orders.getbymerchantorderid" call.
18894// Exactly one of *OrdersGetByMerchantOrderIdResponse or error will be
18895// non-nil. Any non-2xx status code is an error. Response headers are in
18896// either *OrdersGetByMerchantOrderIdResponse.ServerResponse.Header or
18897// (if a response was returned at all) in
18898// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
18899// whether the returned error was because http.StatusNotModified was
18900// returned.
18901func (c *OrdersGetbymerchantorderidCall) Do(opts ...googleapi.CallOption) (*OrdersGetByMerchantOrderIdResponse, error) {
18902	gensupport.SetOptions(c.urlParams_, opts...)
18903	res, err := c.doRequest("json")
18904	if res != nil && res.StatusCode == http.StatusNotModified {
18905		if res.Body != nil {
18906			res.Body.Close()
18907		}
18908		return nil, &googleapi.Error{
18909			Code:   res.StatusCode,
18910			Header: res.Header,
18911		}
18912	}
18913	if err != nil {
18914		return nil, err
18915	}
18916	defer googleapi.CloseBody(res)
18917	if err := googleapi.CheckResponse(res); err != nil {
18918		return nil, err
18919	}
18920	ret := &OrdersGetByMerchantOrderIdResponse{
18921		ServerResponse: googleapi.ServerResponse{
18922			Header:         res.Header,
18923			HTTPStatusCode: res.StatusCode,
18924		},
18925	}
18926	target := &ret
18927	if err := gensupport.DecodeResponse(target, res); err != nil {
18928		return nil, err
18929	}
18930	return ret, nil
18931	// {
18932	//   "description": "Retrieves an order using merchant order ID.",
18933	//   "httpMethod": "GET",
18934	//   "id": "content.orders.getbymerchantorderid",
18935	//   "parameterOrder": [
18936	//     "merchantId",
18937	//     "merchantOrderId"
18938	//   ],
18939	//   "parameters": {
18940	//     "merchantId": {
18941	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
18942	//       "format": "uint64",
18943	//       "location": "path",
18944	//       "required": true,
18945	//       "type": "string"
18946	//     },
18947	//     "merchantOrderId": {
18948	//       "description": "The merchant order ID to be looked for.",
18949	//       "location": "path",
18950	//       "required": true,
18951	//       "type": "string"
18952	//     }
18953	//   },
18954	//   "path": "{merchantId}/ordersbymerchantid/{merchantOrderId}",
18955	//   "response": {
18956	//     "$ref": "OrdersGetByMerchantOrderIdResponse"
18957	//   },
18958	//   "scopes": [
18959	//     "https://www.googleapis.com/auth/content"
18960	//   ]
18961	// }
18962
18963}
18964
18965// method id "content.orders.gettestordertemplate":
18966
18967type OrdersGettestordertemplateCall struct {
18968	s            *APIService
18969	merchantId   uint64
18970	templateName string
18971	urlParams_   gensupport.URLParams
18972	ifNoneMatch_ string
18973	ctx_         context.Context
18974	header_      http.Header
18975}
18976
18977// Gettestordertemplate: Sandbox only. Retrieves an order template that
18978// can be used to quickly create a new order in sandbox.
18979func (r *OrdersService) Gettestordertemplate(merchantId uint64, templateName string) *OrdersGettestordertemplateCall {
18980	c := &OrdersGettestordertemplateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18981	c.merchantId = merchantId
18982	c.templateName = templateName
18983	return c
18984}
18985
18986// Country sets the optional parameter "country": The country of the
18987// template to retrieve. Defaults to US.
18988func (c *OrdersGettestordertemplateCall) Country(country string) *OrdersGettestordertemplateCall {
18989	c.urlParams_.Set("country", country)
18990	return c
18991}
18992
18993// Fields allows partial responses to be retrieved. See
18994// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18995// for more information.
18996func (c *OrdersGettestordertemplateCall) Fields(s ...googleapi.Field) *OrdersGettestordertemplateCall {
18997	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18998	return c
18999}
19000
19001// IfNoneMatch sets the optional parameter which makes the operation
19002// fail if the object's ETag matches the given value. This is useful for
19003// getting updates only after the object has changed since the last
19004// request. Use googleapi.IsNotModified to check whether the response
19005// error from Do is the result of In-None-Match.
19006func (c *OrdersGettestordertemplateCall) IfNoneMatch(entityTag string) *OrdersGettestordertemplateCall {
19007	c.ifNoneMatch_ = entityTag
19008	return c
19009}
19010
19011// Context sets the context to be used in this call's Do method. Any
19012// pending HTTP request will be aborted if the provided context is
19013// canceled.
19014func (c *OrdersGettestordertemplateCall) Context(ctx context.Context) *OrdersGettestordertemplateCall {
19015	c.ctx_ = ctx
19016	return c
19017}
19018
19019// Header returns an http.Header that can be modified by the caller to
19020// add HTTP headers to the request.
19021func (c *OrdersGettestordertemplateCall) Header() http.Header {
19022	if c.header_ == nil {
19023		c.header_ = make(http.Header)
19024	}
19025	return c.header_
19026}
19027
19028func (c *OrdersGettestordertemplateCall) doRequest(alt string) (*http.Response, error) {
19029	reqHeaders := make(http.Header)
19030	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
19031	for k, v := range c.header_ {
19032		reqHeaders[k] = v
19033	}
19034	reqHeaders.Set("User-Agent", c.s.userAgent())
19035	if c.ifNoneMatch_ != "" {
19036		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
19037	}
19038	var body io.Reader = nil
19039	c.urlParams_.Set("alt", alt)
19040	c.urlParams_.Set("prettyPrint", "false")
19041	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/testordertemplates/{templateName}")
19042	urls += "?" + c.urlParams_.Encode()
19043	req, err := http.NewRequest("GET", urls, body)
19044	if err != nil {
19045		return nil, err
19046	}
19047	req.Header = reqHeaders
19048	googleapi.Expand(req.URL, map[string]string{
19049		"merchantId":   strconv.FormatUint(c.merchantId, 10),
19050		"templateName": c.templateName,
19051	})
19052	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19053}
19054
19055// Do executes the "content.orders.gettestordertemplate" call.
19056// Exactly one of *OrdersGetTestOrderTemplateResponse or error will be
19057// non-nil. Any non-2xx status code is an error. Response headers are in
19058// either *OrdersGetTestOrderTemplateResponse.ServerResponse.Header or
19059// (if a response was returned at all) in
19060// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
19061// whether the returned error was because http.StatusNotModified was
19062// returned.
19063func (c *OrdersGettestordertemplateCall) Do(opts ...googleapi.CallOption) (*OrdersGetTestOrderTemplateResponse, error) {
19064	gensupport.SetOptions(c.urlParams_, opts...)
19065	res, err := c.doRequest("json")
19066	if res != nil && res.StatusCode == http.StatusNotModified {
19067		if res.Body != nil {
19068			res.Body.Close()
19069		}
19070		return nil, &googleapi.Error{
19071			Code:   res.StatusCode,
19072			Header: res.Header,
19073		}
19074	}
19075	if err != nil {
19076		return nil, err
19077	}
19078	defer googleapi.CloseBody(res)
19079	if err := googleapi.CheckResponse(res); err != nil {
19080		return nil, err
19081	}
19082	ret := &OrdersGetTestOrderTemplateResponse{
19083		ServerResponse: googleapi.ServerResponse{
19084			Header:         res.Header,
19085			HTTPStatusCode: res.StatusCode,
19086		},
19087	}
19088	target := &ret
19089	if err := gensupport.DecodeResponse(target, res); err != nil {
19090		return nil, err
19091	}
19092	return ret, nil
19093	// {
19094	//   "description": "Sandbox only. Retrieves an order template that can be used to quickly create a new order in sandbox.",
19095	//   "httpMethod": "GET",
19096	//   "id": "content.orders.gettestordertemplate",
19097	//   "parameterOrder": [
19098	//     "merchantId",
19099	//     "templateName"
19100	//   ],
19101	//   "parameters": {
19102	//     "country": {
19103	//       "description": "The country of the template to retrieve. Defaults to US.",
19104	//       "location": "query",
19105	//       "type": "string"
19106	//     },
19107	//     "merchantId": {
19108	//       "description": "The ID of the account that should manage the order. This cannot be a multi-client account.",
19109	//       "format": "uint64",
19110	//       "location": "path",
19111	//       "required": true,
19112	//       "type": "string"
19113	//     },
19114	//     "templateName": {
19115	//       "description": "The name of the template to retrieve.",
19116	//       "enum": [
19117	//         "template1",
19118	//         "template1a",
19119	//         "template1b",
19120	//         "template2",
19121	//         "template3"
19122	//       ],
19123	//       "enumDescriptions": [
19124	//         "",
19125	//         "",
19126	//         "",
19127	//         "",
19128	//         ""
19129	//       ],
19130	//       "location": "path",
19131	//       "required": true,
19132	//       "type": "string"
19133	//     }
19134	//   },
19135	//   "path": "{merchantId}/testordertemplates/{templateName}",
19136	//   "response": {
19137	//     "$ref": "OrdersGetTestOrderTemplateResponse"
19138	//   },
19139	//   "scopes": [
19140	//     "https://www.googleapis.com/auth/content"
19141	//   ]
19142	// }
19143
19144}
19145
19146// method id "content.orders.instorerefundlineitem":
19147
19148type OrdersInstorerefundlineitemCall struct {
19149	s                                  *APIService
19150	merchantId                         uint64
19151	orderId                            string
19152	ordersinstorerefundlineitemrequest *OrdersInStoreRefundLineItemRequest
19153	urlParams_                         gensupport.URLParams
19154	ctx_                               context.Context
19155	header_                            http.Header
19156}
19157
19158// Instorerefundlineitem: Deprecated. Notifies that item return and
19159// refund was handled directly by merchant outside of Google payments
19160// processing (e.g. cash refund done in store).
19161// Note: We recommend calling the returnrefundlineitem method to refund
19162// in-store returns. We will issue the refund directly to the customer.
19163// This helps to prevent possible differences arising between merchant
19164// and Google transaction records. We also recommend having the point of
19165// sale system communicate with Google to ensure that customers do not
19166// receive a double refund by first refunding via Google then via an
19167// in-store return.
19168func (r *OrdersService) Instorerefundlineitem(merchantId uint64, orderId string, ordersinstorerefundlineitemrequest *OrdersInStoreRefundLineItemRequest) *OrdersInstorerefundlineitemCall {
19169	c := &OrdersInstorerefundlineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19170	c.merchantId = merchantId
19171	c.orderId = orderId
19172	c.ordersinstorerefundlineitemrequest = ordersinstorerefundlineitemrequest
19173	return c
19174}
19175
19176// Fields allows partial responses to be retrieved. See
19177// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19178// for more information.
19179func (c *OrdersInstorerefundlineitemCall) Fields(s ...googleapi.Field) *OrdersInstorerefundlineitemCall {
19180	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19181	return c
19182}
19183
19184// Context sets the context to be used in this call's Do method. Any
19185// pending HTTP request will be aborted if the provided context is
19186// canceled.
19187func (c *OrdersInstorerefundlineitemCall) Context(ctx context.Context) *OrdersInstorerefundlineitemCall {
19188	c.ctx_ = ctx
19189	return c
19190}
19191
19192// Header returns an http.Header that can be modified by the caller to
19193// add HTTP headers to the request.
19194func (c *OrdersInstorerefundlineitemCall) Header() http.Header {
19195	if c.header_ == nil {
19196		c.header_ = make(http.Header)
19197	}
19198	return c.header_
19199}
19200
19201func (c *OrdersInstorerefundlineitemCall) doRequest(alt string) (*http.Response, error) {
19202	reqHeaders := make(http.Header)
19203	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
19204	for k, v := range c.header_ {
19205		reqHeaders[k] = v
19206	}
19207	reqHeaders.Set("User-Agent", c.s.userAgent())
19208	var body io.Reader = nil
19209	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersinstorerefundlineitemrequest)
19210	if err != nil {
19211		return nil, err
19212	}
19213	reqHeaders.Set("Content-Type", "application/json")
19214	c.urlParams_.Set("alt", alt)
19215	c.urlParams_.Set("prettyPrint", "false")
19216	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/inStoreRefundLineItem")
19217	urls += "?" + c.urlParams_.Encode()
19218	req, err := http.NewRequest("POST", urls, body)
19219	if err != nil {
19220		return nil, err
19221	}
19222	req.Header = reqHeaders
19223	googleapi.Expand(req.URL, map[string]string{
19224		"merchantId": strconv.FormatUint(c.merchantId, 10),
19225		"orderId":    c.orderId,
19226	})
19227	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19228}
19229
19230// Do executes the "content.orders.instorerefundlineitem" call.
19231// Exactly one of *OrdersInStoreRefundLineItemResponse or error will be
19232// non-nil. Any non-2xx status code is an error. Response headers are in
19233// either *OrdersInStoreRefundLineItemResponse.ServerResponse.Header or
19234// (if a response was returned at all) in
19235// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
19236// whether the returned error was because http.StatusNotModified was
19237// returned.
19238func (c *OrdersInstorerefundlineitemCall) Do(opts ...googleapi.CallOption) (*OrdersInStoreRefundLineItemResponse, error) {
19239	gensupport.SetOptions(c.urlParams_, opts...)
19240	res, err := c.doRequest("json")
19241	if res != nil && res.StatusCode == http.StatusNotModified {
19242		if res.Body != nil {
19243			res.Body.Close()
19244		}
19245		return nil, &googleapi.Error{
19246			Code:   res.StatusCode,
19247			Header: res.Header,
19248		}
19249	}
19250	if err != nil {
19251		return nil, err
19252	}
19253	defer googleapi.CloseBody(res)
19254	if err := googleapi.CheckResponse(res); err != nil {
19255		return nil, err
19256	}
19257	ret := &OrdersInStoreRefundLineItemResponse{
19258		ServerResponse: googleapi.ServerResponse{
19259			Header:         res.Header,
19260			HTTPStatusCode: res.StatusCode,
19261		},
19262	}
19263	target := &ret
19264	if err := gensupport.DecodeResponse(target, res); err != nil {
19265		return nil, err
19266	}
19267	return ret, nil
19268	// {
19269	//   "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).\nNote: 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.",
19270	//   "httpMethod": "POST",
19271	//   "id": "content.orders.instorerefundlineitem",
19272	//   "parameterOrder": [
19273	//     "merchantId",
19274	//     "orderId"
19275	//   ],
19276	//   "parameters": {
19277	//     "merchantId": {
19278	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
19279	//       "format": "uint64",
19280	//       "location": "path",
19281	//       "required": true,
19282	//       "type": "string"
19283	//     },
19284	//     "orderId": {
19285	//       "description": "The ID of the order.",
19286	//       "location": "path",
19287	//       "required": true,
19288	//       "type": "string"
19289	//     }
19290	//   },
19291	//   "path": "{merchantId}/orders/{orderId}/inStoreRefundLineItem",
19292	//   "request": {
19293	//     "$ref": "OrdersInStoreRefundLineItemRequest"
19294	//   },
19295	//   "response": {
19296	//     "$ref": "OrdersInStoreRefundLineItemResponse"
19297	//   },
19298	//   "scopes": [
19299	//     "https://www.googleapis.com/auth/content"
19300	//   ]
19301	// }
19302
19303}
19304
19305// method id "content.orders.list":
19306
19307type OrdersListCall struct {
19308	s            *APIService
19309	merchantId   uint64
19310	urlParams_   gensupport.URLParams
19311	ifNoneMatch_ string
19312	ctx_         context.Context
19313	header_      http.Header
19314}
19315
19316// List: Lists the orders in your Merchant Center account.
19317func (r *OrdersService) List(merchantId uint64) *OrdersListCall {
19318	c := &OrdersListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19319	c.merchantId = merchantId
19320	return c
19321}
19322
19323// Acknowledged sets the optional parameter "acknowledged": Obtains
19324// orders that match the acknowledgement status. When set to true,
19325// obtains orders that have been acknowledged. When false, obtains
19326// orders that have not been acknowledged.
19327// We recommend using this filter set to false, in conjunction with the
19328// acknowledge call, such that only un-acknowledged orders are returned.
19329func (c *OrdersListCall) Acknowledged(acknowledged bool) *OrdersListCall {
19330	c.urlParams_.Set("acknowledged", fmt.Sprint(acknowledged))
19331	return c
19332}
19333
19334// MaxResults sets the optional parameter "maxResults": The maximum
19335// number of orders to return in the response, used for paging. The
19336// default value is 25 orders per page, and the maximum allowed value is
19337// 250 orders per page.
19338func (c *OrdersListCall) MaxResults(maxResults int64) *OrdersListCall {
19339	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
19340	return c
19341}
19342
19343// OrderBy sets the optional parameter "orderBy": Order results by
19344// placement date in descending or ascending order.
19345//
19346// Acceptable values are:
19347// - placedDateAsc
19348// - placedDateDesc
19349func (c *OrdersListCall) OrderBy(orderBy string) *OrdersListCall {
19350	c.urlParams_.Set("orderBy", orderBy)
19351	return c
19352}
19353
19354// PageToken sets the optional parameter "pageToken": The token returned
19355// by the previous request.
19356func (c *OrdersListCall) PageToken(pageToken string) *OrdersListCall {
19357	c.urlParams_.Set("pageToken", pageToken)
19358	return c
19359}
19360
19361// PlacedDateEnd sets the optional parameter "placedDateEnd": Obtains
19362// orders placed before this date (exclusively), in ISO 8601 format.
19363func (c *OrdersListCall) PlacedDateEnd(placedDateEnd string) *OrdersListCall {
19364	c.urlParams_.Set("placedDateEnd", placedDateEnd)
19365	return c
19366}
19367
19368// PlacedDateStart sets the optional parameter "placedDateStart":
19369// Obtains orders placed after this date (inclusively), in ISO 8601
19370// format.
19371func (c *OrdersListCall) PlacedDateStart(placedDateStart string) *OrdersListCall {
19372	c.urlParams_.Set("placedDateStart", placedDateStart)
19373	return c
19374}
19375
19376// Statuses sets the optional parameter "statuses": Obtains orders that
19377// match any of the specified statuses. Please note that active is a
19378// shortcut for pendingShipment and partiallyShipped, and completed is a
19379// shortcut for shipped, partiallyDelivered, delivered,
19380// partiallyReturned, returned, and canceled.
19381//
19382// Possible values:
19383//   "active"
19384//   "canceled"
19385//   "completed"
19386//   "delivered"
19387//   "inProgress"
19388//   "partiallyDelivered"
19389//   "partiallyReturned"
19390//   "partiallyShipped"
19391//   "pendingShipment"
19392//   "returned"
19393//   "shipped"
19394func (c *OrdersListCall) Statuses(statuses ...string) *OrdersListCall {
19395	c.urlParams_.SetMulti("statuses", append([]string{}, statuses...))
19396	return c
19397}
19398
19399// Fields allows partial responses to be retrieved. See
19400// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19401// for more information.
19402func (c *OrdersListCall) Fields(s ...googleapi.Field) *OrdersListCall {
19403	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19404	return c
19405}
19406
19407// IfNoneMatch sets the optional parameter which makes the operation
19408// fail if the object's ETag matches the given value. This is useful for
19409// getting updates only after the object has changed since the last
19410// request. Use googleapi.IsNotModified to check whether the response
19411// error from Do is the result of In-None-Match.
19412func (c *OrdersListCall) IfNoneMatch(entityTag string) *OrdersListCall {
19413	c.ifNoneMatch_ = entityTag
19414	return c
19415}
19416
19417// Context sets the context to be used in this call's Do method. Any
19418// pending HTTP request will be aborted if the provided context is
19419// canceled.
19420func (c *OrdersListCall) Context(ctx context.Context) *OrdersListCall {
19421	c.ctx_ = ctx
19422	return c
19423}
19424
19425// Header returns an http.Header that can be modified by the caller to
19426// add HTTP headers to the request.
19427func (c *OrdersListCall) Header() http.Header {
19428	if c.header_ == nil {
19429		c.header_ = make(http.Header)
19430	}
19431	return c.header_
19432}
19433
19434func (c *OrdersListCall) doRequest(alt string) (*http.Response, error) {
19435	reqHeaders := make(http.Header)
19436	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
19437	for k, v := range c.header_ {
19438		reqHeaders[k] = v
19439	}
19440	reqHeaders.Set("User-Agent", c.s.userAgent())
19441	if c.ifNoneMatch_ != "" {
19442		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
19443	}
19444	var body io.Reader = nil
19445	c.urlParams_.Set("alt", alt)
19446	c.urlParams_.Set("prettyPrint", "false")
19447	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders")
19448	urls += "?" + c.urlParams_.Encode()
19449	req, err := http.NewRequest("GET", urls, body)
19450	if err != nil {
19451		return nil, err
19452	}
19453	req.Header = reqHeaders
19454	googleapi.Expand(req.URL, map[string]string{
19455		"merchantId": strconv.FormatUint(c.merchantId, 10),
19456	})
19457	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19458}
19459
19460// Do executes the "content.orders.list" call.
19461// Exactly one of *OrdersListResponse or error will be non-nil. Any
19462// non-2xx status code is an error. Response headers are in either
19463// *OrdersListResponse.ServerResponse.Header or (if a response was
19464// returned at all) in error.(*googleapi.Error).Header. Use
19465// googleapi.IsNotModified to check whether the returned error was
19466// because http.StatusNotModified was returned.
19467func (c *OrdersListCall) Do(opts ...googleapi.CallOption) (*OrdersListResponse, error) {
19468	gensupport.SetOptions(c.urlParams_, opts...)
19469	res, err := c.doRequest("json")
19470	if res != nil && res.StatusCode == http.StatusNotModified {
19471		if res.Body != nil {
19472			res.Body.Close()
19473		}
19474		return nil, &googleapi.Error{
19475			Code:   res.StatusCode,
19476			Header: res.Header,
19477		}
19478	}
19479	if err != nil {
19480		return nil, err
19481	}
19482	defer googleapi.CloseBody(res)
19483	if err := googleapi.CheckResponse(res); err != nil {
19484		return nil, err
19485	}
19486	ret := &OrdersListResponse{
19487		ServerResponse: googleapi.ServerResponse{
19488			Header:         res.Header,
19489			HTTPStatusCode: res.StatusCode,
19490		},
19491	}
19492	target := &ret
19493	if err := gensupport.DecodeResponse(target, res); err != nil {
19494		return nil, err
19495	}
19496	return ret, nil
19497	// {
19498	//   "description": "Lists the orders in your Merchant Center account.",
19499	//   "httpMethod": "GET",
19500	//   "id": "content.orders.list",
19501	//   "parameterOrder": [
19502	//     "merchantId"
19503	//   ],
19504	//   "parameters": {
19505	//     "acknowledged": {
19506	//       "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.\nWe recommend using this filter set to false, in conjunction with the acknowledge call, such that only un-acknowledged orders are returned.",
19507	//       "location": "query",
19508	//       "type": "boolean"
19509	//     },
19510	//     "maxResults": {
19511	//       "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.",
19512	//       "format": "uint32",
19513	//       "location": "query",
19514	//       "type": "integer"
19515	//     },
19516	//     "merchantId": {
19517	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
19518	//       "format": "uint64",
19519	//       "location": "path",
19520	//       "required": true,
19521	//       "type": "string"
19522	//     },
19523	//     "orderBy": {
19524	//       "description": "Order results by placement date in descending or ascending order.\n\nAcceptable values are:\n- placedDateAsc\n- placedDateDesc",
19525	//       "location": "query",
19526	//       "type": "string"
19527	//     },
19528	//     "pageToken": {
19529	//       "description": "The token returned by the previous request.",
19530	//       "location": "query",
19531	//       "type": "string"
19532	//     },
19533	//     "placedDateEnd": {
19534	//       "description": "Obtains orders placed before this date (exclusively), in ISO 8601 format.",
19535	//       "location": "query",
19536	//       "type": "string"
19537	//     },
19538	//     "placedDateStart": {
19539	//       "description": "Obtains orders placed after this date (inclusively), in ISO 8601 format.",
19540	//       "location": "query",
19541	//       "type": "string"
19542	//     },
19543	//     "statuses": {
19544	//       "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.",
19545	//       "enum": [
19546	//         "active",
19547	//         "canceled",
19548	//         "completed",
19549	//         "delivered",
19550	//         "inProgress",
19551	//         "partiallyDelivered",
19552	//         "partiallyReturned",
19553	//         "partiallyShipped",
19554	//         "pendingShipment",
19555	//         "returned",
19556	//         "shipped"
19557	//       ],
19558	//       "enumDescriptions": [
19559	//         "",
19560	//         "",
19561	//         "",
19562	//         "",
19563	//         "",
19564	//         "",
19565	//         "",
19566	//         "",
19567	//         "",
19568	//         "",
19569	//         ""
19570	//       ],
19571	//       "location": "query",
19572	//       "repeated": true,
19573	//       "type": "string"
19574	//     }
19575	//   },
19576	//   "path": "{merchantId}/orders",
19577	//   "response": {
19578	//     "$ref": "OrdersListResponse"
19579	//   },
19580	//   "scopes": [
19581	//     "https://www.googleapis.com/auth/content"
19582	//   ]
19583	// }
19584
19585}
19586
19587// Pages invokes f for each page of results.
19588// A non-nil error returned from f will halt the iteration.
19589// The provided context supersedes any context provided to the Context method.
19590func (c *OrdersListCall) Pages(ctx context.Context, f func(*OrdersListResponse) error) error {
19591	c.ctx_ = ctx
19592	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
19593	for {
19594		x, err := c.Do()
19595		if err != nil {
19596			return err
19597		}
19598		if err := f(x); err != nil {
19599			return err
19600		}
19601		if x.NextPageToken == "" {
19602			return nil
19603		}
19604		c.PageToken(x.NextPageToken)
19605	}
19606}
19607
19608// method id "content.orders.rejectreturnlineitem":
19609
19610type OrdersRejectreturnlineitemCall struct {
19611	s                                 *APIService
19612	merchantId                        uint64
19613	orderId                           string
19614	ordersrejectreturnlineitemrequest *OrdersRejectReturnLineItemRequest
19615	urlParams_                        gensupport.URLParams
19616	ctx_                              context.Context
19617	header_                           http.Header
19618}
19619
19620// Rejectreturnlineitem: Rejects return on an line item.
19621func (r *OrdersService) Rejectreturnlineitem(merchantId uint64, orderId string, ordersrejectreturnlineitemrequest *OrdersRejectReturnLineItemRequest) *OrdersRejectreturnlineitemCall {
19622	c := &OrdersRejectreturnlineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19623	c.merchantId = merchantId
19624	c.orderId = orderId
19625	c.ordersrejectreturnlineitemrequest = ordersrejectreturnlineitemrequest
19626	return c
19627}
19628
19629// Fields allows partial responses to be retrieved. See
19630// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19631// for more information.
19632func (c *OrdersRejectreturnlineitemCall) Fields(s ...googleapi.Field) *OrdersRejectreturnlineitemCall {
19633	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19634	return c
19635}
19636
19637// Context sets the context to be used in this call's Do method. Any
19638// pending HTTP request will be aborted if the provided context is
19639// canceled.
19640func (c *OrdersRejectreturnlineitemCall) Context(ctx context.Context) *OrdersRejectreturnlineitemCall {
19641	c.ctx_ = ctx
19642	return c
19643}
19644
19645// Header returns an http.Header that can be modified by the caller to
19646// add HTTP headers to the request.
19647func (c *OrdersRejectreturnlineitemCall) Header() http.Header {
19648	if c.header_ == nil {
19649		c.header_ = make(http.Header)
19650	}
19651	return c.header_
19652}
19653
19654func (c *OrdersRejectreturnlineitemCall) doRequest(alt string) (*http.Response, error) {
19655	reqHeaders := make(http.Header)
19656	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
19657	for k, v := range c.header_ {
19658		reqHeaders[k] = v
19659	}
19660	reqHeaders.Set("User-Agent", c.s.userAgent())
19661	var body io.Reader = nil
19662	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersrejectreturnlineitemrequest)
19663	if err != nil {
19664		return nil, err
19665	}
19666	reqHeaders.Set("Content-Type", "application/json")
19667	c.urlParams_.Set("alt", alt)
19668	c.urlParams_.Set("prettyPrint", "false")
19669	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/rejectReturnLineItem")
19670	urls += "?" + c.urlParams_.Encode()
19671	req, err := http.NewRequest("POST", urls, body)
19672	if err != nil {
19673		return nil, err
19674	}
19675	req.Header = reqHeaders
19676	googleapi.Expand(req.URL, map[string]string{
19677		"merchantId": strconv.FormatUint(c.merchantId, 10),
19678		"orderId":    c.orderId,
19679	})
19680	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19681}
19682
19683// Do executes the "content.orders.rejectreturnlineitem" call.
19684// Exactly one of *OrdersRejectReturnLineItemResponse or error will be
19685// non-nil. Any non-2xx status code is an error. Response headers are in
19686// either *OrdersRejectReturnLineItemResponse.ServerResponse.Header or
19687// (if a response was returned at all) in
19688// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
19689// whether the returned error was because http.StatusNotModified was
19690// returned.
19691func (c *OrdersRejectreturnlineitemCall) Do(opts ...googleapi.CallOption) (*OrdersRejectReturnLineItemResponse, error) {
19692	gensupport.SetOptions(c.urlParams_, opts...)
19693	res, err := c.doRequest("json")
19694	if res != nil && res.StatusCode == http.StatusNotModified {
19695		if res.Body != nil {
19696			res.Body.Close()
19697		}
19698		return nil, &googleapi.Error{
19699			Code:   res.StatusCode,
19700			Header: res.Header,
19701		}
19702	}
19703	if err != nil {
19704		return nil, err
19705	}
19706	defer googleapi.CloseBody(res)
19707	if err := googleapi.CheckResponse(res); err != nil {
19708		return nil, err
19709	}
19710	ret := &OrdersRejectReturnLineItemResponse{
19711		ServerResponse: googleapi.ServerResponse{
19712			Header:         res.Header,
19713			HTTPStatusCode: res.StatusCode,
19714		},
19715	}
19716	target := &ret
19717	if err := gensupport.DecodeResponse(target, res); err != nil {
19718		return nil, err
19719	}
19720	return ret, nil
19721	// {
19722	//   "description": "Rejects return on an line item.",
19723	//   "httpMethod": "POST",
19724	//   "id": "content.orders.rejectreturnlineitem",
19725	//   "parameterOrder": [
19726	//     "merchantId",
19727	//     "orderId"
19728	//   ],
19729	//   "parameters": {
19730	//     "merchantId": {
19731	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
19732	//       "format": "uint64",
19733	//       "location": "path",
19734	//       "required": true,
19735	//       "type": "string"
19736	//     },
19737	//     "orderId": {
19738	//       "description": "The ID of the order.",
19739	//       "location": "path",
19740	//       "required": true,
19741	//       "type": "string"
19742	//     }
19743	//   },
19744	//   "path": "{merchantId}/orders/{orderId}/rejectReturnLineItem",
19745	//   "request": {
19746	//     "$ref": "OrdersRejectReturnLineItemRequest"
19747	//   },
19748	//   "response": {
19749	//     "$ref": "OrdersRejectReturnLineItemResponse"
19750	//   },
19751	//   "scopes": [
19752	//     "https://www.googleapis.com/auth/content"
19753	//   ]
19754	// }
19755
19756}
19757
19758// method id "content.orders.returnrefundlineitem":
19759
19760type OrdersReturnrefundlineitemCall struct {
19761	s                                 *APIService
19762	merchantId                        uint64
19763	orderId                           string
19764	ordersreturnrefundlineitemrequest *OrdersReturnRefundLineItemRequest
19765	urlParams_                        gensupport.URLParams
19766	ctx_                              context.Context
19767	header_                           http.Header
19768}
19769
19770// Returnrefundlineitem: Returns and refunds a line item. Note that this
19771// method can only be called on fully shipped orders.
19772func (r *OrdersService) Returnrefundlineitem(merchantId uint64, orderId string, ordersreturnrefundlineitemrequest *OrdersReturnRefundLineItemRequest) *OrdersReturnrefundlineitemCall {
19773	c := &OrdersReturnrefundlineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19774	c.merchantId = merchantId
19775	c.orderId = orderId
19776	c.ordersreturnrefundlineitemrequest = ordersreturnrefundlineitemrequest
19777	return c
19778}
19779
19780// Fields allows partial responses to be retrieved. See
19781// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19782// for more information.
19783func (c *OrdersReturnrefundlineitemCall) Fields(s ...googleapi.Field) *OrdersReturnrefundlineitemCall {
19784	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19785	return c
19786}
19787
19788// Context sets the context to be used in this call's Do method. Any
19789// pending HTTP request will be aborted if the provided context is
19790// canceled.
19791func (c *OrdersReturnrefundlineitemCall) Context(ctx context.Context) *OrdersReturnrefundlineitemCall {
19792	c.ctx_ = ctx
19793	return c
19794}
19795
19796// Header returns an http.Header that can be modified by the caller to
19797// add HTTP headers to the request.
19798func (c *OrdersReturnrefundlineitemCall) Header() http.Header {
19799	if c.header_ == nil {
19800		c.header_ = make(http.Header)
19801	}
19802	return c.header_
19803}
19804
19805func (c *OrdersReturnrefundlineitemCall) doRequest(alt string) (*http.Response, error) {
19806	reqHeaders := make(http.Header)
19807	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
19808	for k, v := range c.header_ {
19809		reqHeaders[k] = v
19810	}
19811	reqHeaders.Set("User-Agent", c.s.userAgent())
19812	var body io.Reader = nil
19813	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersreturnrefundlineitemrequest)
19814	if err != nil {
19815		return nil, err
19816	}
19817	reqHeaders.Set("Content-Type", "application/json")
19818	c.urlParams_.Set("alt", alt)
19819	c.urlParams_.Set("prettyPrint", "false")
19820	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/returnRefundLineItem")
19821	urls += "?" + c.urlParams_.Encode()
19822	req, err := http.NewRequest("POST", urls, body)
19823	if err != nil {
19824		return nil, err
19825	}
19826	req.Header = reqHeaders
19827	googleapi.Expand(req.URL, map[string]string{
19828		"merchantId": strconv.FormatUint(c.merchantId, 10),
19829		"orderId":    c.orderId,
19830	})
19831	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19832}
19833
19834// Do executes the "content.orders.returnrefundlineitem" call.
19835// Exactly one of *OrdersReturnRefundLineItemResponse or error will be
19836// non-nil. Any non-2xx status code is an error. Response headers are in
19837// either *OrdersReturnRefundLineItemResponse.ServerResponse.Header or
19838// (if a response was returned at all) in
19839// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
19840// whether the returned error was because http.StatusNotModified was
19841// returned.
19842func (c *OrdersReturnrefundlineitemCall) Do(opts ...googleapi.CallOption) (*OrdersReturnRefundLineItemResponse, error) {
19843	gensupport.SetOptions(c.urlParams_, opts...)
19844	res, err := c.doRequest("json")
19845	if res != nil && res.StatusCode == http.StatusNotModified {
19846		if res.Body != nil {
19847			res.Body.Close()
19848		}
19849		return nil, &googleapi.Error{
19850			Code:   res.StatusCode,
19851			Header: res.Header,
19852		}
19853	}
19854	if err != nil {
19855		return nil, err
19856	}
19857	defer googleapi.CloseBody(res)
19858	if err := googleapi.CheckResponse(res); err != nil {
19859		return nil, err
19860	}
19861	ret := &OrdersReturnRefundLineItemResponse{
19862		ServerResponse: googleapi.ServerResponse{
19863			Header:         res.Header,
19864			HTTPStatusCode: res.StatusCode,
19865		},
19866	}
19867	target := &ret
19868	if err := gensupport.DecodeResponse(target, res); err != nil {
19869		return nil, err
19870	}
19871	return ret, nil
19872	// {
19873	//   "description": "Returns and refunds a line item. Note that this method can only be called on fully shipped orders.",
19874	//   "httpMethod": "POST",
19875	//   "id": "content.orders.returnrefundlineitem",
19876	//   "parameterOrder": [
19877	//     "merchantId",
19878	//     "orderId"
19879	//   ],
19880	//   "parameters": {
19881	//     "merchantId": {
19882	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
19883	//       "format": "uint64",
19884	//       "location": "path",
19885	//       "required": true,
19886	//       "type": "string"
19887	//     },
19888	//     "orderId": {
19889	//       "description": "The ID of the order.",
19890	//       "location": "path",
19891	//       "required": true,
19892	//       "type": "string"
19893	//     }
19894	//   },
19895	//   "path": "{merchantId}/orders/{orderId}/returnRefundLineItem",
19896	//   "request": {
19897	//     "$ref": "OrdersReturnRefundLineItemRequest"
19898	//   },
19899	//   "response": {
19900	//     "$ref": "OrdersReturnRefundLineItemResponse"
19901	//   },
19902	//   "scopes": [
19903	//     "https://www.googleapis.com/auth/content"
19904	//   ]
19905	// }
19906
19907}
19908
19909// method id "content.orders.setlineitemmetadata":
19910
19911type OrdersSetlineitemmetadataCall struct {
19912	s                                *APIService
19913	merchantId                       uint64
19914	orderId                          string
19915	orderssetlineitemmetadatarequest *OrdersSetLineItemMetadataRequest
19916	urlParams_                       gensupport.URLParams
19917	ctx_                             context.Context
19918	header_                          http.Header
19919}
19920
19921// Setlineitemmetadata: Sets (or overrides if it already exists)
19922// merchant provided annotations in the form of key-value pairs. A
19923// common use case would be to supply us with additional structured
19924// information about a line item that cannot be provided via other
19925// methods. Submitted key-value pairs can be retrieved as part of the
19926// orders resource.
19927func (r *OrdersService) Setlineitemmetadata(merchantId uint64, orderId string, orderssetlineitemmetadatarequest *OrdersSetLineItemMetadataRequest) *OrdersSetlineitemmetadataCall {
19928	c := &OrdersSetlineitemmetadataCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19929	c.merchantId = merchantId
19930	c.orderId = orderId
19931	c.orderssetlineitemmetadatarequest = orderssetlineitemmetadatarequest
19932	return c
19933}
19934
19935// Fields allows partial responses to be retrieved. See
19936// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19937// for more information.
19938func (c *OrdersSetlineitemmetadataCall) Fields(s ...googleapi.Field) *OrdersSetlineitemmetadataCall {
19939	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19940	return c
19941}
19942
19943// Context sets the context to be used in this call's Do method. Any
19944// pending HTTP request will be aborted if the provided context is
19945// canceled.
19946func (c *OrdersSetlineitemmetadataCall) Context(ctx context.Context) *OrdersSetlineitemmetadataCall {
19947	c.ctx_ = ctx
19948	return c
19949}
19950
19951// Header returns an http.Header that can be modified by the caller to
19952// add HTTP headers to the request.
19953func (c *OrdersSetlineitemmetadataCall) Header() http.Header {
19954	if c.header_ == nil {
19955		c.header_ = make(http.Header)
19956	}
19957	return c.header_
19958}
19959
19960func (c *OrdersSetlineitemmetadataCall) doRequest(alt string) (*http.Response, error) {
19961	reqHeaders := make(http.Header)
19962	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
19963	for k, v := range c.header_ {
19964		reqHeaders[k] = v
19965	}
19966	reqHeaders.Set("User-Agent", c.s.userAgent())
19967	var body io.Reader = nil
19968	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderssetlineitemmetadatarequest)
19969	if err != nil {
19970		return nil, err
19971	}
19972	reqHeaders.Set("Content-Type", "application/json")
19973	c.urlParams_.Set("alt", alt)
19974	c.urlParams_.Set("prettyPrint", "false")
19975	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/setLineItemMetadata")
19976	urls += "?" + c.urlParams_.Encode()
19977	req, err := http.NewRequest("POST", urls, body)
19978	if err != nil {
19979		return nil, err
19980	}
19981	req.Header = reqHeaders
19982	googleapi.Expand(req.URL, map[string]string{
19983		"merchantId": strconv.FormatUint(c.merchantId, 10),
19984		"orderId":    c.orderId,
19985	})
19986	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19987}
19988
19989// Do executes the "content.orders.setlineitemmetadata" call.
19990// Exactly one of *OrdersSetLineItemMetadataResponse or error will be
19991// non-nil. Any non-2xx status code is an error. Response headers are in
19992// either *OrdersSetLineItemMetadataResponse.ServerResponse.Header or
19993// (if a response was returned at all) in
19994// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
19995// whether the returned error was because http.StatusNotModified was
19996// returned.
19997func (c *OrdersSetlineitemmetadataCall) Do(opts ...googleapi.CallOption) (*OrdersSetLineItemMetadataResponse, error) {
19998	gensupport.SetOptions(c.urlParams_, opts...)
19999	res, err := c.doRequest("json")
20000	if res != nil && res.StatusCode == http.StatusNotModified {
20001		if res.Body != nil {
20002			res.Body.Close()
20003		}
20004		return nil, &googleapi.Error{
20005			Code:   res.StatusCode,
20006			Header: res.Header,
20007		}
20008	}
20009	if err != nil {
20010		return nil, err
20011	}
20012	defer googleapi.CloseBody(res)
20013	if err := googleapi.CheckResponse(res); err != nil {
20014		return nil, err
20015	}
20016	ret := &OrdersSetLineItemMetadataResponse{
20017		ServerResponse: googleapi.ServerResponse{
20018			Header:         res.Header,
20019			HTTPStatusCode: res.StatusCode,
20020		},
20021	}
20022	target := &ret
20023	if err := gensupport.DecodeResponse(target, res); err != nil {
20024		return nil, err
20025	}
20026	return ret, nil
20027	// {
20028	//   "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.",
20029	//   "httpMethod": "POST",
20030	//   "id": "content.orders.setlineitemmetadata",
20031	//   "parameterOrder": [
20032	//     "merchantId",
20033	//     "orderId"
20034	//   ],
20035	//   "parameters": {
20036	//     "merchantId": {
20037	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
20038	//       "format": "uint64",
20039	//       "location": "path",
20040	//       "required": true,
20041	//       "type": "string"
20042	//     },
20043	//     "orderId": {
20044	//       "description": "The ID of the order.",
20045	//       "location": "path",
20046	//       "required": true,
20047	//       "type": "string"
20048	//     }
20049	//   },
20050	//   "path": "{merchantId}/orders/{orderId}/setLineItemMetadata",
20051	//   "request": {
20052	//     "$ref": "OrdersSetLineItemMetadataRequest"
20053	//   },
20054	//   "response": {
20055	//     "$ref": "OrdersSetLineItemMetadataResponse"
20056	//   },
20057	//   "scopes": [
20058	//     "https://www.googleapis.com/auth/content"
20059	//   ]
20060	// }
20061
20062}
20063
20064// method id "content.orders.shiplineitems":
20065
20066type OrdersShiplineitemsCall struct {
20067	s                          *APIService
20068	merchantId                 uint64
20069	orderId                    string
20070	ordersshiplineitemsrequest *OrdersShipLineItemsRequest
20071	urlParams_                 gensupport.URLParams
20072	ctx_                       context.Context
20073	header_                    http.Header
20074}
20075
20076// Shiplineitems: Marks line item(s) as shipped.
20077func (r *OrdersService) Shiplineitems(merchantId uint64, orderId string, ordersshiplineitemsrequest *OrdersShipLineItemsRequest) *OrdersShiplineitemsCall {
20078	c := &OrdersShiplineitemsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20079	c.merchantId = merchantId
20080	c.orderId = orderId
20081	c.ordersshiplineitemsrequest = ordersshiplineitemsrequest
20082	return c
20083}
20084
20085// Fields allows partial responses to be retrieved. See
20086// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20087// for more information.
20088func (c *OrdersShiplineitemsCall) Fields(s ...googleapi.Field) *OrdersShiplineitemsCall {
20089	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20090	return c
20091}
20092
20093// Context sets the context to be used in this call's Do method. Any
20094// pending HTTP request will be aborted if the provided context is
20095// canceled.
20096func (c *OrdersShiplineitemsCall) Context(ctx context.Context) *OrdersShiplineitemsCall {
20097	c.ctx_ = ctx
20098	return c
20099}
20100
20101// Header returns an http.Header that can be modified by the caller to
20102// add HTTP headers to the request.
20103func (c *OrdersShiplineitemsCall) Header() http.Header {
20104	if c.header_ == nil {
20105		c.header_ = make(http.Header)
20106	}
20107	return c.header_
20108}
20109
20110func (c *OrdersShiplineitemsCall) doRequest(alt string) (*http.Response, error) {
20111	reqHeaders := make(http.Header)
20112	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
20113	for k, v := range c.header_ {
20114		reqHeaders[k] = v
20115	}
20116	reqHeaders.Set("User-Agent", c.s.userAgent())
20117	var body io.Reader = nil
20118	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersshiplineitemsrequest)
20119	if err != nil {
20120		return nil, err
20121	}
20122	reqHeaders.Set("Content-Type", "application/json")
20123	c.urlParams_.Set("alt", alt)
20124	c.urlParams_.Set("prettyPrint", "false")
20125	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/shipLineItems")
20126	urls += "?" + c.urlParams_.Encode()
20127	req, err := http.NewRequest("POST", urls, body)
20128	if err != nil {
20129		return nil, err
20130	}
20131	req.Header = reqHeaders
20132	googleapi.Expand(req.URL, map[string]string{
20133		"merchantId": strconv.FormatUint(c.merchantId, 10),
20134		"orderId":    c.orderId,
20135	})
20136	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20137}
20138
20139// Do executes the "content.orders.shiplineitems" call.
20140// Exactly one of *OrdersShipLineItemsResponse or error will be non-nil.
20141// Any non-2xx status code is an error. Response headers are in either
20142// *OrdersShipLineItemsResponse.ServerResponse.Header or (if a response
20143// was returned at all) in error.(*googleapi.Error).Header. Use
20144// googleapi.IsNotModified to check whether the returned error was
20145// because http.StatusNotModified was returned.
20146func (c *OrdersShiplineitemsCall) Do(opts ...googleapi.CallOption) (*OrdersShipLineItemsResponse, error) {
20147	gensupport.SetOptions(c.urlParams_, opts...)
20148	res, err := c.doRequest("json")
20149	if res != nil && res.StatusCode == http.StatusNotModified {
20150		if res.Body != nil {
20151			res.Body.Close()
20152		}
20153		return nil, &googleapi.Error{
20154			Code:   res.StatusCode,
20155			Header: res.Header,
20156		}
20157	}
20158	if err != nil {
20159		return nil, err
20160	}
20161	defer googleapi.CloseBody(res)
20162	if err := googleapi.CheckResponse(res); err != nil {
20163		return nil, err
20164	}
20165	ret := &OrdersShipLineItemsResponse{
20166		ServerResponse: googleapi.ServerResponse{
20167			Header:         res.Header,
20168			HTTPStatusCode: res.StatusCode,
20169		},
20170	}
20171	target := &ret
20172	if err := gensupport.DecodeResponse(target, res); err != nil {
20173		return nil, err
20174	}
20175	return ret, nil
20176	// {
20177	//   "description": "Marks line item(s) as shipped.",
20178	//   "httpMethod": "POST",
20179	//   "id": "content.orders.shiplineitems",
20180	//   "parameterOrder": [
20181	//     "merchantId",
20182	//     "orderId"
20183	//   ],
20184	//   "parameters": {
20185	//     "merchantId": {
20186	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
20187	//       "format": "uint64",
20188	//       "location": "path",
20189	//       "required": true,
20190	//       "type": "string"
20191	//     },
20192	//     "orderId": {
20193	//       "description": "The ID of the order.",
20194	//       "location": "path",
20195	//       "required": true,
20196	//       "type": "string"
20197	//     }
20198	//   },
20199	//   "path": "{merchantId}/orders/{orderId}/shipLineItems",
20200	//   "request": {
20201	//     "$ref": "OrdersShipLineItemsRequest"
20202	//   },
20203	//   "response": {
20204	//     "$ref": "OrdersShipLineItemsResponse"
20205	//   },
20206	//   "scopes": [
20207	//     "https://www.googleapis.com/auth/content"
20208	//   ]
20209	// }
20210
20211}
20212
20213// method id "content.orders.updatelineitemshippingdetails":
20214
20215type OrdersUpdatelineitemshippingdetailsCall struct {
20216	s                                          *APIService
20217	merchantId                                 uint64
20218	orderId                                    string
20219	ordersupdatelineitemshippingdetailsrequest *OrdersUpdateLineItemShippingDetailsRequest
20220	urlParams_                                 gensupport.URLParams
20221	ctx_                                       context.Context
20222	header_                                    http.Header
20223}
20224
20225// Updatelineitemshippingdetails: Updates ship by and delivery by dates
20226// for a line item.
20227func (r *OrdersService) Updatelineitemshippingdetails(merchantId uint64, orderId string, ordersupdatelineitemshippingdetailsrequest *OrdersUpdateLineItemShippingDetailsRequest) *OrdersUpdatelineitemshippingdetailsCall {
20228	c := &OrdersUpdatelineitemshippingdetailsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20229	c.merchantId = merchantId
20230	c.orderId = orderId
20231	c.ordersupdatelineitemshippingdetailsrequest = ordersupdatelineitemshippingdetailsrequest
20232	return c
20233}
20234
20235// Fields allows partial responses to be retrieved. See
20236// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20237// for more information.
20238func (c *OrdersUpdatelineitemshippingdetailsCall) Fields(s ...googleapi.Field) *OrdersUpdatelineitemshippingdetailsCall {
20239	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20240	return c
20241}
20242
20243// Context sets the context to be used in this call's Do method. Any
20244// pending HTTP request will be aborted if the provided context is
20245// canceled.
20246func (c *OrdersUpdatelineitemshippingdetailsCall) Context(ctx context.Context) *OrdersUpdatelineitemshippingdetailsCall {
20247	c.ctx_ = ctx
20248	return c
20249}
20250
20251// Header returns an http.Header that can be modified by the caller to
20252// add HTTP headers to the request.
20253func (c *OrdersUpdatelineitemshippingdetailsCall) Header() http.Header {
20254	if c.header_ == nil {
20255		c.header_ = make(http.Header)
20256	}
20257	return c.header_
20258}
20259
20260func (c *OrdersUpdatelineitemshippingdetailsCall) doRequest(alt string) (*http.Response, error) {
20261	reqHeaders := make(http.Header)
20262	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
20263	for k, v := range c.header_ {
20264		reqHeaders[k] = v
20265	}
20266	reqHeaders.Set("User-Agent", c.s.userAgent())
20267	var body io.Reader = nil
20268	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersupdatelineitemshippingdetailsrequest)
20269	if err != nil {
20270		return nil, err
20271	}
20272	reqHeaders.Set("Content-Type", "application/json")
20273	c.urlParams_.Set("alt", alt)
20274	c.urlParams_.Set("prettyPrint", "false")
20275	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/updateLineItemShippingDetails")
20276	urls += "?" + c.urlParams_.Encode()
20277	req, err := http.NewRequest("POST", urls, body)
20278	if err != nil {
20279		return nil, err
20280	}
20281	req.Header = reqHeaders
20282	googleapi.Expand(req.URL, map[string]string{
20283		"merchantId": strconv.FormatUint(c.merchantId, 10),
20284		"orderId":    c.orderId,
20285	})
20286	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20287}
20288
20289// Do executes the "content.orders.updatelineitemshippingdetails" call.
20290// Exactly one of *OrdersUpdateLineItemShippingDetailsResponse or error
20291// will be non-nil. Any non-2xx status code is an error. Response
20292// headers are in either
20293// *OrdersUpdateLineItemShippingDetailsResponse.ServerResponse.Header or
20294// (if a response was returned at all) in
20295// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
20296// whether the returned error was because http.StatusNotModified was
20297// returned.
20298func (c *OrdersUpdatelineitemshippingdetailsCall) Do(opts ...googleapi.CallOption) (*OrdersUpdateLineItemShippingDetailsResponse, error) {
20299	gensupport.SetOptions(c.urlParams_, opts...)
20300	res, err := c.doRequest("json")
20301	if res != nil && res.StatusCode == http.StatusNotModified {
20302		if res.Body != nil {
20303			res.Body.Close()
20304		}
20305		return nil, &googleapi.Error{
20306			Code:   res.StatusCode,
20307			Header: res.Header,
20308		}
20309	}
20310	if err != nil {
20311		return nil, err
20312	}
20313	defer googleapi.CloseBody(res)
20314	if err := googleapi.CheckResponse(res); err != nil {
20315		return nil, err
20316	}
20317	ret := &OrdersUpdateLineItemShippingDetailsResponse{
20318		ServerResponse: googleapi.ServerResponse{
20319			Header:         res.Header,
20320			HTTPStatusCode: res.StatusCode,
20321		},
20322	}
20323	target := &ret
20324	if err := gensupport.DecodeResponse(target, res); err != nil {
20325		return nil, err
20326	}
20327	return ret, nil
20328	// {
20329	//   "description": "Updates ship by and delivery by dates for a line item.",
20330	//   "httpMethod": "POST",
20331	//   "id": "content.orders.updatelineitemshippingdetails",
20332	//   "parameterOrder": [
20333	//     "merchantId",
20334	//     "orderId"
20335	//   ],
20336	//   "parameters": {
20337	//     "merchantId": {
20338	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
20339	//       "format": "uint64",
20340	//       "location": "path",
20341	//       "required": true,
20342	//       "type": "string"
20343	//     },
20344	//     "orderId": {
20345	//       "description": "The ID of the order.",
20346	//       "location": "path",
20347	//       "required": true,
20348	//       "type": "string"
20349	//     }
20350	//   },
20351	//   "path": "{merchantId}/orders/{orderId}/updateLineItemShippingDetails",
20352	//   "request": {
20353	//     "$ref": "OrdersUpdateLineItemShippingDetailsRequest"
20354	//   },
20355	//   "response": {
20356	//     "$ref": "OrdersUpdateLineItemShippingDetailsResponse"
20357	//   },
20358	//   "scopes": [
20359	//     "https://www.googleapis.com/auth/content"
20360	//   ]
20361	// }
20362
20363}
20364
20365// method id "content.orders.updatemerchantorderid":
20366
20367type OrdersUpdatemerchantorderidCall struct {
20368	s                                  *APIService
20369	merchantId                         uint64
20370	orderId                            string
20371	ordersupdatemerchantorderidrequest *OrdersUpdateMerchantOrderIdRequest
20372	urlParams_                         gensupport.URLParams
20373	ctx_                               context.Context
20374	header_                            http.Header
20375}
20376
20377// Updatemerchantorderid: Updates the merchant order ID for a given
20378// order.
20379func (r *OrdersService) Updatemerchantorderid(merchantId uint64, orderId string, ordersupdatemerchantorderidrequest *OrdersUpdateMerchantOrderIdRequest) *OrdersUpdatemerchantorderidCall {
20380	c := &OrdersUpdatemerchantorderidCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20381	c.merchantId = merchantId
20382	c.orderId = orderId
20383	c.ordersupdatemerchantorderidrequest = ordersupdatemerchantorderidrequest
20384	return c
20385}
20386
20387// Fields allows partial responses to be retrieved. See
20388// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20389// for more information.
20390func (c *OrdersUpdatemerchantorderidCall) Fields(s ...googleapi.Field) *OrdersUpdatemerchantorderidCall {
20391	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20392	return c
20393}
20394
20395// Context sets the context to be used in this call's Do method. Any
20396// pending HTTP request will be aborted if the provided context is
20397// canceled.
20398func (c *OrdersUpdatemerchantorderidCall) Context(ctx context.Context) *OrdersUpdatemerchantorderidCall {
20399	c.ctx_ = ctx
20400	return c
20401}
20402
20403// Header returns an http.Header that can be modified by the caller to
20404// add HTTP headers to the request.
20405func (c *OrdersUpdatemerchantorderidCall) Header() http.Header {
20406	if c.header_ == nil {
20407		c.header_ = make(http.Header)
20408	}
20409	return c.header_
20410}
20411
20412func (c *OrdersUpdatemerchantorderidCall) doRequest(alt string) (*http.Response, error) {
20413	reqHeaders := make(http.Header)
20414	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
20415	for k, v := range c.header_ {
20416		reqHeaders[k] = v
20417	}
20418	reqHeaders.Set("User-Agent", c.s.userAgent())
20419	var body io.Reader = nil
20420	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersupdatemerchantorderidrequest)
20421	if err != nil {
20422		return nil, err
20423	}
20424	reqHeaders.Set("Content-Type", "application/json")
20425	c.urlParams_.Set("alt", alt)
20426	c.urlParams_.Set("prettyPrint", "false")
20427	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/updateMerchantOrderId")
20428	urls += "?" + c.urlParams_.Encode()
20429	req, err := http.NewRequest("POST", urls, body)
20430	if err != nil {
20431		return nil, err
20432	}
20433	req.Header = reqHeaders
20434	googleapi.Expand(req.URL, map[string]string{
20435		"merchantId": strconv.FormatUint(c.merchantId, 10),
20436		"orderId":    c.orderId,
20437	})
20438	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20439}
20440
20441// Do executes the "content.orders.updatemerchantorderid" call.
20442// Exactly one of *OrdersUpdateMerchantOrderIdResponse or error will be
20443// non-nil. Any non-2xx status code is an error. Response headers are in
20444// either *OrdersUpdateMerchantOrderIdResponse.ServerResponse.Header or
20445// (if a response was returned at all) in
20446// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
20447// whether the returned error was because http.StatusNotModified was
20448// returned.
20449func (c *OrdersUpdatemerchantorderidCall) Do(opts ...googleapi.CallOption) (*OrdersUpdateMerchantOrderIdResponse, error) {
20450	gensupport.SetOptions(c.urlParams_, opts...)
20451	res, err := c.doRequest("json")
20452	if res != nil && res.StatusCode == http.StatusNotModified {
20453		if res.Body != nil {
20454			res.Body.Close()
20455		}
20456		return nil, &googleapi.Error{
20457			Code:   res.StatusCode,
20458			Header: res.Header,
20459		}
20460	}
20461	if err != nil {
20462		return nil, err
20463	}
20464	defer googleapi.CloseBody(res)
20465	if err := googleapi.CheckResponse(res); err != nil {
20466		return nil, err
20467	}
20468	ret := &OrdersUpdateMerchantOrderIdResponse{
20469		ServerResponse: googleapi.ServerResponse{
20470			Header:         res.Header,
20471			HTTPStatusCode: res.StatusCode,
20472		},
20473	}
20474	target := &ret
20475	if err := gensupport.DecodeResponse(target, res); err != nil {
20476		return nil, err
20477	}
20478	return ret, nil
20479	// {
20480	//   "description": "Updates the merchant order ID for a given order.",
20481	//   "httpMethod": "POST",
20482	//   "id": "content.orders.updatemerchantorderid",
20483	//   "parameterOrder": [
20484	//     "merchantId",
20485	//     "orderId"
20486	//   ],
20487	//   "parameters": {
20488	//     "merchantId": {
20489	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
20490	//       "format": "uint64",
20491	//       "location": "path",
20492	//       "required": true,
20493	//       "type": "string"
20494	//     },
20495	//     "orderId": {
20496	//       "description": "The ID of the order.",
20497	//       "location": "path",
20498	//       "required": true,
20499	//       "type": "string"
20500	//     }
20501	//   },
20502	//   "path": "{merchantId}/orders/{orderId}/updateMerchantOrderId",
20503	//   "request": {
20504	//     "$ref": "OrdersUpdateMerchantOrderIdRequest"
20505	//   },
20506	//   "response": {
20507	//     "$ref": "OrdersUpdateMerchantOrderIdResponse"
20508	//   },
20509	//   "scopes": [
20510	//     "https://www.googleapis.com/auth/content"
20511	//   ]
20512	// }
20513
20514}
20515
20516// method id "content.orders.updateshipment":
20517
20518type OrdersUpdateshipmentCall struct {
20519	s                           *APIService
20520	merchantId                  uint64
20521	orderId                     string
20522	ordersupdateshipmentrequest *OrdersUpdateShipmentRequest
20523	urlParams_                  gensupport.URLParams
20524	ctx_                        context.Context
20525	header_                     http.Header
20526}
20527
20528// Updateshipment: Updates a shipment's status, carrier, and/or tracking
20529// ID.
20530func (r *OrdersService) Updateshipment(merchantId uint64, orderId string, ordersupdateshipmentrequest *OrdersUpdateShipmentRequest) *OrdersUpdateshipmentCall {
20531	c := &OrdersUpdateshipmentCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20532	c.merchantId = merchantId
20533	c.orderId = orderId
20534	c.ordersupdateshipmentrequest = ordersupdateshipmentrequest
20535	return c
20536}
20537
20538// Fields allows partial responses to be retrieved. See
20539// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20540// for more information.
20541func (c *OrdersUpdateshipmentCall) Fields(s ...googleapi.Field) *OrdersUpdateshipmentCall {
20542	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20543	return c
20544}
20545
20546// Context sets the context to be used in this call's Do method. Any
20547// pending HTTP request will be aborted if the provided context is
20548// canceled.
20549func (c *OrdersUpdateshipmentCall) Context(ctx context.Context) *OrdersUpdateshipmentCall {
20550	c.ctx_ = ctx
20551	return c
20552}
20553
20554// Header returns an http.Header that can be modified by the caller to
20555// add HTTP headers to the request.
20556func (c *OrdersUpdateshipmentCall) Header() http.Header {
20557	if c.header_ == nil {
20558		c.header_ = make(http.Header)
20559	}
20560	return c.header_
20561}
20562
20563func (c *OrdersUpdateshipmentCall) doRequest(alt string) (*http.Response, error) {
20564	reqHeaders := make(http.Header)
20565	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
20566	for k, v := range c.header_ {
20567		reqHeaders[k] = v
20568	}
20569	reqHeaders.Set("User-Agent", c.s.userAgent())
20570	var body io.Reader = nil
20571	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersupdateshipmentrequest)
20572	if err != nil {
20573		return nil, err
20574	}
20575	reqHeaders.Set("Content-Type", "application/json")
20576	c.urlParams_.Set("alt", alt)
20577	c.urlParams_.Set("prettyPrint", "false")
20578	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/updateShipment")
20579	urls += "?" + c.urlParams_.Encode()
20580	req, err := http.NewRequest("POST", urls, body)
20581	if err != nil {
20582		return nil, err
20583	}
20584	req.Header = reqHeaders
20585	googleapi.Expand(req.URL, map[string]string{
20586		"merchantId": strconv.FormatUint(c.merchantId, 10),
20587		"orderId":    c.orderId,
20588	})
20589	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20590}
20591
20592// Do executes the "content.orders.updateshipment" call.
20593// Exactly one of *OrdersUpdateShipmentResponse or error will be
20594// non-nil. Any non-2xx status code is an error. Response headers are in
20595// either *OrdersUpdateShipmentResponse.ServerResponse.Header or (if a
20596// response was returned at all) in error.(*googleapi.Error).Header. Use
20597// googleapi.IsNotModified to check whether the returned error was
20598// because http.StatusNotModified was returned.
20599func (c *OrdersUpdateshipmentCall) Do(opts ...googleapi.CallOption) (*OrdersUpdateShipmentResponse, error) {
20600	gensupport.SetOptions(c.urlParams_, opts...)
20601	res, err := c.doRequest("json")
20602	if res != nil && res.StatusCode == http.StatusNotModified {
20603		if res.Body != nil {
20604			res.Body.Close()
20605		}
20606		return nil, &googleapi.Error{
20607			Code:   res.StatusCode,
20608			Header: res.Header,
20609		}
20610	}
20611	if err != nil {
20612		return nil, err
20613	}
20614	defer googleapi.CloseBody(res)
20615	if err := googleapi.CheckResponse(res); err != nil {
20616		return nil, err
20617	}
20618	ret := &OrdersUpdateShipmentResponse{
20619		ServerResponse: googleapi.ServerResponse{
20620			Header:         res.Header,
20621			HTTPStatusCode: res.StatusCode,
20622		},
20623	}
20624	target := &ret
20625	if err := gensupport.DecodeResponse(target, res); err != nil {
20626		return nil, err
20627	}
20628	return ret, nil
20629	// {
20630	//   "description": "Updates a shipment's status, carrier, and/or tracking ID.",
20631	//   "httpMethod": "POST",
20632	//   "id": "content.orders.updateshipment",
20633	//   "parameterOrder": [
20634	//     "merchantId",
20635	//     "orderId"
20636	//   ],
20637	//   "parameters": {
20638	//     "merchantId": {
20639	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
20640	//       "format": "uint64",
20641	//       "location": "path",
20642	//       "required": true,
20643	//       "type": "string"
20644	//     },
20645	//     "orderId": {
20646	//       "description": "The ID of the order.",
20647	//       "location": "path",
20648	//       "required": true,
20649	//       "type": "string"
20650	//     }
20651	//   },
20652	//   "path": "{merchantId}/orders/{orderId}/updateShipment",
20653	//   "request": {
20654	//     "$ref": "OrdersUpdateShipmentRequest"
20655	//   },
20656	//   "response": {
20657	//     "$ref": "OrdersUpdateShipmentResponse"
20658	//   },
20659	//   "scopes": [
20660	//     "https://www.googleapis.com/auth/content"
20661	//   ]
20662	// }
20663
20664}
20665
20666// method id "content.pos.custombatch":
20667
20668type PosCustombatchCall struct {
20669	s                     *APIService
20670	poscustombatchrequest *PosCustomBatchRequest
20671	urlParams_            gensupport.URLParams
20672	ctx_                  context.Context
20673	header_               http.Header
20674}
20675
20676// Custombatch: Batches multiple POS-related calls in a single request.
20677func (r *PosService) Custombatch(poscustombatchrequest *PosCustomBatchRequest) *PosCustombatchCall {
20678	c := &PosCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20679	c.poscustombatchrequest = poscustombatchrequest
20680	return c
20681}
20682
20683// Fields allows partial responses to be retrieved. See
20684// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20685// for more information.
20686func (c *PosCustombatchCall) Fields(s ...googleapi.Field) *PosCustombatchCall {
20687	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20688	return c
20689}
20690
20691// Context sets the context to be used in this call's Do method. Any
20692// pending HTTP request will be aborted if the provided context is
20693// canceled.
20694func (c *PosCustombatchCall) Context(ctx context.Context) *PosCustombatchCall {
20695	c.ctx_ = ctx
20696	return c
20697}
20698
20699// Header returns an http.Header that can be modified by the caller to
20700// add HTTP headers to the request.
20701func (c *PosCustombatchCall) Header() http.Header {
20702	if c.header_ == nil {
20703		c.header_ = make(http.Header)
20704	}
20705	return c.header_
20706}
20707
20708func (c *PosCustombatchCall) doRequest(alt string) (*http.Response, error) {
20709	reqHeaders := make(http.Header)
20710	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
20711	for k, v := range c.header_ {
20712		reqHeaders[k] = v
20713	}
20714	reqHeaders.Set("User-Agent", c.s.userAgent())
20715	var body io.Reader = nil
20716	body, err := googleapi.WithoutDataWrapper.JSONReader(c.poscustombatchrequest)
20717	if err != nil {
20718		return nil, err
20719	}
20720	reqHeaders.Set("Content-Type", "application/json")
20721	c.urlParams_.Set("alt", alt)
20722	c.urlParams_.Set("prettyPrint", "false")
20723	urls := googleapi.ResolveRelative(c.s.BasePath, "pos/batch")
20724	urls += "?" + c.urlParams_.Encode()
20725	req, err := http.NewRequest("POST", urls, body)
20726	if err != nil {
20727		return nil, err
20728	}
20729	req.Header = reqHeaders
20730	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20731}
20732
20733// Do executes the "content.pos.custombatch" call.
20734// Exactly one of *PosCustomBatchResponse or error will be non-nil. Any
20735// non-2xx status code is an error. Response headers are in either
20736// *PosCustomBatchResponse.ServerResponse.Header or (if a response was
20737// returned at all) in error.(*googleapi.Error).Header. Use
20738// googleapi.IsNotModified to check whether the returned error was
20739// because http.StatusNotModified was returned.
20740func (c *PosCustombatchCall) Do(opts ...googleapi.CallOption) (*PosCustomBatchResponse, error) {
20741	gensupport.SetOptions(c.urlParams_, opts...)
20742	res, err := c.doRequest("json")
20743	if res != nil && res.StatusCode == http.StatusNotModified {
20744		if res.Body != nil {
20745			res.Body.Close()
20746		}
20747		return nil, &googleapi.Error{
20748			Code:   res.StatusCode,
20749			Header: res.Header,
20750		}
20751	}
20752	if err != nil {
20753		return nil, err
20754	}
20755	defer googleapi.CloseBody(res)
20756	if err := googleapi.CheckResponse(res); err != nil {
20757		return nil, err
20758	}
20759	ret := &PosCustomBatchResponse{
20760		ServerResponse: googleapi.ServerResponse{
20761			Header:         res.Header,
20762			HTTPStatusCode: res.StatusCode,
20763		},
20764	}
20765	target := &ret
20766	if err := gensupport.DecodeResponse(target, res); err != nil {
20767		return nil, err
20768	}
20769	return ret, nil
20770	// {
20771	//   "description": "Batches multiple POS-related calls in a single request.",
20772	//   "httpMethod": "POST",
20773	//   "id": "content.pos.custombatch",
20774	//   "path": "pos/batch",
20775	//   "request": {
20776	//     "$ref": "PosCustomBatchRequest"
20777	//   },
20778	//   "response": {
20779	//     "$ref": "PosCustomBatchResponse"
20780	//   },
20781	//   "scopes": [
20782	//     "https://www.googleapis.com/auth/content"
20783	//   ]
20784	// }
20785
20786}
20787
20788// method id "content.pos.delete":
20789
20790type PosDeleteCall struct {
20791	s                *APIService
20792	merchantId       uint64
20793	targetMerchantId uint64
20794	storeCode        string
20795	urlParams_       gensupport.URLParams
20796	ctx_             context.Context
20797	header_          http.Header
20798}
20799
20800// Delete: Deletes a store for the given merchant.
20801func (r *PosService) Delete(merchantId uint64, targetMerchantId uint64, storeCode string) *PosDeleteCall {
20802	c := &PosDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20803	c.merchantId = merchantId
20804	c.targetMerchantId = targetMerchantId
20805	c.storeCode = storeCode
20806	return c
20807}
20808
20809// Fields allows partial responses to be retrieved. See
20810// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20811// for more information.
20812func (c *PosDeleteCall) Fields(s ...googleapi.Field) *PosDeleteCall {
20813	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20814	return c
20815}
20816
20817// Context sets the context to be used in this call's Do method. Any
20818// pending HTTP request will be aborted if the provided context is
20819// canceled.
20820func (c *PosDeleteCall) Context(ctx context.Context) *PosDeleteCall {
20821	c.ctx_ = ctx
20822	return c
20823}
20824
20825// Header returns an http.Header that can be modified by the caller to
20826// add HTTP headers to the request.
20827func (c *PosDeleteCall) Header() http.Header {
20828	if c.header_ == nil {
20829		c.header_ = make(http.Header)
20830	}
20831	return c.header_
20832}
20833
20834func (c *PosDeleteCall) doRequest(alt string) (*http.Response, error) {
20835	reqHeaders := make(http.Header)
20836	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
20837	for k, v := range c.header_ {
20838		reqHeaders[k] = v
20839	}
20840	reqHeaders.Set("User-Agent", c.s.userAgent())
20841	var body io.Reader = nil
20842	c.urlParams_.Set("alt", alt)
20843	c.urlParams_.Set("prettyPrint", "false")
20844	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/store/{storeCode}")
20845	urls += "?" + c.urlParams_.Encode()
20846	req, err := http.NewRequest("DELETE", urls, body)
20847	if err != nil {
20848		return nil, err
20849	}
20850	req.Header = reqHeaders
20851	googleapi.Expand(req.URL, map[string]string{
20852		"merchantId":       strconv.FormatUint(c.merchantId, 10),
20853		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
20854		"storeCode":        c.storeCode,
20855	})
20856	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20857}
20858
20859// Do executes the "content.pos.delete" call.
20860func (c *PosDeleteCall) Do(opts ...googleapi.CallOption) error {
20861	gensupport.SetOptions(c.urlParams_, opts...)
20862	res, err := c.doRequest("json")
20863	if err != nil {
20864		return err
20865	}
20866	defer googleapi.CloseBody(res)
20867	if err := googleapi.CheckResponse(res); err != nil {
20868		return err
20869	}
20870	return nil
20871	// {
20872	//   "description": "Deletes a store for the given merchant.",
20873	//   "httpMethod": "DELETE",
20874	//   "id": "content.pos.delete",
20875	//   "parameterOrder": [
20876	//     "merchantId",
20877	//     "targetMerchantId",
20878	//     "storeCode"
20879	//   ],
20880	//   "parameters": {
20881	//     "merchantId": {
20882	//       "description": "The ID of the POS or inventory data provider.",
20883	//       "format": "uint64",
20884	//       "location": "path",
20885	//       "required": true,
20886	//       "type": "string"
20887	//     },
20888	//     "storeCode": {
20889	//       "description": "A store code that is unique per merchant.",
20890	//       "location": "path",
20891	//       "required": true,
20892	//       "type": "string"
20893	//     },
20894	//     "targetMerchantId": {
20895	//       "description": "The ID of the target merchant.",
20896	//       "format": "uint64",
20897	//       "location": "path",
20898	//       "required": true,
20899	//       "type": "string"
20900	//     }
20901	//   },
20902	//   "path": "{merchantId}/pos/{targetMerchantId}/store/{storeCode}",
20903	//   "scopes": [
20904	//     "https://www.googleapis.com/auth/content"
20905	//   ]
20906	// }
20907
20908}
20909
20910// method id "content.pos.get":
20911
20912type PosGetCall struct {
20913	s                *APIService
20914	merchantId       uint64
20915	targetMerchantId uint64
20916	storeCode        string
20917	urlParams_       gensupport.URLParams
20918	ifNoneMatch_     string
20919	ctx_             context.Context
20920	header_          http.Header
20921}
20922
20923// Get: Retrieves information about the given store.
20924func (r *PosService) Get(merchantId uint64, targetMerchantId uint64, storeCode string) *PosGetCall {
20925	c := &PosGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20926	c.merchantId = merchantId
20927	c.targetMerchantId = targetMerchantId
20928	c.storeCode = storeCode
20929	return c
20930}
20931
20932// Fields allows partial responses to be retrieved. See
20933// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20934// for more information.
20935func (c *PosGetCall) Fields(s ...googleapi.Field) *PosGetCall {
20936	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20937	return c
20938}
20939
20940// IfNoneMatch sets the optional parameter which makes the operation
20941// fail if the object's ETag matches the given value. This is useful for
20942// getting updates only after the object has changed since the last
20943// request. Use googleapi.IsNotModified to check whether the response
20944// error from Do is the result of In-None-Match.
20945func (c *PosGetCall) IfNoneMatch(entityTag string) *PosGetCall {
20946	c.ifNoneMatch_ = entityTag
20947	return c
20948}
20949
20950// Context sets the context to be used in this call's Do method. Any
20951// pending HTTP request will be aborted if the provided context is
20952// canceled.
20953func (c *PosGetCall) Context(ctx context.Context) *PosGetCall {
20954	c.ctx_ = ctx
20955	return c
20956}
20957
20958// Header returns an http.Header that can be modified by the caller to
20959// add HTTP headers to the request.
20960func (c *PosGetCall) Header() http.Header {
20961	if c.header_ == nil {
20962		c.header_ = make(http.Header)
20963	}
20964	return c.header_
20965}
20966
20967func (c *PosGetCall) doRequest(alt string) (*http.Response, error) {
20968	reqHeaders := make(http.Header)
20969	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
20970	for k, v := range c.header_ {
20971		reqHeaders[k] = v
20972	}
20973	reqHeaders.Set("User-Agent", c.s.userAgent())
20974	if c.ifNoneMatch_ != "" {
20975		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
20976	}
20977	var body io.Reader = nil
20978	c.urlParams_.Set("alt", alt)
20979	c.urlParams_.Set("prettyPrint", "false")
20980	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/store/{storeCode}")
20981	urls += "?" + c.urlParams_.Encode()
20982	req, err := http.NewRequest("GET", urls, body)
20983	if err != nil {
20984		return nil, err
20985	}
20986	req.Header = reqHeaders
20987	googleapi.Expand(req.URL, map[string]string{
20988		"merchantId":       strconv.FormatUint(c.merchantId, 10),
20989		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
20990		"storeCode":        c.storeCode,
20991	})
20992	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20993}
20994
20995// Do executes the "content.pos.get" call.
20996// Exactly one of *PosStore or error will be non-nil. Any non-2xx status
20997// code is an error. Response headers are in either
20998// *PosStore.ServerResponse.Header or (if a response was returned at
20999// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
21000// to check whether the returned error was because
21001// http.StatusNotModified was returned.
21002func (c *PosGetCall) Do(opts ...googleapi.CallOption) (*PosStore, error) {
21003	gensupport.SetOptions(c.urlParams_, opts...)
21004	res, err := c.doRequest("json")
21005	if res != nil && res.StatusCode == http.StatusNotModified {
21006		if res.Body != nil {
21007			res.Body.Close()
21008		}
21009		return nil, &googleapi.Error{
21010			Code:   res.StatusCode,
21011			Header: res.Header,
21012		}
21013	}
21014	if err != nil {
21015		return nil, err
21016	}
21017	defer googleapi.CloseBody(res)
21018	if err := googleapi.CheckResponse(res); err != nil {
21019		return nil, err
21020	}
21021	ret := &PosStore{
21022		ServerResponse: googleapi.ServerResponse{
21023			Header:         res.Header,
21024			HTTPStatusCode: res.StatusCode,
21025		},
21026	}
21027	target := &ret
21028	if err := gensupport.DecodeResponse(target, res); err != nil {
21029		return nil, err
21030	}
21031	return ret, nil
21032	// {
21033	//   "description": "Retrieves information about the given store.",
21034	//   "httpMethod": "GET",
21035	//   "id": "content.pos.get",
21036	//   "parameterOrder": [
21037	//     "merchantId",
21038	//     "targetMerchantId",
21039	//     "storeCode"
21040	//   ],
21041	//   "parameters": {
21042	//     "merchantId": {
21043	//       "description": "The ID of the POS or inventory data provider.",
21044	//       "format": "uint64",
21045	//       "location": "path",
21046	//       "required": true,
21047	//       "type": "string"
21048	//     },
21049	//     "storeCode": {
21050	//       "description": "A store code that is unique per merchant.",
21051	//       "location": "path",
21052	//       "required": true,
21053	//       "type": "string"
21054	//     },
21055	//     "targetMerchantId": {
21056	//       "description": "The ID of the target merchant.",
21057	//       "format": "uint64",
21058	//       "location": "path",
21059	//       "required": true,
21060	//       "type": "string"
21061	//     }
21062	//   },
21063	//   "path": "{merchantId}/pos/{targetMerchantId}/store/{storeCode}",
21064	//   "response": {
21065	//     "$ref": "PosStore"
21066	//   },
21067	//   "scopes": [
21068	//     "https://www.googleapis.com/auth/content"
21069	//   ]
21070	// }
21071
21072}
21073
21074// method id "content.pos.insert":
21075
21076type PosInsertCall struct {
21077	s                *APIService
21078	merchantId       uint64
21079	targetMerchantId uint64
21080	posstore         *PosStore
21081	urlParams_       gensupport.URLParams
21082	ctx_             context.Context
21083	header_          http.Header
21084}
21085
21086// Insert: Creates a store for the given merchant.
21087func (r *PosService) Insert(merchantId uint64, targetMerchantId uint64, posstore *PosStore) *PosInsertCall {
21088	c := &PosInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21089	c.merchantId = merchantId
21090	c.targetMerchantId = targetMerchantId
21091	c.posstore = posstore
21092	return c
21093}
21094
21095// Fields allows partial responses to be retrieved. See
21096// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21097// for more information.
21098func (c *PosInsertCall) Fields(s ...googleapi.Field) *PosInsertCall {
21099	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21100	return c
21101}
21102
21103// Context sets the context to be used in this call's Do method. Any
21104// pending HTTP request will be aborted if the provided context is
21105// canceled.
21106func (c *PosInsertCall) Context(ctx context.Context) *PosInsertCall {
21107	c.ctx_ = ctx
21108	return c
21109}
21110
21111// Header returns an http.Header that can be modified by the caller to
21112// add HTTP headers to the request.
21113func (c *PosInsertCall) Header() http.Header {
21114	if c.header_ == nil {
21115		c.header_ = make(http.Header)
21116	}
21117	return c.header_
21118}
21119
21120func (c *PosInsertCall) doRequest(alt string) (*http.Response, error) {
21121	reqHeaders := make(http.Header)
21122	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
21123	for k, v := range c.header_ {
21124		reqHeaders[k] = v
21125	}
21126	reqHeaders.Set("User-Agent", c.s.userAgent())
21127	var body io.Reader = nil
21128	body, err := googleapi.WithoutDataWrapper.JSONReader(c.posstore)
21129	if err != nil {
21130		return nil, err
21131	}
21132	reqHeaders.Set("Content-Type", "application/json")
21133	c.urlParams_.Set("alt", alt)
21134	c.urlParams_.Set("prettyPrint", "false")
21135	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/store")
21136	urls += "?" + c.urlParams_.Encode()
21137	req, err := http.NewRequest("POST", urls, body)
21138	if err != nil {
21139		return nil, err
21140	}
21141	req.Header = reqHeaders
21142	googleapi.Expand(req.URL, map[string]string{
21143		"merchantId":       strconv.FormatUint(c.merchantId, 10),
21144		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
21145	})
21146	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21147}
21148
21149// Do executes the "content.pos.insert" call.
21150// Exactly one of *PosStore or error will be non-nil. Any non-2xx status
21151// code is an error. Response headers are in either
21152// *PosStore.ServerResponse.Header or (if a response was returned at
21153// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
21154// to check whether the returned error was because
21155// http.StatusNotModified was returned.
21156func (c *PosInsertCall) Do(opts ...googleapi.CallOption) (*PosStore, error) {
21157	gensupport.SetOptions(c.urlParams_, opts...)
21158	res, err := c.doRequest("json")
21159	if res != nil && res.StatusCode == http.StatusNotModified {
21160		if res.Body != nil {
21161			res.Body.Close()
21162		}
21163		return nil, &googleapi.Error{
21164			Code:   res.StatusCode,
21165			Header: res.Header,
21166		}
21167	}
21168	if err != nil {
21169		return nil, err
21170	}
21171	defer googleapi.CloseBody(res)
21172	if err := googleapi.CheckResponse(res); err != nil {
21173		return nil, err
21174	}
21175	ret := &PosStore{
21176		ServerResponse: googleapi.ServerResponse{
21177			Header:         res.Header,
21178			HTTPStatusCode: res.StatusCode,
21179		},
21180	}
21181	target := &ret
21182	if err := gensupport.DecodeResponse(target, res); err != nil {
21183		return nil, err
21184	}
21185	return ret, nil
21186	// {
21187	//   "description": "Creates a store for the given merchant.",
21188	//   "httpMethod": "POST",
21189	//   "id": "content.pos.insert",
21190	//   "parameterOrder": [
21191	//     "merchantId",
21192	//     "targetMerchantId"
21193	//   ],
21194	//   "parameters": {
21195	//     "merchantId": {
21196	//       "description": "The ID of the POS or inventory data provider.",
21197	//       "format": "uint64",
21198	//       "location": "path",
21199	//       "required": true,
21200	//       "type": "string"
21201	//     },
21202	//     "targetMerchantId": {
21203	//       "description": "The ID of the target merchant.",
21204	//       "format": "uint64",
21205	//       "location": "path",
21206	//       "required": true,
21207	//       "type": "string"
21208	//     }
21209	//   },
21210	//   "path": "{merchantId}/pos/{targetMerchantId}/store",
21211	//   "request": {
21212	//     "$ref": "PosStore"
21213	//   },
21214	//   "response": {
21215	//     "$ref": "PosStore"
21216	//   },
21217	//   "scopes": [
21218	//     "https://www.googleapis.com/auth/content"
21219	//   ]
21220	// }
21221
21222}
21223
21224// method id "content.pos.inventory":
21225
21226type PosInventoryCall struct {
21227	s                   *APIService
21228	merchantId          uint64
21229	targetMerchantId    uint64
21230	posinventoryrequest *PosInventoryRequest
21231	urlParams_          gensupport.URLParams
21232	ctx_                context.Context
21233	header_             http.Header
21234}
21235
21236// Inventory: Submit inventory for the given merchant.
21237func (r *PosService) Inventory(merchantId uint64, targetMerchantId uint64, posinventoryrequest *PosInventoryRequest) *PosInventoryCall {
21238	c := &PosInventoryCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21239	c.merchantId = merchantId
21240	c.targetMerchantId = targetMerchantId
21241	c.posinventoryrequest = posinventoryrequest
21242	return c
21243}
21244
21245// Fields allows partial responses to be retrieved. See
21246// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21247// for more information.
21248func (c *PosInventoryCall) Fields(s ...googleapi.Field) *PosInventoryCall {
21249	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21250	return c
21251}
21252
21253// Context sets the context to be used in this call's Do method. Any
21254// pending HTTP request will be aborted if the provided context is
21255// canceled.
21256func (c *PosInventoryCall) Context(ctx context.Context) *PosInventoryCall {
21257	c.ctx_ = ctx
21258	return c
21259}
21260
21261// Header returns an http.Header that can be modified by the caller to
21262// add HTTP headers to the request.
21263func (c *PosInventoryCall) Header() http.Header {
21264	if c.header_ == nil {
21265		c.header_ = make(http.Header)
21266	}
21267	return c.header_
21268}
21269
21270func (c *PosInventoryCall) doRequest(alt string) (*http.Response, error) {
21271	reqHeaders := make(http.Header)
21272	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
21273	for k, v := range c.header_ {
21274		reqHeaders[k] = v
21275	}
21276	reqHeaders.Set("User-Agent", c.s.userAgent())
21277	var body io.Reader = nil
21278	body, err := googleapi.WithoutDataWrapper.JSONReader(c.posinventoryrequest)
21279	if err != nil {
21280		return nil, err
21281	}
21282	reqHeaders.Set("Content-Type", "application/json")
21283	c.urlParams_.Set("alt", alt)
21284	c.urlParams_.Set("prettyPrint", "false")
21285	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/inventory")
21286	urls += "?" + c.urlParams_.Encode()
21287	req, err := http.NewRequest("POST", urls, body)
21288	if err != nil {
21289		return nil, err
21290	}
21291	req.Header = reqHeaders
21292	googleapi.Expand(req.URL, map[string]string{
21293		"merchantId":       strconv.FormatUint(c.merchantId, 10),
21294		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
21295	})
21296	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21297}
21298
21299// Do executes the "content.pos.inventory" call.
21300// Exactly one of *PosInventoryResponse or error will be non-nil. Any
21301// non-2xx status code is an error. Response headers are in either
21302// *PosInventoryResponse.ServerResponse.Header or (if a response was
21303// returned at all) in error.(*googleapi.Error).Header. Use
21304// googleapi.IsNotModified to check whether the returned error was
21305// because http.StatusNotModified was returned.
21306func (c *PosInventoryCall) Do(opts ...googleapi.CallOption) (*PosInventoryResponse, error) {
21307	gensupport.SetOptions(c.urlParams_, opts...)
21308	res, err := c.doRequest("json")
21309	if res != nil && res.StatusCode == http.StatusNotModified {
21310		if res.Body != nil {
21311			res.Body.Close()
21312		}
21313		return nil, &googleapi.Error{
21314			Code:   res.StatusCode,
21315			Header: res.Header,
21316		}
21317	}
21318	if err != nil {
21319		return nil, err
21320	}
21321	defer googleapi.CloseBody(res)
21322	if err := googleapi.CheckResponse(res); err != nil {
21323		return nil, err
21324	}
21325	ret := &PosInventoryResponse{
21326		ServerResponse: googleapi.ServerResponse{
21327			Header:         res.Header,
21328			HTTPStatusCode: res.StatusCode,
21329		},
21330	}
21331	target := &ret
21332	if err := gensupport.DecodeResponse(target, res); err != nil {
21333		return nil, err
21334	}
21335	return ret, nil
21336	// {
21337	//   "description": "Submit inventory for the given merchant.",
21338	//   "httpMethod": "POST",
21339	//   "id": "content.pos.inventory",
21340	//   "parameterOrder": [
21341	//     "merchantId",
21342	//     "targetMerchantId"
21343	//   ],
21344	//   "parameters": {
21345	//     "merchantId": {
21346	//       "description": "The ID of the POS or inventory data provider.",
21347	//       "format": "uint64",
21348	//       "location": "path",
21349	//       "required": true,
21350	//       "type": "string"
21351	//     },
21352	//     "targetMerchantId": {
21353	//       "description": "The ID of the target merchant.",
21354	//       "format": "uint64",
21355	//       "location": "path",
21356	//       "required": true,
21357	//       "type": "string"
21358	//     }
21359	//   },
21360	//   "path": "{merchantId}/pos/{targetMerchantId}/inventory",
21361	//   "request": {
21362	//     "$ref": "PosInventoryRequest"
21363	//   },
21364	//   "response": {
21365	//     "$ref": "PosInventoryResponse"
21366	//   },
21367	//   "scopes": [
21368	//     "https://www.googleapis.com/auth/content"
21369	//   ]
21370	// }
21371
21372}
21373
21374// method id "content.pos.list":
21375
21376type PosListCall struct {
21377	s                *APIService
21378	merchantId       uint64
21379	targetMerchantId uint64
21380	urlParams_       gensupport.URLParams
21381	ifNoneMatch_     string
21382	ctx_             context.Context
21383	header_          http.Header
21384}
21385
21386// List: Lists the stores of the target merchant.
21387func (r *PosService) List(merchantId uint64, targetMerchantId uint64) *PosListCall {
21388	c := &PosListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21389	c.merchantId = merchantId
21390	c.targetMerchantId = targetMerchantId
21391	return c
21392}
21393
21394// Fields allows partial responses to be retrieved. See
21395// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21396// for more information.
21397func (c *PosListCall) Fields(s ...googleapi.Field) *PosListCall {
21398	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21399	return c
21400}
21401
21402// IfNoneMatch sets the optional parameter which makes the operation
21403// fail if the object's ETag matches the given value. This is useful for
21404// getting updates only after the object has changed since the last
21405// request. Use googleapi.IsNotModified to check whether the response
21406// error from Do is the result of In-None-Match.
21407func (c *PosListCall) IfNoneMatch(entityTag string) *PosListCall {
21408	c.ifNoneMatch_ = entityTag
21409	return c
21410}
21411
21412// Context sets the context to be used in this call's Do method. Any
21413// pending HTTP request will be aborted if the provided context is
21414// canceled.
21415func (c *PosListCall) Context(ctx context.Context) *PosListCall {
21416	c.ctx_ = ctx
21417	return c
21418}
21419
21420// Header returns an http.Header that can be modified by the caller to
21421// add HTTP headers to the request.
21422func (c *PosListCall) Header() http.Header {
21423	if c.header_ == nil {
21424		c.header_ = make(http.Header)
21425	}
21426	return c.header_
21427}
21428
21429func (c *PosListCall) doRequest(alt string) (*http.Response, error) {
21430	reqHeaders := make(http.Header)
21431	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
21432	for k, v := range c.header_ {
21433		reqHeaders[k] = v
21434	}
21435	reqHeaders.Set("User-Agent", c.s.userAgent())
21436	if c.ifNoneMatch_ != "" {
21437		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
21438	}
21439	var body io.Reader = nil
21440	c.urlParams_.Set("alt", alt)
21441	c.urlParams_.Set("prettyPrint", "false")
21442	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/store")
21443	urls += "?" + c.urlParams_.Encode()
21444	req, err := http.NewRequest("GET", urls, body)
21445	if err != nil {
21446		return nil, err
21447	}
21448	req.Header = reqHeaders
21449	googleapi.Expand(req.URL, map[string]string{
21450		"merchantId":       strconv.FormatUint(c.merchantId, 10),
21451		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
21452	})
21453	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21454}
21455
21456// Do executes the "content.pos.list" call.
21457// Exactly one of *PosListResponse or error will be non-nil. Any non-2xx
21458// status code is an error. Response headers are in either
21459// *PosListResponse.ServerResponse.Header or (if a response was returned
21460// at all) in error.(*googleapi.Error).Header. Use
21461// googleapi.IsNotModified to check whether the returned error was
21462// because http.StatusNotModified was returned.
21463func (c *PosListCall) Do(opts ...googleapi.CallOption) (*PosListResponse, error) {
21464	gensupport.SetOptions(c.urlParams_, opts...)
21465	res, err := c.doRequest("json")
21466	if res != nil && res.StatusCode == http.StatusNotModified {
21467		if res.Body != nil {
21468			res.Body.Close()
21469		}
21470		return nil, &googleapi.Error{
21471			Code:   res.StatusCode,
21472			Header: res.Header,
21473		}
21474	}
21475	if err != nil {
21476		return nil, err
21477	}
21478	defer googleapi.CloseBody(res)
21479	if err := googleapi.CheckResponse(res); err != nil {
21480		return nil, err
21481	}
21482	ret := &PosListResponse{
21483		ServerResponse: googleapi.ServerResponse{
21484			Header:         res.Header,
21485			HTTPStatusCode: res.StatusCode,
21486		},
21487	}
21488	target := &ret
21489	if err := gensupport.DecodeResponse(target, res); err != nil {
21490		return nil, err
21491	}
21492	return ret, nil
21493	// {
21494	//   "description": "Lists the stores of the target merchant.",
21495	//   "httpMethod": "GET",
21496	//   "id": "content.pos.list",
21497	//   "parameterOrder": [
21498	//     "merchantId",
21499	//     "targetMerchantId"
21500	//   ],
21501	//   "parameters": {
21502	//     "merchantId": {
21503	//       "description": "The ID of the POS or inventory data provider.",
21504	//       "format": "uint64",
21505	//       "location": "path",
21506	//       "required": true,
21507	//       "type": "string"
21508	//     },
21509	//     "targetMerchantId": {
21510	//       "description": "The ID of the target merchant.",
21511	//       "format": "uint64",
21512	//       "location": "path",
21513	//       "required": true,
21514	//       "type": "string"
21515	//     }
21516	//   },
21517	//   "path": "{merchantId}/pos/{targetMerchantId}/store",
21518	//   "response": {
21519	//     "$ref": "PosListResponse"
21520	//   },
21521	//   "scopes": [
21522	//     "https://www.googleapis.com/auth/content"
21523	//   ]
21524	// }
21525
21526}
21527
21528// method id "content.pos.sale":
21529
21530type PosSaleCall struct {
21531	s                *APIService
21532	merchantId       uint64
21533	targetMerchantId uint64
21534	possalerequest   *PosSaleRequest
21535	urlParams_       gensupport.URLParams
21536	ctx_             context.Context
21537	header_          http.Header
21538}
21539
21540// Sale: Submit a sale event for the given merchant.
21541func (r *PosService) Sale(merchantId uint64, targetMerchantId uint64, possalerequest *PosSaleRequest) *PosSaleCall {
21542	c := &PosSaleCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21543	c.merchantId = merchantId
21544	c.targetMerchantId = targetMerchantId
21545	c.possalerequest = possalerequest
21546	return c
21547}
21548
21549// Fields allows partial responses to be retrieved. See
21550// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21551// for more information.
21552func (c *PosSaleCall) Fields(s ...googleapi.Field) *PosSaleCall {
21553	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21554	return c
21555}
21556
21557// Context sets the context to be used in this call's Do method. Any
21558// pending HTTP request will be aborted if the provided context is
21559// canceled.
21560func (c *PosSaleCall) Context(ctx context.Context) *PosSaleCall {
21561	c.ctx_ = ctx
21562	return c
21563}
21564
21565// Header returns an http.Header that can be modified by the caller to
21566// add HTTP headers to the request.
21567func (c *PosSaleCall) Header() http.Header {
21568	if c.header_ == nil {
21569		c.header_ = make(http.Header)
21570	}
21571	return c.header_
21572}
21573
21574func (c *PosSaleCall) doRequest(alt string) (*http.Response, error) {
21575	reqHeaders := make(http.Header)
21576	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
21577	for k, v := range c.header_ {
21578		reqHeaders[k] = v
21579	}
21580	reqHeaders.Set("User-Agent", c.s.userAgent())
21581	var body io.Reader = nil
21582	body, err := googleapi.WithoutDataWrapper.JSONReader(c.possalerequest)
21583	if err != nil {
21584		return nil, err
21585	}
21586	reqHeaders.Set("Content-Type", "application/json")
21587	c.urlParams_.Set("alt", alt)
21588	c.urlParams_.Set("prettyPrint", "false")
21589	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/sale")
21590	urls += "?" + c.urlParams_.Encode()
21591	req, err := http.NewRequest("POST", urls, body)
21592	if err != nil {
21593		return nil, err
21594	}
21595	req.Header = reqHeaders
21596	googleapi.Expand(req.URL, map[string]string{
21597		"merchantId":       strconv.FormatUint(c.merchantId, 10),
21598		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
21599	})
21600	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21601}
21602
21603// Do executes the "content.pos.sale" call.
21604// Exactly one of *PosSaleResponse or error will be non-nil. Any non-2xx
21605// status code is an error. Response headers are in either
21606// *PosSaleResponse.ServerResponse.Header or (if a response was returned
21607// at all) in error.(*googleapi.Error).Header. Use
21608// googleapi.IsNotModified to check whether the returned error was
21609// because http.StatusNotModified was returned.
21610func (c *PosSaleCall) Do(opts ...googleapi.CallOption) (*PosSaleResponse, error) {
21611	gensupport.SetOptions(c.urlParams_, opts...)
21612	res, err := c.doRequest("json")
21613	if res != nil && res.StatusCode == http.StatusNotModified {
21614		if res.Body != nil {
21615			res.Body.Close()
21616		}
21617		return nil, &googleapi.Error{
21618			Code:   res.StatusCode,
21619			Header: res.Header,
21620		}
21621	}
21622	if err != nil {
21623		return nil, err
21624	}
21625	defer googleapi.CloseBody(res)
21626	if err := googleapi.CheckResponse(res); err != nil {
21627		return nil, err
21628	}
21629	ret := &PosSaleResponse{
21630		ServerResponse: googleapi.ServerResponse{
21631			Header:         res.Header,
21632			HTTPStatusCode: res.StatusCode,
21633		},
21634	}
21635	target := &ret
21636	if err := gensupport.DecodeResponse(target, res); err != nil {
21637		return nil, err
21638	}
21639	return ret, nil
21640	// {
21641	//   "description": "Submit a sale event for the given merchant.",
21642	//   "httpMethod": "POST",
21643	//   "id": "content.pos.sale",
21644	//   "parameterOrder": [
21645	//     "merchantId",
21646	//     "targetMerchantId"
21647	//   ],
21648	//   "parameters": {
21649	//     "merchantId": {
21650	//       "description": "The ID of the POS or inventory data provider.",
21651	//       "format": "uint64",
21652	//       "location": "path",
21653	//       "required": true,
21654	//       "type": "string"
21655	//     },
21656	//     "targetMerchantId": {
21657	//       "description": "The ID of the target merchant.",
21658	//       "format": "uint64",
21659	//       "location": "path",
21660	//       "required": true,
21661	//       "type": "string"
21662	//     }
21663	//   },
21664	//   "path": "{merchantId}/pos/{targetMerchantId}/sale",
21665	//   "request": {
21666	//     "$ref": "PosSaleRequest"
21667	//   },
21668	//   "response": {
21669	//     "$ref": "PosSaleResponse"
21670	//   },
21671	//   "scopes": [
21672	//     "https://www.googleapis.com/auth/content"
21673	//   ]
21674	// }
21675
21676}
21677
21678// method id "content.products.custombatch":
21679
21680type ProductsCustombatchCall struct {
21681	s                          *APIService
21682	productscustombatchrequest *ProductsCustomBatchRequest
21683	urlParams_                 gensupport.URLParams
21684	ctx_                       context.Context
21685	header_                    http.Header
21686}
21687
21688// Custombatch: Retrieves, inserts, and deletes multiple products in a
21689// single request.
21690func (r *ProductsService) Custombatch(productscustombatchrequest *ProductsCustomBatchRequest) *ProductsCustombatchCall {
21691	c := &ProductsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21692	c.productscustombatchrequest = productscustombatchrequest
21693	return c
21694}
21695
21696// Fields allows partial responses to be retrieved. See
21697// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21698// for more information.
21699func (c *ProductsCustombatchCall) Fields(s ...googleapi.Field) *ProductsCustombatchCall {
21700	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21701	return c
21702}
21703
21704// Context sets the context to be used in this call's Do method. Any
21705// pending HTTP request will be aborted if the provided context is
21706// canceled.
21707func (c *ProductsCustombatchCall) Context(ctx context.Context) *ProductsCustombatchCall {
21708	c.ctx_ = ctx
21709	return c
21710}
21711
21712// Header returns an http.Header that can be modified by the caller to
21713// add HTTP headers to the request.
21714func (c *ProductsCustombatchCall) Header() http.Header {
21715	if c.header_ == nil {
21716		c.header_ = make(http.Header)
21717	}
21718	return c.header_
21719}
21720
21721func (c *ProductsCustombatchCall) doRequest(alt string) (*http.Response, error) {
21722	reqHeaders := make(http.Header)
21723	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
21724	for k, v := range c.header_ {
21725		reqHeaders[k] = v
21726	}
21727	reqHeaders.Set("User-Agent", c.s.userAgent())
21728	var body io.Reader = nil
21729	body, err := googleapi.WithoutDataWrapper.JSONReader(c.productscustombatchrequest)
21730	if err != nil {
21731		return nil, err
21732	}
21733	reqHeaders.Set("Content-Type", "application/json")
21734	c.urlParams_.Set("alt", alt)
21735	c.urlParams_.Set("prettyPrint", "false")
21736	urls := googleapi.ResolveRelative(c.s.BasePath, "products/batch")
21737	urls += "?" + c.urlParams_.Encode()
21738	req, err := http.NewRequest("POST", urls, body)
21739	if err != nil {
21740		return nil, err
21741	}
21742	req.Header = reqHeaders
21743	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21744}
21745
21746// Do executes the "content.products.custombatch" call.
21747// Exactly one of *ProductsCustomBatchResponse or error will be non-nil.
21748// Any non-2xx status code is an error. Response headers are in either
21749// *ProductsCustomBatchResponse.ServerResponse.Header or (if a response
21750// was returned at all) in error.(*googleapi.Error).Header. Use
21751// googleapi.IsNotModified to check whether the returned error was
21752// because http.StatusNotModified was returned.
21753func (c *ProductsCustombatchCall) Do(opts ...googleapi.CallOption) (*ProductsCustomBatchResponse, error) {
21754	gensupport.SetOptions(c.urlParams_, opts...)
21755	res, err := c.doRequest("json")
21756	if res != nil && res.StatusCode == http.StatusNotModified {
21757		if res.Body != nil {
21758			res.Body.Close()
21759		}
21760		return nil, &googleapi.Error{
21761			Code:   res.StatusCode,
21762			Header: res.Header,
21763		}
21764	}
21765	if err != nil {
21766		return nil, err
21767	}
21768	defer googleapi.CloseBody(res)
21769	if err := googleapi.CheckResponse(res); err != nil {
21770		return nil, err
21771	}
21772	ret := &ProductsCustomBatchResponse{
21773		ServerResponse: googleapi.ServerResponse{
21774			Header:         res.Header,
21775			HTTPStatusCode: res.StatusCode,
21776		},
21777	}
21778	target := &ret
21779	if err := gensupport.DecodeResponse(target, res); err != nil {
21780		return nil, err
21781	}
21782	return ret, nil
21783	// {
21784	//   "description": "Retrieves, inserts, and deletes multiple products in a single request.",
21785	//   "httpMethod": "POST",
21786	//   "id": "content.products.custombatch",
21787	//   "path": "products/batch",
21788	//   "request": {
21789	//     "$ref": "ProductsCustomBatchRequest"
21790	//   },
21791	//   "response": {
21792	//     "$ref": "ProductsCustomBatchResponse"
21793	//   },
21794	//   "scopes": [
21795	//     "https://www.googleapis.com/auth/content"
21796	//   ]
21797	// }
21798
21799}
21800
21801// method id "content.products.delete":
21802
21803type ProductsDeleteCall struct {
21804	s          *APIService
21805	merchantId uint64
21806	productId  string
21807	urlParams_ gensupport.URLParams
21808	ctx_       context.Context
21809	header_    http.Header
21810}
21811
21812// Delete: Deletes a product from your Merchant Center account.
21813func (r *ProductsService) Delete(merchantId uint64, productId string) *ProductsDeleteCall {
21814	c := &ProductsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21815	c.merchantId = merchantId
21816	c.productId = productId
21817	return c
21818}
21819
21820// FeedId sets the optional parameter "feedId": The Content API
21821// Supplemental Feed ID.
21822func (c *ProductsDeleteCall) FeedId(feedId uint64) *ProductsDeleteCall {
21823	c.urlParams_.Set("feedId", fmt.Sprint(feedId))
21824	return c
21825}
21826
21827// Fields allows partial responses to be retrieved. See
21828// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21829// for more information.
21830func (c *ProductsDeleteCall) Fields(s ...googleapi.Field) *ProductsDeleteCall {
21831	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21832	return c
21833}
21834
21835// Context sets the context to be used in this call's Do method. Any
21836// pending HTTP request will be aborted if the provided context is
21837// canceled.
21838func (c *ProductsDeleteCall) Context(ctx context.Context) *ProductsDeleteCall {
21839	c.ctx_ = ctx
21840	return c
21841}
21842
21843// Header returns an http.Header that can be modified by the caller to
21844// add HTTP headers to the request.
21845func (c *ProductsDeleteCall) Header() http.Header {
21846	if c.header_ == nil {
21847		c.header_ = make(http.Header)
21848	}
21849	return c.header_
21850}
21851
21852func (c *ProductsDeleteCall) doRequest(alt string) (*http.Response, error) {
21853	reqHeaders := make(http.Header)
21854	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
21855	for k, v := range c.header_ {
21856		reqHeaders[k] = v
21857	}
21858	reqHeaders.Set("User-Agent", c.s.userAgent())
21859	var body io.Reader = nil
21860	c.urlParams_.Set("alt", alt)
21861	c.urlParams_.Set("prettyPrint", "false")
21862	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products/{productId}")
21863	urls += "?" + c.urlParams_.Encode()
21864	req, err := http.NewRequest("DELETE", urls, body)
21865	if err != nil {
21866		return nil, err
21867	}
21868	req.Header = reqHeaders
21869	googleapi.Expand(req.URL, map[string]string{
21870		"merchantId": strconv.FormatUint(c.merchantId, 10),
21871		"productId":  c.productId,
21872	})
21873	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21874}
21875
21876// Do executes the "content.products.delete" call.
21877func (c *ProductsDeleteCall) Do(opts ...googleapi.CallOption) error {
21878	gensupport.SetOptions(c.urlParams_, opts...)
21879	res, err := c.doRequest("json")
21880	if err != nil {
21881		return err
21882	}
21883	defer googleapi.CloseBody(res)
21884	if err := googleapi.CheckResponse(res); err != nil {
21885		return err
21886	}
21887	return nil
21888	// {
21889	//   "description": "Deletes a product from your Merchant Center account.",
21890	//   "httpMethod": "DELETE",
21891	//   "id": "content.products.delete",
21892	//   "parameterOrder": [
21893	//     "merchantId",
21894	//     "productId"
21895	//   ],
21896	//   "parameters": {
21897	//     "feedId": {
21898	//       "description": "The Content API Supplemental Feed ID.",
21899	//       "format": "uint64",
21900	//       "location": "query",
21901	//       "type": "string"
21902	//     },
21903	//     "merchantId": {
21904	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
21905	//       "format": "uint64",
21906	//       "location": "path",
21907	//       "required": true,
21908	//       "type": "string"
21909	//     },
21910	//     "productId": {
21911	//       "description": "The REST ID of the product.",
21912	//       "location": "path",
21913	//       "required": true,
21914	//       "type": "string"
21915	//     }
21916	//   },
21917	//   "path": "{merchantId}/products/{productId}",
21918	//   "scopes": [
21919	//     "https://www.googleapis.com/auth/content"
21920	//   ]
21921	// }
21922
21923}
21924
21925// method id "content.products.get":
21926
21927type ProductsGetCall struct {
21928	s            *APIService
21929	merchantId   uint64
21930	productId    string
21931	urlParams_   gensupport.URLParams
21932	ifNoneMatch_ string
21933	ctx_         context.Context
21934	header_      http.Header
21935}
21936
21937// Get: Retrieves a product from your Merchant Center account.
21938func (r *ProductsService) Get(merchantId uint64, productId string) *ProductsGetCall {
21939	c := &ProductsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21940	c.merchantId = merchantId
21941	c.productId = productId
21942	return c
21943}
21944
21945// Fields allows partial responses to be retrieved. See
21946// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21947// for more information.
21948func (c *ProductsGetCall) Fields(s ...googleapi.Field) *ProductsGetCall {
21949	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21950	return c
21951}
21952
21953// IfNoneMatch sets the optional parameter which makes the operation
21954// fail if the object's ETag matches the given value. This is useful for
21955// getting updates only after the object has changed since the last
21956// request. Use googleapi.IsNotModified to check whether the response
21957// error from Do is the result of In-None-Match.
21958func (c *ProductsGetCall) IfNoneMatch(entityTag string) *ProductsGetCall {
21959	c.ifNoneMatch_ = entityTag
21960	return c
21961}
21962
21963// Context sets the context to be used in this call's Do method. Any
21964// pending HTTP request will be aborted if the provided context is
21965// canceled.
21966func (c *ProductsGetCall) Context(ctx context.Context) *ProductsGetCall {
21967	c.ctx_ = ctx
21968	return c
21969}
21970
21971// Header returns an http.Header that can be modified by the caller to
21972// add HTTP headers to the request.
21973func (c *ProductsGetCall) Header() http.Header {
21974	if c.header_ == nil {
21975		c.header_ = make(http.Header)
21976	}
21977	return c.header_
21978}
21979
21980func (c *ProductsGetCall) doRequest(alt string) (*http.Response, error) {
21981	reqHeaders := make(http.Header)
21982	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
21983	for k, v := range c.header_ {
21984		reqHeaders[k] = v
21985	}
21986	reqHeaders.Set("User-Agent", c.s.userAgent())
21987	if c.ifNoneMatch_ != "" {
21988		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
21989	}
21990	var body io.Reader = nil
21991	c.urlParams_.Set("alt", alt)
21992	c.urlParams_.Set("prettyPrint", "false")
21993	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products/{productId}")
21994	urls += "?" + c.urlParams_.Encode()
21995	req, err := http.NewRequest("GET", urls, body)
21996	if err != nil {
21997		return nil, err
21998	}
21999	req.Header = reqHeaders
22000	googleapi.Expand(req.URL, map[string]string{
22001		"merchantId": strconv.FormatUint(c.merchantId, 10),
22002		"productId":  c.productId,
22003	})
22004	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22005}
22006
22007// Do executes the "content.products.get" call.
22008// Exactly one of *Product or error will be non-nil. Any non-2xx status
22009// code is an error. Response headers are in either
22010// *Product.ServerResponse.Header or (if a response was returned at all)
22011// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
22012// check whether the returned error was because http.StatusNotModified
22013// was returned.
22014func (c *ProductsGetCall) Do(opts ...googleapi.CallOption) (*Product, error) {
22015	gensupport.SetOptions(c.urlParams_, opts...)
22016	res, err := c.doRequest("json")
22017	if res != nil && res.StatusCode == http.StatusNotModified {
22018		if res.Body != nil {
22019			res.Body.Close()
22020		}
22021		return nil, &googleapi.Error{
22022			Code:   res.StatusCode,
22023			Header: res.Header,
22024		}
22025	}
22026	if err != nil {
22027		return nil, err
22028	}
22029	defer googleapi.CloseBody(res)
22030	if err := googleapi.CheckResponse(res); err != nil {
22031		return nil, err
22032	}
22033	ret := &Product{
22034		ServerResponse: googleapi.ServerResponse{
22035			Header:         res.Header,
22036			HTTPStatusCode: res.StatusCode,
22037		},
22038	}
22039	target := &ret
22040	if err := gensupport.DecodeResponse(target, res); err != nil {
22041		return nil, err
22042	}
22043	return ret, nil
22044	// {
22045	//   "description": "Retrieves a product from your Merchant Center account.",
22046	//   "httpMethod": "GET",
22047	//   "id": "content.products.get",
22048	//   "parameterOrder": [
22049	//     "merchantId",
22050	//     "productId"
22051	//   ],
22052	//   "parameters": {
22053	//     "merchantId": {
22054	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
22055	//       "format": "uint64",
22056	//       "location": "path",
22057	//       "required": true,
22058	//       "type": "string"
22059	//     },
22060	//     "productId": {
22061	//       "description": "The REST ID of the product.",
22062	//       "location": "path",
22063	//       "required": true,
22064	//       "type": "string"
22065	//     }
22066	//   },
22067	//   "path": "{merchantId}/products/{productId}",
22068	//   "response": {
22069	//     "$ref": "Product"
22070	//   },
22071	//   "scopes": [
22072	//     "https://www.googleapis.com/auth/content"
22073	//   ]
22074	// }
22075
22076}
22077
22078// method id "content.products.insert":
22079
22080type ProductsInsertCall struct {
22081	s          *APIService
22082	merchantId uint64
22083	product    *Product
22084	urlParams_ gensupport.URLParams
22085	ctx_       context.Context
22086	header_    http.Header
22087}
22088
22089// Insert: Uploads a product to your Merchant Center account. If an item
22090// with the same channel, contentLanguage, offerId, and targetCountry
22091// already exists, this method updates that entry.
22092func (r *ProductsService) Insert(merchantId uint64, product *Product) *ProductsInsertCall {
22093	c := &ProductsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22094	c.merchantId = merchantId
22095	c.product = product
22096	return c
22097}
22098
22099// FeedId sets the optional parameter "feedId": The Content API
22100// Supplemental Feed ID.
22101func (c *ProductsInsertCall) FeedId(feedId uint64) *ProductsInsertCall {
22102	c.urlParams_.Set("feedId", fmt.Sprint(feedId))
22103	return c
22104}
22105
22106// Fields allows partial responses to be retrieved. See
22107// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22108// for more information.
22109func (c *ProductsInsertCall) Fields(s ...googleapi.Field) *ProductsInsertCall {
22110	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22111	return c
22112}
22113
22114// Context sets the context to be used in this call's Do method. Any
22115// pending HTTP request will be aborted if the provided context is
22116// canceled.
22117func (c *ProductsInsertCall) Context(ctx context.Context) *ProductsInsertCall {
22118	c.ctx_ = ctx
22119	return c
22120}
22121
22122// Header returns an http.Header that can be modified by the caller to
22123// add HTTP headers to the request.
22124func (c *ProductsInsertCall) Header() http.Header {
22125	if c.header_ == nil {
22126		c.header_ = make(http.Header)
22127	}
22128	return c.header_
22129}
22130
22131func (c *ProductsInsertCall) doRequest(alt string) (*http.Response, error) {
22132	reqHeaders := make(http.Header)
22133	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
22134	for k, v := range c.header_ {
22135		reqHeaders[k] = v
22136	}
22137	reqHeaders.Set("User-Agent", c.s.userAgent())
22138	var body io.Reader = nil
22139	body, err := googleapi.WithoutDataWrapper.JSONReader(c.product)
22140	if err != nil {
22141		return nil, err
22142	}
22143	reqHeaders.Set("Content-Type", "application/json")
22144	c.urlParams_.Set("alt", alt)
22145	c.urlParams_.Set("prettyPrint", "false")
22146	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products")
22147	urls += "?" + c.urlParams_.Encode()
22148	req, err := http.NewRequest("POST", urls, body)
22149	if err != nil {
22150		return nil, err
22151	}
22152	req.Header = reqHeaders
22153	googleapi.Expand(req.URL, map[string]string{
22154		"merchantId": strconv.FormatUint(c.merchantId, 10),
22155	})
22156	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22157}
22158
22159// Do executes the "content.products.insert" call.
22160// Exactly one of *Product or error will be non-nil. Any non-2xx status
22161// code is an error. Response headers are in either
22162// *Product.ServerResponse.Header or (if a response was returned at all)
22163// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
22164// check whether the returned error was because http.StatusNotModified
22165// was returned.
22166func (c *ProductsInsertCall) Do(opts ...googleapi.CallOption) (*Product, error) {
22167	gensupport.SetOptions(c.urlParams_, opts...)
22168	res, err := c.doRequest("json")
22169	if res != nil && res.StatusCode == http.StatusNotModified {
22170		if res.Body != nil {
22171			res.Body.Close()
22172		}
22173		return nil, &googleapi.Error{
22174			Code:   res.StatusCode,
22175			Header: res.Header,
22176		}
22177	}
22178	if err != nil {
22179		return nil, err
22180	}
22181	defer googleapi.CloseBody(res)
22182	if err := googleapi.CheckResponse(res); err != nil {
22183		return nil, err
22184	}
22185	ret := &Product{
22186		ServerResponse: googleapi.ServerResponse{
22187			Header:         res.Header,
22188			HTTPStatusCode: res.StatusCode,
22189		},
22190	}
22191	target := &ret
22192	if err := gensupport.DecodeResponse(target, res); err != nil {
22193		return nil, err
22194	}
22195	return ret, nil
22196	// {
22197	//   "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.",
22198	//   "httpMethod": "POST",
22199	//   "id": "content.products.insert",
22200	//   "parameterOrder": [
22201	//     "merchantId"
22202	//   ],
22203	//   "parameters": {
22204	//     "feedId": {
22205	//       "description": "The Content API Supplemental Feed ID.",
22206	//       "format": "uint64",
22207	//       "location": "query",
22208	//       "type": "string"
22209	//     },
22210	//     "merchantId": {
22211	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
22212	//       "format": "uint64",
22213	//       "location": "path",
22214	//       "required": true,
22215	//       "type": "string"
22216	//     }
22217	//   },
22218	//   "path": "{merchantId}/products",
22219	//   "request": {
22220	//     "$ref": "Product"
22221	//   },
22222	//   "response": {
22223	//     "$ref": "Product"
22224	//   },
22225	//   "scopes": [
22226	//     "https://www.googleapis.com/auth/content"
22227	//   ]
22228	// }
22229
22230}
22231
22232// method id "content.products.list":
22233
22234type ProductsListCall struct {
22235	s            *APIService
22236	merchantId   uint64
22237	urlParams_   gensupport.URLParams
22238	ifNoneMatch_ string
22239	ctx_         context.Context
22240	header_      http.Header
22241}
22242
22243// List: Lists the products in your Merchant Center account.
22244func (r *ProductsService) List(merchantId uint64) *ProductsListCall {
22245	c := &ProductsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22246	c.merchantId = merchantId
22247	return c
22248}
22249
22250// MaxResults sets the optional parameter "maxResults": The maximum
22251// number of products to return in the response, used for paging.
22252func (c *ProductsListCall) MaxResults(maxResults int64) *ProductsListCall {
22253	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
22254	return c
22255}
22256
22257// PageToken sets the optional parameter "pageToken": The token returned
22258// by the previous request.
22259func (c *ProductsListCall) PageToken(pageToken string) *ProductsListCall {
22260	c.urlParams_.Set("pageToken", pageToken)
22261	return c
22262}
22263
22264// Fields allows partial responses to be retrieved. See
22265// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22266// for more information.
22267func (c *ProductsListCall) Fields(s ...googleapi.Field) *ProductsListCall {
22268	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22269	return c
22270}
22271
22272// IfNoneMatch sets the optional parameter which makes the operation
22273// fail if the object's ETag matches the given value. This is useful for
22274// getting updates only after the object has changed since the last
22275// request. Use googleapi.IsNotModified to check whether the response
22276// error from Do is the result of In-None-Match.
22277func (c *ProductsListCall) IfNoneMatch(entityTag string) *ProductsListCall {
22278	c.ifNoneMatch_ = entityTag
22279	return c
22280}
22281
22282// Context sets the context to be used in this call's Do method. Any
22283// pending HTTP request will be aborted if the provided context is
22284// canceled.
22285func (c *ProductsListCall) Context(ctx context.Context) *ProductsListCall {
22286	c.ctx_ = ctx
22287	return c
22288}
22289
22290// Header returns an http.Header that can be modified by the caller to
22291// add HTTP headers to the request.
22292func (c *ProductsListCall) Header() http.Header {
22293	if c.header_ == nil {
22294		c.header_ = make(http.Header)
22295	}
22296	return c.header_
22297}
22298
22299func (c *ProductsListCall) doRequest(alt string) (*http.Response, error) {
22300	reqHeaders := make(http.Header)
22301	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
22302	for k, v := range c.header_ {
22303		reqHeaders[k] = v
22304	}
22305	reqHeaders.Set("User-Agent", c.s.userAgent())
22306	if c.ifNoneMatch_ != "" {
22307		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
22308	}
22309	var body io.Reader = nil
22310	c.urlParams_.Set("alt", alt)
22311	c.urlParams_.Set("prettyPrint", "false")
22312	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products")
22313	urls += "?" + c.urlParams_.Encode()
22314	req, err := http.NewRequest("GET", urls, body)
22315	if err != nil {
22316		return nil, err
22317	}
22318	req.Header = reqHeaders
22319	googleapi.Expand(req.URL, map[string]string{
22320		"merchantId": strconv.FormatUint(c.merchantId, 10),
22321	})
22322	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22323}
22324
22325// Do executes the "content.products.list" call.
22326// Exactly one of *ProductsListResponse or error will be non-nil. Any
22327// non-2xx status code is an error. Response headers are in either
22328// *ProductsListResponse.ServerResponse.Header or (if a response was
22329// returned at all) in error.(*googleapi.Error).Header. Use
22330// googleapi.IsNotModified to check whether the returned error was
22331// because http.StatusNotModified was returned.
22332func (c *ProductsListCall) Do(opts ...googleapi.CallOption) (*ProductsListResponse, error) {
22333	gensupport.SetOptions(c.urlParams_, opts...)
22334	res, err := c.doRequest("json")
22335	if res != nil && res.StatusCode == http.StatusNotModified {
22336		if res.Body != nil {
22337			res.Body.Close()
22338		}
22339		return nil, &googleapi.Error{
22340			Code:   res.StatusCode,
22341			Header: res.Header,
22342		}
22343	}
22344	if err != nil {
22345		return nil, err
22346	}
22347	defer googleapi.CloseBody(res)
22348	if err := googleapi.CheckResponse(res); err != nil {
22349		return nil, err
22350	}
22351	ret := &ProductsListResponse{
22352		ServerResponse: googleapi.ServerResponse{
22353			Header:         res.Header,
22354			HTTPStatusCode: res.StatusCode,
22355		},
22356	}
22357	target := &ret
22358	if err := gensupport.DecodeResponse(target, res); err != nil {
22359		return nil, err
22360	}
22361	return ret, nil
22362	// {
22363	//   "description": "Lists the products in your Merchant Center account.",
22364	//   "httpMethod": "GET",
22365	//   "id": "content.products.list",
22366	//   "parameterOrder": [
22367	//     "merchantId"
22368	//   ],
22369	//   "parameters": {
22370	//     "maxResults": {
22371	//       "description": "The maximum number of products to return in the response, used for paging.",
22372	//       "format": "uint32",
22373	//       "location": "query",
22374	//       "type": "integer"
22375	//     },
22376	//     "merchantId": {
22377	//       "description": "The ID of the account that contains the products. This account cannot be a multi-client account.",
22378	//       "format": "uint64",
22379	//       "location": "path",
22380	//       "required": true,
22381	//       "type": "string"
22382	//     },
22383	//     "pageToken": {
22384	//       "description": "The token returned by the previous request.",
22385	//       "location": "query",
22386	//       "type": "string"
22387	//     }
22388	//   },
22389	//   "path": "{merchantId}/products",
22390	//   "response": {
22391	//     "$ref": "ProductsListResponse"
22392	//   },
22393	//   "scopes": [
22394	//     "https://www.googleapis.com/auth/content"
22395	//   ]
22396	// }
22397
22398}
22399
22400// Pages invokes f for each page of results.
22401// A non-nil error returned from f will halt the iteration.
22402// The provided context supersedes any context provided to the Context method.
22403func (c *ProductsListCall) Pages(ctx context.Context, f func(*ProductsListResponse) error) error {
22404	c.ctx_ = ctx
22405	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
22406	for {
22407		x, err := c.Do()
22408		if err != nil {
22409			return err
22410		}
22411		if err := f(x); err != nil {
22412			return err
22413		}
22414		if x.NextPageToken == "" {
22415			return nil
22416		}
22417		c.PageToken(x.NextPageToken)
22418	}
22419}
22420
22421// method id "content.productstatuses.custombatch":
22422
22423type ProductstatusesCustombatchCall struct {
22424	s                                 *APIService
22425	productstatusescustombatchrequest *ProductstatusesCustomBatchRequest
22426	urlParams_                        gensupport.URLParams
22427	ctx_                              context.Context
22428	header_                           http.Header
22429}
22430
22431// Custombatch: Gets the statuses of multiple products in a single
22432// request.
22433func (r *ProductstatusesService) Custombatch(productstatusescustombatchrequest *ProductstatusesCustomBatchRequest) *ProductstatusesCustombatchCall {
22434	c := &ProductstatusesCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22435	c.productstatusescustombatchrequest = productstatusescustombatchrequest
22436	return c
22437}
22438
22439// Fields allows partial responses to be retrieved. See
22440// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22441// for more information.
22442func (c *ProductstatusesCustombatchCall) Fields(s ...googleapi.Field) *ProductstatusesCustombatchCall {
22443	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22444	return c
22445}
22446
22447// Context sets the context to be used in this call's Do method. Any
22448// pending HTTP request will be aborted if the provided context is
22449// canceled.
22450func (c *ProductstatusesCustombatchCall) Context(ctx context.Context) *ProductstatusesCustombatchCall {
22451	c.ctx_ = ctx
22452	return c
22453}
22454
22455// Header returns an http.Header that can be modified by the caller to
22456// add HTTP headers to the request.
22457func (c *ProductstatusesCustombatchCall) Header() http.Header {
22458	if c.header_ == nil {
22459		c.header_ = make(http.Header)
22460	}
22461	return c.header_
22462}
22463
22464func (c *ProductstatusesCustombatchCall) doRequest(alt string) (*http.Response, error) {
22465	reqHeaders := make(http.Header)
22466	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
22467	for k, v := range c.header_ {
22468		reqHeaders[k] = v
22469	}
22470	reqHeaders.Set("User-Agent", c.s.userAgent())
22471	var body io.Reader = nil
22472	body, err := googleapi.WithoutDataWrapper.JSONReader(c.productstatusescustombatchrequest)
22473	if err != nil {
22474		return nil, err
22475	}
22476	reqHeaders.Set("Content-Type", "application/json")
22477	c.urlParams_.Set("alt", alt)
22478	c.urlParams_.Set("prettyPrint", "false")
22479	urls := googleapi.ResolveRelative(c.s.BasePath, "productstatuses/batch")
22480	urls += "?" + c.urlParams_.Encode()
22481	req, err := http.NewRequest("POST", urls, body)
22482	if err != nil {
22483		return nil, err
22484	}
22485	req.Header = reqHeaders
22486	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22487}
22488
22489// Do executes the "content.productstatuses.custombatch" call.
22490// Exactly one of *ProductstatusesCustomBatchResponse or error will be
22491// non-nil. Any non-2xx status code is an error. Response headers are in
22492// either *ProductstatusesCustomBatchResponse.ServerResponse.Header or
22493// (if a response was returned at all) in
22494// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
22495// whether the returned error was because http.StatusNotModified was
22496// returned.
22497func (c *ProductstatusesCustombatchCall) Do(opts ...googleapi.CallOption) (*ProductstatusesCustomBatchResponse, error) {
22498	gensupport.SetOptions(c.urlParams_, opts...)
22499	res, err := c.doRequest("json")
22500	if res != nil && res.StatusCode == http.StatusNotModified {
22501		if res.Body != nil {
22502			res.Body.Close()
22503		}
22504		return nil, &googleapi.Error{
22505			Code:   res.StatusCode,
22506			Header: res.Header,
22507		}
22508	}
22509	if err != nil {
22510		return nil, err
22511	}
22512	defer googleapi.CloseBody(res)
22513	if err := googleapi.CheckResponse(res); err != nil {
22514		return nil, err
22515	}
22516	ret := &ProductstatusesCustomBatchResponse{
22517		ServerResponse: googleapi.ServerResponse{
22518			Header:         res.Header,
22519			HTTPStatusCode: res.StatusCode,
22520		},
22521	}
22522	target := &ret
22523	if err := gensupport.DecodeResponse(target, res); err != nil {
22524		return nil, err
22525	}
22526	return ret, nil
22527	// {
22528	//   "description": "Gets the statuses of multiple products in a single request.",
22529	//   "httpMethod": "POST",
22530	//   "id": "content.productstatuses.custombatch",
22531	//   "path": "productstatuses/batch",
22532	//   "request": {
22533	//     "$ref": "ProductstatusesCustomBatchRequest"
22534	//   },
22535	//   "response": {
22536	//     "$ref": "ProductstatusesCustomBatchResponse"
22537	//   },
22538	//   "scopes": [
22539	//     "https://www.googleapis.com/auth/content"
22540	//   ]
22541	// }
22542
22543}
22544
22545// method id "content.productstatuses.get":
22546
22547type ProductstatusesGetCall struct {
22548	s            *APIService
22549	merchantId   uint64
22550	productId    string
22551	urlParams_   gensupport.URLParams
22552	ifNoneMatch_ string
22553	ctx_         context.Context
22554	header_      http.Header
22555}
22556
22557// Get: Gets the status of a product from your Merchant Center account.
22558func (r *ProductstatusesService) Get(merchantId uint64, productId string) *ProductstatusesGetCall {
22559	c := &ProductstatusesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22560	c.merchantId = merchantId
22561	c.productId = productId
22562	return c
22563}
22564
22565// Destinations sets the optional parameter "destinations": If set, only
22566// issues for the specified destinations are returned, otherwise only
22567// issues for the Shopping destination.
22568func (c *ProductstatusesGetCall) Destinations(destinations ...string) *ProductstatusesGetCall {
22569	c.urlParams_.SetMulti("destinations", append([]string{}, destinations...))
22570	return c
22571}
22572
22573// Fields allows partial responses to be retrieved. See
22574// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22575// for more information.
22576func (c *ProductstatusesGetCall) Fields(s ...googleapi.Field) *ProductstatusesGetCall {
22577	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22578	return c
22579}
22580
22581// IfNoneMatch sets the optional parameter which makes the operation
22582// fail if the object's ETag matches the given value. This is useful for
22583// getting updates only after the object has changed since the last
22584// request. Use googleapi.IsNotModified to check whether the response
22585// error from Do is the result of In-None-Match.
22586func (c *ProductstatusesGetCall) IfNoneMatch(entityTag string) *ProductstatusesGetCall {
22587	c.ifNoneMatch_ = entityTag
22588	return c
22589}
22590
22591// Context sets the context to be used in this call's Do method. Any
22592// pending HTTP request will be aborted if the provided context is
22593// canceled.
22594func (c *ProductstatusesGetCall) Context(ctx context.Context) *ProductstatusesGetCall {
22595	c.ctx_ = ctx
22596	return c
22597}
22598
22599// Header returns an http.Header that can be modified by the caller to
22600// add HTTP headers to the request.
22601func (c *ProductstatusesGetCall) Header() http.Header {
22602	if c.header_ == nil {
22603		c.header_ = make(http.Header)
22604	}
22605	return c.header_
22606}
22607
22608func (c *ProductstatusesGetCall) doRequest(alt string) (*http.Response, error) {
22609	reqHeaders := make(http.Header)
22610	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
22611	for k, v := range c.header_ {
22612		reqHeaders[k] = v
22613	}
22614	reqHeaders.Set("User-Agent", c.s.userAgent())
22615	if c.ifNoneMatch_ != "" {
22616		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
22617	}
22618	var body io.Reader = nil
22619	c.urlParams_.Set("alt", alt)
22620	c.urlParams_.Set("prettyPrint", "false")
22621	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/productstatuses/{productId}")
22622	urls += "?" + c.urlParams_.Encode()
22623	req, err := http.NewRequest("GET", urls, body)
22624	if err != nil {
22625		return nil, err
22626	}
22627	req.Header = reqHeaders
22628	googleapi.Expand(req.URL, map[string]string{
22629		"merchantId": strconv.FormatUint(c.merchantId, 10),
22630		"productId":  c.productId,
22631	})
22632	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22633}
22634
22635// Do executes the "content.productstatuses.get" call.
22636// Exactly one of *ProductStatus or error will be non-nil. Any non-2xx
22637// status code is an error. Response headers are in either
22638// *ProductStatus.ServerResponse.Header or (if a response was returned
22639// at all) in error.(*googleapi.Error).Header. Use
22640// googleapi.IsNotModified to check whether the returned error was
22641// because http.StatusNotModified was returned.
22642func (c *ProductstatusesGetCall) Do(opts ...googleapi.CallOption) (*ProductStatus, error) {
22643	gensupport.SetOptions(c.urlParams_, opts...)
22644	res, err := c.doRequest("json")
22645	if res != nil && res.StatusCode == http.StatusNotModified {
22646		if res.Body != nil {
22647			res.Body.Close()
22648		}
22649		return nil, &googleapi.Error{
22650			Code:   res.StatusCode,
22651			Header: res.Header,
22652		}
22653	}
22654	if err != nil {
22655		return nil, err
22656	}
22657	defer googleapi.CloseBody(res)
22658	if err := googleapi.CheckResponse(res); err != nil {
22659		return nil, err
22660	}
22661	ret := &ProductStatus{
22662		ServerResponse: googleapi.ServerResponse{
22663			Header:         res.Header,
22664			HTTPStatusCode: res.StatusCode,
22665		},
22666	}
22667	target := &ret
22668	if err := gensupport.DecodeResponse(target, res); err != nil {
22669		return nil, err
22670	}
22671	return ret, nil
22672	// {
22673	//   "description": "Gets the status of a product from your Merchant Center account.",
22674	//   "httpMethod": "GET",
22675	//   "id": "content.productstatuses.get",
22676	//   "parameterOrder": [
22677	//     "merchantId",
22678	//     "productId"
22679	//   ],
22680	//   "parameters": {
22681	//     "destinations": {
22682	//       "description": "If set, only issues for the specified destinations are returned, otherwise only issues for the Shopping destination.",
22683	//       "location": "query",
22684	//       "repeated": true,
22685	//       "type": "string"
22686	//     },
22687	//     "merchantId": {
22688	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
22689	//       "format": "uint64",
22690	//       "location": "path",
22691	//       "required": true,
22692	//       "type": "string"
22693	//     },
22694	//     "productId": {
22695	//       "description": "The REST ID of the product.",
22696	//       "location": "path",
22697	//       "required": true,
22698	//       "type": "string"
22699	//     }
22700	//   },
22701	//   "path": "{merchantId}/productstatuses/{productId}",
22702	//   "response": {
22703	//     "$ref": "ProductStatus"
22704	//   },
22705	//   "scopes": [
22706	//     "https://www.googleapis.com/auth/content"
22707	//   ]
22708	// }
22709
22710}
22711
22712// method id "content.productstatuses.list":
22713
22714type ProductstatusesListCall struct {
22715	s            *APIService
22716	merchantId   uint64
22717	urlParams_   gensupport.URLParams
22718	ifNoneMatch_ string
22719	ctx_         context.Context
22720	header_      http.Header
22721}
22722
22723// List: Lists the statuses of the products in your Merchant Center
22724// account.
22725func (r *ProductstatusesService) List(merchantId uint64) *ProductstatusesListCall {
22726	c := &ProductstatusesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22727	c.merchantId = merchantId
22728	return c
22729}
22730
22731// Destinations sets the optional parameter "destinations": If set, only
22732// issues for the specified destinations are returned, otherwise only
22733// issues for the Shopping destination.
22734func (c *ProductstatusesListCall) Destinations(destinations ...string) *ProductstatusesListCall {
22735	c.urlParams_.SetMulti("destinations", append([]string{}, destinations...))
22736	return c
22737}
22738
22739// MaxResults sets the optional parameter "maxResults": The maximum
22740// number of product statuses to return in the response, used for
22741// paging.
22742func (c *ProductstatusesListCall) MaxResults(maxResults int64) *ProductstatusesListCall {
22743	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
22744	return c
22745}
22746
22747// PageToken sets the optional parameter "pageToken": The token returned
22748// by the previous request.
22749func (c *ProductstatusesListCall) PageToken(pageToken string) *ProductstatusesListCall {
22750	c.urlParams_.Set("pageToken", pageToken)
22751	return c
22752}
22753
22754// Fields allows partial responses to be retrieved. See
22755// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22756// for more information.
22757func (c *ProductstatusesListCall) Fields(s ...googleapi.Field) *ProductstatusesListCall {
22758	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22759	return c
22760}
22761
22762// IfNoneMatch sets the optional parameter which makes the operation
22763// fail if the object's ETag matches the given value. This is useful for
22764// getting updates only after the object has changed since the last
22765// request. Use googleapi.IsNotModified to check whether the response
22766// error from Do is the result of In-None-Match.
22767func (c *ProductstatusesListCall) IfNoneMatch(entityTag string) *ProductstatusesListCall {
22768	c.ifNoneMatch_ = entityTag
22769	return c
22770}
22771
22772// Context sets the context to be used in this call's Do method. Any
22773// pending HTTP request will be aborted if the provided context is
22774// canceled.
22775func (c *ProductstatusesListCall) Context(ctx context.Context) *ProductstatusesListCall {
22776	c.ctx_ = ctx
22777	return c
22778}
22779
22780// Header returns an http.Header that can be modified by the caller to
22781// add HTTP headers to the request.
22782func (c *ProductstatusesListCall) Header() http.Header {
22783	if c.header_ == nil {
22784		c.header_ = make(http.Header)
22785	}
22786	return c.header_
22787}
22788
22789func (c *ProductstatusesListCall) doRequest(alt string) (*http.Response, error) {
22790	reqHeaders := make(http.Header)
22791	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
22792	for k, v := range c.header_ {
22793		reqHeaders[k] = v
22794	}
22795	reqHeaders.Set("User-Agent", c.s.userAgent())
22796	if c.ifNoneMatch_ != "" {
22797		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
22798	}
22799	var body io.Reader = nil
22800	c.urlParams_.Set("alt", alt)
22801	c.urlParams_.Set("prettyPrint", "false")
22802	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/productstatuses")
22803	urls += "?" + c.urlParams_.Encode()
22804	req, err := http.NewRequest("GET", urls, body)
22805	if err != nil {
22806		return nil, err
22807	}
22808	req.Header = reqHeaders
22809	googleapi.Expand(req.URL, map[string]string{
22810		"merchantId": strconv.FormatUint(c.merchantId, 10),
22811	})
22812	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22813}
22814
22815// Do executes the "content.productstatuses.list" call.
22816// Exactly one of *ProductstatusesListResponse or error will be non-nil.
22817// Any non-2xx status code is an error. Response headers are in either
22818// *ProductstatusesListResponse.ServerResponse.Header or (if a response
22819// was returned at all) in error.(*googleapi.Error).Header. Use
22820// googleapi.IsNotModified to check whether the returned error was
22821// because http.StatusNotModified was returned.
22822func (c *ProductstatusesListCall) Do(opts ...googleapi.CallOption) (*ProductstatusesListResponse, error) {
22823	gensupport.SetOptions(c.urlParams_, opts...)
22824	res, err := c.doRequest("json")
22825	if res != nil && res.StatusCode == http.StatusNotModified {
22826		if res.Body != nil {
22827			res.Body.Close()
22828		}
22829		return nil, &googleapi.Error{
22830			Code:   res.StatusCode,
22831			Header: res.Header,
22832		}
22833	}
22834	if err != nil {
22835		return nil, err
22836	}
22837	defer googleapi.CloseBody(res)
22838	if err := googleapi.CheckResponse(res); err != nil {
22839		return nil, err
22840	}
22841	ret := &ProductstatusesListResponse{
22842		ServerResponse: googleapi.ServerResponse{
22843			Header:         res.Header,
22844			HTTPStatusCode: res.StatusCode,
22845		},
22846	}
22847	target := &ret
22848	if err := gensupport.DecodeResponse(target, res); err != nil {
22849		return nil, err
22850	}
22851	return ret, nil
22852	// {
22853	//   "description": "Lists the statuses of the products in your Merchant Center account.",
22854	//   "httpMethod": "GET",
22855	//   "id": "content.productstatuses.list",
22856	//   "parameterOrder": [
22857	//     "merchantId"
22858	//   ],
22859	//   "parameters": {
22860	//     "destinations": {
22861	//       "description": "If set, only issues for the specified destinations are returned, otherwise only issues for the Shopping destination.",
22862	//       "location": "query",
22863	//       "repeated": true,
22864	//       "type": "string"
22865	//     },
22866	//     "maxResults": {
22867	//       "description": "The maximum number of product statuses to return in the response, used for paging.",
22868	//       "format": "uint32",
22869	//       "location": "query",
22870	//       "type": "integer"
22871	//     },
22872	//     "merchantId": {
22873	//       "description": "The ID of the account that contains the products. This account cannot be a multi-client account.",
22874	//       "format": "uint64",
22875	//       "location": "path",
22876	//       "required": true,
22877	//       "type": "string"
22878	//     },
22879	//     "pageToken": {
22880	//       "description": "The token returned by the previous request.",
22881	//       "location": "query",
22882	//       "type": "string"
22883	//     }
22884	//   },
22885	//   "path": "{merchantId}/productstatuses",
22886	//   "response": {
22887	//     "$ref": "ProductstatusesListResponse"
22888	//   },
22889	//   "scopes": [
22890	//     "https://www.googleapis.com/auth/content"
22891	//   ]
22892	// }
22893
22894}
22895
22896// Pages invokes f for each page of results.
22897// A non-nil error returned from f will halt the iteration.
22898// The provided context supersedes any context provided to the Context method.
22899func (c *ProductstatusesListCall) Pages(ctx context.Context, f func(*ProductstatusesListResponse) error) error {
22900	c.ctx_ = ctx
22901	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
22902	for {
22903		x, err := c.Do()
22904		if err != nil {
22905			return err
22906		}
22907		if err := f(x); err != nil {
22908			return err
22909		}
22910		if x.NextPageToken == "" {
22911			return nil
22912		}
22913		c.PageToken(x.NextPageToken)
22914	}
22915}
22916
22917// method id "content.regionalinventory.custombatch":
22918
22919type RegionalinventoryCustombatchCall struct {
22920	s                                   *APIService
22921	regionalinventorycustombatchrequest *RegionalinventoryCustomBatchRequest
22922	urlParams_                          gensupport.URLParams
22923	ctx_                                context.Context
22924	header_                             http.Header
22925}
22926
22927// Custombatch: Updates regional inventory for multiple products or
22928// regions in a single request.
22929func (r *RegionalinventoryService) Custombatch(regionalinventorycustombatchrequest *RegionalinventoryCustomBatchRequest) *RegionalinventoryCustombatchCall {
22930	c := &RegionalinventoryCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22931	c.regionalinventorycustombatchrequest = regionalinventorycustombatchrequest
22932	return c
22933}
22934
22935// Fields allows partial responses to be retrieved. See
22936// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22937// for more information.
22938func (c *RegionalinventoryCustombatchCall) Fields(s ...googleapi.Field) *RegionalinventoryCustombatchCall {
22939	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22940	return c
22941}
22942
22943// Context sets the context to be used in this call's Do method. Any
22944// pending HTTP request will be aborted if the provided context is
22945// canceled.
22946func (c *RegionalinventoryCustombatchCall) Context(ctx context.Context) *RegionalinventoryCustombatchCall {
22947	c.ctx_ = ctx
22948	return c
22949}
22950
22951// Header returns an http.Header that can be modified by the caller to
22952// add HTTP headers to the request.
22953func (c *RegionalinventoryCustombatchCall) Header() http.Header {
22954	if c.header_ == nil {
22955		c.header_ = make(http.Header)
22956	}
22957	return c.header_
22958}
22959
22960func (c *RegionalinventoryCustombatchCall) doRequest(alt string) (*http.Response, error) {
22961	reqHeaders := make(http.Header)
22962	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
22963	for k, v := range c.header_ {
22964		reqHeaders[k] = v
22965	}
22966	reqHeaders.Set("User-Agent", c.s.userAgent())
22967	var body io.Reader = nil
22968	body, err := googleapi.WithoutDataWrapper.JSONReader(c.regionalinventorycustombatchrequest)
22969	if err != nil {
22970		return nil, err
22971	}
22972	reqHeaders.Set("Content-Type", "application/json")
22973	c.urlParams_.Set("alt", alt)
22974	c.urlParams_.Set("prettyPrint", "false")
22975	urls := googleapi.ResolveRelative(c.s.BasePath, "regionalinventory/batch")
22976	urls += "?" + c.urlParams_.Encode()
22977	req, err := http.NewRequest("POST", urls, body)
22978	if err != nil {
22979		return nil, err
22980	}
22981	req.Header = reqHeaders
22982	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22983}
22984
22985// Do executes the "content.regionalinventory.custombatch" call.
22986// Exactly one of *RegionalinventoryCustomBatchResponse or error will be
22987// non-nil. Any non-2xx status code is an error. Response headers are in
22988// either *RegionalinventoryCustomBatchResponse.ServerResponse.Header or
22989// (if a response was returned at all) in
22990// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
22991// whether the returned error was because http.StatusNotModified was
22992// returned.
22993func (c *RegionalinventoryCustombatchCall) Do(opts ...googleapi.CallOption) (*RegionalinventoryCustomBatchResponse, error) {
22994	gensupport.SetOptions(c.urlParams_, opts...)
22995	res, err := c.doRequest("json")
22996	if res != nil && res.StatusCode == http.StatusNotModified {
22997		if res.Body != nil {
22998			res.Body.Close()
22999		}
23000		return nil, &googleapi.Error{
23001			Code:   res.StatusCode,
23002			Header: res.Header,
23003		}
23004	}
23005	if err != nil {
23006		return nil, err
23007	}
23008	defer googleapi.CloseBody(res)
23009	if err := googleapi.CheckResponse(res); err != nil {
23010		return nil, err
23011	}
23012	ret := &RegionalinventoryCustomBatchResponse{
23013		ServerResponse: googleapi.ServerResponse{
23014			Header:         res.Header,
23015			HTTPStatusCode: res.StatusCode,
23016		},
23017	}
23018	target := &ret
23019	if err := gensupport.DecodeResponse(target, res); err != nil {
23020		return nil, err
23021	}
23022	return ret, nil
23023	// {
23024	//   "description": "Updates regional inventory for multiple products or regions in a single request.",
23025	//   "httpMethod": "POST",
23026	//   "id": "content.regionalinventory.custombatch",
23027	//   "path": "regionalinventory/batch",
23028	//   "request": {
23029	//     "$ref": "RegionalinventoryCustomBatchRequest"
23030	//   },
23031	//   "response": {
23032	//     "$ref": "RegionalinventoryCustomBatchResponse"
23033	//   },
23034	//   "scopes": [
23035	//     "https://www.googleapis.com/auth/content"
23036	//   ]
23037	// }
23038
23039}
23040
23041// method id "content.regionalinventory.insert":
23042
23043type RegionalinventoryInsertCall struct {
23044	s                 *APIService
23045	merchantId        uint64
23046	productId         string
23047	regionalinventory *RegionalInventory
23048	urlParams_        gensupport.URLParams
23049	ctx_              context.Context
23050	header_           http.Header
23051}
23052
23053// Insert: Update the regional inventory of a product in your Merchant
23054// Center account. If a regional inventory with the same region ID
23055// already exists, this method updates that entry.
23056func (r *RegionalinventoryService) Insert(merchantId uint64, productId string, regionalinventory *RegionalInventory) *RegionalinventoryInsertCall {
23057	c := &RegionalinventoryInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23058	c.merchantId = merchantId
23059	c.productId = productId
23060	c.regionalinventory = regionalinventory
23061	return c
23062}
23063
23064// Fields allows partial responses to be retrieved. See
23065// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23066// for more information.
23067func (c *RegionalinventoryInsertCall) Fields(s ...googleapi.Field) *RegionalinventoryInsertCall {
23068	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23069	return c
23070}
23071
23072// Context sets the context to be used in this call's Do method. Any
23073// pending HTTP request will be aborted if the provided context is
23074// canceled.
23075func (c *RegionalinventoryInsertCall) Context(ctx context.Context) *RegionalinventoryInsertCall {
23076	c.ctx_ = ctx
23077	return c
23078}
23079
23080// Header returns an http.Header that can be modified by the caller to
23081// add HTTP headers to the request.
23082func (c *RegionalinventoryInsertCall) Header() http.Header {
23083	if c.header_ == nil {
23084		c.header_ = make(http.Header)
23085	}
23086	return c.header_
23087}
23088
23089func (c *RegionalinventoryInsertCall) doRequest(alt string) (*http.Response, error) {
23090	reqHeaders := make(http.Header)
23091	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
23092	for k, v := range c.header_ {
23093		reqHeaders[k] = v
23094	}
23095	reqHeaders.Set("User-Agent", c.s.userAgent())
23096	var body io.Reader = nil
23097	body, err := googleapi.WithoutDataWrapper.JSONReader(c.regionalinventory)
23098	if err != nil {
23099		return nil, err
23100	}
23101	reqHeaders.Set("Content-Type", "application/json")
23102	c.urlParams_.Set("alt", alt)
23103	c.urlParams_.Set("prettyPrint", "false")
23104	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products/{productId}/regionalinventory")
23105	urls += "?" + c.urlParams_.Encode()
23106	req, err := http.NewRequest("POST", urls, body)
23107	if err != nil {
23108		return nil, err
23109	}
23110	req.Header = reqHeaders
23111	googleapi.Expand(req.URL, map[string]string{
23112		"merchantId": strconv.FormatUint(c.merchantId, 10),
23113		"productId":  c.productId,
23114	})
23115	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23116}
23117
23118// Do executes the "content.regionalinventory.insert" call.
23119// Exactly one of *RegionalInventory or error will be non-nil. Any
23120// non-2xx status code is an error. Response headers are in either
23121// *RegionalInventory.ServerResponse.Header or (if a response was
23122// returned at all) in error.(*googleapi.Error).Header. Use
23123// googleapi.IsNotModified to check whether the returned error was
23124// because http.StatusNotModified was returned.
23125func (c *RegionalinventoryInsertCall) Do(opts ...googleapi.CallOption) (*RegionalInventory, error) {
23126	gensupport.SetOptions(c.urlParams_, opts...)
23127	res, err := c.doRequest("json")
23128	if res != nil && res.StatusCode == http.StatusNotModified {
23129		if res.Body != nil {
23130			res.Body.Close()
23131		}
23132		return nil, &googleapi.Error{
23133			Code:   res.StatusCode,
23134			Header: res.Header,
23135		}
23136	}
23137	if err != nil {
23138		return nil, err
23139	}
23140	defer googleapi.CloseBody(res)
23141	if err := googleapi.CheckResponse(res); err != nil {
23142		return nil, err
23143	}
23144	ret := &RegionalInventory{
23145		ServerResponse: googleapi.ServerResponse{
23146			Header:         res.Header,
23147			HTTPStatusCode: res.StatusCode,
23148		},
23149	}
23150	target := &ret
23151	if err := gensupport.DecodeResponse(target, res); err != nil {
23152		return nil, err
23153	}
23154	return ret, nil
23155	// {
23156	//   "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.",
23157	//   "httpMethod": "POST",
23158	//   "id": "content.regionalinventory.insert",
23159	//   "parameterOrder": [
23160	//     "merchantId",
23161	//     "productId"
23162	//   ],
23163	//   "parameters": {
23164	//     "merchantId": {
23165	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
23166	//       "format": "uint64",
23167	//       "location": "path",
23168	//       "required": true,
23169	//       "type": "string"
23170	//     },
23171	//     "productId": {
23172	//       "description": "The REST ID of the product for which to update the regional inventory.",
23173	//       "location": "path",
23174	//       "required": true,
23175	//       "type": "string"
23176	//     }
23177	//   },
23178	//   "path": "{merchantId}/products/{productId}/regionalinventory",
23179	//   "request": {
23180	//     "$ref": "RegionalInventory"
23181	//   },
23182	//   "response": {
23183	//     "$ref": "RegionalInventory"
23184	//   },
23185	//   "scopes": [
23186	//     "https://www.googleapis.com/auth/content"
23187	//   ]
23188	// }
23189
23190}
23191
23192// method id "content.returnaddress.custombatch":
23193
23194type ReturnaddressCustombatchCall struct {
23195	s                               *APIService
23196	returnaddresscustombatchrequest *ReturnaddressCustomBatchRequest
23197	urlParams_                      gensupport.URLParams
23198	ctx_                            context.Context
23199	header_                         http.Header
23200}
23201
23202// Custombatch: Batches multiple return address related calls in a
23203// single request.
23204func (r *ReturnaddressService) Custombatch(returnaddresscustombatchrequest *ReturnaddressCustomBatchRequest) *ReturnaddressCustombatchCall {
23205	c := &ReturnaddressCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23206	c.returnaddresscustombatchrequest = returnaddresscustombatchrequest
23207	return c
23208}
23209
23210// Fields allows partial responses to be retrieved. See
23211// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23212// for more information.
23213func (c *ReturnaddressCustombatchCall) Fields(s ...googleapi.Field) *ReturnaddressCustombatchCall {
23214	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23215	return c
23216}
23217
23218// Context sets the context to be used in this call's Do method. Any
23219// pending HTTP request will be aborted if the provided context is
23220// canceled.
23221func (c *ReturnaddressCustombatchCall) Context(ctx context.Context) *ReturnaddressCustombatchCall {
23222	c.ctx_ = ctx
23223	return c
23224}
23225
23226// Header returns an http.Header that can be modified by the caller to
23227// add HTTP headers to the request.
23228func (c *ReturnaddressCustombatchCall) Header() http.Header {
23229	if c.header_ == nil {
23230		c.header_ = make(http.Header)
23231	}
23232	return c.header_
23233}
23234
23235func (c *ReturnaddressCustombatchCall) doRequest(alt string) (*http.Response, error) {
23236	reqHeaders := make(http.Header)
23237	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
23238	for k, v := range c.header_ {
23239		reqHeaders[k] = v
23240	}
23241	reqHeaders.Set("User-Agent", c.s.userAgent())
23242	var body io.Reader = nil
23243	body, err := googleapi.WithoutDataWrapper.JSONReader(c.returnaddresscustombatchrequest)
23244	if err != nil {
23245		return nil, err
23246	}
23247	reqHeaders.Set("Content-Type", "application/json")
23248	c.urlParams_.Set("alt", alt)
23249	c.urlParams_.Set("prettyPrint", "false")
23250	urls := googleapi.ResolveRelative(c.s.BasePath, "returnaddress/batch")
23251	urls += "?" + c.urlParams_.Encode()
23252	req, err := http.NewRequest("POST", urls, body)
23253	if err != nil {
23254		return nil, err
23255	}
23256	req.Header = reqHeaders
23257	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23258}
23259
23260// Do executes the "content.returnaddress.custombatch" call.
23261// Exactly one of *ReturnaddressCustomBatchResponse or error will be
23262// non-nil. Any non-2xx status code is an error. Response headers are in
23263// either *ReturnaddressCustomBatchResponse.ServerResponse.Header or (if
23264// a response was returned at all) in error.(*googleapi.Error).Header.
23265// Use googleapi.IsNotModified to check whether the returned error was
23266// because http.StatusNotModified was returned.
23267func (c *ReturnaddressCustombatchCall) Do(opts ...googleapi.CallOption) (*ReturnaddressCustomBatchResponse, error) {
23268	gensupport.SetOptions(c.urlParams_, opts...)
23269	res, err := c.doRequest("json")
23270	if res != nil && res.StatusCode == http.StatusNotModified {
23271		if res.Body != nil {
23272			res.Body.Close()
23273		}
23274		return nil, &googleapi.Error{
23275			Code:   res.StatusCode,
23276			Header: res.Header,
23277		}
23278	}
23279	if err != nil {
23280		return nil, err
23281	}
23282	defer googleapi.CloseBody(res)
23283	if err := googleapi.CheckResponse(res); err != nil {
23284		return nil, err
23285	}
23286	ret := &ReturnaddressCustomBatchResponse{
23287		ServerResponse: googleapi.ServerResponse{
23288			Header:         res.Header,
23289			HTTPStatusCode: res.StatusCode,
23290		},
23291	}
23292	target := &ret
23293	if err := gensupport.DecodeResponse(target, res); err != nil {
23294		return nil, err
23295	}
23296	return ret, nil
23297	// {
23298	//   "description": "Batches multiple return address related calls in a single request.",
23299	//   "httpMethod": "POST",
23300	//   "id": "content.returnaddress.custombatch",
23301	//   "path": "returnaddress/batch",
23302	//   "request": {
23303	//     "$ref": "ReturnaddressCustomBatchRequest"
23304	//   },
23305	//   "response": {
23306	//     "$ref": "ReturnaddressCustomBatchResponse"
23307	//   },
23308	//   "scopes": [
23309	//     "https://www.googleapis.com/auth/content"
23310	//   ]
23311	// }
23312
23313}
23314
23315// method id "content.returnaddress.delete":
23316
23317type ReturnaddressDeleteCall struct {
23318	s               *APIService
23319	merchantId      uint64
23320	returnAddressId string
23321	urlParams_      gensupport.URLParams
23322	ctx_            context.Context
23323	header_         http.Header
23324}
23325
23326// Delete: Deletes a return address for the given Merchant Center
23327// account.
23328func (r *ReturnaddressService) Delete(merchantId uint64, returnAddressId string) *ReturnaddressDeleteCall {
23329	c := &ReturnaddressDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23330	c.merchantId = merchantId
23331	c.returnAddressId = returnAddressId
23332	return c
23333}
23334
23335// Fields allows partial responses to be retrieved. See
23336// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23337// for more information.
23338func (c *ReturnaddressDeleteCall) Fields(s ...googleapi.Field) *ReturnaddressDeleteCall {
23339	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23340	return c
23341}
23342
23343// Context sets the context to be used in this call's Do method. Any
23344// pending HTTP request will be aborted if the provided context is
23345// canceled.
23346func (c *ReturnaddressDeleteCall) Context(ctx context.Context) *ReturnaddressDeleteCall {
23347	c.ctx_ = ctx
23348	return c
23349}
23350
23351// Header returns an http.Header that can be modified by the caller to
23352// add HTTP headers to the request.
23353func (c *ReturnaddressDeleteCall) Header() http.Header {
23354	if c.header_ == nil {
23355		c.header_ = make(http.Header)
23356	}
23357	return c.header_
23358}
23359
23360func (c *ReturnaddressDeleteCall) doRequest(alt string) (*http.Response, error) {
23361	reqHeaders := make(http.Header)
23362	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
23363	for k, v := range c.header_ {
23364		reqHeaders[k] = v
23365	}
23366	reqHeaders.Set("User-Agent", c.s.userAgent())
23367	var body io.Reader = nil
23368	c.urlParams_.Set("alt", alt)
23369	c.urlParams_.Set("prettyPrint", "false")
23370	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnaddress/{returnAddressId}")
23371	urls += "?" + c.urlParams_.Encode()
23372	req, err := http.NewRequest("DELETE", urls, body)
23373	if err != nil {
23374		return nil, err
23375	}
23376	req.Header = reqHeaders
23377	googleapi.Expand(req.URL, map[string]string{
23378		"merchantId":      strconv.FormatUint(c.merchantId, 10),
23379		"returnAddressId": c.returnAddressId,
23380	})
23381	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23382}
23383
23384// Do executes the "content.returnaddress.delete" call.
23385func (c *ReturnaddressDeleteCall) Do(opts ...googleapi.CallOption) error {
23386	gensupport.SetOptions(c.urlParams_, opts...)
23387	res, err := c.doRequest("json")
23388	if err != nil {
23389		return err
23390	}
23391	defer googleapi.CloseBody(res)
23392	if err := googleapi.CheckResponse(res); err != nil {
23393		return err
23394	}
23395	return nil
23396	// {
23397	//   "description": "Deletes a return address for the given Merchant Center account.",
23398	//   "httpMethod": "DELETE",
23399	//   "id": "content.returnaddress.delete",
23400	//   "parameterOrder": [
23401	//     "merchantId",
23402	//     "returnAddressId"
23403	//   ],
23404	//   "parameters": {
23405	//     "merchantId": {
23406	//       "description": "The Merchant Center account from which to delete the given return address.",
23407	//       "format": "uint64",
23408	//       "location": "path",
23409	//       "required": true,
23410	//       "type": "string"
23411	//     },
23412	//     "returnAddressId": {
23413	//       "description": "Return address ID generated by Google.",
23414	//       "location": "path",
23415	//       "required": true,
23416	//       "type": "string"
23417	//     }
23418	//   },
23419	//   "path": "{merchantId}/returnaddress/{returnAddressId}",
23420	//   "scopes": [
23421	//     "https://www.googleapis.com/auth/content"
23422	//   ]
23423	// }
23424
23425}
23426
23427// method id "content.returnaddress.get":
23428
23429type ReturnaddressGetCall struct {
23430	s               *APIService
23431	merchantId      uint64
23432	returnAddressId string
23433	urlParams_      gensupport.URLParams
23434	ifNoneMatch_    string
23435	ctx_            context.Context
23436	header_         http.Header
23437}
23438
23439// Get: Gets a return address of the Merchant Center account.
23440func (r *ReturnaddressService) Get(merchantId uint64, returnAddressId string) *ReturnaddressGetCall {
23441	c := &ReturnaddressGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23442	c.merchantId = merchantId
23443	c.returnAddressId = returnAddressId
23444	return c
23445}
23446
23447// Fields allows partial responses to be retrieved. See
23448// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23449// for more information.
23450func (c *ReturnaddressGetCall) Fields(s ...googleapi.Field) *ReturnaddressGetCall {
23451	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23452	return c
23453}
23454
23455// IfNoneMatch sets the optional parameter which makes the operation
23456// fail if the object's ETag matches the given value. This is useful for
23457// getting updates only after the object has changed since the last
23458// request. Use googleapi.IsNotModified to check whether the response
23459// error from Do is the result of In-None-Match.
23460func (c *ReturnaddressGetCall) IfNoneMatch(entityTag string) *ReturnaddressGetCall {
23461	c.ifNoneMatch_ = entityTag
23462	return c
23463}
23464
23465// Context sets the context to be used in this call's Do method. Any
23466// pending HTTP request will be aborted if the provided context is
23467// canceled.
23468func (c *ReturnaddressGetCall) Context(ctx context.Context) *ReturnaddressGetCall {
23469	c.ctx_ = ctx
23470	return c
23471}
23472
23473// Header returns an http.Header that can be modified by the caller to
23474// add HTTP headers to the request.
23475func (c *ReturnaddressGetCall) Header() http.Header {
23476	if c.header_ == nil {
23477		c.header_ = make(http.Header)
23478	}
23479	return c.header_
23480}
23481
23482func (c *ReturnaddressGetCall) doRequest(alt string) (*http.Response, error) {
23483	reqHeaders := make(http.Header)
23484	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
23485	for k, v := range c.header_ {
23486		reqHeaders[k] = v
23487	}
23488	reqHeaders.Set("User-Agent", c.s.userAgent())
23489	if c.ifNoneMatch_ != "" {
23490		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
23491	}
23492	var body io.Reader = nil
23493	c.urlParams_.Set("alt", alt)
23494	c.urlParams_.Set("prettyPrint", "false")
23495	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnaddress/{returnAddressId}")
23496	urls += "?" + c.urlParams_.Encode()
23497	req, err := http.NewRequest("GET", urls, body)
23498	if err != nil {
23499		return nil, err
23500	}
23501	req.Header = reqHeaders
23502	googleapi.Expand(req.URL, map[string]string{
23503		"merchantId":      strconv.FormatUint(c.merchantId, 10),
23504		"returnAddressId": c.returnAddressId,
23505	})
23506	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23507}
23508
23509// Do executes the "content.returnaddress.get" call.
23510// Exactly one of *ReturnAddress or error will be non-nil. Any non-2xx
23511// status code is an error. Response headers are in either
23512// *ReturnAddress.ServerResponse.Header or (if a response was returned
23513// at all) in error.(*googleapi.Error).Header. Use
23514// googleapi.IsNotModified to check whether the returned error was
23515// because http.StatusNotModified was returned.
23516func (c *ReturnaddressGetCall) Do(opts ...googleapi.CallOption) (*ReturnAddress, error) {
23517	gensupport.SetOptions(c.urlParams_, opts...)
23518	res, err := c.doRequest("json")
23519	if res != nil && res.StatusCode == http.StatusNotModified {
23520		if res.Body != nil {
23521			res.Body.Close()
23522		}
23523		return nil, &googleapi.Error{
23524			Code:   res.StatusCode,
23525			Header: res.Header,
23526		}
23527	}
23528	if err != nil {
23529		return nil, err
23530	}
23531	defer googleapi.CloseBody(res)
23532	if err := googleapi.CheckResponse(res); err != nil {
23533		return nil, err
23534	}
23535	ret := &ReturnAddress{
23536		ServerResponse: googleapi.ServerResponse{
23537			Header:         res.Header,
23538			HTTPStatusCode: res.StatusCode,
23539		},
23540	}
23541	target := &ret
23542	if err := gensupport.DecodeResponse(target, res); err != nil {
23543		return nil, err
23544	}
23545	return ret, nil
23546	// {
23547	//   "description": "Gets a return address of the Merchant Center account.",
23548	//   "httpMethod": "GET",
23549	//   "id": "content.returnaddress.get",
23550	//   "parameterOrder": [
23551	//     "merchantId",
23552	//     "returnAddressId"
23553	//   ],
23554	//   "parameters": {
23555	//     "merchantId": {
23556	//       "description": "The Merchant Center account to get a return address for.",
23557	//       "format": "uint64",
23558	//       "location": "path",
23559	//       "required": true,
23560	//       "type": "string"
23561	//     },
23562	//     "returnAddressId": {
23563	//       "description": "Return address ID generated by Google.",
23564	//       "location": "path",
23565	//       "required": true,
23566	//       "type": "string"
23567	//     }
23568	//   },
23569	//   "path": "{merchantId}/returnaddress/{returnAddressId}",
23570	//   "response": {
23571	//     "$ref": "ReturnAddress"
23572	//   },
23573	//   "scopes": [
23574	//     "https://www.googleapis.com/auth/content"
23575	//   ]
23576	// }
23577
23578}
23579
23580// method id "content.returnaddress.insert":
23581
23582type ReturnaddressInsertCall struct {
23583	s             *APIService
23584	merchantId    uint64
23585	returnaddress *ReturnAddress
23586	urlParams_    gensupport.URLParams
23587	ctx_          context.Context
23588	header_       http.Header
23589}
23590
23591// Insert: Inserts a return address for the Merchant Center account.
23592func (r *ReturnaddressService) Insert(merchantId uint64, returnaddress *ReturnAddress) *ReturnaddressInsertCall {
23593	c := &ReturnaddressInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23594	c.merchantId = merchantId
23595	c.returnaddress = returnaddress
23596	return c
23597}
23598
23599// Fields allows partial responses to be retrieved. See
23600// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23601// for more information.
23602func (c *ReturnaddressInsertCall) Fields(s ...googleapi.Field) *ReturnaddressInsertCall {
23603	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23604	return c
23605}
23606
23607// Context sets the context to be used in this call's Do method. Any
23608// pending HTTP request will be aborted if the provided context is
23609// canceled.
23610func (c *ReturnaddressInsertCall) Context(ctx context.Context) *ReturnaddressInsertCall {
23611	c.ctx_ = ctx
23612	return c
23613}
23614
23615// Header returns an http.Header that can be modified by the caller to
23616// add HTTP headers to the request.
23617func (c *ReturnaddressInsertCall) Header() http.Header {
23618	if c.header_ == nil {
23619		c.header_ = make(http.Header)
23620	}
23621	return c.header_
23622}
23623
23624func (c *ReturnaddressInsertCall) doRequest(alt string) (*http.Response, error) {
23625	reqHeaders := make(http.Header)
23626	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
23627	for k, v := range c.header_ {
23628		reqHeaders[k] = v
23629	}
23630	reqHeaders.Set("User-Agent", c.s.userAgent())
23631	var body io.Reader = nil
23632	body, err := googleapi.WithoutDataWrapper.JSONReader(c.returnaddress)
23633	if err != nil {
23634		return nil, err
23635	}
23636	reqHeaders.Set("Content-Type", "application/json")
23637	c.urlParams_.Set("alt", alt)
23638	c.urlParams_.Set("prettyPrint", "false")
23639	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnaddress")
23640	urls += "?" + c.urlParams_.Encode()
23641	req, err := http.NewRequest("POST", urls, body)
23642	if err != nil {
23643		return nil, err
23644	}
23645	req.Header = reqHeaders
23646	googleapi.Expand(req.URL, map[string]string{
23647		"merchantId": strconv.FormatUint(c.merchantId, 10),
23648	})
23649	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23650}
23651
23652// Do executes the "content.returnaddress.insert" call.
23653// Exactly one of *ReturnAddress or error will be non-nil. Any non-2xx
23654// status code is an error. Response headers are in either
23655// *ReturnAddress.ServerResponse.Header or (if a response was returned
23656// at all) in error.(*googleapi.Error).Header. Use
23657// googleapi.IsNotModified to check whether the returned error was
23658// because http.StatusNotModified was returned.
23659func (c *ReturnaddressInsertCall) Do(opts ...googleapi.CallOption) (*ReturnAddress, error) {
23660	gensupport.SetOptions(c.urlParams_, opts...)
23661	res, err := c.doRequest("json")
23662	if res != nil && res.StatusCode == http.StatusNotModified {
23663		if res.Body != nil {
23664			res.Body.Close()
23665		}
23666		return nil, &googleapi.Error{
23667			Code:   res.StatusCode,
23668			Header: res.Header,
23669		}
23670	}
23671	if err != nil {
23672		return nil, err
23673	}
23674	defer googleapi.CloseBody(res)
23675	if err := googleapi.CheckResponse(res); err != nil {
23676		return nil, err
23677	}
23678	ret := &ReturnAddress{
23679		ServerResponse: googleapi.ServerResponse{
23680			Header:         res.Header,
23681			HTTPStatusCode: res.StatusCode,
23682		},
23683	}
23684	target := &ret
23685	if err := gensupport.DecodeResponse(target, res); err != nil {
23686		return nil, err
23687	}
23688	return ret, nil
23689	// {
23690	//   "description": "Inserts a return address for the Merchant Center account.",
23691	//   "httpMethod": "POST",
23692	//   "id": "content.returnaddress.insert",
23693	//   "parameterOrder": [
23694	//     "merchantId"
23695	//   ],
23696	//   "parameters": {
23697	//     "merchantId": {
23698	//       "description": "The Merchant Center account to insert a return address for.",
23699	//       "format": "uint64",
23700	//       "location": "path",
23701	//       "required": true,
23702	//       "type": "string"
23703	//     }
23704	//   },
23705	//   "path": "{merchantId}/returnaddress",
23706	//   "request": {
23707	//     "$ref": "ReturnAddress"
23708	//   },
23709	//   "response": {
23710	//     "$ref": "ReturnAddress"
23711	//   },
23712	//   "scopes": [
23713	//     "https://www.googleapis.com/auth/content"
23714	//   ]
23715	// }
23716
23717}
23718
23719// method id "content.returnaddress.list":
23720
23721type ReturnaddressListCall struct {
23722	s            *APIService
23723	merchantId   uint64
23724	urlParams_   gensupport.URLParams
23725	ifNoneMatch_ string
23726	ctx_         context.Context
23727	header_      http.Header
23728}
23729
23730// List: Lists the return addresses of the Merchant Center account.
23731func (r *ReturnaddressService) List(merchantId uint64) *ReturnaddressListCall {
23732	c := &ReturnaddressListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23733	c.merchantId = merchantId
23734	return c
23735}
23736
23737// Country sets the optional parameter "country": List only return
23738// addresses applicable to the given country of sale. When omitted, all
23739// return addresses are listed.
23740func (c *ReturnaddressListCall) Country(country string) *ReturnaddressListCall {
23741	c.urlParams_.Set("country", country)
23742	return c
23743}
23744
23745// MaxResults sets the optional parameter "maxResults": The maximum
23746// number of addresses in the response, used for paging.
23747func (c *ReturnaddressListCall) MaxResults(maxResults int64) *ReturnaddressListCall {
23748	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
23749	return c
23750}
23751
23752// PageToken sets the optional parameter "pageToken": The token returned
23753// by the previous request.
23754func (c *ReturnaddressListCall) PageToken(pageToken string) *ReturnaddressListCall {
23755	c.urlParams_.Set("pageToken", pageToken)
23756	return c
23757}
23758
23759// Fields allows partial responses to be retrieved. See
23760// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23761// for more information.
23762func (c *ReturnaddressListCall) Fields(s ...googleapi.Field) *ReturnaddressListCall {
23763	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23764	return c
23765}
23766
23767// IfNoneMatch sets the optional parameter which makes the operation
23768// fail if the object's ETag matches the given value. This is useful for
23769// getting updates only after the object has changed since the last
23770// request. Use googleapi.IsNotModified to check whether the response
23771// error from Do is the result of In-None-Match.
23772func (c *ReturnaddressListCall) IfNoneMatch(entityTag string) *ReturnaddressListCall {
23773	c.ifNoneMatch_ = entityTag
23774	return c
23775}
23776
23777// Context sets the context to be used in this call's Do method. Any
23778// pending HTTP request will be aborted if the provided context is
23779// canceled.
23780func (c *ReturnaddressListCall) Context(ctx context.Context) *ReturnaddressListCall {
23781	c.ctx_ = ctx
23782	return c
23783}
23784
23785// Header returns an http.Header that can be modified by the caller to
23786// add HTTP headers to the request.
23787func (c *ReturnaddressListCall) Header() http.Header {
23788	if c.header_ == nil {
23789		c.header_ = make(http.Header)
23790	}
23791	return c.header_
23792}
23793
23794func (c *ReturnaddressListCall) doRequest(alt string) (*http.Response, error) {
23795	reqHeaders := make(http.Header)
23796	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
23797	for k, v := range c.header_ {
23798		reqHeaders[k] = v
23799	}
23800	reqHeaders.Set("User-Agent", c.s.userAgent())
23801	if c.ifNoneMatch_ != "" {
23802		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
23803	}
23804	var body io.Reader = nil
23805	c.urlParams_.Set("alt", alt)
23806	c.urlParams_.Set("prettyPrint", "false")
23807	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnaddress")
23808	urls += "?" + c.urlParams_.Encode()
23809	req, err := http.NewRequest("GET", urls, body)
23810	if err != nil {
23811		return nil, err
23812	}
23813	req.Header = reqHeaders
23814	googleapi.Expand(req.URL, map[string]string{
23815		"merchantId": strconv.FormatUint(c.merchantId, 10),
23816	})
23817	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23818}
23819
23820// Do executes the "content.returnaddress.list" call.
23821// Exactly one of *ReturnaddressListResponse or error will be non-nil.
23822// Any non-2xx status code is an error. Response headers are in either
23823// *ReturnaddressListResponse.ServerResponse.Header or (if a response
23824// was returned at all) in error.(*googleapi.Error).Header. Use
23825// googleapi.IsNotModified to check whether the returned error was
23826// because http.StatusNotModified was returned.
23827func (c *ReturnaddressListCall) Do(opts ...googleapi.CallOption) (*ReturnaddressListResponse, error) {
23828	gensupport.SetOptions(c.urlParams_, opts...)
23829	res, err := c.doRequest("json")
23830	if res != nil && res.StatusCode == http.StatusNotModified {
23831		if res.Body != nil {
23832			res.Body.Close()
23833		}
23834		return nil, &googleapi.Error{
23835			Code:   res.StatusCode,
23836			Header: res.Header,
23837		}
23838	}
23839	if err != nil {
23840		return nil, err
23841	}
23842	defer googleapi.CloseBody(res)
23843	if err := googleapi.CheckResponse(res); err != nil {
23844		return nil, err
23845	}
23846	ret := &ReturnaddressListResponse{
23847		ServerResponse: googleapi.ServerResponse{
23848			Header:         res.Header,
23849			HTTPStatusCode: res.StatusCode,
23850		},
23851	}
23852	target := &ret
23853	if err := gensupport.DecodeResponse(target, res); err != nil {
23854		return nil, err
23855	}
23856	return ret, nil
23857	// {
23858	//   "description": "Lists the return addresses of the Merchant Center account.",
23859	//   "httpMethod": "GET",
23860	//   "id": "content.returnaddress.list",
23861	//   "parameterOrder": [
23862	//     "merchantId"
23863	//   ],
23864	//   "parameters": {
23865	//     "country": {
23866	//       "description": "List only return addresses applicable to the given country of sale. When omitted, all return addresses are listed.",
23867	//       "location": "query",
23868	//       "type": "string"
23869	//     },
23870	//     "maxResults": {
23871	//       "description": "The maximum number of addresses in the response, used for paging.",
23872	//       "format": "uint32",
23873	//       "location": "query",
23874	//       "type": "integer"
23875	//     },
23876	//     "merchantId": {
23877	//       "description": "The Merchant Center account to list return addresses for.",
23878	//       "format": "uint64",
23879	//       "location": "path",
23880	//       "required": true,
23881	//       "type": "string"
23882	//     },
23883	//     "pageToken": {
23884	//       "description": "The token returned by the previous request.",
23885	//       "location": "query",
23886	//       "type": "string"
23887	//     }
23888	//   },
23889	//   "path": "{merchantId}/returnaddress",
23890	//   "response": {
23891	//     "$ref": "ReturnaddressListResponse"
23892	//   },
23893	//   "scopes": [
23894	//     "https://www.googleapis.com/auth/content"
23895	//   ]
23896	// }
23897
23898}
23899
23900// Pages invokes f for each page of results.
23901// A non-nil error returned from f will halt the iteration.
23902// The provided context supersedes any context provided to the Context method.
23903func (c *ReturnaddressListCall) Pages(ctx context.Context, f func(*ReturnaddressListResponse) error) error {
23904	c.ctx_ = ctx
23905	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
23906	for {
23907		x, err := c.Do()
23908		if err != nil {
23909			return err
23910		}
23911		if err := f(x); err != nil {
23912			return err
23913		}
23914		if x.NextPageToken == "" {
23915			return nil
23916		}
23917		c.PageToken(x.NextPageToken)
23918	}
23919}
23920
23921// method id "content.returnpolicy.custombatch":
23922
23923type ReturnpolicyCustombatchCall struct {
23924	s                              *APIService
23925	returnpolicycustombatchrequest *ReturnpolicyCustomBatchRequest
23926	urlParams_                     gensupport.URLParams
23927	ctx_                           context.Context
23928	header_                        http.Header
23929}
23930
23931// Custombatch: Batches multiple return policy related calls in a single
23932// request.
23933func (r *ReturnpolicyService) Custombatch(returnpolicycustombatchrequest *ReturnpolicyCustomBatchRequest) *ReturnpolicyCustombatchCall {
23934	c := &ReturnpolicyCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23935	c.returnpolicycustombatchrequest = returnpolicycustombatchrequest
23936	return c
23937}
23938
23939// Fields allows partial responses to be retrieved. See
23940// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23941// for more information.
23942func (c *ReturnpolicyCustombatchCall) Fields(s ...googleapi.Field) *ReturnpolicyCustombatchCall {
23943	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23944	return c
23945}
23946
23947// Context sets the context to be used in this call's Do method. Any
23948// pending HTTP request will be aborted if the provided context is
23949// canceled.
23950func (c *ReturnpolicyCustombatchCall) Context(ctx context.Context) *ReturnpolicyCustombatchCall {
23951	c.ctx_ = ctx
23952	return c
23953}
23954
23955// Header returns an http.Header that can be modified by the caller to
23956// add HTTP headers to the request.
23957func (c *ReturnpolicyCustombatchCall) Header() http.Header {
23958	if c.header_ == nil {
23959		c.header_ = make(http.Header)
23960	}
23961	return c.header_
23962}
23963
23964func (c *ReturnpolicyCustombatchCall) doRequest(alt string) (*http.Response, error) {
23965	reqHeaders := make(http.Header)
23966	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
23967	for k, v := range c.header_ {
23968		reqHeaders[k] = v
23969	}
23970	reqHeaders.Set("User-Agent", c.s.userAgent())
23971	var body io.Reader = nil
23972	body, err := googleapi.WithoutDataWrapper.JSONReader(c.returnpolicycustombatchrequest)
23973	if err != nil {
23974		return nil, err
23975	}
23976	reqHeaders.Set("Content-Type", "application/json")
23977	c.urlParams_.Set("alt", alt)
23978	c.urlParams_.Set("prettyPrint", "false")
23979	urls := googleapi.ResolveRelative(c.s.BasePath, "returnpolicy/batch")
23980	urls += "?" + c.urlParams_.Encode()
23981	req, err := http.NewRequest("POST", urls, body)
23982	if err != nil {
23983		return nil, err
23984	}
23985	req.Header = reqHeaders
23986	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23987}
23988
23989// Do executes the "content.returnpolicy.custombatch" call.
23990// Exactly one of *ReturnpolicyCustomBatchResponse or error will be
23991// non-nil. Any non-2xx status code is an error. Response headers are in
23992// either *ReturnpolicyCustomBatchResponse.ServerResponse.Header or (if
23993// a response was returned at all) in error.(*googleapi.Error).Header.
23994// Use googleapi.IsNotModified to check whether the returned error was
23995// because http.StatusNotModified was returned.
23996func (c *ReturnpolicyCustombatchCall) Do(opts ...googleapi.CallOption) (*ReturnpolicyCustomBatchResponse, error) {
23997	gensupport.SetOptions(c.urlParams_, opts...)
23998	res, err := c.doRequest("json")
23999	if res != nil && res.StatusCode == http.StatusNotModified {
24000		if res.Body != nil {
24001			res.Body.Close()
24002		}
24003		return nil, &googleapi.Error{
24004			Code:   res.StatusCode,
24005			Header: res.Header,
24006		}
24007	}
24008	if err != nil {
24009		return nil, err
24010	}
24011	defer googleapi.CloseBody(res)
24012	if err := googleapi.CheckResponse(res); err != nil {
24013		return nil, err
24014	}
24015	ret := &ReturnpolicyCustomBatchResponse{
24016		ServerResponse: googleapi.ServerResponse{
24017			Header:         res.Header,
24018			HTTPStatusCode: res.StatusCode,
24019		},
24020	}
24021	target := &ret
24022	if err := gensupport.DecodeResponse(target, res); err != nil {
24023		return nil, err
24024	}
24025	return ret, nil
24026	// {
24027	//   "description": "Batches multiple return policy related calls in a single request.",
24028	//   "httpMethod": "POST",
24029	//   "id": "content.returnpolicy.custombatch",
24030	//   "path": "returnpolicy/batch",
24031	//   "request": {
24032	//     "$ref": "ReturnpolicyCustomBatchRequest"
24033	//   },
24034	//   "response": {
24035	//     "$ref": "ReturnpolicyCustomBatchResponse"
24036	//   },
24037	//   "scopes": [
24038	//     "https://www.googleapis.com/auth/content"
24039	//   ]
24040	// }
24041
24042}
24043
24044// method id "content.returnpolicy.delete":
24045
24046type ReturnpolicyDeleteCall struct {
24047	s              *APIService
24048	merchantId     uint64
24049	returnPolicyId string
24050	urlParams_     gensupport.URLParams
24051	ctx_           context.Context
24052	header_        http.Header
24053}
24054
24055// Delete: Deletes a return policy for the given Merchant Center
24056// account.
24057func (r *ReturnpolicyService) Delete(merchantId uint64, returnPolicyId string) *ReturnpolicyDeleteCall {
24058	c := &ReturnpolicyDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24059	c.merchantId = merchantId
24060	c.returnPolicyId = returnPolicyId
24061	return c
24062}
24063
24064// Fields allows partial responses to be retrieved. See
24065// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24066// for more information.
24067func (c *ReturnpolicyDeleteCall) Fields(s ...googleapi.Field) *ReturnpolicyDeleteCall {
24068	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24069	return c
24070}
24071
24072// Context sets the context to be used in this call's Do method. Any
24073// pending HTTP request will be aborted if the provided context is
24074// canceled.
24075func (c *ReturnpolicyDeleteCall) Context(ctx context.Context) *ReturnpolicyDeleteCall {
24076	c.ctx_ = ctx
24077	return c
24078}
24079
24080// Header returns an http.Header that can be modified by the caller to
24081// add HTTP headers to the request.
24082func (c *ReturnpolicyDeleteCall) Header() http.Header {
24083	if c.header_ == nil {
24084		c.header_ = make(http.Header)
24085	}
24086	return c.header_
24087}
24088
24089func (c *ReturnpolicyDeleteCall) doRequest(alt string) (*http.Response, error) {
24090	reqHeaders := make(http.Header)
24091	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
24092	for k, v := range c.header_ {
24093		reqHeaders[k] = v
24094	}
24095	reqHeaders.Set("User-Agent", c.s.userAgent())
24096	var body io.Reader = nil
24097	c.urlParams_.Set("alt", alt)
24098	c.urlParams_.Set("prettyPrint", "false")
24099	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicy/{returnPolicyId}")
24100	urls += "?" + c.urlParams_.Encode()
24101	req, err := http.NewRequest("DELETE", urls, body)
24102	if err != nil {
24103		return nil, err
24104	}
24105	req.Header = reqHeaders
24106	googleapi.Expand(req.URL, map[string]string{
24107		"merchantId":     strconv.FormatUint(c.merchantId, 10),
24108		"returnPolicyId": c.returnPolicyId,
24109	})
24110	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24111}
24112
24113// Do executes the "content.returnpolicy.delete" call.
24114func (c *ReturnpolicyDeleteCall) Do(opts ...googleapi.CallOption) error {
24115	gensupport.SetOptions(c.urlParams_, opts...)
24116	res, err := c.doRequest("json")
24117	if err != nil {
24118		return err
24119	}
24120	defer googleapi.CloseBody(res)
24121	if err := googleapi.CheckResponse(res); err != nil {
24122		return err
24123	}
24124	return nil
24125	// {
24126	//   "description": "Deletes a return policy for the given Merchant Center account.",
24127	//   "httpMethod": "DELETE",
24128	//   "id": "content.returnpolicy.delete",
24129	//   "parameterOrder": [
24130	//     "merchantId",
24131	//     "returnPolicyId"
24132	//   ],
24133	//   "parameters": {
24134	//     "merchantId": {
24135	//       "description": "The Merchant Center account from which to delete the given return policy.",
24136	//       "format": "uint64",
24137	//       "location": "path",
24138	//       "required": true,
24139	//       "type": "string"
24140	//     },
24141	//     "returnPolicyId": {
24142	//       "description": "Return policy ID generated by Google.",
24143	//       "location": "path",
24144	//       "required": true,
24145	//       "type": "string"
24146	//     }
24147	//   },
24148	//   "path": "{merchantId}/returnpolicy/{returnPolicyId}",
24149	//   "scopes": [
24150	//     "https://www.googleapis.com/auth/content"
24151	//   ]
24152	// }
24153
24154}
24155
24156// method id "content.returnpolicy.get":
24157
24158type ReturnpolicyGetCall struct {
24159	s              *APIService
24160	merchantId     uint64
24161	returnPolicyId string
24162	urlParams_     gensupport.URLParams
24163	ifNoneMatch_   string
24164	ctx_           context.Context
24165	header_        http.Header
24166}
24167
24168// Get: Gets a return policy of the Merchant Center account.
24169func (r *ReturnpolicyService) Get(merchantId uint64, returnPolicyId string) *ReturnpolicyGetCall {
24170	c := &ReturnpolicyGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24171	c.merchantId = merchantId
24172	c.returnPolicyId = returnPolicyId
24173	return c
24174}
24175
24176// Fields allows partial responses to be retrieved. See
24177// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24178// for more information.
24179func (c *ReturnpolicyGetCall) Fields(s ...googleapi.Field) *ReturnpolicyGetCall {
24180	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24181	return c
24182}
24183
24184// IfNoneMatch sets the optional parameter which makes the operation
24185// fail if the object's ETag matches the given value. This is useful for
24186// getting updates only after the object has changed since the last
24187// request. Use googleapi.IsNotModified to check whether the response
24188// error from Do is the result of In-None-Match.
24189func (c *ReturnpolicyGetCall) IfNoneMatch(entityTag string) *ReturnpolicyGetCall {
24190	c.ifNoneMatch_ = entityTag
24191	return c
24192}
24193
24194// Context sets the context to be used in this call's Do method. Any
24195// pending HTTP request will be aborted if the provided context is
24196// canceled.
24197func (c *ReturnpolicyGetCall) Context(ctx context.Context) *ReturnpolicyGetCall {
24198	c.ctx_ = ctx
24199	return c
24200}
24201
24202// Header returns an http.Header that can be modified by the caller to
24203// add HTTP headers to the request.
24204func (c *ReturnpolicyGetCall) Header() http.Header {
24205	if c.header_ == nil {
24206		c.header_ = make(http.Header)
24207	}
24208	return c.header_
24209}
24210
24211func (c *ReturnpolicyGetCall) doRequest(alt string) (*http.Response, error) {
24212	reqHeaders := make(http.Header)
24213	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
24214	for k, v := range c.header_ {
24215		reqHeaders[k] = v
24216	}
24217	reqHeaders.Set("User-Agent", c.s.userAgent())
24218	if c.ifNoneMatch_ != "" {
24219		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
24220	}
24221	var body io.Reader = nil
24222	c.urlParams_.Set("alt", alt)
24223	c.urlParams_.Set("prettyPrint", "false")
24224	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicy/{returnPolicyId}")
24225	urls += "?" + c.urlParams_.Encode()
24226	req, err := http.NewRequest("GET", urls, body)
24227	if err != nil {
24228		return nil, err
24229	}
24230	req.Header = reqHeaders
24231	googleapi.Expand(req.URL, map[string]string{
24232		"merchantId":     strconv.FormatUint(c.merchantId, 10),
24233		"returnPolicyId": c.returnPolicyId,
24234	})
24235	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24236}
24237
24238// Do executes the "content.returnpolicy.get" call.
24239// Exactly one of *ReturnPolicy or error will be non-nil. Any non-2xx
24240// status code is an error. Response headers are in either
24241// *ReturnPolicy.ServerResponse.Header or (if a response was returned at
24242// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
24243// to check whether the returned error was because
24244// http.StatusNotModified was returned.
24245func (c *ReturnpolicyGetCall) Do(opts ...googleapi.CallOption) (*ReturnPolicy, error) {
24246	gensupport.SetOptions(c.urlParams_, opts...)
24247	res, err := c.doRequest("json")
24248	if res != nil && res.StatusCode == http.StatusNotModified {
24249		if res.Body != nil {
24250			res.Body.Close()
24251		}
24252		return nil, &googleapi.Error{
24253			Code:   res.StatusCode,
24254			Header: res.Header,
24255		}
24256	}
24257	if err != nil {
24258		return nil, err
24259	}
24260	defer googleapi.CloseBody(res)
24261	if err := googleapi.CheckResponse(res); err != nil {
24262		return nil, err
24263	}
24264	ret := &ReturnPolicy{
24265		ServerResponse: googleapi.ServerResponse{
24266			Header:         res.Header,
24267			HTTPStatusCode: res.StatusCode,
24268		},
24269	}
24270	target := &ret
24271	if err := gensupport.DecodeResponse(target, res); err != nil {
24272		return nil, err
24273	}
24274	return ret, nil
24275	// {
24276	//   "description": "Gets a return policy of the Merchant Center account.",
24277	//   "httpMethod": "GET",
24278	//   "id": "content.returnpolicy.get",
24279	//   "parameterOrder": [
24280	//     "merchantId",
24281	//     "returnPolicyId"
24282	//   ],
24283	//   "parameters": {
24284	//     "merchantId": {
24285	//       "description": "The Merchant Center account to get a return policy for.",
24286	//       "format": "uint64",
24287	//       "location": "path",
24288	//       "required": true,
24289	//       "type": "string"
24290	//     },
24291	//     "returnPolicyId": {
24292	//       "description": "Return policy ID generated by Google.",
24293	//       "location": "path",
24294	//       "required": true,
24295	//       "type": "string"
24296	//     }
24297	//   },
24298	//   "path": "{merchantId}/returnpolicy/{returnPolicyId}",
24299	//   "response": {
24300	//     "$ref": "ReturnPolicy"
24301	//   },
24302	//   "scopes": [
24303	//     "https://www.googleapis.com/auth/content"
24304	//   ]
24305	// }
24306
24307}
24308
24309// method id "content.returnpolicy.insert":
24310
24311type ReturnpolicyInsertCall struct {
24312	s            *APIService
24313	merchantId   uint64
24314	returnpolicy *ReturnPolicy
24315	urlParams_   gensupport.URLParams
24316	ctx_         context.Context
24317	header_      http.Header
24318}
24319
24320// Insert: Inserts a return policy for the Merchant Center account.
24321func (r *ReturnpolicyService) Insert(merchantId uint64, returnpolicy *ReturnPolicy) *ReturnpolicyInsertCall {
24322	c := &ReturnpolicyInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24323	c.merchantId = merchantId
24324	c.returnpolicy = returnpolicy
24325	return c
24326}
24327
24328// Fields allows partial responses to be retrieved. See
24329// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24330// for more information.
24331func (c *ReturnpolicyInsertCall) Fields(s ...googleapi.Field) *ReturnpolicyInsertCall {
24332	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24333	return c
24334}
24335
24336// Context sets the context to be used in this call's Do method. Any
24337// pending HTTP request will be aborted if the provided context is
24338// canceled.
24339func (c *ReturnpolicyInsertCall) Context(ctx context.Context) *ReturnpolicyInsertCall {
24340	c.ctx_ = ctx
24341	return c
24342}
24343
24344// Header returns an http.Header that can be modified by the caller to
24345// add HTTP headers to the request.
24346func (c *ReturnpolicyInsertCall) Header() http.Header {
24347	if c.header_ == nil {
24348		c.header_ = make(http.Header)
24349	}
24350	return c.header_
24351}
24352
24353func (c *ReturnpolicyInsertCall) doRequest(alt string) (*http.Response, error) {
24354	reqHeaders := make(http.Header)
24355	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
24356	for k, v := range c.header_ {
24357		reqHeaders[k] = v
24358	}
24359	reqHeaders.Set("User-Agent", c.s.userAgent())
24360	var body io.Reader = nil
24361	body, err := googleapi.WithoutDataWrapper.JSONReader(c.returnpolicy)
24362	if err != nil {
24363		return nil, err
24364	}
24365	reqHeaders.Set("Content-Type", "application/json")
24366	c.urlParams_.Set("alt", alt)
24367	c.urlParams_.Set("prettyPrint", "false")
24368	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicy")
24369	urls += "?" + c.urlParams_.Encode()
24370	req, err := http.NewRequest("POST", urls, body)
24371	if err != nil {
24372		return nil, err
24373	}
24374	req.Header = reqHeaders
24375	googleapi.Expand(req.URL, map[string]string{
24376		"merchantId": strconv.FormatUint(c.merchantId, 10),
24377	})
24378	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24379}
24380
24381// Do executes the "content.returnpolicy.insert" call.
24382// Exactly one of *ReturnPolicy or error will be non-nil. Any non-2xx
24383// status code is an error. Response headers are in either
24384// *ReturnPolicy.ServerResponse.Header or (if a response was returned at
24385// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
24386// to check whether the returned error was because
24387// http.StatusNotModified was returned.
24388func (c *ReturnpolicyInsertCall) Do(opts ...googleapi.CallOption) (*ReturnPolicy, error) {
24389	gensupport.SetOptions(c.urlParams_, opts...)
24390	res, err := c.doRequest("json")
24391	if res != nil && res.StatusCode == http.StatusNotModified {
24392		if res.Body != nil {
24393			res.Body.Close()
24394		}
24395		return nil, &googleapi.Error{
24396			Code:   res.StatusCode,
24397			Header: res.Header,
24398		}
24399	}
24400	if err != nil {
24401		return nil, err
24402	}
24403	defer googleapi.CloseBody(res)
24404	if err := googleapi.CheckResponse(res); err != nil {
24405		return nil, err
24406	}
24407	ret := &ReturnPolicy{
24408		ServerResponse: googleapi.ServerResponse{
24409			Header:         res.Header,
24410			HTTPStatusCode: res.StatusCode,
24411		},
24412	}
24413	target := &ret
24414	if err := gensupport.DecodeResponse(target, res); err != nil {
24415		return nil, err
24416	}
24417	return ret, nil
24418	// {
24419	//   "description": "Inserts a return policy for the Merchant Center account.",
24420	//   "httpMethod": "POST",
24421	//   "id": "content.returnpolicy.insert",
24422	//   "parameterOrder": [
24423	//     "merchantId"
24424	//   ],
24425	//   "parameters": {
24426	//     "merchantId": {
24427	//       "description": "The Merchant Center account to insert a return policy for.",
24428	//       "format": "uint64",
24429	//       "location": "path",
24430	//       "required": true,
24431	//       "type": "string"
24432	//     }
24433	//   },
24434	//   "path": "{merchantId}/returnpolicy",
24435	//   "request": {
24436	//     "$ref": "ReturnPolicy"
24437	//   },
24438	//   "response": {
24439	//     "$ref": "ReturnPolicy"
24440	//   },
24441	//   "scopes": [
24442	//     "https://www.googleapis.com/auth/content"
24443	//   ]
24444	// }
24445
24446}
24447
24448// method id "content.returnpolicy.list":
24449
24450type ReturnpolicyListCall struct {
24451	s            *APIService
24452	merchantId   uint64
24453	urlParams_   gensupport.URLParams
24454	ifNoneMatch_ string
24455	ctx_         context.Context
24456	header_      http.Header
24457}
24458
24459// List: Lists the return policies of the Merchant Center account.
24460func (r *ReturnpolicyService) List(merchantId uint64) *ReturnpolicyListCall {
24461	c := &ReturnpolicyListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24462	c.merchantId = merchantId
24463	return c
24464}
24465
24466// Fields allows partial responses to be retrieved. See
24467// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24468// for more information.
24469func (c *ReturnpolicyListCall) Fields(s ...googleapi.Field) *ReturnpolicyListCall {
24470	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24471	return c
24472}
24473
24474// IfNoneMatch sets the optional parameter which makes the operation
24475// fail if the object's ETag matches the given value. This is useful for
24476// getting updates only after the object has changed since the last
24477// request. Use googleapi.IsNotModified to check whether the response
24478// error from Do is the result of In-None-Match.
24479func (c *ReturnpolicyListCall) IfNoneMatch(entityTag string) *ReturnpolicyListCall {
24480	c.ifNoneMatch_ = entityTag
24481	return c
24482}
24483
24484// Context sets the context to be used in this call's Do method. Any
24485// pending HTTP request will be aborted if the provided context is
24486// canceled.
24487func (c *ReturnpolicyListCall) Context(ctx context.Context) *ReturnpolicyListCall {
24488	c.ctx_ = ctx
24489	return c
24490}
24491
24492// Header returns an http.Header that can be modified by the caller to
24493// add HTTP headers to the request.
24494func (c *ReturnpolicyListCall) Header() http.Header {
24495	if c.header_ == nil {
24496		c.header_ = make(http.Header)
24497	}
24498	return c.header_
24499}
24500
24501func (c *ReturnpolicyListCall) doRequest(alt string) (*http.Response, error) {
24502	reqHeaders := make(http.Header)
24503	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
24504	for k, v := range c.header_ {
24505		reqHeaders[k] = v
24506	}
24507	reqHeaders.Set("User-Agent", c.s.userAgent())
24508	if c.ifNoneMatch_ != "" {
24509		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
24510	}
24511	var body io.Reader = nil
24512	c.urlParams_.Set("alt", alt)
24513	c.urlParams_.Set("prettyPrint", "false")
24514	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicy")
24515	urls += "?" + c.urlParams_.Encode()
24516	req, err := http.NewRequest("GET", urls, body)
24517	if err != nil {
24518		return nil, err
24519	}
24520	req.Header = reqHeaders
24521	googleapi.Expand(req.URL, map[string]string{
24522		"merchantId": strconv.FormatUint(c.merchantId, 10),
24523	})
24524	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24525}
24526
24527// Do executes the "content.returnpolicy.list" call.
24528// Exactly one of *ReturnpolicyListResponse or error will be non-nil.
24529// Any non-2xx status code is an error. Response headers are in either
24530// *ReturnpolicyListResponse.ServerResponse.Header or (if a response was
24531// returned at all) in error.(*googleapi.Error).Header. Use
24532// googleapi.IsNotModified to check whether the returned error was
24533// because http.StatusNotModified was returned.
24534func (c *ReturnpolicyListCall) Do(opts ...googleapi.CallOption) (*ReturnpolicyListResponse, error) {
24535	gensupport.SetOptions(c.urlParams_, opts...)
24536	res, err := c.doRequest("json")
24537	if res != nil && res.StatusCode == http.StatusNotModified {
24538		if res.Body != nil {
24539			res.Body.Close()
24540		}
24541		return nil, &googleapi.Error{
24542			Code:   res.StatusCode,
24543			Header: res.Header,
24544		}
24545	}
24546	if err != nil {
24547		return nil, err
24548	}
24549	defer googleapi.CloseBody(res)
24550	if err := googleapi.CheckResponse(res); err != nil {
24551		return nil, err
24552	}
24553	ret := &ReturnpolicyListResponse{
24554		ServerResponse: googleapi.ServerResponse{
24555			Header:         res.Header,
24556			HTTPStatusCode: res.StatusCode,
24557		},
24558	}
24559	target := &ret
24560	if err := gensupport.DecodeResponse(target, res); err != nil {
24561		return nil, err
24562	}
24563	return ret, nil
24564	// {
24565	//   "description": "Lists the return policies of the Merchant Center account.",
24566	//   "httpMethod": "GET",
24567	//   "id": "content.returnpolicy.list",
24568	//   "parameterOrder": [
24569	//     "merchantId"
24570	//   ],
24571	//   "parameters": {
24572	//     "merchantId": {
24573	//       "description": "The Merchant Center account to list return policies for.",
24574	//       "format": "uint64",
24575	//       "location": "path",
24576	//       "required": true,
24577	//       "type": "string"
24578	//     }
24579	//   },
24580	//   "path": "{merchantId}/returnpolicy",
24581	//   "response": {
24582	//     "$ref": "ReturnpolicyListResponse"
24583	//   },
24584	//   "scopes": [
24585	//     "https://www.googleapis.com/auth/content"
24586	//   ]
24587	// }
24588
24589}
24590
24591// method id "content.shippingsettings.custombatch":
24592
24593type ShippingsettingsCustombatchCall struct {
24594	s                                  *APIService
24595	shippingsettingscustombatchrequest *ShippingsettingsCustomBatchRequest
24596	urlParams_                         gensupport.URLParams
24597	ctx_                               context.Context
24598	header_                            http.Header
24599}
24600
24601// Custombatch: Retrieves and updates the shipping settings of multiple
24602// accounts in a single request.
24603func (r *ShippingsettingsService) Custombatch(shippingsettingscustombatchrequest *ShippingsettingsCustomBatchRequest) *ShippingsettingsCustombatchCall {
24604	c := &ShippingsettingsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24605	c.shippingsettingscustombatchrequest = shippingsettingscustombatchrequest
24606	return c
24607}
24608
24609// Fields allows partial responses to be retrieved. See
24610// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24611// for more information.
24612func (c *ShippingsettingsCustombatchCall) Fields(s ...googleapi.Field) *ShippingsettingsCustombatchCall {
24613	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24614	return c
24615}
24616
24617// Context sets the context to be used in this call's Do method. Any
24618// pending HTTP request will be aborted if the provided context is
24619// canceled.
24620func (c *ShippingsettingsCustombatchCall) Context(ctx context.Context) *ShippingsettingsCustombatchCall {
24621	c.ctx_ = ctx
24622	return c
24623}
24624
24625// Header returns an http.Header that can be modified by the caller to
24626// add HTTP headers to the request.
24627func (c *ShippingsettingsCustombatchCall) Header() http.Header {
24628	if c.header_ == nil {
24629		c.header_ = make(http.Header)
24630	}
24631	return c.header_
24632}
24633
24634func (c *ShippingsettingsCustombatchCall) doRequest(alt string) (*http.Response, error) {
24635	reqHeaders := make(http.Header)
24636	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
24637	for k, v := range c.header_ {
24638		reqHeaders[k] = v
24639	}
24640	reqHeaders.Set("User-Agent", c.s.userAgent())
24641	var body io.Reader = nil
24642	body, err := googleapi.WithoutDataWrapper.JSONReader(c.shippingsettingscustombatchrequest)
24643	if err != nil {
24644		return nil, err
24645	}
24646	reqHeaders.Set("Content-Type", "application/json")
24647	c.urlParams_.Set("alt", alt)
24648	c.urlParams_.Set("prettyPrint", "false")
24649	urls := googleapi.ResolveRelative(c.s.BasePath, "shippingsettings/batch")
24650	urls += "?" + c.urlParams_.Encode()
24651	req, err := http.NewRequest("POST", urls, body)
24652	if err != nil {
24653		return nil, err
24654	}
24655	req.Header = reqHeaders
24656	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24657}
24658
24659// Do executes the "content.shippingsettings.custombatch" call.
24660// Exactly one of *ShippingsettingsCustomBatchResponse or error will be
24661// non-nil. Any non-2xx status code is an error. Response headers are in
24662// either *ShippingsettingsCustomBatchResponse.ServerResponse.Header or
24663// (if a response was returned at all) in
24664// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
24665// whether the returned error was because http.StatusNotModified was
24666// returned.
24667func (c *ShippingsettingsCustombatchCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsCustomBatchResponse, error) {
24668	gensupport.SetOptions(c.urlParams_, opts...)
24669	res, err := c.doRequest("json")
24670	if res != nil && res.StatusCode == http.StatusNotModified {
24671		if res.Body != nil {
24672			res.Body.Close()
24673		}
24674		return nil, &googleapi.Error{
24675			Code:   res.StatusCode,
24676			Header: res.Header,
24677		}
24678	}
24679	if err != nil {
24680		return nil, err
24681	}
24682	defer googleapi.CloseBody(res)
24683	if err := googleapi.CheckResponse(res); err != nil {
24684		return nil, err
24685	}
24686	ret := &ShippingsettingsCustomBatchResponse{
24687		ServerResponse: googleapi.ServerResponse{
24688			Header:         res.Header,
24689			HTTPStatusCode: res.StatusCode,
24690		},
24691	}
24692	target := &ret
24693	if err := gensupport.DecodeResponse(target, res); err != nil {
24694		return nil, err
24695	}
24696	return ret, nil
24697	// {
24698	//   "description": "Retrieves and updates the shipping settings of multiple accounts in a single request.",
24699	//   "httpMethod": "POST",
24700	//   "id": "content.shippingsettings.custombatch",
24701	//   "path": "shippingsettings/batch",
24702	//   "request": {
24703	//     "$ref": "ShippingsettingsCustomBatchRequest"
24704	//   },
24705	//   "response": {
24706	//     "$ref": "ShippingsettingsCustomBatchResponse"
24707	//   },
24708	//   "scopes": [
24709	//     "https://www.googleapis.com/auth/content"
24710	//   ]
24711	// }
24712
24713}
24714
24715// method id "content.shippingsettings.get":
24716
24717type ShippingsettingsGetCall struct {
24718	s            *APIService
24719	merchantId   uint64
24720	accountId    uint64
24721	urlParams_   gensupport.URLParams
24722	ifNoneMatch_ string
24723	ctx_         context.Context
24724	header_      http.Header
24725}
24726
24727// Get: Retrieves the shipping settings of the account.
24728func (r *ShippingsettingsService) Get(merchantId uint64, accountId uint64) *ShippingsettingsGetCall {
24729	c := &ShippingsettingsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24730	c.merchantId = merchantId
24731	c.accountId = accountId
24732	return c
24733}
24734
24735// Fields allows partial responses to be retrieved. See
24736// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24737// for more information.
24738func (c *ShippingsettingsGetCall) Fields(s ...googleapi.Field) *ShippingsettingsGetCall {
24739	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24740	return c
24741}
24742
24743// IfNoneMatch sets the optional parameter which makes the operation
24744// fail if the object's ETag matches the given value. This is useful for
24745// getting updates only after the object has changed since the last
24746// request. Use googleapi.IsNotModified to check whether the response
24747// error from Do is the result of In-None-Match.
24748func (c *ShippingsettingsGetCall) IfNoneMatch(entityTag string) *ShippingsettingsGetCall {
24749	c.ifNoneMatch_ = entityTag
24750	return c
24751}
24752
24753// Context sets the context to be used in this call's Do method. Any
24754// pending HTTP request will be aborted if the provided context is
24755// canceled.
24756func (c *ShippingsettingsGetCall) Context(ctx context.Context) *ShippingsettingsGetCall {
24757	c.ctx_ = ctx
24758	return c
24759}
24760
24761// Header returns an http.Header that can be modified by the caller to
24762// add HTTP headers to the request.
24763func (c *ShippingsettingsGetCall) Header() http.Header {
24764	if c.header_ == nil {
24765		c.header_ = make(http.Header)
24766	}
24767	return c.header_
24768}
24769
24770func (c *ShippingsettingsGetCall) doRequest(alt string) (*http.Response, error) {
24771	reqHeaders := make(http.Header)
24772	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
24773	for k, v := range c.header_ {
24774		reqHeaders[k] = v
24775	}
24776	reqHeaders.Set("User-Agent", c.s.userAgent())
24777	if c.ifNoneMatch_ != "" {
24778		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
24779	}
24780	var body io.Reader = nil
24781	c.urlParams_.Set("alt", alt)
24782	c.urlParams_.Set("prettyPrint", "false")
24783	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/shippingsettings/{accountId}")
24784	urls += "?" + c.urlParams_.Encode()
24785	req, err := http.NewRequest("GET", urls, body)
24786	if err != nil {
24787		return nil, err
24788	}
24789	req.Header = reqHeaders
24790	googleapi.Expand(req.URL, map[string]string{
24791		"merchantId": strconv.FormatUint(c.merchantId, 10),
24792		"accountId":  strconv.FormatUint(c.accountId, 10),
24793	})
24794	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24795}
24796
24797// Do executes the "content.shippingsettings.get" call.
24798// Exactly one of *ShippingSettings or error will be non-nil. Any
24799// non-2xx status code is an error. Response headers are in either
24800// *ShippingSettings.ServerResponse.Header or (if a response was
24801// returned at all) in error.(*googleapi.Error).Header. Use
24802// googleapi.IsNotModified to check whether the returned error was
24803// because http.StatusNotModified was returned.
24804func (c *ShippingsettingsGetCall) Do(opts ...googleapi.CallOption) (*ShippingSettings, error) {
24805	gensupport.SetOptions(c.urlParams_, opts...)
24806	res, err := c.doRequest("json")
24807	if res != nil && res.StatusCode == http.StatusNotModified {
24808		if res.Body != nil {
24809			res.Body.Close()
24810		}
24811		return nil, &googleapi.Error{
24812			Code:   res.StatusCode,
24813			Header: res.Header,
24814		}
24815	}
24816	if err != nil {
24817		return nil, err
24818	}
24819	defer googleapi.CloseBody(res)
24820	if err := googleapi.CheckResponse(res); err != nil {
24821		return nil, err
24822	}
24823	ret := &ShippingSettings{
24824		ServerResponse: googleapi.ServerResponse{
24825			Header:         res.Header,
24826			HTTPStatusCode: res.StatusCode,
24827		},
24828	}
24829	target := &ret
24830	if err := gensupport.DecodeResponse(target, res); err != nil {
24831		return nil, err
24832	}
24833	return ret, nil
24834	// {
24835	//   "description": "Retrieves the shipping settings of the account.",
24836	//   "httpMethod": "GET",
24837	//   "id": "content.shippingsettings.get",
24838	//   "parameterOrder": [
24839	//     "merchantId",
24840	//     "accountId"
24841	//   ],
24842	//   "parameters": {
24843	//     "accountId": {
24844	//       "description": "The ID of the account for which to get/update shipping settings.",
24845	//       "format": "uint64",
24846	//       "location": "path",
24847	//       "required": true,
24848	//       "type": "string"
24849	//     },
24850	//     "merchantId": {
24851	//       "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.",
24852	//       "format": "uint64",
24853	//       "location": "path",
24854	//       "required": true,
24855	//       "type": "string"
24856	//     }
24857	//   },
24858	//   "path": "{merchantId}/shippingsettings/{accountId}",
24859	//   "response": {
24860	//     "$ref": "ShippingSettings"
24861	//   },
24862	//   "scopes": [
24863	//     "https://www.googleapis.com/auth/content"
24864	//   ]
24865	// }
24866
24867}
24868
24869// method id "content.shippingsettings.getsupportedcarriers":
24870
24871type ShippingsettingsGetsupportedcarriersCall struct {
24872	s            *APIService
24873	merchantId   uint64
24874	urlParams_   gensupport.URLParams
24875	ifNoneMatch_ string
24876	ctx_         context.Context
24877	header_      http.Header
24878}
24879
24880// Getsupportedcarriers: Retrieves supported carriers and carrier
24881// services for an account.
24882func (r *ShippingsettingsService) Getsupportedcarriers(merchantId uint64) *ShippingsettingsGetsupportedcarriersCall {
24883	c := &ShippingsettingsGetsupportedcarriersCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24884	c.merchantId = merchantId
24885	return c
24886}
24887
24888// Fields allows partial responses to be retrieved. See
24889// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24890// for more information.
24891func (c *ShippingsettingsGetsupportedcarriersCall) Fields(s ...googleapi.Field) *ShippingsettingsGetsupportedcarriersCall {
24892	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24893	return c
24894}
24895
24896// IfNoneMatch sets the optional parameter which makes the operation
24897// fail if the object's ETag matches the given value. This is useful for
24898// getting updates only after the object has changed since the last
24899// request. Use googleapi.IsNotModified to check whether the response
24900// error from Do is the result of In-None-Match.
24901func (c *ShippingsettingsGetsupportedcarriersCall) IfNoneMatch(entityTag string) *ShippingsettingsGetsupportedcarriersCall {
24902	c.ifNoneMatch_ = entityTag
24903	return c
24904}
24905
24906// Context sets the context to be used in this call's Do method. Any
24907// pending HTTP request will be aborted if the provided context is
24908// canceled.
24909func (c *ShippingsettingsGetsupportedcarriersCall) Context(ctx context.Context) *ShippingsettingsGetsupportedcarriersCall {
24910	c.ctx_ = ctx
24911	return c
24912}
24913
24914// Header returns an http.Header that can be modified by the caller to
24915// add HTTP headers to the request.
24916func (c *ShippingsettingsGetsupportedcarriersCall) Header() http.Header {
24917	if c.header_ == nil {
24918		c.header_ = make(http.Header)
24919	}
24920	return c.header_
24921}
24922
24923func (c *ShippingsettingsGetsupportedcarriersCall) doRequest(alt string) (*http.Response, error) {
24924	reqHeaders := make(http.Header)
24925	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
24926	for k, v := range c.header_ {
24927		reqHeaders[k] = v
24928	}
24929	reqHeaders.Set("User-Agent", c.s.userAgent())
24930	if c.ifNoneMatch_ != "" {
24931		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
24932	}
24933	var body io.Reader = nil
24934	c.urlParams_.Set("alt", alt)
24935	c.urlParams_.Set("prettyPrint", "false")
24936	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/supportedCarriers")
24937	urls += "?" + c.urlParams_.Encode()
24938	req, err := http.NewRequest("GET", urls, body)
24939	if err != nil {
24940		return nil, err
24941	}
24942	req.Header = reqHeaders
24943	googleapi.Expand(req.URL, map[string]string{
24944		"merchantId": strconv.FormatUint(c.merchantId, 10),
24945	})
24946	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24947}
24948
24949// Do executes the "content.shippingsettings.getsupportedcarriers" call.
24950// Exactly one of *ShippingsettingsGetSupportedCarriersResponse or error
24951// will be non-nil. Any non-2xx status code is an error. Response
24952// headers are in either
24953// *ShippingsettingsGetSupportedCarriersResponse.ServerResponse.Header
24954// or (if a response was returned at all) in
24955// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
24956// whether the returned error was because http.StatusNotModified was
24957// returned.
24958func (c *ShippingsettingsGetsupportedcarriersCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsGetSupportedCarriersResponse, error) {
24959	gensupport.SetOptions(c.urlParams_, opts...)
24960	res, err := c.doRequest("json")
24961	if res != nil && res.StatusCode == http.StatusNotModified {
24962		if res.Body != nil {
24963			res.Body.Close()
24964		}
24965		return nil, &googleapi.Error{
24966			Code:   res.StatusCode,
24967			Header: res.Header,
24968		}
24969	}
24970	if err != nil {
24971		return nil, err
24972	}
24973	defer googleapi.CloseBody(res)
24974	if err := googleapi.CheckResponse(res); err != nil {
24975		return nil, err
24976	}
24977	ret := &ShippingsettingsGetSupportedCarriersResponse{
24978		ServerResponse: googleapi.ServerResponse{
24979			Header:         res.Header,
24980			HTTPStatusCode: res.StatusCode,
24981		},
24982	}
24983	target := &ret
24984	if err := gensupport.DecodeResponse(target, res); err != nil {
24985		return nil, err
24986	}
24987	return ret, nil
24988	// {
24989	//   "description": "Retrieves supported carriers and carrier services for an account.",
24990	//   "httpMethod": "GET",
24991	//   "id": "content.shippingsettings.getsupportedcarriers",
24992	//   "parameterOrder": [
24993	//     "merchantId"
24994	//   ],
24995	//   "parameters": {
24996	//     "merchantId": {
24997	//       "description": "The ID of the account for which to retrieve the supported carriers.",
24998	//       "format": "uint64",
24999	//       "location": "path",
25000	//       "required": true,
25001	//       "type": "string"
25002	//     }
25003	//   },
25004	//   "path": "{merchantId}/supportedCarriers",
25005	//   "response": {
25006	//     "$ref": "ShippingsettingsGetSupportedCarriersResponse"
25007	//   },
25008	//   "scopes": [
25009	//     "https://www.googleapis.com/auth/content"
25010	//   ]
25011	// }
25012
25013}
25014
25015// method id "content.shippingsettings.getsupportedholidays":
25016
25017type ShippingsettingsGetsupportedholidaysCall struct {
25018	s            *APIService
25019	merchantId   uint64
25020	urlParams_   gensupport.URLParams
25021	ifNoneMatch_ string
25022	ctx_         context.Context
25023	header_      http.Header
25024}
25025
25026// Getsupportedholidays: Retrieves supported holidays for an account.
25027func (r *ShippingsettingsService) Getsupportedholidays(merchantId uint64) *ShippingsettingsGetsupportedholidaysCall {
25028	c := &ShippingsettingsGetsupportedholidaysCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25029	c.merchantId = merchantId
25030	return c
25031}
25032
25033// Fields allows partial responses to be retrieved. See
25034// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25035// for more information.
25036func (c *ShippingsettingsGetsupportedholidaysCall) Fields(s ...googleapi.Field) *ShippingsettingsGetsupportedholidaysCall {
25037	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25038	return c
25039}
25040
25041// IfNoneMatch sets the optional parameter which makes the operation
25042// fail if the object's ETag matches the given value. This is useful for
25043// getting updates only after the object has changed since the last
25044// request. Use googleapi.IsNotModified to check whether the response
25045// error from Do is the result of In-None-Match.
25046func (c *ShippingsettingsGetsupportedholidaysCall) IfNoneMatch(entityTag string) *ShippingsettingsGetsupportedholidaysCall {
25047	c.ifNoneMatch_ = entityTag
25048	return c
25049}
25050
25051// Context sets the context to be used in this call's Do method. Any
25052// pending HTTP request will be aborted if the provided context is
25053// canceled.
25054func (c *ShippingsettingsGetsupportedholidaysCall) Context(ctx context.Context) *ShippingsettingsGetsupportedholidaysCall {
25055	c.ctx_ = ctx
25056	return c
25057}
25058
25059// Header returns an http.Header that can be modified by the caller to
25060// add HTTP headers to the request.
25061func (c *ShippingsettingsGetsupportedholidaysCall) Header() http.Header {
25062	if c.header_ == nil {
25063		c.header_ = make(http.Header)
25064	}
25065	return c.header_
25066}
25067
25068func (c *ShippingsettingsGetsupportedholidaysCall) doRequest(alt string) (*http.Response, error) {
25069	reqHeaders := make(http.Header)
25070	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
25071	for k, v := range c.header_ {
25072		reqHeaders[k] = v
25073	}
25074	reqHeaders.Set("User-Agent", c.s.userAgent())
25075	if c.ifNoneMatch_ != "" {
25076		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
25077	}
25078	var body io.Reader = nil
25079	c.urlParams_.Set("alt", alt)
25080	c.urlParams_.Set("prettyPrint", "false")
25081	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/supportedHolidays")
25082	urls += "?" + c.urlParams_.Encode()
25083	req, err := http.NewRequest("GET", urls, body)
25084	if err != nil {
25085		return nil, err
25086	}
25087	req.Header = reqHeaders
25088	googleapi.Expand(req.URL, map[string]string{
25089		"merchantId": strconv.FormatUint(c.merchantId, 10),
25090	})
25091	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25092}
25093
25094// Do executes the "content.shippingsettings.getsupportedholidays" call.
25095// Exactly one of *ShippingsettingsGetSupportedHolidaysResponse or error
25096// will be non-nil. Any non-2xx status code is an error. Response
25097// headers are in either
25098// *ShippingsettingsGetSupportedHolidaysResponse.ServerResponse.Header
25099// or (if a response was returned at all) in
25100// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
25101// whether the returned error was because http.StatusNotModified was
25102// returned.
25103func (c *ShippingsettingsGetsupportedholidaysCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsGetSupportedHolidaysResponse, error) {
25104	gensupport.SetOptions(c.urlParams_, opts...)
25105	res, err := c.doRequest("json")
25106	if res != nil && res.StatusCode == http.StatusNotModified {
25107		if res.Body != nil {
25108			res.Body.Close()
25109		}
25110		return nil, &googleapi.Error{
25111			Code:   res.StatusCode,
25112			Header: res.Header,
25113		}
25114	}
25115	if err != nil {
25116		return nil, err
25117	}
25118	defer googleapi.CloseBody(res)
25119	if err := googleapi.CheckResponse(res); err != nil {
25120		return nil, err
25121	}
25122	ret := &ShippingsettingsGetSupportedHolidaysResponse{
25123		ServerResponse: googleapi.ServerResponse{
25124			Header:         res.Header,
25125			HTTPStatusCode: res.StatusCode,
25126		},
25127	}
25128	target := &ret
25129	if err := gensupport.DecodeResponse(target, res); err != nil {
25130		return nil, err
25131	}
25132	return ret, nil
25133	// {
25134	//   "description": "Retrieves supported holidays for an account.",
25135	//   "httpMethod": "GET",
25136	//   "id": "content.shippingsettings.getsupportedholidays",
25137	//   "parameterOrder": [
25138	//     "merchantId"
25139	//   ],
25140	//   "parameters": {
25141	//     "merchantId": {
25142	//       "description": "The ID of the account for which to retrieve the supported holidays.",
25143	//       "format": "uint64",
25144	//       "location": "path",
25145	//       "required": true,
25146	//       "type": "string"
25147	//     }
25148	//   },
25149	//   "path": "{merchantId}/supportedHolidays",
25150	//   "response": {
25151	//     "$ref": "ShippingsettingsGetSupportedHolidaysResponse"
25152	//   },
25153	//   "scopes": [
25154	//     "https://www.googleapis.com/auth/content"
25155	//   ]
25156	// }
25157
25158}
25159
25160// method id "content.shippingsettings.getsupportedpickupservices":
25161
25162type ShippingsettingsGetsupportedpickupservicesCall struct {
25163	s            *APIService
25164	merchantId   uint64
25165	urlParams_   gensupport.URLParams
25166	ifNoneMatch_ string
25167	ctx_         context.Context
25168	header_      http.Header
25169}
25170
25171// Getsupportedpickupservices: Retrieves supported pickup services for
25172// an account.
25173func (r *ShippingsettingsService) Getsupportedpickupservices(merchantId uint64) *ShippingsettingsGetsupportedpickupservicesCall {
25174	c := &ShippingsettingsGetsupportedpickupservicesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25175	c.merchantId = merchantId
25176	return c
25177}
25178
25179// Fields allows partial responses to be retrieved. See
25180// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25181// for more information.
25182func (c *ShippingsettingsGetsupportedpickupservicesCall) Fields(s ...googleapi.Field) *ShippingsettingsGetsupportedpickupservicesCall {
25183	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25184	return c
25185}
25186
25187// IfNoneMatch sets the optional parameter which makes the operation
25188// fail if the object's ETag matches the given value. This is useful for
25189// getting updates only after the object has changed since the last
25190// request. Use googleapi.IsNotModified to check whether the response
25191// error from Do is the result of In-None-Match.
25192func (c *ShippingsettingsGetsupportedpickupservicesCall) IfNoneMatch(entityTag string) *ShippingsettingsGetsupportedpickupservicesCall {
25193	c.ifNoneMatch_ = entityTag
25194	return c
25195}
25196
25197// Context sets the context to be used in this call's Do method. Any
25198// pending HTTP request will be aborted if the provided context is
25199// canceled.
25200func (c *ShippingsettingsGetsupportedpickupservicesCall) Context(ctx context.Context) *ShippingsettingsGetsupportedpickupservicesCall {
25201	c.ctx_ = ctx
25202	return c
25203}
25204
25205// Header returns an http.Header that can be modified by the caller to
25206// add HTTP headers to the request.
25207func (c *ShippingsettingsGetsupportedpickupservicesCall) Header() http.Header {
25208	if c.header_ == nil {
25209		c.header_ = make(http.Header)
25210	}
25211	return c.header_
25212}
25213
25214func (c *ShippingsettingsGetsupportedpickupservicesCall) doRequest(alt string) (*http.Response, error) {
25215	reqHeaders := make(http.Header)
25216	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
25217	for k, v := range c.header_ {
25218		reqHeaders[k] = v
25219	}
25220	reqHeaders.Set("User-Agent", c.s.userAgent())
25221	if c.ifNoneMatch_ != "" {
25222		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
25223	}
25224	var body io.Reader = nil
25225	c.urlParams_.Set("alt", alt)
25226	c.urlParams_.Set("prettyPrint", "false")
25227	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/supportedPickupServices")
25228	urls += "?" + c.urlParams_.Encode()
25229	req, err := http.NewRequest("GET", urls, body)
25230	if err != nil {
25231		return nil, err
25232	}
25233	req.Header = reqHeaders
25234	googleapi.Expand(req.URL, map[string]string{
25235		"merchantId": strconv.FormatUint(c.merchantId, 10),
25236	})
25237	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25238}
25239
25240// Do executes the "content.shippingsettings.getsupportedpickupservices" call.
25241// Exactly one of *ShippingsettingsGetSupportedPickupServicesResponse or
25242// error will be non-nil. Any non-2xx status code is an error. Response
25243// headers are in either
25244// *ShippingsettingsGetSupportedPickupServicesResponse.ServerResponse.Hea
25245// der or (if a response was returned at all) in
25246// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
25247// whether the returned error was because http.StatusNotModified was
25248// returned.
25249func (c *ShippingsettingsGetsupportedpickupservicesCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsGetSupportedPickupServicesResponse, error) {
25250	gensupport.SetOptions(c.urlParams_, opts...)
25251	res, err := c.doRequest("json")
25252	if res != nil && res.StatusCode == http.StatusNotModified {
25253		if res.Body != nil {
25254			res.Body.Close()
25255		}
25256		return nil, &googleapi.Error{
25257			Code:   res.StatusCode,
25258			Header: res.Header,
25259		}
25260	}
25261	if err != nil {
25262		return nil, err
25263	}
25264	defer googleapi.CloseBody(res)
25265	if err := googleapi.CheckResponse(res); err != nil {
25266		return nil, err
25267	}
25268	ret := &ShippingsettingsGetSupportedPickupServicesResponse{
25269		ServerResponse: googleapi.ServerResponse{
25270			Header:         res.Header,
25271			HTTPStatusCode: res.StatusCode,
25272		},
25273	}
25274	target := &ret
25275	if err := gensupport.DecodeResponse(target, res); err != nil {
25276		return nil, err
25277	}
25278	return ret, nil
25279	// {
25280	//   "description": "Retrieves supported pickup services for an account.",
25281	//   "httpMethod": "GET",
25282	//   "id": "content.shippingsettings.getsupportedpickupservices",
25283	//   "parameterOrder": [
25284	//     "merchantId"
25285	//   ],
25286	//   "parameters": {
25287	//     "merchantId": {
25288	//       "description": "The ID of the account for which to retrieve the supported pickup services.",
25289	//       "format": "uint64",
25290	//       "location": "path",
25291	//       "required": true,
25292	//       "type": "string"
25293	//     }
25294	//   },
25295	//   "path": "{merchantId}/supportedPickupServices",
25296	//   "response": {
25297	//     "$ref": "ShippingsettingsGetSupportedPickupServicesResponse"
25298	//   },
25299	//   "scopes": [
25300	//     "https://www.googleapis.com/auth/content"
25301	//   ]
25302	// }
25303
25304}
25305
25306// method id "content.shippingsettings.list":
25307
25308type ShippingsettingsListCall struct {
25309	s            *APIService
25310	merchantId   uint64
25311	urlParams_   gensupport.URLParams
25312	ifNoneMatch_ string
25313	ctx_         context.Context
25314	header_      http.Header
25315}
25316
25317// List: Lists the shipping settings of the sub-accounts in your
25318// Merchant Center account.
25319func (r *ShippingsettingsService) List(merchantId uint64) *ShippingsettingsListCall {
25320	c := &ShippingsettingsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25321	c.merchantId = merchantId
25322	return c
25323}
25324
25325// MaxResults sets the optional parameter "maxResults": The maximum
25326// number of shipping settings to return in the response, used for
25327// paging.
25328func (c *ShippingsettingsListCall) MaxResults(maxResults int64) *ShippingsettingsListCall {
25329	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
25330	return c
25331}
25332
25333// PageToken sets the optional parameter "pageToken": The token returned
25334// by the previous request.
25335func (c *ShippingsettingsListCall) PageToken(pageToken string) *ShippingsettingsListCall {
25336	c.urlParams_.Set("pageToken", pageToken)
25337	return c
25338}
25339
25340// Fields allows partial responses to be retrieved. See
25341// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25342// for more information.
25343func (c *ShippingsettingsListCall) Fields(s ...googleapi.Field) *ShippingsettingsListCall {
25344	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25345	return c
25346}
25347
25348// IfNoneMatch sets the optional parameter which makes the operation
25349// fail if the object's ETag matches the given value. This is useful for
25350// getting updates only after the object has changed since the last
25351// request. Use googleapi.IsNotModified to check whether the response
25352// error from Do is the result of In-None-Match.
25353func (c *ShippingsettingsListCall) IfNoneMatch(entityTag string) *ShippingsettingsListCall {
25354	c.ifNoneMatch_ = entityTag
25355	return c
25356}
25357
25358// Context sets the context to be used in this call's Do method. Any
25359// pending HTTP request will be aborted if the provided context is
25360// canceled.
25361func (c *ShippingsettingsListCall) Context(ctx context.Context) *ShippingsettingsListCall {
25362	c.ctx_ = ctx
25363	return c
25364}
25365
25366// Header returns an http.Header that can be modified by the caller to
25367// add HTTP headers to the request.
25368func (c *ShippingsettingsListCall) Header() http.Header {
25369	if c.header_ == nil {
25370		c.header_ = make(http.Header)
25371	}
25372	return c.header_
25373}
25374
25375func (c *ShippingsettingsListCall) doRequest(alt string) (*http.Response, error) {
25376	reqHeaders := make(http.Header)
25377	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
25378	for k, v := range c.header_ {
25379		reqHeaders[k] = v
25380	}
25381	reqHeaders.Set("User-Agent", c.s.userAgent())
25382	if c.ifNoneMatch_ != "" {
25383		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
25384	}
25385	var body io.Reader = nil
25386	c.urlParams_.Set("alt", alt)
25387	c.urlParams_.Set("prettyPrint", "false")
25388	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/shippingsettings")
25389	urls += "?" + c.urlParams_.Encode()
25390	req, err := http.NewRequest("GET", urls, body)
25391	if err != nil {
25392		return nil, err
25393	}
25394	req.Header = reqHeaders
25395	googleapi.Expand(req.URL, map[string]string{
25396		"merchantId": strconv.FormatUint(c.merchantId, 10),
25397	})
25398	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25399}
25400
25401// Do executes the "content.shippingsettings.list" call.
25402// Exactly one of *ShippingsettingsListResponse or error will be
25403// non-nil. Any non-2xx status code is an error. Response headers are in
25404// either *ShippingsettingsListResponse.ServerResponse.Header or (if a
25405// response was returned at all) in error.(*googleapi.Error).Header. Use
25406// googleapi.IsNotModified to check whether the returned error was
25407// because http.StatusNotModified was returned.
25408func (c *ShippingsettingsListCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsListResponse, error) {
25409	gensupport.SetOptions(c.urlParams_, opts...)
25410	res, err := c.doRequest("json")
25411	if res != nil && res.StatusCode == http.StatusNotModified {
25412		if res.Body != nil {
25413			res.Body.Close()
25414		}
25415		return nil, &googleapi.Error{
25416			Code:   res.StatusCode,
25417			Header: res.Header,
25418		}
25419	}
25420	if err != nil {
25421		return nil, err
25422	}
25423	defer googleapi.CloseBody(res)
25424	if err := googleapi.CheckResponse(res); err != nil {
25425		return nil, err
25426	}
25427	ret := &ShippingsettingsListResponse{
25428		ServerResponse: googleapi.ServerResponse{
25429			Header:         res.Header,
25430			HTTPStatusCode: res.StatusCode,
25431		},
25432	}
25433	target := &ret
25434	if err := gensupport.DecodeResponse(target, res); err != nil {
25435		return nil, err
25436	}
25437	return ret, nil
25438	// {
25439	//   "description": "Lists the shipping settings of the sub-accounts in your Merchant Center account.",
25440	//   "httpMethod": "GET",
25441	//   "id": "content.shippingsettings.list",
25442	//   "parameterOrder": [
25443	//     "merchantId"
25444	//   ],
25445	//   "parameters": {
25446	//     "maxResults": {
25447	//       "description": "The maximum number of shipping settings to return in the response, used for paging.",
25448	//       "format": "uint32",
25449	//       "location": "query",
25450	//       "type": "integer"
25451	//     },
25452	//     "merchantId": {
25453	//       "description": "The ID of the managing account. This must be a multi-client account.",
25454	//       "format": "uint64",
25455	//       "location": "path",
25456	//       "required": true,
25457	//       "type": "string"
25458	//     },
25459	//     "pageToken": {
25460	//       "description": "The token returned by the previous request.",
25461	//       "location": "query",
25462	//       "type": "string"
25463	//     }
25464	//   },
25465	//   "path": "{merchantId}/shippingsettings",
25466	//   "response": {
25467	//     "$ref": "ShippingsettingsListResponse"
25468	//   },
25469	//   "scopes": [
25470	//     "https://www.googleapis.com/auth/content"
25471	//   ]
25472	// }
25473
25474}
25475
25476// Pages invokes f for each page of results.
25477// A non-nil error returned from f will halt the iteration.
25478// The provided context supersedes any context provided to the Context method.
25479func (c *ShippingsettingsListCall) Pages(ctx context.Context, f func(*ShippingsettingsListResponse) error) error {
25480	c.ctx_ = ctx
25481	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
25482	for {
25483		x, err := c.Do()
25484		if err != nil {
25485			return err
25486		}
25487		if err := f(x); err != nil {
25488			return err
25489		}
25490		if x.NextPageToken == "" {
25491			return nil
25492		}
25493		c.PageToken(x.NextPageToken)
25494	}
25495}
25496
25497// method id "content.shippingsettings.update":
25498
25499type ShippingsettingsUpdateCall struct {
25500	s                *APIService
25501	merchantId       uint64
25502	accountId        uint64
25503	shippingsettings *ShippingSettings
25504	urlParams_       gensupport.URLParams
25505	ctx_             context.Context
25506	header_          http.Header
25507}
25508
25509// Update: Updates the shipping settings of the account.
25510func (r *ShippingsettingsService) Update(merchantId uint64, accountId uint64, shippingsettings *ShippingSettings) *ShippingsettingsUpdateCall {
25511	c := &ShippingsettingsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25512	c.merchantId = merchantId
25513	c.accountId = accountId
25514	c.shippingsettings = shippingsettings
25515	return c
25516}
25517
25518// Fields allows partial responses to be retrieved. See
25519// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25520// for more information.
25521func (c *ShippingsettingsUpdateCall) Fields(s ...googleapi.Field) *ShippingsettingsUpdateCall {
25522	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25523	return c
25524}
25525
25526// Context sets the context to be used in this call's Do method. Any
25527// pending HTTP request will be aborted if the provided context is
25528// canceled.
25529func (c *ShippingsettingsUpdateCall) Context(ctx context.Context) *ShippingsettingsUpdateCall {
25530	c.ctx_ = ctx
25531	return c
25532}
25533
25534// Header returns an http.Header that can be modified by the caller to
25535// add HTTP headers to the request.
25536func (c *ShippingsettingsUpdateCall) Header() http.Header {
25537	if c.header_ == nil {
25538		c.header_ = make(http.Header)
25539	}
25540	return c.header_
25541}
25542
25543func (c *ShippingsettingsUpdateCall) doRequest(alt string) (*http.Response, error) {
25544	reqHeaders := make(http.Header)
25545	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200302")
25546	for k, v := range c.header_ {
25547		reqHeaders[k] = v
25548	}
25549	reqHeaders.Set("User-Agent", c.s.userAgent())
25550	var body io.Reader = nil
25551	body, err := googleapi.WithoutDataWrapper.JSONReader(c.shippingsettings)
25552	if err != nil {
25553		return nil, err
25554	}
25555	reqHeaders.Set("Content-Type", "application/json")
25556	c.urlParams_.Set("alt", alt)
25557	c.urlParams_.Set("prettyPrint", "false")
25558	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/shippingsettings/{accountId}")
25559	urls += "?" + c.urlParams_.Encode()
25560	req, err := http.NewRequest("PUT", urls, body)
25561	if err != nil {
25562		return nil, err
25563	}
25564	req.Header = reqHeaders
25565	googleapi.Expand(req.URL, map[string]string{
25566		"merchantId": strconv.FormatUint(c.merchantId, 10),
25567		"accountId":  strconv.FormatUint(c.accountId, 10),
25568	})
25569	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25570}
25571
25572// Do executes the "content.shippingsettings.update" call.
25573// Exactly one of *ShippingSettings or error will be non-nil. Any
25574// non-2xx status code is an error. Response headers are in either
25575// *ShippingSettings.ServerResponse.Header or (if a response was
25576// returned at all) in error.(*googleapi.Error).Header. Use
25577// googleapi.IsNotModified to check whether the returned error was
25578// because http.StatusNotModified was returned.
25579func (c *ShippingsettingsUpdateCall) Do(opts ...googleapi.CallOption) (*ShippingSettings, error) {
25580	gensupport.SetOptions(c.urlParams_, opts...)
25581	res, err := c.doRequest("json")
25582	if res != nil && res.StatusCode == http.StatusNotModified {
25583		if res.Body != nil {
25584			res.Body.Close()
25585		}
25586		return nil, &googleapi.Error{
25587			Code:   res.StatusCode,
25588			Header: res.Header,
25589		}
25590	}
25591	if err != nil {
25592		return nil, err
25593	}
25594	defer googleapi.CloseBody(res)
25595	if err := googleapi.CheckResponse(res); err != nil {
25596		return nil, err
25597	}
25598	ret := &ShippingSettings{
25599		ServerResponse: googleapi.ServerResponse{
25600			Header:         res.Header,
25601			HTTPStatusCode: res.StatusCode,
25602		},
25603	}
25604	target := &ret
25605	if err := gensupport.DecodeResponse(target, res); err != nil {
25606		return nil, err
25607	}
25608	return ret, nil
25609	// {
25610	//   "description": "Updates the shipping settings of the account.",
25611	//   "httpMethod": "PUT",
25612	//   "id": "content.shippingsettings.update",
25613	//   "parameterOrder": [
25614	//     "merchantId",
25615	//     "accountId"
25616	//   ],
25617	//   "parameters": {
25618	//     "accountId": {
25619	//       "description": "The ID of the account for which to get/update shipping settings.",
25620	//       "format": "uint64",
25621	//       "location": "path",
25622	//       "required": true,
25623	//       "type": "string"
25624	//     },
25625	//     "merchantId": {
25626	//       "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.",
25627	//       "format": "uint64",
25628	//       "location": "path",
25629	//       "required": true,
25630	//       "type": "string"
25631	//     }
25632	//   },
25633	//   "path": "{merchantId}/shippingsettings/{accountId}",
25634	//   "request": {
25635	//     "$ref": "ShippingSettings"
25636	//   },
25637	//   "response": {
25638	//     "$ref": "ShippingSettings"
25639	//   },
25640	//   "scopes": [
25641	//     "https://www.googleapis.com/auth/content"
25642	//   ]
25643	// }
25644
25645}
25646