1// Copyright 2021 Google LLC.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5// Code generated file. DO NOT EDIT.
6
7// Package content provides access to the Content API for Shopping.
8//
9// For product documentation, see: https://developers.google.com/shopping-content/v2/
10//
11// Creating a client
12//
13// Usage example:
14//
15//   import "google.golang.org/api/content/v2"
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"
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"
75const apiName = "content"
76const apiVersion = "v2"
77const basePath = "https://shoppingcontent.googleapis.com/content/v2/"
78const mtlsBasePath = "https://shoppingcontent.mtls.googleapis.com/content/v2/"
79
80// OAuth2 scopes used by this API.
81const (
82	// Manage your product listings and accounts for Google Shopping
83	ContentScope = "https://www.googleapis.com/auth/content"
84)
85
86// NewService creates a new APIService.
87func NewService(ctx context.Context, opts ...option.ClientOption) (*APIService, error) {
88	scopesOption := option.WithScopes(
89		"https://www.googleapis.com/auth/content",
90	)
91	// NOTE: prepend, so we don't override user-specified scopes.
92	opts = append([]option.ClientOption{scopesOption}, opts...)
93	opts = append(opts, internaloption.WithDefaultEndpoint(basePath))
94	opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath))
95	client, endpoint, err := htransport.NewClient(ctx, opts...)
96	if err != nil {
97		return nil, err
98	}
99	s, err := New(client)
100	if err != nil {
101		return nil, err
102	}
103	if endpoint != "" {
104		s.BasePath = endpoint
105	}
106	return s, nil
107}
108
109// New creates a new APIService. It uses the provided http.Client for requests.
110//
111// Deprecated: please use NewService instead.
112// To provide a custom HTTP client, use option.WithHTTPClient.
113// If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead.
114func New(client *http.Client) (*APIService, error) {
115	if client == nil {
116		return nil, errors.New("client is nil")
117	}
118	s := &APIService{client: client, BasePath: basePath}
119	s.Accounts = NewAccountsService(s)
120	s.Accountstatuses = NewAccountstatusesService(s)
121	s.Accounttax = NewAccounttaxService(s)
122	s.Datafeeds = NewDatafeedsService(s)
123	s.Datafeedstatuses = NewDatafeedstatusesService(s)
124	s.Inventory = NewInventoryService(s)
125	s.Liasettings = NewLiasettingsService(s)
126	s.Orderinvoices = NewOrderinvoicesService(s)
127	s.Orderreports = NewOrderreportsService(s)
128	s.Orderreturns = NewOrderreturnsService(s)
129	s.Orders = NewOrdersService(s)
130	s.Pos = NewPosService(s)
131	s.Products = NewProductsService(s)
132	s.Productstatuses = NewProductstatusesService(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	Inventory *InventoryService
153
154	Liasettings *LiasettingsService
155
156	Orderinvoices *OrderinvoicesService
157
158	Orderreports *OrderreportsService
159
160	Orderreturns *OrderreturnsService
161
162	Orders *OrdersService
163
164	Pos *PosService
165
166	Products *ProductsService
167
168	Productstatuses *ProductstatusesService
169
170	Shippingsettings *ShippingsettingsService
171}
172
173func (s *APIService) userAgent() string {
174	if s.UserAgent == "" {
175		return googleapi.UserAgent
176	}
177	return googleapi.UserAgent + " " + s.UserAgent
178}
179
180func NewAccountsService(s *APIService) *AccountsService {
181	rs := &AccountsService{s: s}
182	return rs
183}
184
185type AccountsService struct {
186	s *APIService
187}
188
189func NewAccountstatusesService(s *APIService) *AccountstatusesService {
190	rs := &AccountstatusesService{s: s}
191	return rs
192}
193
194type AccountstatusesService struct {
195	s *APIService
196}
197
198func NewAccounttaxService(s *APIService) *AccounttaxService {
199	rs := &AccounttaxService{s: s}
200	return rs
201}
202
203type AccounttaxService struct {
204	s *APIService
205}
206
207func NewDatafeedsService(s *APIService) *DatafeedsService {
208	rs := &DatafeedsService{s: s}
209	return rs
210}
211
212type DatafeedsService struct {
213	s *APIService
214}
215
216func NewDatafeedstatusesService(s *APIService) *DatafeedstatusesService {
217	rs := &DatafeedstatusesService{s: s}
218	return rs
219}
220
221type DatafeedstatusesService struct {
222	s *APIService
223}
224
225func NewInventoryService(s *APIService) *InventoryService {
226	rs := &InventoryService{s: s}
227	return rs
228}
229
230type InventoryService struct {
231	s *APIService
232}
233
234func NewLiasettingsService(s *APIService) *LiasettingsService {
235	rs := &LiasettingsService{s: s}
236	return rs
237}
238
239type LiasettingsService struct {
240	s *APIService
241}
242
243func NewOrderinvoicesService(s *APIService) *OrderinvoicesService {
244	rs := &OrderinvoicesService{s: s}
245	return rs
246}
247
248type OrderinvoicesService struct {
249	s *APIService
250}
251
252func NewOrderreportsService(s *APIService) *OrderreportsService {
253	rs := &OrderreportsService{s: s}
254	return rs
255}
256
257type OrderreportsService struct {
258	s *APIService
259}
260
261func NewOrderreturnsService(s *APIService) *OrderreturnsService {
262	rs := &OrderreturnsService{s: s}
263	return rs
264}
265
266type OrderreturnsService struct {
267	s *APIService
268}
269
270func NewOrdersService(s *APIService) *OrdersService {
271	rs := &OrdersService{s: s}
272	return rs
273}
274
275type OrdersService struct {
276	s *APIService
277}
278
279func NewPosService(s *APIService) *PosService {
280	rs := &PosService{s: s}
281	return rs
282}
283
284type PosService struct {
285	s *APIService
286}
287
288func NewProductsService(s *APIService) *ProductsService {
289	rs := &ProductsService{s: s}
290	return rs
291}
292
293type ProductsService struct {
294	s *APIService
295}
296
297func NewProductstatusesService(s *APIService) *ProductstatusesService {
298	rs := &ProductstatusesService{s: s}
299	return rs
300}
301
302type ProductstatusesService struct {
303	s *APIService
304}
305
306func NewShippingsettingsService(s *APIService) *ShippingsettingsService {
307	rs := &ShippingsettingsService{s: s}
308	return rs
309}
310
311type ShippingsettingsService struct {
312	s *APIService
313}
314
315// Account: Account data. After the creation of a new account it may
316// take a few minutes before it is fully operational. The methods
317// delete, insert, and update require the admin role.
318type Account struct {
319	// AdultContent: Indicates whether the merchant sells adult content.
320	AdultContent bool `json:"adultContent,omitempty"`
321
322	// AdwordsLinks: List of linked AdWords accounts that are active or
323	// pending approval. To create a new link request, add a new link with
324	// status `active` to the list. It will remain in a `pending` state
325	// until approved or rejected either in the AdWords interface or through
326	// the AdWords API. To delete an active link, or to cancel a link
327	// request, remove it from the list.
328	AdwordsLinks []*AccountAdwordsLink `json:"adwordsLinks,omitempty"`
329
330	// BusinessInformation: The business information of the account.
331	BusinessInformation *AccountBusinessInformation `json:"businessInformation,omitempty"`
332
333	// GoogleMyBusinessLink: The GMB account which is linked or in the
334	// process of being linked with the Merchant Center account.
335	GoogleMyBusinessLink *AccountGoogleMyBusinessLink `json:"googleMyBusinessLink,omitempty"`
336
337	// Id: Required for update. Merchant Center account ID.
338	Id uint64 `json:"id,omitempty,string"`
339
340	// Kind: Identifies what kind of resource this is. Value: the fixed
341	// string "content#account"
342	Kind string `json:"kind,omitempty"`
343
344	// Name: Required. Display name for the account.
345	Name string `json:"name,omitempty"`
346
347	// ReviewsUrl: [DEPRECATED] This field is never returned and will be
348	// ignored if provided.
349	ReviewsUrl string `json:"reviewsUrl,omitempty"`
350
351	// SellerId: Client-specific, locally-unique, internal ID for the child
352	// account.
353	SellerId string `json:"sellerId,omitempty"`
354
355	// Users: Users with access to the account. Every account (except for
356	// subaccounts) must have at least one admin user.
357	Users []*AccountUser `json:"users,omitempty"`
358
359	// WebsiteUrl: The merchant's website.
360	WebsiteUrl string `json:"websiteUrl,omitempty"`
361
362	// YoutubeChannelLinks: List of linked YouTube channels that are active
363	// or pending approval. To create a new link request, add a new link
364	// with status `active` to the list. It will remain in a `pending` state
365	// until approved or rejected in the YT Creator Studio interface. To
366	// delete an active link, or to cancel a link request, remove it from
367	// the list.
368	YoutubeChannelLinks []*AccountYouTubeChannelLink `json:"youtubeChannelLinks,omitempty"`
369
370	// ServerResponse contains the HTTP response code and headers from the
371	// server.
372	googleapi.ServerResponse `json:"-"`
373
374	// ForceSendFields is a list of field names (e.g. "AdultContent") to
375	// unconditionally include in API requests. By default, fields with
376	// empty or default values are omitted from API requests. However, any
377	// non-pointer, non-interface field appearing in ForceSendFields will be
378	// sent to the server regardless of whether the field is empty or not.
379	// This may be used to include empty fields in Patch requests.
380	ForceSendFields []string `json:"-"`
381
382	// NullFields is a list of field names (e.g. "AdultContent") to include
383	// in API requests with the JSON null value. By default, fields with
384	// empty values are omitted from API requests. However, any field with
385	// an empty value appearing in NullFields will be sent to the server as
386	// null. It is an error if a field in this list has a non-empty value.
387	// This may be used to include null fields in Patch requests.
388	NullFields []string `json:"-"`
389}
390
391func (s *Account) MarshalJSON() ([]byte, error) {
392	type NoMethod Account
393	raw := NoMethod(*s)
394	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
395}
396
397type AccountAddress struct {
398	// Country: CLDR country code (e.g. "US"). This value cannot be set for
399	// a sub-account of an MCA. All MCA sub-accounts inherit the country of
400	// their parent MCA.
401	Country string `json:"country,omitempty"`
402
403	// Locality: City, town or commune. May also include dependent
404	// localities or sublocalities (e.g. neighborhoods or suburbs).
405	Locality string `json:"locality,omitempty"`
406
407	// PostalCode: Postal code or ZIP (e.g. "94043").
408	PostalCode string `json:"postalCode,omitempty"`
409
410	// Region: Top-level administrative subdivision of the country. For
411	// example, a state like California ("CA") or a province like Quebec
412	// ("QC").
413	Region string `json:"region,omitempty"`
414
415	// StreetAddress: Street-level part of the address.
416	StreetAddress string `json:"streetAddress,omitempty"`
417
418	// ForceSendFields is a list of field names (e.g. "Country") to
419	// unconditionally include in API requests. By default, fields with
420	// empty or default values are omitted from API requests. However, any
421	// non-pointer, non-interface field appearing in ForceSendFields will be
422	// sent to the server regardless of whether the field is empty or not.
423	// This may be used to include empty fields in Patch requests.
424	ForceSendFields []string `json:"-"`
425
426	// NullFields is a list of field names (e.g. "Country") to include in
427	// API requests with the JSON null value. By default, fields with empty
428	// values are omitted from API requests. However, any field with an
429	// empty value appearing in NullFields will be sent to the server as
430	// null. It is an error if a field in this list has a non-empty value.
431	// This may be used to include null fields in Patch requests.
432	NullFields []string `json:"-"`
433}
434
435func (s *AccountAddress) MarshalJSON() ([]byte, error) {
436	type NoMethod AccountAddress
437	raw := NoMethod(*s)
438	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
439}
440
441type AccountAdwordsLink struct {
442	// AdwordsId: Customer ID of the AdWords account.
443	AdwordsId uint64 `json:"adwordsId,omitempty,string"`
444
445	// Status: Status of the link between this Merchant Center account and
446	// the AdWords account. Upon retrieval, it represents the actual status
447	// of the link and can be either `active` if it was approved in Google
448	// AdWords or `pending` if it's pending approval. Upon insertion, it
449	// represents the *intended* status of the link. Re-uploading a link
450	// with status `active` when it's still pending or with status `pending`
451	// when it's already active will have no effect: the status will remain
452	// unchanged. Re-uploading a link with deprecated status `inactive` is
453	// equivalent to not submitting the link at all and will delete the link
454	// if it was active or cancel the link request if it was pending.
455	// Acceptable values are: - "active" - "pending"
456	Status string `json:"status,omitempty"`
457
458	// ForceSendFields is a list of field names (e.g. "AdwordsId") to
459	// unconditionally include in API requests. By default, fields with
460	// empty or default values are omitted from API requests. However, any
461	// non-pointer, non-interface field appearing in ForceSendFields will be
462	// sent to the server regardless of whether the field is empty or not.
463	// This may be used to include empty fields in Patch requests.
464	ForceSendFields []string `json:"-"`
465
466	// NullFields is a list of field names (e.g. "AdwordsId") to include in
467	// API requests with the JSON null value. By default, fields with empty
468	// values are omitted from API requests. However, any field with an
469	// empty value appearing in NullFields will be sent to the server as
470	// null. It is an error if a field in this list has a non-empty value.
471	// This may be used to include null fields in Patch requests.
472	NullFields []string `json:"-"`
473}
474
475func (s *AccountAdwordsLink) MarshalJSON() ([]byte, error) {
476	type NoMethod AccountAdwordsLink
477	raw := NoMethod(*s)
478	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
479}
480
481type AccountBusinessInformation struct {
482	// Address: The address of the business.
483	Address *AccountAddress `json:"address,omitempty"`
484
485	// CustomerService: The customer service information of the business.
486	CustomerService *AccountCustomerService `json:"customerService,omitempty"`
487
488	// KoreanBusinessRegistrationNumber: The 10-digit Korean business
489	// registration number
490	// (https://support.google.com/merchants/answer/9037766) separated with
491	// dashes in the format: XXX-XX-XXXXX. This field will only be updated
492	// if explicitly set.
493	KoreanBusinessRegistrationNumber string `json:"koreanBusinessRegistrationNumber,omitempty"`
494
495	// PhoneNumber: The phone number of the business.
496	PhoneNumber string `json:"phoneNumber,omitempty"`
497
498	// ForceSendFields is a list of field names (e.g. "Address") to
499	// unconditionally include in API requests. By default, fields with
500	// empty or default values are omitted from API requests. However, any
501	// non-pointer, non-interface field appearing in ForceSendFields will be
502	// sent to the server regardless of whether the field is empty or not.
503	// This may be used to include empty fields in Patch requests.
504	ForceSendFields []string `json:"-"`
505
506	// NullFields is a list of field names (e.g. "Address") to include in
507	// API requests with the JSON null value. By default, fields with empty
508	// values are omitted from API requests. However, any field with an
509	// empty value appearing in NullFields will be sent to the server as
510	// null. It is an error if a field in this list has a non-empty value.
511	// This may be used to include null fields in Patch requests.
512	NullFields []string `json:"-"`
513}
514
515func (s *AccountBusinessInformation) MarshalJSON() ([]byte, error) {
516	type NoMethod AccountBusinessInformation
517	raw := NoMethod(*s)
518	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
519}
520
521type AccountCustomerService struct {
522	// Email: Customer service email.
523	Email string `json:"email,omitempty"`
524
525	// PhoneNumber: Customer service phone number.
526	PhoneNumber string `json:"phoneNumber,omitempty"`
527
528	// Url: Customer service URL.
529	Url string `json:"url,omitempty"`
530
531	// ForceSendFields is a list of field names (e.g. "Email") to
532	// unconditionally include in API requests. By default, fields with
533	// empty or default values are omitted from API requests. However, any
534	// non-pointer, non-interface field appearing in ForceSendFields will be
535	// sent to the server regardless of whether the field is empty or not.
536	// This may be used to include empty fields in Patch requests.
537	ForceSendFields []string `json:"-"`
538
539	// NullFields is a list of field names (e.g. "Email") to include in API
540	// requests with the JSON null value. By default, fields with empty
541	// values are omitted from API requests. However, any field with an
542	// empty value appearing in NullFields will be sent to the server as
543	// null. It is an error if a field in this list has a non-empty value.
544	// This may be used to include null fields in Patch requests.
545	NullFields []string `json:"-"`
546}
547
548func (s *AccountCustomerService) MarshalJSON() ([]byte, error) {
549	type NoMethod AccountCustomerService
550	raw := NoMethod(*s)
551	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
552}
553
554type AccountGoogleMyBusinessLink struct {
555	// GmbEmail: The GMB email address of which a specific account within a
556	// GMB account. A sample account within a GMB account could be a
557	// business account with set of locations, managed under the GMB
558	// account.
559	GmbEmail string `json:"gmbEmail,omitempty"`
560
561	// Status: Status of the link between this Merchant Center account and
562	// the GMB account. Acceptable values are: - "active" - "pending"
563	Status string `json:"status,omitempty"`
564
565	// ForceSendFields is a list of field names (e.g. "GmbEmail") to
566	// unconditionally include in API requests. By default, fields with
567	// empty or default values are omitted from API requests. However, any
568	// non-pointer, non-interface field appearing in ForceSendFields will be
569	// sent to the server regardless of whether the field is empty or not.
570	// This may be used to include empty fields in Patch requests.
571	ForceSendFields []string `json:"-"`
572
573	// NullFields is a list of field names (e.g. "GmbEmail") to include in
574	// API requests with the JSON null value. By default, fields with empty
575	// values are omitted from API requests. However, any field with an
576	// empty value appearing in NullFields will be sent to the server as
577	// null. It is an error if a field in this list has a non-empty value.
578	// This may be used to include null fields in Patch requests.
579	NullFields []string `json:"-"`
580}
581
582func (s *AccountGoogleMyBusinessLink) MarshalJSON() ([]byte, error) {
583	type NoMethod AccountGoogleMyBusinessLink
584	raw := NoMethod(*s)
585	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
586}
587
588type AccountIdentifier struct {
589	// AggregatorId: The aggregator ID, set for aggregators and subaccounts
590	// (in that case, it represents the aggregator of the subaccount).
591	AggregatorId uint64 `json:"aggregatorId,omitempty,string"`
592
593	// MerchantId: The merchant account ID, set for individual accounts and
594	// subaccounts.
595	MerchantId uint64 `json:"merchantId,omitempty,string"`
596
597	// ForceSendFields is a list of field names (e.g. "AggregatorId") to
598	// unconditionally include in API requests. By default, fields with
599	// empty or default values are omitted from API requests. However, any
600	// non-pointer, non-interface field appearing in ForceSendFields will be
601	// sent to the server regardless of whether the field is empty or not.
602	// This may be used to include empty fields in Patch requests.
603	ForceSendFields []string `json:"-"`
604
605	// NullFields is a list of field names (e.g. "AggregatorId") to include
606	// in API requests with the JSON null value. By default, fields with
607	// empty values are omitted from API requests. However, any field with
608	// an empty value appearing in NullFields will be sent to the server as
609	// null. It is an error if a field in this list has a non-empty value.
610	// This may be used to include null fields in Patch requests.
611	NullFields []string `json:"-"`
612}
613
614func (s *AccountIdentifier) MarshalJSON() ([]byte, error) {
615	type NoMethod AccountIdentifier
616	raw := NoMethod(*s)
617	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
618}
619
620// AccountStatus: The status of an account, i.e., information about its
621// products, which is computed offline and not returned immediately at
622// insertion time.
623type AccountStatus struct {
624	// AccountId: The ID of the account for which the status is reported.
625	AccountId string `json:"accountId,omitempty"`
626
627	// AccountLevelIssues: A list of account level issues.
628	AccountLevelIssues []*AccountStatusAccountLevelIssue `json:"accountLevelIssues,omitempty"`
629
630	// DataQualityIssues: DEPRECATED - never populated.
631	DataQualityIssues []*AccountStatusDataQualityIssue `json:"dataQualityIssues,omitempty"`
632
633	// Kind: Identifies what kind of resource this is. Value: the fixed
634	// string "content#accountStatus"
635	Kind string `json:"kind,omitempty"`
636
637	// Products: List of product-related data by channel, destination, and
638	// country. Data in this field may be delayed by up to 30 minutes.
639	Products []*AccountStatusProducts `json:"products,omitempty"`
640
641	// WebsiteClaimed: Whether the account's website is claimed or not.
642	WebsiteClaimed bool `json:"websiteClaimed,omitempty"`
643
644	// ServerResponse contains the HTTP response code and headers from the
645	// server.
646	googleapi.ServerResponse `json:"-"`
647
648	// ForceSendFields is a list of field names (e.g. "AccountId") to
649	// unconditionally include in API requests. By default, fields with
650	// empty or default values are omitted from API requests. However, any
651	// non-pointer, non-interface field appearing in ForceSendFields will be
652	// sent to the server regardless of whether the field is empty or not.
653	// This may be used to include empty fields in Patch requests.
654	ForceSendFields []string `json:"-"`
655
656	// NullFields is a list of field names (e.g. "AccountId") to include in
657	// API requests with the JSON null value. By default, fields with empty
658	// values are omitted from API requests. However, any field with an
659	// empty value appearing in NullFields will be sent to the server as
660	// null. It is an error if a field in this list has a non-empty value.
661	// This may be used to include null fields in Patch requests.
662	NullFields []string `json:"-"`
663}
664
665func (s *AccountStatus) MarshalJSON() ([]byte, error) {
666	type NoMethod AccountStatus
667	raw := NoMethod(*s)
668	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
669}
670
671type AccountStatusAccountLevelIssue struct {
672	// Country: Country for which this issue is reported.
673	Country string `json:"country,omitempty"`
674
675	// Destination: The destination the issue applies to. If this field is
676	// empty then the issue applies to all available destinations.
677	Destination string `json:"destination,omitempty"`
678
679	// Detail: Additional details about the issue.
680	Detail string `json:"detail,omitempty"`
681
682	// Documentation: The URL of a web page to help resolving this issue.
683	Documentation string `json:"documentation,omitempty"`
684
685	// Id: Issue identifier.
686	Id string `json:"id,omitempty"`
687
688	// Severity: Severity of the issue. Acceptable values are: -
689	// "critical" - "error" - "suggestion"
690	Severity string `json:"severity,omitempty"`
691
692	// Title: Short description of the issue.
693	Title string `json:"title,omitempty"`
694
695	// ForceSendFields is a list of field names (e.g. "Country") to
696	// unconditionally include in API requests. By default, fields with
697	// empty or default values are omitted from API requests. However, any
698	// non-pointer, non-interface field appearing in ForceSendFields will be
699	// sent to the server regardless of whether the field is empty or not.
700	// This may be used to include empty fields in Patch requests.
701	ForceSendFields []string `json:"-"`
702
703	// NullFields is a list of field names (e.g. "Country") to include in
704	// API requests with the JSON null value. By default, fields with empty
705	// values are omitted from API requests. However, any field with an
706	// empty value appearing in NullFields will be sent to the server as
707	// null. It is an error if a field in this list has a non-empty value.
708	// This may be used to include null fields in Patch requests.
709	NullFields []string `json:"-"`
710}
711
712func (s *AccountStatusAccountLevelIssue) MarshalJSON() ([]byte, error) {
713	type NoMethod AccountStatusAccountLevelIssue
714	raw := NoMethod(*s)
715	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
716}
717
718type AccountStatusDataQualityIssue struct {
719	Country string `json:"country,omitempty"`
720
721	Destination string `json:"destination,omitempty"`
722
723	Detail string `json:"detail,omitempty"`
724
725	DisplayedValue string `json:"displayedValue,omitempty"`
726
727	ExampleItems []*AccountStatusExampleItem `json:"exampleItems,omitempty"`
728
729	Id string `json:"id,omitempty"`
730
731	LastChecked string `json:"lastChecked,omitempty"`
732
733	Location string `json:"location,omitempty"`
734
735	NumItems int64 `json:"numItems,omitempty"`
736
737	// Severity:  Acceptable values are: - "critical" - "error" -
738	// "suggestion"
739	Severity string `json:"severity,omitempty"`
740
741	SubmittedValue string `json:"submittedValue,omitempty"`
742
743	// ForceSendFields is a list of field names (e.g. "Country") to
744	// unconditionally include in API requests. By default, fields with
745	// empty or default values are omitted from API requests. However, any
746	// non-pointer, non-interface field appearing in ForceSendFields will be
747	// sent to the server regardless of whether the field is empty or not.
748	// This may be used to include empty fields in Patch requests.
749	ForceSendFields []string `json:"-"`
750
751	// NullFields is a list of field names (e.g. "Country") to include in
752	// API requests with the JSON null value. By default, fields with empty
753	// values are omitted from API requests. However, any field with an
754	// empty value appearing in NullFields will be sent to the server as
755	// null. It is an error if a field in this list has a non-empty value.
756	// This may be used to include null fields in Patch requests.
757	NullFields []string `json:"-"`
758}
759
760func (s *AccountStatusDataQualityIssue) MarshalJSON() ([]byte, error) {
761	type NoMethod AccountStatusDataQualityIssue
762	raw := NoMethod(*s)
763	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
764}
765
766type AccountStatusExampleItem struct {
767	ItemId string `json:"itemId,omitempty"`
768
769	Link string `json:"link,omitempty"`
770
771	SubmittedValue string `json:"submittedValue,omitempty"`
772
773	Title string `json:"title,omitempty"`
774
775	ValueOnLandingPage string `json:"valueOnLandingPage,omitempty"`
776
777	// ForceSendFields is a list of field names (e.g. "ItemId") to
778	// unconditionally include in API requests. By default, fields with
779	// empty or default values are omitted from API requests. However, any
780	// non-pointer, non-interface field appearing in ForceSendFields will be
781	// sent to the server regardless of whether the field is empty or not.
782	// This may be used to include empty fields in Patch requests.
783	ForceSendFields []string `json:"-"`
784
785	// NullFields is a list of field names (e.g. "ItemId") to include in API
786	// requests with the JSON null value. By default, fields with empty
787	// values are omitted from API requests. However, any field with an
788	// empty value appearing in NullFields will be sent to the server as
789	// null. It is an error if a field in this list has a non-empty value.
790	// This may be used to include null fields in Patch requests.
791	NullFields []string `json:"-"`
792}
793
794func (s *AccountStatusExampleItem) MarshalJSON() ([]byte, error) {
795	type NoMethod AccountStatusExampleItem
796	raw := NoMethod(*s)
797	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
798}
799
800type AccountStatusItemLevelIssue struct {
801	// AttributeName: The attribute's name, if the issue is caused by a
802	// single attribute.
803	AttributeName string `json:"attributeName,omitempty"`
804
805	// Code: The error code of the issue.
806	Code string `json:"code,omitempty"`
807
808	// Description: A short issue description in English.
809	Description string `json:"description,omitempty"`
810
811	// Detail: A detailed issue description in English.
812	Detail string `json:"detail,omitempty"`
813
814	// Documentation: The URL of a web page to help with resolving this
815	// issue.
816	Documentation string `json:"documentation,omitempty"`
817
818	// NumItems: Number of items with this issue.
819	NumItems int64 `json:"numItems,omitempty,string"`
820
821	// Resolution: Whether the issue can be resolved by the merchant.
822	Resolution string `json:"resolution,omitempty"`
823
824	// Servability: How this issue affects serving of the offer.
825	Servability string `json:"servability,omitempty"`
826
827	// ForceSendFields is a list of field names (e.g. "AttributeName") to
828	// unconditionally include in API requests. By default, fields with
829	// empty or default values are omitted from API requests. However, any
830	// non-pointer, non-interface field appearing in ForceSendFields will be
831	// sent to the server regardless of whether the field is empty or not.
832	// This may be used to include empty fields in Patch requests.
833	ForceSendFields []string `json:"-"`
834
835	// NullFields is a list of field names (e.g. "AttributeName") to include
836	// in API requests with the JSON null value. By default, fields with
837	// empty values are omitted from API requests. However, any field with
838	// an empty value appearing in NullFields will be sent to the server as
839	// null. It is an error if a field in this list has a non-empty value.
840	// This may be used to include null fields in Patch requests.
841	NullFields []string `json:"-"`
842}
843
844func (s *AccountStatusItemLevelIssue) MarshalJSON() ([]byte, error) {
845	type NoMethod AccountStatusItemLevelIssue
846	raw := NoMethod(*s)
847	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
848}
849
850type AccountStatusProducts struct {
851	// Channel: The channel the data applies to. Acceptable values are: -
852	// "local" - "online"
853	Channel string `json:"channel,omitempty"`
854
855	// Country: The country the data applies to.
856	Country string `json:"country,omitempty"`
857
858	// Destination: The destination the data applies to.
859	Destination string `json:"destination,omitempty"`
860
861	// ItemLevelIssues: List of item-level issues.
862	ItemLevelIssues []*AccountStatusItemLevelIssue `json:"itemLevelIssues,omitempty"`
863
864	// Statistics: Aggregated product statistics.
865	Statistics *AccountStatusStatistics `json:"statistics,omitempty"`
866
867	// ForceSendFields is a list of field names (e.g. "Channel") to
868	// unconditionally include in API requests. By default, fields with
869	// empty or default values are omitted from API requests. However, any
870	// non-pointer, non-interface field appearing in ForceSendFields will be
871	// sent to the server regardless of whether the field is empty or not.
872	// This may be used to include empty fields in Patch requests.
873	ForceSendFields []string `json:"-"`
874
875	// NullFields is a list of field names (e.g. "Channel") to include in
876	// API requests with the JSON null value. By default, fields with empty
877	// values are omitted from API requests. However, any field with an
878	// empty value appearing in NullFields will be sent to the server as
879	// null. It is an error if a field in this list has a non-empty value.
880	// This may be used to include null fields in Patch requests.
881	NullFields []string `json:"-"`
882}
883
884func (s *AccountStatusProducts) MarshalJSON() ([]byte, error) {
885	type NoMethod AccountStatusProducts
886	raw := NoMethod(*s)
887	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
888}
889
890type AccountStatusStatistics struct {
891	// Active: Number of active offers.
892	Active int64 `json:"active,omitempty,string"`
893
894	// Disapproved: Number of disapproved offers.
895	Disapproved int64 `json:"disapproved,omitempty,string"`
896
897	// Expiring: Number of expiring offers.
898	Expiring int64 `json:"expiring,omitempty,string"`
899
900	// Pending: Number of pending offers.
901	Pending int64 `json:"pending,omitempty,string"`
902
903	// ForceSendFields is a list of field names (e.g. "Active") to
904	// unconditionally include in API requests. By default, fields with
905	// empty or default values are omitted from API requests. However, any
906	// non-pointer, non-interface field appearing in ForceSendFields will be
907	// sent to the server regardless of whether the field is empty or not.
908	// This may be used to include empty fields in Patch requests.
909	ForceSendFields []string `json:"-"`
910
911	// NullFields is a list of field names (e.g. "Active") to include in API
912	// requests with the JSON null value. By default, fields with empty
913	// values are omitted from API requests. However, any field with an
914	// empty value appearing in NullFields will be sent to the server as
915	// null. It is an error if a field in this list has a non-empty value.
916	// This may be used to include null fields in Patch requests.
917	NullFields []string `json:"-"`
918}
919
920func (s *AccountStatusStatistics) MarshalJSON() ([]byte, error) {
921	type NoMethod AccountStatusStatistics
922	raw := NoMethod(*s)
923	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
924}
925
926// AccountTax: The tax settings of a merchant account. All methods
927// require the admin role.
928type AccountTax struct {
929	// AccountId: Required. The ID of the account to which these account tax
930	// settings belong.
931	AccountId uint64 `json:"accountId,omitempty,string"`
932
933	// Kind: Identifies what kind of resource this is. Value: the fixed
934	// string "content#accountTax".
935	Kind string `json:"kind,omitempty"`
936
937	// Rules: Tax rules. Updating the tax rules will enable US taxes (not
938	// reversible). Defining no rules is equivalent to not charging tax at
939	// all.
940	Rules []*AccountTaxTaxRule `json:"rules,omitempty"`
941
942	// ServerResponse contains the HTTP response code and headers from the
943	// server.
944	googleapi.ServerResponse `json:"-"`
945
946	// ForceSendFields is a list of field names (e.g. "AccountId") to
947	// unconditionally include in API requests. By default, fields with
948	// empty or default values are omitted from API requests. However, any
949	// non-pointer, non-interface field appearing in ForceSendFields will be
950	// sent to the server regardless of whether the field is empty or not.
951	// This may be used to include empty fields in Patch requests.
952	ForceSendFields []string `json:"-"`
953
954	// NullFields is a list of field names (e.g. "AccountId") to include in
955	// API requests with the JSON null value. By default, fields with empty
956	// values are omitted from API requests. However, any field with an
957	// empty value appearing in NullFields will be sent to the server as
958	// null. It is an error if a field in this list has a non-empty value.
959	// This may be used to include null fields in Patch requests.
960	NullFields []string `json:"-"`
961}
962
963func (s *AccountTax) MarshalJSON() ([]byte, error) {
964	type NoMethod AccountTax
965	raw := NoMethod(*s)
966	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
967}
968
969// AccountTaxTaxRule: Tax calculation rule to apply in a state or
970// province (USA only).
971type AccountTaxTaxRule struct {
972	// Country: Country code in which tax is applicable.
973	Country string `json:"country,omitempty"`
974
975	// LocationId: Required. State (or province) is which the tax is
976	// applicable, described by its location ID (also called criteria ID).
977	LocationId uint64 `json:"locationId,omitempty,string"`
978
979	// RatePercent: Explicit tax rate in percent, represented as a floating
980	// point number without the percentage character. Must not be negative.
981	RatePercent string `json:"ratePercent,omitempty"`
982
983	// ShippingTaxed: If true, shipping charges are also taxed.
984	ShippingTaxed bool `json:"shippingTaxed,omitempty"`
985
986	// UseGlobalRate: Whether the tax rate is taken from a global tax table
987	// or specified explicitly.
988	UseGlobalRate bool `json:"useGlobalRate,omitempty"`
989
990	// ForceSendFields is a list of field names (e.g. "Country") to
991	// unconditionally include in API requests. By default, fields with
992	// empty or default values are omitted from API requests. However, any
993	// non-pointer, non-interface field appearing in ForceSendFields will be
994	// sent to the server regardless of whether the field is empty or not.
995	// This may be used to include empty fields in Patch requests.
996	ForceSendFields []string `json:"-"`
997
998	// NullFields is a list of field names (e.g. "Country") to include in
999	// API requests with the JSON null value. By default, fields with empty
1000	// values are omitted from API requests. However, any field with an
1001	// empty value appearing in NullFields will be sent to the server as
1002	// null. It is an error if a field in this list has a non-empty value.
1003	// This may be used to include null fields in Patch requests.
1004	NullFields []string `json:"-"`
1005}
1006
1007func (s *AccountTaxTaxRule) MarshalJSON() ([]byte, error) {
1008	type NoMethod AccountTaxTaxRule
1009	raw := NoMethod(*s)
1010	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1011}
1012
1013type AccountUser struct {
1014	// Admin: Whether user is an admin.
1015	Admin *bool `json:"admin,omitempty"`
1016
1017	// EmailAddress: User's email address.
1018	EmailAddress string `json:"emailAddress,omitempty"`
1019
1020	// OrderManager: Whether user is an order manager.
1021	OrderManager bool `json:"orderManager,omitempty"`
1022
1023	// PaymentsAnalyst: Whether user can access payment statements.
1024	PaymentsAnalyst bool `json:"paymentsAnalyst,omitempty"`
1025
1026	// PaymentsManager: Whether user can manage payment settings.
1027	PaymentsManager bool `json:"paymentsManager,omitempty"`
1028
1029	// ForceSendFields is a list of field names (e.g. "Admin") to
1030	// unconditionally include in API requests. By default, fields with
1031	// empty or default values are omitted from API requests. However, any
1032	// non-pointer, non-interface field appearing in ForceSendFields will be
1033	// sent to the server regardless of whether the field is empty or not.
1034	// This may be used to include empty fields in Patch requests.
1035	ForceSendFields []string `json:"-"`
1036
1037	// NullFields is a list of field names (e.g. "Admin") to include in API
1038	// requests with the JSON null value. By default, fields with empty
1039	// values are omitted from API requests. However, any field with an
1040	// empty value appearing in NullFields will be sent to the server as
1041	// null. It is an error if a field in this list has a non-empty value.
1042	// This may be used to include null fields in Patch requests.
1043	NullFields []string `json:"-"`
1044}
1045
1046func (s *AccountUser) MarshalJSON() ([]byte, error) {
1047	type NoMethod AccountUser
1048	raw := NoMethod(*s)
1049	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1050}
1051
1052type AccountYouTubeChannelLink struct {
1053	// ChannelId: Channel ID.
1054	ChannelId string `json:"channelId,omitempty"`
1055
1056	// Status: Status of the link between this Merchant Center account and
1057	// the YouTube channel. Upon retrieval, it represents the actual status
1058	// of the link and can be either `active` if it was approved in YT
1059	// Creator Studio or `pending` if it's pending approval. Upon insertion,
1060	// it represents the *intended* status of the link. Re-uploading a link
1061	// with status `active` when it's still pending or with status `pending`
1062	// when it's already active will have no effect: the status will remain
1063	// unchanged. Re-uploading a link with deprecated status `inactive` is
1064	// equivalent to not submitting the link at all and will delete the link
1065	// if it was active or cancel the link request if it was pending.
1066	Status string `json:"status,omitempty"`
1067
1068	// ForceSendFields is a list of field names (e.g. "ChannelId") to
1069	// unconditionally include in API requests. By default, fields with
1070	// empty or default values are omitted from API requests. However, any
1071	// non-pointer, non-interface field appearing in ForceSendFields will be
1072	// sent to the server regardless of whether the field is empty or not.
1073	// This may be used to include empty fields in Patch requests.
1074	ForceSendFields []string `json:"-"`
1075
1076	// NullFields is a list of field names (e.g. "ChannelId") to include in
1077	// API requests with the JSON null value. By default, fields with empty
1078	// values are omitted from API requests. However, any field with an
1079	// empty value appearing in NullFields will be sent to the server as
1080	// null. It is an error if a field in this list has a non-empty value.
1081	// This may be used to include null fields in Patch requests.
1082	NullFields []string `json:"-"`
1083}
1084
1085func (s *AccountYouTubeChannelLink) MarshalJSON() ([]byte, error) {
1086	type NoMethod AccountYouTubeChannelLink
1087	raw := NoMethod(*s)
1088	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1089}
1090
1091type AccountsAuthInfoResponse struct {
1092	// AccountIdentifiers: The account identifiers corresponding to the
1093	// authenticated user. - For an individual account: only the merchant ID
1094	// is defined - For an aggregator: only the aggregator ID is defined -
1095	// For a subaccount of an MCA: both the merchant ID and the aggregator
1096	// ID are defined.
1097	AccountIdentifiers []*AccountIdentifier `json:"accountIdentifiers,omitempty"`
1098
1099	// Kind: Identifies what kind of resource this is. Value: the fixed
1100	// string "content#accountsAuthInfoResponse".
1101	Kind string `json:"kind,omitempty"`
1102
1103	// ServerResponse contains the HTTP response code and headers from the
1104	// server.
1105	googleapi.ServerResponse `json:"-"`
1106
1107	// ForceSendFields is a list of field names (e.g. "AccountIdentifiers")
1108	// to unconditionally include in API requests. By default, fields with
1109	// empty or default values are omitted from API requests. However, any
1110	// non-pointer, non-interface field appearing in ForceSendFields will be
1111	// sent to the server regardless of whether the field is empty or not.
1112	// This may be used to include empty fields in Patch requests.
1113	ForceSendFields []string `json:"-"`
1114
1115	// NullFields is a list of field names (e.g. "AccountIdentifiers") to
1116	// include in API requests with the JSON null value. By default, fields
1117	// with empty values are omitted from API requests. However, any field
1118	// with an empty value appearing in NullFields will be sent to the
1119	// server as null. It is an error if a field in this list has a
1120	// non-empty value. This may be used to include null fields in Patch
1121	// requests.
1122	NullFields []string `json:"-"`
1123}
1124
1125func (s *AccountsAuthInfoResponse) MarshalJSON() ([]byte, error) {
1126	type NoMethod AccountsAuthInfoResponse
1127	raw := NoMethod(*s)
1128	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1129}
1130
1131type AccountsClaimWebsiteResponse struct {
1132	// Kind: Identifies what kind of resource this is. Value: the fixed
1133	// string "content#accountsClaimWebsiteResponse".
1134	Kind string `json:"kind,omitempty"`
1135
1136	// ServerResponse contains the HTTP response code and headers from the
1137	// server.
1138	googleapi.ServerResponse `json:"-"`
1139
1140	// ForceSendFields is a list of field names (e.g. "Kind") to
1141	// unconditionally include in API requests. By default, fields with
1142	// empty or default values are omitted from API requests. However, any
1143	// non-pointer, non-interface field appearing in ForceSendFields will be
1144	// sent to the server regardless of whether the field is empty or not.
1145	// This may be used to include empty fields in Patch requests.
1146	ForceSendFields []string `json:"-"`
1147
1148	// NullFields is a list of field names (e.g. "Kind") to include in API
1149	// requests with the JSON null value. By default, fields with empty
1150	// values are omitted from API requests. However, any field with an
1151	// empty value appearing in NullFields will be sent to the server as
1152	// null. It is an error if a field in this list has a non-empty value.
1153	// This may be used to include null fields in Patch requests.
1154	NullFields []string `json:"-"`
1155}
1156
1157func (s *AccountsClaimWebsiteResponse) MarshalJSON() ([]byte, error) {
1158	type NoMethod AccountsClaimWebsiteResponse
1159	raw := NoMethod(*s)
1160	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1161}
1162
1163type AccountsCustomBatchRequest struct {
1164	// Entries: The request entries to be processed in the batch.
1165	Entries []*AccountsCustomBatchRequestEntry `json:"entries,omitempty"`
1166
1167	// ForceSendFields is a list of field names (e.g. "Entries") to
1168	// unconditionally include in API requests. By default, fields with
1169	// empty or default values are omitted from API requests. However, any
1170	// non-pointer, non-interface field appearing in ForceSendFields will be
1171	// sent to the server regardless of whether the field is empty or not.
1172	// This may be used to include empty fields in Patch requests.
1173	ForceSendFields []string `json:"-"`
1174
1175	// NullFields is a list of field names (e.g. "Entries") to include in
1176	// API requests with the JSON null value. By default, fields with empty
1177	// values are omitted from API requests. However, any field with an
1178	// empty value appearing in NullFields will be sent to the server as
1179	// null. It is an error if a field in this list has a non-empty value.
1180	// This may be used to include null fields in Patch requests.
1181	NullFields []string `json:"-"`
1182}
1183
1184func (s *AccountsCustomBatchRequest) MarshalJSON() ([]byte, error) {
1185	type NoMethod AccountsCustomBatchRequest
1186	raw := NoMethod(*s)
1187	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1188}
1189
1190// AccountsCustomBatchRequestEntry: A batch entry encoding a single
1191// non-batch accounts request.
1192type AccountsCustomBatchRequestEntry struct {
1193	// Account: The account to create or update. Only defined if the method
1194	// is `insert` or `update`.
1195	Account *Account `json:"account,omitempty"`
1196
1197	// AccountId: The ID of the targeted account. Only defined if the method
1198	// is not `insert`.
1199	AccountId uint64 `json:"accountId,omitempty,string"`
1200
1201	// BatchId: An entry ID, unique within the batch request.
1202	BatchId int64 `json:"batchId,omitempty"`
1203
1204	// Force: Whether the account should be deleted if the account has
1205	// offers. Only applicable if the method is `delete`.
1206	Force bool `json:"force,omitempty"`
1207
1208	// LabelIds: Label IDs for the 'updatelabels' request.
1209	LabelIds googleapi.Uint64s `json:"labelIds,omitempty"`
1210
1211	// LinkRequest: Details about the `link` request.
1212	LinkRequest *AccountsCustomBatchRequestEntryLinkRequest `json:"linkRequest,omitempty"`
1213
1214	// MerchantId: The ID of the managing account.
1215	MerchantId uint64 `json:"merchantId,omitempty,string"`
1216
1217	// Method: The method of the batch entry. Acceptable values are: -
1218	// "claimWebsite" - "delete" - "get" - "insert" - "link" -
1219	// "update"
1220	Method string `json:"method,omitempty"`
1221
1222	// Overwrite: Only applicable if the method is `claimwebsite`. Indicates
1223	// whether or not to take the claim from another account in case there
1224	// is a conflict.
1225	Overwrite bool `json:"overwrite,omitempty"`
1226
1227	// ForceSendFields is a list of field names (e.g. "Account") to
1228	// unconditionally include in API requests. By default, fields with
1229	// empty or default values are omitted from API requests. However, any
1230	// non-pointer, non-interface field appearing in ForceSendFields will be
1231	// sent to the server regardless of whether the field is empty or not.
1232	// This may be used to include empty fields in Patch requests.
1233	ForceSendFields []string `json:"-"`
1234
1235	// NullFields is a list of field names (e.g. "Account") to include in
1236	// API requests with the JSON null value. By default, fields with empty
1237	// values are omitted from API requests. However, any field with an
1238	// empty value appearing in NullFields will be sent to the server as
1239	// null. It is an error if a field in this list has a non-empty value.
1240	// This may be used to include null fields in Patch requests.
1241	NullFields []string `json:"-"`
1242}
1243
1244func (s *AccountsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
1245	type NoMethod AccountsCustomBatchRequestEntry
1246	raw := NoMethod(*s)
1247	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1248}
1249
1250type AccountsCustomBatchRequestEntryLinkRequest struct {
1251	// Action: Action to perform for this link. The "request" action is
1252	// only available to select merchants. Acceptable values are: -
1253	// "approve" - "remove" - "request"
1254	Action string `json:"action,omitempty"`
1255
1256	// LinkType: Type of the link between the two accounts. Acceptable
1257	// values are: - "channelPartner" - "eCommercePlatform"
1258	LinkType string `json:"linkType,omitempty"`
1259
1260	// LinkedAccountId: The ID of the linked account.
1261	LinkedAccountId string `json:"linkedAccountId,omitempty"`
1262
1263	// ForceSendFields is a list of field names (e.g. "Action") to
1264	// unconditionally include in API requests. By default, fields with
1265	// empty or default values are omitted from API requests. However, any
1266	// non-pointer, non-interface field appearing in ForceSendFields will be
1267	// sent to the server regardless of whether the field is empty or not.
1268	// This may be used to include empty fields in Patch requests.
1269	ForceSendFields []string `json:"-"`
1270
1271	// NullFields is a list of field names (e.g. "Action") to include in API
1272	// requests with the JSON null value. By default, fields with empty
1273	// values are omitted from API requests. However, any field with an
1274	// empty value appearing in NullFields will be sent to the server as
1275	// null. It is an error if a field in this list has a non-empty value.
1276	// This may be used to include null fields in Patch requests.
1277	NullFields []string `json:"-"`
1278}
1279
1280func (s *AccountsCustomBatchRequestEntryLinkRequest) MarshalJSON() ([]byte, error) {
1281	type NoMethod AccountsCustomBatchRequestEntryLinkRequest
1282	raw := NoMethod(*s)
1283	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1284}
1285
1286type AccountsCustomBatchResponse struct {
1287	// Entries: The result of the execution of the batch requests.
1288	Entries []*AccountsCustomBatchResponseEntry `json:"entries,omitempty"`
1289
1290	// Kind: Identifies what kind of resource this is. Value: the fixed
1291	// string "content#accountsCustomBatchResponse".
1292	Kind string `json:"kind,omitempty"`
1293
1294	// ServerResponse contains the HTTP response code and headers from the
1295	// server.
1296	googleapi.ServerResponse `json:"-"`
1297
1298	// ForceSendFields is a list of field names (e.g. "Entries") to
1299	// unconditionally include in API requests. By default, fields with
1300	// empty or default values are omitted from API requests. However, any
1301	// non-pointer, non-interface field appearing in ForceSendFields will be
1302	// sent to the server regardless of whether the field is empty or not.
1303	// This may be used to include empty fields in Patch requests.
1304	ForceSendFields []string `json:"-"`
1305
1306	// NullFields is a list of field names (e.g. "Entries") to include in
1307	// API requests with the JSON null value. By default, fields with empty
1308	// values are omitted from API requests. However, any field with an
1309	// empty value appearing in NullFields will be sent to the server as
1310	// null. It is an error if a field in this list has a non-empty value.
1311	// This may be used to include null fields in Patch requests.
1312	NullFields []string `json:"-"`
1313}
1314
1315func (s *AccountsCustomBatchResponse) MarshalJSON() ([]byte, error) {
1316	type NoMethod AccountsCustomBatchResponse
1317	raw := NoMethod(*s)
1318	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1319}
1320
1321// AccountsCustomBatchResponseEntry: A batch entry encoding a single
1322// non-batch accounts response.
1323type AccountsCustomBatchResponseEntry struct {
1324	// Account: The retrieved, created, or updated account. Not defined if
1325	// the method was `delete`, `claimwebsite` or `link`.
1326	Account *Account `json:"account,omitempty"`
1327
1328	// BatchId: The ID of the request entry this entry responds to.
1329	BatchId int64 `json:"batchId,omitempty"`
1330
1331	// Errors: A list of errors defined if and only if the request failed.
1332	Errors *Errors `json:"errors,omitempty"`
1333
1334	// Kind: Identifies what kind of resource this is. Value: the fixed
1335	// string "content#accountsCustomBatchResponseEntry"
1336	Kind string `json:"kind,omitempty"`
1337
1338	// LinkStatus: Deprecated. This field is never set. Acceptable values
1339	// are: - "active" - "inactive" - "pending"
1340	LinkStatus string `json:"linkStatus,omitempty"`
1341
1342	// ForceSendFields is a list of field names (e.g. "Account") to
1343	// unconditionally include in API requests. By default, fields with
1344	// empty or default values are omitted from API requests. However, any
1345	// non-pointer, non-interface field appearing in ForceSendFields will be
1346	// sent to the server regardless of whether the field is empty or not.
1347	// This may be used to include empty fields in Patch requests.
1348	ForceSendFields []string `json:"-"`
1349
1350	// NullFields is a list of field names (e.g. "Account") to include in
1351	// API requests with the JSON null value. By default, fields with empty
1352	// values are omitted from API requests. However, any field with an
1353	// empty value appearing in NullFields will be sent to the server as
1354	// null. It is an error if a field in this list has a non-empty value.
1355	// This may be used to include null fields in Patch requests.
1356	NullFields []string `json:"-"`
1357}
1358
1359func (s *AccountsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
1360	type NoMethod AccountsCustomBatchResponseEntry
1361	raw := NoMethod(*s)
1362	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1363}
1364
1365type AccountsLinkRequest struct {
1366	// Action: Action to perform for this link. The "request" action is
1367	// only available to select merchants. Acceptable values are: -
1368	// "approve" - "remove" - "request"
1369	Action string `json:"action,omitempty"`
1370
1371	// LinkType: Type of the link between the two accounts. Acceptable
1372	// values are: - "channelPartner" - "eCommercePlatform"
1373	LinkType string `json:"linkType,omitempty"`
1374
1375	// LinkedAccountId: The ID of the linked account.
1376	LinkedAccountId string `json:"linkedAccountId,omitempty"`
1377
1378	// ForceSendFields is a list of field names (e.g. "Action") to
1379	// unconditionally include in API requests. By default, fields with
1380	// empty or default values are omitted from API requests. However, any
1381	// non-pointer, non-interface field appearing in ForceSendFields will be
1382	// sent to the server regardless of whether the field is empty or not.
1383	// This may be used to include empty fields in Patch requests.
1384	ForceSendFields []string `json:"-"`
1385
1386	// NullFields is a list of field names (e.g. "Action") to include in API
1387	// requests with the JSON null value. By default, fields with empty
1388	// values are omitted from API requests. However, any field with an
1389	// empty value appearing in NullFields will be sent to the server as
1390	// null. It is an error if a field in this list has a non-empty value.
1391	// This may be used to include null fields in Patch requests.
1392	NullFields []string `json:"-"`
1393}
1394
1395func (s *AccountsLinkRequest) MarshalJSON() ([]byte, error) {
1396	type NoMethod AccountsLinkRequest
1397	raw := NoMethod(*s)
1398	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1399}
1400
1401type AccountsLinkResponse struct {
1402	// Kind: Identifies what kind of resource this is. Value: the fixed
1403	// string "content#accountsLinkResponse".
1404	Kind string `json:"kind,omitempty"`
1405
1406	// ServerResponse contains the HTTP response code and headers from the
1407	// server.
1408	googleapi.ServerResponse `json:"-"`
1409
1410	// ForceSendFields is a list of field names (e.g. "Kind") to
1411	// unconditionally include in API requests. By default, fields with
1412	// empty or default values are omitted from API requests. However, any
1413	// non-pointer, non-interface field appearing in ForceSendFields will be
1414	// sent to the server regardless of whether the field is empty or not.
1415	// This may be used to include empty fields in Patch requests.
1416	ForceSendFields []string `json:"-"`
1417
1418	// NullFields is a list of field names (e.g. "Kind") to include in API
1419	// requests with the JSON null value. By default, fields with empty
1420	// values are omitted from API requests. However, any field with an
1421	// empty value appearing in NullFields will be sent to the server as
1422	// null. It is an error if a field in this list has a non-empty value.
1423	// This may be used to include null fields in Patch requests.
1424	NullFields []string `json:"-"`
1425}
1426
1427func (s *AccountsLinkResponse) MarshalJSON() ([]byte, error) {
1428	type NoMethod AccountsLinkResponse
1429	raw := NoMethod(*s)
1430	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1431}
1432
1433type AccountsListResponse struct {
1434	// Kind: Identifies what kind of resource this is. Value: the fixed
1435	// string "content#accountsListResponse".
1436	Kind string `json:"kind,omitempty"`
1437
1438	// NextPageToken: The token for the retrieval of the next page of
1439	// accounts.
1440	NextPageToken string `json:"nextPageToken,omitempty"`
1441
1442	Resources []*Account `json:"resources,omitempty"`
1443
1444	// ServerResponse contains the HTTP response code and headers from the
1445	// server.
1446	googleapi.ServerResponse `json:"-"`
1447
1448	// ForceSendFields is a list of field names (e.g. "Kind") to
1449	// unconditionally include in API requests. By default, fields with
1450	// empty or default values are omitted from API requests. However, any
1451	// non-pointer, non-interface field appearing in ForceSendFields will be
1452	// sent to the server regardless of whether the field is empty or not.
1453	// This may be used to include empty fields in Patch requests.
1454	ForceSendFields []string `json:"-"`
1455
1456	// NullFields is a list of field names (e.g. "Kind") to include in API
1457	// requests with the JSON null value. By default, fields with empty
1458	// values are omitted from API requests. However, any field with an
1459	// empty value appearing in NullFields will be sent to the server as
1460	// null. It is an error if a field in this list has a non-empty value.
1461	// This may be used to include null fields in Patch requests.
1462	NullFields []string `json:"-"`
1463}
1464
1465func (s *AccountsListResponse) MarshalJSON() ([]byte, error) {
1466	type NoMethod AccountsListResponse
1467	raw := NoMethod(*s)
1468	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1469}
1470
1471type AccountstatusesCustomBatchRequest struct {
1472	// Entries: The request entries to be processed in the batch.
1473	Entries []*AccountstatusesCustomBatchRequestEntry `json:"entries,omitempty"`
1474
1475	// ForceSendFields is a list of field names (e.g. "Entries") to
1476	// unconditionally include in API requests. By default, fields with
1477	// empty or default values are omitted from API requests. However, any
1478	// non-pointer, non-interface field appearing in ForceSendFields will be
1479	// sent to the server regardless of whether the field is empty or not.
1480	// This may be used to include empty fields in Patch requests.
1481	ForceSendFields []string `json:"-"`
1482
1483	// NullFields is a list of field names (e.g. "Entries") to include in
1484	// API requests with the JSON null value. By default, fields with empty
1485	// values are omitted from API requests. However, any field with an
1486	// empty value appearing in NullFields will be sent to the server as
1487	// null. It is an error if a field in this list has a non-empty value.
1488	// This may be used to include null fields in Patch requests.
1489	NullFields []string `json:"-"`
1490}
1491
1492func (s *AccountstatusesCustomBatchRequest) MarshalJSON() ([]byte, error) {
1493	type NoMethod AccountstatusesCustomBatchRequest
1494	raw := NoMethod(*s)
1495	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1496}
1497
1498// AccountstatusesCustomBatchRequestEntry: A batch entry encoding a
1499// single non-batch accountstatuses request.
1500type AccountstatusesCustomBatchRequestEntry struct {
1501	// AccountId: The ID of the (sub-)account whose status to get.
1502	AccountId uint64 `json:"accountId,omitempty,string"`
1503
1504	// BatchId: An entry ID, unique within the batch request.
1505	BatchId int64 `json:"batchId,omitempty"`
1506
1507	// Destinations: If set, only issues for the specified destinations are
1508	// returned, otherwise only issues for the Shopping destination.
1509	Destinations []string `json:"destinations,omitempty"`
1510
1511	// MerchantId: The ID of the managing account.
1512	MerchantId uint64 `json:"merchantId,omitempty,string"`
1513
1514	// Method: The method of the batch entry. Acceptable values are: -
1515	// "get"
1516	Method string `json:"method,omitempty"`
1517
1518	// ForceSendFields is a list of field names (e.g. "AccountId") to
1519	// unconditionally include in API requests. By default, fields with
1520	// empty or default values are omitted from API requests. However, any
1521	// non-pointer, non-interface field appearing in ForceSendFields will be
1522	// sent to the server regardless of whether the field is empty or not.
1523	// This may be used to include empty fields in Patch requests.
1524	ForceSendFields []string `json:"-"`
1525
1526	// NullFields is a list of field names (e.g. "AccountId") to include in
1527	// API requests with the JSON null value. By default, fields with empty
1528	// values are omitted from API requests. However, any field with an
1529	// empty value appearing in NullFields will be sent to the server as
1530	// null. It is an error if a field in this list has a non-empty value.
1531	// This may be used to include null fields in Patch requests.
1532	NullFields []string `json:"-"`
1533}
1534
1535func (s *AccountstatusesCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
1536	type NoMethod AccountstatusesCustomBatchRequestEntry
1537	raw := NoMethod(*s)
1538	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1539}
1540
1541type AccountstatusesCustomBatchResponse struct {
1542	// Entries: The result of the execution of the batch requests.
1543	Entries []*AccountstatusesCustomBatchResponseEntry `json:"entries,omitempty"`
1544
1545	// Kind: Identifies what kind of resource this is. Value: the fixed
1546	// string "content#accountstatusesCustomBatchResponse".
1547	Kind string `json:"kind,omitempty"`
1548
1549	// ServerResponse contains the HTTP response code and headers from the
1550	// server.
1551	googleapi.ServerResponse `json:"-"`
1552
1553	// ForceSendFields is a list of field names (e.g. "Entries") to
1554	// unconditionally include in API requests. By default, fields with
1555	// empty or default values are omitted from API requests. However, any
1556	// non-pointer, non-interface field appearing in ForceSendFields will be
1557	// sent to the server regardless of whether the field is empty or not.
1558	// This may be used to include empty fields in Patch requests.
1559	ForceSendFields []string `json:"-"`
1560
1561	// NullFields is a list of field names (e.g. "Entries") to include in
1562	// API requests with the JSON null value. By default, fields with empty
1563	// values are omitted from API requests. However, any field with an
1564	// empty value appearing in NullFields will be sent to the server as
1565	// null. It is an error if a field in this list has a non-empty value.
1566	// This may be used to include null fields in Patch requests.
1567	NullFields []string `json:"-"`
1568}
1569
1570func (s *AccountstatusesCustomBatchResponse) MarshalJSON() ([]byte, error) {
1571	type NoMethod AccountstatusesCustomBatchResponse
1572	raw := NoMethod(*s)
1573	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1574}
1575
1576// AccountstatusesCustomBatchResponseEntry: A batch entry encoding a
1577// single non-batch accountstatuses response.
1578type AccountstatusesCustomBatchResponseEntry struct {
1579	// AccountStatus: The requested account status. Defined if and only if
1580	// the request was successful.
1581	AccountStatus *AccountStatus `json:"accountStatus,omitempty"`
1582
1583	// BatchId: The ID of the request entry this entry responds to.
1584	BatchId int64 `json:"batchId,omitempty"`
1585
1586	// Errors: A list of errors defined if and only if the request failed.
1587	Errors *Errors `json:"errors,omitempty"`
1588
1589	// ForceSendFields is a list of field names (e.g. "AccountStatus") to
1590	// unconditionally include in API requests. By default, fields with
1591	// empty or default values are omitted from API requests. However, any
1592	// non-pointer, non-interface field appearing in ForceSendFields will be
1593	// sent to the server regardless of whether the field is empty or not.
1594	// This may be used to include empty fields in Patch requests.
1595	ForceSendFields []string `json:"-"`
1596
1597	// NullFields is a list of field names (e.g. "AccountStatus") to include
1598	// in API requests with the JSON null value. By default, fields with
1599	// empty values are omitted from API requests. However, any field with
1600	// an empty value appearing in NullFields will be sent to the server as
1601	// null. It is an error if a field in this list has a non-empty value.
1602	// This may be used to include null fields in Patch requests.
1603	NullFields []string `json:"-"`
1604}
1605
1606func (s *AccountstatusesCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
1607	type NoMethod AccountstatusesCustomBatchResponseEntry
1608	raw := NoMethod(*s)
1609	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1610}
1611
1612type AccountstatusesListResponse struct {
1613	// Kind: Identifies what kind of resource this is. Value: the fixed
1614	// string "content#accountstatusesListResponse".
1615	Kind string `json:"kind,omitempty"`
1616
1617	// NextPageToken: The token for the retrieval of the next page of
1618	// account statuses.
1619	NextPageToken string `json:"nextPageToken,omitempty"`
1620
1621	Resources []*AccountStatus `json:"resources,omitempty"`
1622
1623	// ServerResponse contains the HTTP response code and headers from the
1624	// server.
1625	googleapi.ServerResponse `json:"-"`
1626
1627	// ForceSendFields is a list of field names (e.g. "Kind") to
1628	// unconditionally include in API requests. By default, fields with
1629	// empty or default values are omitted from API requests. However, any
1630	// non-pointer, non-interface field appearing in ForceSendFields will be
1631	// sent to the server regardless of whether the field is empty or not.
1632	// This may be used to include empty fields in Patch requests.
1633	ForceSendFields []string `json:"-"`
1634
1635	// NullFields is a list of field names (e.g. "Kind") to include in API
1636	// requests with the JSON null value. By default, fields with empty
1637	// values are omitted from API requests. However, any field with an
1638	// empty value appearing in NullFields will be sent to the server as
1639	// null. It is an error if a field in this list has a non-empty value.
1640	// This may be used to include null fields in Patch requests.
1641	NullFields []string `json:"-"`
1642}
1643
1644func (s *AccountstatusesListResponse) MarshalJSON() ([]byte, error) {
1645	type NoMethod AccountstatusesListResponse
1646	raw := NoMethod(*s)
1647	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1648}
1649
1650type AccounttaxCustomBatchRequest struct {
1651	// Entries: The request entries to be processed in the batch.
1652	Entries []*AccounttaxCustomBatchRequestEntry `json:"entries,omitempty"`
1653
1654	// ForceSendFields is a list of field names (e.g. "Entries") to
1655	// unconditionally include in API requests. By default, fields with
1656	// empty or default values are omitted from API requests. However, any
1657	// non-pointer, non-interface field appearing in ForceSendFields will be
1658	// sent to the server regardless of whether the field is empty or not.
1659	// This may be used to include empty fields in Patch requests.
1660	ForceSendFields []string `json:"-"`
1661
1662	// NullFields is a list of field names (e.g. "Entries") to include in
1663	// API requests with the JSON null value. By default, fields with empty
1664	// values are omitted from API requests. However, any field with an
1665	// empty value appearing in NullFields will be sent to the server as
1666	// null. It is an error if a field in this list has a non-empty value.
1667	// This may be used to include null fields in Patch requests.
1668	NullFields []string `json:"-"`
1669}
1670
1671func (s *AccounttaxCustomBatchRequest) MarshalJSON() ([]byte, error) {
1672	type NoMethod AccounttaxCustomBatchRequest
1673	raw := NoMethod(*s)
1674	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1675}
1676
1677// AccounttaxCustomBatchRequestEntry: A batch entry encoding a single
1678// non-batch accounttax request.
1679type AccounttaxCustomBatchRequestEntry struct {
1680	// AccountId: The ID of the account for which to get/update account tax
1681	// settings.
1682	AccountId uint64 `json:"accountId,omitempty,string"`
1683
1684	// AccountTax: The account tax settings to update. Only defined if the
1685	// method is `update`.
1686	AccountTax *AccountTax `json:"accountTax,omitempty"`
1687
1688	// BatchId: An entry ID, unique within the batch request.
1689	BatchId int64 `json:"batchId,omitempty"`
1690
1691	// MerchantId: The ID of the managing account.
1692	MerchantId uint64 `json:"merchantId,omitempty,string"`
1693
1694	// Method: The method of the batch entry. Acceptable values are: -
1695	// "get" - "update"
1696	Method string `json:"method,omitempty"`
1697
1698	// ForceSendFields is a list of field names (e.g. "AccountId") to
1699	// unconditionally include in API requests. By default, fields with
1700	// empty or default values are omitted from API requests. However, any
1701	// non-pointer, non-interface field appearing in ForceSendFields will be
1702	// sent to the server regardless of whether the field is empty or not.
1703	// This may be used to include empty fields in Patch requests.
1704	ForceSendFields []string `json:"-"`
1705
1706	// NullFields is a list of field names (e.g. "AccountId") to include in
1707	// API requests with the JSON null value. By default, fields with empty
1708	// values are omitted from API requests. However, any field with an
1709	// empty value appearing in NullFields will be sent to the server as
1710	// null. It is an error if a field in this list has a non-empty value.
1711	// This may be used to include null fields in Patch requests.
1712	NullFields []string `json:"-"`
1713}
1714
1715func (s *AccounttaxCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
1716	type NoMethod AccounttaxCustomBatchRequestEntry
1717	raw := NoMethod(*s)
1718	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1719}
1720
1721type AccounttaxCustomBatchResponse struct {
1722	// Entries: The result of the execution of the batch requests.
1723	Entries []*AccounttaxCustomBatchResponseEntry `json:"entries,omitempty"`
1724
1725	// Kind: Identifies what kind of resource this is. Value: the fixed
1726	// string "content#accounttaxCustomBatchResponse".
1727	Kind string `json:"kind,omitempty"`
1728
1729	// ServerResponse contains the HTTP response code and headers from the
1730	// server.
1731	googleapi.ServerResponse `json:"-"`
1732
1733	// ForceSendFields is a list of field names (e.g. "Entries") to
1734	// unconditionally include in API requests. By default, fields with
1735	// empty or default values are omitted from API requests. However, any
1736	// non-pointer, non-interface field appearing in ForceSendFields will be
1737	// sent to the server regardless of whether the field is empty or not.
1738	// This may be used to include empty fields in Patch requests.
1739	ForceSendFields []string `json:"-"`
1740
1741	// NullFields is a list of field names (e.g. "Entries") to include in
1742	// API requests with the JSON null value. By default, fields with empty
1743	// values are omitted from API requests. However, any field with an
1744	// empty value appearing in NullFields will be sent to the server as
1745	// null. It is an error if a field in this list has a non-empty value.
1746	// This may be used to include null fields in Patch requests.
1747	NullFields []string `json:"-"`
1748}
1749
1750func (s *AccounttaxCustomBatchResponse) MarshalJSON() ([]byte, error) {
1751	type NoMethod AccounttaxCustomBatchResponse
1752	raw := NoMethod(*s)
1753	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1754}
1755
1756// AccounttaxCustomBatchResponseEntry: A batch entry encoding a single
1757// non-batch accounttax response.
1758type AccounttaxCustomBatchResponseEntry struct {
1759	// AccountTax: The retrieved or updated account tax settings.
1760	AccountTax *AccountTax `json:"accountTax,omitempty"`
1761
1762	// BatchId: The ID of the request entry this entry responds to.
1763	BatchId int64 `json:"batchId,omitempty"`
1764
1765	// Errors: A list of errors defined if and only if the request failed.
1766	Errors *Errors `json:"errors,omitempty"`
1767
1768	// Kind: Identifies what kind of resource this is. Value: the fixed
1769	// string "content#accounttaxCustomBatchResponseEntry"
1770	Kind string `json:"kind,omitempty"`
1771
1772	// ForceSendFields is a list of field names (e.g. "AccountTax") to
1773	// unconditionally include in API requests. By default, fields with
1774	// empty or default values are omitted from API requests. However, any
1775	// non-pointer, non-interface field appearing in ForceSendFields will be
1776	// sent to the server regardless of whether the field is empty or not.
1777	// This may be used to include empty fields in Patch requests.
1778	ForceSendFields []string `json:"-"`
1779
1780	// NullFields is a list of field names (e.g. "AccountTax") to include in
1781	// API requests with the JSON null value. By default, fields with empty
1782	// values are omitted from API requests. However, any field with an
1783	// empty value appearing in NullFields will be sent to the server as
1784	// null. It is an error if a field in this list has a non-empty value.
1785	// This may be used to include null fields in Patch requests.
1786	NullFields []string `json:"-"`
1787}
1788
1789func (s *AccounttaxCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
1790	type NoMethod AccounttaxCustomBatchResponseEntry
1791	raw := NoMethod(*s)
1792	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1793}
1794
1795type AccounttaxListResponse struct {
1796	// Kind: Identifies what kind of resource this is. Value: the fixed
1797	// string "content#accounttaxListResponse".
1798	Kind string `json:"kind,omitempty"`
1799
1800	// NextPageToken: The token for the retrieval of the next page of
1801	// account tax settings.
1802	NextPageToken string `json:"nextPageToken,omitempty"`
1803
1804	Resources []*AccountTax `json:"resources,omitempty"`
1805
1806	// ServerResponse contains the HTTP response code and headers from the
1807	// server.
1808	googleapi.ServerResponse `json:"-"`
1809
1810	// ForceSendFields is a list of field names (e.g. "Kind") to
1811	// unconditionally include in API requests. By default, fields with
1812	// empty or default values are omitted from API requests. However, any
1813	// non-pointer, non-interface field appearing in ForceSendFields will be
1814	// sent to the server regardless of whether the field is empty or not.
1815	// This may be used to include empty fields in Patch requests.
1816	ForceSendFields []string `json:"-"`
1817
1818	// NullFields is a list of field names (e.g. "Kind") to include in API
1819	// requests with the JSON null value. By default, fields with empty
1820	// values are omitted from API requests. However, any field with an
1821	// empty value appearing in NullFields will be sent to the server as
1822	// null. It is an error if a field in this list has a non-empty value.
1823	// This may be used to include null fields in Patch requests.
1824	NullFields []string `json:"-"`
1825}
1826
1827func (s *AccounttaxListResponse) MarshalJSON() ([]byte, error) {
1828	type NoMethod AccounttaxListResponse
1829	raw := NoMethod(*s)
1830	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1831}
1832
1833type Address struct {
1834	// AdministrativeArea: Required. Top-level administrative subdivision of
1835	// the country. For example, a state like California ("CA") or a
1836	// province like Quebec ("QC").
1837	AdministrativeArea string `json:"administrativeArea,omitempty"`
1838
1839	// City: Required. City, town or commune. May also include dependent
1840	// localities or sublocalities (e.g. neighborhoods or suburbs).
1841	City string `json:"city,omitempty"`
1842
1843	// Country: Required. CLDR country code
1844	// (http://www.unicode.org/repos/cldr/tags/latest/common/main/en.xml)(e.g.
1845	// "US").
1846	Country string `json:"country,omitempty"`
1847
1848	// PostalCode: Required. Postal code or ZIP (e.g. "94043"). Required.
1849	PostalCode string `json:"postalCode,omitempty"`
1850
1851	// StreetAddress: Street-level part of the address.
1852	StreetAddress string `json:"streetAddress,omitempty"`
1853
1854	// ForceSendFields is a list of field names (e.g. "AdministrativeArea")
1855	// to unconditionally include in API requests. By default, fields with
1856	// empty or default values are omitted from API requests. However, any
1857	// non-pointer, non-interface field appearing in ForceSendFields will be
1858	// sent to the server regardless of whether the field is empty or not.
1859	// This may be used to include empty fields in Patch requests.
1860	ForceSendFields []string `json:"-"`
1861
1862	// NullFields is a list of field names (e.g. "AdministrativeArea") to
1863	// include in API requests with the JSON null value. By default, fields
1864	// with empty values are omitted from API requests. However, any field
1865	// with an empty value appearing in NullFields will be sent to the
1866	// server as null. It is an error if a field in this list has a
1867	// non-empty value. This may be used to include null fields in Patch
1868	// requests.
1869	NullFields []string `json:"-"`
1870}
1871
1872func (s *Address) MarshalJSON() ([]byte, error) {
1873	type NoMethod Address
1874	raw := NoMethod(*s)
1875	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1876}
1877
1878type Amount struct {
1879	// Pretax: [required] Value before taxes.
1880	Pretax *Price `json:"pretax,omitempty"`
1881
1882	// Tax: [required] Tax value.
1883	Tax *Price `json:"tax,omitempty"`
1884
1885	// ForceSendFields is a list of field names (e.g. "Pretax") to
1886	// unconditionally include in API requests. By default, fields with
1887	// empty or default values are omitted from API requests. However, any
1888	// non-pointer, non-interface field appearing in ForceSendFields will be
1889	// sent to the server regardless of whether the field is empty or not.
1890	// This may be used to include empty fields in Patch requests.
1891	ForceSendFields []string `json:"-"`
1892
1893	// NullFields is a list of field names (e.g. "Pretax") to include in API
1894	// requests with the JSON null value. By default, fields with empty
1895	// values are omitted from API requests. However, any field with an
1896	// empty value appearing in NullFields will be sent to the server as
1897	// null. It is an error if a field in this list has a non-empty value.
1898	// This may be used to include null fields in Patch requests.
1899	NullFields []string `json:"-"`
1900}
1901
1902func (s *Amount) MarshalJSON() ([]byte, error) {
1903	type NoMethod Amount
1904	raw := NoMethod(*s)
1905	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1906}
1907
1908type BusinessDayConfig struct {
1909	// BusinessDays: Regular business days, such as '"monday"'. May not be
1910	// empty.
1911	BusinessDays []string `json:"businessDays,omitempty"`
1912
1913	// ForceSendFields is a list of field names (e.g. "BusinessDays") to
1914	// unconditionally include in API requests. By default, fields with
1915	// empty or default values are omitted from API requests. However, any
1916	// non-pointer, non-interface field appearing in ForceSendFields will be
1917	// sent to the server regardless of whether the field is empty or not.
1918	// This may be used to include empty fields in Patch requests.
1919	ForceSendFields []string `json:"-"`
1920
1921	// NullFields is a list of field names (e.g. "BusinessDays") to include
1922	// in API requests with the JSON null value. By default, fields with
1923	// empty values are omitted from API requests. However, any field with
1924	// an empty value appearing in NullFields will be sent to the server as
1925	// null. It is an error if a field in this list has a non-empty value.
1926	// This may be used to include null fields in Patch requests.
1927	NullFields []string `json:"-"`
1928}
1929
1930func (s *BusinessDayConfig) MarshalJSON() ([]byte, error) {
1931	type NoMethod BusinessDayConfig
1932	raw := NoMethod(*s)
1933	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1934}
1935
1936type CarrierRate struct {
1937	// CarrierName: Carrier service, such as "UPS" or "Fedex". The list
1938	// of supported carriers can be retrieved via the `getSupportedCarriers`
1939	// method. Required.
1940	CarrierName string `json:"carrierName,omitempty"`
1941
1942	// CarrierService: Carrier service, such as "ground" or "2 days".
1943	// The list of supported services for a carrier can be retrieved via the
1944	// `getSupportedCarriers` method. Required.
1945	CarrierService string `json:"carrierService,omitempty"`
1946
1947	// FlatAdjustment: Additive shipping rate modifier. Can be negative. For
1948	// example `{ "value": "1", "currency" : "USD" }` adds $1 to the rate,
1949	// `{ "value": "-3", "currency" : "USD" }` removes $3 from the rate.
1950	// Optional.
1951	FlatAdjustment *Price `json:"flatAdjustment,omitempty"`
1952
1953	// Name: Name of the carrier rate. Must be unique per rate group.
1954	// Required.
1955	Name string `json:"name,omitempty"`
1956
1957	// OriginPostalCode: Shipping origin for this carrier rate. Required.
1958	OriginPostalCode string `json:"originPostalCode,omitempty"`
1959
1960	// PercentageAdjustment: Multiplicative shipping rate modifier as a
1961	// number in decimal notation. Can be negative. For example "5.4"
1962	// increases the rate by 5.4%, "-3" decreases the rate by 3%.
1963	// Optional.
1964	PercentageAdjustment string `json:"percentageAdjustment,omitempty"`
1965
1966	// ForceSendFields is a list of field names (e.g. "CarrierName") to
1967	// unconditionally include in API requests. By default, fields with
1968	// empty or default values are omitted from API requests. However, any
1969	// non-pointer, non-interface field appearing in ForceSendFields will be
1970	// sent to the server regardless of whether the field is empty or not.
1971	// This may be used to include empty fields in Patch requests.
1972	ForceSendFields []string `json:"-"`
1973
1974	// NullFields is a list of field names (e.g. "CarrierName") to include
1975	// in API requests with the JSON null value. By default, fields with
1976	// empty values are omitted from API requests. However, any field with
1977	// an empty value appearing in NullFields will be sent to the server as
1978	// null. It is an error if a field in this list has a non-empty value.
1979	// This may be used to include null fields in Patch requests.
1980	NullFields []string `json:"-"`
1981}
1982
1983func (s *CarrierRate) MarshalJSON() ([]byte, error) {
1984	type NoMethod CarrierRate
1985	raw := NoMethod(*s)
1986	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1987}
1988
1989type CarriersCarrier struct {
1990	// Country: The CLDR country code of the carrier (e.g., "US"). Always
1991	// present.
1992	Country string `json:"country,omitempty"`
1993
1994	// EddServices: A list of services supported for EDD (Estimated Delivery
1995	// Date) calculation. This is the list of valid values for
1996	// WarehouseBasedDeliveryTime.carrierService.
1997	EddServices []string `json:"eddServices,omitempty"`
1998
1999	// Name: The name of the carrier (e.g., "UPS"). Always present.
2000	Name string `json:"name,omitempty"`
2001
2002	// Services: A list of supported services (e.g., "ground") for that
2003	// carrier. Contains at least one service. This is the list of valid
2004	// values for CarrierRate.carrierService.
2005	Services []string `json:"services,omitempty"`
2006
2007	// ForceSendFields is a list of field names (e.g. "Country") to
2008	// unconditionally include in API requests. By default, fields with
2009	// empty or default values are omitted from API requests. However, any
2010	// non-pointer, non-interface field appearing in ForceSendFields will be
2011	// sent to the server regardless of whether the field is empty or not.
2012	// This may be used to include empty fields in Patch requests.
2013	ForceSendFields []string `json:"-"`
2014
2015	// NullFields is a list of field names (e.g. "Country") to include in
2016	// API requests with the JSON null value. By default, fields with empty
2017	// values are omitted from API requests. However, any field with an
2018	// empty value appearing in NullFields will be sent to the server as
2019	// null. It is an error if a field in this list has a non-empty value.
2020	// This may be used to include null fields in Patch requests.
2021	NullFields []string `json:"-"`
2022}
2023
2024func (s *CarriersCarrier) MarshalJSON() ([]byte, error) {
2025	type NoMethod CarriersCarrier
2026	raw := NoMethod(*s)
2027	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2028}
2029
2030type CustomAttribute struct {
2031	// Name: The name of the attribute. Underscores will be replaced by
2032	// spaces upon insertion.
2033	Name string `json:"name,omitempty"`
2034
2035	// Type: The type of the attribute. Acceptable values are: - "boolean"
2036	// - "datetimerange" - "float" - "group" - "int" - "price" -
2037	// "text" - "time" - "url"
2038	Type string `json:"type,omitempty"`
2039
2040	// Unit: Free-form unit of the attribute. Unit can only be used for
2041	// values of type int, float, or price.
2042	Unit string `json:"unit,omitempty"`
2043
2044	// Value: The value of the attribute.
2045	Value string `json:"value,omitempty"`
2046
2047	// ForceSendFields is a list of field names (e.g. "Name") to
2048	// unconditionally include in API requests. By default, fields with
2049	// empty or default values are omitted from API requests. However, any
2050	// non-pointer, non-interface field appearing in ForceSendFields will be
2051	// sent to the server regardless of whether the field is empty or not.
2052	// This may be used to include empty fields in Patch requests.
2053	ForceSendFields []string `json:"-"`
2054
2055	// NullFields is a list of field names (e.g. "Name") to include in API
2056	// requests with the JSON null value. By default, fields with empty
2057	// values are omitted from API requests. However, any field with an
2058	// empty value appearing in NullFields will be sent to the server as
2059	// null. It is an error if a field in this list has a non-empty value.
2060	// This may be used to include null fields in Patch requests.
2061	NullFields []string `json:"-"`
2062}
2063
2064func (s *CustomAttribute) MarshalJSON() ([]byte, error) {
2065	type NoMethod CustomAttribute
2066	raw := NoMethod(*s)
2067	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2068}
2069
2070type CustomGroup struct {
2071	// Attributes: The sub-attributes.
2072	Attributes []*CustomAttribute `json:"attributes,omitempty"`
2073
2074	// Name: The name of the group. Underscores will be replaced by spaces
2075	// upon insertion.
2076	Name string `json:"name,omitempty"`
2077
2078	// ForceSendFields is a list of field names (e.g. "Attributes") to
2079	// unconditionally include in API requests. By default, fields with
2080	// empty or default values are omitted from API requests. However, any
2081	// non-pointer, non-interface field appearing in ForceSendFields will be
2082	// sent to the server regardless of whether the field is empty or not.
2083	// This may be used to include empty fields in Patch requests.
2084	ForceSendFields []string `json:"-"`
2085
2086	// NullFields is a list of field names (e.g. "Attributes") to include in
2087	// API requests with the JSON null value. By default, fields with empty
2088	// values are omitted from API requests. However, any field with an
2089	// empty value appearing in NullFields will be sent to the server as
2090	// null. It is an error if a field in this list has a non-empty value.
2091	// This may be used to include null fields in Patch requests.
2092	NullFields []string `json:"-"`
2093}
2094
2095func (s *CustomGroup) MarshalJSON() ([]byte, error) {
2096	type NoMethod CustomGroup
2097	raw := NoMethod(*s)
2098	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2099}
2100
2101type CustomerReturnReason struct {
2102	// Description: Description of the reason.
2103	Description string `json:"description,omitempty"`
2104
2105	// ReasonCode: Code of the return reason. Acceptable values are: -
2106	// "betterPriceFound" - "changedMind" - "damagedOrDefectiveItem" -
2107	// "didNotMatchDescription" - "doesNotFit" - "expiredItem" -
2108	// "incorrectItemReceived" - "noLongerNeeded" - "notSpecified" -
2109	// "orderedWrongItem" - "other" - "qualityNotExpected" -
2110	// "receivedTooLate" - "undeliverable"
2111	ReasonCode string `json:"reasonCode,omitempty"`
2112
2113	// ForceSendFields is a list of field names (e.g. "Description") to
2114	// unconditionally include in API requests. By default, fields with
2115	// empty or default values are omitted from API requests. However, any
2116	// non-pointer, non-interface field appearing in ForceSendFields will be
2117	// sent to the server regardless of whether the field is empty or not.
2118	// This may be used to include empty fields in Patch requests.
2119	ForceSendFields []string `json:"-"`
2120
2121	// NullFields is a list of field names (e.g. "Description") to include
2122	// in API requests with the JSON null value. By default, fields with
2123	// empty values are omitted from API requests. However, any field with
2124	// an empty value appearing in NullFields will be sent to the server as
2125	// null. It is an error if a field in this list has a non-empty value.
2126	// This may be used to include null fields in Patch requests.
2127	NullFields []string `json:"-"`
2128}
2129
2130func (s *CustomerReturnReason) MarshalJSON() ([]byte, error) {
2131	type NoMethod CustomerReturnReason
2132	raw := NoMethod(*s)
2133	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2134}
2135
2136type CutoffTime struct {
2137	// Hour: Hour of the cutoff time until which an order has to be placed
2138	// to be processed in the same day. Required.
2139	Hour int64 `json:"hour,omitempty"`
2140
2141	// Minute: Minute of the cutoff time until which an order has to be
2142	// placed to be processed in the same day. Required.
2143	Minute int64 `json:"minute,omitempty"`
2144
2145	// Timezone: Timezone identifier for the cutoff time. A list of
2146	// identifiers can be found in the AdWords API documentation. E.g.
2147	// "Europe/Zurich". Required.
2148	Timezone string `json:"timezone,omitempty"`
2149
2150	// ForceSendFields is a list of field names (e.g. "Hour") to
2151	// unconditionally include in API requests. By default, fields with
2152	// empty or default values are omitted from API requests. However, any
2153	// non-pointer, non-interface field appearing in ForceSendFields will be
2154	// sent to the server regardless of whether the field is empty or not.
2155	// This may be used to include empty fields in Patch requests.
2156	ForceSendFields []string `json:"-"`
2157
2158	// NullFields is a list of field names (e.g. "Hour") to include in API
2159	// requests with the JSON null value. By default, fields with empty
2160	// values are omitted from API requests. However, any field with an
2161	// empty value appearing in NullFields will be sent to the server as
2162	// null. It is an error if a field in this list has a non-empty value.
2163	// This may be used to include null fields in Patch requests.
2164	NullFields []string `json:"-"`
2165}
2166
2167func (s *CutoffTime) MarshalJSON() ([]byte, error) {
2168	type NoMethod CutoffTime
2169	raw := NoMethod(*s)
2170	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2171}
2172
2173// Datafeed: Datafeed configuration data.
2174type Datafeed struct {
2175	// AttributeLanguage: The two-letter ISO 639-1 language in which the
2176	// attributes are defined in the data feed.
2177	AttributeLanguage string `json:"attributeLanguage,omitempty"`
2178
2179	// ContentLanguage: [DEPRECATED] Please use targets[].language instead.
2180	// The two-letter ISO 639-1 language of the items in the feed. Must be a
2181	// valid language for `targetCountry`.
2182	ContentLanguage string `json:"contentLanguage,omitempty"`
2183
2184	// ContentType: Required. The type of data feed. For product inventory
2185	// feeds, only feeds for local stores, not online stores, are supported.
2186	// Acceptable values are: - "local products" - "product inventory" -
2187	// "products"
2188	ContentType string `json:"contentType,omitempty"`
2189
2190	// FetchSchedule: Fetch schedule for the feed file.
2191	FetchSchedule *DatafeedFetchSchedule `json:"fetchSchedule,omitempty"`
2192
2193	// FileName: Required. The filename of the feed. All feeds must have a
2194	// unique file name.
2195	FileName string `json:"fileName,omitempty"`
2196
2197	// Format: Format of the feed file.
2198	Format *DatafeedFormat `json:"format,omitempty"`
2199
2200	// Id: Required for update. The ID of the data feed.
2201	Id int64 `json:"id,omitempty,string"`
2202
2203	// IntendedDestinations: [DEPRECATED] Please use
2204	// targets[].includedDestinations instead. The list of intended
2205	// destinations (corresponds to checked check boxes in Merchant Center).
2206	IntendedDestinations []string `json:"intendedDestinations,omitempty"`
2207
2208	// Kind: Identifies what kind of resource this is. Value: the fixed
2209	// string "content#datafeed"
2210	Kind string `json:"kind,omitempty"`
2211
2212	// Name: Required for insert. A descriptive name of the data feed.
2213	Name string `json:"name,omitempty"`
2214
2215	// TargetCountry: [DEPRECATED] Please use targets[].country instead. The
2216	// country where the items in the feed will be included in the search
2217	// index, represented as a CLDR territory code.
2218	TargetCountry string `json:"targetCountry,omitempty"`
2219
2220	// Targets: The targets this feed should apply to (country, language,
2221	// destinations).
2222	Targets []*DatafeedTarget `json:"targets,omitempty"`
2223
2224	// ServerResponse contains the HTTP response code and headers from the
2225	// server.
2226	googleapi.ServerResponse `json:"-"`
2227
2228	// ForceSendFields is a list of field names (e.g. "AttributeLanguage")
2229	// to unconditionally include in API requests. By default, fields with
2230	// empty or default values are omitted from API requests. However, any
2231	// non-pointer, non-interface field appearing in ForceSendFields will be
2232	// sent to the server regardless of whether the field is empty or not.
2233	// This may be used to include empty fields in Patch requests.
2234	ForceSendFields []string `json:"-"`
2235
2236	// NullFields is a list of field names (e.g. "AttributeLanguage") to
2237	// include in API requests with the JSON null value. By default, fields
2238	// with empty values are omitted from API requests. However, any field
2239	// with an empty value appearing in NullFields will be sent to the
2240	// server as null. It is an error if a field in this list has a
2241	// non-empty value. This may be used to include null fields in Patch
2242	// requests.
2243	NullFields []string `json:"-"`
2244}
2245
2246func (s *Datafeed) MarshalJSON() ([]byte, error) {
2247	type NoMethod Datafeed
2248	raw := NoMethod(*s)
2249	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2250}
2251
2252// DatafeedFetchSchedule: The required fields vary based on the
2253// frequency of fetching. For a monthly fetch schedule, day_of_month and
2254// hour are required. For a weekly fetch schedule, weekday and hour are
2255// required. For a daily fetch schedule, only hour is required.
2256type DatafeedFetchSchedule struct {
2257	// DayOfMonth: The day of the month the feed file should be fetched
2258	// (1-31).
2259	DayOfMonth int64 `json:"dayOfMonth,omitempty"`
2260
2261	// FetchUrl: The URL where the feed file can be fetched. Google Merchant
2262	// Center will support automatic scheduled uploads using the HTTP,
2263	// HTTPS, FTP, or SFTP protocols, so the value will need to be a valid
2264	// link using one of those four protocols.
2265	FetchUrl string `json:"fetchUrl,omitempty"`
2266
2267	// Hour: The hour of the day the feed file should be fetched (0-23).
2268	Hour int64 `json:"hour,omitempty"`
2269
2270	// MinuteOfHour: The minute of the hour the feed file should be fetched
2271	// (0-59). Read-only.
2272	MinuteOfHour int64 `json:"minuteOfHour,omitempty"`
2273
2274	// Password: An optional password for fetch_url.
2275	Password string `json:"password,omitempty"`
2276
2277	// Paused: Whether the scheduled fetch is paused or not.
2278	Paused bool `json:"paused,omitempty"`
2279
2280	// TimeZone: Time zone used for schedule. UTC by default. E.g.,
2281	// "America/Los_Angeles".
2282	TimeZone string `json:"timeZone,omitempty"`
2283
2284	// Username: An optional user name for fetch_url.
2285	Username string `json:"username,omitempty"`
2286
2287	// Weekday: The day of the week the feed file should be fetched.
2288	// Acceptable values are: - "monday" - "tuesday" - "wednesday" -
2289	// "thursday" - "friday" - "saturday" - "sunday"
2290	Weekday string `json:"weekday,omitempty"`
2291
2292	// ForceSendFields is a list of field names (e.g. "DayOfMonth") to
2293	// unconditionally include in API requests. By default, fields with
2294	// empty or default values are omitted from API requests. However, any
2295	// non-pointer, non-interface field appearing in ForceSendFields will be
2296	// sent to the server regardless of whether the field is empty or not.
2297	// This may be used to include empty fields in Patch requests.
2298	ForceSendFields []string `json:"-"`
2299
2300	// NullFields is a list of field names (e.g. "DayOfMonth") to include in
2301	// API requests with the JSON null value. By default, fields with empty
2302	// values are omitted from API requests. However, any field with an
2303	// empty value appearing in NullFields will be sent to the server as
2304	// null. It is an error if a field in this list has a non-empty value.
2305	// This may be used to include null fields in Patch requests.
2306	NullFields []string `json:"-"`
2307}
2308
2309func (s *DatafeedFetchSchedule) MarshalJSON() ([]byte, error) {
2310	type NoMethod DatafeedFetchSchedule
2311	raw := NoMethod(*s)
2312	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2313}
2314
2315type DatafeedFormat struct {
2316	// ColumnDelimiter: Delimiter for the separation of values in a
2317	// delimiter-separated values feed. If not specified, the delimiter will
2318	// be auto-detected. Ignored for non-DSV data feeds. Acceptable values
2319	// are: - "pipe" - "tab" - "tilde"
2320	ColumnDelimiter string `json:"columnDelimiter,omitempty"`
2321
2322	// FileEncoding: Character encoding scheme of the data feed. If not
2323	// specified, the encoding will be auto-detected. Acceptable values are:
2324	// - "latin-1" - "utf-16be" - "utf-16le" - "utf-8" -
2325	// "windows-1252"
2326	FileEncoding string `json:"fileEncoding,omitempty"`
2327
2328	// QuotingMode: Specifies how double quotes are interpreted. If not
2329	// specified, the mode will be auto-detected. Ignored for non-DSV data
2330	// feeds. Acceptable values are: - "normal character" - "value
2331	// quoting"
2332	QuotingMode string `json:"quotingMode,omitempty"`
2333
2334	// ForceSendFields is a list of field names (e.g. "ColumnDelimiter") to
2335	// unconditionally include in API requests. By default, fields with
2336	// empty or default values are omitted from API requests. However, any
2337	// non-pointer, non-interface field appearing in ForceSendFields will be
2338	// sent to the server regardless of whether the field is empty or not.
2339	// This may be used to include empty fields in Patch requests.
2340	ForceSendFields []string `json:"-"`
2341
2342	// NullFields is a list of field names (e.g. "ColumnDelimiter") to
2343	// include in API requests with the JSON null value. By default, fields
2344	// with empty values are omitted from API requests. However, any field
2345	// with an empty value appearing in NullFields will be sent to the
2346	// server as null. It is an error if a field in this list has a
2347	// non-empty value. This may be used to include null fields in Patch
2348	// requests.
2349	NullFields []string `json:"-"`
2350}
2351
2352func (s *DatafeedFormat) MarshalJSON() ([]byte, error) {
2353	type NoMethod DatafeedFormat
2354	raw := NoMethod(*s)
2355	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2356}
2357
2358// DatafeedStatus: The status of a datafeed, i.e., the result of the
2359// last retrieval of the datafeed computed asynchronously when the feed
2360// processing is finished.
2361type DatafeedStatus struct {
2362	// Country: The country for which the status is reported, represented as
2363	// a CLDR territory code.
2364	Country string `json:"country,omitempty"`
2365
2366	// DatafeedId: The ID of the feed for which the status is reported.
2367	DatafeedId uint64 `json:"datafeedId,omitempty,string"`
2368
2369	// Errors: The list of errors occurring in the feed.
2370	Errors []*DatafeedStatusError `json:"errors,omitempty"`
2371
2372	// ItemsTotal: The number of items in the feed that were processed.
2373	ItemsTotal uint64 `json:"itemsTotal,omitempty,string"`
2374
2375	// ItemsValid: The number of items in the feed that were valid.
2376	ItemsValid uint64 `json:"itemsValid,omitempty,string"`
2377
2378	// Kind: Identifies what kind of resource this is. Value: the fixed
2379	// string "content#datafeedStatus"
2380	Kind string `json:"kind,omitempty"`
2381
2382	// Language: The two-letter ISO 639-1 language for which the status is
2383	// reported.
2384	Language string `json:"language,omitempty"`
2385
2386	// LastUploadDate: The last date at which the feed was uploaded.
2387	LastUploadDate string `json:"lastUploadDate,omitempty"`
2388
2389	// ProcessingStatus: The processing status of the feed. Acceptable
2390	// values are: - ""failure": The feed could not be processed or all
2391	// items had errors." - "in progress": The feed is being processed. -
2392	// "none": The feed has not yet been processed. For example, a feed
2393	// that has never been uploaded will have this processing status. -
2394	// "success": The feed was processed successfully, though some items
2395	// might have had errors.
2396	ProcessingStatus string `json:"processingStatus,omitempty"`
2397
2398	// Warnings: The list of errors occurring in the feed.
2399	Warnings []*DatafeedStatusError `json:"warnings,omitempty"`
2400
2401	// ServerResponse contains the HTTP response code and headers from the
2402	// server.
2403	googleapi.ServerResponse `json:"-"`
2404
2405	// ForceSendFields is a list of field names (e.g. "Country") to
2406	// unconditionally include in API requests. By default, fields with
2407	// empty or default values are omitted from API requests. However, any
2408	// non-pointer, non-interface field appearing in ForceSendFields will be
2409	// sent to the server regardless of whether the field is empty or not.
2410	// This may be used to include empty fields in Patch requests.
2411	ForceSendFields []string `json:"-"`
2412
2413	// NullFields is a list of field names (e.g. "Country") to include in
2414	// API requests with the JSON null value. By default, fields with empty
2415	// values are omitted from API requests. However, any field with an
2416	// empty value appearing in NullFields will be sent to the server as
2417	// null. It is an error if a field in this list has a non-empty value.
2418	// This may be used to include null fields in Patch requests.
2419	NullFields []string `json:"-"`
2420}
2421
2422func (s *DatafeedStatus) MarshalJSON() ([]byte, error) {
2423	type NoMethod DatafeedStatus
2424	raw := NoMethod(*s)
2425	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2426}
2427
2428// DatafeedStatusError: An error occurring in the feed, like "invalid
2429// price".
2430type DatafeedStatusError struct {
2431	// Code: The code of the error, e.g., "validation/invalid_value".
2432	Code string `json:"code,omitempty"`
2433
2434	// Count: The number of occurrences of the error in the feed.
2435	Count uint64 `json:"count,omitempty,string"`
2436
2437	// Examples: A list of example occurrences of the error, grouped by
2438	// product.
2439	Examples []*DatafeedStatusExample `json:"examples,omitempty"`
2440
2441	// Message: The error message, e.g., "Invalid price".
2442	Message string `json:"message,omitempty"`
2443
2444	// ForceSendFields is a list of field names (e.g. "Code") to
2445	// unconditionally include in API requests. By default, fields with
2446	// empty or default values are omitted from API requests. However, any
2447	// non-pointer, non-interface field appearing in ForceSendFields will be
2448	// sent to the server regardless of whether the field is empty or not.
2449	// This may be used to include empty fields in Patch requests.
2450	ForceSendFields []string `json:"-"`
2451
2452	// NullFields is a list of field names (e.g. "Code") to include in API
2453	// requests with the JSON null value. By default, fields with empty
2454	// values are omitted from API requests. However, any field with an
2455	// empty value appearing in NullFields will be sent to the server as
2456	// null. It is an error if a field in this list has a non-empty value.
2457	// This may be used to include null fields in Patch requests.
2458	NullFields []string `json:"-"`
2459}
2460
2461func (s *DatafeedStatusError) MarshalJSON() ([]byte, error) {
2462	type NoMethod DatafeedStatusError
2463	raw := NoMethod(*s)
2464	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2465}
2466
2467// DatafeedStatusExample: An example occurrence for a particular error.
2468type DatafeedStatusExample struct {
2469	// ItemId: The ID of the example item.
2470	ItemId string `json:"itemId,omitempty"`
2471
2472	// LineNumber: Line number in the data feed where the example is found.
2473	LineNumber uint64 `json:"lineNumber,omitempty,string"`
2474
2475	// Value: The problematic value.
2476	Value string `json:"value,omitempty"`
2477
2478	// ForceSendFields is a list of field names (e.g. "ItemId") to
2479	// unconditionally include in API requests. By default, fields with
2480	// empty or default values are omitted from API requests. However, any
2481	// non-pointer, non-interface field appearing in ForceSendFields will be
2482	// sent to the server regardless of whether the field is empty or not.
2483	// This may be used to include empty fields in Patch requests.
2484	ForceSendFields []string `json:"-"`
2485
2486	// NullFields is a list of field names (e.g. "ItemId") to include in API
2487	// requests with the JSON null value. By default, fields with empty
2488	// values are omitted from API requests. However, any field with an
2489	// empty value appearing in NullFields will be sent to the server as
2490	// null. It is an error if a field in this list has a non-empty value.
2491	// This may be used to include null fields in Patch requests.
2492	NullFields []string `json:"-"`
2493}
2494
2495func (s *DatafeedStatusExample) MarshalJSON() ([]byte, error) {
2496	type NoMethod DatafeedStatusExample
2497	raw := NoMethod(*s)
2498	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2499}
2500
2501type DatafeedTarget struct {
2502	// Country: The country where the items in the feed will be included in
2503	// the search index, represented as a CLDR territory code.
2504	Country string `json:"country,omitempty"`
2505
2506	// ExcludedDestinations: The list of destinations to exclude for this
2507	// target (corresponds to unchecked check boxes in Merchant Center).
2508	ExcludedDestinations []string `json:"excludedDestinations,omitempty"`
2509
2510	// IncludedDestinations: The list of destinations to include for this
2511	// target (corresponds to checked check boxes in Merchant Center).
2512	// Default destinations are always included unless provided in
2513	// `excludedDestinations`. List of supported destinations (if available
2514	// to the account): - DisplayAds - Shopping - ShoppingActions -
2515	// SurfacesAcrossGoogle
2516	IncludedDestinations []string `json:"includedDestinations,omitempty"`
2517
2518	// Language: The two-letter ISO 639-1 language of the items in the feed.
2519	// Must be a valid language for `targets[].country`.
2520	Language string `json:"language,omitempty"`
2521
2522	// ForceSendFields is a list of field names (e.g. "Country") to
2523	// unconditionally include in API requests. By default, fields with
2524	// empty or default values are omitted from API requests. However, any
2525	// non-pointer, non-interface field appearing in ForceSendFields will be
2526	// sent to the server regardless of whether the field is empty or not.
2527	// This may be used to include empty fields in Patch requests.
2528	ForceSendFields []string `json:"-"`
2529
2530	// NullFields is a list of field names (e.g. "Country") to include in
2531	// API requests with the JSON null value. By default, fields with empty
2532	// values are omitted from API requests. However, any field with an
2533	// empty value appearing in NullFields will be sent to the server as
2534	// null. It is an error if a field in this list has a non-empty value.
2535	// This may be used to include null fields in Patch requests.
2536	NullFields []string `json:"-"`
2537}
2538
2539func (s *DatafeedTarget) MarshalJSON() ([]byte, error) {
2540	type NoMethod DatafeedTarget
2541	raw := NoMethod(*s)
2542	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2543}
2544
2545type DatafeedsCustomBatchRequest struct {
2546	// Entries: The request entries to be processed in the batch.
2547	Entries []*DatafeedsCustomBatchRequestEntry `json:"entries,omitempty"`
2548
2549	// ForceSendFields is a list of field names (e.g. "Entries") to
2550	// unconditionally include in API requests. By default, fields with
2551	// empty or default values are omitted from API requests. However, any
2552	// non-pointer, non-interface field appearing in ForceSendFields will be
2553	// sent to the server regardless of whether the field is empty or not.
2554	// This may be used to include empty fields in Patch requests.
2555	ForceSendFields []string `json:"-"`
2556
2557	// NullFields is a list of field names (e.g. "Entries") to include in
2558	// API requests with the JSON null value. By default, fields with empty
2559	// values are omitted from API requests. However, any field with an
2560	// empty value appearing in NullFields will be sent to the server as
2561	// null. It is an error if a field in this list has a non-empty value.
2562	// This may be used to include null fields in Patch requests.
2563	NullFields []string `json:"-"`
2564}
2565
2566func (s *DatafeedsCustomBatchRequest) MarshalJSON() ([]byte, error) {
2567	type NoMethod DatafeedsCustomBatchRequest
2568	raw := NoMethod(*s)
2569	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2570}
2571
2572// DatafeedsCustomBatchRequestEntry: A batch entry encoding a single
2573// non-batch datafeeds request.
2574type DatafeedsCustomBatchRequestEntry struct {
2575	// BatchId: An entry ID, unique within the batch request.
2576	BatchId int64 `json:"batchId,omitempty"`
2577
2578	// Datafeed: The data feed to insert.
2579	Datafeed *Datafeed `json:"datafeed,omitempty"`
2580
2581	// DatafeedId: The ID of the data feed to get, delete or fetch.
2582	DatafeedId uint64 `json:"datafeedId,omitempty,string"`
2583
2584	// MerchantId: The ID of the managing account.
2585	MerchantId uint64 `json:"merchantId,omitempty,string"`
2586
2587	// Method: The method of the batch entry. Acceptable values are: -
2588	// "delete" - "fetchNow" - "get" - "insert" - "update"
2589	Method string `json:"method,omitempty"`
2590
2591	// ForceSendFields is a list of field names (e.g. "BatchId") to
2592	// unconditionally include in API requests. By default, fields with
2593	// empty or default values are omitted from API requests. However, any
2594	// non-pointer, non-interface field appearing in ForceSendFields will be
2595	// sent to the server regardless of whether the field is empty or not.
2596	// This may be used to include empty fields in Patch requests.
2597	ForceSendFields []string `json:"-"`
2598
2599	// NullFields is a list of field names (e.g. "BatchId") to include in
2600	// API requests with the JSON null value. By default, fields with empty
2601	// values are omitted from API requests. However, any field with an
2602	// empty value appearing in NullFields will be sent to the server as
2603	// null. It is an error if a field in this list has a non-empty value.
2604	// This may be used to include null fields in Patch requests.
2605	NullFields []string `json:"-"`
2606}
2607
2608func (s *DatafeedsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
2609	type NoMethod DatafeedsCustomBatchRequestEntry
2610	raw := NoMethod(*s)
2611	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2612}
2613
2614type DatafeedsCustomBatchResponse struct {
2615	// Entries: The result of the execution of the batch requests.
2616	Entries []*DatafeedsCustomBatchResponseEntry `json:"entries,omitempty"`
2617
2618	// Kind: Identifies what kind of resource this is. Value: the fixed
2619	// string "content#datafeedsCustomBatchResponse".
2620	Kind string `json:"kind,omitempty"`
2621
2622	// ServerResponse contains the HTTP response code and headers from the
2623	// server.
2624	googleapi.ServerResponse `json:"-"`
2625
2626	// ForceSendFields is a list of field names (e.g. "Entries") to
2627	// unconditionally include in API requests. By default, fields with
2628	// empty or default values are omitted from API requests. However, any
2629	// non-pointer, non-interface field appearing in ForceSendFields will be
2630	// sent to the server regardless of whether the field is empty or not.
2631	// This may be used to include empty fields in Patch requests.
2632	ForceSendFields []string `json:"-"`
2633
2634	// NullFields is a list of field names (e.g. "Entries") to include in
2635	// API requests with the JSON null value. By default, fields with empty
2636	// values are omitted from API requests. However, any field with an
2637	// empty value appearing in NullFields will be sent to the server as
2638	// null. It is an error if a field in this list has a non-empty value.
2639	// This may be used to include null fields in Patch requests.
2640	NullFields []string `json:"-"`
2641}
2642
2643func (s *DatafeedsCustomBatchResponse) MarshalJSON() ([]byte, error) {
2644	type NoMethod DatafeedsCustomBatchResponse
2645	raw := NoMethod(*s)
2646	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2647}
2648
2649// DatafeedsCustomBatchResponseEntry: A batch entry encoding a single
2650// non-batch datafeeds response.
2651type DatafeedsCustomBatchResponseEntry struct {
2652	// BatchId: The ID of the request entry this entry responds to.
2653	BatchId int64 `json:"batchId,omitempty"`
2654
2655	// Datafeed: The requested data feed. Defined if and only if the request
2656	// was successful.
2657	Datafeed *Datafeed `json:"datafeed,omitempty"`
2658
2659	// Errors: A list of errors defined if and only if the request failed.
2660	Errors *Errors `json:"errors,omitempty"`
2661
2662	// ForceSendFields is a list of field names (e.g. "BatchId") to
2663	// unconditionally include in API requests. By default, fields with
2664	// empty or default values are omitted from API requests. However, any
2665	// non-pointer, non-interface field appearing in ForceSendFields will be
2666	// sent to the server regardless of whether the field is empty or not.
2667	// This may be used to include empty fields in Patch requests.
2668	ForceSendFields []string `json:"-"`
2669
2670	// NullFields is a list of field names (e.g. "BatchId") to include in
2671	// API requests with the JSON null value. By default, fields with empty
2672	// values are omitted from API requests. However, any field with an
2673	// empty value appearing in NullFields will be sent to the server as
2674	// null. It is an error if a field in this list has a non-empty value.
2675	// This may be used to include null fields in Patch requests.
2676	NullFields []string `json:"-"`
2677}
2678
2679func (s *DatafeedsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
2680	type NoMethod DatafeedsCustomBatchResponseEntry
2681	raw := NoMethod(*s)
2682	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2683}
2684
2685type DatafeedsFetchNowResponse struct {
2686	// Kind: Identifies what kind of resource this is. Value: the fixed
2687	// string "content#datafeedsFetchNowResponse".
2688	Kind string `json:"kind,omitempty"`
2689
2690	// ServerResponse contains the HTTP response code and headers from the
2691	// server.
2692	googleapi.ServerResponse `json:"-"`
2693
2694	// ForceSendFields is a list of field names (e.g. "Kind") to
2695	// unconditionally include in API requests. By default, fields with
2696	// empty or default values are omitted from API requests. However, any
2697	// non-pointer, non-interface field appearing in ForceSendFields will be
2698	// sent to the server regardless of whether the field is empty or not.
2699	// This may be used to include empty fields in Patch requests.
2700	ForceSendFields []string `json:"-"`
2701
2702	// NullFields is a list of field names (e.g. "Kind") to include in API
2703	// requests with the JSON null value. By default, fields with empty
2704	// values are omitted from API requests. However, any field with an
2705	// empty value appearing in NullFields will be sent to the server as
2706	// null. It is an error if a field in this list has a non-empty value.
2707	// This may be used to include null fields in Patch requests.
2708	NullFields []string `json:"-"`
2709}
2710
2711func (s *DatafeedsFetchNowResponse) MarshalJSON() ([]byte, error) {
2712	type NoMethod DatafeedsFetchNowResponse
2713	raw := NoMethod(*s)
2714	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2715}
2716
2717type DatafeedsListResponse struct {
2718	// Kind: Identifies what kind of resource this is. Value: the fixed
2719	// string "content#datafeedsListResponse".
2720	Kind string `json:"kind,omitempty"`
2721
2722	// NextPageToken: The token for the retrieval of the next page of
2723	// datafeeds.
2724	NextPageToken string `json:"nextPageToken,omitempty"`
2725
2726	Resources []*Datafeed `json:"resources,omitempty"`
2727
2728	// ServerResponse contains the HTTP response code and headers from the
2729	// server.
2730	googleapi.ServerResponse `json:"-"`
2731
2732	// ForceSendFields is a list of field names (e.g. "Kind") to
2733	// unconditionally include in API requests. By default, fields with
2734	// empty or default values are omitted from API requests. However, any
2735	// non-pointer, non-interface field appearing in ForceSendFields will be
2736	// sent to the server regardless of whether the field is empty or not.
2737	// This may be used to include empty fields in Patch requests.
2738	ForceSendFields []string `json:"-"`
2739
2740	// NullFields is a list of field names (e.g. "Kind") to include in API
2741	// requests with the JSON null value. By default, fields with empty
2742	// values are omitted from API requests. However, any field with an
2743	// empty value appearing in NullFields will be sent to the server as
2744	// null. It is an error if a field in this list has a non-empty value.
2745	// This may be used to include null fields in Patch requests.
2746	NullFields []string `json:"-"`
2747}
2748
2749func (s *DatafeedsListResponse) MarshalJSON() ([]byte, error) {
2750	type NoMethod DatafeedsListResponse
2751	raw := NoMethod(*s)
2752	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2753}
2754
2755type DatafeedstatusesCustomBatchRequest struct {
2756	// Entries: The request entries to be processed in the batch.
2757	Entries []*DatafeedstatusesCustomBatchRequestEntry `json:"entries,omitempty"`
2758
2759	// ForceSendFields is a list of field names (e.g. "Entries") to
2760	// unconditionally include in API requests. By default, fields with
2761	// empty or default values are omitted from API requests. However, any
2762	// non-pointer, non-interface field appearing in ForceSendFields will be
2763	// sent to the server regardless of whether the field is empty or not.
2764	// This may be used to include empty fields in Patch requests.
2765	ForceSendFields []string `json:"-"`
2766
2767	// NullFields is a list of field names (e.g. "Entries") to include in
2768	// API requests with the JSON null value. By default, fields with empty
2769	// values are omitted from API requests. However, any field with an
2770	// empty value appearing in NullFields will be sent to the server as
2771	// null. It is an error if a field in this list has a non-empty value.
2772	// This may be used to include null fields in Patch requests.
2773	NullFields []string `json:"-"`
2774}
2775
2776func (s *DatafeedstatusesCustomBatchRequest) MarshalJSON() ([]byte, error) {
2777	type NoMethod DatafeedstatusesCustomBatchRequest
2778	raw := NoMethod(*s)
2779	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2780}
2781
2782// DatafeedstatusesCustomBatchRequestEntry: A batch entry encoding a
2783// single non-batch datafeedstatuses request.
2784type DatafeedstatusesCustomBatchRequestEntry struct {
2785	// BatchId: An entry ID, unique within the batch request.
2786	BatchId int64 `json:"batchId,omitempty"`
2787
2788	// Country: The country for which to get the datafeed status. If this
2789	// parameter is provided then language must also be provided. Note that
2790	// for multi-target datafeeds this parameter is required.
2791	Country string `json:"country,omitempty"`
2792
2793	// DatafeedId: The ID of the data feed to get.
2794	DatafeedId uint64 `json:"datafeedId,omitempty,string"`
2795
2796	// Language: The language for which to get the datafeed status. If this
2797	// parameter is provided then country must also be provided. Note that
2798	// for multi-target datafeeds this parameter is required.
2799	Language string `json:"language,omitempty"`
2800
2801	// MerchantId: The ID of the managing account.
2802	MerchantId uint64 `json:"merchantId,omitempty,string"`
2803
2804	// Method: The method of the batch entry. Acceptable values are: -
2805	// "get"
2806	Method string `json:"method,omitempty"`
2807
2808	// ForceSendFields is a list of field names (e.g. "BatchId") to
2809	// unconditionally include in API requests. By default, fields with
2810	// empty or default values are omitted from API requests. However, any
2811	// non-pointer, non-interface field appearing in ForceSendFields will be
2812	// sent to the server regardless of whether the field is empty or not.
2813	// This may be used to include empty fields in Patch requests.
2814	ForceSendFields []string `json:"-"`
2815
2816	// NullFields is a list of field names (e.g. "BatchId") to include in
2817	// API requests with the JSON null value. By default, fields with empty
2818	// values are omitted from API requests. However, any field with an
2819	// empty value appearing in NullFields will be sent to the server as
2820	// null. It is an error if a field in this list has a non-empty value.
2821	// This may be used to include null fields in Patch requests.
2822	NullFields []string `json:"-"`
2823}
2824
2825func (s *DatafeedstatusesCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
2826	type NoMethod DatafeedstatusesCustomBatchRequestEntry
2827	raw := NoMethod(*s)
2828	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2829}
2830
2831type DatafeedstatusesCustomBatchResponse struct {
2832	// Entries: The result of the execution of the batch requests.
2833	Entries []*DatafeedstatusesCustomBatchResponseEntry `json:"entries,omitempty"`
2834
2835	// Kind: Identifies what kind of resource this is. Value: the fixed
2836	// string "content#datafeedstatusesCustomBatchResponse".
2837	Kind string `json:"kind,omitempty"`
2838
2839	// ServerResponse contains the HTTP response code and headers from the
2840	// server.
2841	googleapi.ServerResponse `json:"-"`
2842
2843	// ForceSendFields is a list of field names (e.g. "Entries") to
2844	// unconditionally include in API requests. By default, fields with
2845	// empty or default values are omitted from API requests. However, any
2846	// non-pointer, non-interface field appearing in ForceSendFields will be
2847	// sent to the server regardless of whether the field is empty or not.
2848	// This may be used to include empty fields in Patch requests.
2849	ForceSendFields []string `json:"-"`
2850
2851	// NullFields is a list of field names (e.g. "Entries") to include in
2852	// API requests with the JSON null value. By default, fields with empty
2853	// values are omitted from API requests. However, any field with an
2854	// empty value appearing in NullFields will be sent to the server as
2855	// null. It is an error if a field in this list has a non-empty value.
2856	// This may be used to include null fields in Patch requests.
2857	NullFields []string `json:"-"`
2858}
2859
2860func (s *DatafeedstatusesCustomBatchResponse) MarshalJSON() ([]byte, error) {
2861	type NoMethod DatafeedstatusesCustomBatchResponse
2862	raw := NoMethod(*s)
2863	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2864}
2865
2866// DatafeedstatusesCustomBatchResponseEntry: A batch entry encoding a
2867// single non-batch datafeedstatuses response.
2868type DatafeedstatusesCustomBatchResponseEntry struct {
2869	// BatchId: The ID of the request entry this entry responds to.
2870	BatchId int64 `json:"batchId,omitempty"`
2871
2872	// DatafeedStatus: The requested data feed status. Defined if and only
2873	// if the request was successful.
2874	DatafeedStatus *DatafeedStatus `json:"datafeedStatus,omitempty"`
2875
2876	// Errors: A list of errors defined if and only if the request failed.
2877	Errors *Errors `json:"errors,omitempty"`
2878
2879	// ForceSendFields is a list of field names (e.g. "BatchId") to
2880	// unconditionally include in API requests. By default, fields with
2881	// empty or default values are omitted from API requests. However, any
2882	// non-pointer, non-interface field appearing in ForceSendFields will be
2883	// sent to the server regardless of whether the field is empty or not.
2884	// This may be used to include empty fields in Patch requests.
2885	ForceSendFields []string `json:"-"`
2886
2887	// NullFields is a list of field names (e.g. "BatchId") to include in
2888	// API requests with the JSON null value. By default, fields with empty
2889	// values are omitted from API requests. However, any field with an
2890	// empty value appearing in NullFields will be sent to the server as
2891	// null. It is an error if a field in this list has a non-empty value.
2892	// This may be used to include null fields in Patch requests.
2893	NullFields []string `json:"-"`
2894}
2895
2896func (s *DatafeedstatusesCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
2897	type NoMethod DatafeedstatusesCustomBatchResponseEntry
2898	raw := NoMethod(*s)
2899	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2900}
2901
2902type DatafeedstatusesListResponse struct {
2903	// Kind: Identifies what kind of resource this is. Value: the fixed
2904	// string "content#datafeedstatusesListResponse".
2905	Kind string `json:"kind,omitempty"`
2906
2907	// NextPageToken: The token for the retrieval of the next page of
2908	// datafeed statuses.
2909	NextPageToken string `json:"nextPageToken,omitempty"`
2910
2911	Resources []*DatafeedStatus `json:"resources,omitempty"`
2912
2913	// ServerResponse contains the HTTP response code and headers from the
2914	// server.
2915	googleapi.ServerResponse `json:"-"`
2916
2917	// ForceSendFields is a list of field names (e.g. "Kind") to
2918	// unconditionally include in API requests. By default, fields with
2919	// empty or default values are omitted from API requests. However, any
2920	// non-pointer, non-interface field appearing in ForceSendFields will be
2921	// sent to the server regardless of whether the field is empty or not.
2922	// This may be used to include empty fields in Patch requests.
2923	ForceSendFields []string `json:"-"`
2924
2925	// NullFields is a list of field names (e.g. "Kind") to include in API
2926	// requests with the JSON null value. By default, fields with empty
2927	// values are omitted from API requests. However, any field with an
2928	// empty value appearing in NullFields will be sent to the server as
2929	// null. It is an error if a field in this list has a non-empty value.
2930	// This may be used to include null fields in Patch requests.
2931	NullFields []string `json:"-"`
2932}
2933
2934func (s *DatafeedstatusesListResponse) MarshalJSON() ([]byte, error) {
2935	type NoMethod DatafeedstatusesListResponse
2936	raw := NoMethod(*s)
2937	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2938}
2939
2940type DeliveryTime struct {
2941	// CutoffTime: Business days cutoff time definition. If not configured
2942	// the cutoff time will be defaulted to 8AM PST.
2943	CutoffTime *CutoffTime `json:"cutoffTime,omitempty"`
2944
2945	// HandlingBusinessDayConfig: The business days during which orders can
2946	// be handled. If not provided, Monday to Friday business days will be
2947	// assumed.
2948	HandlingBusinessDayConfig *BusinessDayConfig `json:"handlingBusinessDayConfig,omitempty"`
2949
2950	// HolidayCutoffs: Holiday cutoff definitions. If configured, they
2951	// specify order cutoff times for holiday-specific shipping.
2952	HolidayCutoffs []*HolidayCutoff `json:"holidayCutoffs,omitempty"`
2953
2954	// MaxHandlingTimeInDays: Maximum number of business days spent before
2955	// an order is shipped. 0 means same day shipped, 1 means next day
2956	// shipped. Must be greater than or equal to `minHandlingTimeInDays`.
2957	MaxHandlingTimeInDays int64 `json:"maxHandlingTimeInDays,omitempty"`
2958
2959	// MaxTransitTimeInDays: Maximum number of business days that is spent
2960	// in transit. 0 means same day delivery, 1 means next day delivery.
2961	// Must be greater than or equal to `minTransitTimeInDays`.
2962	MaxTransitTimeInDays int64 `json:"maxTransitTimeInDays,omitempty"`
2963
2964	// MinHandlingTimeInDays: Minimum number of business days spent before
2965	// an order is shipped. 0 means same day shipped, 1 means next day
2966	// shipped.
2967	MinHandlingTimeInDays int64 `json:"minHandlingTimeInDays,omitempty"`
2968
2969	// MinTransitTimeInDays: Minimum number of business days that is spent
2970	// in transit. 0 means same day delivery, 1 means next day delivery.
2971	// Either `{min,max}TransitTimeInDays` or `transitTimeTable` must be
2972	// set, but not both.
2973	MinTransitTimeInDays int64 `json:"minTransitTimeInDays,omitempty"`
2974
2975	// TransitBusinessDayConfig: The business days during which orders can
2976	// be in-transit. If not provided, Monday to Friday business days will
2977	// be assumed.
2978	TransitBusinessDayConfig *BusinessDayConfig `json:"transitBusinessDayConfig,omitempty"`
2979
2980	// TransitTimeTable: Transit time table, number of business days spent
2981	// in transit based on row and column dimensions. Either
2982	// `{min,max}TransitTimeInDays` or `transitTimeTable` can be set, but
2983	// not both.
2984	TransitTimeTable *TransitTable `json:"transitTimeTable,omitempty"`
2985
2986	// WarehouseBasedDeliveryTimes: Indicates that the delivery time should
2987	// be calculated per warehouse (shipping origin location) based on the
2988	// settings of the selected carrier. When set, no other transit time
2989	// related field in DeliveryTime should be set.
2990	WarehouseBasedDeliveryTimes []*WarehouseBasedDeliveryTime `json:"warehouseBasedDeliveryTimes,omitempty"`
2991
2992	// ForceSendFields is a list of field names (e.g. "CutoffTime") to
2993	// unconditionally include in API requests. By default, fields with
2994	// empty or default values are omitted from API requests. However, any
2995	// non-pointer, non-interface field appearing in ForceSendFields will be
2996	// sent to the server regardless of whether the field is empty or not.
2997	// This may be used to include empty fields in Patch requests.
2998	ForceSendFields []string `json:"-"`
2999
3000	// NullFields is a list of field names (e.g. "CutoffTime") to include in
3001	// API requests with the JSON null value. By default, fields with empty
3002	// values are omitted from API requests. However, any field with an
3003	// empty value appearing in NullFields will be sent to the server as
3004	// null. It is an error if a field in this list has a non-empty value.
3005	// This may be used to include null fields in Patch requests.
3006	NullFields []string `json:"-"`
3007}
3008
3009func (s *DeliveryTime) MarshalJSON() ([]byte, error) {
3010	type NoMethod DeliveryTime
3011	raw := NoMethod(*s)
3012	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3013}
3014
3015// Error: An error returned by the API.
3016type Error struct {
3017	// Domain: The domain of the error.
3018	Domain string `json:"domain,omitempty"`
3019
3020	// Message: A description of the error.
3021	Message string `json:"message,omitempty"`
3022
3023	// Reason: The error code.
3024	Reason string `json:"reason,omitempty"`
3025
3026	// ForceSendFields is a list of field names (e.g. "Domain") to
3027	// unconditionally include in API requests. By default, fields with
3028	// empty or default values are omitted from API requests. However, any
3029	// non-pointer, non-interface field appearing in ForceSendFields will be
3030	// sent to the server regardless of whether the field is empty or not.
3031	// This may be used to include empty fields in Patch requests.
3032	ForceSendFields []string `json:"-"`
3033
3034	// NullFields is a list of field names (e.g. "Domain") to include in API
3035	// requests with the JSON null value. By default, fields with empty
3036	// values are omitted from API requests. However, any field with an
3037	// empty value appearing in NullFields will be sent to the server as
3038	// null. It is an error if a field in this list has a non-empty value.
3039	// This may be used to include null fields in Patch requests.
3040	NullFields []string `json:"-"`
3041}
3042
3043func (s *Error) MarshalJSON() ([]byte, error) {
3044	type NoMethod Error
3045	raw := NoMethod(*s)
3046	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3047}
3048
3049// Errors: A list of errors returned by a failed batch entry.
3050type Errors struct {
3051	// Code: The HTTP status of the first error in `errors`.
3052	Code int64 `json:"code,omitempty"`
3053
3054	// Errors: A list of errors.
3055	Errors []*Error `json:"errors,omitempty"`
3056
3057	// Message: The message of the first error in `errors`.
3058	Message string `json:"message,omitempty"`
3059
3060	// ForceSendFields is a list of field names (e.g. "Code") to
3061	// unconditionally include in API requests. By default, fields with
3062	// empty or default values are omitted from API requests. However, any
3063	// non-pointer, non-interface field appearing in ForceSendFields will be
3064	// sent to the server regardless of whether the field is empty or not.
3065	// This may be used to include empty fields in Patch requests.
3066	ForceSendFields []string `json:"-"`
3067
3068	// NullFields is a list of field names (e.g. "Code") to include in API
3069	// requests with the JSON null value. By default, fields with empty
3070	// values are omitted from API requests. However, any field with an
3071	// empty value appearing in NullFields will be sent to the server as
3072	// null. It is an error if a field in this list has a non-empty value.
3073	// This may be used to include null fields in Patch requests.
3074	NullFields []string `json:"-"`
3075}
3076
3077func (s *Errors) MarshalJSON() ([]byte, error) {
3078	type NoMethod Errors
3079	raw := NoMethod(*s)
3080	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3081}
3082
3083type GmbAccounts struct {
3084	// AccountId: The ID of the Merchant Center account.
3085	AccountId uint64 `json:"accountId,omitempty,string"`
3086
3087	// GmbAccounts: A list of GMB accounts which are available to the
3088	// merchant.
3089	GmbAccounts []*GmbAccountsGmbAccount `json:"gmbAccounts,omitempty"`
3090
3091	// ForceSendFields is a list of field names (e.g. "AccountId") to
3092	// unconditionally include in API requests. By default, fields with
3093	// empty or default values are omitted from API requests. However, any
3094	// non-pointer, non-interface field appearing in ForceSendFields will be
3095	// sent to the server regardless of whether the field is empty or not.
3096	// This may be used to include empty fields in Patch requests.
3097	ForceSendFields []string `json:"-"`
3098
3099	// NullFields is a list of field names (e.g. "AccountId") to include in
3100	// API requests with the JSON null value. By default, fields with empty
3101	// values are omitted from API requests. However, any field with an
3102	// empty value appearing in NullFields will be sent to the server as
3103	// null. It is an error if a field in this list has a non-empty value.
3104	// This may be used to include null fields in Patch requests.
3105	NullFields []string `json:"-"`
3106}
3107
3108func (s *GmbAccounts) MarshalJSON() ([]byte, error) {
3109	type NoMethod GmbAccounts
3110	raw := NoMethod(*s)
3111	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3112}
3113
3114type GmbAccountsGmbAccount struct {
3115	// Email: The email which identifies the GMB account.
3116	Email string `json:"email,omitempty"`
3117
3118	// ListingCount: Number of listings under this account.
3119	ListingCount uint64 `json:"listingCount,omitempty,string"`
3120
3121	// Name: The name of the GMB account.
3122	Name string `json:"name,omitempty"`
3123
3124	// Type: The type of the GMB account (User or Business).
3125	Type string `json:"type,omitempty"`
3126
3127	// ForceSendFields is a list of field names (e.g. "Email") to
3128	// unconditionally include in API requests. By default, fields with
3129	// empty or default values are omitted from API requests. However, any
3130	// non-pointer, non-interface field appearing in ForceSendFields will be
3131	// sent to the server regardless of whether the field is empty or not.
3132	// This may be used to include empty fields in Patch requests.
3133	ForceSendFields []string `json:"-"`
3134
3135	// NullFields is a list of field names (e.g. "Email") to include in API
3136	// requests with the JSON null value. By default, fields with empty
3137	// values are omitted from API requests. However, any field with an
3138	// empty value appearing in NullFields will be sent to the server as
3139	// null. It is an error if a field in this list has a non-empty value.
3140	// This may be used to include null fields in Patch requests.
3141	NullFields []string `json:"-"`
3142}
3143
3144func (s *GmbAccountsGmbAccount) MarshalJSON() ([]byte, error) {
3145	type NoMethod GmbAccountsGmbAccount
3146	raw := NoMethod(*s)
3147	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3148}
3149
3150// Headers: A non-empty list of row or column headers for a table.
3151// Exactly one of `prices`, `weights`, `numItems`,
3152// `postalCodeGroupNames`, or `location` must be set.
3153type Headers struct {
3154	// Locations: A list of location ID sets. Must be non-empty. Can only be
3155	// set if all other fields are not set.
3156	Locations []*LocationIdSet `json:"locations,omitempty"`
3157
3158	// NumberOfItems: A list of inclusive number of items upper bounds. The
3159	// last value can be "infinity". For example `["10", "50",
3160	// "infinity"]` represents the headers "<= 10 items", "<= 50 items", and
3161	// "> 50 items". Must be non-empty. Can only be set if all other fields
3162	// are not set.
3163	NumberOfItems []string `json:"numberOfItems,omitempty"`
3164
3165	// PostalCodeGroupNames: A list of postal group names. The last value
3166	// can be "all other locations". Example: `["zone 1", "zone 2", "all
3167	// other locations"]`. The referred postal code groups must match the
3168	// delivery country of the service. Must be non-empty. Can only be set
3169	// if all other fields are not set.
3170	PostalCodeGroupNames []string `json:"postalCodeGroupNames,omitempty"`
3171
3172	// Prices: A list of inclusive order price upper bounds. The last
3173	// price's value can be "infinity". For example `[{"value": "10",
3174	// "currency": "USD"}, {"value": "500", "currency": "USD"}, {"value":
3175	// "infinity", "currency": "USD"}]` represents the headers "<= $10", "<=
3176	// $500", and "> $500". All prices within a service must have the same
3177	// currency. Must be non-empty. Can only be set if all other fields are
3178	// not set.
3179	Prices []*Price `json:"prices,omitempty"`
3180
3181	// Weights: A list of inclusive order weight upper bounds. The last
3182	// weight's value can be "infinity". For example `[{"value": "10",
3183	// "unit": "kg"}, {"value": "50", "unit": "kg"}, {"value": "infinity",
3184	// "unit": "kg"}]` represents the headers "<= 10kg", "<= 50kg", and ">
3185	// 50kg". All weights within a service must have the same unit. Must be
3186	// non-empty. Can only be set if all other fields are not set.
3187	Weights []*Weight `json:"weights,omitempty"`
3188
3189	// ForceSendFields is a list of field names (e.g. "Locations") to
3190	// unconditionally include in API requests. By default, fields with
3191	// empty or default values are omitted from API requests. However, any
3192	// non-pointer, non-interface field appearing in ForceSendFields will be
3193	// sent to the server regardless of whether the field is empty or not.
3194	// This may be used to include empty fields in Patch requests.
3195	ForceSendFields []string `json:"-"`
3196
3197	// NullFields is a list of field names (e.g. "Locations") to include in
3198	// API requests with the JSON null value. By default, fields with empty
3199	// values are omitted from API requests. However, any field with an
3200	// empty value appearing in NullFields will be sent to the server as
3201	// null. It is an error if a field in this list has a non-empty value.
3202	// This may be used to include null fields in Patch requests.
3203	NullFields []string `json:"-"`
3204}
3205
3206func (s *Headers) MarshalJSON() ([]byte, error) {
3207	type NoMethod Headers
3208	raw := NoMethod(*s)
3209	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3210}
3211
3212type HolidayCutoff struct {
3213	// DeadlineDate: Date of the order deadline, in ISO 8601 format. E.g.
3214	// "2016-11-29" for 29th November 2016. Required.
3215	DeadlineDate string `json:"deadlineDate,omitempty"`
3216
3217	// DeadlineHour: Hour of the day on the deadline date until which the
3218	// order has to be placed to qualify for the delivery guarantee.
3219	// Possible values are: 0 (midnight), 1, ..., 12 (noon), 13, ..., 23.
3220	// Required.
3221	DeadlineHour int64 `json:"deadlineHour,omitempty"`
3222
3223	// DeadlineTimezone: Timezone identifier for the deadline hour. A list
3224	// of identifiers can be found in the AdWords API documentation. E.g.
3225	// "Europe/Zurich". Required.
3226	DeadlineTimezone string `json:"deadlineTimezone,omitempty"`
3227
3228	// HolidayId: Unique identifier for the holiday. Required.
3229	HolidayId string `json:"holidayId,omitempty"`
3230
3231	// VisibleFromDate: Date on which the deadline will become visible to
3232	// consumers in ISO 8601 format. E.g. "2016-10-31" for 31st October
3233	// 2016. Required.
3234	VisibleFromDate string `json:"visibleFromDate,omitempty"`
3235
3236	// ForceSendFields is a list of field names (e.g. "DeadlineDate") to
3237	// unconditionally include in API requests. By default, fields with
3238	// empty or default values are omitted from API requests. However, any
3239	// non-pointer, non-interface field appearing in ForceSendFields will be
3240	// sent to the server regardless of whether the field is empty or not.
3241	// This may be used to include empty fields in Patch requests.
3242	ForceSendFields []string `json:"-"`
3243
3244	// NullFields is a list of field names (e.g. "DeadlineDate") to include
3245	// in API requests with the JSON null value. By default, fields with
3246	// empty values are omitted from API requests. However, any field with
3247	// an empty value appearing in NullFields will be sent to the server as
3248	// null. It is an error if a field in this list has a non-empty value.
3249	// This may be used to include null fields in Patch requests.
3250	NullFields []string `json:"-"`
3251}
3252
3253func (s *HolidayCutoff) MarshalJSON() ([]byte, error) {
3254	type NoMethod HolidayCutoff
3255	raw := NoMethod(*s)
3256	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3257}
3258
3259type HolidaysHoliday struct {
3260	// CountryCode: The CLDR territory code of the country in which the
3261	// holiday is available. E.g. "US", "DE", "GB". A holiday cutoff can
3262	// only be configured in a shipping settings service with matching
3263	// delivery country. Always present.
3264	CountryCode string `json:"countryCode,omitempty"`
3265
3266	// Date: Date of the holiday, in ISO 8601 format. E.g. "2016-12-25" for
3267	// Christmas 2016. Always present.
3268	Date string `json:"date,omitempty"`
3269
3270	// DeliveryGuaranteeDate: Date on which the order has to arrive at the
3271	// customer's, in ISO 8601 format. E.g. "2016-12-24" for 24th December
3272	// 2016. Always present.
3273	DeliveryGuaranteeDate string `json:"deliveryGuaranteeDate,omitempty"`
3274
3275	// DeliveryGuaranteeHour: Hour of the day in the delivery location's
3276	// timezone on the guaranteed delivery date by which the order has to
3277	// arrive at the customer's. Possible values are: 0 (midnight), 1, ...,
3278	// 12 (noon), 13, ..., 23. Always present.
3279	DeliveryGuaranteeHour uint64 `json:"deliveryGuaranteeHour,omitempty,string"`
3280
3281	// Id: Unique identifier for the holiday to be used when configuring
3282	// holiday cutoffs. Always present.
3283	Id string `json:"id,omitempty"`
3284
3285	// Type: The holiday type. Always present. Acceptable values are: -
3286	// "Christmas" - "Easter" - "Father's Day" - "Halloween" -
3287	// "Independence Day (USA)" - "Mother's Day" - "Thanksgiving" -
3288	// "Valentine's Day"
3289	Type string `json:"type,omitempty"`
3290
3291	// ForceSendFields is a list of field names (e.g. "CountryCode") to
3292	// unconditionally include in API requests. By default, fields with
3293	// empty or default values are omitted from API requests. However, any
3294	// non-pointer, non-interface field appearing in ForceSendFields will be
3295	// sent to the server regardless of whether the field is empty or not.
3296	// This may be used to include empty fields in Patch requests.
3297	ForceSendFields []string `json:"-"`
3298
3299	// NullFields is a list of field names (e.g. "CountryCode") to include
3300	// in API requests with the JSON null value. By default, fields with
3301	// empty values are omitted from API requests. However, any field with
3302	// an empty value appearing in NullFields will be sent to the server as
3303	// null. It is an error if a field in this list has a non-empty value.
3304	// This may be used to include null fields in Patch requests.
3305	NullFields []string `json:"-"`
3306}
3307
3308func (s *HolidaysHoliday) MarshalJSON() ([]byte, error) {
3309	type NoMethod HolidaysHoliday
3310	raw := NoMethod(*s)
3311	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3312}
3313
3314type Installment struct {
3315	// Amount: The amount the buyer has to pay per month.
3316	Amount *Price `json:"amount,omitempty"`
3317
3318	// Months: The number of installments the buyer has to pay.
3319	Months int64 `json:"months,omitempty,string"`
3320
3321	// ForceSendFields is a list of field names (e.g. "Amount") to
3322	// unconditionally include in API requests. By default, fields with
3323	// empty or default values are omitted from API requests. However, any
3324	// non-pointer, non-interface field appearing in ForceSendFields will be
3325	// sent to the server regardless of whether the field is empty or not.
3326	// This may be used to include empty fields in Patch requests.
3327	ForceSendFields []string `json:"-"`
3328
3329	// NullFields is a list of field names (e.g. "Amount") to include in API
3330	// requests with the JSON null value. By default, fields with empty
3331	// values are omitted from API requests. However, any field with an
3332	// empty value appearing in NullFields will be sent to the server as
3333	// null. It is an error if a field in this list has a non-empty value.
3334	// This may be used to include null fields in Patch requests.
3335	NullFields []string `json:"-"`
3336}
3337
3338func (s *Installment) MarshalJSON() ([]byte, error) {
3339	type NoMethod Installment
3340	raw := NoMethod(*s)
3341	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3342}
3343
3344type Inventory struct {
3345	// Availability: The availability of the product. Acceptable values are:
3346	// - "in stock" - "out of stock" - "preorder"
3347	Availability string `json:"availability,omitempty"`
3348
3349	// CustomLabel0: Custom label 0 for custom grouping of items in a
3350	// Shopping campaign. Only supported for online products.
3351	CustomLabel0 string `json:"customLabel0,omitempty"`
3352
3353	// CustomLabel1: Custom label 1 for custom grouping of items in a
3354	// Shopping campaign. Only supported for online products.
3355	CustomLabel1 string `json:"customLabel1,omitempty"`
3356
3357	// CustomLabel2: Custom label 2 for custom grouping of items in a
3358	// Shopping campaign. Only supported for online products.
3359	CustomLabel2 string `json:"customLabel2,omitempty"`
3360
3361	// CustomLabel3: Custom label 3 for custom grouping of items in a
3362	// Shopping campaign. Only supported for online products.
3363	CustomLabel3 string `json:"customLabel3,omitempty"`
3364
3365	// CustomLabel4: Custom label 3 for custom grouping of items in a
3366	// Shopping campaign. Only supported for online products.
3367	CustomLabel4 string `json:"customLabel4,omitempty"`
3368
3369	// Installment: Number and amount of installments to pay for an item.
3370	// Brazil only.
3371	Installment *Installment `json:"installment,omitempty"`
3372
3373	// InstoreProductLocation: The instore product location. Supported only
3374	// for local products.
3375	InstoreProductLocation string `json:"instoreProductLocation,omitempty"`
3376
3377	// Kind: Identifies what kind of resource this is. Value: the fixed
3378	// string "content#inventory"
3379	Kind string `json:"kind,omitempty"`
3380
3381	// LoyaltyPoints: Loyalty points that users receive after purchasing the
3382	// item. Japan only.
3383	LoyaltyPoints *LoyaltyPoints `json:"loyaltyPoints,omitempty"`
3384
3385	// Pickup: Store pickup information. Only supported for local inventory.
3386	// Not setting `pickup` means "don't update" while setting it to the
3387	// empty value (`{}` in JSON) means "delete". Otherwise, `pickupMethod`
3388	// and `pickupSla` must be set together, unless `pickupMethod` is "not
3389	// supported".
3390	Pickup *InventoryPickup `json:"pickup,omitempty"`
3391
3392	// Price: The price of the product.
3393	Price *Price `json:"price,omitempty"`
3394
3395	// Quantity: The quantity of the product. Must be equal to or greater
3396	// than zero. Supported only for local products.
3397	Quantity int64 `json:"quantity,omitempty"`
3398
3399	// SalePrice: The sale price of the product. Mandatory if
3400	// `sale_price_effective_date` is defined.
3401	SalePrice *Price `json:"salePrice,omitempty"`
3402
3403	// SalePriceEffectiveDate: A date range represented by a pair of ISO
3404	// 8601 dates separated by a space, comma, or slash. Both dates might be
3405	// specified as 'null' if undecided.
3406	SalePriceEffectiveDate string `json:"salePriceEffectiveDate,omitempty"`
3407
3408	// SellOnGoogleQuantity: The quantity of the product that is available
3409	// for selling on Google. Supported only for online products.
3410	SellOnGoogleQuantity int64 `json:"sellOnGoogleQuantity,omitempty"`
3411
3412	// ForceSendFields is a list of field names (e.g. "Availability") to
3413	// unconditionally include in API requests. By default, fields with
3414	// empty or default values are omitted from API requests. However, any
3415	// non-pointer, non-interface field appearing in ForceSendFields will be
3416	// sent to the server regardless of whether the field is empty or not.
3417	// This may be used to include empty fields in Patch requests.
3418	ForceSendFields []string `json:"-"`
3419
3420	// NullFields is a list of field names (e.g. "Availability") to include
3421	// in API requests with the JSON null value. By default, fields with
3422	// empty values are omitted from API requests. However, any field with
3423	// an empty value appearing in NullFields will be sent to the server as
3424	// null. It is an error if a field in this list has a non-empty value.
3425	// This may be used to include null fields in Patch requests.
3426	NullFields []string `json:"-"`
3427}
3428
3429func (s *Inventory) MarshalJSON() ([]byte, error) {
3430	type NoMethod Inventory
3431	raw := NoMethod(*s)
3432	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3433}
3434
3435type InventoryCustomBatchRequest struct {
3436	// Entries: The request entries to be processed in the batch.
3437	Entries []*InventoryCustomBatchRequestEntry `json:"entries,omitempty"`
3438
3439	// ForceSendFields is a list of field names (e.g. "Entries") to
3440	// unconditionally include in API requests. By default, fields with
3441	// empty or default values are omitted from API requests. However, any
3442	// non-pointer, non-interface field appearing in ForceSendFields will be
3443	// sent to the server regardless of whether the field is empty or not.
3444	// This may be used to include empty fields in Patch requests.
3445	ForceSendFields []string `json:"-"`
3446
3447	// NullFields is a list of field names (e.g. "Entries") to include in
3448	// API requests with the JSON null value. By default, fields with empty
3449	// values are omitted from API requests. However, any field with an
3450	// empty value appearing in NullFields will be sent to the server as
3451	// null. It is an error if a field in this list has a non-empty value.
3452	// This may be used to include null fields in Patch requests.
3453	NullFields []string `json:"-"`
3454}
3455
3456func (s *InventoryCustomBatchRequest) MarshalJSON() ([]byte, error) {
3457	type NoMethod InventoryCustomBatchRequest
3458	raw := NoMethod(*s)
3459	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3460}
3461
3462// InventoryCustomBatchRequestEntry: A batch entry encoding a single
3463// non-batch inventory request.
3464type InventoryCustomBatchRequestEntry struct {
3465	// BatchId: An entry ID, unique within the batch request.
3466	BatchId int64 `json:"batchId,omitempty"`
3467
3468	// Inventory: Price and availability of the product.
3469	Inventory *Inventory `json:"inventory,omitempty"`
3470
3471	// MerchantId: The ID of the managing account.
3472	MerchantId uint64 `json:"merchantId,omitempty,string"`
3473
3474	// ProductId: The ID of the product for which to update price and
3475	// availability.
3476	ProductId string `json:"productId,omitempty"`
3477
3478	// StoreCode: The code of the store for which to update price and
3479	// availability. Use `online` to update price and availability of an
3480	// online product.
3481	StoreCode string `json:"storeCode,omitempty"`
3482
3483	// ForceSendFields is a list of field names (e.g. "BatchId") to
3484	// unconditionally include in API requests. By default, fields with
3485	// empty or default values are omitted from API requests. However, any
3486	// non-pointer, non-interface field appearing in ForceSendFields will be
3487	// sent to the server regardless of whether the field is empty or not.
3488	// This may be used to include empty fields in Patch requests.
3489	ForceSendFields []string `json:"-"`
3490
3491	// NullFields is a list of field names (e.g. "BatchId") to include in
3492	// API requests with the JSON null value. By default, fields with empty
3493	// values are omitted from API requests. However, any field with an
3494	// empty value appearing in NullFields will be sent to the server as
3495	// null. It is an error if a field in this list has a non-empty value.
3496	// This may be used to include null fields in Patch requests.
3497	NullFields []string `json:"-"`
3498}
3499
3500func (s *InventoryCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
3501	type NoMethod InventoryCustomBatchRequestEntry
3502	raw := NoMethod(*s)
3503	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3504}
3505
3506type InventoryCustomBatchResponse struct {
3507	// Entries: The result of the execution of the batch requests.
3508	Entries []*InventoryCustomBatchResponseEntry `json:"entries,omitempty"`
3509
3510	// Kind: Identifies what kind of resource this is. Value: the fixed
3511	// string "content#inventoryCustomBatchResponse".
3512	Kind string `json:"kind,omitempty"`
3513
3514	// ServerResponse contains the HTTP response code and headers from the
3515	// server.
3516	googleapi.ServerResponse `json:"-"`
3517
3518	// ForceSendFields is a list of field names (e.g. "Entries") to
3519	// unconditionally include in API requests. By default, fields with
3520	// empty or default values are omitted from API requests. However, any
3521	// non-pointer, non-interface field appearing in ForceSendFields will be
3522	// sent to the server regardless of whether the field is empty or not.
3523	// This may be used to include empty fields in Patch requests.
3524	ForceSendFields []string `json:"-"`
3525
3526	// NullFields is a list of field names (e.g. "Entries") to include in
3527	// API requests with the JSON null value. By default, fields with empty
3528	// values are omitted from API requests. However, any field with an
3529	// empty value appearing in NullFields will be sent to the server as
3530	// null. It is an error if a field in this list has a non-empty value.
3531	// This may be used to include null fields in Patch requests.
3532	NullFields []string `json:"-"`
3533}
3534
3535func (s *InventoryCustomBatchResponse) MarshalJSON() ([]byte, error) {
3536	type NoMethod InventoryCustomBatchResponse
3537	raw := NoMethod(*s)
3538	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3539}
3540
3541// InventoryCustomBatchResponseEntry: A batch entry encoding a single
3542// non-batch inventory response.
3543type InventoryCustomBatchResponseEntry struct {
3544	// BatchId: The ID of the request entry this entry responds to.
3545	BatchId int64 `json:"batchId,omitempty"`
3546
3547	// Errors: A list of errors defined if and only if the request failed.
3548	Errors *Errors `json:"errors,omitempty"`
3549
3550	// Kind: Identifies what kind of resource this is. Value: the fixed
3551	// string "content#inventoryCustomBatchResponseEntry"
3552	Kind string `json:"kind,omitempty"`
3553
3554	// ForceSendFields is a list of field names (e.g. "BatchId") to
3555	// unconditionally include in API requests. By default, fields with
3556	// empty or default values are omitted from API requests. However, any
3557	// non-pointer, non-interface field appearing in ForceSendFields will be
3558	// sent to the server regardless of whether the field is empty or not.
3559	// This may be used to include empty fields in Patch requests.
3560	ForceSendFields []string `json:"-"`
3561
3562	// NullFields is a list of field names (e.g. "BatchId") to include in
3563	// API requests with the JSON null value. By default, fields with empty
3564	// values are omitted from API requests. However, any field with an
3565	// empty value appearing in NullFields will be sent to the server as
3566	// null. It is an error if a field in this list has a non-empty value.
3567	// This may be used to include null fields in Patch requests.
3568	NullFields []string `json:"-"`
3569}
3570
3571func (s *InventoryCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
3572	type NoMethod InventoryCustomBatchResponseEntry
3573	raw := NoMethod(*s)
3574	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3575}
3576
3577type InventoryPickup struct {
3578	// PickupMethod: Whether store pickup is available for this offer and
3579	// whether the pickup option should be shown as buy, reserve, or not
3580	// supported. Only supported for local inventory. Unless the value is
3581	// "not supported", must be submitted together with `pickupSla`.
3582	// Acceptable values are: - "buy" - "not supported" - "reserve" -
3583	// "ship to store"
3584	PickupMethod string `json:"pickupMethod,omitempty"`
3585
3586	// PickupSla: The expected date that an order will be ready for pickup,
3587	// relative to when the order is placed. Only supported for local
3588	// inventory. Must be submitted together with `pickupMethod`. Acceptable
3589	// values are: - "five day" - "four day" - "multi day" - "multi
3590	// week" - "next day" - "same day" - "seven day" - "six day" -
3591	// "three day" - "two day"
3592	PickupSla string `json:"pickupSla,omitempty"`
3593
3594	// ForceSendFields is a list of field names (e.g. "PickupMethod") to
3595	// unconditionally include in API requests. By default, fields with
3596	// empty or default values are omitted from API requests. However, any
3597	// non-pointer, non-interface field appearing in ForceSendFields will be
3598	// sent to the server regardless of whether the field is empty or not.
3599	// This may be used to include empty fields in Patch requests.
3600	ForceSendFields []string `json:"-"`
3601
3602	// NullFields is a list of field names (e.g. "PickupMethod") to include
3603	// in API requests with the JSON null value. By default, fields with
3604	// empty values are omitted from API requests. However, any field with
3605	// an empty value appearing in NullFields will be sent to the server as
3606	// null. It is an error if a field in this list has a non-empty value.
3607	// This may be used to include null fields in Patch requests.
3608	NullFields []string `json:"-"`
3609}
3610
3611func (s *InventoryPickup) MarshalJSON() ([]byte, error) {
3612	type NoMethod InventoryPickup
3613	raw := NoMethod(*s)
3614	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3615}
3616
3617type InventorySetRequest struct {
3618	// Availability: The availability of the product. Acceptable values are:
3619	// - "in stock" - "out of stock" - "preorder"
3620	Availability string `json:"availability,omitempty"`
3621
3622	// CustomLabel0: Custom label 0 for custom grouping of items in a
3623	// Shopping campaign. Only supported for online products.
3624	CustomLabel0 string `json:"customLabel0,omitempty"`
3625
3626	// CustomLabel1: Custom label 1 for custom grouping of items in a
3627	// Shopping campaign. Only supported for online products.
3628	CustomLabel1 string `json:"customLabel1,omitempty"`
3629
3630	// CustomLabel2: Custom label 2 for custom grouping of items in a
3631	// Shopping campaign. Only supported for online products.
3632	CustomLabel2 string `json:"customLabel2,omitempty"`
3633
3634	// CustomLabel3: Custom label 3 for custom grouping of items in a
3635	// Shopping campaign. Only supported for online products.
3636	CustomLabel3 string `json:"customLabel3,omitempty"`
3637
3638	// CustomLabel4: Custom label 3 for custom grouping of items in a
3639	// Shopping campaign. Only supported for online products.
3640	CustomLabel4 string `json:"customLabel4,omitempty"`
3641
3642	// Installment: Number and amount of installments to pay for an item.
3643	// Brazil only.
3644	Installment *Installment `json:"installment,omitempty"`
3645
3646	// InstoreProductLocation: The instore product location. Supported only
3647	// for local products.
3648	InstoreProductLocation string `json:"instoreProductLocation,omitempty"`
3649
3650	// LoyaltyPoints: Loyalty points that users receive after purchasing the
3651	// item. Japan only.
3652	LoyaltyPoints *LoyaltyPoints `json:"loyaltyPoints,omitempty"`
3653
3654	// Pickup: Store pickup information. Only supported for local inventory.
3655	// Not setting `pickup` means "don't update" while setting it to the
3656	// empty value (`{}` in JSON) means "delete". Otherwise, `pickupMethod`
3657	// and `pickupSla` must be set together, unless `pickupMethod` is "not
3658	// supported".
3659	Pickup *InventoryPickup `json:"pickup,omitempty"`
3660
3661	// Price: The price of the product.
3662	Price *Price `json:"price,omitempty"`
3663
3664	// Quantity: The quantity of the product. Must be equal to or greater
3665	// than zero. Supported only for local products.
3666	Quantity int64 `json:"quantity,omitempty"`
3667
3668	// SalePrice: The sale price of the product. Mandatory if
3669	// `sale_price_effective_date` is defined.
3670	SalePrice *Price `json:"salePrice,omitempty"`
3671
3672	// SalePriceEffectiveDate: A date range represented by a pair of ISO
3673	// 8601 dates separated by a space, comma, or slash. Both dates might be
3674	// specified as 'null' if undecided.
3675	SalePriceEffectiveDate string `json:"salePriceEffectiveDate,omitempty"`
3676
3677	// SellOnGoogleQuantity: The quantity of the product that is available
3678	// for selling on Google. Supported only for online products.
3679	SellOnGoogleQuantity int64 `json:"sellOnGoogleQuantity,omitempty"`
3680
3681	// ForceSendFields is a list of field names (e.g. "Availability") to
3682	// unconditionally include in API requests. By default, fields with
3683	// empty or default values are omitted from API requests. However, any
3684	// non-pointer, non-interface field appearing in ForceSendFields will be
3685	// sent to the server regardless of whether the field is empty or not.
3686	// This may be used to include empty fields in Patch requests.
3687	ForceSendFields []string `json:"-"`
3688
3689	// NullFields is a list of field names (e.g. "Availability") to include
3690	// in API requests with the JSON null value. By default, fields with
3691	// empty values are omitted from API requests. However, any field with
3692	// an empty value appearing in NullFields will be sent to the server as
3693	// null. It is an error if a field in this list has a non-empty value.
3694	// This may be used to include null fields in Patch requests.
3695	NullFields []string `json:"-"`
3696}
3697
3698func (s *InventorySetRequest) MarshalJSON() ([]byte, error) {
3699	type NoMethod InventorySetRequest
3700	raw := NoMethod(*s)
3701	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3702}
3703
3704type InventorySetResponse struct {
3705	// Kind: Identifies what kind of resource this is. Value: the fixed
3706	// string "content#inventorySetResponse".
3707	Kind string `json:"kind,omitempty"`
3708
3709	// ServerResponse contains the HTTP response code and headers from the
3710	// server.
3711	googleapi.ServerResponse `json:"-"`
3712
3713	// ForceSendFields is a list of field names (e.g. "Kind") to
3714	// unconditionally include in API requests. By default, fields with
3715	// empty or default values are omitted from API requests. However, any
3716	// non-pointer, non-interface field appearing in ForceSendFields will be
3717	// sent to the server regardless of whether the field is empty or not.
3718	// This may be used to include empty fields in Patch requests.
3719	ForceSendFields []string `json:"-"`
3720
3721	// NullFields is a list of field names (e.g. "Kind") to include in API
3722	// requests with the JSON null value. By default, fields with empty
3723	// values are omitted from API requests. However, any field with an
3724	// empty value appearing in NullFields will be sent to the server as
3725	// null. It is an error if a field in this list has a non-empty value.
3726	// This may be used to include null fields in Patch requests.
3727	NullFields []string `json:"-"`
3728}
3729
3730func (s *InventorySetResponse) MarshalJSON() ([]byte, error) {
3731	type NoMethod InventorySetResponse
3732	raw := NoMethod(*s)
3733	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3734}
3735
3736type InvoiceSummary struct {
3737	// AdditionalChargeSummaries: Summary of the total amounts of the
3738	// additional charges.
3739	AdditionalChargeSummaries []*InvoiceSummaryAdditionalChargeSummary `json:"additionalChargeSummaries,omitempty"`
3740
3741	// CustomerBalance: Deprecated.
3742	CustomerBalance *Amount `json:"customerBalance,omitempty"`
3743
3744	// GoogleBalance: Deprecated.
3745	GoogleBalance *Amount `json:"googleBalance,omitempty"`
3746
3747	// MerchantBalance: Deprecated.
3748	MerchantBalance *Amount `json:"merchantBalance,omitempty"`
3749
3750	// ProductTotal: [required] Total price for the product.
3751	ProductTotal *Amount `json:"productTotal,omitempty"`
3752
3753	// PromotionSummaries: Deprecated.
3754	PromotionSummaries []*Promotion `json:"promotionSummaries,omitempty"`
3755
3756	// ForceSendFields is a list of field names (e.g.
3757	// "AdditionalChargeSummaries") to unconditionally include in API
3758	// requests. By default, fields with empty or default values are omitted
3759	// from API requests. However, any non-pointer, non-interface field
3760	// appearing in ForceSendFields will be sent to the server regardless of
3761	// whether the field is empty or not. This may be used to include empty
3762	// fields in Patch requests.
3763	ForceSendFields []string `json:"-"`
3764
3765	// NullFields is a list of field names (e.g.
3766	// "AdditionalChargeSummaries") to include in API requests with the JSON
3767	// null value. By default, fields with empty values are omitted from API
3768	// requests. However, any field with an empty value appearing in
3769	// NullFields will be sent to the server as null. It is an error if a
3770	// field in this list has a non-empty value. This may be used to include
3771	// null fields in Patch requests.
3772	NullFields []string `json:"-"`
3773}
3774
3775func (s *InvoiceSummary) MarshalJSON() ([]byte, error) {
3776	type NoMethod InvoiceSummary
3777	raw := NoMethod(*s)
3778	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3779}
3780
3781type InvoiceSummaryAdditionalChargeSummary struct {
3782	// TotalAmount: [required] Total additional charge for this type.
3783	TotalAmount *Amount `json:"totalAmount,omitempty"`
3784
3785	// Type: [required] Type of the additional charge. Acceptable values
3786	// are: - "shipping"
3787	Type string `json:"type,omitempty"`
3788
3789	// ForceSendFields is a list of field names (e.g. "TotalAmount") to
3790	// unconditionally include in API requests. By default, fields with
3791	// empty or default values are omitted from API requests. However, any
3792	// non-pointer, non-interface field appearing in ForceSendFields will be
3793	// sent to the server regardless of whether the field is empty or not.
3794	// This may be used to include empty fields in Patch requests.
3795	ForceSendFields []string `json:"-"`
3796
3797	// NullFields is a list of field names (e.g. "TotalAmount") to include
3798	// in API requests with the JSON null value. By default, fields with
3799	// empty values are omitted from API requests. However, any field with
3800	// an empty value appearing in NullFields will be sent to the server as
3801	// null. It is an error if a field in this list has a non-empty value.
3802	// This may be used to include null fields in Patch requests.
3803	NullFields []string `json:"-"`
3804}
3805
3806func (s *InvoiceSummaryAdditionalChargeSummary) MarshalJSON() ([]byte, error) {
3807	type NoMethod InvoiceSummaryAdditionalChargeSummary
3808	raw := NoMethod(*s)
3809	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3810}
3811
3812type LiaAboutPageSettings struct {
3813	// Status: The status of the verification process for the About page.
3814	// Acceptable values are: - "active" - "inactive" - "pending"
3815	Status string `json:"status,omitempty"`
3816
3817	// Url: The URL for the About page.
3818	Url string `json:"url,omitempty"`
3819
3820	// ForceSendFields is a list of field names (e.g. "Status") to
3821	// unconditionally include in API requests. By default, fields with
3822	// empty or default values are omitted from API requests. However, any
3823	// non-pointer, non-interface field appearing in ForceSendFields will be
3824	// sent to the server regardless of whether the field is empty or not.
3825	// This may be used to include empty fields in Patch requests.
3826	ForceSendFields []string `json:"-"`
3827
3828	// NullFields is a list of field names (e.g. "Status") to include in API
3829	// requests with the JSON null value. By default, fields with empty
3830	// values are omitted from API requests. However, any field with an
3831	// empty value appearing in NullFields will be sent to the server as
3832	// null. It is an error if a field in this list has a non-empty value.
3833	// This may be used to include null fields in Patch requests.
3834	NullFields []string `json:"-"`
3835}
3836
3837func (s *LiaAboutPageSettings) MarshalJSON() ([]byte, error) {
3838	type NoMethod LiaAboutPageSettings
3839	raw := NoMethod(*s)
3840	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3841}
3842
3843type LiaCountrySettings struct {
3844	// About: The settings for the About page.
3845	About *LiaAboutPageSettings `json:"about,omitempty"`
3846
3847	// Country: Required. CLDR country code (e.g. "US").
3848	Country string `json:"country,omitempty"`
3849
3850	// HostedLocalStorefrontActive: The status of the "Merchant hosted local
3851	// storefront" feature.
3852	HostedLocalStorefrontActive bool `json:"hostedLocalStorefrontActive,omitempty"`
3853
3854	// Inventory: LIA inventory verification settings.
3855	Inventory *LiaInventorySettings `json:"inventory,omitempty"`
3856
3857	// OnDisplayToOrder: LIA "On Display To Order" settings.
3858	OnDisplayToOrder *LiaOnDisplayToOrderSettings `json:"onDisplayToOrder,omitempty"`
3859
3860	// PosDataProvider: The POS data provider linked with this country.
3861	PosDataProvider *LiaPosDataProvider `json:"posDataProvider,omitempty"`
3862
3863	// StorePickupActive: The status of the "Store pickup" feature.
3864	StorePickupActive bool `json:"storePickupActive,omitempty"`
3865
3866	// ForceSendFields is a list of field names (e.g. "About") to
3867	// unconditionally include in API requests. By default, fields with
3868	// empty or default values are omitted from API requests. However, any
3869	// non-pointer, non-interface field appearing in ForceSendFields will be
3870	// sent to the server regardless of whether the field is empty or not.
3871	// This may be used to include empty fields in Patch requests.
3872	ForceSendFields []string `json:"-"`
3873
3874	// NullFields is a list of field names (e.g. "About") to include in API
3875	// requests with the JSON null value. By default, fields with empty
3876	// values are omitted from API requests. However, any field with an
3877	// empty value appearing in NullFields will be sent to the server as
3878	// null. It is an error if a field in this list has a non-empty value.
3879	// This may be used to include null fields in Patch requests.
3880	NullFields []string `json:"-"`
3881}
3882
3883func (s *LiaCountrySettings) MarshalJSON() ([]byte, error) {
3884	type NoMethod LiaCountrySettings
3885	raw := NoMethod(*s)
3886	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3887}
3888
3889type LiaInventorySettings struct {
3890	// InventoryVerificationContactEmail: The email of the contact for the
3891	// inventory verification process.
3892	InventoryVerificationContactEmail string `json:"inventoryVerificationContactEmail,omitempty"`
3893
3894	// InventoryVerificationContactName: The name of the contact for the
3895	// inventory verification process.
3896	InventoryVerificationContactName string `json:"inventoryVerificationContactName,omitempty"`
3897
3898	// InventoryVerificationContactStatus: The status of the verification
3899	// contact. Acceptable values are: - "active" - "inactive" -
3900	// "pending"
3901	InventoryVerificationContactStatus string `json:"inventoryVerificationContactStatus,omitempty"`
3902
3903	// Status: The status of the inventory verification process. Acceptable
3904	// values are: - "active" - "inactive" - "pending"
3905	Status string `json:"status,omitempty"`
3906
3907	// ForceSendFields is a list of field names (e.g.
3908	// "InventoryVerificationContactEmail") to unconditionally include in
3909	// API requests. By default, fields with empty or default values are
3910	// omitted from API requests. However, any non-pointer, non-interface
3911	// field appearing in ForceSendFields will be sent to the server
3912	// regardless of whether the field is empty or not. This may be used to
3913	// include empty fields in Patch requests.
3914	ForceSendFields []string `json:"-"`
3915
3916	// NullFields is a list of field names (e.g.
3917	// "InventoryVerificationContactEmail") to include in API requests with
3918	// the JSON null value. By default, fields with empty values are omitted
3919	// from API requests. However, any field with an empty value appearing
3920	// in NullFields will be sent to the server as null. It is an error if a
3921	// field in this list has a non-empty value. This may be used to include
3922	// null fields in Patch requests.
3923	NullFields []string `json:"-"`
3924}
3925
3926func (s *LiaInventorySettings) MarshalJSON() ([]byte, error) {
3927	type NoMethod LiaInventorySettings
3928	raw := NoMethod(*s)
3929	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3930}
3931
3932type LiaOnDisplayToOrderSettings struct {
3933	// ShippingCostPolicyUrl: Shipping cost and policy URL.
3934	ShippingCostPolicyUrl string `json:"shippingCostPolicyUrl,omitempty"`
3935
3936	// Status: The status of the ?On display to order? feature. Acceptable
3937	// values are: - "active" - "inactive" - "pending"
3938	Status string `json:"status,omitempty"`
3939
3940	// ForceSendFields is a list of field names (e.g.
3941	// "ShippingCostPolicyUrl") to unconditionally include in API requests.
3942	// By default, fields with empty or default values are omitted from API
3943	// requests. However, any non-pointer, non-interface field appearing in
3944	// ForceSendFields will be sent to the server regardless of whether the
3945	// field is empty or not. This may be used to include empty fields in
3946	// Patch requests.
3947	ForceSendFields []string `json:"-"`
3948
3949	// NullFields is a list of field names (e.g. "ShippingCostPolicyUrl") to
3950	// include in API requests with the JSON null value. By default, fields
3951	// with empty values are omitted from API requests. However, any field
3952	// with an empty value appearing in NullFields will be sent to the
3953	// server as null. It is an error if a field in this list has a
3954	// non-empty value. This may be used to include null fields in Patch
3955	// requests.
3956	NullFields []string `json:"-"`
3957}
3958
3959func (s *LiaOnDisplayToOrderSettings) MarshalJSON() ([]byte, error) {
3960	type NoMethod LiaOnDisplayToOrderSettings
3961	raw := NoMethod(*s)
3962	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3963}
3964
3965type LiaPosDataProvider struct {
3966	// PosDataProviderId: The ID of the POS data provider.
3967	PosDataProviderId uint64 `json:"posDataProviderId,omitempty,string"`
3968
3969	// PosExternalAccountId: The account ID by which this merchant is known
3970	// to the POS data provider.
3971	PosExternalAccountId string `json:"posExternalAccountId,omitempty"`
3972
3973	// ForceSendFields is a list of field names (e.g. "PosDataProviderId")
3974	// to unconditionally include in API requests. By default, fields with
3975	// empty or default values are omitted from API requests. However, any
3976	// non-pointer, non-interface field appearing in ForceSendFields will be
3977	// sent to the server regardless of whether the field is empty or not.
3978	// This may be used to include empty fields in Patch requests.
3979	ForceSendFields []string `json:"-"`
3980
3981	// NullFields is a list of field names (e.g. "PosDataProviderId") to
3982	// include in API requests with the JSON null value. By default, fields
3983	// with empty values are omitted from API requests. However, any field
3984	// with an empty value appearing in NullFields will be sent to the
3985	// server as null. It is an error if a field in this list has a
3986	// non-empty value. This may be used to include null fields in Patch
3987	// requests.
3988	NullFields []string `json:"-"`
3989}
3990
3991func (s *LiaPosDataProvider) MarshalJSON() ([]byte, error) {
3992	type NoMethod LiaPosDataProvider
3993	raw := NoMethod(*s)
3994	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3995}
3996
3997// LiaSettings: Local Inventory ads (LIA) settings. All methods except
3998// listposdataproviders require the admin role.
3999type LiaSettings struct {
4000	// AccountId: The ID of the account to which these LIA settings belong.
4001	// Ignored upon update, always present in get request responses.
4002	AccountId uint64 `json:"accountId,omitempty,string"`
4003
4004	// CountrySettings: The LIA settings for each country.
4005	CountrySettings []*LiaCountrySettings `json:"countrySettings,omitempty"`
4006
4007	// Kind: Identifies what kind of resource this is. Value: the fixed
4008	// string "content#liaSettings"
4009	Kind string `json:"kind,omitempty"`
4010
4011	// ServerResponse contains the HTTP response code and headers from the
4012	// server.
4013	googleapi.ServerResponse `json:"-"`
4014
4015	// ForceSendFields is a list of field names (e.g. "AccountId") to
4016	// unconditionally include in API requests. By default, fields with
4017	// empty or default values are omitted from API requests. However, any
4018	// non-pointer, non-interface field appearing in ForceSendFields will be
4019	// sent to the server regardless of whether the field is empty or not.
4020	// This may be used to include empty fields in Patch requests.
4021	ForceSendFields []string `json:"-"`
4022
4023	// NullFields is a list of field names (e.g. "AccountId") to include in
4024	// API requests with the JSON null value. By default, fields with empty
4025	// values are omitted from API requests. However, any field with an
4026	// empty value appearing in NullFields will be sent to the server as
4027	// null. It is an error if a field in this list has a non-empty value.
4028	// This may be used to include null fields in Patch requests.
4029	NullFields []string `json:"-"`
4030}
4031
4032func (s *LiaSettings) MarshalJSON() ([]byte, error) {
4033	type NoMethod LiaSettings
4034	raw := NoMethod(*s)
4035	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4036}
4037
4038type LiasettingsCustomBatchRequest struct {
4039	// Entries: The request entries to be processed in the batch.
4040	Entries []*LiasettingsCustomBatchRequestEntry `json:"entries,omitempty"`
4041
4042	// ForceSendFields is a list of field names (e.g. "Entries") to
4043	// unconditionally include in API requests. By default, fields with
4044	// empty or default values are omitted from API requests. However, any
4045	// non-pointer, non-interface field appearing in ForceSendFields will be
4046	// sent to the server regardless of whether the field is empty or not.
4047	// This may be used to include empty fields in Patch requests.
4048	ForceSendFields []string `json:"-"`
4049
4050	// NullFields is a list of field names (e.g. "Entries") to include in
4051	// API requests with the JSON null value. By default, fields with empty
4052	// values are omitted from API requests. However, any field with an
4053	// empty value appearing in NullFields will be sent to the server as
4054	// null. It is an error if a field in this list has a non-empty value.
4055	// This may be used to include null fields in Patch requests.
4056	NullFields []string `json:"-"`
4057}
4058
4059func (s *LiasettingsCustomBatchRequest) MarshalJSON() ([]byte, error) {
4060	type NoMethod LiasettingsCustomBatchRequest
4061	raw := NoMethod(*s)
4062	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4063}
4064
4065type LiasettingsCustomBatchRequestEntry struct {
4066	// AccountId: The ID of the account for which to get/update account LIA
4067	// settings.
4068	AccountId uint64 `json:"accountId,omitempty,string"`
4069
4070	// BatchId: An entry ID, unique within the batch request.
4071	BatchId int64 `json:"batchId,omitempty"`
4072
4073	// ContactEmail: Inventory validation contact email. Required only for
4074	// SetInventoryValidationContact.
4075	ContactEmail string `json:"contactEmail,omitempty"`
4076
4077	// ContactName: Inventory validation contact name. Required only for
4078	// SetInventoryValidationContact.
4079	ContactName string `json:"contactName,omitempty"`
4080
4081	// Country: The country code. Required only for
4082	// RequestInventoryVerification.
4083	Country string `json:"country,omitempty"`
4084
4085	// GmbEmail: The GMB account. Required only for RequestGmbAccess.
4086	GmbEmail string `json:"gmbEmail,omitempty"`
4087
4088	// LiaSettings: The account Lia settings to update. Only defined if the
4089	// method is `update`.
4090	LiaSettings *LiaSettings `json:"liaSettings,omitempty"`
4091
4092	// MerchantId: The ID of the managing account.
4093	MerchantId uint64 `json:"merchantId,omitempty,string"`
4094
4095	// Method: The method of the batch entry. Acceptable values are: -
4096	// "get" - "getAccessibleGmbAccounts" - "requestGmbAccess" -
4097	// "requestInventoryVerification" -
4098	// "setInventoryVerificationContact" - "update"
4099	Method string `json:"method,omitempty"`
4100
4101	// PosDataProviderId: The ID of POS data provider. Required only for
4102	// SetPosProvider.
4103	PosDataProviderId uint64 `json:"posDataProviderId,omitempty,string"`
4104
4105	// PosExternalAccountId: The account ID by which this merchant is known
4106	// to the POS provider.
4107	PosExternalAccountId string `json:"posExternalAccountId,omitempty"`
4108
4109	// ForceSendFields is a list of field names (e.g. "AccountId") to
4110	// unconditionally include in API requests. By default, fields with
4111	// empty or default values are omitted from API requests. However, any
4112	// non-pointer, non-interface field appearing in ForceSendFields will be
4113	// sent to the server regardless of whether the field is empty or not.
4114	// This may be used to include empty fields in Patch requests.
4115	ForceSendFields []string `json:"-"`
4116
4117	// NullFields is a list of field names (e.g. "AccountId") to include in
4118	// API requests with the JSON null value. By default, fields with empty
4119	// values are omitted from API requests. However, any field with an
4120	// empty value appearing in NullFields will be sent to the server as
4121	// null. It is an error if a field in this list has a non-empty value.
4122	// This may be used to include null fields in Patch requests.
4123	NullFields []string `json:"-"`
4124}
4125
4126func (s *LiasettingsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
4127	type NoMethod LiasettingsCustomBatchRequestEntry
4128	raw := NoMethod(*s)
4129	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4130}
4131
4132type LiasettingsCustomBatchResponse struct {
4133	// Entries: The result of the execution of the batch requests.
4134	Entries []*LiasettingsCustomBatchResponseEntry `json:"entries,omitempty"`
4135
4136	// Kind: Identifies what kind of resource this is. Value: the fixed
4137	// string "content#liasettingsCustomBatchResponse".
4138	Kind string `json:"kind,omitempty"`
4139
4140	// ServerResponse contains the HTTP response code and headers from the
4141	// server.
4142	googleapi.ServerResponse `json:"-"`
4143
4144	// ForceSendFields is a list of field names (e.g. "Entries") to
4145	// unconditionally include in API requests. By default, fields with
4146	// empty or default values are omitted from API requests. However, any
4147	// non-pointer, non-interface field appearing in ForceSendFields will be
4148	// sent to the server regardless of whether the field is empty or not.
4149	// This may be used to include empty fields in Patch requests.
4150	ForceSendFields []string `json:"-"`
4151
4152	// NullFields is a list of field names (e.g. "Entries") to include in
4153	// API requests with the JSON null value. By default, fields with empty
4154	// values are omitted from API requests. However, any field with an
4155	// empty value appearing in NullFields will be sent to the server as
4156	// null. It is an error if a field in this list has a non-empty value.
4157	// This may be used to include null fields in Patch requests.
4158	NullFields []string `json:"-"`
4159}
4160
4161func (s *LiasettingsCustomBatchResponse) MarshalJSON() ([]byte, error) {
4162	type NoMethod LiasettingsCustomBatchResponse
4163	raw := NoMethod(*s)
4164	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4165}
4166
4167type LiasettingsCustomBatchResponseEntry struct {
4168	// BatchId: The ID of the request entry to which this entry responds.
4169	BatchId int64 `json:"batchId,omitempty"`
4170
4171	// Errors: A list of errors defined if, and only if, the request failed.
4172	Errors *Errors `json:"errors,omitempty"`
4173
4174	// GmbAccounts: The list of accessible GMB accounts.
4175	GmbAccounts *GmbAccounts `json:"gmbAccounts,omitempty"`
4176
4177	// Kind: Identifies what kind of resource this is. Value: the fixed
4178	// string "content#liasettingsCustomBatchResponseEntry"
4179	Kind string `json:"kind,omitempty"`
4180
4181	// LiaSettings: The retrieved or updated Lia settings.
4182	LiaSettings *LiaSettings `json:"liaSettings,omitempty"`
4183
4184	// PosDataProviders: The list of POS data providers.
4185	PosDataProviders []*PosDataProviders `json:"posDataProviders,omitempty"`
4186
4187	// ForceSendFields is a list of field names (e.g. "BatchId") to
4188	// unconditionally include in API requests. By default, fields with
4189	// empty or default values are omitted from API requests. However, any
4190	// non-pointer, non-interface field appearing in ForceSendFields will be
4191	// sent to the server regardless of whether the field is empty or not.
4192	// This may be used to include empty fields in Patch requests.
4193	ForceSendFields []string `json:"-"`
4194
4195	// NullFields is a list of field names (e.g. "BatchId") to include in
4196	// API requests with the JSON null value. By default, fields with empty
4197	// values are omitted from API requests. However, any field with an
4198	// empty value appearing in NullFields will be sent to the server as
4199	// null. It is an error if a field in this list has a non-empty value.
4200	// This may be used to include null fields in Patch requests.
4201	NullFields []string `json:"-"`
4202}
4203
4204func (s *LiasettingsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
4205	type NoMethod LiasettingsCustomBatchResponseEntry
4206	raw := NoMethod(*s)
4207	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4208}
4209
4210type LiasettingsGetAccessibleGmbAccountsResponse struct {
4211	// AccountId: The ID of the Merchant Center account.
4212	AccountId uint64 `json:"accountId,omitempty,string"`
4213
4214	// GmbAccounts: A list of GMB accounts which are available to the
4215	// merchant.
4216	GmbAccounts []*GmbAccountsGmbAccount `json:"gmbAccounts,omitempty"`
4217
4218	// Kind: Identifies what kind of resource this is. Value: the fixed
4219	// string "content#liasettingsGetAccessibleGmbAccountsResponse".
4220	Kind string `json:"kind,omitempty"`
4221
4222	// ServerResponse contains the HTTP response code and headers from the
4223	// server.
4224	googleapi.ServerResponse `json:"-"`
4225
4226	// ForceSendFields is a list of field names (e.g. "AccountId") to
4227	// unconditionally include in API requests. By default, fields with
4228	// empty or default values are omitted from API requests. However, any
4229	// non-pointer, non-interface field appearing in ForceSendFields will be
4230	// sent to the server regardless of whether the field is empty or not.
4231	// This may be used to include empty fields in Patch requests.
4232	ForceSendFields []string `json:"-"`
4233
4234	// NullFields is a list of field names (e.g. "AccountId") to include in
4235	// API requests with the JSON null value. By default, fields with empty
4236	// values are omitted from API requests. However, any field with an
4237	// empty value appearing in NullFields will be sent to the server as
4238	// null. It is an error if a field in this list has a non-empty value.
4239	// This may be used to include null fields in Patch requests.
4240	NullFields []string `json:"-"`
4241}
4242
4243func (s *LiasettingsGetAccessibleGmbAccountsResponse) MarshalJSON() ([]byte, error) {
4244	type NoMethod LiasettingsGetAccessibleGmbAccountsResponse
4245	raw := NoMethod(*s)
4246	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4247}
4248
4249type LiasettingsListPosDataProvidersResponse struct {
4250	// Kind: Identifies what kind of resource this is. Value: the fixed
4251	// string "content#liasettingsListPosDataProvidersResponse".
4252	Kind string `json:"kind,omitempty"`
4253
4254	// PosDataProviders: The list of POS data providers for each eligible
4255	// country
4256	PosDataProviders []*PosDataProviders `json:"posDataProviders,omitempty"`
4257
4258	// ServerResponse contains the HTTP response code and headers from the
4259	// server.
4260	googleapi.ServerResponse `json:"-"`
4261
4262	// ForceSendFields is a list of field names (e.g. "Kind") to
4263	// unconditionally include in API requests. By default, fields with
4264	// empty or default values are omitted from API requests. However, any
4265	// non-pointer, non-interface field appearing in ForceSendFields will be
4266	// sent to the server regardless of whether the field is empty or not.
4267	// This may be used to include empty fields in Patch requests.
4268	ForceSendFields []string `json:"-"`
4269
4270	// NullFields is a list of field names (e.g. "Kind") to include in API
4271	// requests with the JSON null value. By default, fields with empty
4272	// values are omitted from API requests. However, any field with an
4273	// empty value appearing in NullFields will be sent to the server as
4274	// null. It is an error if a field in this list has a non-empty value.
4275	// This may be used to include null fields in Patch requests.
4276	NullFields []string `json:"-"`
4277}
4278
4279func (s *LiasettingsListPosDataProvidersResponse) MarshalJSON() ([]byte, error) {
4280	type NoMethod LiasettingsListPosDataProvidersResponse
4281	raw := NoMethod(*s)
4282	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4283}
4284
4285type LiasettingsListResponse struct {
4286	// Kind: Identifies what kind of resource this is. Value: the fixed
4287	// string "content#liasettingsListResponse".
4288	Kind string `json:"kind,omitempty"`
4289
4290	// NextPageToken: The token for the retrieval of the next page of LIA
4291	// settings.
4292	NextPageToken string `json:"nextPageToken,omitempty"`
4293
4294	Resources []*LiaSettings `json:"resources,omitempty"`
4295
4296	// ServerResponse contains the HTTP response code and headers from the
4297	// server.
4298	googleapi.ServerResponse `json:"-"`
4299
4300	// ForceSendFields is a list of field names (e.g. "Kind") to
4301	// unconditionally include in API requests. By default, fields with
4302	// empty or default values are omitted from API requests. However, any
4303	// non-pointer, non-interface field appearing in ForceSendFields will be
4304	// sent to the server regardless of whether the field is empty or not.
4305	// This may be used to include empty fields in Patch requests.
4306	ForceSendFields []string `json:"-"`
4307
4308	// NullFields is a list of field names (e.g. "Kind") to include in API
4309	// requests with the JSON null value. By default, fields with empty
4310	// values are omitted from API requests. However, any field with an
4311	// empty value appearing in NullFields will be sent to the server as
4312	// null. It is an error if a field in this list has a non-empty value.
4313	// This may be used to include null fields in Patch requests.
4314	NullFields []string `json:"-"`
4315}
4316
4317func (s *LiasettingsListResponse) MarshalJSON() ([]byte, error) {
4318	type NoMethod LiasettingsListResponse
4319	raw := NoMethod(*s)
4320	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4321}
4322
4323type LiasettingsRequestGmbAccessResponse struct {
4324	// Kind: Identifies what kind of resource this is. Value: the fixed
4325	// string "content#liasettingsRequestGmbAccessResponse".
4326	Kind string `json:"kind,omitempty"`
4327
4328	// ServerResponse contains the HTTP response code and headers from the
4329	// server.
4330	googleapi.ServerResponse `json:"-"`
4331
4332	// ForceSendFields is a list of field names (e.g. "Kind") to
4333	// unconditionally include in API requests. By default, fields with
4334	// empty or default values are omitted from API requests. However, any
4335	// non-pointer, non-interface field appearing in ForceSendFields will be
4336	// sent to the server regardless of whether the field is empty or not.
4337	// This may be used to include empty fields in Patch requests.
4338	ForceSendFields []string `json:"-"`
4339
4340	// NullFields is a list of field names (e.g. "Kind") to include in API
4341	// requests with the JSON null value. By default, fields with empty
4342	// values are omitted from API requests. However, any field with an
4343	// empty value appearing in NullFields will be sent to the server as
4344	// null. It is an error if a field in this list has a non-empty value.
4345	// This may be used to include null fields in Patch requests.
4346	NullFields []string `json:"-"`
4347}
4348
4349func (s *LiasettingsRequestGmbAccessResponse) MarshalJSON() ([]byte, error) {
4350	type NoMethod LiasettingsRequestGmbAccessResponse
4351	raw := NoMethod(*s)
4352	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4353}
4354
4355type LiasettingsRequestInventoryVerificationResponse struct {
4356	// Kind: Identifies what kind of resource this is. Value: the fixed
4357	// string "content#liasettingsRequestInventoryVerificationResponse".
4358	Kind string `json:"kind,omitempty"`
4359
4360	// ServerResponse contains the HTTP response code and headers from the
4361	// server.
4362	googleapi.ServerResponse `json:"-"`
4363
4364	// ForceSendFields is a list of field names (e.g. "Kind") to
4365	// unconditionally include in API requests. By default, fields with
4366	// empty or default values are omitted from API requests. However, any
4367	// non-pointer, non-interface field appearing in ForceSendFields will be
4368	// sent to the server regardless of whether the field is empty or not.
4369	// This may be used to include empty fields in Patch requests.
4370	ForceSendFields []string `json:"-"`
4371
4372	// NullFields is a list of field names (e.g. "Kind") to include in API
4373	// requests with the JSON null value. By default, fields with empty
4374	// values are omitted from API requests. However, any field with an
4375	// empty value appearing in NullFields will be sent to the server as
4376	// null. It is an error if a field in this list has a non-empty value.
4377	// This may be used to include null fields in Patch requests.
4378	NullFields []string `json:"-"`
4379}
4380
4381func (s *LiasettingsRequestInventoryVerificationResponse) MarshalJSON() ([]byte, error) {
4382	type NoMethod LiasettingsRequestInventoryVerificationResponse
4383	raw := NoMethod(*s)
4384	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4385}
4386
4387type LiasettingsSetInventoryVerificationContactResponse struct {
4388	// Kind: Identifies what kind of resource this is. Value: the fixed
4389	// string "content#liasettingsSetInventoryVerificationContactResponse".
4390	Kind string `json:"kind,omitempty"`
4391
4392	// ServerResponse contains the HTTP response code and headers from the
4393	// server.
4394	googleapi.ServerResponse `json:"-"`
4395
4396	// ForceSendFields is a list of field names (e.g. "Kind") to
4397	// unconditionally include in API requests. By default, fields with
4398	// empty or default values are omitted from API requests. However, any
4399	// non-pointer, non-interface field appearing in ForceSendFields will be
4400	// sent to the server regardless of whether the field is empty or not.
4401	// This may be used to include empty fields in Patch requests.
4402	ForceSendFields []string `json:"-"`
4403
4404	// NullFields is a list of field names (e.g. "Kind") to include in API
4405	// requests with the JSON null value. By default, fields with empty
4406	// values are omitted from API requests. However, any field with an
4407	// empty value appearing in NullFields will be sent to the server as
4408	// null. It is an error if a field in this list has a non-empty value.
4409	// This may be used to include null fields in Patch requests.
4410	NullFields []string `json:"-"`
4411}
4412
4413func (s *LiasettingsSetInventoryVerificationContactResponse) MarshalJSON() ([]byte, error) {
4414	type NoMethod LiasettingsSetInventoryVerificationContactResponse
4415	raw := NoMethod(*s)
4416	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4417}
4418
4419type LiasettingsSetPosDataProviderResponse struct {
4420	// Kind: Identifies what kind of resource this is. Value: the fixed
4421	// string "content#liasettingsSetPosDataProviderResponse".
4422	Kind string `json:"kind,omitempty"`
4423
4424	// ServerResponse contains the HTTP response code and headers from the
4425	// server.
4426	googleapi.ServerResponse `json:"-"`
4427
4428	// ForceSendFields is a list of field names (e.g. "Kind") to
4429	// unconditionally include in API requests. By default, fields with
4430	// empty or default values are omitted from API requests. However, any
4431	// non-pointer, non-interface field appearing in ForceSendFields will be
4432	// sent to the server regardless of whether the field is empty or not.
4433	// This may be used to include empty fields in Patch requests.
4434	ForceSendFields []string `json:"-"`
4435
4436	// NullFields is a list of field names (e.g. "Kind") to include in API
4437	// requests with the JSON null value. By default, fields with empty
4438	// values are omitted from API requests. However, any field with an
4439	// empty value appearing in NullFields will be sent to the server as
4440	// null. It is an error if a field in this list has a non-empty value.
4441	// This may be used to include null fields in Patch requests.
4442	NullFields []string `json:"-"`
4443}
4444
4445func (s *LiasettingsSetPosDataProviderResponse) MarshalJSON() ([]byte, error) {
4446	type NoMethod LiasettingsSetPosDataProviderResponse
4447	raw := NoMethod(*s)
4448	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4449}
4450
4451type LocationIdSet struct {
4452	// LocationIds: A non-empty list of location IDs. They must all be of
4453	// the same location type (e.g., state).
4454	LocationIds []string `json:"locationIds,omitempty"`
4455
4456	// ForceSendFields is a list of field names (e.g. "LocationIds") to
4457	// unconditionally include in API requests. By default, fields with
4458	// empty or default values are omitted from API requests. However, any
4459	// non-pointer, non-interface field appearing in ForceSendFields will be
4460	// sent to the server regardless of whether the field is empty or not.
4461	// This may be used to include empty fields in Patch requests.
4462	ForceSendFields []string `json:"-"`
4463
4464	// NullFields is a list of field names (e.g. "LocationIds") to include
4465	// in API requests with the JSON null value. By default, fields with
4466	// empty values are omitted from API requests. However, any field with
4467	// an empty value appearing in NullFields will be sent to the server as
4468	// null. It is an error if a field in this list has a non-empty value.
4469	// This may be used to include null fields in Patch requests.
4470	NullFields []string `json:"-"`
4471}
4472
4473func (s *LocationIdSet) MarshalJSON() ([]byte, error) {
4474	type NoMethod LocationIdSet
4475	raw := NoMethod(*s)
4476	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4477}
4478
4479type LoyaltyPoints struct {
4480	// Name: Name of loyalty points program. It is recommended to limit the
4481	// name to 12 full-width characters or 24 Roman characters.
4482	Name string `json:"name,omitempty"`
4483
4484	// PointsValue: The retailer's loyalty points in absolute value.
4485	PointsValue int64 `json:"pointsValue,omitempty,string"`
4486
4487	// Ratio: The ratio of a point when converted to currency. Google
4488	// assumes currency based on Merchant Center settings. If ratio is left
4489	// out, it defaults to 1.0.
4490	Ratio float64 `json:"ratio,omitempty"`
4491
4492	// ForceSendFields is a list of field names (e.g. "Name") to
4493	// unconditionally include in API requests. By default, fields with
4494	// empty or default values are omitted from API requests. However, any
4495	// non-pointer, non-interface field appearing in ForceSendFields will be
4496	// sent to the server regardless of whether the field is empty or not.
4497	// This may be used to include empty fields in Patch requests.
4498	ForceSendFields []string `json:"-"`
4499
4500	// NullFields is a list of field names (e.g. "Name") to include in API
4501	// requests with the JSON null value. By default, fields with empty
4502	// values are omitted from API requests. However, any field with an
4503	// empty value appearing in NullFields will be sent to the server as
4504	// null. It is an error if a field in this list has a non-empty value.
4505	// This may be used to include null fields in Patch requests.
4506	NullFields []string `json:"-"`
4507}
4508
4509func (s *LoyaltyPoints) MarshalJSON() ([]byte, error) {
4510	type NoMethod LoyaltyPoints
4511	raw := NoMethod(*s)
4512	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4513}
4514
4515func (s *LoyaltyPoints) UnmarshalJSON(data []byte) error {
4516	type NoMethod LoyaltyPoints
4517	var s1 struct {
4518		Ratio gensupport.JSONFloat64 `json:"ratio"`
4519		*NoMethod
4520	}
4521	s1.NoMethod = (*NoMethod)(s)
4522	if err := json.Unmarshal(data, &s1); err != nil {
4523		return err
4524	}
4525	s.Ratio = float64(s1.Ratio)
4526	return nil
4527}
4528
4529// MerchantOrderReturn: Order return. Production access (all methods)
4530// requires the order manager role. Sandbox access does not.
4531type MerchantOrderReturn struct {
4532	// CreationDate: The date of creation of the return, in ISO 8601 format.
4533	CreationDate string `json:"creationDate,omitempty"`
4534
4535	// MerchantOrderId: Merchant defined order ID.
4536	MerchantOrderId string `json:"merchantOrderId,omitempty"`
4537
4538	// OrderId: Google order ID.
4539	OrderId string `json:"orderId,omitempty"`
4540
4541	// OrderReturnId: Order return ID generated by Google.
4542	OrderReturnId string `json:"orderReturnId,omitempty"`
4543
4544	// ReturnItems: Items of the return.
4545	ReturnItems []*MerchantOrderReturnItem `json:"returnItems,omitempty"`
4546
4547	// ReturnShipments: Shipments of the return.
4548	ReturnShipments []*ReturnShipment `json:"returnShipments,omitempty"`
4549
4550	// ServerResponse contains the HTTP response code and headers from the
4551	// server.
4552	googleapi.ServerResponse `json:"-"`
4553
4554	// ForceSendFields is a list of field names (e.g. "CreationDate") to
4555	// unconditionally include in API requests. By default, fields with
4556	// empty or default values are omitted from API requests. However, any
4557	// non-pointer, non-interface field appearing in ForceSendFields will be
4558	// sent to the server regardless of whether the field is empty or not.
4559	// This may be used to include empty fields in Patch requests.
4560	ForceSendFields []string `json:"-"`
4561
4562	// NullFields is a list of field names (e.g. "CreationDate") to include
4563	// in API requests with the JSON null value. By default, fields with
4564	// empty values are omitted from API requests. However, any field with
4565	// an empty value appearing in NullFields will be sent to the server as
4566	// null. It is an error if a field in this list has a non-empty value.
4567	// This may be used to include null fields in Patch requests.
4568	NullFields []string `json:"-"`
4569}
4570
4571func (s *MerchantOrderReturn) MarshalJSON() ([]byte, error) {
4572	type NoMethod MerchantOrderReturn
4573	raw := NoMethod(*s)
4574	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4575}
4576
4577type MerchantOrderReturnItem struct {
4578	// CustomerReturnReason: The reason that the customer chooses to return
4579	// an item.
4580	CustomerReturnReason *CustomerReturnReason `json:"customerReturnReason,omitempty"`
4581
4582	// ItemId: Product level item ID. If the returned items are of the same
4583	// product, they will have the same ID.
4584	ItemId string `json:"itemId,omitempty"`
4585
4586	// MerchantReturnReason: The reason that merchant chooses to accept a
4587	// return item.
4588	MerchantReturnReason *RefundReason `json:"merchantReturnReason,omitempty"`
4589
4590	// Product: Product data from the time of the order placement.
4591	Product *OrderLineItemProduct `json:"product,omitempty"`
4592
4593	// ReturnShipmentIds: IDs of the return shipments that this return item
4594	// belongs to.
4595	ReturnShipmentIds []string `json:"returnShipmentIds,omitempty"`
4596
4597	// State: State of the item. Acceptable values are: - "canceled" -
4598	// "new" - "received" - "refunded" - "rejected"
4599	State string `json:"state,omitempty"`
4600
4601	// ForceSendFields is a list of field names (e.g.
4602	// "CustomerReturnReason") to unconditionally include in API requests.
4603	// By default, fields with empty or default values are omitted from API
4604	// requests. However, any non-pointer, non-interface field appearing in
4605	// ForceSendFields will be sent to the server regardless of whether the
4606	// field is empty or not. This may be used to include empty fields in
4607	// Patch requests.
4608	ForceSendFields []string `json:"-"`
4609
4610	// NullFields is a list of field names (e.g. "CustomerReturnReason") to
4611	// include in API requests with the JSON null value. By default, fields
4612	// with empty values are omitted from API requests. However, any field
4613	// with an empty value appearing in NullFields will be sent to the
4614	// server as null. It is an error if a field in this list has a
4615	// non-empty value. This may be used to include null fields in Patch
4616	// requests.
4617	NullFields []string `json:"-"`
4618}
4619
4620func (s *MerchantOrderReturnItem) MarshalJSON() ([]byte, error) {
4621	type NoMethod MerchantOrderReturnItem
4622	raw := NoMethod(*s)
4623	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4624}
4625
4626type MinimumOrderValueTable struct {
4627	StoreCodeSetWithMovs []*MinimumOrderValueTableStoreCodeSetWithMov `json:"storeCodeSetWithMovs,omitempty"`
4628
4629	// ForceSendFields is a list of field names (e.g.
4630	// "StoreCodeSetWithMovs") to unconditionally include in API requests.
4631	// By default, fields with empty or default values are omitted from API
4632	// requests. However, any non-pointer, non-interface field appearing in
4633	// ForceSendFields will be sent to the server regardless of whether the
4634	// field is empty or not. This may be used to include empty fields in
4635	// Patch requests.
4636	ForceSendFields []string `json:"-"`
4637
4638	// NullFields is a list of field names (e.g. "StoreCodeSetWithMovs") to
4639	// include in API requests with the JSON null value. By default, fields
4640	// with empty values are omitted from API requests. However, any field
4641	// with an empty value appearing in NullFields will be sent to the
4642	// server as null. It is an error if a field in this list has a
4643	// non-empty value. This may be used to include null fields in Patch
4644	// requests.
4645	NullFields []string `json:"-"`
4646}
4647
4648func (s *MinimumOrderValueTable) MarshalJSON() ([]byte, error) {
4649	type NoMethod MinimumOrderValueTable
4650	raw := NoMethod(*s)
4651	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4652}
4653
4654// MinimumOrderValueTableStoreCodeSetWithMov: A list of store code sets
4655// sharing the same minimum order value. At least two sets are required
4656// and the last one must be empty, which signifies 'MOV for all other
4657// stores'. Each store code can only appear once across all the sets.
4658// All prices within a service must have the same currency.
4659type MinimumOrderValueTableStoreCodeSetWithMov struct {
4660	// StoreCodes: A list of unique store codes or empty for the catch all.
4661	StoreCodes []string `json:"storeCodes,omitempty"`
4662
4663	// Value: The minimum order value for the given stores.
4664	Value *Price `json:"value,omitempty"`
4665
4666	// ForceSendFields is a list of field names (e.g. "StoreCodes") to
4667	// unconditionally include in API requests. By default, fields with
4668	// empty or default values are omitted from API requests. However, any
4669	// non-pointer, non-interface field appearing in ForceSendFields will be
4670	// sent to the server regardless of whether the field is empty or not.
4671	// This may be used to include empty fields in Patch requests.
4672	ForceSendFields []string `json:"-"`
4673
4674	// NullFields is a list of field names (e.g. "StoreCodes") to include in
4675	// API requests with the JSON null value. By default, fields with empty
4676	// values are omitted from API requests. However, any field with an
4677	// empty value appearing in NullFields will be sent to the server as
4678	// null. It is an error if a field in this list has a non-empty value.
4679	// This may be used to include null fields in Patch requests.
4680	NullFields []string `json:"-"`
4681}
4682
4683func (s *MinimumOrderValueTableStoreCodeSetWithMov) MarshalJSON() ([]byte, error) {
4684	type NoMethod MinimumOrderValueTableStoreCodeSetWithMov
4685	raw := NoMethod(*s)
4686	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4687}
4688
4689// Order: Order. Production access (all methods) requires the order
4690// manager role. Sandbox access does not.
4691type Order struct {
4692	// Acknowledged: Whether the order was acknowledged.
4693	Acknowledged bool `json:"acknowledged,omitempty"`
4694
4695	// ChannelType: Deprecated. Acceptable values are: - "googleExpress" -
4696	// "purchasesOnGoogle"
4697	ChannelType string `json:"channelType,omitempty"`
4698
4699	// Customer: The details of the customer who placed the order.
4700	Customer *OrderCustomer `json:"customer,omitempty"`
4701
4702	// DeliveryDetails: Delivery details for shipments of type `delivery`.
4703	DeliveryDetails *OrderDeliveryDetails `json:"deliveryDetails,omitempty"`
4704
4705	// Id: The REST ID of the order. Globally unique.
4706	Id string `json:"id,omitempty"`
4707
4708	// Kind: Identifies what kind of resource this is. Value: the fixed
4709	// string "content#order"
4710	Kind string `json:"kind,omitempty"`
4711
4712	// LineItems: Line items that are ordered.
4713	LineItems []*OrderLineItem `json:"lineItems,omitempty"`
4714
4715	MerchantId uint64 `json:"merchantId,omitempty,string"`
4716
4717	// MerchantOrderId: Merchant-provided ID of the order.
4718	MerchantOrderId string `json:"merchantOrderId,omitempty"`
4719
4720	// NetAmount: The net amount for the order. For example, if an order was
4721	// originally for a grand total of $100 and a refund was issued for $20,
4722	// the net amount will be $80.
4723	NetAmount *Price `json:"netAmount,omitempty"`
4724
4725	// PaymentMethod: The details of the payment method.
4726	PaymentMethod *OrderPaymentMethod `json:"paymentMethod,omitempty"`
4727
4728	// PaymentStatus: The status of the payment. Acceptable values are: -
4729	// "paymentCaptured" - "paymentRejected" - "paymentSecured" -
4730	// "pendingAuthorization"
4731	PaymentStatus string `json:"paymentStatus,omitempty"`
4732
4733	// PickupDetails: Pickup details for shipments of type `pickup`.
4734	PickupDetails *OrderPickupDetails `json:"pickupDetails,omitempty"`
4735
4736	// PlacedDate: The date when the order was placed, in ISO 8601 format.
4737	PlacedDate string `json:"placedDate,omitempty"`
4738
4739	// Promotions: The details of the merchant provided promotions applied
4740	// to the order. To determine which promotions apply to which products,
4741	// check the `Promotions[].Benefits[].OfferIds` field against the
4742	// `LineItems[].Product.OfferId` field for each promotion. If a
4743	// promotion is applied to more than 1 `offerId`, divide the discount
4744	// value by the number of affected offers to determine how much discount
4745	// to apply to each `offerId`. Examples: 1. To calculate the line item
4746	// level discount for a single specific item: For each promotion,
4747	// subtract the `Promotions[].Benefits[].Discount.value` amount from the
4748	// `LineItems[].Price.value`. 2. To calculate the line item level
4749	// discount for multiple quantity of a specific item: For each
4750	// promotion, divide the `Promotions[].Benefits[].Discount.value` by the
4751	// quantity of products and substract it from
4752	// `LineItems[].Product.Price.value` for each quantity item. Only 1
4753	// promotion can be applied to an offerId in a given order. To refund an
4754	// item which had a promotion applied to it, make sure to refund the
4755	// amount after first subtracting the promotion discount from the item
4756	// price. More details about the program are here.
4757	Promotions []*OrderLegacyPromotion `json:"promotions,omitempty"`
4758
4759	// Refunds: Refunds for the order.
4760	Refunds []*OrderRefund `json:"refunds,omitempty"`
4761
4762	// Shipments: Shipments of the order.
4763	Shipments []*OrderShipment `json:"shipments,omitempty"`
4764
4765	// ShippingCost: The total cost of shipping for all items.
4766	ShippingCost *Price `json:"shippingCost,omitempty"`
4767
4768	// ShippingCostTax: The tax for the total shipping cost.
4769	ShippingCostTax *Price `json:"shippingCostTax,omitempty"`
4770
4771	// ShippingOption: Deprecated. Shipping details are provided with line
4772	// items instead. Acceptable values are: - "economy" - "expedited" -
4773	// "oneDay" - "sameDay" - "standard" - "twoDay"
4774	ShippingOption string `json:"shippingOption,omitempty"`
4775
4776	// Status: The status of the order. Acceptable values are: -
4777	// "canceled" - "delivered" - "inProgress" -
4778	// "partiallyDelivered" - "partiallyReturned" - "partiallyShipped"
4779	// - "pendingShipment" - "returned" - "shipped"
4780	Status string `json:"status,omitempty"`
4781
4782	// TaxCollector: The party responsible for collecting and remitting
4783	// taxes. Acceptable values are: - "marketplaceFacilitator" -
4784	// "merchant"
4785	TaxCollector string `json:"taxCollector,omitempty"`
4786
4787	// ServerResponse contains the HTTP response code and headers from the
4788	// server.
4789	googleapi.ServerResponse `json:"-"`
4790
4791	// ForceSendFields is a list of field names (e.g. "Acknowledged") to
4792	// unconditionally include in API requests. By default, fields with
4793	// empty or default values are omitted from API requests. However, any
4794	// non-pointer, non-interface field appearing in ForceSendFields will be
4795	// sent to the server regardless of whether the field is empty or not.
4796	// This may be used to include empty fields in Patch requests.
4797	ForceSendFields []string `json:"-"`
4798
4799	// NullFields is a list of field names (e.g. "Acknowledged") to include
4800	// in API requests with the JSON null value. By default, fields with
4801	// empty values are omitted from API requests. However, any field with
4802	// an empty value appearing in NullFields will be sent to the server as
4803	// null. It is an error if a field in this list has a non-empty value.
4804	// This may be used to include null fields in Patch requests.
4805	NullFields []string `json:"-"`
4806}
4807
4808func (s *Order) MarshalJSON() ([]byte, error) {
4809	type NoMethod Order
4810	raw := NoMethod(*s)
4811	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4812}
4813
4814type OrderAddress struct {
4815	// Country: CLDR country code (e.g. "US").
4816	Country string `json:"country,omitempty"`
4817
4818	// FullAddress: Strings representing the lines of the printed label for
4819	// mailing the order, for example: John Smith 1600 Amphitheatre Parkway
4820	// Mountain View, CA, 94043 United States
4821	FullAddress []string `json:"fullAddress,omitempty"`
4822
4823	// IsPostOfficeBox: Whether the address is a post office box.
4824	IsPostOfficeBox bool `json:"isPostOfficeBox,omitempty"`
4825
4826	// Locality: City, town or commune. May also include dependent
4827	// localities or sublocalities (e.g. neighborhoods or suburbs).
4828	Locality string `json:"locality,omitempty"`
4829
4830	// PostalCode: Postal Code or ZIP (e.g. "94043").
4831	PostalCode string `json:"postalCode,omitempty"`
4832
4833	// RecipientName: Name of the recipient.
4834	RecipientName string `json:"recipientName,omitempty"`
4835
4836	// Region: Top-level administrative subdivision of the country. For
4837	// example, a state like California ("CA") or a province like Quebec
4838	// ("QC").
4839	Region string `json:"region,omitempty"`
4840
4841	// StreetAddress: Street-level part of the address.
4842	StreetAddress []string `json:"streetAddress,omitempty"`
4843
4844	// ForceSendFields is a list of field names (e.g. "Country") to
4845	// unconditionally include in API requests. By default, fields with
4846	// empty or default values are omitted from API requests. However, any
4847	// non-pointer, non-interface field appearing in ForceSendFields will be
4848	// sent to the server regardless of whether the field is empty or not.
4849	// This may be used to include empty fields in Patch requests.
4850	ForceSendFields []string `json:"-"`
4851
4852	// NullFields is a list of field names (e.g. "Country") to include in
4853	// API requests with the JSON null value. By default, fields with empty
4854	// values are omitted from API requests. However, any field with an
4855	// empty value appearing in NullFields will be sent to the server as
4856	// null. It is an error if a field in this list has a non-empty value.
4857	// This may be used to include null fields in Patch requests.
4858	NullFields []string `json:"-"`
4859}
4860
4861func (s *OrderAddress) MarshalJSON() ([]byte, error) {
4862	type NoMethod OrderAddress
4863	raw := NoMethod(*s)
4864	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4865}
4866
4867type OrderCancellation struct {
4868	// Actor: The actor that created the cancellation. Acceptable values
4869	// are: - "customer" - "googleBot" - "googleCustomerService" -
4870	// "googlePayments" - "googleSabre" - "merchant"
4871	Actor string `json:"actor,omitempty"`
4872
4873	// CreationDate: Date on which the cancellation has been created, in ISO
4874	// 8601 format.
4875	CreationDate string `json:"creationDate,omitempty"`
4876
4877	// Quantity: The quantity that was canceled.
4878	Quantity int64 `json:"quantity,omitempty"`
4879
4880	// Reason: The reason for the cancellation. Orders that are canceled
4881	// with a noInventory reason will lead to the removal of the product
4882	// from Buy on Google until you make an update to that product. This
4883	// will not affect your Shopping ads. Acceptable values are: -
4884	// "autoPostInternal" - "autoPostInvalidBillingAddress" -
4885	// "autoPostNoInventory" - "autoPostPriceError" -
4886	// "autoPostUndeliverableShippingAddress" - "couponAbuse" -
4887	// "customerCanceled" - "customerInitiatedCancel" -
4888	// "customerSupportRequested" - "failToPushOrderGoogleError" -
4889	// "failToPushOrderMerchantError" -
4890	// "failToPushOrderMerchantFulfillmentError" -
4891	// "failToPushOrderToMerchant" -
4892	// "failToPushOrderToMerchantOutOfStock" - "invalidCoupon" -
4893	// "malformedShippingAddress" - "merchantDidNotShipOnTime" -
4894	// "noInventory" - "orderTimeout" - "other" - "paymentAbuse" -
4895	// "paymentDeclined" - "priceError" - "returnRefundAbuse" -
4896	// "shippingPriceError" - "taxError" -
4897	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress"
4898	Reason string `json:"reason,omitempty"`
4899
4900	// ReasonText: The explanation of the reason.
4901	ReasonText string `json:"reasonText,omitempty"`
4902
4903	// ForceSendFields is a list of field names (e.g. "Actor") to
4904	// unconditionally include in API requests. By default, fields with
4905	// empty or default values are omitted from API requests. However, any
4906	// non-pointer, non-interface field appearing in ForceSendFields will be
4907	// sent to the server regardless of whether the field is empty or not.
4908	// This may be used to include empty fields in Patch requests.
4909	ForceSendFields []string `json:"-"`
4910
4911	// NullFields is a list of field names (e.g. "Actor") to include in API
4912	// requests with the JSON null value. By default, fields with empty
4913	// values are omitted from API requests. However, any field with an
4914	// empty value appearing in NullFields will be sent to the server as
4915	// null. It is an error if a field in this list has a non-empty value.
4916	// This may be used to include null fields in Patch requests.
4917	NullFields []string `json:"-"`
4918}
4919
4920func (s *OrderCancellation) MarshalJSON() ([]byte, error) {
4921	type NoMethod OrderCancellation
4922	raw := NoMethod(*s)
4923	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4924}
4925
4926type OrderCustomer struct {
4927	// Email: Deprecated.
4928	Email string `json:"email,omitempty"`
4929
4930	// ExplicitMarketingPreference: Deprecated. Please use
4931	// marketingRightsInfo instead.
4932	ExplicitMarketingPreference bool `json:"explicitMarketingPreference,omitempty"`
4933
4934	// FullName: Full name of the customer.
4935	FullName string `json:"fullName,omitempty"`
4936
4937	// InvoiceReceivingEmail: Email address for the merchant to send
4938	// value-added tax or invoice documentation of the order. Only the last
4939	// document sent is made available to the customer. For more
4940	// information, see About automated VAT invoicing for Buy on Google.
4941	InvoiceReceivingEmail string `json:"invoiceReceivingEmail,omitempty"`
4942
4943	// MarketingRightsInfo: Customer's marketing preferences. Contains the
4944	// marketing opt-in information that is current at the time that the
4945	// merchant call. User preference selections can change from one order
4946	// to the next so preferences must be checked with every order.
4947	MarketingRightsInfo *OrderCustomerMarketingRightsInfo `json:"marketingRightsInfo,omitempty"`
4948
4949	// ForceSendFields is a list of field names (e.g. "Email") to
4950	// unconditionally include in API requests. By default, fields with
4951	// empty or default values are omitted from API requests. However, any
4952	// non-pointer, non-interface field appearing in ForceSendFields will be
4953	// sent to the server regardless of whether the field is empty or not.
4954	// This may be used to include empty fields in Patch requests.
4955	ForceSendFields []string `json:"-"`
4956
4957	// NullFields is a list of field names (e.g. "Email") to include in API
4958	// requests with the JSON null value. By default, fields with empty
4959	// values are omitted from API requests. However, any field with an
4960	// empty value appearing in NullFields will be sent to the server as
4961	// null. It is an error if a field in this list has a non-empty value.
4962	// This may be used to include null fields in Patch requests.
4963	NullFields []string `json:"-"`
4964}
4965
4966func (s *OrderCustomer) MarshalJSON() ([]byte, error) {
4967	type NoMethod OrderCustomer
4968	raw := NoMethod(*s)
4969	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4970}
4971
4972type OrderCustomerMarketingRightsInfo struct {
4973	// ExplicitMarketingPreference: Last known customer selection regarding
4974	// marketing preferences. In certain cases this selection might not be
4975	// known, so this field would be empty. If a customer selected `granted`
4976	// in their most recent order, they can be subscribed to marketing
4977	// emails. Customers who have chosen `denied` must not be subscribed, or
4978	// must be unsubscribed if already opted-in. Acceptable values are: -
4979	// "denied" - "granted"
4980	ExplicitMarketingPreference string `json:"explicitMarketingPreference,omitempty"`
4981
4982	// LastUpdatedTimestamp: Timestamp when last time marketing preference
4983	// was updated. Could be empty, if user wasn't offered a selection yet.
4984	LastUpdatedTimestamp string `json:"lastUpdatedTimestamp,omitempty"`
4985
4986	// MarketingEmailAddress: Email address that can be used for marketing
4987	// purposes. The field may be empty even if
4988	// `explicitMarketingPreference` is 'granted'. This happens when
4989	// retrieving an old order from the customer who deleted their account.
4990	MarketingEmailAddress string `json:"marketingEmailAddress,omitempty"`
4991
4992	// ForceSendFields is a list of field names (e.g.
4993	// "ExplicitMarketingPreference") to unconditionally include in API
4994	// requests. By default, fields with empty or default values are omitted
4995	// from API requests. However, any non-pointer, non-interface field
4996	// appearing in ForceSendFields will be sent to the server regardless of
4997	// whether the field is empty or not. This may be used to include empty
4998	// fields in Patch requests.
4999	ForceSendFields []string `json:"-"`
5000
5001	// NullFields is a list of field names (e.g.
5002	// "ExplicitMarketingPreference") to include in API requests with the
5003	// JSON null value. By default, fields with empty values are omitted
5004	// from API requests. However, any field with an empty value appearing
5005	// in NullFields will be sent to the server as null. It is an error if a
5006	// field in this list has a non-empty value. This may be used to include
5007	// null fields in Patch requests.
5008	NullFields []string `json:"-"`
5009}
5010
5011func (s *OrderCustomerMarketingRightsInfo) MarshalJSON() ([]byte, error) {
5012	type NoMethod OrderCustomerMarketingRightsInfo
5013	raw := NoMethod(*s)
5014	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5015}
5016
5017type OrderDeliveryDetails struct {
5018	// Address: The delivery address
5019	Address *OrderAddress `json:"address,omitempty"`
5020
5021	// PhoneNumber: The phone number of the person receiving the delivery.
5022	PhoneNumber string `json:"phoneNumber,omitempty"`
5023
5024	// ForceSendFields is a list of field names (e.g. "Address") to
5025	// unconditionally include in API requests. By default, fields with
5026	// empty or default values are omitted from API requests. However, any
5027	// non-pointer, non-interface field appearing in ForceSendFields will be
5028	// sent to the server regardless of whether the field is empty or not.
5029	// This may be used to include empty fields in Patch requests.
5030	ForceSendFields []string `json:"-"`
5031
5032	// NullFields is a list of field names (e.g. "Address") to include in
5033	// API requests with the JSON null value. By default, fields with empty
5034	// values are omitted from API requests. However, any field with an
5035	// empty value appearing in NullFields will be sent to the server as
5036	// null. It is an error if a field in this list has a non-empty value.
5037	// This may be used to include null fields in Patch requests.
5038	NullFields []string `json:"-"`
5039}
5040
5041func (s *OrderDeliveryDetails) MarshalJSON() ([]byte, error) {
5042	type NoMethod OrderDeliveryDetails
5043	raw := NoMethod(*s)
5044	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5045}
5046
5047type OrderLegacyPromotion struct {
5048	Benefits []*OrderLegacyPromotionBenefit `json:"benefits,omitempty"`
5049
5050	// EffectiveDates: The date and time frame when the promotion is active
5051	// and ready for validation review. Note that the promotion live time
5052	// may be delayed for a few hours due to the validation review. Start
5053	// date and end date are separated by a forward slash (/). The start
5054	// date is specified by the format (YYYY-MM-DD), followed by the letter
5055	// ?T?, the time of the day when the sale starts (in Greenwich Mean
5056	// Time, GMT), followed by an expression of the time zone for the sale.
5057	// The end date is in the same format.
5058	EffectiveDates string `json:"effectiveDates,omitempty"`
5059
5060	// GenericRedemptionCode: Optional. The text code that corresponds to
5061	// the promotion when applied on the retailer?s website.
5062	GenericRedemptionCode string `json:"genericRedemptionCode,omitempty"`
5063
5064	// Id: The unique ID of the promotion.
5065	Id string `json:"id,omitempty"`
5066
5067	// LongTitle: The full title of the promotion.
5068	LongTitle string `json:"longTitle,omitempty"`
5069
5070	// ProductApplicability: Whether the promotion is applicable to all
5071	// products or only specific products. Acceptable values are: -
5072	// "allProducts" - "specificProducts"
5073	ProductApplicability string `json:"productApplicability,omitempty"`
5074
5075	// RedemptionChannel: Indicates that the promotion is valid online.
5076	// Acceptable values are: - "online"
5077	RedemptionChannel string `json:"redemptionChannel,omitempty"`
5078
5079	// ForceSendFields is a list of field names (e.g. "Benefits") to
5080	// unconditionally include in API requests. By default, fields with
5081	// empty or default values are omitted from API requests. However, any
5082	// non-pointer, non-interface field appearing in ForceSendFields will be
5083	// sent to the server regardless of whether the field is empty or not.
5084	// This may be used to include empty fields in Patch requests.
5085	ForceSendFields []string `json:"-"`
5086
5087	// NullFields is a list of field names (e.g. "Benefits") to include in
5088	// API requests with the JSON null value. By default, fields with empty
5089	// values are omitted from API requests. However, any field with an
5090	// empty value appearing in NullFields will be sent to the server as
5091	// null. It is an error if a field in this list has a non-empty value.
5092	// This may be used to include null fields in Patch requests.
5093	NullFields []string `json:"-"`
5094}
5095
5096func (s *OrderLegacyPromotion) MarshalJSON() ([]byte, error) {
5097	type NoMethod OrderLegacyPromotion
5098	raw := NoMethod(*s)
5099	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5100}
5101
5102type OrderLegacyPromotionBenefit struct {
5103	// Discount: The discount in the order price when the promotion is
5104	// applied.
5105	Discount *Price `json:"discount,omitempty"`
5106
5107	// OfferIds: The OfferId(s) that were purchased in this order and map to
5108	// this specific benefit of the promotion.
5109	OfferIds []string `json:"offerIds,omitempty"`
5110
5111	// SubType: Further describes the benefit of the promotion. Note that we
5112	// will expand on this enumeration as we support new promotion
5113	// sub-types. Acceptable values are: - "buyMGetMoneyOff" -
5114	// "buyMGetNMoneyOff" - "buyMGetNPercentOff" - "buyMGetPercentOff"
5115	// - "freeGift" - "freeGiftWithItemId" - "freeGiftWithValue" -
5116	// "freeOvernightShipping" - "freeShipping" - "freeTwoDayShipping"
5117	// - "moneyOff" - "percentageOff" - "rewardPoints" - "salePrice"
5118	SubType string `json:"subType,omitempty"`
5119
5120	// TaxImpact: The impact on tax when the promotion is applied.
5121	TaxImpact *Price `json:"taxImpact,omitempty"`
5122
5123	// Type: Describes whether the promotion applies to products (e.g. 20%
5124	// off) or to shipping (e.g. Free Shipping). Acceptable values are: -
5125	// "product" - "shipping"
5126	Type string `json:"type,omitempty"`
5127
5128	// ForceSendFields is a list of field names (e.g. "Discount") to
5129	// unconditionally include in API requests. By default, fields with
5130	// empty or default values are omitted from API requests. However, any
5131	// non-pointer, non-interface field appearing in ForceSendFields will be
5132	// sent to the server regardless of whether the field is empty or not.
5133	// This may be used to include empty fields in Patch requests.
5134	ForceSendFields []string `json:"-"`
5135
5136	// NullFields is a list of field names (e.g. "Discount") to include in
5137	// API requests with the JSON null value. By default, fields with empty
5138	// values are omitted from API requests. However, any field with an
5139	// empty value appearing in NullFields will be sent to the server as
5140	// null. It is an error if a field in this list has a non-empty value.
5141	// This may be used to include null fields in Patch requests.
5142	NullFields []string `json:"-"`
5143}
5144
5145func (s *OrderLegacyPromotionBenefit) MarshalJSON() ([]byte, error) {
5146	type NoMethod OrderLegacyPromotionBenefit
5147	raw := NoMethod(*s)
5148	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5149}
5150
5151type OrderLineItem struct {
5152	// Annotations: Annotations that are attached to the line item.
5153	Annotations []*OrderMerchantProvidedAnnotation `json:"annotations,omitempty"`
5154
5155	// Cancellations: Cancellations of the line item.
5156	Cancellations []*OrderCancellation `json:"cancellations,omitempty"`
5157
5158	// Id: The ID of the line item.
5159	Id string `json:"id,omitempty"`
5160
5161	// Price: Total price for the line item. For example, if two items for
5162	// $10 are purchased, the total price will be $20.
5163	Price *Price `json:"price,omitempty"`
5164
5165	// Product: Product data as seen by customer from the time of the order
5166	// placement. Note that certain attributes values (e.g. title or gtin)
5167	// might be reformatted and no longer match values submitted via product
5168	// feed.
5169	Product *OrderLineItemProduct `json:"product,omitempty"`
5170
5171	// QuantityCanceled: Number of items canceled.
5172	QuantityCanceled int64 `json:"quantityCanceled,omitempty"`
5173
5174	// QuantityDelivered: Number of items delivered.
5175	QuantityDelivered int64 `json:"quantityDelivered,omitempty"`
5176
5177	// QuantityOrdered: Number of items ordered.
5178	QuantityOrdered int64 `json:"quantityOrdered,omitempty"`
5179
5180	// QuantityPending: Number of items pending.
5181	QuantityPending int64 `json:"quantityPending,omitempty"`
5182
5183	// QuantityReadyForPickup: Number of items ready for pickup.
5184	QuantityReadyForPickup int64 `json:"quantityReadyForPickup,omitempty"`
5185
5186	// QuantityReturned: Number of items returned.
5187	QuantityReturned int64 `json:"quantityReturned,omitempty"`
5188
5189	// QuantityShipped: Number of items shipped.
5190	QuantityShipped int64 `json:"quantityShipped,omitempty"`
5191
5192	// ReturnInfo: Details of the return policy for the line item.
5193	ReturnInfo *OrderLineItemReturnInfo `json:"returnInfo,omitempty"`
5194
5195	// Returns: Returns of the line item.
5196	Returns []*OrderReturn `json:"returns,omitempty"`
5197
5198	// ShippingDetails: Details of the requested shipping for the line item.
5199	ShippingDetails *OrderLineItemShippingDetails `json:"shippingDetails,omitempty"`
5200
5201	// Tax: Total tax amount for the line item. For example, if two items
5202	// are purchased, and each have a cost tax of $2, the total tax amount
5203	// will be $4.
5204	Tax *Price `json:"tax,omitempty"`
5205
5206	// ForceSendFields is a list of field names (e.g. "Annotations") to
5207	// unconditionally include in API requests. By default, fields with
5208	// empty or default values are omitted from API requests. However, any
5209	// non-pointer, non-interface field appearing in ForceSendFields will be
5210	// sent to the server regardless of whether the field is empty or not.
5211	// This may be used to include empty fields in Patch requests.
5212	ForceSendFields []string `json:"-"`
5213
5214	// NullFields is a list of field names (e.g. "Annotations") to include
5215	// in API requests with the JSON null value. By default, fields with
5216	// empty values are omitted from API requests. However, any field with
5217	// an empty value appearing in NullFields will be sent to the server as
5218	// null. It is an error if a field in this list has a non-empty value.
5219	// This may be used to include null fields in Patch requests.
5220	NullFields []string `json:"-"`
5221}
5222
5223func (s *OrderLineItem) MarshalJSON() ([]byte, error) {
5224	type NoMethod OrderLineItem
5225	raw := NoMethod(*s)
5226	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5227}
5228
5229type OrderLineItemProduct struct {
5230	// Brand: Brand of the item.
5231	Brand string `json:"brand,omitempty"`
5232
5233	// Channel: The item's channel (online or local). Acceptable values are:
5234	// - "local" - "online"
5235	Channel string `json:"channel,omitempty"`
5236
5237	// Condition: Condition or state of the item. Acceptable values are: -
5238	// "new" - "refurbished" - "used"
5239	Condition string `json:"condition,omitempty"`
5240
5241	// ContentLanguage: The two-letter ISO 639-1 language code for the item.
5242	ContentLanguage string `json:"contentLanguage,omitempty"`
5243
5244	// Fees: Associated fees at order creation time.
5245	Fees []*OrderLineItemProductFee `json:"fees,omitempty"`
5246
5247	// Gtin: Global Trade Item Number (GTIN) of the item.
5248	Gtin string `json:"gtin,omitempty"`
5249
5250	// Id: The REST ID of the product.
5251	Id string `json:"id,omitempty"`
5252
5253	// ImageLink: URL of an image of the item.
5254	ImageLink string `json:"imageLink,omitempty"`
5255
5256	// ItemGroupId: Shared identifier for all variants of the same product.
5257	ItemGroupId string `json:"itemGroupId,omitempty"`
5258
5259	// Mpn: Manufacturer Part Number (MPN) of the item.
5260	Mpn string `json:"mpn,omitempty"`
5261
5262	// OfferId: An identifier of the item.
5263	OfferId string `json:"offerId,omitempty"`
5264
5265	// Price: Price of the item.
5266	Price *Price `json:"price,omitempty"`
5267
5268	// ShownImage: URL to the cached image shown to the user when order was
5269	// placed.
5270	ShownImage string `json:"shownImage,omitempty"`
5271
5272	// TargetCountry: The CLDR territory // code of the target country of
5273	// the product.
5274	TargetCountry string `json:"targetCountry,omitempty"`
5275
5276	// Title: The title of the product.
5277	Title string `json:"title,omitempty"`
5278
5279	// VariantAttributes: Variant attributes for the item. These are
5280	// dimensions of the product, such as color, gender, material, pattern,
5281	// and size. You can find a comprehensive list of variant attributes
5282	// here.
5283	VariantAttributes []*OrderLineItemProductVariantAttribute `json:"variantAttributes,omitempty"`
5284
5285	// ForceSendFields is a list of field names (e.g. "Brand") to
5286	// unconditionally include in API requests. By default, fields with
5287	// empty or default values are omitted from API requests. However, any
5288	// non-pointer, non-interface field appearing in ForceSendFields will be
5289	// sent to the server regardless of whether the field is empty or not.
5290	// This may be used to include empty fields in Patch requests.
5291	ForceSendFields []string `json:"-"`
5292
5293	// NullFields is a list of field names (e.g. "Brand") to include in API
5294	// requests with the JSON null value. By default, fields with empty
5295	// values are omitted from API requests. However, any field with an
5296	// empty value appearing in NullFields will be sent to the server as
5297	// null. It is an error if a field in this list has a non-empty value.
5298	// This may be used to include null fields in Patch requests.
5299	NullFields []string `json:"-"`
5300}
5301
5302func (s *OrderLineItemProduct) MarshalJSON() ([]byte, error) {
5303	type NoMethod OrderLineItemProduct
5304	raw := NoMethod(*s)
5305	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5306}
5307
5308type OrderLineItemProductFee struct {
5309	// Amount: Amount of the fee.
5310	Amount *Price `json:"amount,omitempty"`
5311
5312	// Name: Name of the fee.
5313	Name string `json:"name,omitempty"`
5314
5315	// ForceSendFields is a list of field names (e.g. "Amount") to
5316	// unconditionally include in API requests. By default, fields with
5317	// empty or default values are omitted from API requests. However, any
5318	// non-pointer, non-interface field appearing in ForceSendFields will be
5319	// sent to the server regardless of whether the field is empty or not.
5320	// This may be used to include empty fields in Patch requests.
5321	ForceSendFields []string `json:"-"`
5322
5323	// NullFields is a list of field names (e.g. "Amount") to include in API
5324	// requests with the JSON null value. By default, fields with empty
5325	// values are omitted from API requests. However, any field with an
5326	// empty value appearing in NullFields will be sent to the server as
5327	// null. It is an error if a field in this list has a non-empty value.
5328	// This may be used to include null fields in Patch requests.
5329	NullFields []string `json:"-"`
5330}
5331
5332func (s *OrderLineItemProductFee) MarshalJSON() ([]byte, error) {
5333	type NoMethod OrderLineItemProductFee
5334	raw := NoMethod(*s)
5335	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5336}
5337
5338type OrderLineItemProductVariantAttribute struct {
5339	// Dimension: The dimension of the variant.
5340	Dimension string `json:"dimension,omitempty"`
5341
5342	// Value: The value for the dimension.
5343	Value string `json:"value,omitempty"`
5344
5345	// ForceSendFields is a list of field names (e.g. "Dimension") to
5346	// unconditionally include in API requests. By default, fields with
5347	// empty or default values are omitted from API requests. However, any
5348	// non-pointer, non-interface field appearing in ForceSendFields will be
5349	// sent to the server regardless of whether the field is empty or not.
5350	// This may be used to include empty fields in Patch requests.
5351	ForceSendFields []string `json:"-"`
5352
5353	// NullFields is a list of field names (e.g. "Dimension") to include in
5354	// API requests with the JSON null value. By default, fields with empty
5355	// values are omitted from API requests. However, any field with an
5356	// empty value appearing in NullFields will be sent to the server as
5357	// null. It is an error if a field in this list has a non-empty value.
5358	// This may be used to include null fields in Patch requests.
5359	NullFields []string `json:"-"`
5360}
5361
5362func (s *OrderLineItemProductVariantAttribute) MarshalJSON() ([]byte, error) {
5363	type NoMethod OrderLineItemProductVariantAttribute
5364	raw := NoMethod(*s)
5365	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5366}
5367
5368type OrderLineItemReturnInfo struct {
5369	// DaysToReturn: Required. How many days later the item can be returned.
5370	DaysToReturn int64 `json:"daysToReturn,omitempty"`
5371
5372	// IsReturnable: Required. Whether the item is returnable.
5373	IsReturnable bool `json:"isReturnable,omitempty"`
5374
5375	// PolicyUrl: Required. URL of the item return policy.
5376	PolicyUrl string `json:"policyUrl,omitempty"`
5377
5378	// ForceSendFields is a list of field names (e.g. "DaysToReturn") to
5379	// unconditionally include in API requests. By default, fields with
5380	// empty or default values are omitted from API requests. However, any
5381	// non-pointer, non-interface field appearing in ForceSendFields will be
5382	// sent to the server regardless of whether the field is empty or not.
5383	// This may be used to include empty fields in Patch requests.
5384	ForceSendFields []string `json:"-"`
5385
5386	// NullFields is a list of field names (e.g. "DaysToReturn") to include
5387	// in API requests with the JSON null value. By default, fields with
5388	// empty values are omitted from API requests. However, any field with
5389	// an empty value appearing in NullFields will be sent to the server as
5390	// null. It is an error if a field in this list has a non-empty value.
5391	// This may be used to include null fields in Patch requests.
5392	NullFields []string `json:"-"`
5393}
5394
5395func (s *OrderLineItemReturnInfo) MarshalJSON() ([]byte, error) {
5396	type NoMethod OrderLineItemReturnInfo
5397	raw := NoMethod(*s)
5398	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5399}
5400
5401type OrderLineItemShippingDetails struct {
5402	// DeliverByDate: Required. The delivery by date, in ISO 8601 format.
5403	DeliverByDate string `json:"deliverByDate,omitempty"`
5404
5405	// Method: Required. Details of the shipping method.
5406	Method *OrderLineItemShippingDetailsMethod `json:"method,omitempty"`
5407
5408	// ShipByDate: Required. The ship by date, in ISO 8601 format.
5409	ShipByDate string `json:"shipByDate,omitempty"`
5410
5411	// Type: Type of shipment. Indicates whether `deliveryDetails` or
5412	// `pickupDetails` is applicable for this shipment. Acceptable values
5413	// are: - "delivery" - "pickup"
5414	Type string `json:"type,omitempty"`
5415
5416	// ForceSendFields is a list of field names (e.g. "DeliverByDate") to
5417	// unconditionally include in API requests. By default, fields with
5418	// empty or default values are omitted from API requests. However, any
5419	// non-pointer, non-interface field appearing in ForceSendFields will be
5420	// sent to the server regardless of whether the field is empty or not.
5421	// This may be used to include empty fields in Patch requests.
5422	ForceSendFields []string `json:"-"`
5423
5424	// NullFields is a list of field names (e.g. "DeliverByDate") to include
5425	// in API requests with the JSON null value. By default, fields with
5426	// empty values are omitted from API requests. However, any field with
5427	// an empty value appearing in NullFields will be sent to the server as
5428	// null. It is an error if a field in this list has a non-empty value.
5429	// This may be used to include null fields in Patch requests.
5430	NullFields []string `json:"-"`
5431}
5432
5433func (s *OrderLineItemShippingDetails) MarshalJSON() ([]byte, error) {
5434	type NoMethod OrderLineItemShippingDetails
5435	raw := NoMethod(*s)
5436	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5437}
5438
5439type OrderLineItemShippingDetailsMethod struct {
5440	// Carrier: The carrier for the shipping. Optional. See
5441	// `shipments[].carrier` for a list of acceptable values.
5442	Carrier string `json:"carrier,omitempty"`
5443
5444	// MaxDaysInTransit: Required. Maximum transit time.
5445	MaxDaysInTransit int64 `json:"maxDaysInTransit,omitempty"`
5446
5447	// MethodName: Required. The name of the shipping method.
5448	MethodName string `json:"methodName,omitempty"`
5449
5450	// MinDaysInTransit: Required. Minimum transit time.
5451	MinDaysInTransit int64 `json:"minDaysInTransit,omitempty"`
5452
5453	// ForceSendFields is a list of field names (e.g. "Carrier") to
5454	// unconditionally include in API requests. By default, fields with
5455	// empty or default values are omitted from API requests. However, any
5456	// non-pointer, non-interface field appearing in ForceSendFields will be
5457	// sent to the server regardless of whether the field is empty or not.
5458	// This may be used to include empty fields in Patch requests.
5459	ForceSendFields []string `json:"-"`
5460
5461	// NullFields is a list of field names (e.g. "Carrier") to include in
5462	// API requests with the JSON null value. By default, fields with empty
5463	// values are omitted from API requests. However, any field with an
5464	// empty value appearing in NullFields will be sent to the server as
5465	// null. It is an error if a field in this list has a non-empty value.
5466	// This may be used to include null fields in Patch requests.
5467	NullFields []string `json:"-"`
5468}
5469
5470func (s *OrderLineItemShippingDetailsMethod) MarshalJSON() ([]byte, error) {
5471	type NoMethod OrderLineItemShippingDetailsMethod
5472	raw := NoMethod(*s)
5473	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5474}
5475
5476type OrderMerchantProvidedAnnotation struct {
5477	// Key: Key for additional merchant provided (as key-value pairs)
5478	// annotation about the line item.
5479	Key string `json:"key,omitempty"`
5480
5481	// Value: Value for additional merchant provided (as key-value pairs)
5482	// annotation about the line item.
5483	Value string `json:"value,omitempty"`
5484
5485	// ForceSendFields is a list of field names (e.g. "Key") to
5486	// unconditionally include in API requests. By default, fields with
5487	// empty or default values are omitted from API requests. However, any
5488	// non-pointer, non-interface field appearing in ForceSendFields will be
5489	// sent to the server regardless of whether the field is empty or not.
5490	// This may be used to include empty fields in Patch requests.
5491	ForceSendFields []string `json:"-"`
5492
5493	// NullFields is a list of field names (e.g. "Key") to include in API
5494	// requests with the JSON null value. By default, fields with empty
5495	// values are omitted from API requests. However, any field with an
5496	// empty value appearing in NullFields will be sent to the server as
5497	// null. It is an error if a field in this list has a non-empty value.
5498	// This may be used to include null fields in Patch requests.
5499	NullFields []string `json:"-"`
5500}
5501
5502func (s *OrderMerchantProvidedAnnotation) MarshalJSON() ([]byte, error) {
5503	type NoMethod OrderMerchantProvidedAnnotation
5504	raw := NoMethod(*s)
5505	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5506}
5507
5508type OrderPaymentMethod struct {
5509	// BillingAddress: The billing address.
5510	BillingAddress *OrderAddress `json:"billingAddress,omitempty"`
5511
5512	// ExpirationMonth: The card expiration month (January = 1, February = 2
5513	// etc.).
5514	ExpirationMonth int64 `json:"expirationMonth,omitempty"`
5515
5516	// ExpirationYear: The card expiration year (4-digit, e.g. 2015).
5517	ExpirationYear int64 `json:"expirationYear,omitempty"`
5518
5519	// LastFourDigits: The last four digits of the card number.
5520	LastFourDigits string `json:"lastFourDigits,omitempty"`
5521
5522	// PhoneNumber: The billing phone number.
5523	PhoneNumber string `json:"phoneNumber,omitempty"`
5524
5525	// Type: The type of instrument. Acceptable values are: - "AMEX" -
5526	// "DISCOVER" - "JCB" - "MASTERCARD" - "UNIONPAY" - "VISA" -
5527	// ""
5528	Type string `json:"type,omitempty"`
5529
5530	// ForceSendFields is a list of field names (e.g. "BillingAddress") to
5531	// unconditionally include in API requests. By default, fields with
5532	// empty or default values are omitted from API requests. However, any
5533	// non-pointer, non-interface field appearing in ForceSendFields will be
5534	// sent to the server regardless of whether the field is empty or not.
5535	// This may be used to include empty fields in Patch requests.
5536	ForceSendFields []string `json:"-"`
5537
5538	// NullFields is a list of field names (e.g. "BillingAddress") to
5539	// include in API requests with the JSON null value. By default, fields
5540	// with empty values are omitted from API requests. However, any field
5541	// with an empty value appearing in NullFields will be sent to the
5542	// server as null. It is an error if a field in this list has a
5543	// non-empty value. This may be used to include null fields in Patch
5544	// requests.
5545	NullFields []string `json:"-"`
5546}
5547
5548func (s *OrderPaymentMethod) MarshalJSON() ([]byte, error) {
5549	type NoMethod OrderPaymentMethod
5550	raw := NoMethod(*s)
5551	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5552}
5553
5554type OrderPickupDetails struct {
5555	// Address: Address of the pickup location where the shipment should be
5556	// sent. Note that `recipientName` in the address is the name of the
5557	// business at the pickup location.
5558	Address *OrderAddress `json:"address,omitempty"`
5559
5560	// Collectors: Collectors authorized to pick up shipment from the pickup
5561	// location.
5562	Collectors []*OrderPickupDetailsCollector `json:"collectors,omitempty"`
5563
5564	// LocationId: ID of the pickup location.
5565	LocationId string `json:"locationId,omitempty"`
5566
5567	// ForceSendFields is a list of field names (e.g. "Address") to
5568	// unconditionally include in API requests. By default, fields with
5569	// empty or default values are omitted from API requests. However, any
5570	// non-pointer, non-interface field appearing in ForceSendFields will be
5571	// sent to the server regardless of whether the field is empty or not.
5572	// This may be used to include empty fields in Patch requests.
5573	ForceSendFields []string `json:"-"`
5574
5575	// NullFields is a list of field names (e.g. "Address") to include in
5576	// API requests with the JSON null value. By default, fields with empty
5577	// values are omitted from API requests. However, any field with an
5578	// empty value appearing in NullFields will be sent to the server as
5579	// null. It is an error if a field in this list has a non-empty value.
5580	// This may be used to include null fields in Patch requests.
5581	NullFields []string `json:"-"`
5582}
5583
5584func (s *OrderPickupDetails) MarshalJSON() ([]byte, error) {
5585	type NoMethod OrderPickupDetails
5586	raw := NoMethod(*s)
5587	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5588}
5589
5590type OrderPickupDetailsCollector struct {
5591	// Name: Name of the person picking up the shipment.
5592	Name string `json:"name,omitempty"`
5593
5594	// PhoneNumber: Phone number of the person picking up the shipment.
5595	PhoneNumber string `json:"phoneNumber,omitempty"`
5596
5597	// ForceSendFields is a list of field names (e.g. "Name") to
5598	// unconditionally include in API requests. By default, fields with
5599	// empty or default values are omitted from API requests. However, any
5600	// non-pointer, non-interface field appearing in ForceSendFields will be
5601	// sent to the server regardless of whether the field is empty or not.
5602	// This may be used to include empty fields in Patch requests.
5603	ForceSendFields []string `json:"-"`
5604
5605	// NullFields is a list of field names (e.g. "Name") to include in API
5606	// requests with the JSON null value. By default, fields with empty
5607	// values are omitted from API requests. However, any field with an
5608	// empty value appearing in NullFields will be sent to the server as
5609	// null. It is an error if a field in this list has a non-empty value.
5610	// This may be used to include null fields in Patch requests.
5611	NullFields []string `json:"-"`
5612}
5613
5614func (s *OrderPickupDetailsCollector) MarshalJSON() ([]byte, error) {
5615	type NoMethod OrderPickupDetailsCollector
5616	raw := NoMethod(*s)
5617	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5618}
5619
5620type OrderRefund struct {
5621	// Actor: The actor that created the refund. Acceptable values are: -
5622	// "customer" - "googleBot" - "googleCustomerService" -
5623	// "googlePayments" - "googleSabre" - "merchant"
5624	Actor string `json:"actor,omitempty"`
5625
5626	// Amount: The amount that is refunded.
5627	Amount *Price `json:"amount,omitempty"`
5628
5629	// CreationDate: Date on which the item has been created, in ISO 8601
5630	// format.
5631	CreationDate string `json:"creationDate,omitempty"`
5632
5633	// Reason: The reason for the refund. Acceptable values are: -
5634	// "adjustment" - "autoPostInternal" -
5635	// "autoPostInvalidBillingAddress" - "autoPostNoInventory" -
5636	// "autoPostPriceError" - "autoPostUndeliverableShippingAddress" -
5637	// "couponAbuse" - "courtesyAdjustment" - "customerCanceled" -
5638	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
5639	// - "customerSupportRequested" - "deliveredLateByCarrier" -
5640	// "deliveredTooLate" - "expiredItem" -
5641	// "failToPushOrderGoogleError" - "failToPushOrderMerchantError" -
5642	// "failToPushOrderMerchantFulfillmentError" -
5643	// "failToPushOrderToMerchant" -
5644	// "failToPushOrderToMerchantOutOfStock" - "feeAdjustment" -
5645	// "invalidCoupon" - "lateShipmentCredit" -
5646	// "malformedShippingAddress" - "merchantDidNotShipOnTime" -
5647	// "noInventory" - "orderTimeout" - "other" - "paymentAbuse" -
5648	// "paymentDeclined" - "priceAdjustment" - "priceError" -
5649	// "productArrivedDamaged" - "productNotAsDescribed" -
5650	// "promoReallocation" - "qualityNotAsExpected" -
5651	// "returnRefundAbuse" - "shippingCostAdjustment" -
5652	// "shippingPriceError" - "taxAdjustment" - "taxError" -
5653	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
5654	// "wrongProductShipped"
5655	Reason string `json:"reason,omitempty"`
5656
5657	// ReasonText: The explanation of the reason.
5658	ReasonText string `json:"reasonText,omitempty"`
5659
5660	// ForceSendFields is a list of field names (e.g. "Actor") to
5661	// unconditionally include in API requests. By default, fields with
5662	// empty or default values are omitted from API requests. However, any
5663	// non-pointer, non-interface field appearing in ForceSendFields will be
5664	// sent to the server regardless of whether the field is empty or not.
5665	// This may be used to include empty fields in Patch requests.
5666	ForceSendFields []string `json:"-"`
5667
5668	// NullFields is a list of field names (e.g. "Actor") to include in API
5669	// requests with the JSON null value. By default, fields with empty
5670	// values are omitted from API requests. However, any field with an
5671	// empty value appearing in NullFields will be sent to the server as
5672	// null. It is an error if a field in this list has a non-empty value.
5673	// This may be used to include null fields in Patch requests.
5674	NullFields []string `json:"-"`
5675}
5676
5677func (s *OrderRefund) MarshalJSON() ([]byte, error) {
5678	type NoMethod OrderRefund
5679	raw := NoMethod(*s)
5680	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5681}
5682
5683// OrderReportDisbursement: Order disbursement. All methods require the
5684// payment analyst role.
5685type OrderReportDisbursement struct {
5686	// DisbursementAmount: The disbursement amount.
5687	DisbursementAmount *Price `json:"disbursementAmount,omitempty"`
5688
5689	// DisbursementCreationDate: The disbursement date, in ISO 8601 format.
5690	DisbursementCreationDate string `json:"disbursementCreationDate,omitempty"`
5691
5692	// DisbursementDate: The date the disbursement was initiated, in ISO
5693	// 8601 format.
5694	DisbursementDate string `json:"disbursementDate,omitempty"`
5695
5696	// DisbursementId: The ID of the disbursement.
5697	DisbursementId string `json:"disbursementId,omitempty"`
5698
5699	// MerchantId: The ID of the managing account.
5700	MerchantId uint64 `json:"merchantId,omitempty,string"`
5701
5702	// ForceSendFields is a list of field names (e.g. "DisbursementAmount")
5703	// to unconditionally include in API requests. By default, fields with
5704	// empty or default values are omitted from API requests. However, any
5705	// non-pointer, non-interface field appearing in ForceSendFields will be
5706	// sent to the server regardless of whether the field is empty or not.
5707	// This may be used to include empty fields in Patch requests.
5708	ForceSendFields []string `json:"-"`
5709
5710	// NullFields is a list of field names (e.g. "DisbursementAmount") to
5711	// include in API requests with the JSON null value. By default, fields
5712	// with empty values are omitted from API requests. However, any field
5713	// with an empty value appearing in NullFields will be sent to the
5714	// server as null. It is an error if a field in this list has a
5715	// non-empty value. This may be used to include null fields in Patch
5716	// requests.
5717	NullFields []string `json:"-"`
5718}
5719
5720func (s *OrderReportDisbursement) MarshalJSON() ([]byte, error) {
5721	type NoMethod OrderReportDisbursement
5722	raw := NoMethod(*s)
5723	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5724}
5725
5726type OrderReportTransaction struct {
5727	// DisbursementAmount: The disbursement amount.
5728	DisbursementAmount *Price `json:"disbursementAmount,omitempty"`
5729
5730	// DisbursementCreationDate: The date the disbursement was created, in
5731	// ISO 8601 format.
5732	DisbursementCreationDate string `json:"disbursementCreationDate,omitempty"`
5733
5734	// DisbursementDate: The date the disbursement was initiated, in ISO
5735	// 8601 format.
5736	DisbursementDate string `json:"disbursementDate,omitempty"`
5737
5738	// DisbursementId: The ID of the disbursement.
5739	DisbursementId string `json:"disbursementId,omitempty"`
5740
5741	// MerchantId: The ID of the managing account.
5742	MerchantId uint64 `json:"merchantId,omitempty,string"`
5743
5744	// MerchantOrderId: Merchant-provided ID of the order.
5745	MerchantOrderId string `json:"merchantOrderId,omitempty"`
5746
5747	// OrderId: The ID of the order.
5748	OrderId string `json:"orderId,omitempty"`
5749
5750	// ProductAmount: Total amount for the items.
5751	ProductAmount *Amount `json:"productAmount,omitempty"`
5752
5753	// ProductAmountWithRemittedTax: Total amount with remitted tax for the
5754	// items.
5755	ProductAmountWithRemittedTax *ProductAmount `json:"productAmountWithRemittedTax,omitempty"`
5756
5757	// TransactionDate: The date of the transaction, in ISO 8601 format.
5758	TransactionDate string `json:"transactionDate,omitempty"`
5759
5760	// ForceSendFields is a list of field names (e.g. "DisbursementAmount")
5761	// to unconditionally include in API requests. By default, fields with
5762	// empty or default values are omitted from API requests. However, any
5763	// non-pointer, non-interface field appearing in ForceSendFields will be
5764	// sent to the server regardless of whether the field is empty or not.
5765	// This may be used to include empty fields in Patch requests.
5766	ForceSendFields []string `json:"-"`
5767
5768	// NullFields is a list of field names (e.g. "DisbursementAmount") to
5769	// include in API requests with the JSON null value. By default, fields
5770	// with empty values are omitted from API requests. However, any field
5771	// with an empty value appearing in NullFields will be sent to the
5772	// server as null. It is an error if a field in this list has a
5773	// non-empty value. This may be used to include null fields in Patch
5774	// requests.
5775	NullFields []string `json:"-"`
5776}
5777
5778func (s *OrderReportTransaction) MarshalJSON() ([]byte, error) {
5779	type NoMethod OrderReportTransaction
5780	raw := NoMethod(*s)
5781	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5782}
5783
5784type OrderReturn struct {
5785	// Actor: The actor that created the refund. Acceptable values are: -
5786	// "customer" - "googleBot" - "googleCustomerService" -
5787	// "googlePayments" - "googleSabre" - "merchant"
5788	Actor string `json:"actor,omitempty"`
5789
5790	// CreationDate: Date on which the item has been created, in ISO 8601
5791	// format.
5792	CreationDate string `json:"creationDate,omitempty"`
5793
5794	// Quantity: Quantity that is returned.
5795	Quantity int64 `json:"quantity,omitempty"`
5796
5797	// Reason: The reason for the return. Acceptable values are: -
5798	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
5799	// - "deliveredTooLate" - "expiredItem" - "invalidCoupon" -
5800	// "malformedShippingAddress" - "other" - "productArrivedDamaged"
5801	// - "productNotAsDescribed" - "qualityNotAsExpected" -
5802	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
5803	// "wrongProductShipped"
5804	Reason string `json:"reason,omitempty"`
5805
5806	// ReasonText: The explanation of the reason.
5807	ReasonText string `json:"reasonText,omitempty"`
5808
5809	// ForceSendFields is a list of field names (e.g. "Actor") to
5810	// unconditionally include in API requests. By default, fields with
5811	// empty or default values are omitted from API requests. However, any
5812	// non-pointer, non-interface field appearing in ForceSendFields will be
5813	// sent to the server regardless of whether the field is empty or not.
5814	// This may be used to include empty fields in Patch requests.
5815	ForceSendFields []string `json:"-"`
5816
5817	// NullFields is a list of field names (e.g. "Actor") to include in API
5818	// requests with the JSON null value. By default, fields with empty
5819	// values are omitted from API requests. However, any field with an
5820	// empty value appearing in NullFields will be sent to the server as
5821	// null. It is an error if a field in this list has a non-empty value.
5822	// This may be used to include null fields in Patch requests.
5823	NullFields []string `json:"-"`
5824}
5825
5826func (s *OrderReturn) MarshalJSON() ([]byte, error) {
5827	type NoMethod OrderReturn
5828	raw := NoMethod(*s)
5829	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5830}
5831
5832type OrderShipment struct {
5833	// Carrier: The carrier handling the shipment. For supported carriers,
5834	// Google includes the carrier name and tracking URL in emails to
5835	// customers. For select supported carriers, Google also automatically
5836	// updates the shipment status based on the provided shipment ID.
5837	// *Note:* You can also use unsupported carriers, but emails to
5838	// customers will not include the carrier name or tracking URL, and
5839	// there will be no automatic order status updates. Supported carriers
5840	// for US are: - "ups" (United Parcel Service) *automatic status
5841	// updates* - "usps" (United States Postal Service) *automatic status
5842	// updates* - "fedex" (FedEx) *automatic status updates * - "dhl"
5843	// (DHL eCommerce) *automatic status updates* (US only) - "ontrac"
5844	// (OnTrac) *automatic status updates * - "dhl express" (DHL Express)
5845	// - "deliv" (Deliv) - "dynamex" (TForce) - "lasership"
5846	// (LaserShip) - "mpx" (Military Parcel Xpress) - "uds" (United
5847	// Delivery Service) - "efw" (Estes Forwarding Worldwide) - "jd
5848	// logistics" (JD Logistics) - "yunexpress" (YunExpress) - "china
5849	// post" (China Post) - "china ems" (China Post Express Mail Service)
5850	// - "singapore post" (Singapore Post) - "pos malaysia" (Pos
5851	// Malaysia) - "postnl" (PostNL) - "ptt" (PTT Turkish Post) -
5852	// "eub" (ePacket) - "chukou1" (Chukou1 Logistics) - "bestex"
5853	// (Best Express) - "canada post" (Canada Post) - "purolator"
5854	// (Purolator) - "canpar" (Canpar) - "india post" (India Post) -
5855	// "blue dart" (Blue Dart) - "delhivery" (Delhivery) - "dtdc"
5856	// (DTDC) - "tpc india" (TPC India) Supported carriers for FR are: -
5857	// "la poste" (La Poste) *automatic status updates * - "colissimo"
5858	// (Colissimo by La Poste) *automatic status updates* - "ups" (United
5859	// Parcel Service) *automatic status updates * - "chronopost"
5860	// (Chronopost by La Poste) - "gls" (General Logistics Systems France)
5861	// - "dpd" (DPD Group by GeoPost) - "bpost" (Belgian Post Group) -
5862	// "colis prive" (Colis Privé) - "boxtal" (Boxtal) - "geodis"
5863	// (GEODIS) - "tnt" (TNT) - "db schenker" (DB Schenker) - "aramex"
5864	// (Aramex)
5865	Carrier string `json:"carrier,omitempty"`
5866
5867	// CreationDate: Date on which the shipment has been created, in ISO
5868	// 8601 format.
5869	CreationDate string `json:"creationDate,omitempty"`
5870
5871	// DeliveryDate: Date on which the shipment has been delivered, in ISO
5872	// 8601 format. Present only if `status` is `delivered`
5873	DeliveryDate string `json:"deliveryDate,omitempty"`
5874
5875	// Id: The ID of the shipment.
5876	Id string `json:"id,omitempty"`
5877
5878	// LineItems: The line items that are shipped.
5879	LineItems []*OrderShipmentLineItemShipment `json:"lineItems,omitempty"`
5880
5881	// ScheduledDeliveryDetails: Delivery details of the shipment if
5882	// scheduling is needed.
5883	ScheduledDeliveryDetails *OrderShipmentScheduledDeliveryDetails `json:"scheduledDeliveryDetails,omitempty"`
5884
5885	// Status: The status of the shipment. Acceptable values are: -
5886	// "delivered" - "readyForPickup" - "shipped" - "undeliverable"
5887	Status string `json:"status,omitempty"`
5888
5889	// TrackingId: The tracking ID for the shipment.
5890	TrackingId string `json:"trackingId,omitempty"`
5891
5892	// ForceSendFields is a list of field names (e.g. "Carrier") to
5893	// unconditionally include in API requests. By default, fields with
5894	// empty or default values are omitted from API requests. However, any
5895	// non-pointer, non-interface field appearing in ForceSendFields will be
5896	// sent to the server regardless of whether the field is empty or not.
5897	// This may be used to include empty fields in Patch requests.
5898	ForceSendFields []string `json:"-"`
5899
5900	// NullFields is a list of field names (e.g. "Carrier") to include in
5901	// API requests with the JSON null value. By default, fields with empty
5902	// values are omitted from API requests. However, any field with an
5903	// empty value appearing in NullFields will be sent to the server as
5904	// null. It is an error if a field in this list has a non-empty value.
5905	// This may be used to include null fields in Patch requests.
5906	NullFields []string `json:"-"`
5907}
5908
5909func (s *OrderShipment) MarshalJSON() ([]byte, error) {
5910	type NoMethod OrderShipment
5911	raw := NoMethod(*s)
5912	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5913}
5914
5915type OrderShipmentLineItemShipment struct {
5916	// LineItemId: The ID of the line item that is shipped. This value is
5917	// assigned by Google when an order is created. Either lineItemId or
5918	// productId is required.
5919	LineItemId string `json:"lineItemId,omitempty"`
5920
5921	// ProductId: The ID of the product to ship. This is the REST ID used in
5922	// the products service. Either lineItemId or productId is required.
5923	ProductId string `json:"productId,omitempty"`
5924
5925	// Quantity: The quantity that is shipped.
5926	Quantity int64 `json:"quantity,omitempty"`
5927
5928	// ForceSendFields is a list of field names (e.g. "LineItemId") to
5929	// unconditionally include in API requests. By default, fields with
5930	// empty or default values are omitted from API requests. However, any
5931	// non-pointer, non-interface field appearing in ForceSendFields will be
5932	// sent to the server regardless of whether the field is empty or not.
5933	// This may be used to include empty fields in Patch requests.
5934	ForceSendFields []string `json:"-"`
5935
5936	// NullFields is a list of field names (e.g. "LineItemId") to include in
5937	// API requests with the JSON null value. By default, fields with empty
5938	// values are omitted from API requests. However, any field with an
5939	// empty value appearing in NullFields will be sent to the server as
5940	// null. It is an error if a field in this list has a non-empty value.
5941	// This may be used to include null fields in Patch requests.
5942	NullFields []string `json:"-"`
5943}
5944
5945func (s *OrderShipmentLineItemShipment) MarshalJSON() ([]byte, error) {
5946	type NoMethod OrderShipmentLineItemShipment
5947	raw := NoMethod(*s)
5948	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5949}
5950
5951type OrderShipmentScheduledDeliveryDetails struct {
5952	// CarrierPhoneNumber: The phone number of the carrier fulfilling the
5953	// delivery. The phone number is formatted as the international notation
5954	// in ITU-T Recommendation E.123 (e.g., "+41 44 668 1800").
5955	CarrierPhoneNumber string `json:"carrierPhoneNumber,omitempty"`
5956
5957	// ScheduledDate: The date a shipment is scheduled for delivery, in ISO
5958	// 8601 format.
5959	ScheduledDate string `json:"scheduledDate,omitempty"`
5960
5961	// ForceSendFields is a list of field names (e.g. "CarrierPhoneNumber")
5962	// to unconditionally include in API requests. By default, fields with
5963	// empty or default values are omitted from API requests. However, any
5964	// non-pointer, non-interface field appearing in ForceSendFields will be
5965	// sent to the server regardless of whether the field is empty or not.
5966	// This may be used to include empty fields in Patch requests.
5967	ForceSendFields []string `json:"-"`
5968
5969	// NullFields is a list of field names (e.g. "CarrierPhoneNumber") to
5970	// include in API requests with the JSON null value. By default, fields
5971	// with empty values are omitted from API requests. However, any field
5972	// with an empty value appearing in NullFields will be sent to the
5973	// server as null. It is an error if a field in this list has a
5974	// non-empty value. This may be used to include null fields in Patch
5975	// requests.
5976	NullFields []string `json:"-"`
5977}
5978
5979func (s *OrderShipmentScheduledDeliveryDetails) MarshalJSON() ([]byte, error) {
5980	type NoMethod OrderShipmentScheduledDeliveryDetails
5981	raw := NoMethod(*s)
5982	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5983}
5984
5985type OrderinvoicesCreateChargeInvoiceRequest struct {
5986	// InvoiceId: [required] The ID of the invoice.
5987	InvoiceId string `json:"invoiceId,omitempty"`
5988
5989	// InvoiceSummary: [required] Invoice summary.
5990	InvoiceSummary *InvoiceSummary `json:"invoiceSummary,omitempty"`
5991
5992	// LineItemInvoices: [required] Invoice details per line item.
5993	LineItemInvoices []*ShipmentInvoiceLineItemInvoice `json:"lineItemInvoices,omitempty"`
5994
5995	// OperationId: [required] The ID of the operation, unique across all
5996	// operations for a given order.
5997	OperationId string `json:"operationId,omitempty"`
5998
5999	// ShipmentGroupId: [required] ID of the shipment group. It is assigned
6000	// by the merchant in the `shipLineItems` method and is used to group
6001	// multiple line items that have the same kind of shipping charges.
6002	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
6003
6004	// ForceSendFields is a list of field names (e.g. "InvoiceId") to
6005	// unconditionally include in API requests. By default, fields with
6006	// empty or default values are omitted from API requests. However, any
6007	// non-pointer, non-interface field appearing in ForceSendFields will be
6008	// sent to the server regardless of whether the field is empty or not.
6009	// This may be used to include empty fields in Patch requests.
6010	ForceSendFields []string `json:"-"`
6011
6012	// NullFields is a list of field names (e.g. "InvoiceId") to include in
6013	// API requests with the JSON null value. By default, fields with empty
6014	// values are omitted from API requests. However, any field with an
6015	// empty value appearing in NullFields will be sent to the server as
6016	// null. It is an error if a field in this list has a non-empty value.
6017	// This may be used to include null fields in Patch requests.
6018	NullFields []string `json:"-"`
6019}
6020
6021func (s *OrderinvoicesCreateChargeInvoiceRequest) MarshalJSON() ([]byte, error) {
6022	type NoMethod OrderinvoicesCreateChargeInvoiceRequest
6023	raw := NoMethod(*s)
6024	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6025}
6026
6027type OrderinvoicesCreateChargeInvoiceResponse struct {
6028	// ExecutionStatus: The status of the execution. Acceptable values are:
6029	// - "duplicate" - "executed"
6030	ExecutionStatus string `json:"executionStatus,omitempty"`
6031
6032	// Kind: Identifies what kind of resource this is. Value: the fixed
6033	// string "content#orderinvoicesCreateChargeInvoiceResponse".
6034	Kind string `json:"kind,omitempty"`
6035
6036	// ServerResponse contains the HTTP response code and headers from the
6037	// server.
6038	googleapi.ServerResponse `json:"-"`
6039
6040	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
6041	// unconditionally include in API requests. By default, fields with
6042	// empty or default values are omitted from API requests. However, any
6043	// non-pointer, non-interface field appearing in ForceSendFields will be
6044	// sent to the server regardless of whether the field is empty or not.
6045	// This may be used to include empty fields in Patch requests.
6046	ForceSendFields []string `json:"-"`
6047
6048	// NullFields is a list of field names (e.g. "ExecutionStatus") to
6049	// include in API requests with the JSON null value. By default, fields
6050	// with empty values are omitted from API requests. However, any field
6051	// with an empty value appearing in NullFields will be sent to the
6052	// server as null. It is an error if a field in this list has a
6053	// non-empty value. This may be used to include null fields in Patch
6054	// requests.
6055	NullFields []string `json:"-"`
6056}
6057
6058func (s *OrderinvoicesCreateChargeInvoiceResponse) MarshalJSON() ([]byte, error) {
6059	type NoMethod OrderinvoicesCreateChargeInvoiceResponse
6060	raw := NoMethod(*s)
6061	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6062}
6063
6064type OrderinvoicesCreateRefundInvoiceRequest struct {
6065	// InvoiceId: [required] The ID of the invoice.
6066	InvoiceId string `json:"invoiceId,omitempty"`
6067
6068	// OperationId: [required] The ID of the operation, unique across all
6069	// operations for a given order.
6070	OperationId string `json:"operationId,omitempty"`
6071
6072	// RefundOnlyOption: Option to create a refund-only invoice. Exactly one
6073	// of `refundOnlyOption` or `returnOption` must be provided.
6074	RefundOnlyOption *OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceRefundOption `json:"refundOnlyOption,omitempty"`
6075
6076	// ReturnOption: Option to create an invoice for a refund and mark all
6077	// items within the invoice as returned. Exactly one of
6078	// `refundOnlyOption` or `returnOption` must be provided.
6079	ReturnOption *OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceReturnOption `json:"returnOption,omitempty"`
6080
6081	// ShipmentInvoices: Invoice details for different shipment groups.
6082	ShipmentInvoices []*ShipmentInvoice `json:"shipmentInvoices,omitempty"`
6083
6084	// ForceSendFields is a list of field names (e.g. "InvoiceId") to
6085	// unconditionally include in API requests. By default, fields with
6086	// empty or default values are omitted from API requests. However, any
6087	// non-pointer, non-interface field appearing in ForceSendFields will be
6088	// sent to the server regardless of whether the field is empty or not.
6089	// This may be used to include empty fields in Patch requests.
6090	ForceSendFields []string `json:"-"`
6091
6092	// NullFields is a list of field names (e.g. "InvoiceId") to include in
6093	// API requests with the JSON null value. By default, fields with empty
6094	// values are omitted from API requests. However, any field with an
6095	// empty value appearing in NullFields will be sent to the server as
6096	// null. It is an error if a field in this list has a non-empty value.
6097	// This may be used to include null fields in Patch requests.
6098	NullFields []string `json:"-"`
6099}
6100
6101func (s *OrderinvoicesCreateRefundInvoiceRequest) MarshalJSON() ([]byte, error) {
6102	type NoMethod OrderinvoicesCreateRefundInvoiceRequest
6103	raw := NoMethod(*s)
6104	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6105}
6106
6107type OrderinvoicesCreateRefundInvoiceResponse struct {
6108	// ExecutionStatus: The status of the execution. Acceptable values are:
6109	// - "duplicate" - "executed"
6110	ExecutionStatus string `json:"executionStatus,omitempty"`
6111
6112	// Kind: Identifies what kind of resource this is. Value: the fixed
6113	// string "content#orderinvoicesCreateRefundInvoiceResponse".
6114	Kind string `json:"kind,omitempty"`
6115
6116	// ServerResponse contains the HTTP response code and headers from the
6117	// server.
6118	googleapi.ServerResponse `json:"-"`
6119
6120	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
6121	// unconditionally include in API requests. By default, fields with
6122	// empty or default values are omitted from API requests. However, any
6123	// non-pointer, non-interface field appearing in ForceSendFields will be
6124	// sent to the server regardless of whether the field is empty or not.
6125	// This may be used to include empty fields in Patch requests.
6126	ForceSendFields []string `json:"-"`
6127
6128	// NullFields is a list of field names (e.g. "ExecutionStatus") to
6129	// include in API requests with the JSON null value. By default, fields
6130	// with empty values are omitted from API requests. However, any field
6131	// with an empty value appearing in NullFields will be sent to the
6132	// server as null. It is an error if a field in this list has a
6133	// non-empty value. This may be used to include null fields in Patch
6134	// requests.
6135	NullFields []string `json:"-"`
6136}
6137
6138func (s *OrderinvoicesCreateRefundInvoiceResponse) MarshalJSON() ([]byte, error) {
6139	type NoMethod OrderinvoicesCreateRefundInvoiceResponse
6140	raw := NoMethod(*s)
6141	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6142}
6143
6144type OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceRefundOption struct {
6145	// Description: Optional description of the refund reason.
6146	Description string `json:"description,omitempty"`
6147
6148	// Reason: [required] Reason for the refund. Acceptable values are: -
6149	// "adjustment" - "autoPostInternal" -
6150	// "autoPostInvalidBillingAddress" - "autoPostNoInventory" -
6151	// "autoPostPriceError" - "autoPostUndeliverableShippingAddress" -
6152	// "couponAbuse" - "courtesyAdjustment" - "customerCanceled" -
6153	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
6154	// - "customerSupportRequested" - "deliveredLateByCarrier" -
6155	// "deliveredTooLate" - "expiredItem" -
6156	// "failToPushOrderGoogleError" - "failToPushOrderMerchantError" -
6157	// "failToPushOrderMerchantFulfillmentError" -
6158	// "failToPushOrderToMerchant" -
6159	// "failToPushOrderToMerchantOutOfStock" - "feeAdjustment" -
6160	// "invalidCoupon" - "lateShipmentCredit" -
6161	// "malformedShippingAddress" - "merchantDidNotShipOnTime" -
6162	// "noInventory" - "orderTimeout" - "other" - "paymentAbuse" -
6163	// "paymentDeclined" - "priceAdjustment" - "priceError" -
6164	// "productArrivedDamaged" - "productNotAsDescribed" -
6165	// "promoReallocation" - "qualityNotAsExpected" -
6166	// "returnRefundAbuse" - "shippingCostAdjustment" -
6167	// "shippingPriceError" - "taxAdjustment" - "taxError" -
6168	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
6169	// "wrongProductShipped"
6170	Reason string `json:"reason,omitempty"`
6171
6172	// ForceSendFields is a list of field names (e.g. "Description") to
6173	// unconditionally include in API requests. By default, fields with
6174	// empty or default values are omitted from API requests. However, any
6175	// non-pointer, non-interface field appearing in ForceSendFields will be
6176	// sent to the server regardless of whether the field is empty or not.
6177	// This may be used to include empty fields in Patch requests.
6178	ForceSendFields []string `json:"-"`
6179
6180	// NullFields is a list of field names (e.g. "Description") to include
6181	// in API requests with the JSON null value. By default, fields with
6182	// empty values are omitted from API requests. However, any field with
6183	// an empty value appearing in NullFields will be sent to the server as
6184	// null. It is an error if a field in this list has a non-empty value.
6185	// This may be used to include null fields in Patch requests.
6186	NullFields []string `json:"-"`
6187}
6188
6189func (s *OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceRefundOption) MarshalJSON() ([]byte, error) {
6190	type NoMethod OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceRefundOption
6191	raw := NoMethod(*s)
6192	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6193}
6194
6195type OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceReturnOption struct {
6196	// Description: Optional description of the return reason.
6197	Description string `json:"description,omitempty"`
6198
6199	// Reason: [required] Reason for the return. Acceptable values are: -
6200	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
6201	// - "deliveredTooLate" - "expiredItem" - "invalidCoupon" -
6202	// "malformedShippingAddress" - "other" - "productArrivedDamaged"
6203	// - "productNotAsDescribed" - "qualityNotAsExpected" -
6204	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
6205	// "wrongProductShipped"
6206	Reason string `json:"reason,omitempty"`
6207
6208	// ForceSendFields is a list of field names (e.g. "Description") to
6209	// unconditionally include in API requests. By default, fields with
6210	// empty or default values are omitted from API requests. However, any
6211	// non-pointer, non-interface field appearing in ForceSendFields will be
6212	// sent to the server regardless of whether the field is empty or not.
6213	// This may be used to include empty fields in Patch requests.
6214	ForceSendFields []string `json:"-"`
6215
6216	// NullFields is a list of field names (e.g. "Description") to include
6217	// in API requests with the JSON null value. By default, fields with
6218	// empty values are omitted from API requests. However, any field with
6219	// an empty value appearing in NullFields will be sent to the server as
6220	// null. It is an error if a field in this list has a non-empty value.
6221	// This may be used to include null fields in Patch requests.
6222	NullFields []string `json:"-"`
6223}
6224
6225func (s *OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceReturnOption) MarshalJSON() ([]byte, error) {
6226	type NoMethod OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceReturnOption
6227	raw := NoMethod(*s)
6228	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6229}
6230
6231type OrderreportsListDisbursementsResponse struct {
6232	// Disbursements: The list of disbursements.
6233	Disbursements []*OrderReportDisbursement `json:"disbursements,omitempty"`
6234
6235	// Kind: Identifies what kind of resource this is. Value: the fixed
6236	// string "content#orderreportsListDisbursementsResponse".
6237	Kind string `json:"kind,omitempty"`
6238
6239	// NextPageToken: The token for the retrieval of the next page of
6240	// disbursements.
6241	NextPageToken string `json:"nextPageToken,omitempty"`
6242
6243	// ServerResponse contains the HTTP response code and headers from the
6244	// server.
6245	googleapi.ServerResponse `json:"-"`
6246
6247	// ForceSendFields is a list of field names (e.g. "Disbursements") to
6248	// unconditionally include in API requests. By default, fields with
6249	// empty or default values are omitted from API requests. However, any
6250	// non-pointer, non-interface field appearing in ForceSendFields will be
6251	// sent to the server regardless of whether the field is empty or not.
6252	// This may be used to include empty fields in Patch requests.
6253	ForceSendFields []string `json:"-"`
6254
6255	// NullFields is a list of field names (e.g. "Disbursements") to include
6256	// in API requests with the JSON null value. By default, fields with
6257	// empty values are omitted from API requests. However, any field with
6258	// an empty value appearing in NullFields will be sent to the server as
6259	// null. It is an error if a field in this list has a non-empty value.
6260	// This may be used to include null fields in Patch requests.
6261	NullFields []string `json:"-"`
6262}
6263
6264func (s *OrderreportsListDisbursementsResponse) MarshalJSON() ([]byte, error) {
6265	type NoMethod OrderreportsListDisbursementsResponse
6266	raw := NoMethod(*s)
6267	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6268}
6269
6270type OrderreportsListTransactionsResponse struct {
6271	// Kind: Identifies what kind of resource this is. Value: the fixed
6272	// string "content#orderreportsListTransactionsResponse".
6273	Kind string `json:"kind,omitempty"`
6274
6275	// NextPageToken: The token for the retrieval of the next page of
6276	// transactions.
6277	NextPageToken string `json:"nextPageToken,omitempty"`
6278
6279	// Transactions: The list of transactions.
6280	Transactions []*OrderReportTransaction `json:"transactions,omitempty"`
6281
6282	// ServerResponse contains the HTTP response code and headers from the
6283	// server.
6284	googleapi.ServerResponse `json:"-"`
6285
6286	// ForceSendFields is a list of field names (e.g. "Kind") to
6287	// unconditionally include in API requests. By default, fields with
6288	// empty or default values are omitted from API requests. However, any
6289	// non-pointer, non-interface field appearing in ForceSendFields will be
6290	// sent to the server regardless of whether the field is empty or not.
6291	// This may be used to include empty fields in Patch requests.
6292	ForceSendFields []string `json:"-"`
6293
6294	// NullFields is a list of field names (e.g. "Kind") to include in API
6295	// requests with the JSON null value. By default, fields with empty
6296	// values are omitted from API requests. However, any field with an
6297	// empty value appearing in NullFields will be sent to the server as
6298	// null. It is an error if a field in this list has a non-empty value.
6299	// This may be used to include null fields in Patch requests.
6300	NullFields []string `json:"-"`
6301}
6302
6303func (s *OrderreportsListTransactionsResponse) MarshalJSON() ([]byte, error) {
6304	type NoMethod OrderreportsListTransactionsResponse
6305	raw := NoMethod(*s)
6306	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6307}
6308
6309type OrderreturnsListResponse struct {
6310	// Kind: Identifies what kind of resource this is. Value: the fixed
6311	// string "content#orderreturnsListResponse".
6312	Kind string `json:"kind,omitempty"`
6313
6314	// NextPageToken: The token for the retrieval of the next page of
6315	// returns.
6316	NextPageToken string `json:"nextPageToken,omitempty"`
6317
6318	Resources []*MerchantOrderReturn `json:"resources,omitempty"`
6319
6320	// ServerResponse contains the HTTP response code and headers from the
6321	// server.
6322	googleapi.ServerResponse `json:"-"`
6323
6324	// ForceSendFields is a list of field names (e.g. "Kind") to
6325	// unconditionally include in API requests. By default, fields with
6326	// empty or default values are omitted from API requests. However, any
6327	// non-pointer, non-interface field appearing in ForceSendFields will be
6328	// sent to the server regardless of whether the field is empty or not.
6329	// This may be used to include empty fields in Patch requests.
6330	ForceSendFields []string `json:"-"`
6331
6332	// NullFields is a list of field names (e.g. "Kind") to include in API
6333	// requests with the JSON null value. By default, fields with empty
6334	// values are omitted from API requests. However, any field with an
6335	// empty value appearing in NullFields will be sent to the server as
6336	// null. It is an error if a field in this list has a non-empty value.
6337	// This may be used to include null fields in Patch requests.
6338	NullFields []string `json:"-"`
6339}
6340
6341func (s *OrderreturnsListResponse) MarshalJSON() ([]byte, error) {
6342	type NoMethod OrderreturnsListResponse
6343	raw := NoMethod(*s)
6344	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6345}
6346
6347type OrdersAcknowledgeRequest struct {
6348	// OperationId: The ID of the operation. Unique across all operations
6349	// for a given order.
6350	OperationId string `json:"operationId,omitempty"`
6351
6352	// ForceSendFields is a list of field names (e.g. "OperationId") to
6353	// unconditionally include in API requests. By default, fields with
6354	// empty or default values are omitted from API requests. However, any
6355	// non-pointer, non-interface field appearing in ForceSendFields will be
6356	// sent to the server regardless of whether the field is empty or not.
6357	// This may be used to include empty fields in Patch requests.
6358	ForceSendFields []string `json:"-"`
6359
6360	// NullFields is a list of field names (e.g. "OperationId") to include
6361	// in API requests with the JSON null value. By default, fields with
6362	// empty values are omitted from API requests. However, any field with
6363	// an empty value appearing in NullFields will be sent to the server as
6364	// null. It is an error if a field in this list has a non-empty value.
6365	// This may be used to include null fields in Patch requests.
6366	NullFields []string `json:"-"`
6367}
6368
6369func (s *OrdersAcknowledgeRequest) MarshalJSON() ([]byte, error) {
6370	type NoMethod OrdersAcknowledgeRequest
6371	raw := NoMethod(*s)
6372	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6373}
6374
6375type OrdersAcknowledgeResponse struct {
6376	// ExecutionStatus: The status of the execution. Acceptable values are:
6377	// - "duplicate" - "executed"
6378	ExecutionStatus string `json:"executionStatus,omitempty"`
6379
6380	// Kind: Identifies what kind of resource this is. Value: the fixed
6381	// string "content#ordersAcknowledgeResponse".
6382	Kind string `json:"kind,omitempty"`
6383
6384	// ServerResponse contains the HTTP response code and headers from the
6385	// server.
6386	googleapi.ServerResponse `json:"-"`
6387
6388	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
6389	// unconditionally include in API requests. By default, fields with
6390	// empty or default values are omitted from API requests. However, any
6391	// non-pointer, non-interface field appearing in ForceSendFields will be
6392	// sent to the server regardless of whether the field is empty or not.
6393	// This may be used to include empty fields in Patch requests.
6394	ForceSendFields []string `json:"-"`
6395
6396	// NullFields is a list of field names (e.g. "ExecutionStatus") to
6397	// include in API requests with the JSON null value. By default, fields
6398	// with empty values are omitted from API requests. However, any field
6399	// with an empty value appearing in NullFields will be sent to the
6400	// server as null. It is an error if a field in this list has a
6401	// non-empty value. This may be used to include null fields in Patch
6402	// requests.
6403	NullFields []string `json:"-"`
6404}
6405
6406func (s *OrdersAcknowledgeResponse) MarshalJSON() ([]byte, error) {
6407	type NoMethod OrdersAcknowledgeResponse
6408	raw := NoMethod(*s)
6409	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6410}
6411
6412type OrdersAdvanceTestOrderResponse struct {
6413	// Kind: Identifies what kind of resource this is. Value: the fixed
6414	// string "content#ordersAdvanceTestOrderResponse".
6415	Kind string `json:"kind,omitempty"`
6416
6417	// ServerResponse contains the HTTP response code and headers from the
6418	// server.
6419	googleapi.ServerResponse `json:"-"`
6420
6421	// ForceSendFields is a list of field names (e.g. "Kind") to
6422	// unconditionally include in API requests. By default, fields with
6423	// empty or default values are omitted from API requests. However, any
6424	// non-pointer, non-interface field appearing in ForceSendFields will be
6425	// sent to the server regardless of whether the field is empty or not.
6426	// This may be used to include empty fields in Patch requests.
6427	ForceSendFields []string `json:"-"`
6428
6429	// NullFields is a list of field names (e.g. "Kind") to include in API
6430	// requests with the JSON null value. By default, fields with empty
6431	// values are omitted from API requests. However, any field with an
6432	// empty value appearing in NullFields will be sent to the server as
6433	// null. It is an error if a field in this list has a non-empty value.
6434	// This may be used to include null fields in Patch requests.
6435	NullFields []string `json:"-"`
6436}
6437
6438func (s *OrdersAdvanceTestOrderResponse) MarshalJSON() ([]byte, error) {
6439	type NoMethod OrdersAdvanceTestOrderResponse
6440	raw := NoMethod(*s)
6441	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6442}
6443
6444type OrdersCancelLineItemRequest struct {
6445	// Amount: Deprecated. Please use amountPretax and amountTax instead.
6446	Amount *Price `json:"amount,omitempty"`
6447
6448	// AmountPretax: Amount to refund for the cancelation. Optional. If not
6449	// set, Google will calculate the default based on the price and tax of
6450	// the items involved. The amount must not be larger than the net amount
6451	// left on the order.
6452	AmountPretax *Price `json:"amountPretax,omitempty"`
6453
6454	// AmountTax: Tax amount that corresponds to cancellation amount in
6455	// amountPretax. Optional, but if filled, then amountPretax must be set.
6456	// Calculated automatically if not provided.
6457	AmountTax *Price `json:"amountTax,omitempty"`
6458
6459	// LineItemId: The ID of the line item to cancel. Either lineItemId or
6460	// productId is required.
6461	LineItemId string `json:"lineItemId,omitempty"`
6462
6463	// OperationId: The ID of the operation. Unique across all operations
6464	// for a given order.
6465	OperationId string `json:"operationId,omitempty"`
6466
6467	// ProductId: The ID of the product to cancel. This is the REST ID used
6468	// in the products service. Either lineItemId or productId is required.
6469	ProductId string `json:"productId,omitempty"`
6470
6471	// Quantity: The quantity to cancel.
6472	Quantity int64 `json:"quantity,omitempty"`
6473
6474	// Reason: The reason for the cancellation. Acceptable values are: -
6475	// "customerInitiatedCancel" - "invalidCoupon" -
6476	// "malformedShippingAddress" - "noInventory" - "other" -
6477	// "priceError" - "shippingPriceError" - "taxError" -
6478	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress"
6479	Reason string `json:"reason,omitempty"`
6480
6481	// ReasonText: The explanation of the reason.
6482	ReasonText string `json:"reasonText,omitempty"`
6483
6484	// ForceSendFields is a list of field names (e.g. "Amount") to
6485	// unconditionally include in API requests. By default, fields with
6486	// empty or default values are omitted from API requests. However, any
6487	// non-pointer, non-interface field appearing in ForceSendFields will be
6488	// sent to the server regardless of whether the field is empty or not.
6489	// This may be used to include empty fields in Patch requests.
6490	ForceSendFields []string `json:"-"`
6491
6492	// NullFields is a list of field names (e.g. "Amount") to include in API
6493	// requests with the JSON null value. By default, fields with empty
6494	// values are omitted from API requests. However, any field with an
6495	// empty value appearing in NullFields will be sent to the server as
6496	// null. It is an error if a field in this list has a non-empty value.
6497	// This may be used to include null fields in Patch requests.
6498	NullFields []string `json:"-"`
6499}
6500
6501func (s *OrdersCancelLineItemRequest) MarshalJSON() ([]byte, error) {
6502	type NoMethod OrdersCancelLineItemRequest
6503	raw := NoMethod(*s)
6504	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6505}
6506
6507type OrdersCancelLineItemResponse struct {
6508	// ExecutionStatus: The status of the execution. Acceptable values are:
6509	// - "duplicate" - "executed"
6510	ExecutionStatus string `json:"executionStatus,omitempty"`
6511
6512	// Kind: Identifies what kind of resource this is. Value: the fixed
6513	// string "content#ordersCancelLineItemResponse".
6514	Kind string `json:"kind,omitempty"`
6515
6516	// ServerResponse contains the HTTP response code and headers from the
6517	// server.
6518	googleapi.ServerResponse `json:"-"`
6519
6520	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
6521	// unconditionally include in API requests. By default, fields with
6522	// empty or default values are omitted from API requests. However, any
6523	// non-pointer, non-interface field appearing in ForceSendFields will be
6524	// sent to the server regardless of whether the field is empty or not.
6525	// This may be used to include empty fields in Patch requests.
6526	ForceSendFields []string `json:"-"`
6527
6528	// NullFields is a list of field names (e.g. "ExecutionStatus") to
6529	// include in API requests with the JSON null value. By default, fields
6530	// with empty values are omitted from API requests. However, any field
6531	// with an empty value appearing in NullFields will be sent to the
6532	// server as null. It is an error if a field in this list has a
6533	// non-empty value. This may be used to include null fields in Patch
6534	// requests.
6535	NullFields []string `json:"-"`
6536}
6537
6538func (s *OrdersCancelLineItemResponse) MarshalJSON() ([]byte, error) {
6539	type NoMethod OrdersCancelLineItemResponse
6540	raw := NoMethod(*s)
6541	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6542}
6543
6544type OrdersCancelRequest struct {
6545	// OperationId: The ID of the operation. Unique across all operations
6546	// for a given order.
6547	OperationId string `json:"operationId,omitempty"`
6548
6549	// Reason: The reason for the cancellation. Acceptable values are: -
6550	// "customerInitiatedCancel" - "invalidCoupon" -
6551	// "malformedShippingAddress" - "noInventory" - "other" -
6552	// "priceError" - "shippingPriceError" - "taxError" -
6553	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress"
6554	Reason string `json:"reason,omitempty"`
6555
6556	// ReasonText: The explanation of the reason.
6557	ReasonText string `json:"reasonText,omitempty"`
6558
6559	// ForceSendFields is a list of field names (e.g. "OperationId") to
6560	// unconditionally include in API requests. By default, fields with
6561	// empty or default values are omitted from API requests. However, any
6562	// non-pointer, non-interface field appearing in ForceSendFields will be
6563	// sent to the server regardless of whether the field is empty or not.
6564	// This may be used to include empty fields in Patch requests.
6565	ForceSendFields []string `json:"-"`
6566
6567	// NullFields is a list of field names (e.g. "OperationId") to include
6568	// in API requests with the JSON null value. By default, fields with
6569	// empty values are omitted from API requests. However, any field with
6570	// an empty value appearing in NullFields will be sent to the server as
6571	// null. It is an error if a field in this list has a non-empty value.
6572	// This may be used to include null fields in Patch requests.
6573	NullFields []string `json:"-"`
6574}
6575
6576func (s *OrdersCancelRequest) MarshalJSON() ([]byte, error) {
6577	type NoMethod OrdersCancelRequest
6578	raw := NoMethod(*s)
6579	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6580}
6581
6582type OrdersCancelResponse struct {
6583	// ExecutionStatus: The status of the execution. Acceptable values are:
6584	// - "duplicate" - "executed"
6585	ExecutionStatus string `json:"executionStatus,omitempty"`
6586
6587	// Kind: Identifies what kind of resource this is. Value: the fixed
6588	// string "content#ordersCancelResponse".
6589	Kind string `json:"kind,omitempty"`
6590
6591	// ServerResponse contains the HTTP response code and headers from the
6592	// server.
6593	googleapi.ServerResponse `json:"-"`
6594
6595	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
6596	// unconditionally include in API requests. By default, fields with
6597	// empty or default values are omitted from API requests. However, any
6598	// non-pointer, non-interface field appearing in ForceSendFields will be
6599	// sent to the server regardless of whether the field is empty or not.
6600	// This may be used to include empty fields in Patch requests.
6601	ForceSendFields []string `json:"-"`
6602
6603	// NullFields is a list of field names (e.g. "ExecutionStatus") to
6604	// include in API requests with the JSON null value. By default, fields
6605	// with empty values are omitted from API requests. However, any field
6606	// with an empty value appearing in NullFields will be sent to the
6607	// server as null. It is an error if a field in this list has a
6608	// non-empty value. This may be used to include null fields in Patch
6609	// requests.
6610	NullFields []string `json:"-"`
6611}
6612
6613func (s *OrdersCancelResponse) MarshalJSON() ([]byte, error) {
6614	type NoMethod OrdersCancelResponse
6615	raw := NoMethod(*s)
6616	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6617}
6618
6619type OrdersCancelTestOrderByCustomerRequest struct {
6620	// Reason: The reason for the cancellation. Acceptable values are: -
6621	// "changedMind" - "orderedWrongItem" - "other"
6622	Reason string `json:"reason,omitempty"`
6623
6624	// ForceSendFields is a list of field names (e.g. "Reason") to
6625	// unconditionally include in API requests. By default, fields with
6626	// empty or default values are omitted from API requests. However, any
6627	// non-pointer, non-interface field appearing in ForceSendFields will be
6628	// sent to the server regardless of whether the field is empty or not.
6629	// This may be used to include empty fields in Patch requests.
6630	ForceSendFields []string `json:"-"`
6631
6632	// NullFields is a list of field names (e.g. "Reason") to include in API
6633	// requests with the JSON null value. By default, fields with empty
6634	// values are omitted from API requests. However, any field with an
6635	// empty value appearing in NullFields will be sent to the server as
6636	// null. It is an error if a field in this list has a non-empty value.
6637	// This may be used to include null fields in Patch requests.
6638	NullFields []string `json:"-"`
6639}
6640
6641func (s *OrdersCancelTestOrderByCustomerRequest) MarshalJSON() ([]byte, error) {
6642	type NoMethod OrdersCancelTestOrderByCustomerRequest
6643	raw := NoMethod(*s)
6644	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6645}
6646
6647type OrdersCancelTestOrderByCustomerResponse struct {
6648	// Kind: Identifies what kind of resource this is. Value: the fixed
6649	// string "content#ordersCancelTestOrderByCustomerResponse".
6650	Kind string `json:"kind,omitempty"`
6651
6652	// ServerResponse contains the HTTP response code and headers from the
6653	// server.
6654	googleapi.ServerResponse `json:"-"`
6655
6656	// ForceSendFields is a list of field names (e.g. "Kind") to
6657	// unconditionally include in API requests. By default, fields with
6658	// empty or default values are omitted from API requests. However, any
6659	// non-pointer, non-interface field appearing in ForceSendFields will be
6660	// sent to the server regardless of whether the field is empty or not.
6661	// This may be used to include empty fields in Patch requests.
6662	ForceSendFields []string `json:"-"`
6663
6664	// NullFields is a list of field names (e.g. "Kind") to include in API
6665	// requests with the JSON null value. By default, fields with empty
6666	// values are omitted from API requests. However, any field with an
6667	// empty value appearing in NullFields will be sent to the server as
6668	// null. It is an error if a field in this list has a non-empty value.
6669	// This may be used to include null fields in Patch requests.
6670	NullFields []string `json:"-"`
6671}
6672
6673func (s *OrdersCancelTestOrderByCustomerResponse) MarshalJSON() ([]byte, error) {
6674	type NoMethod OrdersCancelTestOrderByCustomerResponse
6675	raw := NoMethod(*s)
6676	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6677}
6678
6679type OrdersCreateTestOrderRequest struct {
6680	// Country: The CLDR territory code of the country of the test order to
6681	// create. Affects the currency and addresses of orders created via
6682	// `template_name`, or the addresses of orders created via `test_order`.
6683	// Acceptable values are: - "US" - "FR" Defaults to `US`.
6684	Country string `json:"country,omitempty"`
6685
6686	// TemplateName: The test order template to use. Specify as an
6687	// alternative to `testOrder` as a shortcut for retrieving a template
6688	// and then creating an order using that template. Acceptable values
6689	// are: - "template1" - "template1a" - "template1b" -
6690	// "template2" - "template3"
6691	TemplateName string `json:"templateName,omitempty"`
6692
6693	// TestOrder: The test order to create.
6694	TestOrder *TestOrder `json:"testOrder,omitempty"`
6695
6696	// ForceSendFields is a list of field names (e.g. "Country") to
6697	// unconditionally include in API requests. By default, fields with
6698	// empty or default values are omitted from API requests. However, any
6699	// non-pointer, non-interface field appearing in ForceSendFields will be
6700	// sent to the server regardless of whether the field is empty or not.
6701	// This may be used to include empty fields in Patch requests.
6702	ForceSendFields []string `json:"-"`
6703
6704	// NullFields is a list of field names (e.g. "Country") to include in
6705	// API requests with the JSON null value. By default, fields with empty
6706	// values are omitted from API requests. However, any field with an
6707	// empty value appearing in NullFields will be sent to the server as
6708	// null. It is an error if a field in this list has a non-empty value.
6709	// This may be used to include null fields in Patch requests.
6710	NullFields []string `json:"-"`
6711}
6712
6713func (s *OrdersCreateTestOrderRequest) MarshalJSON() ([]byte, error) {
6714	type NoMethod OrdersCreateTestOrderRequest
6715	raw := NoMethod(*s)
6716	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6717}
6718
6719type OrdersCreateTestOrderResponse struct {
6720	// Kind: Identifies what kind of resource this is. Value: the fixed
6721	// string "content#ordersCreateTestOrderResponse".
6722	Kind string `json:"kind,omitempty"`
6723
6724	// OrderId: The ID of the newly created test order.
6725	OrderId string `json:"orderId,omitempty"`
6726
6727	// ServerResponse contains the HTTP response code and headers from the
6728	// server.
6729	googleapi.ServerResponse `json:"-"`
6730
6731	// ForceSendFields is a list of field names (e.g. "Kind") to
6732	// unconditionally include in API requests. By default, fields with
6733	// empty or default values are omitted from API requests. However, any
6734	// non-pointer, non-interface field appearing in ForceSendFields will be
6735	// sent to the server regardless of whether the field is empty or not.
6736	// This may be used to include empty fields in Patch requests.
6737	ForceSendFields []string `json:"-"`
6738
6739	// NullFields is a list of field names (e.g. "Kind") to include in API
6740	// requests with the JSON null value. By default, fields with empty
6741	// values are omitted from API requests. However, any field with an
6742	// empty value appearing in NullFields will be sent to the server as
6743	// null. It is an error if a field in this list has a non-empty value.
6744	// This may be used to include null fields in Patch requests.
6745	NullFields []string `json:"-"`
6746}
6747
6748func (s *OrdersCreateTestOrderResponse) MarshalJSON() ([]byte, error) {
6749	type NoMethod OrdersCreateTestOrderResponse
6750	raw := NoMethod(*s)
6751	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6752}
6753
6754type OrdersCreateTestReturnRequest struct {
6755	// Items: Returned items.
6756	Items []*OrdersCustomBatchRequestEntryCreateTestReturnReturnItem `json:"items,omitempty"`
6757
6758	// ForceSendFields is a list of field names (e.g. "Items") to
6759	// unconditionally include in API requests. By default, fields with
6760	// empty or default values are omitted from API requests. However, any
6761	// non-pointer, non-interface field appearing in ForceSendFields will be
6762	// sent to the server regardless of whether the field is empty or not.
6763	// This may be used to include empty fields in Patch requests.
6764	ForceSendFields []string `json:"-"`
6765
6766	// NullFields is a list of field names (e.g. "Items") to include in API
6767	// requests with the JSON null value. By default, fields with empty
6768	// values are omitted from API requests. However, any field with an
6769	// empty value appearing in NullFields will be sent to the server as
6770	// null. It is an error if a field in this list has a non-empty value.
6771	// This may be used to include null fields in Patch requests.
6772	NullFields []string `json:"-"`
6773}
6774
6775func (s *OrdersCreateTestReturnRequest) MarshalJSON() ([]byte, error) {
6776	type NoMethod OrdersCreateTestReturnRequest
6777	raw := NoMethod(*s)
6778	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6779}
6780
6781type OrdersCreateTestReturnResponse struct {
6782	// Kind: Identifies what kind of resource this is. Value: the fixed
6783	// string "content#ordersCreateTestReturnResponse".
6784	Kind string `json:"kind,omitempty"`
6785
6786	// ReturnId: The ID of the newly created test order return.
6787	ReturnId string `json:"returnId,omitempty"`
6788
6789	// ServerResponse contains the HTTP response code and headers from the
6790	// server.
6791	googleapi.ServerResponse `json:"-"`
6792
6793	// ForceSendFields is a list of field names (e.g. "Kind") to
6794	// unconditionally include in API requests. By default, fields with
6795	// empty or default values are omitted from API requests. However, any
6796	// non-pointer, non-interface field appearing in ForceSendFields will be
6797	// sent to the server regardless of whether the field is empty or not.
6798	// This may be used to include empty fields in Patch requests.
6799	ForceSendFields []string `json:"-"`
6800
6801	// NullFields is a list of field names (e.g. "Kind") to include in API
6802	// requests with the JSON null value. By default, fields with empty
6803	// values are omitted from API requests. However, any field with an
6804	// empty value appearing in NullFields will be sent to the server as
6805	// null. It is an error if a field in this list has a non-empty value.
6806	// This may be used to include null fields in Patch requests.
6807	NullFields []string `json:"-"`
6808}
6809
6810func (s *OrdersCreateTestReturnResponse) MarshalJSON() ([]byte, error) {
6811	type NoMethod OrdersCreateTestReturnResponse
6812	raw := NoMethod(*s)
6813	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6814}
6815
6816type OrdersCustomBatchRequest struct {
6817	// Entries: The request entries to be processed in the batch.
6818	Entries []*OrdersCustomBatchRequestEntry `json:"entries,omitempty"`
6819
6820	// ForceSendFields is a list of field names (e.g. "Entries") to
6821	// unconditionally include in API requests. By default, fields with
6822	// empty or default values are omitted from API requests. However, any
6823	// non-pointer, non-interface field appearing in ForceSendFields will be
6824	// sent to the server regardless of whether the field is empty or not.
6825	// This may be used to include empty fields in Patch requests.
6826	ForceSendFields []string `json:"-"`
6827
6828	// NullFields is a list of field names (e.g. "Entries") to include in
6829	// API requests with the JSON null value. By default, fields with empty
6830	// values are omitted from API requests. However, any field with an
6831	// empty value appearing in NullFields will be sent to the server as
6832	// null. It is an error if a field in this list has a non-empty value.
6833	// This may be used to include null fields in Patch requests.
6834	NullFields []string `json:"-"`
6835}
6836
6837func (s *OrdersCustomBatchRequest) MarshalJSON() ([]byte, error) {
6838	type NoMethod OrdersCustomBatchRequest
6839	raw := NoMethod(*s)
6840	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6841}
6842
6843type OrdersCustomBatchRequestEntry struct {
6844	// BatchId: An entry ID, unique within the batch request.
6845	BatchId int64 `json:"batchId,omitempty"`
6846
6847	// Cancel: Required for `cancel` method.
6848	Cancel *OrdersCustomBatchRequestEntryCancel `json:"cancel,omitempty"`
6849
6850	// CancelLineItem: Required for `cancelLineItem` method.
6851	CancelLineItem *OrdersCustomBatchRequestEntryCancelLineItem `json:"cancelLineItem,omitempty"`
6852
6853	// InStoreRefundLineItem: Required for `inStoreReturnLineItem` method.
6854	InStoreRefundLineItem *OrdersCustomBatchRequestEntryInStoreRefundLineItem `json:"inStoreRefundLineItem,omitempty"`
6855
6856	// MerchantId: The ID of the managing account.
6857	MerchantId uint64 `json:"merchantId,omitempty,string"`
6858
6859	// MerchantOrderId: The merchant order ID. Required for
6860	// `updateMerchantOrderId` and `getByMerchantOrderId` methods.
6861	MerchantOrderId string `json:"merchantOrderId,omitempty"`
6862
6863	// Method: The method of the batch entry. Acceptable values are: -
6864	// "acknowledge" - "cancel" - "cancelLineItem" - "get" -
6865	// "getByMerchantOrderId" - "inStoreRefundLineItem" - "refund" -
6866	// "rejectReturnLineItem" - "returnLineItem" -
6867	// "returnRefundLineItem" - "setLineItemMetadata" -
6868	// "shipLineItems" - "updateLineItemShippingDetails" -
6869	// "updateMerchantOrderId" - "updateShipment"
6870	Method string `json:"method,omitempty"`
6871
6872	// OperationId: The ID of the operation. Unique across all operations
6873	// for a given order. Required for all methods beside `get` and
6874	// `getByMerchantOrderId`.
6875	OperationId string `json:"operationId,omitempty"`
6876
6877	// OrderId: The ID of the order. Required for all methods beside
6878	// `getByMerchantOrderId`.
6879	OrderId string `json:"orderId,omitempty"`
6880
6881	// Refund: Required for `refund` method.
6882	Refund *OrdersCustomBatchRequestEntryRefund `json:"refund,omitempty"`
6883
6884	// RejectReturnLineItem: Required for `rejectReturnLineItem` method.
6885	RejectReturnLineItem *OrdersCustomBatchRequestEntryRejectReturnLineItem `json:"rejectReturnLineItem,omitempty"`
6886
6887	// ReturnLineItem: Required for `returnLineItem` method.
6888	ReturnLineItem *OrdersCustomBatchRequestEntryReturnLineItem `json:"returnLineItem,omitempty"`
6889
6890	// ReturnRefundLineItem: Required for `returnRefundLineItem` method.
6891	ReturnRefundLineItem *OrdersCustomBatchRequestEntryReturnRefundLineItem `json:"returnRefundLineItem,omitempty"`
6892
6893	// SetLineItemMetadata: Required for `setLineItemMetadata` method.
6894	SetLineItemMetadata *OrdersCustomBatchRequestEntrySetLineItemMetadata `json:"setLineItemMetadata,omitempty"`
6895
6896	// ShipLineItems: Required for `shipLineItems` method.
6897	ShipLineItems *OrdersCustomBatchRequestEntryShipLineItems `json:"shipLineItems,omitempty"`
6898
6899	// UpdateLineItemShippingDetails: Required for
6900	// `updateLineItemShippingDate` method.
6901	UpdateLineItemShippingDetails *OrdersCustomBatchRequestEntryUpdateLineItemShippingDetails `json:"updateLineItemShippingDetails,omitempty"`
6902
6903	// UpdateShipment: Required for `updateShipment` method.
6904	UpdateShipment *OrdersCustomBatchRequestEntryUpdateShipment `json:"updateShipment,omitempty"`
6905
6906	// ForceSendFields is a list of field names (e.g. "BatchId") to
6907	// unconditionally include in API requests. By default, fields with
6908	// empty or default values are omitted from API requests. However, any
6909	// non-pointer, non-interface field appearing in ForceSendFields will be
6910	// sent to the server regardless of whether the field is empty or not.
6911	// This may be used to include empty fields in Patch requests.
6912	ForceSendFields []string `json:"-"`
6913
6914	// NullFields is a list of field names (e.g. "BatchId") to include in
6915	// API requests with the JSON null value. By default, fields with empty
6916	// values are omitted from API requests. However, any field with an
6917	// empty value appearing in NullFields will be sent to the server as
6918	// null. It is an error if a field in this list has a non-empty value.
6919	// This may be used to include null fields in Patch requests.
6920	NullFields []string `json:"-"`
6921}
6922
6923func (s *OrdersCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
6924	type NoMethod OrdersCustomBatchRequestEntry
6925	raw := NoMethod(*s)
6926	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6927}
6928
6929type OrdersCustomBatchRequestEntryCancel struct {
6930	// Reason: The reason for the cancellation. Acceptable values are: -
6931	// "customerInitiatedCancel" - "invalidCoupon" -
6932	// "malformedShippingAddress" - "noInventory" - "other" -
6933	// "priceError" - "shippingPriceError" - "taxError" -
6934	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress"
6935	Reason string `json:"reason,omitempty"`
6936
6937	// ReasonText: The explanation of the reason.
6938	ReasonText string `json:"reasonText,omitempty"`
6939
6940	// ForceSendFields is a list of field names (e.g. "Reason") to
6941	// unconditionally include in API requests. By default, fields with
6942	// empty or default values are omitted from API requests. However, any
6943	// non-pointer, non-interface field appearing in ForceSendFields will be
6944	// sent to the server regardless of whether the field is empty or not.
6945	// This may be used to include empty fields in Patch requests.
6946	ForceSendFields []string `json:"-"`
6947
6948	// NullFields is a list of field names (e.g. "Reason") to include in API
6949	// requests with the JSON null value. By default, fields with empty
6950	// values are omitted from API requests. However, any field with an
6951	// empty value appearing in NullFields will be sent to the server as
6952	// null. It is an error if a field in this list has a non-empty value.
6953	// This may be used to include null fields in Patch requests.
6954	NullFields []string `json:"-"`
6955}
6956
6957func (s *OrdersCustomBatchRequestEntryCancel) MarshalJSON() ([]byte, error) {
6958	type NoMethod OrdersCustomBatchRequestEntryCancel
6959	raw := NoMethod(*s)
6960	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6961}
6962
6963type OrdersCustomBatchRequestEntryCancelLineItem struct {
6964	// Amount: Deprecated. Please use amountPretax and amountTax instead.
6965	Amount *Price `json:"amount,omitempty"`
6966
6967	// AmountPretax: Amount to refund for the cancelation. Optional. If not
6968	// set, Google will calculate the default based on the price and tax of
6969	// the items involved. The amount must not be larger than the net amount
6970	// left on the order.
6971	AmountPretax *Price `json:"amountPretax,omitempty"`
6972
6973	// AmountTax: Tax amount that corresponds to cancellation amount in
6974	// amountPretax. Optional, but if filled, then amountPretax must be set.
6975	// Calculated automatically if not provided.
6976	AmountTax *Price `json:"amountTax,omitempty"`
6977
6978	// LineItemId: The ID of the line item to cancel. Either lineItemId or
6979	// productId is required.
6980	LineItemId string `json:"lineItemId,omitempty"`
6981
6982	// ProductId: The ID of the product to cancel. This is the REST ID used
6983	// in the products service. Either lineItemId or productId is required.
6984	ProductId string `json:"productId,omitempty"`
6985
6986	// Quantity: The quantity to cancel.
6987	Quantity int64 `json:"quantity,omitempty"`
6988
6989	// Reason: The reason for the cancellation. Acceptable values are: -
6990	// "customerInitiatedCancel" - "invalidCoupon" -
6991	// "malformedShippingAddress" - "noInventory" - "other" -
6992	// "priceError" - "shippingPriceError" - "taxError" -
6993	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress"
6994	Reason string `json:"reason,omitempty"`
6995
6996	// ReasonText: The explanation of the reason.
6997	ReasonText string `json:"reasonText,omitempty"`
6998
6999	// ForceSendFields is a list of field names (e.g. "Amount") to
7000	// unconditionally include in API requests. By default, fields with
7001	// empty or default values are omitted from API requests. However, any
7002	// non-pointer, non-interface field appearing in ForceSendFields will be
7003	// sent to the server regardless of whether the field is empty or not.
7004	// This may be used to include empty fields in Patch requests.
7005	ForceSendFields []string `json:"-"`
7006
7007	// NullFields is a list of field names (e.g. "Amount") to include in API
7008	// requests with the JSON null value. By default, fields with empty
7009	// values are omitted from API requests. However, any field with an
7010	// empty value appearing in NullFields will be sent to the server as
7011	// null. It is an error if a field in this list has a non-empty value.
7012	// This may be used to include null fields in Patch requests.
7013	NullFields []string `json:"-"`
7014}
7015
7016func (s *OrdersCustomBatchRequestEntryCancelLineItem) MarshalJSON() ([]byte, error) {
7017	type NoMethod OrdersCustomBatchRequestEntryCancelLineItem
7018	raw := NoMethod(*s)
7019	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7020}
7021
7022type OrdersCustomBatchRequestEntryCreateTestReturnReturnItem struct {
7023	// LineItemId: The ID of the line item to return.
7024	LineItemId string `json:"lineItemId,omitempty"`
7025
7026	// Quantity: Quantity that is returned.
7027	Quantity int64 `json:"quantity,omitempty"`
7028
7029	// ForceSendFields is a list of field names (e.g. "LineItemId") to
7030	// unconditionally include in API requests. By default, fields with
7031	// empty or default values are omitted from API requests. However, any
7032	// non-pointer, non-interface field appearing in ForceSendFields will be
7033	// sent to the server regardless of whether the field is empty or not.
7034	// This may be used to include empty fields in Patch requests.
7035	ForceSendFields []string `json:"-"`
7036
7037	// NullFields is a list of field names (e.g. "LineItemId") to include in
7038	// API requests with the JSON null value. By default, fields with empty
7039	// values are omitted from API requests. However, any field with an
7040	// empty value appearing in NullFields will be sent to the server as
7041	// null. It is an error if a field in this list has a non-empty value.
7042	// This may be used to include null fields in Patch requests.
7043	NullFields []string `json:"-"`
7044}
7045
7046func (s *OrdersCustomBatchRequestEntryCreateTestReturnReturnItem) MarshalJSON() ([]byte, error) {
7047	type NoMethod OrdersCustomBatchRequestEntryCreateTestReturnReturnItem
7048	raw := NoMethod(*s)
7049	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7050}
7051
7052type OrdersCustomBatchRequestEntryInStoreRefundLineItem struct {
7053	// AmountPretax: The amount that is refunded. Required.
7054	AmountPretax *Price `json:"amountPretax,omitempty"`
7055
7056	// AmountTax: Tax amount that correspond to refund amount in
7057	// amountPretax. Required.
7058	AmountTax *Price `json:"amountTax,omitempty"`
7059
7060	// LineItemId: The ID of the line item to return. Either lineItemId or
7061	// productId is required.
7062	LineItemId string `json:"lineItemId,omitempty"`
7063
7064	// ProductId: The ID of the product to return. This is the REST ID used
7065	// in the products service. Either lineItemId or productId is required.
7066	ProductId string `json:"productId,omitempty"`
7067
7068	// Quantity: The quantity to return and refund.
7069	Quantity int64 `json:"quantity,omitempty"`
7070
7071	// Reason: The reason for the return. Acceptable values are: -
7072	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
7073	// - "deliveredTooLate" - "expiredItem" - "invalidCoupon" -
7074	// "malformedShippingAddress" - "other" - "productArrivedDamaged"
7075	// - "productNotAsDescribed" - "qualityNotAsExpected" -
7076	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
7077	// "wrongProductShipped"
7078	Reason string `json:"reason,omitempty"`
7079
7080	// ReasonText: The explanation of the reason.
7081	ReasonText string `json:"reasonText,omitempty"`
7082
7083	// ForceSendFields is a list of field names (e.g. "AmountPretax") to
7084	// unconditionally include in API requests. By default, fields with
7085	// empty or default values are omitted from API requests. However, any
7086	// non-pointer, non-interface field appearing in ForceSendFields will be
7087	// sent to the server regardless of whether the field is empty or not.
7088	// This may be used to include empty fields in Patch requests.
7089	ForceSendFields []string `json:"-"`
7090
7091	// NullFields is a list of field names (e.g. "AmountPretax") to include
7092	// in API requests with the JSON null value. By default, fields with
7093	// empty values are omitted from API requests. However, any field with
7094	// an empty value appearing in NullFields will be sent to the server as
7095	// null. It is an error if a field in this list has a non-empty value.
7096	// This may be used to include null fields in Patch requests.
7097	NullFields []string `json:"-"`
7098}
7099
7100func (s *OrdersCustomBatchRequestEntryInStoreRefundLineItem) MarshalJSON() ([]byte, error) {
7101	type NoMethod OrdersCustomBatchRequestEntryInStoreRefundLineItem
7102	raw := NoMethod(*s)
7103	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7104}
7105
7106type OrdersCustomBatchRequestEntryRefund struct {
7107	// Amount: Deprecated. Please use amountPretax and amountTax instead.
7108	Amount *Price `json:"amount,omitempty"`
7109
7110	// AmountPretax: The amount that is refunded. Either amount or
7111	// amountPretax should be filled.
7112	AmountPretax *Price `json:"amountPretax,omitempty"`
7113
7114	// AmountTax: Tax amount that corresponds to refund amount in
7115	// amountPretax. Optional, but if filled, amountPretax must be set.
7116	// Calculated automatically if not provided.
7117	AmountTax *Price `json:"amountTax,omitempty"`
7118
7119	// Reason: The reason for the refund. Acceptable values are: -
7120	// "adjustment" - "courtesyAdjustment" - "customerCanceled" -
7121	// "customerDiscretionaryReturn" - "deliveredLateByCarrier" -
7122	// "feeAdjustment" - "lateShipmentCredit" - "noInventory" -
7123	// "other" - "priceError" - "productArrivedDamaged" -
7124	// "productNotAsDescribed" - "shippingCostAdjustment" -
7125	// "taxAdjustment" - "undeliverableShippingAddress" -
7126	// "wrongProductShipped"
7127	Reason string `json:"reason,omitempty"`
7128
7129	// ReasonText: The explanation of the reason.
7130	ReasonText string `json:"reasonText,omitempty"`
7131
7132	// ForceSendFields is a list of field names (e.g. "Amount") to
7133	// unconditionally include in API requests. By default, fields with
7134	// empty or default values are omitted from API requests. However, any
7135	// non-pointer, non-interface field appearing in ForceSendFields will be
7136	// sent to the server regardless of whether the field is empty or not.
7137	// This may be used to include empty fields in Patch requests.
7138	ForceSendFields []string `json:"-"`
7139
7140	// NullFields is a list of field names (e.g. "Amount") to include in API
7141	// requests with the JSON null value. By default, fields with empty
7142	// values are omitted from API requests. However, any field with an
7143	// empty value appearing in NullFields will be sent to the server as
7144	// null. It is an error if a field in this list has a non-empty value.
7145	// This may be used to include null fields in Patch requests.
7146	NullFields []string `json:"-"`
7147}
7148
7149func (s *OrdersCustomBatchRequestEntryRefund) MarshalJSON() ([]byte, error) {
7150	type NoMethod OrdersCustomBatchRequestEntryRefund
7151	raw := NoMethod(*s)
7152	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7153}
7154
7155type OrdersCustomBatchRequestEntryRejectReturnLineItem struct {
7156	// LineItemId: The ID of the line item to return. Either lineItemId or
7157	// productId is required.
7158	LineItemId string `json:"lineItemId,omitempty"`
7159
7160	// ProductId: The ID of the product to return. This is the REST ID used
7161	// in the products service. Either lineItemId or productId is required.
7162	ProductId string `json:"productId,omitempty"`
7163
7164	// Quantity: The quantity to return and refund.
7165	Quantity int64 `json:"quantity,omitempty"`
7166
7167	// Reason: The reason for the return. Acceptable values are: -
7168	// "damagedOrUsed" - "missingComponent" - "notEligible" -
7169	// "other" - "outOfReturnWindow"
7170	Reason string `json:"reason,omitempty"`
7171
7172	// ReasonText: The explanation of the reason.
7173	ReasonText string `json:"reasonText,omitempty"`
7174
7175	// ForceSendFields is a list of field names (e.g. "LineItemId") to
7176	// unconditionally include in API requests. By default, fields with
7177	// empty or default values are omitted from API requests. However, any
7178	// non-pointer, non-interface field appearing in ForceSendFields will be
7179	// sent to the server regardless of whether the field is empty or not.
7180	// This may be used to include empty fields in Patch requests.
7181	ForceSendFields []string `json:"-"`
7182
7183	// NullFields is a list of field names (e.g. "LineItemId") to include in
7184	// API requests with the JSON null value. By default, fields with empty
7185	// values are omitted from API requests. However, any field with an
7186	// empty value appearing in NullFields will be sent to the server as
7187	// null. It is an error if a field in this list has a non-empty value.
7188	// This may be used to include null fields in Patch requests.
7189	NullFields []string `json:"-"`
7190}
7191
7192func (s *OrdersCustomBatchRequestEntryRejectReturnLineItem) MarshalJSON() ([]byte, error) {
7193	type NoMethod OrdersCustomBatchRequestEntryRejectReturnLineItem
7194	raw := NoMethod(*s)
7195	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7196}
7197
7198type OrdersCustomBatchRequestEntryReturnLineItem struct {
7199	// LineItemId: The ID of the line item to return. Either lineItemId or
7200	// productId is required.
7201	LineItemId string `json:"lineItemId,omitempty"`
7202
7203	// ProductId: The ID of the product to return. This is the REST ID used
7204	// in the products service. Either lineItemId or productId is required.
7205	ProductId string `json:"productId,omitempty"`
7206
7207	// Quantity: The quantity to return.
7208	Quantity int64 `json:"quantity,omitempty"`
7209
7210	// Reason: The reason for the return. Acceptable values are: -
7211	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
7212	// - "deliveredTooLate" - "expiredItem" - "invalidCoupon" -
7213	// "malformedShippingAddress" - "other" - "productArrivedDamaged"
7214	// - "productNotAsDescribed" - "qualityNotAsExpected" -
7215	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
7216	// "wrongProductShipped"
7217	Reason string `json:"reason,omitempty"`
7218
7219	// ReasonText: The explanation of the reason.
7220	ReasonText string `json:"reasonText,omitempty"`
7221
7222	// ForceSendFields is a list of field names (e.g. "LineItemId") to
7223	// unconditionally include in API requests. By default, fields with
7224	// empty or default values are omitted from API requests. However, any
7225	// non-pointer, non-interface field appearing in ForceSendFields will be
7226	// sent to the server regardless of whether the field is empty or not.
7227	// This may be used to include empty fields in Patch requests.
7228	ForceSendFields []string `json:"-"`
7229
7230	// NullFields is a list of field names (e.g. "LineItemId") to include in
7231	// API requests with the JSON null value. By default, fields with empty
7232	// values are omitted from API requests. However, any field with an
7233	// empty value appearing in NullFields will be sent to the server as
7234	// null. It is an error if a field in this list has a non-empty value.
7235	// This may be used to include null fields in Patch requests.
7236	NullFields []string `json:"-"`
7237}
7238
7239func (s *OrdersCustomBatchRequestEntryReturnLineItem) MarshalJSON() ([]byte, error) {
7240	type NoMethod OrdersCustomBatchRequestEntryReturnLineItem
7241	raw := NoMethod(*s)
7242	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7243}
7244
7245type OrdersCustomBatchRequestEntryReturnRefundLineItem struct {
7246	// AmountPretax: The amount that is refunded. If omitted, refundless
7247	// return is assumed (same as calling returnLineItem method).
7248	AmountPretax *Price `json:"amountPretax,omitempty"`
7249
7250	// AmountTax: Tax amount that corresponds to refund amount in
7251	// amountPretax. Optional, but if filled, then amountPretax must be set.
7252	// Calculated automatically if not provided.
7253	AmountTax *Price `json:"amountTax,omitempty"`
7254
7255	// LineItemId: The ID of the line item to return. Either lineItemId or
7256	// productId is required.
7257	LineItemId string `json:"lineItemId,omitempty"`
7258
7259	// ProductId: The ID of the product to return. This is the REST ID used
7260	// in the products service. Either lineItemId or productId is required.
7261	ProductId string `json:"productId,omitempty"`
7262
7263	// Quantity: The quantity to return and refund.
7264	Quantity int64 `json:"quantity,omitempty"`
7265
7266	// Reason: The reason for the return. Acceptable values are: -
7267	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
7268	// - "deliveredTooLate" - "expiredItem" - "invalidCoupon" -
7269	// "malformedShippingAddress" - "other" - "productArrivedDamaged"
7270	// - "productNotAsDescribed" - "qualityNotAsExpected" -
7271	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
7272	// "wrongProductShipped"
7273	Reason string `json:"reason,omitempty"`
7274
7275	// ReasonText: The explanation of the reason.
7276	ReasonText string `json:"reasonText,omitempty"`
7277
7278	// ForceSendFields is a list of field names (e.g. "AmountPretax") to
7279	// unconditionally include in API requests. By default, fields with
7280	// empty or default values are omitted from API requests. However, any
7281	// non-pointer, non-interface field appearing in ForceSendFields will be
7282	// sent to the server regardless of whether the field is empty or not.
7283	// This may be used to include empty fields in Patch requests.
7284	ForceSendFields []string `json:"-"`
7285
7286	// NullFields is a list of field names (e.g. "AmountPretax") to include
7287	// in API requests with the JSON null value. By default, fields with
7288	// empty values are omitted from API requests. However, any field with
7289	// an empty value appearing in NullFields will be sent to the server as
7290	// null. It is an error if a field in this list has a non-empty value.
7291	// This may be used to include null fields in Patch requests.
7292	NullFields []string `json:"-"`
7293}
7294
7295func (s *OrdersCustomBatchRequestEntryReturnRefundLineItem) MarshalJSON() ([]byte, error) {
7296	type NoMethod OrdersCustomBatchRequestEntryReturnRefundLineItem
7297	raw := NoMethod(*s)
7298	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7299}
7300
7301type OrdersCustomBatchRequestEntrySetLineItemMetadata struct {
7302	Annotations []*OrderMerchantProvidedAnnotation `json:"annotations,omitempty"`
7303
7304	// LineItemId: The ID of the line item to set metadata. Either
7305	// lineItemId or productId is required.
7306	LineItemId string `json:"lineItemId,omitempty"`
7307
7308	// ProductId: The ID of the product to set metadata. This is the REST ID
7309	// used in the products service. Either lineItemId or productId is
7310	// required.
7311	ProductId string `json:"productId,omitempty"`
7312
7313	// ForceSendFields is a list of field names (e.g. "Annotations") to
7314	// unconditionally include in API requests. By default, fields with
7315	// empty or default values are omitted from API requests. However, any
7316	// non-pointer, non-interface field appearing in ForceSendFields will be
7317	// sent to the server regardless of whether the field is empty or not.
7318	// This may be used to include empty fields in Patch requests.
7319	ForceSendFields []string `json:"-"`
7320
7321	// NullFields is a list of field names (e.g. "Annotations") to include
7322	// in API requests with the JSON null value. By default, fields with
7323	// empty values are omitted from API requests. However, any field with
7324	// an empty value appearing in NullFields will be sent to the server as
7325	// null. It is an error if a field in this list has a non-empty value.
7326	// This may be used to include null fields in Patch requests.
7327	NullFields []string `json:"-"`
7328}
7329
7330func (s *OrdersCustomBatchRequestEntrySetLineItemMetadata) MarshalJSON() ([]byte, error) {
7331	type NoMethod OrdersCustomBatchRequestEntrySetLineItemMetadata
7332	raw := NoMethod(*s)
7333	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7334}
7335
7336type OrdersCustomBatchRequestEntryShipLineItems struct {
7337	// Carrier: Deprecated. Please use shipmentInfo instead. The carrier
7338	// handling the shipment. See `shipments[].carrier` in the Orders
7339	// resource representation for a list of acceptable values.
7340	Carrier string `json:"carrier,omitempty"`
7341
7342	// LineItems: Line items to ship.
7343	LineItems []*OrderShipmentLineItemShipment `json:"lineItems,omitempty"`
7344
7345	// ShipmentGroupId: ID of the shipment group. Required for orders that
7346	// use the orderinvoices service.
7347	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
7348
7349	// ShipmentId: Deprecated. Please use shipmentInfo instead. The ID of
7350	// the shipment.
7351	ShipmentId string `json:"shipmentId,omitempty"`
7352
7353	// ShipmentInfos: Shipment information. This field is repeated because a
7354	// single line item can be shipped in several packages (and have several
7355	// tracking IDs).
7356	ShipmentInfos []*OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo `json:"shipmentInfos,omitempty"`
7357
7358	// TrackingId: Deprecated. Please use shipmentInfo instead. The tracking
7359	// ID for the shipment.
7360	TrackingId string `json:"trackingId,omitempty"`
7361
7362	// ForceSendFields is a list of field names (e.g. "Carrier") to
7363	// unconditionally include in API requests. By default, fields with
7364	// empty or default values are omitted from API requests. However, any
7365	// non-pointer, non-interface field appearing in ForceSendFields will be
7366	// sent to the server regardless of whether the field is empty or not.
7367	// This may be used to include empty fields in Patch requests.
7368	ForceSendFields []string `json:"-"`
7369
7370	// NullFields is a list of field names (e.g. "Carrier") to include in
7371	// API requests with the JSON null value. By default, fields with empty
7372	// values are omitted from API requests. However, any field with an
7373	// empty value appearing in NullFields will be sent to the server as
7374	// null. It is an error if a field in this list has a non-empty value.
7375	// This may be used to include null fields in Patch requests.
7376	NullFields []string `json:"-"`
7377}
7378
7379func (s *OrdersCustomBatchRequestEntryShipLineItems) MarshalJSON() ([]byte, error) {
7380	type NoMethod OrdersCustomBatchRequestEntryShipLineItems
7381	raw := NoMethod(*s)
7382	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7383}
7384
7385type OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo struct {
7386	// Carrier: The carrier handling the shipment. See `shipments[].carrier`
7387	// in the Orders resource representation for a list of acceptable
7388	// values.
7389	Carrier string `json:"carrier,omitempty"`
7390
7391	// ShipmentId: Required. The ID of the shipment. This is assigned by the
7392	// merchant and is unique to each shipment.
7393	ShipmentId string `json:"shipmentId,omitempty"`
7394
7395	// TrackingId: The tracking ID for the shipment.
7396	TrackingId string `json:"trackingId,omitempty"`
7397
7398	// ForceSendFields is a list of field names (e.g. "Carrier") to
7399	// unconditionally include in API requests. By default, fields with
7400	// empty or default values are omitted from API requests. However, any
7401	// non-pointer, non-interface field appearing in ForceSendFields will be
7402	// sent to the server regardless of whether the field is empty or not.
7403	// This may be used to include empty fields in Patch requests.
7404	ForceSendFields []string `json:"-"`
7405
7406	// NullFields is a list of field names (e.g. "Carrier") to include in
7407	// API requests with the JSON null value. By default, fields with empty
7408	// values are omitted from API requests. However, any field with an
7409	// empty value appearing in NullFields will be sent to the server as
7410	// null. It is an error if a field in this list has a non-empty value.
7411	// This may be used to include null fields in Patch requests.
7412	NullFields []string `json:"-"`
7413}
7414
7415func (s *OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo) MarshalJSON() ([]byte, error) {
7416	type NoMethod OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo
7417	raw := NoMethod(*s)
7418	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7419}
7420
7421type OrdersCustomBatchRequestEntryUpdateLineItemShippingDetails struct {
7422	// DeliverByDate: Updated delivery by date, in ISO 8601 format. If not
7423	// specified only ship by date is updated. Provided date should be
7424	// within 1 year timeframe and can not be a date in the past.
7425	DeliverByDate string `json:"deliverByDate,omitempty"`
7426
7427	// LineItemId: The ID of the line item to set metadata. Either
7428	// lineItemId or productId is required.
7429	LineItemId string `json:"lineItemId,omitempty"`
7430
7431	// ProductId: The ID of the product to set metadata. This is the REST ID
7432	// used in the products service. Either lineItemId or productId is
7433	// required.
7434	ProductId string `json:"productId,omitempty"`
7435
7436	// ShipByDate: Updated ship by date, in ISO 8601 format. If not
7437	// specified only deliver by date is updated. Provided date should be
7438	// within 1 year timeframe and can not be a date in the past.
7439	ShipByDate string `json:"shipByDate,omitempty"`
7440
7441	// ForceSendFields is a list of field names (e.g. "DeliverByDate") to
7442	// unconditionally include in API requests. By default, fields with
7443	// empty or default values are omitted from API requests. However, any
7444	// non-pointer, non-interface field appearing in ForceSendFields will be
7445	// sent to the server regardless of whether the field is empty or not.
7446	// This may be used to include empty fields in Patch requests.
7447	ForceSendFields []string `json:"-"`
7448
7449	// NullFields is a list of field names (e.g. "DeliverByDate") to include
7450	// in API requests with the JSON null value. By default, fields with
7451	// empty values are omitted from API requests. However, any field with
7452	// an empty value appearing in NullFields will be sent to the server as
7453	// null. It is an error if a field in this list has a non-empty value.
7454	// This may be used to include null fields in Patch requests.
7455	NullFields []string `json:"-"`
7456}
7457
7458func (s *OrdersCustomBatchRequestEntryUpdateLineItemShippingDetails) MarshalJSON() ([]byte, error) {
7459	type NoMethod OrdersCustomBatchRequestEntryUpdateLineItemShippingDetails
7460	raw := NoMethod(*s)
7461	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7462}
7463
7464type OrdersCustomBatchRequestEntryUpdateShipment struct {
7465	// Carrier: The carrier handling the shipment. Not updated if missing.
7466	// See `shipments[].carrier` in the Orders resource representation for a
7467	// list of acceptable values.
7468	Carrier string `json:"carrier,omitempty"`
7469
7470	// DeliveryDate: Date on which the shipment has been delivered, in ISO
7471	// 8601 format. Optional and can be provided only if `status` is
7472	// `delivered`.
7473	DeliveryDate string `json:"deliveryDate,omitempty"`
7474
7475	// ShipmentId: The ID of the shipment.
7476	ShipmentId string `json:"shipmentId,omitempty"`
7477
7478	// Status: New status for the shipment. Not updated if missing.
7479	// Acceptable values are: - "delivered" - "undeliverable" -
7480	// "readyForPickup"
7481	Status string `json:"status,omitempty"`
7482
7483	// TrackingId: The tracking ID for the shipment. Not updated if missing.
7484	TrackingId string `json:"trackingId,omitempty"`
7485
7486	// ForceSendFields is a list of field names (e.g. "Carrier") to
7487	// unconditionally include in API requests. By default, fields with
7488	// empty or default values are omitted from API requests. However, any
7489	// non-pointer, non-interface field appearing in ForceSendFields will be
7490	// sent to the server regardless of whether the field is empty or not.
7491	// This may be used to include empty fields in Patch requests.
7492	ForceSendFields []string `json:"-"`
7493
7494	// NullFields is a list of field names (e.g. "Carrier") to include in
7495	// API requests with the JSON null value. By default, fields with empty
7496	// values are omitted from API requests. However, any field with an
7497	// empty value appearing in NullFields will be sent to the server as
7498	// null. It is an error if a field in this list has a non-empty value.
7499	// This may be used to include null fields in Patch requests.
7500	NullFields []string `json:"-"`
7501}
7502
7503func (s *OrdersCustomBatchRequestEntryUpdateShipment) MarshalJSON() ([]byte, error) {
7504	type NoMethod OrdersCustomBatchRequestEntryUpdateShipment
7505	raw := NoMethod(*s)
7506	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7507}
7508
7509type OrdersCustomBatchResponse struct {
7510	// Entries: The result of the execution of the batch requests.
7511	Entries []*OrdersCustomBatchResponseEntry `json:"entries,omitempty"`
7512
7513	// Kind: Identifies what kind of resource this is. Value: the fixed
7514	// string "content#ordersCustomBatchResponse".
7515	Kind string `json:"kind,omitempty"`
7516
7517	// ServerResponse contains the HTTP response code and headers from the
7518	// server.
7519	googleapi.ServerResponse `json:"-"`
7520
7521	// ForceSendFields is a list of field names (e.g. "Entries") to
7522	// unconditionally include in API requests. By default, fields with
7523	// empty or default values are omitted from API requests. However, any
7524	// non-pointer, non-interface field appearing in ForceSendFields will be
7525	// sent to the server regardless of whether the field is empty or not.
7526	// This may be used to include empty fields in Patch requests.
7527	ForceSendFields []string `json:"-"`
7528
7529	// NullFields is a list of field names (e.g. "Entries") to include in
7530	// API requests with the JSON null value. By default, fields with empty
7531	// values are omitted from API requests. However, any field with an
7532	// empty value appearing in NullFields will be sent to the server as
7533	// null. It is an error if a field in this list has a non-empty value.
7534	// This may be used to include null fields in Patch requests.
7535	NullFields []string `json:"-"`
7536}
7537
7538func (s *OrdersCustomBatchResponse) MarshalJSON() ([]byte, error) {
7539	type NoMethod OrdersCustomBatchResponse
7540	raw := NoMethod(*s)
7541	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7542}
7543
7544type OrdersCustomBatchResponseEntry struct {
7545	// BatchId: The ID of the request entry this entry responds to.
7546	BatchId int64 `json:"batchId,omitempty"`
7547
7548	// Errors: A list of errors defined if and only if the request failed.
7549	Errors *Errors `json:"errors,omitempty"`
7550
7551	// ExecutionStatus: The status of the execution. Only defined if 1. the
7552	// request was successful; and 2. the method is not `get`,
7553	// `getByMerchantOrderId`, or one of the test methods. Acceptable values
7554	// are: - "duplicate" - "executed"
7555	ExecutionStatus string `json:"executionStatus,omitempty"`
7556
7557	// Kind: Identifies what kind of resource this is. Value: the fixed
7558	// string "content#ordersCustomBatchResponseEntry"
7559	Kind string `json:"kind,omitempty"`
7560
7561	// Order: The retrieved order. Only defined if the method is `get` and
7562	// if the request was successful.
7563	Order *Order `json:"order,omitempty"`
7564
7565	// ForceSendFields is a list of field names (e.g. "BatchId") to
7566	// unconditionally include in API requests. By default, fields with
7567	// empty or default values are omitted from API requests. However, any
7568	// non-pointer, non-interface field appearing in ForceSendFields will be
7569	// sent to the server regardless of whether the field is empty or not.
7570	// This may be used to include empty fields in Patch requests.
7571	ForceSendFields []string `json:"-"`
7572
7573	// NullFields is a list of field names (e.g. "BatchId") to include in
7574	// API requests with the JSON null value. By default, fields with empty
7575	// values are omitted from API requests. However, any field with an
7576	// empty value appearing in NullFields will be sent to the server as
7577	// null. It is an error if a field in this list has a non-empty value.
7578	// This may be used to include null fields in Patch requests.
7579	NullFields []string `json:"-"`
7580}
7581
7582func (s *OrdersCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
7583	type NoMethod OrdersCustomBatchResponseEntry
7584	raw := NoMethod(*s)
7585	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7586}
7587
7588type OrdersGetByMerchantOrderIdResponse struct {
7589	// Kind: Identifies what kind of resource this is. Value: the fixed
7590	// string "content#ordersGetByMerchantOrderIdResponse".
7591	Kind string `json:"kind,omitempty"`
7592
7593	// Order: The requested order.
7594	Order *Order `json:"order,omitempty"`
7595
7596	// ServerResponse contains the HTTP response code and headers from the
7597	// server.
7598	googleapi.ServerResponse `json:"-"`
7599
7600	// ForceSendFields is a list of field names (e.g. "Kind") to
7601	// unconditionally include in API requests. By default, fields with
7602	// empty or default values are omitted from API requests. However, any
7603	// non-pointer, non-interface field appearing in ForceSendFields will be
7604	// sent to the server regardless of whether the field is empty or not.
7605	// This may be used to include empty fields in Patch requests.
7606	ForceSendFields []string `json:"-"`
7607
7608	// NullFields is a list of field names (e.g. "Kind") to include in API
7609	// requests with the JSON null value. By default, fields with empty
7610	// values are omitted from API requests. However, any field with an
7611	// empty value appearing in NullFields will be sent to the server as
7612	// null. It is an error if a field in this list has a non-empty value.
7613	// This may be used to include null fields in Patch requests.
7614	NullFields []string `json:"-"`
7615}
7616
7617func (s *OrdersGetByMerchantOrderIdResponse) MarshalJSON() ([]byte, error) {
7618	type NoMethod OrdersGetByMerchantOrderIdResponse
7619	raw := NoMethod(*s)
7620	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7621}
7622
7623type OrdersGetTestOrderTemplateResponse struct {
7624	// Kind: Identifies what kind of resource this is. Value: the fixed
7625	// string "content#ordersGetTestOrderTemplateResponse".
7626	Kind string `json:"kind,omitempty"`
7627
7628	// Template: The requested test order template.
7629	Template *TestOrder `json:"template,omitempty"`
7630
7631	// ServerResponse contains the HTTP response code and headers from the
7632	// server.
7633	googleapi.ServerResponse `json:"-"`
7634
7635	// ForceSendFields is a list of field names (e.g. "Kind") to
7636	// unconditionally include in API requests. By default, fields with
7637	// empty or default values are omitted from API requests. However, any
7638	// non-pointer, non-interface field appearing in ForceSendFields will be
7639	// sent to the server regardless of whether the field is empty or not.
7640	// This may be used to include empty fields in Patch requests.
7641	ForceSendFields []string `json:"-"`
7642
7643	// NullFields is a list of field names (e.g. "Kind") to include in API
7644	// requests with the JSON null value. By default, fields with empty
7645	// values are omitted from API requests. However, any field with an
7646	// empty value appearing in NullFields will be sent to the server as
7647	// null. It is an error if a field in this list has a non-empty value.
7648	// This may be used to include null fields in Patch requests.
7649	NullFields []string `json:"-"`
7650}
7651
7652func (s *OrdersGetTestOrderTemplateResponse) MarshalJSON() ([]byte, error) {
7653	type NoMethod OrdersGetTestOrderTemplateResponse
7654	raw := NoMethod(*s)
7655	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7656}
7657
7658type OrdersInStoreRefundLineItemRequest struct {
7659	// AmountPretax: The amount that is refunded. Required.
7660	AmountPretax *Price `json:"amountPretax,omitempty"`
7661
7662	// AmountTax: Tax amount that correspond to refund amount in
7663	// amountPretax. Required.
7664	AmountTax *Price `json:"amountTax,omitempty"`
7665
7666	// LineItemId: The ID of the line item to return. Either lineItemId or
7667	// productId is required.
7668	LineItemId string `json:"lineItemId,omitempty"`
7669
7670	// OperationId: The ID of the operation. Unique across all operations
7671	// for a given order.
7672	OperationId string `json:"operationId,omitempty"`
7673
7674	// ProductId: The ID of the product to return. This is the REST ID used
7675	// in the products service. Either lineItemId or productId is required.
7676	ProductId string `json:"productId,omitempty"`
7677
7678	// Quantity: The quantity to return and refund.
7679	Quantity int64 `json:"quantity,omitempty"`
7680
7681	// Reason: The reason for the return. Acceptable values are: -
7682	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
7683	// - "deliveredTooLate" - "expiredItem" - "invalidCoupon" -
7684	// "malformedShippingAddress" - "other" - "productArrivedDamaged"
7685	// - "productNotAsDescribed" - "qualityNotAsExpected" -
7686	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
7687	// "wrongProductShipped"
7688	Reason string `json:"reason,omitempty"`
7689
7690	// ReasonText: The explanation of the reason.
7691	ReasonText string `json:"reasonText,omitempty"`
7692
7693	// ForceSendFields is a list of field names (e.g. "AmountPretax") to
7694	// unconditionally include in API requests. By default, fields with
7695	// empty or default values are omitted from API requests. However, any
7696	// non-pointer, non-interface field appearing in ForceSendFields will be
7697	// sent to the server regardless of whether the field is empty or not.
7698	// This may be used to include empty fields in Patch requests.
7699	ForceSendFields []string `json:"-"`
7700
7701	// NullFields is a list of field names (e.g. "AmountPretax") to include
7702	// in API requests with the JSON null value. By default, fields with
7703	// empty values are omitted from API requests. However, any field with
7704	// an empty value appearing in NullFields will be sent to the server as
7705	// null. It is an error if a field in this list has a non-empty value.
7706	// This may be used to include null fields in Patch requests.
7707	NullFields []string `json:"-"`
7708}
7709
7710func (s *OrdersInStoreRefundLineItemRequest) MarshalJSON() ([]byte, error) {
7711	type NoMethod OrdersInStoreRefundLineItemRequest
7712	raw := NoMethod(*s)
7713	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7714}
7715
7716type OrdersInStoreRefundLineItemResponse struct {
7717	// ExecutionStatus: The status of the execution. Acceptable values are:
7718	// - "duplicate" - "executed"
7719	ExecutionStatus string `json:"executionStatus,omitempty"`
7720
7721	// Kind: Identifies what kind of resource this is. Value: the fixed
7722	// string "content#ordersInStoreRefundLineItemResponse".
7723	Kind string `json:"kind,omitempty"`
7724
7725	// ServerResponse contains the HTTP response code and headers from the
7726	// server.
7727	googleapi.ServerResponse `json:"-"`
7728
7729	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
7730	// unconditionally include in API requests. By default, fields with
7731	// empty or default values are omitted from API requests. However, any
7732	// non-pointer, non-interface field appearing in ForceSendFields will be
7733	// sent to the server regardless of whether the field is empty or not.
7734	// This may be used to include empty fields in Patch requests.
7735	ForceSendFields []string `json:"-"`
7736
7737	// NullFields is a list of field names (e.g. "ExecutionStatus") to
7738	// include in API requests with the JSON null value. By default, fields
7739	// with empty values are omitted from API requests. However, any field
7740	// with an empty value appearing in NullFields will be sent to the
7741	// server as null. It is an error if a field in this list has a
7742	// non-empty value. This may be used to include null fields in Patch
7743	// requests.
7744	NullFields []string `json:"-"`
7745}
7746
7747func (s *OrdersInStoreRefundLineItemResponse) MarshalJSON() ([]byte, error) {
7748	type NoMethod OrdersInStoreRefundLineItemResponse
7749	raw := NoMethod(*s)
7750	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7751}
7752
7753type OrdersListResponse struct {
7754	// Kind: Identifies what kind of resource this is. Value: the fixed
7755	// string "content#ordersListResponse".
7756	Kind string `json:"kind,omitempty"`
7757
7758	// NextPageToken: The token for the retrieval of the next page of
7759	// orders.
7760	NextPageToken string `json:"nextPageToken,omitempty"`
7761
7762	Resources []*Order `json:"resources,omitempty"`
7763
7764	// ServerResponse contains the HTTP response code and headers from the
7765	// server.
7766	googleapi.ServerResponse `json:"-"`
7767
7768	// ForceSendFields is a list of field names (e.g. "Kind") to
7769	// unconditionally include in API requests. By default, fields with
7770	// empty or default values are omitted from API requests. However, any
7771	// non-pointer, non-interface field appearing in ForceSendFields will be
7772	// sent to the server regardless of whether the field is empty or not.
7773	// This may be used to include empty fields in Patch requests.
7774	ForceSendFields []string `json:"-"`
7775
7776	// NullFields is a list of field names (e.g. "Kind") to include in API
7777	// requests with the JSON null value. By default, fields with empty
7778	// values are omitted from API requests. However, any field with an
7779	// empty value appearing in NullFields will be sent to the server as
7780	// null. It is an error if a field in this list has a non-empty value.
7781	// This may be used to include null fields in Patch requests.
7782	NullFields []string `json:"-"`
7783}
7784
7785func (s *OrdersListResponse) MarshalJSON() ([]byte, error) {
7786	type NoMethod OrdersListResponse
7787	raw := NoMethod(*s)
7788	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7789}
7790
7791type OrdersRefundRequest struct {
7792	// Amount: Deprecated. Please use amountPretax and amountTax instead.
7793	Amount *Price `json:"amount,omitempty"`
7794
7795	// AmountPretax: The amount that is refunded. Either amount or
7796	// amountPretax should be filled.
7797	AmountPretax *Price `json:"amountPretax,omitempty"`
7798
7799	// AmountTax: Tax amount that corresponds to refund amount in
7800	// amountPretax. Optional, but if filled, amountPretax must be set.
7801	// Calculated automatically if not provided.
7802	AmountTax *Price `json:"amountTax,omitempty"`
7803
7804	// OperationId: The ID of the operation. Unique across all operations
7805	// for a given order.
7806	OperationId string `json:"operationId,omitempty"`
7807
7808	// Reason: The reason for the refund. Acceptable values are: -
7809	// "adjustment" - "courtesyAdjustment" - "customerCanceled" -
7810	// "customerDiscretionaryReturn" - "deliveredLateByCarrier" -
7811	// "feeAdjustment" - "lateShipmentCredit" - "noInventory" -
7812	// "other" - "priceError" - "productArrivedDamaged" -
7813	// "productNotAsDescribed" - "shippingCostAdjustment" -
7814	// "taxAdjustment" - "undeliverableShippingAddress" -
7815	// "wrongProductShipped"
7816	Reason string `json:"reason,omitempty"`
7817
7818	// ReasonText: The explanation of the reason.
7819	ReasonText string `json:"reasonText,omitempty"`
7820
7821	// ForceSendFields is a list of field names (e.g. "Amount") to
7822	// unconditionally include in API requests. By default, fields with
7823	// empty or default values are omitted from API requests. However, any
7824	// non-pointer, non-interface field appearing in ForceSendFields will be
7825	// sent to the server regardless of whether the field is empty or not.
7826	// This may be used to include empty fields in Patch requests.
7827	ForceSendFields []string `json:"-"`
7828
7829	// NullFields is a list of field names (e.g. "Amount") to include in API
7830	// requests with the JSON null value. By default, fields with empty
7831	// values are omitted from API requests. However, any field with an
7832	// empty value appearing in NullFields will be sent to the server as
7833	// null. It is an error if a field in this list has a non-empty value.
7834	// This may be used to include null fields in Patch requests.
7835	NullFields []string `json:"-"`
7836}
7837
7838func (s *OrdersRefundRequest) MarshalJSON() ([]byte, error) {
7839	type NoMethod OrdersRefundRequest
7840	raw := NoMethod(*s)
7841	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7842}
7843
7844type OrdersRefundResponse struct {
7845	// ExecutionStatus: The status of the execution. Acceptable values are:
7846	// - "duplicate" - "executed"
7847	ExecutionStatus string `json:"executionStatus,omitempty"`
7848
7849	// Kind: Identifies what kind of resource this is. Value: the fixed
7850	// string "content#ordersRefundResponse".
7851	Kind string `json:"kind,omitempty"`
7852
7853	// ServerResponse contains the HTTP response code and headers from the
7854	// server.
7855	googleapi.ServerResponse `json:"-"`
7856
7857	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
7858	// unconditionally include in API requests. By default, fields with
7859	// empty or default values are omitted from API requests. However, any
7860	// non-pointer, non-interface field appearing in ForceSendFields will be
7861	// sent to the server regardless of whether the field is empty or not.
7862	// This may be used to include empty fields in Patch requests.
7863	ForceSendFields []string `json:"-"`
7864
7865	// NullFields is a list of field names (e.g. "ExecutionStatus") to
7866	// include in API requests with the JSON null value. By default, fields
7867	// with empty values are omitted from API requests. However, any field
7868	// with an empty value appearing in NullFields will be sent to the
7869	// server as null. It is an error if a field in this list has a
7870	// non-empty value. This may be used to include null fields in Patch
7871	// requests.
7872	NullFields []string `json:"-"`
7873}
7874
7875func (s *OrdersRefundResponse) MarshalJSON() ([]byte, error) {
7876	type NoMethod OrdersRefundResponse
7877	raw := NoMethod(*s)
7878	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7879}
7880
7881type OrdersRejectReturnLineItemRequest struct {
7882	// LineItemId: The ID of the line item to return. Either lineItemId or
7883	// productId is required.
7884	LineItemId string `json:"lineItemId,omitempty"`
7885
7886	// OperationId: The ID of the operation. Unique across all operations
7887	// for a given order.
7888	OperationId string `json:"operationId,omitempty"`
7889
7890	// ProductId: The ID of the product to return. This is the REST ID used
7891	// in the products service. Either lineItemId or productId is required.
7892	ProductId string `json:"productId,omitempty"`
7893
7894	// Quantity: The quantity to return and refund.
7895	Quantity int64 `json:"quantity,omitempty"`
7896
7897	// Reason: The reason for the return. Acceptable values are: -
7898	// "damagedOrUsed" - "missingComponent" - "notEligible" -
7899	// "other" - "outOfReturnWindow"
7900	Reason string `json:"reason,omitempty"`
7901
7902	// ReasonText: The explanation of the reason.
7903	ReasonText string `json:"reasonText,omitempty"`
7904
7905	// ForceSendFields is a list of field names (e.g. "LineItemId") to
7906	// unconditionally include in API requests. By default, fields with
7907	// empty or default values are omitted from API requests. However, any
7908	// non-pointer, non-interface field appearing in ForceSendFields will be
7909	// sent to the server regardless of whether the field is empty or not.
7910	// This may be used to include empty fields in Patch requests.
7911	ForceSendFields []string `json:"-"`
7912
7913	// NullFields is a list of field names (e.g. "LineItemId") to include in
7914	// API requests with the JSON null value. By default, fields with empty
7915	// values are omitted from API requests. However, any field with an
7916	// empty value appearing in NullFields will be sent to the server as
7917	// null. It is an error if a field in this list has a non-empty value.
7918	// This may be used to include null fields in Patch requests.
7919	NullFields []string `json:"-"`
7920}
7921
7922func (s *OrdersRejectReturnLineItemRequest) MarshalJSON() ([]byte, error) {
7923	type NoMethod OrdersRejectReturnLineItemRequest
7924	raw := NoMethod(*s)
7925	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7926}
7927
7928type OrdersRejectReturnLineItemResponse struct {
7929	// ExecutionStatus: The status of the execution. Acceptable values are:
7930	// - "duplicate" - "executed"
7931	ExecutionStatus string `json:"executionStatus,omitempty"`
7932
7933	// Kind: Identifies what kind of resource this is. Value: the fixed
7934	// string "content#ordersRejectReturnLineItemResponse".
7935	Kind string `json:"kind,omitempty"`
7936
7937	// ServerResponse contains the HTTP response code and headers from the
7938	// server.
7939	googleapi.ServerResponse `json:"-"`
7940
7941	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
7942	// unconditionally include in API requests. By default, fields with
7943	// empty or default values are omitted from API requests. However, any
7944	// non-pointer, non-interface field appearing in ForceSendFields will be
7945	// sent to the server regardless of whether the field is empty or not.
7946	// This may be used to include empty fields in Patch requests.
7947	ForceSendFields []string `json:"-"`
7948
7949	// NullFields is a list of field names (e.g. "ExecutionStatus") to
7950	// include in API requests with the JSON null value. By default, fields
7951	// with empty values are omitted from API requests. However, any field
7952	// with an empty value appearing in NullFields will be sent to the
7953	// server as null. It is an error if a field in this list has a
7954	// non-empty value. This may be used to include null fields in Patch
7955	// requests.
7956	NullFields []string `json:"-"`
7957}
7958
7959func (s *OrdersRejectReturnLineItemResponse) MarshalJSON() ([]byte, error) {
7960	type NoMethod OrdersRejectReturnLineItemResponse
7961	raw := NoMethod(*s)
7962	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7963}
7964
7965type OrdersReturnLineItemRequest struct {
7966	// LineItemId: The ID of the line item to return. Either lineItemId or
7967	// productId is required.
7968	LineItemId string `json:"lineItemId,omitempty"`
7969
7970	// OperationId: The ID of the operation. Unique across all operations
7971	// for a given order.
7972	OperationId string `json:"operationId,omitempty"`
7973
7974	// ProductId: The ID of the product to return. This is the REST ID used
7975	// in the products service. Either lineItemId or productId is required.
7976	ProductId string `json:"productId,omitempty"`
7977
7978	// Quantity: The quantity to return.
7979	Quantity int64 `json:"quantity,omitempty"`
7980
7981	// Reason: The reason for the return. Acceptable values are: -
7982	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
7983	// - "deliveredTooLate" - "expiredItem" - "invalidCoupon" -
7984	// "malformedShippingAddress" - "other" - "productArrivedDamaged"
7985	// - "productNotAsDescribed" - "qualityNotAsExpected" -
7986	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
7987	// "wrongProductShipped"
7988	Reason string `json:"reason,omitempty"`
7989
7990	// ReasonText: The explanation of the reason.
7991	ReasonText string `json:"reasonText,omitempty"`
7992
7993	// ForceSendFields is a list of field names (e.g. "LineItemId") to
7994	// unconditionally include in API requests. By default, fields with
7995	// empty or default values are omitted from API requests. However, any
7996	// non-pointer, non-interface field appearing in ForceSendFields will be
7997	// sent to the server regardless of whether the field is empty or not.
7998	// This may be used to include empty fields in Patch requests.
7999	ForceSendFields []string `json:"-"`
8000
8001	// NullFields is a list of field names (e.g. "LineItemId") to include in
8002	// API requests with the JSON null value. By default, fields with empty
8003	// values are omitted from API requests. However, any field with an
8004	// empty value appearing in NullFields will be sent to the server as
8005	// null. It is an error if a field in this list has a non-empty value.
8006	// This may be used to include null fields in Patch requests.
8007	NullFields []string `json:"-"`
8008}
8009
8010func (s *OrdersReturnLineItemRequest) MarshalJSON() ([]byte, error) {
8011	type NoMethod OrdersReturnLineItemRequest
8012	raw := NoMethod(*s)
8013	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8014}
8015
8016type OrdersReturnLineItemResponse struct {
8017	// ExecutionStatus: The status of the execution. Acceptable values are:
8018	// - "duplicate" - "executed"
8019	ExecutionStatus string `json:"executionStatus,omitempty"`
8020
8021	// Kind: Identifies what kind of resource this is. Value: the fixed
8022	// string "content#ordersReturnLineItemResponse".
8023	Kind string `json:"kind,omitempty"`
8024
8025	// ServerResponse contains the HTTP response code and headers from the
8026	// server.
8027	googleapi.ServerResponse `json:"-"`
8028
8029	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8030	// unconditionally include in API requests. By default, fields with
8031	// empty or default values are omitted from API requests. However, any
8032	// non-pointer, non-interface field appearing in ForceSendFields will be
8033	// sent to the server regardless of whether the field is empty or not.
8034	// This may be used to include empty fields in Patch requests.
8035	ForceSendFields []string `json:"-"`
8036
8037	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8038	// include in API requests with the JSON null value. By default, fields
8039	// with empty values are omitted from API requests. However, any field
8040	// with an empty value appearing in NullFields will be sent to the
8041	// server as null. It is an error if a field in this list has a
8042	// non-empty value. This may be used to include null fields in Patch
8043	// requests.
8044	NullFields []string `json:"-"`
8045}
8046
8047func (s *OrdersReturnLineItemResponse) MarshalJSON() ([]byte, error) {
8048	type NoMethod OrdersReturnLineItemResponse
8049	raw := NoMethod(*s)
8050	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8051}
8052
8053type OrdersReturnRefundLineItemRequest struct {
8054	// AmountPretax: The amount that is refunded. If omitted, refundless
8055	// return is assumed (same as calling returnLineItem method).
8056	AmountPretax *Price `json:"amountPretax,omitempty"`
8057
8058	// AmountTax: Tax amount that corresponds to refund amount in
8059	// amountPretax. Optional, but if filled, then amountPretax must be set.
8060	// Calculated automatically if not provided.
8061	AmountTax *Price `json:"amountTax,omitempty"`
8062
8063	// LineItemId: The ID of the line item to return. Either lineItemId or
8064	// productId is required.
8065	LineItemId string `json:"lineItemId,omitempty"`
8066
8067	// OperationId: The ID of the operation. Unique across all operations
8068	// for a given order.
8069	OperationId string `json:"operationId,omitempty"`
8070
8071	// ProductId: The ID of the product to return. This is the REST ID used
8072	// in the products service. Either lineItemId or productId is required.
8073	ProductId string `json:"productId,omitempty"`
8074
8075	// Quantity: The quantity to return and refund. Quantity is required.
8076	Quantity int64 `json:"quantity,omitempty"`
8077
8078	// Reason: The reason for the return. Acceptable values are: -
8079	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
8080	// - "deliveredTooLate" - "expiredItem" - "invalidCoupon" -
8081	// "malformedShippingAddress" - "other" - "productArrivedDamaged"
8082	// - "productNotAsDescribed" - "qualityNotAsExpected" -
8083	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
8084	// "wrongProductShipped"
8085	Reason string `json:"reason,omitempty"`
8086
8087	// ReasonText: The explanation of the reason.
8088	ReasonText string `json:"reasonText,omitempty"`
8089
8090	// ForceSendFields is a list of field names (e.g. "AmountPretax") to
8091	// unconditionally include in API requests. By default, fields with
8092	// empty or default values are omitted from API requests. However, any
8093	// non-pointer, non-interface field appearing in ForceSendFields will be
8094	// sent to the server regardless of whether the field is empty or not.
8095	// This may be used to include empty fields in Patch requests.
8096	ForceSendFields []string `json:"-"`
8097
8098	// NullFields is a list of field names (e.g. "AmountPretax") to include
8099	// in API requests with the JSON null value. By default, fields with
8100	// empty values are omitted from API requests. However, any field with
8101	// an empty value appearing in NullFields will be sent to the server as
8102	// null. It is an error if a field in this list has a non-empty value.
8103	// This may be used to include null fields in Patch requests.
8104	NullFields []string `json:"-"`
8105}
8106
8107func (s *OrdersReturnRefundLineItemRequest) MarshalJSON() ([]byte, error) {
8108	type NoMethod OrdersReturnRefundLineItemRequest
8109	raw := NoMethod(*s)
8110	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8111}
8112
8113type OrdersReturnRefundLineItemResponse struct {
8114	// ExecutionStatus: The status of the execution. Acceptable values are:
8115	// - "duplicate" - "executed"
8116	ExecutionStatus string `json:"executionStatus,omitempty"`
8117
8118	// Kind: Identifies what kind of resource this is. Value: the fixed
8119	// string "content#ordersReturnRefundLineItemResponse".
8120	Kind string `json:"kind,omitempty"`
8121
8122	// ServerResponse contains the HTTP response code and headers from the
8123	// server.
8124	googleapi.ServerResponse `json:"-"`
8125
8126	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8127	// unconditionally include in API requests. By default, fields with
8128	// empty or default values are omitted from API requests. However, any
8129	// non-pointer, non-interface field appearing in ForceSendFields will be
8130	// sent to the server regardless of whether the field is empty or not.
8131	// This may be used to include empty fields in Patch requests.
8132	ForceSendFields []string `json:"-"`
8133
8134	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8135	// include in API requests with the JSON null value. By default, fields
8136	// with empty values are omitted from API requests. However, any field
8137	// with an empty value appearing in NullFields will be sent to the
8138	// server as null. It is an error if a field in this list has a
8139	// non-empty value. This may be used to include null fields in Patch
8140	// requests.
8141	NullFields []string `json:"-"`
8142}
8143
8144func (s *OrdersReturnRefundLineItemResponse) MarshalJSON() ([]byte, error) {
8145	type NoMethod OrdersReturnRefundLineItemResponse
8146	raw := NoMethod(*s)
8147	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8148}
8149
8150type OrdersSetLineItemMetadataRequest struct {
8151	Annotations []*OrderMerchantProvidedAnnotation `json:"annotations,omitempty"`
8152
8153	// LineItemId: The ID of the line item to set metadata. Either
8154	// lineItemId or productId is required.
8155	LineItemId string `json:"lineItemId,omitempty"`
8156
8157	// OperationId: The ID of the operation. Unique across all operations
8158	// for a given order.
8159	OperationId string `json:"operationId,omitempty"`
8160
8161	// ProductId: The ID of the product to set metadata. This is the REST ID
8162	// used in the products service. Either lineItemId or productId is
8163	// required.
8164	ProductId string `json:"productId,omitempty"`
8165
8166	// ForceSendFields is a list of field names (e.g. "Annotations") to
8167	// unconditionally include in API requests. By default, fields with
8168	// empty or default values are omitted from API requests. However, any
8169	// non-pointer, non-interface field appearing in ForceSendFields will be
8170	// sent to the server regardless of whether the field is empty or not.
8171	// This may be used to include empty fields in Patch requests.
8172	ForceSendFields []string `json:"-"`
8173
8174	// NullFields is a list of field names (e.g. "Annotations") to include
8175	// in API requests with the JSON null value. By default, fields with
8176	// empty values are omitted from API requests. However, any field with
8177	// an empty value appearing in NullFields will be sent to the server as
8178	// null. It is an error if a field in this list has a non-empty value.
8179	// This may be used to include null fields in Patch requests.
8180	NullFields []string `json:"-"`
8181}
8182
8183func (s *OrdersSetLineItemMetadataRequest) MarshalJSON() ([]byte, error) {
8184	type NoMethod OrdersSetLineItemMetadataRequest
8185	raw := NoMethod(*s)
8186	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8187}
8188
8189type OrdersSetLineItemMetadataResponse struct {
8190	// ExecutionStatus: The status of the execution. Acceptable values are:
8191	// - "duplicate" - "executed"
8192	ExecutionStatus string `json:"executionStatus,omitempty"`
8193
8194	// Kind: Identifies what kind of resource this is. Value: the fixed
8195	// string "content#ordersSetLineItemMetadataResponse".
8196	Kind string `json:"kind,omitempty"`
8197
8198	// ServerResponse contains the HTTP response code and headers from the
8199	// server.
8200	googleapi.ServerResponse `json:"-"`
8201
8202	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8203	// unconditionally include in API requests. By default, fields with
8204	// empty or default values are omitted from API requests. However, any
8205	// non-pointer, non-interface field appearing in ForceSendFields will be
8206	// sent to the server regardless of whether the field is empty or not.
8207	// This may be used to include empty fields in Patch requests.
8208	ForceSendFields []string `json:"-"`
8209
8210	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8211	// include in API requests with the JSON null value. By default, fields
8212	// with empty values are omitted from API requests. However, any field
8213	// with an empty value appearing in NullFields will be sent to the
8214	// server as null. It is an error if a field in this list has a
8215	// non-empty value. This may be used to include null fields in Patch
8216	// requests.
8217	NullFields []string `json:"-"`
8218}
8219
8220func (s *OrdersSetLineItemMetadataResponse) MarshalJSON() ([]byte, error) {
8221	type NoMethod OrdersSetLineItemMetadataResponse
8222	raw := NoMethod(*s)
8223	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8224}
8225
8226type OrdersShipLineItemsRequest struct {
8227	// Carrier: Deprecated. Please use shipmentInfo instead. The carrier
8228	// handling the shipment. See `shipments[].carrier` in the Orders
8229	// resource representation for a list of acceptable values.
8230	Carrier string `json:"carrier,omitempty"`
8231
8232	// LineItems: Line items to ship.
8233	LineItems []*OrderShipmentLineItemShipment `json:"lineItems,omitempty"`
8234
8235	// OperationId: The ID of the operation. Unique across all operations
8236	// for a given order.
8237	OperationId string `json:"operationId,omitempty"`
8238
8239	// ShipmentGroupId: ID of the shipment group. Required for orders that
8240	// use the orderinvoices service.
8241	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
8242
8243	// ShipmentId: Deprecated. Please use shipmentInfo instead. The ID of
8244	// the shipment.
8245	ShipmentId string `json:"shipmentId,omitempty"`
8246
8247	// ShipmentInfos: Shipment information. This field is repeated because a
8248	// single line item can be shipped in several packages (and have several
8249	// tracking IDs).
8250	ShipmentInfos []*OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo `json:"shipmentInfos,omitempty"`
8251
8252	// TrackingId: Deprecated. Please use shipmentInfo instead. The tracking
8253	// ID for the shipment.
8254	TrackingId string `json:"trackingId,omitempty"`
8255
8256	// ForceSendFields is a list of field names (e.g. "Carrier") to
8257	// unconditionally include in API requests. By default, fields with
8258	// empty or default values are omitted from API requests. However, any
8259	// non-pointer, non-interface field appearing in ForceSendFields will be
8260	// sent to the server regardless of whether the field is empty or not.
8261	// This may be used to include empty fields in Patch requests.
8262	ForceSendFields []string `json:"-"`
8263
8264	// NullFields is a list of field names (e.g. "Carrier") to include in
8265	// API requests with the JSON null value. By default, fields with empty
8266	// values are omitted from API requests. However, any field with an
8267	// empty value appearing in NullFields will be sent to the server as
8268	// null. It is an error if a field in this list has a non-empty value.
8269	// This may be used to include null fields in Patch requests.
8270	NullFields []string `json:"-"`
8271}
8272
8273func (s *OrdersShipLineItemsRequest) MarshalJSON() ([]byte, error) {
8274	type NoMethod OrdersShipLineItemsRequest
8275	raw := NoMethod(*s)
8276	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8277}
8278
8279type OrdersShipLineItemsResponse struct {
8280	// ExecutionStatus: The status of the execution. Acceptable values are:
8281	// - "duplicate" - "executed"
8282	ExecutionStatus string `json:"executionStatus,omitempty"`
8283
8284	// Kind: Identifies what kind of resource this is. Value: the fixed
8285	// string "content#ordersShipLineItemsResponse".
8286	Kind string `json:"kind,omitempty"`
8287
8288	// ServerResponse contains the HTTP response code and headers from the
8289	// server.
8290	googleapi.ServerResponse `json:"-"`
8291
8292	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8293	// unconditionally include in API requests. By default, fields with
8294	// empty or default values are omitted from API requests. However, any
8295	// non-pointer, non-interface field appearing in ForceSendFields will be
8296	// sent to the server regardless of whether the field is empty or not.
8297	// This may be used to include empty fields in Patch requests.
8298	ForceSendFields []string `json:"-"`
8299
8300	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8301	// include in API requests with the JSON null value. By default, fields
8302	// with empty values are omitted from API requests. However, any field
8303	// with an empty value appearing in NullFields will be sent to the
8304	// server as null. It is an error if a field in this list has a
8305	// non-empty value. This may be used to include null fields in Patch
8306	// requests.
8307	NullFields []string `json:"-"`
8308}
8309
8310func (s *OrdersShipLineItemsResponse) MarshalJSON() ([]byte, error) {
8311	type NoMethod OrdersShipLineItemsResponse
8312	raw := NoMethod(*s)
8313	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8314}
8315
8316type OrdersUpdateLineItemShippingDetailsRequest struct {
8317	// DeliverByDate: Updated delivery by date, in ISO 8601 format. If not
8318	// specified only ship by date is updated. Provided date should be
8319	// within 1 year timeframe and can not be a date in the past.
8320	DeliverByDate string `json:"deliverByDate,omitempty"`
8321
8322	// LineItemId: The ID of the line item to set metadata. Either
8323	// lineItemId or productId is required.
8324	LineItemId string `json:"lineItemId,omitempty"`
8325
8326	// OperationId: The ID of the operation. Unique across all operations
8327	// for a given order.
8328	OperationId string `json:"operationId,omitempty"`
8329
8330	// ProductId: The ID of the product to set metadata. This is the REST ID
8331	// used in the products service. Either lineItemId or productId is
8332	// required.
8333	ProductId string `json:"productId,omitempty"`
8334
8335	// ShipByDate: Updated ship by date, in ISO 8601 format. If not
8336	// specified only deliver by date is updated. Provided date should be
8337	// within 1 year timeframe and can not be a date in the past.
8338	ShipByDate string `json:"shipByDate,omitempty"`
8339
8340	// ForceSendFields is a list of field names (e.g. "DeliverByDate") to
8341	// unconditionally include in API requests. By default, fields with
8342	// empty or default values are omitted from API requests. However, any
8343	// non-pointer, non-interface field appearing in ForceSendFields will be
8344	// sent to the server regardless of whether the field is empty or not.
8345	// This may be used to include empty fields in Patch requests.
8346	ForceSendFields []string `json:"-"`
8347
8348	// NullFields is a list of field names (e.g. "DeliverByDate") to include
8349	// in API requests with the JSON null value. By default, fields with
8350	// empty values are omitted from API requests. However, any field with
8351	// an empty value appearing in NullFields will be sent to the server as
8352	// null. It is an error if a field in this list has a non-empty value.
8353	// This may be used to include null fields in Patch requests.
8354	NullFields []string `json:"-"`
8355}
8356
8357func (s *OrdersUpdateLineItemShippingDetailsRequest) MarshalJSON() ([]byte, error) {
8358	type NoMethod OrdersUpdateLineItemShippingDetailsRequest
8359	raw := NoMethod(*s)
8360	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8361}
8362
8363type OrdersUpdateLineItemShippingDetailsResponse struct {
8364	// ExecutionStatus: The status of the execution. Acceptable values are:
8365	// - "duplicate" - "executed"
8366	ExecutionStatus string `json:"executionStatus,omitempty"`
8367
8368	// Kind: Identifies what kind of resource this is. Value: the fixed
8369	// string "content#ordersUpdateLineItemShippingDetailsResponse".
8370	Kind string `json:"kind,omitempty"`
8371
8372	// ServerResponse contains the HTTP response code and headers from the
8373	// server.
8374	googleapi.ServerResponse `json:"-"`
8375
8376	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8377	// unconditionally include in API requests. By default, fields with
8378	// empty or default values are omitted from API requests. However, any
8379	// non-pointer, non-interface field appearing in ForceSendFields will be
8380	// sent to the server regardless of whether the field is empty or not.
8381	// This may be used to include empty fields in Patch requests.
8382	ForceSendFields []string `json:"-"`
8383
8384	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8385	// include in API requests with the JSON null value. By default, fields
8386	// with empty values are omitted from API requests. However, any field
8387	// with an empty value appearing in NullFields will be sent to the
8388	// server as null. It is an error if a field in this list has a
8389	// non-empty value. This may be used to include null fields in Patch
8390	// requests.
8391	NullFields []string `json:"-"`
8392}
8393
8394func (s *OrdersUpdateLineItemShippingDetailsResponse) MarshalJSON() ([]byte, error) {
8395	type NoMethod OrdersUpdateLineItemShippingDetailsResponse
8396	raw := NoMethod(*s)
8397	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8398}
8399
8400type OrdersUpdateMerchantOrderIdRequest struct {
8401	// MerchantOrderId: The merchant order id to be assigned to the order.
8402	// Must be unique per merchant.
8403	MerchantOrderId string `json:"merchantOrderId,omitempty"`
8404
8405	// OperationId: The ID of the operation. Unique across all operations
8406	// for a given order.
8407	OperationId string `json:"operationId,omitempty"`
8408
8409	// ForceSendFields is a list of field names (e.g. "MerchantOrderId") to
8410	// unconditionally include in API requests. By default, fields with
8411	// empty or default values are omitted from API requests. However, any
8412	// non-pointer, non-interface field appearing in ForceSendFields will be
8413	// sent to the server regardless of whether the field is empty or not.
8414	// This may be used to include empty fields in Patch requests.
8415	ForceSendFields []string `json:"-"`
8416
8417	// NullFields is a list of field names (e.g. "MerchantOrderId") to
8418	// include in API requests with the JSON null value. By default, fields
8419	// with empty values are omitted from API requests. However, any field
8420	// with an empty value appearing in NullFields will be sent to the
8421	// server as null. It is an error if a field in this list has a
8422	// non-empty value. This may be used to include null fields in Patch
8423	// requests.
8424	NullFields []string `json:"-"`
8425}
8426
8427func (s *OrdersUpdateMerchantOrderIdRequest) MarshalJSON() ([]byte, error) {
8428	type NoMethod OrdersUpdateMerchantOrderIdRequest
8429	raw := NoMethod(*s)
8430	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8431}
8432
8433type OrdersUpdateMerchantOrderIdResponse struct {
8434	// ExecutionStatus: The status of the execution. Acceptable values are:
8435	// - "duplicate" - "executed"
8436	ExecutionStatus string `json:"executionStatus,omitempty"`
8437
8438	// Kind: Identifies what kind of resource this is. Value: the fixed
8439	// string "content#ordersUpdateMerchantOrderIdResponse".
8440	Kind string `json:"kind,omitempty"`
8441
8442	// ServerResponse contains the HTTP response code and headers from the
8443	// server.
8444	googleapi.ServerResponse `json:"-"`
8445
8446	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8447	// unconditionally include in API requests. By default, fields with
8448	// empty or default values are omitted from API requests. However, any
8449	// non-pointer, non-interface field appearing in ForceSendFields will be
8450	// sent to the server regardless of whether the field is empty or not.
8451	// This may be used to include empty fields in Patch requests.
8452	ForceSendFields []string `json:"-"`
8453
8454	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8455	// include in API requests with the JSON null value. By default, fields
8456	// with empty values are omitted from API requests. However, any field
8457	// with an empty value appearing in NullFields will be sent to the
8458	// server as null. It is an error if a field in this list has a
8459	// non-empty value. This may be used to include null fields in Patch
8460	// requests.
8461	NullFields []string `json:"-"`
8462}
8463
8464func (s *OrdersUpdateMerchantOrderIdResponse) MarshalJSON() ([]byte, error) {
8465	type NoMethod OrdersUpdateMerchantOrderIdResponse
8466	raw := NoMethod(*s)
8467	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8468}
8469
8470type OrdersUpdateShipmentRequest struct {
8471	// Carrier: The carrier handling the shipment. Not updated if missing.
8472	// See `shipments[].carrier` in the Orders resource representation for a
8473	// list of acceptable values.
8474	Carrier string `json:"carrier,omitempty"`
8475
8476	// DeliveryDate: Date on which the shipment has been delivered, in ISO
8477	// 8601 format. Optional and can be provided only if `status` is
8478	// `delivered`.
8479	DeliveryDate string `json:"deliveryDate,omitempty"`
8480
8481	// OperationId: The ID of the operation. Unique across all operations
8482	// for a given order.
8483	OperationId string `json:"operationId,omitempty"`
8484
8485	// ShipmentId: The ID of the shipment.
8486	ShipmentId string `json:"shipmentId,omitempty"`
8487
8488	// Status: New status for the shipment. Not updated if missing.
8489	// Acceptable values are: - "delivered" - "undeliverable" -
8490	// "readyForPickup"
8491	Status string `json:"status,omitempty"`
8492
8493	// TrackingId: The tracking ID for the shipment. Not updated if missing.
8494	TrackingId string `json:"trackingId,omitempty"`
8495
8496	// ForceSendFields is a list of field names (e.g. "Carrier") to
8497	// unconditionally include in API requests. By default, fields with
8498	// empty or default values are omitted from API requests. However, any
8499	// non-pointer, non-interface field appearing in ForceSendFields will be
8500	// sent to the server regardless of whether the field is empty or not.
8501	// This may be used to include empty fields in Patch requests.
8502	ForceSendFields []string `json:"-"`
8503
8504	// NullFields is a list of field names (e.g. "Carrier") to include in
8505	// API requests with the JSON null value. By default, fields with empty
8506	// values are omitted from API requests. However, any field with an
8507	// empty value appearing in NullFields will be sent to the server as
8508	// null. It is an error if a field in this list has a non-empty value.
8509	// This may be used to include null fields in Patch requests.
8510	NullFields []string `json:"-"`
8511}
8512
8513func (s *OrdersUpdateShipmentRequest) MarshalJSON() ([]byte, error) {
8514	type NoMethod OrdersUpdateShipmentRequest
8515	raw := NoMethod(*s)
8516	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8517}
8518
8519type OrdersUpdateShipmentResponse struct {
8520	// ExecutionStatus: The status of the execution. Acceptable values are:
8521	// - "duplicate" - "executed"
8522	ExecutionStatus string `json:"executionStatus,omitempty"`
8523
8524	// Kind: Identifies what kind of resource this is. Value: the fixed
8525	// string "content#ordersUpdateShipmentResponse".
8526	Kind string `json:"kind,omitempty"`
8527
8528	// ServerResponse contains the HTTP response code and headers from the
8529	// server.
8530	googleapi.ServerResponse `json:"-"`
8531
8532	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8533	// unconditionally include in API requests. By default, fields with
8534	// empty or default values are omitted from API requests. However, any
8535	// non-pointer, non-interface field appearing in ForceSendFields will be
8536	// sent to the server regardless of whether the field is empty or not.
8537	// This may be used to include empty fields in Patch requests.
8538	ForceSendFields []string `json:"-"`
8539
8540	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8541	// include in API requests with the JSON null value. By default, fields
8542	// with empty values are omitted from API requests. However, any field
8543	// with an empty value appearing in NullFields will be sent to the
8544	// server as null. It is an error if a field in this list has a
8545	// non-empty value. This may be used to include null fields in Patch
8546	// requests.
8547	NullFields []string `json:"-"`
8548}
8549
8550func (s *OrdersUpdateShipmentResponse) MarshalJSON() ([]byte, error) {
8551	type NoMethod OrdersUpdateShipmentResponse
8552	raw := NoMethod(*s)
8553	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8554}
8555
8556type PickupCarrierService struct {
8557	// CarrierName: The name of the pickup carrier (e.g., "UPS").
8558	// Required.
8559	CarrierName string `json:"carrierName,omitempty"`
8560
8561	// ServiceName: The name of the pickup service (e.g., "Access point").
8562	// Required.
8563	ServiceName string `json:"serviceName,omitempty"`
8564
8565	// ForceSendFields is a list of field names (e.g. "CarrierName") to
8566	// unconditionally include in API requests. By default, fields with
8567	// empty or default values are omitted from API requests. However, any
8568	// non-pointer, non-interface field appearing in ForceSendFields will be
8569	// sent to the server regardless of whether the field is empty or not.
8570	// This may be used to include empty fields in Patch requests.
8571	ForceSendFields []string `json:"-"`
8572
8573	// NullFields is a list of field names (e.g. "CarrierName") to include
8574	// in API requests with the JSON null value. By default, fields with
8575	// empty values are omitted from API requests. However, any field with
8576	// an empty value appearing in NullFields will be sent to the server as
8577	// null. It is an error if a field in this list has a non-empty value.
8578	// This may be used to include null fields in Patch requests.
8579	NullFields []string `json:"-"`
8580}
8581
8582func (s *PickupCarrierService) MarshalJSON() ([]byte, error) {
8583	type NoMethod PickupCarrierService
8584	raw := NoMethod(*s)
8585	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8586}
8587
8588type PickupServicesPickupService struct {
8589	// CarrierName: The name of the carrier (e.g., "UPS"). Always present.
8590	CarrierName string `json:"carrierName,omitempty"`
8591
8592	// Country: The CLDR country code of the carrier (e.g., "US"). Always
8593	// present.
8594	Country string `json:"country,omitempty"`
8595
8596	// ServiceName: The name of the pickup service (e.g., "Access point").
8597	// Always present.
8598	ServiceName string `json:"serviceName,omitempty"`
8599
8600	// ForceSendFields is a list of field names (e.g. "CarrierName") to
8601	// unconditionally include in API requests. By default, fields with
8602	// empty or default values are omitted from API requests. However, any
8603	// non-pointer, non-interface field appearing in ForceSendFields will be
8604	// sent to the server regardless of whether the field is empty or not.
8605	// This may be used to include empty fields in Patch requests.
8606	ForceSendFields []string `json:"-"`
8607
8608	// NullFields is a list of field names (e.g. "CarrierName") to include
8609	// in API requests with the JSON null value. By default, fields with
8610	// empty values are omitted from API requests. However, any field with
8611	// an empty value appearing in NullFields will be sent to the server as
8612	// null. It is an error if a field in this list has a non-empty value.
8613	// This may be used to include null fields in Patch requests.
8614	NullFields []string `json:"-"`
8615}
8616
8617func (s *PickupServicesPickupService) MarshalJSON() ([]byte, error) {
8618	type NoMethod PickupServicesPickupService
8619	raw := NoMethod(*s)
8620	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8621}
8622
8623type PosCustomBatchRequest struct {
8624	// Entries: The request entries to be processed in the batch.
8625	Entries []*PosCustomBatchRequestEntry `json:"entries,omitempty"`
8626
8627	// ForceSendFields is a list of field names (e.g. "Entries") to
8628	// unconditionally include in API requests. By default, fields with
8629	// empty or default values are omitted from API requests. However, any
8630	// non-pointer, non-interface field appearing in ForceSendFields will be
8631	// sent to the server regardless of whether the field is empty or not.
8632	// This may be used to include empty fields in Patch requests.
8633	ForceSendFields []string `json:"-"`
8634
8635	// NullFields is a list of field names (e.g. "Entries") to include in
8636	// API requests with the JSON null value. By default, fields with empty
8637	// values are omitted from API requests. However, any field with an
8638	// empty value appearing in NullFields will be sent to the server as
8639	// null. It is an error if a field in this list has a non-empty value.
8640	// This may be used to include null fields in Patch requests.
8641	NullFields []string `json:"-"`
8642}
8643
8644func (s *PosCustomBatchRequest) MarshalJSON() ([]byte, error) {
8645	type NoMethod PosCustomBatchRequest
8646	raw := NoMethod(*s)
8647	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8648}
8649
8650type PosCustomBatchRequestEntry struct {
8651	// BatchId: An entry ID, unique within the batch request.
8652	BatchId int64 `json:"batchId,omitempty"`
8653
8654	// Inventory: The inventory to submit. This should be set only if the
8655	// method is `inventory`.
8656	Inventory *PosInventory `json:"inventory,omitempty"`
8657
8658	// MerchantId: The ID of the POS data provider.
8659	MerchantId uint64 `json:"merchantId,omitempty,string"`
8660
8661	// Method: The method of the batch entry. Acceptable values are: -
8662	// "delete" - "get" - "insert" - "inventory" - "sale"
8663	Method string `json:"method,omitempty"`
8664
8665	// Sale: The sale information to submit. This should be set only if the
8666	// method is `sale`.
8667	Sale *PosSale `json:"sale,omitempty"`
8668
8669	// Store: The store information to submit. This should be set only if
8670	// the method is `insert`.
8671	Store *PosStore `json:"store,omitempty"`
8672
8673	// StoreCode: The store code. This should be set only if the method is
8674	// `delete` or `get`.
8675	StoreCode string `json:"storeCode,omitempty"`
8676
8677	// TargetMerchantId: The ID of the account for which to get/submit data.
8678	TargetMerchantId uint64 `json:"targetMerchantId,omitempty,string"`
8679
8680	// ForceSendFields is a list of field names (e.g. "BatchId") to
8681	// unconditionally include in API requests. By default, fields with
8682	// empty or default values are omitted from API requests. However, any
8683	// non-pointer, non-interface field appearing in ForceSendFields will be
8684	// sent to the server regardless of whether the field is empty or not.
8685	// This may be used to include empty fields in Patch requests.
8686	ForceSendFields []string `json:"-"`
8687
8688	// NullFields is a list of field names (e.g. "BatchId") to include in
8689	// API requests with the JSON null value. By default, fields with empty
8690	// values are omitted from API requests. However, any field with an
8691	// empty value appearing in NullFields will be sent to the server as
8692	// null. It is an error if a field in this list has a non-empty value.
8693	// This may be used to include null fields in Patch requests.
8694	NullFields []string `json:"-"`
8695}
8696
8697func (s *PosCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
8698	type NoMethod PosCustomBatchRequestEntry
8699	raw := NoMethod(*s)
8700	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8701}
8702
8703type PosCustomBatchResponse struct {
8704	// Entries: The result of the execution of the batch requests.
8705	Entries []*PosCustomBatchResponseEntry `json:"entries,omitempty"`
8706
8707	// Kind: Identifies what kind of resource this is. Value: the fixed
8708	// string "content#posCustomBatchResponse".
8709	Kind string `json:"kind,omitempty"`
8710
8711	// ServerResponse contains the HTTP response code and headers from the
8712	// server.
8713	googleapi.ServerResponse `json:"-"`
8714
8715	// ForceSendFields is a list of field names (e.g. "Entries") to
8716	// unconditionally include in API requests. By default, fields with
8717	// empty or default values are omitted from API requests. However, any
8718	// non-pointer, non-interface field appearing in ForceSendFields will be
8719	// sent to the server regardless of whether the field is empty or not.
8720	// This may be used to include empty fields in Patch requests.
8721	ForceSendFields []string `json:"-"`
8722
8723	// NullFields is a list of field names (e.g. "Entries") to include in
8724	// API requests with the JSON null value. By default, fields with empty
8725	// values are omitted from API requests. However, any field with an
8726	// empty value appearing in NullFields will be sent to the server as
8727	// null. It is an error if a field in this list has a non-empty value.
8728	// This may be used to include null fields in Patch requests.
8729	NullFields []string `json:"-"`
8730}
8731
8732func (s *PosCustomBatchResponse) MarshalJSON() ([]byte, error) {
8733	type NoMethod PosCustomBatchResponse
8734	raw := NoMethod(*s)
8735	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8736}
8737
8738type PosCustomBatchResponseEntry struct {
8739	// BatchId: The ID of the request entry to which this entry responds.
8740	BatchId int64 `json:"batchId,omitempty"`
8741
8742	// Errors: A list of errors defined if, and only if, the request failed.
8743	Errors *Errors `json:"errors,omitempty"`
8744
8745	// Inventory: The updated inventory information.
8746	Inventory *PosInventory `json:"inventory,omitempty"`
8747
8748	// Kind: Identifies what kind of resource this is. Value: the fixed
8749	// string "content#posCustomBatchResponseEntry"
8750	Kind string `json:"kind,omitempty"`
8751
8752	// Sale: The updated sale information.
8753	Sale *PosSale `json:"sale,omitempty"`
8754
8755	// Store: The retrieved or updated store information.
8756	Store *PosStore `json:"store,omitempty"`
8757
8758	// ForceSendFields is a list of field names (e.g. "BatchId") to
8759	// unconditionally include in API requests. By default, fields with
8760	// empty or default values are omitted from API requests. However, any
8761	// non-pointer, non-interface field appearing in ForceSendFields will be
8762	// sent to the server regardless of whether the field is empty or not.
8763	// This may be used to include empty fields in Patch requests.
8764	ForceSendFields []string `json:"-"`
8765
8766	// NullFields is a list of field names (e.g. "BatchId") to include in
8767	// API requests with the JSON null value. By default, fields with empty
8768	// values are omitted from API requests. However, any field with an
8769	// empty value appearing in NullFields will be sent to the server as
8770	// null. It is an error if a field in this list has a non-empty value.
8771	// This may be used to include null fields in Patch requests.
8772	NullFields []string `json:"-"`
8773}
8774
8775func (s *PosCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
8776	type NoMethod PosCustomBatchResponseEntry
8777	raw := NoMethod(*s)
8778	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8779}
8780
8781type PosDataProviders struct {
8782	// Country: Country code.
8783	Country string `json:"country,omitempty"`
8784
8785	// PosDataProviders: A list of POS data providers.
8786	PosDataProviders []*PosDataProvidersPosDataProvider `json:"posDataProviders,omitempty"`
8787
8788	// ForceSendFields is a list of field names (e.g. "Country") to
8789	// unconditionally include in API requests. By default, fields with
8790	// empty or default values are omitted from API requests. However, any
8791	// non-pointer, non-interface field appearing in ForceSendFields will be
8792	// sent to the server regardless of whether the field is empty or not.
8793	// This may be used to include empty fields in Patch requests.
8794	ForceSendFields []string `json:"-"`
8795
8796	// NullFields is a list of field names (e.g. "Country") to include in
8797	// API requests with the JSON null value. By default, fields with empty
8798	// values are omitted from API requests. However, any field with an
8799	// empty value appearing in NullFields will be sent to the server as
8800	// null. It is an error if a field in this list has a non-empty value.
8801	// This may be used to include null fields in Patch requests.
8802	NullFields []string `json:"-"`
8803}
8804
8805func (s *PosDataProviders) MarshalJSON() ([]byte, error) {
8806	type NoMethod PosDataProviders
8807	raw := NoMethod(*s)
8808	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8809}
8810
8811type PosDataProvidersPosDataProvider struct {
8812	// DisplayName: The display name of Pos data Provider.
8813	DisplayName string `json:"displayName,omitempty"`
8814
8815	// FullName: The full name of this POS data Provider.
8816	FullName string `json:"fullName,omitempty"`
8817
8818	// ProviderId: The ID of the account.
8819	ProviderId uint64 `json:"providerId,omitempty,string"`
8820
8821	// ForceSendFields is a list of field names (e.g. "DisplayName") to
8822	// unconditionally include in API requests. By default, fields with
8823	// empty or default values are omitted from API requests. However, any
8824	// non-pointer, non-interface field appearing in ForceSendFields will be
8825	// sent to the server regardless of whether the field is empty or not.
8826	// This may be used to include empty fields in Patch requests.
8827	ForceSendFields []string `json:"-"`
8828
8829	// NullFields is a list of field names (e.g. "DisplayName") to include
8830	// in API requests with the JSON null value. By default, fields with
8831	// empty values are omitted from API requests. However, any field with
8832	// an empty value appearing in NullFields will be sent to the server as
8833	// null. It is an error if a field in this list has a non-empty value.
8834	// This may be used to include null fields in Patch requests.
8835	NullFields []string `json:"-"`
8836}
8837
8838func (s *PosDataProvidersPosDataProvider) MarshalJSON() ([]byte, error) {
8839	type NoMethod PosDataProvidersPosDataProvider
8840	raw := NoMethod(*s)
8841	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8842}
8843
8844// PosInventory: The absolute quantity of an item available at the given
8845// store.
8846type PosInventory struct {
8847	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
8848	// the item.
8849	ContentLanguage string `json:"contentLanguage,omitempty"`
8850
8851	// Gtin: Global Trade Item Number.
8852	Gtin string `json:"gtin,omitempty"`
8853
8854	// ItemId: Required. A unique identifier for the item.
8855	ItemId string `json:"itemId,omitempty"`
8856
8857	// Kind: Identifies what kind of resource this is. Value: the fixed
8858	// string "content#posInventory"
8859	Kind string `json:"kind,omitempty"`
8860
8861	// Price: Required. The current price of the item.
8862	Price *Price `json:"price,omitempty"`
8863
8864	// Quantity: Required. The available quantity of the item.
8865	Quantity int64 `json:"quantity,omitempty,string"`
8866
8867	// StoreCode: Required. The identifier of the merchant's store. Either a
8868	// `storeCode` inserted via the API or the code of the store in Google
8869	// My Business.
8870	StoreCode string `json:"storeCode,omitempty"`
8871
8872	// TargetCountry: Required. The CLDR territory code for the item.
8873	TargetCountry string `json:"targetCountry,omitempty"`
8874
8875	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
8876	Timestamp string `json:"timestamp,omitempty"`
8877
8878	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
8879	// unconditionally include in API requests. By default, fields with
8880	// empty or default values are omitted from API requests. However, any
8881	// non-pointer, non-interface field appearing in ForceSendFields will be
8882	// sent to the server regardless of whether the field is empty or not.
8883	// This may be used to include empty fields in Patch requests.
8884	ForceSendFields []string `json:"-"`
8885
8886	// NullFields is a list of field names (e.g. "ContentLanguage") to
8887	// include in API requests with the JSON null value. By default, fields
8888	// with empty values are omitted from API requests. However, any field
8889	// with an empty value appearing in NullFields will be sent to the
8890	// server as null. It is an error if a field in this list has a
8891	// non-empty value. This may be used to include null fields in Patch
8892	// requests.
8893	NullFields []string `json:"-"`
8894}
8895
8896func (s *PosInventory) MarshalJSON() ([]byte, error) {
8897	type NoMethod PosInventory
8898	raw := NoMethod(*s)
8899	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8900}
8901
8902type PosInventoryRequest struct {
8903	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
8904	// the item.
8905	ContentLanguage string `json:"contentLanguage,omitempty"`
8906
8907	// Gtin: Global Trade Item Number.
8908	Gtin string `json:"gtin,omitempty"`
8909
8910	// ItemId: Required. A unique identifier for the item.
8911	ItemId string `json:"itemId,omitempty"`
8912
8913	// Price: Required. The current price of the item.
8914	Price *Price `json:"price,omitempty"`
8915
8916	// Quantity: Required. The available quantity of the item.
8917	Quantity int64 `json:"quantity,omitempty,string"`
8918
8919	// StoreCode: Required. The identifier of the merchant's store. Either a
8920	// `storeCode` inserted via the API or the code of the store in Google
8921	// My Business.
8922	StoreCode string `json:"storeCode,omitempty"`
8923
8924	// TargetCountry: Required. The CLDR territory code for the item.
8925	TargetCountry string `json:"targetCountry,omitempty"`
8926
8927	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
8928	Timestamp string `json:"timestamp,omitempty"`
8929
8930	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
8931	// unconditionally include in API requests. By default, fields with
8932	// empty or default values are omitted from API requests. However, any
8933	// non-pointer, non-interface field appearing in ForceSendFields will be
8934	// sent to the server regardless of whether the field is empty or not.
8935	// This may be used to include empty fields in Patch requests.
8936	ForceSendFields []string `json:"-"`
8937
8938	// NullFields is a list of field names (e.g. "ContentLanguage") to
8939	// include in API requests with the JSON null value. By default, fields
8940	// with empty values are omitted from API requests. However, any field
8941	// with an empty value appearing in NullFields will be sent to the
8942	// server as null. It is an error if a field in this list has a
8943	// non-empty value. This may be used to include null fields in Patch
8944	// requests.
8945	NullFields []string `json:"-"`
8946}
8947
8948func (s *PosInventoryRequest) MarshalJSON() ([]byte, error) {
8949	type NoMethod PosInventoryRequest
8950	raw := NoMethod(*s)
8951	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8952}
8953
8954type PosInventoryResponse struct {
8955	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
8956	// the item.
8957	ContentLanguage string `json:"contentLanguage,omitempty"`
8958
8959	// Gtin: Global Trade Item Number.
8960	Gtin string `json:"gtin,omitempty"`
8961
8962	// ItemId: Required. A unique identifier for the item.
8963	ItemId string `json:"itemId,omitempty"`
8964
8965	// Kind: Identifies what kind of resource this is. Value: the fixed
8966	// string "content#posInventoryResponse".
8967	Kind string `json:"kind,omitempty"`
8968
8969	// Price: Required. The current price of the item.
8970	Price *Price `json:"price,omitempty"`
8971
8972	// Quantity: Required. The available quantity of the item.
8973	Quantity int64 `json:"quantity,omitempty,string"`
8974
8975	// StoreCode: Required. The identifier of the merchant's store. Either a
8976	// `storeCode` inserted via the API or the code of the store in Google
8977	// My Business.
8978	StoreCode string `json:"storeCode,omitempty"`
8979
8980	// TargetCountry: Required. The CLDR territory code for the item.
8981	TargetCountry string `json:"targetCountry,omitempty"`
8982
8983	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
8984	Timestamp string `json:"timestamp,omitempty"`
8985
8986	// ServerResponse contains the HTTP response code and headers from the
8987	// server.
8988	googleapi.ServerResponse `json:"-"`
8989
8990	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
8991	// unconditionally include in API requests. By default, fields with
8992	// empty or default values are omitted from API requests. However, any
8993	// non-pointer, non-interface field appearing in ForceSendFields will be
8994	// sent to the server regardless of whether the field is empty or not.
8995	// This may be used to include empty fields in Patch requests.
8996	ForceSendFields []string `json:"-"`
8997
8998	// NullFields is a list of field names (e.g. "ContentLanguage") to
8999	// include in API requests with the JSON null value. By default, fields
9000	// with empty values are omitted from API requests. However, any field
9001	// with an empty value appearing in NullFields will be sent to the
9002	// server as null. It is an error if a field in this list has a
9003	// non-empty value. This may be used to include null fields in Patch
9004	// requests.
9005	NullFields []string `json:"-"`
9006}
9007
9008func (s *PosInventoryResponse) MarshalJSON() ([]byte, error) {
9009	type NoMethod PosInventoryResponse
9010	raw := NoMethod(*s)
9011	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9012}
9013
9014type PosListResponse struct {
9015	// Kind: Identifies what kind of resource this is. Value: the fixed
9016	// string "content#posListResponse".
9017	Kind string `json:"kind,omitempty"`
9018
9019	Resources []*PosStore `json:"resources,omitempty"`
9020
9021	// ServerResponse contains the HTTP response code and headers from the
9022	// server.
9023	googleapi.ServerResponse `json:"-"`
9024
9025	// ForceSendFields is a list of field names (e.g. "Kind") to
9026	// unconditionally include in API requests. By default, fields with
9027	// empty or default values are omitted from API requests. However, any
9028	// non-pointer, non-interface field appearing in ForceSendFields will be
9029	// sent to the server regardless of whether the field is empty or not.
9030	// This may be used to include empty fields in Patch requests.
9031	ForceSendFields []string `json:"-"`
9032
9033	// NullFields is a list of field names (e.g. "Kind") to include in API
9034	// requests with the JSON null value. By default, fields with empty
9035	// values are omitted from API requests. However, any field with an
9036	// empty value appearing in NullFields will be sent to the server as
9037	// null. It is an error if a field in this list has a non-empty value.
9038	// This may be used to include null fields in Patch requests.
9039	NullFields []string `json:"-"`
9040}
9041
9042func (s *PosListResponse) MarshalJSON() ([]byte, error) {
9043	type NoMethod PosListResponse
9044	raw := NoMethod(*s)
9045	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9046}
9047
9048// PosSale: The change of the available quantity of an item at the given
9049// store.
9050type PosSale struct {
9051	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
9052	// the item.
9053	ContentLanguage string `json:"contentLanguage,omitempty"`
9054
9055	// Gtin: Global Trade Item Number.
9056	Gtin string `json:"gtin,omitempty"`
9057
9058	// ItemId: Required. A unique identifier for the item.
9059	ItemId string `json:"itemId,omitempty"`
9060
9061	// Kind: Identifies what kind of resource this is. Value: the fixed
9062	// string "content#posSale"
9063	Kind string `json:"kind,omitempty"`
9064
9065	// Price: Required. The price of the item.
9066	Price *Price `json:"price,omitempty"`
9067
9068	// Quantity: Required. The relative change of the available quantity.
9069	// Negative for items returned.
9070	Quantity int64 `json:"quantity,omitempty,string"`
9071
9072	// SaleId: A unique ID to group items from the same sale event.
9073	SaleId string `json:"saleId,omitempty"`
9074
9075	// StoreCode: Required. The identifier of the merchant's store. Either a
9076	// `storeCode` inserted via the API or the code of the store in Google
9077	// My Business.
9078	StoreCode string `json:"storeCode,omitempty"`
9079
9080	// TargetCountry: Required. The CLDR territory code for the item.
9081	TargetCountry string `json:"targetCountry,omitempty"`
9082
9083	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
9084	Timestamp string `json:"timestamp,omitempty"`
9085
9086	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
9087	// unconditionally include in API requests. By default, fields with
9088	// empty or default values are omitted from API requests. However, any
9089	// non-pointer, non-interface field appearing in ForceSendFields will be
9090	// sent to the server regardless of whether the field is empty or not.
9091	// This may be used to include empty fields in Patch requests.
9092	ForceSendFields []string `json:"-"`
9093
9094	// NullFields is a list of field names (e.g. "ContentLanguage") to
9095	// include in API requests with the JSON null value. By default, fields
9096	// with empty values are omitted from API requests. However, any field
9097	// with an empty value appearing in NullFields will be sent to the
9098	// server as null. It is an error if a field in this list has a
9099	// non-empty value. This may be used to include null fields in Patch
9100	// requests.
9101	NullFields []string `json:"-"`
9102}
9103
9104func (s *PosSale) MarshalJSON() ([]byte, error) {
9105	type NoMethod PosSale
9106	raw := NoMethod(*s)
9107	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9108}
9109
9110type PosSaleRequest struct {
9111	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
9112	// the item.
9113	ContentLanguage string `json:"contentLanguage,omitempty"`
9114
9115	// Gtin: Global Trade Item Number.
9116	Gtin string `json:"gtin,omitempty"`
9117
9118	// ItemId: Required. A unique identifier for the item.
9119	ItemId string `json:"itemId,omitempty"`
9120
9121	// Price: Required. The price of the item.
9122	Price *Price `json:"price,omitempty"`
9123
9124	// Quantity: Required. The relative change of the available quantity.
9125	// Negative for items returned.
9126	Quantity int64 `json:"quantity,omitempty,string"`
9127
9128	// SaleId: A unique ID to group items from the same sale event.
9129	SaleId string `json:"saleId,omitempty"`
9130
9131	// StoreCode: Required. The identifier of the merchant's store. Either a
9132	// `storeCode` inserted via the API or the code of the store in Google
9133	// My Business.
9134	StoreCode string `json:"storeCode,omitempty"`
9135
9136	// TargetCountry: Required. The CLDR territory code for the item.
9137	TargetCountry string `json:"targetCountry,omitempty"`
9138
9139	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
9140	Timestamp string `json:"timestamp,omitempty"`
9141
9142	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
9143	// unconditionally include in API requests. By default, fields with
9144	// empty or default values are omitted from API requests. However, any
9145	// non-pointer, non-interface field appearing in ForceSendFields will be
9146	// sent to the server regardless of whether the field is empty or not.
9147	// This may be used to include empty fields in Patch requests.
9148	ForceSendFields []string `json:"-"`
9149
9150	// NullFields is a list of field names (e.g. "ContentLanguage") to
9151	// include in API requests with the JSON null value. By default, fields
9152	// with empty values are omitted from API requests. However, any field
9153	// with an empty value appearing in NullFields will be sent to the
9154	// server as null. It is an error if a field in this list has a
9155	// non-empty value. This may be used to include null fields in Patch
9156	// requests.
9157	NullFields []string `json:"-"`
9158}
9159
9160func (s *PosSaleRequest) MarshalJSON() ([]byte, error) {
9161	type NoMethod PosSaleRequest
9162	raw := NoMethod(*s)
9163	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9164}
9165
9166type PosSaleResponse struct {
9167	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
9168	// the item.
9169	ContentLanguage string `json:"contentLanguage,omitempty"`
9170
9171	// Gtin: Global Trade Item Number.
9172	Gtin string `json:"gtin,omitempty"`
9173
9174	// ItemId: Required. A unique identifier for the item.
9175	ItemId string `json:"itemId,omitempty"`
9176
9177	// Kind: Identifies what kind of resource this is. Value: the fixed
9178	// string "content#posSaleResponse".
9179	Kind string `json:"kind,omitempty"`
9180
9181	// Price: Required. The price of the item.
9182	Price *Price `json:"price,omitempty"`
9183
9184	// Quantity: Required. The relative change of the available quantity.
9185	// Negative for items returned.
9186	Quantity int64 `json:"quantity,omitempty,string"`
9187
9188	// SaleId: A unique ID to group items from the same sale event.
9189	SaleId string `json:"saleId,omitempty"`
9190
9191	// StoreCode: Required. The identifier of the merchant's store. Either a
9192	// `storeCode` inserted via the API or the code of the store in Google
9193	// My Business.
9194	StoreCode string `json:"storeCode,omitempty"`
9195
9196	// TargetCountry: Required. The CLDR territory code for the item.
9197	TargetCountry string `json:"targetCountry,omitempty"`
9198
9199	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
9200	Timestamp string `json:"timestamp,omitempty"`
9201
9202	// ServerResponse contains the HTTP response code and headers from the
9203	// server.
9204	googleapi.ServerResponse `json:"-"`
9205
9206	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
9207	// unconditionally include in API requests. By default, fields with
9208	// empty or default values are omitted from API requests. However, any
9209	// non-pointer, non-interface field appearing in ForceSendFields will be
9210	// sent to the server regardless of whether the field is empty or not.
9211	// This may be used to include empty fields in Patch requests.
9212	ForceSendFields []string `json:"-"`
9213
9214	// NullFields is a list of field names (e.g. "ContentLanguage") to
9215	// include in API requests with the JSON null value. By default, fields
9216	// with empty values are omitted from API requests. However, any field
9217	// with an empty value appearing in NullFields will be sent to the
9218	// server as null. It is an error if a field in this list has a
9219	// non-empty value. This may be used to include null fields in Patch
9220	// requests.
9221	NullFields []string `json:"-"`
9222}
9223
9224func (s *PosSaleResponse) MarshalJSON() ([]byte, error) {
9225	type NoMethod PosSaleResponse
9226	raw := NoMethod(*s)
9227	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9228}
9229
9230// PosStore: Store resource.
9231type PosStore struct {
9232	// Kind: Identifies what kind of resource this is. Value: the fixed
9233	// string "content#posStore"
9234	Kind string `json:"kind,omitempty"`
9235
9236	// StoreAddress: Required. The street address of the store.
9237	StoreAddress string `json:"storeAddress,omitempty"`
9238
9239	// StoreCode: Required. A store identifier that is unique for the given
9240	// merchant.
9241	StoreCode string `json:"storeCode,omitempty"`
9242
9243	// ServerResponse contains the HTTP response code and headers from the
9244	// server.
9245	googleapi.ServerResponse `json:"-"`
9246
9247	// ForceSendFields is a list of field names (e.g. "Kind") to
9248	// unconditionally include in API requests. By default, fields with
9249	// empty or default values are omitted from API requests. However, any
9250	// non-pointer, non-interface field appearing in ForceSendFields will be
9251	// sent to the server regardless of whether the field is empty or not.
9252	// This may be used to include empty fields in Patch requests.
9253	ForceSendFields []string `json:"-"`
9254
9255	// NullFields is a list of field names (e.g. "Kind") to include in API
9256	// requests with the JSON null value. By default, fields with empty
9257	// values are omitted from API requests. However, any field with an
9258	// empty value appearing in NullFields will be sent to the server as
9259	// null. It is an error if a field in this list has a non-empty value.
9260	// This may be used to include null fields in Patch requests.
9261	NullFields []string `json:"-"`
9262}
9263
9264func (s *PosStore) MarshalJSON() ([]byte, error) {
9265	type NoMethod PosStore
9266	raw := NoMethod(*s)
9267	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9268}
9269
9270type PostalCodeGroup struct {
9271	// Country: The CLDR territory code of the country the postal code group
9272	// applies to. Required.
9273	Country string `json:"country,omitempty"`
9274
9275	// Name: The name of the postal code group, referred to in headers.
9276	// Required.
9277	Name string `json:"name,omitempty"`
9278
9279	// PostalCodeRanges: A range of postal codes. Required.
9280	PostalCodeRanges []*PostalCodeRange `json:"postalCodeRanges,omitempty"`
9281
9282	// ForceSendFields is a list of field names (e.g. "Country") to
9283	// unconditionally include in API requests. By default, fields with
9284	// empty or default values are omitted from API requests. However, any
9285	// non-pointer, non-interface field appearing in ForceSendFields will be
9286	// sent to the server regardless of whether the field is empty or not.
9287	// This may be used to include empty fields in Patch requests.
9288	ForceSendFields []string `json:"-"`
9289
9290	// NullFields is a list of field names (e.g. "Country") to include in
9291	// API requests with the JSON null value. By default, fields with empty
9292	// values are omitted from API requests. However, any field with an
9293	// empty value appearing in NullFields will be sent to the server as
9294	// null. It is an error if a field in this list has a non-empty value.
9295	// This may be used to include null fields in Patch requests.
9296	NullFields []string `json:"-"`
9297}
9298
9299func (s *PostalCodeGroup) MarshalJSON() ([]byte, error) {
9300	type NoMethod PostalCodeGroup
9301	raw := NoMethod(*s)
9302	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9303}
9304
9305type PostalCodeRange struct {
9306	// PostalCodeRangeBegin: A postal code or a pattern of the form
9307	// `prefix*` denoting the inclusive lower bound of the range defining
9308	// the area. Examples values: "94108", "9410*", "9*". Required.
9309	PostalCodeRangeBegin string `json:"postalCodeRangeBegin,omitempty"`
9310
9311	// PostalCodeRangeEnd: A postal code or a pattern of the form `prefix*`
9312	// denoting the inclusive upper bound of the range defining the area. It
9313	// must have the same length as `postalCodeRangeBegin`: if
9314	// `postalCodeRangeBegin` is a postal code then `postalCodeRangeEnd`
9315	// must be a postal code too; if `postalCodeRangeBegin` is a pattern
9316	// then `postalCodeRangeEnd` must be a pattern with the same prefix
9317	// length. Optional: if not set, then the area is defined as being all
9318	// the postal codes matching `postalCodeRangeBegin`.
9319	PostalCodeRangeEnd string `json:"postalCodeRangeEnd,omitempty"`
9320
9321	// ForceSendFields is a list of field names (e.g.
9322	// "PostalCodeRangeBegin") to unconditionally include in API requests.
9323	// By default, fields with empty or default values are omitted from API
9324	// requests. However, any non-pointer, non-interface field appearing in
9325	// ForceSendFields will be sent to the server regardless of whether the
9326	// field is empty or not. This may be used to include empty fields in
9327	// Patch requests.
9328	ForceSendFields []string `json:"-"`
9329
9330	// NullFields is a list of field names (e.g. "PostalCodeRangeBegin") to
9331	// include in API requests with the JSON null value. By default, fields
9332	// with empty values are omitted from API requests. However, any field
9333	// with an empty value appearing in NullFields will be sent to the
9334	// server as null. It is an error if a field in this list has a
9335	// non-empty value. This may be used to include null fields in Patch
9336	// requests.
9337	NullFields []string `json:"-"`
9338}
9339
9340func (s *PostalCodeRange) MarshalJSON() ([]byte, error) {
9341	type NoMethod PostalCodeRange
9342	raw := NoMethod(*s)
9343	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9344}
9345
9346type Price struct {
9347	// Currency: The currency of the price.
9348	Currency string `json:"currency,omitempty"`
9349
9350	// Value: The price represented as a number.
9351	Value string `json:"value,omitempty"`
9352
9353	// ForceSendFields is a list of field names (e.g. "Currency") to
9354	// unconditionally include in API requests. By default, fields with
9355	// empty or default values are omitted from API requests. However, any
9356	// non-pointer, non-interface field appearing in ForceSendFields will be
9357	// sent to the server regardless of whether the field is empty or not.
9358	// This may be used to include empty fields in Patch requests.
9359	ForceSendFields []string `json:"-"`
9360
9361	// NullFields is a list of field names (e.g. "Currency") 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 *Price) MarshalJSON() ([]byte, error) {
9371	type NoMethod Price
9372	raw := NoMethod(*s)
9373	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9374}
9375
9376// Product:  Required product attributes are primarily defined by the
9377// products data specification. See the Products Data Specification Help
9378// Center article for information. Product data. After inserting,
9379// updating, or deleting a product, it may take several minutes before
9380// changes take effect.
9381type Product struct {
9382	// AdditionalImageLinks: Additional URLs of images of the item.
9383	AdditionalImageLinks []string `json:"additionalImageLinks,omitempty"`
9384
9385	// AdditionalProductTypes: Additional categories of the item (formatted
9386	// as in products data specification).
9387	AdditionalProductTypes []string `json:"additionalProductTypes,omitempty"`
9388
9389	// Adult: Should be set to true if the item is targeted towards adults.
9390	Adult bool `json:"adult,omitempty"`
9391
9392	// AdwordsGrouping: Used to group items in an arbitrary way. Only for
9393	// CPA%, discouraged otherwise.
9394	AdwordsGrouping string `json:"adwordsGrouping,omitempty"`
9395
9396	// AdwordsLabels: Similar to adwords_grouping, but only works on CPC.
9397	AdwordsLabels []string `json:"adwordsLabels,omitempty"`
9398
9399	// AdwordsRedirect: Allows advertisers to override the item URL when the
9400	// product is shown within the context of Product Ads.
9401	AdwordsRedirect string `json:"adwordsRedirect,omitempty"`
9402
9403	// AgeGroup: Target age group of the item. Acceptable values are: -
9404	// "adult" - "infant" - "kids" - "newborn" - "toddler" -
9405	// "youngAdult"
9406	AgeGroup string `json:"ageGroup,omitempty"`
9407
9408	// Aspects: Deprecated. Do not use.
9409	Aspects []*ProductAspect `json:"aspects,omitempty"`
9410
9411	// Availability: Availability status of the item. Acceptable values are:
9412	// - "in stock" - "out of stock" - "preorder"
9413	Availability string `json:"availability,omitempty"`
9414
9415	// AvailabilityDate: The day a pre-ordered product becomes available for
9416	// delivery, in ISO 8601 format.
9417	AvailabilityDate string `json:"availabilityDate,omitempty"`
9418
9419	// Brand: Brand of the item.
9420	Brand string `json:"brand,omitempty"`
9421
9422	// CanonicalLink: URL for the canonical version of your item's landing
9423	// page.
9424	CanonicalLink string `json:"canonicalLink,omitempty"`
9425
9426	// Channel: Required. The item's channel (online or local). Acceptable
9427	// values are: - "local" - "online"
9428	Channel string `json:"channel,omitempty"`
9429
9430	// Color: Color of the item.
9431	Color string `json:"color,omitempty"`
9432
9433	// Condition: Condition or state of the item. Acceptable values are: -
9434	// "new" - "refurbished" - "used"
9435	Condition string `json:"condition,omitempty"`
9436
9437	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
9438	// the item.
9439	ContentLanguage string `json:"contentLanguage,omitempty"`
9440
9441	// CostOfGoodsSold: Cost of goods sold. Used for gross profit reporting.
9442	CostOfGoodsSold *Price `json:"costOfGoodsSold,omitempty"`
9443
9444	// CustomAttributes: A list of custom (merchant-provided) attributes. It
9445	// can also be used for submitting any attribute of the feed
9446	// specification in its generic form (e.g., `{ "name": "size type",
9447	// "value": "regular" }`). This is useful for submitting attributes not
9448	// explicitly exposed by the API, such as additional attributes used for
9449	// Buy on Google (formerly known as Shopping Actions).
9450	CustomAttributes []*CustomAttribute `json:"customAttributes,omitempty"`
9451
9452	// CustomGroups: A list of custom (merchant-provided) custom attribute
9453	// groups.
9454	CustomGroups []*CustomGroup `json:"customGroups,omitempty"`
9455
9456	// CustomLabel0: Custom label 0 for custom grouping of items in a
9457	// Shopping campaign.
9458	CustomLabel0 string `json:"customLabel0,omitempty"`
9459
9460	// CustomLabel1: Custom label 1 for custom grouping of items in a
9461	// Shopping campaign.
9462	CustomLabel1 string `json:"customLabel1,omitempty"`
9463
9464	// CustomLabel2: Custom label 2 for custom grouping of items in a
9465	// Shopping campaign.
9466	CustomLabel2 string `json:"customLabel2,omitempty"`
9467
9468	// CustomLabel3: Custom label 3 for custom grouping of items in a
9469	// Shopping campaign.
9470	CustomLabel3 string `json:"customLabel3,omitempty"`
9471
9472	// CustomLabel4: Custom label 4 for custom grouping of items in a
9473	// Shopping campaign.
9474	CustomLabel4 string `json:"customLabel4,omitempty"`
9475
9476	// Description: Description of the item.
9477	Description string `json:"description,omitempty"`
9478
9479	// Destinations: Specifies the intended destinations for the product.
9480	Destinations []*ProductDestination `json:"destinations,omitempty"`
9481
9482	// DisplayAdsId: An identifier for an item for dynamic remarketing
9483	// campaigns.
9484	DisplayAdsId string `json:"displayAdsId,omitempty"`
9485
9486	// DisplayAdsLink: URL directly to your item's landing page for dynamic
9487	// remarketing campaigns.
9488	DisplayAdsLink string `json:"displayAdsLink,omitempty"`
9489
9490	// DisplayAdsSimilarIds: Advertiser-specified recommendations.
9491	DisplayAdsSimilarIds []string `json:"displayAdsSimilarIds,omitempty"`
9492
9493	// DisplayAdsTitle: Title of an item for dynamic remarketing campaigns.
9494	DisplayAdsTitle string `json:"displayAdsTitle,omitempty"`
9495
9496	// DisplayAdsValue: Offer margin for dynamic remarketing campaigns.
9497	DisplayAdsValue float64 `json:"displayAdsValue,omitempty"`
9498
9499	// EnergyEfficiencyClass: The energy efficiency class as defined in EU
9500	// directive 2010/30/EU. Acceptable values are: - "A" - "A+" -
9501	// "A++" - "A+++" - "B" - "C" - "D" - "E" - "F" - "G"
9502	EnergyEfficiencyClass string `json:"energyEfficiencyClass,omitempty"`
9503
9504	// ExpirationDate: Date on which the item should expire, as specified
9505	// upon insertion, in ISO 8601 format. The actual expiration date in
9506	// Google Shopping is exposed in `productstatuses` as
9507	// `googleExpirationDate` and might be earlier if `expirationDate` is
9508	// too far in the future.
9509	ExpirationDate string `json:"expirationDate,omitempty"`
9510
9511	// Gender: Target gender of the item. Acceptable values are: -
9512	// "female" - "male" - "unisex"
9513	Gender string `json:"gender,omitempty"`
9514
9515	// GoogleProductCategory: Google's category of the item (see Google
9516	// product taxonomy
9517	// (https://support.google.com/merchants/answer/1705911)). When querying
9518	// products, this field will contain the user provided value. There is
9519	// currently no way to get back the auto assigned google product
9520	// categories through the API.
9521	GoogleProductCategory string `json:"googleProductCategory,omitempty"`
9522
9523	// Gtin: Global Trade Item Number (GTIN) of the item.
9524	Gtin string `json:"gtin,omitempty"`
9525
9526	// Id: The REST ID of the product. Content API methods that operate on
9527	// products take this as their `productId` parameter. The REST ID for a
9528	// product is of the form channel:contentLanguage: targetCountry:
9529	// offerId.
9530	Id string `json:"id,omitempty"`
9531
9532	// IdentifierExists: False when the item does not have unique product
9533	// identifiers appropriate to its category, such as GTIN, MPN, and
9534	// brand. Required according to the Unique Product Identifier Rules for
9535	// all target countries except for Canada.
9536	IdentifierExists bool `json:"identifierExists,omitempty"`
9537
9538	// ImageLink: URL of an image of the item.
9539	ImageLink string `json:"imageLink,omitempty"`
9540
9541	// Installment: Number and amount of installments to pay for an item.
9542	Installment *Installment `json:"installment,omitempty"`
9543
9544	// IsBundle: Whether the item is a merchant-defined bundle. A bundle is
9545	// a custom grouping of different products sold by a merchant for a
9546	// single price.
9547	IsBundle bool `json:"isBundle,omitempty"`
9548
9549	// ItemGroupId: Shared identifier for all variants of the same product.
9550	ItemGroupId string `json:"itemGroupId,omitempty"`
9551
9552	// Kind: Identifies what kind of resource this is. Value: the fixed
9553	// string "content#product"
9554	Kind string `json:"kind,omitempty"`
9555
9556	// Link: URL directly linking to your item's page on your website.
9557	Link string `json:"link,omitempty"`
9558
9559	// LoyaltyPoints: Loyalty points that users receive after purchasing the
9560	// item. Japan only.
9561	LoyaltyPoints *LoyaltyPoints `json:"loyaltyPoints,omitempty"`
9562
9563	// Material: The material of which the item is made.
9564	Material string `json:"material,omitempty"`
9565
9566	// MaxEnergyEfficiencyClass: The energy efficiency class as defined in
9567	// EU directive 2010/30/EU. Acceptable values are: - "A" - "A+" -
9568	// "A++" - "A+++" - "B" - "C" - "D" - "E" - "F" - "G"
9569	MaxEnergyEfficiencyClass string `json:"maxEnergyEfficiencyClass,omitempty"`
9570
9571	// MaxHandlingTime: Maximal product handling time (in business days).
9572	MaxHandlingTime int64 `json:"maxHandlingTime,omitempty,string"`
9573
9574	// MinEnergyEfficiencyClass: The energy efficiency class as defined in
9575	// EU directive 2010/30/EU. Acceptable values are: - "A" - "A+" -
9576	// "A++" - "A+++" - "B" - "C" - "D" - "E" - "F" - "G"
9577	MinEnergyEfficiencyClass string `json:"minEnergyEfficiencyClass,omitempty"`
9578
9579	// MinHandlingTime: Minimal product handling time (in business days).
9580	MinHandlingTime int64 `json:"minHandlingTime,omitempty,string"`
9581
9582	// MobileLink: URL for the mobile-optimized version of your item's
9583	// landing page.
9584	MobileLink string `json:"mobileLink,omitempty"`
9585
9586	// Mpn: Manufacturer Part Number (MPN) of the item.
9587	Mpn string `json:"mpn,omitempty"`
9588
9589	// Multipack: The number of identical products in a merchant-defined
9590	// multipack.
9591	Multipack int64 `json:"multipack,omitempty,string"`
9592
9593	// OfferId: Required. A unique identifier for the item. Leading and
9594	// trailing whitespaces are stripped and multiple whitespaces are
9595	// replaced by a single whitespace upon submission. Only valid unicode
9596	// characters are accepted. See the products feed specification for
9597	// details. *Note:* Content API methods that operate on products take
9598	// the REST ID of the product, *not* this identifier.
9599	OfferId string `json:"offerId,omitempty"`
9600
9601	// OnlineOnly: Deprecated.
9602	OnlineOnly bool `json:"onlineOnly,omitempty"`
9603
9604	// Pattern: The item's pattern (e.g. polka dots).
9605	Pattern string `json:"pattern,omitempty"`
9606
9607	// Price: Price of the item.
9608	Price *Price `json:"price,omitempty"`
9609
9610	// ProductType: Your category of the item (formatted as in products data
9611	// specification).
9612	ProductType string `json:"productType,omitempty"`
9613
9614	// PromotionIds: The unique ID of a promotion.
9615	PromotionIds []string `json:"promotionIds,omitempty"`
9616
9617	// SalePrice: Advertised sale price of the item.
9618	SalePrice *Price `json:"salePrice,omitempty"`
9619
9620	// SalePriceEffectiveDate: Date range during which the item is on sale
9621	// (see products data specification ).
9622	SalePriceEffectiveDate string `json:"salePriceEffectiveDate,omitempty"`
9623
9624	// SellOnGoogleQuantity: The quantity of the product that is available
9625	// for selling on Google. Supported only for online products.
9626	SellOnGoogleQuantity int64 `json:"sellOnGoogleQuantity,omitempty,string"`
9627
9628	// Shipping: Shipping rules.
9629	Shipping []*ProductShipping `json:"shipping,omitempty"`
9630
9631	// ShippingHeight: Height of the item for shipping.
9632	ShippingHeight *ProductShippingDimension `json:"shippingHeight,omitempty"`
9633
9634	// ShippingLabel: The shipping label of the product, used to group
9635	// product in account-level shipping rules.
9636	ShippingLabel string `json:"shippingLabel,omitempty"`
9637
9638	// ShippingLength: Length of the item for shipping.
9639	ShippingLength *ProductShippingDimension `json:"shippingLength,omitempty"`
9640
9641	// ShippingWeight: Weight of the item for shipping.
9642	ShippingWeight *ProductShippingWeight `json:"shippingWeight,omitempty"`
9643
9644	// ShippingWidth: Width of the item for shipping.
9645	ShippingWidth *ProductShippingDimension `json:"shippingWidth,omitempty"`
9646
9647	// SizeSystem: System in which the size is specified. Recommended for
9648	// apparel items. Acceptable values are: - "AU" - "BR" - "CN" -
9649	// "DE" - "EU" - "FR" - "IT" - "JP" - "MEX" - "UK" -
9650	// "US"
9651	SizeSystem string `json:"sizeSystem,omitempty"`
9652
9653	// SizeType: The cut of the item. Recommended for apparel items.
9654	// Acceptable values are: - "big and tall" - "maternity" -
9655	// "oversize" - "petite" - "plus" - "regular"
9656	SizeType string `json:"sizeType,omitempty"`
9657
9658	// Sizes: Size of the item. Only one value is allowed. For variants with
9659	// different sizes, insert a separate product for each size with the
9660	// same `itemGroupId` value (see size definition).
9661	Sizes []string `json:"sizes,omitempty"`
9662
9663	// Source: The source of the offer, i.e., how the offer was created.
9664	// Acceptable values are: - "api" - "crawl" - "feed"
9665	Source string `json:"source,omitempty"`
9666
9667	// TargetCountry: Required. The CLDR territory code for the item.
9668	TargetCountry string `json:"targetCountry,omitempty"`
9669
9670	// Taxes: Tax information.
9671	Taxes []*ProductTax `json:"taxes,omitempty"`
9672
9673	// Title: Title of the item.
9674	Title string `json:"title,omitempty"`
9675
9676	// UnitPricingBaseMeasure: The preference of the denominator of the unit
9677	// price.
9678	UnitPricingBaseMeasure *ProductUnitPricingBaseMeasure `json:"unitPricingBaseMeasure,omitempty"`
9679
9680	// UnitPricingMeasure: The measure and dimension of an item.
9681	UnitPricingMeasure *ProductUnitPricingMeasure `json:"unitPricingMeasure,omitempty"`
9682
9683	// ValidatedDestinations: Deprecated. The read-only list of intended
9684	// destinations which passed validation.
9685	ValidatedDestinations []string `json:"validatedDestinations,omitempty"`
9686
9687	// Warnings: Read-only warnings.
9688	Warnings []*Error `json:"warnings,omitempty"`
9689
9690	// ServerResponse contains the HTTP response code and headers from the
9691	// server.
9692	googleapi.ServerResponse `json:"-"`
9693
9694	// ForceSendFields is a list of field names (e.g.
9695	// "AdditionalImageLinks") to unconditionally include in API requests.
9696	// By default, fields with empty or default values are omitted from API
9697	// requests. However, any non-pointer, non-interface field appearing in
9698	// ForceSendFields will be sent to the server regardless of whether the
9699	// field is empty or not. This may be used to include empty fields in
9700	// Patch requests.
9701	ForceSendFields []string `json:"-"`
9702
9703	// NullFields is a list of field names (e.g. "AdditionalImageLinks") to
9704	// include in API requests with the JSON null value. By default, fields
9705	// with empty values are omitted from API requests. However, any field
9706	// with an empty value appearing in NullFields will be sent to the
9707	// server as null. It is an error if a field in this list has a
9708	// non-empty value. This may be used to include null fields in Patch
9709	// requests.
9710	NullFields []string `json:"-"`
9711}
9712
9713func (s *Product) MarshalJSON() ([]byte, error) {
9714	type NoMethod Product
9715	raw := NoMethod(*s)
9716	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9717}
9718
9719func (s *Product) UnmarshalJSON(data []byte) error {
9720	type NoMethod Product
9721	var s1 struct {
9722		DisplayAdsValue gensupport.JSONFloat64 `json:"displayAdsValue"`
9723		*NoMethod
9724	}
9725	s1.NoMethod = (*NoMethod)(s)
9726	if err := json.Unmarshal(data, &s1); err != nil {
9727		return err
9728	}
9729	s.DisplayAdsValue = float64(s1.DisplayAdsValue)
9730	return nil
9731}
9732
9733type ProductAmount struct {
9734	// PriceAmount: The pre-tax or post-tax price depending on the location
9735	// of the order.
9736	PriceAmount *Price `json:"priceAmount,omitempty"`
9737
9738	// RemittedTaxAmount: Remitted tax value.
9739	RemittedTaxAmount *Price `json:"remittedTaxAmount,omitempty"`
9740
9741	// TaxAmount: Tax value.
9742	TaxAmount *Price `json:"taxAmount,omitempty"`
9743
9744	// ForceSendFields is a list of field names (e.g. "PriceAmount") to
9745	// unconditionally include in API requests. By default, fields with
9746	// empty or default values are omitted from API requests. However, any
9747	// non-pointer, non-interface field appearing in ForceSendFields will be
9748	// sent to the server regardless of whether the field is empty or not.
9749	// This may be used to include empty fields in Patch requests.
9750	ForceSendFields []string `json:"-"`
9751
9752	// NullFields is a list of field names (e.g. "PriceAmount") to include
9753	// in API requests with the JSON null value. By default, fields with
9754	// empty values are omitted from API requests. However, any field with
9755	// an empty value appearing in NullFields will be sent to the server as
9756	// null. It is an error if a field in this list has a non-empty value.
9757	// This may be used to include null fields in Patch requests.
9758	NullFields []string `json:"-"`
9759}
9760
9761func (s *ProductAmount) MarshalJSON() ([]byte, error) {
9762	type NoMethod ProductAmount
9763	raw := NoMethod(*s)
9764	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9765}
9766
9767type ProductAspect struct {
9768	// AspectName: Deprecated.
9769	AspectName string `json:"aspectName,omitempty"`
9770
9771	// DestinationName: Deprecated.
9772	DestinationName string `json:"destinationName,omitempty"`
9773
9774	// Intention: Deprecated.
9775	Intention string `json:"intention,omitempty"`
9776
9777	// ForceSendFields is a list of field names (e.g. "AspectName") to
9778	// unconditionally include in API requests. By default, fields with
9779	// empty or default values are omitted from API requests. However, any
9780	// non-pointer, non-interface field appearing in ForceSendFields will be
9781	// sent to the server regardless of whether the field is empty or not.
9782	// This may be used to include empty fields in Patch requests.
9783	ForceSendFields []string `json:"-"`
9784
9785	// NullFields is a list of field names (e.g. "AspectName") to include in
9786	// API requests with the JSON null value. By default, fields with empty
9787	// values are omitted from API requests. However, any field with an
9788	// empty value appearing in NullFields will be sent to the server as
9789	// null. It is an error if a field in this list has a non-empty value.
9790	// This may be used to include null fields in Patch requests.
9791	NullFields []string `json:"-"`
9792}
9793
9794func (s *ProductAspect) MarshalJSON() ([]byte, error) {
9795	type NoMethod ProductAspect
9796	raw := NoMethod(*s)
9797	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9798}
9799
9800type ProductDestination struct {
9801	// DestinationName: The name of the destination.
9802	DestinationName string `json:"destinationName,omitempty"`
9803
9804	// Intention: Whether the destination is required, excluded or should be
9805	// validated. Acceptable values are: - "default" - "excluded" -
9806	// "optional" - "required"
9807	Intention string `json:"intention,omitempty"`
9808
9809	// ForceSendFields is a list of field names (e.g. "DestinationName") to
9810	// unconditionally include in API requests. By default, fields with
9811	// empty or default values are omitted from API requests. However, any
9812	// non-pointer, non-interface field appearing in ForceSendFields will be
9813	// sent to the server regardless of whether the field is empty or not.
9814	// This may be used to include empty fields in Patch requests.
9815	ForceSendFields []string `json:"-"`
9816
9817	// NullFields is a list of field names (e.g. "DestinationName") to
9818	// include in API requests with the JSON null value. By default, fields
9819	// with empty values are omitted from API requests. However, any field
9820	// with an empty value appearing in NullFields will be sent to the
9821	// server as null. It is an error if a field in this list has a
9822	// non-empty value. This may be used to include null fields in Patch
9823	// requests.
9824	NullFields []string `json:"-"`
9825}
9826
9827func (s *ProductDestination) MarshalJSON() ([]byte, error) {
9828	type NoMethod ProductDestination
9829	raw := NoMethod(*s)
9830	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9831}
9832
9833type ProductShipping struct {
9834	// Country: The CLDR territory code of the country to which an item will
9835	// ship.
9836	Country string `json:"country,omitempty"`
9837
9838	// LocationGroupName: The location where the shipping is applicable,
9839	// represented by a location group name.
9840	LocationGroupName string `json:"locationGroupName,omitempty"`
9841
9842	// LocationId: The numeric ID of a location that the shipping rate
9843	// applies to as defined in the AdWords API.
9844	LocationId int64 `json:"locationId,omitempty,string"`
9845
9846	// PostalCode: The postal code range that the shipping rate applies to,
9847	// represented by a postal code, a postal code prefix followed by a *
9848	// wildcard, a range between two postal codes or two postal code
9849	// prefixes of equal length.
9850	PostalCode string `json:"postalCode,omitempty"`
9851
9852	// Price: Fixed shipping price, represented as a number.
9853	Price *Price `json:"price,omitempty"`
9854
9855	// Region: The geographic region to which a shipping rate applies.
9856	Region string `json:"region,omitempty"`
9857
9858	// Service: A free-form description of the service class or delivery
9859	// speed.
9860	Service string `json:"service,omitempty"`
9861
9862	// ForceSendFields is a list of field names (e.g. "Country") to
9863	// unconditionally include in API requests. By default, fields with
9864	// empty or default values are omitted from API requests. However, any
9865	// non-pointer, non-interface field appearing in ForceSendFields will be
9866	// sent to the server regardless of whether the field is empty or not.
9867	// This may be used to include empty fields in Patch requests.
9868	ForceSendFields []string `json:"-"`
9869
9870	// NullFields is a list of field names (e.g. "Country") to include in
9871	// API requests with the JSON null value. By default, fields with empty
9872	// values are omitted from API requests. However, any field with an
9873	// empty value appearing in NullFields will be sent to the server as
9874	// null. It is an error if a field in this list has a non-empty value.
9875	// This may be used to include null fields in Patch requests.
9876	NullFields []string `json:"-"`
9877}
9878
9879func (s *ProductShipping) MarshalJSON() ([]byte, error) {
9880	type NoMethod ProductShipping
9881	raw := NoMethod(*s)
9882	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9883}
9884
9885type ProductShippingDimension struct {
9886	// Unit: The unit of value.
9887	Unit string `json:"unit,omitempty"`
9888
9889	// Value: The dimension of the product used to calculate the shipping
9890	// cost of the item.
9891	Value float64 `json:"value,omitempty"`
9892
9893	// ForceSendFields is a list of field names (e.g. "Unit") to
9894	// unconditionally include in API requests. By default, fields with
9895	// empty or default values are omitted from API requests. However, any
9896	// non-pointer, non-interface field appearing in ForceSendFields will be
9897	// sent to the server regardless of whether the field is empty or not.
9898	// This may be used to include empty fields in Patch requests.
9899	ForceSendFields []string `json:"-"`
9900
9901	// NullFields is a list of field names (e.g. "Unit") to include in API
9902	// requests with the JSON null value. By default, fields with empty
9903	// values are omitted from API requests. However, any field with an
9904	// empty value appearing in NullFields will be sent to the server as
9905	// null. It is an error if a field in this list has a non-empty value.
9906	// This may be used to include null fields in Patch requests.
9907	NullFields []string `json:"-"`
9908}
9909
9910func (s *ProductShippingDimension) MarshalJSON() ([]byte, error) {
9911	type NoMethod ProductShippingDimension
9912	raw := NoMethod(*s)
9913	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9914}
9915
9916func (s *ProductShippingDimension) UnmarshalJSON(data []byte) error {
9917	type NoMethod ProductShippingDimension
9918	var s1 struct {
9919		Value gensupport.JSONFloat64 `json:"value"`
9920		*NoMethod
9921	}
9922	s1.NoMethod = (*NoMethod)(s)
9923	if err := json.Unmarshal(data, &s1); err != nil {
9924		return err
9925	}
9926	s.Value = float64(s1.Value)
9927	return nil
9928}
9929
9930type ProductShippingWeight struct {
9931	// Unit: The unit of value.
9932	Unit string `json:"unit,omitempty"`
9933
9934	// Value: The weight of the product used to calculate the shipping cost
9935	// of the item.
9936	Value float64 `json:"value,omitempty"`
9937
9938	// ForceSendFields is a list of field names (e.g. "Unit") to
9939	// unconditionally include in API requests. By default, fields with
9940	// empty or default values are omitted from API requests. However, any
9941	// non-pointer, non-interface field appearing in ForceSendFields will be
9942	// sent to the server regardless of whether the field is empty or not.
9943	// This may be used to include empty fields in Patch requests.
9944	ForceSendFields []string `json:"-"`
9945
9946	// NullFields is a list of field names (e.g. "Unit") to include in API
9947	// requests with the JSON null value. By default, fields with empty
9948	// values are omitted from API requests. However, any field with an
9949	// empty value appearing in NullFields will be sent to the server as
9950	// null. It is an error if a field in this list has a non-empty value.
9951	// This may be used to include null fields in Patch requests.
9952	NullFields []string `json:"-"`
9953}
9954
9955func (s *ProductShippingWeight) MarshalJSON() ([]byte, error) {
9956	type NoMethod ProductShippingWeight
9957	raw := NoMethod(*s)
9958	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9959}
9960
9961func (s *ProductShippingWeight) UnmarshalJSON(data []byte) error {
9962	type NoMethod ProductShippingWeight
9963	var s1 struct {
9964		Value gensupport.JSONFloat64 `json:"value"`
9965		*NoMethod
9966	}
9967	s1.NoMethod = (*NoMethod)(s)
9968	if err := json.Unmarshal(data, &s1); err != nil {
9969		return err
9970	}
9971	s.Value = float64(s1.Value)
9972	return nil
9973}
9974
9975// ProductStatus: The status of a product, i.e., information about a
9976// product computed asynchronously.
9977type ProductStatus struct {
9978	// CreationDate: Date on which the item has been created, in ISO 8601
9979	// format.
9980	CreationDate string `json:"creationDate,omitempty"`
9981
9982	// DataQualityIssues: DEPRECATED - never populated
9983	DataQualityIssues []*ProductStatusDataQualityIssue `json:"dataQualityIssues,omitempty"`
9984
9985	// DestinationStatuses: The intended destinations for the product.
9986	DestinationStatuses []*ProductStatusDestinationStatus `json:"destinationStatuses,omitempty"`
9987
9988	// GoogleExpirationDate: Date on which the item expires in Google
9989	// Shopping, in ISO 8601 format.
9990	GoogleExpirationDate string `json:"googleExpirationDate,omitempty"`
9991
9992	// ItemLevelIssues: A list of all issues associated with the product.
9993	ItemLevelIssues []*ProductStatusItemLevelIssue `json:"itemLevelIssues,omitempty"`
9994
9995	// Kind: Identifies what kind of resource this is. Value: the fixed
9996	// string "content#productStatus"
9997	Kind string `json:"kind,omitempty"`
9998
9999	// LastUpdateDate: Date on which the item has been last updated, in ISO
10000	// 8601 format.
10001	LastUpdateDate string `json:"lastUpdateDate,omitempty"`
10002
10003	// Link: The link to the product.
10004	Link string `json:"link,omitempty"`
10005
10006	// Product: Product data after applying all the join inputs.
10007	Product *Product `json:"product,omitempty"`
10008
10009	// ProductId: The ID of the product for which status is reported.
10010	ProductId string `json:"productId,omitempty"`
10011
10012	// Title: The title of the product.
10013	Title string `json:"title,omitempty"`
10014
10015	// ServerResponse contains the HTTP response code and headers from the
10016	// server.
10017	googleapi.ServerResponse `json:"-"`
10018
10019	// ForceSendFields is a list of field names (e.g. "CreationDate") to
10020	// unconditionally include in API requests. By default, fields with
10021	// empty or default values are omitted from API requests. However, any
10022	// non-pointer, non-interface field appearing in ForceSendFields will be
10023	// sent to the server regardless of whether the field is empty or not.
10024	// This may be used to include empty fields in Patch requests.
10025	ForceSendFields []string `json:"-"`
10026
10027	// NullFields is a list of field names (e.g. "CreationDate") to include
10028	// in API requests with the JSON null value. By default, fields with
10029	// empty values are omitted from API requests. However, any field with
10030	// an empty value appearing in NullFields will be sent to the server as
10031	// null. It is an error if a field in this list has a non-empty value.
10032	// This may be used to include null fields in Patch requests.
10033	NullFields []string `json:"-"`
10034}
10035
10036func (s *ProductStatus) MarshalJSON() ([]byte, error) {
10037	type NoMethod ProductStatus
10038	raw := NoMethod(*s)
10039	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10040}
10041
10042type ProductStatusDataQualityIssue struct {
10043	Destination string `json:"destination,omitempty"`
10044
10045	Detail string `json:"detail,omitempty"`
10046
10047	FetchStatus string `json:"fetchStatus,omitempty"`
10048
10049	Id string `json:"id,omitempty"`
10050
10051	Location string `json:"location,omitempty"`
10052
10053	Severity string `json:"severity,omitempty"`
10054
10055	Timestamp string `json:"timestamp,omitempty"`
10056
10057	ValueOnLandingPage string `json:"valueOnLandingPage,omitempty"`
10058
10059	ValueProvided string `json:"valueProvided,omitempty"`
10060
10061	// ForceSendFields is a list of field names (e.g. "Destination") to
10062	// unconditionally include in API requests. By default, fields with
10063	// empty or default values are omitted from API requests. However, any
10064	// non-pointer, non-interface field appearing in ForceSendFields will be
10065	// sent to the server regardless of whether the field is empty or not.
10066	// This may be used to include empty fields in Patch requests.
10067	ForceSendFields []string `json:"-"`
10068
10069	// NullFields is a list of field names (e.g. "Destination") to include
10070	// in API requests with the JSON null value. By default, fields with
10071	// empty values are omitted from API requests. However, any field with
10072	// an empty value appearing in NullFields will be sent to the server as
10073	// null. It is an error if a field in this list has a non-empty value.
10074	// This may be used to include null fields in Patch requests.
10075	NullFields []string `json:"-"`
10076}
10077
10078func (s *ProductStatusDataQualityIssue) MarshalJSON() ([]byte, error) {
10079	type NoMethod ProductStatusDataQualityIssue
10080	raw := NoMethod(*s)
10081	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10082}
10083
10084type ProductStatusDestinationStatus struct {
10085	// ApprovalPending: Whether the approval status might change due to
10086	// further processing.
10087	ApprovalPending bool `json:"approvalPending,omitempty"`
10088
10089	// ApprovalStatus: The destination's approval status. Acceptable values
10090	// are: - "approved" - "disapproved"
10091	ApprovalStatus string `json:"approvalStatus,omitempty"`
10092
10093	// Destination: The name of the destination
10094	Destination string `json:"destination,omitempty"`
10095
10096	// Intention: Provided for backward compatibility only. Always set to
10097	// "required". Acceptable values are: - "default" - "excluded" -
10098	// "optional" - "required"
10099	Intention string `json:"intention,omitempty"`
10100
10101	// ForceSendFields is a list of field names (e.g. "ApprovalPending") to
10102	// unconditionally include in API requests. By default, fields with
10103	// empty or default values are omitted from API requests. However, any
10104	// non-pointer, non-interface field appearing in ForceSendFields will be
10105	// sent to the server regardless of whether the field is empty or not.
10106	// This may be used to include empty fields in Patch requests.
10107	ForceSendFields []string `json:"-"`
10108
10109	// NullFields is a list of field names (e.g. "ApprovalPending") to
10110	// include in API requests with the JSON null value. By default, fields
10111	// with empty values are omitted from API requests. However, any field
10112	// with an empty value appearing in NullFields will be sent to the
10113	// server as null. It is an error if a field in this list has a
10114	// non-empty value. This may be used to include null fields in Patch
10115	// requests.
10116	NullFields []string `json:"-"`
10117}
10118
10119func (s *ProductStatusDestinationStatus) MarshalJSON() ([]byte, error) {
10120	type NoMethod ProductStatusDestinationStatus
10121	raw := NoMethod(*s)
10122	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10123}
10124
10125type ProductStatusItemLevelIssue struct {
10126	// AttributeName: The attribute's name, if the issue is caused by a
10127	// single attribute.
10128	AttributeName string `json:"attributeName,omitempty"`
10129
10130	// Code: The error code of the issue.
10131	Code string `json:"code,omitempty"`
10132
10133	// Description: A short issue description in English.
10134	Description string `json:"description,omitempty"`
10135
10136	// Destination: The destination the issue applies to.
10137	Destination string `json:"destination,omitempty"`
10138
10139	// Detail: A detailed issue description in English.
10140	Detail string `json:"detail,omitempty"`
10141
10142	// Documentation: The URL of a web page to help with resolving this
10143	// issue.
10144	Documentation string `json:"documentation,omitempty"`
10145
10146	// Resolution: Whether the issue can be resolved by the merchant.
10147	Resolution string `json:"resolution,omitempty"`
10148
10149	// Servability: How this issue affects serving of the offer.
10150	Servability string `json:"servability,omitempty"`
10151
10152	// ForceSendFields is a list of field names (e.g. "AttributeName") to
10153	// unconditionally include in API requests. By default, fields with
10154	// empty or default values are omitted from API requests. However, any
10155	// non-pointer, non-interface field appearing in ForceSendFields will be
10156	// sent to the server regardless of whether the field is empty or not.
10157	// This may be used to include empty fields in Patch requests.
10158	ForceSendFields []string `json:"-"`
10159
10160	// NullFields is a list of field names (e.g. "AttributeName") to include
10161	// in API requests with the JSON null value. By default, fields with
10162	// empty values are omitted from API requests. However, any field with
10163	// an empty value appearing in NullFields will be sent to the server as
10164	// null. It is an error if a field in this list has a non-empty value.
10165	// This may be used to include null fields in Patch requests.
10166	NullFields []string `json:"-"`
10167}
10168
10169func (s *ProductStatusItemLevelIssue) MarshalJSON() ([]byte, error) {
10170	type NoMethod ProductStatusItemLevelIssue
10171	raw := NoMethod(*s)
10172	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10173}
10174
10175type ProductTax struct {
10176	// Country: The country within which the item is taxed, specified as a
10177	// CLDR territory code.
10178	Country string `json:"country,omitempty"`
10179
10180	// LocationId: The numeric ID of a location that the tax rate applies to
10181	// as defined in the AdWords API.
10182	LocationId int64 `json:"locationId,omitempty,string"`
10183
10184	// PostalCode: The postal code range that the tax rate applies to,
10185	// represented by a ZIP code, a ZIP code prefix using * wildcard, a
10186	// range between two ZIP codes or two ZIP code prefixes of equal length.
10187	// Examples: 94114, 94*, 94002-95460, 94*-95*.
10188	PostalCode string `json:"postalCode,omitempty"`
10189
10190	// Rate: The percentage of tax rate that applies to the item price.
10191	Rate float64 `json:"rate,omitempty"`
10192
10193	// Region: The geographic region to which the tax rate applies.
10194	Region string `json:"region,omitempty"`
10195
10196	// TaxShip: Should be set to true if tax is charged on shipping.
10197	TaxShip bool `json:"taxShip,omitempty"`
10198
10199	// ForceSendFields is a list of field names (e.g. "Country") to
10200	// unconditionally include in API requests. By default, fields with
10201	// empty or default values are omitted from API requests. However, any
10202	// non-pointer, non-interface field appearing in ForceSendFields will be
10203	// sent to the server regardless of whether the field is empty or not.
10204	// This may be used to include empty fields in Patch requests.
10205	ForceSendFields []string `json:"-"`
10206
10207	// NullFields is a list of field names (e.g. "Country") to include in
10208	// API requests with the JSON null value. By default, fields with empty
10209	// values are omitted from API requests. However, any field with an
10210	// empty value appearing in NullFields will be sent to the server as
10211	// null. It is an error if a field in this list has a non-empty value.
10212	// This may be used to include null fields in Patch requests.
10213	NullFields []string `json:"-"`
10214}
10215
10216func (s *ProductTax) MarshalJSON() ([]byte, error) {
10217	type NoMethod ProductTax
10218	raw := NoMethod(*s)
10219	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10220}
10221
10222func (s *ProductTax) UnmarshalJSON(data []byte) error {
10223	type NoMethod ProductTax
10224	var s1 struct {
10225		Rate gensupport.JSONFloat64 `json:"rate"`
10226		*NoMethod
10227	}
10228	s1.NoMethod = (*NoMethod)(s)
10229	if err := json.Unmarshal(data, &s1); err != nil {
10230		return err
10231	}
10232	s.Rate = float64(s1.Rate)
10233	return nil
10234}
10235
10236type ProductUnitPricingBaseMeasure struct {
10237	// Unit: The unit of the denominator.
10238	Unit string `json:"unit,omitempty"`
10239
10240	// Value: The denominator of the unit price.
10241	Value int64 `json:"value,omitempty,string"`
10242
10243	// ForceSendFields is a list of field names (e.g. "Unit") to
10244	// unconditionally include in API requests. By default, fields with
10245	// empty or default values are omitted from API requests. However, any
10246	// non-pointer, non-interface field appearing in ForceSendFields will be
10247	// sent to the server regardless of whether the field is empty or not.
10248	// This may be used to include empty fields in Patch requests.
10249	ForceSendFields []string `json:"-"`
10250
10251	// NullFields is a list of field names (e.g. "Unit") to include in API
10252	// requests with the JSON null value. By default, fields with empty
10253	// values are omitted from API requests. However, any field with an
10254	// empty value appearing in NullFields will be sent to the server as
10255	// null. It is an error if a field in this list has a non-empty value.
10256	// This may be used to include null fields in Patch requests.
10257	NullFields []string `json:"-"`
10258}
10259
10260func (s *ProductUnitPricingBaseMeasure) MarshalJSON() ([]byte, error) {
10261	type NoMethod ProductUnitPricingBaseMeasure
10262	raw := NoMethod(*s)
10263	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10264}
10265
10266type ProductUnitPricingMeasure struct {
10267	// Unit: The unit of the measure.
10268	Unit string `json:"unit,omitempty"`
10269
10270	// Value: The measure of an item.
10271	Value float64 `json:"value,omitempty"`
10272
10273	// ForceSendFields is a list of field names (e.g. "Unit") to
10274	// unconditionally include in API requests. By default, fields with
10275	// empty or default values are omitted from API requests. However, any
10276	// non-pointer, non-interface field appearing in ForceSendFields will be
10277	// sent to the server regardless of whether the field is empty or not.
10278	// This may be used to include empty fields in Patch requests.
10279	ForceSendFields []string `json:"-"`
10280
10281	// NullFields is a list of field names (e.g. "Unit") to include in API
10282	// requests with the JSON null value. By default, fields with empty
10283	// values are omitted from API requests. However, any field with an
10284	// empty value appearing in NullFields will be sent to the server as
10285	// null. It is an error if a field in this list has a non-empty value.
10286	// This may be used to include null fields in Patch requests.
10287	NullFields []string `json:"-"`
10288}
10289
10290func (s *ProductUnitPricingMeasure) MarshalJSON() ([]byte, error) {
10291	type NoMethod ProductUnitPricingMeasure
10292	raw := NoMethod(*s)
10293	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10294}
10295
10296func (s *ProductUnitPricingMeasure) UnmarshalJSON(data []byte) error {
10297	type NoMethod ProductUnitPricingMeasure
10298	var s1 struct {
10299		Value gensupport.JSONFloat64 `json:"value"`
10300		*NoMethod
10301	}
10302	s1.NoMethod = (*NoMethod)(s)
10303	if err := json.Unmarshal(data, &s1); err != nil {
10304		return err
10305	}
10306	s.Value = float64(s1.Value)
10307	return nil
10308}
10309
10310type ProductsCustomBatchRequest struct {
10311	// Entries: The request entries to be processed in the batch.
10312	Entries []*ProductsCustomBatchRequestEntry `json:"entries,omitempty"`
10313
10314	// ForceSendFields is a list of field names (e.g. "Entries") to
10315	// unconditionally include in API requests. By default, fields with
10316	// empty or default values are omitted from API requests. However, any
10317	// non-pointer, non-interface field appearing in ForceSendFields will be
10318	// sent to the server regardless of whether the field is empty or not.
10319	// This may be used to include empty fields in Patch requests.
10320	ForceSendFields []string `json:"-"`
10321
10322	// NullFields is a list of field names (e.g. "Entries") to include in
10323	// API requests with the JSON null value. By default, fields with empty
10324	// values are omitted from API requests. However, any field with an
10325	// empty value appearing in NullFields will be sent to the server as
10326	// null. It is an error if a field in this list has a non-empty value.
10327	// This may be used to include null fields in Patch requests.
10328	NullFields []string `json:"-"`
10329}
10330
10331func (s *ProductsCustomBatchRequest) MarshalJSON() ([]byte, error) {
10332	type NoMethod ProductsCustomBatchRequest
10333	raw := NoMethod(*s)
10334	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10335}
10336
10337// ProductsCustomBatchRequestEntry: A batch entry encoding a single
10338// non-batch products request.
10339type ProductsCustomBatchRequestEntry struct {
10340	// BatchId: An entry ID, unique within the batch request.
10341	BatchId int64 `json:"batchId,omitempty"`
10342
10343	// MerchantId: The ID of the managing account.
10344	MerchantId uint64 `json:"merchantId,omitempty,string"`
10345
10346	// Method: The method of the batch entry. Acceptable values are: -
10347	// "delete" - "get" - "insert"
10348	Method string `json:"method,omitempty"`
10349
10350	// Product: The product to insert. Only required if the method is
10351	// `insert`.
10352	Product *Product `json:"product,omitempty"`
10353
10354	// ProductId: The ID of the product to get or delete. Only defined if
10355	// the method is `get` or `delete`.
10356	ProductId string `json:"productId,omitempty"`
10357
10358	// ForceSendFields is a list of field names (e.g. "BatchId") to
10359	// unconditionally include in API requests. By default, fields with
10360	// empty or default values are omitted from API requests. However, any
10361	// non-pointer, non-interface field appearing in ForceSendFields will be
10362	// sent to the server regardless of whether the field is empty or not.
10363	// This may be used to include empty fields in Patch requests.
10364	ForceSendFields []string `json:"-"`
10365
10366	// NullFields is a list of field names (e.g. "BatchId") to include in
10367	// API requests with the JSON null value. By default, fields with empty
10368	// values are omitted from API requests. However, any field with an
10369	// empty value appearing in NullFields will be sent to the server as
10370	// null. It is an error if a field in this list has a non-empty value.
10371	// This may be used to include null fields in Patch requests.
10372	NullFields []string `json:"-"`
10373}
10374
10375func (s *ProductsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
10376	type NoMethod ProductsCustomBatchRequestEntry
10377	raw := NoMethod(*s)
10378	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10379}
10380
10381type ProductsCustomBatchResponse struct {
10382	// Entries: The result of the execution of the batch requests.
10383	Entries []*ProductsCustomBatchResponseEntry `json:"entries,omitempty"`
10384
10385	// Kind: Identifies what kind of resource this is. Value: the fixed
10386	// string "content#productsCustomBatchResponse".
10387	Kind string `json:"kind,omitempty"`
10388
10389	// ServerResponse contains the HTTP response code and headers from the
10390	// server.
10391	googleapi.ServerResponse `json:"-"`
10392
10393	// ForceSendFields is a list of field names (e.g. "Entries") to
10394	// unconditionally include in API requests. By default, fields with
10395	// empty or default values are omitted from API requests. However, any
10396	// non-pointer, non-interface field appearing in ForceSendFields will be
10397	// sent to the server regardless of whether the field is empty or not.
10398	// This may be used to include empty fields in Patch requests.
10399	ForceSendFields []string `json:"-"`
10400
10401	// NullFields is a list of field names (e.g. "Entries") to include in
10402	// API requests with the JSON null value. By default, fields with empty
10403	// values are omitted from API requests. However, any field with an
10404	// empty value appearing in NullFields will be sent to the server as
10405	// null. It is an error if a field in this list has a non-empty value.
10406	// This may be used to include null fields in Patch requests.
10407	NullFields []string `json:"-"`
10408}
10409
10410func (s *ProductsCustomBatchResponse) MarshalJSON() ([]byte, error) {
10411	type NoMethod ProductsCustomBatchResponse
10412	raw := NoMethod(*s)
10413	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10414}
10415
10416// ProductsCustomBatchResponseEntry: A batch entry encoding a single
10417// non-batch products response.
10418type ProductsCustomBatchResponseEntry struct {
10419	// BatchId: The ID of the request entry this entry responds to.
10420	BatchId int64 `json:"batchId,omitempty"`
10421
10422	// Errors: A list of errors defined if and only if the request failed.
10423	Errors *Errors `json:"errors,omitempty"`
10424
10425	// Kind: Identifies what kind of resource this is. Value: the fixed
10426	// string "content#productsCustomBatchResponseEntry"
10427	Kind string `json:"kind,omitempty"`
10428
10429	// Product: The inserted product. Only defined if the method is `insert`
10430	// and if the request was successful.
10431	Product *Product `json:"product,omitempty"`
10432
10433	// ForceSendFields is a list of field names (e.g. "BatchId") to
10434	// unconditionally include in API requests. By default, fields with
10435	// empty or default values are omitted from API requests. However, any
10436	// non-pointer, non-interface field appearing in ForceSendFields will be
10437	// sent to the server regardless of whether the field is empty or not.
10438	// This may be used to include empty fields in Patch requests.
10439	ForceSendFields []string `json:"-"`
10440
10441	// NullFields is a list of field names (e.g. "BatchId") to include in
10442	// API requests with the JSON null value. By default, fields with empty
10443	// values are omitted from API requests. However, any field with an
10444	// empty value appearing in NullFields will be sent to the server as
10445	// null. It is an error if a field in this list has a non-empty value.
10446	// This may be used to include null fields in Patch requests.
10447	NullFields []string `json:"-"`
10448}
10449
10450func (s *ProductsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
10451	type NoMethod ProductsCustomBatchResponseEntry
10452	raw := NoMethod(*s)
10453	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10454}
10455
10456type ProductsListResponse struct {
10457	// Kind: Identifies what kind of resource this is. Value: the fixed
10458	// string "content#productsListResponse".
10459	Kind string `json:"kind,omitempty"`
10460
10461	// NextPageToken: The token for the retrieval of the next page of
10462	// products.
10463	NextPageToken string `json:"nextPageToken,omitempty"`
10464
10465	Resources []*Product `json:"resources,omitempty"`
10466
10467	// ServerResponse contains the HTTP response code and headers from the
10468	// server.
10469	googleapi.ServerResponse `json:"-"`
10470
10471	// ForceSendFields is a list of field names (e.g. "Kind") to
10472	// unconditionally include in API requests. By default, fields with
10473	// empty or default values are omitted from API requests. However, any
10474	// non-pointer, non-interface field appearing in ForceSendFields will be
10475	// sent to the server regardless of whether the field is empty or not.
10476	// This may be used to include empty fields in Patch requests.
10477	ForceSendFields []string `json:"-"`
10478
10479	// NullFields is a list of field names (e.g. "Kind") to include in API
10480	// requests with the JSON null value. By default, fields with empty
10481	// values are omitted from API requests. However, any field with an
10482	// empty value appearing in NullFields will be sent to the server as
10483	// null. It is an error if a field in this list has a non-empty value.
10484	// This may be used to include null fields in Patch requests.
10485	NullFields []string `json:"-"`
10486}
10487
10488func (s *ProductsListResponse) MarshalJSON() ([]byte, error) {
10489	type NoMethod ProductsListResponse
10490	raw := NoMethod(*s)
10491	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10492}
10493
10494type ProductstatusesCustomBatchRequest struct {
10495	// Entries: The request entries to be processed in the batch.
10496	Entries []*ProductstatusesCustomBatchRequestEntry `json:"entries,omitempty"`
10497
10498	// ForceSendFields is a list of field names (e.g. "Entries") to
10499	// unconditionally include in API requests. By default, fields with
10500	// empty or default values are omitted from API requests. However, any
10501	// non-pointer, non-interface field appearing in ForceSendFields will be
10502	// sent to the server regardless of whether the field is empty or not.
10503	// This may be used to include empty fields in Patch requests.
10504	ForceSendFields []string `json:"-"`
10505
10506	// NullFields is a list of field names (e.g. "Entries") to include in
10507	// API requests with the JSON null value. By default, fields with empty
10508	// values are omitted from API requests. However, any field with an
10509	// empty value appearing in NullFields will be sent to the server as
10510	// null. It is an error if a field in this list has a non-empty value.
10511	// This may be used to include null fields in Patch requests.
10512	NullFields []string `json:"-"`
10513}
10514
10515func (s *ProductstatusesCustomBatchRequest) MarshalJSON() ([]byte, error) {
10516	type NoMethod ProductstatusesCustomBatchRequest
10517	raw := NoMethod(*s)
10518	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10519}
10520
10521// ProductstatusesCustomBatchRequestEntry: A batch entry encoding a
10522// single non-batch productstatuses request.
10523type ProductstatusesCustomBatchRequestEntry struct {
10524	// BatchId: An entry ID, unique within the batch request.
10525	BatchId int64 `json:"batchId,omitempty"`
10526
10527	// Destinations: If set, only issues for the specified destinations are
10528	// returned, otherwise only issues for the Shopping destination.
10529	Destinations []string `json:"destinations,omitempty"`
10530
10531	IncludeAttributes bool `json:"includeAttributes,omitempty"`
10532
10533	// MerchantId: The ID of the managing account.
10534	MerchantId uint64 `json:"merchantId,omitempty,string"`
10535
10536	// Method: The method of the batch entry. Acceptable values are: -
10537	// "get"
10538	Method string `json:"method,omitempty"`
10539
10540	// ProductId: The ID of the product whose status to get.
10541	ProductId string `json:"productId,omitempty"`
10542
10543	// ForceSendFields is a list of field names (e.g. "BatchId") to
10544	// unconditionally include in API requests. By default, fields with
10545	// empty or default values are omitted from API requests. However, any
10546	// non-pointer, non-interface field appearing in ForceSendFields will be
10547	// sent to the server regardless of whether the field is empty or not.
10548	// This may be used to include empty fields in Patch requests.
10549	ForceSendFields []string `json:"-"`
10550
10551	// NullFields is a list of field names (e.g. "BatchId") to include in
10552	// API requests with the JSON null value. By default, fields with empty
10553	// values are omitted from API requests. However, any field with an
10554	// empty value appearing in NullFields will be sent to the server as
10555	// null. It is an error if a field in this list has a non-empty value.
10556	// This may be used to include null fields in Patch requests.
10557	NullFields []string `json:"-"`
10558}
10559
10560func (s *ProductstatusesCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
10561	type NoMethod ProductstatusesCustomBatchRequestEntry
10562	raw := NoMethod(*s)
10563	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10564}
10565
10566type ProductstatusesCustomBatchResponse struct {
10567	// Entries: The result of the execution of the batch requests.
10568	Entries []*ProductstatusesCustomBatchResponseEntry `json:"entries,omitempty"`
10569
10570	// Kind: Identifies what kind of resource this is. Value: the fixed
10571	// string "content#productstatusesCustomBatchResponse".
10572	Kind string `json:"kind,omitempty"`
10573
10574	// ServerResponse contains the HTTP response code and headers from the
10575	// server.
10576	googleapi.ServerResponse `json:"-"`
10577
10578	// ForceSendFields is a list of field names (e.g. "Entries") to
10579	// unconditionally include in API requests. By default, fields with
10580	// empty or default values are omitted from API requests. However, any
10581	// non-pointer, non-interface field appearing in ForceSendFields will be
10582	// sent to the server regardless of whether the field is empty or not.
10583	// This may be used to include empty fields in Patch requests.
10584	ForceSendFields []string `json:"-"`
10585
10586	// NullFields is a list of field names (e.g. "Entries") to include in
10587	// API requests with the JSON null value. By default, fields with empty
10588	// values are omitted from API requests. However, any field with an
10589	// empty value appearing in NullFields will be sent to the server as
10590	// null. It is an error if a field in this list has a non-empty value.
10591	// This may be used to include null fields in Patch requests.
10592	NullFields []string `json:"-"`
10593}
10594
10595func (s *ProductstatusesCustomBatchResponse) MarshalJSON() ([]byte, error) {
10596	type NoMethod ProductstatusesCustomBatchResponse
10597	raw := NoMethod(*s)
10598	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10599}
10600
10601// ProductstatusesCustomBatchResponseEntry: A batch entry encoding a
10602// single non-batch productstatuses response.
10603type ProductstatusesCustomBatchResponseEntry struct {
10604	// BatchId: The ID of the request entry this entry responds to.
10605	BatchId int64 `json:"batchId,omitempty"`
10606
10607	// Errors: A list of errors, if the request failed.
10608	Errors *Errors `json:"errors,omitempty"`
10609
10610	// Kind: Identifies what kind of resource this is. Value: the fixed
10611	// string "content#productstatusesCustomBatchResponseEntry"
10612	Kind string `json:"kind,omitempty"`
10613
10614	// ProductStatus: The requested product status. Only defined if the
10615	// request was successful.
10616	ProductStatus *ProductStatus `json:"productStatus,omitempty"`
10617
10618	// ForceSendFields is a list of field names (e.g. "BatchId") to
10619	// unconditionally include in API requests. By default, fields with
10620	// empty or default values are omitted from API requests. However, any
10621	// non-pointer, non-interface field appearing in ForceSendFields will be
10622	// sent to the server regardless of whether the field is empty or not.
10623	// This may be used to include empty fields in Patch requests.
10624	ForceSendFields []string `json:"-"`
10625
10626	// NullFields is a list of field names (e.g. "BatchId") to include in
10627	// API requests with the JSON null value. By default, fields with empty
10628	// values are omitted from API requests. However, any field with an
10629	// empty value appearing in NullFields will be sent to the server as
10630	// null. It is an error if a field in this list has a non-empty value.
10631	// This may be used to include null fields in Patch requests.
10632	NullFields []string `json:"-"`
10633}
10634
10635func (s *ProductstatusesCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
10636	type NoMethod ProductstatusesCustomBatchResponseEntry
10637	raw := NoMethod(*s)
10638	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10639}
10640
10641type ProductstatusesListResponse struct {
10642	// Kind: Identifies what kind of resource this is. Value: the fixed
10643	// string "content#productstatusesListResponse".
10644	Kind string `json:"kind,omitempty"`
10645
10646	// NextPageToken: The token for the retrieval of the next page of
10647	// products statuses.
10648	NextPageToken string `json:"nextPageToken,omitempty"`
10649
10650	Resources []*ProductStatus `json:"resources,omitempty"`
10651
10652	// ServerResponse contains the HTTP response code and headers from the
10653	// server.
10654	googleapi.ServerResponse `json:"-"`
10655
10656	// ForceSendFields is a list of field names (e.g. "Kind") to
10657	// unconditionally include in API requests. By default, fields with
10658	// empty or default values are omitted from API requests. However, any
10659	// non-pointer, non-interface field appearing in ForceSendFields will be
10660	// sent to the server regardless of whether the field is empty or not.
10661	// This may be used to include empty fields in Patch requests.
10662	ForceSendFields []string `json:"-"`
10663
10664	// NullFields is a list of field names (e.g. "Kind") to include in API
10665	// requests with the JSON null value. By default, fields with empty
10666	// values are omitted from API requests. However, any field with an
10667	// empty value appearing in NullFields will be sent to the server as
10668	// null. It is an error if a field in this list has a non-empty value.
10669	// This may be used to include null fields in Patch requests.
10670	NullFields []string `json:"-"`
10671}
10672
10673func (s *ProductstatusesListResponse) MarshalJSON() ([]byte, error) {
10674	type NoMethod ProductstatusesListResponse
10675	raw := NoMethod(*s)
10676	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10677}
10678
10679type Promotion struct {
10680	// PromotionAmount: [required] Amount of the promotion. The values here
10681	// are the promotion applied to the unit price pretax and to the total
10682	// of the tax amounts.
10683	PromotionAmount *Amount `json:"promotionAmount,omitempty"`
10684
10685	// PromotionId: [required] ID of the promotion.
10686	PromotionId string `json:"promotionId,omitempty"`
10687
10688	// ForceSendFields is a list of field names (e.g. "PromotionAmount") to
10689	// unconditionally include in API requests. By default, fields with
10690	// empty or default values are omitted from API requests. However, any
10691	// non-pointer, non-interface field appearing in ForceSendFields will be
10692	// sent to the server regardless of whether the field is empty or not.
10693	// This may be used to include empty fields in Patch requests.
10694	ForceSendFields []string `json:"-"`
10695
10696	// NullFields is a list of field names (e.g. "PromotionAmount") to
10697	// include in API requests with the JSON null value. By default, fields
10698	// with empty values are omitted from API requests. However, any field
10699	// with an empty value appearing in NullFields will be sent to the
10700	// server as null. It is an error if a field in this list has a
10701	// non-empty value. This may be used to include null fields in Patch
10702	// requests.
10703	NullFields []string `json:"-"`
10704}
10705
10706func (s *Promotion) MarshalJSON() ([]byte, error) {
10707	type NoMethod Promotion
10708	raw := NoMethod(*s)
10709	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10710}
10711
10712type RateGroup struct {
10713	// ApplicableShippingLabels: A list of shipping labels defining the
10714	// products to which this rate group applies to. This is a disjunction:
10715	// only one of the labels has to match for the rate group to apply. May
10716	// only be empty for the last rate group of a service. Required.
10717	ApplicableShippingLabels []string `json:"applicableShippingLabels,omitempty"`
10718
10719	// CarrierRates: A list of carrier rates that can be referred to by
10720	// `mainTable` or `singleValue`.
10721	CarrierRates []*CarrierRate `json:"carrierRates,omitempty"`
10722
10723	// MainTable: A table defining the rate group, when `singleValue` is not
10724	// expressive enough. Can only be set if `singleValue` is not set.
10725	MainTable *Table `json:"mainTable,omitempty"`
10726
10727	// Name: Name of the rate group. Optional. If set has to be unique
10728	// within shipping service.
10729	Name string `json:"name,omitempty"`
10730
10731	// SingleValue: The value of the rate group (e.g. flat rate $10). Can
10732	// only be set if `mainTable` and `subtables` are not set.
10733	SingleValue *Value `json:"singleValue,omitempty"`
10734
10735	// Subtables: A list of subtables referred to by `mainTable`. Can only
10736	// be set if `mainTable` is set.
10737	Subtables []*Table `json:"subtables,omitempty"`
10738
10739	// ForceSendFields is a list of field names (e.g.
10740	// "ApplicableShippingLabels") to unconditionally include in API
10741	// requests. By default, fields with empty or default values are omitted
10742	// from API requests. However, any non-pointer, non-interface field
10743	// appearing in ForceSendFields will be sent to the server regardless of
10744	// whether the field is empty or not. This may be used to include empty
10745	// fields in Patch requests.
10746	ForceSendFields []string `json:"-"`
10747
10748	// NullFields is a list of field names (e.g. "ApplicableShippingLabels")
10749	// to include in API requests with the JSON null value. By default,
10750	// fields with empty values are omitted from API requests. However, any
10751	// field with an empty value appearing in NullFields will be sent to the
10752	// server as null. It is an error if a field in this list has a
10753	// non-empty value. This may be used to include null fields in Patch
10754	// requests.
10755	NullFields []string `json:"-"`
10756}
10757
10758func (s *RateGroup) MarshalJSON() ([]byte, error) {
10759	type NoMethod RateGroup
10760	raw := NoMethod(*s)
10761	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10762}
10763
10764type RefundReason struct {
10765	// Description: Description of the reason.
10766	Description string `json:"description,omitempty"`
10767
10768	// ReasonCode: Code of the refund reason. Acceptable values are: -
10769	// "adjustment" - "autoPostInternal" -
10770	// "autoPostInvalidBillingAddress" - "autoPostNoInventory" -
10771	// "autoPostPriceError" - "autoPostUndeliverableShippingAddress" -
10772	// "couponAbuse" - "courtesyAdjustment" - "customerCanceled" -
10773	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
10774	// - "customerSupportRequested" - "deliveredLateByCarrier" -
10775	// "deliveredTooLate" - "expiredItem" -
10776	// "failToPushOrderGoogleError" - "failToPushOrderMerchantError" -
10777	// "failToPushOrderMerchantFulfillmentError" -
10778	// "failToPushOrderToMerchant" -
10779	// "failToPushOrderToMerchantOutOfStock" - "feeAdjustment" -
10780	// "invalidCoupon" - "lateShipmentCredit" -
10781	// "malformedShippingAddress" - "merchantDidNotShipOnTime" -
10782	// "noInventory" - "orderTimeout" - "other" - "paymentAbuse" -
10783	// "paymentDeclined" - "priceAdjustment" - "priceError" -
10784	// "productArrivedDamaged" - "productNotAsDescribed" -
10785	// "promoReallocation" - "qualityNotAsExpected" -
10786	// "returnRefundAbuse" - "shippingCostAdjustment" -
10787	// "shippingPriceError" - "taxAdjustment" - "taxError" -
10788	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
10789	// "wrongProductShipped"
10790	ReasonCode string `json:"reasonCode,omitempty"`
10791
10792	// ForceSendFields is a list of field names (e.g. "Description") to
10793	// unconditionally include in API requests. By default, fields with
10794	// empty or default values are omitted from API requests. However, any
10795	// non-pointer, non-interface field appearing in ForceSendFields will be
10796	// sent to the server regardless of whether the field is empty or not.
10797	// This may be used to include empty fields in Patch requests.
10798	ForceSendFields []string `json:"-"`
10799
10800	// NullFields is a list of field names (e.g. "Description") to include
10801	// in API requests with the JSON null value. By default, fields with
10802	// empty values are omitted from API requests. However, any field with
10803	// an empty value appearing in NullFields will be sent to the server as
10804	// null. It is an error if a field in this list has a non-empty value.
10805	// This may be used to include null fields in Patch requests.
10806	NullFields []string `json:"-"`
10807}
10808
10809func (s *RefundReason) MarshalJSON() ([]byte, error) {
10810	type NoMethod RefundReason
10811	raw := NoMethod(*s)
10812	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10813}
10814
10815type ReturnShipment struct {
10816	// CreationDate: The date of creation of the shipment, in ISO 8601
10817	// format.
10818	CreationDate string `json:"creationDate,omitempty"`
10819
10820	// DeliveryDate: The date of delivery of the shipment, in ISO 8601
10821	// format.
10822	DeliveryDate string `json:"deliveryDate,omitempty"`
10823
10824	// ReturnMethodType: Type of the return method. Acceptable values are: -
10825	// "byMail" - "contactCustomerSupport" - "returnless"
10826	ReturnMethodType string `json:"returnMethodType,omitempty"`
10827
10828	// ShipmentId: Shipment ID generated by Google.
10829	ShipmentId string `json:"shipmentId,omitempty"`
10830
10831	// ShipmentTrackingInfos: Tracking information of the shipment. One
10832	// return shipment might be handled by several shipping carriers
10833	// sequentially.
10834	ShipmentTrackingInfos []*ShipmentTrackingInfo `json:"shipmentTrackingInfos,omitempty"`
10835
10836	// ShippingDate: The date of shipping of the shipment, in ISO 8601
10837	// format.
10838	ShippingDate string `json:"shippingDate,omitempty"`
10839
10840	// State: State of the shipment. Acceptable values are: - "completed"
10841	// - "new" - "shipped" - "undeliverable" - "pending"
10842	State string `json:"state,omitempty"`
10843
10844	// ForceSendFields is a list of field names (e.g. "CreationDate") to
10845	// unconditionally include in API requests. By default, fields with
10846	// empty or default values are omitted from API requests. However, any
10847	// non-pointer, non-interface field appearing in ForceSendFields will be
10848	// sent to the server regardless of whether the field is empty or not.
10849	// This may be used to include empty fields in Patch requests.
10850	ForceSendFields []string `json:"-"`
10851
10852	// NullFields is a list of field names (e.g. "CreationDate") to include
10853	// in API requests with the JSON null value. By default, fields with
10854	// empty values are omitted from API requests. However, any field with
10855	// an empty value appearing in NullFields will be sent to the server as
10856	// null. It is an error if a field in this list has a non-empty value.
10857	// This may be used to include null fields in Patch requests.
10858	NullFields []string `json:"-"`
10859}
10860
10861func (s *ReturnShipment) MarshalJSON() ([]byte, error) {
10862	type NoMethod ReturnShipment
10863	raw := NoMethod(*s)
10864	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10865}
10866
10867type Row struct {
10868	// Cells: The list of cells that constitute the row. Must have the same
10869	// length as `columnHeaders` for two-dimensional tables, a length of 1
10870	// for one-dimensional tables. Required.
10871	Cells []*Value `json:"cells,omitempty"`
10872
10873	// ForceSendFields is a list of field names (e.g. "Cells") to
10874	// unconditionally include in API requests. By default, fields with
10875	// empty or default values are omitted from API requests. However, any
10876	// non-pointer, non-interface field appearing in ForceSendFields will be
10877	// sent to the server regardless of whether the field is empty or not.
10878	// This may be used to include empty fields in Patch requests.
10879	ForceSendFields []string `json:"-"`
10880
10881	// NullFields is a list of field names (e.g. "Cells") to include in API
10882	// requests with the JSON null value. By default, fields with empty
10883	// values are omitted from API requests. However, any field with an
10884	// empty value appearing in NullFields will be sent to the server as
10885	// null. It is an error if a field in this list has a non-empty value.
10886	// This may be used to include null fields in Patch requests.
10887	NullFields []string `json:"-"`
10888}
10889
10890func (s *Row) MarshalJSON() ([]byte, error) {
10891	type NoMethod Row
10892	raw := NoMethod(*s)
10893	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10894}
10895
10896type Service struct {
10897	// Active: A boolean exposing the active status of the shipping service.
10898	// Required.
10899	Active bool `json:"active,omitempty"`
10900
10901	// Currency: The CLDR code of the currency to which this service
10902	// applies. Must match that of the prices in rate groups.
10903	Currency string `json:"currency,omitempty"`
10904
10905	// DeliveryCountry: The CLDR territory code of the country to which the
10906	// service applies. Required.
10907	DeliveryCountry string `json:"deliveryCountry,omitempty"`
10908
10909	// DeliveryTime: Time spent in various aspects from order to the
10910	// delivery of the product. Required.
10911	DeliveryTime *DeliveryTime `json:"deliveryTime,omitempty"`
10912
10913	// Eligibility: Eligibility for this service. Acceptable values are: -
10914	// "All scenarios" - "All scenarios except Shopping Actions" -
10915	// "Shopping Actions"
10916	Eligibility string `json:"eligibility,omitempty"`
10917
10918	// MinimumOrderValue: Minimum order value for this service. If set,
10919	// indicates that customers will have to spend at least this amount. All
10920	// prices within a service must have the same currency. Cannot be set
10921	// together with minimum_order_value_table.
10922	MinimumOrderValue *Price `json:"minimumOrderValue,omitempty"`
10923
10924	// MinimumOrderValueTable: Table of per store minimum order values for
10925	// the pickup fulfillment type. Cannot be set together with
10926	// minimum_order_value.
10927	MinimumOrderValueTable *MinimumOrderValueTable `json:"minimumOrderValueTable,omitempty"`
10928
10929	// Name: Free-form name of the service. Must be unique within target
10930	// account. Required.
10931	Name string `json:"name,omitempty"`
10932
10933	// PickupService: The carrier-service pair delivering items to
10934	// collection points. The list of supported pickup services can be
10935	// retrieved via the `getSupportedPickupServices` method. Required if
10936	// and only if the service delivery type is `pickup`.
10937	PickupService *PickupCarrierService `json:"pickupService,omitempty"`
10938
10939	// RateGroups: Shipping rate group definitions. Only the last one is
10940	// allowed to have an empty `applicableShippingLabels`, which means
10941	// "everything else". The other `applicableShippingLabels` must not
10942	// overlap.
10943	RateGroups []*RateGroup `json:"rateGroups,omitempty"`
10944
10945	// ShipmentType: Type of locations this service ships orders to.
10946	// Acceptable values are: - "delivery" - "pickup"
10947	ShipmentType string `json:"shipmentType,omitempty"`
10948
10949	// ForceSendFields is a list of field names (e.g. "Active") to
10950	// unconditionally include in API requests. By default, fields with
10951	// empty or default values are omitted from API requests. However, any
10952	// non-pointer, non-interface field appearing in ForceSendFields will be
10953	// sent to the server regardless of whether the field is empty or not.
10954	// This may be used to include empty fields in Patch requests.
10955	ForceSendFields []string `json:"-"`
10956
10957	// NullFields is a list of field names (e.g. "Active") to include in API
10958	// requests with the JSON null value. By default, fields with empty
10959	// values are omitted from API requests. However, any field with an
10960	// empty value appearing in NullFields will be sent to the server as
10961	// null. It is an error if a field in this list has a non-empty value.
10962	// This may be used to include null fields in Patch requests.
10963	NullFields []string `json:"-"`
10964}
10965
10966func (s *Service) MarshalJSON() ([]byte, error) {
10967	type NoMethod Service
10968	raw := NoMethod(*s)
10969	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10970}
10971
10972type ShipmentInvoice struct {
10973	// InvoiceSummary: [required] Invoice summary.
10974	InvoiceSummary *InvoiceSummary `json:"invoiceSummary,omitempty"`
10975
10976	// LineItemInvoices: [required] Invoice details per line item.
10977	LineItemInvoices []*ShipmentInvoiceLineItemInvoice `json:"lineItemInvoices,omitempty"`
10978
10979	// ShipmentGroupId: [required] ID of the shipment group. It is assigned
10980	// by the merchant in the `shipLineItems` method and is used to group
10981	// multiple line items that have the same kind of shipping charges.
10982	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
10983
10984	// ForceSendFields is a list of field names (e.g. "InvoiceSummary") to
10985	// unconditionally include in API requests. By default, fields with
10986	// empty or default values are omitted from API requests. However, any
10987	// non-pointer, non-interface field appearing in ForceSendFields will be
10988	// sent to the server regardless of whether the field is empty or not.
10989	// This may be used to include empty fields in Patch requests.
10990	ForceSendFields []string `json:"-"`
10991
10992	// NullFields is a list of field names (e.g. "InvoiceSummary") to
10993	// include in API requests with the JSON null value. By default, fields
10994	// with empty values are omitted from API requests. However, any field
10995	// with an empty value appearing in NullFields will be sent to the
10996	// server as null. It is an error if a field in this list has a
10997	// non-empty value. This may be used to include null fields in Patch
10998	// requests.
10999	NullFields []string `json:"-"`
11000}
11001
11002func (s *ShipmentInvoice) MarshalJSON() ([]byte, error) {
11003	type NoMethod ShipmentInvoice
11004	raw := NoMethod(*s)
11005	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11006}
11007
11008type ShipmentInvoiceLineItemInvoice struct {
11009	// LineItemId: ID of the line item. Either lineItemId or productId must
11010	// be set.
11011	LineItemId string `json:"lineItemId,omitempty"`
11012
11013	// ProductId: ID of the product. This is the REST ID used in the
11014	// products service. Either lineItemId or productId must be set.
11015	ProductId string `json:"productId,omitempty"`
11016
11017	// ShipmentUnitIds: [required] The shipment unit ID is assigned by the
11018	// merchant and defines individual quantities within a line item. The
11019	// same ID can be assigned to units that are the same while units that
11020	// differ must be assigned a different ID (for example: free or
11021	// promotional units).
11022	ShipmentUnitIds []string `json:"shipmentUnitIds,omitempty"`
11023
11024	// UnitInvoice: [required] Invoice details for a single unit.
11025	UnitInvoice *UnitInvoice `json:"unitInvoice,omitempty"`
11026
11027	// ForceSendFields is a list of field names (e.g. "LineItemId") to
11028	// unconditionally include in API requests. By default, fields with
11029	// empty or default values are omitted from API requests. However, any
11030	// non-pointer, non-interface field appearing in ForceSendFields will be
11031	// sent to the server regardless of whether the field is empty or not.
11032	// This may be used to include empty fields in Patch requests.
11033	ForceSendFields []string `json:"-"`
11034
11035	// NullFields is a list of field names (e.g. "LineItemId") to include in
11036	// API requests with the JSON null value. By default, fields with empty
11037	// values are omitted from API requests. However, any field with an
11038	// empty value appearing in NullFields will be sent to the server as
11039	// null. It is an error if a field in this list has a non-empty value.
11040	// This may be used to include null fields in Patch requests.
11041	NullFields []string `json:"-"`
11042}
11043
11044func (s *ShipmentInvoiceLineItemInvoice) MarshalJSON() ([]byte, error) {
11045	type NoMethod ShipmentInvoiceLineItemInvoice
11046	raw := NoMethod(*s)
11047	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11048}
11049
11050type ShipmentTrackingInfo struct {
11051	// Carrier: The shipping carrier that handles the package. Acceptable
11052	// values are: - "boxtal" - "bpost" - "chronopost" -
11053	// "colisPrive" - "colissimo" - "cxt" - "deliv" - "dhl" -
11054	// "dpd" - "dynamex" - "eCourier" - "easypost" - "efw" -
11055	// "fedex" - "fedexSmartpost" - "geodis" - "gls" -
11056	// "googleCourier" - "gsx" - "jdLogistics" - "laPoste" -
11057	// "lasership" - "manual" - "mpx" - "onTrac" - "other" -
11058	// "tnt" - "uds" - "ups" - "usps"
11059	Carrier string `json:"carrier,omitempty"`
11060
11061	// TrackingNumber: The tracking number for the package.
11062	TrackingNumber string `json:"trackingNumber,omitempty"`
11063
11064	// ForceSendFields is a list of field names (e.g. "Carrier") to
11065	// unconditionally include in API requests. By default, fields with
11066	// empty or default values are omitted from API requests. However, any
11067	// non-pointer, non-interface field appearing in ForceSendFields will be
11068	// sent to the server regardless of whether the field is empty or not.
11069	// This may be used to include empty fields in Patch requests.
11070	ForceSendFields []string `json:"-"`
11071
11072	// NullFields is a list of field names (e.g. "Carrier") to include in
11073	// API requests with the JSON null value. By default, fields with empty
11074	// values are omitted from API requests. However, any field with an
11075	// empty value appearing in NullFields will be sent to the server as
11076	// null. It is an error if a field in this list has a non-empty value.
11077	// This may be used to include null fields in Patch requests.
11078	NullFields []string `json:"-"`
11079}
11080
11081func (s *ShipmentTrackingInfo) MarshalJSON() ([]byte, error) {
11082	type NoMethod ShipmentTrackingInfo
11083	raw := NoMethod(*s)
11084	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11085}
11086
11087// ShippingSettings: The merchant account's shipping settings. All
11088// methods except getsupportedcarriers and getsupportedholidays require
11089// the admin role.
11090type ShippingSettings struct {
11091	// AccountId: The ID of the account to which these account shipping
11092	// settings belong. Ignored upon update, always present in get request
11093	// responses.
11094	AccountId uint64 `json:"accountId,omitempty,string"`
11095
11096	// PostalCodeGroups: A list of postal code groups that can be referred
11097	// to in `services`. Optional.
11098	PostalCodeGroups []*PostalCodeGroup `json:"postalCodeGroups,omitempty"`
11099
11100	// Services: The target account's list of services. Optional.
11101	Services []*Service `json:"services,omitempty"`
11102
11103	// Warehouses: Optional. A list of warehouses which can be referred to
11104	// in `services`.
11105	Warehouses []*Warehouse `json:"warehouses,omitempty"`
11106
11107	// ServerResponse contains the HTTP response code and headers from the
11108	// server.
11109	googleapi.ServerResponse `json:"-"`
11110
11111	// ForceSendFields is a list of field names (e.g. "AccountId") to
11112	// unconditionally include in API requests. By default, fields with
11113	// empty or default values are omitted from API requests. However, any
11114	// non-pointer, non-interface field appearing in ForceSendFields will be
11115	// sent to the server regardless of whether the field is empty or not.
11116	// This may be used to include empty fields in Patch requests.
11117	ForceSendFields []string `json:"-"`
11118
11119	// NullFields is a list of field names (e.g. "AccountId") to include in
11120	// API requests with the JSON null value. By default, fields with empty
11121	// values are omitted from API requests. However, any field with an
11122	// empty value appearing in NullFields will be sent to the server as
11123	// null. It is an error if a field in this list has a non-empty value.
11124	// This may be used to include null fields in Patch requests.
11125	NullFields []string `json:"-"`
11126}
11127
11128func (s *ShippingSettings) MarshalJSON() ([]byte, error) {
11129	type NoMethod ShippingSettings
11130	raw := NoMethod(*s)
11131	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11132}
11133
11134type ShippingsettingsCustomBatchRequest struct {
11135	// Entries: The request entries to be processed in the batch.
11136	Entries []*ShippingsettingsCustomBatchRequestEntry `json:"entries,omitempty"`
11137
11138	// ForceSendFields is a list of field names (e.g. "Entries") to
11139	// unconditionally include in API requests. By default, fields with
11140	// empty or default values are omitted from API requests. However, any
11141	// non-pointer, non-interface field appearing in ForceSendFields will be
11142	// sent to the server regardless of whether the field is empty or not.
11143	// This may be used to include empty fields in Patch requests.
11144	ForceSendFields []string `json:"-"`
11145
11146	// NullFields is a list of field names (e.g. "Entries") to include in
11147	// API requests with the JSON null value. By default, fields with empty
11148	// values are omitted from API requests. However, any field with an
11149	// empty value appearing in NullFields will be sent to the server as
11150	// null. It is an error if a field in this list has a non-empty value.
11151	// This may be used to include null fields in Patch requests.
11152	NullFields []string `json:"-"`
11153}
11154
11155func (s *ShippingsettingsCustomBatchRequest) MarshalJSON() ([]byte, error) {
11156	type NoMethod ShippingsettingsCustomBatchRequest
11157	raw := NoMethod(*s)
11158	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11159}
11160
11161// ShippingsettingsCustomBatchRequestEntry: A batch entry encoding a
11162// single non-batch shippingsettings request.
11163type ShippingsettingsCustomBatchRequestEntry struct {
11164	// AccountId: The ID of the account for which to get/update account
11165	// shipping settings.
11166	AccountId uint64 `json:"accountId,omitempty,string"`
11167
11168	// BatchId: An entry ID, unique within the batch request.
11169	BatchId int64 `json:"batchId,omitempty"`
11170
11171	// MerchantId: The ID of the managing account.
11172	MerchantId uint64 `json:"merchantId,omitempty,string"`
11173
11174	// Method: The method of the batch entry. Acceptable values are: -
11175	// "get" - "update"
11176	Method string `json:"method,omitempty"`
11177
11178	// ShippingSettings: The account shipping settings to update. Only
11179	// defined if the method is `update`.
11180	ShippingSettings *ShippingSettings `json:"shippingSettings,omitempty"`
11181
11182	// ForceSendFields is a list of field names (e.g. "AccountId") to
11183	// unconditionally include in API requests. By default, fields with
11184	// empty or default values are omitted from API requests. However, any
11185	// non-pointer, non-interface field appearing in ForceSendFields will be
11186	// sent to the server regardless of whether the field is empty or not.
11187	// This may be used to include empty fields in Patch requests.
11188	ForceSendFields []string `json:"-"`
11189
11190	// NullFields is a list of field names (e.g. "AccountId") to include in
11191	// API requests with the JSON null value. By default, fields with empty
11192	// values are omitted from API requests. However, any field with an
11193	// empty value appearing in NullFields will be sent to the server as
11194	// null. It is an error if a field in this list has a non-empty value.
11195	// This may be used to include null fields in Patch requests.
11196	NullFields []string `json:"-"`
11197}
11198
11199func (s *ShippingsettingsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
11200	type NoMethod ShippingsettingsCustomBatchRequestEntry
11201	raw := NoMethod(*s)
11202	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11203}
11204
11205type ShippingsettingsCustomBatchResponse struct {
11206	// Entries: The result of the execution of the batch requests.
11207	Entries []*ShippingsettingsCustomBatchResponseEntry `json:"entries,omitempty"`
11208
11209	// Kind: Identifies what kind of resource this is. Value: the fixed
11210	// string "content#shippingsettingsCustomBatchResponse".
11211	Kind string `json:"kind,omitempty"`
11212
11213	// ServerResponse contains the HTTP response code and headers from the
11214	// server.
11215	googleapi.ServerResponse `json:"-"`
11216
11217	// ForceSendFields is a list of field names (e.g. "Entries") to
11218	// unconditionally include in API requests. By default, fields with
11219	// empty or default values are omitted from API requests. However, any
11220	// non-pointer, non-interface field appearing in ForceSendFields will be
11221	// sent to the server regardless of whether the field is empty or not.
11222	// This may be used to include empty fields in Patch requests.
11223	ForceSendFields []string `json:"-"`
11224
11225	// NullFields is a list of field names (e.g. "Entries") to include in
11226	// API requests with the JSON null value. By default, fields with empty
11227	// values are omitted from API requests. However, any field with an
11228	// empty value appearing in NullFields will be sent to the server as
11229	// null. It is an error if a field in this list has a non-empty value.
11230	// This may be used to include null fields in Patch requests.
11231	NullFields []string `json:"-"`
11232}
11233
11234func (s *ShippingsettingsCustomBatchResponse) MarshalJSON() ([]byte, error) {
11235	type NoMethod ShippingsettingsCustomBatchResponse
11236	raw := NoMethod(*s)
11237	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11238}
11239
11240// ShippingsettingsCustomBatchResponseEntry: A batch entry encoding a
11241// single non-batch shipping settings response.
11242type ShippingsettingsCustomBatchResponseEntry struct {
11243	// BatchId: The ID of the request entry to which this entry responds.
11244	BatchId int64 `json:"batchId,omitempty"`
11245
11246	// Errors: A list of errors defined if, and only if, the request failed.
11247	Errors *Errors `json:"errors,omitempty"`
11248
11249	// Kind: Identifies what kind of resource this is. Value: the fixed
11250	// string "content#shippingsettingsCustomBatchResponseEntry"
11251	Kind string `json:"kind,omitempty"`
11252
11253	// ShippingSettings: The retrieved or updated account shipping settings.
11254	ShippingSettings *ShippingSettings `json:"shippingSettings,omitempty"`
11255
11256	// ForceSendFields is a list of field names (e.g. "BatchId") to
11257	// unconditionally include in API requests. By default, fields with
11258	// empty or default values are omitted from API requests. However, any
11259	// non-pointer, non-interface field appearing in ForceSendFields will be
11260	// sent to the server regardless of whether the field is empty or not.
11261	// This may be used to include empty fields in Patch requests.
11262	ForceSendFields []string `json:"-"`
11263
11264	// NullFields is a list of field names (e.g. "BatchId") to include in
11265	// API requests with the JSON null value. By default, fields with empty
11266	// values are omitted from API requests. However, any field with an
11267	// empty value appearing in NullFields will be sent to the server as
11268	// null. It is an error if a field in this list has a non-empty value.
11269	// This may be used to include null fields in Patch requests.
11270	NullFields []string `json:"-"`
11271}
11272
11273func (s *ShippingsettingsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
11274	type NoMethod ShippingsettingsCustomBatchResponseEntry
11275	raw := NoMethod(*s)
11276	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11277}
11278
11279type ShippingsettingsGetSupportedCarriersResponse struct {
11280	// Carriers: A list of supported carriers. May be empty.
11281	Carriers []*CarriersCarrier `json:"carriers,omitempty"`
11282
11283	// Kind: Identifies what kind of resource this is. Value: the fixed
11284	// string "content#shippingsettingsGetSupportedCarriersResponse".
11285	Kind string `json:"kind,omitempty"`
11286
11287	// ServerResponse contains the HTTP response code and headers from the
11288	// server.
11289	googleapi.ServerResponse `json:"-"`
11290
11291	// ForceSendFields is a list of field names (e.g. "Carriers") to
11292	// unconditionally include in API requests. By default, fields with
11293	// empty or default values are omitted from API requests. However, any
11294	// non-pointer, non-interface field appearing in ForceSendFields will be
11295	// sent to the server regardless of whether the field is empty or not.
11296	// This may be used to include empty fields in Patch requests.
11297	ForceSendFields []string `json:"-"`
11298
11299	// NullFields is a list of field names (e.g. "Carriers") to include in
11300	// API requests with the JSON null value. By default, fields with empty
11301	// values are omitted from API requests. However, any field with an
11302	// empty value appearing in NullFields will be sent to the server as
11303	// null. It is an error if a field in this list has a non-empty value.
11304	// This may be used to include null fields in Patch requests.
11305	NullFields []string `json:"-"`
11306}
11307
11308func (s *ShippingsettingsGetSupportedCarriersResponse) MarshalJSON() ([]byte, error) {
11309	type NoMethod ShippingsettingsGetSupportedCarriersResponse
11310	raw := NoMethod(*s)
11311	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11312}
11313
11314type ShippingsettingsGetSupportedHolidaysResponse struct {
11315	// Holidays: A list of holidays applicable for delivery guarantees. May
11316	// be empty.
11317	Holidays []*HolidaysHoliday `json:"holidays,omitempty"`
11318
11319	// Kind: Identifies what kind of resource this is. Value: the fixed
11320	// string "content#shippingsettingsGetSupportedHolidaysResponse".
11321	Kind string `json:"kind,omitempty"`
11322
11323	// ServerResponse contains the HTTP response code and headers from the
11324	// server.
11325	googleapi.ServerResponse `json:"-"`
11326
11327	// ForceSendFields is a list of field names (e.g. "Holidays") to
11328	// unconditionally include in API requests. By default, fields with
11329	// empty or default values are omitted from API requests. However, any
11330	// non-pointer, non-interface field appearing in ForceSendFields will be
11331	// sent to the server regardless of whether the field is empty or not.
11332	// This may be used to include empty fields in Patch requests.
11333	ForceSendFields []string `json:"-"`
11334
11335	// NullFields is a list of field names (e.g. "Holidays") to include in
11336	// API requests with the JSON null value. By default, fields with empty
11337	// values are omitted from API requests. However, any field with an
11338	// empty value appearing in NullFields will be sent to the server as
11339	// null. It is an error if a field in this list has a non-empty value.
11340	// This may be used to include null fields in Patch requests.
11341	NullFields []string `json:"-"`
11342}
11343
11344func (s *ShippingsettingsGetSupportedHolidaysResponse) MarshalJSON() ([]byte, error) {
11345	type NoMethod ShippingsettingsGetSupportedHolidaysResponse
11346	raw := NoMethod(*s)
11347	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11348}
11349
11350type ShippingsettingsGetSupportedPickupServicesResponse struct {
11351	// Kind: Identifies what kind of resource this is. Value: the fixed
11352	// string "content#shippingsettingsGetSupportedPickupServicesResponse".
11353	Kind string `json:"kind,omitempty"`
11354
11355	// PickupServices: A list of supported pickup services. May be empty.
11356	PickupServices []*PickupServicesPickupService `json:"pickupServices,omitempty"`
11357
11358	// ServerResponse contains the HTTP response code and headers from the
11359	// server.
11360	googleapi.ServerResponse `json:"-"`
11361
11362	// ForceSendFields is a list of field names (e.g. "Kind") to
11363	// unconditionally include in API requests. By default, fields with
11364	// empty or default values are omitted from API requests. However, any
11365	// non-pointer, non-interface field appearing in ForceSendFields will be
11366	// sent to the server regardless of whether the field is empty or not.
11367	// This may be used to include empty fields in Patch requests.
11368	ForceSendFields []string `json:"-"`
11369
11370	// NullFields is a list of field names (e.g. "Kind") to include in API
11371	// requests with the JSON null value. By default, fields with empty
11372	// values are omitted from API requests. However, any field with an
11373	// empty value appearing in NullFields will be sent to the server as
11374	// null. It is an error if a field in this list has a non-empty value.
11375	// This may be used to include null fields in Patch requests.
11376	NullFields []string `json:"-"`
11377}
11378
11379func (s *ShippingsettingsGetSupportedPickupServicesResponse) MarshalJSON() ([]byte, error) {
11380	type NoMethod ShippingsettingsGetSupportedPickupServicesResponse
11381	raw := NoMethod(*s)
11382	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11383}
11384
11385type ShippingsettingsListResponse struct {
11386	// Kind: Identifies what kind of resource this is. Value: the fixed
11387	// string "content#shippingsettingsListResponse".
11388	Kind string `json:"kind,omitempty"`
11389
11390	// NextPageToken: The token for the retrieval of the next page of
11391	// shipping settings.
11392	NextPageToken string `json:"nextPageToken,omitempty"`
11393
11394	Resources []*ShippingSettings `json:"resources,omitempty"`
11395
11396	// ServerResponse contains the HTTP response code and headers from the
11397	// server.
11398	googleapi.ServerResponse `json:"-"`
11399
11400	// ForceSendFields is a list of field names (e.g. "Kind") to
11401	// unconditionally include in API requests. By default, fields with
11402	// empty or default values are omitted from API requests. However, any
11403	// non-pointer, non-interface field appearing in ForceSendFields will be
11404	// sent to the server regardless of whether the field is empty or not.
11405	// This may be used to include empty fields in Patch requests.
11406	ForceSendFields []string `json:"-"`
11407
11408	// NullFields is a list of field names (e.g. "Kind") to include in API
11409	// requests with the JSON null value. By default, fields with empty
11410	// values are omitted from API requests. However, any field with an
11411	// empty value appearing in NullFields will be sent to the server as
11412	// null. It is an error if a field in this list has a non-empty value.
11413	// This may be used to include null fields in Patch requests.
11414	NullFields []string `json:"-"`
11415}
11416
11417func (s *ShippingsettingsListResponse) MarshalJSON() ([]byte, error) {
11418	type NoMethod ShippingsettingsListResponse
11419	raw := NoMethod(*s)
11420	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11421}
11422
11423type Table struct {
11424	// ColumnHeaders: Headers of the table's columns. Optional: if not set
11425	// then the table has only one dimension.
11426	ColumnHeaders *Headers `json:"columnHeaders,omitempty"`
11427
11428	// Name: Name of the table. Required for subtables, ignored for the main
11429	// table.
11430	Name string `json:"name,omitempty"`
11431
11432	// RowHeaders: Headers of the table's rows. Required.
11433	RowHeaders *Headers `json:"rowHeaders,omitempty"`
11434
11435	// Rows: The list of rows that constitute the table. Must have the same
11436	// length as `rowHeaders`. Required.
11437	Rows []*Row `json:"rows,omitempty"`
11438
11439	// ForceSendFields is a list of field names (e.g. "ColumnHeaders") to
11440	// unconditionally include in API requests. By default, fields with
11441	// empty or default values are omitted from API requests. However, any
11442	// non-pointer, non-interface field appearing in ForceSendFields will be
11443	// sent to the server regardless of whether the field is empty or not.
11444	// This may be used to include empty fields in Patch requests.
11445	ForceSendFields []string `json:"-"`
11446
11447	// NullFields is a list of field names (e.g. "ColumnHeaders") to include
11448	// in API requests with the JSON null value. By default, fields with
11449	// empty values are omitted from API requests. However, any field with
11450	// an empty value appearing in NullFields will be sent to the server as
11451	// null. It is an error if a field in this list has a non-empty value.
11452	// This may be used to include null fields in Patch requests.
11453	NullFields []string `json:"-"`
11454}
11455
11456func (s *Table) MarshalJSON() ([]byte, error) {
11457	type NoMethod Table
11458	raw := NoMethod(*s)
11459	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11460}
11461
11462type TestOrder struct {
11463	// Customer: Required. The details of the customer who placed the order.
11464	Customer *TestOrderCustomer `json:"customer,omitempty"`
11465
11466	// EnableOrderinvoices: Whether the orderinvoices service should support
11467	// this order.
11468	EnableOrderinvoices bool `json:"enableOrderinvoices,omitempty"`
11469
11470	// Kind: Identifies what kind of resource this is. Value: the fixed
11471	// string "content#testOrder"
11472	Kind string `json:"kind,omitempty"`
11473
11474	// LineItems: Required. Line items that are ordered. At least one line
11475	// item must be provided.
11476	LineItems []*TestOrderLineItem `json:"lineItems,omitempty"`
11477
11478	// NotificationMode: Restricted. Do not use.
11479	NotificationMode string `json:"notificationMode,omitempty"`
11480
11481	// PaymentMethod: The details of the payment method.
11482	PaymentMethod *TestOrderPaymentMethod `json:"paymentMethod,omitempty"`
11483
11484	// PredefinedDeliveryAddress: Required. Identifier of one of the
11485	// predefined delivery addresses for the delivery. Acceptable values
11486	// are: - "dwight" - "jim" - "pam"
11487	PredefinedDeliveryAddress string `json:"predefinedDeliveryAddress,omitempty"`
11488
11489	// PredefinedPickupDetails: Identifier of one of the predefined pickup
11490	// details. Required for orders containing line items with shipping type
11491	// `pickup`. Acceptable values are: - "dwight" - "jim" - "pam"
11492	PredefinedPickupDetails string `json:"predefinedPickupDetails,omitempty"`
11493
11494	// Promotions: Deprecated. Ignored if provided.
11495	Promotions []*OrderLegacyPromotion `json:"promotions,omitempty"`
11496
11497	// ShippingCost: Required. The price of shipping for all items. Shipping
11498	// tax is automatically calculated for orders where marketplace
11499	// facilitator tax laws are applicable. Otherwise, tax settings from
11500	// Merchant Center are applied. Note that shipping is not taxed in
11501	// certain states.
11502	ShippingCost *Price `json:"shippingCost,omitempty"`
11503
11504	// ShippingCostTax: Deprecated. Ignored if provided.
11505	ShippingCostTax *Price `json:"shippingCostTax,omitempty"`
11506
11507	// ShippingOption: Required. The requested shipping option. Acceptable
11508	// values are: - "economy" - "expedited" - "oneDay" - "sameDay"
11509	// - "standard" - "twoDay"
11510	ShippingOption string `json:"shippingOption,omitempty"`
11511
11512	// ForceSendFields is a list of field names (e.g. "Customer") to
11513	// unconditionally include in API requests. By default, fields with
11514	// empty or default values are omitted from API requests. However, any
11515	// non-pointer, non-interface field appearing in ForceSendFields will be
11516	// sent to the server regardless of whether the field is empty or not.
11517	// This may be used to include empty fields in Patch requests.
11518	ForceSendFields []string `json:"-"`
11519
11520	// NullFields is a list of field names (e.g. "Customer") to include in
11521	// API requests with the JSON null value. By default, fields with empty
11522	// values are omitted from API requests. However, any field with an
11523	// empty value appearing in NullFields will be sent to the server as
11524	// null. It is an error if a field in this list has a non-empty value.
11525	// This may be used to include null fields in Patch requests.
11526	NullFields []string `json:"-"`
11527}
11528
11529func (s *TestOrder) MarshalJSON() ([]byte, error) {
11530	type NoMethod TestOrder
11531	raw := NoMethod(*s)
11532	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11533}
11534
11535type TestOrderCustomer struct {
11536	// Email: Required. Email address of the customer. Acceptable values
11537	// are: - "pog.dwight.schrute@gmail.com" -
11538	// "pog.jim.halpert@gmail.com" - "penpog.pam.beesly@gmail.comding"
11539	Email string `json:"email,omitempty"`
11540
11541	// ExplicitMarketingPreference: Deprecated. Please use
11542	// marketingRightsInfo instead.
11543	ExplicitMarketingPreference bool `json:"explicitMarketingPreference,omitempty"`
11544
11545	// FullName: Full name of the customer.
11546	FullName string `json:"fullName,omitempty"`
11547
11548	// MarketingRightsInfo: Customer's marketing preferences.
11549	MarketingRightsInfo *TestOrderCustomerMarketingRightsInfo `json:"marketingRightsInfo,omitempty"`
11550
11551	// ForceSendFields is a list of field names (e.g. "Email") to
11552	// unconditionally include in API requests. By default, fields with
11553	// empty or default values are omitted from API requests. However, any
11554	// non-pointer, non-interface field appearing in ForceSendFields will be
11555	// sent to the server regardless of whether the field is empty or not.
11556	// This may be used to include empty fields in Patch requests.
11557	ForceSendFields []string `json:"-"`
11558
11559	// NullFields is a list of field names (e.g. "Email") to include in API
11560	// requests with the JSON null value. By default, fields with empty
11561	// values are omitted from API requests. However, any field with an
11562	// empty value appearing in NullFields will be sent to the server as
11563	// null. It is an error if a field in this list has a non-empty value.
11564	// This may be used to include null fields in Patch requests.
11565	NullFields []string `json:"-"`
11566}
11567
11568func (s *TestOrderCustomer) MarshalJSON() ([]byte, error) {
11569	type NoMethod TestOrderCustomer
11570	raw := NoMethod(*s)
11571	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11572}
11573
11574type TestOrderCustomerMarketingRightsInfo struct {
11575	// ExplicitMarketingPreference: Last know user use selection regards
11576	// marketing preferences. In certain cases selection might not be known,
11577	// so this field would be empty. Acceptable values are: - "denied" -
11578	// "granted"
11579	ExplicitMarketingPreference string `json:"explicitMarketingPreference,omitempty"`
11580
11581	// LastUpdatedTimestamp: Timestamp when last time marketing preference
11582	// was updated. Could be empty, if user wasn't offered a selection yet.
11583	LastUpdatedTimestamp string `json:"lastUpdatedTimestamp,omitempty"`
11584
11585	// ForceSendFields is a list of field names (e.g.
11586	// "ExplicitMarketingPreference") to unconditionally include in API
11587	// requests. By default, fields with empty or default values are omitted
11588	// from API requests. However, any non-pointer, non-interface field
11589	// appearing in ForceSendFields will be sent to the server regardless of
11590	// whether the field is empty or not. This may be used to include empty
11591	// fields in Patch requests.
11592	ForceSendFields []string `json:"-"`
11593
11594	// NullFields is a list of field names (e.g.
11595	// "ExplicitMarketingPreference") to include in API requests with the
11596	// JSON null value. By default, fields with empty values are omitted
11597	// from API requests. However, any field with an empty value appearing
11598	// in NullFields will be sent to the server as null. It is an error if a
11599	// field in this list has a non-empty value. This may be used to include
11600	// null fields in Patch requests.
11601	NullFields []string `json:"-"`
11602}
11603
11604func (s *TestOrderCustomerMarketingRightsInfo) MarshalJSON() ([]byte, error) {
11605	type NoMethod TestOrderCustomerMarketingRightsInfo
11606	raw := NoMethod(*s)
11607	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11608}
11609
11610type TestOrderLineItem struct {
11611	// Product: Required. Product data from the time of the order placement.
11612	Product *TestOrderLineItemProduct `json:"product,omitempty"`
11613
11614	// QuantityOrdered: Required. Number of items ordered.
11615	QuantityOrdered int64 `json:"quantityOrdered,omitempty"`
11616
11617	// ReturnInfo: Required. Details of the return policy for the line item.
11618	ReturnInfo *OrderLineItemReturnInfo `json:"returnInfo,omitempty"`
11619
11620	// ShippingDetails: Required. Details of the requested shipping for the
11621	// line item.
11622	ShippingDetails *OrderLineItemShippingDetails `json:"shippingDetails,omitempty"`
11623
11624	// UnitTax: Deprecated. Ignored if provided.
11625	UnitTax *Price `json:"unitTax,omitempty"`
11626
11627	// ForceSendFields is a list of field names (e.g. "Product") to
11628	// unconditionally include in API requests. By default, fields with
11629	// empty or default values are omitted from API requests. However, any
11630	// non-pointer, non-interface field appearing in ForceSendFields will be
11631	// sent to the server regardless of whether the field is empty or not.
11632	// This may be used to include empty fields in Patch requests.
11633	ForceSendFields []string `json:"-"`
11634
11635	// NullFields is a list of field names (e.g. "Product") to include in
11636	// API requests with the JSON null value. By default, fields with empty
11637	// values are omitted from API requests. However, any field with an
11638	// empty value appearing in NullFields will be sent to the server as
11639	// null. It is an error if a field in this list has a non-empty value.
11640	// This may be used to include null fields in Patch requests.
11641	NullFields []string `json:"-"`
11642}
11643
11644func (s *TestOrderLineItem) MarshalJSON() ([]byte, error) {
11645	type NoMethod TestOrderLineItem
11646	raw := NoMethod(*s)
11647	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11648}
11649
11650type TestOrderLineItemProduct struct {
11651	// Brand: Required. Brand of the item.
11652	Brand string `json:"brand,omitempty"`
11653
11654	// Channel: Deprecated. Acceptable values are: - "online"
11655	Channel string `json:"channel,omitempty"`
11656
11657	// Condition: Required. Condition or state of the item. Acceptable
11658	// values are: - "new"
11659	Condition string `json:"condition,omitempty"`
11660
11661	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
11662	// the item. Acceptable values are: - "en" - "fr"
11663	ContentLanguage string `json:"contentLanguage,omitempty"`
11664
11665	// Fees: Fees for the item. Optional.
11666	Fees []*OrderLineItemProductFee `json:"fees,omitempty"`
11667
11668	// Gtin: Global Trade Item Number (GTIN) of the item. Optional.
11669	Gtin string `json:"gtin,omitempty"`
11670
11671	// ImageLink: Required. URL of an image of the item.
11672	ImageLink string `json:"imageLink,omitempty"`
11673
11674	// ItemGroupId: Shared identifier for all variants of the same product.
11675	// Optional.
11676	ItemGroupId string `json:"itemGroupId,omitempty"`
11677
11678	// Mpn: Manufacturer Part Number (MPN) of the item. Optional.
11679	Mpn string `json:"mpn,omitempty"`
11680
11681	// OfferId: Required. An identifier of the item.
11682	OfferId string `json:"offerId,omitempty"`
11683
11684	// Price: Required. The price for the product. Tax is automatically
11685	// calculated for orders where marketplace facilitator tax laws are
11686	// applicable. Otherwise, tax settings from Merchant Center are applied.
11687	Price *Price `json:"price,omitempty"`
11688
11689	// TargetCountry: Required. The CLDR territory // code of the target
11690	// country of the product.
11691	TargetCountry string `json:"targetCountry,omitempty"`
11692
11693	// Title: Required. The title of the product.
11694	Title string `json:"title,omitempty"`
11695
11696	// VariantAttributes: Variant attributes for the item. Optional.
11697	VariantAttributes []*OrderLineItemProductVariantAttribute `json:"variantAttributes,omitempty"`
11698
11699	// ForceSendFields is a list of field names (e.g. "Brand") to
11700	// unconditionally include in API requests. By default, fields with
11701	// empty or default values are omitted from API requests. However, any
11702	// non-pointer, non-interface field appearing in ForceSendFields will be
11703	// sent to the server regardless of whether the field is empty or not.
11704	// This may be used to include empty fields in Patch requests.
11705	ForceSendFields []string `json:"-"`
11706
11707	// NullFields is a list of field names (e.g. "Brand") to include in API
11708	// requests with the JSON null value. By default, fields with empty
11709	// values are omitted from API requests. However, any field with an
11710	// empty value appearing in NullFields will be sent to the server as
11711	// null. It is an error if a field in this list has a non-empty value.
11712	// This may be used to include null fields in Patch requests.
11713	NullFields []string `json:"-"`
11714}
11715
11716func (s *TestOrderLineItemProduct) MarshalJSON() ([]byte, error) {
11717	type NoMethod TestOrderLineItemProduct
11718	raw := NoMethod(*s)
11719	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11720}
11721
11722type TestOrderPaymentMethod struct {
11723	// ExpirationMonth: The card expiration month (January = 1, February = 2
11724	// etc.).
11725	ExpirationMonth int64 `json:"expirationMonth,omitempty"`
11726
11727	// ExpirationYear: The card expiration year (4-digit, e.g. 2015).
11728	ExpirationYear int64 `json:"expirationYear,omitempty"`
11729
11730	// LastFourDigits: The last four digits of the card number.
11731	LastFourDigits string `json:"lastFourDigits,omitempty"`
11732
11733	// PredefinedBillingAddress: The billing address. Acceptable values are:
11734	// - "dwight" - "jim" - "pam"
11735	PredefinedBillingAddress string `json:"predefinedBillingAddress,omitempty"`
11736
11737	// Type: The type of instrument. Note that real orders might have
11738	// different values than the four values accepted by `createTestOrder`.
11739	// Acceptable values are: - "AMEX" - "DISCOVER" - "MASTERCARD" -
11740	// "VISA"
11741	Type string `json:"type,omitempty"`
11742
11743	// ForceSendFields is a list of field names (e.g. "ExpirationMonth") to
11744	// unconditionally include in API requests. By default, fields with
11745	// empty or default values are omitted from API requests. However, any
11746	// non-pointer, non-interface field appearing in ForceSendFields will be
11747	// sent to the server regardless of whether the field is empty or not.
11748	// This may be used to include empty fields in Patch requests.
11749	ForceSendFields []string `json:"-"`
11750
11751	// NullFields is a list of field names (e.g. "ExpirationMonth") to
11752	// include in API requests with the JSON null value. By default, fields
11753	// with empty values are omitted from API requests. However, any field
11754	// with an empty value appearing in NullFields will be sent to the
11755	// server as null. It is an error if a field in this list has a
11756	// non-empty value. This may be used to include null fields in Patch
11757	// requests.
11758	NullFields []string `json:"-"`
11759}
11760
11761func (s *TestOrderPaymentMethod) MarshalJSON() ([]byte, error) {
11762	type NoMethod TestOrderPaymentMethod
11763	raw := NoMethod(*s)
11764	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11765}
11766
11767type TransitTable struct {
11768	// PostalCodeGroupNames: A list of postal group names. The last value
11769	// can be "all other locations". Example: `["zone 1", "zone 2", "all
11770	// other locations"]`. The referred postal code groups must match the
11771	// delivery country of the service.
11772	PostalCodeGroupNames []string `json:"postalCodeGroupNames,omitempty"`
11773
11774	Rows []*TransitTableTransitTimeRow `json:"rows,omitempty"`
11775
11776	// TransitTimeLabels: A list of transit time labels. The last value can
11777	// be "all other labels". Example: `["food", "electronics", "all other
11778	// labels"]`.
11779	TransitTimeLabels []string `json:"transitTimeLabels,omitempty"`
11780
11781	// ForceSendFields is a list of field names (e.g.
11782	// "PostalCodeGroupNames") to unconditionally include in API requests.
11783	// By default, fields with empty or default values are omitted from API
11784	// requests. However, any non-pointer, non-interface field appearing in
11785	// ForceSendFields will be sent to the server regardless of whether the
11786	// field is empty or not. This may be used to include empty fields in
11787	// Patch requests.
11788	ForceSendFields []string `json:"-"`
11789
11790	// NullFields is a list of field names (e.g. "PostalCodeGroupNames") to
11791	// include in API requests with the JSON null value. By default, fields
11792	// with empty values are omitted from API requests. However, any field
11793	// with an empty value appearing in NullFields will be sent to the
11794	// server as null. It is an error if a field in this list has a
11795	// non-empty value. This may be used to include null fields in Patch
11796	// requests.
11797	NullFields []string `json:"-"`
11798}
11799
11800func (s *TransitTable) MarshalJSON() ([]byte, error) {
11801	type NoMethod TransitTable
11802	raw := NoMethod(*s)
11803	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11804}
11805
11806type TransitTableTransitTimeRow struct {
11807	Values []*TransitTableTransitTimeRowTransitTimeValue `json:"values,omitempty"`
11808
11809	// ForceSendFields is a list of field names (e.g. "Values") to
11810	// unconditionally include in API requests. By default, fields with
11811	// empty or default values are omitted from API requests. However, any
11812	// non-pointer, non-interface field appearing in ForceSendFields will be
11813	// sent to the server regardless of whether the field is empty or not.
11814	// This may be used to include empty fields in Patch requests.
11815	ForceSendFields []string `json:"-"`
11816
11817	// NullFields is a list of field names (e.g. "Values") to include in API
11818	// requests with the JSON null value. By default, fields with empty
11819	// values are omitted from API requests. However, any field with an
11820	// empty value appearing in NullFields will be sent to the server as
11821	// null. It is an error if a field in this list has a non-empty value.
11822	// This may be used to include null fields in Patch requests.
11823	NullFields []string `json:"-"`
11824}
11825
11826func (s *TransitTableTransitTimeRow) MarshalJSON() ([]byte, error) {
11827	type NoMethod TransitTableTransitTimeRow
11828	raw := NoMethod(*s)
11829	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11830}
11831
11832type TransitTableTransitTimeRowTransitTimeValue struct {
11833	// MaxTransitTimeInDays: Must be greater than or equal to
11834	// `minTransitTimeInDays`.
11835	MaxTransitTimeInDays int64 `json:"maxTransitTimeInDays,omitempty"`
11836
11837	// MinTransitTimeInDays: Transit time range (min-max) in business days.
11838	// 0 means same day delivery, 1 means next day delivery.
11839	MinTransitTimeInDays int64 `json:"minTransitTimeInDays,omitempty"`
11840
11841	// ForceSendFields is a list of field names (e.g.
11842	// "MaxTransitTimeInDays") to unconditionally include in API requests.
11843	// By default, fields with empty or default values are omitted from API
11844	// requests. However, any non-pointer, non-interface field appearing in
11845	// ForceSendFields will be sent to the server regardless of whether the
11846	// field is empty or not. This may be used to include empty fields in
11847	// Patch requests.
11848	ForceSendFields []string `json:"-"`
11849
11850	// NullFields is a list of field names (e.g. "MaxTransitTimeInDays") to
11851	// include in API requests with the JSON null value. By default, fields
11852	// with empty values are omitted from API requests. However, any field
11853	// with an empty value appearing in NullFields will be sent to the
11854	// server as null. It is an error if a field in this list has a
11855	// non-empty value. This may be used to include null fields in Patch
11856	// requests.
11857	NullFields []string `json:"-"`
11858}
11859
11860func (s *TransitTableTransitTimeRowTransitTimeValue) MarshalJSON() ([]byte, error) {
11861	type NoMethod TransitTableTransitTimeRowTransitTimeValue
11862	raw := NoMethod(*s)
11863	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11864}
11865
11866type UnitInvoice struct {
11867	// AdditionalCharges: Additional charges for a unit, e.g. shipping
11868	// costs.
11869	AdditionalCharges []*UnitInvoiceAdditionalCharge `json:"additionalCharges,omitempty"`
11870
11871	// Promotions: Deprecated.
11872	Promotions []*Promotion `json:"promotions,omitempty"`
11873
11874	// UnitPricePretax: [required] Price of the unit, before applying taxes.
11875	UnitPricePretax *Price `json:"unitPricePretax,omitempty"`
11876
11877	// UnitPriceTaxes: Tax amounts to apply to the unit price.
11878	UnitPriceTaxes []*UnitInvoiceTaxLine `json:"unitPriceTaxes,omitempty"`
11879
11880	// ForceSendFields is a list of field names (e.g. "AdditionalCharges")
11881	// to unconditionally include in API requests. By default, fields with
11882	// empty or default values are omitted from API requests. However, any
11883	// non-pointer, non-interface field appearing in ForceSendFields will be
11884	// sent to the server regardless of whether the field is empty or not.
11885	// This may be used to include empty fields in Patch requests.
11886	ForceSendFields []string `json:"-"`
11887
11888	// NullFields is a list of field names (e.g. "AdditionalCharges") to
11889	// include in API requests with the JSON null value. By default, fields
11890	// with empty values are omitted from API requests. However, any field
11891	// with an empty value appearing in NullFields will be sent to the
11892	// server as null. It is an error if a field in this list has a
11893	// non-empty value. This may be used to include null fields in Patch
11894	// requests.
11895	NullFields []string `json:"-"`
11896}
11897
11898func (s *UnitInvoice) MarshalJSON() ([]byte, error) {
11899	type NoMethod UnitInvoice
11900	raw := NoMethod(*s)
11901	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11902}
11903
11904type UnitInvoiceAdditionalCharge struct {
11905	// AdditionalChargeAmount: [required] Amount of the additional charge.
11906	AdditionalChargeAmount *Amount `json:"additionalChargeAmount,omitempty"`
11907
11908	// AdditionalChargePromotions: Deprecated.
11909	AdditionalChargePromotions []*Promotion `json:"additionalChargePromotions,omitempty"`
11910
11911	// Type: [required] Type of the additional charge. Acceptable values
11912	// are: - "shipping"
11913	Type string `json:"type,omitempty"`
11914
11915	// ForceSendFields is a list of field names (e.g.
11916	// "AdditionalChargeAmount") to unconditionally include in API requests.
11917	// By default, fields with empty or default values are omitted from API
11918	// requests. However, any non-pointer, non-interface field appearing in
11919	// ForceSendFields will be sent to the server regardless of whether the
11920	// field is empty or not. This may be used to include empty fields in
11921	// Patch requests.
11922	ForceSendFields []string `json:"-"`
11923
11924	// NullFields is a list of field names (e.g. "AdditionalChargeAmount")
11925	// to include in API requests with the JSON null value. By default,
11926	// fields with empty values are omitted from API requests. However, any
11927	// field with an empty value appearing in NullFields will be sent to the
11928	// server as null. It is an error if a field in this list has a
11929	// non-empty value. This may be used to include null fields in Patch
11930	// requests.
11931	NullFields []string `json:"-"`
11932}
11933
11934func (s *UnitInvoiceAdditionalCharge) MarshalJSON() ([]byte, error) {
11935	type NoMethod UnitInvoiceAdditionalCharge
11936	raw := NoMethod(*s)
11937	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11938}
11939
11940type UnitInvoiceTaxLine struct {
11941	// TaxAmount: [required] Tax amount for the tax type.
11942	TaxAmount *Price `json:"taxAmount,omitempty"`
11943
11944	// TaxName: Optional name of the tax type. This should only be provided
11945	// if `taxType` is `otherFeeTax`.
11946	TaxName string `json:"taxName,omitempty"`
11947
11948	// TaxType: [required] Type of the tax. Acceptable values are: -
11949	// "otherFee" - "otherFeeTax" - "sales"
11950	TaxType string `json:"taxType,omitempty"`
11951
11952	// ForceSendFields is a list of field names (e.g. "TaxAmount") to
11953	// unconditionally include in API requests. By default, fields with
11954	// empty or default values are omitted from API requests. However, any
11955	// non-pointer, non-interface field appearing in ForceSendFields will be
11956	// sent to the server regardless of whether the field is empty or not.
11957	// This may be used to include empty fields in Patch requests.
11958	ForceSendFields []string `json:"-"`
11959
11960	// NullFields is a list of field names (e.g. "TaxAmount") to include in
11961	// API requests with the JSON null value. By default, fields with empty
11962	// values are omitted from API requests. However, any field with an
11963	// empty value appearing in NullFields will be sent to the server as
11964	// null. It is an error if a field in this list has a non-empty value.
11965	// This may be used to include null fields in Patch requests.
11966	NullFields []string `json:"-"`
11967}
11968
11969func (s *UnitInvoiceTaxLine) MarshalJSON() ([]byte, error) {
11970	type NoMethod UnitInvoiceTaxLine
11971	raw := NoMethod(*s)
11972	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11973}
11974
11975// Value: The single value of a rate group or the value of a rate group
11976// table's cell. Exactly one of `noShipping`, `flatRate`,
11977// `pricePercentage`, `carrierRateName`, `subtableName` must be set.
11978type Value struct {
11979	// CarrierRateName: The name of a carrier rate referring to a carrier
11980	// rate defined in the same rate group. Can only be set if all other
11981	// fields are not set.
11982	CarrierRateName string `json:"carrierRateName,omitempty"`
11983
11984	// FlatRate: A flat rate. Can only be set if all other fields are not
11985	// set.
11986	FlatRate *Price `json:"flatRate,omitempty"`
11987
11988	// NoShipping: If true, then the product can't ship. Must be true when
11989	// set, can only be set if all other fields are not set.
11990	NoShipping bool `json:"noShipping,omitempty"`
11991
11992	// PricePercentage: A percentage of the price represented as a number in
11993	// decimal notation (e.g., "5.4"). Can only be set if all other fields
11994	// are not set.
11995	PricePercentage string `json:"pricePercentage,omitempty"`
11996
11997	// SubtableName: The name of a subtable. Can only be set in table cells
11998	// (i.e., not for single values), and only if all other fields are not
11999	// set.
12000	SubtableName string `json:"subtableName,omitempty"`
12001
12002	// ForceSendFields is a list of field names (e.g. "CarrierRateName") to
12003	// unconditionally include in API requests. By default, fields with
12004	// empty or default values are omitted from API requests. However, any
12005	// non-pointer, non-interface field appearing in ForceSendFields will be
12006	// sent to the server regardless of whether the field is empty or not.
12007	// This may be used to include empty fields in Patch requests.
12008	ForceSendFields []string `json:"-"`
12009
12010	// NullFields is a list of field names (e.g. "CarrierRateName") to
12011	// include in API requests with the JSON null value. By default, fields
12012	// with empty values are omitted from API requests. However, any field
12013	// with an empty value appearing in NullFields will be sent to the
12014	// server as null. It is an error if a field in this list has a
12015	// non-empty value. This may be used to include null fields in Patch
12016	// requests.
12017	NullFields []string `json:"-"`
12018}
12019
12020func (s *Value) MarshalJSON() ([]byte, error) {
12021	type NoMethod Value
12022	raw := NoMethod(*s)
12023	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12024}
12025
12026// Warehouse: A fulfillment warehouse, which stores and handles
12027// inventory.
12028type Warehouse struct {
12029	// BusinessDayConfig: Business days of the warehouse. If not set, will
12030	// be Monday to Friday by default.
12031	BusinessDayConfig *BusinessDayConfig `json:"businessDayConfig,omitempty"`
12032
12033	// CutoffTime: Required. The latest time of day that an order can be
12034	// accepted and begin processing. Later orders will be processed in the
12035	// next day. The time is based on the warehouse postal code.
12036	CutoffTime *WarehouseCutoffTime `json:"cutoffTime,omitempty"`
12037
12038	// HandlingDays: Required. The number of days it takes for this
12039	// warehouse to pack up and ship an item. This is on the warehouse
12040	// level, but can be overridden on the offer level based on the
12041	// attributes of an item.
12042	HandlingDays int64 `json:"handlingDays,omitempty,string"`
12043
12044	// Name: Required. The name of the warehouse. Must be unique within
12045	// account.
12046	Name string `json:"name,omitempty"`
12047
12048	// ShippingAddress: Required. Shipping address of the warehouse.
12049	ShippingAddress *Address `json:"shippingAddress,omitempty"`
12050
12051	// ForceSendFields is a list of field names (e.g. "BusinessDayConfig")
12052	// to unconditionally include in API requests. By default, fields with
12053	// empty or default values are omitted from API requests. However, any
12054	// non-pointer, non-interface field appearing in ForceSendFields will be
12055	// sent to the server regardless of whether the field is empty or not.
12056	// This may be used to include empty fields in Patch requests.
12057	ForceSendFields []string `json:"-"`
12058
12059	// NullFields is a list of field names (e.g. "BusinessDayConfig") to
12060	// include in API requests with the JSON null value. By default, fields
12061	// with empty values are omitted from API requests. However, any field
12062	// with an empty value appearing in NullFields will be sent to the
12063	// server as null. It is an error if a field in this list has a
12064	// non-empty value. This may be used to include null fields in Patch
12065	// requests.
12066	NullFields []string `json:"-"`
12067}
12068
12069func (s *Warehouse) MarshalJSON() ([]byte, error) {
12070	type NoMethod Warehouse
12071	raw := NoMethod(*s)
12072	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12073}
12074
12075type WarehouseBasedDeliveryTime struct {
12076	// Carrier: Required. Carrier, such as "UPS" or "Fedex". The list of
12077	// supported carriers can be retrieved via the `listSupportedCarriers`
12078	// method.
12079	Carrier string `json:"carrier,omitempty"`
12080
12081	// CarrierService: Required. Carrier service, such as "ground" or "2
12082	// days". The list of supported services for a carrier can be retrieved
12083	// via the `listSupportedCarriers` method. The name of the service must
12084	// be in the eddSupportedServices list.
12085	CarrierService string `json:"carrierService,omitempty"`
12086
12087	// OriginAdministrativeArea: Shipping origin's state.
12088	OriginAdministrativeArea string `json:"originAdministrativeArea,omitempty"`
12089
12090	// OriginCity: Shipping origin's city.
12091	OriginCity string `json:"originCity,omitempty"`
12092
12093	// OriginCountry: Shipping origin's country represented as a CLDR
12094	// territory code
12095	// (http://www.unicode.org/repos/cldr/tags/latest/common/main/en.xml).
12096	OriginCountry string `json:"originCountry,omitempty"`
12097
12098	// OriginPostalCode: Shipping origin.
12099	OriginPostalCode string `json:"originPostalCode,omitempty"`
12100
12101	// OriginStreetAddress: Shipping origin's street address
12102	OriginStreetAddress string `json:"originStreetAddress,omitempty"`
12103
12104	// WarehouseName: The name of the warehouse. Warehouse name need to be
12105	// matched with name. If warehouseName is set, the below fields will be
12106	// ignored. The warehouse info will be read from warehouse.
12107	WarehouseName string `json:"warehouseName,omitempty"`
12108
12109	// ForceSendFields is a list of field names (e.g. "Carrier") to
12110	// unconditionally include in API requests. By default, fields with
12111	// empty or default values are omitted from API requests. However, any
12112	// non-pointer, non-interface field appearing in ForceSendFields will be
12113	// sent to the server regardless of whether the field is empty or not.
12114	// This may be used to include empty fields in Patch requests.
12115	ForceSendFields []string `json:"-"`
12116
12117	// NullFields is a list of field names (e.g. "Carrier") to include in
12118	// API requests with the JSON null value. By default, fields with empty
12119	// values are omitted from API requests. However, any field with an
12120	// empty value appearing in NullFields will be sent to the server as
12121	// null. It is an error if a field in this list has a non-empty value.
12122	// This may be used to include null fields in Patch requests.
12123	NullFields []string `json:"-"`
12124}
12125
12126func (s *WarehouseBasedDeliveryTime) MarshalJSON() ([]byte, error) {
12127	type NoMethod WarehouseBasedDeliveryTime
12128	raw := NoMethod(*s)
12129	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12130}
12131
12132type WarehouseCutoffTime struct {
12133	// Hour: Required. Hour (24-hour clock) of the cutoff time until which
12134	// an order has to be placed to be processed in the same day by the
12135	// warehouse. Hour is based on the timezone of warehouse.
12136	Hour int64 `json:"hour,omitempty"`
12137
12138	// Minute: Required. Minute of the cutoff time until which an order has
12139	// to be placed to be processed in the same day by the warehouse. Minute
12140	// is based on the timezone of warehouse.
12141	Minute int64 `json:"minute,omitempty"`
12142
12143	// ForceSendFields is a list of field names (e.g. "Hour") to
12144	// unconditionally include in API requests. By default, fields with
12145	// empty or default values are omitted from API requests. However, any
12146	// non-pointer, non-interface field appearing in ForceSendFields will be
12147	// sent to the server regardless of whether the field is empty or not.
12148	// This may be used to include empty fields in Patch requests.
12149	ForceSendFields []string `json:"-"`
12150
12151	// NullFields is a list of field names (e.g. "Hour") to include in API
12152	// requests with the JSON null value. By default, fields with empty
12153	// values are omitted from API requests. However, any field with an
12154	// empty value appearing in NullFields will be sent to the server as
12155	// null. It is an error if a field in this list has a non-empty value.
12156	// This may be used to include null fields in Patch requests.
12157	NullFields []string `json:"-"`
12158}
12159
12160func (s *WarehouseCutoffTime) MarshalJSON() ([]byte, error) {
12161	type NoMethod WarehouseCutoffTime
12162	raw := NoMethod(*s)
12163	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12164}
12165
12166type Weight struct {
12167	// Unit: Required. The weight unit. Acceptable values are: - "kg" -
12168	// "lb"
12169	Unit string `json:"unit,omitempty"`
12170
12171	// Value: Required. The weight represented as a number. The weight can
12172	// have a maximum precision of four decimal places.
12173	Value string `json:"value,omitempty"`
12174
12175	// ForceSendFields is a list of field names (e.g. "Unit") to
12176	// unconditionally include in API requests. By default, fields with
12177	// empty or default values are omitted from API requests. However, any
12178	// non-pointer, non-interface field appearing in ForceSendFields will be
12179	// sent to the server regardless of whether the field is empty or not.
12180	// This may be used to include empty fields in Patch requests.
12181	ForceSendFields []string `json:"-"`
12182
12183	// NullFields is a list of field names (e.g. "Unit") to include in API
12184	// requests with the JSON null value. By default, fields with empty
12185	// values are omitted from API requests. However, any field with an
12186	// empty value appearing in NullFields will be sent to the server as
12187	// null. It is an error if a field in this list has a non-empty value.
12188	// This may be used to include null fields in Patch requests.
12189	NullFields []string `json:"-"`
12190}
12191
12192func (s *Weight) MarshalJSON() ([]byte, error) {
12193	type NoMethod Weight
12194	raw := NoMethod(*s)
12195	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12196}
12197
12198// method id "content.accounts.authinfo":
12199
12200type AccountsAuthinfoCall struct {
12201	s            *APIService
12202	urlParams_   gensupport.URLParams
12203	ifNoneMatch_ string
12204	ctx_         context.Context
12205	header_      http.Header
12206}
12207
12208// Authinfo: Returns information about the authenticated user.
12209func (r *AccountsService) Authinfo() *AccountsAuthinfoCall {
12210	c := &AccountsAuthinfoCall{s: r.s, urlParams_: make(gensupport.URLParams)}
12211	return c
12212}
12213
12214// Fields allows partial responses to be retrieved. See
12215// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
12216// for more information.
12217func (c *AccountsAuthinfoCall) Fields(s ...googleapi.Field) *AccountsAuthinfoCall {
12218	c.urlParams_.Set("fields", googleapi.CombineFields(s))
12219	return c
12220}
12221
12222// IfNoneMatch sets the optional parameter which makes the operation
12223// fail if the object's ETag matches the given value. This is useful for
12224// getting updates only after the object has changed since the last
12225// request. Use googleapi.IsNotModified to check whether the response
12226// error from Do is the result of In-None-Match.
12227func (c *AccountsAuthinfoCall) IfNoneMatch(entityTag string) *AccountsAuthinfoCall {
12228	c.ifNoneMatch_ = entityTag
12229	return c
12230}
12231
12232// Context sets the context to be used in this call's Do method. Any
12233// pending HTTP request will be aborted if the provided context is
12234// canceled.
12235func (c *AccountsAuthinfoCall) Context(ctx context.Context) *AccountsAuthinfoCall {
12236	c.ctx_ = ctx
12237	return c
12238}
12239
12240// Header returns an http.Header that can be modified by the caller to
12241// add HTTP headers to the request.
12242func (c *AccountsAuthinfoCall) Header() http.Header {
12243	if c.header_ == nil {
12244		c.header_ = make(http.Header)
12245	}
12246	return c.header_
12247}
12248
12249func (c *AccountsAuthinfoCall) doRequest(alt string) (*http.Response, error) {
12250	reqHeaders := make(http.Header)
12251	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
12252	for k, v := range c.header_ {
12253		reqHeaders[k] = v
12254	}
12255	reqHeaders.Set("User-Agent", c.s.userAgent())
12256	if c.ifNoneMatch_ != "" {
12257		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
12258	}
12259	var body io.Reader = nil
12260	c.urlParams_.Set("alt", alt)
12261	c.urlParams_.Set("prettyPrint", "false")
12262	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/authinfo")
12263	urls += "?" + c.urlParams_.Encode()
12264	req, err := http.NewRequest("GET", urls, body)
12265	if err != nil {
12266		return nil, err
12267	}
12268	req.Header = reqHeaders
12269	return gensupport.SendRequest(c.ctx_, c.s.client, req)
12270}
12271
12272// Do executes the "content.accounts.authinfo" call.
12273// Exactly one of *AccountsAuthInfoResponse or error will be non-nil.
12274// Any non-2xx status code is an error. Response headers are in either
12275// *AccountsAuthInfoResponse.ServerResponse.Header or (if a response was
12276// returned at all) in error.(*googleapi.Error).Header. Use
12277// googleapi.IsNotModified to check whether the returned error was
12278// because http.StatusNotModified was returned.
12279func (c *AccountsAuthinfoCall) Do(opts ...googleapi.CallOption) (*AccountsAuthInfoResponse, error) {
12280	gensupport.SetOptions(c.urlParams_, opts...)
12281	res, err := c.doRequest("json")
12282	if res != nil && res.StatusCode == http.StatusNotModified {
12283		if res.Body != nil {
12284			res.Body.Close()
12285		}
12286		return nil, &googleapi.Error{
12287			Code:   res.StatusCode,
12288			Header: res.Header,
12289		}
12290	}
12291	if err != nil {
12292		return nil, err
12293	}
12294	defer googleapi.CloseBody(res)
12295	if err := googleapi.CheckResponse(res); err != nil {
12296		return nil, err
12297	}
12298	ret := &AccountsAuthInfoResponse{
12299		ServerResponse: googleapi.ServerResponse{
12300			Header:         res.Header,
12301			HTTPStatusCode: res.StatusCode,
12302		},
12303	}
12304	target := &ret
12305	if err := gensupport.DecodeResponse(target, res); err != nil {
12306		return nil, err
12307	}
12308	return ret, nil
12309	// {
12310	//   "description": "Returns information about the authenticated user.",
12311	//   "flatPath": "accounts/authinfo",
12312	//   "httpMethod": "GET",
12313	//   "id": "content.accounts.authinfo",
12314	//   "parameterOrder": [],
12315	//   "parameters": {},
12316	//   "path": "accounts/authinfo",
12317	//   "response": {
12318	//     "$ref": "AccountsAuthInfoResponse"
12319	//   },
12320	//   "scopes": [
12321	//     "https://www.googleapis.com/auth/content"
12322	//   ]
12323	// }
12324
12325}
12326
12327// method id "content.accounts.claimwebsite":
12328
12329type AccountsClaimwebsiteCall struct {
12330	s          *APIService
12331	merchantId uint64
12332	accountId  uint64
12333	urlParams_ gensupport.URLParams
12334	ctx_       context.Context
12335	header_    http.Header
12336}
12337
12338// Claimwebsite: Claims the website of a Merchant Center sub-account.
12339//
12340// - accountId: The ID of the account whose website is claimed.
12341// - merchantId: The ID of the managing account. If this parameter is
12342//   not the same as accountId, then this account must be a multi-client
12343//   account and `accountId` must be the ID of a sub-account of this
12344//   account.
12345func (r *AccountsService) Claimwebsite(merchantId uint64, accountId uint64) *AccountsClaimwebsiteCall {
12346	c := &AccountsClaimwebsiteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
12347	c.merchantId = merchantId
12348	c.accountId = accountId
12349	return c
12350}
12351
12352// Overwrite sets the optional parameter "overwrite": Only available to
12353// selected merchants. When set to `True`, this flag removes any
12354// existing claim on the requested website by another account and
12355// replaces it with a claim from this account.
12356func (c *AccountsClaimwebsiteCall) Overwrite(overwrite bool) *AccountsClaimwebsiteCall {
12357	c.urlParams_.Set("overwrite", fmt.Sprint(overwrite))
12358	return c
12359}
12360
12361// Fields allows partial responses to be retrieved. See
12362// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
12363// for more information.
12364func (c *AccountsClaimwebsiteCall) Fields(s ...googleapi.Field) *AccountsClaimwebsiteCall {
12365	c.urlParams_.Set("fields", googleapi.CombineFields(s))
12366	return c
12367}
12368
12369// Context sets the context to be used in this call's Do method. Any
12370// pending HTTP request will be aborted if the provided context is
12371// canceled.
12372func (c *AccountsClaimwebsiteCall) Context(ctx context.Context) *AccountsClaimwebsiteCall {
12373	c.ctx_ = ctx
12374	return c
12375}
12376
12377// Header returns an http.Header that can be modified by the caller to
12378// add HTTP headers to the request.
12379func (c *AccountsClaimwebsiteCall) Header() http.Header {
12380	if c.header_ == nil {
12381		c.header_ = make(http.Header)
12382	}
12383	return c.header_
12384}
12385
12386func (c *AccountsClaimwebsiteCall) doRequest(alt string) (*http.Response, error) {
12387	reqHeaders := make(http.Header)
12388	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
12389	for k, v := range c.header_ {
12390		reqHeaders[k] = v
12391	}
12392	reqHeaders.Set("User-Agent", c.s.userAgent())
12393	var body io.Reader = nil
12394	c.urlParams_.Set("alt", alt)
12395	c.urlParams_.Set("prettyPrint", "false")
12396	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}/claimwebsite")
12397	urls += "?" + c.urlParams_.Encode()
12398	req, err := http.NewRequest("POST", urls, body)
12399	if err != nil {
12400		return nil, err
12401	}
12402	req.Header = reqHeaders
12403	googleapi.Expand(req.URL, map[string]string{
12404		"merchantId": strconv.FormatUint(c.merchantId, 10),
12405		"accountId":  strconv.FormatUint(c.accountId, 10),
12406	})
12407	return gensupport.SendRequest(c.ctx_, c.s.client, req)
12408}
12409
12410// Do executes the "content.accounts.claimwebsite" call.
12411// Exactly one of *AccountsClaimWebsiteResponse or error will be
12412// non-nil. Any non-2xx status code is an error. Response headers are in
12413// either *AccountsClaimWebsiteResponse.ServerResponse.Header or (if a
12414// response was returned at all) in error.(*googleapi.Error).Header. Use
12415// googleapi.IsNotModified to check whether the returned error was
12416// because http.StatusNotModified was returned.
12417func (c *AccountsClaimwebsiteCall) Do(opts ...googleapi.CallOption) (*AccountsClaimWebsiteResponse, error) {
12418	gensupport.SetOptions(c.urlParams_, opts...)
12419	res, err := c.doRequest("json")
12420	if res != nil && res.StatusCode == http.StatusNotModified {
12421		if res.Body != nil {
12422			res.Body.Close()
12423		}
12424		return nil, &googleapi.Error{
12425			Code:   res.StatusCode,
12426			Header: res.Header,
12427		}
12428	}
12429	if err != nil {
12430		return nil, err
12431	}
12432	defer googleapi.CloseBody(res)
12433	if err := googleapi.CheckResponse(res); err != nil {
12434		return nil, err
12435	}
12436	ret := &AccountsClaimWebsiteResponse{
12437		ServerResponse: googleapi.ServerResponse{
12438			Header:         res.Header,
12439			HTTPStatusCode: res.StatusCode,
12440		},
12441	}
12442	target := &ret
12443	if err := gensupport.DecodeResponse(target, res); err != nil {
12444		return nil, err
12445	}
12446	return ret, nil
12447	// {
12448	//   "description": "Claims the website of a Merchant Center sub-account.",
12449	//   "flatPath": "{merchantId}/accounts/{accountId}/claimwebsite",
12450	//   "httpMethod": "POST",
12451	//   "id": "content.accounts.claimwebsite",
12452	//   "parameterOrder": [
12453	//     "merchantId",
12454	//     "accountId"
12455	//   ],
12456	//   "parameters": {
12457	//     "accountId": {
12458	//       "description": "The ID of the account whose website is claimed.",
12459	//       "format": "uint64",
12460	//       "location": "path",
12461	//       "required": true,
12462	//       "type": "string"
12463	//     },
12464	//     "merchantId": {
12465	//       "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.",
12466	//       "format": "uint64",
12467	//       "location": "path",
12468	//       "required": true,
12469	//       "type": "string"
12470	//     },
12471	//     "overwrite": {
12472	//       "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.",
12473	//       "location": "query",
12474	//       "type": "boolean"
12475	//     }
12476	//   },
12477	//   "path": "{merchantId}/accounts/{accountId}/claimwebsite",
12478	//   "response": {
12479	//     "$ref": "AccountsClaimWebsiteResponse"
12480	//   },
12481	//   "scopes": [
12482	//     "https://www.googleapis.com/auth/content"
12483	//   ]
12484	// }
12485
12486}
12487
12488// method id "content.accounts.custombatch":
12489
12490type AccountsCustombatchCall struct {
12491	s                          *APIService
12492	accountscustombatchrequest *AccountsCustomBatchRequest
12493	urlParams_                 gensupport.URLParams
12494	ctx_                       context.Context
12495	header_                    http.Header
12496}
12497
12498// Custombatch: Retrieves, inserts, updates, and deletes multiple
12499// Merchant Center (sub-)accounts in a single request.
12500func (r *AccountsService) Custombatch(accountscustombatchrequest *AccountsCustomBatchRequest) *AccountsCustombatchCall {
12501	c := &AccountsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
12502	c.accountscustombatchrequest = accountscustombatchrequest
12503	return c
12504}
12505
12506// DryRun sets the optional parameter "dryRun": Flag to simulate a
12507// request like in a live environment. If set to true, dry-run mode
12508// checks the validity of the request and returns errors (if any).
12509func (c *AccountsCustombatchCall) DryRun(dryRun bool) *AccountsCustombatchCall {
12510	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
12511	return c
12512}
12513
12514// Fields allows partial responses to be retrieved. See
12515// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
12516// for more information.
12517func (c *AccountsCustombatchCall) Fields(s ...googleapi.Field) *AccountsCustombatchCall {
12518	c.urlParams_.Set("fields", googleapi.CombineFields(s))
12519	return c
12520}
12521
12522// Context sets the context to be used in this call's Do method. Any
12523// pending HTTP request will be aborted if the provided context is
12524// canceled.
12525func (c *AccountsCustombatchCall) Context(ctx context.Context) *AccountsCustombatchCall {
12526	c.ctx_ = ctx
12527	return c
12528}
12529
12530// Header returns an http.Header that can be modified by the caller to
12531// add HTTP headers to the request.
12532func (c *AccountsCustombatchCall) Header() http.Header {
12533	if c.header_ == nil {
12534		c.header_ = make(http.Header)
12535	}
12536	return c.header_
12537}
12538
12539func (c *AccountsCustombatchCall) doRequest(alt string) (*http.Response, error) {
12540	reqHeaders := make(http.Header)
12541	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
12542	for k, v := range c.header_ {
12543		reqHeaders[k] = v
12544	}
12545	reqHeaders.Set("User-Agent", c.s.userAgent())
12546	var body io.Reader = nil
12547	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountscustombatchrequest)
12548	if err != nil {
12549		return nil, err
12550	}
12551	reqHeaders.Set("Content-Type", "application/json")
12552	c.urlParams_.Set("alt", alt)
12553	c.urlParams_.Set("prettyPrint", "false")
12554	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/batch")
12555	urls += "?" + c.urlParams_.Encode()
12556	req, err := http.NewRequest("POST", urls, body)
12557	if err != nil {
12558		return nil, err
12559	}
12560	req.Header = reqHeaders
12561	return gensupport.SendRequest(c.ctx_, c.s.client, req)
12562}
12563
12564// Do executes the "content.accounts.custombatch" call.
12565// Exactly one of *AccountsCustomBatchResponse or error will be non-nil.
12566// Any non-2xx status code is an error. Response headers are in either
12567// *AccountsCustomBatchResponse.ServerResponse.Header or (if a response
12568// was returned at all) in error.(*googleapi.Error).Header. Use
12569// googleapi.IsNotModified to check whether the returned error was
12570// because http.StatusNotModified was returned.
12571func (c *AccountsCustombatchCall) Do(opts ...googleapi.CallOption) (*AccountsCustomBatchResponse, error) {
12572	gensupport.SetOptions(c.urlParams_, opts...)
12573	res, err := c.doRequest("json")
12574	if res != nil && res.StatusCode == http.StatusNotModified {
12575		if res.Body != nil {
12576			res.Body.Close()
12577		}
12578		return nil, &googleapi.Error{
12579			Code:   res.StatusCode,
12580			Header: res.Header,
12581		}
12582	}
12583	if err != nil {
12584		return nil, err
12585	}
12586	defer googleapi.CloseBody(res)
12587	if err := googleapi.CheckResponse(res); err != nil {
12588		return nil, err
12589	}
12590	ret := &AccountsCustomBatchResponse{
12591		ServerResponse: googleapi.ServerResponse{
12592			Header:         res.Header,
12593			HTTPStatusCode: res.StatusCode,
12594		},
12595	}
12596	target := &ret
12597	if err := gensupport.DecodeResponse(target, res); err != nil {
12598		return nil, err
12599	}
12600	return ret, nil
12601	// {
12602	//   "description": "Retrieves, inserts, updates, and deletes multiple Merchant Center (sub-)accounts in a single request.",
12603	//   "flatPath": "accounts/batch",
12604	//   "httpMethod": "POST",
12605	//   "id": "content.accounts.custombatch",
12606	//   "parameterOrder": [],
12607	//   "parameters": {
12608	//     "dryRun": {
12609	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
12610	//       "location": "query",
12611	//       "type": "boolean"
12612	//     }
12613	//   },
12614	//   "path": "accounts/batch",
12615	//   "request": {
12616	//     "$ref": "AccountsCustomBatchRequest"
12617	//   },
12618	//   "response": {
12619	//     "$ref": "AccountsCustomBatchResponse"
12620	//   },
12621	//   "scopes": [
12622	//     "https://www.googleapis.com/auth/content"
12623	//   ]
12624	// }
12625
12626}
12627
12628// method id "content.accounts.delete":
12629
12630type AccountsDeleteCall struct {
12631	s          *APIService
12632	merchantId uint64
12633	accountId  uint64
12634	urlParams_ gensupport.URLParams
12635	ctx_       context.Context
12636	header_    http.Header
12637}
12638
12639// Delete: Deletes a Merchant Center sub-account.
12640//
12641// - accountId: The ID of the account.
12642// - merchantId: The ID of the managing account. This must be a
12643//   multi-client account, and accountId must be the ID of a sub-account
12644//   of this account.
12645func (r *AccountsService) Delete(merchantId uint64, accountId uint64) *AccountsDeleteCall {
12646	c := &AccountsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
12647	c.merchantId = merchantId
12648	c.accountId = accountId
12649	return c
12650}
12651
12652// DryRun sets the optional parameter "dryRun": Flag to simulate a
12653// request like in a live environment. If set to true, dry-run mode
12654// checks the validity of the request and returns errors (if any).
12655func (c *AccountsDeleteCall) DryRun(dryRun bool) *AccountsDeleteCall {
12656	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
12657	return c
12658}
12659
12660// Force sets the optional parameter "force": Flag to delete
12661// sub-accounts with products. The default value is false.
12662func (c *AccountsDeleteCall) Force(force bool) *AccountsDeleteCall {
12663	c.urlParams_.Set("force", fmt.Sprint(force))
12664	return c
12665}
12666
12667// Fields allows partial responses to be retrieved. See
12668// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
12669// for more information.
12670func (c *AccountsDeleteCall) Fields(s ...googleapi.Field) *AccountsDeleteCall {
12671	c.urlParams_.Set("fields", googleapi.CombineFields(s))
12672	return c
12673}
12674
12675// Context sets the context to be used in this call's Do method. Any
12676// pending HTTP request will be aborted if the provided context is
12677// canceled.
12678func (c *AccountsDeleteCall) Context(ctx context.Context) *AccountsDeleteCall {
12679	c.ctx_ = ctx
12680	return c
12681}
12682
12683// Header returns an http.Header that can be modified by the caller to
12684// add HTTP headers to the request.
12685func (c *AccountsDeleteCall) Header() http.Header {
12686	if c.header_ == nil {
12687		c.header_ = make(http.Header)
12688	}
12689	return c.header_
12690}
12691
12692func (c *AccountsDeleteCall) doRequest(alt string) (*http.Response, error) {
12693	reqHeaders := make(http.Header)
12694	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
12695	for k, v := range c.header_ {
12696		reqHeaders[k] = v
12697	}
12698	reqHeaders.Set("User-Agent", c.s.userAgent())
12699	var body io.Reader = nil
12700	c.urlParams_.Set("alt", alt)
12701	c.urlParams_.Set("prettyPrint", "false")
12702	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}")
12703	urls += "?" + c.urlParams_.Encode()
12704	req, err := http.NewRequest("DELETE", urls, body)
12705	if err != nil {
12706		return nil, err
12707	}
12708	req.Header = reqHeaders
12709	googleapi.Expand(req.URL, map[string]string{
12710		"merchantId": strconv.FormatUint(c.merchantId, 10),
12711		"accountId":  strconv.FormatUint(c.accountId, 10),
12712	})
12713	return gensupport.SendRequest(c.ctx_, c.s.client, req)
12714}
12715
12716// Do executes the "content.accounts.delete" call.
12717func (c *AccountsDeleteCall) Do(opts ...googleapi.CallOption) error {
12718	gensupport.SetOptions(c.urlParams_, opts...)
12719	res, err := c.doRequest("json")
12720	if err != nil {
12721		return err
12722	}
12723	defer googleapi.CloseBody(res)
12724	if err := googleapi.CheckResponse(res); err != nil {
12725		return err
12726	}
12727	return nil
12728	// {
12729	//   "description": "Deletes a Merchant Center sub-account.",
12730	//   "flatPath": "{merchantId}/accounts/{accountId}",
12731	//   "httpMethod": "DELETE",
12732	//   "id": "content.accounts.delete",
12733	//   "parameterOrder": [
12734	//     "merchantId",
12735	//     "accountId"
12736	//   ],
12737	//   "parameters": {
12738	//     "accountId": {
12739	//       "description": "The ID of the account.",
12740	//       "format": "uint64",
12741	//       "location": "path",
12742	//       "required": true,
12743	//       "type": "string"
12744	//     },
12745	//     "dryRun": {
12746	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
12747	//       "location": "query",
12748	//       "type": "boolean"
12749	//     },
12750	//     "force": {
12751	//       "default": "false",
12752	//       "description": "Flag to delete sub-accounts with products. The default value is false.",
12753	//       "location": "query",
12754	//       "type": "boolean"
12755	//     },
12756	//     "merchantId": {
12757	//       "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.",
12758	//       "format": "uint64",
12759	//       "location": "path",
12760	//       "required": true,
12761	//       "type": "string"
12762	//     }
12763	//   },
12764	//   "path": "{merchantId}/accounts/{accountId}",
12765	//   "scopes": [
12766	//     "https://www.googleapis.com/auth/content"
12767	//   ]
12768	// }
12769
12770}
12771
12772// method id "content.accounts.get":
12773
12774type AccountsGetCall struct {
12775	s            *APIService
12776	merchantId   uint64
12777	accountId    uint64
12778	urlParams_   gensupport.URLParams
12779	ifNoneMatch_ string
12780	ctx_         context.Context
12781	header_      http.Header
12782}
12783
12784// Get: Retrieves a Merchant Center account.
12785//
12786// - accountId: The ID of the account.
12787// - merchantId: The ID of the managing account. If this parameter is
12788//   not the same as accountId, then this account must be a multi-client
12789//   account and `accountId` must be the ID of a sub-account of this
12790//   account.
12791func (r *AccountsService) Get(merchantId uint64, accountId uint64) *AccountsGetCall {
12792	c := &AccountsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
12793	c.merchantId = merchantId
12794	c.accountId = accountId
12795	return c
12796}
12797
12798// Fields allows partial responses to be retrieved. See
12799// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
12800// for more information.
12801func (c *AccountsGetCall) Fields(s ...googleapi.Field) *AccountsGetCall {
12802	c.urlParams_.Set("fields", googleapi.CombineFields(s))
12803	return c
12804}
12805
12806// IfNoneMatch sets the optional parameter which makes the operation
12807// fail if the object's ETag matches the given value. This is useful for
12808// getting updates only after the object has changed since the last
12809// request. Use googleapi.IsNotModified to check whether the response
12810// error from Do is the result of In-None-Match.
12811func (c *AccountsGetCall) IfNoneMatch(entityTag string) *AccountsGetCall {
12812	c.ifNoneMatch_ = entityTag
12813	return c
12814}
12815
12816// Context sets the context to be used in this call's Do method. Any
12817// pending HTTP request will be aborted if the provided context is
12818// canceled.
12819func (c *AccountsGetCall) Context(ctx context.Context) *AccountsGetCall {
12820	c.ctx_ = ctx
12821	return c
12822}
12823
12824// Header returns an http.Header that can be modified by the caller to
12825// add HTTP headers to the request.
12826func (c *AccountsGetCall) Header() http.Header {
12827	if c.header_ == nil {
12828		c.header_ = make(http.Header)
12829	}
12830	return c.header_
12831}
12832
12833func (c *AccountsGetCall) doRequest(alt string) (*http.Response, error) {
12834	reqHeaders := make(http.Header)
12835	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
12836	for k, v := range c.header_ {
12837		reqHeaders[k] = v
12838	}
12839	reqHeaders.Set("User-Agent", c.s.userAgent())
12840	if c.ifNoneMatch_ != "" {
12841		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
12842	}
12843	var body io.Reader = nil
12844	c.urlParams_.Set("alt", alt)
12845	c.urlParams_.Set("prettyPrint", "false")
12846	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}")
12847	urls += "?" + c.urlParams_.Encode()
12848	req, err := http.NewRequest("GET", urls, body)
12849	if err != nil {
12850		return nil, err
12851	}
12852	req.Header = reqHeaders
12853	googleapi.Expand(req.URL, map[string]string{
12854		"merchantId": strconv.FormatUint(c.merchantId, 10),
12855		"accountId":  strconv.FormatUint(c.accountId, 10),
12856	})
12857	return gensupport.SendRequest(c.ctx_, c.s.client, req)
12858}
12859
12860// Do executes the "content.accounts.get" call.
12861// Exactly one of *Account or error will be non-nil. Any non-2xx status
12862// code is an error. Response headers are in either
12863// *Account.ServerResponse.Header or (if a response was returned at all)
12864// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
12865// check whether the returned error was because http.StatusNotModified
12866// was returned.
12867func (c *AccountsGetCall) Do(opts ...googleapi.CallOption) (*Account, error) {
12868	gensupport.SetOptions(c.urlParams_, opts...)
12869	res, err := c.doRequest("json")
12870	if res != nil && res.StatusCode == http.StatusNotModified {
12871		if res.Body != nil {
12872			res.Body.Close()
12873		}
12874		return nil, &googleapi.Error{
12875			Code:   res.StatusCode,
12876			Header: res.Header,
12877		}
12878	}
12879	if err != nil {
12880		return nil, err
12881	}
12882	defer googleapi.CloseBody(res)
12883	if err := googleapi.CheckResponse(res); err != nil {
12884		return nil, err
12885	}
12886	ret := &Account{
12887		ServerResponse: googleapi.ServerResponse{
12888			Header:         res.Header,
12889			HTTPStatusCode: res.StatusCode,
12890		},
12891	}
12892	target := &ret
12893	if err := gensupport.DecodeResponse(target, res); err != nil {
12894		return nil, err
12895	}
12896	return ret, nil
12897	// {
12898	//   "description": "Retrieves a Merchant Center account.",
12899	//   "flatPath": "{merchantId}/accounts/{accountId}",
12900	//   "httpMethod": "GET",
12901	//   "id": "content.accounts.get",
12902	//   "parameterOrder": [
12903	//     "merchantId",
12904	//     "accountId"
12905	//   ],
12906	//   "parameters": {
12907	//     "accountId": {
12908	//       "description": "The ID of the account.",
12909	//       "format": "uint64",
12910	//       "location": "path",
12911	//       "required": true,
12912	//       "type": "string"
12913	//     },
12914	//     "merchantId": {
12915	//       "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.",
12916	//       "format": "uint64",
12917	//       "location": "path",
12918	//       "required": true,
12919	//       "type": "string"
12920	//     }
12921	//   },
12922	//   "path": "{merchantId}/accounts/{accountId}",
12923	//   "response": {
12924	//     "$ref": "Account"
12925	//   },
12926	//   "scopes": [
12927	//     "https://www.googleapis.com/auth/content"
12928	//   ]
12929	// }
12930
12931}
12932
12933// method id "content.accounts.insert":
12934
12935type AccountsInsertCall struct {
12936	s          *APIService
12937	merchantId uint64
12938	account    *Account
12939	urlParams_ gensupport.URLParams
12940	ctx_       context.Context
12941	header_    http.Header
12942}
12943
12944// Insert: Creates a Merchant Center sub-account.
12945//
12946// - merchantId: The ID of the managing account. This must be a
12947//   multi-client account.
12948func (r *AccountsService) Insert(merchantId uint64, account *Account) *AccountsInsertCall {
12949	c := &AccountsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
12950	c.merchantId = merchantId
12951	c.account = account
12952	return c
12953}
12954
12955// DryRun sets the optional parameter "dryRun": Flag to simulate a
12956// request like in a live environment. If set to true, dry-run mode
12957// checks the validity of the request and returns errors (if any).
12958func (c *AccountsInsertCall) DryRun(dryRun bool) *AccountsInsertCall {
12959	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
12960	return c
12961}
12962
12963// Fields allows partial responses to be retrieved. See
12964// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
12965// for more information.
12966func (c *AccountsInsertCall) Fields(s ...googleapi.Field) *AccountsInsertCall {
12967	c.urlParams_.Set("fields", googleapi.CombineFields(s))
12968	return c
12969}
12970
12971// Context sets the context to be used in this call's Do method. Any
12972// pending HTTP request will be aborted if the provided context is
12973// canceled.
12974func (c *AccountsInsertCall) Context(ctx context.Context) *AccountsInsertCall {
12975	c.ctx_ = ctx
12976	return c
12977}
12978
12979// Header returns an http.Header that can be modified by the caller to
12980// add HTTP headers to the request.
12981func (c *AccountsInsertCall) Header() http.Header {
12982	if c.header_ == nil {
12983		c.header_ = make(http.Header)
12984	}
12985	return c.header_
12986}
12987
12988func (c *AccountsInsertCall) doRequest(alt string) (*http.Response, error) {
12989	reqHeaders := make(http.Header)
12990	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
12991	for k, v := range c.header_ {
12992		reqHeaders[k] = v
12993	}
12994	reqHeaders.Set("User-Agent", c.s.userAgent())
12995	var body io.Reader = nil
12996	body, err := googleapi.WithoutDataWrapper.JSONReader(c.account)
12997	if err != nil {
12998		return nil, err
12999	}
13000	reqHeaders.Set("Content-Type", "application/json")
13001	c.urlParams_.Set("alt", alt)
13002	c.urlParams_.Set("prettyPrint", "false")
13003	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts")
13004	urls += "?" + c.urlParams_.Encode()
13005	req, err := http.NewRequest("POST", 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	})
13013	return gensupport.SendRequest(c.ctx_, c.s.client, req)
13014}
13015
13016// Do executes the "content.accounts.insert" call.
13017// Exactly one of *Account or error will be non-nil. Any non-2xx status
13018// code is an error. Response headers are in either
13019// *Account.ServerResponse.Header or (if a response was returned at all)
13020// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
13021// check whether the returned error was because http.StatusNotModified
13022// was returned.
13023func (c *AccountsInsertCall) Do(opts ...googleapi.CallOption) (*Account, error) {
13024	gensupport.SetOptions(c.urlParams_, opts...)
13025	res, err := c.doRequest("json")
13026	if res != nil && res.StatusCode == http.StatusNotModified {
13027		if res.Body != nil {
13028			res.Body.Close()
13029		}
13030		return nil, &googleapi.Error{
13031			Code:   res.StatusCode,
13032			Header: res.Header,
13033		}
13034	}
13035	if err != nil {
13036		return nil, err
13037	}
13038	defer googleapi.CloseBody(res)
13039	if err := googleapi.CheckResponse(res); err != nil {
13040		return nil, err
13041	}
13042	ret := &Account{
13043		ServerResponse: googleapi.ServerResponse{
13044			Header:         res.Header,
13045			HTTPStatusCode: res.StatusCode,
13046		},
13047	}
13048	target := &ret
13049	if err := gensupport.DecodeResponse(target, res); err != nil {
13050		return nil, err
13051	}
13052	return ret, nil
13053	// {
13054	//   "description": "Creates a Merchant Center sub-account.",
13055	//   "flatPath": "{merchantId}/accounts",
13056	//   "httpMethod": "POST",
13057	//   "id": "content.accounts.insert",
13058	//   "parameterOrder": [
13059	//     "merchantId"
13060	//   ],
13061	//   "parameters": {
13062	//     "dryRun": {
13063	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
13064	//       "location": "query",
13065	//       "type": "boolean"
13066	//     },
13067	//     "merchantId": {
13068	//       "description": "The ID of the managing account. This must be a multi-client account.",
13069	//       "format": "uint64",
13070	//       "location": "path",
13071	//       "required": true,
13072	//       "type": "string"
13073	//     }
13074	//   },
13075	//   "path": "{merchantId}/accounts",
13076	//   "request": {
13077	//     "$ref": "Account"
13078	//   },
13079	//   "response": {
13080	//     "$ref": "Account"
13081	//   },
13082	//   "scopes": [
13083	//     "https://www.googleapis.com/auth/content"
13084	//   ]
13085	// }
13086
13087}
13088
13089// method id "content.accounts.link":
13090
13091type AccountsLinkCall struct {
13092	s                   *APIService
13093	merchantId          uint64
13094	accountId           uint64
13095	accountslinkrequest *AccountsLinkRequest
13096	urlParams_          gensupport.URLParams
13097	ctx_                context.Context
13098	header_             http.Header
13099}
13100
13101// Link: Performs an action on a link between two Merchant Center
13102// accounts, namely accountId and linkedAccountId.
13103//
13104// - accountId: The ID of the account that should be linked.
13105// - merchantId: The ID of the managing account. If this parameter is
13106//   not the same as accountId, then this account must be a multi-client
13107//   account and `accountId` must be the ID of a sub-account of this
13108//   account.
13109func (r *AccountsService) Link(merchantId uint64, accountId uint64, accountslinkrequest *AccountsLinkRequest) *AccountsLinkCall {
13110	c := &AccountsLinkCall{s: r.s, urlParams_: make(gensupport.URLParams)}
13111	c.merchantId = merchantId
13112	c.accountId = accountId
13113	c.accountslinkrequest = accountslinkrequest
13114	return c
13115}
13116
13117// Fields allows partial responses to be retrieved. See
13118// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
13119// for more information.
13120func (c *AccountsLinkCall) Fields(s ...googleapi.Field) *AccountsLinkCall {
13121	c.urlParams_.Set("fields", googleapi.CombineFields(s))
13122	return c
13123}
13124
13125// Context sets the context to be used in this call's Do method. Any
13126// pending HTTP request will be aborted if the provided context is
13127// canceled.
13128func (c *AccountsLinkCall) Context(ctx context.Context) *AccountsLinkCall {
13129	c.ctx_ = ctx
13130	return c
13131}
13132
13133// Header returns an http.Header that can be modified by the caller to
13134// add HTTP headers to the request.
13135func (c *AccountsLinkCall) Header() http.Header {
13136	if c.header_ == nil {
13137		c.header_ = make(http.Header)
13138	}
13139	return c.header_
13140}
13141
13142func (c *AccountsLinkCall) doRequest(alt string) (*http.Response, error) {
13143	reqHeaders := make(http.Header)
13144	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
13145	for k, v := range c.header_ {
13146		reqHeaders[k] = v
13147	}
13148	reqHeaders.Set("User-Agent", c.s.userAgent())
13149	var body io.Reader = nil
13150	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountslinkrequest)
13151	if err != nil {
13152		return nil, err
13153	}
13154	reqHeaders.Set("Content-Type", "application/json")
13155	c.urlParams_.Set("alt", alt)
13156	c.urlParams_.Set("prettyPrint", "false")
13157	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}/link")
13158	urls += "?" + c.urlParams_.Encode()
13159	req, err := http.NewRequest("POST", urls, body)
13160	if err != nil {
13161		return nil, err
13162	}
13163	req.Header = reqHeaders
13164	googleapi.Expand(req.URL, map[string]string{
13165		"merchantId": strconv.FormatUint(c.merchantId, 10),
13166		"accountId":  strconv.FormatUint(c.accountId, 10),
13167	})
13168	return gensupport.SendRequest(c.ctx_, c.s.client, req)
13169}
13170
13171// Do executes the "content.accounts.link" call.
13172// Exactly one of *AccountsLinkResponse or error will be non-nil. Any
13173// non-2xx status code is an error. Response headers are in either
13174// *AccountsLinkResponse.ServerResponse.Header or (if a response was
13175// returned at all) in error.(*googleapi.Error).Header. Use
13176// googleapi.IsNotModified to check whether the returned error was
13177// because http.StatusNotModified was returned.
13178func (c *AccountsLinkCall) Do(opts ...googleapi.CallOption) (*AccountsLinkResponse, error) {
13179	gensupport.SetOptions(c.urlParams_, opts...)
13180	res, err := c.doRequest("json")
13181	if res != nil && res.StatusCode == http.StatusNotModified {
13182		if res.Body != nil {
13183			res.Body.Close()
13184		}
13185		return nil, &googleapi.Error{
13186			Code:   res.StatusCode,
13187			Header: res.Header,
13188		}
13189	}
13190	if err != nil {
13191		return nil, err
13192	}
13193	defer googleapi.CloseBody(res)
13194	if err := googleapi.CheckResponse(res); err != nil {
13195		return nil, err
13196	}
13197	ret := &AccountsLinkResponse{
13198		ServerResponse: googleapi.ServerResponse{
13199			Header:         res.Header,
13200			HTTPStatusCode: res.StatusCode,
13201		},
13202	}
13203	target := &ret
13204	if err := gensupport.DecodeResponse(target, res); err != nil {
13205		return nil, err
13206	}
13207	return ret, nil
13208	// {
13209	//   "description": "Performs an action on a link between two Merchant Center accounts, namely accountId and linkedAccountId.",
13210	//   "flatPath": "{merchantId}/accounts/{accountId}/link",
13211	//   "httpMethod": "POST",
13212	//   "id": "content.accounts.link",
13213	//   "parameterOrder": [
13214	//     "merchantId",
13215	//     "accountId"
13216	//   ],
13217	//   "parameters": {
13218	//     "accountId": {
13219	//       "description": "The ID of the account that should be linked.",
13220	//       "format": "uint64",
13221	//       "location": "path",
13222	//       "required": true,
13223	//       "type": "string"
13224	//     },
13225	//     "merchantId": {
13226	//       "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.",
13227	//       "format": "uint64",
13228	//       "location": "path",
13229	//       "required": true,
13230	//       "type": "string"
13231	//     }
13232	//   },
13233	//   "path": "{merchantId}/accounts/{accountId}/link",
13234	//   "request": {
13235	//     "$ref": "AccountsLinkRequest"
13236	//   },
13237	//   "response": {
13238	//     "$ref": "AccountsLinkResponse"
13239	//   },
13240	//   "scopes": [
13241	//     "https://www.googleapis.com/auth/content"
13242	//   ]
13243	// }
13244
13245}
13246
13247// method id "content.accounts.list":
13248
13249type AccountsListCall struct {
13250	s            *APIService
13251	merchantId   uint64
13252	urlParams_   gensupport.URLParams
13253	ifNoneMatch_ string
13254	ctx_         context.Context
13255	header_      http.Header
13256}
13257
13258// List: Lists the sub-accounts in your Merchant Center account.
13259//
13260// - merchantId: The ID of the managing account. This must be a
13261//   multi-client account.
13262func (r *AccountsService) List(merchantId uint64) *AccountsListCall {
13263	c := &AccountsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
13264	c.merchantId = merchantId
13265	return c
13266}
13267
13268// MaxResults sets the optional parameter "maxResults": The maximum
13269// number of accounts to return in the response, used for paging.
13270func (c *AccountsListCall) MaxResults(maxResults int64) *AccountsListCall {
13271	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
13272	return c
13273}
13274
13275// PageToken sets the optional parameter "pageToken": The token returned
13276// by the previous request.
13277func (c *AccountsListCall) PageToken(pageToken string) *AccountsListCall {
13278	c.urlParams_.Set("pageToken", pageToken)
13279	return c
13280}
13281
13282// Fields allows partial responses to be retrieved. See
13283// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
13284// for more information.
13285func (c *AccountsListCall) Fields(s ...googleapi.Field) *AccountsListCall {
13286	c.urlParams_.Set("fields", googleapi.CombineFields(s))
13287	return c
13288}
13289
13290// IfNoneMatch sets the optional parameter which makes the operation
13291// fail if the object's ETag matches the given value. This is useful for
13292// getting updates only after the object has changed since the last
13293// request. Use googleapi.IsNotModified to check whether the response
13294// error from Do is the result of In-None-Match.
13295func (c *AccountsListCall) IfNoneMatch(entityTag string) *AccountsListCall {
13296	c.ifNoneMatch_ = entityTag
13297	return c
13298}
13299
13300// Context sets the context to be used in this call's Do method. Any
13301// pending HTTP request will be aborted if the provided context is
13302// canceled.
13303func (c *AccountsListCall) Context(ctx context.Context) *AccountsListCall {
13304	c.ctx_ = ctx
13305	return c
13306}
13307
13308// Header returns an http.Header that can be modified by the caller to
13309// add HTTP headers to the request.
13310func (c *AccountsListCall) Header() http.Header {
13311	if c.header_ == nil {
13312		c.header_ = make(http.Header)
13313	}
13314	return c.header_
13315}
13316
13317func (c *AccountsListCall) doRequest(alt string) (*http.Response, error) {
13318	reqHeaders := make(http.Header)
13319	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
13320	for k, v := range c.header_ {
13321		reqHeaders[k] = v
13322	}
13323	reqHeaders.Set("User-Agent", c.s.userAgent())
13324	if c.ifNoneMatch_ != "" {
13325		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
13326	}
13327	var body io.Reader = nil
13328	c.urlParams_.Set("alt", alt)
13329	c.urlParams_.Set("prettyPrint", "false")
13330	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts")
13331	urls += "?" + c.urlParams_.Encode()
13332	req, err := http.NewRequest("GET", urls, body)
13333	if err != nil {
13334		return nil, err
13335	}
13336	req.Header = reqHeaders
13337	googleapi.Expand(req.URL, map[string]string{
13338		"merchantId": strconv.FormatUint(c.merchantId, 10),
13339	})
13340	return gensupport.SendRequest(c.ctx_, c.s.client, req)
13341}
13342
13343// Do executes the "content.accounts.list" call.
13344// Exactly one of *AccountsListResponse or error will be non-nil. Any
13345// non-2xx status code is an error. Response headers are in either
13346// *AccountsListResponse.ServerResponse.Header or (if a response was
13347// returned at all) in error.(*googleapi.Error).Header. Use
13348// googleapi.IsNotModified to check whether the returned error was
13349// because http.StatusNotModified was returned.
13350func (c *AccountsListCall) Do(opts ...googleapi.CallOption) (*AccountsListResponse, error) {
13351	gensupport.SetOptions(c.urlParams_, opts...)
13352	res, err := c.doRequest("json")
13353	if res != nil && res.StatusCode == http.StatusNotModified {
13354		if res.Body != nil {
13355			res.Body.Close()
13356		}
13357		return nil, &googleapi.Error{
13358			Code:   res.StatusCode,
13359			Header: res.Header,
13360		}
13361	}
13362	if err != nil {
13363		return nil, err
13364	}
13365	defer googleapi.CloseBody(res)
13366	if err := googleapi.CheckResponse(res); err != nil {
13367		return nil, err
13368	}
13369	ret := &AccountsListResponse{
13370		ServerResponse: googleapi.ServerResponse{
13371			Header:         res.Header,
13372			HTTPStatusCode: res.StatusCode,
13373		},
13374	}
13375	target := &ret
13376	if err := gensupport.DecodeResponse(target, res); err != nil {
13377		return nil, err
13378	}
13379	return ret, nil
13380	// {
13381	//   "description": "Lists the sub-accounts in your Merchant Center account.",
13382	//   "flatPath": "{merchantId}/accounts",
13383	//   "httpMethod": "GET",
13384	//   "id": "content.accounts.list",
13385	//   "parameterOrder": [
13386	//     "merchantId"
13387	//   ],
13388	//   "parameters": {
13389	//     "maxResults": {
13390	//       "description": "The maximum number of accounts to return in the response, used for paging.",
13391	//       "format": "uint32",
13392	//       "location": "query",
13393	//       "type": "integer"
13394	//     },
13395	//     "merchantId": {
13396	//       "description": "The ID of the managing account. This must be a multi-client account.",
13397	//       "format": "uint64",
13398	//       "location": "path",
13399	//       "required": true,
13400	//       "type": "string"
13401	//     },
13402	//     "pageToken": {
13403	//       "description": "The token returned by the previous request.",
13404	//       "location": "query",
13405	//       "type": "string"
13406	//     }
13407	//   },
13408	//   "path": "{merchantId}/accounts",
13409	//   "response": {
13410	//     "$ref": "AccountsListResponse"
13411	//   },
13412	//   "scopes": [
13413	//     "https://www.googleapis.com/auth/content"
13414	//   ]
13415	// }
13416
13417}
13418
13419// Pages invokes f for each page of results.
13420// A non-nil error returned from f will halt the iteration.
13421// The provided context supersedes any context provided to the Context method.
13422func (c *AccountsListCall) Pages(ctx context.Context, f func(*AccountsListResponse) error) error {
13423	c.ctx_ = ctx
13424	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
13425	for {
13426		x, err := c.Do()
13427		if err != nil {
13428			return err
13429		}
13430		if err := f(x); err != nil {
13431			return err
13432		}
13433		if x.NextPageToken == "" {
13434			return nil
13435		}
13436		c.PageToken(x.NextPageToken)
13437	}
13438}
13439
13440// method id "content.accounts.update":
13441
13442type AccountsUpdateCall struct {
13443	s          *APIService
13444	merchantId uint64
13445	accountId  uint64
13446	account    *Account
13447	urlParams_ gensupport.URLParams
13448	ctx_       context.Context
13449	header_    http.Header
13450}
13451
13452// Update: Updates a Merchant Center account. Any fields that are not
13453// provided are deleted from the resource.
13454//
13455// - accountId: The ID of the account.
13456// - merchantId: The ID of the managing account. If this parameter is
13457//   not the same as accountId, then this account must be a multi-client
13458//   account and `accountId` must be the ID of a sub-account of this
13459//   account.
13460func (r *AccountsService) Update(merchantId uint64, accountId uint64, account *Account) *AccountsUpdateCall {
13461	c := &AccountsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
13462	c.merchantId = merchantId
13463	c.accountId = accountId
13464	c.account = account
13465	return c
13466}
13467
13468// DryRun sets the optional parameter "dryRun": Flag to simulate a
13469// request like in a live environment. If set to true, dry-run mode
13470// checks the validity of the request and returns errors (if any).
13471func (c *AccountsUpdateCall) DryRun(dryRun bool) *AccountsUpdateCall {
13472	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
13473	return c
13474}
13475
13476// Fields allows partial responses to be retrieved. See
13477// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
13478// for more information.
13479func (c *AccountsUpdateCall) Fields(s ...googleapi.Field) *AccountsUpdateCall {
13480	c.urlParams_.Set("fields", googleapi.CombineFields(s))
13481	return c
13482}
13483
13484// Context sets the context to be used in this call's Do method. Any
13485// pending HTTP request will be aborted if the provided context is
13486// canceled.
13487func (c *AccountsUpdateCall) Context(ctx context.Context) *AccountsUpdateCall {
13488	c.ctx_ = ctx
13489	return c
13490}
13491
13492// Header returns an http.Header that can be modified by the caller to
13493// add HTTP headers to the request.
13494func (c *AccountsUpdateCall) Header() http.Header {
13495	if c.header_ == nil {
13496		c.header_ = make(http.Header)
13497	}
13498	return c.header_
13499}
13500
13501func (c *AccountsUpdateCall) doRequest(alt string) (*http.Response, error) {
13502	reqHeaders := make(http.Header)
13503	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
13504	for k, v := range c.header_ {
13505		reqHeaders[k] = v
13506	}
13507	reqHeaders.Set("User-Agent", c.s.userAgent())
13508	var body io.Reader = nil
13509	body, err := googleapi.WithoutDataWrapper.JSONReader(c.account)
13510	if err != nil {
13511		return nil, err
13512	}
13513	reqHeaders.Set("Content-Type", "application/json")
13514	c.urlParams_.Set("alt", alt)
13515	c.urlParams_.Set("prettyPrint", "false")
13516	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}")
13517	urls += "?" + c.urlParams_.Encode()
13518	req, err := http.NewRequest("PUT", urls, body)
13519	if err != nil {
13520		return nil, err
13521	}
13522	req.Header = reqHeaders
13523	googleapi.Expand(req.URL, map[string]string{
13524		"merchantId": strconv.FormatUint(c.merchantId, 10),
13525		"accountId":  strconv.FormatUint(c.accountId, 10),
13526	})
13527	return gensupport.SendRequest(c.ctx_, c.s.client, req)
13528}
13529
13530// Do executes the "content.accounts.update" call.
13531// Exactly one of *Account or error will be non-nil. Any non-2xx status
13532// code is an error. Response headers are in either
13533// *Account.ServerResponse.Header or (if a response was returned at all)
13534// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
13535// check whether the returned error was because http.StatusNotModified
13536// was returned.
13537func (c *AccountsUpdateCall) Do(opts ...googleapi.CallOption) (*Account, error) {
13538	gensupport.SetOptions(c.urlParams_, opts...)
13539	res, err := c.doRequest("json")
13540	if res != nil && res.StatusCode == http.StatusNotModified {
13541		if res.Body != nil {
13542			res.Body.Close()
13543		}
13544		return nil, &googleapi.Error{
13545			Code:   res.StatusCode,
13546			Header: res.Header,
13547		}
13548	}
13549	if err != nil {
13550		return nil, err
13551	}
13552	defer googleapi.CloseBody(res)
13553	if err := googleapi.CheckResponse(res); err != nil {
13554		return nil, err
13555	}
13556	ret := &Account{
13557		ServerResponse: googleapi.ServerResponse{
13558			Header:         res.Header,
13559			HTTPStatusCode: res.StatusCode,
13560		},
13561	}
13562	target := &ret
13563	if err := gensupport.DecodeResponse(target, res); err != nil {
13564		return nil, err
13565	}
13566	return ret, nil
13567	// {
13568	//   "description": "Updates a Merchant Center account. Any fields that are not provided are deleted from the resource.",
13569	//   "flatPath": "{merchantId}/accounts/{accountId}",
13570	//   "httpMethod": "PUT",
13571	//   "id": "content.accounts.update",
13572	//   "parameterOrder": [
13573	//     "merchantId",
13574	//     "accountId"
13575	//   ],
13576	//   "parameters": {
13577	//     "accountId": {
13578	//       "description": "The ID of the account.",
13579	//       "format": "uint64",
13580	//       "location": "path",
13581	//       "required": true,
13582	//       "type": "string"
13583	//     },
13584	//     "dryRun": {
13585	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
13586	//       "location": "query",
13587	//       "type": "boolean"
13588	//     },
13589	//     "merchantId": {
13590	//       "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.",
13591	//       "format": "uint64",
13592	//       "location": "path",
13593	//       "required": true,
13594	//       "type": "string"
13595	//     }
13596	//   },
13597	//   "path": "{merchantId}/accounts/{accountId}",
13598	//   "request": {
13599	//     "$ref": "Account"
13600	//   },
13601	//   "response": {
13602	//     "$ref": "Account"
13603	//   },
13604	//   "scopes": [
13605	//     "https://www.googleapis.com/auth/content"
13606	//   ]
13607	// }
13608
13609}
13610
13611// method id "content.accountstatuses.custombatch":
13612
13613type AccountstatusesCustombatchCall struct {
13614	s                                 *APIService
13615	accountstatusescustombatchrequest *AccountstatusesCustomBatchRequest
13616	urlParams_                        gensupport.URLParams
13617	ctx_                              context.Context
13618	header_                           http.Header
13619}
13620
13621// Custombatch: Retrieves multiple Merchant Center account statuses in a
13622// single request.
13623func (r *AccountstatusesService) Custombatch(accountstatusescustombatchrequest *AccountstatusesCustomBatchRequest) *AccountstatusesCustombatchCall {
13624	c := &AccountstatusesCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
13625	c.accountstatusescustombatchrequest = accountstatusescustombatchrequest
13626	return c
13627}
13628
13629// Fields allows partial responses to be retrieved. See
13630// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
13631// for more information.
13632func (c *AccountstatusesCustombatchCall) Fields(s ...googleapi.Field) *AccountstatusesCustombatchCall {
13633	c.urlParams_.Set("fields", googleapi.CombineFields(s))
13634	return c
13635}
13636
13637// Context sets the context to be used in this call's Do method. Any
13638// pending HTTP request will be aborted if the provided context is
13639// canceled.
13640func (c *AccountstatusesCustombatchCall) Context(ctx context.Context) *AccountstatusesCustombatchCall {
13641	c.ctx_ = ctx
13642	return c
13643}
13644
13645// Header returns an http.Header that can be modified by the caller to
13646// add HTTP headers to the request.
13647func (c *AccountstatusesCustombatchCall) Header() http.Header {
13648	if c.header_ == nil {
13649		c.header_ = make(http.Header)
13650	}
13651	return c.header_
13652}
13653
13654func (c *AccountstatusesCustombatchCall) doRequest(alt string) (*http.Response, error) {
13655	reqHeaders := make(http.Header)
13656	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
13657	for k, v := range c.header_ {
13658		reqHeaders[k] = v
13659	}
13660	reqHeaders.Set("User-Agent", c.s.userAgent())
13661	var body io.Reader = nil
13662	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountstatusescustombatchrequest)
13663	if err != nil {
13664		return nil, err
13665	}
13666	reqHeaders.Set("Content-Type", "application/json")
13667	c.urlParams_.Set("alt", alt)
13668	c.urlParams_.Set("prettyPrint", "false")
13669	urls := googleapi.ResolveRelative(c.s.BasePath, "accountstatuses/batch")
13670	urls += "?" + c.urlParams_.Encode()
13671	req, err := http.NewRequest("POST", urls, body)
13672	if err != nil {
13673		return nil, err
13674	}
13675	req.Header = reqHeaders
13676	return gensupport.SendRequest(c.ctx_, c.s.client, req)
13677}
13678
13679// Do executes the "content.accountstatuses.custombatch" call.
13680// Exactly one of *AccountstatusesCustomBatchResponse or error will be
13681// non-nil. Any non-2xx status code is an error. Response headers are in
13682// either *AccountstatusesCustomBatchResponse.ServerResponse.Header or
13683// (if a response was returned at all) in
13684// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
13685// whether the returned error was because http.StatusNotModified was
13686// returned.
13687func (c *AccountstatusesCustombatchCall) Do(opts ...googleapi.CallOption) (*AccountstatusesCustomBatchResponse, error) {
13688	gensupport.SetOptions(c.urlParams_, opts...)
13689	res, err := c.doRequest("json")
13690	if res != nil && res.StatusCode == http.StatusNotModified {
13691		if res.Body != nil {
13692			res.Body.Close()
13693		}
13694		return nil, &googleapi.Error{
13695			Code:   res.StatusCode,
13696			Header: res.Header,
13697		}
13698	}
13699	if err != nil {
13700		return nil, err
13701	}
13702	defer googleapi.CloseBody(res)
13703	if err := googleapi.CheckResponse(res); err != nil {
13704		return nil, err
13705	}
13706	ret := &AccountstatusesCustomBatchResponse{
13707		ServerResponse: googleapi.ServerResponse{
13708			Header:         res.Header,
13709			HTTPStatusCode: res.StatusCode,
13710		},
13711	}
13712	target := &ret
13713	if err := gensupport.DecodeResponse(target, res); err != nil {
13714		return nil, err
13715	}
13716	return ret, nil
13717	// {
13718	//   "description": "Retrieves multiple Merchant Center account statuses in a single request.",
13719	//   "flatPath": "accountstatuses/batch",
13720	//   "httpMethod": "POST",
13721	//   "id": "content.accountstatuses.custombatch",
13722	//   "parameterOrder": [],
13723	//   "parameters": {},
13724	//   "path": "accountstatuses/batch",
13725	//   "request": {
13726	//     "$ref": "AccountstatusesCustomBatchRequest"
13727	//   },
13728	//   "response": {
13729	//     "$ref": "AccountstatusesCustomBatchResponse"
13730	//   },
13731	//   "scopes": [
13732	//     "https://www.googleapis.com/auth/content"
13733	//   ]
13734	// }
13735
13736}
13737
13738// method id "content.accountstatuses.get":
13739
13740type AccountstatusesGetCall struct {
13741	s            *APIService
13742	merchantId   uint64
13743	accountId    uint64
13744	urlParams_   gensupport.URLParams
13745	ifNoneMatch_ string
13746	ctx_         context.Context
13747	header_      http.Header
13748}
13749
13750// Get: Retrieves the status of a Merchant Center account. No
13751// itemLevelIssues are returned for multi-client accounts.
13752//
13753// - accountId: The ID of the account.
13754// - merchantId: The ID of the managing account. If this parameter is
13755//   not the same as accountId, then this account must be a multi-client
13756//   account and `accountId` must be the ID of a sub-account of this
13757//   account.
13758func (r *AccountstatusesService) Get(merchantId uint64, accountId uint64) *AccountstatusesGetCall {
13759	c := &AccountstatusesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
13760	c.merchantId = merchantId
13761	c.accountId = accountId
13762	return c
13763}
13764
13765// Destinations sets the optional parameter "destinations": If set, only
13766// issues for the specified destinations are returned, otherwise only
13767// issues for the Shopping destination.
13768func (c *AccountstatusesGetCall) Destinations(destinations ...string) *AccountstatusesGetCall {
13769	c.urlParams_.SetMulti("destinations", append([]string{}, destinations...))
13770	return c
13771}
13772
13773// Fields allows partial responses to be retrieved. See
13774// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
13775// for more information.
13776func (c *AccountstatusesGetCall) Fields(s ...googleapi.Field) *AccountstatusesGetCall {
13777	c.urlParams_.Set("fields", googleapi.CombineFields(s))
13778	return c
13779}
13780
13781// IfNoneMatch sets the optional parameter which makes the operation
13782// fail if the object's ETag matches the given value. This is useful for
13783// getting updates only after the object has changed since the last
13784// request. Use googleapi.IsNotModified to check whether the response
13785// error from Do is the result of In-None-Match.
13786func (c *AccountstatusesGetCall) IfNoneMatch(entityTag string) *AccountstatusesGetCall {
13787	c.ifNoneMatch_ = entityTag
13788	return c
13789}
13790
13791// Context sets the context to be used in this call's Do method. Any
13792// pending HTTP request will be aborted if the provided context is
13793// canceled.
13794func (c *AccountstatusesGetCall) Context(ctx context.Context) *AccountstatusesGetCall {
13795	c.ctx_ = ctx
13796	return c
13797}
13798
13799// Header returns an http.Header that can be modified by the caller to
13800// add HTTP headers to the request.
13801func (c *AccountstatusesGetCall) Header() http.Header {
13802	if c.header_ == nil {
13803		c.header_ = make(http.Header)
13804	}
13805	return c.header_
13806}
13807
13808func (c *AccountstatusesGetCall) doRequest(alt string) (*http.Response, error) {
13809	reqHeaders := make(http.Header)
13810	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
13811	for k, v := range c.header_ {
13812		reqHeaders[k] = v
13813	}
13814	reqHeaders.Set("User-Agent", c.s.userAgent())
13815	if c.ifNoneMatch_ != "" {
13816		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
13817	}
13818	var body io.Reader = nil
13819	c.urlParams_.Set("alt", alt)
13820	c.urlParams_.Set("prettyPrint", "false")
13821	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accountstatuses/{accountId}")
13822	urls += "?" + c.urlParams_.Encode()
13823	req, err := http.NewRequest("GET", urls, body)
13824	if err != nil {
13825		return nil, err
13826	}
13827	req.Header = reqHeaders
13828	googleapi.Expand(req.URL, map[string]string{
13829		"merchantId": strconv.FormatUint(c.merchantId, 10),
13830		"accountId":  strconv.FormatUint(c.accountId, 10),
13831	})
13832	return gensupport.SendRequest(c.ctx_, c.s.client, req)
13833}
13834
13835// Do executes the "content.accountstatuses.get" call.
13836// Exactly one of *AccountStatus or error will be non-nil. Any non-2xx
13837// status code is an error. Response headers are in either
13838// *AccountStatus.ServerResponse.Header or (if a response was returned
13839// at all) in error.(*googleapi.Error).Header. Use
13840// googleapi.IsNotModified to check whether the returned error was
13841// because http.StatusNotModified was returned.
13842func (c *AccountstatusesGetCall) Do(opts ...googleapi.CallOption) (*AccountStatus, error) {
13843	gensupport.SetOptions(c.urlParams_, opts...)
13844	res, err := c.doRequest("json")
13845	if res != nil && res.StatusCode == http.StatusNotModified {
13846		if res.Body != nil {
13847			res.Body.Close()
13848		}
13849		return nil, &googleapi.Error{
13850			Code:   res.StatusCode,
13851			Header: res.Header,
13852		}
13853	}
13854	if err != nil {
13855		return nil, err
13856	}
13857	defer googleapi.CloseBody(res)
13858	if err := googleapi.CheckResponse(res); err != nil {
13859		return nil, err
13860	}
13861	ret := &AccountStatus{
13862		ServerResponse: googleapi.ServerResponse{
13863			Header:         res.Header,
13864			HTTPStatusCode: res.StatusCode,
13865		},
13866	}
13867	target := &ret
13868	if err := gensupport.DecodeResponse(target, res); err != nil {
13869		return nil, err
13870	}
13871	return ret, nil
13872	// {
13873	//   "description": "Retrieves the status of a Merchant Center account. No itemLevelIssues are returned for multi-client accounts.",
13874	//   "flatPath": "{merchantId}/accountstatuses/{accountId}",
13875	//   "httpMethod": "GET",
13876	//   "id": "content.accountstatuses.get",
13877	//   "parameterOrder": [
13878	//     "merchantId",
13879	//     "accountId"
13880	//   ],
13881	//   "parameters": {
13882	//     "accountId": {
13883	//       "description": "The ID of the account.",
13884	//       "format": "uint64",
13885	//       "location": "path",
13886	//       "required": true,
13887	//       "type": "string"
13888	//     },
13889	//     "destinations": {
13890	//       "description": "If set, only issues for the specified destinations are returned, otherwise only issues for the Shopping destination.",
13891	//       "location": "query",
13892	//       "repeated": true,
13893	//       "type": "string"
13894	//     },
13895	//     "merchantId": {
13896	//       "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.",
13897	//       "format": "uint64",
13898	//       "location": "path",
13899	//       "required": true,
13900	//       "type": "string"
13901	//     }
13902	//   },
13903	//   "path": "{merchantId}/accountstatuses/{accountId}",
13904	//   "response": {
13905	//     "$ref": "AccountStatus"
13906	//   },
13907	//   "scopes": [
13908	//     "https://www.googleapis.com/auth/content"
13909	//   ]
13910	// }
13911
13912}
13913
13914// method id "content.accountstatuses.list":
13915
13916type AccountstatusesListCall struct {
13917	s            *APIService
13918	merchantId   uint64
13919	urlParams_   gensupport.URLParams
13920	ifNoneMatch_ string
13921	ctx_         context.Context
13922	header_      http.Header
13923}
13924
13925// List: Lists the statuses of the sub-accounts in your Merchant Center
13926// account.
13927//
13928// - merchantId: The ID of the managing account. This must be a
13929//   multi-client account.
13930func (r *AccountstatusesService) List(merchantId uint64) *AccountstatusesListCall {
13931	c := &AccountstatusesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
13932	c.merchantId = merchantId
13933	return c
13934}
13935
13936// Destinations sets the optional parameter "destinations": If set, only
13937// issues for the specified destinations are returned, otherwise only
13938// issues for the Shopping destination.
13939func (c *AccountstatusesListCall) Destinations(destinations ...string) *AccountstatusesListCall {
13940	c.urlParams_.SetMulti("destinations", append([]string{}, destinations...))
13941	return c
13942}
13943
13944// MaxResults sets the optional parameter "maxResults": The maximum
13945// number of account statuses to return in the response, used for
13946// paging.
13947func (c *AccountstatusesListCall) MaxResults(maxResults int64) *AccountstatusesListCall {
13948	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
13949	return c
13950}
13951
13952// PageToken sets the optional parameter "pageToken": The token returned
13953// by the previous request.
13954func (c *AccountstatusesListCall) PageToken(pageToken string) *AccountstatusesListCall {
13955	c.urlParams_.Set("pageToken", pageToken)
13956	return c
13957}
13958
13959// Fields allows partial responses to be retrieved. See
13960// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
13961// for more information.
13962func (c *AccountstatusesListCall) Fields(s ...googleapi.Field) *AccountstatusesListCall {
13963	c.urlParams_.Set("fields", googleapi.CombineFields(s))
13964	return c
13965}
13966
13967// IfNoneMatch sets the optional parameter which makes the operation
13968// fail if the object's ETag matches the given value. This is useful for
13969// getting updates only after the object has changed since the last
13970// request. Use googleapi.IsNotModified to check whether the response
13971// error from Do is the result of In-None-Match.
13972func (c *AccountstatusesListCall) IfNoneMatch(entityTag string) *AccountstatusesListCall {
13973	c.ifNoneMatch_ = entityTag
13974	return c
13975}
13976
13977// Context sets the context to be used in this call's Do method. Any
13978// pending HTTP request will be aborted if the provided context is
13979// canceled.
13980func (c *AccountstatusesListCall) Context(ctx context.Context) *AccountstatusesListCall {
13981	c.ctx_ = ctx
13982	return c
13983}
13984
13985// Header returns an http.Header that can be modified by the caller to
13986// add HTTP headers to the request.
13987func (c *AccountstatusesListCall) Header() http.Header {
13988	if c.header_ == nil {
13989		c.header_ = make(http.Header)
13990	}
13991	return c.header_
13992}
13993
13994func (c *AccountstatusesListCall) doRequest(alt string) (*http.Response, error) {
13995	reqHeaders := make(http.Header)
13996	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
13997	for k, v := range c.header_ {
13998		reqHeaders[k] = v
13999	}
14000	reqHeaders.Set("User-Agent", c.s.userAgent())
14001	if c.ifNoneMatch_ != "" {
14002		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
14003	}
14004	var body io.Reader = nil
14005	c.urlParams_.Set("alt", alt)
14006	c.urlParams_.Set("prettyPrint", "false")
14007	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accountstatuses")
14008	urls += "?" + c.urlParams_.Encode()
14009	req, err := http.NewRequest("GET", urls, body)
14010	if err != nil {
14011		return nil, err
14012	}
14013	req.Header = reqHeaders
14014	googleapi.Expand(req.URL, map[string]string{
14015		"merchantId": strconv.FormatUint(c.merchantId, 10),
14016	})
14017	return gensupport.SendRequest(c.ctx_, c.s.client, req)
14018}
14019
14020// Do executes the "content.accountstatuses.list" call.
14021// Exactly one of *AccountstatusesListResponse or error will be non-nil.
14022// Any non-2xx status code is an error. Response headers are in either
14023// *AccountstatusesListResponse.ServerResponse.Header or (if a response
14024// was returned at all) in error.(*googleapi.Error).Header. Use
14025// googleapi.IsNotModified to check whether the returned error was
14026// because http.StatusNotModified was returned.
14027func (c *AccountstatusesListCall) Do(opts ...googleapi.CallOption) (*AccountstatusesListResponse, error) {
14028	gensupport.SetOptions(c.urlParams_, opts...)
14029	res, err := c.doRequest("json")
14030	if res != nil && res.StatusCode == http.StatusNotModified {
14031		if res.Body != nil {
14032			res.Body.Close()
14033		}
14034		return nil, &googleapi.Error{
14035			Code:   res.StatusCode,
14036			Header: res.Header,
14037		}
14038	}
14039	if err != nil {
14040		return nil, err
14041	}
14042	defer googleapi.CloseBody(res)
14043	if err := googleapi.CheckResponse(res); err != nil {
14044		return nil, err
14045	}
14046	ret := &AccountstatusesListResponse{
14047		ServerResponse: googleapi.ServerResponse{
14048			Header:         res.Header,
14049			HTTPStatusCode: res.StatusCode,
14050		},
14051	}
14052	target := &ret
14053	if err := gensupport.DecodeResponse(target, res); err != nil {
14054		return nil, err
14055	}
14056	return ret, nil
14057	// {
14058	//   "description": "Lists the statuses of the sub-accounts in your Merchant Center account.",
14059	//   "flatPath": "{merchantId}/accountstatuses",
14060	//   "httpMethod": "GET",
14061	//   "id": "content.accountstatuses.list",
14062	//   "parameterOrder": [
14063	//     "merchantId"
14064	//   ],
14065	//   "parameters": {
14066	//     "destinations": {
14067	//       "description": "If set, only issues for the specified destinations are returned, otherwise only issues for the Shopping destination.",
14068	//       "location": "query",
14069	//       "repeated": true,
14070	//       "type": "string"
14071	//     },
14072	//     "maxResults": {
14073	//       "description": "The maximum number of account statuses to return in the response, used for paging.",
14074	//       "format": "uint32",
14075	//       "location": "query",
14076	//       "type": "integer"
14077	//     },
14078	//     "merchantId": {
14079	//       "description": "The ID of the managing account. This must be a multi-client account.",
14080	//       "format": "uint64",
14081	//       "location": "path",
14082	//       "required": true,
14083	//       "type": "string"
14084	//     },
14085	//     "pageToken": {
14086	//       "description": "The token returned by the previous request.",
14087	//       "location": "query",
14088	//       "type": "string"
14089	//     }
14090	//   },
14091	//   "path": "{merchantId}/accountstatuses",
14092	//   "response": {
14093	//     "$ref": "AccountstatusesListResponse"
14094	//   },
14095	//   "scopes": [
14096	//     "https://www.googleapis.com/auth/content"
14097	//   ]
14098	// }
14099
14100}
14101
14102// Pages invokes f for each page of results.
14103// A non-nil error returned from f will halt the iteration.
14104// The provided context supersedes any context provided to the Context method.
14105func (c *AccountstatusesListCall) Pages(ctx context.Context, f func(*AccountstatusesListResponse) error) error {
14106	c.ctx_ = ctx
14107	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
14108	for {
14109		x, err := c.Do()
14110		if err != nil {
14111			return err
14112		}
14113		if err := f(x); err != nil {
14114			return err
14115		}
14116		if x.NextPageToken == "" {
14117			return nil
14118		}
14119		c.PageToken(x.NextPageToken)
14120	}
14121}
14122
14123// method id "content.accounttax.custombatch":
14124
14125type AccounttaxCustombatchCall struct {
14126	s                            *APIService
14127	accounttaxcustombatchrequest *AccounttaxCustomBatchRequest
14128	urlParams_                   gensupport.URLParams
14129	ctx_                         context.Context
14130	header_                      http.Header
14131}
14132
14133// Custombatch: Retrieves and updates tax settings of multiple accounts
14134// in a single request.
14135func (r *AccounttaxService) Custombatch(accounttaxcustombatchrequest *AccounttaxCustomBatchRequest) *AccounttaxCustombatchCall {
14136	c := &AccounttaxCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
14137	c.accounttaxcustombatchrequest = accounttaxcustombatchrequest
14138	return c
14139}
14140
14141// DryRun sets the optional parameter "dryRun": Flag to simulate a
14142// request like in a live environment. If set to true, dry-run mode
14143// checks the validity of the request and returns errors (if any).
14144func (c *AccounttaxCustombatchCall) DryRun(dryRun bool) *AccounttaxCustombatchCall {
14145	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
14146	return c
14147}
14148
14149// Fields allows partial responses to be retrieved. See
14150// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
14151// for more information.
14152func (c *AccounttaxCustombatchCall) Fields(s ...googleapi.Field) *AccounttaxCustombatchCall {
14153	c.urlParams_.Set("fields", googleapi.CombineFields(s))
14154	return c
14155}
14156
14157// Context sets the context to be used in this call's Do method. Any
14158// pending HTTP request will be aborted if the provided context is
14159// canceled.
14160func (c *AccounttaxCustombatchCall) Context(ctx context.Context) *AccounttaxCustombatchCall {
14161	c.ctx_ = ctx
14162	return c
14163}
14164
14165// Header returns an http.Header that can be modified by the caller to
14166// add HTTP headers to the request.
14167func (c *AccounttaxCustombatchCall) Header() http.Header {
14168	if c.header_ == nil {
14169		c.header_ = make(http.Header)
14170	}
14171	return c.header_
14172}
14173
14174func (c *AccounttaxCustombatchCall) doRequest(alt string) (*http.Response, error) {
14175	reqHeaders := make(http.Header)
14176	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
14177	for k, v := range c.header_ {
14178		reqHeaders[k] = v
14179	}
14180	reqHeaders.Set("User-Agent", c.s.userAgent())
14181	var body io.Reader = nil
14182	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accounttaxcustombatchrequest)
14183	if err != nil {
14184		return nil, err
14185	}
14186	reqHeaders.Set("Content-Type", "application/json")
14187	c.urlParams_.Set("alt", alt)
14188	c.urlParams_.Set("prettyPrint", "false")
14189	urls := googleapi.ResolveRelative(c.s.BasePath, "accounttax/batch")
14190	urls += "?" + c.urlParams_.Encode()
14191	req, err := http.NewRequest("POST", urls, body)
14192	if err != nil {
14193		return nil, err
14194	}
14195	req.Header = reqHeaders
14196	return gensupport.SendRequest(c.ctx_, c.s.client, req)
14197}
14198
14199// Do executes the "content.accounttax.custombatch" call.
14200// Exactly one of *AccounttaxCustomBatchResponse or error will be
14201// non-nil. Any non-2xx status code is an error. Response headers are in
14202// either *AccounttaxCustomBatchResponse.ServerResponse.Header or (if a
14203// response was returned at all) in error.(*googleapi.Error).Header. Use
14204// googleapi.IsNotModified to check whether the returned error was
14205// because http.StatusNotModified was returned.
14206func (c *AccounttaxCustombatchCall) Do(opts ...googleapi.CallOption) (*AccounttaxCustomBatchResponse, error) {
14207	gensupport.SetOptions(c.urlParams_, opts...)
14208	res, err := c.doRequest("json")
14209	if res != nil && res.StatusCode == http.StatusNotModified {
14210		if res.Body != nil {
14211			res.Body.Close()
14212		}
14213		return nil, &googleapi.Error{
14214			Code:   res.StatusCode,
14215			Header: res.Header,
14216		}
14217	}
14218	if err != nil {
14219		return nil, err
14220	}
14221	defer googleapi.CloseBody(res)
14222	if err := googleapi.CheckResponse(res); err != nil {
14223		return nil, err
14224	}
14225	ret := &AccounttaxCustomBatchResponse{
14226		ServerResponse: googleapi.ServerResponse{
14227			Header:         res.Header,
14228			HTTPStatusCode: res.StatusCode,
14229		},
14230	}
14231	target := &ret
14232	if err := gensupport.DecodeResponse(target, res); err != nil {
14233		return nil, err
14234	}
14235	return ret, nil
14236	// {
14237	//   "description": "Retrieves and updates tax settings of multiple accounts in a single request.",
14238	//   "flatPath": "accounttax/batch",
14239	//   "httpMethod": "POST",
14240	//   "id": "content.accounttax.custombatch",
14241	//   "parameterOrder": [],
14242	//   "parameters": {
14243	//     "dryRun": {
14244	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
14245	//       "location": "query",
14246	//       "type": "boolean"
14247	//     }
14248	//   },
14249	//   "path": "accounttax/batch",
14250	//   "request": {
14251	//     "$ref": "AccounttaxCustomBatchRequest"
14252	//   },
14253	//   "response": {
14254	//     "$ref": "AccounttaxCustomBatchResponse"
14255	//   },
14256	//   "scopes": [
14257	//     "https://www.googleapis.com/auth/content"
14258	//   ]
14259	// }
14260
14261}
14262
14263// method id "content.accounttax.get":
14264
14265type AccounttaxGetCall struct {
14266	s            *APIService
14267	merchantId   uint64
14268	accountId    uint64
14269	urlParams_   gensupport.URLParams
14270	ifNoneMatch_ string
14271	ctx_         context.Context
14272	header_      http.Header
14273}
14274
14275// Get: Retrieves the tax settings of the account.
14276//
14277// - accountId: The ID of the account for which to get/update account
14278//   tax settings.
14279// - merchantId: The ID of the managing account. If this parameter is
14280//   not the same as accountId, then this account must be a multi-client
14281//   account and `accountId` must be the ID of a sub-account of this
14282//   account.
14283func (r *AccounttaxService) Get(merchantId uint64, accountId uint64) *AccounttaxGetCall {
14284	c := &AccounttaxGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
14285	c.merchantId = merchantId
14286	c.accountId = accountId
14287	return c
14288}
14289
14290// Fields allows partial responses to be retrieved. See
14291// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
14292// for more information.
14293func (c *AccounttaxGetCall) Fields(s ...googleapi.Field) *AccounttaxGetCall {
14294	c.urlParams_.Set("fields", googleapi.CombineFields(s))
14295	return c
14296}
14297
14298// IfNoneMatch sets the optional parameter which makes the operation
14299// fail if the object's ETag matches the given value. This is useful for
14300// getting updates only after the object has changed since the last
14301// request. Use googleapi.IsNotModified to check whether the response
14302// error from Do is the result of In-None-Match.
14303func (c *AccounttaxGetCall) IfNoneMatch(entityTag string) *AccounttaxGetCall {
14304	c.ifNoneMatch_ = entityTag
14305	return c
14306}
14307
14308// Context sets the context to be used in this call's Do method. Any
14309// pending HTTP request will be aborted if the provided context is
14310// canceled.
14311func (c *AccounttaxGetCall) Context(ctx context.Context) *AccounttaxGetCall {
14312	c.ctx_ = ctx
14313	return c
14314}
14315
14316// Header returns an http.Header that can be modified by the caller to
14317// add HTTP headers to the request.
14318func (c *AccounttaxGetCall) Header() http.Header {
14319	if c.header_ == nil {
14320		c.header_ = make(http.Header)
14321	}
14322	return c.header_
14323}
14324
14325func (c *AccounttaxGetCall) doRequest(alt string) (*http.Response, error) {
14326	reqHeaders := make(http.Header)
14327	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
14328	for k, v := range c.header_ {
14329		reqHeaders[k] = v
14330	}
14331	reqHeaders.Set("User-Agent", c.s.userAgent())
14332	if c.ifNoneMatch_ != "" {
14333		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
14334	}
14335	var body io.Reader = nil
14336	c.urlParams_.Set("alt", alt)
14337	c.urlParams_.Set("prettyPrint", "false")
14338	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounttax/{accountId}")
14339	urls += "?" + c.urlParams_.Encode()
14340	req, err := http.NewRequest("GET", urls, body)
14341	if err != nil {
14342		return nil, err
14343	}
14344	req.Header = reqHeaders
14345	googleapi.Expand(req.URL, map[string]string{
14346		"merchantId": strconv.FormatUint(c.merchantId, 10),
14347		"accountId":  strconv.FormatUint(c.accountId, 10),
14348	})
14349	return gensupport.SendRequest(c.ctx_, c.s.client, req)
14350}
14351
14352// Do executes the "content.accounttax.get" call.
14353// Exactly one of *AccountTax or error will be non-nil. Any non-2xx
14354// status code is an error. Response headers are in either
14355// *AccountTax.ServerResponse.Header or (if a response was returned at
14356// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
14357// to check whether the returned error was because
14358// http.StatusNotModified was returned.
14359func (c *AccounttaxGetCall) Do(opts ...googleapi.CallOption) (*AccountTax, error) {
14360	gensupport.SetOptions(c.urlParams_, opts...)
14361	res, err := c.doRequest("json")
14362	if res != nil && res.StatusCode == http.StatusNotModified {
14363		if res.Body != nil {
14364			res.Body.Close()
14365		}
14366		return nil, &googleapi.Error{
14367			Code:   res.StatusCode,
14368			Header: res.Header,
14369		}
14370	}
14371	if err != nil {
14372		return nil, err
14373	}
14374	defer googleapi.CloseBody(res)
14375	if err := googleapi.CheckResponse(res); err != nil {
14376		return nil, err
14377	}
14378	ret := &AccountTax{
14379		ServerResponse: googleapi.ServerResponse{
14380			Header:         res.Header,
14381			HTTPStatusCode: res.StatusCode,
14382		},
14383	}
14384	target := &ret
14385	if err := gensupport.DecodeResponse(target, res); err != nil {
14386		return nil, err
14387	}
14388	return ret, nil
14389	// {
14390	//   "description": "Retrieves the tax settings of the account.",
14391	//   "flatPath": "{merchantId}/accounttax/{accountId}",
14392	//   "httpMethod": "GET",
14393	//   "id": "content.accounttax.get",
14394	//   "parameterOrder": [
14395	//     "merchantId",
14396	//     "accountId"
14397	//   ],
14398	//   "parameters": {
14399	//     "accountId": {
14400	//       "description": "The ID of the account for which to get/update account tax settings.",
14401	//       "format": "uint64",
14402	//       "location": "path",
14403	//       "required": true,
14404	//       "type": "string"
14405	//     },
14406	//     "merchantId": {
14407	//       "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.",
14408	//       "format": "uint64",
14409	//       "location": "path",
14410	//       "required": true,
14411	//       "type": "string"
14412	//     }
14413	//   },
14414	//   "path": "{merchantId}/accounttax/{accountId}",
14415	//   "response": {
14416	//     "$ref": "AccountTax"
14417	//   },
14418	//   "scopes": [
14419	//     "https://www.googleapis.com/auth/content"
14420	//   ]
14421	// }
14422
14423}
14424
14425// method id "content.accounttax.list":
14426
14427type AccounttaxListCall struct {
14428	s            *APIService
14429	merchantId   uint64
14430	urlParams_   gensupport.URLParams
14431	ifNoneMatch_ string
14432	ctx_         context.Context
14433	header_      http.Header
14434}
14435
14436// List: Lists the tax settings of the sub-accounts in your Merchant
14437// Center account.
14438//
14439// - merchantId: The ID of the managing account. This must be a
14440//   multi-client account.
14441func (r *AccounttaxService) List(merchantId uint64) *AccounttaxListCall {
14442	c := &AccounttaxListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
14443	c.merchantId = merchantId
14444	return c
14445}
14446
14447// MaxResults sets the optional parameter "maxResults": The maximum
14448// number of tax settings to return in the response, used for paging.
14449func (c *AccounttaxListCall) MaxResults(maxResults int64) *AccounttaxListCall {
14450	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
14451	return c
14452}
14453
14454// PageToken sets the optional parameter "pageToken": The token returned
14455// by the previous request.
14456func (c *AccounttaxListCall) PageToken(pageToken string) *AccounttaxListCall {
14457	c.urlParams_.Set("pageToken", pageToken)
14458	return c
14459}
14460
14461// Fields allows partial responses to be retrieved. See
14462// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
14463// for more information.
14464func (c *AccounttaxListCall) Fields(s ...googleapi.Field) *AccounttaxListCall {
14465	c.urlParams_.Set("fields", googleapi.CombineFields(s))
14466	return c
14467}
14468
14469// IfNoneMatch sets the optional parameter which makes the operation
14470// fail if the object's ETag matches the given value. This is useful for
14471// getting updates only after the object has changed since the last
14472// request. Use googleapi.IsNotModified to check whether the response
14473// error from Do is the result of In-None-Match.
14474func (c *AccounttaxListCall) IfNoneMatch(entityTag string) *AccounttaxListCall {
14475	c.ifNoneMatch_ = entityTag
14476	return c
14477}
14478
14479// Context sets the context to be used in this call's Do method. Any
14480// pending HTTP request will be aborted if the provided context is
14481// canceled.
14482func (c *AccounttaxListCall) Context(ctx context.Context) *AccounttaxListCall {
14483	c.ctx_ = ctx
14484	return c
14485}
14486
14487// Header returns an http.Header that can be modified by the caller to
14488// add HTTP headers to the request.
14489func (c *AccounttaxListCall) Header() http.Header {
14490	if c.header_ == nil {
14491		c.header_ = make(http.Header)
14492	}
14493	return c.header_
14494}
14495
14496func (c *AccounttaxListCall) doRequest(alt string) (*http.Response, error) {
14497	reqHeaders := make(http.Header)
14498	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
14499	for k, v := range c.header_ {
14500		reqHeaders[k] = v
14501	}
14502	reqHeaders.Set("User-Agent", c.s.userAgent())
14503	if c.ifNoneMatch_ != "" {
14504		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
14505	}
14506	var body io.Reader = nil
14507	c.urlParams_.Set("alt", alt)
14508	c.urlParams_.Set("prettyPrint", "false")
14509	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounttax")
14510	urls += "?" + c.urlParams_.Encode()
14511	req, err := http.NewRequest("GET", urls, body)
14512	if err != nil {
14513		return nil, err
14514	}
14515	req.Header = reqHeaders
14516	googleapi.Expand(req.URL, map[string]string{
14517		"merchantId": strconv.FormatUint(c.merchantId, 10),
14518	})
14519	return gensupport.SendRequest(c.ctx_, c.s.client, req)
14520}
14521
14522// Do executes the "content.accounttax.list" call.
14523// Exactly one of *AccounttaxListResponse or error will be non-nil. Any
14524// non-2xx status code is an error. Response headers are in either
14525// *AccounttaxListResponse.ServerResponse.Header or (if a response was
14526// returned at all) in error.(*googleapi.Error).Header. Use
14527// googleapi.IsNotModified to check whether the returned error was
14528// because http.StatusNotModified was returned.
14529func (c *AccounttaxListCall) Do(opts ...googleapi.CallOption) (*AccounttaxListResponse, error) {
14530	gensupport.SetOptions(c.urlParams_, opts...)
14531	res, err := c.doRequest("json")
14532	if res != nil && res.StatusCode == http.StatusNotModified {
14533		if res.Body != nil {
14534			res.Body.Close()
14535		}
14536		return nil, &googleapi.Error{
14537			Code:   res.StatusCode,
14538			Header: res.Header,
14539		}
14540	}
14541	if err != nil {
14542		return nil, err
14543	}
14544	defer googleapi.CloseBody(res)
14545	if err := googleapi.CheckResponse(res); err != nil {
14546		return nil, err
14547	}
14548	ret := &AccounttaxListResponse{
14549		ServerResponse: googleapi.ServerResponse{
14550			Header:         res.Header,
14551			HTTPStatusCode: res.StatusCode,
14552		},
14553	}
14554	target := &ret
14555	if err := gensupport.DecodeResponse(target, res); err != nil {
14556		return nil, err
14557	}
14558	return ret, nil
14559	// {
14560	//   "description": "Lists the tax settings of the sub-accounts in your Merchant Center account.",
14561	//   "flatPath": "{merchantId}/accounttax",
14562	//   "httpMethod": "GET",
14563	//   "id": "content.accounttax.list",
14564	//   "parameterOrder": [
14565	//     "merchantId"
14566	//   ],
14567	//   "parameters": {
14568	//     "maxResults": {
14569	//       "description": "The maximum number of tax settings to return in the response, used for paging.",
14570	//       "format": "uint32",
14571	//       "location": "query",
14572	//       "type": "integer"
14573	//     },
14574	//     "merchantId": {
14575	//       "description": "The ID of the managing account. This must be a multi-client account.",
14576	//       "format": "uint64",
14577	//       "location": "path",
14578	//       "required": true,
14579	//       "type": "string"
14580	//     },
14581	//     "pageToken": {
14582	//       "description": "The token returned by the previous request.",
14583	//       "location": "query",
14584	//       "type": "string"
14585	//     }
14586	//   },
14587	//   "path": "{merchantId}/accounttax",
14588	//   "response": {
14589	//     "$ref": "AccounttaxListResponse"
14590	//   },
14591	//   "scopes": [
14592	//     "https://www.googleapis.com/auth/content"
14593	//   ]
14594	// }
14595
14596}
14597
14598// Pages invokes f for each page of results.
14599// A non-nil error returned from f will halt the iteration.
14600// The provided context supersedes any context provided to the Context method.
14601func (c *AccounttaxListCall) Pages(ctx context.Context, f func(*AccounttaxListResponse) error) error {
14602	c.ctx_ = ctx
14603	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
14604	for {
14605		x, err := c.Do()
14606		if err != nil {
14607			return err
14608		}
14609		if err := f(x); err != nil {
14610			return err
14611		}
14612		if x.NextPageToken == "" {
14613			return nil
14614		}
14615		c.PageToken(x.NextPageToken)
14616	}
14617}
14618
14619// method id "content.accounttax.update":
14620
14621type AccounttaxUpdateCall struct {
14622	s          *APIService
14623	merchantId uint64
14624	accountId  uint64
14625	accounttax *AccountTax
14626	urlParams_ gensupport.URLParams
14627	ctx_       context.Context
14628	header_    http.Header
14629}
14630
14631// Update: Updates the tax settings of the account. Any fields that are
14632// not provided are deleted from the resource.
14633//
14634// - accountId: The ID of the account for which to get/update account
14635//   tax settings.
14636// - merchantId: The ID of the managing account. If this parameter is
14637//   not the same as accountId, then this account must be a multi-client
14638//   account and `accountId` must be the ID of a sub-account of this
14639//   account.
14640func (r *AccounttaxService) Update(merchantId uint64, accountId uint64, accounttax *AccountTax) *AccounttaxUpdateCall {
14641	c := &AccounttaxUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
14642	c.merchantId = merchantId
14643	c.accountId = accountId
14644	c.accounttax = accounttax
14645	return c
14646}
14647
14648// DryRun sets the optional parameter "dryRun": Flag to simulate a
14649// request like in a live environment. If set to true, dry-run mode
14650// checks the validity of the request and returns errors (if any).
14651func (c *AccounttaxUpdateCall) DryRun(dryRun bool) *AccounttaxUpdateCall {
14652	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
14653	return c
14654}
14655
14656// Fields allows partial responses to be retrieved. See
14657// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
14658// for more information.
14659func (c *AccounttaxUpdateCall) Fields(s ...googleapi.Field) *AccounttaxUpdateCall {
14660	c.urlParams_.Set("fields", googleapi.CombineFields(s))
14661	return c
14662}
14663
14664// Context sets the context to be used in this call's Do method. Any
14665// pending HTTP request will be aborted if the provided context is
14666// canceled.
14667func (c *AccounttaxUpdateCall) Context(ctx context.Context) *AccounttaxUpdateCall {
14668	c.ctx_ = ctx
14669	return c
14670}
14671
14672// Header returns an http.Header that can be modified by the caller to
14673// add HTTP headers to the request.
14674func (c *AccounttaxUpdateCall) Header() http.Header {
14675	if c.header_ == nil {
14676		c.header_ = make(http.Header)
14677	}
14678	return c.header_
14679}
14680
14681func (c *AccounttaxUpdateCall) doRequest(alt string) (*http.Response, error) {
14682	reqHeaders := make(http.Header)
14683	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
14684	for k, v := range c.header_ {
14685		reqHeaders[k] = v
14686	}
14687	reqHeaders.Set("User-Agent", c.s.userAgent())
14688	var body io.Reader = nil
14689	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accounttax)
14690	if err != nil {
14691		return nil, err
14692	}
14693	reqHeaders.Set("Content-Type", "application/json")
14694	c.urlParams_.Set("alt", alt)
14695	c.urlParams_.Set("prettyPrint", "false")
14696	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounttax/{accountId}")
14697	urls += "?" + c.urlParams_.Encode()
14698	req, err := http.NewRequest("PUT", urls, body)
14699	if err != nil {
14700		return nil, err
14701	}
14702	req.Header = reqHeaders
14703	googleapi.Expand(req.URL, map[string]string{
14704		"merchantId": strconv.FormatUint(c.merchantId, 10),
14705		"accountId":  strconv.FormatUint(c.accountId, 10),
14706	})
14707	return gensupport.SendRequest(c.ctx_, c.s.client, req)
14708}
14709
14710// Do executes the "content.accounttax.update" call.
14711// Exactly one of *AccountTax or error will be non-nil. Any non-2xx
14712// status code is an error. Response headers are in either
14713// *AccountTax.ServerResponse.Header or (if a response was returned at
14714// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
14715// to check whether the returned error was because
14716// http.StatusNotModified was returned.
14717func (c *AccounttaxUpdateCall) Do(opts ...googleapi.CallOption) (*AccountTax, error) {
14718	gensupport.SetOptions(c.urlParams_, opts...)
14719	res, err := c.doRequest("json")
14720	if res != nil && res.StatusCode == http.StatusNotModified {
14721		if res.Body != nil {
14722			res.Body.Close()
14723		}
14724		return nil, &googleapi.Error{
14725			Code:   res.StatusCode,
14726			Header: res.Header,
14727		}
14728	}
14729	if err != nil {
14730		return nil, err
14731	}
14732	defer googleapi.CloseBody(res)
14733	if err := googleapi.CheckResponse(res); err != nil {
14734		return nil, err
14735	}
14736	ret := &AccountTax{
14737		ServerResponse: googleapi.ServerResponse{
14738			Header:         res.Header,
14739			HTTPStatusCode: res.StatusCode,
14740		},
14741	}
14742	target := &ret
14743	if err := gensupport.DecodeResponse(target, res); err != nil {
14744		return nil, err
14745	}
14746	return ret, nil
14747	// {
14748	//   "description": "Updates the tax settings of the account. Any fields that are not provided are deleted from the resource.",
14749	//   "flatPath": "{merchantId}/accounttax/{accountId}",
14750	//   "httpMethod": "PUT",
14751	//   "id": "content.accounttax.update",
14752	//   "parameterOrder": [
14753	//     "merchantId",
14754	//     "accountId"
14755	//   ],
14756	//   "parameters": {
14757	//     "accountId": {
14758	//       "description": "The ID of the account for which to get/update account tax settings.",
14759	//       "format": "uint64",
14760	//       "location": "path",
14761	//       "required": true,
14762	//       "type": "string"
14763	//     },
14764	//     "dryRun": {
14765	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
14766	//       "location": "query",
14767	//       "type": "boolean"
14768	//     },
14769	//     "merchantId": {
14770	//       "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.",
14771	//       "format": "uint64",
14772	//       "location": "path",
14773	//       "required": true,
14774	//       "type": "string"
14775	//     }
14776	//   },
14777	//   "path": "{merchantId}/accounttax/{accountId}",
14778	//   "request": {
14779	//     "$ref": "AccountTax"
14780	//   },
14781	//   "response": {
14782	//     "$ref": "AccountTax"
14783	//   },
14784	//   "scopes": [
14785	//     "https://www.googleapis.com/auth/content"
14786	//   ]
14787	// }
14788
14789}
14790
14791// method id "content.datafeeds.custombatch":
14792
14793type DatafeedsCustombatchCall struct {
14794	s                           *APIService
14795	datafeedscustombatchrequest *DatafeedsCustomBatchRequest
14796	urlParams_                  gensupport.URLParams
14797	ctx_                        context.Context
14798	header_                     http.Header
14799}
14800
14801// Custombatch: Deletes, fetches, gets, inserts and updates multiple
14802// datafeeds in a single request.
14803func (r *DatafeedsService) Custombatch(datafeedscustombatchrequest *DatafeedsCustomBatchRequest) *DatafeedsCustombatchCall {
14804	c := &DatafeedsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
14805	c.datafeedscustombatchrequest = datafeedscustombatchrequest
14806	return c
14807}
14808
14809// DryRun sets the optional parameter "dryRun": Flag to simulate a
14810// request like in a live environment. If set to true, dry-run mode
14811// checks the validity of the request and returns errors (if any).
14812func (c *DatafeedsCustombatchCall) DryRun(dryRun bool) *DatafeedsCustombatchCall {
14813	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
14814	return c
14815}
14816
14817// Fields allows partial responses to be retrieved. See
14818// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
14819// for more information.
14820func (c *DatafeedsCustombatchCall) Fields(s ...googleapi.Field) *DatafeedsCustombatchCall {
14821	c.urlParams_.Set("fields", googleapi.CombineFields(s))
14822	return c
14823}
14824
14825// Context sets the context to be used in this call's Do method. Any
14826// pending HTTP request will be aborted if the provided context is
14827// canceled.
14828func (c *DatafeedsCustombatchCall) Context(ctx context.Context) *DatafeedsCustombatchCall {
14829	c.ctx_ = ctx
14830	return c
14831}
14832
14833// Header returns an http.Header that can be modified by the caller to
14834// add HTTP headers to the request.
14835func (c *DatafeedsCustombatchCall) Header() http.Header {
14836	if c.header_ == nil {
14837		c.header_ = make(http.Header)
14838	}
14839	return c.header_
14840}
14841
14842func (c *DatafeedsCustombatchCall) doRequest(alt string) (*http.Response, error) {
14843	reqHeaders := make(http.Header)
14844	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
14845	for k, v := range c.header_ {
14846		reqHeaders[k] = v
14847	}
14848	reqHeaders.Set("User-Agent", c.s.userAgent())
14849	var body io.Reader = nil
14850	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeedscustombatchrequest)
14851	if err != nil {
14852		return nil, err
14853	}
14854	reqHeaders.Set("Content-Type", "application/json")
14855	c.urlParams_.Set("alt", alt)
14856	c.urlParams_.Set("prettyPrint", "false")
14857	urls := googleapi.ResolveRelative(c.s.BasePath, "datafeeds/batch")
14858	urls += "?" + c.urlParams_.Encode()
14859	req, err := http.NewRequest("POST", urls, body)
14860	if err != nil {
14861		return nil, err
14862	}
14863	req.Header = reqHeaders
14864	return gensupport.SendRequest(c.ctx_, c.s.client, req)
14865}
14866
14867// Do executes the "content.datafeeds.custombatch" call.
14868// Exactly one of *DatafeedsCustomBatchResponse or error will be
14869// non-nil. Any non-2xx status code is an error. Response headers are in
14870// either *DatafeedsCustomBatchResponse.ServerResponse.Header or (if a
14871// response was returned at all) in error.(*googleapi.Error).Header. Use
14872// googleapi.IsNotModified to check whether the returned error was
14873// because http.StatusNotModified was returned.
14874func (c *DatafeedsCustombatchCall) Do(opts ...googleapi.CallOption) (*DatafeedsCustomBatchResponse, error) {
14875	gensupport.SetOptions(c.urlParams_, opts...)
14876	res, err := c.doRequest("json")
14877	if res != nil && res.StatusCode == http.StatusNotModified {
14878		if res.Body != nil {
14879			res.Body.Close()
14880		}
14881		return nil, &googleapi.Error{
14882			Code:   res.StatusCode,
14883			Header: res.Header,
14884		}
14885	}
14886	if err != nil {
14887		return nil, err
14888	}
14889	defer googleapi.CloseBody(res)
14890	if err := googleapi.CheckResponse(res); err != nil {
14891		return nil, err
14892	}
14893	ret := &DatafeedsCustomBatchResponse{
14894		ServerResponse: googleapi.ServerResponse{
14895			Header:         res.Header,
14896			HTTPStatusCode: res.StatusCode,
14897		},
14898	}
14899	target := &ret
14900	if err := gensupport.DecodeResponse(target, res); err != nil {
14901		return nil, err
14902	}
14903	return ret, nil
14904	// {
14905	//   "description": "Deletes, fetches, gets, inserts and updates multiple datafeeds in a single request.",
14906	//   "flatPath": "datafeeds/batch",
14907	//   "httpMethod": "POST",
14908	//   "id": "content.datafeeds.custombatch",
14909	//   "parameterOrder": [],
14910	//   "parameters": {
14911	//     "dryRun": {
14912	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
14913	//       "location": "query",
14914	//       "type": "boolean"
14915	//     }
14916	//   },
14917	//   "path": "datafeeds/batch",
14918	//   "request": {
14919	//     "$ref": "DatafeedsCustomBatchRequest"
14920	//   },
14921	//   "response": {
14922	//     "$ref": "DatafeedsCustomBatchResponse"
14923	//   },
14924	//   "scopes": [
14925	//     "https://www.googleapis.com/auth/content"
14926	//   ]
14927	// }
14928
14929}
14930
14931// method id "content.datafeeds.delete":
14932
14933type DatafeedsDeleteCall struct {
14934	s          *APIService
14935	merchantId uint64
14936	datafeedId uint64
14937	urlParams_ gensupport.URLParams
14938	ctx_       context.Context
14939	header_    http.Header
14940}
14941
14942// Delete: Deletes a datafeed configuration from your Merchant Center
14943// account.
14944//
14945// - datafeedId: The ID of the datafeed.
14946// - merchantId: The ID of the account that manages the datafeed. This
14947//   account cannot be a multi-client account.
14948func (r *DatafeedsService) Delete(merchantId uint64, datafeedId uint64) *DatafeedsDeleteCall {
14949	c := &DatafeedsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
14950	c.merchantId = merchantId
14951	c.datafeedId = datafeedId
14952	return c
14953}
14954
14955// DryRun sets the optional parameter "dryRun": Flag to simulate a
14956// request like in a live environment. If set to true, dry-run mode
14957// checks the validity of the request and returns errors (if any).
14958func (c *DatafeedsDeleteCall) DryRun(dryRun bool) *DatafeedsDeleteCall {
14959	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
14960	return c
14961}
14962
14963// Fields allows partial responses to be retrieved. See
14964// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
14965// for more information.
14966func (c *DatafeedsDeleteCall) Fields(s ...googleapi.Field) *DatafeedsDeleteCall {
14967	c.urlParams_.Set("fields", googleapi.CombineFields(s))
14968	return c
14969}
14970
14971// Context sets the context to be used in this call's Do method. Any
14972// pending HTTP request will be aborted if the provided context is
14973// canceled.
14974func (c *DatafeedsDeleteCall) Context(ctx context.Context) *DatafeedsDeleteCall {
14975	c.ctx_ = ctx
14976	return c
14977}
14978
14979// Header returns an http.Header that can be modified by the caller to
14980// add HTTP headers to the request.
14981func (c *DatafeedsDeleteCall) Header() http.Header {
14982	if c.header_ == nil {
14983		c.header_ = make(http.Header)
14984	}
14985	return c.header_
14986}
14987
14988func (c *DatafeedsDeleteCall) doRequest(alt string) (*http.Response, error) {
14989	reqHeaders := make(http.Header)
14990	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
14991	for k, v := range c.header_ {
14992		reqHeaders[k] = v
14993	}
14994	reqHeaders.Set("User-Agent", c.s.userAgent())
14995	var body io.Reader = nil
14996	c.urlParams_.Set("alt", alt)
14997	c.urlParams_.Set("prettyPrint", "false")
14998	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds/{datafeedId}")
14999	urls += "?" + c.urlParams_.Encode()
15000	req, err := http.NewRequest("DELETE", urls, body)
15001	if err != nil {
15002		return nil, err
15003	}
15004	req.Header = reqHeaders
15005	googleapi.Expand(req.URL, map[string]string{
15006		"merchantId": strconv.FormatUint(c.merchantId, 10),
15007		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
15008	})
15009	return gensupport.SendRequest(c.ctx_, c.s.client, req)
15010}
15011
15012// Do executes the "content.datafeeds.delete" call.
15013func (c *DatafeedsDeleteCall) Do(opts ...googleapi.CallOption) error {
15014	gensupport.SetOptions(c.urlParams_, opts...)
15015	res, err := c.doRequest("json")
15016	if err != nil {
15017		return err
15018	}
15019	defer googleapi.CloseBody(res)
15020	if err := googleapi.CheckResponse(res); err != nil {
15021		return err
15022	}
15023	return nil
15024	// {
15025	//   "description": "Deletes a datafeed configuration from your Merchant Center account.",
15026	//   "flatPath": "{merchantId}/datafeeds/{datafeedId}",
15027	//   "httpMethod": "DELETE",
15028	//   "id": "content.datafeeds.delete",
15029	//   "parameterOrder": [
15030	//     "merchantId",
15031	//     "datafeedId"
15032	//   ],
15033	//   "parameters": {
15034	//     "datafeedId": {
15035	//       "description": "The ID of the datafeed.",
15036	//       "format": "uint64",
15037	//       "location": "path",
15038	//       "required": true,
15039	//       "type": "string"
15040	//     },
15041	//     "dryRun": {
15042	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
15043	//       "location": "query",
15044	//       "type": "boolean"
15045	//     },
15046	//     "merchantId": {
15047	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
15048	//       "format": "uint64",
15049	//       "location": "path",
15050	//       "required": true,
15051	//       "type": "string"
15052	//     }
15053	//   },
15054	//   "path": "{merchantId}/datafeeds/{datafeedId}",
15055	//   "scopes": [
15056	//     "https://www.googleapis.com/auth/content"
15057	//   ]
15058	// }
15059
15060}
15061
15062// method id "content.datafeeds.fetchnow":
15063
15064type DatafeedsFetchnowCall struct {
15065	s          *APIService
15066	merchantId uint64
15067	datafeedId uint64
15068	urlParams_ gensupport.URLParams
15069	ctx_       context.Context
15070	header_    http.Header
15071}
15072
15073// Fetchnow: Invokes a fetch for the datafeed in your Merchant Center
15074// account. If you need to call this method more than once per day, we
15075// recommend you use the Products service to update your product data.
15076//
15077// - datafeedId: The ID of the datafeed to be fetched.
15078// - merchantId: The ID of the account that manages the datafeed. This
15079//   account cannot be a multi-client account.
15080func (r *DatafeedsService) Fetchnow(merchantId uint64, datafeedId uint64) *DatafeedsFetchnowCall {
15081	c := &DatafeedsFetchnowCall{s: r.s, urlParams_: make(gensupport.URLParams)}
15082	c.merchantId = merchantId
15083	c.datafeedId = datafeedId
15084	return c
15085}
15086
15087// DryRun sets the optional parameter "dryRun": Flag to simulate a
15088// request like in a live environment. If set to true, dry-run mode
15089// checks the validity of the request and returns errors (if any).
15090func (c *DatafeedsFetchnowCall) DryRun(dryRun bool) *DatafeedsFetchnowCall {
15091	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
15092	return c
15093}
15094
15095// Fields allows partial responses to be retrieved. See
15096// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
15097// for more information.
15098func (c *DatafeedsFetchnowCall) Fields(s ...googleapi.Field) *DatafeedsFetchnowCall {
15099	c.urlParams_.Set("fields", googleapi.CombineFields(s))
15100	return c
15101}
15102
15103// Context sets the context to be used in this call's Do method. Any
15104// pending HTTP request will be aborted if the provided context is
15105// canceled.
15106func (c *DatafeedsFetchnowCall) Context(ctx context.Context) *DatafeedsFetchnowCall {
15107	c.ctx_ = ctx
15108	return c
15109}
15110
15111// Header returns an http.Header that can be modified by the caller to
15112// add HTTP headers to the request.
15113func (c *DatafeedsFetchnowCall) Header() http.Header {
15114	if c.header_ == nil {
15115		c.header_ = make(http.Header)
15116	}
15117	return c.header_
15118}
15119
15120func (c *DatafeedsFetchnowCall) doRequest(alt string) (*http.Response, error) {
15121	reqHeaders := make(http.Header)
15122	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
15123	for k, v := range c.header_ {
15124		reqHeaders[k] = v
15125	}
15126	reqHeaders.Set("User-Agent", c.s.userAgent())
15127	var body io.Reader = nil
15128	c.urlParams_.Set("alt", alt)
15129	c.urlParams_.Set("prettyPrint", "false")
15130	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds/{datafeedId}/fetchNow")
15131	urls += "?" + c.urlParams_.Encode()
15132	req, err := http.NewRequest("POST", urls, body)
15133	if err != nil {
15134		return nil, err
15135	}
15136	req.Header = reqHeaders
15137	googleapi.Expand(req.URL, map[string]string{
15138		"merchantId": strconv.FormatUint(c.merchantId, 10),
15139		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
15140	})
15141	return gensupport.SendRequest(c.ctx_, c.s.client, req)
15142}
15143
15144// Do executes the "content.datafeeds.fetchnow" call.
15145// Exactly one of *DatafeedsFetchNowResponse or error will be non-nil.
15146// Any non-2xx status code is an error. Response headers are in either
15147// *DatafeedsFetchNowResponse.ServerResponse.Header or (if a response
15148// was returned at all) in error.(*googleapi.Error).Header. Use
15149// googleapi.IsNotModified to check whether the returned error was
15150// because http.StatusNotModified was returned.
15151func (c *DatafeedsFetchnowCall) Do(opts ...googleapi.CallOption) (*DatafeedsFetchNowResponse, error) {
15152	gensupport.SetOptions(c.urlParams_, opts...)
15153	res, err := c.doRequest("json")
15154	if res != nil && res.StatusCode == http.StatusNotModified {
15155		if res.Body != nil {
15156			res.Body.Close()
15157		}
15158		return nil, &googleapi.Error{
15159			Code:   res.StatusCode,
15160			Header: res.Header,
15161		}
15162	}
15163	if err != nil {
15164		return nil, err
15165	}
15166	defer googleapi.CloseBody(res)
15167	if err := googleapi.CheckResponse(res); err != nil {
15168		return nil, err
15169	}
15170	ret := &DatafeedsFetchNowResponse{
15171		ServerResponse: googleapi.ServerResponse{
15172			Header:         res.Header,
15173			HTTPStatusCode: res.StatusCode,
15174		},
15175	}
15176	target := &ret
15177	if err := gensupport.DecodeResponse(target, res); err != nil {
15178		return nil, err
15179	}
15180	return ret, nil
15181	// {
15182	//   "description": "Invokes a fetch for the datafeed in your Merchant Center account. If you need to call this method more than once per day, we recommend you use the Products service to update your product data.",
15183	//   "flatPath": "{merchantId}/datafeeds/{datafeedId}/fetchNow",
15184	//   "httpMethod": "POST",
15185	//   "id": "content.datafeeds.fetchnow",
15186	//   "parameterOrder": [
15187	//     "merchantId",
15188	//     "datafeedId"
15189	//   ],
15190	//   "parameters": {
15191	//     "datafeedId": {
15192	//       "description": "The ID of the datafeed to be fetched.",
15193	//       "format": "uint64",
15194	//       "location": "path",
15195	//       "required": true,
15196	//       "type": "string"
15197	//     },
15198	//     "dryRun": {
15199	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
15200	//       "location": "query",
15201	//       "type": "boolean"
15202	//     },
15203	//     "merchantId": {
15204	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
15205	//       "format": "uint64",
15206	//       "location": "path",
15207	//       "required": true,
15208	//       "type": "string"
15209	//     }
15210	//   },
15211	//   "path": "{merchantId}/datafeeds/{datafeedId}/fetchNow",
15212	//   "response": {
15213	//     "$ref": "DatafeedsFetchNowResponse"
15214	//   },
15215	//   "scopes": [
15216	//     "https://www.googleapis.com/auth/content"
15217	//   ]
15218	// }
15219
15220}
15221
15222// method id "content.datafeeds.get":
15223
15224type DatafeedsGetCall struct {
15225	s            *APIService
15226	merchantId   uint64
15227	datafeedId   uint64
15228	urlParams_   gensupport.URLParams
15229	ifNoneMatch_ string
15230	ctx_         context.Context
15231	header_      http.Header
15232}
15233
15234// Get: Retrieves a datafeed configuration from your Merchant Center
15235// account.
15236//
15237// - datafeedId: The ID of the datafeed.
15238// - merchantId: The ID of the account that manages the datafeed. This
15239//   account cannot be a multi-client account.
15240func (r *DatafeedsService) Get(merchantId uint64, datafeedId uint64) *DatafeedsGetCall {
15241	c := &DatafeedsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
15242	c.merchantId = merchantId
15243	c.datafeedId = datafeedId
15244	return c
15245}
15246
15247// Fields allows partial responses to be retrieved. See
15248// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
15249// for more information.
15250func (c *DatafeedsGetCall) Fields(s ...googleapi.Field) *DatafeedsGetCall {
15251	c.urlParams_.Set("fields", googleapi.CombineFields(s))
15252	return c
15253}
15254
15255// IfNoneMatch sets the optional parameter which makes the operation
15256// fail if the object's ETag matches the given value. This is useful for
15257// getting updates only after the object has changed since the last
15258// request. Use googleapi.IsNotModified to check whether the response
15259// error from Do is the result of In-None-Match.
15260func (c *DatafeedsGetCall) IfNoneMatch(entityTag string) *DatafeedsGetCall {
15261	c.ifNoneMatch_ = entityTag
15262	return c
15263}
15264
15265// Context sets the context to be used in this call's Do method. Any
15266// pending HTTP request will be aborted if the provided context is
15267// canceled.
15268func (c *DatafeedsGetCall) Context(ctx context.Context) *DatafeedsGetCall {
15269	c.ctx_ = ctx
15270	return c
15271}
15272
15273// Header returns an http.Header that can be modified by the caller to
15274// add HTTP headers to the request.
15275func (c *DatafeedsGetCall) Header() http.Header {
15276	if c.header_ == nil {
15277		c.header_ = make(http.Header)
15278	}
15279	return c.header_
15280}
15281
15282func (c *DatafeedsGetCall) doRequest(alt string) (*http.Response, error) {
15283	reqHeaders := make(http.Header)
15284	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
15285	for k, v := range c.header_ {
15286		reqHeaders[k] = v
15287	}
15288	reqHeaders.Set("User-Agent", c.s.userAgent())
15289	if c.ifNoneMatch_ != "" {
15290		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
15291	}
15292	var body io.Reader = nil
15293	c.urlParams_.Set("alt", alt)
15294	c.urlParams_.Set("prettyPrint", "false")
15295	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds/{datafeedId}")
15296	urls += "?" + c.urlParams_.Encode()
15297	req, err := http.NewRequest("GET", urls, body)
15298	if err != nil {
15299		return nil, err
15300	}
15301	req.Header = reqHeaders
15302	googleapi.Expand(req.URL, map[string]string{
15303		"merchantId": strconv.FormatUint(c.merchantId, 10),
15304		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
15305	})
15306	return gensupport.SendRequest(c.ctx_, c.s.client, req)
15307}
15308
15309// Do executes the "content.datafeeds.get" call.
15310// Exactly one of *Datafeed or error will be non-nil. Any non-2xx status
15311// code is an error. Response headers are in either
15312// *Datafeed.ServerResponse.Header or (if a response was returned at
15313// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
15314// to check whether the returned error was because
15315// http.StatusNotModified was returned.
15316func (c *DatafeedsGetCall) Do(opts ...googleapi.CallOption) (*Datafeed, error) {
15317	gensupport.SetOptions(c.urlParams_, opts...)
15318	res, err := c.doRequest("json")
15319	if res != nil && res.StatusCode == http.StatusNotModified {
15320		if res.Body != nil {
15321			res.Body.Close()
15322		}
15323		return nil, &googleapi.Error{
15324			Code:   res.StatusCode,
15325			Header: res.Header,
15326		}
15327	}
15328	if err != nil {
15329		return nil, err
15330	}
15331	defer googleapi.CloseBody(res)
15332	if err := googleapi.CheckResponse(res); err != nil {
15333		return nil, err
15334	}
15335	ret := &Datafeed{
15336		ServerResponse: googleapi.ServerResponse{
15337			Header:         res.Header,
15338			HTTPStatusCode: res.StatusCode,
15339		},
15340	}
15341	target := &ret
15342	if err := gensupport.DecodeResponse(target, res); err != nil {
15343		return nil, err
15344	}
15345	return ret, nil
15346	// {
15347	//   "description": "Retrieves a datafeed configuration from your Merchant Center account.",
15348	//   "flatPath": "{merchantId}/datafeeds/{datafeedId}",
15349	//   "httpMethod": "GET",
15350	//   "id": "content.datafeeds.get",
15351	//   "parameterOrder": [
15352	//     "merchantId",
15353	//     "datafeedId"
15354	//   ],
15355	//   "parameters": {
15356	//     "datafeedId": {
15357	//       "description": "The ID of the datafeed.",
15358	//       "format": "uint64",
15359	//       "location": "path",
15360	//       "required": true,
15361	//       "type": "string"
15362	//     },
15363	//     "merchantId": {
15364	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
15365	//       "format": "uint64",
15366	//       "location": "path",
15367	//       "required": true,
15368	//       "type": "string"
15369	//     }
15370	//   },
15371	//   "path": "{merchantId}/datafeeds/{datafeedId}",
15372	//   "response": {
15373	//     "$ref": "Datafeed"
15374	//   },
15375	//   "scopes": [
15376	//     "https://www.googleapis.com/auth/content"
15377	//   ]
15378	// }
15379
15380}
15381
15382// method id "content.datafeeds.insert":
15383
15384type DatafeedsInsertCall struct {
15385	s          *APIService
15386	merchantId uint64
15387	datafeed   *Datafeed
15388	urlParams_ gensupport.URLParams
15389	ctx_       context.Context
15390	header_    http.Header
15391}
15392
15393// Insert: Registers a datafeed configuration with your Merchant Center
15394// account.
15395//
15396// - merchantId: The ID of the account that manages the datafeed. This
15397//   account cannot be a multi-client account.
15398func (r *DatafeedsService) Insert(merchantId uint64, datafeed *Datafeed) *DatafeedsInsertCall {
15399	c := &DatafeedsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
15400	c.merchantId = merchantId
15401	c.datafeed = datafeed
15402	return c
15403}
15404
15405// DryRun sets the optional parameter "dryRun": Flag to simulate a
15406// request like in a live environment. If set to true, dry-run mode
15407// checks the validity of the request and returns errors (if any).
15408func (c *DatafeedsInsertCall) DryRun(dryRun bool) *DatafeedsInsertCall {
15409	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
15410	return c
15411}
15412
15413// Fields allows partial responses to be retrieved. See
15414// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
15415// for more information.
15416func (c *DatafeedsInsertCall) Fields(s ...googleapi.Field) *DatafeedsInsertCall {
15417	c.urlParams_.Set("fields", googleapi.CombineFields(s))
15418	return c
15419}
15420
15421// Context sets the context to be used in this call's Do method. Any
15422// pending HTTP request will be aborted if the provided context is
15423// canceled.
15424func (c *DatafeedsInsertCall) Context(ctx context.Context) *DatafeedsInsertCall {
15425	c.ctx_ = ctx
15426	return c
15427}
15428
15429// Header returns an http.Header that can be modified by the caller to
15430// add HTTP headers to the request.
15431func (c *DatafeedsInsertCall) Header() http.Header {
15432	if c.header_ == nil {
15433		c.header_ = make(http.Header)
15434	}
15435	return c.header_
15436}
15437
15438func (c *DatafeedsInsertCall) doRequest(alt string) (*http.Response, error) {
15439	reqHeaders := make(http.Header)
15440	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
15441	for k, v := range c.header_ {
15442		reqHeaders[k] = v
15443	}
15444	reqHeaders.Set("User-Agent", c.s.userAgent())
15445	var body io.Reader = nil
15446	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeed)
15447	if err != nil {
15448		return nil, err
15449	}
15450	reqHeaders.Set("Content-Type", "application/json")
15451	c.urlParams_.Set("alt", alt)
15452	c.urlParams_.Set("prettyPrint", "false")
15453	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds")
15454	urls += "?" + c.urlParams_.Encode()
15455	req, err := http.NewRequest("POST", urls, body)
15456	if err != nil {
15457		return nil, err
15458	}
15459	req.Header = reqHeaders
15460	googleapi.Expand(req.URL, map[string]string{
15461		"merchantId": strconv.FormatUint(c.merchantId, 10),
15462	})
15463	return gensupport.SendRequest(c.ctx_, c.s.client, req)
15464}
15465
15466// Do executes the "content.datafeeds.insert" call.
15467// Exactly one of *Datafeed or error will be non-nil. Any non-2xx status
15468// code is an error. Response headers are in either
15469// *Datafeed.ServerResponse.Header or (if a response was returned at
15470// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
15471// to check whether the returned error was because
15472// http.StatusNotModified was returned.
15473func (c *DatafeedsInsertCall) Do(opts ...googleapi.CallOption) (*Datafeed, error) {
15474	gensupport.SetOptions(c.urlParams_, opts...)
15475	res, err := c.doRequest("json")
15476	if res != nil && res.StatusCode == http.StatusNotModified {
15477		if res.Body != nil {
15478			res.Body.Close()
15479		}
15480		return nil, &googleapi.Error{
15481			Code:   res.StatusCode,
15482			Header: res.Header,
15483		}
15484	}
15485	if err != nil {
15486		return nil, err
15487	}
15488	defer googleapi.CloseBody(res)
15489	if err := googleapi.CheckResponse(res); err != nil {
15490		return nil, err
15491	}
15492	ret := &Datafeed{
15493		ServerResponse: googleapi.ServerResponse{
15494			Header:         res.Header,
15495			HTTPStatusCode: res.StatusCode,
15496		},
15497	}
15498	target := &ret
15499	if err := gensupport.DecodeResponse(target, res); err != nil {
15500		return nil, err
15501	}
15502	return ret, nil
15503	// {
15504	//   "description": "Registers a datafeed configuration with your Merchant Center account.",
15505	//   "flatPath": "{merchantId}/datafeeds",
15506	//   "httpMethod": "POST",
15507	//   "id": "content.datafeeds.insert",
15508	//   "parameterOrder": [
15509	//     "merchantId"
15510	//   ],
15511	//   "parameters": {
15512	//     "dryRun": {
15513	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
15514	//       "location": "query",
15515	//       "type": "boolean"
15516	//     },
15517	//     "merchantId": {
15518	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
15519	//       "format": "uint64",
15520	//       "location": "path",
15521	//       "required": true,
15522	//       "type": "string"
15523	//     }
15524	//   },
15525	//   "path": "{merchantId}/datafeeds",
15526	//   "request": {
15527	//     "$ref": "Datafeed"
15528	//   },
15529	//   "response": {
15530	//     "$ref": "Datafeed"
15531	//   },
15532	//   "scopes": [
15533	//     "https://www.googleapis.com/auth/content"
15534	//   ]
15535	// }
15536
15537}
15538
15539// method id "content.datafeeds.list":
15540
15541type DatafeedsListCall struct {
15542	s            *APIService
15543	merchantId   uint64
15544	urlParams_   gensupport.URLParams
15545	ifNoneMatch_ string
15546	ctx_         context.Context
15547	header_      http.Header
15548}
15549
15550// List: Lists the configurations for datafeeds in your Merchant Center
15551// account.
15552//
15553// - merchantId: The ID of the account that manages the datafeeds. This
15554//   account cannot be a multi-client account.
15555func (r *DatafeedsService) List(merchantId uint64) *DatafeedsListCall {
15556	c := &DatafeedsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
15557	c.merchantId = merchantId
15558	return c
15559}
15560
15561// MaxResults sets the optional parameter "maxResults": The maximum
15562// number of products to return in the response, used for paging.
15563func (c *DatafeedsListCall) MaxResults(maxResults int64) *DatafeedsListCall {
15564	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
15565	return c
15566}
15567
15568// PageToken sets the optional parameter "pageToken": The token returned
15569// by the previous request.
15570func (c *DatafeedsListCall) PageToken(pageToken string) *DatafeedsListCall {
15571	c.urlParams_.Set("pageToken", pageToken)
15572	return c
15573}
15574
15575// Fields allows partial responses to be retrieved. See
15576// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
15577// for more information.
15578func (c *DatafeedsListCall) Fields(s ...googleapi.Field) *DatafeedsListCall {
15579	c.urlParams_.Set("fields", googleapi.CombineFields(s))
15580	return c
15581}
15582
15583// IfNoneMatch sets the optional parameter which makes the operation
15584// fail if the object's ETag matches the given value. This is useful for
15585// getting updates only after the object has changed since the last
15586// request. Use googleapi.IsNotModified to check whether the response
15587// error from Do is the result of In-None-Match.
15588func (c *DatafeedsListCall) IfNoneMatch(entityTag string) *DatafeedsListCall {
15589	c.ifNoneMatch_ = entityTag
15590	return c
15591}
15592
15593// Context sets the context to be used in this call's Do method. Any
15594// pending HTTP request will be aborted if the provided context is
15595// canceled.
15596func (c *DatafeedsListCall) Context(ctx context.Context) *DatafeedsListCall {
15597	c.ctx_ = ctx
15598	return c
15599}
15600
15601// Header returns an http.Header that can be modified by the caller to
15602// add HTTP headers to the request.
15603func (c *DatafeedsListCall) Header() http.Header {
15604	if c.header_ == nil {
15605		c.header_ = make(http.Header)
15606	}
15607	return c.header_
15608}
15609
15610func (c *DatafeedsListCall) doRequest(alt string) (*http.Response, error) {
15611	reqHeaders := make(http.Header)
15612	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
15613	for k, v := range c.header_ {
15614		reqHeaders[k] = v
15615	}
15616	reqHeaders.Set("User-Agent", c.s.userAgent())
15617	if c.ifNoneMatch_ != "" {
15618		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
15619	}
15620	var body io.Reader = nil
15621	c.urlParams_.Set("alt", alt)
15622	c.urlParams_.Set("prettyPrint", "false")
15623	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds")
15624	urls += "?" + c.urlParams_.Encode()
15625	req, err := http.NewRequest("GET", urls, body)
15626	if err != nil {
15627		return nil, err
15628	}
15629	req.Header = reqHeaders
15630	googleapi.Expand(req.URL, map[string]string{
15631		"merchantId": strconv.FormatUint(c.merchantId, 10),
15632	})
15633	return gensupport.SendRequest(c.ctx_, c.s.client, req)
15634}
15635
15636// Do executes the "content.datafeeds.list" call.
15637// Exactly one of *DatafeedsListResponse or error will be non-nil. Any
15638// non-2xx status code is an error. Response headers are in either
15639// *DatafeedsListResponse.ServerResponse.Header or (if a response was
15640// returned at all) in error.(*googleapi.Error).Header. Use
15641// googleapi.IsNotModified to check whether the returned error was
15642// because http.StatusNotModified was returned.
15643func (c *DatafeedsListCall) Do(opts ...googleapi.CallOption) (*DatafeedsListResponse, error) {
15644	gensupport.SetOptions(c.urlParams_, opts...)
15645	res, err := c.doRequest("json")
15646	if res != nil && res.StatusCode == http.StatusNotModified {
15647		if res.Body != nil {
15648			res.Body.Close()
15649		}
15650		return nil, &googleapi.Error{
15651			Code:   res.StatusCode,
15652			Header: res.Header,
15653		}
15654	}
15655	if err != nil {
15656		return nil, err
15657	}
15658	defer googleapi.CloseBody(res)
15659	if err := googleapi.CheckResponse(res); err != nil {
15660		return nil, err
15661	}
15662	ret := &DatafeedsListResponse{
15663		ServerResponse: googleapi.ServerResponse{
15664			Header:         res.Header,
15665			HTTPStatusCode: res.StatusCode,
15666		},
15667	}
15668	target := &ret
15669	if err := gensupport.DecodeResponse(target, res); err != nil {
15670		return nil, err
15671	}
15672	return ret, nil
15673	// {
15674	//   "description": "Lists the configurations for datafeeds in your Merchant Center account.",
15675	//   "flatPath": "{merchantId}/datafeeds",
15676	//   "httpMethod": "GET",
15677	//   "id": "content.datafeeds.list",
15678	//   "parameterOrder": [
15679	//     "merchantId"
15680	//   ],
15681	//   "parameters": {
15682	//     "maxResults": {
15683	//       "description": "The maximum number of products to return in the response, used for paging.",
15684	//       "format": "uint32",
15685	//       "location": "query",
15686	//       "type": "integer"
15687	//     },
15688	//     "merchantId": {
15689	//       "description": "The ID of the account that manages the datafeeds. This account cannot be a multi-client account.",
15690	//       "format": "uint64",
15691	//       "location": "path",
15692	//       "required": true,
15693	//       "type": "string"
15694	//     },
15695	//     "pageToken": {
15696	//       "description": "The token returned by the previous request.",
15697	//       "location": "query",
15698	//       "type": "string"
15699	//     }
15700	//   },
15701	//   "path": "{merchantId}/datafeeds",
15702	//   "response": {
15703	//     "$ref": "DatafeedsListResponse"
15704	//   },
15705	//   "scopes": [
15706	//     "https://www.googleapis.com/auth/content"
15707	//   ]
15708	// }
15709
15710}
15711
15712// Pages invokes f for each page of results.
15713// A non-nil error returned from f will halt the iteration.
15714// The provided context supersedes any context provided to the Context method.
15715func (c *DatafeedsListCall) Pages(ctx context.Context, f func(*DatafeedsListResponse) error) error {
15716	c.ctx_ = ctx
15717	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
15718	for {
15719		x, err := c.Do()
15720		if err != nil {
15721			return err
15722		}
15723		if err := f(x); err != nil {
15724			return err
15725		}
15726		if x.NextPageToken == "" {
15727			return nil
15728		}
15729		c.PageToken(x.NextPageToken)
15730	}
15731}
15732
15733// method id "content.datafeeds.update":
15734
15735type DatafeedsUpdateCall struct {
15736	s          *APIService
15737	merchantId uint64
15738	datafeedId uint64
15739	datafeed   *Datafeed
15740	urlParams_ gensupport.URLParams
15741	ctx_       context.Context
15742	header_    http.Header
15743}
15744
15745// Update: Updates a datafeed configuration of your Merchant Center
15746// account. Any fields that are not provided are deleted from the
15747// resource.
15748//
15749// - datafeedId: The ID of the datafeed.
15750// - merchantId: The ID of the account that manages the datafeed. This
15751//   account cannot be a multi-client account.
15752func (r *DatafeedsService) Update(merchantId uint64, datafeedId uint64, datafeed *Datafeed) *DatafeedsUpdateCall {
15753	c := &DatafeedsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
15754	c.merchantId = merchantId
15755	c.datafeedId = datafeedId
15756	c.datafeed = datafeed
15757	return c
15758}
15759
15760// DryRun sets the optional parameter "dryRun": Flag to simulate a
15761// request like in a live environment. If set to true, dry-run mode
15762// checks the validity of the request and returns errors (if any).
15763func (c *DatafeedsUpdateCall) DryRun(dryRun bool) *DatafeedsUpdateCall {
15764	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
15765	return c
15766}
15767
15768// Fields allows partial responses to be retrieved. See
15769// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
15770// for more information.
15771func (c *DatafeedsUpdateCall) Fields(s ...googleapi.Field) *DatafeedsUpdateCall {
15772	c.urlParams_.Set("fields", googleapi.CombineFields(s))
15773	return c
15774}
15775
15776// Context sets the context to be used in this call's Do method. Any
15777// pending HTTP request will be aborted if the provided context is
15778// canceled.
15779func (c *DatafeedsUpdateCall) Context(ctx context.Context) *DatafeedsUpdateCall {
15780	c.ctx_ = ctx
15781	return c
15782}
15783
15784// Header returns an http.Header that can be modified by the caller to
15785// add HTTP headers to the request.
15786func (c *DatafeedsUpdateCall) Header() http.Header {
15787	if c.header_ == nil {
15788		c.header_ = make(http.Header)
15789	}
15790	return c.header_
15791}
15792
15793func (c *DatafeedsUpdateCall) doRequest(alt string) (*http.Response, error) {
15794	reqHeaders := make(http.Header)
15795	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
15796	for k, v := range c.header_ {
15797		reqHeaders[k] = v
15798	}
15799	reqHeaders.Set("User-Agent", c.s.userAgent())
15800	var body io.Reader = nil
15801	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeed)
15802	if err != nil {
15803		return nil, err
15804	}
15805	reqHeaders.Set("Content-Type", "application/json")
15806	c.urlParams_.Set("alt", alt)
15807	c.urlParams_.Set("prettyPrint", "false")
15808	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds/{datafeedId}")
15809	urls += "?" + c.urlParams_.Encode()
15810	req, err := http.NewRequest("PUT", urls, body)
15811	if err != nil {
15812		return nil, err
15813	}
15814	req.Header = reqHeaders
15815	googleapi.Expand(req.URL, map[string]string{
15816		"merchantId": strconv.FormatUint(c.merchantId, 10),
15817		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
15818	})
15819	return gensupport.SendRequest(c.ctx_, c.s.client, req)
15820}
15821
15822// Do executes the "content.datafeeds.update" call.
15823// Exactly one of *Datafeed or error will be non-nil. Any non-2xx status
15824// code is an error. Response headers are in either
15825// *Datafeed.ServerResponse.Header or (if a response was returned at
15826// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
15827// to check whether the returned error was because
15828// http.StatusNotModified was returned.
15829func (c *DatafeedsUpdateCall) Do(opts ...googleapi.CallOption) (*Datafeed, error) {
15830	gensupport.SetOptions(c.urlParams_, opts...)
15831	res, err := c.doRequest("json")
15832	if res != nil && res.StatusCode == http.StatusNotModified {
15833		if res.Body != nil {
15834			res.Body.Close()
15835		}
15836		return nil, &googleapi.Error{
15837			Code:   res.StatusCode,
15838			Header: res.Header,
15839		}
15840	}
15841	if err != nil {
15842		return nil, err
15843	}
15844	defer googleapi.CloseBody(res)
15845	if err := googleapi.CheckResponse(res); err != nil {
15846		return nil, err
15847	}
15848	ret := &Datafeed{
15849		ServerResponse: googleapi.ServerResponse{
15850			Header:         res.Header,
15851			HTTPStatusCode: res.StatusCode,
15852		},
15853	}
15854	target := &ret
15855	if err := gensupport.DecodeResponse(target, res); err != nil {
15856		return nil, err
15857	}
15858	return ret, nil
15859	// {
15860	//   "description": "Updates a datafeed configuration of your Merchant Center account. Any fields that are not provided are deleted from the resource.",
15861	//   "flatPath": "{merchantId}/datafeeds/{datafeedId}",
15862	//   "httpMethod": "PUT",
15863	//   "id": "content.datafeeds.update",
15864	//   "parameterOrder": [
15865	//     "merchantId",
15866	//     "datafeedId"
15867	//   ],
15868	//   "parameters": {
15869	//     "datafeedId": {
15870	//       "description": "The ID of the datafeed.",
15871	//       "format": "uint64",
15872	//       "location": "path",
15873	//       "required": true,
15874	//       "type": "string"
15875	//     },
15876	//     "dryRun": {
15877	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
15878	//       "location": "query",
15879	//       "type": "boolean"
15880	//     },
15881	//     "merchantId": {
15882	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
15883	//       "format": "uint64",
15884	//       "location": "path",
15885	//       "required": true,
15886	//       "type": "string"
15887	//     }
15888	//   },
15889	//   "path": "{merchantId}/datafeeds/{datafeedId}",
15890	//   "request": {
15891	//     "$ref": "Datafeed"
15892	//   },
15893	//   "response": {
15894	//     "$ref": "Datafeed"
15895	//   },
15896	//   "scopes": [
15897	//     "https://www.googleapis.com/auth/content"
15898	//   ]
15899	// }
15900
15901}
15902
15903// method id "content.datafeedstatuses.custombatch":
15904
15905type DatafeedstatusesCustombatchCall struct {
15906	s                                  *APIService
15907	datafeedstatusescustombatchrequest *DatafeedstatusesCustomBatchRequest
15908	urlParams_                         gensupport.URLParams
15909	ctx_                               context.Context
15910	header_                            http.Header
15911}
15912
15913// Custombatch: Gets multiple Merchant Center datafeed statuses in a
15914// single request.
15915func (r *DatafeedstatusesService) Custombatch(datafeedstatusescustombatchrequest *DatafeedstatusesCustomBatchRequest) *DatafeedstatusesCustombatchCall {
15916	c := &DatafeedstatusesCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
15917	c.datafeedstatusescustombatchrequest = datafeedstatusescustombatchrequest
15918	return c
15919}
15920
15921// Fields allows partial responses to be retrieved. See
15922// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
15923// for more information.
15924func (c *DatafeedstatusesCustombatchCall) Fields(s ...googleapi.Field) *DatafeedstatusesCustombatchCall {
15925	c.urlParams_.Set("fields", googleapi.CombineFields(s))
15926	return c
15927}
15928
15929// Context sets the context to be used in this call's Do method. Any
15930// pending HTTP request will be aborted if the provided context is
15931// canceled.
15932func (c *DatafeedstatusesCustombatchCall) Context(ctx context.Context) *DatafeedstatusesCustombatchCall {
15933	c.ctx_ = ctx
15934	return c
15935}
15936
15937// Header returns an http.Header that can be modified by the caller to
15938// add HTTP headers to the request.
15939func (c *DatafeedstatusesCustombatchCall) Header() http.Header {
15940	if c.header_ == nil {
15941		c.header_ = make(http.Header)
15942	}
15943	return c.header_
15944}
15945
15946func (c *DatafeedstatusesCustombatchCall) doRequest(alt string) (*http.Response, error) {
15947	reqHeaders := make(http.Header)
15948	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
15949	for k, v := range c.header_ {
15950		reqHeaders[k] = v
15951	}
15952	reqHeaders.Set("User-Agent", c.s.userAgent())
15953	var body io.Reader = nil
15954	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeedstatusescustombatchrequest)
15955	if err != nil {
15956		return nil, err
15957	}
15958	reqHeaders.Set("Content-Type", "application/json")
15959	c.urlParams_.Set("alt", alt)
15960	c.urlParams_.Set("prettyPrint", "false")
15961	urls := googleapi.ResolveRelative(c.s.BasePath, "datafeedstatuses/batch")
15962	urls += "?" + c.urlParams_.Encode()
15963	req, err := http.NewRequest("POST", urls, body)
15964	if err != nil {
15965		return nil, err
15966	}
15967	req.Header = reqHeaders
15968	return gensupport.SendRequest(c.ctx_, c.s.client, req)
15969}
15970
15971// Do executes the "content.datafeedstatuses.custombatch" call.
15972// Exactly one of *DatafeedstatusesCustomBatchResponse or error will be
15973// non-nil. Any non-2xx status code is an error. Response headers are in
15974// either *DatafeedstatusesCustomBatchResponse.ServerResponse.Header or
15975// (if a response was returned at all) in
15976// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
15977// whether the returned error was because http.StatusNotModified was
15978// returned.
15979func (c *DatafeedstatusesCustombatchCall) Do(opts ...googleapi.CallOption) (*DatafeedstatusesCustomBatchResponse, error) {
15980	gensupport.SetOptions(c.urlParams_, opts...)
15981	res, err := c.doRequest("json")
15982	if res != nil && res.StatusCode == http.StatusNotModified {
15983		if res.Body != nil {
15984			res.Body.Close()
15985		}
15986		return nil, &googleapi.Error{
15987			Code:   res.StatusCode,
15988			Header: res.Header,
15989		}
15990	}
15991	if err != nil {
15992		return nil, err
15993	}
15994	defer googleapi.CloseBody(res)
15995	if err := googleapi.CheckResponse(res); err != nil {
15996		return nil, err
15997	}
15998	ret := &DatafeedstatusesCustomBatchResponse{
15999		ServerResponse: googleapi.ServerResponse{
16000			Header:         res.Header,
16001			HTTPStatusCode: res.StatusCode,
16002		},
16003	}
16004	target := &ret
16005	if err := gensupport.DecodeResponse(target, res); err != nil {
16006		return nil, err
16007	}
16008	return ret, nil
16009	// {
16010	//   "description": "Gets multiple Merchant Center datafeed statuses in a single request.",
16011	//   "flatPath": "datafeedstatuses/batch",
16012	//   "httpMethod": "POST",
16013	//   "id": "content.datafeedstatuses.custombatch",
16014	//   "parameterOrder": [],
16015	//   "parameters": {},
16016	//   "path": "datafeedstatuses/batch",
16017	//   "request": {
16018	//     "$ref": "DatafeedstatusesCustomBatchRequest"
16019	//   },
16020	//   "response": {
16021	//     "$ref": "DatafeedstatusesCustomBatchResponse"
16022	//   },
16023	//   "scopes": [
16024	//     "https://www.googleapis.com/auth/content"
16025	//   ]
16026	// }
16027
16028}
16029
16030// method id "content.datafeedstatuses.get":
16031
16032type DatafeedstatusesGetCall struct {
16033	s            *APIService
16034	merchantId   uint64
16035	datafeedId   uint64
16036	urlParams_   gensupport.URLParams
16037	ifNoneMatch_ string
16038	ctx_         context.Context
16039	header_      http.Header
16040}
16041
16042// Get: Retrieves the status of a datafeed from your Merchant Center
16043// account.
16044//
16045// - datafeedId: The ID of the datafeed.
16046// - merchantId: The ID of the account that manages the datafeed. This
16047//   account cannot be a multi-client account.
16048func (r *DatafeedstatusesService) Get(merchantId uint64, datafeedId uint64) *DatafeedstatusesGetCall {
16049	c := &DatafeedstatusesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16050	c.merchantId = merchantId
16051	c.datafeedId = datafeedId
16052	return c
16053}
16054
16055// Country sets the optional parameter "country": The country for which
16056// to get the datafeed status. If this parameter is provided then
16057// language must also be provided. Note that this parameter is required
16058// for feeds targeting multiple countries and languages, since a feed
16059// may have a different status for each target.
16060func (c *DatafeedstatusesGetCall) Country(country string) *DatafeedstatusesGetCall {
16061	c.urlParams_.Set("country", country)
16062	return c
16063}
16064
16065// Language sets the optional parameter "language": The language for
16066// which to get the datafeed status. If this parameter is provided then
16067// country must also be provided. Note that this parameter is required
16068// for feeds targeting multiple countries and languages, since a feed
16069// may have a different status for each target.
16070func (c *DatafeedstatusesGetCall) Language(language string) *DatafeedstatusesGetCall {
16071	c.urlParams_.Set("language", language)
16072	return c
16073}
16074
16075// Fields allows partial responses to be retrieved. See
16076// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16077// for more information.
16078func (c *DatafeedstatusesGetCall) Fields(s ...googleapi.Field) *DatafeedstatusesGetCall {
16079	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16080	return c
16081}
16082
16083// IfNoneMatch sets the optional parameter which makes the operation
16084// fail if the object's ETag matches the given value. This is useful for
16085// getting updates only after the object has changed since the last
16086// request. Use googleapi.IsNotModified to check whether the response
16087// error from Do is the result of In-None-Match.
16088func (c *DatafeedstatusesGetCall) IfNoneMatch(entityTag string) *DatafeedstatusesGetCall {
16089	c.ifNoneMatch_ = entityTag
16090	return c
16091}
16092
16093// Context sets the context to be used in this call's Do method. Any
16094// pending HTTP request will be aborted if the provided context is
16095// canceled.
16096func (c *DatafeedstatusesGetCall) Context(ctx context.Context) *DatafeedstatusesGetCall {
16097	c.ctx_ = ctx
16098	return c
16099}
16100
16101// Header returns an http.Header that can be modified by the caller to
16102// add HTTP headers to the request.
16103func (c *DatafeedstatusesGetCall) Header() http.Header {
16104	if c.header_ == nil {
16105		c.header_ = make(http.Header)
16106	}
16107	return c.header_
16108}
16109
16110func (c *DatafeedstatusesGetCall) doRequest(alt string) (*http.Response, error) {
16111	reqHeaders := make(http.Header)
16112	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
16113	for k, v := range c.header_ {
16114		reqHeaders[k] = v
16115	}
16116	reqHeaders.Set("User-Agent", c.s.userAgent())
16117	if c.ifNoneMatch_ != "" {
16118		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
16119	}
16120	var body io.Reader = nil
16121	c.urlParams_.Set("alt", alt)
16122	c.urlParams_.Set("prettyPrint", "false")
16123	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeedstatuses/{datafeedId}")
16124	urls += "?" + c.urlParams_.Encode()
16125	req, err := http.NewRequest("GET", urls, body)
16126	if err != nil {
16127		return nil, err
16128	}
16129	req.Header = reqHeaders
16130	googleapi.Expand(req.URL, map[string]string{
16131		"merchantId": strconv.FormatUint(c.merchantId, 10),
16132		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
16133	})
16134	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16135}
16136
16137// Do executes the "content.datafeedstatuses.get" call.
16138// Exactly one of *DatafeedStatus or error will be non-nil. Any non-2xx
16139// status code is an error. Response headers are in either
16140// *DatafeedStatus.ServerResponse.Header or (if a response was returned
16141// at all) in error.(*googleapi.Error).Header. Use
16142// googleapi.IsNotModified to check whether the returned error was
16143// because http.StatusNotModified was returned.
16144func (c *DatafeedstatusesGetCall) Do(opts ...googleapi.CallOption) (*DatafeedStatus, error) {
16145	gensupport.SetOptions(c.urlParams_, opts...)
16146	res, err := c.doRequest("json")
16147	if res != nil && res.StatusCode == http.StatusNotModified {
16148		if res.Body != nil {
16149			res.Body.Close()
16150		}
16151		return nil, &googleapi.Error{
16152			Code:   res.StatusCode,
16153			Header: res.Header,
16154		}
16155	}
16156	if err != nil {
16157		return nil, err
16158	}
16159	defer googleapi.CloseBody(res)
16160	if err := googleapi.CheckResponse(res); err != nil {
16161		return nil, err
16162	}
16163	ret := &DatafeedStatus{
16164		ServerResponse: googleapi.ServerResponse{
16165			Header:         res.Header,
16166			HTTPStatusCode: res.StatusCode,
16167		},
16168	}
16169	target := &ret
16170	if err := gensupport.DecodeResponse(target, res); err != nil {
16171		return nil, err
16172	}
16173	return ret, nil
16174	// {
16175	//   "description": "Retrieves the status of a datafeed from your Merchant Center account.",
16176	//   "flatPath": "{merchantId}/datafeedstatuses/{datafeedId}",
16177	//   "httpMethod": "GET",
16178	//   "id": "content.datafeedstatuses.get",
16179	//   "parameterOrder": [
16180	//     "merchantId",
16181	//     "datafeedId"
16182	//   ],
16183	//   "parameters": {
16184	//     "country": {
16185	//       "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.",
16186	//       "location": "query",
16187	//       "type": "string"
16188	//     },
16189	//     "datafeedId": {
16190	//       "description": "The ID of the datafeed.",
16191	//       "format": "uint64",
16192	//       "location": "path",
16193	//       "required": true,
16194	//       "type": "string"
16195	//     },
16196	//     "language": {
16197	//       "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.",
16198	//       "location": "query",
16199	//       "type": "string"
16200	//     },
16201	//     "merchantId": {
16202	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
16203	//       "format": "uint64",
16204	//       "location": "path",
16205	//       "required": true,
16206	//       "type": "string"
16207	//     }
16208	//   },
16209	//   "path": "{merchantId}/datafeedstatuses/{datafeedId}",
16210	//   "response": {
16211	//     "$ref": "DatafeedStatus"
16212	//   },
16213	//   "scopes": [
16214	//     "https://www.googleapis.com/auth/content"
16215	//   ]
16216	// }
16217
16218}
16219
16220// method id "content.datafeedstatuses.list":
16221
16222type DatafeedstatusesListCall struct {
16223	s            *APIService
16224	merchantId   uint64
16225	urlParams_   gensupport.URLParams
16226	ifNoneMatch_ string
16227	ctx_         context.Context
16228	header_      http.Header
16229}
16230
16231// List: Lists the statuses of the datafeeds in your Merchant Center
16232// account.
16233//
16234// - merchantId: The ID of the account that manages the datafeeds. This
16235//   account cannot be a multi-client account.
16236func (r *DatafeedstatusesService) List(merchantId uint64) *DatafeedstatusesListCall {
16237	c := &DatafeedstatusesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16238	c.merchantId = merchantId
16239	return c
16240}
16241
16242// MaxResults sets the optional parameter "maxResults": The maximum
16243// number of products to return in the response, used for paging.
16244func (c *DatafeedstatusesListCall) MaxResults(maxResults int64) *DatafeedstatusesListCall {
16245	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
16246	return c
16247}
16248
16249// PageToken sets the optional parameter "pageToken": The token returned
16250// by the previous request.
16251func (c *DatafeedstatusesListCall) PageToken(pageToken string) *DatafeedstatusesListCall {
16252	c.urlParams_.Set("pageToken", pageToken)
16253	return c
16254}
16255
16256// Fields allows partial responses to be retrieved. See
16257// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16258// for more information.
16259func (c *DatafeedstatusesListCall) Fields(s ...googleapi.Field) *DatafeedstatusesListCall {
16260	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16261	return c
16262}
16263
16264// IfNoneMatch sets the optional parameter which makes the operation
16265// fail if the object's ETag matches the given value. This is useful for
16266// getting updates only after the object has changed since the last
16267// request. Use googleapi.IsNotModified to check whether the response
16268// error from Do is the result of In-None-Match.
16269func (c *DatafeedstatusesListCall) IfNoneMatch(entityTag string) *DatafeedstatusesListCall {
16270	c.ifNoneMatch_ = entityTag
16271	return c
16272}
16273
16274// Context sets the context to be used in this call's Do method. Any
16275// pending HTTP request will be aborted if the provided context is
16276// canceled.
16277func (c *DatafeedstatusesListCall) Context(ctx context.Context) *DatafeedstatusesListCall {
16278	c.ctx_ = ctx
16279	return c
16280}
16281
16282// Header returns an http.Header that can be modified by the caller to
16283// add HTTP headers to the request.
16284func (c *DatafeedstatusesListCall) Header() http.Header {
16285	if c.header_ == nil {
16286		c.header_ = make(http.Header)
16287	}
16288	return c.header_
16289}
16290
16291func (c *DatafeedstatusesListCall) doRequest(alt string) (*http.Response, error) {
16292	reqHeaders := make(http.Header)
16293	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
16294	for k, v := range c.header_ {
16295		reqHeaders[k] = v
16296	}
16297	reqHeaders.Set("User-Agent", c.s.userAgent())
16298	if c.ifNoneMatch_ != "" {
16299		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
16300	}
16301	var body io.Reader = nil
16302	c.urlParams_.Set("alt", alt)
16303	c.urlParams_.Set("prettyPrint", "false")
16304	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeedstatuses")
16305	urls += "?" + c.urlParams_.Encode()
16306	req, err := http.NewRequest("GET", urls, body)
16307	if err != nil {
16308		return nil, err
16309	}
16310	req.Header = reqHeaders
16311	googleapi.Expand(req.URL, map[string]string{
16312		"merchantId": strconv.FormatUint(c.merchantId, 10),
16313	})
16314	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16315}
16316
16317// Do executes the "content.datafeedstatuses.list" call.
16318// Exactly one of *DatafeedstatusesListResponse or error will be
16319// non-nil. Any non-2xx status code is an error. Response headers are in
16320// either *DatafeedstatusesListResponse.ServerResponse.Header or (if a
16321// response was returned at all) in error.(*googleapi.Error).Header. Use
16322// googleapi.IsNotModified to check whether the returned error was
16323// because http.StatusNotModified was returned.
16324func (c *DatafeedstatusesListCall) Do(opts ...googleapi.CallOption) (*DatafeedstatusesListResponse, error) {
16325	gensupport.SetOptions(c.urlParams_, opts...)
16326	res, err := c.doRequest("json")
16327	if res != nil && res.StatusCode == http.StatusNotModified {
16328		if res.Body != nil {
16329			res.Body.Close()
16330		}
16331		return nil, &googleapi.Error{
16332			Code:   res.StatusCode,
16333			Header: res.Header,
16334		}
16335	}
16336	if err != nil {
16337		return nil, err
16338	}
16339	defer googleapi.CloseBody(res)
16340	if err := googleapi.CheckResponse(res); err != nil {
16341		return nil, err
16342	}
16343	ret := &DatafeedstatusesListResponse{
16344		ServerResponse: googleapi.ServerResponse{
16345			Header:         res.Header,
16346			HTTPStatusCode: res.StatusCode,
16347		},
16348	}
16349	target := &ret
16350	if err := gensupport.DecodeResponse(target, res); err != nil {
16351		return nil, err
16352	}
16353	return ret, nil
16354	// {
16355	//   "description": "Lists the statuses of the datafeeds in your Merchant Center account.",
16356	//   "flatPath": "{merchantId}/datafeedstatuses",
16357	//   "httpMethod": "GET",
16358	//   "id": "content.datafeedstatuses.list",
16359	//   "parameterOrder": [
16360	//     "merchantId"
16361	//   ],
16362	//   "parameters": {
16363	//     "maxResults": {
16364	//       "description": "The maximum number of products to return in the response, used for paging.",
16365	//       "format": "uint32",
16366	//       "location": "query",
16367	//       "type": "integer"
16368	//     },
16369	//     "merchantId": {
16370	//       "description": "The ID of the account that manages the datafeeds. This account cannot be a multi-client account.",
16371	//       "format": "uint64",
16372	//       "location": "path",
16373	//       "required": true,
16374	//       "type": "string"
16375	//     },
16376	//     "pageToken": {
16377	//       "description": "The token returned by the previous request.",
16378	//       "location": "query",
16379	//       "type": "string"
16380	//     }
16381	//   },
16382	//   "path": "{merchantId}/datafeedstatuses",
16383	//   "response": {
16384	//     "$ref": "DatafeedstatusesListResponse"
16385	//   },
16386	//   "scopes": [
16387	//     "https://www.googleapis.com/auth/content"
16388	//   ]
16389	// }
16390
16391}
16392
16393// Pages invokes f for each page of results.
16394// A non-nil error returned from f will halt the iteration.
16395// The provided context supersedes any context provided to the Context method.
16396func (c *DatafeedstatusesListCall) Pages(ctx context.Context, f func(*DatafeedstatusesListResponse) error) error {
16397	c.ctx_ = ctx
16398	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
16399	for {
16400		x, err := c.Do()
16401		if err != nil {
16402			return err
16403		}
16404		if err := f(x); err != nil {
16405			return err
16406		}
16407		if x.NextPageToken == "" {
16408			return nil
16409		}
16410		c.PageToken(x.NextPageToken)
16411	}
16412}
16413
16414// method id "content.inventory.custombatch":
16415
16416type InventoryCustombatchCall struct {
16417	s                           *APIService
16418	inventorycustombatchrequest *InventoryCustomBatchRequest
16419	urlParams_                  gensupport.URLParams
16420	ctx_                        context.Context
16421	header_                     http.Header
16422}
16423
16424// Custombatch: Updates price and availability for multiple products or
16425// stores in a single request. This operation does not update the
16426// expiration date of the products.
16427func (r *InventoryService) Custombatch(inventorycustombatchrequest *InventoryCustomBatchRequest) *InventoryCustombatchCall {
16428	c := &InventoryCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16429	c.inventorycustombatchrequest = inventorycustombatchrequest
16430	return c
16431}
16432
16433// DryRun sets the optional parameter "dryRun": Flag to simulate a
16434// request like in a live environment. If set to true, dry-run mode
16435// checks the validity of the request and returns errors (if any).
16436func (c *InventoryCustombatchCall) DryRun(dryRun bool) *InventoryCustombatchCall {
16437	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
16438	return c
16439}
16440
16441// Fields allows partial responses to be retrieved. See
16442// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16443// for more information.
16444func (c *InventoryCustombatchCall) Fields(s ...googleapi.Field) *InventoryCustombatchCall {
16445	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16446	return c
16447}
16448
16449// Context sets the context to be used in this call's Do method. Any
16450// pending HTTP request will be aborted if the provided context is
16451// canceled.
16452func (c *InventoryCustombatchCall) Context(ctx context.Context) *InventoryCustombatchCall {
16453	c.ctx_ = ctx
16454	return c
16455}
16456
16457// Header returns an http.Header that can be modified by the caller to
16458// add HTTP headers to the request.
16459func (c *InventoryCustombatchCall) Header() http.Header {
16460	if c.header_ == nil {
16461		c.header_ = make(http.Header)
16462	}
16463	return c.header_
16464}
16465
16466func (c *InventoryCustombatchCall) doRequest(alt string) (*http.Response, error) {
16467	reqHeaders := make(http.Header)
16468	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
16469	for k, v := range c.header_ {
16470		reqHeaders[k] = v
16471	}
16472	reqHeaders.Set("User-Agent", c.s.userAgent())
16473	var body io.Reader = nil
16474	body, err := googleapi.WithoutDataWrapper.JSONReader(c.inventorycustombatchrequest)
16475	if err != nil {
16476		return nil, err
16477	}
16478	reqHeaders.Set("Content-Type", "application/json")
16479	c.urlParams_.Set("alt", alt)
16480	c.urlParams_.Set("prettyPrint", "false")
16481	urls := googleapi.ResolveRelative(c.s.BasePath, "inventory/batch")
16482	urls += "?" + c.urlParams_.Encode()
16483	req, err := http.NewRequest("POST", urls, body)
16484	if err != nil {
16485		return nil, err
16486	}
16487	req.Header = reqHeaders
16488	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16489}
16490
16491// Do executes the "content.inventory.custombatch" call.
16492// Exactly one of *InventoryCustomBatchResponse or error will be
16493// non-nil. Any non-2xx status code is an error. Response headers are in
16494// either *InventoryCustomBatchResponse.ServerResponse.Header or (if a
16495// response was returned at all) in error.(*googleapi.Error).Header. Use
16496// googleapi.IsNotModified to check whether the returned error was
16497// because http.StatusNotModified was returned.
16498func (c *InventoryCustombatchCall) Do(opts ...googleapi.CallOption) (*InventoryCustomBatchResponse, error) {
16499	gensupport.SetOptions(c.urlParams_, opts...)
16500	res, err := c.doRequest("json")
16501	if res != nil && res.StatusCode == http.StatusNotModified {
16502		if res.Body != nil {
16503			res.Body.Close()
16504		}
16505		return nil, &googleapi.Error{
16506			Code:   res.StatusCode,
16507			Header: res.Header,
16508		}
16509	}
16510	if err != nil {
16511		return nil, err
16512	}
16513	defer googleapi.CloseBody(res)
16514	if err := googleapi.CheckResponse(res); err != nil {
16515		return nil, err
16516	}
16517	ret := &InventoryCustomBatchResponse{
16518		ServerResponse: googleapi.ServerResponse{
16519			Header:         res.Header,
16520			HTTPStatusCode: res.StatusCode,
16521		},
16522	}
16523	target := &ret
16524	if err := gensupport.DecodeResponse(target, res); err != nil {
16525		return nil, err
16526	}
16527	return ret, nil
16528	// {
16529	//   "description": "Updates price and availability for multiple products or stores in a single request. This operation does not update the expiration date of the products.",
16530	//   "flatPath": "inventory/batch",
16531	//   "httpMethod": "POST",
16532	//   "id": "content.inventory.custombatch",
16533	//   "parameterOrder": [],
16534	//   "parameters": {
16535	//     "dryRun": {
16536	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
16537	//       "location": "query",
16538	//       "type": "boolean"
16539	//     }
16540	//   },
16541	//   "path": "inventory/batch",
16542	//   "request": {
16543	//     "$ref": "InventoryCustomBatchRequest"
16544	//   },
16545	//   "response": {
16546	//     "$ref": "InventoryCustomBatchResponse"
16547	//   },
16548	//   "scopes": [
16549	//     "https://www.googleapis.com/auth/content"
16550	//   ]
16551	// }
16552
16553}
16554
16555// method id "content.inventory.set":
16556
16557type InventorySetCall struct {
16558	s                   *APIService
16559	merchantId          uint64
16560	storeCode           string
16561	productId           string
16562	inventorysetrequest *InventorySetRequest
16563	urlParams_          gensupport.URLParams
16564	ctx_                context.Context
16565	header_             http.Header
16566}
16567
16568// Set: Updates price and availability of a product in your Merchant
16569// Center account.
16570//
16571// - merchantId: The ID of the account that contains the product. This
16572//   account cannot be a multi-client account.
16573// - productId: The REST ID of the product for which to update price and
16574//   availability.
16575// - storeCode: The code of the store for which to update price and
16576//   availability. Use `online` to update price and availability of an
16577//   online product.
16578func (r *InventoryService) Set(merchantId uint64, storeCode string, productId string, inventorysetrequest *InventorySetRequest) *InventorySetCall {
16579	c := &InventorySetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16580	c.merchantId = merchantId
16581	c.storeCode = storeCode
16582	c.productId = productId
16583	c.inventorysetrequest = inventorysetrequest
16584	return c
16585}
16586
16587// DryRun sets the optional parameter "dryRun": Flag to simulate a
16588// request like in a live environment. If set to true, dry-run mode
16589// checks the validity of the request and returns errors (if any).
16590func (c *InventorySetCall) DryRun(dryRun bool) *InventorySetCall {
16591	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
16592	return c
16593}
16594
16595// Fields allows partial responses to be retrieved. See
16596// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16597// for more information.
16598func (c *InventorySetCall) Fields(s ...googleapi.Field) *InventorySetCall {
16599	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16600	return c
16601}
16602
16603// Context sets the context to be used in this call's Do method. Any
16604// pending HTTP request will be aborted if the provided context is
16605// canceled.
16606func (c *InventorySetCall) Context(ctx context.Context) *InventorySetCall {
16607	c.ctx_ = ctx
16608	return c
16609}
16610
16611// Header returns an http.Header that can be modified by the caller to
16612// add HTTP headers to the request.
16613func (c *InventorySetCall) Header() http.Header {
16614	if c.header_ == nil {
16615		c.header_ = make(http.Header)
16616	}
16617	return c.header_
16618}
16619
16620func (c *InventorySetCall) doRequest(alt string) (*http.Response, error) {
16621	reqHeaders := make(http.Header)
16622	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
16623	for k, v := range c.header_ {
16624		reqHeaders[k] = v
16625	}
16626	reqHeaders.Set("User-Agent", c.s.userAgent())
16627	var body io.Reader = nil
16628	body, err := googleapi.WithoutDataWrapper.JSONReader(c.inventorysetrequest)
16629	if err != nil {
16630		return nil, err
16631	}
16632	reqHeaders.Set("Content-Type", "application/json")
16633	c.urlParams_.Set("alt", alt)
16634	c.urlParams_.Set("prettyPrint", "false")
16635	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/inventory/{storeCode}/products/{productId}")
16636	urls += "?" + c.urlParams_.Encode()
16637	req, err := http.NewRequest("POST", urls, body)
16638	if err != nil {
16639		return nil, err
16640	}
16641	req.Header = reqHeaders
16642	googleapi.Expand(req.URL, map[string]string{
16643		"merchantId": strconv.FormatUint(c.merchantId, 10),
16644		"storeCode":  c.storeCode,
16645		"productId":  c.productId,
16646	})
16647	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16648}
16649
16650// Do executes the "content.inventory.set" call.
16651// Exactly one of *InventorySetResponse or error will be non-nil. Any
16652// non-2xx status code is an error. Response headers are in either
16653// *InventorySetResponse.ServerResponse.Header or (if a response was
16654// returned at all) in error.(*googleapi.Error).Header. Use
16655// googleapi.IsNotModified to check whether the returned error was
16656// because http.StatusNotModified was returned.
16657func (c *InventorySetCall) Do(opts ...googleapi.CallOption) (*InventorySetResponse, error) {
16658	gensupport.SetOptions(c.urlParams_, opts...)
16659	res, err := c.doRequest("json")
16660	if res != nil && res.StatusCode == http.StatusNotModified {
16661		if res.Body != nil {
16662			res.Body.Close()
16663		}
16664		return nil, &googleapi.Error{
16665			Code:   res.StatusCode,
16666			Header: res.Header,
16667		}
16668	}
16669	if err != nil {
16670		return nil, err
16671	}
16672	defer googleapi.CloseBody(res)
16673	if err := googleapi.CheckResponse(res); err != nil {
16674		return nil, err
16675	}
16676	ret := &InventorySetResponse{
16677		ServerResponse: googleapi.ServerResponse{
16678			Header:         res.Header,
16679			HTTPStatusCode: res.StatusCode,
16680		},
16681	}
16682	target := &ret
16683	if err := gensupport.DecodeResponse(target, res); err != nil {
16684		return nil, err
16685	}
16686	return ret, nil
16687	// {
16688	//   "description": "Updates price and availability of a product in your Merchant Center account.",
16689	//   "flatPath": "{merchantId}/inventory/{storeCode}/products/{productId}",
16690	//   "httpMethod": "POST",
16691	//   "id": "content.inventory.set",
16692	//   "parameterOrder": [
16693	//     "merchantId",
16694	//     "storeCode",
16695	//     "productId"
16696	//   ],
16697	//   "parameters": {
16698	//     "dryRun": {
16699	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
16700	//       "location": "query",
16701	//       "type": "boolean"
16702	//     },
16703	//     "merchantId": {
16704	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
16705	//       "format": "uint64",
16706	//       "location": "path",
16707	//       "required": true,
16708	//       "type": "string"
16709	//     },
16710	//     "productId": {
16711	//       "description": "The REST ID of the product for which to update price and availability.",
16712	//       "location": "path",
16713	//       "required": true,
16714	//       "type": "string"
16715	//     },
16716	//     "storeCode": {
16717	//       "description": "The code of the store for which to update price and availability. Use `online` to update price and availability of an online product.",
16718	//       "location": "path",
16719	//       "required": true,
16720	//       "type": "string"
16721	//     }
16722	//   },
16723	//   "path": "{merchantId}/inventory/{storeCode}/products/{productId}",
16724	//   "request": {
16725	//     "$ref": "InventorySetRequest"
16726	//   },
16727	//   "response": {
16728	//     "$ref": "InventorySetResponse"
16729	//   },
16730	//   "scopes": [
16731	//     "https://www.googleapis.com/auth/content"
16732	//   ]
16733	// }
16734
16735}
16736
16737// method id "content.liasettings.custombatch":
16738
16739type LiasettingsCustombatchCall struct {
16740	s                             *APIService
16741	liasettingscustombatchrequest *LiasettingsCustomBatchRequest
16742	urlParams_                    gensupport.URLParams
16743	ctx_                          context.Context
16744	header_                       http.Header
16745}
16746
16747// Custombatch: Retrieves and/or updates the LIA settings of multiple
16748// accounts in a single request.
16749func (r *LiasettingsService) Custombatch(liasettingscustombatchrequest *LiasettingsCustomBatchRequest) *LiasettingsCustombatchCall {
16750	c := &LiasettingsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16751	c.liasettingscustombatchrequest = liasettingscustombatchrequest
16752	return c
16753}
16754
16755// DryRun sets the optional parameter "dryRun": Flag to simulate a
16756// request like in a live environment. If set to true, dry-run mode
16757// checks the validity of the request and returns errors (if any).
16758func (c *LiasettingsCustombatchCall) DryRun(dryRun bool) *LiasettingsCustombatchCall {
16759	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
16760	return c
16761}
16762
16763// Fields allows partial responses to be retrieved. See
16764// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16765// for more information.
16766func (c *LiasettingsCustombatchCall) Fields(s ...googleapi.Field) *LiasettingsCustombatchCall {
16767	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16768	return c
16769}
16770
16771// Context sets the context to be used in this call's Do method. Any
16772// pending HTTP request will be aborted if the provided context is
16773// canceled.
16774func (c *LiasettingsCustombatchCall) Context(ctx context.Context) *LiasettingsCustombatchCall {
16775	c.ctx_ = ctx
16776	return c
16777}
16778
16779// Header returns an http.Header that can be modified by the caller to
16780// add HTTP headers to the request.
16781func (c *LiasettingsCustombatchCall) Header() http.Header {
16782	if c.header_ == nil {
16783		c.header_ = make(http.Header)
16784	}
16785	return c.header_
16786}
16787
16788func (c *LiasettingsCustombatchCall) doRequest(alt string) (*http.Response, error) {
16789	reqHeaders := make(http.Header)
16790	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
16791	for k, v := range c.header_ {
16792		reqHeaders[k] = v
16793	}
16794	reqHeaders.Set("User-Agent", c.s.userAgent())
16795	var body io.Reader = nil
16796	body, err := googleapi.WithoutDataWrapper.JSONReader(c.liasettingscustombatchrequest)
16797	if err != nil {
16798		return nil, err
16799	}
16800	reqHeaders.Set("Content-Type", "application/json")
16801	c.urlParams_.Set("alt", alt)
16802	c.urlParams_.Set("prettyPrint", "false")
16803	urls := googleapi.ResolveRelative(c.s.BasePath, "liasettings/batch")
16804	urls += "?" + c.urlParams_.Encode()
16805	req, err := http.NewRequest("POST", urls, body)
16806	if err != nil {
16807		return nil, err
16808	}
16809	req.Header = reqHeaders
16810	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16811}
16812
16813// Do executes the "content.liasettings.custombatch" call.
16814// Exactly one of *LiasettingsCustomBatchResponse or error will be
16815// non-nil. Any non-2xx status code is an error. Response headers are in
16816// either *LiasettingsCustomBatchResponse.ServerResponse.Header or (if a
16817// response was returned at all) in error.(*googleapi.Error).Header. Use
16818// googleapi.IsNotModified to check whether the returned error was
16819// because http.StatusNotModified was returned.
16820func (c *LiasettingsCustombatchCall) Do(opts ...googleapi.CallOption) (*LiasettingsCustomBatchResponse, error) {
16821	gensupport.SetOptions(c.urlParams_, opts...)
16822	res, err := c.doRequest("json")
16823	if res != nil && res.StatusCode == http.StatusNotModified {
16824		if res.Body != nil {
16825			res.Body.Close()
16826		}
16827		return nil, &googleapi.Error{
16828			Code:   res.StatusCode,
16829			Header: res.Header,
16830		}
16831	}
16832	if err != nil {
16833		return nil, err
16834	}
16835	defer googleapi.CloseBody(res)
16836	if err := googleapi.CheckResponse(res); err != nil {
16837		return nil, err
16838	}
16839	ret := &LiasettingsCustomBatchResponse{
16840		ServerResponse: googleapi.ServerResponse{
16841			Header:         res.Header,
16842			HTTPStatusCode: res.StatusCode,
16843		},
16844	}
16845	target := &ret
16846	if err := gensupport.DecodeResponse(target, res); err != nil {
16847		return nil, err
16848	}
16849	return ret, nil
16850	// {
16851	//   "description": "Retrieves and/or updates the LIA settings of multiple accounts in a single request.",
16852	//   "flatPath": "liasettings/batch",
16853	//   "httpMethod": "POST",
16854	//   "id": "content.liasettings.custombatch",
16855	//   "parameterOrder": [],
16856	//   "parameters": {
16857	//     "dryRun": {
16858	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
16859	//       "location": "query",
16860	//       "type": "boolean"
16861	//     }
16862	//   },
16863	//   "path": "liasettings/batch",
16864	//   "request": {
16865	//     "$ref": "LiasettingsCustomBatchRequest"
16866	//   },
16867	//   "response": {
16868	//     "$ref": "LiasettingsCustomBatchResponse"
16869	//   },
16870	//   "scopes": [
16871	//     "https://www.googleapis.com/auth/content"
16872	//   ]
16873	// }
16874
16875}
16876
16877// method id "content.liasettings.get":
16878
16879type LiasettingsGetCall struct {
16880	s            *APIService
16881	merchantId   uint64
16882	accountId    uint64
16883	urlParams_   gensupport.URLParams
16884	ifNoneMatch_ string
16885	ctx_         context.Context
16886	header_      http.Header
16887}
16888
16889// Get: Retrieves the LIA settings of the account.
16890//
16891// - accountId: The ID of the account for which to get or update LIA
16892//   settings.
16893// - merchantId: The ID of the managing account. If this parameter is
16894//   not the same as accountId, then this account must be a multi-client
16895//   account and `accountId` must be the ID of a sub-account of this
16896//   account.
16897func (r *LiasettingsService) Get(merchantId uint64, accountId uint64) *LiasettingsGetCall {
16898	c := &LiasettingsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16899	c.merchantId = merchantId
16900	c.accountId = accountId
16901	return c
16902}
16903
16904// Fields allows partial responses to be retrieved. See
16905// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16906// for more information.
16907func (c *LiasettingsGetCall) Fields(s ...googleapi.Field) *LiasettingsGetCall {
16908	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16909	return c
16910}
16911
16912// IfNoneMatch sets the optional parameter which makes the operation
16913// fail if the object's ETag matches the given value. This is useful for
16914// getting updates only after the object has changed since the last
16915// request. Use googleapi.IsNotModified to check whether the response
16916// error from Do is the result of In-None-Match.
16917func (c *LiasettingsGetCall) IfNoneMatch(entityTag string) *LiasettingsGetCall {
16918	c.ifNoneMatch_ = entityTag
16919	return c
16920}
16921
16922// Context sets the context to be used in this call's Do method. Any
16923// pending HTTP request will be aborted if the provided context is
16924// canceled.
16925func (c *LiasettingsGetCall) Context(ctx context.Context) *LiasettingsGetCall {
16926	c.ctx_ = ctx
16927	return c
16928}
16929
16930// Header returns an http.Header that can be modified by the caller to
16931// add HTTP headers to the request.
16932func (c *LiasettingsGetCall) Header() http.Header {
16933	if c.header_ == nil {
16934		c.header_ = make(http.Header)
16935	}
16936	return c.header_
16937}
16938
16939func (c *LiasettingsGetCall) doRequest(alt string) (*http.Response, error) {
16940	reqHeaders := make(http.Header)
16941	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
16942	for k, v := range c.header_ {
16943		reqHeaders[k] = v
16944	}
16945	reqHeaders.Set("User-Agent", c.s.userAgent())
16946	if c.ifNoneMatch_ != "" {
16947		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
16948	}
16949	var body io.Reader = nil
16950	c.urlParams_.Set("alt", alt)
16951	c.urlParams_.Set("prettyPrint", "false")
16952	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}")
16953	urls += "?" + c.urlParams_.Encode()
16954	req, err := http.NewRequest("GET", urls, body)
16955	if err != nil {
16956		return nil, err
16957	}
16958	req.Header = reqHeaders
16959	googleapi.Expand(req.URL, map[string]string{
16960		"merchantId": strconv.FormatUint(c.merchantId, 10),
16961		"accountId":  strconv.FormatUint(c.accountId, 10),
16962	})
16963	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16964}
16965
16966// Do executes the "content.liasettings.get" call.
16967// Exactly one of *LiaSettings or error will be non-nil. Any non-2xx
16968// status code is an error. Response headers are in either
16969// *LiaSettings.ServerResponse.Header or (if a response was returned at
16970// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
16971// to check whether the returned error was because
16972// http.StatusNotModified was returned.
16973func (c *LiasettingsGetCall) Do(opts ...googleapi.CallOption) (*LiaSettings, error) {
16974	gensupport.SetOptions(c.urlParams_, opts...)
16975	res, err := c.doRequest("json")
16976	if res != nil && res.StatusCode == http.StatusNotModified {
16977		if res.Body != nil {
16978			res.Body.Close()
16979		}
16980		return nil, &googleapi.Error{
16981			Code:   res.StatusCode,
16982			Header: res.Header,
16983		}
16984	}
16985	if err != nil {
16986		return nil, err
16987	}
16988	defer googleapi.CloseBody(res)
16989	if err := googleapi.CheckResponse(res); err != nil {
16990		return nil, err
16991	}
16992	ret := &LiaSettings{
16993		ServerResponse: googleapi.ServerResponse{
16994			Header:         res.Header,
16995			HTTPStatusCode: res.StatusCode,
16996		},
16997	}
16998	target := &ret
16999	if err := gensupport.DecodeResponse(target, res); err != nil {
17000		return nil, err
17001	}
17002	return ret, nil
17003	// {
17004	//   "description": "Retrieves the LIA settings of the account.",
17005	//   "flatPath": "{merchantId}/liasettings/{accountId}",
17006	//   "httpMethod": "GET",
17007	//   "id": "content.liasettings.get",
17008	//   "parameterOrder": [
17009	//     "merchantId",
17010	//     "accountId"
17011	//   ],
17012	//   "parameters": {
17013	//     "accountId": {
17014	//       "description": "The ID of the account for which to get or update LIA settings.",
17015	//       "format": "uint64",
17016	//       "location": "path",
17017	//       "required": true,
17018	//       "type": "string"
17019	//     },
17020	//     "merchantId": {
17021	//       "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.",
17022	//       "format": "uint64",
17023	//       "location": "path",
17024	//       "required": true,
17025	//       "type": "string"
17026	//     }
17027	//   },
17028	//   "path": "{merchantId}/liasettings/{accountId}",
17029	//   "response": {
17030	//     "$ref": "LiaSettings"
17031	//   },
17032	//   "scopes": [
17033	//     "https://www.googleapis.com/auth/content"
17034	//   ]
17035	// }
17036
17037}
17038
17039// method id "content.liasettings.getaccessiblegmbaccounts":
17040
17041type LiasettingsGetaccessiblegmbaccountsCall struct {
17042	s            *APIService
17043	merchantId   uint64
17044	accountId    uint64
17045	urlParams_   gensupport.URLParams
17046	ifNoneMatch_ string
17047	ctx_         context.Context
17048	header_      http.Header
17049}
17050
17051// Getaccessiblegmbaccounts: Retrieves the list of accessible Google My
17052// Business accounts.
17053//
17054// - accountId: The ID of the account for which to retrieve accessible
17055//   Google My Business accounts.
17056// - merchantId: The ID of the managing account. If this parameter is
17057//   not the same as accountId, then this account must be a multi-client
17058//   account and `accountId` must be the ID of a sub-account of this
17059//   account.
17060func (r *LiasettingsService) Getaccessiblegmbaccounts(merchantId uint64, accountId uint64) *LiasettingsGetaccessiblegmbaccountsCall {
17061	c := &LiasettingsGetaccessiblegmbaccountsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17062	c.merchantId = merchantId
17063	c.accountId = accountId
17064	return c
17065}
17066
17067// Fields allows partial responses to be retrieved. See
17068// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17069// for more information.
17070func (c *LiasettingsGetaccessiblegmbaccountsCall) Fields(s ...googleapi.Field) *LiasettingsGetaccessiblegmbaccountsCall {
17071	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17072	return c
17073}
17074
17075// IfNoneMatch sets the optional parameter which makes the operation
17076// fail if the object's ETag matches the given value. This is useful for
17077// getting updates only after the object has changed since the last
17078// request. Use googleapi.IsNotModified to check whether the response
17079// error from Do is the result of In-None-Match.
17080func (c *LiasettingsGetaccessiblegmbaccountsCall) IfNoneMatch(entityTag string) *LiasettingsGetaccessiblegmbaccountsCall {
17081	c.ifNoneMatch_ = entityTag
17082	return c
17083}
17084
17085// Context sets the context to be used in this call's Do method. Any
17086// pending HTTP request will be aborted if the provided context is
17087// canceled.
17088func (c *LiasettingsGetaccessiblegmbaccountsCall) Context(ctx context.Context) *LiasettingsGetaccessiblegmbaccountsCall {
17089	c.ctx_ = ctx
17090	return c
17091}
17092
17093// Header returns an http.Header that can be modified by the caller to
17094// add HTTP headers to the request.
17095func (c *LiasettingsGetaccessiblegmbaccountsCall) Header() http.Header {
17096	if c.header_ == nil {
17097		c.header_ = make(http.Header)
17098	}
17099	return c.header_
17100}
17101
17102func (c *LiasettingsGetaccessiblegmbaccountsCall) doRequest(alt string) (*http.Response, error) {
17103	reqHeaders := make(http.Header)
17104	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
17105	for k, v := range c.header_ {
17106		reqHeaders[k] = v
17107	}
17108	reqHeaders.Set("User-Agent", c.s.userAgent())
17109	if c.ifNoneMatch_ != "" {
17110		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
17111	}
17112	var body io.Reader = nil
17113	c.urlParams_.Set("alt", alt)
17114	c.urlParams_.Set("prettyPrint", "false")
17115	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/accessiblegmbaccounts")
17116	urls += "?" + c.urlParams_.Encode()
17117	req, err := http.NewRequest("GET", urls, body)
17118	if err != nil {
17119		return nil, err
17120	}
17121	req.Header = reqHeaders
17122	googleapi.Expand(req.URL, map[string]string{
17123		"merchantId": strconv.FormatUint(c.merchantId, 10),
17124		"accountId":  strconv.FormatUint(c.accountId, 10),
17125	})
17126	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17127}
17128
17129// Do executes the "content.liasettings.getaccessiblegmbaccounts" call.
17130// Exactly one of *LiasettingsGetAccessibleGmbAccountsResponse or error
17131// will be non-nil. Any non-2xx status code is an error. Response
17132// headers are in either
17133// *LiasettingsGetAccessibleGmbAccountsResponse.ServerResponse.Header or
17134// (if a response was returned at all) in
17135// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
17136// whether the returned error was because http.StatusNotModified was
17137// returned.
17138func (c *LiasettingsGetaccessiblegmbaccountsCall) Do(opts ...googleapi.CallOption) (*LiasettingsGetAccessibleGmbAccountsResponse, error) {
17139	gensupport.SetOptions(c.urlParams_, opts...)
17140	res, err := c.doRequest("json")
17141	if res != nil && res.StatusCode == http.StatusNotModified {
17142		if res.Body != nil {
17143			res.Body.Close()
17144		}
17145		return nil, &googleapi.Error{
17146			Code:   res.StatusCode,
17147			Header: res.Header,
17148		}
17149	}
17150	if err != nil {
17151		return nil, err
17152	}
17153	defer googleapi.CloseBody(res)
17154	if err := googleapi.CheckResponse(res); err != nil {
17155		return nil, err
17156	}
17157	ret := &LiasettingsGetAccessibleGmbAccountsResponse{
17158		ServerResponse: googleapi.ServerResponse{
17159			Header:         res.Header,
17160			HTTPStatusCode: res.StatusCode,
17161		},
17162	}
17163	target := &ret
17164	if err := gensupport.DecodeResponse(target, res); err != nil {
17165		return nil, err
17166	}
17167	return ret, nil
17168	// {
17169	//   "description": "Retrieves the list of accessible Google My Business accounts.",
17170	//   "flatPath": "{merchantId}/liasettings/{accountId}/accessiblegmbaccounts",
17171	//   "httpMethod": "GET",
17172	//   "id": "content.liasettings.getaccessiblegmbaccounts",
17173	//   "parameterOrder": [
17174	//     "merchantId",
17175	//     "accountId"
17176	//   ],
17177	//   "parameters": {
17178	//     "accountId": {
17179	//       "description": "The ID of the account for which to retrieve accessible Google My Business accounts.",
17180	//       "format": "uint64",
17181	//       "location": "path",
17182	//       "required": true,
17183	//       "type": "string"
17184	//     },
17185	//     "merchantId": {
17186	//       "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.",
17187	//       "format": "uint64",
17188	//       "location": "path",
17189	//       "required": true,
17190	//       "type": "string"
17191	//     }
17192	//   },
17193	//   "path": "{merchantId}/liasettings/{accountId}/accessiblegmbaccounts",
17194	//   "response": {
17195	//     "$ref": "LiasettingsGetAccessibleGmbAccountsResponse"
17196	//   },
17197	//   "scopes": [
17198	//     "https://www.googleapis.com/auth/content"
17199	//   ]
17200	// }
17201
17202}
17203
17204// method id "content.liasettings.list":
17205
17206type LiasettingsListCall struct {
17207	s            *APIService
17208	merchantId   uint64
17209	urlParams_   gensupport.URLParams
17210	ifNoneMatch_ string
17211	ctx_         context.Context
17212	header_      http.Header
17213}
17214
17215// List: Lists the LIA settings of the sub-accounts in your Merchant
17216// Center account.
17217//
17218// - merchantId: The ID of the managing account. This must be a
17219//   multi-client account.
17220func (r *LiasettingsService) List(merchantId uint64) *LiasettingsListCall {
17221	c := &LiasettingsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17222	c.merchantId = merchantId
17223	return c
17224}
17225
17226// MaxResults sets the optional parameter "maxResults": The maximum
17227// number of LIA settings to return in the response, used for paging.
17228func (c *LiasettingsListCall) MaxResults(maxResults int64) *LiasettingsListCall {
17229	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
17230	return c
17231}
17232
17233// PageToken sets the optional parameter "pageToken": The token returned
17234// by the previous request.
17235func (c *LiasettingsListCall) PageToken(pageToken string) *LiasettingsListCall {
17236	c.urlParams_.Set("pageToken", pageToken)
17237	return c
17238}
17239
17240// Fields allows partial responses to be retrieved. See
17241// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17242// for more information.
17243func (c *LiasettingsListCall) Fields(s ...googleapi.Field) *LiasettingsListCall {
17244	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17245	return c
17246}
17247
17248// IfNoneMatch sets the optional parameter which makes the operation
17249// fail if the object's ETag matches the given value. This is useful for
17250// getting updates only after the object has changed since the last
17251// request. Use googleapi.IsNotModified to check whether the response
17252// error from Do is the result of In-None-Match.
17253func (c *LiasettingsListCall) IfNoneMatch(entityTag string) *LiasettingsListCall {
17254	c.ifNoneMatch_ = entityTag
17255	return c
17256}
17257
17258// Context sets the context to be used in this call's Do method. Any
17259// pending HTTP request will be aborted if the provided context is
17260// canceled.
17261func (c *LiasettingsListCall) Context(ctx context.Context) *LiasettingsListCall {
17262	c.ctx_ = ctx
17263	return c
17264}
17265
17266// Header returns an http.Header that can be modified by the caller to
17267// add HTTP headers to the request.
17268func (c *LiasettingsListCall) Header() http.Header {
17269	if c.header_ == nil {
17270		c.header_ = make(http.Header)
17271	}
17272	return c.header_
17273}
17274
17275func (c *LiasettingsListCall) doRequest(alt string) (*http.Response, error) {
17276	reqHeaders := make(http.Header)
17277	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
17278	for k, v := range c.header_ {
17279		reqHeaders[k] = v
17280	}
17281	reqHeaders.Set("User-Agent", c.s.userAgent())
17282	if c.ifNoneMatch_ != "" {
17283		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
17284	}
17285	var body io.Reader = nil
17286	c.urlParams_.Set("alt", alt)
17287	c.urlParams_.Set("prettyPrint", "false")
17288	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings")
17289	urls += "?" + c.urlParams_.Encode()
17290	req, err := http.NewRequest("GET", urls, body)
17291	if err != nil {
17292		return nil, err
17293	}
17294	req.Header = reqHeaders
17295	googleapi.Expand(req.URL, map[string]string{
17296		"merchantId": strconv.FormatUint(c.merchantId, 10),
17297	})
17298	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17299}
17300
17301// Do executes the "content.liasettings.list" call.
17302// Exactly one of *LiasettingsListResponse or error will be non-nil. Any
17303// non-2xx status code is an error. Response headers are in either
17304// *LiasettingsListResponse.ServerResponse.Header or (if a response was
17305// returned at all) in error.(*googleapi.Error).Header. Use
17306// googleapi.IsNotModified to check whether the returned error was
17307// because http.StatusNotModified was returned.
17308func (c *LiasettingsListCall) Do(opts ...googleapi.CallOption) (*LiasettingsListResponse, error) {
17309	gensupport.SetOptions(c.urlParams_, opts...)
17310	res, err := c.doRequest("json")
17311	if res != nil && res.StatusCode == http.StatusNotModified {
17312		if res.Body != nil {
17313			res.Body.Close()
17314		}
17315		return nil, &googleapi.Error{
17316			Code:   res.StatusCode,
17317			Header: res.Header,
17318		}
17319	}
17320	if err != nil {
17321		return nil, err
17322	}
17323	defer googleapi.CloseBody(res)
17324	if err := googleapi.CheckResponse(res); err != nil {
17325		return nil, err
17326	}
17327	ret := &LiasettingsListResponse{
17328		ServerResponse: googleapi.ServerResponse{
17329			Header:         res.Header,
17330			HTTPStatusCode: res.StatusCode,
17331		},
17332	}
17333	target := &ret
17334	if err := gensupport.DecodeResponse(target, res); err != nil {
17335		return nil, err
17336	}
17337	return ret, nil
17338	// {
17339	//   "description": "Lists the LIA settings of the sub-accounts in your Merchant Center account.",
17340	//   "flatPath": "{merchantId}/liasettings",
17341	//   "httpMethod": "GET",
17342	//   "id": "content.liasettings.list",
17343	//   "parameterOrder": [
17344	//     "merchantId"
17345	//   ],
17346	//   "parameters": {
17347	//     "maxResults": {
17348	//       "description": "The maximum number of LIA settings to return in the response, used for paging.",
17349	//       "format": "uint32",
17350	//       "location": "query",
17351	//       "type": "integer"
17352	//     },
17353	//     "merchantId": {
17354	//       "description": "The ID of the managing account. This must be a multi-client account.",
17355	//       "format": "uint64",
17356	//       "location": "path",
17357	//       "required": true,
17358	//       "type": "string"
17359	//     },
17360	//     "pageToken": {
17361	//       "description": "The token returned by the previous request.",
17362	//       "location": "query",
17363	//       "type": "string"
17364	//     }
17365	//   },
17366	//   "path": "{merchantId}/liasettings",
17367	//   "response": {
17368	//     "$ref": "LiasettingsListResponse"
17369	//   },
17370	//   "scopes": [
17371	//     "https://www.googleapis.com/auth/content"
17372	//   ]
17373	// }
17374
17375}
17376
17377// Pages invokes f for each page of results.
17378// A non-nil error returned from f will halt the iteration.
17379// The provided context supersedes any context provided to the Context method.
17380func (c *LiasettingsListCall) Pages(ctx context.Context, f func(*LiasettingsListResponse) error) error {
17381	c.ctx_ = ctx
17382	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
17383	for {
17384		x, err := c.Do()
17385		if err != nil {
17386			return err
17387		}
17388		if err := f(x); err != nil {
17389			return err
17390		}
17391		if x.NextPageToken == "" {
17392			return nil
17393		}
17394		c.PageToken(x.NextPageToken)
17395	}
17396}
17397
17398// method id "content.liasettings.listposdataproviders":
17399
17400type LiasettingsListposdataprovidersCall struct {
17401	s            *APIService
17402	urlParams_   gensupport.URLParams
17403	ifNoneMatch_ string
17404	ctx_         context.Context
17405	header_      http.Header
17406}
17407
17408// Listposdataproviders: Retrieves the list of POS data providers that
17409// have active settings for the all eiligible countries.
17410func (r *LiasettingsService) Listposdataproviders() *LiasettingsListposdataprovidersCall {
17411	c := &LiasettingsListposdataprovidersCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17412	return c
17413}
17414
17415// Fields allows partial responses to be retrieved. See
17416// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17417// for more information.
17418func (c *LiasettingsListposdataprovidersCall) Fields(s ...googleapi.Field) *LiasettingsListposdataprovidersCall {
17419	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17420	return c
17421}
17422
17423// IfNoneMatch sets the optional parameter which makes the operation
17424// fail if the object's ETag matches the given value. This is useful for
17425// getting updates only after the object has changed since the last
17426// request. Use googleapi.IsNotModified to check whether the response
17427// error from Do is the result of In-None-Match.
17428func (c *LiasettingsListposdataprovidersCall) IfNoneMatch(entityTag string) *LiasettingsListposdataprovidersCall {
17429	c.ifNoneMatch_ = entityTag
17430	return c
17431}
17432
17433// Context sets the context to be used in this call's Do method. Any
17434// pending HTTP request will be aborted if the provided context is
17435// canceled.
17436func (c *LiasettingsListposdataprovidersCall) Context(ctx context.Context) *LiasettingsListposdataprovidersCall {
17437	c.ctx_ = ctx
17438	return c
17439}
17440
17441// Header returns an http.Header that can be modified by the caller to
17442// add HTTP headers to the request.
17443func (c *LiasettingsListposdataprovidersCall) Header() http.Header {
17444	if c.header_ == nil {
17445		c.header_ = make(http.Header)
17446	}
17447	return c.header_
17448}
17449
17450func (c *LiasettingsListposdataprovidersCall) doRequest(alt string) (*http.Response, error) {
17451	reqHeaders := make(http.Header)
17452	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
17453	for k, v := range c.header_ {
17454		reqHeaders[k] = v
17455	}
17456	reqHeaders.Set("User-Agent", c.s.userAgent())
17457	if c.ifNoneMatch_ != "" {
17458		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
17459	}
17460	var body io.Reader = nil
17461	c.urlParams_.Set("alt", alt)
17462	c.urlParams_.Set("prettyPrint", "false")
17463	urls := googleapi.ResolveRelative(c.s.BasePath, "liasettings/posdataproviders")
17464	urls += "?" + c.urlParams_.Encode()
17465	req, err := http.NewRequest("GET", urls, body)
17466	if err != nil {
17467		return nil, err
17468	}
17469	req.Header = reqHeaders
17470	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17471}
17472
17473// Do executes the "content.liasettings.listposdataproviders" call.
17474// Exactly one of *LiasettingsListPosDataProvidersResponse or error will
17475// be non-nil. Any non-2xx status code is an error. Response headers are
17476// in either
17477// *LiasettingsListPosDataProvidersResponse.ServerResponse.Header or (if
17478// a response was returned at all) in error.(*googleapi.Error).Header.
17479// Use googleapi.IsNotModified to check whether the returned error was
17480// because http.StatusNotModified was returned.
17481func (c *LiasettingsListposdataprovidersCall) Do(opts ...googleapi.CallOption) (*LiasettingsListPosDataProvidersResponse, error) {
17482	gensupport.SetOptions(c.urlParams_, opts...)
17483	res, err := c.doRequest("json")
17484	if res != nil && res.StatusCode == http.StatusNotModified {
17485		if res.Body != nil {
17486			res.Body.Close()
17487		}
17488		return nil, &googleapi.Error{
17489			Code:   res.StatusCode,
17490			Header: res.Header,
17491		}
17492	}
17493	if err != nil {
17494		return nil, err
17495	}
17496	defer googleapi.CloseBody(res)
17497	if err := googleapi.CheckResponse(res); err != nil {
17498		return nil, err
17499	}
17500	ret := &LiasettingsListPosDataProvidersResponse{
17501		ServerResponse: googleapi.ServerResponse{
17502			Header:         res.Header,
17503			HTTPStatusCode: res.StatusCode,
17504		},
17505	}
17506	target := &ret
17507	if err := gensupport.DecodeResponse(target, res); err != nil {
17508		return nil, err
17509	}
17510	return ret, nil
17511	// {
17512	//   "description": "Retrieves the list of POS data providers that have active settings for the all eiligible countries.",
17513	//   "flatPath": "liasettings/posdataproviders",
17514	//   "httpMethod": "GET",
17515	//   "id": "content.liasettings.listposdataproviders",
17516	//   "parameterOrder": [],
17517	//   "parameters": {},
17518	//   "path": "liasettings/posdataproviders",
17519	//   "response": {
17520	//     "$ref": "LiasettingsListPosDataProvidersResponse"
17521	//   },
17522	//   "scopes": [
17523	//     "https://www.googleapis.com/auth/content"
17524	//   ]
17525	// }
17526
17527}
17528
17529// method id "content.liasettings.requestgmbaccess":
17530
17531type LiasettingsRequestgmbaccessCall struct {
17532	s          *APIService
17533	merchantId uint64
17534	accountId  uint64
17535	urlParams_ gensupport.URLParams
17536	ctx_       context.Context
17537	header_    http.Header
17538}
17539
17540// Requestgmbaccess: Requests access to a specified Google My Business
17541// account.
17542//
17543// - accountId: The ID of the account for which GMB access is requested.
17544// - gmbEmail: The email of the Google My Business account.
17545// - merchantId: The ID of the managing account. If this parameter is
17546//   not the same as accountId, then this account must be a multi-client
17547//   account and `accountId` must be the ID of a sub-account of this
17548//   account.
17549func (r *LiasettingsService) Requestgmbaccess(merchantId uint64, accountId uint64, gmbEmail string) *LiasettingsRequestgmbaccessCall {
17550	c := &LiasettingsRequestgmbaccessCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17551	c.merchantId = merchantId
17552	c.accountId = accountId
17553	c.urlParams_.Set("gmbEmail", gmbEmail)
17554	return c
17555}
17556
17557// Fields allows partial responses to be retrieved. See
17558// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17559// for more information.
17560func (c *LiasettingsRequestgmbaccessCall) Fields(s ...googleapi.Field) *LiasettingsRequestgmbaccessCall {
17561	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17562	return c
17563}
17564
17565// Context sets the context to be used in this call's Do method. Any
17566// pending HTTP request will be aborted if the provided context is
17567// canceled.
17568func (c *LiasettingsRequestgmbaccessCall) Context(ctx context.Context) *LiasettingsRequestgmbaccessCall {
17569	c.ctx_ = ctx
17570	return c
17571}
17572
17573// Header returns an http.Header that can be modified by the caller to
17574// add HTTP headers to the request.
17575func (c *LiasettingsRequestgmbaccessCall) Header() http.Header {
17576	if c.header_ == nil {
17577		c.header_ = make(http.Header)
17578	}
17579	return c.header_
17580}
17581
17582func (c *LiasettingsRequestgmbaccessCall) doRequest(alt string) (*http.Response, error) {
17583	reqHeaders := make(http.Header)
17584	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
17585	for k, v := range c.header_ {
17586		reqHeaders[k] = v
17587	}
17588	reqHeaders.Set("User-Agent", c.s.userAgent())
17589	var body io.Reader = nil
17590	c.urlParams_.Set("alt", alt)
17591	c.urlParams_.Set("prettyPrint", "false")
17592	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/requestgmbaccess")
17593	urls += "?" + c.urlParams_.Encode()
17594	req, err := http.NewRequest("POST", urls, body)
17595	if err != nil {
17596		return nil, err
17597	}
17598	req.Header = reqHeaders
17599	googleapi.Expand(req.URL, map[string]string{
17600		"merchantId": strconv.FormatUint(c.merchantId, 10),
17601		"accountId":  strconv.FormatUint(c.accountId, 10),
17602	})
17603	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17604}
17605
17606// Do executes the "content.liasettings.requestgmbaccess" call.
17607// Exactly one of *LiasettingsRequestGmbAccessResponse or error will be
17608// non-nil. Any non-2xx status code is an error. Response headers are in
17609// either *LiasettingsRequestGmbAccessResponse.ServerResponse.Header or
17610// (if a response was returned at all) in
17611// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
17612// whether the returned error was because http.StatusNotModified was
17613// returned.
17614func (c *LiasettingsRequestgmbaccessCall) Do(opts ...googleapi.CallOption) (*LiasettingsRequestGmbAccessResponse, error) {
17615	gensupport.SetOptions(c.urlParams_, opts...)
17616	res, err := c.doRequest("json")
17617	if res != nil && res.StatusCode == http.StatusNotModified {
17618		if res.Body != nil {
17619			res.Body.Close()
17620		}
17621		return nil, &googleapi.Error{
17622			Code:   res.StatusCode,
17623			Header: res.Header,
17624		}
17625	}
17626	if err != nil {
17627		return nil, err
17628	}
17629	defer googleapi.CloseBody(res)
17630	if err := googleapi.CheckResponse(res); err != nil {
17631		return nil, err
17632	}
17633	ret := &LiasettingsRequestGmbAccessResponse{
17634		ServerResponse: googleapi.ServerResponse{
17635			Header:         res.Header,
17636			HTTPStatusCode: res.StatusCode,
17637		},
17638	}
17639	target := &ret
17640	if err := gensupport.DecodeResponse(target, res); err != nil {
17641		return nil, err
17642	}
17643	return ret, nil
17644	// {
17645	//   "description": "Requests access to a specified Google My Business account.",
17646	//   "flatPath": "{merchantId}/liasettings/{accountId}/requestgmbaccess",
17647	//   "httpMethod": "POST",
17648	//   "id": "content.liasettings.requestgmbaccess",
17649	//   "parameterOrder": [
17650	//     "merchantId",
17651	//     "accountId",
17652	//     "gmbEmail"
17653	//   ],
17654	//   "parameters": {
17655	//     "accountId": {
17656	//       "description": "The ID of the account for which GMB access is requested.",
17657	//       "format": "uint64",
17658	//       "location": "path",
17659	//       "required": true,
17660	//       "type": "string"
17661	//     },
17662	//     "gmbEmail": {
17663	//       "description": "The email of the Google My Business account.",
17664	//       "location": "query",
17665	//       "required": true,
17666	//       "type": "string"
17667	//     },
17668	//     "merchantId": {
17669	//       "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.",
17670	//       "format": "uint64",
17671	//       "location": "path",
17672	//       "required": true,
17673	//       "type": "string"
17674	//     }
17675	//   },
17676	//   "path": "{merchantId}/liasettings/{accountId}/requestgmbaccess",
17677	//   "response": {
17678	//     "$ref": "LiasettingsRequestGmbAccessResponse"
17679	//   },
17680	//   "scopes": [
17681	//     "https://www.googleapis.com/auth/content"
17682	//   ]
17683	// }
17684
17685}
17686
17687// method id "content.liasettings.requestinventoryverification":
17688
17689type LiasettingsRequestinventoryverificationCall struct {
17690	s          *APIService
17691	merchantId uint64
17692	accountId  uint64
17693	country    string
17694	urlParams_ gensupport.URLParams
17695	ctx_       context.Context
17696	header_    http.Header
17697}
17698
17699// Requestinventoryverification: Requests inventory validation for the
17700// specified country.
17701//
17702// - accountId: The ID of the account that manages the order. This
17703//   cannot be a multi-client account.
17704// - country: The country for which inventory validation is requested.
17705// - merchantId: The ID of the managing account. If this parameter is
17706//   not the same as accountId, then this account must be a multi-client
17707//   account and `accountId` must be the ID of a sub-account of this
17708//   account.
17709func (r *LiasettingsService) Requestinventoryverification(merchantId uint64, accountId uint64, country string) *LiasettingsRequestinventoryverificationCall {
17710	c := &LiasettingsRequestinventoryverificationCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17711	c.merchantId = merchantId
17712	c.accountId = accountId
17713	c.country = country
17714	return c
17715}
17716
17717// Fields allows partial responses to be retrieved. See
17718// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17719// for more information.
17720func (c *LiasettingsRequestinventoryverificationCall) Fields(s ...googleapi.Field) *LiasettingsRequestinventoryverificationCall {
17721	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17722	return c
17723}
17724
17725// Context sets the context to be used in this call's Do method. Any
17726// pending HTTP request will be aborted if the provided context is
17727// canceled.
17728func (c *LiasettingsRequestinventoryverificationCall) Context(ctx context.Context) *LiasettingsRequestinventoryverificationCall {
17729	c.ctx_ = ctx
17730	return c
17731}
17732
17733// Header returns an http.Header that can be modified by the caller to
17734// add HTTP headers to the request.
17735func (c *LiasettingsRequestinventoryverificationCall) Header() http.Header {
17736	if c.header_ == nil {
17737		c.header_ = make(http.Header)
17738	}
17739	return c.header_
17740}
17741
17742func (c *LiasettingsRequestinventoryverificationCall) doRequest(alt string) (*http.Response, error) {
17743	reqHeaders := make(http.Header)
17744	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
17745	for k, v := range c.header_ {
17746		reqHeaders[k] = v
17747	}
17748	reqHeaders.Set("User-Agent", c.s.userAgent())
17749	var body io.Reader = nil
17750	c.urlParams_.Set("alt", alt)
17751	c.urlParams_.Set("prettyPrint", "false")
17752	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/requestinventoryverification/{country}")
17753	urls += "?" + c.urlParams_.Encode()
17754	req, err := http.NewRequest("POST", urls, body)
17755	if err != nil {
17756		return nil, err
17757	}
17758	req.Header = reqHeaders
17759	googleapi.Expand(req.URL, map[string]string{
17760		"merchantId": strconv.FormatUint(c.merchantId, 10),
17761		"accountId":  strconv.FormatUint(c.accountId, 10),
17762		"country":    c.country,
17763	})
17764	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17765}
17766
17767// Do executes the "content.liasettings.requestinventoryverification" call.
17768// Exactly one of *LiasettingsRequestInventoryVerificationResponse or
17769// error will be non-nil. Any non-2xx status code is an error. Response
17770// headers are in either
17771// *LiasettingsRequestInventoryVerificationResponse.ServerResponse.Header
17772//  or (if a response was returned at all) in
17773// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
17774// whether the returned error was because http.StatusNotModified was
17775// returned.
17776func (c *LiasettingsRequestinventoryverificationCall) Do(opts ...googleapi.CallOption) (*LiasettingsRequestInventoryVerificationResponse, error) {
17777	gensupport.SetOptions(c.urlParams_, opts...)
17778	res, err := c.doRequest("json")
17779	if res != nil && res.StatusCode == http.StatusNotModified {
17780		if res.Body != nil {
17781			res.Body.Close()
17782		}
17783		return nil, &googleapi.Error{
17784			Code:   res.StatusCode,
17785			Header: res.Header,
17786		}
17787	}
17788	if err != nil {
17789		return nil, err
17790	}
17791	defer googleapi.CloseBody(res)
17792	if err := googleapi.CheckResponse(res); err != nil {
17793		return nil, err
17794	}
17795	ret := &LiasettingsRequestInventoryVerificationResponse{
17796		ServerResponse: googleapi.ServerResponse{
17797			Header:         res.Header,
17798			HTTPStatusCode: res.StatusCode,
17799		},
17800	}
17801	target := &ret
17802	if err := gensupport.DecodeResponse(target, res); err != nil {
17803		return nil, err
17804	}
17805	return ret, nil
17806	// {
17807	//   "description": "Requests inventory validation for the specified country.",
17808	//   "flatPath": "{merchantId}/liasettings/{accountId}/requestinventoryverification/{country}",
17809	//   "httpMethod": "POST",
17810	//   "id": "content.liasettings.requestinventoryverification",
17811	//   "parameterOrder": [
17812	//     "merchantId",
17813	//     "accountId",
17814	//     "country"
17815	//   ],
17816	//   "parameters": {
17817	//     "accountId": {
17818	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
17819	//       "format": "uint64",
17820	//       "location": "path",
17821	//       "required": true,
17822	//       "type": "string"
17823	//     },
17824	//     "country": {
17825	//       "description": "The country for which inventory validation is requested.",
17826	//       "location": "path",
17827	//       "required": true,
17828	//       "type": "string"
17829	//     },
17830	//     "merchantId": {
17831	//       "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.",
17832	//       "format": "uint64",
17833	//       "location": "path",
17834	//       "required": true,
17835	//       "type": "string"
17836	//     }
17837	//   },
17838	//   "path": "{merchantId}/liasettings/{accountId}/requestinventoryverification/{country}",
17839	//   "response": {
17840	//     "$ref": "LiasettingsRequestInventoryVerificationResponse"
17841	//   },
17842	//   "scopes": [
17843	//     "https://www.googleapis.com/auth/content"
17844	//   ]
17845	// }
17846
17847}
17848
17849// method id "content.liasettings.setinventoryverificationcontact":
17850
17851type LiasettingsSetinventoryverificationcontactCall struct {
17852	s          *APIService
17853	merchantId uint64
17854	accountId  uint64
17855	urlParams_ gensupport.URLParams
17856	ctx_       context.Context
17857	header_    http.Header
17858}
17859
17860// Setinventoryverificationcontact: Sets the inventory verification
17861// contract for the specified country.
17862//
17863// - accountId: The ID of the account that manages the order. This
17864//   cannot be a multi-client account.
17865// - contactEmail: The email of the inventory verification contact.
17866// - contactName: The name of the inventory verification contact.
17867// - country: The country for which inventory verification is requested.
17868// - language: The language for which inventory verification is
17869//   requested.
17870// - merchantId: The ID of the managing account. If this parameter is
17871//   not the same as accountId, then this account must be a multi-client
17872//   account and `accountId` must be the ID of a sub-account of this
17873//   account.
17874func (r *LiasettingsService) Setinventoryverificationcontact(merchantId uint64, accountId uint64, country string, language string, contactName string, contactEmail string) *LiasettingsSetinventoryverificationcontactCall {
17875	c := &LiasettingsSetinventoryverificationcontactCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17876	c.merchantId = merchantId
17877	c.accountId = accountId
17878	c.urlParams_.Set("country", country)
17879	c.urlParams_.Set("language", language)
17880	c.urlParams_.Set("contactName", contactName)
17881	c.urlParams_.Set("contactEmail", contactEmail)
17882	return c
17883}
17884
17885// Fields allows partial responses to be retrieved. See
17886// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17887// for more information.
17888func (c *LiasettingsSetinventoryverificationcontactCall) Fields(s ...googleapi.Field) *LiasettingsSetinventoryverificationcontactCall {
17889	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17890	return c
17891}
17892
17893// Context sets the context to be used in this call's Do method. Any
17894// pending HTTP request will be aborted if the provided context is
17895// canceled.
17896func (c *LiasettingsSetinventoryverificationcontactCall) Context(ctx context.Context) *LiasettingsSetinventoryverificationcontactCall {
17897	c.ctx_ = ctx
17898	return c
17899}
17900
17901// Header returns an http.Header that can be modified by the caller to
17902// add HTTP headers to the request.
17903func (c *LiasettingsSetinventoryverificationcontactCall) Header() http.Header {
17904	if c.header_ == nil {
17905		c.header_ = make(http.Header)
17906	}
17907	return c.header_
17908}
17909
17910func (c *LiasettingsSetinventoryverificationcontactCall) doRequest(alt string) (*http.Response, error) {
17911	reqHeaders := make(http.Header)
17912	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
17913	for k, v := range c.header_ {
17914		reqHeaders[k] = v
17915	}
17916	reqHeaders.Set("User-Agent", c.s.userAgent())
17917	var body io.Reader = nil
17918	c.urlParams_.Set("alt", alt)
17919	c.urlParams_.Set("prettyPrint", "false")
17920	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/setinventoryverificationcontact")
17921	urls += "?" + c.urlParams_.Encode()
17922	req, err := http.NewRequest("POST", urls, body)
17923	if err != nil {
17924		return nil, err
17925	}
17926	req.Header = reqHeaders
17927	googleapi.Expand(req.URL, map[string]string{
17928		"merchantId": strconv.FormatUint(c.merchantId, 10),
17929		"accountId":  strconv.FormatUint(c.accountId, 10),
17930	})
17931	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17932}
17933
17934// Do executes the "content.liasettings.setinventoryverificationcontact" call.
17935// Exactly one of *LiasettingsSetInventoryVerificationContactResponse or
17936// error will be non-nil. Any non-2xx status code is an error. Response
17937// headers are in either
17938// *LiasettingsSetInventoryVerificationContactResponse.ServerResponse.Hea
17939// der or (if a response was returned at all) in
17940// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
17941// whether the returned error was because http.StatusNotModified was
17942// returned.
17943func (c *LiasettingsSetinventoryverificationcontactCall) Do(opts ...googleapi.CallOption) (*LiasettingsSetInventoryVerificationContactResponse, error) {
17944	gensupport.SetOptions(c.urlParams_, opts...)
17945	res, err := c.doRequest("json")
17946	if res != nil && res.StatusCode == http.StatusNotModified {
17947		if res.Body != nil {
17948			res.Body.Close()
17949		}
17950		return nil, &googleapi.Error{
17951			Code:   res.StatusCode,
17952			Header: res.Header,
17953		}
17954	}
17955	if err != nil {
17956		return nil, err
17957	}
17958	defer googleapi.CloseBody(res)
17959	if err := googleapi.CheckResponse(res); err != nil {
17960		return nil, err
17961	}
17962	ret := &LiasettingsSetInventoryVerificationContactResponse{
17963		ServerResponse: googleapi.ServerResponse{
17964			Header:         res.Header,
17965			HTTPStatusCode: res.StatusCode,
17966		},
17967	}
17968	target := &ret
17969	if err := gensupport.DecodeResponse(target, res); err != nil {
17970		return nil, err
17971	}
17972	return ret, nil
17973	// {
17974	//   "description": "Sets the inventory verification contract for the specified country.",
17975	//   "flatPath": "{merchantId}/liasettings/{accountId}/setinventoryverificationcontact",
17976	//   "httpMethod": "POST",
17977	//   "id": "content.liasettings.setinventoryverificationcontact",
17978	//   "parameterOrder": [
17979	//     "merchantId",
17980	//     "accountId",
17981	//     "country",
17982	//     "language",
17983	//     "contactName",
17984	//     "contactEmail"
17985	//   ],
17986	//   "parameters": {
17987	//     "accountId": {
17988	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
17989	//       "format": "uint64",
17990	//       "location": "path",
17991	//       "required": true,
17992	//       "type": "string"
17993	//     },
17994	//     "contactEmail": {
17995	//       "description": "The email of the inventory verification contact.",
17996	//       "location": "query",
17997	//       "required": true,
17998	//       "type": "string"
17999	//     },
18000	//     "contactName": {
18001	//       "description": "The name of the inventory verification contact.",
18002	//       "location": "query",
18003	//       "required": true,
18004	//       "type": "string"
18005	//     },
18006	//     "country": {
18007	//       "description": "The country for which inventory verification is requested.",
18008	//       "location": "query",
18009	//       "required": true,
18010	//       "type": "string"
18011	//     },
18012	//     "language": {
18013	//       "description": "The language for which inventory verification is requested.",
18014	//       "location": "query",
18015	//       "required": true,
18016	//       "type": "string"
18017	//     },
18018	//     "merchantId": {
18019	//       "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.",
18020	//       "format": "uint64",
18021	//       "location": "path",
18022	//       "required": true,
18023	//       "type": "string"
18024	//     }
18025	//   },
18026	//   "path": "{merchantId}/liasettings/{accountId}/setinventoryverificationcontact",
18027	//   "response": {
18028	//     "$ref": "LiasettingsSetInventoryVerificationContactResponse"
18029	//   },
18030	//   "scopes": [
18031	//     "https://www.googleapis.com/auth/content"
18032	//   ]
18033	// }
18034
18035}
18036
18037// method id "content.liasettings.setposdataprovider":
18038
18039type LiasettingsSetposdataproviderCall struct {
18040	s          *APIService
18041	merchantId uint64
18042	accountId  uint64
18043	urlParams_ gensupport.URLParams
18044	ctx_       context.Context
18045	header_    http.Header
18046}
18047
18048// Setposdataprovider: Sets the POS data provider for the specified
18049// country.
18050//
18051// - accountId: The ID of the account for which to retrieve accessible
18052//   Google My Business accounts.
18053// - country: The country for which the POS data provider is selected.
18054// - merchantId: The ID of the managing account. If this parameter is
18055//   not the same as accountId, then this account must be a multi-client
18056//   account and `accountId` must be the ID of a sub-account of this
18057//   account.
18058func (r *LiasettingsService) Setposdataprovider(merchantId uint64, accountId uint64, country string) *LiasettingsSetposdataproviderCall {
18059	c := &LiasettingsSetposdataproviderCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18060	c.merchantId = merchantId
18061	c.accountId = accountId
18062	c.urlParams_.Set("country", country)
18063	return c
18064}
18065
18066// PosDataProviderId sets the optional parameter "posDataProviderId":
18067// The ID of POS data provider.
18068func (c *LiasettingsSetposdataproviderCall) PosDataProviderId(posDataProviderId uint64) *LiasettingsSetposdataproviderCall {
18069	c.urlParams_.Set("posDataProviderId", fmt.Sprint(posDataProviderId))
18070	return c
18071}
18072
18073// PosExternalAccountId sets the optional parameter
18074// "posExternalAccountId": The account ID by which this merchant is
18075// known to the POS data provider.
18076func (c *LiasettingsSetposdataproviderCall) PosExternalAccountId(posExternalAccountId string) *LiasettingsSetposdataproviderCall {
18077	c.urlParams_.Set("posExternalAccountId", posExternalAccountId)
18078	return c
18079}
18080
18081// Fields allows partial responses to be retrieved. See
18082// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18083// for more information.
18084func (c *LiasettingsSetposdataproviderCall) Fields(s ...googleapi.Field) *LiasettingsSetposdataproviderCall {
18085	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18086	return c
18087}
18088
18089// Context sets the context to be used in this call's Do method. Any
18090// pending HTTP request will be aborted if the provided context is
18091// canceled.
18092func (c *LiasettingsSetposdataproviderCall) Context(ctx context.Context) *LiasettingsSetposdataproviderCall {
18093	c.ctx_ = ctx
18094	return c
18095}
18096
18097// Header returns an http.Header that can be modified by the caller to
18098// add HTTP headers to the request.
18099func (c *LiasettingsSetposdataproviderCall) Header() http.Header {
18100	if c.header_ == nil {
18101		c.header_ = make(http.Header)
18102	}
18103	return c.header_
18104}
18105
18106func (c *LiasettingsSetposdataproviderCall) doRequest(alt string) (*http.Response, error) {
18107	reqHeaders := make(http.Header)
18108	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
18109	for k, v := range c.header_ {
18110		reqHeaders[k] = v
18111	}
18112	reqHeaders.Set("User-Agent", c.s.userAgent())
18113	var body io.Reader = nil
18114	c.urlParams_.Set("alt", alt)
18115	c.urlParams_.Set("prettyPrint", "false")
18116	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/setposdataprovider")
18117	urls += "?" + c.urlParams_.Encode()
18118	req, err := http.NewRequest("POST", urls, body)
18119	if err != nil {
18120		return nil, err
18121	}
18122	req.Header = reqHeaders
18123	googleapi.Expand(req.URL, map[string]string{
18124		"merchantId": strconv.FormatUint(c.merchantId, 10),
18125		"accountId":  strconv.FormatUint(c.accountId, 10),
18126	})
18127	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18128}
18129
18130// Do executes the "content.liasettings.setposdataprovider" call.
18131// Exactly one of *LiasettingsSetPosDataProviderResponse or error will
18132// be non-nil. Any non-2xx status code is an error. Response headers are
18133// in either
18134// *LiasettingsSetPosDataProviderResponse.ServerResponse.Header or (if a
18135// response was returned at all) in error.(*googleapi.Error).Header. Use
18136// googleapi.IsNotModified to check whether the returned error was
18137// because http.StatusNotModified was returned.
18138func (c *LiasettingsSetposdataproviderCall) Do(opts ...googleapi.CallOption) (*LiasettingsSetPosDataProviderResponse, error) {
18139	gensupport.SetOptions(c.urlParams_, opts...)
18140	res, err := c.doRequest("json")
18141	if res != nil && res.StatusCode == http.StatusNotModified {
18142		if res.Body != nil {
18143			res.Body.Close()
18144		}
18145		return nil, &googleapi.Error{
18146			Code:   res.StatusCode,
18147			Header: res.Header,
18148		}
18149	}
18150	if err != nil {
18151		return nil, err
18152	}
18153	defer googleapi.CloseBody(res)
18154	if err := googleapi.CheckResponse(res); err != nil {
18155		return nil, err
18156	}
18157	ret := &LiasettingsSetPosDataProviderResponse{
18158		ServerResponse: googleapi.ServerResponse{
18159			Header:         res.Header,
18160			HTTPStatusCode: res.StatusCode,
18161		},
18162	}
18163	target := &ret
18164	if err := gensupport.DecodeResponse(target, res); err != nil {
18165		return nil, err
18166	}
18167	return ret, nil
18168	// {
18169	//   "description": "Sets the POS data provider for the specified country.",
18170	//   "flatPath": "{merchantId}/liasettings/{accountId}/setposdataprovider",
18171	//   "httpMethod": "POST",
18172	//   "id": "content.liasettings.setposdataprovider",
18173	//   "parameterOrder": [
18174	//     "merchantId",
18175	//     "accountId",
18176	//     "country"
18177	//   ],
18178	//   "parameters": {
18179	//     "accountId": {
18180	//       "description": "The ID of the account for which to retrieve accessible Google My Business accounts.",
18181	//       "format": "uint64",
18182	//       "location": "path",
18183	//       "required": true,
18184	//       "type": "string"
18185	//     },
18186	//     "country": {
18187	//       "description": "The country for which the POS data provider is selected.",
18188	//       "location": "query",
18189	//       "required": true,
18190	//       "type": "string"
18191	//     },
18192	//     "merchantId": {
18193	//       "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.",
18194	//       "format": "uint64",
18195	//       "location": "path",
18196	//       "required": true,
18197	//       "type": "string"
18198	//     },
18199	//     "posDataProviderId": {
18200	//       "description": "The ID of POS data provider.",
18201	//       "format": "uint64",
18202	//       "location": "query",
18203	//       "type": "string"
18204	//     },
18205	//     "posExternalAccountId": {
18206	//       "description": "The account ID by which this merchant is known to the POS data provider.",
18207	//       "location": "query",
18208	//       "type": "string"
18209	//     }
18210	//   },
18211	//   "path": "{merchantId}/liasettings/{accountId}/setposdataprovider",
18212	//   "response": {
18213	//     "$ref": "LiasettingsSetPosDataProviderResponse"
18214	//   },
18215	//   "scopes": [
18216	//     "https://www.googleapis.com/auth/content"
18217	//   ]
18218	// }
18219
18220}
18221
18222// method id "content.liasettings.update":
18223
18224type LiasettingsUpdateCall struct {
18225	s           *APIService
18226	merchantId  uint64
18227	accountId   uint64
18228	liasettings *LiaSettings
18229	urlParams_  gensupport.URLParams
18230	ctx_        context.Context
18231	header_     http.Header
18232}
18233
18234// Update: Updates the LIA settings of the account. Any fields that are
18235// not provided are deleted from the resource.
18236//
18237// - accountId: The ID of the account for which to get or update LIA
18238//   settings.
18239// - merchantId: The ID of the managing account. If this parameter is
18240//   not the same as accountId, then this account must be a multi-client
18241//   account and `accountId` must be the ID of a sub-account of this
18242//   account.
18243func (r *LiasettingsService) Update(merchantId uint64, accountId uint64, liasettings *LiaSettings) *LiasettingsUpdateCall {
18244	c := &LiasettingsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18245	c.merchantId = merchantId
18246	c.accountId = accountId
18247	c.liasettings = liasettings
18248	return c
18249}
18250
18251// DryRun sets the optional parameter "dryRun": Flag to simulate a
18252// request like in a live environment. If set to true, dry-run mode
18253// checks the validity of the request and returns errors (if any).
18254func (c *LiasettingsUpdateCall) DryRun(dryRun bool) *LiasettingsUpdateCall {
18255	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
18256	return c
18257}
18258
18259// Fields allows partial responses to be retrieved. See
18260// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18261// for more information.
18262func (c *LiasettingsUpdateCall) Fields(s ...googleapi.Field) *LiasettingsUpdateCall {
18263	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18264	return c
18265}
18266
18267// Context sets the context to be used in this call's Do method. Any
18268// pending HTTP request will be aborted if the provided context is
18269// canceled.
18270func (c *LiasettingsUpdateCall) Context(ctx context.Context) *LiasettingsUpdateCall {
18271	c.ctx_ = ctx
18272	return c
18273}
18274
18275// Header returns an http.Header that can be modified by the caller to
18276// add HTTP headers to the request.
18277func (c *LiasettingsUpdateCall) Header() http.Header {
18278	if c.header_ == nil {
18279		c.header_ = make(http.Header)
18280	}
18281	return c.header_
18282}
18283
18284func (c *LiasettingsUpdateCall) doRequest(alt string) (*http.Response, error) {
18285	reqHeaders := make(http.Header)
18286	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
18287	for k, v := range c.header_ {
18288		reqHeaders[k] = v
18289	}
18290	reqHeaders.Set("User-Agent", c.s.userAgent())
18291	var body io.Reader = nil
18292	body, err := googleapi.WithoutDataWrapper.JSONReader(c.liasettings)
18293	if err != nil {
18294		return nil, err
18295	}
18296	reqHeaders.Set("Content-Type", "application/json")
18297	c.urlParams_.Set("alt", alt)
18298	c.urlParams_.Set("prettyPrint", "false")
18299	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}")
18300	urls += "?" + c.urlParams_.Encode()
18301	req, err := http.NewRequest("PUT", urls, body)
18302	if err != nil {
18303		return nil, err
18304	}
18305	req.Header = reqHeaders
18306	googleapi.Expand(req.URL, map[string]string{
18307		"merchantId": strconv.FormatUint(c.merchantId, 10),
18308		"accountId":  strconv.FormatUint(c.accountId, 10),
18309	})
18310	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18311}
18312
18313// Do executes the "content.liasettings.update" call.
18314// Exactly one of *LiaSettings or error will be non-nil. Any non-2xx
18315// status code is an error. Response headers are in either
18316// *LiaSettings.ServerResponse.Header or (if a response was returned at
18317// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
18318// to check whether the returned error was because
18319// http.StatusNotModified was returned.
18320func (c *LiasettingsUpdateCall) Do(opts ...googleapi.CallOption) (*LiaSettings, error) {
18321	gensupport.SetOptions(c.urlParams_, opts...)
18322	res, err := c.doRequest("json")
18323	if res != nil && res.StatusCode == http.StatusNotModified {
18324		if res.Body != nil {
18325			res.Body.Close()
18326		}
18327		return nil, &googleapi.Error{
18328			Code:   res.StatusCode,
18329			Header: res.Header,
18330		}
18331	}
18332	if err != nil {
18333		return nil, err
18334	}
18335	defer googleapi.CloseBody(res)
18336	if err := googleapi.CheckResponse(res); err != nil {
18337		return nil, err
18338	}
18339	ret := &LiaSettings{
18340		ServerResponse: googleapi.ServerResponse{
18341			Header:         res.Header,
18342			HTTPStatusCode: res.StatusCode,
18343		},
18344	}
18345	target := &ret
18346	if err := gensupport.DecodeResponse(target, res); err != nil {
18347		return nil, err
18348	}
18349	return ret, nil
18350	// {
18351	//   "description": "Updates the LIA settings of the account. Any fields that are not provided are deleted from the resource.",
18352	//   "flatPath": "{merchantId}/liasettings/{accountId}",
18353	//   "httpMethod": "PUT",
18354	//   "id": "content.liasettings.update",
18355	//   "parameterOrder": [
18356	//     "merchantId",
18357	//     "accountId"
18358	//   ],
18359	//   "parameters": {
18360	//     "accountId": {
18361	//       "description": "The ID of the account for which to get or update LIA settings.",
18362	//       "format": "uint64",
18363	//       "location": "path",
18364	//       "required": true,
18365	//       "type": "string"
18366	//     },
18367	//     "dryRun": {
18368	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
18369	//       "location": "query",
18370	//       "type": "boolean"
18371	//     },
18372	//     "merchantId": {
18373	//       "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.",
18374	//       "format": "uint64",
18375	//       "location": "path",
18376	//       "required": true,
18377	//       "type": "string"
18378	//     }
18379	//   },
18380	//   "path": "{merchantId}/liasettings/{accountId}",
18381	//   "request": {
18382	//     "$ref": "LiaSettings"
18383	//   },
18384	//   "response": {
18385	//     "$ref": "LiaSettings"
18386	//   },
18387	//   "scopes": [
18388	//     "https://www.googleapis.com/auth/content"
18389	//   ]
18390	// }
18391
18392}
18393
18394// method id "content.orderinvoices.createchargeinvoice":
18395
18396type OrderinvoicesCreatechargeinvoiceCall struct {
18397	s                                       *APIService
18398	merchantId                              uint64
18399	orderId                                 string
18400	orderinvoicescreatechargeinvoicerequest *OrderinvoicesCreateChargeInvoiceRequest
18401	urlParams_                              gensupport.URLParams
18402	ctx_                                    context.Context
18403	header_                                 http.Header
18404}
18405
18406// Createchargeinvoice: Creates a charge invoice for a shipment group,
18407// and triggers a charge capture for orderinvoice enabled orders.
18408//
18409// - merchantId: The ID of the account that manages the order. This
18410//   cannot be a multi-client account.
18411// - orderId: The ID of the order.
18412func (r *OrderinvoicesService) Createchargeinvoice(merchantId uint64, orderId string, orderinvoicescreatechargeinvoicerequest *OrderinvoicesCreateChargeInvoiceRequest) *OrderinvoicesCreatechargeinvoiceCall {
18413	c := &OrderinvoicesCreatechargeinvoiceCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18414	c.merchantId = merchantId
18415	c.orderId = orderId
18416	c.orderinvoicescreatechargeinvoicerequest = orderinvoicescreatechargeinvoicerequest
18417	return c
18418}
18419
18420// Fields allows partial responses to be retrieved. See
18421// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18422// for more information.
18423func (c *OrderinvoicesCreatechargeinvoiceCall) Fields(s ...googleapi.Field) *OrderinvoicesCreatechargeinvoiceCall {
18424	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18425	return c
18426}
18427
18428// Context sets the context to be used in this call's Do method. Any
18429// pending HTTP request will be aborted if the provided context is
18430// canceled.
18431func (c *OrderinvoicesCreatechargeinvoiceCall) Context(ctx context.Context) *OrderinvoicesCreatechargeinvoiceCall {
18432	c.ctx_ = ctx
18433	return c
18434}
18435
18436// Header returns an http.Header that can be modified by the caller to
18437// add HTTP headers to the request.
18438func (c *OrderinvoicesCreatechargeinvoiceCall) Header() http.Header {
18439	if c.header_ == nil {
18440		c.header_ = make(http.Header)
18441	}
18442	return c.header_
18443}
18444
18445func (c *OrderinvoicesCreatechargeinvoiceCall) doRequest(alt string) (*http.Response, error) {
18446	reqHeaders := make(http.Header)
18447	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
18448	for k, v := range c.header_ {
18449		reqHeaders[k] = v
18450	}
18451	reqHeaders.Set("User-Agent", c.s.userAgent())
18452	var body io.Reader = nil
18453	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderinvoicescreatechargeinvoicerequest)
18454	if err != nil {
18455		return nil, err
18456	}
18457	reqHeaders.Set("Content-Type", "application/json")
18458	c.urlParams_.Set("alt", alt)
18459	c.urlParams_.Set("prettyPrint", "false")
18460	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderinvoices/{orderId}/createChargeInvoice")
18461	urls += "?" + c.urlParams_.Encode()
18462	req, err := http.NewRequest("POST", urls, body)
18463	if err != nil {
18464		return nil, err
18465	}
18466	req.Header = reqHeaders
18467	googleapi.Expand(req.URL, map[string]string{
18468		"merchantId": strconv.FormatUint(c.merchantId, 10),
18469		"orderId":    c.orderId,
18470	})
18471	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18472}
18473
18474// Do executes the "content.orderinvoices.createchargeinvoice" call.
18475// Exactly one of *OrderinvoicesCreateChargeInvoiceResponse or error
18476// will be non-nil. Any non-2xx status code is an error. Response
18477// headers are in either
18478// *OrderinvoicesCreateChargeInvoiceResponse.ServerResponse.Header or
18479// (if a response was returned at all) in
18480// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
18481// whether the returned error was because http.StatusNotModified was
18482// returned.
18483func (c *OrderinvoicesCreatechargeinvoiceCall) Do(opts ...googleapi.CallOption) (*OrderinvoicesCreateChargeInvoiceResponse, error) {
18484	gensupport.SetOptions(c.urlParams_, opts...)
18485	res, err := c.doRequest("json")
18486	if res != nil && res.StatusCode == http.StatusNotModified {
18487		if res.Body != nil {
18488			res.Body.Close()
18489		}
18490		return nil, &googleapi.Error{
18491			Code:   res.StatusCode,
18492			Header: res.Header,
18493		}
18494	}
18495	if err != nil {
18496		return nil, err
18497	}
18498	defer googleapi.CloseBody(res)
18499	if err := googleapi.CheckResponse(res); err != nil {
18500		return nil, err
18501	}
18502	ret := &OrderinvoicesCreateChargeInvoiceResponse{
18503		ServerResponse: googleapi.ServerResponse{
18504			Header:         res.Header,
18505			HTTPStatusCode: res.StatusCode,
18506		},
18507	}
18508	target := &ret
18509	if err := gensupport.DecodeResponse(target, res); err != nil {
18510		return nil, err
18511	}
18512	return ret, nil
18513	// {
18514	//   "description": "Creates a charge invoice for a shipment group, and triggers a charge capture for orderinvoice enabled orders.",
18515	//   "flatPath": "{merchantId}/orderinvoices/{orderId}/createChargeInvoice",
18516	//   "httpMethod": "POST",
18517	//   "id": "content.orderinvoices.createchargeinvoice",
18518	//   "parameterOrder": [
18519	//     "merchantId",
18520	//     "orderId"
18521	//   ],
18522	//   "parameters": {
18523	//     "merchantId": {
18524	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
18525	//       "format": "uint64",
18526	//       "location": "path",
18527	//       "required": true,
18528	//       "type": "string"
18529	//     },
18530	//     "orderId": {
18531	//       "description": "The ID of the order.",
18532	//       "location": "path",
18533	//       "required": true,
18534	//       "type": "string"
18535	//     }
18536	//   },
18537	//   "path": "{merchantId}/orderinvoices/{orderId}/createChargeInvoice",
18538	//   "request": {
18539	//     "$ref": "OrderinvoicesCreateChargeInvoiceRequest"
18540	//   },
18541	//   "response": {
18542	//     "$ref": "OrderinvoicesCreateChargeInvoiceResponse"
18543	//   },
18544	//   "scopes": [
18545	//     "https://www.googleapis.com/auth/content"
18546	//   ]
18547	// }
18548
18549}
18550
18551// method id "content.orderinvoices.createrefundinvoice":
18552
18553type OrderinvoicesCreaterefundinvoiceCall struct {
18554	s                                       *APIService
18555	merchantId                              uint64
18556	orderId                                 string
18557	orderinvoicescreaterefundinvoicerequest *OrderinvoicesCreateRefundInvoiceRequest
18558	urlParams_                              gensupport.URLParams
18559	ctx_                                    context.Context
18560	header_                                 http.Header
18561}
18562
18563// Createrefundinvoice: Creates a refund invoice for one or more
18564// shipment groups, and triggers a refund for orderinvoice enabled
18565// orders. This can only be used for line items that have previously
18566// been charged using `createChargeInvoice`. All amounts (except for the
18567// summary) are incremental with respect to the previous invoice.
18568//
18569// - merchantId: The ID of the account that manages the order. This
18570//   cannot be a multi-client account.
18571// - orderId: The ID of the order.
18572func (r *OrderinvoicesService) Createrefundinvoice(merchantId uint64, orderId string, orderinvoicescreaterefundinvoicerequest *OrderinvoicesCreateRefundInvoiceRequest) *OrderinvoicesCreaterefundinvoiceCall {
18573	c := &OrderinvoicesCreaterefundinvoiceCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18574	c.merchantId = merchantId
18575	c.orderId = orderId
18576	c.orderinvoicescreaterefundinvoicerequest = orderinvoicescreaterefundinvoicerequest
18577	return c
18578}
18579
18580// Fields allows partial responses to be retrieved. See
18581// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18582// for more information.
18583func (c *OrderinvoicesCreaterefundinvoiceCall) Fields(s ...googleapi.Field) *OrderinvoicesCreaterefundinvoiceCall {
18584	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18585	return c
18586}
18587
18588// Context sets the context to be used in this call's Do method. Any
18589// pending HTTP request will be aborted if the provided context is
18590// canceled.
18591func (c *OrderinvoicesCreaterefundinvoiceCall) Context(ctx context.Context) *OrderinvoicesCreaterefundinvoiceCall {
18592	c.ctx_ = ctx
18593	return c
18594}
18595
18596// Header returns an http.Header that can be modified by the caller to
18597// add HTTP headers to the request.
18598func (c *OrderinvoicesCreaterefundinvoiceCall) Header() http.Header {
18599	if c.header_ == nil {
18600		c.header_ = make(http.Header)
18601	}
18602	return c.header_
18603}
18604
18605func (c *OrderinvoicesCreaterefundinvoiceCall) doRequest(alt string) (*http.Response, error) {
18606	reqHeaders := make(http.Header)
18607	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
18608	for k, v := range c.header_ {
18609		reqHeaders[k] = v
18610	}
18611	reqHeaders.Set("User-Agent", c.s.userAgent())
18612	var body io.Reader = nil
18613	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderinvoicescreaterefundinvoicerequest)
18614	if err != nil {
18615		return nil, err
18616	}
18617	reqHeaders.Set("Content-Type", "application/json")
18618	c.urlParams_.Set("alt", alt)
18619	c.urlParams_.Set("prettyPrint", "false")
18620	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderinvoices/{orderId}/createRefundInvoice")
18621	urls += "?" + c.urlParams_.Encode()
18622	req, err := http.NewRequest("POST", urls, body)
18623	if err != nil {
18624		return nil, err
18625	}
18626	req.Header = reqHeaders
18627	googleapi.Expand(req.URL, map[string]string{
18628		"merchantId": strconv.FormatUint(c.merchantId, 10),
18629		"orderId":    c.orderId,
18630	})
18631	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18632}
18633
18634// Do executes the "content.orderinvoices.createrefundinvoice" call.
18635// Exactly one of *OrderinvoicesCreateRefundInvoiceResponse or error
18636// will be non-nil. Any non-2xx status code is an error. Response
18637// headers are in either
18638// *OrderinvoicesCreateRefundInvoiceResponse.ServerResponse.Header or
18639// (if a response was returned at all) in
18640// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
18641// whether the returned error was because http.StatusNotModified was
18642// returned.
18643func (c *OrderinvoicesCreaterefundinvoiceCall) Do(opts ...googleapi.CallOption) (*OrderinvoicesCreateRefundInvoiceResponse, error) {
18644	gensupport.SetOptions(c.urlParams_, opts...)
18645	res, err := c.doRequest("json")
18646	if res != nil && res.StatusCode == http.StatusNotModified {
18647		if res.Body != nil {
18648			res.Body.Close()
18649		}
18650		return nil, &googleapi.Error{
18651			Code:   res.StatusCode,
18652			Header: res.Header,
18653		}
18654	}
18655	if err != nil {
18656		return nil, err
18657	}
18658	defer googleapi.CloseBody(res)
18659	if err := googleapi.CheckResponse(res); err != nil {
18660		return nil, err
18661	}
18662	ret := &OrderinvoicesCreateRefundInvoiceResponse{
18663		ServerResponse: googleapi.ServerResponse{
18664			Header:         res.Header,
18665			HTTPStatusCode: res.StatusCode,
18666		},
18667	}
18668	target := &ret
18669	if err := gensupport.DecodeResponse(target, res); err != nil {
18670		return nil, err
18671	}
18672	return ret, nil
18673	// {
18674	//   "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.",
18675	//   "flatPath": "{merchantId}/orderinvoices/{orderId}/createRefundInvoice",
18676	//   "httpMethod": "POST",
18677	//   "id": "content.orderinvoices.createrefundinvoice",
18678	//   "parameterOrder": [
18679	//     "merchantId",
18680	//     "orderId"
18681	//   ],
18682	//   "parameters": {
18683	//     "merchantId": {
18684	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
18685	//       "format": "uint64",
18686	//       "location": "path",
18687	//       "required": true,
18688	//       "type": "string"
18689	//     },
18690	//     "orderId": {
18691	//       "description": "The ID of the order.",
18692	//       "location": "path",
18693	//       "required": true,
18694	//       "type": "string"
18695	//     }
18696	//   },
18697	//   "path": "{merchantId}/orderinvoices/{orderId}/createRefundInvoice",
18698	//   "request": {
18699	//     "$ref": "OrderinvoicesCreateRefundInvoiceRequest"
18700	//   },
18701	//   "response": {
18702	//     "$ref": "OrderinvoicesCreateRefundInvoiceResponse"
18703	//   },
18704	//   "scopes": [
18705	//     "https://www.googleapis.com/auth/content"
18706	//   ]
18707	// }
18708
18709}
18710
18711// method id "content.orderreports.listdisbursements":
18712
18713type OrderreportsListdisbursementsCall struct {
18714	s            *APIService
18715	merchantId   uint64
18716	urlParams_   gensupport.URLParams
18717	ifNoneMatch_ string
18718	ctx_         context.Context
18719	header_      http.Header
18720}
18721
18722// Listdisbursements: Retrieves a report for disbursements from your
18723// Merchant Center account.
18724//
18725// - merchantId: The ID of the account that manages the order. This
18726//   cannot be a multi-client account.
18727func (r *OrderreportsService) Listdisbursements(merchantId uint64) *OrderreportsListdisbursementsCall {
18728	c := &OrderreportsListdisbursementsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18729	c.merchantId = merchantId
18730	return c
18731}
18732
18733// DisbursementEndDate sets the optional parameter
18734// "disbursementEndDate": The last date which disbursements occurred. In
18735// ISO 8601 format. Default: current date.
18736func (c *OrderreportsListdisbursementsCall) DisbursementEndDate(disbursementEndDate string) *OrderreportsListdisbursementsCall {
18737	c.urlParams_.Set("disbursementEndDate", disbursementEndDate)
18738	return c
18739}
18740
18741// DisbursementStartDate sets the optional parameter
18742// "disbursementStartDate": The first date which disbursements occurred.
18743// In ISO 8601 format.
18744func (c *OrderreportsListdisbursementsCall) DisbursementStartDate(disbursementStartDate string) *OrderreportsListdisbursementsCall {
18745	c.urlParams_.Set("disbursementStartDate", disbursementStartDate)
18746	return c
18747}
18748
18749// MaxResults sets the optional parameter "maxResults": The maximum
18750// number of disbursements to return in the response, used for paging.
18751func (c *OrderreportsListdisbursementsCall) MaxResults(maxResults int64) *OrderreportsListdisbursementsCall {
18752	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
18753	return c
18754}
18755
18756// PageToken sets the optional parameter "pageToken": The token returned
18757// by the previous request.
18758func (c *OrderreportsListdisbursementsCall) PageToken(pageToken string) *OrderreportsListdisbursementsCall {
18759	c.urlParams_.Set("pageToken", pageToken)
18760	return c
18761}
18762
18763// Fields allows partial responses to be retrieved. See
18764// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18765// for more information.
18766func (c *OrderreportsListdisbursementsCall) Fields(s ...googleapi.Field) *OrderreportsListdisbursementsCall {
18767	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18768	return c
18769}
18770
18771// IfNoneMatch sets the optional parameter which makes the operation
18772// fail if the object's ETag matches the given value. This is useful for
18773// getting updates only after the object has changed since the last
18774// request. Use googleapi.IsNotModified to check whether the response
18775// error from Do is the result of In-None-Match.
18776func (c *OrderreportsListdisbursementsCall) IfNoneMatch(entityTag string) *OrderreportsListdisbursementsCall {
18777	c.ifNoneMatch_ = entityTag
18778	return c
18779}
18780
18781// Context sets the context to be used in this call's Do method. Any
18782// pending HTTP request will be aborted if the provided context is
18783// canceled.
18784func (c *OrderreportsListdisbursementsCall) Context(ctx context.Context) *OrderreportsListdisbursementsCall {
18785	c.ctx_ = ctx
18786	return c
18787}
18788
18789// Header returns an http.Header that can be modified by the caller to
18790// add HTTP headers to the request.
18791func (c *OrderreportsListdisbursementsCall) Header() http.Header {
18792	if c.header_ == nil {
18793		c.header_ = make(http.Header)
18794	}
18795	return c.header_
18796}
18797
18798func (c *OrderreportsListdisbursementsCall) doRequest(alt string) (*http.Response, error) {
18799	reqHeaders := make(http.Header)
18800	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
18801	for k, v := range c.header_ {
18802		reqHeaders[k] = v
18803	}
18804	reqHeaders.Set("User-Agent", c.s.userAgent())
18805	if c.ifNoneMatch_ != "" {
18806		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
18807	}
18808	var body io.Reader = nil
18809	c.urlParams_.Set("alt", alt)
18810	c.urlParams_.Set("prettyPrint", "false")
18811	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreports/disbursements")
18812	urls += "?" + c.urlParams_.Encode()
18813	req, err := http.NewRequest("GET", urls, body)
18814	if err != nil {
18815		return nil, err
18816	}
18817	req.Header = reqHeaders
18818	googleapi.Expand(req.URL, map[string]string{
18819		"merchantId": strconv.FormatUint(c.merchantId, 10),
18820	})
18821	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18822}
18823
18824// Do executes the "content.orderreports.listdisbursements" call.
18825// Exactly one of *OrderreportsListDisbursementsResponse or error will
18826// be non-nil. Any non-2xx status code is an error. Response headers are
18827// in either
18828// *OrderreportsListDisbursementsResponse.ServerResponse.Header or (if a
18829// response was returned at all) in error.(*googleapi.Error).Header. Use
18830// googleapi.IsNotModified to check whether the returned error was
18831// because http.StatusNotModified was returned.
18832func (c *OrderreportsListdisbursementsCall) Do(opts ...googleapi.CallOption) (*OrderreportsListDisbursementsResponse, error) {
18833	gensupport.SetOptions(c.urlParams_, opts...)
18834	res, err := c.doRequest("json")
18835	if res != nil && res.StatusCode == http.StatusNotModified {
18836		if res.Body != nil {
18837			res.Body.Close()
18838		}
18839		return nil, &googleapi.Error{
18840			Code:   res.StatusCode,
18841			Header: res.Header,
18842		}
18843	}
18844	if err != nil {
18845		return nil, err
18846	}
18847	defer googleapi.CloseBody(res)
18848	if err := googleapi.CheckResponse(res); err != nil {
18849		return nil, err
18850	}
18851	ret := &OrderreportsListDisbursementsResponse{
18852		ServerResponse: googleapi.ServerResponse{
18853			Header:         res.Header,
18854			HTTPStatusCode: res.StatusCode,
18855		},
18856	}
18857	target := &ret
18858	if err := gensupport.DecodeResponse(target, res); err != nil {
18859		return nil, err
18860	}
18861	return ret, nil
18862	// {
18863	//   "description": "Retrieves a report for disbursements from your Merchant Center account.",
18864	//   "flatPath": "{merchantId}/orderreports/disbursements",
18865	//   "httpMethod": "GET",
18866	//   "id": "content.orderreports.listdisbursements",
18867	//   "parameterOrder": [
18868	//     "merchantId"
18869	//   ],
18870	//   "parameters": {
18871	//     "disbursementEndDate": {
18872	//       "description": "The last date which disbursements occurred. In ISO 8601 format. Default: current date.",
18873	//       "location": "query",
18874	//       "type": "string"
18875	//     },
18876	//     "disbursementStartDate": {
18877	//       "description": "The first date which disbursements occurred. In ISO 8601 format.",
18878	//       "location": "query",
18879	//       "type": "string"
18880	//     },
18881	//     "maxResults": {
18882	//       "description": "The maximum number of disbursements to return in the response, used for paging.",
18883	//       "format": "uint32",
18884	//       "location": "query",
18885	//       "type": "integer"
18886	//     },
18887	//     "merchantId": {
18888	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
18889	//       "format": "uint64",
18890	//       "location": "path",
18891	//       "required": true,
18892	//       "type": "string"
18893	//     },
18894	//     "pageToken": {
18895	//       "description": "The token returned by the previous request.",
18896	//       "location": "query",
18897	//       "type": "string"
18898	//     }
18899	//   },
18900	//   "path": "{merchantId}/orderreports/disbursements",
18901	//   "response": {
18902	//     "$ref": "OrderreportsListDisbursementsResponse"
18903	//   },
18904	//   "scopes": [
18905	//     "https://www.googleapis.com/auth/content"
18906	//   ]
18907	// }
18908
18909}
18910
18911// Pages invokes f for each page of results.
18912// A non-nil error returned from f will halt the iteration.
18913// The provided context supersedes any context provided to the Context method.
18914func (c *OrderreportsListdisbursementsCall) Pages(ctx context.Context, f func(*OrderreportsListDisbursementsResponse) error) error {
18915	c.ctx_ = ctx
18916	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
18917	for {
18918		x, err := c.Do()
18919		if err != nil {
18920			return err
18921		}
18922		if err := f(x); err != nil {
18923			return err
18924		}
18925		if x.NextPageToken == "" {
18926			return nil
18927		}
18928		c.PageToken(x.NextPageToken)
18929	}
18930}
18931
18932// method id "content.orderreports.listtransactions":
18933
18934type OrderreportsListtransactionsCall struct {
18935	s              *APIService
18936	merchantId     uint64
18937	disbursementId string
18938	urlParams_     gensupport.URLParams
18939	ifNoneMatch_   string
18940	ctx_           context.Context
18941	header_        http.Header
18942}
18943
18944// Listtransactions: Retrieves a list of transactions for a disbursement
18945// from your Merchant Center account.
18946//
18947// - disbursementId: The Google-provided ID of the disbursement (found
18948//   in Wallet).
18949// - merchantId: The ID of the account that manages the order. This
18950//   cannot be a multi-client account.
18951func (r *OrderreportsService) Listtransactions(merchantId uint64, disbursementId string) *OrderreportsListtransactionsCall {
18952	c := &OrderreportsListtransactionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18953	c.merchantId = merchantId
18954	c.disbursementId = disbursementId
18955	return c
18956}
18957
18958// MaxResults sets the optional parameter "maxResults": The maximum
18959// number of disbursements to return in the response, used for paging.
18960func (c *OrderreportsListtransactionsCall) MaxResults(maxResults int64) *OrderreportsListtransactionsCall {
18961	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
18962	return c
18963}
18964
18965// PageToken sets the optional parameter "pageToken": The token returned
18966// by the previous request.
18967func (c *OrderreportsListtransactionsCall) PageToken(pageToken string) *OrderreportsListtransactionsCall {
18968	c.urlParams_.Set("pageToken", pageToken)
18969	return c
18970}
18971
18972// TransactionEndDate sets the optional parameter "transactionEndDate":
18973// The last date in which transaction occurred. In ISO 8601 format.
18974// Default: current date.
18975func (c *OrderreportsListtransactionsCall) TransactionEndDate(transactionEndDate string) *OrderreportsListtransactionsCall {
18976	c.urlParams_.Set("transactionEndDate", transactionEndDate)
18977	return c
18978}
18979
18980// TransactionStartDate sets the optional parameter
18981// "transactionStartDate": The first date in which transaction occurred.
18982// In ISO 8601 format.
18983func (c *OrderreportsListtransactionsCall) TransactionStartDate(transactionStartDate string) *OrderreportsListtransactionsCall {
18984	c.urlParams_.Set("transactionStartDate", transactionStartDate)
18985	return c
18986}
18987
18988// Fields allows partial responses to be retrieved. See
18989// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18990// for more information.
18991func (c *OrderreportsListtransactionsCall) Fields(s ...googleapi.Field) *OrderreportsListtransactionsCall {
18992	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18993	return c
18994}
18995
18996// IfNoneMatch sets the optional parameter which makes the operation
18997// fail if the object's ETag matches the given value. This is useful for
18998// getting updates only after the object has changed since the last
18999// request. Use googleapi.IsNotModified to check whether the response
19000// error from Do is the result of In-None-Match.
19001func (c *OrderreportsListtransactionsCall) IfNoneMatch(entityTag string) *OrderreportsListtransactionsCall {
19002	c.ifNoneMatch_ = entityTag
19003	return c
19004}
19005
19006// Context sets the context to be used in this call's Do method. Any
19007// pending HTTP request will be aborted if the provided context is
19008// canceled.
19009func (c *OrderreportsListtransactionsCall) Context(ctx context.Context) *OrderreportsListtransactionsCall {
19010	c.ctx_ = ctx
19011	return c
19012}
19013
19014// Header returns an http.Header that can be modified by the caller to
19015// add HTTP headers to the request.
19016func (c *OrderreportsListtransactionsCall) Header() http.Header {
19017	if c.header_ == nil {
19018		c.header_ = make(http.Header)
19019	}
19020	return c.header_
19021}
19022
19023func (c *OrderreportsListtransactionsCall) doRequest(alt string) (*http.Response, error) {
19024	reqHeaders := make(http.Header)
19025	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
19026	for k, v := range c.header_ {
19027		reqHeaders[k] = v
19028	}
19029	reqHeaders.Set("User-Agent", c.s.userAgent())
19030	if c.ifNoneMatch_ != "" {
19031		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
19032	}
19033	var body io.Reader = nil
19034	c.urlParams_.Set("alt", alt)
19035	c.urlParams_.Set("prettyPrint", "false")
19036	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreports/disbursements/{disbursementId}/transactions")
19037	urls += "?" + c.urlParams_.Encode()
19038	req, err := http.NewRequest("GET", urls, body)
19039	if err != nil {
19040		return nil, err
19041	}
19042	req.Header = reqHeaders
19043	googleapi.Expand(req.URL, map[string]string{
19044		"merchantId":     strconv.FormatUint(c.merchantId, 10),
19045		"disbursementId": c.disbursementId,
19046	})
19047	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19048}
19049
19050// Do executes the "content.orderreports.listtransactions" call.
19051// Exactly one of *OrderreportsListTransactionsResponse or error will be
19052// non-nil. Any non-2xx status code is an error. Response headers are in
19053// either *OrderreportsListTransactionsResponse.ServerResponse.Header or
19054// (if a response was returned at all) in
19055// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
19056// whether the returned error was because http.StatusNotModified was
19057// returned.
19058func (c *OrderreportsListtransactionsCall) Do(opts ...googleapi.CallOption) (*OrderreportsListTransactionsResponse, error) {
19059	gensupport.SetOptions(c.urlParams_, opts...)
19060	res, err := c.doRequest("json")
19061	if res != nil && res.StatusCode == http.StatusNotModified {
19062		if res.Body != nil {
19063			res.Body.Close()
19064		}
19065		return nil, &googleapi.Error{
19066			Code:   res.StatusCode,
19067			Header: res.Header,
19068		}
19069	}
19070	if err != nil {
19071		return nil, err
19072	}
19073	defer googleapi.CloseBody(res)
19074	if err := googleapi.CheckResponse(res); err != nil {
19075		return nil, err
19076	}
19077	ret := &OrderreportsListTransactionsResponse{
19078		ServerResponse: googleapi.ServerResponse{
19079			Header:         res.Header,
19080			HTTPStatusCode: res.StatusCode,
19081		},
19082	}
19083	target := &ret
19084	if err := gensupport.DecodeResponse(target, res); err != nil {
19085		return nil, err
19086	}
19087	return ret, nil
19088	// {
19089	//   "description": "Retrieves a list of transactions for a disbursement from your Merchant Center account.",
19090	//   "flatPath": "{merchantId}/orderreports/disbursements/{disbursementId}/transactions",
19091	//   "httpMethod": "GET",
19092	//   "id": "content.orderreports.listtransactions",
19093	//   "parameterOrder": [
19094	//     "merchantId",
19095	//     "disbursementId"
19096	//   ],
19097	//   "parameters": {
19098	//     "disbursementId": {
19099	//       "description": "The Google-provided ID of the disbursement (found in Wallet).",
19100	//       "location": "path",
19101	//       "required": true,
19102	//       "type": "string"
19103	//     },
19104	//     "maxResults": {
19105	//       "description": "The maximum number of disbursements to return in the response, used for paging.",
19106	//       "format": "uint32",
19107	//       "location": "query",
19108	//       "type": "integer"
19109	//     },
19110	//     "merchantId": {
19111	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
19112	//       "format": "uint64",
19113	//       "location": "path",
19114	//       "required": true,
19115	//       "type": "string"
19116	//     },
19117	//     "pageToken": {
19118	//       "description": "The token returned by the previous request.",
19119	//       "location": "query",
19120	//       "type": "string"
19121	//     },
19122	//     "transactionEndDate": {
19123	//       "description": "The last date in which transaction occurred. In ISO 8601 format. Default: current date.",
19124	//       "location": "query",
19125	//       "type": "string"
19126	//     },
19127	//     "transactionStartDate": {
19128	//       "description": "The first date in which transaction occurred. In ISO 8601 format.",
19129	//       "location": "query",
19130	//       "type": "string"
19131	//     }
19132	//   },
19133	//   "path": "{merchantId}/orderreports/disbursements/{disbursementId}/transactions",
19134	//   "response": {
19135	//     "$ref": "OrderreportsListTransactionsResponse"
19136	//   },
19137	//   "scopes": [
19138	//     "https://www.googleapis.com/auth/content"
19139	//   ]
19140	// }
19141
19142}
19143
19144// Pages invokes f for each page of results.
19145// A non-nil error returned from f will halt the iteration.
19146// The provided context supersedes any context provided to the Context method.
19147func (c *OrderreportsListtransactionsCall) Pages(ctx context.Context, f func(*OrderreportsListTransactionsResponse) error) error {
19148	c.ctx_ = ctx
19149	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
19150	for {
19151		x, err := c.Do()
19152		if err != nil {
19153			return err
19154		}
19155		if err := f(x); err != nil {
19156			return err
19157		}
19158		if x.NextPageToken == "" {
19159			return nil
19160		}
19161		c.PageToken(x.NextPageToken)
19162	}
19163}
19164
19165// method id "content.orderreturns.get":
19166
19167type OrderreturnsGetCall struct {
19168	s            *APIService
19169	merchantId   uint64
19170	returnId     string
19171	urlParams_   gensupport.URLParams
19172	ifNoneMatch_ string
19173	ctx_         context.Context
19174	header_      http.Header
19175}
19176
19177// Get: Retrieves an order return from your Merchant Center account.
19178//
19179// - merchantId: The ID of the account that manages the order. This
19180//   cannot be a multi-client account.
19181// - returnId: Merchant order return ID generated by Google.
19182func (r *OrderreturnsService) Get(merchantId uint64, returnId string) *OrderreturnsGetCall {
19183	c := &OrderreturnsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19184	c.merchantId = merchantId
19185	c.returnId = returnId
19186	return c
19187}
19188
19189// Fields allows partial responses to be retrieved. See
19190// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19191// for more information.
19192func (c *OrderreturnsGetCall) Fields(s ...googleapi.Field) *OrderreturnsGetCall {
19193	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19194	return c
19195}
19196
19197// IfNoneMatch sets the optional parameter which makes the operation
19198// fail if the object's ETag matches the given value. This is useful for
19199// getting updates only after the object has changed since the last
19200// request. Use googleapi.IsNotModified to check whether the response
19201// error from Do is the result of In-None-Match.
19202func (c *OrderreturnsGetCall) IfNoneMatch(entityTag string) *OrderreturnsGetCall {
19203	c.ifNoneMatch_ = entityTag
19204	return c
19205}
19206
19207// Context sets the context to be used in this call's Do method. Any
19208// pending HTTP request will be aborted if the provided context is
19209// canceled.
19210func (c *OrderreturnsGetCall) Context(ctx context.Context) *OrderreturnsGetCall {
19211	c.ctx_ = ctx
19212	return c
19213}
19214
19215// Header returns an http.Header that can be modified by the caller to
19216// add HTTP headers to the request.
19217func (c *OrderreturnsGetCall) Header() http.Header {
19218	if c.header_ == nil {
19219		c.header_ = make(http.Header)
19220	}
19221	return c.header_
19222}
19223
19224func (c *OrderreturnsGetCall) doRequest(alt string) (*http.Response, error) {
19225	reqHeaders := make(http.Header)
19226	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
19227	for k, v := range c.header_ {
19228		reqHeaders[k] = v
19229	}
19230	reqHeaders.Set("User-Agent", c.s.userAgent())
19231	if c.ifNoneMatch_ != "" {
19232		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
19233	}
19234	var body io.Reader = nil
19235	c.urlParams_.Set("alt", alt)
19236	c.urlParams_.Set("prettyPrint", "false")
19237	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreturns/{returnId}")
19238	urls += "?" + c.urlParams_.Encode()
19239	req, err := http.NewRequest("GET", urls, body)
19240	if err != nil {
19241		return nil, err
19242	}
19243	req.Header = reqHeaders
19244	googleapi.Expand(req.URL, map[string]string{
19245		"merchantId": strconv.FormatUint(c.merchantId, 10),
19246		"returnId":   c.returnId,
19247	})
19248	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19249}
19250
19251// Do executes the "content.orderreturns.get" call.
19252// Exactly one of *MerchantOrderReturn or error will be non-nil. Any
19253// non-2xx status code is an error. Response headers are in either
19254// *MerchantOrderReturn.ServerResponse.Header or (if a response was
19255// returned at all) in error.(*googleapi.Error).Header. Use
19256// googleapi.IsNotModified to check whether the returned error was
19257// because http.StatusNotModified was returned.
19258func (c *OrderreturnsGetCall) Do(opts ...googleapi.CallOption) (*MerchantOrderReturn, error) {
19259	gensupport.SetOptions(c.urlParams_, opts...)
19260	res, err := c.doRequest("json")
19261	if res != nil && res.StatusCode == http.StatusNotModified {
19262		if res.Body != nil {
19263			res.Body.Close()
19264		}
19265		return nil, &googleapi.Error{
19266			Code:   res.StatusCode,
19267			Header: res.Header,
19268		}
19269	}
19270	if err != nil {
19271		return nil, err
19272	}
19273	defer googleapi.CloseBody(res)
19274	if err := googleapi.CheckResponse(res); err != nil {
19275		return nil, err
19276	}
19277	ret := &MerchantOrderReturn{
19278		ServerResponse: googleapi.ServerResponse{
19279			Header:         res.Header,
19280			HTTPStatusCode: res.StatusCode,
19281		},
19282	}
19283	target := &ret
19284	if err := gensupport.DecodeResponse(target, res); err != nil {
19285		return nil, err
19286	}
19287	return ret, nil
19288	// {
19289	//   "description": "Retrieves an order return from your Merchant Center account.",
19290	//   "flatPath": "{merchantId}/orderreturns/{returnId}",
19291	//   "httpMethod": "GET",
19292	//   "id": "content.orderreturns.get",
19293	//   "parameterOrder": [
19294	//     "merchantId",
19295	//     "returnId"
19296	//   ],
19297	//   "parameters": {
19298	//     "merchantId": {
19299	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
19300	//       "format": "uint64",
19301	//       "location": "path",
19302	//       "required": true,
19303	//       "type": "string"
19304	//     },
19305	//     "returnId": {
19306	//       "description": "Merchant order return ID generated by Google.",
19307	//       "location": "path",
19308	//       "required": true,
19309	//       "type": "string"
19310	//     }
19311	//   },
19312	//   "path": "{merchantId}/orderreturns/{returnId}",
19313	//   "response": {
19314	//     "$ref": "MerchantOrderReturn"
19315	//   },
19316	//   "scopes": [
19317	//     "https://www.googleapis.com/auth/content"
19318	//   ]
19319	// }
19320
19321}
19322
19323// method id "content.orderreturns.list":
19324
19325type OrderreturnsListCall struct {
19326	s            *APIService
19327	merchantId   uint64
19328	urlParams_   gensupport.URLParams
19329	ifNoneMatch_ string
19330	ctx_         context.Context
19331	header_      http.Header
19332}
19333
19334// List: Lists order returns in your Merchant Center account.
19335//
19336// - merchantId: The ID of the account that manages the order. This
19337//   cannot be a multi-client account.
19338func (r *OrderreturnsService) List(merchantId uint64) *OrderreturnsListCall {
19339	c := &OrderreturnsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19340	c.merchantId = merchantId
19341	return c
19342}
19343
19344// CreatedEndDate sets the optional parameter "createdEndDate": Obtains
19345// order returns created before this date (inclusively), in ISO 8601
19346// format.
19347func (c *OrderreturnsListCall) CreatedEndDate(createdEndDate string) *OrderreturnsListCall {
19348	c.urlParams_.Set("createdEndDate", createdEndDate)
19349	return c
19350}
19351
19352// CreatedStartDate sets the optional parameter "createdStartDate":
19353// Obtains order returns created after this date (inclusively), in ISO
19354// 8601 format.
19355func (c *OrderreturnsListCall) CreatedStartDate(createdStartDate string) *OrderreturnsListCall {
19356	c.urlParams_.Set("createdStartDate", createdStartDate)
19357	return c
19358}
19359
19360// MaxResults sets the optional parameter "maxResults": The maximum
19361// number of order returns to return in the response, used for paging.
19362// The default value is 25 returns per page, and the maximum allowed
19363// value is 250 returns per page.
19364func (c *OrderreturnsListCall) MaxResults(maxResults int64) *OrderreturnsListCall {
19365	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
19366	return c
19367}
19368
19369// OrderBy sets the optional parameter "orderBy": Return the results in
19370// the specified order.
19371//
19372// Possible values:
19373//   "RETURN_CREATION_TIME_DESC"
19374//   "RETURN_CREATION_TIME_ASC"
19375func (c *OrderreturnsListCall) OrderBy(orderBy string) *OrderreturnsListCall {
19376	c.urlParams_.Set("orderBy", orderBy)
19377	return c
19378}
19379
19380// PageToken sets the optional parameter "pageToken": The token returned
19381// by the previous request.
19382func (c *OrderreturnsListCall) PageToken(pageToken string) *OrderreturnsListCall {
19383	c.urlParams_.Set("pageToken", pageToken)
19384	return c
19385}
19386
19387// Fields allows partial responses to be retrieved. See
19388// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19389// for more information.
19390func (c *OrderreturnsListCall) Fields(s ...googleapi.Field) *OrderreturnsListCall {
19391	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19392	return c
19393}
19394
19395// IfNoneMatch sets the optional parameter which makes the operation
19396// fail if the object's ETag matches the given value. This is useful for
19397// getting updates only after the object has changed since the last
19398// request. Use googleapi.IsNotModified to check whether the response
19399// error from Do is the result of In-None-Match.
19400func (c *OrderreturnsListCall) IfNoneMatch(entityTag string) *OrderreturnsListCall {
19401	c.ifNoneMatch_ = entityTag
19402	return c
19403}
19404
19405// Context sets the context to be used in this call's Do method. Any
19406// pending HTTP request will be aborted if the provided context is
19407// canceled.
19408func (c *OrderreturnsListCall) Context(ctx context.Context) *OrderreturnsListCall {
19409	c.ctx_ = ctx
19410	return c
19411}
19412
19413// Header returns an http.Header that can be modified by the caller to
19414// add HTTP headers to the request.
19415func (c *OrderreturnsListCall) Header() http.Header {
19416	if c.header_ == nil {
19417		c.header_ = make(http.Header)
19418	}
19419	return c.header_
19420}
19421
19422func (c *OrderreturnsListCall) doRequest(alt string) (*http.Response, error) {
19423	reqHeaders := make(http.Header)
19424	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
19425	for k, v := range c.header_ {
19426		reqHeaders[k] = v
19427	}
19428	reqHeaders.Set("User-Agent", c.s.userAgent())
19429	if c.ifNoneMatch_ != "" {
19430		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
19431	}
19432	var body io.Reader = nil
19433	c.urlParams_.Set("alt", alt)
19434	c.urlParams_.Set("prettyPrint", "false")
19435	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreturns")
19436	urls += "?" + c.urlParams_.Encode()
19437	req, err := http.NewRequest("GET", urls, body)
19438	if err != nil {
19439		return nil, err
19440	}
19441	req.Header = reqHeaders
19442	googleapi.Expand(req.URL, map[string]string{
19443		"merchantId": strconv.FormatUint(c.merchantId, 10),
19444	})
19445	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19446}
19447
19448// Do executes the "content.orderreturns.list" call.
19449// Exactly one of *OrderreturnsListResponse or error will be non-nil.
19450// Any non-2xx status code is an error. Response headers are in either
19451// *OrderreturnsListResponse.ServerResponse.Header or (if a response was
19452// returned at all) in error.(*googleapi.Error).Header. Use
19453// googleapi.IsNotModified to check whether the returned error was
19454// because http.StatusNotModified was returned.
19455func (c *OrderreturnsListCall) Do(opts ...googleapi.CallOption) (*OrderreturnsListResponse, error) {
19456	gensupport.SetOptions(c.urlParams_, opts...)
19457	res, err := c.doRequest("json")
19458	if res != nil && res.StatusCode == http.StatusNotModified {
19459		if res.Body != nil {
19460			res.Body.Close()
19461		}
19462		return nil, &googleapi.Error{
19463			Code:   res.StatusCode,
19464			Header: res.Header,
19465		}
19466	}
19467	if err != nil {
19468		return nil, err
19469	}
19470	defer googleapi.CloseBody(res)
19471	if err := googleapi.CheckResponse(res); err != nil {
19472		return nil, err
19473	}
19474	ret := &OrderreturnsListResponse{
19475		ServerResponse: googleapi.ServerResponse{
19476			Header:         res.Header,
19477			HTTPStatusCode: res.StatusCode,
19478		},
19479	}
19480	target := &ret
19481	if err := gensupport.DecodeResponse(target, res); err != nil {
19482		return nil, err
19483	}
19484	return ret, nil
19485	// {
19486	//   "description": "Lists order returns in your Merchant Center account.",
19487	//   "flatPath": "{merchantId}/orderreturns",
19488	//   "httpMethod": "GET",
19489	//   "id": "content.orderreturns.list",
19490	//   "parameterOrder": [
19491	//     "merchantId"
19492	//   ],
19493	//   "parameters": {
19494	//     "createdEndDate": {
19495	//       "description": "Obtains order returns created before this date (inclusively), in ISO 8601 format.",
19496	//       "location": "query",
19497	//       "type": "string"
19498	//     },
19499	//     "createdStartDate": {
19500	//       "description": "Obtains order returns created after this date (inclusively), in ISO 8601 format.",
19501	//       "location": "query",
19502	//       "type": "string"
19503	//     },
19504	//     "maxResults": {
19505	//       "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.",
19506	//       "format": "uint32",
19507	//       "location": "query",
19508	//       "type": "integer"
19509	//     },
19510	//     "merchantId": {
19511	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
19512	//       "format": "uint64",
19513	//       "location": "path",
19514	//       "required": true,
19515	//       "type": "string"
19516	//     },
19517	//     "orderBy": {
19518	//       "description": "Return the results in the specified order.",
19519	//       "enum": [
19520	//         "RETURN_CREATION_TIME_DESC",
19521	//         "RETURN_CREATION_TIME_ASC"
19522	//       ],
19523	//       "enumDescriptions": [
19524	//         "",
19525	//         ""
19526	//       ],
19527	//       "location": "query",
19528	//       "type": "string"
19529	//     },
19530	//     "pageToken": {
19531	//       "description": "The token returned by the previous request.",
19532	//       "location": "query",
19533	//       "type": "string"
19534	//     }
19535	//   },
19536	//   "path": "{merchantId}/orderreturns",
19537	//   "response": {
19538	//     "$ref": "OrderreturnsListResponse"
19539	//   },
19540	//   "scopes": [
19541	//     "https://www.googleapis.com/auth/content"
19542	//   ]
19543	// }
19544
19545}
19546
19547// Pages invokes f for each page of results.
19548// A non-nil error returned from f will halt the iteration.
19549// The provided context supersedes any context provided to the Context method.
19550func (c *OrderreturnsListCall) Pages(ctx context.Context, f func(*OrderreturnsListResponse) error) error {
19551	c.ctx_ = ctx
19552	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
19553	for {
19554		x, err := c.Do()
19555		if err != nil {
19556			return err
19557		}
19558		if err := f(x); err != nil {
19559			return err
19560		}
19561		if x.NextPageToken == "" {
19562			return nil
19563		}
19564		c.PageToken(x.NextPageToken)
19565	}
19566}
19567
19568// method id "content.orders.acknowledge":
19569
19570type OrdersAcknowledgeCall struct {
19571	s                        *APIService
19572	merchantId               uint64
19573	orderId                  string
19574	ordersacknowledgerequest *OrdersAcknowledgeRequest
19575	urlParams_               gensupport.URLParams
19576	ctx_                     context.Context
19577	header_                  http.Header
19578}
19579
19580// Acknowledge: Marks an order as acknowledged.
19581//
19582// - merchantId: The ID of the account that manages the order. This
19583//   cannot be a multi-client account.
19584// - orderId: The ID of the order.
19585func (r *OrdersService) Acknowledge(merchantId uint64, orderId string, ordersacknowledgerequest *OrdersAcknowledgeRequest) *OrdersAcknowledgeCall {
19586	c := &OrdersAcknowledgeCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19587	c.merchantId = merchantId
19588	c.orderId = orderId
19589	c.ordersacknowledgerequest = ordersacknowledgerequest
19590	return c
19591}
19592
19593// Fields allows partial responses to be retrieved. See
19594// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19595// for more information.
19596func (c *OrdersAcknowledgeCall) Fields(s ...googleapi.Field) *OrdersAcknowledgeCall {
19597	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19598	return c
19599}
19600
19601// Context sets the context to be used in this call's Do method. Any
19602// pending HTTP request will be aborted if the provided context is
19603// canceled.
19604func (c *OrdersAcknowledgeCall) Context(ctx context.Context) *OrdersAcknowledgeCall {
19605	c.ctx_ = ctx
19606	return c
19607}
19608
19609// Header returns an http.Header that can be modified by the caller to
19610// add HTTP headers to the request.
19611func (c *OrdersAcknowledgeCall) Header() http.Header {
19612	if c.header_ == nil {
19613		c.header_ = make(http.Header)
19614	}
19615	return c.header_
19616}
19617
19618func (c *OrdersAcknowledgeCall) doRequest(alt string) (*http.Response, error) {
19619	reqHeaders := make(http.Header)
19620	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
19621	for k, v := range c.header_ {
19622		reqHeaders[k] = v
19623	}
19624	reqHeaders.Set("User-Agent", c.s.userAgent())
19625	var body io.Reader = nil
19626	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersacknowledgerequest)
19627	if err != nil {
19628		return nil, err
19629	}
19630	reqHeaders.Set("Content-Type", "application/json")
19631	c.urlParams_.Set("alt", alt)
19632	c.urlParams_.Set("prettyPrint", "false")
19633	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/acknowledge")
19634	urls += "?" + c.urlParams_.Encode()
19635	req, err := http.NewRequest("POST", urls, body)
19636	if err != nil {
19637		return nil, err
19638	}
19639	req.Header = reqHeaders
19640	googleapi.Expand(req.URL, map[string]string{
19641		"merchantId": strconv.FormatUint(c.merchantId, 10),
19642		"orderId":    c.orderId,
19643	})
19644	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19645}
19646
19647// Do executes the "content.orders.acknowledge" call.
19648// Exactly one of *OrdersAcknowledgeResponse or error will be non-nil.
19649// Any non-2xx status code is an error. Response headers are in either
19650// *OrdersAcknowledgeResponse.ServerResponse.Header or (if a response
19651// was returned at all) in error.(*googleapi.Error).Header. Use
19652// googleapi.IsNotModified to check whether the returned error was
19653// because http.StatusNotModified was returned.
19654func (c *OrdersAcknowledgeCall) Do(opts ...googleapi.CallOption) (*OrdersAcknowledgeResponse, error) {
19655	gensupport.SetOptions(c.urlParams_, opts...)
19656	res, err := c.doRequest("json")
19657	if res != nil && res.StatusCode == http.StatusNotModified {
19658		if res.Body != nil {
19659			res.Body.Close()
19660		}
19661		return nil, &googleapi.Error{
19662			Code:   res.StatusCode,
19663			Header: res.Header,
19664		}
19665	}
19666	if err != nil {
19667		return nil, err
19668	}
19669	defer googleapi.CloseBody(res)
19670	if err := googleapi.CheckResponse(res); err != nil {
19671		return nil, err
19672	}
19673	ret := &OrdersAcknowledgeResponse{
19674		ServerResponse: googleapi.ServerResponse{
19675			Header:         res.Header,
19676			HTTPStatusCode: res.StatusCode,
19677		},
19678	}
19679	target := &ret
19680	if err := gensupport.DecodeResponse(target, res); err != nil {
19681		return nil, err
19682	}
19683	return ret, nil
19684	// {
19685	//   "description": "Marks an order as acknowledged.",
19686	//   "flatPath": "{merchantId}/orders/{orderId}/acknowledge",
19687	//   "httpMethod": "POST",
19688	//   "id": "content.orders.acknowledge",
19689	//   "parameterOrder": [
19690	//     "merchantId",
19691	//     "orderId"
19692	//   ],
19693	//   "parameters": {
19694	//     "merchantId": {
19695	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
19696	//       "format": "uint64",
19697	//       "location": "path",
19698	//       "required": true,
19699	//       "type": "string"
19700	//     },
19701	//     "orderId": {
19702	//       "description": "The ID of the order.",
19703	//       "location": "path",
19704	//       "required": true,
19705	//       "type": "string"
19706	//     }
19707	//   },
19708	//   "path": "{merchantId}/orders/{orderId}/acknowledge",
19709	//   "request": {
19710	//     "$ref": "OrdersAcknowledgeRequest"
19711	//   },
19712	//   "response": {
19713	//     "$ref": "OrdersAcknowledgeResponse"
19714	//   },
19715	//   "scopes": [
19716	//     "https://www.googleapis.com/auth/content"
19717	//   ]
19718	// }
19719
19720}
19721
19722// method id "content.orders.advancetestorder":
19723
19724type OrdersAdvancetestorderCall struct {
19725	s          *APIService
19726	merchantId uint64
19727	orderId    string
19728	urlParams_ gensupport.URLParams
19729	ctx_       context.Context
19730	header_    http.Header
19731}
19732
19733// Advancetestorder: Sandbox only. Moves a test order from state
19734// "inProgress" to state "pendingShipment".
19735//
19736// - merchantId: The ID of the account that manages the order. This
19737//   cannot be a multi-client account.
19738// - orderId: The ID of the test order to modify.
19739func (r *OrdersService) Advancetestorder(merchantId uint64, orderId string) *OrdersAdvancetestorderCall {
19740	c := &OrdersAdvancetestorderCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19741	c.merchantId = merchantId
19742	c.orderId = orderId
19743	return c
19744}
19745
19746// Fields allows partial responses to be retrieved. See
19747// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19748// for more information.
19749func (c *OrdersAdvancetestorderCall) Fields(s ...googleapi.Field) *OrdersAdvancetestorderCall {
19750	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19751	return c
19752}
19753
19754// Context sets the context to be used in this call's Do method. Any
19755// pending HTTP request will be aborted if the provided context is
19756// canceled.
19757func (c *OrdersAdvancetestorderCall) Context(ctx context.Context) *OrdersAdvancetestorderCall {
19758	c.ctx_ = ctx
19759	return c
19760}
19761
19762// Header returns an http.Header that can be modified by the caller to
19763// add HTTP headers to the request.
19764func (c *OrdersAdvancetestorderCall) Header() http.Header {
19765	if c.header_ == nil {
19766		c.header_ = make(http.Header)
19767	}
19768	return c.header_
19769}
19770
19771func (c *OrdersAdvancetestorderCall) doRequest(alt string) (*http.Response, error) {
19772	reqHeaders := make(http.Header)
19773	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
19774	for k, v := range c.header_ {
19775		reqHeaders[k] = v
19776	}
19777	reqHeaders.Set("User-Agent", c.s.userAgent())
19778	var body io.Reader = nil
19779	c.urlParams_.Set("alt", alt)
19780	c.urlParams_.Set("prettyPrint", "false")
19781	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/testorders/{orderId}/advance")
19782	urls += "?" + c.urlParams_.Encode()
19783	req, err := http.NewRequest("POST", urls, body)
19784	if err != nil {
19785		return nil, err
19786	}
19787	req.Header = reqHeaders
19788	googleapi.Expand(req.URL, map[string]string{
19789		"merchantId": strconv.FormatUint(c.merchantId, 10),
19790		"orderId":    c.orderId,
19791	})
19792	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19793}
19794
19795// Do executes the "content.orders.advancetestorder" call.
19796// Exactly one of *OrdersAdvanceTestOrderResponse or error will be
19797// non-nil. Any non-2xx status code is an error. Response headers are in
19798// either *OrdersAdvanceTestOrderResponse.ServerResponse.Header or (if a
19799// response was returned at all) in error.(*googleapi.Error).Header. Use
19800// googleapi.IsNotModified to check whether the returned error was
19801// because http.StatusNotModified was returned.
19802func (c *OrdersAdvancetestorderCall) Do(opts ...googleapi.CallOption) (*OrdersAdvanceTestOrderResponse, error) {
19803	gensupport.SetOptions(c.urlParams_, opts...)
19804	res, err := c.doRequest("json")
19805	if res != nil && res.StatusCode == http.StatusNotModified {
19806		if res.Body != nil {
19807			res.Body.Close()
19808		}
19809		return nil, &googleapi.Error{
19810			Code:   res.StatusCode,
19811			Header: res.Header,
19812		}
19813	}
19814	if err != nil {
19815		return nil, err
19816	}
19817	defer googleapi.CloseBody(res)
19818	if err := googleapi.CheckResponse(res); err != nil {
19819		return nil, err
19820	}
19821	ret := &OrdersAdvanceTestOrderResponse{
19822		ServerResponse: googleapi.ServerResponse{
19823			Header:         res.Header,
19824			HTTPStatusCode: res.StatusCode,
19825		},
19826	}
19827	target := &ret
19828	if err := gensupport.DecodeResponse(target, res); err != nil {
19829		return nil, err
19830	}
19831	return ret, nil
19832	// {
19833	//   "description": "Sandbox only. Moves a test order from state \"`inProgress`\" to state \"`pendingShipment`\".",
19834	//   "flatPath": "{merchantId}/testorders/{orderId}/advance",
19835	//   "httpMethod": "POST",
19836	//   "id": "content.orders.advancetestorder",
19837	//   "parameterOrder": [
19838	//     "merchantId",
19839	//     "orderId"
19840	//   ],
19841	//   "parameters": {
19842	//     "merchantId": {
19843	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
19844	//       "format": "uint64",
19845	//       "location": "path",
19846	//       "required": true,
19847	//       "type": "string"
19848	//     },
19849	//     "orderId": {
19850	//       "description": "The ID of the test order to modify.",
19851	//       "location": "path",
19852	//       "required": true,
19853	//       "type": "string"
19854	//     }
19855	//   },
19856	//   "path": "{merchantId}/testorders/{orderId}/advance",
19857	//   "response": {
19858	//     "$ref": "OrdersAdvanceTestOrderResponse"
19859	//   },
19860	//   "scopes": [
19861	//     "https://www.googleapis.com/auth/content"
19862	//   ]
19863	// }
19864
19865}
19866
19867// method id "content.orders.cancel":
19868
19869type OrdersCancelCall struct {
19870	s                   *APIService
19871	merchantId          uint64
19872	orderId             string
19873	orderscancelrequest *OrdersCancelRequest
19874	urlParams_          gensupport.URLParams
19875	ctx_                context.Context
19876	header_             http.Header
19877}
19878
19879// Cancel: Cancels all line items in an order, making a full refund.
19880//
19881// - merchantId: The ID of the account that manages the order. This
19882//   cannot be a multi-client account.
19883// - orderId: The ID of the order to cancel.
19884func (r *OrdersService) Cancel(merchantId uint64, orderId string, orderscancelrequest *OrdersCancelRequest) *OrdersCancelCall {
19885	c := &OrdersCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19886	c.merchantId = merchantId
19887	c.orderId = orderId
19888	c.orderscancelrequest = orderscancelrequest
19889	return c
19890}
19891
19892// Fields allows partial responses to be retrieved. See
19893// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19894// for more information.
19895func (c *OrdersCancelCall) Fields(s ...googleapi.Field) *OrdersCancelCall {
19896	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19897	return c
19898}
19899
19900// Context sets the context to be used in this call's Do method. Any
19901// pending HTTP request will be aborted if the provided context is
19902// canceled.
19903func (c *OrdersCancelCall) Context(ctx context.Context) *OrdersCancelCall {
19904	c.ctx_ = ctx
19905	return c
19906}
19907
19908// Header returns an http.Header that can be modified by the caller to
19909// add HTTP headers to the request.
19910func (c *OrdersCancelCall) Header() http.Header {
19911	if c.header_ == nil {
19912		c.header_ = make(http.Header)
19913	}
19914	return c.header_
19915}
19916
19917func (c *OrdersCancelCall) doRequest(alt string) (*http.Response, error) {
19918	reqHeaders := make(http.Header)
19919	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
19920	for k, v := range c.header_ {
19921		reqHeaders[k] = v
19922	}
19923	reqHeaders.Set("User-Agent", c.s.userAgent())
19924	var body io.Reader = nil
19925	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscancelrequest)
19926	if err != nil {
19927		return nil, err
19928	}
19929	reqHeaders.Set("Content-Type", "application/json")
19930	c.urlParams_.Set("alt", alt)
19931	c.urlParams_.Set("prettyPrint", "false")
19932	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/cancel")
19933	urls += "?" + c.urlParams_.Encode()
19934	req, err := http.NewRequest("POST", urls, body)
19935	if err != nil {
19936		return nil, err
19937	}
19938	req.Header = reqHeaders
19939	googleapi.Expand(req.URL, map[string]string{
19940		"merchantId": strconv.FormatUint(c.merchantId, 10),
19941		"orderId":    c.orderId,
19942	})
19943	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19944}
19945
19946// Do executes the "content.orders.cancel" call.
19947// Exactly one of *OrdersCancelResponse or error will be non-nil. Any
19948// non-2xx status code is an error. Response headers are in either
19949// *OrdersCancelResponse.ServerResponse.Header or (if a response was
19950// returned at all) in error.(*googleapi.Error).Header. Use
19951// googleapi.IsNotModified to check whether the returned error was
19952// because http.StatusNotModified was returned.
19953func (c *OrdersCancelCall) Do(opts ...googleapi.CallOption) (*OrdersCancelResponse, error) {
19954	gensupport.SetOptions(c.urlParams_, opts...)
19955	res, err := c.doRequest("json")
19956	if res != nil && res.StatusCode == http.StatusNotModified {
19957		if res.Body != nil {
19958			res.Body.Close()
19959		}
19960		return nil, &googleapi.Error{
19961			Code:   res.StatusCode,
19962			Header: res.Header,
19963		}
19964	}
19965	if err != nil {
19966		return nil, err
19967	}
19968	defer googleapi.CloseBody(res)
19969	if err := googleapi.CheckResponse(res); err != nil {
19970		return nil, err
19971	}
19972	ret := &OrdersCancelResponse{
19973		ServerResponse: googleapi.ServerResponse{
19974			Header:         res.Header,
19975			HTTPStatusCode: res.StatusCode,
19976		},
19977	}
19978	target := &ret
19979	if err := gensupport.DecodeResponse(target, res); err != nil {
19980		return nil, err
19981	}
19982	return ret, nil
19983	// {
19984	//   "description": "Cancels all line items in an order, making a full refund.",
19985	//   "flatPath": "{merchantId}/orders/{orderId}/cancel",
19986	//   "httpMethod": "POST",
19987	//   "id": "content.orders.cancel",
19988	//   "parameterOrder": [
19989	//     "merchantId",
19990	//     "orderId"
19991	//   ],
19992	//   "parameters": {
19993	//     "merchantId": {
19994	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
19995	//       "format": "uint64",
19996	//       "location": "path",
19997	//       "required": true,
19998	//       "type": "string"
19999	//     },
20000	//     "orderId": {
20001	//       "description": "The ID of the order to cancel.",
20002	//       "location": "path",
20003	//       "required": true,
20004	//       "type": "string"
20005	//     }
20006	//   },
20007	//   "path": "{merchantId}/orders/{orderId}/cancel",
20008	//   "request": {
20009	//     "$ref": "OrdersCancelRequest"
20010	//   },
20011	//   "response": {
20012	//     "$ref": "OrdersCancelResponse"
20013	//   },
20014	//   "scopes": [
20015	//     "https://www.googleapis.com/auth/content"
20016	//   ]
20017	// }
20018
20019}
20020
20021// method id "content.orders.cancellineitem":
20022
20023type OrdersCancellineitemCall struct {
20024	s                           *APIService
20025	merchantId                  uint64
20026	orderId                     string
20027	orderscancellineitemrequest *OrdersCancelLineItemRequest
20028	urlParams_                  gensupport.URLParams
20029	ctx_                        context.Context
20030	header_                     http.Header
20031}
20032
20033// Cancellineitem: Cancels a line item, making a full refund.
20034//
20035// - merchantId: The ID of the account that manages the order. This
20036//   cannot be a multi-client account.
20037// - orderId: The ID of the order.
20038func (r *OrdersService) Cancellineitem(merchantId uint64, orderId string, orderscancellineitemrequest *OrdersCancelLineItemRequest) *OrdersCancellineitemCall {
20039	c := &OrdersCancellineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20040	c.merchantId = merchantId
20041	c.orderId = orderId
20042	c.orderscancellineitemrequest = orderscancellineitemrequest
20043	return c
20044}
20045
20046// Fields allows partial responses to be retrieved. See
20047// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20048// for more information.
20049func (c *OrdersCancellineitemCall) Fields(s ...googleapi.Field) *OrdersCancellineitemCall {
20050	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20051	return c
20052}
20053
20054// Context sets the context to be used in this call's Do method. Any
20055// pending HTTP request will be aborted if the provided context is
20056// canceled.
20057func (c *OrdersCancellineitemCall) Context(ctx context.Context) *OrdersCancellineitemCall {
20058	c.ctx_ = ctx
20059	return c
20060}
20061
20062// Header returns an http.Header that can be modified by the caller to
20063// add HTTP headers to the request.
20064func (c *OrdersCancellineitemCall) Header() http.Header {
20065	if c.header_ == nil {
20066		c.header_ = make(http.Header)
20067	}
20068	return c.header_
20069}
20070
20071func (c *OrdersCancellineitemCall) doRequest(alt string) (*http.Response, error) {
20072	reqHeaders := make(http.Header)
20073	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
20074	for k, v := range c.header_ {
20075		reqHeaders[k] = v
20076	}
20077	reqHeaders.Set("User-Agent", c.s.userAgent())
20078	var body io.Reader = nil
20079	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscancellineitemrequest)
20080	if err != nil {
20081		return nil, err
20082	}
20083	reqHeaders.Set("Content-Type", "application/json")
20084	c.urlParams_.Set("alt", alt)
20085	c.urlParams_.Set("prettyPrint", "false")
20086	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/cancelLineItem")
20087	urls += "?" + c.urlParams_.Encode()
20088	req, err := http.NewRequest("POST", urls, body)
20089	if err != nil {
20090		return nil, err
20091	}
20092	req.Header = reqHeaders
20093	googleapi.Expand(req.URL, map[string]string{
20094		"merchantId": strconv.FormatUint(c.merchantId, 10),
20095		"orderId":    c.orderId,
20096	})
20097	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20098}
20099
20100// Do executes the "content.orders.cancellineitem" call.
20101// Exactly one of *OrdersCancelLineItemResponse or error will be
20102// non-nil. Any non-2xx status code is an error. Response headers are in
20103// either *OrdersCancelLineItemResponse.ServerResponse.Header or (if a
20104// response was returned at all) in error.(*googleapi.Error).Header. Use
20105// googleapi.IsNotModified to check whether the returned error was
20106// because http.StatusNotModified was returned.
20107func (c *OrdersCancellineitemCall) Do(opts ...googleapi.CallOption) (*OrdersCancelLineItemResponse, error) {
20108	gensupport.SetOptions(c.urlParams_, opts...)
20109	res, err := c.doRequest("json")
20110	if res != nil && res.StatusCode == http.StatusNotModified {
20111		if res.Body != nil {
20112			res.Body.Close()
20113		}
20114		return nil, &googleapi.Error{
20115			Code:   res.StatusCode,
20116			Header: res.Header,
20117		}
20118	}
20119	if err != nil {
20120		return nil, err
20121	}
20122	defer googleapi.CloseBody(res)
20123	if err := googleapi.CheckResponse(res); err != nil {
20124		return nil, err
20125	}
20126	ret := &OrdersCancelLineItemResponse{
20127		ServerResponse: googleapi.ServerResponse{
20128			Header:         res.Header,
20129			HTTPStatusCode: res.StatusCode,
20130		},
20131	}
20132	target := &ret
20133	if err := gensupport.DecodeResponse(target, res); err != nil {
20134		return nil, err
20135	}
20136	return ret, nil
20137	// {
20138	//   "description": "Cancels a line item, making a full refund.",
20139	//   "flatPath": "{merchantId}/orders/{orderId}/cancelLineItem",
20140	//   "httpMethod": "POST",
20141	//   "id": "content.orders.cancellineitem",
20142	//   "parameterOrder": [
20143	//     "merchantId",
20144	//     "orderId"
20145	//   ],
20146	//   "parameters": {
20147	//     "merchantId": {
20148	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
20149	//       "format": "uint64",
20150	//       "location": "path",
20151	//       "required": true,
20152	//       "type": "string"
20153	//     },
20154	//     "orderId": {
20155	//       "description": "The ID of the order.",
20156	//       "location": "path",
20157	//       "required": true,
20158	//       "type": "string"
20159	//     }
20160	//   },
20161	//   "path": "{merchantId}/orders/{orderId}/cancelLineItem",
20162	//   "request": {
20163	//     "$ref": "OrdersCancelLineItemRequest"
20164	//   },
20165	//   "response": {
20166	//     "$ref": "OrdersCancelLineItemResponse"
20167	//   },
20168	//   "scopes": [
20169	//     "https://www.googleapis.com/auth/content"
20170	//   ]
20171	// }
20172
20173}
20174
20175// method id "content.orders.canceltestorderbycustomer":
20176
20177type OrdersCanceltestorderbycustomerCall struct {
20178	s                                      *APIService
20179	merchantId                             uint64
20180	orderId                                string
20181	orderscanceltestorderbycustomerrequest *OrdersCancelTestOrderByCustomerRequest
20182	urlParams_                             gensupport.URLParams
20183	ctx_                                   context.Context
20184	header_                                http.Header
20185}
20186
20187// Canceltestorderbycustomer: Sandbox only. Cancels a test order for
20188// customer-initiated cancellation.
20189//
20190// - merchantId: The ID of the account that manages the order. This
20191//   cannot be a multi-client account.
20192// - orderId: The ID of the test order to cancel.
20193func (r *OrdersService) Canceltestorderbycustomer(merchantId uint64, orderId string, orderscanceltestorderbycustomerrequest *OrdersCancelTestOrderByCustomerRequest) *OrdersCanceltestorderbycustomerCall {
20194	c := &OrdersCanceltestorderbycustomerCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20195	c.merchantId = merchantId
20196	c.orderId = orderId
20197	c.orderscanceltestorderbycustomerrequest = orderscanceltestorderbycustomerrequest
20198	return c
20199}
20200
20201// Fields allows partial responses to be retrieved. See
20202// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20203// for more information.
20204func (c *OrdersCanceltestorderbycustomerCall) Fields(s ...googleapi.Field) *OrdersCanceltestorderbycustomerCall {
20205	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20206	return c
20207}
20208
20209// Context sets the context to be used in this call's Do method. Any
20210// pending HTTP request will be aborted if the provided context is
20211// canceled.
20212func (c *OrdersCanceltestorderbycustomerCall) Context(ctx context.Context) *OrdersCanceltestorderbycustomerCall {
20213	c.ctx_ = ctx
20214	return c
20215}
20216
20217// Header returns an http.Header that can be modified by the caller to
20218// add HTTP headers to the request.
20219func (c *OrdersCanceltestorderbycustomerCall) Header() http.Header {
20220	if c.header_ == nil {
20221		c.header_ = make(http.Header)
20222	}
20223	return c.header_
20224}
20225
20226func (c *OrdersCanceltestorderbycustomerCall) doRequest(alt string) (*http.Response, error) {
20227	reqHeaders := make(http.Header)
20228	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
20229	for k, v := range c.header_ {
20230		reqHeaders[k] = v
20231	}
20232	reqHeaders.Set("User-Agent", c.s.userAgent())
20233	var body io.Reader = nil
20234	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscanceltestorderbycustomerrequest)
20235	if err != nil {
20236		return nil, err
20237	}
20238	reqHeaders.Set("Content-Type", "application/json")
20239	c.urlParams_.Set("alt", alt)
20240	c.urlParams_.Set("prettyPrint", "false")
20241	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/testorders/{orderId}/cancelByCustomer")
20242	urls += "?" + c.urlParams_.Encode()
20243	req, err := http.NewRequest("POST", urls, body)
20244	if err != nil {
20245		return nil, err
20246	}
20247	req.Header = reqHeaders
20248	googleapi.Expand(req.URL, map[string]string{
20249		"merchantId": strconv.FormatUint(c.merchantId, 10),
20250		"orderId":    c.orderId,
20251	})
20252	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20253}
20254
20255// Do executes the "content.orders.canceltestorderbycustomer" call.
20256// Exactly one of *OrdersCancelTestOrderByCustomerResponse or error will
20257// be non-nil. Any non-2xx status code is an error. Response headers are
20258// in either
20259// *OrdersCancelTestOrderByCustomerResponse.ServerResponse.Header or (if
20260// a response was returned at all) in error.(*googleapi.Error).Header.
20261// Use googleapi.IsNotModified to check whether the returned error was
20262// because http.StatusNotModified was returned.
20263func (c *OrdersCanceltestorderbycustomerCall) Do(opts ...googleapi.CallOption) (*OrdersCancelTestOrderByCustomerResponse, error) {
20264	gensupport.SetOptions(c.urlParams_, opts...)
20265	res, err := c.doRequest("json")
20266	if res != nil && res.StatusCode == http.StatusNotModified {
20267		if res.Body != nil {
20268			res.Body.Close()
20269		}
20270		return nil, &googleapi.Error{
20271			Code:   res.StatusCode,
20272			Header: res.Header,
20273		}
20274	}
20275	if err != nil {
20276		return nil, err
20277	}
20278	defer googleapi.CloseBody(res)
20279	if err := googleapi.CheckResponse(res); err != nil {
20280		return nil, err
20281	}
20282	ret := &OrdersCancelTestOrderByCustomerResponse{
20283		ServerResponse: googleapi.ServerResponse{
20284			Header:         res.Header,
20285			HTTPStatusCode: res.StatusCode,
20286		},
20287	}
20288	target := &ret
20289	if err := gensupport.DecodeResponse(target, res); err != nil {
20290		return nil, err
20291	}
20292	return ret, nil
20293	// {
20294	//   "description": "Sandbox only. Cancels a test order for customer-initiated cancellation.",
20295	//   "flatPath": "{merchantId}/testorders/{orderId}/cancelByCustomer",
20296	//   "httpMethod": "POST",
20297	//   "id": "content.orders.canceltestorderbycustomer",
20298	//   "parameterOrder": [
20299	//     "merchantId",
20300	//     "orderId"
20301	//   ],
20302	//   "parameters": {
20303	//     "merchantId": {
20304	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
20305	//       "format": "uint64",
20306	//       "location": "path",
20307	//       "required": true,
20308	//       "type": "string"
20309	//     },
20310	//     "orderId": {
20311	//       "description": "The ID of the test order to cancel.",
20312	//       "location": "path",
20313	//       "required": true,
20314	//       "type": "string"
20315	//     }
20316	//   },
20317	//   "path": "{merchantId}/testorders/{orderId}/cancelByCustomer",
20318	//   "request": {
20319	//     "$ref": "OrdersCancelTestOrderByCustomerRequest"
20320	//   },
20321	//   "response": {
20322	//     "$ref": "OrdersCancelTestOrderByCustomerResponse"
20323	//   },
20324	//   "scopes": [
20325	//     "https://www.googleapis.com/auth/content"
20326	//   ]
20327	// }
20328
20329}
20330
20331// method id "content.orders.createtestorder":
20332
20333type OrdersCreatetestorderCall struct {
20334	s                            *APIService
20335	merchantId                   uint64
20336	orderscreatetestorderrequest *OrdersCreateTestOrderRequest
20337	urlParams_                   gensupport.URLParams
20338	ctx_                         context.Context
20339	header_                      http.Header
20340}
20341
20342// Createtestorder: Sandbox only. Creates a test order.
20343//
20344// - merchantId: The ID of the account that should manage the order.
20345//   This cannot be a multi-client account.
20346func (r *OrdersService) Createtestorder(merchantId uint64, orderscreatetestorderrequest *OrdersCreateTestOrderRequest) *OrdersCreatetestorderCall {
20347	c := &OrdersCreatetestorderCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20348	c.merchantId = merchantId
20349	c.orderscreatetestorderrequest = orderscreatetestorderrequest
20350	return c
20351}
20352
20353// Fields allows partial responses to be retrieved. See
20354// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20355// for more information.
20356func (c *OrdersCreatetestorderCall) Fields(s ...googleapi.Field) *OrdersCreatetestorderCall {
20357	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20358	return c
20359}
20360
20361// Context sets the context to be used in this call's Do method. Any
20362// pending HTTP request will be aborted if the provided context is
20363// canceled.
20364func (c *OrdersCreatetestorderCall) Context(ctx context.Context) *OrdersCreatetestorderCall {
20365	c.ctx_ = ctx
20366	return c
20367}
20368
20369// Header returns an http.Header that can be modified by the caller to
20370// add HTTP headers to the request.
20371func (c *OrdersCreatetestorderCall) Header() http.Header {
20372	if c.header_ == nil {
20373		c.header_ = make(http.Header)
20374	}
20375	return c.header_
20376}
20377
20378func (c *OrdersCreatetestorderCall) doRequest(alt string) (*http.Response, error) {
20379	reqHeaders := make(http.Header)
20380	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
20381	for k, v := range c.header_ {
20382		reqHeaders[k] = v
20383	}
20384	reqHeaders.Set("User-Agent", c.s.userAgent())
20385	var body io.Reader = nil
20386	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscreatetestorderrequest)
20387	if err != nil {
20388		return nil, err
20389	}
20390	reqHeaders.Set("Content-Type", "application/json")
20391	c.urlParams_.Set("alt", alt)
20392	c.urlParams_.Set("prettyPrint", "false")
20393	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/testorders")
20394	urls += "?" + c.urlParams_.Encode()
20395	req, err := http.NewRequest("POST", urls, body)
20396	if err != nil {
20397		return nil, err
20398	}
20399	req.Header = reqHeaders
20400	googleapi.Expand(req.URL, map[string]string{
20401		"merchantId": strconv.FormatUint(c.merchantId, 10),
20402	})
20403	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20404}
20405
20406// Do executes the "content.orders.createtestorder" call.
20407// Exactly one of *OrdersCreateTestOrderResponse or error will be
20408// non-nil. Any non-2xx status code is an error. Response headers are in
20409// either *OrdersCreateTestOrderResponse.ServerResponse.Header or (if a
20410// response was returned at all) in error.(*googleapi.Error).Header. Use
20411// googleapi.IsNotModified to check whether the returned error was
20412// because http.StatusNotModified was returned.
20413func (c *OrdersCreatetestorderCall) Do(opts ...googleapi.CallOption) (*OrdersCreateTestOrderResponse, error) {
20414	gensupport.SetOptions(c.urlParams_, opts...)
20415	res, err := c.doRequest("json")
20416	if res != nil && res.StatusCode == http.StatusNotModified {
20417		if res.Body != nil {
20418			res.Body.Close()
20419		}
20420		return nil, &googleapi.Error{
20421			Code:   res.StatusCode,
20422			Header: res.Header,
20423		}
20424	}
20425	if err != nil {
20426		return nil, err
20427	}
20428	defer googleapi.CloseBody(res)
20429	if err := googleapi.CheckResponse(res); err != nil {
20430		return nil, err
20431	}
20432	ret := &OrdersCreateTestOrderResponse{
20433		ServerResponse: googleapi.ServerResponse{
20434			Header:         res.Header,
20435			HTTPStatusCode: res.StatusCode,
20436		},
20437	}
20438	target := &ret
20439	if err := gensupport.DecodeResponse(target, res); err != nil {
20440		return nil, err
20441	}
20442	return ret, nil
20443	// {
20444	//   "description": "Sandbox only. Creates a test order.",
20445	//   "flatPath": "{merchantId}/testorders",
20446	//   "httpMethod": "POST",
20447	//   "id": "content.orders.createtestorder",
20448	//   "parameterOrder": [
20449	//     "merchantId"
20450	//   ],
20451	//   "parameters": {
20452	//     "merchantId": {
20453	//       "description": "The ID of the account that should manage the order. This cannot be a multi-client account.",
20454	//       "format": "uint64",
20455	//       "location": "path",
20456	//       "required": true,
20457	//       "type": "string"
20458	//     }
20459	//   },
20460	//   "path": "{merchantId}/testorders",
20461	//   "request": {
20462	//     "$ref": "OrdersCreateTestOrderRequest"
20463	//   },
20464	//   "response": {
20465	//     "$ref": "OrdersCreateTestOrderResponse"
20466	//   },
20467	//   "scopes": [
20468	//     "https://www.googleapis.com/auth/content"
20469	//   ]
20470	// }
20471
20472}
20473
20474// method id "content.orders.createtestreturn":
20475
20476type OrdersCreatetestreturnCall struct {
20477	s                             *APIService
20478	merchantId                    uint64
20479	orderId                       string
20480	orderscreatetestreturnrequest *OrdersCreateTestReturnRequest
20481	urlParams_                    gensupport.URLParams
20482	ctx_                          context.Context
20483	header_                       http.Header
20484}
20485
20486// Createtestreturn: Sandbox only. Creates a test return.
20487//
20488// - merchantId: The ID of the account that manages the order. This
20489//   cannot be a multi-client account.
20490// - orderId: The ID of the order.
20491func (r *OrdersService) Createtestreturn(merchantId uint64, orderId string, orderscreatetestreturnrequest *OrdersCreateTestReturnRequest) *OrdersCreatetestreturnCall {
20492	c := &OrdersCreatetestreturnCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20493	c.merchantId = merchantId
20494	c.orderId = orderId
20495	c.orderscreatetestreturnrequest = orderscreatetestreturnrequest
20496	return c
20497}
20498
20499// Fields allows partial responses to be retrieved. See
20500// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20501// for more information.
20502func (c *OrdersCreatetestreturnCall) Fields(s ...googleapi.Field) *OrdersCreatetestreturnCall {
20503	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20504	return c
20505}
20506
20507// Context sets the context to be used in this call's Do method. Any
20508// pending HTTP request will be aborted if the provided context is
20509// canceled.
20510func (c *OrdersCreatetestreturnCall) Context(ctx context.Context) *OrdersCreatetestreturnCall {
20511	c.ctx_ = ctx
20512	return c
20513}
20514
20515// Header returns an http.Header that can be modified by the caller to
20516// add HTTP headers to the request.
20517func (c *OrdersCreatetestreturnCall) Header() http.Header {
20518	if c.header_ == nil {
20519		c.header_ = make(http.Header)
20520	}
20521	return c.header_
20522}
20523
20524func (c *OrdersCreatetestreturnCall) doRequest(alt string) (*http.Response, error) {
20525	reqHeaders := make(http.Header)
20526	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
20527	for k, v := range c.header_ {
20528		reqHeaders[k] = v
20529	}
20530	reqHeaders.Set("User-Agent", c.s.userAgent())
20531	var body io.Reader = nil
20532	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscreatetestreturnrequest)
20533	if err != nil {
20534		return nil, err
20535	}
20536	reqHeaders.Set("Content-Type", "application/json")
20537	c.urlParams_.Set("alt", alt)
20538	c.urlParams_.Set("prettyPrint", "false")
20539	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/testreturn")
20540	urls += "?" + c.urlParams_.Encode()
20541	req, err := http.NewRequest("POST", urls, body)
20542	if err != nil {
20543		return nil, err
20544	}
20545	req.Header = reqHeaders
20546	googleapi.Expand(req.URL, map[string]string{
20547		"merchantId": strconv.FormatUint(c.merchantId, 10),
20548		"orderId":    c.orderId,
20549	})
20550	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20551}
20552
20553// Do executes the "content.orders.createtestreturn" call.
20554// Exactly one of *OrdersCreateTestReturnResponse or error will be
20555// non-nil. Any non-2xx status code is an error. Response headers are in
20556// either *OrdersCreateTestReturnResponse.ServerResponse.Header or (if a
20557// response was returned at all) in error.(*googleapi.Error).Header. Use
20558// googleapi.IsNotModified to check whether the returned error was
20559// because http.StatusNotModified was returned.
20560func (c *OrdersCreatetestreturnCall) Do(opts ...googleapi.CallOption) (*OrdersCreateTestReturnResponse, error) {
20561	gensupport.SetOptions(c.urlParams_, opts...)
20562	res, err := c.doRequest("json")
20563	if res != nil && res.StatusCode == http.StatusNotModified {
20564		if res.Body != nil {
20565			res.Body.Close()
20566		}
20567		return nil, &googleapi.Error{
20568			Code:   res.StatusCode,
20569			Header: res.Header,
20570		}
20571	}
20572	if err != nil {
20573		return nil, err
20574	}
20575	defer googleapi.CloseBody(res)
20576	if err := googleapi.CheckResponse(res); err != nil {
20577		return nil, err
20578	}
20579	ret := &OrdersCreateTestReturnResponse{
20580		ServerResponse: googleapi.ServerResponse{
20581			Header:         res.Header,
20582			HTTPStatusCode: res.StatusCode,
20583		},
20584	}
20585	target := &ret
20586	if err := gensupport.DecodeResponse(target, res); err != nil {
20587		return nil, err
20588	}
20589	return ret, nil
20590	// {
20591	//   "description": "Sandbox only. Creates a test return.",
20592	//   "flatPath": "{merchantId}/orders/{orderId}/testreturn",
20593	//   "httpMethod": "POST",
20594	//   "id": "content.orders.createtestreturn",
20595	//   "parameterOrder": [
20596	//     "merchantId",
20597	//     "orderId"
20598	//   ],
20599	//   "parameters": {
20600	//     "merchantId": {
20601	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
20602	//       "format": "uint64",
20603	//       "location": "path",
20604	//       "required": true,
20605	//       "type": "string"
20606	//     },
20607	//     "orderId": {
20608	//       "description": "The ID of the order.",
20609	//       "location": "path",
20610	//       "required": true,
20611	//       "type": "string"
20612	//     }
20613	//   },
20614	//   "path": "{merchantId}/orders/{orderId}/testreturn",
20615	//   "request": {
20616	//     "$ref": "OrdersCreateTestReturnRequest"
20617	//   },
20618	//   "response": {
20619	//     "$ref": "OrdersCreateTestReturnResponse"
20620	//   },
20621	//   "scopes": [
20622	//     "https://www.googleapis.com/auth/content"
20623	//   ]
20624	// }
20625
20626}
20627
20628// method id "content.orders.custombatch":
20629
20630type OrdersCustombatchCall struct {
20631	s                        *APIService
20632	orderscustombatchrequest *OrdersCustomBatchRequest
20633	urlParams_               gensupport.URLParams
20634	ctx_                     context.Context
20635	header_                  http.Header
20636}
20637
20638// Custombatch: Retrieves or modifies multiple orders in a single
20639// request.
20640func (r *OrdersService) Custombatch(orderscustombatchrequest *OrdersCustomBatchRequest) *OrdersCustombatchCall {
20641	c := &OrdersCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20642	c.orderscustombatchrequest = orderscustombatchrequest
20643	return c
20644}
20645
20646// Fields allows partial responses to be retrieved. See
20647// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20648// for more information.
20649func (c *OrdersCustombatchCall) Fields(s ...googleapi.Field) *OrdersCustombatchCall {
20650	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20651	return c
20652}
20653
20654// Context sets the context to be used in this call's Do method. Any
20655// pending HTTP request will be aborted if the provided context is
20656// canceled.
20657func (c *OrdersCustombatchCall) Context(ctx context.Context) *OrdersCustombatchCall {
20658	c.ctx_ = ctx
20659	return c
20660}
20661
20662// Header returns an http.Header that can be modified by the caller to
20663// add HTTP headers to the request.
20664func (c *OrdersCustombatchCall) Header() http.Header {
20665	if c.header_ == nil {
20666		c.header_ = make(http.Header)
20667	}
20668	return c.header_
20669}
20670
20671func (c *OrdersCustombatchCall) doRequest(alt string) (*http.Response, error) {
20672	reqHeaders := make(http.Header)
20673	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
20674	for k, v := range c.header_ {
20675		reqHeaders[k] = v
20676	}
20677	reqHeaders.Set("User-Agent", c.s.userAgent())
20678	var body io.Reader = nil
20679	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscustombatchrequest)
20680	if err != nil {
20681		return nil, err
20682	}
20683	reqHeaders.Set("Content-Type", "application/json")
20684	c.urlParams_.Set("alt", alt)
20685	c.urlParams_.Set("prettyPrint", "false")
20686	urls := googleapi.ResolveRelative(c.s.BasePath, "orders/batch")
20687	urls += "?" + c.urlParams_.Encode()
20688	req, err := http.NewRequest("POST", urls, body)
20689	if err != nil {
20690		return nil, err
20691	}
20692	req.Header = reqHeaders
20693	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20694}
20695
20696// Do executes the "content.orders.custombatch" call.
20697// Exactly one of *OrdersCustomBatchResponse or error will be non-nil.
20698// Any non-2xx status code is an error. Response headers are in either
20699// *OrdersCustomBatchResponse.ServerResponse.Header or (if a response
20700// was returned at all) in error.(*googleapi.Error).Header. Use
20701// googleapi.IsNotModified to check whether the returned error was
20702// because http.StatusNotModified was returned.
20703func (c *OrdersCustombatchCall) Do(opts ...googleapi.CallOption) (*OrdersCustomBatchResponse, error) {
20704	gensupport.SetOptions(c.urlParams_, opts...)
20705	res, err := c.doRequest("json")
20706	if res != nil && res.StatusCode == http.StatusNotModified {
20707		if res.Body != nil {
20708			res.Body.Close()
20709		}
20710		return nil, &googleapi.Error{
20711			Code:   res.StatusCode,
20712			Header: res.Header,
20713		}
20714	}
20715	if err != nil {
20716		return nil, err
20717	}
20718	defer googleapi.CloseBody(res)
20719	if err := googleapi.CheckResponse(res); err != nil {
20720		return nil, err
20721	}
20722	ret := &OrdersCustomBatchResponse{
20723		ServerResponse: googleapi.ServerResponse{
20724			Header:         res.Header,
20725			HTTPStatusCode: res.StatusCode,
20726		},
20727	}
20728	target := &ret
20729	if err := gensupport.DecodeResponse(target, res); err != nil {
20730		return nil, err
20731	}
20732	return ret, nil
20733	// {
20734	//   "description": "Retrieves or modifies multiple orders in a single request.",
20735	//   "flatPath": "orders/batch",
20736	//   "httpMethod": "POST",
20737	//   "id": "content.orders.custombatch",
20738	//   "parameterOrder": [],
20739	//   "parameters": {},
20740	//   "path": "orders/batch",
20741	//   "request": {
20742	//     "$ref": "OrdersCustomBatchRequest"
20743	//   },
20744	//   "response": {
20745	//     "$ref": "OrdersCustomBatchResponse"
20746	//   },
20747	//   "scopes": [
20748	//     "https://www.googleapis.com/auth/content"
20749	//   ]
20750	// }
20751
20752}
20753
20754// method id "content.orders.get":
20755
20756type OrdersGetCall struct {
20757	s            *APIService
20758	merchantId   uint64
20759	orderId      string
20760	urlParams_   gensupport.URLParams
20761	ifNoneMatch_ string
20762	ctx_         context.Context
20763	header_      http.Header
20764}
20765
20766// Get: Retrieves an order from your Merchant Center account.
20767//
20768// - merchantId: The ID of the account that manages the order. This
20769//   cannot be a multi-client account.
20770// - orderId: The ID of the order.
20771func (r *OrdersService) Get(merchantId uint64, orderId string) *OrdersGetCall {
20772	c := &OrdersGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20773	c.merchantId = merchantId
20774	c.orderId = orderId
20775	return c
20776}
20777
20778// Fields allows partial responses to be retrieved. See
20779// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20780// for more information.
20781func (c *OrdersGetCall) Fields(s ...googleapi.Field) *OrdersGetCall {
20782	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20783	return c
20784}
20785
20786// IfNoneMatch sets the optional parameter which makes the operation
20787// fail if the object's ETag matches the given value. This is useful for
20788// getting updates only after the object has changed since the last
20789// request. Use googleapi.IsNotModified to check whether the response
20790// error from Do is the result of In-None-Match.
20791func (c *OrdersGetCall) IfNoneMatch(entityTag string) *OrdersGetCall {
20792	c.ifNoneMatch_ = entityTag
20793	return c
20794}
20795
20796// Context sets the context to be used in this call's Do method. Any
20797// pending HTTP request will be aborted if the provided context is
20798// canceled.
20799func (c *OrdersGetCall) Context(ctx context.Context) *OrdersGetCall {
20800	c.ctx_ = ctx
20801	return c
20802}
20803
20804// Header returns an http.Header that can be modified by the caller to
20805// add HTTP headers to the request.
20806func (c *OrdersGetCall) Header() http.Header {
20807	if c.header_ == nil {
20808		c.header_ = make(http.Header)
20809	}
20810	return c.header_
20811}
20812
20813func (c *OrdersGetCall) doRequest(alt string) (*http.Response, error) {
20814	reqHeaders := make(http.Header)
20815	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
20816	for k, v := range c.header_ {
20817		reqHeaders[k] = v
20818	}
20819	reqHeaders.Set("User-Agent", c.s.userAgent())
20820	if c.ifNoneMatch_ != "" {
20821		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
20822	}
20823	var body io.Reader = nil
20824	c.urlParams_.Set("alt", alt)
20825	c.urlParams_.Set("prettyPrint", "false")
20826	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}")
20827	urls += "?" + c.urlParams_.Encode()
20828	req, err := http.NewRequest("GET", urls, body)
20829	if err != nil {
20830		return nil, err
20831	}
20832	req.Header = reqHeaders
20833	googleapi.Expand(req.URL, map[string]string{
20834		"merchantId": strconv.FormatUint(c.merchantId, 10),
20835		"orderId":    c.orderId,
20836	})
20837	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20838}
20839
20840// Do executes the "content.orders.get" call.
20841// Exactly one of *Order or error will be non-nil. Any non-2xx status
20842// code is an error. Response headers are in either
20843// *Order.ServerResponse.Header or (if a response was returned at all)
20844// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
20845// check whether the returned error was because http.StatusNotModified
20846// was returned.
20847func (c *OrdersGetCall) Do(opts ...googleapi.CallOption) (*Order, error) {
20848	gensupport.SetOptions(c.urlParams_, opts...)
20849	res, err := c.doRequest("json")
20850	if res != nil && res.StatusCode == http.StatusNotModified {
20851		if res.Body != nil {
20852			res.Body.Close()
20853		}
20854		return nil, &googleapi.Error{
20855			Code:   res.StatusCode,
20856			Header: res.Header,
20857		}
20858	}
20859	if err != nil {
20860		return nil, err
20861	}
20862	defer googleapi.CloseBody(res)
20863	if err := googleapi.CheckResponse(res); err != nil {
20864		return nil, err
20865	}
20866	ret := &Order{
20867		ServerResponse: googleapi.ServerResponse{
20868			Header:         res.Header,
20869			HTTPStatusCode: res.StatusCode,
20870		},
20871	}
20872	target := &ret
20873	if err := gensupport.DecodeResponse(target, res); err != nil {
20874		return nil, err
20875	}
20876	return ret, nil
20877	// {
20878	//   "description": "Retrieves an order from your Merchant Center account.",
20879	//   "flatPath": "{merchantId}/orders/{orderId}",
20880	//   "httpMethod": "GET",
20881	//   "id": "content.orders.get",
20882	//   "parameterOrder": [
20883	//     "merchantId",
20884	//     "orderId"
20885	//   ],
20886	//   "parameters": {
20887	//     "merchantId": {
20888	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
20889	//       "format": "uint64",
20890	//       "location": "path",
20891	//       "required": true,
20892	//       "type": "string"
20893	//     },
20894	//     "orderId": {
20895	//       "description": "The ID of the order.",
20896	//       "location": "path",
20897	//       "required": true,
20898	//       "type": "string"
20899	//     }
20900	//   },
20901	//   "path": "{merchantId}/orders/{orderId}",
20902	//   "response": {
20903	//     "$ref": "Order"
20904	//   },
20905	//   "scopes": [
20906	//     "https://www.googleapis.com/auth/content"
20907	//   ]
20908	// }
20909
20910}
20911
20912// method id "content.orders.getbymerchantorderid":
20913
20914type OrdersGetbymerchantorderidCall struct {
20915	s               *APIService
20916	merchantId      uint64
20917	merchantOrderId string
20918	urlParams_      gensupport.URLParams
20919	ifNoneMatch_    string
20920	ctx_            context.Context
20921	header_         http.Header
20922}
20923
20924// Getbymerchantorderid: Retrieves an order using merchant order ID.
20925//
20926// - merchantId: The ID of the account that manages the order. This
20927//   cannot be a multi-client account.
20928// - merchantOrderId: The merchant order ID to be looked for.
20929func (r *OrdersService) Getbymerchantorderid(merchantId uint64, merchantOrderId string) *OrdersGetbymerchantorderidCall {
20930	c := &OrdersGetbymerchantorderidCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20931	c.merchantId = merchantId
20932	c.merchantOrderId = merchantOrderId
20933	return c
20934}
20935
20936// Fields allows partial responses to be retrieved. See
20937// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20938// for more information.
20939func (c *OrdersGetbymerchantorderidCall) Fields(s ...googleapi.Field) *OrdersGetbymerchantorderidCall {
20940	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20941	return c
20942}
20943
20944// IfNoneMatch sets the optional parameter which makes the operation
20945// fail if the object's ETag matches the given value. This is useful for
20946// getting updates only after the object has changed since the last
20947// request. Use googleapi.IsNotModified to check whether the response
20948// error from Do is the result of In-None-Match.
20949func (c *OrdersGetbymerchantorderidCall) IfNoneMatch(entityTag string) *OrdersGetbymerchantorderidCall {
20950	c.ifNoneMatch_ = entityTag
20951	return c
20952}
20953
20954// Context sets the context to be used in this call's Do method. Any
20955// pending HTTP request will be aborted if the provided context is
20956// canceled.
20957func (c *OrdersGetbymerchantorderidCall) Context(ctx context.Context) *OrdersGetbymerchantorderidCall {
20958	c.ctx_ = ctx
20959	return c
20960}
20961
20962// Header returns an http.Header that can be modified by the caller to
20963// add HTTP headers to the request.
20964func (c *OrdersGetbymerchantorderidCall) Header() http.Header {
20965	if c.header_ == nil {
20966		c.header_ = make(http.Header)
20967	}
20968	return c.header_
20969}
20970
20971func (c *OrdersGetbymerchantorderidCall) doRequest(alt string) (*http.Response, error) {
20972	reqHeaders := make(http.Header)
20973	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
20974	for k, v := range c.header_ {
20975		reqHeaders[k] = v
20976	}
20977	reqHeaders.Set("User-Agent", c.s.userAgent())
20978	if c.ifNoneMatch_ != "" {
20979		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
20980	}
20981	var body io.Reader = nil
20982	c.urlParams_.Set("alt", alt)
20983	c.urlParams_.Set("prettyPrint", "false")
20984	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/ordersbymerchantid/{merchantOrderId}")
20985	urls += "?" + c.urlParams_.Encode()
20986	req, err := http.NewRequest("GET", urls, body)
20987	if err != nil {
20988		return nil, err
20989	}
20990	req.Header = reqHeaders
20991	googleapi.Expand(req.URL, map[string]string{
20992		"merchantId":      strconv.FormatUint(c.merchantId, 10),
20993		"merchantOrderId": c.merchantOrderId,
20994	})
20995	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20996}
20997
20998// Do executes the "content.orders.getbymerchantorderid" call.
20999// Exactly one of *OrdersGetByMerchantOrderIdResponse or error will be
21000// non-nil. Any non-2xx status code is an error. Response headers are in
21001// either *OrdersGetByMerchantOrderIdResponse.ServerResponse.Header or
21002// (if a response was returned at all) in
21003// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
21004// whether the returned error was because http.StatusNotModified was
21005// returned.
21006func (c *OrdersGetbymerchantorderidCall) Do(opts ...googleapi.CallOption) (*OrdersGetByMerchantOrderIdResponse, error) {
21007	gensupport.SetOptions(c.urlParams_, opts...)
21008	res, err := c.doRequest("json")
21009	if res != nil && res.StatusCode == http.StatusNotModified {
21010		if res.Body != nil {
21011			res.Body.Close()
21012		}
21013		return nil, &googleapi.Error{
21014			Code:   res.StatusCode,
21015			Header: res.Header,
21016		}
21017	}
21018	if err != nil {
21019		return nil, err
21020	}
21021	defer googleapi.CloseBody(res)
21022	if err := googleapi.CheckResponse(res); err != nil {
21023		return nil, err
21024	}
21025	ret := &OrdersGetByMerchantOrderIdResponse{
21026		ServerResponse: googleapi.ServerResponse{
21027			Header:         res.Header,
21028			HTTPStatusCode: res.StatusCode,
21029		},
21030	}
21031	target := &ret
21032	if err := gensupport.DecodeResponse(target, res); err != nil {
21033		return nil, err
21034	}
21035	return ret, nil
21036	// {
21037	//   "description": "Retrieves an order using merchant order ID.",
21038	//   "flatPath": "{merchantId}/ordersbymerchantid/{merchantOrderId}",
21039	//   "httpMethod": "GET",
21040	//   "id": "content.orders.getbymerchantorderid",
21041	//   "parameterOrder": [
21042	//     "merchantId",
21043	//     "merchantOrderId"
21044	//   ],
21045	//   "parameters": {
21046	//     "merchantId": {
21047	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
21048	//       "format": "uint64",
21049	//       "location": "path",
21050	//       "required": true,
21051	//       "type": "string"
21052	//     },
21053	//     "merchantOrderId": {
21054	//       "description": "The merchant order ID to be looked for.",
21055	//       "location": "path",
21056	//       "required": true,
21057	//       "type": "string"
21058	//     }
21059	//   },
21060	//   "path": "{merchantId}/ordersbymerchantid/{merchantOrderId}",
21061	//   "response": {
21062	//     "$ref": "OrdersGetByMerchantOrderIdResponse"
21063	//   },
21064	//   "scopes": [
21065	//     "https://www.googleapis.com/auth/content"
21066	//   ]
21067	// }
21068
21069}
21070
21071// method id "content.orders.gettestordertemplate":
21072
21073type OrdersGettestordertemplateCall struct {
21074	s            *APIService
21075	merchantId   uint64
21076	templateName string
21077	urlParams_   gensupport.URLParams
21078	ifNoneMatch_ string
21079	ctx_         context.Context
21080	header_      http.Header
21081}
21082
21083// Gettestordertemplate: Sandbox only. Retrieves an order template that
21084// can be used to quickly create a new order in sandbox.
21085//
21086// - merchantId: The ID of the account that should manage the order.
21087//   This cannot be a multi-client account.
21088// - templateName: The name of the template to retrieve.
21089func (r *OrdersService) Gettestordertemplate(merchantId uint64, templateName string) *OrdersGettestordertemplateCall {
21090	c := &OrdersGettestordertemplateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21091	c.merchantId = merchantId
21092	c.templateName = templateName
21093	return c
21094}
21095
21096// Country sets the optional parameter "country": The country of the
21097// template to retrieve. Defaults to `US`.
21098func (c *OrdersGettestordertemplateCall) Country(country string) *OrdersGettestordertemplateCall {
21099	c.urlParams_.Set("country", country)
21100	return c
21101}
21102
21103// Fields allows partial responses to be retrieved. See
21104// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21105// for more information.
21106func (c *OrdersGettestordertemplateCall) Fields(s ...googleapi.Field) *OrdersGettestordertemplateCall {
21107	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21108	return c
21109}
21110
21111// IfNoneMatch sets the optional parameter which makes the operation
21112// fail if the object's ETag matches the given value. This is useful for
21113// getting updates only after the object has changed since the last
21114// request. Use googleapi.IsNotModified to check whether the response
21115// error from Do is the result of In-None-Match.
21116func (c *OrdersGettestordertemplateCall) IfNoneMatch(entityTag string) *OrdersGettestordertemplateCall {
21117	c.ifNoneMatch_ = entityTag
21118	return c
21119}
21120
21121// Context sets the context to be used in this call's Do method. Any
21122// pending HTTP request will be aborted if the provided context is
21123// canceled.
21124func (c *OrdersGettestordertemplateCall) Context(ctx context.Context) *OrdersGettestordertemplateCall {
21125	c.ctx_ = ctx
21126	return c
21127}
21128
21129// Header returns an http.Header that can be modified by the caller to
21130// add HTTP headers to the request.
21131func (c *OrdersGettestordertemplateCall) Header() http.Header {
21132	if c.header_ == nil {
21133		c.header_ = make(http.Header)
21134	}
21135	return c.header_
21136}
21137
21138func (c *OrdersGettestordertemplateCall) doRequest(alt string) (*http.Response, error) {
21139	reqHeaders := make(http.Header)
21140	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
21141	for k, v := range c.header_ {
21142		reqHeaders[k] = v
21143	}
21144	reqHeaders.Set("User-Agent", c.s.userAgent())
21145	if c.ifNoneMatch_ != "" {
21146		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
21147	}
21148	var body io.Reader = nil
21149	c.urlParams_.Set("alt", alt)
21150	c.urlParams_.Set("prettyPrint", "false")
21151	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/testordertemplates/{templateName}")
21152	urls += "?" + c.urlParams_.Encode()
21153	req, err := http.NewRequest("GET", urls, body)
21154	if err != nil {
21155		return nil, err
21156	}
21157	req.Header = reqHeaders
21158	googleapi.Expand(req.URL, map[string]string{
21159		"merchantId":   strconv.FormatUint(c.merchantId, 10),
21160		"templateName": c.templateName,
21161	})
21162	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21163}
21164
21165// Do executes the "content.orders.gettestordertemplate" call.
21166// Exactly one of *OrdersGetTestOrderTemplateResponse or error will be
21167// non-nil. Any non-2xx status code is an error. Response headers are in
21168// either *OrdersGetTestOrderTemplateResponse.ServerResponse.Header or
21169// (if a response was returned at all) in
21170// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
21171// whether the returned error was because http.StatusNotModified was
21172// returned.
21173func (c *OrdersGettestordertemplateCall) Do(opts ...googleapi.CallOption) (*OrdersGetTestOrderTemplateResponse, error) {
21174	gensupport.SetOptions(c.urlParams_, opts...)
21175	res, err := c.doRequest("json")
21176	if res != nil && res.StatusCode == http.StatusNotModified {
21177		if res.Body != nil {
21178			res.Body.Close()
21179		}
21180		return nil, &googleapi.Error{
21181			Code:   res.StatusCode,
21182			Header: res.Header,
21183		}
21184	}
21185	if err != nil {
21186		return nil, err
21187	}
21188	defer googleapi.CloseBody(res)
21189	if err := googleapi.CheckResponse(res); err != nil {
21190		return nil, err
21191	}
21192	ret := &OrdersGetTestOrderTemplateResponse{
21193		ServerResponse: googleapi.ServerResponse{
21194			Header:         res.Header,
21195			HTTPStatusCode: res.StatusCode,
21196		},
21197	}
21198	target := &ret
21199	if err := gensupport.DecodeResponse(target, res); err != nil {
21200		return nil, err
21201	}
21202	return ret, nil
21203	// {
21204	//   "description": "Sandbox only. Retrieves an order template that can be used to quickly create a new order in sandbox.",
21205	//   "flatPath": "{merchantId}/testordertemplates/{templateName}",
21206	//   "httpMethod": "GET",
21207	//   "id": "content.orders.gettestordertemplate",
21208	//   "parameterOrder": [
21209	//     "merchantId",
21210	//     "templateName"
21211	//   ],
21212	//   "parameters": {
21213	//     "country": {
21214	//       "description": "The country of the template to retrieve. Defaults to `US`.",
21215	//       "location": "query",
21216	//       "type": "string"
21217	//     },
21218	//     "merchantId": {
21219	//       "description": "The ID of the account that should manage the order. This cannot be a multi-client account.",
21220	//       "format": "uint64",
21221	//       "location": "path",
21222	//       "required": true,
21223	//       "type": "string"
21224	//     },
21225	//     "templateName": {
21226	//       "description": "The name of the template to retrieve.",
21227	//       "enum": [
21228	//         "TEMPLATE1",
21229	//         "TEMPLATE2",
21230	//         "TEMPLATE1A",
21231	//         "TEMPLATE1B",
21232	//         "TEMPLATE3"
21233	//       ],
21234	//       "enumDescriptions": [
21235	//         "",
21236	//         "",
21237	//         "",
21238	//         "",
21239	//         ""
21240	//       ],
21241	//       "location": "path",
21242	//       "required": true,
21243	//       "type": "string"
21244	//     }
21245	//   },
21246	//   "path": "{merchantId}/testordertemplates/{templateName}",
21247	//   "response": {
21248	//     "$ref": "OrdersGetTestOrderTemplateResponse"
21249	//   },
21250	//   "scopes": [
21251	//     "https://www.googleapis.com/auth/content"
21252	//   ]
21253	// }
21254
21255}
21256
21257// method id "content.orders.instorerefundlineitem":
21258
21259type OrdersInstorerefundlineitemCall struct {
21260	s                                  *APIService
21261	merchantId                         uint64
21262	orderId                            string
21263	ordersinstorerefundlineitemrequest *OrdersInStoreRefundLineItemRequest
21264	urlParams_                         gensupport.URLParams
21265	ctx_                               context.Context
21266	header_                            http.Header
21267}
21268
21269// Instorerefundlineitem: Deprecated. Notifies that item return and
21270// refund was handled directly by merchant outside of Google payments
21271// processing (e.g. cash refund done in store). Note: We recommend
21272// calling the returnrefundlineitem method to refund in-store returns.
21273// We will issue the refund directly to the customer. This helps to
21274// prevent possible differences arising between merchant and Google
21275// transaction records. We also recommend having the point of sale
21276// system communicate with Google to ensure that customers do not
21277// receive a double refund by first refunding via Google then via an
21278// in-store return.
21279//
21280// - merchantId: The ID of the account that manages the order. This
21281//   cannot be a multi-client account.
21282// - orderId: The ID of the order.
21283func (r *OrdersService) Instorerefundlineitem(merchantId uint64, orderId string, ordersinstorerefundlineitemrequest *OrdersInStoreRefundLineItemRequest) *OrdersInstorerefundlineitemCall {
21284	c := &OrdersInstorerefundlineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21285	c.merchantId = merchantId
21286	c.orderId = orderId
21287	c.ordersinstorerefundlineitemrequest = ordersinstorerefundlineitemrequest
21288	return c
21289}
21290
21291// Fields allows partial responses to be retrieved. See
21292// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21293// for more information.
21294func (c *OrdersInstorerefundlineitemCall) Fields(s ...googleapi.Field) *OrdersInstorerefundlineitemCall {
21295	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21296	return c
21297}
21298
21299// Context sets the context to be used in this call's Do method. Any
21300// pending HTTP request will be aborted if the provided context is
21301// canceled.
21302func (c *OrdersInstorerefundlineitemCall) Context(ctx context.Context) *OrdersInstorerefundlineitemCall {
21303	c.ctx_ = ctx
21304	return c
21305}
21306
21307// Header returns an http.Header that can be modified by the caller to
21308// add HTTP headers to the request.
21309func (c *OrdersInstorerefundlineitemCall) Header() http.Header {
21310	if c.header_ == nil {
21311		c.header_ = make(http.Header)
21312	}
21313	return c.header_
21314}
21315
21316func (c *OrdersInstorerefundlineitemCall) doRequest(alt string) (*http.Response, error) {
21317	reqHeaders := make(http.Header)
21318	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
21319	for k, v := range c.header_ {
21320		reqHeaders[k] = v
21321	}
21322	reqHeaders.Set("User-Agent", c.s.userAgent())
21323	var body io.Reader = nil
21324	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersinstorerefundlineitemrequest)
21325	if err != nil {
21326		return nil, err
21327	}
21328	reqHeaders.Set("Content-Type", "application/json")
21329	c.urlParams_.Set("alt", alt)
21330	c.urlParams_.Set("prettyPrint", "false")
21331	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/inStoreRefundLineItem")
21332	urls += "?" + c.urlParams_.Encode()
21333	req, err := http.NewRequest("POST", urls, body)
21334	if err != nil {
21335		return nil, err
21336	}
21337	req.Header = reqHeaders
21338	googleapi.Expand(req.URL, map[string]string{
21339		"merchantId": strconv.FormatUint(c.merchantId, 10),
21340		"orderId":    c.orderId,
21341	})
21342	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21343}
21344
21345// Do executes the "content.orders.instorerefundlineitem" call.
21346// Exactly one of *OrdersInStoreRefundLineItemResponse or error will be
21347// non-nil. Any non-2xx status code is an error. Response headers are in
21348// either *OrdersInStoreRefundLineItemResponse.ServerResponse.Header or
21349// (if a response was returned at all) in
21350// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
21351// whether the returned error was because http.StatusNotModified was
21352// returned.
21353func (c *OrdersInstorerefundlineitemCall) Do(opts ...googleapi.CallOption) (*OrdersInStoreRefundLineItemResponse, error) {
21354	gensupport.SetOptions(c.urlParams_, opts...)
21355	res, err := c.doRequest("json")
21356	if res != nil && res.StatusCode == http.StatusNotModified {
21357		if res.Body != nil {
21358			res.Body.Close()
21359		}
21360		return nil, &googleapi.Error{
21361			Code:   res.StatusCode,
21362			Header: res.Header,
21363		}
21364	}
21365	if err != nil {
21366		return nil, err
21367	}
21368	defer googleapi.CloseBody(res)
21369	if err := googleapi.CheckResponse(res); err != nil {
21370		return nil, err
21371	}
21372	ret := &OrdersInStoreRefundLineItemResponse{
21373		ServerResponse: googleapi.ServerResponse{
21374			Header:         res.Header,
21375			HTTPStatusCode: res.StatusCode,
21376		},
21377	}
21378	target := &ret
21379	if err := gensupport.DecodeResponse(target, res); err != nil {
21380		return nil, err
21381	}
21382	return ret, nil
21383	// {
21384	//   "description": "Deprecated. Notifies that item return and refund was handled directly by merchant outside of Google payments processing (e.g. cash refund done in store). Note: We recommend calling the returnrefundlineitem method to refund in-store returns. We will issue the refund directly to the customer. This helps to prevent possible differences arising between merchant and Google transaction records. We also recommend having the point of sale system communicate with Google to ensure that customers do not receive a double refund by first refunding via Google then via an in-store return.",
21385	//   "flatPath": "{merchantId}/orders/{orderId}/inStoreRefundLineItem",
21386	//   "httpMethod": "POST",
21387	//   "id": "content.orders.instorerefundlineitem",
21388	//   "parameterOrder": [
21389	//     "merchantId",
21390	//     "orderId"
21391	//   ],
21392	//   "parameters": {
21393	//     "merchantId": {
21394	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
21395	//       "format": "uint64",
21396	//       "location": "path",
21397	//       "required": true,
21398	//       "type": "string"
21399	//     },
21400	//     "orderId": {
21401	//       "description": "The ID of the order.",
21402	//       "location": "path",
21403	//       "required": true,
21404	//       "type": "string"
21405	//     }
21406	//   },
21407	//   "path": "{merchantId}/orders/{orderId}/inStoreRefundLineItem",
21408	//   "request": {
21409	//     "$ref": "OrdersInStoreRefundLineItemRequest"
21410	//   },
21411	//   "response": {
21412	//     "$ref": "OrdersInStoreRefundLineItemResponse"
21413	//   },
21414	//   "scopes": [
21415	//     "https://www.googleapis.com/auth/content"
21416	//   ]
21417	// }
21418
21419}
21420
21421// method id "content.orders.list":
21422
21423type OrdersListCall struct {
21424	s            *APIService
21425	merchantId   uint64
21426	urlParams_   gensupport.URLParams
21427	ifNoneMatch_ string
21428	ctx_         context.Context
21429	header_      http.Header
21430}
21431
21432// List: Lists the orders in your Merchant Center account.
21433//
21434// - merchantId: The ID of the account that manages the order. This
21435//   cannot be a multi-client account.
21436func (r *OrdersService) List(merchantId uint64) *OrdersListCall {
21437	c := &OrdersListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21438	c.merchantId = merchantId
21439	return c
21440}
21441
21442// Acknowledged sets the optional parameter "acknowledged": Obtains
21443// orders that match the acknowledgement status. When set to true,
21444// obtains orders that have been acknowledged. When false, obtains
21445// orders that have not been acknowledged. We recommend using this
21446// filter set to `false`, in conjunction with the `acknowledge` call,
21447// such that only un-acknowledged orders are returned.
21448func (c *OrdersListCall) Acknowledged(acknowledged bool) *OrdersListCall {
21449	c.urlParams_.Set("acknowledged", fmt.Sprint(acknowledged))
21450	return c
21451}
21452
21453// MaxResults sets the optional parameter "maxResults": The maximum
21454// number of orders to return in the response, used for paging. The
21455// default value is 25 orders per page, and the maximum allowed value is
21456// 250 orders per page.
21457func (c *OrdersListCall) MaxResults(maxResults int64) *OrdersListCall {
21458	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
21459	return c
21460}
21461
21462// OrderBy sets the optional parameter "orderBy": Order results by
21463// placement date in descending or ascending order. Acceptable values
21464// are: - placedDateAsc - placedDateDesc
21465func (c *OrdersListCall) OrderBy(orderBy string) *OrdersListCall {
21466	c.urlParams_.Set("orderBy", orderBy)
21467	return c
21468}
21469
21470// PageToken sets the optional parameter "pageToken": The token returned
21471// by the previous request.
21472func (c *OrdersListCall) PageToken(pageToken string) *OrdersListCall {
21473	c.urlParams_.Set("pageToken", pageToken)
21474	return c
21475}
21476
21477// PlacedDateEnd sets the optional parameter "placedDateEnd": Obtains
21478// orders placed before this date (exclusively), in ISO 8601 format.
21479func (c *OrdersListCall) PlacedDateEnd(placedDateEnd string) *OrdersListCall {
21480	c.urlParams_.Set("placedDateEnd", placedDateEnd)
21481	return c
21482}
21483
21484// PlacedDateStart sets the optional parameter "placedDateStart":
21485// Obtains orders placed after this date (inclusively), in ISO 8601
21486// format.
21487func (c *OrdersListCall) PlacedDateStart(placedDateStart string) *OrdersListCall {
21488	c.urlParams_.Set("placedDateStart", placedDateStart)
21489	return c
21490}
21491
21492// Statuses sets the optional parameter "statuses": Obtains orders that
21493// match any of the specified statuses. Please note that `active` is a
21494// shortcut for `pendingShipment` and `partiallyShipped`, and
21495// `completed` is a shortcut for `shipped`, `partiallyDelivered`,
21496// `delivered`, `partiallyReturned`, `returned`, and `canceled`.
21497//
21498// Possible values:
21499//   "ACTIVE"
21500//   "COMPLETED"
21501//   "CANCELED"
21502//   "IN_PROGRESS"
21503//   "PENDING_SHIPMENT"
21504//   "PARTIALLY_SHIPPED"
21505//   "SHIPPED"
21506//   "PARTIALLY_DELIVERED"
21507//   "DELIVERED"
21508//   "PARTIALLY_RETURNED"
21509//   "RETURNED"
21510func (c *OrdersListCall) Statuses(statuses ...string) *OrdersListCall {
21511	c.urlParams_.SetMulti("statuses", append([]string{}, statuses...))
21512	return c
21513}
21514
21515// Fields allows partial responses to be retrieved. See
21516// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21517// for more information.
21518func (c *OrdersListCall) Fields(s ...googleapi.Field) *OrdersListCall {
21519	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21520	return c
21521}
21522
21523// IfNoneMatch sets the optional parameter which makes the operation
21524// fail if the object's ETag matches the given value. This is useful for
21525// getting updates only after the object has changed since the last
21526// request. Use googleapi.IsNotModified to check whether the response
21527// error from Do is the result of In-None-Match.
21528func (c *OrdersListCall) IfNoneMatch(entityTag string) *OrdersListCall {
21529	c.ifNoneMatch_ = entityTag
21530	return c
21531}
21532
21533// Context sets the context to be used in this call's Do method. Any
21534// pending HTTP request will be aborted if the provided context is
21535// canceled.
21536func (c *OrdersListCall) Context(ctx context.Context) *OrdersListCall {
21537	c.ctx_ = ctx
21538	return c
21539}
21540
21541// Header returns an http.Header that can be modified by the caller to
21542// add HTTP headers to the request.
21543func (c *OrdersListCall) Header() http.Header {
21544	if c.header_ == nil {
21545		c.header_ = make(http.Header)
21546	}
21547	return c.header_
21548}
21549
21550func (c *OrdersListCall) doRequest(alt string) (*http.Response, error) {
21551	reqHeaders := make(http.Header)
21552	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
21553	for k, v := range c.header_ {
21554		reqHeaders[k] = v
21555	}
21556	reqHeaders.Set("User-Agent", c.s.userAgent())
21557	if c.ifNoneMatch_ != "" {
21558		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
21559	}
21560	var body io.Reader = nil
21561	c.urlParams_.Set("alt", alt)
21562	c.urlParams_.Set("prettyPrint", "false")
21563	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders")
21564	urls += "?" + c.urlParams_.Encode()
21565	req, err := http.NewRequest("GET", urls, body)
21566	if err != nil {
21567		return nil, err
21568	}
21569	req.Header = reqHeaders
21570	googleapi.Expand(req.URL, map[string]string{
21571		"merchantId": strconv.FormatUint(c.merchantId, 10),
21572	})
21573	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21574}
21575
21576// Do executes the "content.orders.list" call.
21577// Exactly one of *OrdersListResponse or error will be non-nil. Any
21578// non-2xx status code is an error. Response headers are in either
21579// *OrdersListResponse.ServerResponse.Header or (if a response was
21580// returned at all) in error.(*googleapi.Error).Header. Use
21581// googleapi.IsNotModified to check whether the returned error was
21582// because http.StatusNotModified was returned.
21583func (c *OrdersListCall) Do(opts ...googleapi.CallOption) (*OrdersListResponse, error) {
21584	gensupport.SetOptions(c.urlParams_, opts...)
21585	res, err := c.doRequest("json")
21586	if res != nil && res.StatusCode == http.StatusNotModified {
21587		if res.Body != nil {
21588			res.Body.Close()
21589		}
21590		return nil, &googleapi.Error{
21591			Code:   res.StatusCode,
21592			Header: res.Header,
21593		}
21594	}
21595	if err != nil {
21596		return nil, err
21597	}
21598	defer googleapi.CloseBody(res)
21599	if err := googleapi.CheckResponse(res); err != nil {
21600		return nil, err
21601	}
21602	ret := &OrdersListResponse{
21603		ServerResponse: googleapi.ServerResponse{
21604			Header:         res.Header,
21605			HTTPStatusCode: res.StatusCode,
21606		},
21607	}
21608	target := &ret
21609	if err := gensupport.DecodeResponse(target, res); err != nil {
21610		return nil, err
21611	}
21612	return ret, nil
21613	// {
21614	//   "description": "Lists the orders in your Merchant Center account.",
21615	//   "flatPath": "{merchantId}/orders",
21616	//   "httpMethod": "GET",
21617	//   "id": "content.orders.list",
21618	//   "parameterOrder": [
21619	//     "merchantId"
21620	//   ],
21621	//   "parameters": {
21622	//     "acknowledged": {
21623	//       "description": "Obtains orders that match the acknowledgement status. When set to true, obtains orders that have been acknowledged. When false, obtains orders that have not been acknowledged. We recommend using this filter set to `false`, in conjunction with the `acknowledge` call, such that only un-acknowledged orders are returned. ",
21624	//       "location": "query",
21625	//       "type": "boolean"
21626	//     },
21627	//     "maxResults": {
21628	//       "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.",
21629	//       "format": "uint32",
21630	//       "location": "query",
21631	//       "type": "integer"
21632	//     },
21633	//     "merchantId": {
21634	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
21635	//       "format": "uint64",
21636	//       "location": "path",
21637	//       "required": true,
21638	//       "type": "string"
21639	//     },
21640	//     "orderBy": {
21641	//       "description": "Order results by placement date in descending or ascending order. Acceptable values are: - placedDateAsc - placedDateDesc ",
21642	//       "location": "query",
21643	//       "type": "string"
21644	//     },
21645	//     "pageToken": {
21646	//       "description": "The token returned by the previous request.",
21647	//       "location": "query",
21648	//       "type": "string"
21649	//     },
21650	//     "placedDateEnd": {
21651	//       "description": "Obtains orders placed before this date (exclusively), in ISO 8601 format.",
21652	//       "location": "query",
21653	//       "type": "string"
21654	//     },
21655	//     "placedDateStart": {
21656	//       "description": "Obtains orders placed after this date (inclusively), in ISO 8601 format.",
21657	//       "location": "query",
21658	//       "type": "string"
21659	//     },
21660	//     "statuses": {
21661	//       "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`.",
21662	//       "enum": [
21663	//         "ACTIVE",
21664	//         "COMPLETED",
21665	//         "CANCELED",
21666	//         "IN_PROGRESS",
21667	//         "PENDING_SHIPMENT",
21668	//         "PARTIALLY_SHIPPED",
21669	//         "SHIPPED",
21670	//         "PARTIALLY_DELIVERED",
21671	//         "DELIVERED",
21672	//         "PARTIALLY_RETURNED",
21673	//         "RETURNED"
21674	//       ],
21675	//       "enumDescriptions": [
21676	//         "",
21677	//         "",
21678	//         "",
21679	//         "",
21680	//         "",
21681	//         "",
21682	//         "",
21683	//         "",
21684	//         "",
21685	//         "",
21686	//         ""
21687	//       ],
21688	//       "location": "query",
21689	//       "repeated": true,
21690	//       "type": "string"
21691	//     }
21692	//   },
21693	//   "path": "{merchantId}/orders",
21694	//   "response": {
21695	//     "$ref": "OrdersListResponse"
21696	//   },
21697	//   "scopes": [
21698	//     "https://www.googleapis.com/auth/content"
21699	//   ]
21700	// }
21701
21702}
21703
21704// Pages invokes f for each page of results.
21705// A non-nil error returned from f will halt the iteration.
21706// The provided context supersedes any context provided to the Context method.
21707func (c *OrdersListCall) Pages(ctx context.Context, f func(*OrdersListResponse) error) error {
21708	c.ctx_ = ctx
21709	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
21710	for {
21711		x, err := c.Do()
21712		if err != nil {
21713			return err
21714		}
21715		if err := f(x); err != nil {
21716			return err
21717		}
21718		if x.NextPageToken == "" {
21719			return nil
21720		}
21721		c.PageToken(x.NextPageToken)
21722	}
21723}
21724
21725// method id "content.orders.refund":
21726
21727type OrdersRefundCall struct {
21728	s                   *APIService
21729	merchantId          uint64
21730	orderId             string
21731	ordersrefundrequest *OrdersRefundRequest
21732	urlParams_          gensupport.URLParams
21733	ctx_                context.Context
21734	header_             http.Header
21735}
21736
21737// Refund: Deprecated, please use returnRefundLineItem instead.
21738//
21739// - merchantId: The ID of the account that manages the order. This
21740//   cannot be a multi-client account.
21741// - orderId: The ID of the order to refund.
21742func (r *OrdersService) Refund(merchantId uint64, orderId string, ordersrefundrequest *OrdersRefundRequest) *OrdersRefundCall {
21743	c := &OrdersRefundCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21744	c.merchantId = merchantId
21745	c.orderId = orderId
21746	c.ordersrefundrequest = ordersrefundrequest
21747	return c
21748}
21749
21750// Fields allows partial responses to be retrieved. See
21751// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21752// for more information.
21753func (c *OrdersRefundCall) Fields(s ...googleapi.Field) *OrdersRefundCall {
21754	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21755	return c
21756}
21757
21758// Context sets the context to be used in this call's Do method. Any
21759// pending HTTP request will be aborted if the provided context is
21760// canceled.
21761func (c *OrdersRefundCall) Context(ctx context.Context) *OrdersRefundCall {
21762	c.ctx_ = ctx
21763	return c
21764}
21765
21766// Header returns an http.Header that can be modified by the caller to
21767// add HTTP headers to the request.
21768func (c *OrdersRefundCall) Header() http.Header {
21769	if c.header_ == nil {
21770		c.header_ = make(http.Header)
21771	}
21772	return c.header_
21773}
21774
21775func (c *OrdersRefundCall) doRequest(alt string) (*http.Response, error) {
21776	reqHeaders := make(http.Header)
21777	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
21778	for k, v := range c.header_ {
21779		reqHeaders[k] = v
21780	}
21781	reqHeaders.Set("User-Agent", c.s.userAgent())
21782	var body io.Reader = nil
21783	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersrefundrequest)
21784	if err != nil {
21785		return nil, err
21786	}
21787	reqHeaders.Set("Content-Type", "application/json")
21788	c.urlParams_.Set("alt", alt)
21789	c.urlParams_.Set("prettyPrint", "false")
21790	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/refund")
21791	urls += "?" + c.urlParams_.Encode()
21792	req, err := http.NewRequest("POST", urls, body)
21793	if err != nil {
21794		return nil, err
21795	}
21796	req.Header = reqHeaders
21797	googleapi.Expand(req.URL, map[string]string{
21798		"merchantId": strconv.FormatUint(c.merchantId, 10),
21799		"orderId":    c.orderId,
21800	})
21801	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21802}
21803
21804// Do executes the "content.orders.refund" call.
21805// Exactly one of *OrdersRefundResponse or error will be non-nil. Any
21806// non-2xx status code is an error. Response headers are in either
21807// *OrdersRefundResponse.ServerResponse.Header or (if a response was
21808// returned at all) in error.(*googleapi.Error).Header. Use
21809// googleapi.IsNotModified to check whether the returned error was
21810// because http.StatusNotModified was returned.
21811func (c *OrdersRefundCall) Do(opts ...googleapi.CallOption) (*OrdersRefundResponse, error) {
21812	gensupport.SetOptions(c.urlParams_, opts...)
21813	res, err := c.doRequest("json")
21814	if res != nil && res.StatusCode == http.StatusNotModified {
21815		if res.Body != nil {
21816			res.Body.Close()
21817		}
21818		return nil, &googleapi.Error{
21819			Code:   res.StatusCode,
21820			Header: res.Header,
21821		}
21822	}
21823	if err != nil {
21824		return nil, err
21825	}
21826	defer googleapi.CloseBody(res)
21827	if err := googleapi.CheckResponse(res); err != nil {
21828		return nil, err
21829	}
21830	ret := &OrdersRefundResponse{
21831		ServerResponse: googleapi.ServerResponse{
21832			Header:         res.Header,
21833			HTTPStatusCode: res.StatusCode,
21834		},
21835	}
21836	target := &ret
21837	if err := gensupport.DecodeResponse(target, res); err != nil {
21838		return nil, err
21839	}
21840	return ret, nil
21841	// {
21842	//   "description": "Deprecated, please use returnRefundLineItem instead.",
21843	//   "flatPath": "{merchantId}/orders/{orderId}/refund",
21844	//   "httpMethod": "POST",
21845	//   "id": "content.orders.refund",
21846	//   "parameterOrder": [
21847	//     "merchantId",
21848	//     "orderId"
21849	//   ],
21850	//   "parameters": {
21851	//     "merchantId": {
21852	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
21853	//       "format": "uint64",
21854	//       "location": "path",
21855	//       "required": true,
21856	//       "type": "string"
21857	//     },
21858	//     "orderId": {
21859	//       "description": "The ID of the order to refund.",
21860	//       "location": "path",
21861	//       "required": true,
21862	//       "type": "string"
21863	//     }
21864	//   },
21865	//   "path": "{merchantId}/orders/{orderId}/refund",
21866	//   "request": {
21867	//     "$ref": "OrdersRefundRequest"
21868	//   },
21869	//   "response": {
21870	//     "$ref": "OrdersRefundResponse"
21871	//   },
21872	//   "scopes": [
21873	//     "https://www.googleapis.com/auth/content"
21874	//   ]
21875	// }
21876
21877}
21878
21879// method id "content.orders.rejectreturnlineitem":
21880
21881type OrdersRejectreturnlineitemCall struct {
21882	s                                 *APIService
21883	merchantId                        uint64
21884	orderId                           string
21885	ordersrejectreturnlineitemrequest *OrdersRejectReturnLineItemRequest
21886	urlParams_                        gensupport.URLParams
21887	ctx_                              context.Context
21888	header_                           http.Header
21889}
21890
21891// Rejectreturnlineitem: Rejects return on an line item.
21892//
21893// - merchantId: The ID of the account that manages the order. This
21894//   cannot be a multi-client account.
21895// - orderId: The ID of the order.
21896func (r *OrdersService) Rejectreturnlineitem(merchantId uint64, orderId string, ordersrejectreturnlineitemrequest *OrdersRejectReturnLineItemRequest) *OrdersRejectreturnlineitemCall {
21897	c := &OrdersRejectreturnlineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21898	c.merchantId = merchantId
21899	c.orderId = orderId
21900	c.ordersrejectreturnlineitemrequest = ordersrejectreturnlineitemrequest
21901	return c
21902}
21903
21904// Fields allows partial responses to be retrieved. See
21905// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21906// for more information.
21907func (c *OrdersRejectreturnlineitemCall) Fields(s ...googleapi.Field) *OrdersRejectreturnlineitemCall {
21908	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21909	return c
21910}
21911
21912// Context sets the context to be used in this call's Do method. Any
21913// pending HTTP request will be aborted if the provided context is
21914// canceled.
21915func (c *OrdersRejectreturnlineitemCall) Context(ctx context.Context) *OrdersRejectreturnlineitemCall {
21916	c.ctx_ = ctx
21917	return c
21918}
21919
21920// Header returns an http.Header that can be modified by the caller to
21921// add HTTP headers to the request.
21922func (c *OrdersRejectreturnlineitemCall) Header() http.Header {
21923	if c.header_ == nil {
21924		c.header_ = make(http.Header)
21925	}
21926	return c.header_
21927}
21928
21929func (c *OrdersRejectreturnlineitemCall) doRequest(alt string) (*http.Response, error) {
21930	reqHeaders := make(http.Header)
21931	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
21932	for k, v := range c.header_ {
21933		reqHeaders[k] = v
21934	}
21935	reqHeaders.Set("User-Agent", c.s.userAgent())
21936	var body io.Reader = nil
21937	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersrejectreturnlineitemrequest)
21938	if err != nil {
21939		return nil, err
21940	}
21941	reqHeaders.Set("Content-Type", "application/json")
21942	c.urlParams_.Set("alt", alt)
21943	c.urlParams_.Set("prettyPrint", "false")
21944	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/rejectReturnLineItem")
21945	urls += "?" + c.urlParams_.Encode()
21946	req, err := http.NewRequest("POST", urls, body)
21947	if err != nil {
21948		return nil, err
21949	}
21950	req.Header = reqHeaders
21951	googleapi.Expand(req.URL, map[string]string{
21952		"merchantId": strconv.FormatUint(c.merchantId, 10),
21953		"orderId":    c.orderId,
21954	})
21955	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21956}
21957
21958// Do executes the "content.orders.rejectreturnlineitem" call.
21959// Exactly one of *OrdersRejectReturnLineItemResponse or error will be
21960// non-nil. Any non-2xx status code is an error. Response headers are in
21961// either *OrdersRejectReturnLineItemResponse.ServerResponse.Header or
21962// (if a response was returned at all) in
21963// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
21964// whether the returned error was because http.StatusNotModified was
21965// returned.
21966func (c *OrdersRejectreturnlineitemCall) Do(opts ...googleapi.CallOption) (*OrdersRejectReturnLineItemResponse, error) {
21967	gensupport.SetOptions(c.urlParams_, opts...)
21968	res, err := c.doRequest("json")
21969	if res != nil && res.StatusCode == http.StatusNotModified {
21970		if res.Body != nil {
21971			res.Body.Close()
21972		}
21973		return nil, &googleapi.Error{
21974			Code:   res.StatusCode,
21975			Header: res.Header,
21976		}
21977	}
21978	if err != nil {
21979		return nil, err
21980	}
21981	defer googleapi.CloseBody(res)
21982	if err := googleapi.CheckResponse(res); err != nil {
21983		return nil, err
21984	}
21985	ret := &OrdersRejectReturnLineItemResponse{
21986		ServerResponse: googleapi.ServerResponse{
21987			Header:         res.Header,
21988			HTTPStatusCode: res.StatusCode,
21989		},
21990	}
21991	target := &ret
21992	if err := gensupport.DecodeResponse(target, res); err != nil {
21993		return nil, err
21994	}
21995	return ret, nil
21996	// {
21997	//   "description": "Rejects return on an line item.",
21998	//   "flatPath": "{merchantId}/orders/{orderId}/rejectReturnLineItem",
21999	//   "httpMethod": "POST",
22000	//   "id": "content.orders.rejectreturnlineitem",
22001	//   "parameterOrder": [
22002	//     "merchantId",
22003	//     "orderId"
22004	//   ],
22005	//   "parameters": {
22006	//     "merchantId": {
22007	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
22008	//       "format": "uint64",
22009	//       "location": "path",
22010	//       "required": true,
22011	//       "type": "string"
22012	//     },
22013	//     "orderId": {
22014	//       "description": "The ID of the order.",
22015	//       "location": "path",
22016	//       "required": true,
22017	//       "type": "string"
22018	//     }
22019	//   },
22020	//   "path": "{merchantId}/orders/{orderId}/rejectReturnLineItem",
22021	//   "request": {
22022	//     "$ref": "OrdersRejectReturnLineItemRequest"
22023	//   },
22024	//   "response": {
22025	//     "$ref": "OrdersRejectReturnLineItemResponse"
22026	//   },
22027	//   "scopes": [
22028	//     "https://www.googleapis.com/auth/content"
22029	//   ]
22030	// }
22031
22032}
22033
22034// method id "content.orders.returnlineitem":
22035
22036type OrdersReturnlineitemCall struct {
22037	s                           *APIService
22038	merchantId                  uint64
22039	orderId                     string
22040	ordersreturnlineitemrequest *OrdersReturnLineItemRequest
22041	urlParams_                  gensupport.URLParams
22042	ctx_                        context.Context
22043	header_                     http.Header
22044}
22045
22046// Returnlineitem: Returns a line item.
22047//
22048// - merchantId: The ID of the account that manages the order. This
22049//   cannot be a multi-client account.
22050// - orderId: The ID of the order.
22051func (r *OrdersService) Returnlineitem(merchantId uint64, orderId string, ordersreturnlineitemrequest *OrdersReturnLineItemRequest) *OrdersReturnlineitemCall {
22052	c := &OrdersReturnlineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22053	c.merchantId = merchantId
22054	c.orderId = orderId
22055	c.ordersreturnlineitemrequest = ordersreturnlineitemrequest
22056	return c
22057}
22058
22059// Fields allows partial responses to be retrieved. See
22060// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22061// for more information.
22062func (c *OrdersReturnlineitemCall) Fields(s ...googleapi.Field) *OrdersReturnlineitemCall {
22063	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22064	return c
22065}
22066
22067// Context sets the context to be used in this call's Do method. Any
22068// pending HTTP request will be aborted if the provided context is
22069// canceled.
22070func (c *OrdersReturnlineitemCall) Context(ctx context.Context) *OrdersReturnlineitemCall {
22071	c.ctx_ = ctx
22072	return c
22073}
22074
22075// Header returns an http.Header that can be modified by the caller to
22076// add HTTP headers to the request.
22077func (c *OrdersReturnlineitemCall) Header() http.Header {
22078	if c.header_ == nil {
22079		c.header_ = make(http.Header)
22080	}
22081	return c.header_
22082}
22083
22084func (c *OrdersReturnlineitemCall) doRequest(alt string) (*http.Response, error) {
22085	reqHeaders := make(http.Header)
22086	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
22087	for k, v := range c.header_ {
22088		reqHeaders[k] = v
22089	}
22090	reqHeaders.Set("User-Agent", c.s.userAgent())
22091	var body io.Reader = nil
22092	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersreturnlineitemrequest)
22093	if err != nil {
22094		return nil, err
22095	}
22096	reqHeaders.Set("Content-Type", "application/json")
22097	c.urlParams_.Set("alt", alt)
22098	c.urlParams_.Set("prettyPrint", "false")
22099	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/returnLineItem")
22100	urls += "?" + c.urlParams_.Encode()
22101	req, err := http.NewRequest("POST", urls, body)
22102	if err != nil {
22103		return nil, err
22104	}
22105	req.Header = reqHeaders
22106	googleapi.Expand(req.URL, map[string]string{
22107		"merchantId": strconv.FormatUint(c.merchantId, 10),
22108		"orderId":    c.orderId,
22109	})
22110	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22111}
22112
22113// Do executes the "content.orders.returnlineitem" call.
22114// Exactly one of *OrdersReturnLineItemResponse or error will be
22115// non-nil. Any non-2xx status code is an error. Response headers are in
22116// either *OrdersReturnLineItemResponse.ServerResponse.Header or (if a
22117// response was returned at all) in error.(*googleapi.Error).Header. Use
22118// googleapi.IsNotModified to check whether the returned error was
22119// because http.StatusNotModified was returned.
22120func (c *OrdersReturnlineitemCall) Do(opts ...googleapi.CallOption) (*OrdersReturnLineItemResponse, error) {
22121	gensupport.SetOptions(c.urlParams_, opts...)
22122	res, err := c.doRequest("json")
22123	if res != nil && res.StatusCode == http.StatusNotModified {
22124		if res.Body != nil {
22125			res.Body.Close()
22126		}
22127		return nil, &googleapi.Error{
22128			Code:   res.StatusCode,
22129			Header: res.Header,
22130		}
22131	}
22132	if err != nil {
22133		return nil, err
22134	}
22135	defer googleapi.CloseBody(res)
22136	if err := googleapi.CheckResponse(res); err != nil {
22137		return nil, err
22138	}
22139	ret := &OrdersReturnLineItemResponse{
22140		ServerResponse: googleapi.ServerResponse{
22141			Header:         res.Header,
22142			HTTPStatusCode: res.StatusCode,
22143		},
22144	}
22145	target := &ret
22146	if err := gensupport.DecodeResponse(target, res); err != nil {
22147		return nil, err
22148	}
22149	return ret, nil
22150	// {
22151	//   "description": "Returns a line item.",
22152	//   "flatPath": "{merchantId}/orders/{orderId}/returnLineItem",
22153	//   "httpMethod": "POST",
22154	//   "id": "content.orders.returnlineitem",
22155	//   "parameterOrder": [
22156	//     "merchantId",
22157	//     "orderId"
22158	//   ],
22159	//   "parameters": {
22160	//     "merchantId": {
22161	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
22162	//       "format": "uint64",
22163	//       "location": "path",
22164	//       "required": true,
22165	//       "type": "string"
22166	//     },
22167	//     "orderId": {
22168	//       "description": "The ID of the order.",
22169	//       "location": "path",
22170	//       "required": true,
22171	//       "type": "string"
22172	//     }
22173	//   },
22174	//   "path": "{merchantId}/orders/{orderId}/returnLineItem",
22175	//   "request": {
22176	//     "$ref": "OrdersReturnLineItemRequest"
22177	//   },
22178	//   "response": {
22179	//     "$ref": "OrdersReturnLineItemResponse"
22180	//   },
22181	//   "scopes": [
22182	//     "https://www.googleapis.com/auth/content"
22183	//   ]
22184	// }
22185
22186}
22187
22188// method id "content.orders.returnrefundlineitem":
22189
22190type OrdersReturnrefundlineitemCall struct {
22191	s                                 *APIService
22192	merchantId                        uint64
22193	orderId                           string
22194	ordersreturnrefundlineitemrequest *OrdersReturnRefundLineItemRequest
22195	urlParams_                        gensupport.URLParams
22196	ctx_                              context.Context
22197	header_                           http.Header
22198}
22199
22200// Returnrefundlineitem: Returns and refunds a line item. Note that this
22201// method can only be called on fully shipped orders. Please also note
22202// that the Orderreturns API is the preferred way to handle returns
22203// after you receive a return from a customer. You can use
22204// Orderreturns.list or Orderreturns.get to search for the return, and
22205// then use Orderreturns.processreturn to issue the refund. If the
22206// return cannot be found, then we recommend using this API to issue a
22207// refund.
22208//
22209// - merchantId: The ID of the account that manages the order. This
22210//   cannot be a multi-client account.
22211// - orderId: The ID of the order.
22212func (r *OrdersService) Returnrefundlineitem(merchantId uint64, orderId string, ordersreturnrefundlineitemrequest *OrdersReturnRefundLineItemRequest) *OrdersReturnrefundlineitemCall {
22213	c := &OrdersReturnrefundlineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22214	c.merchantId = merchantId
22215	c.orderId = orderId
22216	c.ordersreturnrefundlineitemrequest = ordersreturnrefundlineitemrequest
22217	return c
22218}
22219
22220// Fields allows partial responses to be retrieved. See
22221// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22222// for more information.
22223func (c *OrdersReturnrefundlineitemCall) Fields(s ...googleapi.Field) *OrdersReturnrefundlineitemCall {
22224	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22225	return c
22226}
22227
22228// Context sets the context to be used in this call's Do method. Any
22229// pending HTTP request will be aborted if the provided context is
22230// canceled.
22231func (c *OrdersReturnrefundlineitemCall) Context(ctx context.Context) *OrdersReturnrefundlineitemCall {
22232	c.ctx_ = ctx
22233	return c
22234}
22235
22236// Header returns an http.Header that can be modified by the caller to
22237// add HTTP headers to the request.
22238func (c *OrdersReturnrefundlineitemCall) Header() http.Header {
22239	if c.header_ == nil {
22240		c.header_ = make(http.Header)
22241	}
22242	return c.header_
22243}
22244
22245func (c *OrdersReturnrefundlineitemCall) doRequest(alt string) (*http.Response, error) {
22246	reqHeaders := make(http.Header)
22247	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
22248	for k, v := range c.header_ {
22249		reqHeaders[k] = v
22250	}
22251	reqHeaders.Set("User-Agent", c.s.userAgent())
22252	var body io.Reader = nil
22253	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersreturnrefundlineitemrequest)
22254	if err != nil {
22255		return nil, err
22256	}
22257	reqHeaders.Set("Content-Type", "application/json")
22258	c.urlParams_.Set("alt", alt)
22259	c.urlParams_.Set("prettyPrint", "false")
22260	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/returnRefundLineItem")
22261	urls += "?" + c.urlParams_.Encode()
22262	req, err := http.NewRequest("POST", urls, body)
22263	if err != nil {
22264		return nil, err
22265	}
22266	req.Header = reqHeaders
22267	googleapi.Expand(req.URL, map[string]string{
22268		"merchantId": strconv.FormatUint(c.merchantId, 10),
22269		"orderId":    c.orderId,
22270	})
22271	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22272}
22273
22274// Do executes the "content.orders.returnrefundlineitem" call.
22275// Exactly one of *OrdersReturnRefundLineItemResponse or error will be
22276// non-nil. Any non-2xx status code is an error. Response headers are in
22277// either *OrdersReturnRefundLineItemResponse.ServerResponse.Header or
22278// (if a response was returned at all) in
22279// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
22280// whether the returned error was because http.StatusNotModified was
22281// returned.
22282func (c *OrdersReturnrefundlineitemCall) Do(opts ...googleapi.CallOption) (*OrdersReturnRefundLineItemResponse, error) {
22283	gensupport.SetOptions(c.urlParams_, opts...)
22284	res, err := c.doRequest("json")
22285	if res != nil && res.StatusCode == http.StatusNotModified {
22286		if res.Body != nil {
22287			res.Body.Close()
22288		}
22289		return nil, &googleapi.Error{
22290			Code:   res.StatusCode,
22291			Header: res.Header,
22292		}
22293	}
22294	if err != nil {
22295		return nil, err
22296	}
22297	defer googleapi.CloseBody(res)
22298	if err := googleapi.CheckResponse(res); err != nil {
22299		return nil, err
22300	}
22301	ret := &OrdersReturnRefundLineItemResponse{
22302		ServerResponse: googleapi.ServerResponse{
22303			Header:         res.Header,
22304			HTTPStatusCode: res.StatusCode,
22305		},
22306	}
22307	target := &ret
22308	if err := gensupport.DecodeResponse(target, res); err != nil {
22309		return nil, err
22310	}
22311	return ret, nil
22312	// {
22313	//   "description": "Returns and refunds a line item. Note that this method can only be called on fully shipped orders. Please also note that the Orderreturns API is the preferred way to handle returns after you receive a return from a customer. You can use Orderreturns.list or Orderreturns.get to search for the return, and then use Orderreturns.processreturn to issue the refund. If the return cannot be found, then we recommend using this API to issue a refund.",
22314	//   "flatPath": "{merchantId}/orders/{orderId}/returnRefundLineItem",
22315	//   "httpMethod": "POST",
22316	//   "id": "content.orders.returnrefundlineitem",
22317	//   "parameterOrder": [
22318	//     "merchantId",
22319	//     "orderId"
22320	//   ],
22321	//   "parameters": {
22322	//     "merchantId": {
22323	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
22324	//       "format": "uint64",
22325	//       "location": "path",
22326	//       "required": true,
22327	//       "type": "string"
22328	//     },
22329	//     "orderId": {
22330	//       "description": "The ID of the order.",
22331	//       "location": "path",
22332	//       "required": true,
22333	//       "type": "string"
22334	//     }
22335	//   },
22336	//   "path": "{merchantId}/orders/{orderId}/returnRefundLineItem",
22337	//   "request": {
22338	//     "$ref": "OrdersReturnRefundLineItemRequest"
22339	//   },
22340	//   "response": {
22341	//     "$ref": "OrdersReturnRefundLineItemResponse"
22342	//   },
22343	//   "scopes": [
22344	//     "https://www.googleapis.com/auth/content"
22345	//   ]
22346	// }
22347
22348}
22349
22350// method id "content.orders.setlineitemmetadata":
22351
22352type OrdersSetlineitemmetadataCall struct {
22353	s                                *APIService
22354	merchantId                       uint64
22355	orderId                          string
22356	orderssetlineitemmetadatarequest *OrdersSetLineItemMetadataRequest
22357	urlParams_                       gensupport.URLParams
22358	ctx_                             context.Context
22359	header_                          http.Header
22360}
22361
22362// Setlineitemmetadata: Sets (or overrides if it already exists)
22363// merchant provided annotations in the form of key-value pairs. A
22364// common use case would be to supply us with additional structured
22365// information about a line item that cannot be provided via other
22366// methods. Submitted key-value pairs can be retrieved as part of the
22367// orders resource.
22368//
22369// - merchantId: The ID of the account that manages the order. This
22370//   cannot be a multi-client account.
22371// - orderId: The ID of the order.
22372func (r *OrdersService) Setlineitemmetadata(merchantId uint64, orderId string, orderssetlineitemmetadatarequest *OrdersSetLineItemMetadataRequest) *OrdersSetlineitemmetadataCall {
22373	c := &OrdersSetlineitemmetadataCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22374	c.merchantId = merchantId
22375	c.orderId = orderId
22376	c.orderssetlineitemmetadatarequest = orderssetlineitemmetadatarequest
22377	return c
22378}
22379
22380// Fields allows partial responses to be retrieved. See
22381// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22382// for more information.
22383func (c *OrdersSetlineitemmetadataCall) Fields(s ...googleapi.Field) *OrdersSetlineitemmetadataCall {
22384	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22385	return c
22386}
22387
22388// Context sets the context to be used in this call's Do method. Any
22389// pending HTTP request will be aborted if the provided context is
22390// canceled.
22391func (c *OrdersSetlineitemmetadataCall) Context(ctx context.Context) *OrdersSetlineitemmetadataCall {
22392	c.ctx_ = ctx
22393	return c
22394}
22395
22396// Header returns an http.Header that can be modified by the caller to
22397// add HTTP headers to the request.
22398func (c *OrdersSetlineitemmetadataCall) Header() http.Header {
22399	if c.header_ == nil {
22400		c.header_ = make(http.Header)
22401	}
22402	return c.header_
22403}
22404
22405func (c *OrdersSetlineitemmetadataCall) doRequest(alt string) (*http.Response, error) {
22406	reqHeaders := make(http.Header)
22407	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
22408	for k, v := range c.header_ {
22409		reqHeaders[k] = v
22410	}
22411	reqHeaders.Set("User-Agent", c.s.userAgent())
22412	var body io.Reader = nil
22413	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderssetlineitemmetadatarequest)
22414	if err != nil {
22415		return nil, err
22416	}
22417	reqHeaders.Set("Content-Type", "application/json")
22418	c.urlParams_.Set("alt", alt)
22419	c.urlParams_.Set("prettyPrint", "false")
22420	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/setLineItemMetadata")
22421	urls += "?" + c.urlParams_.Encode()
22422	req, err := http.NewRequest("POST", urls, body)
22423	if err != nil {
22424		return nil, err
22425	}
22426	req.Header = reqHeaders
22427	googleapi.Expand(req.URL, map[string]string{
22428		"merchantId": strconv.FormatUint(c.merchantId, 10),
22429		"orderId":    c.orderId,
22430	})
22431	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22432}
22433
22434// Do executes the "content.orders.setlineitemmetadata" call.
22435// Exactly one of *OrdersSetLineItemMetadataResponse or error will be
22436// non-nil. Any non-2xx status code is an error. Response headers are in
22437// either *OrdersSetLineItemMetadataResponse.ServerResponse.Header or
22438// (if a response was returned at all) in
22439// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
22440// whether the returned error was because http.StatusNotModified was
22441// returned.
22442func (c *OrdersSetlineitemmetadataCall) Do(opts ...googleapi.CallOption) (*OrdersSetLineItemMetadataResponse, error) {
22443	gensupport.SetOptions(c.urlParams_, opts...)
22444	res, err := c.doRequest("json")
22445	if res != nil && res.StatusCode == http.StatusNotModified {
22446		if res.Body != nil {
22447			res.Body.Close()
22448		}
22449		return nil, &googleapi.Error{
22450			Code:   res.StatusCode,
22451			Header: res.Header,
22452		}
22453	}
22454	if err != nil {
22455		return nil, err
22456	}
22457	defer googleapi.CloseBody(res)
22458	if err := googleapi.CheckResponse(res); err != nil {
22459		return nil, err
22460	}
22461	ret := &OrdersSetLineItemMetadataResponse{
22462		ServerResponse: googleapi.ServerResponse{
22463			Header:         res.Header,
22464			HTTPStatusCode: res.StatusCode,
22465		},
22466	}
22467	target := &ret
22468	if err := gensupport.DecodeResponse(target, res); err != nil {
22469		return nil, err
22470	}
22471	return ret, nil
22472	// {
22473	//   "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.",
22474	//   "flatPath": "{merchantId}/orders/{orderId}/setLineItemMetadata",
22475	//   "httpMethod": "POST",
22476	//   "id": "content.orders.setlineitemmetadata",
22477	//   "parameterOrder": [
22478	//     "merchantId",
22479	//     "orderId"
22480	//   ],
22481	//   "parameters": {
22482	//     "merchantId": {
22483	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
22484	//       "format": "uint64",
22485	//       "location": "path",
22486	//       "required": true,
22487	//       "type": "string"
22488	//     },
22489	//     "orderId": {
22490	//       "description": "The ID of the order.",
22491	//       "location": "path",
22492	//       "required": true,
22493	//       "type": "string"
22494	//     }
22495	//   },
22496	//   "path": "{merchantId}/orders/{orderId}/setLineItemMetadata",
22497	//   "request": {
22498	//     "$ref": "OrdersSetLineItemMetadataRequest"
22499	//   },
22500	//   "response": {
22501	//     "$ref": "OrdersSetLineItemMetadataResponse"
22502	//   },
22503	//   "scopes": [
22504	//     "https://www.googleapis.com/auth/content"
22505	//   ]
22506	// }
22507
22508}
22509
22510// method id "content.orders.shiplineitems":
22511
22512type OrdersShiplineitemsCall struct {
22513	s                          *APIService
22514	merchantId                 uint64
22515	orderId                    string
22516	ordersshiplineitemsrequest *OrdersShipLineItemsRequest
22517	urlParams_                 gensupport.URLParams
22518	ctx_                       context.Context
22519	header_                    http.Header
22520}
22521
22522// Shiplineitems: Marks line item(s) as shipped.
22523//
22524// - merchantId: The ID of the account that manages the order. This
22525//   cannot be a multi-client account.
22526// - orderId: The ID of the order.
22527func (r *OrdersService) Shiplineitems(merchantId uint64, orderId string, ordersshiplineitemsrequest *OrdersShipLineItemsRequest) *OrdersShiplineitemsCall {
22528	c := &OrdersShiplineitemsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22529	c.merchantId = merchantId
22530	c.orderId = orderId
22531	c.ordersshiplineitemsrequest = ordersshiplineitemsrequest
22532	return c
22533}
22534
22535// Fields allows partial responses to be retrieved. See
22536// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22537// for more information.
22538func (c *OrdersShiplineitemsCall) Fields(s ...googleapi.Field) *OrdersShiplineitemsCall {
22539	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22540	return c
22541}
22542
22543// Context sets the context to be used in this call's Do method. Any
22544// pending HTTP request will be aborted if the provided context is
22545// canceled.
22546func (c *OrdersShiplineitemsCall) Context(ctx context.Context) *OrdersShiplineitemsCall {
22547	c.ctx_ = ctx
22548	return c
22549}
22550
22551// Header returns an http.Header that can be modified by the caller to
22552// add HTTP headers to the request.
22553func (c *OrdersShiplineitemsCall) Header() http.Header {
22554	if c.header_ == nil {
22555		c.header_ = make(http.Header)
22556	}
22557	return c.header_
22558}
22559
22560func (c *OrdersShiplineitemsCall) doRequest(alt string) (*http.Response, error) {
22561	reqHeaders := make(http.Header)
22562	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
22563	for k, v := range c.header_ {
22564		reqHeaders[k] = v
22565	}
22566	reqHeaders.Set("User-Agent", c.s.userAgent())
22567	var body io.Reader = nil
22568	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersshiplineitemsrequest)
22569	if err != nil {
22570		return nil, err
22571	}
22572	reqHeaders.Set("Content-Type", "application/json")
22573	c.urlParams_.Set("alt", alt)
22574	c.urlParams_.Set("prettyPrint", "false")
22575	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/shipLineItems")
22576	urls += "?" + c.urlParams_.Encode()
22577	req, err := http.NewRequest("POST", urls, body)
22578	if err != nil {
22579		return nil, err
22580	}
22581	req.Header = reqHeaders
22582	googleapi.Expand(req.URL, map[string]string{
22583		"merchantId": strconv.FormatUint(c.merchantId, 10),
22584		"orderId":    c.orderId,
22585	})
22586	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22587}
22588
22589// Do executes the "content.orders.shiplineitems" call.
22590// Exactly one of *OrdersShipLineItemsResponse or error will be non-nil.
22591// Any non-2xx status code is an error. Response headers are in either
22592// *OrdersShipLineItemsResponse.ServerResponse.Header or (if a response
22593// was returned at all) in error.(*googleapi.Error).Header. Use
22594// googleapi.IsNotModified to check whether the returned error was
22595// because http.StatusNotModified was returned.
22596func (c *OrdersShiplineitemsCall) Do(opts ...googleapi.CallOption) (*OrdersShipLineItemsResponse, error) {
22597	gensupport.SetOptions(c.urlParams_, opts...)
22598	res, err := c.doRequest("json")
22599	if res != nil && res.StatusCode == http.StatusNotModified {
22600		if res.Body != nil {
22601			res.Body.Close()
22602		}
22603		return nil, &googleapi.Error{
22604			Code:   res.StatusCode,
22605			Header: res.Header,
22606		}
22607	}
22608	if err != nil {
22609		return nil, err
22610	}
22611	defer googleapi.CloseBody(res)
22612	if err := googleapi.CheckResponse(res); err != nil {
22613		return nil, err
22614	}
22615	ret := &OrdersShipLineItemsResponse{
22616		ServerResponse: googleapi.ServerResponse{
22617			Header:         res.Header,
22618			HTTPStatusCode: res.StatusCode,
22619		},
22620	}
22621	target := &ret
22622	if err := gensupport.DecodeResponse(target, res); err != nil {
22623		return nil, err
22624	}
22625	return ret, nil
22626	// {
22627	//   "description": "Marks line item(s) as shipped.",
22628	//   "flatPath": "{merchantId}/orders/{orderId}/shipLineItems",
22629	//   "httpMethod": "POST",
22630	//   "id": "content.orders.shiplineitems",
22631	//   "parameterOrder": [
22632	//     "merchantId",
22633	//     "orderId"
22634	//   ],
22635	//   "parameters": {
22636	//     "merchantId": {
22637	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
22638	//       "format": "uint64",
22639	//       "location": "path",
22640	//       "required": true,
22641	//       "type": "string"
22642	//     },
22643	//     "orderId": {
22644	//       "description": "The ID of the order.",
22645	//       "location": "path",
22646	//       "required": true,
22647	//       "type": "string"
22648	//     }
22649	//   },
22650	//   "path": "{merchantId}/orders/{orderId}/shipLineItems",
22651	//   "request": {
22652	//     "$ref": "OrdersShipLineItemsRequest"
22653	//   },
22654	//   "response": {
22655	//     "$ref": "OrdersShipLineItemsResponse"
22656	//   },
22657	//   "scopes": [
22658	//     "https://www.googleapis.com/auth/content"
22659	//   ]
22660	// }
22661
22662}
22663
22664// method id "content.orders.updatelineitemshippingdetails":
22665
22666type OrdersUpdatelineitemshippingdetailsCall struct {
22667	s                                          *APIService
22668	merchantId                                 uint64
22669	orderId                                    string
22670	ordersupdatelineitemshippingdetailsrequest *OrdersUpdateLineItemShippingDetailsRequest
22671	urlParams_                                 gensupport.URLParams
22672	ctx_                                       context.Context
22673	header_                                    http.Header
22674}
22675
22676// Updatelineitemshippingdetails: Updates ship by and delivery by dates
22677// for a line item.
22678//
22679// - merchantId: The ID of the account that manages the order. This
22680//   cannot be a multi-client account.
22681// - orderId: The ID of the order.
22682func (r *OrdersService) Updatelineitemshippingdetails(merchantId uint64, orderId string, ordersupdatelineitemshippingdetailsrequest *OrdersUpdateLineItemShippingDetailsRequest) *OrdersUpdatelineitemshippingdetailsCall {
22683	c := &OrdersUpdatelineitemshippingdetailsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22684	c.merchantId = merchantId
22685	c.orderId = orderId
22686	c.ordersupdatelineitemshippingdetailsrequest = ordersupdatelineitemshippingdetailsrequest
22687	return c
22688}
22689
22690// Fields allows partial responses to be retrieved. See
22691// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22692// for more information.
22693func (c *OrdersUpdatelineitemshippingdetailsCall) Fields(s ...googleapi.Field) *OrdersUpdatelineitemshippingdetailsCall {
22694	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22695	return c
22696}
22697
22698// Context sets the context to be used in this call's Do method. Any
22699// pending HTTP request will be aborted if the provided context is
22700// canceled.
22701func (c *OrdersUpdatelineitemshippingdetailsCall) Context(ctx context.Context) *OrdersUpdatelineitemshippingdetailsCall {
22702	c.ctx_ = ctx
22703	return c
22704}
22705
22706// Header returns an http.Header that can be modified by the caller to
22707// add HTTP headers to the request.
22708func (c *OrdersUpdatelineitemshippingdetailsCall) Header() http.Header {
22709	if c.header_ == nil {
22710		c.header_ = make(http.Header)
22711	}
22712	return c.header_
22713}
22714
22715func (c *OrdersUpdatelineitemshippingdetailsCall) doRequest(alt string) (*http.Response, error) {
22716	reqHeaders := make(http.Header)
22717	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
22718	for k, v := range c.header_ {
22719		reqHeaders[k] = v
22720	}
22721	reqHeaders.Set("User-Agent", c.s.userAgent())
22722	var body io.Reader = nil
22723	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersupdatelineitemshippingdetailsrequest)
22724	if err != nil {
22725		return nil, err
22726	}
22727	reqHeaders.Set("Content-Type", "application/json")
22728	c.urlParams_.Set("alt", alt)
22729	c.urlParams_.Set("prettyPrint", "false")
22730	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/updateLineItemShippingDetails")
22731	urls += "?" + c.urlParams_.Encode()
22732	req, err := http.NewRequest("POST", urls, body)
22733	if err != nil {
22734		return nil, err
22735	}
22736	req.Header = reqHeaders
22737	googleapi.Expand(req.URL, map[string]string{
22738		"merchantId": strconv.FormatUint(c.merchantId, 10),
22739		"orderId":    c.orderId,
22740	})
22741	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22742}
22743
22744// Do executes the "content.orders.updatelineitemshippingdetails" call.
22745// Exactly one of *OrdersUpdateLineItemShippingDetailsResponse or error
22746// will be non-nil. Any non-2xx status code is an error. Response
22747// headers are in either
22748// *OrdersUpdateLineItemShippingDetailsResponse.ServerResponse.Header or
22749// (if a response was returned at all) in
22750// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
22751// whether the returned error was because http.StatusNotModified was
22752// returned.
22753func (c *OrdersUpdatelineitemshippingdetailsCall) Do(opts ...googleapi.CallOption) (*OrdersUpdateLineItemShippingDetailsResponse, error) {
22754	gensupport.SetOptions(c.urlParams_, opts...)
22755	res, err := c.doRequest("json")
22756	if res != nil && res.StatusCode == http.StatusNotModified {
22757		if res.Body != nil {
22758			res.Body.Close()
22759		}
22760		return nil, &googleapi.Error{
22761			Code:   res.StatusCode,
22762			Header: res.Header,
22763		}
22764	}
22765	if err != nil {
22766		return nil, err
22767	}
22768	defer googleapi.CloseBody(res)
22769	if err := googleapi.CheckResponse(res); err != nil {
22770		return nil, err
22771	}
22772	ret := &OrdersUpdateLineItemShippingDetailsResponse{
22773		ServerResponse: googleapi.ServerResponse{
22774			Header:         res.Header,
22775			HTTPStatusCode: res.StatusCode,
22776		},
22777	}
22778	target := &ret
22779	if err := gensupport.DecodeResponse(target, res); err != nil {
22780		return nil, err
22781	}
22782	return ret, nil
22783	// {
22784	//   "description": "Updates ship by and delivery by dates for a line item.",
22785	//   "flatPath": "{merchantId}/orders/{orderId}/updateLineItemShippingDetails",
22786	//   "httpMethod": "POST",
22787	//   "id": "content.orders.updatelineitemshippingdetails",
22788	//   "parameterOrder": [
22789	//     "merchantId",
22790	//     "orderId"
22791	//   ],
22792	//   "parameters": {
22793	//     "merchantId": {
22794	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
22795	//       "format": "uint64",
22796	//       "location": "path",
22797	//       "required": true,
22798	//       "type": "string"
22799	//     },
22800	//     "orderId": {
22801	//       "description": "The ID of the order.",
22802	//       "location": "path",
22803	//       "required": true,
22804	//       "type": "string"
22805	//     }
22806	//   },
22807	//   "path": "{merchantId}/orders/{orderId}/updateLineItemShippingDetails",
22808	//   "request": {
22809	//     "$ref": "OrdersUpdateLineItemShippingDetailsRequest"
22810	//   },
22811	//   "response": {
22812	//     "$ref": "OrdersUpdateLineItemShippingDetailsResponse"
22813	//   },
22814	//   "scopes": [
22815	//     "https://www.googleapis.com/auth/content"
22816	//   ]
22817	// }
22818
22819}
22820
22821// method id "content.orders.updatemerchantorderid":
22822
22823type OrdersUpdatemerchantorderidCall struct {
22824	s                                  *APIService
22825	merchantId                         uint64
22826	orderId                            string
22827	ordersupdatemerchantorderidrequest *OrdersUpdateMerchantOrderIdRequest
22828	urlParams_                         gensupport.URLParams
22829	ctx_                               context.Context
22830	header_                            http.Header
22831}
22832
22833// Updatemerchantorderid: Updates the merchant order ID for a given
22834// order.
22835//
22836// - merchantId: The ID of the account that manages the order. This
22837//   cannot be a multi-client account.
22838// - orderId: The ID of the order.
22839func (r *OrdersService) Updatemerchantorderid(merchantId uint64, orderId string, ordersupdatemerchantorderidrequest *OrdersUpdateMerchantOrderIdRequest) *OrdersUpdatemerchantorderidCall {
22840	c := &OrdersUpdatemerchantorderidCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22841	c.merchantId = merchantId
22842	c.orderId = orderId
22843	c.ordersupdatemerchantorderidrequest = ordersupdatemerchantorderidrequest
22844	return c
22845}
22846
22847// Fields allows partial responses to be retrieved. See
22848// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22849// for more information.
22850func (c *OrdersUpdatemerchantorderidCall) Fields(s ...googleapi.Field) *OrdersUpdatemerchantorderidCall {
22851	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22852	return c
22853}
22854
22855// Context sets the context to be used in this call's Do method. Any
22856// pending HTTP request will be aborted if the provided context is
22857// canceled.
22858func (c *OrdersUpdatemerchantorderidCall) Context(ctx context.Context) *OrdersUpdatemerchantorderidCall {
22859	c.ctx_ = ctx
22860	return c
22861}
22862
22863// Header returns an http.Header that can be modified by the caller to
22864// add HTTP headers to the request.
22865func (c *OrdersUpdatemerchantorderidCall) Header() http.Header {
22866	if c.header_ == nil {
22867		c.header_ = make(http.Header)
22868	}
22869	return c.header_
22870}
22871
22872func (c *OrdersUpdatemerchantorderidCall) doRequest(alt string) (*http.Response, error) {
22873	reqHeaders := make(http.Header)
22874	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
22875	for k, v := range c.header_ {
22876		reqHeaders[k] = v
22877	}
22878	reqHeaders.Set("User-Agent", c.s.userAgent())
22879	var body io.Reader = nil
22880	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersupdatemerchantorderidrequest)
22881	if err != nil {
22882		return nil, err
22883	}
22884	reqHeaders.Set("Content-Type", "application/json")
22885	c.urlParams_.Set("alt", alt)
22886	c.urlParams_.Set("prettyPrint", "false")
22887	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/updateMerchantOrderId")
22888	urls += "?" + c.urlParams_.Encode()
22889	req, err := http.NewRequest("POST", urls, body)
22890	if err != nil {
22891		return nil, err
22892	}
22893	req.Header = reqHeaders
22894	googleapi.Expand(req.URL, map[string]string{
22895		"merchantId": strconv.FormatUint(c.merchantId, 10),
22896		"orderId":    c.orderId,
22897	})
22898	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22899}
22900
22901// Do executes the "content.orders.updatemerchantorderid" call.
22902// Exactly one of *OrdersUpdateMerchantOrderIdResponse or error will be
22903// non-nil. Any non-2xx status code is an error. Response headers are in
22904// either *OrdersUpdateMerchantOrderIdResponse.ServerResponse.Header or
22905// (if a response was returned at all) in
22906// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
22907// whether the returned error was because http.StatusNotModified was
22908// returned.
22909func (c *OrdersUpdatemerchantorderidCall) Do(opts ...googleapi.CallOption) (*OrdersUpdateMerchantOrderIdResponse, error) {
22910	gensupport.SetOptions(c.urlParams_, opts...)
22911	res, err := c.doRequest("json")
22912	if res != nil && res.StatusCode == http.StatusNotModified {
22913		if res.Body != nil {
22914			res.Body.Close()
22915		}
22916		return nil, &googleapi.Error{
22917			Code:   res.StatusCode,
22918			Header: res.Header,
22919		}
22920	}
22921	if err != nil {
22922		return nil, err
22923	}
22924	defer googleapi.CloseBody(res)
22925	if err := googleapi.CheckResponse(res); err != nil {
22926		return nil, err
22927	}
22928	ret := &OrdersUpdateMerchantOrderIdResponse{
22929		ServerResponse: googleapi.ServerResponse{
22930			Header:         res.Header,
22931			HTTPStatusCode: res.StatusCode,
22932		},
22933	}
22934	target := &ret
22935	if err := gensupport.DecodeResponse(target, res); err != nil {
22936		return nil, err
22937	}
22938	return ret, nil
22939	// {
22940	//   "description": "Updates the merchant order ID for a given order.",
22941	//   "flatPath": "{merchantId}/orders/{orderId}/updateMerchantOrderId",
22942	//   "httpMethod": "POST",
22943	//   "id": "content.orders.updatemerchantorderid",
22944	//   "parameterOrder": [
22945	//     "merchantId",
22946	//     "orderId"
22947	//   ],
22948	//   "parameters": {
22949	//     "merchantId": {
22950	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
22951	//       "format": "uint64",
22952	//       "location": "path",
22953	//       "required": true,
22954	//       "type": "string"
22955	//     },
22956	//     "orderId": {
22957	//       "description": "The ID of the order.",
22958	//       "location": "path",
22959	//       "required": true,
22960	//       "type": "string"
22961	//     }
22962	//   },
22963	//   "path": "{merchantId}/orders/{orderId}/updateMerchantOrderId",
22964	//   "request": {
22965	//     "$ref": "OrdersUpdateMerchantOrderIdRequest"
22966	//   },
22967	//   "response": {
22968	//     "$ref": "OrdersUpdateMerchantOrderIdResponse"
22969	//   },
22970	//   "scopes": [
22971	//     "https://www.googleapis.com/auth/content"
22972	//   ]
22973	// }
22974
22975}
22976
22977// method id "content.orders.updateshipment":
22978
22979type OrdersUpdateshipmentCall struct {
22980	s                           *APIService
22981	merchantId                  uint64
22982	orderId                     string
22983	ordersupdateshipmentrequest *OrdersUpdateShipmentRequest
22984	urlParams_                  gensupport.URLParams
22985	ctx_                        context.Context
22986	header_                     http.Header
22987}
22988
22989// Updateshipment: Updates a shipment's status, carrier, and/or tracking
22990// ID.
22991//
22992// - merchantId: The ID of the account that manages the order. This
22993//   cannot be a multi-client account.
22994// - orderId: The ID of the order.
22995func (r *OrdersService) Updateshipment(merchantId uint64, orderId string, ordersupdateshipmentrequest *OrdersUpdateShipmentRequest) *OrdersUpdateshipmentCall {
22996	c := &OrdersUpdateshipmentCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22997	c.merchantId = merchantId
22998	c.orderId = orderId
22999	c.ordersupdateshipmentrequest = ordersupdateshipmentrequest
23000	return c
23001}
23002
23003// Fields allows partial responses to be retrieved. See
23004// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23005// for more information.
23006func (c *OrdersUpdateshipmentCall) Fields(s ...googleapi.Field) *OrdersUpdateshipmentCall {
23007	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23008	return c
23009}
23010
23011// Context sets the context to be used in this call's Do method. Any
23012// pending HTTP request will be aborted if the provided context is
23013// canceled.
23014func (c *OrdersUpdateshipmentCall) Context(ctx context.Context) *OrdersUpdateshipmentCall {
23015	c.ctx_ = ctx
23016	return c
23017}
23018
23019// Header returns an http.Header that can be modified by the caller to
23020// add HTTP headers to the request.
23021func (c *OrdersUpdateshipmentCall) Header() http.Header {
23022	if c.header_ == nil {
23023		c.header_ = make(http.Header)
23024	}
23025	return c.header_
23026}
23027
23028func (c *OrdersUpdateshipmentCall) doRequest(alt string) (*http.Response, error) {
23029	reqHeaders := make(http.Header)
23030	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
23031	for k, v := range c.header_ {
23032		reqHeaders[k] = v
23033	}
23034	reqHeaders.Set("User-Agent", c.s.userAgent())
23035	var body io.Reader = nil
23036	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersupdateshipmentrequest)
23037	if err != nil {
23038		return nil, err
23039	}
23040	reqHeaders.Set("Content-Type", "application/json")
23041	c.urlParams_.Set("alt", alt)
23042	c.urlParams_.Set("prettyPrint", "false")
23043	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/updateShipment")
23044	urls += "?" + c.urlParams_.Encode()
23045	req, err := http.NewRequest("POST", urls, body)
23046	if err != nil {
23047		return nil, err
23048	}
23049	req.Header = reqHeaders
23050	googleapi.Expand(req.URL, map[string]string{
23051		"merchantId": strconv.FormatUint(c.merchantId, 10),
23052		"orderId":    c.orderId,
23053	})
23054	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23055}
23056
23057// Do executes the "content.orders.updateshipment" call.
23058// Exactly one of *OrdersUpdateShipmentResponse or error will be
23059// non-nil. Any non-2xx status code is an error. Response headers are in
23060// either *OrdersUpdateShipmentResponse.ServerResponse.Header or (if a
23061// response was returned at all) in error.(*googleapi.Error).Header. Use
23062// googleapi.IsNotModified to check whether the returned error was
23063// because http.StatusNotModified was returned.
23064func (c *OrdersUpdateshipmentCall) Do(opts ...googleapi.CallOption) (*OrdersUpdateShipmentResponse, error) {
23065	gensupport.SetOptions(c.urlParams_, opts...)
23066	res, err := c.doRequest("json")
23067	if res != nil && res.StatusCode == http.StatusNotModified {
23068		if res.Body != nil {
23069			res.Body.Close()
23070		}
23071		return nil, &googleapi.Error{
23072			Code:   res.StatusCode,
23073			Header: res.Header,
23074		}
23075	}
23076	if err != nil {
23077		return nil, err
23078	}
23079	defer googleapi.CloseBody(res)
23080	if err := googleapi.CheckResponse(res); err != nil {
23081		return nil, err
23082	}
23083	ret := &OrdersUpdateShipmentResponse{
23084		ServerResponse: googleapi.ServerResponse{
23085			Header:         res.Header,
23086			HTTPStatusCode: res.StatusCode,
23087		},
23088	}
23089	target := &ret
23090	if err := gensupport.DecodeResponse(target, res); err != nil {
23091		return nil, err
23092	}
23093	return ret, nil
23094	// {
23095	//   "description": "Updates a shipment's status, carrier, and/or tracking ID.",
23096	//   "flatPath": "{merchantId}/orders/{orderId}/updateShipment",
23097	//   "httpMethod": "POST",
23098	//   "id": "content.orders.updateshipment",
23099	//   "parameterOrder": [
23100	//     "merchantId",
23101	//     "orderId"
23102	//   ],
23103	//   "parameters": {
23104	//     "merchantId": {
23105	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
23106	//       "format": "uint64",
23107	//       "location": "path",
23108	//       "required": true,
23109	//       "type": "string"
23110	//     },
23111	//     "orderId": {
23112	//       "description": "The ID of the order.",
23113	//       "location": "path",
23114	//       "required": true,
23115	//       "type": "string"
23116	//     }
23117	//   },
23118	//   "path": "{merchantId}/orders/{orderId}/updateShipment",
23119	//   "request": {
23120	//     "$ref": "OrdersUpdateShipmentRequest"
23121	//   },
23122	//   "response": {
23123	//     "$ref": "OrdersUpdateShipmentResponse"
23124	//   },
23125	//   "scopes": [
23126	//     "https://www.googleapis.com/auth/content"
23127	//   ]
23128	// }
23129
23130}
23131
23132// method id "content.pos.custombatch":
23133
23134type PosCustombatchCall struct {
23135	s                     *APIService
23136	poscustombatchrequest *PosCustomBatchRequest
23137	urlParams_            gensupport.URLParams
23138	ctx_                  context.Context
23139	header_               http.Header
23140}
23141
23142// Custombatch: Batches multiple POS-related calls in a single request.
23143func (r *PosService) Custombatch(poscustombatchrequest *PosCustomBatchRequest) *PosCustombatchCall {
23144	c := &PosCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23145	c.poscustombatchrequest = poscustombatchrequest
23146	return c
23147}
23148
23149// DryRun sets the optional parameter "dryRun": Flag to simulate a
23150// request like in a live environment. If set to true, dry-run mode
23151// checks the validity of the request and returns errors (if any).
23152func (c *PosCustombatchCall) DryRun(dryRun bool) *PosCustombatchCall {
23153	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
23154	return c
23155}
23156
23157// Fields allows partial responses to be retrieved. See
23158// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23159// for more information.
23160func (c *PosCustombatchCall) Fields(s ...googleapi.Field) *PosCustombatchCall {
23161	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23162	return c
23163}
23164
23165// Context sets the context to be used in this call's Do method. Any
23166// pending HTTP request will be aborted if the provided context is
23167// canceled.
23168func (c *PosCustombatchCall) Context(ctx context.Context) *PosCustombatchCall {
23169	c.ctx_ = ctx
23170	return c
23171}
23172
23173// Header returns an http.Header that can be modified by the caller to
23174// add HTTP headers to the request.
23175func (c *PosCustombatchCall) Header() http.Header {
23176	if c.header_ == nil {
23177		c.header_ = make(http.Header)
23178	}
23179	return c.header_
23180}
23181
23182func (c *PosCustombatchCall) doRequest(alt string) (*http.Response, error) {
23183	reqHeaders := make(http.Header)
23184	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
23185	for k, v := range c.header_ {
23186		reqHeaders[k] = v
23187	}
23188	reqHeaders.Set("User-Agent", c.s.userAgent())
23189	var body io.Reader = nil
23190	body, err := googleapi.WithoutDataWrapper.JSONReader(c.poscustombatchrequest)
23191	if err != nil {
23192		return nil, err
23193	}
23194	reqHeaders.Set("Content-Type", "application/json")
23195	c.urlParams_.Set("alt", alt)
23196	c.urlParams_.Set("prettyPrint", "false")
23197	urls := googleapi.ResolveRelative(c.s.BasePath, "pos/batch")
23198	urls += "?" + c.urlParams_.Encode()
23199	req, err := http.NewRequest("POST", urls, body)
23200	if err != nil {
23201		return nil, err
23202	}
23203	req.Header = reqHeaders
23204	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23205}
23206
23207// Do executes the "content.pos.custombatch" call.
23208// Exactly one of *PosCustomBatchResponse or error will be non-nil. Any
23209// non-2xx status code is an error. Response headers are in either
23210// *PosCustomBatchResponse.ServerResponse.Header or (if a response was
23211// returned at all) in error.(*googleapi.Error).Header. Use
23212// googleapi.IsNotModified to check whether the returned error was
23213// because http.StatusNotModified was returned.
23214func (c *PosCustombatchCall) Do(opts ...googleapi.CallOption) (*PosCustomBatchResponse, error) {
23215	gensupport.SetOptions(c.urlParams_, opts...)
23216	res, err := c.doRequest("json")
23217	if res != nil && res.StatusCode == http.StatusNotModified {
23218		if res.Body != nil {
23219			res.Body.Close()
23220		}
23221		return nil, &googleapi.Error{
23222			Code:   res.StatusCode,
23223			Header: res.Header,
23224		}
23225	}
23226	if err != nil {
23227		return nil, err
23228	}
23229	defer googleapi.CloseBody(res)
23230	if err := googleapi.CheckResponse(res); err != nil {
23231		return nil, err
23232	}
23233	ret := &PosCustomBatchResponse{
23234		ServerResponse: googleapi.ServerResponse{
23235			Header:         res.Header,
23236			HTTPStatusCode: res.StatusCode,
23237		},
23238	}
23239	target := &ret
23240	if err := gensupport.DecodeResponse(target, res); err != nil {
23241		return nil, err
23242	}
23243	return ret, nil
23244	// {
23245	//   "description": "Batches multiple POS-related calls in a single request.",
23246	//   "flatPath": "pos/batch",
23247	//   "httpMethod": "POST",
23248	//   "id": "content.pos.custombatch",
23249	//   "parameterOrder": [],
23250	//   "parameters": {
23251	//     "dryRun": {
23252	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
23253	//       "location": "query",
23254	//       "type": "boolean"
23255	//     }
23256	//   },
23257	//   "path": "pos/batch",
23258	//   "request": {
23259	//     "$ref": "PosCustomBatchRequest"
23260	//   },
23261	//   "response": {
23262	//     "$ref": "PosCustomBatchResponse"
23263	//   },
23264	//   "scopes": [
23265	//     "https://www.googleapis.com/auth/content"
23266	//   ]
23267	// }
23268
23269}
23270
23271// method id "content.pos.delete":
23272
23273type PosDeleteCall struct {
23274	s                *APIService
23275	merchantId       uint64
23276	targetMerchantId uint64
23277	storeCode        string
23278	urlParams_       gensupport.URLParams
23279	ctx_             context.Context
23280	header_          http.Header
23281}
23282
23283// Delete: Deletes a store for the given merchant.
23284//
23285// - merchantId: The ID of the POS or inventory data provider.
23286// - storeCode: A store code that is unique per merchant.
23287// - targetMerchantId: The ID of the target merchant.
23288func (r *PosService) Delete(merchantId uint64, targetMerchantId uint64, storeCode string) *PosDeleteCall {
23289	c := &PosDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23290	c.merchantId = merchantId
23291	c.targetMerchantId = targetMerchantId
23292	c.storeCode = storeCode
23293	return c
23294}
23295
23296// DryRun sets the optional parameter "dryRun": Flag to simulate a
23297// request like in a live environment. If set to true, dry-run mode
23298// checks the validity of the request and returns errors (if any).
23299func (c *PosDeleteCall) DryRun(dryRun bool) *PosDeleteCall {
23300	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
23301	return c
23302}
23303
23304// Fields allows partial responses to be retrieved. See
23305// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23306// for more information.
23307func (c *PosDeleteCall) Fields(s ...googleapi.Field) *PosDeleteCall {
23308	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23309	return c
23310}
23311
23312// Context sets the context to be used in this call's Do method. Any
23313// pending HTTP request will be aborted if the provided context is
23314// canceled.
23315func (c *PosDeleteCall) Context(ctx context.Context) *PosDeleteCall {
23316	c.ctx_ = ctx
23317	return c
23318}
23319
23320// Header returns an http.Header that can be modified by the caller to
23321// add HTTP headers to the request.
23322func (c *PosDeleteCall) Header() http.Header {
23323	if c.header_ == nil {
23324		c.header_ = make(http.Header)
23325	}
23326	return c.header_
23327}
23328
23329func (c *PosDeleteCall) doRequest(alt string) (*http.Response, error) {
23330	reqHeaders := make(http.Header)
23331	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
23332	for k, v := range c.header_ {
23333		reqHeaders[k] = v
23334	}
23335	reqHeaders.Set("User-Agent", c.s.userAgent())
23336	var body io.Reader = nil
23337	c.urlParams_.Set("alt", alt)
23338	c.urlParams_.Set("prettyPrint", "false")
23339	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/store/{storeCode}")
23340	urls += "?" + c.urlParams_.Encode()
23341	req, err := http.NewRequest("DELETE", urls, body)
23342	if err != nil {
23343		return nil, err
23344	}
23345	req.Header = reqHeaders
23346	googleapi.Expand(req.URL, map[string]string{
23347		"merchantId":       strconv.FormatUint(c.merchantId, 10),
23348		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
23349		"storeCode":        c.storeCode,
23350	})
23351	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23352}
23353
23354// Do executes the "content.pos.delete" call.
23355func (c *PosDeleteCall) Do(opts ...googleapi.CallOption) error {
23356	gensupport.SetOptions(c.urlParams_, opts...)
23357	res, err := c.doRequest("json")
23358	if err != nil {
23359		return err
23360	}
23361	defer googleapi.CloseBody(res)
23362	if err := googleapi.CheckResponse(res); err != nil {
23363		return err
23364	}
23365	return nil
23366	// {
23367	//   "description": "Deletes a store for the given merchant.",
23368	//   "flatPath": "{merchantId}/pos/{targetMerchantId}/store/{storeCode}",
23369	//   "httpMethod": "DELETE",
23370	//   "id": "content.pos.delete",
23371	//   "parameterOrder": [
23372	//     "merchantId",
23373	//     "targetMerchantId",
23374	//     "storeCode"
23375	//   ],
23376	//   "parameters": {
23377	//     "dryRun": {
23378	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
23379	//       "location": "query",
23380	//       "type": "boolean"
23381	//     },
23382	//     "merchantId": {
23383	//       "description": "The ID of the POS or inventory data provider.",
23384	//       "format": "uint64",
23385	//       "location": "path",
23386	//       "required": true,
23387	//       "type": "string"
23388	//     },
23389	//     "storeCode": {
23390	//       "description": "A store code that is unique per merchant.",
23391	//       "location": "path",
23392	//       "required": true,
23393	//       "type": "string"
23394	//     },
23395	//     "targetMerchantId": {
23396	//       "description": "The ID of the target merchant.",
23397	//       "format": "uint64",
23398	//       "location": "path",
23399	//       "required": true,
23400	//       "type": "string"
23401	//     }
23402	//   },
23403	//   "path": "{merchantId}/pos/{targetMerchantId}/store/{storeCode}",
23404	//   "scopes": [
23405	//     "https://www.googleapis.com/auth/content"
23406	//   ]
23407	// }
23408
23409}
23410
23411// method id "content.pos.get":
23412
23413type PosGetCall struct {
23414	s                *APIService
23415	merchantId       uint64
23416	targetMerchantId uint64
23417	storeCode        string
23418	urlParams_       gensupport.URLParams
23419	ifNoneMatch_     string
23420	ctx_             context.Context
23421	header_          http.Header
23422}
23423
23424// Get: Retrieves information about the given store.
23425//
23426// - merchantId: The ID of the POS or inventory data provider.
23427// - storeCode: A store code that is unique per merchant.
23428// - targetMerchantId: The ID of the target merchant.
23429func (r *PosService) Get(merchantId uint64, targetMerchantId uint64, storeCode string) *PosGetCall {
23430	c := &PosGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23431	c.merchantId = merchantId
23432	c.targetMerchantId = targetMerchantId
23433	c.storeCode = storeCode
23434	return c
23435}
23436
23437// Fields allows partial responses to be retrieved. See
23438// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23439// for more information.
23440func (c *PosGetCall) Fields(s ...googleapi.Field) *PosGetCall {
23441	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23442	return c
23443}
23444
23445// IfNoneMatch sets the optional parameter which makes the operation
23446// fail if the object's ETag matches the given value. This is useful for
23447// getting updates only after the object has changed since the last
23448// request. Use googleapi.IsNotModified to check whether the response
23449// error from Do is the result of In-None-Match.
23450func (c *PosGetCall) IfNoneMatch(entityTag string) *PosGetCall {
23451	c.ifNoneMatch_ = entityTag
23452	return c
23453}
23454
23455// Context sets the context to be used in this call's Do method. Any
23456// pending HTTP request will be aborted if the provided context is
23457// canceled.
23458func (c *PosGetCall) Context(ctx context.Context) *PosGetCall {
23459	c.ctx_ = ctx
23460	return c
23461}
23462
23463// Header returns an http.Header that can be modified by the caller to
23464// add HTTP headers to the request.
23465func (c *PosGetCall) Header() http.Header {
23466	if c.header_ == nil {
23467		c.header_ = make(http.Header)
23468	}
23469	return c.header_
23470}
23471
23472func (c *PosGetCall) doRequest(alt string) (*http.Response, error) {
23473	reqHeaders := make(http.Header)
23474	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
23475	for k, v := range c.header_ {
23476		reqHeaders[k] = v
23477	}
23478	reqHeaders.Set("User-Agent", c.s.userAgent())
23479	if c.ifNoneMatch_ != "" {
23480		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
23481	}
23482	var body io.Reader = nil
23483	c.urlParams_.Set("alt", alt)
23484	c.urlParams_.Set("prettyPrint", "false")
23485	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/store/{storeCode}")
23486	urls += "?" + c.urlParams_.Encode()
23487	req, err := http.NewRequest("GET", urls, body)
23488	if err != nil {
23489		return nil, err
23490	}
23491	req.Header = reqHeaders
23492	googleapi.Expand(req.URL, map[string]string{
23493		"merchantId":       strconv.FormatUint(c.merchantId, 10),
23494		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
23495		"storeCode":        c.storeCode,
23496	})
23497	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23498}
23499
23500// Do executes the "content.pos.get" call.
23501// Exactly one of *PosStore or error will be non-nil. Any non-2xx status
23502// code is an error. Response headers are in either
23503// *PosStore.ServerResponse.Header or (if a response was returned at
23504// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
23505// to check whether the returned error was because
23506// http.StatusNotModified was returned.
23507func (c *PosGetCall) Do(opts ...googleapi.CallOption) (*PosStore, error) {
23508	gensupport.SetOptions(c.urlParams_, opts...)
23509	res, err := c.doRequest("json")
23510	if res != nil && res.StatusCode == http.StatusNotModified {
23511		if res.Body != nil {
23512			res.Body.Close()
23513		}
23514		return nil, &googleapi.Error{
23515			Code:   res.StatusCode,
23516			Header: res.Header,
23517		}
23518	}
23519	if err != nil {
23520		return nil, err
23521	}
23522	defer googleapi.CloseBody(res)
23523	if err := googleapi.CheckResponse(res); err != nil {
23524		return nil, err
23525	}
23526	ret := &PosStore{
23527		ServerResponse: googleapi.ServerResponse{
23528			Header:         res.Header,
23529			HTTPStatusCode: res.StatusCode,
23530		},
23531	}
23532	target := &ret
23533	if err := gensupport.DecodeResponse(target, res); err != nil {
23534		return nil, err
23535	}
23536	return ret, nil
23537	// {
23538	//   "description": "Retrieves information about the given store.",
23539	//   "flatPath": "{merchantId}/pos/{targetMerchantId}/store/{storeCode}",
23540	//   "httpMethod": "GET",
23541	//   "id": "content.pos.get",
23542	//   "parameterOrder": [
23543	//     "merchantId",
23544	//     "targetMerchantId",
23545	//     "storeCode"
23546	//   ],
23547	//   "parameters": {
23548	//     "merchantId": {
23549	//       "description": "The ID of the POS or inventory data provider.",
23550	//       "format": "uint64",
23551	//       "location": "path",
23552	//       "required": true,
23553	//       "type": "string"
23554	//     },
23555	//     "storeCode": {
23556	//       "description": "A store code that is unique per merchant.",
23557	//       "location": "path",
23558	//       "required": true,
23559	//       "type": "string"
23560	//     },
23561	//     "targetMerchantId": {
23562	//       "description": "The ID of the target merchant.",
23563	//       "format": "uint64",
23564	//       "location": "path",
23565	//       "required": true,
23566	//       "type": "string"
23567	//     }
23568	//   },
23569	//   "path": "{merchantId}/pos/{targetMerchantId}/store/{storeCode}",
23570	//   "response": {
23571	//     "$ref": "PosStore"
23572	//   },
23573	//   "scopes": [
23574	//     "https://www.googleapis.com/auth/content"
23575	//   ]
23576	// }
23577
23578}
23579
23580// method id "content.pos.insert":
23581
23582type PosInsertCall struct {
23583	s                *APIService
23584	merchantId       uint64
23585	targetMerchantId uint64
23586	posstore         *PosStore
23587	urlParams_       gensupport.URLParams
23588	ctx_             context.Context
23589	header_          http.Header
23590}
23591
23592// Insert: Creates a store for the given merchant.
23593//
23594// - merchantId: The ID of the POS or inventory data provider.
23595// - targetMerchantId: The ID of the target merchant.
23596func (r *PosService) Insert(merchantId uint64, targetMerchantId uint64, posstore *PosStore) *PosInsertCall {
23597	c := &PosInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23598	c.merchantId = merchantId
23599	c.targetMerchantId = targetMerchantId
23600	c.posstore = posstore
23601	return c
23602}
23603
23604// DryRun sets the optional parameter "dryRun": Flag to simulate a
23605// request like in a live environment. If set to true, dry-run mode
23606// checks the validity of the request and returns errors (if any).
23607func (c *PosInsertCall) DryRun(dryRun bool) *PosInsertCall {
23608	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
23609	return c
23610}
23611
23612// Fields allows partial responses to be retrieved. See
23613// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23614// for more information.
23615func (c *PosInsertCall) Fields(s ...googleapi.Field) *PosInsertCall {
23616	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23617	return c
23618}
23619
23620// Context sets the context to be used in this call's Do method. Any
23621// pending HTTP request will be aborted if the provided context is
23622// canceled.
23623func (c *PosInsertCall) Context(ctx context.Context) *PosInsertCall {
23624	c.ctx_ = ctx
23625	return c
23626}
23627
23628// Header returns an http.Header that can be modified by the caller to
23629// add HTTP headers to the request.
23630func (c *PosInsertCall) Header() http.Header {
23631	if c.header_ == nil {
23632		c.header_ = make(http.Header)
23633	}
23634	return c.header_
23635}
23636
23637func (c *PosInsertCall) doRequest(alt string) (*http.Response, error) {
23638	reqHeaders := make(http.Header)
23639	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
23640	for k, v := range c.header_ {
23641		reqHeaders[k] = v
23642	}
23643	reqHeaders.Set("User-Agent", c.s.userAgent())
23644	var body io.Reader = nil
23645	body, err := googleapi.WithoutDataWrapper.JSONReader(c.posstore)
23646	if err != nil {
23647		return nil, err
23648	}
23649	reqHeaders.Set("Content-Type", "application/json")
23650	c.urlParams_.Set("alt", alt)
23651	c.urlParams_.Set("prettyPrint", "false")
23652	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/store")
23653	urls += "?" + c.urlParams_.Encode()
23654	req, err := http.NewRequest("POST", urls, body)
23655	if err != nil {
23656		return nil, err
23657	}
23658	req.Header = reqHeaders
23659	googleapi.Expand(req.URL, map[string]string{
23660		"merchantId":       strconv.FormatUint(c.merchantId, 10),
23661		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
23662	})
23663	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23664}
23665
23666// Do executes the "content.pos.insert" call.
23667// Exactly one of *PosStore or error will be non-nil. Any non-2xx status
23668// code is an error. Response headers are in either
23669// *PosStore.ServerResponse.Header or (if a response was returned at
23670// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
23671// to check whether the returned error was because
23672// http.StatusNotModified was returned.
23673func (c *PosInsertCall) Do(opts ...googleapi.CallOption) (*PosStore, error) {
23674	gensupport.SetOptions(c.urlParams_, opts...)
23675	res, err := c.doRequest("json")
23676	if res != nil && res.StatusCode == http.StatusNotModified {
23677		if res.Body != nil {
23678			res.Body.Close()
23679		}
23680		return nil, &googleapi.Error{
23681			Code:   res.StatusCode,
23682			Header: res.Header,
23683		}
23684	}
23685	if err != nil {
23686		return nil, err
23687	}
23688	defer googleapi.CloseBody(res)
23689	if err := googleapi.CheckResponse(res); err != nil {
23690		return nil, err
23691	}
23692	ret := &PosStore{
23693		ServerResponse: googleapi.ServerResponse{
23694			Header:         res.Header,
23695			HTTPStatusCode: res.StatusCode,
23696		},
23697	}
23698	target := &ret
23699	if err := gensupport.DecodeResponse(target, res); err != nil {
23700		return nil, err
23701	}
23702	return ret, nil
23703	// {
23704	//   "description": "Creates a store for the given merchant.",
23705	//   "flatPath": "{merchantId}/pos/{targetMerchantId}/store",
23706	//   "httpMethod": "POST",
23707	//   "id": "content.pos.insert",
23708	//   "parameterOrder": [
23709	//     "merchantId",
23710	//     "targetMerchantId"
23711	//   ],
23712	//   "parameters": {
23713	//     "dryRun": {
23714	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
23715	//       "location": "query",
23716	//       "type": "boolean"
23717	//     },
23718	//     "merchantId": {
23719	//       "description": "The ID of the POS or inventory data provider.",
23720	//       "format": "uint64",
23721	//       "location": "path",
23722	//       "required": true,
23723	//       "type": "string"
23724	//     },
23725	//     "targetMerchantId": {
23726	//       "description": "The ID of the target merchant.",
23727	//       "format": "uint64",
23728	//       "location": "path",
23729	//       "required": true,
23730	//       "type": "string"
23731	//     }
23732	//   },
23733	//   "path": "{merchantId}/pos/{targetMerchantId}/store",
23734	//   "request": {
23735	//     "$ref": "PosStore"
23736	//   },
23737	//   "response": {
23738	//     "$ref": "PosStore"
23739	//   },
23740	//   "scopes": [
23741	//     "https://www.googleapis.com/auth/content"
23742	//   ]
23743	// }
23744
23745}
23746
23747// method id "content.pos.inventory":
23748
23749type PosInventoryCall struct {
23750	s                   *APIService
23751	merchantId          uint64
23752	targetMerchantId    uint64
23753	posinventoryrequest *PosInventoryRequest
23754	urlParams_          gensupport.URLParams
23755	ctx_                context.Context
23756	header_             http.Header
23757}
23758
23759// Inventory: Submit inventory for the given merchant.
23760//
23761// - merchantId: The ID of the POS or inventory data provider.
23762// - targetMerchantId: The ID of the target merchant.
23763func (r *PosService) Inventory(merchantId uint64, targetMerchantId uint64, posinventoryrequest *PosInventoryRequest) *PosInventoryCall {
23764	c := &PosInventoryCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23765	c.merchantId = merchantId
23766	c.targetMerchantId = targetMerchantId
23767	c.posinventoryrequest = posinventoryrequest
23768	return c
23769}
23770
23771// DryRun sets the optional parameter "dryRun": Flag to simulate a
23772// request like in a live environment. If set to true, dry-run mode
23773// checks the validity of the request and returns errors (if any).
23774func (c *PosInventoryCall) DryRun(dryRun bool) *PosInventoryCall {
23775	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
23776	return c
23777}
23778
23779// Fields allows partial responses to be retrieved. See
23780// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23781// for more information.
23782func (c *PosInventoryCall) Fields(s ...googleapi.Field) *PosInventoryCall {
23783	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23784	return c
23785}
23786
23787// Context sets the context to be used in this call's Do method. Any
23788// pending HTTP request will be aborted if the provided context is
23789// canceled.
23790func (c *PosInventoryCall) Context(ctx context.Context) *PosInventoryCall {
23791	c.ctx_ = ctx
23792	return c
23793}
23794
23795// Header returns an http.Header that can be modified by the caller to
23796// add HTTP headers to the request.
23797func (c *PosInventoryCall) Header() http.Header {
23798	if c.header_ == nil {
23799		c.header_ = make(http.Header)
23800	}
23801	return c.header_
23802}
23803
23804func (c *PosInventoryCall) doRequest(alt string) (*http.Response, error) {
23805	reqHeaders := make(http.Header)
23806	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
23807	for k, v := range c.header_ {
23808		reqHeaders[k] = v
23809	}
23810	reqHeaders.Set("User-Agent", c.s.userAgent())
23811	var body io.Reader = nil
23812	body, err := googleapi.WithoutDataWrapper.JSONReader(c.posinventoryrequest)
23813	if err != nil {
23814		return nil, err
23815	}
23816	reqHeaders.Set("Content-Type", "application/json")
23817	c.urlParams_.Set("alt", alt)
23818	c.urlParams_.Set("prettyPrint", "false")
23819	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/inventory")
23820	urls += "?" + c.urlParams_.Encode()
23821	req, err := http.NewRequest("POST", urls, body)
23822	if err != nil {
23823		return nil, err
23824	}
23825	req.Header = reqHeaders
23826	googleapi.Expand(req.URL, map[string]string{
23827		"merchantId":       strconv.FormatUint(c.merchantId, 10),
23828		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
23829	})
23830	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23831}
23832
23833// Do executes the "content.pos.inventory" call.
23834// Exactly one of *PosInventoryResponse or error will be non-nil. Any
23835// non-2xx status code is an error. Response headers are in either
23836// *PosInventoryResponse.ServerResponse.Header or (if a response was
23837// returned at all) in error.(*googleapi.Error).Header. Use
23838// googleapi.IsNotModified to check whether the returned error was
23839// because http.StatusNotModified was returned.
23840func (c *PosInventoryCall) Do(opts ...googleapi.CallOption) (*PosInventoryResponse, error) {
23841	gensupport.SetOptions(c.urlParams_, opts...)
23842	res, err := c.doRequest("json")
23843	if res != nil && res.StatusCode == http.StatusNotModified {
23844		if res.Body != nil {
23845			res.Body.Close()
23846		}
23847		return nil, &googleapi.Error{
23848			Code:   res.StatusCode,
23849			Header: res.Header,
23850		}
23851	}
23852	if err != nil {
23853		return nil, err
23854	}
23855	defer googleapi.CloseBody(res)
23856	if err := googleapi.CheckResponse(res); err != nil {
23857		return nil, err
23858	}
23859	ret := &PosInventoryResponse{
23860		ServerResponse: googleapi.ServerResponse{
23861			Header:         res.Header,
23862			HTTPStatusCode: res.StatusCode,
23863		},
23864	}
23865	target := &ret
23866	if err := gensupport.DecodeResponse(target, res); err != nil {
23867		return nil, err
23868	}
23869	return ret, nil
23870	// {
23871	//   "description": "Submit inventory for the given merchant.",
23872	//   "flatPath": "{merchantId}/pos/{targetMerchantId}/inventory",
23873	//   "httpMethod": "POST",
23874	//   "id": "content.pos.inventory",
23875	//   "parameterOrder": [
23876	//     "merchantId",
23877	//     "targetMerchantId"
23878	//   ],
23879	//   "parameters": {
23880	//     "dryRun": {
23881	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
23882	//       "location": "query",
23883	//       "type": "boolean"
23884	//     },
23885	//     "merchantId": {
23886	//       "description": "The ID of the POS or inventory data provider.",
23887	//       "format": "uint64",
23888	//       "location": "path",
23889	//       "required": true,
23890	//       "type": "string"
23891	//     },
23892	//     "targetMerchantId": {
23893	//       "description": "The ID of the target merchant.",
23894	//       "format": "uint64",
23895	//       "location": "path",
23896	//       "required": true,
23897	//       "type": "string"
23898	//     }
23899	//   },
23900	//   "path": "{merchantId}/pos/{targetMerchantId}/inventory",
23901	//   "request": {
23902	//     "$ref": "PosInventoryRequest"
23903	//   },
23904	//   "response": {
23905	//     "$ref": "PosInventoryResponse"
23906	//   },
23907	//   "scopes": [
23908	//     "https://www.googleapis.com/auth/content"
23909	//   ]
23910	// }
23911
23912}
23913
23914// method id "content.pos.list":
23915
23916type PosListCall struct {
23917	s                *APIService
23918	merchantId       uint64
23919	targetMerchantId uint64
23920	urlParams_       gensupport.URLParams
23921	ifNoneMatch_     string
23922	ctx_             context.Context
23923	header_          http.Header
23924}
23925
23926// List: Lists the stores of the target merchant.
23927//
23928// - merchantId: The ID of the POS or inventory data provider.
23929// - targetMerchantId: The ID of the target merchant.
23930func (r *PosService) List(merchantId uint64, targetMerchantId uint64) *PosListCall {
23931	c := &PosListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23932	c.merchantId = merchantId
23933	c.targetMerchantId = targetMerchantId
23934	return c
23935}
23936
23937// Fields allows partial responses to be retrieved. See
23938// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23939// for more information.
23940func (c *PosListCall) Fields(s ...googleapi.Field) *PosListCall {
23941	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23942	return c
23943}
23944
23945// IfNoneMatch sets the optional parameter which makes the operation
23946// fail if the object's ETag matches the given value. This is useful for
23947// getting updates only after the object has changed since the last
23948// request. Use googleapi.IsNotModified to check whether the response
23949// error from Do is the result of In-None-Match.
23950func (c *PosListCall) IfNoneMatch(entityTag string) *PosListCall {
23951	c.ifNoneMatch_ = entityTag
23952	return c
23953}
23954
23955// Context sets the context to be used in this call's Do method. Any
23956// pending HTTP request will be aborted if the provided context is
23957// canceled.
23958func (c *PosListCall) Context(ctx context.Context) *PosListCall {
23959	c.ctx_ = ctx
23960	return c
23961}
23962
23963// Header returns an http.Header that can be modified by the caller to
23964// add HTTP headers to the request.
23965func (c *PosListCall) Header() http.Header {
23966	if c.header_ == nil {
23967		c.header_ = make(http.Header)
23968	}
23969	return c.header_
23970}
23971
23972func (c *PosListCall) doRequest(alt string) (*http.Response, error) {
23973	reqHeaders := make(http.Header)
23974	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
23975	for k, v := range c.header_ {
23976		reqHeaders[k] = v
23977	}
23978	reqHeaders.Set("User-Agent", c.s.userAgent())
23979	if c.ifNoneMatch_ != "" {
23980		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
23981	}
23982	var body io.Reader = nil
23983	c.urlParams_.Set("alt", alt)
23984	c.urlParams_.Set("prettyPrint", "false")
23985	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/store")
23986	urls += "?" + c.urlParams_.Encode()
23987	req, err := http.NewRequest("GET", urls, body)
23988	if err != nil {
23989		return nil, err
23990	}
23991	req.Header = reqHeaders
23992	googleapi.Expand(req.URL, map[string]string{
23993		"merchantId":       strconv.FormatUint(c.merchantId, 10),
23994		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
23995	})
23996	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23997}
23998
23999// Do executes the "content.pos.list" call.
24000// Exactly one of *PosListResponse or error will be non-nil. Any non-2xx
24001// status code is an error. Response headers are in either
24002// *PosListResponse.ServerResponse.Header or (if a response was returned
24003// at all) in error.(*googleapi.Error).Header. Use
24004// googleapi.IsNotModified to check whether the returned error was
24005// because http.StatusNotModified was returned.
24006func (c *PosListCall) Do(opts ...googleapi.CallOption) (*PosListResponse, error) {
24007	gensupport.SetOptions(c.urlParams_, opts...)
24008	res, err := c.doRequest("json")
24009	if res != nil && res.StatusCode == http.StatusNotModified {
24010		if res.Body != nil {
24011			res.Body.Close()
24012		}
24013		return nil, &googleapi.Error{
24014			Code:   res.StatusCode,
24015			Header: res.Header,
24016		}
24017	}
24018	if err != nil {
24019		return nil, err
24020	}
24021	defer googleapi.CloseBody(res)
24022	if err := googleapi.CheckResponse(res); err != nil {
24023		return nil, err
24024	}
24025	ret := &PosListResponse{
24026		ServerResponse: googleapi.ServerResponse{
24027			Header:         res.Header,
24028			HTTPStatusCode: res.StatusCode,
24029		},
24030	}
24031	target := &ret
24032	if err := gensupport.DecodeResponse(target, res); err != nil {
24033		return nil, err
24034	}
24035	return ret, nil
24036	// {
24037	//   "description": "Lists the stores of the target merchant.",
24038	//   "flatPath": "{merchantId}/pos/{targetMerchantId}/store",
24039	//   "httpMethod": "GET",
24040	//   "id": "content.pos.list",
24041	//   "parameterOrder": [
24042	//     "merchantId",
24043	//     "targetMerchantId"
24044	//   ],
24045	//   "parameters": {
24046	//     "merchantId": {
24047	//       "description": "The ID of the POS or inventory data provider.",
24048	//       "format": "uint64",
24049	//       "location": "path",
24050	//       "required": true,
24051	//       "type": "string"
24052	//     },
24053	//     "targetMerchantId": {
24054	//       "description": "The ID of the target merchant.",
24055	//       "format": "uint64",
24056	//       "location": "path",
24057	//       "required": true,
24058	//       "type": "string"
24059	//     }
24060	//   },
24061	//   "path": "{merchantId}/pos/{targetMerchantId}/store",
24062	//   "response": {
24063	//     "$ref": "PosListResponse"
24064	//   },
24065	//   "scopes": [
24066	//     "https://www.googleapis.com/auth/content"
24067	//   ]
24068	// }
24069
24070}
24071
24072// method id "content.pos.sale":
24073
24074type PosSaleCall struct {
24075	s                *APIService
24076	merchantId       uint64
24077	targetMerchantId uint64
24078	possalerequest   *PosSaleRequest
24079	urlParams_       gensupport.URLParams
24080	ctx_             context.Context
24081	header_          http.Header
24082}
24083
24084// Sale: Submit a sale event for the given merchant.
24085//
24086// - merchantId: The ID of the POS or inventory data provider.
24087// - targetMerchantId: The ID of the target merchant.
24088func (r *PosService) Sale(merchantId uint64, targetMerchantId uint64, possalerequest *PosSaleRequest) *PosSaleCall {
24089	c := &PosSaleCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24090	c.merchantId = merchantId
24091	c.targetMerchantId = targetMerchantId
24092	c.possalerequest = possalerequest
24093	return c
24094}
24095
24096// DryRun sets the optional parameter "dryRun": Flag to simulate a
24097// request like in a live environment. If set to true, dry-run mode
24098// checks the validity of the request and returns errors (if any).
24099func (c *PosSaleCall) DryRun(dryRun bool) *PosSaleCall {
24100	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
24101	return c
24102}
24103
24104// Fields allows partial responses to be retrieved. See
24105// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24106// for more information.
24107func (c *PosSaleCall) Fields(s ...googleapi.Field) *PosSaleCall {
24108	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24109	return c
24110}
24111
24112// Context sets the context to be used in this call's Do method. Any
24113// pending HTTP request will be aborted if the provided context is
24114// canceled.
24115func (c *PosSaleCall) Context(ctx context.Context) *PosSaleCall {
24116	c.ctx_ = ctx
24117	return c
24118}
24119
24120// Header returns an http.Header that can be modified by the caller to
24121// add HTTP headers to the request.
24122func (c *PosSaleCall) Header() http.Header {
24123	if c.header_ == nil {
24124		c.header_ = make(http.Header)
24125	}
24126	return c.header_
24127}
24128
24129func (c *PosSaleCall) doRequest(alt string) (*http.Response, error) {
24130	reqHeaders := make(http.Header)
24131	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
24132	for k, v := range c.header_ {
24133		reqHeaders[k] = v
24134	}
24135	reqHeaders.Set("User-Agent", c.s.userAgent())
24136	var body io.Reader = nil
24137	body, err := googleapi.WithoutDataWrapper.JSONReader(c.possalerequest)
24138	if err != nil {
24139		return nil, err
24140	}
24141	reqHeaders.Set("Content-Type", "application/json")
24142	c.urlParams_.Set("alt", alt)
24143	c.urlParams_.Set("prettyPrint", "false")
24144	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/sale")
24145	urls += "?" + c.urlParams_.Encode()
24146	req, err := http.NewRequest("POST", urls, body)
24147	if err != nil {
24148		return nil, err
24149	}
24150	req.Header = reqHeaders
24151	googleapi.Expand(req.URL, map[string]string{
24152		"merchantId":       strconv.FormatUint(c.merchantId, 10),
24153		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
24154	})
24155	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24156}
24157
24158// Do executes the "content.pos.sale" call.
24159// Exactly one of *PosSaleResponse or error will be non-nil. Any non-2xx
24160// status code is an error. Response headers are in either
24161// *PosSaleResponse.ServerResponse.Header or (if a response was returned
24162// at all) in error.(*googleapi.Error).Header. Use
24163// googleapi.IsNotModified to check whether the returned error was
24164// because http.StatusNotModified was returned.
24165func (c *PosSaleCall) Do(opts ...googleapi.CallOption) (*PosSaleResponse, error) {
24166	gensupport.SetOptions(c.urlParams_, opts...)
24167	res, err := c.doRequest("json")
24168	if res != nil && res.StatusCode == http.StatusNotModified {
24169		if res.Body != nil {
24170			res.Body.Close()
24171		}
24172		return nil, &googleapi.Error{
24173			Code:   res.StatusCode,
24174			Header: res.Header,
24175		}
24176	}
24177	if err != nil {
24178		return nil, err
24179	}
24180	defer googleapi.CloseBody(res)
24181	if err := googleapi.CheckResponse(res); err != nil {
24182		return nil, err
24183	}
24184	ret := &PosSaleResponse{
24185		ServerResponse: googleapi.ServerResponse{
24186			Header:         res.Header,
24187			HTTPStatusCode: res.StatusCode,
24188		},
24189	}
24190	target := &ret
24191	if err := gensupport.DecodeResponse(target, res); err != nil {
24192		return nil, err
24193	}
24194	return ret, nil
24195	// {
24196	//   "description": "Submit a sale event for the given merchant.",
24197	//   "flatPath": "{merchantId}/pos/{targetMerchantId}/sale",
24198	//   "httpMethod": "POST",
24199	//   "id": "content.pos.sale",
24200	//   "parameterOrder": [
24201	//     "merchantId",
24202	//     "targetMerchantId"
24203	//   ],
24204	//   "parameters": {
24205	//     "dryRun": {
24206	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
24207	//       "location": "query",
24208	//       "type": "boolean"
24209	//     },
24210	//     "merchantId": {
24211	//       "description": "The ID of the POS or inventory data provider.",
24212	//       "format": "uint64",
24213	//       "location": "path",
24214	//       "required": true,
24215	//       "type": "string"
24216	//     },
24217	//     "targetMerchantId": {
24218	//       "description": "The ID of the target merchant.",
24219	//       "format": "uint64",
24220	//       "location": "path",
24221	//       "required": true,
24222	//       "type": "string"
24223	//     }
24224	//   },
24225	//   "path": "{merchantId}/pos/{targetMerchantId}/sale",
24226	//   "request": {
24227	//     "$ref": "PosSaleRequest"
24228	//   },
24229	//   "response": {
24230	//     "$ref": "PosSaleResponse"
24231	//   },
24232	//   "scopes": [
24233	//     "https://www.googleapis.com/auth/content"
24234	//   ]
24235	// }
24236
24237}
24238
24239// method id "content.products.custombatch":
24240
24241type ProductsCustombatchCall struct {
24242	s                          *APIService
24243	productscustombatchrequest *ProductsCustomBatchRequest
24244	urlParams_                 gensupport.URLParams
24245	ctx_                       context.Context
24246	header_                    http.Header
24247}
24248
24249// Custombatch: Retrieves, inserts, and deletes multiple products in a
24250// single request.
24251func (r *ProductsService) Custombatch(productscustombatchrequest *ProductsCustomBatchRequest) *ProductsCustombatchCall {
24252	c := &ProductsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24253	c.productscustombatchrequest = productscustombatchrequest
24254	return c
24255}
24256
24257// DryRun sets the optional parameter "dryRun": Flag to simulate a
24258// request like in a live environment. If set to true, dry-run mode
24259// checks the validity of the request and returns errors (if any).
24260func (c *ProductsCustombatchCall) DryRun(dryRun bool) *ProductsCustombatchCall {
24261	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
24262	return c
24263}
24264
24265// Fields allows partial responses to be retrieved. See
24266// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24267// for more information.
24268func (c *ProductsCustombatchCall) Fields(s ...googleapi.Field) *ProductsCustombatchCall {
24269	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24270	return c
24271}
24272
24273// Context sets the context to be used in this call's Do method. Any
24274// pending HTTP request will be aborted if the provided context is
24275// canceled.
24276func (c *ProductsCustombatchCall) Context(ctx context.Context) *ProductsCustombatchCall {
24277	c.ctx_ = ctx
24278	return c
24279}
24280
24281// Header returns an http.Header that can be modified by the caller to
24282// add HTTP headers to the request.
24283func (c *ProductsCustombatchCall) Header() http.Header {
24284	if c.header_ == nil {
24285		c.header_ = make(http.Header)
24286	}
24287	return c.header_
24288}
24289
24290func (c *ProductsCustombatchCall) doRequest(alt string) (*http.Response, error) {
24291	reqHeaders := make(http.Header)
24292	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
24293	for k, v := range c.header_ {
24294		reqHeaders[k] = v
24295	}
24296	reqHeaders.Set("User-Agent", c.s.userAgent())
24297	var body io.Reader = nil
24298	body, err := googleapi.WithoutDataWrapper.JSONReader(c.productscustombatchrequest)
24299	if err != nil {
24300		return nil, err
24301	}
24302	reqHeaders.Set("Content-Type", "application/json")
24303	c.urlParams_.Set("alt", alt)
24304	c.urlParams_.Set("prettyPrint", "false")
24305	urls := googleapi.ResolveRelative(c.s.BasePath, "products/batch")
24306	urls += "?" + c.urlParams_.Encode()
24307	req, err := http.NewRequest("POST", urls, body)
24308	if err != nil {
24309		return nil, err
24310	}
24311	req.Header = reqHeaders
24312	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24313}
24314
24315// Do executes the "content.products.custombatch" call.
24316// Exactly one of *ProductsCustomBatchResponse or error will be non-nil.
24317// Any non-2xx status code is an error. Response headers are in either
24318// *ProductsCustomBatchResponse.ServerResponse.Header or (if a response
24319// was returned at all) in error.(*googleapi.Error).Header. Use
24320// googleapi.IsNotModified to check whether the returned error was
24321// because http.StatusNotModified was returned.
24322func (c *ProductsCustombatchCall) Do(opts ...googleapi.CallOption) (*ProductsCustomBatchResponse, error) {
24323	gensupport.SetOptions(c.urlParams_, opts...)
24324	res, err := c.doRequest("json")
24325	if res != nil && res.StatusCode == http.StatusNotModified {
24326		if res.Body != nil {
24327			res.Body.Close()
24328		}
24329		return nil, &googleapi.Error{
24330			Code:   res.StatusCode,
24331			Header: res.Header,
24332		}
24333	}
24334	if err != nil {
24335		return nil, err
24336	}
24337	defer googleapi.CloseBody(res)
24338	if err := googleapi.CheckResponse(res); err != nil {
24339		return nil, err
24340	}
24341	ret := &ProductsCustomBatchResponse{
24342		ServerResponse: googleapi.ServerResponse{
24343			Header:         res.Header,
24344			HTTPStatusCode: res.StatusCode,
24345		},
24346	}
24347	target := &ret
24348	if err := gensupport.DecodeResponse(target, res); err != nil {
24349		return nil, err
24350	}
24351	return ret, nil
24352	// {
24353	//   "description": "Retrieves, inserts, and deletes multiple products in a single request.",
24354	//   "flatPath": "products/batch",
24355	//   "httpMethod": "POST",
24356	//   "id": "content.products.custombatch",
24357	//   "parameterOrder": [],
24358	//   "parameters": {
24359	//     "dryRun": {
24360	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
24361	//       "location": "query",
24362	//       "type": "boolean"
24363	//     }
24364	//   },
24365	//   "path": "products/batch",
24366	//   "request": {
24367	//     "$ref": "ProductsCustomBatchRequest"
24368	//   },
24369	//   "response": {
24370	//     "$ref": "ProductsCustomBatchResponse"
24371	//   },
24372	//   "scopes": [
24373	//     "https://www.googleapis.com/auth/content"
24374	//   ]
24375	// }
24376
24377}
24378
24379// method id "content.products.delete":
24380
24381type ProductsDeleteCall struct {
24382	s          *APIService
24383	merchantId uint64
24384	productId  string
24385	urlParams_ gensupport.URLParams
24386	ctx_       context.Context
24387	header_    http.Header
24388}
24389
24390// Delete: Deletes a product from your Merchant Center account.
24391//
24392// - merchantId: The ID of the account that contains the product. This
24393//   account cannot be a multi-client account.
24394// - productId: The REST ID of the product.
24395func (r *ProductsService) Delete(merchantId uint64, productId string) *ProductsDeleteCall {
24396	c := &ProductsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24397	c.merchantId = merchantId
24398	c.productId = productId
24399	return c
24400}
24401
24402// DryRun sets the optional parameter "dryRun": Flag to simulate a
24403// request like in a live environment. If set to true, dry-run mode
24404// checks the validity of the request and returns errors (if any).
24405func (c *ProductsDeleteCall) DryRun(dryRun bool) *ProductsDeleteCall {
24406	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
24407	return c
24408}
24409
24410// Fields allows partial responses to be retrieved. See
24411// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24412// for more information.
24413func (c *ProductsDeleteCall) Fields(s ...googleapi.Field) *ProductsDeleteCall {
24414	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24415	return c
24416}
24417
24418// Context sets the context to be used in this call's Do method. Any
24419// pending HTTP request will be aborted if the provided context is
24420// canceled.
24421func (c *ProductsDeleteCall) Context(ctx context.Context) *ProductsDeleteCall {
24422	c.ctx_ = ctx
24423	return c
24424}
24425
24426// Header returns an http.Header that can be modified by the caller to
24427// add HTTP headers to the request.
24428func (c *ProductsDeleteCall) Header() http.Header {
24429	if c.header_ == nil {
24430		c.header_ = make(http.Header)
24431	}
24432	return c.header_
24433}
24434
24435func (c *ProductsDeleteCall) doRequest(alt string) (*http.Response, error) {
24436	reqHeaders := make(http.Header)
24437	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
24438	for k, v := range c.header_ {
24439		reqHeaders[k] = v
24440	}
24441	reqHeaders.Set("User-Agent", c.s.userAgent())
24442	var body io.Reader = nil
24443	c.urlParams_.Set("alt", alt)
24444	c.urlParams_.Set("prettyPrint", "false")
24445	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products/{productId}")
24446	urls += "?" + c.urlParams_.Encode()
24447	req, err := http.NewRequest("DELETE", urls, body)
24448	if err != nil {
24449		return nil, err
24450	}
24451	req.Header = reqHeaders
24452	googleapi.Expand(req.URL, map[string]string{
24453		"merchantId": strconv.FormatUint(c.merchantId, 10),
24454		"productId":  c.productId,
24455	})
24456	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24457}
24458
24459// Do executes the "content.products.delete" call.
24460func (c *ProductsDeleteCall) Do(opts ...googleapi.CallOption) error {
24461	gensupport.SetOptions(c.urlParams_, opts...)
24462	res, err := c.doRequest("json")
24463	if err != nil {
24464		return err
24465	}
24466	defer googleapi.CloseBody(res)
24467	if err := googleapi.CheckResponse(res); err != nil {
24468		return err
24469	}
24470	return nil
24471	// {
24472	//   "description": "Deletes a product from your Merchant Center account.",
24473	//   "flatPath": "{merchantId}/products/{productId}",
24474	//   "httpMethod": "DELETE",
24475	//   "id": "content.products.delete",
24476	//   "parameterOrder": [
24477	//     "merchantId",
24478	//     "productId"
24479	//   ],
24480	//   "parameters": {
24481	//     "dryRun": {
24482	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
24483	//       "location": "query",
24484	//       "type": "boolean"
24485	//     },
24486	//     "merchantId": {
24487	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
24488	//       "format": "uint64",
24489	//       "location": "path",
24490	//       "required": true,
24491	//       "type": "string"
24492	//     },
24493	//     "productId": {
24494	//       "description": "The REST ID of the product.",
24495	//       "location": "path",
24496	//       "required": true,
24497	//       "type": "string"
24498	//     }
24499	//   },
24500	//   "path": "{merchantId}/products/{productId}",
24501	//   "scopes": [
24502	//     "https://www.googleapis.com/auth/content"
24503	//   ]
24504	// }
24505
24506}
24507
24508// method id "content.products.get":
24509
24510type ProductsGetCall struct {
24511	s            *APIService
24512	merchantId   uint64
24513	productId    string
24514	urlParams_   gensupport.URLParams
24515	ifNoneMatch_ string
24516	ctx_         context.Context
24517	header_      http.Header
24518}
24519
24520// Get: Retrieves a product from your Merchant Center account.
24521//
24522// - merchantId: The ID of the account that contains the product. This
24523//   account cannot be a multi-client account.
24524// - productId: The REST ID of the product.
24525func (r *ProductsService) Get(merchantId uint64, productId string) *ProductsGetCall {
24526	c := &ProductsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24527	c.merchantId = merchantId
24528	c.productId = productId
24529	return c
24530}
24531
24532// Fields allows partial responses to be retrieved. See
24533// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24534// for more information.
24535func (c *ProductsGetCall) Fields(s ...googleapi.Field) *ProductsGetCall {
24536	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24537	return c
24538}
24539
24540// IfNoneMatch sets the optional parameter which makes the operation
24541// fail if the object's ETag matches the given value. This is useful for
24542// getting updates only after the object has changed since the last
24543// request. Use googleapi.IsNotModified to check whether the response
24544// error from Do is the result of In-None-Match.
24545func (c *ProductsGetCall) IfNoneMatch(entityTag string) *ProductsGetCall {
24546	c.ifNoneMatch_ = entityTag
24547	return c
24548}
24549
24550// Context sets the context to be used in this call's Do method. Any
24551// pending HTTP request will be aborted if the provided context is
24552// canceled.
24553func (c *ProductsGetCall) Context(ctx context.Context) *ProductsGetCall {
24554	c.ctx_ = ctx
24555	return c
24556}
24557
24558// Header returns an http.Header that can be modified by the caller to
24559// add HTTP headers to the request.
24560func (c *ProductsGetCall) Header() http.Header {
24561	if c.header_ == nil {
24562		c.header_ = make(http.Header)
24563	}
24564	return c.header_
24565}
24566
24567func (c *ProductsGetCall) doRequest(alt string) (*http.Response, error) {
24568	reqHeaders := make(http.Header)
24569	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
24570	for k, v := range c.header_ {
24571		reqHeaders[k] = v
24572	}
24573	reqHeaders.Set("User-Agent", c.s.userAgent())
24574	if c.ifNoneMatch_ != "" {
24575		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
24576	}
24577	var body io.Reader = nil
24578	c.urlParams_.Set("alt", alt)
24579	c.urlParams_.Set("prettyPrint", "false")
24580	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products/{productId}")
24581	urls += "?" + c.urlParams_.Encode()
24582	req, err := http.NewRequest("GET", urls, body)
24583	if err != nil {
24584		return nil, err
24585	}
24586	req.Header = reqHeaders
24587	googleapi.Expand(req.URL, map[string]string{
24588		"merchantId": strconv.FormatUint(c.merchantId, 10),
24589		"productId":  c.productId,
24590	})
24591	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24592}
24593
24594// Do executes the "content.products.get" call.
24595// Exactly one of *Product or error will be non-nil. Any non-2xx status
24596// code is an error. Response headers are in either
24597// *Product.ServerResponse.Header or (if a response was returned at all)
24598// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
24599// check whether the returned error was because http.StatusNotModified
24600// was returned.
24601func (c *ProductsGetCall) Do(opts ...googleapi.CallOption) (*Product, error) {
24602	gensupport.SetOptions(c.urlParams_, opts...)
24603	res, err := c.doRequest("json")
24604	if res != nil && res.StatusCode == http.StatusNotModified {
24605		if res.Body != nil {
24606			res.Body.Close()
24607		}
24608		return nil, &googleapi.Error{
24609			Code:   res.StatusCode,
24610			Header: res.Header,
24611		}
24612	}
24613	if err != nil {
24614		return nil, err
24615	}
24616	defer googleapi.CloseBody(res)
24617	if err := googleapi.CheckResponse(res); err != nil {
24618		return nil, err
24619	}
24620	ret := &Product{
24621		ServerResponse: googleapi.ServerResponse{
24622			Header:         res.Header,
24623			HTTPStatusCode: res.StatusCode,
24624		},
24625	}
24626	target := &ret
24627	if err := gensupport.DecodeResponse(target, res); err != nil {
24628		return nil, err
24629	}
24630	return ret, nil
24631	// {
24632	//   "description": "Retrieves a product from your Merchant Center account.",
24633	//   "flatPath": "{merchantId}/products/{productId}",
24634	//   "httpMethod": "GET",
24635	//   "id": "content.products.get",
24636	//   "parameterOrder": [
24637	//     "merchantId",
24638	//     "productId"
24639	//   ],
24640	//   "parameters": {
24641	//     "merchantId": {
24642	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
24643	//       "format": "uint64",
24644	//       "location": "path",
24645	//       "required": true,
24646	//       "type": "string"
24647	//     },
24648	//     "productId": {
24649	//       "description": "The REST ID of the product.",
24650	//       "location": "path",
24651	//       "required": true,
24652	//       "type": "string"
24653	//     }
24654	//   },
24655	//   "path": "{merchantId}/products/{productId}",
24656	//   "response": {
24657	//     "$ref": "Product"
24658	//   },
24659	//   "scopes": [
24660	//     "https://www.googleapis.com/auth/content"
24661	//   ]
24662	// }
24663
24664}
24665
24666// method id "content.products.insert":
24667
24668type ProductsInsertCall struct {
24669	s          *APIService
24670	merchantId uint64
24671	product    *Product
24672	urlParams_ gensupport.URLParams
24673	ctx_       context.Context
24674	header_    http.Header
24675}
24676
24677// Insert: Uploads a product to your Merchant Center account. If an item
24678// with the same channel, contentLanguage, offerId, and targetCountry
24679// already exists, this method updates that entry.
24680//
24681// - merchantId: The ID of the account that contains the product. This
24682//   account cannot be a multi-client account.
24683func (r *ProductsService) Insert(merchantId uint64, product *Product) *ProductsInsertCall {
24684	c := &ProductsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24685	c.merchantId = merchantId
24686	c.product = product
24687	return c
24688}
24689
24690// DryRun sets the optional parameter "dryRun": Flag to simulate a
24691// request like in a live environment. If set to true, dry-run mode
24692// checks the validity of the request and returns errors (if any).
24693func (c *ProductsInsertCall) DryRun(dryRun bool) *ProductsInsertCall {
24694	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
24695	return c
24696}
24697
24698// Fields allows partial responses to be retrieved. See
24699// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24700// for more information.
24701func (c *ProductsInsertCall) Fields(s ...googleapi.Field) *ProductsInsertCall {
24702	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24703	return c
24704}
24705
24706// Context sets the context to be used in this call's Do method. Any
24707// pending HTTP request will be aborted if the provided context is
24708// canceled.
24709func (c *ProductsInsertCall) Context(ctx context.Context) *ProductsInsertCall {
24710	c.ctx_ = ctx
24711	return c
24712}
24713
24714// Header returns an http.Header that can be modified by the caller to
24715// add HTTP headers to the request.
24716func (c *ProductsInsertCall) Header() http.Header {
24717	if c.header_ == nil {
24718		c.header_ = make(http.Header)
24719	}
24720	return c.header_
24721}
24722
24723func (c *ProductsInsertCall) doRequest(alt string) (*http.Response, error) {
24724	reqHeaders := make(http.Header)
24725	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
24726	for k, v := range c.header_ {
24727		reqHeaders[k] = v
24728	}
24729	reqHeaders.Set("User-Agent", c.s.userAgent())
24730	var body io.Reader = nil
24731	body, err := googleapi.WithoutDataWrapper.JSONReader(c.product)
24732	if err != nil {
24733		return nil, err
24734	}
24735	reqHeaders.Set("Content-Type", "application/json")
24736	c.urlParams_.Set("alt", alt)
24737	c.urlParams_.Set("prettyPrint", "false")
24738	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products")
24739	urls += "?" + c.urlParams_.Encode()
24740	req, err := http.NewRequest("POST", urls, body)
24741	if err != nil {
24742		return nil, err
24743	}
24744	req.Header = reqHeaders
24745	googleapi.Expand(req.URL, map[string]string{
24746		"merchantId": strconv.FormatUint(c.merchantId, 10),
24747	})
24748	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24749}
24750
24751// Do executes the "content.products.insert" call.
24752// Exactly one of *Product or error will be non-nil. Any non-2xx status
24753// code is an error. Response headers are in either
24754// *Product.ServerResponse.Header or (if a response was returned at all)
24755// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
24756// check whether the returned error was because http.StatusNotModified
24757// was returned.
24758func (c *ProductsInsertCall) Do(opts ...googleapi.CallOption) (*Product, error) {
24759	gensupport.SetOptions(c.urlParams_, opts...)
24760	res, err := c.doRequest("json")
24761	if res != nil && res.StatusCode == http.StatusNotModified {
24762		if res.Body != nil {
24763			res.Body.Close()
24764		}
24765		return nil, &googleapi.Error{
24766			Code:   res.StatusCode,
24767			Header: res.Header,
24768		}
24769	}
24770	if err != nil {
24771		return nil, err
24772	}
24773	defer googleapi.CloseBody(res)
24774	if err := googleapi.CheckResponse(res); err != nil {
24775		return nil, err
24776	}
24777	ret := &Product{
24778		ServerResponse: googleapi.ServerResponse{
24779			Header:         res.Header,
24780			HTTPStatusCode: res.StatusCode,
24781		},
24782	}
24783	target := &ret
24784	if err := gensupport.DecodeResponse(target, res); err != nil {
24785		return nil, err
24786	}
24787	return ret, nil
24788	// {
24789	//   "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.",
24790	//   "flatPath": "{merchantId}/products",
24791	//   "httpMethod": "POST",
24792	//   "id": "content.products.insert",
24793	//   "parameterOrder": [
24794	//     "merchantId"
24795	//   ],
24796	//   "parameters": {
24797	//     "dryRun": {
24798	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
24799	//       "location": "query",
24800	//       "type": "boolean"
24801	//     },
24802	//     "merchantId": {
24803	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
24804	//       "format": "uint64",
24805	//       "location": "path",
24806	//       "required": true,
24807	//       "type": "string"
24808	//     }
24809	//   },
24810	//   "path": "{merchantId}/products",
24811	//   "request": {
24812	//     "$ref": "Product"
24813	//   },
24814	//   "response": {
24815	//     "$ref": "Product"
24816	//   },
24817	//   "scopes": [
24818	//     "https://www.googleapis.com/auth/content"
24819	//   ]
24820	// }
24821
24822}
24823
24824// method id "content.products.list":
24825
24826type ProductsListCall struct {
24827	s            *APIService
24828	merchantId   uint64
24829	urlParams_   gensupport.URLParams
24830	ifNoneMatch_ string
24831	ctx_         context.Context
24832	header_      http.Header
24833}
24834
24835// List: Lists the products in your Merchant Center account. The
24836// response might contain fewer items than specified by maxResults. Rely
24837// on nextPageToken to determine if there are more items to be
24838// requested.
24839//
24840// - merchantId: The ID of the account that contains the products. This
24841//   account cannot be a multi-client account.
24842func (r *ProductsService) List(merchantId uint64) *ProductsListCall {
24843	c := &ProductsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24844	c.merchantId = merchantId
24845	return c
24846}
24847
24848// IncludeInvalidInsertedItems sets the optional parameter
24849// "includeInvalidInsertedItems": Flag to include the invalid inserted
24850// items in the result of the list request. By default the invalid items
24851// are not shown (the default value is false).
24852func (c *ProductsListCall) IncludeInvalidInsertedItems(includeInvalidInsertedItems bool) *ProductsListCall {
24853	c.urlParams_.Set("includeInvalidInsertedItems", fmt.Sprint(includeInvalidInsertedItems))
24854	return c
24855}
24856
24857// MaxResults sets the optional parameter "maxResults": The maximum
24858// number of products to return in the response, used for paging.
24859func (c *ProductsListCall) MaxResults(maxResults int64) *ProductsListCall {
24860	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
24861	return c
24862}
24863
24864// PageToken sets the optional parameter "pageToken": The token returned
24865// by the previous request.
24866func (c *ProductsListCall) PageToken(pageToken string) *ProductsListCall {
24867	c.urlParams_.Set("pageToken", pageToken)
24868	return c
24869}
24870
24871// Fields allows partial responses to be retrieved. See
24872// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24873// for more information.
24874func (c *ProductsListCall) Fields(s ...googleapi.Field) *ProductsListCall {
24875	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24876	return c
24877}
24878
24879// IfNoneMatch sets the optional parameter which makes the operation
24880// fail if the object's ETag matches the given value. This is useful for
24881// getting updates only after the object has changed since the last
24882// request. Use googleapi.IsNotModified to check whether the response
24883// error from Do is the result of In-None-Match.
24884func (c *ProductsListCall) IfNoneMatch(entityTag string) *ProductsListCall {
24885	c.ifNoneMatch_ = entityTag
24886	return c
24887}
24888
24889// Context sets the context to be used in this call's Do method. Any
24890// pending HTTP request will be aborted if the provided context is
24891// canceled.
24892func (c *ProductsListCall) Context(ctx context.Context) *ProductsListCall {
24893	c.ctx_ = ctx
24894	return c
24895}
24896
24897// Header returns an http.Header that can be modified by the caller to
24898// add HTTP headers to the request.
24899func (c *ProductsListCall) Header() http.Header {
24900	if c.header_ == nil {
24901		c.header_ = make(http.Header)
24902	}
24903	return c.header_
24904}
24905
24906func (c *ProductsListCall) doRequest(alt string) (*http.Response, error) {
24907	reqHeaders := make(http.Header)
24908	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
24909	for k, v := range c.header_ {
24910		reqHeaders[k] = v
24911	}
24912	reqHeaders.Set("User-Agent", c.s.userAgent())
24913	if c.ifNoneMatch_ != "" {
24914		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
24915	}
24916	var body io.Reader = nil
24917	c.urlParams_.Set("alt", alt)
24918	c.urlParams_.Set("prettyPrint", "false")
24919	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products")
24920	urls += "?" + c.urlParams_.Encode()
24921	req, err := http.NewRequest("GET", urls, body)
24922	if err != nil {
24923		return nil, err
24924	}
24925	req.Header = reqHeaders
24926	googleapi.Expand(req.URL, map[string]string{
24927		"merchantId": strconv.FormatUint(c.merchantId, 10),
24928	})
24929	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24930}
24931
24932// Do executes the "content.products.list" call.
24933// Exactly one of *ProductsListResponse or error will be non-nil. Any
24934// non-2xx status code is an error. Response headers are in either
24935// *ProductsListResponse.ServerResponse.Header or (if a response was
24936// returned at all) in error.(*googleapi.Error).Header. Use
24937// googleapi.IsNotModified to check whether the returned error was
24938// because http.StatusNotModified was returned.
24939func (c *ProductsListCall) Do(opts ...googleapi.CallOption) (*ProductsListResponse, error) {
24940	gensupport.SetOptions(c.urlParams_, opts...)
24941	res, err := c.doRequest("json")
24942	if res != nil && res.StatusCode == http.StatusNotModified {
24943		if res.Body != nil {
24944			res.Body.Close()
24945		}
24946		return nil, &googleapi.Error{
24947			Code:   res.StatusCode,
24948			Header: res.Header,
24949		}
24950	}
24951	if err != nil {
24952		return nil, err
24953	}
24954	defer googleapi.CloseBody(res)
24955	if err := googleapi.CheckResponse(res); err != nil {
24956		return nil, err
24957	}
24958	ret := &ProductsListResponse{
24959		ServerResponse: googleapi.ServerResponse{
24960			Header:         res.Header,
24961			HTTPStatusCode: res.StatusCode,
24962		},
24963	}
24964	target := &ret
24965	if err := gensupport.DecodeResponse(target, res); err != nil {
24966		return nil, err
24967	}
24968	return ret, nil
24969	// {
24970	//   "description": "Lists the products in your Merchant Center account. The response might contain fewer items than specified by maxResults. Rely on nextPageToken to determine if there are more items to be requested.",
24971	//   "flatPath": "{merchantId}/products",
24972	//   "httpMethod": "GET",
24973	//   "id": "content.products.list",
24974	//   "parameterOrder": [
24975	//     "merchantId"
24976	//   ],
24977	//   "parameters": {
24978	//     "includeInvalidInsertedItems": {
24979	//       "description": "Flag to include the invalid inserted items in the result of the list request. By default the invalid items are not shown (the default value is false).",
24980	//       "location": "query",
24981	//       "type": "boolean"
24982	//     },
24983	//     "maxResults": {
24984	//       "description": "The maximum number of products to return in the response, used for paging.",
24985	//       "format": "uint32",
24986	//       "location": "query",
24987	//       "type": "integer"
24988	//     },
24989	//     "merchantId": {
24990	//       "description": "The ID of the account that contains the products. This account cannot be a multi-client account.",
24991	//       "format": "uint64",
24992	//       "location": "path",
24993	//       "required": true,
24994	//       "type": "string"
24995	//     },
24996	//     "pageToken": {
24997	//       "description": "The token returned by the previous request.",
24998	//       "location": "query",
24999	//       "type": "string"
25000	//     }
25001	//   },
25002	//   "path": "{merchantId}/products",
25003	//   "response": {
25004	//     "$ref": "ProductsListResponse"
25005	//   },
25006	//   "scopes": [
25007	//     "https://www.googleapis.com/auth/content"
25008	//   ]
25009	// }
25010
25011}
25012
25013// Pages invokes f for each page of results.
25014// A non-nil error returned from f will halt the iteration.
25015// The provided context supersedes any context provided to the Context method.
25016func (c *ProductsListCall) Pages(ctx context.Context, f func(*ProductsListResponse) error) error {
25017	c.ctx_ = ctx
25018	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
25019	for {
25020		x, err := c.Do()
25021		if err != nil {
25022			return err
25023		}
25024		if err := f(x); err != nil {
25025			return err
25026		}
25027		if x.NextPageToken == "" {
25028			return nil
25029		}
25030		c.PageToken(x.NextPageToken)
25031	}
25032}
25033
25034// method id "content.productstatuses.custombatch":
25035
25036type ProductstatusesCustombatchCall struct {
25037	s                                 *APIService
25038	productstatusescustombatchrequest *ProductstatusesCustomBatchRequest
25039	urlParams_                        gensupport.URLParams
25040	ctx_                              context.Context
25041	header_                           http.Header
25042}
25043
25044// Custombatch: Gets the statuses of multiple products in a single
25045// request.
25046func (r *ProductstatusesService) Custombatch(productstatusescustombatchrequest *ProductstatusesCustomBatchRequest) *ProductstatusesCustombatchCall {
25047	c := &ProductstatusesCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25048	c.productstatusescustombatchrequest = productstatusescustombatchrequest
25049	return c
25050}
25051
25052// IncludeAttributes sets the optional parameter "includeAttributes":
25053// Flag to include full product data in the results of this request. The
25054// default value is false.
25055func (c *ProductstatusesCustombatchCall) IncludeAttributes(includeAttributes bool) *ProductstatusesCustombatchCall {
25056	c.urlParams_.Set("includeAttributes", fmt.Sprint(includeAttributes))
25057	return c
25058}
25059
25060// Fields allows partial responses to be retrieved. See
25061// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25062// for more information.
25063func (c *ProductstatusesCustombatchCall) Fields(s ...googleapi.Field) *ProductstatusesCustombatchCall {
25064	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25065	return c
25066}
25067
25068// Context sets the context to be used in this call's Do method. Any
25069// pending HTTP request will be aborted if the provided context is
25070// canceled.
25071func (c *ProductstatusesCustombatchCall) Context(ctx context.Context) *ProductstatusesCustombatchCall {
25072	c.ctx_ = ctx
25073	return c
25074}
25075
25076// Header returns an http.Header that can be modified by the caller to
25077// add HTTP headers to the request.
25078func (c *ProductstatusesCustombatchCall) Header() http.Header {
25079	if c.header_ == nil {
25080		c.header_ = make(http.Header)
25081	}
25082	return c.header_
25083}
25084
25085func (c *ProductstatusesCustombatchCall) doRequest(alt string) (*http.Response, error) {
25086	reqHeaders := make(http.Header)
25087	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
25088	for k, v := range c.header_ {
25089		reqHeaders[k] = v
25090	}
25091	reqHeaders.Set("User-Agent", c.s.userAgent())
25092	var body io.Reader = nil
25093	body, err := googleapi.WithoutDataWrapper.JSONReader(c.productstatusescustombatchrequest)
25094	if err != nil {
25095		return nil, err
25096	}
25097	reqHeaders.Set("Content-Type", "application/json")
25098	c.urlParams_.Set("alt", alt)
25099	c.urlParams_.Set("prettyPrint", "false")
25100	urls := googleapi.ResolveRelative(c.s.BasePath, "productstatuses/batch")
25101	urls += "?" + c.urlParams_.Encode()
25102	req, err := http.NewRequest("POST", urls, body)
25103	if err != nil {
25104		return nil, err
25105	}
25106	req.Header = reqHeaders
25107	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25108}
25109
25110// Do executes the "content.productstatuses.custombatch" call.
25111// Exactly one of *ProductstatusesCustomBatchResponse or error will be
25112// non-nil. Any non-2xx status code is an error. Response headers are in
25113// either *ProductstatusesCustomBatchResponse.ServerResponse.Header or
25114// (if a response was returned at all) in
25115// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
25116// whether the returned error was because http.StatusNotModified was
25117// returned.
25118func (c *ProductstatusesCustombatchCall) Do(opts ...googleapi.CallOption) (*ProductstatusesCustomBatchResponse, error) {
25119	gensupport.SetOptions(c.urlParams_, opts...)
25120	res, err := c.doRequest("json")
25121	if res != nil && res.StatusCode == http.StatusNotModified {
25122		if res.Body != nil {
25123			res.Body.Close()
25124		}
25125		return nil, &googleapi.Error{
25126			Code:   res.StatusCode,
25127			Header: res.Header,
25128		}
25129	}
25130	if err != nil {
25131		return nil, err
25132	}
25133	defer googleapi.CloseBody(res)
25134	if err := googleapi.CheckResponse(res); err != nil {
25135		return nil, err
25136	}
25137	ret := &ProductstatusesCustomBatchResponse{
25138		ServerResponse: googleapi.ServerResponse{
25139			Header:         res.Header,
25140			HTTPStatusCode: res.StatusCode,
25141		},
25142	}
25143	target := &ret
25144	if err := gensupport.DecodeResponse(target, res); err != nil {
25145		return nil, err
25146	}
25147	return ret, nil
25148	// {
25149	//   "description": "Gets the statuses of multiple products in a single request.",
25150	//   "flatPath": "productstatuses/batch",
25151	//   "httpMethod": "POST",
25152	//   "id": "content.productstatuses.custombatch",
25153	//   "parameterOrder": [],
25154	//   "parameters": {
25155	//     "includeAttributes": {
25156	//       "description": "Flag to include full product data in the results of this request. The default value is false.",
25157	//       "location": "query",
25158	//       "type": "boolean"
25159	//     }
25160	//   },
25161	//   "path": "productstatuses/batch",
25162	//   "request": {
25163	//     "$ref": "ProductstatusesCustomBatchRequest"
25164	//   },
25165	//   "response": {
25166	//     "$ref": "ProductstatusesCustomBatchResponse"
25167	//   },
25168	//   "scopes": [
25169	//     "https://www.googleapis.com/auth/content"
25170	//   ]
25171	// }
25172
25173}
25174
25175// method id "content.productstatuses.get":
25176
25177type ProductstatusesGetCall struct {
25178	s            *APIService
25179	merchantId   uint64
25180	productId    string
25181	urlParams_   gensupport.URLParams
25182	ifNoneMatch_ string
25183	ctx_         context.Context
25184	header_      http.Header
25185}
25186
25187// Get: Gets the status of a product from your Merchant Center account.
25188//
25189// - merchantId: The ID of the account that contains the product. This
25190//   account cannot be a multi-client account.
25191// - productId: The REST ID of the product.
25192func (r *ProductstatusesService) Get(merchantId uint64, productId string) *ProductstatusesGetCall {
25193	c := &ProductstatusesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25194	c.merchantId = merchantId
25195	c.productId = productId
25196	return c
25197}
25198
25199// Destinations sets the optional parameter "destinations": If set, only
25200// issues for the specified destinations are returned, otherwise only
25201// issues for the Shopping destination.
25202func (c *ProductstatusesGetCall) Destinations(destinations ...string) *ProductstatusesGetCall {
25203	c.urlParams_.SetMulti("destinations", append([]string{}, destinations...))
25204	return c
25205}
25206
25207// IncludeAttributes sets the optional parameter "includeAttributes":
25208// Flag to include full product data in the result of this get request.
25209// The default value is false.
25210func (c *ProductstatusesGetCall) IncludeAttributes(includeAttributes bool) *ProductstatusesGetCall {
25211	c.urlParams_.Set("includeAttributes", fmt.Sprint(includeAttributes))
25212	return c
25213}
25214
25215// Fields allows partial responses to be retrieved. See
25216// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25217// for more information.
25218func (c *ProductstatusesGetCall) Fields(s ...googleapi.Field) *ProductstatusesGetCall {
25219	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25220	return c
25221}
25222
25223// IfNoneMatch sets the optional parameter which makes the operation
25224// fail if the object's ETag matches the given value. This is useful for
25225// getting updates only after the object has changed since the last
25226// request. Use googleapi.IsNotModified to check whether the response
25227// error from Do is the result of In-None-Match.
25228func (c *ProductstatusesGetCall) IfNoneMatch(entityTag string) *ProductstatusesGetCall {
25229	c.ifNoneMatch_ = entityTag
25230	return c
25231}
25232
25233// Context sets the context to be used in this call's Do method. Any
25234// pending HTTP request will be aborted if the provided context is
25235// canceled.
25236func (c *ProductstatusesGetCall) Context(ctx context.Context) *ProductstatusesGetCall {
25237	c.ctx_ = ctx
25238	return c
25239}
25240
25241// Header returns an http.Header that can be modified by the caller to
25242// add HTTP headers to the request.
25243func (c *ProductstatusesGetCall) Header() http.Header {
25244	if c.header_ == nil {
25245		c.header_ = make(http.Header)
25246	}
25247	return c.header_
25248}
25249
25250func (c *ProductstatusesGetCall) doRequest(alt string) (*http.Response, error) {
25251	reqHeaders := make(http.Header)
25252	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
25253	for k, v := range c.header_ {
25254		reqHeaders[k] = v
25255	}
25256	reqHeaders.Set("User-Agent", c.s.userAgent())
25257	if c.ifNoneMatch_ != "" {
25258		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
25259	}
25260	var body io.Reader = nil
25261	c.urlParams_.Set("alt", alt)
25262	c.urlParams_.Set("prettyPrint", "false")
25263	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/productstatuses/{productId}")
25264	urls += "?" + c.urlParams_.Encode()
25265	req, err := http.NewRequest("GET", urls, body)
25266	if err != nil {
25267		return nil, err
25268	}
25269	req.Header = reqHeaders
25270	googleapi.Expand(req.URL, map[string]string{
25271		"merchantId": strconv.FormatUint(c.merchantId, 10),
25272		"productId":  c.productId,
25273	})
25274	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25275}
25276
25277// Do executes the "content.productstatuses.get" call.
25278// Exactly one of *ProductStatus or error will be non-nil. Any non-2xx
25279// status code is an error. Response headers are in either
25280// *ProductStatus.ServerResponse.Header or (if a response was returned
25281// at all) in error.(*googleapi.Error).Header. Use
25282// googleapi.IsNotModified to check whether the returned error was
25283// because http.StatusNotModified was returned.
25284func (c *ProductstatusesGetCall) Do(opts ...googleapi.CallOption) (*ProductStatus, error) {
25285	gensupport.SetOptions(c.urlParams_, opts...)
25286	res, err := c.doRequest("json")
25287	if res != nil && res.StatusCode == http.StatusNotModified {
25288		if res.Body != nil {
25289			res.Body.Close()
25290		}
25291		return nil, &googleapi.Error{
25292			Code:   res.StatusCode,
25293			Header: res.Header,
25294		}
25295	}
25296	if err != nil {
25297		return nil, err
25298	}
25299	defer googleapi.CloseBody(res)
25300	if err := googleapi.CheckResponse(res); err != nil {
25301		return nil, err
25302	}
25303	ret := &ProductStatus{
25304		ServerResponse: googleapi.ServerResponse{
25305			Header:         res.Header,
25306			HTTPStatusCode: res.StatusCode,
25307		},
25308	}
25309	target := &ret
25310	if err := gensupport.DecodeResponse(target, res); err != nil {
25311		return nil, err
25312	}
25313	return ret, nil
25314	// {
25315	//   "description": "Gets the status of a product from your Merchant Center account.",
25316	//   "flatPath": "{merchantId}/productstatuses/{productId}",
25317	//   "httpMethod": "GET",
25318	//   "id": "content.productstatuses.get",
25319	//   "parameterOrder": [
25320	//     "merchantId",
25321	//     "productId"
25322	//   ],
25323	//   "parameters": {
25324	//     "destinations": {
25325	//       "description": "If set, only issues for the specified destinations are returned, otherwise only issues for the Shopping destination.",
25326	//       "location": "query",
25327	//       "repeated": true,
25328	//       "type": "string"
25329	//     },
25330	//     "includeAttributes": {
25331	//       "description": "Flag to include full product data in the result of this get request. The default value is false.",
25332	//       "location": "query",
25333	//       "type": "boolean"
25334	//     },
25335	//     "merchantId": {
25336	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
25337	//       "format": "uint64",
25338	//       "location": "path",
25339	//       "required": true,
25340	//       "type": "string"
25341	//     },
25342	//     "productId": {
25343	//       "description": "The REST ID of the product.",
25344	//       "location": "path",
25345	//       "required": true,
25346	//       "type": "string"
25347	//     }
25348	//   },
25349	//   "path": "{merchantId}/productstatuses/{productId}",
25350	//   "response": {
25351	//     "$ref": "ProductStatus"
25352	//   },
25353	//   "scopes": [
25354	//     "https://www.googleapis.com/auth/content"
25355	//   ]
25356	// }
25357
25358}
25359
25360// method id "content.productstatuses.list":
25361
25362type ProductstatusesListCall struct {
25363	s            *APIService
25364	merchantId   uint64
25365	urlParams_   gensupport.URLParams
25366	ifNoneMatch_ string
25367	ctx_         context.Context
25368	header_      http.Header
25369}
25370
25371// List: Lists the statuses of the products in your Merchant Center
25372// account.
25373//
25374// - merchantId: The ID of the account that contains the products. This
25375//   account cannot be a multi-client account.
25376func (r *ProductstatusesService) List(merchantId uint64) *ProductstatusesListCall {
25377	c := &ProductstatusesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25378	c.merchantId = merchantId
25379	return c
25380}
25381
25382// Destinations sets the optional parameter "destinations": If set, only
25383// issues for the specified destinations are returned, otherwise only
25384// issues for the Shopping destination.
25385func (c *ProductstatusesListCall) Destinations(destinations ...string) *ProductstatusesListCall {
25386	c.urlParams_.SetMulti("destinations", append([]string{}, destinations...))
25387	return c
25388}
25389
25390// IncludeAttributes sets the optional parameter "includeAttributes":
25391// Flag to include full product data in the results of the list request.
25392// The default value is false.
25393func (c *ProductstatusesListCall) IncludeAttributes(includeAttributes bool) *ProductstatusesListCall {
25394	c.urlParams_.Set("includeAttributes", fmt.Sprint(includeAttributes))
25395	return c
25396}
25397
25398// IncludeInvalidInsertedItems sets the optional parameter
25399// "includeInvalidInsertedItems": Flag to include the invalid inserted
25400// items in the result of the list request. By default the invalid items
25401// are not shown (the default value is false).
25402func (c *ProductstatusesListCall) IncludeInvalidInsertedItems(includeInvalidInsertedItems bool) *ProductstatusesListCall {
25403	c.urlParams_.Set("includeInvalidInsertedItems", fmt.Sprint(includeInvalidInsertedItems))
25404	return c
25405}
25406
25407// MaxResults sets the optional parameter "maxResults": The maximum
25408// number of product statuses to return in the response, used for
25409// paging.
25410func (c *ProductstatusesListCall) MaxResults(maxResults int64) *ProductstatusesListCall {
25411	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
25412	return c
25413}
25414
25415// PageToken sets the optional parameter "pageToken": The token returned
25416// by the previous request.
25417func (c *ProductstatusesListCall) PageToken(pageToken string) *ProductstatusesListCall {
25418	c.urlParams_.Set("pageToken", pageToken)
25419	return c
25420}
25421
25422// Fields allows partial responses to be retrieved. See
25423// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25424// for more information.
25425func (c *ProductstatusesListCall) Fields(s ...googleapi.Field) *ProductstatusesListCall {
25426	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25427	return c
25428}
25429
25430// IfNoneMatch sets the optional parameter which makes the operation
25431// fail if the object's ETag matches the given value. This is useful for
25432// getting updates only after the object has changed since the last
25433// request. Use googleapi.IsNotModified to check whether the response
25434// error from Do is the result of In-None-Match.
25435func (c *ProductstatusesListCall) IfNoneMatch(entityTag string) *ProductstatusesListCall {
25436	c.ifNoneMatch_ = entityTag
25437	return c
25438}
25439
25440// Context sets the context to be used in this call's Do method. Any
25441// pending HTTP request will be aborted if the provided context is
25442// canceled.
25443func (c *ProductstatusesListCall) Context(ctx context.Context) *ProductstatusesListCall {
25444	c.ctx_ = ctx
25445	return c
25446}
25447
25448// Header returns an http.Header that can be modified by the caller to
25449// add HTTP headers to the request.
25450func (c *ProductstatusesListCall) Header() http.Header {
25451	if c.header_ == nil {
25452		c.header_ = make(http.Header)
25453	}
25454	return c.header_
25455}
25456
25457func (c *ProductstatusesListCall) doRequest(alt string) (*http.Response, error) {
25458	reqHeaders := make(http.Header)
25459	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
25460	for k, v := range c.header_ {
25461		reqHeaders[k] = v
25462	}
25463	reqHeaders.Set("User-Agent", c.s.userAgent())
25464	if c.ifNoneMatch_ != "" {
25465		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
25466	}
25467	var body io.Reader = nil
25468	c.urlParams_.Set("alt", alt)
25469	c.urlParams_.Set("prettyPrint", "false")
25470	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/productstatuses")
25471	urls += "?" + c.urlParams_.Encode()
25472	req, err := http.NewRequest("GET", urls, body)
25473	if err != nil {
25474		return nil, err
25475	}
25476	req.Header = reqHeaders
25477	googleapi.Expand(req.URL, map[string]string{
25478		"merchantId": strconv.FormatUint(c.merchantId, 10),
25479	})
25480	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25481}
25482
25483// Do executes the "content.productstatuses.list" call.
25484// Exactly one of *ProductstatusesListResponse or error will be non-nil.
25485// Any non-2xx status code is an error. Response headers are in either
25486// *ProductstatusesListResponse.ServerResponse.Header or (if a response
25487// was returned at all) in error.(*googleapi.Error).Header. Use
25488// googleapi.IsNotModified to check whether the returned error was
25489// because http.StatusNotModified was returned.
25490func (c *ProductstatusesListCall) Do(opts ...googleapi.CallOption) (*ProductstatusesListResponse, error) {
25491	gensupport.SetOptions(c.urlParams_, opts...)
25492	res, err := c.doRequest("json")
25493	if res != nil && res.StatusCode == http.StatusNotModified {
25494		if res.Body != nil {
25495			res.Body.Close()
25496		}
25497		return nil, &googleapi.Error{
25498			Code:   res.StatusCode,
25499			Header: res.Header,
25500		}
25501	}
25502	if err != nil {
25503		return nil, err
25504	}
25505	defer googleapi.CloseBody(res)
25506	if err := googleapi.CheckResponse(res); err != nil {
25507		return nil, err
25508	}
25509	ret := &ProductstatusesListResponse{
25510		ServerResponse: googleapi.ServerResponse{
25511			Header:         res.Header,
25512			HTTPStatusCode: res.StatusCode,
25513		},
25514	}
25515	target := &ret
25516	if err := gensupport.DecodeResponse(target, res); err != nil {
25517		return nil, err
25518	}
25519	return ret, nil
25520	// {
25521	//   "description": "Lists the statuses of the products in your Merchant Center account.",
25522	//   "flatPath": "{merchantId}/productstatuses",
25523	//   "httpMethod": "GET",
25524	//   "id": "content.productstatuses.list",
25525	//   "parameterOrder": [
25526	//     "merchantId"
25527	//   ],
25528	//   "parameters": {
25529	//     "destinations": {
25530	//       "description": "If set, only issues for the specified destinations are returned, otherwise only issues for the Shopping destination.",
25531	//       "location": "query",
25532	//       "repeated": true,
25533	//       "type": "string"
25534	//     },
25535	//     "includeAttributes": {
25536	//       "description": "Flag to include full product data in the results of the list request. The default value is false.",
25537	//       "location": "query",
25538	//       "type": "boolean"
25539	//     },
25540	//     "includeInvalidInsertedItems": {
25541	//       "description": "Flag to include the invalid inserted items in the result of the list request. By default the invalid items are not shown (the default value is false).",
25542	//       "location": "query",
25543	//       "type": "boolean"
25544	//     },
25545	//     "maxResults": {
25546	//       "description": "The maximum number of product statuses to return in the response, used for paging.",
25547	//       "format": "uint32",
25548	//       "location": "query",
25549	//       "type": "integer"
25550	//     },
25551	//     "merchantId": {
25552	//       "description": "The ID of the account that contains the products. This account cannot be a multi-client account.",
25553	//       "format": "uint64",
25554	//       "location": "path",
25555	//       "required": true,
25556	//       "type": "string"
25557	//     },
25558	//     "pageToken": {
25559	//       "description": "The token returned by the previous request.",
25560	//       "location": "query",
25561	//       "type": "string"
25562	//     }
25563	//   },
25564	//   "path": "{merchantId}/productstatuses",
25565	//   "response": {
25566	//     "$ref": "ProductstatusesListResponse"
25567	//   },
25568	//   "scopes": [
25569	//     "https://www.googleapis.com/auth/content"
25570	//   ]
25571	// }
25572
25573}
25574
25575// Pages invokes f for each page of results.
25576// A non-nil error returned from f will halt the iteration.
25577// The provided context supersedes any context provided to the Context method.
25578func (c *ProductstatusesListCall) Pages(ctx context.Context, f func(*ProductstatusesListResponse) error) error {
25579	c.ctx_ = ctx
25580	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
25581	for {
25582		x, err := c.Do()
25583		if err != nil {
25584			return err
25585		}
25586		if err := f(x); err != nil {
25587			return err
25588		}
25589		if x.NextPageToken == "" {
25590			return nil
25591		}
25592		c.PageToken(x.NextPageToken)
25593	}
25594}
25595
25596// method id "content.shippingsettings.custombatch":
25597
25598type ShippingsettingsCustombatchCall struct {
25599	s                                  *APIService
25600	shippingsettingscustombatchrequest *ShippingsettingsCustomBatchRequest
25601	urlParams_                         gensupport.URLParams
25602	ctx_                               context.Context
25603	header_                            http.Header
25604}
25605
25606// Custombatch: Retrieves and updates the shipping settings of multiple
25607// accounts in a single request.
25608func (r *ShippingsettingsService) Custombatch(shippingsettingscustombatchrequest *ShippingsettingsCustomBatchRequest) *ShippingsettingsCustombatchCall {
25609	c := &ShippingsettingsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25610	c.shippingsettingscustombatchrequest = shippingsettingscustombatchrequest
25611	return c
25612}
25613
25614// DryRun sets the optional parameter "dryRun": Flag to simulate a
25615// request like in a live environment. If set to true, dry-run mode
25616// checks the validity of the request and returns errors (if any).
25617func (c *ShippingsettingsCustombatchCall) DryRun(dryRun bool) *ShippingsettingsCustombatchCall {
25618	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
25619	return c
25620}
25621
25622// Fields allows partial responses to be retrieved. See
25623// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25624// for more information.
25625func (c *ShippingsettingsCustombatchCall) Fields(s ...googleapi.Field) *ShippingsettingsCustombatchCall {
25626	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25627	return c
25628}
25629
25630// Context sets the context to be used in this call's Do method. Any
25631// pending HTTP request will be aborted if the provided context is
25632// canceled.
25633func (c *ShippingsettingsCustombatchCall) Context(ctx context.Context) *ShippingsettingsCustombatchCall {
25634	c.ctx_ = ctx
25635	return c
25636}
25637
25638// Header returns an http.Header that can be modified by the caller to
25639// add HTTP headers to the request.
25640func (c *ShippingsettingsCustombatchCall) Header() http.Header {
25641	if c.header_ == nil {
25642		c.header_ = make(http.Header)
25643	}
25644	return c.header_
25645}
25646
25647func (c *ShippingsettingsCustombatchCall) doRequest(alt string) (*http.Response, error) {
25648	reqHeaders := make(http.Header)
25649	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
25650	for k, v := range c.header_ {
25651		reqHeaders[k] = v
25652	}
25653	reqHeaders.Set("User-Agent", c.s.userAgent())
25654	var body io.Reader = nil
25655	body, err := googleapi.WithoutDataWrapper.JSONReader(c.shippingsettingscustombatchrequest)
25656	if err != nil {
25657		return nil, err
25658	}
25659	reqHeaders.Set("Content-Type", "application/json")
25660	c.urlParams_.Set("alt", alt)
25661	c.urlParams_.Set("prettyPrint", "false")
25662	urls := googleapi.ResolveRelative(c.s.BasePath, "shippingsettings/batch")
25663	urls += "?" + c.urlParams_.Encode()
25664	req, err := http.NewRequest("POST", urls, body)
25665	if err != nil {
25666		return nil, err
25667	}
25668	req.Header = reqHeaders
25669	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25670}
25671
25672// Do executes the "content.shippingsettings.custombatch" call.
25673// Exactly one of *ShippingsettingsCustomBatchResponse or error will be
25674// non-nil. Any non-2xx status code is an error. Response headers are in
25675// either *ShippingsettingsCustomBatchResponse.ServerResponse.Header or
25676// (if a response was returned at all) in
25677// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
25678// whether the returned error was because http.StatusNotModified was
25679// returned.
25680func (c *ShippingsettingsCustombatchCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsCustomBatchResponse, error) {
25681	gensupport.SetOptions(c.urlParams_, opts...)
25682	res, err := c.doRequest("json")
25683	if res != nil && res.StatusCode == http.StatusNotModified {
25684		if res.Body != nil {
25685			res.Body.Close()
25686		}
25687		return nil, &googleapi.Error{
25688			Code:   res.StatusCode,
25689			Header: res.Header,
25690		}
25691	}
25692	if err != nil {
25693		return nil, err
25694	}
25695	defer googleapi.CloseBody(res)
25696	if err := googleapi.CheckResponse(res); err != nil {
25697		return nil, err
25698	}
25699	ret := &ShippingsettingsCustomBatchResponse{
25700		ServerResponse: googleapi.ServerResponse{
25701			Header:         res.Header,
25702			HTTPStatusCode: res.StatusCode,
25703		},
25704	}
25705	target := &ret
25706	if err := gensupport.DecodeResponse(target, res); err != nil {
25707		return nil, err
25708	}
25709	return ret, nil
25710	// {
25711	//   "description": "Retrieves and updates the shipping settings of multiple accounts in a single request.",
25712	//   "flatPath": "shippingsettings/batch",
25713	//   "httpMethod": "POST",
25714	//   "id": "content.shippingsettings.custombatch",
25715	//   "parameterOrder": [],
25716	//   "parameters": {
25717	//     "dryRun": {
25718	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
25719	//       "location": "query",
25720	//       "type": "boolean"
25721	//     }
25722	//   },
25723	//   "path": "shippingsettings/batch",
25724	//   "request": {
25725	//     "$ref": "ShippingsettingsCustomBatchRequest"
25726	//   },
25727	//   "response": {
25728	//     "$ref": "ShippingsettingsCustomBatchResponse"
25729	//   },
25730	//   "scopes": [
25731	//     "https://www.googleapis.com/auth/content"
25732	//   ]
25733	// }
25734
25735}
25736
25737// method id "content.shippingsettings.get":
25738
25739type ShippingsettingsGetCall struct {
25740	s            *APIService
25741	merchantId   uint64
25742	accountId    uint64
25743	urlParams_   gensupport.URLParams
25744	ifNoneMatch_ string
25745	ctx_         context.Context
25746	header_      http.Header
25747}
25748
25749// Get: Retrieves the shipping settings of the account.
25750//
25751// - accountId: The ID of the account for which to get/update shipping
25752//   settings.
25753// - merchantId: The ID of the managing account. If this parameter is
25754//   not the same as accountId, then this account must be a multi-client
25755//   account and `accountId` must be the ID of a sub-account of this
25756//   account.
25757func (r *ShippingsettingsService) Get(merchantId uint64, accountId uint64) *ShippingsettingsGetCall {
25758	c := &ShippingsettingsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25759	c.merchantId = merchantId
25760	c.accountId = accountId
25761	return c
25762}
25763
25764// Fields allows partial responses to be retrieved. See
25765// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25766// for more information.
25767func (c *ShippingsettingsGetCall) Fields(s ...googleapi.Field) *ShippingsettingsGetCall {
25768	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25769	return c
25770}
25771
25772// IfNoneMatch sets the optional parameter which makes the operation
25773// fail if the object's ETag matches the given value. This is useful for
25774// getting updates only after the object has changed since the last
25775// request. Use googleapi.IsNotModified to check whether the response
25776// error from Do is the result of In-None-Match.
25777func (c *ShippingsettingsGetCall) IfNoneMatch(entityTag string) *ShippingsettingsGetCall {
25778	c.ifNoneMatch_ = entityTag
25779	return c
25780}
25781
25782// Context sets the context to be used in this call's Do method. Any
25783// pending HTTP request will be aborted if the provided context is
25784// canceled.
25785func (c *ShippingsettingsGetCall) Context(ctx context.Context) *ShippingsettingsGetCall {
25786	c.ctx_ = ctx
25787	return c
25788}
25789
25790// Header returns an http.Header that can be modified by the caller to
25791// add HTTP headers to the request.
25792func (c *ShippingsettingsGetCall) Header() http.Header {
25793	if c.header_ == nil {
25794		c.header_ = make(http.Header)
25795	}
25796	return c.header_
25797}
25798
25799func (c *ShippingsettingsGetCall) doRequest(alt string) (*http.Response, error) {
25800	reqHeaders := make(http.Header)
25801	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
25802	for k, v := range c.header_ {
25803		reqHeaders[k] = v
25804	}
25805	reqHeaders.Set("User-Agent", c.s.userAgent())
25806	if c.ifNoneMatch_ != "" {
25807		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
25808	}
25809	var body io.Reader = nil
25810	c.urlParams_.Set("alt", alt)
25811	c.urlParams_.Set("prettyPrint", "false")
25812	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/shippingsettings/{accountId}")
25813	urls += "?" + c.urlParams_.Encode()
25814	req, err := http.NewRequest("GET", urls, body)
25815	if err != nil {
25816		return nil, err
25817	}
25818	req.Header = reqHeaders
25819	googleapi.Expand(req.URL, map[string]string{
25820		"merchantId": strconv.FormatUint(c.merchantId, 10),
25821		"accountId":  strconv.FormatUint(c.accountId, 10),
25822	})
25823	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25824}
25825
25826// Do executes the "content.shippingsettings.get" call.
25827// Exactly one of *ShippingSettings or error will be non-nil. Any
25828// non-2xx status code is an error. Response headers are in either
25829// *ShippingSettings.ServerResponse.Header or (if a response was
25830// returned at all) in error.(*googleapi.Error).Header. Use
25831// googleapi.IsNotModified to check whether the returned error was
25832// because http.StatusNotModified was returned.
25833func (c *ShippingsettingsGetCall) Do(opts ...googleapi.CallOption) (*ShippingSettings, error) {
25834	gensupport.SetOptions(c.urlParams_, opts...)
25835	res, err := c.doRequest("json")
25836	if res != nil && res.StatusCode == http.StatusNotModified {
25837		if res.Body != nil {
25838			res.Body.Close()
25839		}
25840		return nil, &googleapi.Error{
25841			Code:   res.StatusCode,
25842			Header: res.Header,
25843		}
25844	}
25845	if err != nil {
25846		return nil, err
25847	}
25848	defer googleapi.CloseBody(res)
25849	if err := googleapi.CheckResponse(res); err != nil {
25850		return nil, err
25851	}
25852	ret := &ShippingSettings{
25853		ServerResponse: googleapi.ServerResponse{
25854			Header:         res.Header,
25855			HTTPStatusCode: res.StatusCode,
25856		},
25857	}
25858	target := &ret
25859	if err := gensupport.DecodeResponse(target, res); err != nil {
25860		return nil, err
25861	}
25862	return ret, nil
25863	// {
25864	//   "description": "Retrieves the shipping settings of the account.",
25865	//   "flatPath": "{merchantId}/shippingsettings/{accountId}",
25866	//   "httpMethod": "GET",
25867	//   "id": "content.shippingsettings.get",
25868	//   "parameterOrder": [
25869	//     "merchantId",
25870	//     "accountId"
25871	//   ],
25872	//   "parameters": {
25873	//     "accountId": {
25874	//       "description": "The ID of the account for which to get/update shipping settings.",
25875	//       "format": "uint64",
25876	//       "location": "path",
25877	//       "required": true,
25878	//       "type": "string"
25879	//     },
25880	//     "merchantId": {
25881	//       "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.",
25882	//       "format": "uint64",
25883	//       "location": "path",
25884	//       "required": true,
25885	//       "type": "string"
25886	//     }
25887	//   },
25888	//   "path": "{merchantId}/shippingsettings/{accountId}",
25889	//   "response": {
25890	//     "$ref": "ShippingSettings"
25891	//   },
25892	//   "scopes": [
25893	//     "https://www.googleapis.com/auth/content"
25894	//   ]
25895	// }
25896
25897}
25898
25899// method id "content.shippingsettings.getsupportedcarriers":
25900
25901type ShippingsettingsGetsupportedcarriersCall struct {
25902	s            *APIService
25903	merchantId   uint64
25904	urlParams_   gensupport.URLParams
25905	ifNoneMatch_ string
25906	ctx_         context.Context
25907	header_      http.Header
25908}
25909
25910// Getsupportedcarriers: Retrieves supported carriers and carrier
25911// services for an account.
25912//
25913// - merchantId: The ID of the account for which to retrieve the
25914//   supported carriers.
25915func (r *ShippingsettingsService) Getsupportedcarriers(merchantId uint64) *ShippingsettingsGetsupportedcarriersCall {
25916	c := &ShippingsettingsGetsupportedcarriersCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25917	c.merchantId = merchantId
25918	return c
25919}
25920
25921// Fields allows partial responses to be retrieved. See
25922// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25923// for more information.
25924func (c *ShippingsettingsGetsupportedcarriersCall) Fields(s ...googleapi.Field) *ShippingsettingsGetsupportedcarriersCall {
25925	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25926	return c
25927}
25928
25929// IfNoneMatch sets the optional parameter which makes the operation
25930// fail if the object's ETag matches the given value. This is useful for
25931// getting updates only after the object has changed since the last
25932// request. Use googleapi.IsNotModified to check whether the response
25933// error from Do is the result of In-None-Match.
25934func (c *ShippingsettingsGetsupportedcarriersCall) IfNoneMatch(entityTag string) *ShippingsettingsGetsupportedcarriersCall {
25935	c.ifNoneMatch_ = entityTag
25936	return c
25937}
25938
25939// Context sets the context to be used in this call's Do method. Any
25940// pending HTTP request will be aborted if the provided context is
25941// canceled.
25942func (c *ShippingsettingsGetsupportedcarriersCall) Context(ctx context.Context) *ShippingsettingsGetsupportedcarriersCall {
25943	c.ctx_ = ctx
25944	return c
25945}
25946
25947// Header returns an http.Header that can be modified by the caller to
25948// add HTTP headers to the request.
25949func (c *ShippingsettingsGetsupportedcarriersCall) Header() http.Header {
25950	if c.header_ == nil {
25951		c.header_ = make(http.Header)
25952	}
25953	return c.header_
25954}
25955
25956func (c *ShippingsettingsGetsupportedcarriersCall) doRequest(alt string) (*http.Response, error) {
25957	reqHeaders := make(http.Header)
25958	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
25959	for k, v := range c.header_ {
25960		reqHeaders[k] = v
25961	}
25962	reqHeaders.Set("User-Agent", c.s.userAgent())
25963	if c.ifNoneMatch_ != "" {
25964		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
25965	}
25966	var body io.Reader = nil
25967	c.urlParams_.Set("alt", alt)
25968	c.urlParams_.Set("prettyPrint", "false")
25969	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/supportedCarriers")
25970	urls += "?" + c.urlParams_.Encode()
25971	req, err := http.NewRequest("GET", urls, body)
25972	if err != nil {
25973		return nil, err
25974	}
25975	req.Header = reqHeaders
25976	googleapi.Expand(req.URL, map[string]string{
25977		"merchantId": strconv.FormatUint(c.merchantId, 10),
25978	})
25979	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25980}
25981
25982// Do executes the "content.shippingsettings.getsupportedcarriers" call.
25983// Exactly one of *ShippingsettingsGetSupportedCarriersResponse or error
25984// will be non-nil. Any non-2xx status code is an error. Response
25985// headers are in either
25986// *ShippingsettingsGetSupportedCarriersResponse.ServerResponse.Header
25987// or (if a response was returned at all) in
25988// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
25989// whether the returned error was because http.StatusNotModified was
25990// returned.
25991func (c *ShippingsettingsGetsupportedcarriersCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsGetSupportedCarriersResponse, error) {
25992	gensupport.SetOptions(c.urlParams_, opts...)
25993	res, err := c.doRequest("json")
25994	if res != nil && res.StatusCode == http.StatusNotModified {
25995		if res.Body != nil {
25996			res.Body.Close()
25997		}
25998		return nil, &googleapi.Error{
25999			Code:   res.StatusCode,
26000			Header: res.Header,
26001		}
26002	}
26003	if err != nil {
26004		return nil, err
26005	}
26006	defer googleapi.CloseBody(res)
26007	if err := googleapi.CheckResponse(res); err != nil {
26008		return nil, err
26009	}
26010	ret := &ShippingsettingsGetSupportedCarriersResponse{
26011		ServerResponse: googleapi.ServerResponse{
26012			Header:         res.Header,
26013			HTTPStatusCode: res.StatusCode,
26014		},
26015	}
26016	target := &ret
26017	if err := gensupport.DecodeResponse(target, res); err != nil {
26018		return nil, err
26019	}
26020	return ret, nil
26021	// {
26022	//   "description": "Retrieves supported carriers and carrier services for an account.",
26023	//   "flatPath": "{merchantId}/supportedCarriers",
26024	//   "httpMethod": "GET",
26025	//   "id": "content.shippingsettings.getsupportedcarriers",
26026	//   "parameterOrder": [
26027	//     "merchantId"
26028	//   ],
26029	//   "parameters": {
26030	//     "merchantId": {
26031	//       "description": "The ID of the account for which to retrieve the supported carriers.",
26032	//       "format": "uint64",
26033	//       "location": "path",
26034	//       "required": true,
26035	//       "type": "string"
26036	//     }
26037	//   },
26038	//   "path": "{merchantId}/supportedCarriers",
26039	//   "response": {
26040	//     "$ref": "ShippingsettingsGetSupportedCarriersResponse"
26041	//   },
26042	//   "scopes": [
26043	//     "https://www.googleapis.com/auth/content"
26044	//   ]
26045	// }
26046
26047}
26048
26049// method id "content.shippingsettings.getsupportedholidays":
26050
26051type ShippingsettingsGetsupportedholidaysCall struct {
26052	s            *APIService
26053	merchantId   uint64
26054	urlParams_   gensupport.URLParams
26055	ifNoneMatch_ string
26056	ctx_         context.Context
26057	header_      http.Header
26058}
26059
26060// Getsupportedholidays: Retrieves supported holidays for an account.
26061//
26062// - merchantId: The ID of the account for which to retrieve the
26063//   supported holidays.
26064func (r *ShippingsettingsService) Getsupportedholidays(merchantId uint64) *ShippingsettingsGetsupportedholidaysCall {
26065	c := &ShippingsettingsGetsupportedholidaysCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26066	c.merchantId = merchantId
26067	return c
26068}
26069
26070// Fields allows partial responses to be retrieved. See
26071// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26072// for more information.
26073func (c *ShippingsettingsGetsupportedholidaysCall) Fields(s ...googleapi.Field) *ShippingsettingsGetsupportedholidaysCall {
26074	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26075	return c
26076}
26077
26078// IfNoneMatch sets the optional parameter which makes the operation
26079// fail if the object's ETag matches the given value. This is useful for
26080// getting updates only after the object has changed since the last
26081// request. Use googleapi.IsNotModified to check whether the response
26082// error from Do is the result of In-None-Match.
26083func (c *ShippingsettingsGetsupportedholidaysCall) IfNoneMatch(entityTag string) *ShippingsettingsGetsupportedholidaysCall {
26084	c.ifNoneMatch_ = entityTag
26085	return c
26086}
26087
26088// Context sets the context to be used in this call's Do method. Any
26089// pending HTTP request will be aborted if the provided context is
26090// canceled.
26091func (c *ShippingsettingsGetsupportedholidaysCall) Context(ctx context.Context) *ShippingsettingsGetsupportedholidaysCall {
26092	c.ctx_ = ctx
26093	return c
26094}
26095
26096// Header returns an http.Header that can be modified by the caller to
26097// add HTTP headers to the request.
26098func (c *ShippingsettingsGetsupportedholidaysCall) Header() http.Header {
26099	if c.header_ == nil {
26100		c.header_ = make(http.Header)
26101	}
26102	return c.header_
26103}
26104
26105func (c *ShippingsettingsGetsupportedholidaysCall) doRequest(alt string) (*http.Response, error) {
26106	reqHeaders := make(http.Header)
26107	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
26108	for k, v := range c.header_ {
26109		reqHeaders[k] = v
26110	}
26111	reqHeaders.Set("User-Agent", c.s.userAgent())
26112	if c.ifNoneMatch_ != "" {
26113		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
26114	}
26115	var body io.Reader = nil
26116	c.urlParams_.Set("alt", alt)
26117	c.urlParams_.Set("prettyPrint", "false")
26118	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/supportedHolidays")
26119	urls += "?" + c.urlParams_.Encode()
26120	req, err := http.NewRequest("GET", urls, body)
26121	if err != nil {
26122		return nil, err
26123	}
26124	req.Header = reqHeaders
26125	googleapi.Expand(req.URL, map[string]string{
26126		"merchantId": strconv.FormatUint(c.merchantId, 10),
26127	})
26128	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26129}
26130
26131// Do executes the "content.shippingsettings.getsupportedholidays" call.
26132// Exactly one of *ShippingsettingsGetSupportedHolidaysResponse or error
26133// will be non-nil. Any non-2xx status code is an error. Response
26134// headers are in either
26135// *ShippingsettingsGetSupportedHolidaysResponse.ServerResponse.Header
26136// or (if a response was returned at all) in
26137// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
26138// whether the returned error was because http.StatusNotModified was
26139// returned.
26140func (c *ShippingsettingsGetsupportedholidaysCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsGetSupportedHolidaysResponse, error) {
26141	gensupport.SetOptions(c.urlParams_, opts...)
26142	res, err := c.doRequest("json")
26143	if res != nil && res.StatusCode == http.StatusNotModified {
26144		if res.Body != nil {
26145			res.Body.Close()
26146		}
26147		return nil, &googleapi.Error{
26148			Code:   res.StatusCode,
26149			Header: res.Header,
26150		}
26151	}
26152	if err != nil {
26153		return nil, err
26154	}
26155	defer googleapi.CloseBody(res)
26156	if err := googleapi.CheckResponse(res); err != nil {
26157		return nil, err
26158	}
26159	ret := &ShippingsettingsGetSupportedHolidaysResponse{
26160		ServerResponse: googleapi.ServerResponse{
26161			Header:         res.Header,
26162			HTTPStatusCode: res.StatusCode,
26163		},
26164	}
26165	target := &ret
26166	if err := gensupport.DecodeResponse(target, res); err != nil {
26167		return nil, err
26168	}
26169	return ret, nil
26170	// {
26171	//   "description": "Retrieves supported holidays for an account.",
26172	//   "flatPath": "{merchantId}/supportedHolidays",
26173	//   "httpMethod": "GET",
26174	//   "id": "content.shippingsettings.getsupportedholidays",
26175	//   "parameterOrder": [
26176	//     "merchantId"
26177	//   ],
26178	//   "parameters": {
26179	//     "merchantId": {
26180	//       "description": "The ID of the account for which to retrieve the supported holidays.",
26181	//       "format": "uint64",
26182	//       "location": "path",
26183	//       "required": true,
26184	//       "type": "string"
26185	//     }
26186	//   },
26187	//   "path": "{merchantId}/supportedHolidays",
26188	//   "response": {
26189	//     "$ref": "ShippingsettingsGetSupportedHolidaysResponse"
26190	//   },
26191	//   "scopes": [
26192	//     "https://www.googleapis.com/auth/content"
26193	//   ]
26194	// }
26195
26196}
26197
26198// method id "content.shippingsettings.getsupportedpickupservices":
26199
26200type ShippingsettingsGetsupportedpickupservicesCall struct {
26201	s            *APIService
26202	merchantId   uint64
26203	urlParams_   gensupport.URLParams
26204	ifNoneMatch_ string
26205	ctx_         context.Context
26206	header_      http.Header
26207}
26208
26209// Getsupportedpickupservices: Retrieves supported pickup services for
26210// an account.
26211//
26212// - merchantId: The ID of the account for which to retrieve the
26213//   supported pickup services.
26214func (r *ShippingsettingsService) Getsupportedpickupservices(merchantId uint64) *ShippingsettingsGetsupportedpickupservicesCall {
26215	c := &ShippingsettingsGetsupportedpickupservicesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26216	c.merchantId = merchantId
26217	return c
26218}
26219
26220// Fields allows partial responses to be retrieved. See
26221// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26222// for more information.
26223func (c *ShippingsettingsGetsupportedpickupservicesCall) Fields(s ...googleapi.Field) *ShippingsettingsGetsupportedpickupservicesCall {
26224	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26225	return c
26226}
26227
26228// IfNoneMatch sets the optional parameter which makes the operation
26229// fail if the object's ETag matches the given value. This is useful for
26230// getting updates only after the object has changed since the last
26231// request. Use googleapi.IsNotModified to check whether the response
26232// error from Do is the result of In-None-Match.
26233func (c *ShippingsettingsGetsupportedpickupservicesCall) IfNoneMatch(entityTag string) *ShippingsettingsGetsupportedpickupservicesCall {
26234	c.ifNoneMatch_ = entityTag
26235	return c
26236}
26237
26238// Context sets the context to be used in this call's Do method. Any
26239// pending HTTP request will be aborted if the provided context is
26240// canceled.
26241func (c *ShippingsettingsGetsupportedpickupservicesCall) Context(ctx context.Context) *ShippingsettingsGetsupportedpickupservicesCall {
26242	c.ctx_ = ctx
26243	return c
26244}
26245
26246// Header returns an http.Header that can be modified by the caller to
26247// add HTTP headers to the request.
26248func (c *ShippingsettingsGetsupportedpickupservicesCall) Header() http.Header {
26249	if c.header_ == nil {
26250		c.header_ = make(http.Header)
26251	}
26252	return c.header_
26253}
26254
26255func (c *ShippingsettingsGetsupportedpickupservicesCall) doRequest(alt string) (*http.Response, error) {
26256	reqHeaders := make(http.Header)
26257	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
26258	for k, v := range c.header_ {
26259		reqHeaders[k] = v
26260	}
26261	reqHeaders.Set("User-Agent", c.s.userAgent())
26262	if c.ifNoneMatch_ != "" {
26263		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
26264	}
26265	var body io.Reader = nil
26266	c.urlParams_.Set("alt", alt)
26267	c.urlParams_.Set("prettyPrint", "false")
26268	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/supportedPickupServices")
26269	urls += "?" + c.urlParams_.Encode()
26270	req, err := http.NewRequest("GET", urls, body)
26271	if err != nil {
26272		return nil, err
26273	}
26274	req.Header = reqHeaders
26275	googleapi.Expand(req.URL, map[string]string{
26276		"merchantId": strconv.FormatUint(c.merchantId, 10),
26277	})
26278	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26279}
26280
26281// Do executes the "content.shippingsettings.getsupportedpickupservices" call.
26282// Exactly one of *ShippingsettingsGetSupportedPickupServicesResponse or
26283// error will be non-nil. Any non-2xx status code is an error. Response
26284// headers are in either
26285// *ShippingsettingsGetSupportedPickupServicesResponse.ServerResponse.Hea
26286// der or (if a response was returned at all) in
26287// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
26288// whether the returned error was because http.StatusNotModified was
26289// returned.
26290func (c *ShippingsettingsGetsupportedpickupservicesCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsGetSupportedPickupServicesResponse, error) {
26291	gensupport.SetOptions(c.urlParams_, opts...)
26292	res, err := c.doRequest("json")
26293	if res != nil && res.StatusCode == http.StatusNotModified {
26294		if res.Body != nil {
26295			res.Body.Close()
26296		}
26297		return nil, &googleapi.Error{
26298			Code:   res.StatusCode,
26299			Header: res.Header,
26300		}
26301	}
26302	if err != nil {
26303		return nil, err
26304	}
26305	defer googleapi.CloseBody(res)
26306	if err := googleapi.CheckResponse(res); err != nil {
26307		return nil, err
26308	}
26309	ret := &ShippingsettingsGetSupportedPickupServicesResponse{
26310		ServerResponse: googleapi.ServerResponse{
26311			Header:         res.Header,
26312			HTTPStatusCode: res.StatusCode,
26313		},
26314	}
26315	target := &ret
26316	if err := gensupport.DecodeResponse(target, res); err != nil {
26317		return nil, err
26318	}
26319	return ret, nil
26320	// {
26321	//   "description": "Retrieves supported pickup services for an account.",
26322	//   "flatPath": "{merchantId}/supportedPickupServices",
26323	//   "httpMethod": "GET",
26324	//   "id": "content.shippingsettings.getsupportedpickupservices",
26325	//   "parameterOrder": [
26326	//     "merchantId"
26327	//   ],
26328	//   "parameters": {
26329	//     "merchantId": {
26330	//       "description": "The ID of the account for which to retrieve the supported pickup services.",
26331	//       "format": "uint64",
26332	//       "location": "path",
26333	//       "required": true,
26334	//       "type": "string"
26335	//     }
26336	//   },
26337	//   "path": "{merchantId}/supportedPickupServices",
26338	//   "response": {
26339	//     "$ref": "ShippingsettingsGetSupportedPickupServicesResponse"
26340	//   },
26341	//   "scopes": [
26342	//     "https://www.googleapis.com/auth/content"
26343	//   ]
26344	// }
26345
26346}
26347
26348// method id "content.shippingsettings.list":
26349
26350type ShippingsettingsListCall struct {
26351	s            *APIService
26352	merchantId   uint64
26353	urlParams_   gensupport.URLParams
26354	ifNoneMatch_ string
26355	ctx_         context.Context
26356	header_      http.Header
26357}
26358
26359// List: Lists the shipping settings of the sub-accounts in your
26360// Merchant Center account.
26361//
26362// - merchantId: The ID of the managing account. This must be a
26363//   multi-client account.
26364func (r *ShippingsettingsService) List(merchantId uint64) *ShippingsettingsListCall {
26365	c := &ShippingsettingsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26366	c.merchantId = merchantId
26367	return c
26368}
26369
26370// MaxResults sets the optional parameter "maxResults": The maximum
26371// number of shipping settings to return in the response, used for
26372// paging.
26373func (c *ShippingsettingsListCall) MaxResults(maxResults int64) *ShippingsettingsListCall {
26374	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
26375	return c
26376}
26377
26378// PageToken sets the optional parameter "pageToken": The token returned
26379// by the previous request.
26380func (c *ShippingsettingsListCall) PageToken(pageToken string) *ShippingsettingsListCall {
26381	c.urlParams_.Set("pageToken", pageToken)
26382	return c
26383}
26384
26385// Fields allows partial responses to be retrieved. See
26386// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26387// for more information.
26388func (c *ShippingsettingsListCall) Fields(s ...googleapi.Field) *ShippingsettingsListCall {
26389	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26390	return c
26391}
26392
26393// IfNoneMatch sets the optional parameter which makes the operation
26394// fail if the object's ETag matches the given value. This is useful for
26395// getting updates only after the object has changed since the last
26396// request. Use googleapi.IsNotModified to check whether the response
26397// error from Do is the result of In-None-Match.
26398func (c *ShippingsettingsListCall) IfNoneMatch(entityTag string) *ShippingsettingsListCall {
26399	c.ifNoneMatch_ = entityTag
26400	return c
26401}
26402
26403// Context sets the context to be used in this call's Do method. Any
26404// pending HTTP request will be aborted if the provided context is
26405// canceled.
26406func (c *ShippingsettingsListCall) Context(ctx context.Context) *ShippingsettingsListCall {
26407	c.ctx_ = ctx
26408	return c
26409}
26410
26411// Header returns an http.Header that can be modified by the caller to
26412// add HTTP headers to the request.
26413func (c *ShippingsettingsListCall) Header() http.Header {
26414	if c.header_ == nil {
26415		c.header_ = make(http.Header)
26416	}
26417	return c.header_
26418}
26419
26420func (c *ShippingsettingsListCall) doRequest(alt string) (*http.Response, error) {
26421	reqHeaders := make(http.Header)
26422	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
26423	for k, v := range c.header_ {
26424		reqHeaders[k] = v
26425	}
26426	reqHeaders.Set("User-Agent", c.s.userAgent())
26427	if c.ifNoneMatch_ != "" {
26428		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
26429	}
26430	var body io.Reader = nil
26431	c.urlParams_.Set("alt", alt)
26432	c.urlParams_.Set("prettyPrint", "false")
26433	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/shippingsettings")
26434	urls += "?" + c.urlParams_.Encode()
26435	req, err := http.NewRequest("GET", urls, body)
26436	if err != nil {
26437		return nil, err
26438	}
26439	req.Header = reqHeaders
26440	googleapi.Expand(req.URL, map[string]string{
26441		"merchantId": strconv.FormatUint(c.merchantId, 10),
26442	})
26443	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26444}
26445
26446// Do executes the "content.shippingsettings.list" call.
26447// Exactly one of *ShippingsettingsListResponse or error will be
26448// non-nil. Any non-2xx status code is an error. Response headers are in
26449// either *ShippingsettingsListResponse.ServerResponse.Header or (if a
26450// response was returned at all) in error.(*googleapi.Error).Header. Use
26451// googleapi.IsNotModified to check whether the returned error was
26452// because http.StatusNotModified was returned.
26453func (c *ShippingsettingsListCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsListResponse, error) {
26454	gensupport.SetOptions(c.urlParams_, opts...)
26455	res, err := c.doRequest("json")
26456	if res != nil && res.StatusCode == http.StatusNotModified {
26457		if res.Body != nil {
26458			res.Body.Close()
26459		}
26460		return nil, &googleapi.Error{
26461			Code:   res.StatusCode,
26462			Header: res.Header,
26463		}
26464	}
26465	if err != nil {
26466		return nil, err
26467	}
26468	defer googleapi.CloseBody(res)
26469	if err := googleapi.CheckResponse(res); err != nil {
26470		return nil, err
26471	}
26472	ret := &ShippingsettingsListResponse{
26473		ServerResponse: googleapi.ServerResponse{
26474			Header:         res.Header,
26475			HTTPStatusCode: res.StatusCode,
26476		},
26477	}
26478	target := &ret
26479	if err := gensupport.DecodeResponse(target, res); err != nil {
26480		return nil, err
26481	}
26482	return ret, nil
26483	// {
26484	//   "description": "Lists the shipping settings of the sub-accounts in your Merchant Center account.",
26485	//   "flatPath": "{merchantId}/shippingsettings",
26486	//   "httpMethod": "GET",
26487	//   "id": "content.shippingsettings.list",
26488	//   "parameterOrder": [
26489	//     "merchantId"
26490	//   ],
26491	//   "parameters": {
26492	//     "maxResults": {
26493	//       "description": "The maximum number of shipping settings to return in the response, used for paging.",
26494	//       "format": "uint32",
26495	//       "location": "query",
26496	//       "type": "integer"
26497	//     },
26498	//     "merchantId": {
26499	//       "description": "The ID of the managing account. This must be a multi-client account.",
26500	//       "format": "uint64",
26501	//       "location": "path",
26502	//       "required": true,
26503	//       "type": "string"
26504	//     },
26505	//     "pageToken": {
26506	//       "description": "The token returned by the previous request.",
26507	//       "location": "query",
26508	//       "type": "string"
26509	//     }
26510	//   },
26511	//   "path": "{merchantId}/shippingsettings",
26512	//   "response": {
26513	//     "$ref": "ShippingsettingsListResponse"
26514	//   },
26515	//   "scopes": [
26516	//     "https://www.googleapis.com/auth/content"
26517	//   ]
26518	// }
26519
26520}
26521
26522// Pages invokes f for each page of results.
26523// A non-nil error returned from f will halt the iteration.
26524// The provided context supersedes any context provided to the Context method.
26525func (c *ShippingsettingsListCall) Pages(ctx context.Context, f func(*ShippingsettingsListResponse) error) error {
26526	c.ctx_ = ctx
26527	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
26528	for {
26529		x, err := c.Do()
26530		if err != nil {
26531			return err
26532		}
26533		if err := f(x); err != nil {
26534			return err
26535		}
26536		if x.NextPageToken == "" {
26537			return nil
26538		}
26539		c.PageToken(x.NextPageToken)
26540	}
26541}
26542
26543// method id "content.shippingsettings.update":
26544
26545type ShippingsettingsUpdateCall struct {
26546	s                *APIService
26547	merchantId       uint64
26548	accountId        uint64
26549	shippingsettings *ShippingSettings
26550	urlParams_       gensupport.URLParams
26551	ctx_             context.Context
26552	header_          http.Header
26553}
26554
26555// Update: Updates the shipping settings of the account. Any fields that
26556// are not provided are deleted from the resource.
26557//
26558// - accountId: The ID of the account for which to get/update shipping
26559//   settings.
26560// - merchantId: The ID of the managing account. If this parameter is
26561//   not the same as accountId, then this account must be a multi-client
26562//   account and `accountId` must be the ID of a sub-account of this
26563//   account.
26564func (r *ShippingsettingsService) Update(merchantId uint64, accountId uint64, shippingsettings *ShippingSettings) *ShippingsettingsUpdateCall {
26565	c := &ShippingsettingsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26566	c.merchantId = merchantId
26567	c.accountId = accountId
26568	c.shippingsettings = shippingsettings
26569	return c
26570}
26571
26572// DryRun sets the optional parameter "dryRun": Flag to simulate a
26573// request like in a live environment. If set to true, dry-run mode
26574// checks the validity of the request and returns errors (if any).
26575func (c *ShippingsettingsUpdateCall) DryRun(dryRun bool) *ShippingsettingsUpdateCall {
26576	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
26577	return c
26578}
26579
26580// Fields allows partial responses to be retrieved. See
26581// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26582// for more information.
26583func (c *ShippingsettingsUpdateCall) Fields(s ...googleapi.Field) *ShippingsettingsUpdateCall {
26584	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26585	return c
26586}
26587
26588// Context sets the context to be used in this call's Do method. Any
26589// pending HTTP request will be aborted if the provided context is
26590// canceled.
26591func (c *ShippingsettingsUpdateCall) Context(ctx context.Context) *ShippingsettingsUpdateCall {
26592	c.ctx_ = ctx
26593	return c
26594}
26595
26596// Header returns an http.Header that can be modified by the caller to
26597// add HTTP headers to the request.
26598func (c *ShippingsettingsUpdateCall) Header() http.Header {
26599	if c.header_ == nil {
26600		c.header_ = make(http.Header)
26601	}
26602	return c.header_
26603}
26604
26605func (c *ShippingsettingsUpdateCall) doRequest(alt string) (*http.Response, error) {
26606	reqHeaders := make(http.Header)
26607	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
26608	for k, v := range c.header_ {
26609		reqHeaders[k] = v
26610	}
26611	reqHeaders.Set("User-Agent", c.s.userAgent())
26612	var body io.Reader = nil
26613	body, err := googleapi.WithoutDataWrapper.JSONReader(c.shippingsettings)
26614	if err != nil {
26615		return nil, err
26616	}
26617	reqHeaders.Set("Content-Type", "application/json")
26618	c.urlParams_.Set("alt", alt)
26619	c.urlParams_.Set("prettyPrint", "false")
26620	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/shippingsettings/{accountId}")
26621	urls += "?" + c.urlParams_.Encode()
26622	req, err := http.NewRequest("PUT", urls, body)
26623	if err != nil {
26624		return nil, err
26625	}
26626	req.Header = reqHeaders
26627	googleapi.Expand(req.URL, map[string]string{
26628		"merchantId": strconv.FormatUint(c.merchantId, 10),
26629		"accountId":  strconv.FormatUint(c.accountId, 10),
26630	})
26631	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26632}
26633
26634// Do executes the "content.shippingsettings.update" call.
26635// Exactly one of *ShippingSettings or error will be non-nil. Any
26636// non-2xx status code is an error. Response headers are in either
26637// *ShippingSettings.ServerResponse.Header or (if a response was
26638// returned at all) in error.(*googleapi.Error).Header. Use
26639// googleapi.IsNotModified to check whether the returned error was
26640// because http.StatusNotModified was returned.
26641func (c *ShippingsettingsUpdateCall) Do(opts ...googleapi.CallOption) (*ShippingSettings, error) {
26642	gensupport.SetOptions(c.urlParams_, opts...)
26643	res, err := c.doRequest("json")
26644	if res != nil && res.StatusCode == http.StatusNotModified {
26645		if res.Body != nil {
26646			res.Body.Close()
26647		}
26648		return nil, &googleapi.Error{
26649			Code:   res.StatusCode,
26650			Header: res.Header,
26651		}
26652	}
26653	if err != nil {
26654		return nil, err
26655	}
26656	defer googleapi.CloseBody(res)
26657	if err := googleapi.CheckResponse(res); err != nil {
26658		return nil, err
26659	}
26660	ret := &ShippingSettings{
26661		ServerResponse: googleapi.ServerResponse{
26662			Header:         res.Header,
26663			HTTPStatusCode: res.StatusCode,
26664		},
26665	}
26666	target := &ret
26667	if err := gensupport.DecodeResponse(target, res); err != nil {
26668		return nil, err
26669	}
26670	return ret, nil
26671	// {
26672	//   "description": "Updates the shipping settings of the account. Any fields that are not provided are deleted from the resource.",
26673	//   "flatPath": "{merchantId}/shippingsettings/{accountId}",
26674	//   "httpMethod": "PUT",
26675	//   "id": "content.shippingsettings.update",
26676	//   "parameterOrder": [
26677	//     "merchantId",
26678	//     "accountId"
26679	//   ],
26680	//   "parameters": {
26681	//     "accountId": {
26682	//       "description": "The ID of the account for which to get/update shipping settings.",
26683	//       "format": "uint64",
26684	//       "location": "path",
26685	//       "required": true,
26686	//       "type": "string"
26687	//     },
26688	//     "dryRun": {
26689	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
26690	//       "location": "query",
26691	//       "type": "boolean"
26692	//     },
26693	//     "merchantId": {
26694	//       "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.",
26695	//       "format": "uint64",
26696	//       "location": "path",
26697	//       "required": true,
26698	//       "type": "string"
26699	//     }
26700	//   },
26701	//   "path": "{merchantId}/shippingsettings/{accountId}",
26702	//   "request": {
26703	//     "$ref": "ShippingSettings"
26704	//   },
26705	//   "response": {
26706	//     "$ref": "ShippingSettings"
26707	//   },
26708	//   "scopes": [
26709	//     "https://www.googleapis.com/auth/content"
26710	//   ]
26711	// }
26712
26713}
26714