1// Copyright 2021 Google LLC.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5// Code generated file. DO NOT EDIT.
6
7// Package content provides access to the Content API for Shopping.
8//
9// For product documentation, see: https://developers.google.com/shopping-content/v2/
10//
11// Creating a client
12//
13// Usage example:
14//
15//   import "google.golang.org/api/content/v2.1"
16//   ...
17//   ctx := context.Background()
18//   contentService, err := content.NewService(ctx)
19//
20// In this example, Google Application Default Credentials are used for authentication.
21//
22// For information on how to create and obtain Application Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials.
23//
24// Other authentication options
25//
26// To use an API key for authentication (note: some APIs do not support API keys), use option.WithAPIKey:
27//
28//   contentService, err := content.NewService(ctx, option.WithAPIKey("AIza..."))
29//
30// To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow), use option.WithTokenSource:
31//
32//   config := &oauth2.Config{...}
33//   // ...
34//   token, err := config.Exchange(ctx, ...)
35//   contentService, err := content.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))
36//
37// See https://godoc.org/google.golang.org/api/option/ for details on options.
38package content // import "google.golang.org/api/content/v2.1"
39
40import (
41	"bytes"
42	"context"
43	"encoding/json"
44	"errors"
45	"fmt"
46	"io"
47	"net/http"
48	"net/url"
49	"strconv"
50	"strings"
51
52	googleapi "google.golang.org/api/googleapi"
53	gensupport "google.golang.org/api/internal/gensupport"
54	option "google.golang.org/api/option"
55	internaloption "google.golang.org/api/option/internaloption"
56	htransport "google.golang.org/api/transport/http"
57)
58
59// Always reference these packages, just in case the auto-generated code
60// below doesn't.
61var _ = bytes.NewBuffer
62var _ = strconv.Itoa
63var _ = fmt.Sprintf
64var _ = json.NewDecoder
65var _ = io.Copy
66var _ = url.Parse
67var _ = gensupport.MarshalJSON
68var _ = googleapi.Version
69var _ = errors.New
70var _ = strings.Replace
71var _ = context.Canceled
72var _ = internaloption.WithDefaultEndpoint
73
74const apiId = "content:v2.1"
75const apiName = "content"
76const apiVersion = "v2.1"
77const basePath = "https://shoppingcontent.googleapis.com/content/v2.1/"
78const mtlsBasePath = "https://shoppingcontent.mtls.googleapis.com/content/v2.1/"
79
80// OAuth2 scopes used by this API.
81const (
82	// Manage your product listings and accounts for Google Shopping
83	ContentScope = "https://www.googleapis.com/auth/content"
84)
85
86// NewService creates a new APIService.
87func NewService(ctx context.Context, opts ...option.ClientOption) (*APIService, error) {
88	scopesOption := option.WithScopes(
89		"https://www.googleapis.com/auth/content",
90	)
91	// NOTE: prepend, so we don't override user-specified scopes.
92	opts = append([]option.ClientOption{scopesOption}, opts...)
93	opts = append(opts, internaloption.WithDefaultEndpoint(basePath))
94	opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath))
95	client, endpoint, err := htransport.NewClient(ctx, opts...)
96	if err != nil {
97		return nil, err
98	}
99	s, err := New(client)
100	if err != nil {
101		return nil, err
102	}
103	if endpoint != "" {
104		s.BasePath = endpoint
105	}
106	return s, nil
107}
108
109// New creates a new APIService. It uses the provided http.Client for requests.
110//
111// Deprecated: please use NewService instead.
112// To provide a custom HTTP client, use option.WithHTTPClient.
113// If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead.
114func New(client *http.Client) (*APIService, error) {
115	if client == nil {
116		return nil, errors.New("client is nil")
117	}
118	s := &APIService{client: client, BasePath: basePath}
119	s.Accounts = NewAccountsService(s)
120	s.Accountstatuses = NewAccountstatusesService(s)
121	s.Accounttax = NewAccounttaxService(s)
122	s.Buyongoogleprograms = NewBuyongoogleprogramsService(s)
123	s.Collections = NewCollectionsService(s)
124	s.Collectionstatuses = NewCollectionstatusesService(s)
125	s.Csses = NewCssesService(s)
126	s.Datafeeds = NewDatafeedsService(s)
127	s.Datafeedstatuses = NewDatafeedstatusesService(s)
128	s.Freelistingsprogram = NewFreelistingsprogramService(s)
129	s.Liasettings = NewLiasettingsService(s)
130	s.Localinventory = NewLocalinventoryService(s)
131	s.Orderinvoices = NewOrderinvoicesService(s)
132	s.Orderreports = NewOrderreportsService(s)
133	s.Orderreturns = NewOrderreturnsService(s)
134	s.Orders = NewOrdersService(s)
135	s.Ordertrackingsignals = NewOrdertrackingsignalsService(s)
136	s.Pos = NewPosService(s)
137	s.Products = NewProductsService(s)
138	s.Productstatuses = NewProductstatusesService(s)
139	s.Promotions = NewPromotionsService(s)
140	s.Pubsubnotificationsettings = NewPubsubnotificationsettingsService(s)
141	s.Regionalinventory = NewRegionalinventoryService(s)
142	s.Regions = NewRegionsService(s)
143	s.Reports = NewReportsService(s)
144	s.Repricingrules = NewRepricingrulesService(s)
145	s.Returnaddress = NewReturnaddressService(s)
146	s.Returnpolicy = NewReturnpolicyService(s)
147	s.Returnpolicyonline = NewReturnpolicyonlineService(s)
148	s.Settlementreports = NewSettlementreportsService(s)
149	s.Settlementtransactions = NewSettlementtransactionsService(s)
150	s.Shippingsettings = NewShippingsettingsService(s)
151	s.Shoppingadsprogram = NewShoppingadsprogramService(s)
152	return s, nil
153}
154
155type APIService struct {
156	client    *http.Client
157	BasePath  string // API endpoint base URL
158	UserAgent string // optional additional User-Agent fragment
159
160	Accounts *AccountsService
161
162	Accountstatuses *AccountstatusesService
163
164	Accounttax *AccounttaxService
165
166	Buyongoogleprograms *BuyongoogleprogramsService
167
168	Collections *CollectionsService
169
170	Collectionstatuses *CollectionstatusesService
171
172	Csses *CssesService
173
174	Datafeeds *DatafeedsService
175
176	Datafeedstatuses *DatafeedstatusesService
177
178	Freelistingsprogram *FreelistingsprogramService
179
180	Liasettings *LiasettingsService
181
182	Localinventory *LocalinventoryService
183
184	Orderinvoices *OrderinvoicesService
185
186	Orderreports *OrderreportsService
187
188	Orderreturns *OrderreturnsService
189
190	Orders *OrdersService
191
192	Ordertrackingsignals *OrdertrackingsignalsService
193
194	Pos *PosService
195
196	Products *ProductsService
197
198	Productstatuses *ProductstatusesService
199
200	Promotions *PromotionsService
201
202	Pubsubnotificationsettings *PubsubnotificationsettingsService
203
204	Regionalinventory *RegionalinventoryService
205
206	Regions *RegionsService
207
208	Reports *ReportsService
209
210	Repricingrules *RepricingrulesService
211
212	Returnaddress *ReturnaddressService
213
214	Returnpolicy *ReturnpolicyService
215
216	Returnpolicyonline *ReturnpolicyonlineService
217
218	Settlementreports *SettlementreportsService
219
220	Settlementtransactions *SettlementtransactionsService
221
222	Shippingsettings *ShippingsettingsService
223
224	Shoppingadsprogram *ShoppingadsprogramService
225}
226
227func (s *APIService) userAgent() string {
228	if s.UserAgent == "" {
229		return googleapi.UserAgent
230	}
231	return googleapi.UserAgent + " " + s.UserAgent
232}
233
234func NewAccountsService(s *APIService) *AccountsService {
235	rs := &AccountsService{s: s}
236	rs.Credentials = NewAccountsCredentialsService(s)
237	rs.Labels = NewAccountsLabelsService(s)
238	rs.Returncarrier = NewAccountsReturncarrierService(s)
239	return rs
240}
241
242type AccountsService struct {
243	s *APIService
244
245	Credentials *AccountsCredentialsService
246
247	Labels *AccountsLabelsService
248
249	Returncarrier *AccountsReturncarrierService
250}
251
252func NewAccountsCredentialsService(s *APIService) *AccountsCredentialsService {
253	rs := &AccountsCredentialsService{s: s}
254	return rs
255}
256
257type AccountsCredentialsService struct {
258	s *APIService
259}
260
261func NewAccountsLabelsService(s *APIService) *AccountsLabelsService {
262	rs := &AccountsLabelsService{s: s}
263	return rs
264}
265
266type AccountsLabelsService struct {
267	s *APIService
268}
269
270func NewAccountsReturncarrierService(s *APIService) *AccountsReturncarrierService {
271	rs := &AccountsReturncarrierService{s: s}
272	return rs
273}
274
275type AccountsReturncarrierService struct {
276	s *APIService
277}
278
279func NewAccountstatusesService(s *APIService) *AccountstatusesService {
280	rs := &AccountstatusesService{s: s}
281	return rs
282}
283
284type AccountstatusesService struct {
285	s *APIService
286}
287
288func NewAccounttaxService(s *APIService) *AccounttaxService {
289	rs := &AccounttaxService{s: s}
290	return rs
291}
292
293type AccounttaxService struct {
294	s *APIService
295}
296
297func NewBuyongoogleprogramsService(s *APIService) *BuyongoogleprogramsService {
298	rs := &BuyongoogleprogramsService{s: s}
299	return rs
300}
301
302type BuyongoogleprogramsService struct {
303	s *APIService
304}
305
306func NewCollectionsService(s *APIService) *CollectionsService {
307	rs := &CollectionsService{s: s}
308	return rs
309}
310
311type CollectionsService struct {
312	s *APIService
313}
314
315func NewCollectionstatusesService(s *APIService) *CollectionstatusesService {
316	rs := &CollectionstatusesService{s: s}
317	return rs
318}
319
320type CollectionstatusesService struct {
321	s *APIService
322}
323
324func NewCssesService(s *APIService) *CssesService {
325	rs := &CssesService{s: s}
326	return rs
327}
328
329type CssesService struct {
330	s *APIService
331}
332
333func NewDatafeedsService(s *APIService) *DatafeedsService {
334	rs := &DatafeedsService{s: s}
335	return rs
336}
337
338type DatafeedsService struct {
339	s *APIService
340}
341
342func NewDatafeedstatusesService(s *APIService) *DatafeedstatusesService {
343	rs := &DatafeedstatusesService{s: s}
344	return rs
345}
346
347type DatafeedstatusesService struct {
348	s *APIService
349}
350
351func NewFreelistingsprogramService(s *APIService) *FreelistingsprogramService {
352	rs := &FreelistingsprogramService{s: s}
353	return rs
354}
355
356type FreelistingsprogramService struct {
357	s *APIService
358}
359
360func NewLiasettingsService(s *APIService) *LiasettingsService {
361	rs := &LiasettingsService{s: s}
362	return rs
363}
364
365type LiasettingsService struct {
366	s *APIService
367}
368
369func NewLocalinventoryService(s *APIService) *LocalinventoryService {
370	rs := &LocalinventoryService{s: s}
371	return rs
372}
373
374type LocalinventoryService struct {
375	s *APIService
376}
377
378func NewOrderinvoicesService(s *APIService) *OrderinvoicesService {
379	rs := &OrderinvoicesService{s: s}
380	return rs
381}
382
383type OrderinvoicesService struct {
384	s *APIService
385}
386
387func NewOrderreportsService(s *APIService) *OrderreportsService {
388	rs := &OrderreportsService{s: s}
389	return rs
390}
391
392type OrderreportsService struct {
393	s *APIService
394}
395
396func NewOrderreturnsService(s *APIService) *OrderreturnsService {
397	rs := &OrderreturnsService{s: s}
398	rs.Labels = NewOrderreturnsLabelsService(s)
399	return rs
400}
401
402type OrderreturnsService struct {
403	s *APIService
404
405	Labels *OrderreturnsLabelsService
406}
407
408func NewOrderreturnsLabelsService(s *APIService) *OrderreturnsLabelsService {
409	rs := &OrderreturnsLabelsService{s: s}
410	return rs
411}
412
413type OrderreturnsLabelsService struct {
414	s *APIService
415}
416
417func NewOrdersService(s *APIService) *OrdersService {
418	rs := &OrdersService{s: s}
419	return rs
420}
421
422type OrdersService struct {
423	s *APIService
424}
425
426func NewOrdertrackingsignalsService(s *APIService) *OrdertrackingsignalsService {
427	rs := &OrdertrackingsignalsService{s: s}
428	return rs
429}
430
431type OrdertrackingsignalsService struct {
432	s *APIService
433}
434
435func NewPosService(s *APIService) *PosService {
436	rs := &PosService{s: s}
437	return rs
438}
439
440type PosService struct {
441	s *APIService
442}
443
444func NewProductsService(s *APIService) *ProductsService {
445	rs := &ProductsService{s: s}
446	return rs
447}
448
449type ProductsService struct {
450	s *APIService
451}
452
453func NewProductstatusesService(s *APIService) *ProductstatusesService {
454	rs := &ProductstatusesService{s: s}
455	rs.Repricingreports = NewProductstatusesRepricingreportsService(s)
456	return rs
457}
458
459type ProductstatusesService struct {
460	s *APIService
461
462	Repricingreports *ProductstatusesRepricingreportsService
463}
464
465func NewProductstatusesRepricingreportsService(s *APIService) *ProductstatusesRepricingreportsService {
466	rs := &ProductstatusesRepricingreportsService{s: s}
467	return rs
468}
469
470type ProductstatusesRepricingreportsService struct {
471	s *APIService
472}
473
474func NewPromotionsService(s *APIService) *PromotionsService {
475	rs := &PromotionsService{s: s}
476	return rs
477}
478
479type PromotionsService struct {
480	s *APIService
481}
482
483func NewPubsubnotificationsettingsService(s *APIService) *PubsubnotificationsettingsService {
484	rs := &PubsubnotificationsettingsService{s: s}
485	return rs
486}
487
488type PubsubnotificationsettingsService struct {
489	s *APIService
490}
491
492func NewRegionalinventoryService(s *APIService) *RegionalinventoryService {
493	rs := &RegionalinventoryService{s: s}
494	return rs
495}
496
497type RegionalinventoryService struct {
498	s *APIService
499}
500
501func NewRegionsService(s *APIService) *RegionsService {
502	rs := &RegionsService{s: s}
503	return rs
504}
505
506type RegionsService struct {
507	s *APIService
508}
509
510func NewReportsService(s *APIService) *ReportsService {
511	rs := &ReportsService{s: s}
512	return rs
513}
514
515type ReportsService struct {
516	s *APIService
517}
518
519func NewRepricingrulesService(s *APIService) *RepricingrulesService {
520	rs := &RepricingrulesService{s: s}
521	rs.Repricingreports = NewRepricingrulesRepricingreportsService(s)
522	return rs
523}
524
525type RepricingrulesService struct {
526	s *APIService
527
528	Repricingreports *RepricingrulesRepricingreportsService
529}
530
531func NewRepricingrulesRepricingreportsService(s *APIService) *RepricingrulesRepricingreportsService {
532	rs := &RepricingrulesRepricingreportsService{s: s}
533	return rs
534}
535
536type RepricingrulesRepricingreportsService struct {
537	s *APIService
538}
539
540func NewReturnaddressService(s *APIService) *ReturnaddressService {
541	rs := &ReturnaddressService{s: s}
542	return rs
543}
544
545type ReturnaddressService struct {
546	s *APIService
547}
548
549func NewReturnpolicyService(s *APIService) *ReturnpolicyService {
550	rs := &ReturnpolicyService{s: s}
551	return rs
552}
553
554type ReturnpolicyService struct {
555	s *APIService
556}
557
558func NewReturnpolicyonlineService(s *APIService) *ReturnpolicyonlineService {
559	rs := &ReturnpolicyonlineService{s: s}
560	return rs
561}
562
563type ReturnpolicyonlineService struct {
564	s *APIService
565}
566
567func NewSettlementreportsService(s *APIService) *SettlementreportsService {
568	rs := &SettlementreportsService{s: s}
569	return rs
570}
571
572type SettlementreportsService struct {
573	s *APIService
574}
575
576func NewSettlementtransactionsService(s *APIService) *SettlementtransactionsService {
577	rs := &SettlementtransactionsService{s: s}
578	return rs
579}
580
581type SettlementtransactionsService struct {
582	s *APIService
583}
584
585func NewShippingsettingsService(s *APIService) *ShippingsettingsService {
586	rs := &ShippingsettingsService{s: s}
587	return rs
588}
589
590type ShippingsettingsService struct {
591	s *APIService
592}
593
594func NewShoppingadsprogramService(s *APIService) *ShoppingadsprogramService {
595	rs := &ShoppingadsprogramService{s: s}
596	return rs
597}
598
599type ShoppingadsprogramService struct {
600	s *APIService
601}
602
603// Account: Account data. After the creation of a new account it may
604// take a few minutes before it is fully operational. The methods
605// delete, insert, and update require the admin role.
606type Account struct {
607	// AccountManagement: Output only. How the account is managed.
608	// Acceptable values are: - "manual" - "automatic"
609	AccountManagement string `json:"accountManagement,omitempty"`
610
611	// AdsLinks: Linked Ads accounts that are active or pending approval. To
612	// create a new link request, add a new link with status `active` to the
613	// list. It will remain in a `pending` state until approved or rejected
614	// either in the Ads interface or through the AdWords API. To delete an
615	// active link, or to cancel a link request, remove it from the list.
616	AdsLinks []*AccountAdsLink `json:"adsLinks,omitempty"`
617
618	// AdultContent: Indicates whether the merchant sells adult content.
619	AdultContent bool `json:"adultContent,omitempty"`
620
621	// AutomaticLabelIds: Automatically created label IDs that are assigned
622	// to the account by CSS Center.
623	AutomaticLabelIds googleapi.Uint64s `json:"automaticLabelIds,omitempty"`
624
625	// BusinessInformation: The business information of the account.
626	BusinessInformation *AccountBusinessInformation `json:"businessInformation,omitempty"`
627
628	// CssId: ID of CSS the account belongs to.
629	CssId uint64 `json:"cssId,omitempty,string"`
630
631	// GoogleMyBusinessLink: The GMB account which is linked or in the
632	// process of being linked with the Merchant Center account.
633	GoogleMyBusinessLink *AccountGoogleMyBusinessLink `json:"googleMyBusinessLink,omitempty"`
634
635	// Id: Required for update. Merchant Center account ID.
636	Id uint64 `json:"id,omitempty,string"`
637
638	// Kind: Identifies what kind of resource this is. Value: the fixed
639	// string "content#account".
640	Kind string `json:"kind,omitempty"`
641
642	// LabelIds: Manually created label IDs that are assigned to the account
643	// by CSS.
644	LabelIds googleapi.Uint64s `json:"labelIds,omitempty"`
645
646	// Name: Required. Display name for the account.
647	Name string `json:"name,omitempty"`
648
649	// SellerId: Client-specific, locally-unique, internal ID for the child
650	// account.
651	SellerId string `json:"sellerId,omitempty"`
652
653	// Users: Users with access to the account. Every account (except for
654	// subaccounts) must have at least one admin user.
655	Users []*AccountUser `json:"users,omitempty"`
656
657	// WebsiteUrl: The merchant's website.
658	WebsiteUrl string `json:"websiteUrl,omitempty"`
659
660	// YoutubeChannelLinks: Linked YouTube channels that are active or
661	// pending approval. To create a new link request, add a new link with
662	// status `active` to the list. It will remain in a `pending` state
663	// until approved or rejected in the YT Creator Studio interface. To
664	// delete an active link, or to cancel a link request, remove it from
665	// the list.
666	YoutubeChannelLinks []*AccountYouTubeChannelLink `json:"youtubeChannelLinks,omitempty"`
667
668	// ServerResponse contains the HTTP response code and headers from the
669	// server.
670	googleapi.ServerResponse `json:"-"`
671
672	// ForceSendFields is a list of field names (e.g. "AccountManagement")
673	// to unconditionally include in API requests. By default, fields with
674	// empty or default values are omitted from API requests. However, any
675	// non-pointer, non-interface field appearing in ForceSendFields will be
676	// sent to the server regardless of whether the field is empty or not.
677	// This may be used to include empty fields in Patch requests.
678	ForceSendFields []string `json:"-"`
679
680	// NullFields is a list of field names (e.g. "AccountManagement") to
681	// include in API requests with the JSON null value. By default, fields
682	// with empty values are omitted from API requests. However, any field
683	// with an empty value appearing in NullFields will be sent to the
684	// server as null. It is an error if a field in this list has a
685	// non-empty value. This may be used to include null fields in Patch
686	// requests.
687	NullFields []string `json:"-"`
688}
689
690func (s *Account) MarshalJSON() ([]byte, error) {
691	type NoMethod Account
692	raw := NoMethod(*s)
693	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
694}
695
696type AccountAddress struct {
697	// Country: CLDR country code (e.g. "US"). All MCA sub-accounts inherit
698	// the country of their parent MCA by default, however the country can
699	// be updated for individual sub-accounts.
700	Country string `json:"country,omitempty"`
701
702	// Locality: City, town or commune. May also include dependent
703	// localities or sublocalities (e.g. neighborhoods or suburbs).
704	Locality string `json:"locality,omitempty"`
705
706	// PostalCode: Postal code or ZIP (e.g. "94043").
707	PostalCode string `json:"postalCode,omitempty"`
708
709	// Region: Top-level administrative subdivision of the country. For
710	// example, a state like California ("CA") or a province like Quebec
711	// ("QC").
712	Region string `json:"region,omitempty"`
713
714	// StreetAddress: Street-level part of the address.
715	StreetAddress string `json:"streetAddress,omitempty"`
716
717	// ForceSendFields is a list of field names (e.g. "Country") to
718	// unconditionally include in API requests. By default, fields with
719	// empty or default values are omitted from API requests. However, any
720	// non-pointer, non-interface field appearing in ForceSendFields will be
721	// sent to the server regardless of whether the field is empty or not.
722	// This may be used to include empty fields in Patch requests.
723	ForceSendFields []string `json:"-"`
724
725	// NullFields is a list of field names (e.g. "Country") to include in
726	// API requests with the JSON null value. By default, fields with empty
727	// values are omitted from API requests. However, any field with an
728	// empty value appearing in NullFields will be sent to the server as
729	// null. It is an error if a field in this list has a non-empty value.
730	// This may be used to include null fields in Patch requests.
731	NullFields []string `json:"-"`
732}
733
734func (s *AccountAddress) MarshalJSON() ([]byte, error) {
735	type NoMethod AccountAddress
736	raw := NoMethod(*s)
737	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
738}
739
740type AccountAdsLink struct {
741	// AdsId: Customer ID of the Ads account.
742	AdsId uint64 `json:"adsId,omitempty,string"`
743
744	// Status: Status of the link between this Merchant Center account and
745	// the Ads account. Upon retrieval, it represents the actual status of
746	// the link and can be either `active` if it was approved in Google Ads
747	// or `pending` if it's pending approval. Upon insertion, it represents
748	// the *intended* status of the link. Re-uploading a link with status
749	// `active` when it's still pending or with status `pending` when it's
750	// already active will have no effect: the status will remain unchanged.
751	// Re-uploading a link with deprecated status `inactive` is equivalent
752	// to not submitting the link at all and will delete the link if it was
753	// active or cancel the link request if it was pending. Acceptable
754	// values are: - "active" - "pending"
755	Status string `json:"status,omitempty"`
756
757	// ForceSendFields is a list of field names (e.g. "AdsId") to
758	// unconditionally include in API requests. By default, fields with
759	// empty or default values are omitted from API requests. However, any
760	// non-pointer, non-interface field appearing in ForceSendFields will be
761	// sent to the server regardless of whether the field is empty or not.
762	// This may be used to include empty fields in Patch requests.
763	ForceSendFields []string `json:"-"`
764
765	// NullFields is a list of field names (e.g. "AdsId") to include in API
766	// requests with the JSON null value. By default, fields with empty
767	// values are omitted from API requests. However, any field with an
768	// empty value appearing in NullFields will be sent to the server as
769	// null. It is an error if a field in this list has a non-empty value.
770	// This may be used to include null fields in Patch requests.
771	NullFields []string `json:"-"`
772}
773
774func (s *AccountAdsLink) MarshalJSON() ([]byte, error) {
775	type NoMethod AccountAdsLink
776	raw := NoMethod(*s)
777	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
778}
779
780type AccountBusinessInformation struct {
781	// Address: The address of the business.
782	Address *AccountAddress `json:"address,omitempty"`
783
784	// CustomerService: The customer service information of the business.
785	CustomerService *AccountCustomerService `json:"customerService,omitempty"`
786
787	// KoreanBusinessRegistrationNumber: The 10-digit Korean business
788	// registration number
789	// (https://support.google.com/merchants/answer/9037766) separated with
790	// dashes in the format: XXX-XX-XXXXX. This field will only be updated
791	// if explicitly set.
792	KoreanBusinessRegistrationNumber string `json:"koreanBusinessRegistrationNumber,omitempty"`
793
794	// PhoneNumber: The phone number of the business. This can only be
795	// updated if a verified phone number is not already set. To replace a
796	// verified phone number use the `Accounts.requestphoneverification` and
797	// `Accounts.verifyphonenumber`.
798	PhoneNumber string `json:"phoneNumber,omitempty"`
799
800	// PhoneVerificationStatus: Verification status of the phone number of
801	// the business. This status is read only and can be updated only by
802	// successful phone verification. Acceptable values are: - "verified"
803	// - "unverified"
804	PhoneVerificationStatus string `json:"phoneVerificationStatus,omitempty"`
805
806	// ForceSendFields is a list of field names (e.g. "Address") to
807	// unconditionally include in API requests. By default, fields with
808	// empty or default values are omitted from API requests. However, any
809	// non-pointer, non-interface field appearing in ForceSendFields will be
810	// sent to the server regardless of whether the field is empty or not.
811	// This may be used to include empty fields in Patch requests.
812	ForceSendFields []string `json:"-"`
813
814	// NullFields is a list of field names (e.g. "Address") to include in
815	// API requests with the JSON null value. By default, fields with empty
816	// values are omitted from API requests. However, any field with an
817	// empty value appearing in NullFields will be sent to the server as
818	// null. It is an error if a field in this list has a non-empty value.
819	// This may be used to include null fields in Patch requests.
820	NullFields []string `json:"-"`
821}
822
823func (s *AccountBusinessInformation) MarshalJSON() ([]byte, error) {
824	type NoMethod AccountBusinessInformation
825	raw := NoMethod(*s)
826	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
827}
828
829// AccountCredentials: Credentials allowing Google to call a partner's
830// API on behalf of a merchant.
831type AccountCredentials struct {
832	// AccessToken: An OAuth access token.
833	AccessToken string `json:"accessToken,omitempty"`
834
835	// ExpiresIn: The amount of time, in seconds, after which the access
836	// token is no longer valid.
837	ExpiresIn int64 `json:"expiresIn,omitempty,string"`
838
839	// Purpose: Indicates to Google how Google should use these OAuth
840	// tokens.
841	//
842	// Possible values:
843	//   "ACCOUNT_CREDENTIALS_PURPOSE_UNSPECIFIED" - Unknown purpose.
844	//   "SHOPIFY_ORDER_MANAGEMENT" - The credentials allow Google to manage
845	// Shopify orders on behalf of the merchant (deprecated).
846	//   "SHOPIFY_INTEGRATION" - The credentials allow Google to manage
847	// Shopify integration on behalf of the merchant.
848	Purpose string `json:"purpose,omitempty"`
849
850	// ServerResponse contains the HTTP response code and headers from the
851	// server.
852	googleapi.ServerResponse `json:"-"`
853
854	// ForceSendFields is a list of field names (e.g. "AccessToken") to
855	// unconditionally include in API requests. By default, fields with
856	// empty or default values are omitted from API requests. However, any
857	// non-pointer, non-interface field appearing in ForceSendFields will be
858	// sent to the server regardless of whether the field is empty or not.
859	// This may be used to include empty fields in Patch requests.
860	ForceSendFields []string `json:"-"`
861
862	// NullFields is a list of field names (e.g. "AccessToken") to include
863	// in API requests with the JSON null value. By default, fields with
864	// empty values are omitted from API requests. However, any field with
865	// an empty value appearing in NullFields will be sent to the server as
866	// null. It is an error if a field in this list has a non-empty value.
867	// This may be used to include null fields in Patch requests.
868	NullFields []string `json:"-"`
869}
870
871func (s *AccountCredentials) MarshalJSON() ([]byte, error) {
872	type NoMethod AccountCredentials
873	raw := NoMethod(*s)
874	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
875}
876
877type AccountCustomerService struct {
878	// Email: Customer service email.
879	Email string `json:"email,omitempty"`
880
881	// PhoneNumber: Customer service phone number.
882	PhoneNumber string `json:"phoneNumber,omitempty"`
883
884	// Url: Customer service URL.
885	Url string `json:"url,omitempty"`
886
887	// ForceSendFields is a list of field names (e.g. "Email") to
888	// unconditionally include in API requests. By default, fields with
889	// empty or default values are omitted from API requests. However, any
890	// non-pointer, non-interface field appearing in ForceSendFields will be
891	// sent to the server regardless of whether the field is empty or not.
892	// This may be used to include empty fields in Patch requests.
893	ForceSendFields []string `json:"-"`
894
895	// NullFields is a list of field names (e.g. "Email") to include in API
896	// requests with the JSON null value. By default, fields with empty
897	// values are omitted from API requests. However, any field with an
898	// empty value appearing in NullFields will be sent to the server as
899	// null. It is an error if a field in this list has a non-empty value.
900	// This may be used to include null fields in Patch requests.
901	NullFields []string `json:"-"`
902}
903
904func (s *AccountCustomerService) MarshalJSON() ([]byte, error) {
905	type NoMethod AccountCustomerService
906	raw := NoMethod(*s)
907	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
908}
909
910type AccountGoogleMyBusinessLink struct {
911	// GmbAccountId: The ID of the GMB account. If this is provided, then
912	// `gmbEmail` is ignored. The value of this field should match the
913	// `accountId` used by the GMB API.
914	GmbAccountId string `json:"gmbAccountId,omitempty"`
915
916	// GmbEmail: The GMB email address of which a specific account within a
917	// GMB account. A sample account within a GMB account could be a
918	// business account with set of locations, managed under the GMB
919	// account.
920	GmbEmail string `json:"gmbEmail,omitempty"`
921
922	// Status: Status of the link between this Merchant Center account and
923	// the GMB account. Acceptable values are: - "active" - "pending"
924	Status string `json:"status,omitempty"`
925
926	// ForceSendFields is a list of field names (e.g. "GmbAccountId") to
927	// unconditionally include in API requests. By default, fields with
928	// empty or default values are omitted from API requests. However, any
929	// non-pointer, non-interface field appearing in ForceSendFields will be
930	// sent to the server regardless of whether the field is empty or not.
931	// This may be used to include empty fields in Patch requests.
932	ForceSendFields []string `json:"-"`
933
934	// NullFields is a list of field names (e.g. "GmbAccountId") to include
935	// in API requests with the JSON null value. By default, fields with
936	// empty values are omitted from API requests. However, any field with
937	// an empty value appearing in NullFields will be sent to the server as
938	// null. It is an error if a field in this list has a non-empty value.
939	// This may be used to include null fields in Patch requests.
940	NullFields []string `json:"-"`
941}
942
943func (s *AccountGoogleMyBusinessLink) MarshalJSON() ([]byte, error) {
944	type NoMethod AccountGoogleMyBusinessLink
945	raw := NoMethod(*s)
946	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
947}
948
949type AccountIdentifier struct {
950	// AggregatorId: The aggregator ID, set for aggregators and subaccounts
951	// (in that case, it represents the aggregator of the subaccount).
952	AggregatorId uint64 `json:"aggregatorId,omitempty,string"`
953
954	// MerchantId: The merchant account ID, set for individual accounts and
955	// subaccounts.
956	MerchantId uint64 `json:"merchantId,omitempty,string"`
957
958	// ForceSendFields is a list of field names (e.g. "AggregatorId") to
959	// unconditionally include in API requests. By default, fields with
960	// empty or default values are omitted from API requests. However, any
961	// non-pointer, non-interface field appearing in ForceSendFields will be
962	// sent to the server regardless of whether the field is empty or not.
963	// This may be used to include empty fields in Patch requests.
964	ForceSendFields []string `json:"-"`
965
966	// NullFields is a list of field names (e.g. "AggregatorId") to include
967	// in API requests with the JSON null value. By default, fields with
968	// empty values are omitted from API requests. However, any field with
969	// an empty value appearing in NullFields will be sent to the server as
970	// null. It is an error if a field in this list has a non-empty value.
971	// This may be used to include null fields in Patch requests.
972	NullFields []string `json:"-"`
973}
974
975func (s *AccountIdentifier) MarshalJSON() ([]byte, error) {
976	type NoMethod AccountIdentifier
977	raw := NoMethod(*s)
978	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
979}
980
981// AccountLabel: Label assigned by CSS domain or CSS group to one of its
982// sub-accounts.
983type AccountLabel struct {
984	// AccountId: Immutable. The ID of account this label belongs to.
985	AccountId int64 `json:"accountId,omitempty,string"`
986
987	// Description: The description of this label.
988	Description string `json:"description,omitempty"`
989
990	// LabelId: Output only. The ID of the label.
991	LabelId int64 `json:"labelId,omitempty,string"`
992
993	// LabelType: Output only. The type of this label.
994	//
995	// Possible values:
996	//   "LABEL_TYPE_UNSPECIFIED" - Unknown label type.
997	//   "MANUAL" - Indicates that the label was created manually.
998	//   "AUTOMATIC" - Indicates that the label was created automatically by
999	// CSS Center.
1000	LabelType string `json:"labelType,omitempty"`
1001
1002	// Name: The display name of this label.
1003	Name string `json:"name,omitempty"`
1004
1005	// ServerResponse contains the HTTP response code and headers from the
1006	// server.
1007	googleapi.ServerResponse `json:"-"`
1008
1009	// ForceSendFields is a list of field names (e.g. "AccountId") to
1010	// unconditionally include in API requests. By default, fields with
1011	// empty or default values are omitted from API requests. However, any
1012	// non-pointer, non-interface field appearing in ForceSendFields will be
1013	// sent to the server regardless of whether the field is empty or not.
1014	// This may be used to include empty fields in Patch requests.
1015	ForceSendFields []string `json:"-"`
1016
1017	// NullFields is a list of field names (e.g. "AccountId") to include in
1018	// API requests with the JSON null value. By default, fields with empty
1019	// values are omitted from API requests. However, any field with an
1020	// empty value appearing in NullFields will be sent to the server as
1021	// null. It is an error if a field in this list has a non-empty value.
1022	// This may be used to include null fields in Patch requests.
1023	NullFields []string `json:"-"`
1024}
1025
1026func (s *AccountLabel) MarshalJSON() ([]byte, error) {
1027	type NoMethod AccountLabel
1028	raw := NoMethod(*s)
1029	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1030}
1031
1032// AccountReturnCarrier:  The return carrier information. This service
1033// is designed for merchants enrolled in the Buy on Google program.
1034type AccountReturnCarrier struct {
1035	// CarrierAccountId: Output only. Immutable. The Google-provided unique
1036	// carrier ID, used to update the resource.
1037	CarrierAccountId int64 `json:"carrierAccountId,omitempty,string"`
1038
1039	// CarrierAccountName: Name of the carrier account.
1040	CarrierAccountName string `json:"carrierAccountName,omitempty"`
1041
1042	// CarrierAccountNumber: Number of the carrier account.
1043	CarrierAccountNumber string `json:"carrierAccountNumber,omitempty"`
1044
1045	// CarrierCode: The carrier code enum. Accepts the values FEDEX or UPS.
1046	//
1047	// Possible values:
1048	//   "CARRIER_CODE_UNSPECIFIED" - Carrier not specified
1049	//   "FEDEX" - FedEx carrier
1050	//   "UPS" - UPS carrier
1051	CarrierCode string `json:"carrierCode,omitempty"`
1052
1053	// ServerResponse contains the HTTP response code and headers from the
1054	// server.
1055	googleapi.ServerResponse `json:"-"`
1056
1057	// ForceSendFields is a list of field names (e.g. "CarrierAccountId") to
1058	// unconditionally include in API requests. By default, fields with
1059	// empty or default values are omitted from API requests. However, any
1060	// non-pointer, non-interface field appearing in ForceSendFields will be
1061	// sent to the server regardless of whether the field is empty or not.
1062	// This may be used to include empty fields in Patch requests.
1063	ForceSendFields []string `json:"-"`
1064
1065	// NullFields is a list of field names (e.g. "CarrierAccountId") to
1066	// include in API requests with the JSON null value. By default, fields
1067	// with empty values are omitted from API requests. However, any field
1068	// with an empty value appearing in NullFields will be sent to the
1069	// server as null. It is an error if a field in this list has a
1070	// non-empty value. This may be used to include null fields in Patch
1071	// requests.
1072	NullFields []string `json:"-"`
1073}
1074
1075func (s *AccountReturnCarrier) MarshalJSON() ([]byte, error) {
1076	type NoMethod AccountReturnCarrier
1077	raw := NoMethod(*s)
1078	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1079}
1080
1081// AccountStatus: The status of an account, i.e., information about its
1082// products, which is computed offline and not returned immediately at
1083// insertion time.
1084type AccountStatus struct {
1085	// AccountId: The ID of the account for which the status is reported.
1086	AccountId string `json:"accountId,omitempty"`
1087
1088	// AccountLevelIssues: A list of account level issues.
1089	AccountLevelIssues []*AccountStatusAccountLevelIssue `json:"accountLevelIssues,omitempty"`
1090
1091	// AccountManagement: How the account is managed. Acceptable values are:
1092	// - "manual" - "automatic"
1093	AccountManagement string `json:"accountManagement,omitempty"`
1094
1095	// Kind: Identifies what kind of resource this is. Value: the fixed
1096	// string "content#accountStatus"
1097	Kind string `json:"kind,omitempty"`
1098
1099	// Products: List of product-related data by channel, destination, and
1100	// country. Data in this field may be delayed by up to 30 minutes.
1101	Products []*AccountStatusProducts `json:"products,omitempty"`
1102
1103	// WebsiteClaimed: Whether the account's website is claimed or not.
1104	WebsiteClaimed bool `json:"websiteClaimed,omitempty"`
1105
1106	// ServerResponse contains the HTTP response code and headers from the
1107	// server.
1108	googleapi.ServerResponse `json:"-"`
1109
1110	// ForceSendFields is a list of field names (e.g. "AccountId") to
1111	// unconditionally include in API requests. By default, fields with
1112	// empty or default values are omitted from API requests. However, any
1113	// non-pointer, non-interface field appearing in ForceSendFields will be
1114	// sent to the server regardless of whether the field is empty or not.
1115	// This may be used to include empty fields in Patch requests.
1116	ForceSendFields []string `json:"-"`
1117
1118	// NullFields is a list of field names (e.g. "AccountId") to include in
1119	// API requests with the JSON null value. By default, fields with empty
1120	// values are omitted from API requests. However, any field with an
1121	// empty value appearing in NullFields will be sent to the server as
1122	// null. It is an error if a field in this list has a non-empty value.
1123	// This may be used to include null fields in Patch requests.
1124	NullFields []string `json:"-"`
1125}
1126
1127func (s *AccountStatus) MarshalJSON() ([]byte, error) {
1128	type NoMethod AccountStatus
1129	raw := NoMethod(*s)
1130	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1131}
1132
1133type AccountStatusAccountLevelIssue struct {
1134	// Country: Country for which this issue is reported.
1135	Country string `json:"country,omitempty"`
1136
1137	// Destination: The destination the issue applies to. If this field is
1138	// empty then the issue applies to all available destinations.
1139	Destination string `json:"destination,omitempty"`
1140
1141	// Detail: Additional details about the issue.
1142	Detail string `json:"detail,omitempty"`
1143
1144	// Documentation: The URL of a web page to help resolving this issue.
1145	Documentation string `json:"documentation,omitempty"`
1146
1147	// Id: Issue identifier.
1148	Id string `json:"id,omitempty"`
1149
1150	// Severity: Severity of the issue. Acceptable values are: -
1151	// "critical" - "error" - "suggestion"
1152	Severity string `json:"severity,omitempty"`
1153
1154	// Title: Short description of the issue.
1155	Title string `json:"title,omitempty"`
1156
1157	// ForceSendFields is a list of field names (e.g. "Country") to
1158	// unconditionally include in API requests. By default, fields with
1159	// empty or default values are omitted from API requests. However, any
1160	// non-pointer, non-interface field appearing in ForceSendFields will be
1161	// sent to the server regardless of whether the field is empty or not.
1162	// This may be used to include empty fields in Patch requests.
1163	ForceSendFields []string `json:"-"`
1164
1165	// NullFields is a list of field names (e.g. "Country") to include in
1166	// API requests with the JSON null value. By default, fields with empty
1167	// values are omitted from API requests. However, any field with an
1168	// empty value appearing in NullFields will be sent to the server as
1169	// null. It is an error if a field in this list has a non-empty value.
1170	// This may be used to include null fields in Patch requests.
1171	NullFields []string `json:"-"`
1172}
1173
1174func (s *AccountStatusAccountLevelIssue) MarshalJSON() ([]byte, error) {
1175	type NoMethod AccountStatusAccountLevelIssue
1176	raw := NoMethod(*s)
1177	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1178}
1179
1180type AccountStatusItemLevelIssue struct {
1181	// AttributeName: The attribute's name, if the issue is caused by a
1182	// single attribute.
1183	AttributeName string `json:"attributeName,omitempty"`
1184
1185	// Code: The error code of the issue.
1186	Code string `json:"code,omitempty"`
1187
1188	// Description: A short issue description in English.
1189	Description string `json:"description,omitempty"`
1190
1191	// Detail: A detailed issue description in English.
1192	Detail string `json:"detail,omitempty"`
1193
1194	// Documentation: The URL of a web page to help with resolving this
1195	// issue.
1196	Documentation string `json:"documentation,omitempty"`
1197
1198	// NumItems: Number of items with this issue.
1199	NumItems int64 `json:"numItems,omitempty,string"`
1200
1201	// Resolution: Whether the issue can be resolved by the merchant.
1202	Resolution string `json:"resolution,omitempty"`
1203
1204	// Servability: How this issue affects serving of the offer.
1205	Servability string `json:"servability,omitempty"`
1206
1207	// ForceSendFields is a list of field names (e.g. "AttributeName") to
1208	// unconditionally include in API requests. By default, fields with
1209	// empty or default values are omitted from API requests. However, any
1210	// non-pointer, non-interface field appearing in ForceSendFields will be
1211	// sent to the server regardless of whether the field is empty or not.
1212	// This may be used to include empty fields in Patch requests.
1213	ForceSendFields []string `json:"-"`
1214
1215	// NullFields is a list of field names (e.g. "AttributeName") to include
1216	// in API requests with the JSON null value. By default, fields with
1217	// empty values are omitted from API requests. However, any field with
1218	// an empty value appearing in NullFields will be sent to the server as
1219	// null. It is an error if a field in this list has a non-empty value.
1220	// This may be used to include null fields in Patch requests.
1221	NullFields []string `json:"-"`
1222}
1223
1224func (s *AccountStatusItemLevelIssue) MarshalJSON() ([]byte, error) {
1225	type NoMethod AccountStatusItemLevelIssue
1226	raw := NoMethod(*s)
1227	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1228}
1229
1230type AccountStatusProducts struct {
1231	// Channel: The channel the data applies to. Acceptable values are: -
1232	// "local" - "online"
1233	Channel string `json:"channel,omitempty"`
1234
1235	// Country: The country the data applies to.
1236	Country string `json:"country,omitempty"`
1237
1238	// Destination: The destination the data applies to.
1239	Destination string `json:"destination,omitempty"`
1240
1241	// ItemLevelIssues: List of item-level issues.
1242	ItemLevelIssues []*AccountStatusItemLevelIssue `json:"itemLevelIssues,omitempty"`
1243
1244	// Statistics: Aggregated product statistics.
1245	Statistics *AccountStatusStatistics `json:"statistics,omitempty"`
1246
1247	// ForceSendFields is a list of field names (e.g. "Channel") to
1248	// unconditionally include in API requests. By default, fields with
1249	// empty or default values are omitted from API requests. However, any
1250	// non-pointer, non-interface field appearing in ForceSendFields will be
1251	// sent to the server regardless of whether the field is empty or not.
1252	// This may be used to include empty fields in Patch requests.
1253	ForceSendFields []string `json:"-"`
1254
1255	// NullFields is a list of field names (e.g. "Channel") to include in
1256	// API requests with the JSON null value. By default, fields with empty
1257	// values are omitted from API requests. However, any field with an
1258	// empty value appearing in NullFields will be sent to the server as
1259	// null. It is an error if a field in this list has a non-empty value.
1260	// This may be used to include null fields in Patch requests.
1261	NullFields []string `json:"-"`
1262}
1263
1264func (s *AccountStatusProducts) MarshalJSON() ([]byte, error) {
1265	type NoMethod AccountStatusProducts
1266	raw := NoMethod(*s)
1267	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1268}
1269
1270type AccountStatusStatistics struct {
1271	// Active: Number of active offers.
1272	Active int64 `json:"active,omitempty,string"`
1273
1274	// Disapproved: Number of disapproved offers.
1275	Disapproved int64 `json:"disapproved,omitempty,string"`
1276
1277	// Expiring: Number of expiring offers.
1278	Expiring int64 `json:"expiring,omitempty,string"`
1279
1280	// Pending: Number of pending offers.
1281	Pending int64 `json:"pending,omitempty,string"`
1282
1283	// ForceSendFields is a list of field names (e.g. "Active") to
1284	// unconditionally include in API requests. By default, fields with
1285	// empty or default values are omitted from API requests. However, any
1286	// non-pointer, non-interface field appearing in ForceSendFields will be
1287	// sent to the server regardless of whether the field is empty or not.
1288	// This may be used to include empty fields in Patch requests.
1289	ForceSendFields []string `json:"-"`
1290
1291	// NullFields is a list of field names (e.g. "Active") to include in API
1292	// requests with the JSON null value. By default, fields with empty
1293	// values are omitted from API requests. However, any field with an
1294	// empty value appearing in NullFields will be sent to the server as
1295	// null. It is an error if a field in this list has a non-empty value.
1296	// This may be used to include null fields in Patch requests.
1297	NullFields []string `json:"-"`
1298}
1299
1300func (s *AccountStatusStatistics) MarshalJSON() ([]byte, error) {
1301	type NoMethod AccountStatusStatistics
1302	raw := NoMethod(*s)
1303	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1304}
1305
1306// AccountTax: The tax settings of a merchant account. All methods
1307// require the admin role.
1308type AccountTax struct {
1309	// AccountId: Required. The ID of the account to which these account tax
1310	// settings belong.
1311	AccountId uint64 `json:"accountId,omitempty,string"`
1312
1313	// Kind: Identifies what kind of resource this is. Value: the fixed
1314	// string "content#accountTax".
1315	Kind string `json:"kind,omitempty"`
1316
1317	// Rules: Tax rules. Updating the tax rules will enable US taxes (not
1318	// reversible). Defining no rules is equivalent to not charging tax at
1319	// all.
1320	Rules []*AccountTaxTaxRule `json:"rules,omitempty"`
1321
1322	// ServerResponse contains the HTTP response code and headers from the
1323	// server.
1324	googleapi.ServerResponse `json:"-"`
1325
1326	// ForceSendFields is a list of field names (e.g. "AccountId") to
1327	// unconditionally include in API requests. By default, fields with
1328	// empty or default values are omitted from API requests. However, any
1329	// non-pointer, non-interface field appearing in ForceSendFields will be
1330	// sent to the server regardless of whether the field is empty or not.
1331	// This may be used to include empty fields in Patch requests.
1332	ForceSendFields []string `json:"-"`
1333
1334	// NullFields is a list of field names (e.g. "AccountId") to include in
1335	// API requests with the JSON null value. By default, fields with empty
1336	// values are omitted from API requests. However, any field with an
1337	// empty value appearing in NullFields will be sent to the server as
1338	// null. It is an error if a field in this list has a non-empty value.
1339	// This may be used to include null fields in Patch requests.
1340	NullFields []string `json:"-"`
1341}
1342
1343func (s *AccountTax) MarshalJSON() ([]byte, error) {
1344	type NoMethod AccountTax
1345	raw := NoMethod(*s)
1346	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1347}
1348
1349// AccountTaxTaxRule: Tax calculation rule to apply in a state or
1350// province (USA only).
1351type AccountTaxTaxRule struct {
1352	// Country: Country code in which tax is applicable.
1353	Country string `json:"country,omitempty"`
1354
1355	// LocationId: Required. State (or province) is which the tax is
1356	// applicable, described by its location ID (also called criteria ID).
1357	LocationId uint64 `json:"locationId,omitempty,string"`
1358
1359	// RatePercent: Explicit tax rate in percent, represented as a floating
1360	// point number without the percentage character. Must not be negative.
1361	RatePercent string `json:"ratePercent,omitempty"`
1362
1363	// ShippingTaxed: If true, shipping charges are also taxed.
1364	ShippingTaxed bool `json:"shippingTaxed,omitempty"`
1365
1366	// UseGlobalRate: Whether the tax rate is taken from a global tax table
1367	// or specified explicitly.
1368	UseGlobalRate bool `json:"useGlobalRate,omitempty"`
1369
1370	// ForceSendFields is a list of field names (e.g. "Country") to
1371	// unconditionally include in API requests. By default, fields with
1372	// empty or default values are omitted from API requests. However, any
1373	// non-pointer, non-interface field appearing in ForceSendFields will be
1374	// sent to the server regardless of whether the field is empty or not.
1375	// This may be used to include empty fields in Patch requests.
1376	ForceSendFields []string `json:"-"`
1377
1378	// NullFields is a list of field names (e.g. "Country") to include in
1379	// API requests with the JSON null value. By default, fields with empty
1380	// values are omitted from API requests. However, any field with an
1381	// empty value appearing in NullFields will be sent to the server as
1382	// null. It is an error if a field in this list has a non-empty value.
1383	// This may be used to include null fields in Patch requests.
1384	NullFields []string `json:"-"`
1385}
1386
1387func (s *AccountTaxTaxRule) MarshalJSON() ([]byte, error) {
1388	type NoMethod AccountTaxTaxRule
1389	raw := NoMethod(*s)
1390	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1391}
1392
1393type AccountUser struct {
1394	// Admin: Whether user is an admin.
1395	Admin bool `json:"admin,omitempty"`
1396
1397	// EmailAddress: User's email address.
1398	EmailAddress string `json:"emailAddress,omitempty"`
1399
1400	// OrderManager: Whether user is an order manager.
1401	OrderManager bool `json:"orderManager,omitempty"`
1402
1403	// PaymentsAnalyst: Whether user can access payment statements.
1404	PaymentsAnalyst bool `json:"paymentsAnalyst,omitempty"`
1405
1406	// PaymentsManager: Whether user can manage payment settings.
1407	PaymentsManager bool `json:"paymentsManager,omitempty"`
1408
1409	// ForceSendFields is a list of field names (e.g. "Admin") to
1410	// unconditionally include in API requests. By default, fields with
1411	// empty or default values are omitted from API requests. However, any
1412	// non-pointer, non-interface field appearing in ForceSendFields will be
1413	// sent to the server regardless of whether the field is empty or not.
1414	// This may be used to include empty fields in Patch requests.
1415	ForceSendFields []string `json:"-"`
1416
1417	// NullFields is a list of field names (e.g. "Admin") to include in API
1418	// requests with the JSON null value. By default, fields with empty
1419	// values are omitted from API requests. However, any field with an
1420	// empty value appearing in NullFields will be sent to the server as
1421	// null. It is an error if a field in this list has a non-empty value.
1422	// This may be used to include null fields in Patch requests.
1423	NullFields []string `json:"-"`
1424}
1425
1426func (s *AccountUser) MarshalJSON() ([]byte, error) {
1427	type NoMethod AccountUser
1428	raw := NoMethod(*s)
1429	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1430}
1431
1432type AccountYouTubeChannelLink struct {
1433	// ChannelId: Channel ID.
1434	ChannelId string `json:"channelId,omitempty"`
1435
1436	// Status: Status of the link between this Merchant Center account and
1437	// the YouTube channel. Upon retrieval, it represents the actual status
1438	// of the link and can be either `active` if it was approved in YT
1439	// Creator Studio or `pending` if it's pending approval. Upon insertion,
1440	// it represents the *intended* status of the link. Re-uploading a link
1441	// with status `active` when it's still pending or with status `pending`
1442	// when it's already active will have no effect: the status will remain
1443	// unchanged. Re-uploading a link with deprecated status `inactive` is
1444	// equivalent to not submitting the link at all and will delete the link
1445	// if it was active or cancel the link request if it was pending.
1446	Status string `json:"status,omitempty"`
1447
1448	// ForceSendFields is a list of field names (e.g. "ChannelId") 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. "ChannelId") to include in
1457	// API 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 *AccountYouTubeChannelLink) MarshalJSON() ([]byte, error) {
1466	type NoMethod AccountYouTubeChannelLink
1467	raw := NoMethod(*s)
1468	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1469}
1470
1471type AccountsAuthInfoResponse struct {
1472	// AccountIdentifiers: The account identifiers corresponding to the
1473	// authenticated user. - For an individual account: only the merchant ID
1474	// is defined - For an aggregator: only the aggregator ID is defined -
1475	// For a subaccount of an MCA: both the merchant ID and the aggregator
1476	// ID are defined.
1477	AccountIdentifiers []*AccountIdentifier `json:"accountIdentifiers,omitempty"`
1478
1479	// Kind: Identifies what kind of resource this is. Value: the fixed
1480	// string "content#accountsAuthInfoResponse".
1481	Kind string `json:"kind,omitempty"`
1482
1483	// ServerResponse contains the HTTP response code and headers from the
1484	// server.
1485	googleapi.ServerResponse `json:"-"`
1486
1487	// ForceSendFields is a list of field names (e.g. "AccountIdentifiers")
1488	// to unconditionally include in API requests. By default, fields with
1489	// empty or default values are omitted from API requests. However, any
1490	// non-pointer, non-interface field appearing in ForceSendFields will be
1491	// sent to the server regardless of whether the field is empty or not.
1492	// This may be used to include empty fields in Patch requests.
1493	ForceSendFields []string `json:"-"`
1494
1495	// NullFields is a list of field names (e.g. "AccountIdentifiers") to
1496	// include in API requests with the JSON null value. By default, fields
1497	// with empty values are omitted from API requests. However, any field
1498	// with an empty value appearing in NullFields will be sent to the
1499	// server as null. It is an error if a field in this list has a
1500	// non-empty value. This may be used to include null fields in Patch
1501	// requests.
1502	NullFields []string `json:"-"`
1503}
1504
1505func (s *AccountsAuthInfoResponse) MarshalJSON() ([]byte, error) {
1506	type NoMethod AccountsAuthInfoResponse
1507	raw := NoMethod(*s)
1508	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1509}
1510
1511type AccountsClaimWebsiteResponse struct {
1512	// Kind: Identifies what kind of resource this is. Value: the fixed
1513	// string "content#accountsClaimWebsiteResponse".
1514	Kind string `json:"kind,omitempty"`
1515
1516	// ServerResponse contains the HTTP response code and headers from the
1517	// server.
1518	googleapi.ServerResponse `json:"-"`
1519
1520	// ForceSendFields is a list of field names (e.g. "Kind") to
1521	// unconditionally include in API requests. By default, fields with
1522	// empty or default values are omitted from API requests. However, any
1523	// non-pointer, non-interface field appearing in ForceSendFields will be
1524	// sent to the server regardless of whether the field is empty or not.
1525	// This may be used to include empty fields in Patch requests.
1526	ForceSendFields []string `json:"-"`
1527
1528	// NullFields is a list of field names (e.g. "Kind") to include in API
1529	// requests with the JSON null value. By default, fields with empty
1530	// values are omitted from API requests. However, any field with an
1531	// empty value appearing in NullFields will be sent to the server as
1532	// null. It is an error if a field in this list has a non-empty value.
1533	// This may be used to include null fields in Patch requests.
1534	NullFields []string `json:"-"`
1535}
1536
1537func (s *AccountsClaimWebsiteResponse) MarshalJSON() ([]byte, error) {
1538	type NoMethod AccountsClaimWebsiteResponse
1539	raw := NoMethod(*s)
1540	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1541}
1542
1543type AccountsCustomBatchRequest struct {
1544	// Entries: The request entries to be processed in the batch.
1545	Entries []*AccountsCustomBatchRequestEntry `json:"entries,omitempty"`
1546
1547	// ForceSendFields is a list of field names (e.g. "Entries") to
1548	// unconditionally include in API requests. By default, fields with
1549	// empty or default values are omitted from API requests. However, any
1550	// non-pointer, non-interface field appearing in ForceSendFields will be
1551	// sent to the server regardless of whether the field is empty or not.
1552	// This may be used to include empty fields in Patch requests.
1553	ForceSendFields []string `json:"-"`
1554
1555	// NullFields is a list of field names (e.g. "Entries") to include in
1556	// API requests with the JSON null value. By default, fields with empty
1557	// values are omitted from API requests. However, any field with an
1558	// empty value appearing in NullFields will be sent to the server as
1559	// null. It is an error if a field in this list has a non-empty value.
1560	// This may be used to include null fields in Patch requests.
1561	NullFields []string `json:"-"`
1562}
1563
1564func (s *AccountsCustomBatchRequest) MarshalJSON() ([]byte, error) {
1565	type NoMethod AccountsCustomBatchRequest
1566	raw := NoMethod(*s)
1567	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1568}
1569
1570// AccountsCustomBatchRequestEntry: A batch entry encoding a single
1571// non-batch accounts request.
1572type AccountsCustomBatchRequestEntry struct {
1573	// Account: The account to create or update. Only defined if the method
1574	// is `insert` or `update`.
1575	Account *Account `json:"account,omitempty"`
1576
1577	// AccountId: The ID of the targeted account. Only defined if the method
1578	// is not `insert`.
1579	AccountId uint64 `json:"accountId,omitempty,string"`
1580
1581	// BatchId: An entry ID, unique within the batch request.
1582	BatchId int64 `json:"batchId,omitempty"`
1583
1584	// Force: Whether the account should be deleted if the account has
1585	// offers. Only applicable if the method is `delete`.
1586	Force bool `json:"force,omitempty"`
1587
1588	// LabelIds: Label IDs for the 'updatelabels' request.
1589	LabelIds googleapi.Uint64s `json:"labelIds,omitempty"`
1590
1591	// LinkRequest: Details about the `link` request.
1592	LinkRequest *AccountsCustomBatchRequestEntryLinkRequest `json:"linkRequest,omitempty"`
1593
1594	// MerchantId: The ID of the managing account.
1595	MerchantId uint64 `json:"merchantId,omitempty,string"`
1596
1597	// Method: The method of the batch entry. Acceptable values are: -
1598	// "claimWebsite" - "delete" - "get" - "insert" - "link" -
1599	// "update"
1600	Method string `json:"method,omitempty"`
1601
1602	// Overwrite: Only applicable if the method is `claimwebsite`. Indicates
1603	// whether or not to take the claim from another account in case there
1604	// is a conflict.
1605	Overwrite bool `json:"overwrite,omitempty"`
1606
1607	// View: Controls which fields are visible. Only applicable if the
1608	// method is 'get'.
1609	View string `json:"view,omitempty"`
1610
1611	// ForceSendFields is a list of field names (e.g. "Account") to
1612	// unconditionally include in API requests. By default, fields with
1613	// empty or default values are omitted from API requests. However, any
1614	// non-pointer, non-interface field appearing in ForceSendFields will be
1615	// sent to the server regardless of whether the field is empty or not.
1616	// This may be used to include empty fields in Patch requests.
1617	ForceSendFields []string `json:"-"`
1618
1619	// NullFields is a list of field names (e.g. "Account") to include in
1620	// API requests with the JSON null value. By default, fields with empty
1621	// values are omitted from API requests. However, any field with an
1622	// empty value appearing in NullFields will be sent to the server as
1623	// null. It is an error if a field in this list has a non-empty value.
1624	// This may be used to include null fields in Patch requests.
1625	NullFields []string `json:"-"`
1626}
1627
1628func (s *AccountsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
1629	type NoMethod AccountsCustomBatchRequestEntry
1630	raw := NoMethod(*s)
1631	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1632}
1633
1634type AccountsCustomBatchRequestEntryLinkRequest struct {
1635	// Action: Action to perform for this link. The "request" action is
1636	// only available to select merchants. Acceptable values are: -
1637	// "approve" - "remove" - "request"
1638	Action string `json:"action,omitempty"`
1639
1640	// LinkType: Type of the link between the two accounts. Acceptable
1641	// values are: - "channelPartner" - "eCommercePlatform" -
1642	// "paymentServiceProvider"
1643	LinkType string `json:"linkType,omitempty"`
1644
1645	// LinkedAccountId: The ID of the linked account.
1646	LinkedAccountId string `json:"linkedAccountId,omitempty"`
1647
1648	// Services: Provided services. Acceptable values are: -
1649	// "shoppingAdsProductManagement" -
1650	// "shoppingActionsProductManagement" -
1651	// "shoppingActionsOrderManagement" - "paymentProcessing"
1652	Services []string `json:"services,omitempty"`
1653
1654	// ForceSendFields is a list of field names (e.g. "Action") 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. "Action") to include in API
1663	// 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 *AccountsCustomBatchRequestEntryLinkRequest) MarshalJSON() ([]byte, error) {
1672	type NoMethod AccountsCustomBatchRequestEntryLinkRequest
1673	raw := NoMethod(*s)
1674	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1675}
1676
1677type AccountsCustomBatchResponse struct {
1678	// Entries: The result of the execution of the batch requests.
1679	Entries []*AccountsCustomBatchResponseEntry `json:"entries,omitempty"`
1680
1681	// Kind: Identifies what kind of resource this is. Value: the fixed
1682	// string "content#accountsCustomBatchResponse".
1683	Kind string `json:"kind,omitempty"`
1684
1685	// ServerResponse contains the HTTP response code and headers from the
1686	// server.
1687	googleapi.ServerResponse `json:"-"`
1688
1689	// ForceSendFields is a list of field names (e.g. "Entries") to
1690	// unconditionally include in API requests. By default, fields with
1691	// empty or default values are omitted from API requests. However, any
1692	// non-pointer, non-interface field appearing in ForceSendFields will be
1693	// sent to the server regardless of whether the field is empty or not.
1694	// This may be used to include empty fields in Patch requests.
1695	ForceSendFields []string `json:"-"`
1696
1697	// NullFields is a list of field names (e.g. "Entries") to include in
1698	// API requests with the JSON null value. By default, fields with empty
1699	// values are omitted from API requests. However, any field with an
1700	// empty value appearing in NullFields will be sent to the server as
1701	// null. It is an error if a field in this list has a non-empty value.
1702	// This may be used to include null fields in Patch requests.
1703	NullFields []string `json:"-"`
1704}
1705
1706func (s *AccountsCustomBatchResponse) MarshalJSON() ([]byte, error) {
1707	type NoMethod AccountsCustomBatchResponse
1708	raw := NoMethod(*s)
1709	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1710}
1711
1712// AccountsCustomBatchResponseEntry: A batch entry encoding a single
1713// non-batch accounts response.
1714type AccountsCustomBatchResponseEntry struct {
1715	// Account: The retrieved, created, or updated account. Not defined if
1716	// the method was `delete`, `claimwebsite` or `link`.
1717	Account *Account `json:"account,omitempty"`
1718
1719	// BatchId: The ID of the request entry this entry responds to.
1720	BatchId int64 `json:"batchId,omitempty"`
1721
1722	// Errors: A list of errors defined if and only if the request failed.
1723	Errors *Errors `json:"errors,omitempty"`
1724
1725	// Kind: Identifies what kind of resource this is. Value: the fixed
1726	// string "content#accountsCustomBatchResponseEntry"
1727	Kind string `json:"kind,omitempty"`
1728
1729	// ForceSendFields is a list of field names (e.g. "Account") to
1730	// unconditionally include in API requests. By default, fields with
1731	// empty or default values are omitted from API requests. However, any
1732	// non-pointer, non-interface field appearing in ForceSendFields will be
1733	// sent to the server regardless of whether the field is empty or not.
1734	// This may be used to include empty fields in Patch requests.
1735	ForceSendFields []string `json:"-"`
1736
1737	// NullFields is a list of field names (e.g. "Account") to include in
1738	// API requests with the JSON null value. By default, fields with empty
1739	// values are omitted from API requests. However, any field with an
1740	// empty value appearing in NullFields will be sent to the server as
1741	// null. It is an error if a field in this list has a non-empty value.
1742	// This may be used to include null fields in Patch requests.
1743	NullFields []string `json:"-"`
1744}
1745
1746func (s *AccountsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
1747	type NoMethod AccountsCustomBatchResponseEntry
1748	raw := NoMethod(*s)
1749	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1750}
1751
1752type AccountsLinkRequest struct {
1753	// Action: Action to perform for this link. The "request" action is
1754	// only available to select merchants. Acceptable values are: -
1755	// "approve" - "remove" - "request"
1756	Action string `json:"action,omitempty"`
1757
1758	// ECommercePlatformLinkInfo: Additional information required for
1759	// `eCommercePlatform` link type.
1760	ECommercePlatformLinkInfo *ECommercePlatformLinkInfo `json:"eCommercePlatformLinkInfo,omitempty"`
1761
1762	// LinkType: Type of the link between the two accounts. Acceptable
1763	// values are: - "channelPartner" - "eCommercePlatform" -
1764	// "paymentServiceProvider"
1765	LinkType string `json:"linkType,omitempty"`
1766
1767	// LinkedAccountId: The ID of the linked account.
1768	LinkedAccountId string `json:"linkedAccountId,omitempty"`
1769
1770	// PaymentServiceProviderLinkInfo: Additional information required for
1771	// `paymentServiceProvider` link type.
1772	PaymentServiceProviderLinkInfo *PaymentServiceProviderLinkInfo `json:"paymentServiceProviderLinkInfo,omitempty"`
1773
1774	// Services:  Acceptable values are: - "shoppingAdsProductManagement"
1775	// - "shoppingActionsProductManagement" -
1776	// "shoppingActionsOrderManagement" - "paymentProcessing"
1777	Services []string `json:"services,omitempty"`
1778
1779	// ForceSendFields is a list of field names (e.g. "Action") to
1780	// unconditionally include in API requests. By default, fields with
1781	// empty or default values are omitted from API requests. However, any
1782	// non-pointer, non-interface field appearing in ForceSendFields will be
1783	// sent to the server regardless of whether the field is empty or not.
1784	// This may be used to include empty fields in Patch requests.
1785	ForceSendFields []string `json:"-"`
1786
1787	// NullFields is a list of field names (e.g. "Action") to include in API
1788	// requests with the JSON null value. By default, fields with empty
1789	// values are omitted from API requests. However, any field with an
1790	// empty value appearing in NullFields will be sent to the server as
1791	// null. It is an error if a field in this list has a non-empty value.
1792	// This may be used to include null fields in Patch requests.
1793	NullFields []string `json:"-"`
1794}
1795
1796func (s *AccountsLinkRequest) MarshalJSON() ([]byte, error) {
1797	type NoMethod AccountsLinkRequest
1798	raw := NoMethod(*s)
1799	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1800}
1801
1802type AccountsLinkResponse struct {
1803	// Kind: Identifies what kind of resource this is. Value: the fixed
1804	// string "content#accountsLinkResponse".
1805	Kind string `json:"kind,omitempty"`
1806
1807	// ServerResponse contains the HTTP response code and headers from the
1808	// server.
1809	googleapi.ServerResponse `json:"-"`
1810
1811	// ForceSendFields is a list of field names (e.g. "Kind") to
1812	// unconditionally include in API requests. By default, fields with
1813	// empty or default values are omitted from API requests. However, any
1814	// non-pointer, non-interface field appearing in ForceSendFields will be
1815	// sent to the server regardless of whether the field is empty or not.
1816	// This may be used to include empty fields in Patch requests.
1817	ForceSendFields []string `json:"-"`
1818
1819	// NullFields is a list of field names (e.g. "Kind") to include in API
1820	// requests with the JSON null value. By default, fields with empty
1821	// values are omitted from API requests. However, any field with an
1822	// empty value appearing in NullFields will be sent to the server as
1823	// null. It is an error if a field in this list has a non-empty value.
1824	// This may be used to include null fields in Patch requests.
1825	NullFields []string `json:"-"`
1826}
1827
1828func (s *AccountsLinkResponse) MarshalJSON() ([]byte, error) {
1829	type NoMethod AccountsLinkResponse
1830	raw := NoMethod(*s)
1831	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1832}
1833
1834type AccountsListLinksResponse struct {
1835	// Kind: Identifies what kind of resource this is. Value: the fixed
1836	// string "content#accountsListLinksResponse".
1837	Kind string `json:"kind,omitempty"`
1838
1839	// Links: The list of available links.
1840	Links []*LinkedAccount `json:"links,omitempty"`
1841
1842	// NextPageToken: The token for the retrieval of the next page of links.
1843	NextPageToken string `json:"nextPageToken,omitempty"`
1844
1845	// ServerResponse contains the HTTP response code and headers from the
1846	// server.
1847	googleapi.ServerResponse `json:"-"`
1848
1849	// ForceSendFields is a list of field names (e.g. "Kind") to
1850	// unconditionally include in API requests. By default, fields with
1851	// empty or default values are omitted from API requests. However, any
1852	// non-pointer, non-interface field appearing in ForceSendFields will be
1853	// sent to the server regardless of whether the field is empty or not.
1854	// This may be used to include empty fields in Patch requests.
1855	ForceSendFields []string `json:"-"`
1856
1857	// NullFields is a list of field names (e.g. "Kind") to include in API
1858	// requests with the JSON null value. By default, fields with empty
1859	// values are omitted from API requests. However, any field with an
1860	// empty value appearing in NullFields will be sent to the server as
1861	// null. It is an error if a field in this list has a non-empty value.
1862	// This may be used to include null fields in Patch requests.
1863	NullFields []string `json:"-"`
1864}
1865
1866func (s *AccountsListLinksResponse) MarshalJSON() ([]byte, error) {
1867	type NoMethod AccountsListLinksResponse
1868	raw := NoMethod(*s)
1869	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1870}
1871
1872type AccountsListResponse struct {
1873	// Kind: Identifies what kind of resource this is. Value: the fixed
1874	// string "content#accountsListResponse".
1875	Kind string `json:"kind,omitempty"`
1876
1877	// NextPageToken: The token for the retrieval of the next page of
1878	// accounts.
1879	NextPageToken string `json:"nextPageToken,omitempty"`
1880
1881	Resources []*Account `json:"resources,omitempty"`
1882
1883	// ServerResponse contains the HTTP response code and headers from the
1884	// server.
1885	googleapi.ServerResponse `json:"-"`
1886
1887	// ForceSendFields is a list of field names (e.g. "Kind") to
1888	// unconditionally include in API requests. By default, fields with
1889	// empty or default values are omitted from API requests. However, any
1890	// non-pointer, non-interface field appearing in ForceSendFields will be
1891	// sent to the server regardless of whether the field is empty or not.
1892	// This may be used to include empty fields in Patch requests.
1893	ForceSendFields []string `json:"-"`
1894
1895	// NullFields is a list of field names (e.g. "Kind") to include in API
1896	// requests with the JSON null value. By default, fields with empty
1897	// values are omitted from API requests. However, any field with an
1898	// empty value appearing in NullFields will be sent to the server as
1899	// null. It is an error if a field in this list has a non-empty value.
1900	// This may be used to include null fields in Patch requests.
1901	NullFields []string `json:"-"`
1902}
1903
1904func (s *AccountsListResponse) MarshalJSON() ([]byte, error) {
1905	type NoMethod AccountsListResponse
1906	raw := NoMethod(*s)
1907	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1908}
1909
1910type AccountsUpdateLabelsRequest struct {
1911	// LabelIds: The IDs of labels that should be assigned to the account.
1912	LabelIds googleapi.Uint64s `json:"labelIds,omitempty"`
1913
1914	// ForceSendFields is a list of field names (e.g. "LabelIds") to
1915	// unconditionally include in API requests. By default, fields with
1916	// empty or default values are omitted from API requests. However, any
1917	// non-pointer, non-interface field appearing in ForceSendFields will be
1918	// sent to the server regardless of whether the field is empty or not.
1919	// This may be used to include empty fields in Patch requests.
1920	ForceSendFields []string `json:"-"`
1921
1922	// NullFields is a list of field names (e.g. "LabelIds") to include in
1923	// API requests with the JSON null value. By default, fields with empty
1924	// values are omitted from API requests. However, any field with an
1925	// empty value appearing in NullFields will be sent to the server as
1926	// null. It is an error if a field in this list has a non-empty value.
1927	// This may be used to include null fields in Patch requests.
1928	NullFields []string `json:"-"`
1929}
1930
1931func (s *AccountsUpdateLabelsRequest) MarshalJSON() ([]byte, error) {
1932	type NoMethod AccountsUpdateLabelsRequest
1933	raw := NoMethod(*s)
1934	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1935}
1936
1937type AccountsUpdateLabelsResponse struct {
1938	// Kind: Identifies what kind of resource this is. Value: the fixed
1939	// string "content#accountsUpdateLabelsResponse".
1940	Kind string `json:"kind,omitempty"`
1941
1942	// ServerResponse contains the HTTP response code and headers from the
1943	// server.
1944	googleapi.ServerResponse `json:"-"`
1945
1946	// ForceSendFields is a list of field names (e.g. "Kind") to
1947	// unconditionally include in API requests. By default, fields with
1948	// empty or default values are omitted from API requests. However, any
1949	// non-pointer, non-interface field appearing in ForceSendFields will be
1950	// sent to the server regardless of whether the field is empty or not.
1951	// This may be used to include empty fields in Patch requests.
1952	ForceSendFields []string `json:"-"`
1953
1954	// NullFields is a list of field names (e.g. "Kind") to include in API
1955	// requests with the JSON null value. By default, fields with empty
1956	// values are omitted from API requests. However, any field with an
1957	// empty value appearing in NullFields will be sent to the server as
1958	// null. It is an error if a field in this list has a non-empty value.
1959	// This may be used to include null fields in Patch requests.
1960	NullFields []string `json:"-"`
1961}
1962
1963func (s *AccountsUpdateLabelsResponse) MarshalJSON() ([]byte, error) {
1964	type NoMethod AccountsUpdateLabelsResponse
1965	raw := NoMethod(*s)
1966	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1967}
1968
1969type AccountstatusesCustomBatchRequest struct {
1970	// Entries: The request entries to be processed in the batch.
1971	Entries []*AccountstatusesCustomBatchRequestEntry `json:"entries,omitempty"`
1972
1973	// ForceSendFields is a list of field names (e.g. "Entries") to
1974	// unconditionally include in API requests. By default, fields with
1975	// empty or default values are omitted from API requests. However, any
1976	// non-pointer, non-interface field appearing in ForceSendFields will be
1977	// sent to the server regardless of whether the field is empty or not.
1978	// This may be used to include empty fields in Patch requests.
1979	ForceSendFields []string `json:"-"`
1980
1981	// NullFields is a list of field names (e.g. "Entries") to include in
1982	// API requests with the JSON null value. By default, fields with empty
1983	// values are omitted from API requests. However, any field with an
1984	// empty value appearing in NullFields will be sent to the server as
1985	// null. It is an error if a field in this list has a non-empty value.
1986	// This may be used to include null fields in Patch requests.
1987	NullFields []string `json:"-"`
1988}
1989
1990func (s *AccountstatusesCustomBatchRequest) MarshalJSON() ([]byte, error) {
1991	type NoMethod AccountstatusesCustomBatchRequest
1992	raw := NoMethod(*s)
1993	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1994}
1995
1996// AccountstatusesCustomBatchRequestEntry: A batch entry encoding a
1997// single non-batch accountstatuses request.
1998type AccountstatusesCustomBatchRequestEntry struct {
1999	// AccountId: The ID of the (sub-)account whose status to get.
2000	AccountId uint64 `json:"accountId,omitempty,string"`
2001
2002	// BatchId: An entry ID, unique within the batch request.
2003	BatchId int64 `json:"batchId,omitempty"`
2004
2005	// Destinations: If set, only issues for the specified destinations are
2006	// returned, otherwise only issues for the Shopping destination.
2007	Destinations []string `json:"destinations,omitempty"`
2008
2009	// MerchantId: The ID of the managing account.
2010	MerchantId uint64 `json:"merchantId,omitempty,string"`
2011
2012	// Method: The method of the batch entry. Acceptable values are: -
2013	// "get"
2014	Method string `json:"method,omitempty"`
2015
2016	// ForceSendFields is a list of field names (e.g. "AccountId") to
2017	// unconditionally include in API requests. By default, fields with
2018	// empty or default values are omitted from API requests. However, any
2019	// non-pointer, non-interface field appearing in ForceSendFields will be
2020	// sent to the server regardless of whether the field is empty or not.
2021	// This may be used to include empty fields in Patch requests.
2022	ForceSendFields []string `json:"-"`
2023
2024	// NullFields is a list of field names (e.g. "AccountId") to include in
2025	// API requests with the JSON null value. By default, fields with empty
2026	// values are omitted from API requests. However, any field with an
2027	// empty value appearing in NullFields will be sent to the server as
2028	// null. It is an error if a field in this list has a non-empty value.
2029	// This may be used to include null fields in Patch requests.
2030	NullFields []string `json:"-"`
2031}
2032
2033func (s *AccountstatusesCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
2034	type NoMethod AccountstatusesCustomBatchRequestEntry
2035	raw := NoMethod(*s)
2036	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2037}
2038
2039type AccountstatusesCustomBatchResponse struct {
2040	// Entries: The result of the execution of the batch requests.
2041	Entries []*AccountstatusesCustomBatchResponseEntry `json:"entries,omitempty"`
2042
2043	// Kind: Identifies what kind of resource this is. Value: the fixed
2044	// string "content#accountstatusesCustomBatchResponse".
2045	Kind string `json:"kind,omitempty"`
2046
2047	// ServerResponse contains the HTTP response code and headers from the
2048	// server.
2049	googleapi.ServerResponse `json:"-"`
2050
2051	// ForceSendFields is a list of field names (e.g. "Entries") to
2052	// unconditionally include in API requests. By default, fields with
2053	// empty or default values are omitted from API requests. However, any
2054	// non-pointer, non-interface field appearing in ForceSendFields will be
2055	// sent to the server regardless of whether the field is empty or not.
2056	// This may be used to include empty fields in Patch requests.
2057	ForceSendFields []string `json:"-"`
2058
2059	// NullFields is a list of field names (e.g. "Entries") to include in
2060	// API requests with the JSON null value. By default, fields with empty
2061	// values are omitted from API requests. However, any field with an
2062	// empty value appearing in NullFields will be sent to the server as
2063	// null. It is an error if a field in this list has a non-empty value.
2064	// This may be used to include null fields in Patch requests.
2065	NullFields []string `json:"-"`
2066}
2067
2068func (s *AccountstatusesCustomBatchResponse) MarshalJSON() ([]byte, error) {
2069	type NoMethod AccountstatusesCustomBatchResponse
2070	raw := NoMethod(*s)
2071	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2072}
2073
2074// AccountstatusesCustomBatchResponseEntry: A batch entry encoding a
2075// single non-batch accountstatuses response.
2076type AccountstatusesCustomBatchResponseEntry struct {
2077	// AccountStatus: The requested account status. Defined if and only if
2078	// the request was successful.
2079	AccountStatus *AccountStatus `json:"accountStatus,omitempty"`
2080
2081	// BatchId: The ID of the request entry this entry responds to.
2082	BatchId int64 `json:"batchId,omitempty"`
2083
2084	// Errors: A list of errors defined if and only if the request failed.
2085	Errors *Errors `json:"errors,omitempty"`
2086
2087	// ForceSendFields is a list of field names (e.g. "AccountStatus") to
2088	// unconditionally include in API requests. By default, fields with
2089	// empty or default values are omitted from API requests. However, any
2090	// non-pointer, non-interface field appearing in ForceSendFields will be
2091	// sent to the server regardless of whether the field is empty or not.
2092	// This may be used to include empty fields in Patch requests.
2093	ForceSendFields []string `json:"-"`
2094
2095	// NullFields is a list of field names (e.g. "AccountStatus") to include
2096	// in API requests with the JSON null value. By default, fields with
2097	// empty values are omitted from API requests. However, any field with
2098	// an empty value appearing in NullFields will be sent to the server as
2099	// null. It is an error if a field in this list has a non-empty value.
2100	// This may be used to include null fields in Patch requests.
2101	NullFields []string `json:"-"`
2102}
2103
2104func (s *AccountstatusesCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
2105	type NoMethod AccountstatusesCustomBatchResponseEntry
2106	raw := NoMethod(*s)
2107	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2108}
2109
2110type AccountstatusesListResponse struct {
2111	// Kind: Identifies what kind of resource this is. Value: the fixed
2112	// string "content#accountstatusesListResponse".
2113	Kind string `json:"kind,omitempty"`
2114
2115	// NextPageToken: The token for the retrieval of the next page of
2116	// account statuses.
2117	NextPageToken string `json:"nextPageToken,omitempty"`
2118
2119	Resources []*AccountStatus `json:"resources,omitempty"`
2120
2121	// ServerResponse contains the HTTP response code and headers from the
2122	// server.
2123	googleapi.ServerResponse `json:"-"`
2124
2125	// ForceSendFields is a list of field names (e.g. "Kind") to
2126	// unconditionally include in API requests. By default, fields with
2127	// empty or default values are omitted from API requests. However, any
2128	// non-pointer, non-interface field appearing in ForceSendFields will be
2129	// sent to the server regardless of whether the field is empty or not.
2130	// This may be used to include empty fields in Patch requests.
2131	ForceSendFields []string `json:"-"`
2132
2133	// NullFields is a list of field names (e.g. "Kind") to include in API
2134	// requests with the JSON null value. By default, fields with empty
2135	// values are omitted from API requests. However, any field with an
2136	// empty value appearing in NullFields will be sent to the server as
2137	// null. It is an error if a field in this list has a non-empty value.
2138	// This may be used to include null fields in Patch requests.
2139	NullFields []string `json:"-"`
2140}
2141
2142func (s *AccountstatusesListResponse) MarshalJSON() ([]byte, error) {
2143	type NoMethod AccountstatusesListResponse
2144	raw := NoMethod(*s)
2145	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2146}
2147
2148type AccounttaxCustomBatchRequest struct {
2149	// Entries: The request entries to be processed in the batch.
2150	Entries []*AccounttaxCustomBatchRequestEntry `json:"entries,omitempty"`
2151
2152	// ForceSendFields is a list of field names (e.g. "Entries") to
2153	// unconditionally include in API requests. By default, fields with
2154	// empty or default values are omitted from API requests. However, any
2155	// non-pointer, non-interface field appearing in ForceSendFields will be
2156	// sent to the server regardless of whether the field is empty or not.
2157	// This may be used to include empty fields in Patch requests.
2158	ForceSendFields []string `json:"-"`
2159
2160	// NullFields is a list of field names (e.g. "Entries") to include in
2161	// API requests with the JSON null value. By default, fields with empty
2162	// values are omitted from API requests. However, any field with an
2163	// empty value appearing in NullFields will be sent to the server as
2164	// null. It is an error if a field in this list has a non-empty value.
2165	// This may be used to include null fields in Patch requests.
2166	NullFields []string `json:"-"`
2167}
2168
2169func (s *AccounttaxCustomBatchRequest) MarshalJSON() ([]byte, error) {
2170	type NoMethod AccounttaxCustomBatchRequest
2171	raw := NoMethod(*s)
2172	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2173}
2174
2175// AccounttaxCustomBatchRequestEntry: A batch entry encoding a single
2176// non-batch accounttax request.
2177type AccounttaxCustomBatchRequestEntry struct {
2178	// AccountId: The ID of the account for which to get/update account tax
2179	// settings.
2180	AccountId uint64 `json:"accountId,omitempty,string"`
2181
2182	// AccountTax: The account tax settings to update. Only defined if the
2183	// method is `update`.
2184	AccountTax *AccountTax `json:"accountTax,omitempty"`
2185
2186	// BatchId: An entry ID, unique within the batch request.
2187	BatchId int64 `json:"batchId,omitempty"`
2188
2189	// MerchantId: The ID of the managing account.
2190	MerchantId uint64 `json:"merchantId,omitempty,string"`
2191
2192	// Method: The method of the batch entry. Acceptable values are: -
2193	// "get" - "update"
2194	Method string `json:"method,omitempty"`
2195
2196	// ForceSendFields is a list of field names (e.g. "AccountId") to
2197	// unconditionally include in API requests. By default, fields with
2198	// empty or default values are omitted from API requests. However, any
2199	// non-pointer, non-interface field appearing in ForceSendFields will be
2200	// sent to the server regardless of whether the field is empty or not.
2201	// This may be used to include empty fields in Patch requests.
2202	ForceSendFields []string `json:"-"`
2203
2204	// NullFields is a list of field names (e.g. "AccountId") to include in
2205	// API requests with the JSON null value. By default, fields with empty
2206	// values are omitted from API requests. However, any field with an
2207	// empty value appearing in NullFields will be sent to the server as
2208	// null. It is an error if a field in this list has a non-empty value.
2209	// This may be used to include null fields in Patch requests.
2210	NullFields []string `json:"-"`
2211}
2212
2213func (s *AccounttaxCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
2214	type NoMethod AccounttaxCustomBatchRequestEntry
2215	raw := NoMethod(*s)
2216	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2217}
2218
2219type AccounttaxCustomBatchResponse struct {
2220	// Entries: The result of the execution of the batch requests.
2221	Entries []*AccounttaxCustomBatchResponseEntry `json:"entries,omitempty"`
2222
2223	// Kind: Identifies what kind of resource this is. Value: the fixed
2224	// string "content#accounttaxCustomBatchResponse".
2225	Kind string `json:"kind,omitempty"`
2226
2227	// ServerResponse contains the HTTP response code and headers from the
2228	// server.
2229	googleapi.ServerResponse `json:"-"`
2230
2231	// ForceSendFields is a list of field names (e.g. "Entries") to
2232	// unconditionally include in API requests. By default, fields with
2233	// empty or default values are omitted from API requests. However, any
2234	// non-pointer, non-interface field appearing in ForceSendFields will be
2235	// sent to the server regardless of whether the field is empty or not.
2236	// This may be used to include empty fields in Patch requests.
2237	ForceSendFields []string `json:"-"`
2238
2239	// NullFields is a list of field names (e.g. "Entries") to include in
2240	// API requests with the JSON null value. By default, fields with empty
2241	// values are omitted from API requests. However, any field with an
2242	// empty value appearing in NullFields will be sent to the server as
2243	// null. It is an error if a field in this list has a non-empty value.
2244	// This may be used to include null fields in Patch requests.
2245	NullFields []string `json:"-"`
2246}
2247
2248func (s *AccounttaxCustomBatchResponse) MarshalJSON() ([]byte, error) {
2249	type NoMethod AccounttaxCustomBatchResponse
2250	raw := NoMethod(*s)
2251	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2252}
2253
2254// AccounttaxCustomBatchResponseEntry: A batch entry encoding a single
2255// non-batch accounttax response.
2256type AccounttaxCustomBatchResponseEntry struct {
2257	// AccountTax: The retrieved or updated account tax settings.
2258	AccountTax *AccountTax `json:"accountTax,omitempty"`
2259
2260	// BatchId: The ID of the request entry this entry responds to.
2261	BatchId int64 `json:"batchId,omitempty"`
2262
2263	// Errors: A list of errors defined if and only if the request failed.
2264	Errors *Errors `json:"errors,omitempty"`
2265
2266	// Kind: Identifies what kind of resource this is. Value: the fixed
2267	// string "content#accounttaxCustomBatchResponseEntry"
2268	Kind string `json:"kind,omitempty"`
2269
2270	// ForceSendFields is a list of field names (e.g. "AccountTax") to
2271	// unconditionally include in API requests. By default, fields with
2272	// empty or default values are omitted from API requests. However, any
2273	// non-pointer, non-interface field appearing in ForceSendFields will be
2274	// sent to the server regardless of whether the field is empty or not.
2275	// This may be used to include empty fields in Patch requests.
2276	ForceSendFields []string `json:"-"`
2277
2278	// NullFields is a list of field names (e.g. "AccountTax") to include in
2279	// API requests with the JSON null value. By default, fields with empty
2280	// values are omitted from API requests. However, any field with an
2281	// empty value appearing in NullFields will be sent to the server as
2282	// null. It is an error if a field in this list has a non-empty value.
2283	// This may be used to include null fields in Patch requests.
2284	NullFields []string `json:"-"`
2285}
2286
2287func (s *AccounttaxCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
2288	type NoMethod AccounttaxCustomBatchResponseEntry
2289	raw := NoMethod(*s)
2290	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2291}
2292
2293type AccounttaxListResponse struct {
2294	// Kind: Identifies what kind of resource this is. Value: the fixed
2295	// string "content#accounttaxListResponse".
2296	Kind string `json:"kind,omitempty"`
2297
2298	// NextPageToken: The token for the retrieval of the next page of
2299	// account tax settings.
2300	NextPageToken string `json:"nextPageToken,omitempty"`
2301
2302	Resources []*AccountTax `json:"resources,omitempty"`
2303
2304	// ServerResponse contains the HTTP response code and headers from the
2305	// server.
2306	googleapi.ServerResponse `json:"-"`
2307
2308	// ForceSendFields is a list of field names (e.g. "Kind") to
2309	// unconditionally include in API requests. By default, fields with
2310	// empty or default values are omitted from API requests. However, any
2311	// non-pointer, non-interface field appearing in ForceSendFields will be
2312	// sent to the server regardless of whether the field is empty or not.
2313	// This may be used to include empty fields in Patch requests.
2314	ForceSendFields []string `json:"-"`
2315
2316	// NullFields is a list of field names (e.g. "Kind") to include in API
2317	// requests with the JSON null value. By default, fields with empty
2318	// values are omitted from API requests. However, any field with an
2319	// empty value appearing in NullFields will be sent to the server as
2320	// null. It is an error if a field in this list has a non-empty value.
2321	// This may be used to include null fields in Patch requests.
2322	NullFields []string `json:"-"`
2323}
2324
2325func (s *AccounttaxListResponse) MarshalJSON() ([]byte, error) {
2326	type NoMethod AccounttaxListResponse
2327	raw := NoMethod(*s)
2328	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2329}
2330
2331// ActivateBuyOnGoogleProgramRequest: Request message for the
2332// ActivateProgram method.
2333type ActivateBuyOnGoogleProgramRequest struct {
2334}
2335
2336type Address struct {
2337	// AdministrativeArea: Required. Top-level administrative subdivision of
2338	// the country. For example, a state like California ("CA") or a
2339	// province like Quebec ("QC").
2340	AdministrativeArea string `json:"administrativeArea,omitempty"`
2341
2342	// City: Required. City, town or commune. May also include dependent
2343	// localities or sublocalities (e.g. neighborhoods or suburbs).
2344	City string `json:"city,omitempty"`
2345
2346	// Country: Required. CLDR country code
2347	// (http://www.unicode.org/repos/cldr/tags/latest/common/main/en.xml)
2348	// (e.g. "US").
2349	Country string `json:"country,omitempty"`
2350
2351	// PostalCode: Required. Postal code or ZIP (e.g. "94043").
2352	PostalCode string `json:"postalCode,omitempty"`
2353
2354	// StreetAddress: Street-level part of the address.
2355	StreetAddress string `json:"streetAddress,omitempty"`
2356
2357	// ForceSendFields is a list of field names (e.g. "AdministrativeArea")
2358	// to unconditionally include in API requests. By default, fields with
2359	// empty or default values are omitted from API requests. However, any
2360	// non-pointer, non-interface field appearing in ForceSendFields will be
2361	// sent to the server regardless of whether the field is empty or not.
2362	// This may be used to include empty fields in Patch requests.
2363	ForceSendFields []string `json:"-"`
2364
2365	// NullFields is a list of field names (e.g. "AdministrativeArea") to
2366	// include in API requests with the JSON null value. By default, fields
2367	// with empty values are omitted from API requests. However, any field
2368	// with an empty value appearing in NullFields will be sent to the
2369	// server as null. It is an error if a field in this list has a
2370	// non-empty value. This may be used to include null fields in Patch
2371	// requests.
2372	NullFields []string `json:"-"`
2373}
2374
2375func (s *Address) MarshalJSON() ([]byte, error) {
2376	type NoMethod Address
2377	raw := NoMethod(*s)
2378	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2379}
2380
2381type Amount struct {
2382	// PriceAmount: [required] The pre-tax or post-tax price depending on
2383	// the location of the order.
2384	PriceAmount *Price `json:"priceAmount,omitempty"`
2385
2386	// TaxAmount: [required] Tax value.
2387	TaxAmount *Price `json:"taxAmount,omitempty"`
2388
2389	// ForceSendFields is a list of field names (e.g. "PriceAmount") to
2390	// unconditionally include in API requests. By default, fields with
2391	// empty or default values are omitted from API requests. However, any
2392	// non-pointer, non-interface field appearing in ForceSendFields will be
2393	// sent to the server regardless of whether the field is empty or not.
2394	// This may be used to include empty fields in Patch requests.
2395	ForceSendFields []string `json:"-"`
2396
2397	// NullFields is a list of field names (e.g. "PriceAmount") to include
2398	// in API requests with the JSON null value. By default, fields with
2399	// empty values are omitted from API requests. However, any field with
2400	// an empty value appearing in NullFields will be sent to the server as
2401	// null. It is an error if a field in this list has a non-empty value.
2402	// This may be used to include null fields in Patch requests.
2403	NullFields []string `json:"-"`
2404}
2405
2406func (s *Amount) MarshalJSON() ([]byte, error) {
2407	type NoMethod Amount
2408	raw := NoMethod(*s)
2409	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2410}
2411
2412type BusinessDayConfig struct {
2413	// BusinessDays: Regular business days, such as '"monday"'. May not be
2414	// empty.
2415	BusinessDays []string `json:"businessDays,omitempty"`
2416
2417	// ForceSendFields is a list of field names (e.g. "BusinessDays") to
2418	// unconditionally include in API requests. By default, fields with
2419	// empty or default values are omitted from API requests. However, any
2420	// non-pointer, non-interface field appearing in ForceSendFields will be
2421	// sent to the server regardless of whether the field is empty or not.
2422	// This may be used to include empty fields in Patch requests.
2423	ForceSendFields []string `json:"-"`
2424
2425	// NullFields is a list of field names (e.g. "BusinessDays") to include
2426	// in API requests with the JSON null value. By default, fields with
2427	// empty values are omitted from API requests. However, any field with
2428	// an empty value appearing in NullFields will be sent to the server as
2429	// null. It is an error if a field in this list has a non-empty value.
2430	// This may be used to include null fields in Patch requests.
2431	NullFields []string `json:"-"`
2432}
2433
2434func (s *BusinessDayConfig) MarshalJSON() ([]byte, error) {
2435	type NoMethod BusinessDayConfig
2436	raw := NoMethod(*s)
2437	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2438}
2439
2440// BuyOnGoogleProgramStatus: Response message for the GetProgramStatus
2441// method.
2442type BuyOnGoogleProgramStatus struct {
2443	// BusinessModel: The business models in which merchant participates.
2444	//
2445	// Possible values:
2446	//   "BUSINESS_MODEL_UNSPECIFIED" - Default value when business model is
2447	// not set.
2448	//   "MANUFACTURER" - Merchant is a manufacturer.
2449	//   "IMPORTER" - Merchant is an importer.
2450	//   "RESELLER" - Merchant is a reseller.
2451	//   "OTHER" - Merchant has a different business model.
2452	BusinessModel []string `json:"businessModel,omitempty"`
2453
2454	// CustomerServicePendingEmail: The customer service pending email.
2455	// After verification this field becomes empty.
2456	CustomerServicePendingEmail string `json:"customerServicePendingEmail,omitempty"`
2457
2458	// CustomerServicePendingPhoneNumber: The pending phone number specified
2459	// for BuyOnGoogle program. It might be different than account level
2460	// phone number. In order to update this field the
2461	// customer_service_pending_phone_region_code must also be set. After
2462	// verification this field becomes empty.
2463	CustomerServicePendingPhoneNumber string `json:"customerServicePendingPhoneNumber,omitempty"`
2464
2465	// CustomerServicePendingPhoneRegionCode: Two letter country code for
2466	// the pending phone number, for example `CA` for Canadian numbers. See
2467	// the ISO 3166-1 alpha-2
2468	// (https://wikipedia.org/wiki/ISO_3166-1_alpha-2#Officially_assigned_code_elements)
2469	// officially assigned codes. In order to update this field the
2470	// customer_service_pending_phone_number must also be set. After
2471	// verification this field becomes empty.
2472	CustomerServicePendingPhoneRegionCode string `json:"customerServicePendingPhoneRegionCode,omitempty"`
2473
2474	// CustomerServiceVerifiedEmail: Output only. The customer service
2475	// verified email.
2476	CustomerServiceVerifiedEmail string `json:"customerServiceVerifiedEmail,omitempty"`
2477
2478	// CustomerServiceVerifiedPhoneNumber: Output only. The verified phone
2479	// number specified for BuyOnGoogle program. It might be different than
2480	// account level phone number.
2481	CustomerServiceVerifiedPhoneNumber string `json:"customerServiceVerifiedPhoneNumber,omitempty"`
2482
2483	// CustomerServiceVerifiedPhoneRegionCode: Output only. Two letter
2484	// country code for the verified phone number, for example `CA` for
2485	// Canadian numbers. See the ISO 3166-1 alpha-2
2486	// (https://wikipedia.org/wiki/ISO_3166-1_alpha-2#Officially_assigned_code_elements)
2487	// officially assigned codes.
2488	CustomerServiceVerifiedPhoneRegionCode string `json:"customerServiceVerifiedPhoneRegionCode,omitempty"`
2489
2490	// OnlineSalesChannel: The channels through which the merchant is
2491	// selling.
2492	//
2493	// Possible values:
2494	//   "ONLINE_SALES_CHANNEL_UNSPECIFIED" - Default value when online
2495	// sales channel is not set.
2496	//   "GOOGLE_EXCLUSIVE" - Merchant is selling exclusively on Google.
2497	//   "GOOGLE_AND_OTHER_WEBSITES" - Merchant is selling on Google and
2498	// other websites.
2499	OnlineSalesChannel string `json:"onlineSalesChannel,omitempty"`
2500
2501	// ParticipationStage: Output only. The current participation stage for
2502	// the program.
2503	//
2504	// Possible values:
2505	//   "PROGRAM_PARTICIPATION_STAGE_UNSPECIFIED" - Default value when
2506	// participation stage is not set.
2507	//   "NOT_ELIGIBLE" - Merchant is not eligible for onboarding to a given
2508	// program in a specific region code.
2509	//   "ELIGIBLE" - Merchant is eligible for onboarding to a given program
2510	// in a specific region code.
2511	//   "ONBOARDING" - Merchant is onboarding to a given program in a
2512	// specific region code.
2513	//   "ELIGIBLE_FOR_REVIEW" - Merchant fulfilled all the requirements and
2514	// is ready to request review in a specific region code.
2515	//   "PENDING_REVIEW" - Merchant is waiting for the review to be
2516	// completed in a specific region code.
2517	//   "REVIEW_DISAPPROVED" - The review for a merchant has been rejected
2518	// in a specific region code.
2519	//   "ACTIVE" - Merchant's program participation is active for a
2520	// specific region code.
2521	//   "PAUSED" - Participation has been paused.
2522	ParticipationStage string `json:"participationStage,omitempty"`
2523
2524	// ServerResponse contains the HTTP response code and headers from the
2525	// server.
2526	googleapi.ServerResponse `json:"-"`
2527
2528	// ForceSendFields is a list of field names (e.g. "BusinessModel") to
2529	// unconditionally include in API requests. By default, fields with
2530	// empty or default values are omitted from API requests. However, any
2531	// non-pointer, non-interface field appearing in ForceSendFields will be
2532	// sent to the server regardless of whether the field is empty or not.
2533	// This may be used to include empty fields in Patch requests.
2534	ForceSendFields []string `json:"-"`
2535
2536	// NullFields is a list of field names (e.g. "BusinessModel") to include
2537	// in API requests with the JSON null value. By default, fields with
2538	// empty values are omitted from API requests. However, any field with
2539	// an empty value appearing in NullFields will be sent to the server as
2540	// null. It is an error if a field in this list has a non-empty value.
2541	// This may be used to include null fields in Patch requests.
2542	NullFields []string `json:"-"`
2543}
2544
2545func (s *BuyOnGoogleProgramStatus) MarshalJSON() ([]byte, error) {
2546	type NoMethod BuyOnGoogleProgramStatus
2547	raw := NoMethod(*s)
2548	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2549}
2550
2551// CaptureOrderRequest: Request message for the CaptureOrder method.
2552type CaptureOrderRequest struct {
2553}
2554
2555// CaptureOrderResponse: Response message for the CaptureOrder method.
2556type CaptureOrderResponse struct {
2557	// ExecutionStatus: The status of the execution. Only defined if the
2558	// request was successful. Acceptable values are: * "duplicate" *
2559	// "executed"
2560	//
2561	// Possible values:
2562	//   "EXECUTION_STATUS_UNSPECIFIED" - Default value. This value is
2563	// unused.
2564	//   "EXECUTED" - The request was completed successfully.
2565	//   "DUPLICATE" - The request was not performed because it already
2566	// executed once successfully.
2567	ExecutionStatus string `json:"executionStatus,omitempty"`
2568
2569	// ServerResponse contains the HTTP response code and headers from the
2570	// server.
2571	googleapi.ServerResponse `json:"-"`
2572
2573	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
2574	// unconditionally include in API requests. By default, fields with
2575	// empty or default values are omitted from API requests. However, any
2576	// non-pointer, non-interface field appearing in ForceSendFields will be
2577	// sent to the server regardless of whether the field is empty or not.
2578	// This may be used to include empty fields in Patch requests.
2579	ForceSendFields []string `json:"-"`
2580
2581	// NullFields is a list of field names (e.g. "ExecutionStatus") to
2582	// include in API requests with the JSON null value. By default, fields
2583	// with empty values are omitted from API requests. However, any field
2584	// with an empty value appearing in NullFields will be sent to the
2585	// server as null. It is an error if a field in this list has a
2586	// non-empty value. This may be used to include null fields in Patch
2587	// requests.
2588	NullFields []string `json:"-"`
2589}
2590
2591func (s *CaptureOrderResponse) MarshalJSON() ([]byte, error) {
2592	type NoMethod CaptureOrderResponse
2593	raw := NoMethod(*s)
2594	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2595}
2596
2597type CarrierRate struct {
2598	// CarrierName: Carrier service, such as "UPS" or "Fedex". The list
2599	// of supported carriers can be retrieved via the `getSupportedCarriers`
2600	// method. Required.
2601	CarrierName string `json:"carrierName,omitempty"`
2602
2603	// CarrierService: Carrier service, such as "ground" or "2 days".
2604	// The list of supported services for a carrier can be retrieved via the
2605	// `getSupportedCarriers` method. Required.
2606	CarrierService string `json:"carrierService,omitempty"`
2607
2608	// FlatAdjustment: Additive shipping rate modifier. Can be negative. For
2609	// example `{ "value": "1", "currency" : "USD" }` adds $1 to the rate,
2610	// `{ "value": "-3", "currency" : "USD" }` removes $3 from the rate.
2611	// Optional.
2612	FlatAdjustment *Price `json:"flatAdjustment,omitempty"`
2613
2614	// Name: Name of the carrier rate. Must be unique per rate group.
2615	// Required.
2616	Name string `json:"name,omitempty"`
2617
2618	// OriginPostalCode: Shipping origin for this carrier rate. Required.
2619	OriginPostalCode string `json:"originPostalCode,omitempty"`
2620
2621	// PercentageAdjustment: Multiplicative shipping rate modifier as a
2622	// number in decimal notation. Can be negative. For example "5.4"
2623	// increases the rate by 5.4%, "-3" decreases the rate by 3%.
2624	// Optional.
2625	PercentageAdjustment string `json:"percentageAdjustment,omitempty"`
2626
2627	// ForceSendFields is a list of field names (e.g. "CarrierName") to
2628	// unconditionally include in API requests. By default, fields with
2629	// empty or default values are omitted from API requests. However, any
2630	// non-pointer, non-interface field appearing in ForceSendFields will be
2631	// sent to the server regardless of whether the field is empty or not.
2632	// This may be used to include empty fields in Patch requests.
2633	ForceSendFields []string `json:"-"`
2634
2635	// NullFields is a list of field names (e.g. "CarrierName") to include
2636	// in API requests with the JSON null value. By default, fields with
2637	// empty values are omitted from API requests. However, any field with
2638	// an empty value appearing in NullFields will be sent to the server as
2639	// null. It is an error if a field in this list has a non-empty value.
2640	// This may be used to include null fields in Patch requests.
2641	NullFields []string `json:"-"`
2642}
2643
2644func (s *CarrierRate) MarshalJSON() ([]byte, error) {
2645	type NoMethod CarrierRate
2646	raw := NoMethod(*s)
2647	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2648}
2649
2650type CarriersCarrier struct {
2651	// Country: The CLDR country code of the carrier (e.g., "US"). Always
2652	// present.
2653	Country string `json:"country,omitempty"`
2654
2655	// EddServices: A list of services supported for EDD (Estimated Delivery
2656	// Date) calculation. This is the list of valid values for
2657	// WarehouseBasedDeliveryTime.carrierService.
2658	EddServices []string `json:"eddServices,omitempty"`
2659
2660	// Name: The name of the carrier (e.g., "UPS"). Always present.
2661	Name string `json:"name,omitempty"`
2662
2663	// Services: A list of supported services (e.g., "ground") for that
2664	// carrier. Contains at least one service. This is the list of valid
2665	// values for CarrierRate.carrierService.
2666	Services []string `json:"services,omitempty"`
2667
2668	// ForceSendFields is a list of field names (e.g. "Country") to
2669	// unconditionally include in API requests. By default, fields with
2670	// empty or default values are omitted from API requests. However, any
2671	// non-pointer, non-interface field appearing in ForceSendFields will be
2672	// sent to the server regardless of whether the field is empty or not.
2673	// This may be used to include empty fields in Patch requests.
2674	ForceSendFields []string `json:"-"`
2675
2676	// NullFields is a list of field names (e.g. "Country") to include in
2677	// API requests with the JSON null value. By default, fields with empty
2678	// values are omitted from API requests. However, any field with an
2679	// empty value appearing in NullFields will be sent to the server as
2680	// null. It is an error if a field in this list has a non-empty value.
2681	// This may be used to include null fields in Patch requests.
2682	NullFields []string `json:"-"`
2683}
2684
2685func (s *CarriersCarrier) MarshalJSON() ([]byte, error) {
2686	type NoMethod CarriersCarrier
2687	raw := NoMethod(*s)
2688	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2689}
2690
2691// Collection: The collection message.
2692type Collection struct {
2693	// CustomLabel0: Label that you assign to a collection to help organize
2694	// bidding and reporting in Shopping campaigns. Custom label
2695	// (https://support.google.com/merchants/answer/9674217)
2696	CustomLabel0 string `json:"customLabel0,omitempty"`
2697
2698	// CustomLabel1: Label that you assign to a collection to help organize
2699	// bidding and reporting in Shopping campaigns.
2700	CustomLabel1 string `json:"customLabel1,omitempty"`
2701
2702	// CustomLabel2: Label that you assign to a collection to help organize
2703	// bidding and reporting in Shopping campaigns.
2704	CustomLabel2 string `json:"customLabel2,omitempty"`
2705
2706	// CustomLabel3: Label that you assign to a collection to help organize
2707	// bidding and reporting in Shopping campaigns.
2708	CustomLabel3 string `json:"customLabel3,omitempty"`
2709
2710	// CustomLabel4: Label that you assign to a collection to help organize
2711	// bidding and reporting in Shopping campaigns.
2712	CustomLabel4 string `json:"customLabel4,omitempty"`
2713
2714	// FeaturedProduct: This identifies one or more products associated with
2715	// the collection. Used as a lookup to the corresponding product ID in
2716	// your product feeds. Provide a maximum of 100 featuredProduct (for
2717	// collections). Provide up to 10 featuredProduct (for Shoppable Images
2718	// only) with ID and X and Y coordinates. featured_product attribute
2719	// (https://support.google.com/merchants/answer/9703736)
2720	FeaturedProduct []*CollectionFeaturedProduct `json:"featuredProduct,omitempty"`
2721
2722	// Headline: Your collection's name. headline attribute
2723	// (https://support.google.com/merchants/answer/9673580)
2724	Headline []string `json:"headline,omitempty"`
2725
2726	// Id: Required. The REST ID of the collection. Content API methods that
2727	// operate on collections take this as their collectionId parameter. The
2728	// REST ID for a collection is of the form collectionId. id attribute
2729	// (https://support.google.com/merchants/answer/9649290)
2730	Id string `json:"id,omitempty"`
2731
2732	// ImageLink: The URL of a collection’s image. image_link attribute
2733	// (https://support.google.com/merchants/answer/9703236)
2734	ImageLink []string `json:"imageLink,omitempty"`
2735
2736	// Language: The language of a collection and the language of any
2737	// featured products linked to the collection. language attribute
2738	// (https://support.google.com/merchants/answer/9673781)
2739	Language string `json:"language,omitempty"`
2740
2741	// Link: A collection’s landing page. URL directly linking to your
2742	// collection's page on your website. link attribute
2743	// (https://support.google.com/merchants/answer/9673983)
2744	Link string `json:"link,omitempty"`
2745
2746	// MobileLink: A collection’s mobile-optimized landing page when you
2747	// have a different URL for mobile and desktop traffic. mobile_link
2748	// attribute (https://support.google.com/merchants/answer/9646123)
2749	MobileLink string `json:"mobileLink,omitempty"`
2750
2751	// ProductCountry: product_country attribute
2752	// (https://support.google.com/merchants/answer/9674155)
2753	ProductCountry string `json:"productCountry,omitempty"`
2754
2755	// ServerResponse contains the HTTP response code and headers from the
2756	// server.
2757	googleapi.ServerResponse `json:"-"`
2758
2759	// ForceSendFields is a list of field names (e.g. "CustomLabel0") 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. "CustomLabel0") to include
2768	// in API requests with the JSON null value. By default, fields with
2769	// empty values are omitted from API requests. However, any field with
2770	// an 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 *Collection) MarshalJSON() ([]byte, error) {
2777	type NoMethod Collection
2778	raw := NoMethod(*s)
2779	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2780}
2781
2782// CollectionFeaturedProduct: The message for FeaturedProduct.
2783// FeaturedProduct (https://support.google.com/merchants/answer/9703736)
2784type CollectionFeaturedProduct struct {
2785	// OfferId: The unique identifier for the product item.
2786	OfferId string `json:"offerId,omitempty"`
2787
2788	// X: Required. X-coordinate of the product callout on the Shoppable
2789	// Image.
2790	X float64 `json:"x,omitempty"`
2791
2792	// Y: Required. Y-coordinate of the product callout on the Shoppable
2793	// Image.
2794	Y float64 `json:"y,omitempty"`
2795
2796	// ForceSendFields is a list of field names (e.g. "OfferId") to
2797	// unconditionally include in API requests. By default, fields with
2798	// empty or default values are omitted from API requests. However, any
2799	// non-pointer, non-interface field appearing in ForceSendFields will be
2800	// sent to the server regardless of whether the field is empty or not.
2801	// This may be used to include empty fields in Patch requests.
2802	ForceSendFields []string `json:"-"`
2803
2804	// NullFields is a list of field names (e.g. "OfferId") to include in
2805	// API requests with the JSON null value. By default, fields with empty
2806	// values are omitted from API requests. However, any field with an
2807	// empty value appearing in NullFields will be sent to the server as
2808	// null. It is an error if a field in this list has a non-empty value.
2809	// This may be used to include null fields in Patch requests.
2810	NullFields []string `json:"-"`
2811}
2812
2813func (s *CollectionFeaturedProduct) MarshalJSON() ([]byte, error) {
2814	type NoMethod CollectionFeaturedProduct
2815	raw := NoMethod(*s)
2816	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2817}
2818
2819func (s *CollectionFeaturedProduct) UnmarshalJSON(data []byte) error {
2820	type NoMethod CollectionFeaturedProduct
2821	var s1 struct {
2822		X gensupport.JSONFloat64 `json:"x"`
2823		Y gensupport.JSONFloat64 `json:"y"`
2824		*NoMethod
2825	}
2826	s1.NoMethod = (*NoMethod)(s)
2827	if err := json.Unmarshal(data, &s1); err != nil {
2828		return err
2829	}
2830	s.X = float64(s1.X)
2831	s.Y = float64(s1.Y)
2832	return nil
2833}
2834
2835// CollectionStatus: The collectionstatus message.
2836type CollectionStatus struct {
2837	// CollectionLevelIssuses: A list of all issues associated with the
2838	// collection.
2839	CollectionLevelIssuses []*CollectionStatusItemLevelIssue `json:"collectionLevelIssuses,omitempty"`
2840
2841	// CreationDate: Date on which the collection has been created in ISO
2842	// 8601 (http://en.wikipedia.org/wiki/ISO_8601) format: Date, time, and
2843	// offset, e.g. "2020-01-02T09:00:00+01:00" or "2020-01-02T09:00:00Z"
2844	CreationDate string `json:"creationDate,omitempty"`
2845
2846	// DestinationStatuses: The intended destinations for the collection.
2847	DestinationStatuses []*CollectionStatusDestinationStatus `json:"destinationStatuses,omitempty"`
2848
2849	// Id: Required. The ID of the collection for which status is reported.
2850	Id string `json:"id,omitempty"`
2851
2852	// LastUpdateDate: Date on which the collection has been last updated in
2853	// ISO 8601 (http://en.wikipedia.org/wiki/ISO_8601) format: Date, time,
2854	// and offset, e.g. "2020-01-02T09:00:00+01:00" or
2855	// "2020-01-02T09:00:00Z"
2856	LastUpdateDate string `json:"lastUpdateDate,omitempty"`
2857
2858	// ServerResponse contains the HTTP response code and headers from the
2859	// server.
2860	googleapi.ServerResponse `json:"-"`
2861
2862	// ForceSendFields is a list of field names (e.g.
2863	// "CollectionLevelIssuses") to unconditionally include in API requests.
2864	// By default, fields with empty or default values are omitted from API
2865	// requests. However, any non-pointer, non-interface field appearing in
2866	// ForceSendFields will be sent to the server regardless of whether the
2867	// field is empty or not. This may be used to include empty fields in
2868	// Patch requests.
2869	ForceSendFields []string `json:"-"`
2870
2871	// NullFields is a list of field names (e.g. "CollectionLevelIssuses")
2872	// to include in API requests with the JSON null value. By default,
2873	// fields with empty values are omitted from API requests. However, any
2874	// field with an empty value appearing in NullFields will be sent to the
2875	// server as null. It is an error if a field in this list has a
2876	// non-empty value. This may be used to include null fields in Patch
2877	// requests.
2878	NullFields []string `json:"-"`
2879}
2880
2881func (s *CollectionStatus) MarshalJSON() ([]byte, error) {
2882	type NoMethod CollectionStatus
2883	raw := NoMethod(*s)
2884	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2885}
2886
2887// CollectionStatusDestinationStatus: Destination status message.
2888type CollectionStatusDestinationStatus struct {
2889	// Destination: The name of the destination
2890	Destination string `json:"destination,omitempty"`
2891
2892	// Status: The status for the specified destination.
2893	Status string `json:"status,omitempty"`
2894
2895	// ForceSendFields is a list of field names (e.g. "Destination") to
2896	// unconditionally include in API requests. By default, fields with
2897	// empty or default values are omitted from API requests. However, any
2898	// non-pointer, non-interface field appearing in ForceSendFields will be
2899	// sent to the server regardless of whether the field is empty or not.
2900	// This may be used to include empty fields in Patch requests.
2901	ForceSendFields []string `json:"-"`
2902
2903	// NullFields is a list of field names (e.g. "Destination") to include
2904	// in API requests with the JSON null value. By default, fields with
2905	// empty values are omitted from API requests. However, any field with
2906	// an empty value appearing in NullFields will be sent to the server as
2907	// null. It is an error if a field in this list has a non-empty value.
2908	// This may be used to include null fields in Patch requests.
2909	NullFields []string `json:"-"`
2910}
2911
2912func (s *CollectionStatusDestinationStatus) MarshalJSON() ([]byte, error) {
2913	type NoMethod CollectionStatusDestinationStatus
2914	raw := NoMethod(*s)
2915	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2916}
2917
2918// CollectionStatusItemLevelIssue: Issue associated with the collection.
2919type CollectionStatusItemLevelIssue struct {
2920	// AttributeName: The attribute's name, if the issue is caused by a
2921	// single attribute.
2922	AttributeName string `json:"attributeName,omitempty"`
2923
2924	// Code: The error code of the issue.
2925	Code string `json:"code,omitempty"`
2926
2927	// Description: A short issue description in English.
2928	Description string `json:"description,omitempty"`
2929
2930	// Destination: The destination the issue applies to.
2931	Destination string `json:"destination,omitempty"`
2932
2933	// Detail: A detailed issue description in English.
2934	Detail string `json:"detail,omitempty"`
2935
2936	// Documentation: The URL of a web page to help with resolving this
2937	// issue.
2938	Documentation string `json:"documentation,omitempty"`
2939
2940	// Resolution: Whether the issue can be resolved by the merchant.
2941	Resolution string `json:"resolution,omitempty"`
2942
2943	// Servability: How this issue affects the serving of the collection.
2944	Servability string `json:"servability,omitempty"`
2945
2946	// ForceSendFields is a list of field names (e.g. "AttributeName") to
2947	// unconditionally include in API requests. By default, fields with
2948	// empty or default values are omitted from API requests. However, any
2949	// non-pointer, non-interface field appearing in ForceSendFields will be
2950	// sent to the server regardless of whether the field is empty or not.
2951	// This may be used to include empty fields in Patch requests.
2952	ForceSendFields []string `json:"-"`
2953
2954	// NullFields is a list of field names (e.g. "AttributeName") to include
2955	// in API requests with the JSON null value. By default, fields with
2956	// empty values are omitted from API requests. However, any field with
2957	// an empty value appearing in NullFields will be sent to the server as
2958	// null. It is an error if a field in this list has a non-empty value.
2959	// This may be used to include null fields in Patch requests.
2960	NullFields []string `json:"-"`
2961}
2962
2963func (s *CollectionStatusItemLevelIssue) MarshalJSON() ([]byte, error) {
2964	type NoMethod CollectionStatusItemLevelIssue
2965	raw := NoMethod(*s)
2966	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2967}
2968
2969// Css: Information about CSS domain.
2970type Css struct {
2971	// CssDomainId: Output only. Immutable. The CSS domain ID.
2972	CssDomainId int64 `json:"cssDomainId,omitempty,string"`
2973
2974	// CssGroupId: Output only. Immutable. The ID of the CSS group this CSS
2975	// domain is affiliated with. Only populated for CSS group users.
2976	CssGroupId int64 `json:"cssGroupId,omitempty,string"`
2977
2978	// DisplayName: Output only. Immutable. The CSS domain's display name,
2979	// used when space is constrained.
2980	DisplayName string `json:"displayName,omitempty"`
2981
2982	// FullName: Output only. Immutable. The CSS domain's full name.
2983	FullName string `json:"fullName,omitempty"`
2984
2985	// HomepageUri: Output only. Immutable. The CSS domain's homepage.
2986	HomepageUri string `json:"homepageUri,omitempty"`
2987
2988	// LabelIds: A list of label IDs that are assigned to this CSS domain by
2989	// its CSS group. Only populated for CSS group users.
2990	LabelIds googleapi.Int64s `json:"labelIds,omitempty"`
2991
2992	// ServerResponse contains the HTTP response code and headers from the
2993	// server.
2994	googleapi.ServerResponse `json:"-"`
2995
2996	// ForceSendFields is a list of field names (e.g. "CssDomainId") to
2997	// unconditionally include in API requests. By default, fields with
2998	// empty or default values are omitted from API requests. However, any
2999	// non-pointer, non-interface field appearing in ForceSendFields will be
3000	// sent to the server regardless of whether the field is empty or not.
3001	// This may be used to include empty fields in Patch requests.
3002	ForceSendFields []string `json:"-"`
3003
3004	// NullFields is a list of field names (e.g. "CssDomainId") to include
3005	// in API requests with the JSON null value. By default, fields with
3006	// empty values are omitted from API requests. However, any field with
3007	// an empty value appearing in NullFields will be sent to the server as
3008	// null. It is an error if a field in this list has a non-empty value.
3009	// This may be used to include null fields in Patch requests.
3010	NullFields []string `json:"-"`
3011}
3012
3013func (s *Css) MarshalJSON() ([]byte, error) {
3014	type NoMethod Css
3015	raw := NoMethod(*s)
3016	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3017}
3018
3019type CustomAttribute struct {
3020	// GroupValues: Subattributes within this attribute group. Exactly one
3021	// of value or groupValues must be provided.
3022	GroupValues []*CustomAttribute `json:"groupValues,omitempty"`
3023
3024	// Name: The name of the attribute. Underscores will be replaced by
3025	// spaces upon insertion.
3026	Name string `json:"name,omitempty"`
3027
3028	// Value: The value of the attribute.
3029	Value string `json:"value,omitempty"`
3030
3031	// ForceSendFields is a list of field names (e.g. "GroupValues") to
3032	// unconditionally include in API requests. By default, fields with
3033	// empty or default values are omitted from API requests. However, any
3034	// non-pointer, non-interface field appearing in ForceSendFields will be
3035	// sent to the server regardless of whether the field is empty or not.
3036	// This may be used to include empty fields in Patch requests.
3037	ForceSendFields []string `json:"-"`
3038
3039	// NullFields is a list of field names (e.g. "GroupValues") to include
3040	// in API requests with the JSON null value. By default, fields with
3041	// empty values are omitted from API requests. However, any field with
3042	// an empty value appearing in NullFields will be sent to the server as
3043	// null. It is an error if a field in this list has a non-empty value.
3044	// This may be used to include null fields in Patch requests.
3045	NullFields []string `json:"-"`
3046}
3047
3048func (s *CustomAttribute) MarshalJSON() ([]byte, error) {
3049	type NoMethod CustomAttribute
3050	raw := NoMethod(*s)
3051	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3052}
3053
3054type CustomerReturnReason struct {
3055	// Description: Description of the reason.
3056	Description string `json:"description,omitempty"`
3057
3058	// ReasonCode: Code of the return reason. Acceptable values are: -
3059	// "betterPriceFound" - "changedMind" - "damagedOrDefectiveItem" -
3060	// "didNotMatchDescription" - "doesNotFit" - "expiredItem" -
3061	// "incorrectItemReceived" - "noLongerNeeded" - "notSpecified" -
3062	// "orderedWrongItem" - "other" - "qualityNotExpected" -
3063	// "receivedTooLate" - "undeliverable"
3064	ReasonCode string `json:"reasonCode,omitempty"`
3065
3066	// ForceSendFields is a list of field names (e.g. "Description") to
3067	// unconditionally include in API requests. By default, fields with
3068	// empty or default values are omitted from API requests. However, any
3069	// non-pointer, non-interface field appearing in ForceSendFields will be
3070	// sent to the server regardless of whether the field is empty or not.
3071	// This may be used to include empty fields in Patch requests.
3072	ForceSendFields []string `json:"-"`
3073
3074	// NullFields is a list of field names (e.g. "Description") to include
3075	// in API requests with the JSON null value. By default, fields with
3076	// empty values are omitted from API requests. However, any field with
3077	// an empty value appearing in NullFields will be sent to the server as
3078	// null. It is an error if a field in this list has a non-empty value.
3079	// This may be used to include null fields in Patch requests.
3080	NullFields []string `json:"-"`
3081}
3082
3083func (s *CustomerReturnReason) MarshalJSON() ([]byte, error) {
3084	type NoMethod CustomerReturnReason
3085	raw := NoMethod(*s)
3086	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3087}
3088
3089type CutoffTime struct {
3090	// Hour: Hour of the cutoff time until which an order has to be placed
3091	// to be processed in the same day. Required.
3092	Hour int64 `json:"hour,omitempty"`
3093
3094	// Minute: Minute of the cutoff time until which an order has to be
3095	// placed to be processed in the same day. Required.
3096	Minute int64 `json:"minute,omitempty"`
3097
3098	// Timezone: Timezone identifier for the cutoff time. A list of
3099	// identifiers can be found in the AdWords API documentation. E.g.
3100	// "Europe/Zurich". Required.
3101	Timezone string `json:"timezone,omitempty"`
3102
3103	// ForceSendFields is a list of field names (e.g. "Hour") to
3104	// unconditionally include in API requests. By default, fields with
3105	// empty or default values are omitted from API requests. However, any
3106	// non-pointer, non-interface field appearing in ForceSendFields will be
3107	// sent to the server regardless of whether the field is empty or not.
3108	// This may be used to include empty fields in Patch requests.
3109	ForceSendFields []string `json:"-"`
3110
3111	// NullFields is a list of field names (e.g. "Hour") to include in API
3112	// requests with the JSON null value. By default, fields with empty
3113	// values are omitted from API requests. However, any field with an
3114	// empty value appearing in NullFields will be sent to the server as
3115	// null. It is an error if a field in this list has a non-empty value.
3116	// This may be used to include null fields in Patch requests.
3117	NullFields []string `json:"-"`
3118}
3119
3120func (s *CutoffTime) MarshalJSON() ([]byte, error) {
3121	type NoMethod CutoffTime
3122	raw := NoMethod(*s)
3123	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3124}
3125
3126// Datafeed: Datafeed configuration data.
3127type Datafeed struct {
3128	// AttributeLanguage: The two-letter ISO 639-1 language in which the
3129	// attributes are defined in the data feed.
3130	AttributeLanguage string `json:"attributeLanguage,omitempty"`
3131
3132	// ContentType: Required. The type of data feed. For product inventory
3133	// feeds, only feeds for local stores, not online stores, are supported.
3134	// Acceptable values are: - "local products" - "product inventory" -
3135	// "products"
3136	ContentType string `json:"contentType,omitempty"`
3137
3138	// FetchSchedule: Fetch schedule for the feed file.
3139	FetchSchedule *DatafeedFetchSchedule `json:"fetchSchedule,omitempty"`
3140
3141	// FileName: Required. The filename of the feed. All feeds must have a
3142	// unique file name.
3143	FileName string `json:"fileName,omitempty"`
3144
3145	// Format: Format of the feed file.
3146	Format *DatafeedFormat `json:"format,omitempty"`
3147
3148	// Id: Required for update. The ID of the data feed.
3149	Id int64 `json:"id,omitempty,string"`
3150
3151	// Kind: Identifies what kind of resource this is. Value: the fixed
3152	// string "content#datafeed"
3153	Kind string `json:"kind,omitempty"`
3154
3155	// Name: Required for insert. A descriptive name of the data feed.
3156	Name string `json:"name,omitempty"`
3157
3158	// Targets: The targets this feed should apply to (country, language,
3159	// destinations).
3160	Targets []*DatafeedTarget `json:"targets,omitempty"`
3161
3162	// ServerResponse contains the HTTP response code and headers from the
3163	// server.
3164	googleapi.ServerResponse `json:"-"`
3165
3166	// ForceSendFields is a list of field names (e.g. "AttributeLanguage")
3167	// to unconditionally include in API requests. By default, fields with
3168	// empty or default values are omitted from API requests. However, any
3169	// non-pointer, non-interface field appearing in ForceSendFields will be
3170	// sent to the server regardless of whether the field is empty or not.
3171	// This may be used to include empty fields in Patch requests.
3172	ForceSendFields []string `json:"-"`
3173
3174	// NullFields is a list of field names (e.g. "AttributeLanguage") to
3175	// include in API requests with the JSON null value. By default, fields
3176	// with empty values are omitted from API requests. However, any field
3177	// with an empty value appearing in NullFields will be sent to the
3178	// server as null. It is an error if a field in this list has a
3179	// non-empty value. This may be used to include null fields in Patch
3180	// requests.
3181	NullFields []string `json:"-"`
3182}
3183
3184func (s *Datafeed) MarshalJSON() ([]byte, error) {
3185	type NoMethod Datafeed
3186	raw := NoMethod(*s)
3187	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3188}
3189
3190// DatafeedFetchSchedule: The required fields vary based on the
3191// frequency of fetching. For a monthly fetch schedule, day_of_month and
3192// hour are required. For a weekly fetch schedule, weekday and hour are
3193// required. For a daily fetch schedule, only hour is required.
3194type DatafeedFetchSchedule struct {
3195	// DayOfMonth: The day of the month the feed file should be fetched
3196	// (1-31).
3197	DayOfMonth int64 `json:"dayOfMonth,omitempty"`
3198
3199	// FetchUrl: The URL where the feed file can be fetched. Google Merchant
3200	// Center will support automatic scheduled uploads using the HTTP,
3201	// HTTPS, FTP, or SFTP protocols, so the value will need to be a valid
3202	// link using one of those four protocols.
3203	FetchUrl string `json:"fetchUrl,omitempty"`
3204
3205	// Hour: The hour of the day the feed file should be fetched (0-23).
3206	Hour int64 `json:"hour,omitempty"`
3207
3208	// MinuteOfHour: The minute of the hour the feed file should be fetched
3209	// (0-59). Read-only.
3210	MinuteOfHour int64 `json:"minuteOfHour,omitempty"`
3211
3212	// Password: An optional password for fetch_url.
3213	Password string `json:"password,omitempty"`
3214
3215	// Paused: Whether the scheduled fetch is paused or not.
3216	Paused bool `json:"paused,omitempty"`
3217
3218	// TimeZone: Time zone used for schedule. UTC by default. E.g.,
3219	// "America/Los_Angeles".
3220	TimeZone string `json:"timeZone,omitempty"`
3221
3222	// Username: An optional user name for fetch_url.
3223	Username string `json:"username,omitempty"`
3224
3225	// Weekday: The day of the week the feed file should be fetched.
3226	// Acceptable values are: - "monday" - "tuesday" - "wednesday" -
3227	// "thursday" - "friday" - "saturday" - "sunday"
3228	Weekday string `json:"weekday,omitempty"`
3229
3230	// ForceSendFields is a list of field names (e.g. "DayOfMonth") to
3231	// unconditionally include in API requests. By default, fields with
3232	// empty or default values are omitted from API requests. However, any
3233	// non-pointer, non-interface field appearing in ForceSendFields will be
3234	// sent to the server regardless of whether the field is empty or not.
3235	// This may be used to include empty fields in Patch requests.
3236	ForceSendFields []string `json:"-"`
3237
3238	// NullFields is a list of field names (e.g. "DayOfMonth") to include in
3239	// API requests with the JSON null value. By default, fields with empty
3240	// values are omitted from API requests. However, any field with an
3241	// empty value appearing in NullFields will be sent to the server as
3242	// null. It is an error if a field in this list has a non-empty value.
3243	// This may be used to include null fields in Patch requests.
3244	NullFields []string `json:"-"`
3245}
3246
3247func (s *DatafeedFetchSchedule) MarshalJSON() ([]byte, error) {
3248	type NoMethod DatafeedFetchSchedule
3249	raw := NoMethod(*s)
3250	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3251}
3252
3253type DatafeedFormat struct {
3254	// ColumnDelimiter: Delimiter for the separation of values in a
3255	// delimiter-separated values feed. If not specified, the delimiter will
3256	// be auto-detected. Ignored for non-DSV data feeds. Acceptable values
3257	// are: - "pipe" - "tab" - "tilde"
3258	ColumnDelimiter string `json:"columnDelimiter,omitempty"`
3259
3260	// FileEncoding: Character encoding scheme of the data feed. If not
3261	// specified, the encoding will be auto-detected. Acceptable values are:
3262	// - "latin-1" - "utf-16be" - "utf-16le" - "utf-8" -
3263	// "windows-1252"
3264	FileEncoding string `json:"fileEncoding,omitempty"`
3265
3266	// QuotingMode: Specifies how double quotes are interpreted. If not
3267	// specified, the mode will be auto-detected. Ignored for non-DSV data
3268	// feeds. Acceptable values are: - "normal character" - "value
3269	// quoting"
3270	QuotingMode string `json:"quotingMode,omitempty"`
3271
3272	// ForceSendFields is a list of field names (e.g. "ColumnDelimiter") to
3273	// unconditionally include in API requests. By default, fields with
3274	// empty or default values are omitted from API requests. However, any
3275	// non-pointer, non-interface field appearing in ForceSendFields will be
3276	// sent to the server regardless of whether the field is empty or not.
3277	// This may be used to include empty fields in Patch requests.
3278	ForceSendFields []string `json:"-"`
3279
3280	// NullFields is a list of field names (e.g. "ColumnDelimiter") to
3281	// include in API requests with the JSON null value. By default, fields
3282	// with empty values are omitted from API requests. However, any field
3283	// with an empty value appearing in NullFields will be sent to the
3284	// server as null. It is an error if a field in this list has a
3285	// non-empty value. This may be used to include null fields in Patch
3286	// requests.
3287	NullFields []string `json:"-"`
3288}
3289
3290func (s *DatafeedFormat) MarshalJSON() ([]byte, error) {
3291	type NoMethod DatafeedFormat
3292	raw := NoMethod(*s)
3293	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3294}
3295
3296// DatafeedStatus: The status of a datafeed, i.e., the result of the
3297// last retrieval of the datafeed computed asynchronously when the feed
3298// processing is finished.
3299type DatafeedStatus struct {
3300	// Country: The country for which the status is reported, represented as
3301	// a CLDR territory code.
3302	Country string `json:"country,omitempty"`
3303
3304	// DatafeedId: The ID of the feed for which the status is reported.
3305	DatafeedId uint64 `json:"datafeedId,omitempty,string"`
3306
3307	// Errors: The list of errors occurring in the feed.
3308	Errors []*DatafeedStatusError `json:"errors,omitempty"`
3309
3310	// ItemsTotal: The number of items in the feed that were processed.
3311	ItemsTotal uint64 `json:"itemsTotal,omitempty,string"`
3312
3313	// ItemsValid: The number of items in the feed that were valid.
3314	ItemsValid uint64 `json:"itemsValid,omitempty,string"`
3315
3316	// Kind: Identifies what kind of resource this is. Value: the fixed
3317	// string "content#datafeedStatus"
3318	Kind string `json:"kind,omitempty"`
3319
3320	// Language: The two-letter ISO 639-1 language for which the status is
3321	// reported.
3322	Language string `json:"language,omitempty"`
3323
3324	// LastUploadDate: The last date at which the feed was uploaded.
3325	LastUploadDate string `json:"lastUploadDate,omitempty"`
3326
3327	// ProcessingStatus: The processing status of the feed. Acceptable
3328	// values are: - ""failure": The feed could not be processed or all
3329	// items had errors." - "in progress": The feed is being processed. -
3330	// "none": The feed has not yet been processed. For example, a feed
3331	// that has never been uploaded will have this processing status. -
3332	// "success": The feed was processed successfully, though some items
3333	// might have had errors.
3334	ProcessingStatus string `json:"processingStatus,omitempty"`
3335
3336	// Warnings: The list of errors occurring in the feed.
3337	Warnings []*DatafeedStatusError `json:"warnings,omitempty"`
3338
3339	// ServerResponse contains the HTTP response code and headers from the
3340	// server.
3341	googleapi.ServerResponse `json:"-"`
3342
3343	// ForceSendFields is a list of field names (e.g. "Country") to
3344	// unconditionally include in API requests. By default, fields with
3345	// empty or default values are omitted from API requests. However, any
3346	// non-pointer, non-interface field appearing in ForceSendFields will be
3347	// sent to the server regardless of whether the field is empty or not.
3348	// This may be used to include empty fields in Patch requests.
3349	ForceSendFields []string `json:"-"`
3350
3351	// NullFields is a list of field names (e.g. "Country") to include in
3352	// API requests with the JSON null value. By default, fields with empty
3353	// values are omitted from API requests. However, any field with an
3354	// empty value appearing in NullFields will be sent to the server as
3355	// null. It is an error if a field in this list has a non-empty value.
3356	// This may be used to include null fields in Patch requests.
3357	NullFields []string `json:"-"`
3358}
3359
3360func (s *DatafeedStatus) MarshalJSON() ([]byte, error) {
3361	type NoMethod DatafeedStatus
3362	raw := NoMethod(*s)
3363	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3364}
3365
3366// DatafeedStatusError: An error occurring in the feed, like "invalid
3367// price".
3368type DatafeedStatusError struct {
3369	// Code: The code of the error, e.g., "validation/invalid_value".
3370	Code string `json:"code,omitempty"`
3371
3372	// Count: The number of occurrences of the error in the feed.
3373	Count uint64 `json:"count,omitempty,string"`
3374
3375	// Examples: A list of example occurrences of the error, grouped by
3376	// product.
3377	Examples []*DatafeedStatusExample `json:"examples,omitempty"`
3378
3379	// Message: The error message, e.g., "Invalid price".
3380	Message string `json:"message,omitempty"`
3381
3382	// ForceSendFields is a list of field names (e.g. "Code") to
3383	// unconditionally include in API requests. By default, fields with
3384	// empty or default values are omitted from API requests. However, any
3385	// non-pointer, non-interface field appearing in ForceSendFields will be
3386	// sent to the server regardless of whether the field is empty or not.
3387	// This may be used to include empty fields in Patch requests.
3388	ForceSendFields []string `json:"-"`
3389
3390	// NullFields is a list of field names (e.g. "Code") to include in API
3391	// requests with the JSON null value. By default, fields with empty
3392	// values are omitted from API requests. However, any field with an
3393	// empty value appearing in NullFields will be sent to the server as
3394	// null. It is an error if a field in this list has a non-empty value.
3395	// This may be used to include null fields in Patch requests.
3396	NullFields []string `json:"-"`
3397}
3398
3399func (s *DatafeedStatusError) MarshalJSON() ([]byte, error) {
3400	type NoMethod DatafeedStatusError
3401	raw := NoMethod(*s)
3402	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3403}
3404
3405// DatafeedStatusExample: An example occurrence for a particular error.
3406type DatafeedStatusExample struct {
3407	// ItemId: The ID of the example item.
3408	ItemId string `json:"itemId,omitempty"`
3409
3410	// LineNumber: Line number in the data feed where the example is found.
3411	LineNumber uint64 `json:"lineNumber,omitempty,string"`
3412
3413	// Value: The problematic value.
3414	Value string `json:"value,omitempty"`
3415
3416	// ForceSendFields is a list of field names (e.g. "ItemId") to
3417	// unconditionally include in API requests. By default, fields with
3418	// empty or default values are omitted from API requests. However, any
3419	// non-pointer, non-interface field appearing in ForceSendFields will be
3420	// sent to the server regardless of whether the field is empty or not.
3421	// This may be used to include empty fields in Patch requests.
3422	ForceSendFields []string `json:"-"`
3423
3424	// NullFields is a list of field names (e.g. "ItemId") to include in API
3425	// requests with the JSON null value. By default, fields with empty
3426	// values are omitted from API requests. However, any field with an
3427	// empty value appearing in NullFields will be sent to the server as
3428	// null. It is an error if a field in this list has a non-empty value.
3429	// This may be used to include null fields in Patch requests.
3430	NullFields []string `json:"-"`
3431}
3432
3433func (s *DatafeedStatusExample) MarshalJSON() ([]byte, error) {
3434	type NoMethod DatafeedStatusExample
3435	raw := NoMethod(*s)
3436	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3437}
3438
3439type DatafeedTarget struct {
3440	// Country: The country where the items in the feed will be included in
3441	// the search index, represented as a CLDR territory code.
3442	Country string `json:"country,omitempty"`
3443
3444	// ExcludedDestinations: The list of destinations to exclude for this
3445	// target (corresponds to unchecked check boxes in Merchant Center).
3446	ExcludedDestinations []string `json:"excludedDestinations,omitempty"`
3447
3448	// IncludedDestinations: The list of destinations to include for this
3449	// target (corresponds to checked check boxes in Merchant Center).
3450	// Default destinations are always included unless provided in
3451	// `excludedDestinations`. List of supported destinations (if available
3452	// to the account): - DisplayAds - Shopping - ShoppingActions -
3453	// SurfacesAcrossGoogle
3454	IncludedDestinations []string `json:"includedDestinations,omitempty"`
3455
3456	// Language: The two-letter ISO 639-1 language of the items in the feed.
3457	// Must be a valid language for `targets[].country`.
3458	Language string `json:"language,omitempty"`
3459
3460	// ForceSendFields is a list of field names (e.g. "Country") to
3461	// unconditionally include in API requests. By default, fields with
3462	// empty or default values are omitted from API requests. However, any
3463	// non-pointer, non-interface field appearing in ForceSendFields will be
3464	// sent to the server regardless of whether the field is empty or not.
3465	// This may be used to include empty fields in Patch requests.
3466	ForceSendFields []string `json:"-"`
3467
3468	// NullFields is a list of field names (e.g. "Country") to include in
3469	// API requests with the JSON null value. By default, fields with empty
3470	// values are omitted from API requests. However, any field with an
3471	// empty value appearing in NullFields will be sent to the server as
3472	// null. It is an error if a field in this list has a non-empty value.
3473	// This may be used to include null fields in Patch requests.
3474	NullFields []string `json:"-"`
3475}
3476
3477func (s *DatafeedTarget) MarshalJSON() ([]byte, error) {
3478	type NoMethod DatafeedTarget
3479	raw := NoMethod(*s)
3480	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3481}
3482
3483type DatafeedsCustomBatchRequest struct {
3484	// Entries: The request entries to be processed in the batch.
3485	Entries []*DatafeedsCustomBatchRequestEntry `json:"entries,omitempty"`
3486
3487	// ForceSendFields is a list of field names (e.g. "Entries") to
3488	// unconditionally include in API requests. By default, fields with
3489	// empty or default values are omitted from API requests. However, any
3490	// non-pointer, non-interface field appearing in ForceSendFields will be
3491	// sent to the server regardless of whether the field is empty or not.
3492	// This may be used to include empty fields in Patch requests.
3493	ForceSendFields []string `json:"-"`
3494
3495	// NullFields is a list of field names (e.g. "Entries") to include in
3496	// API requests with the JSON null value. By default, fields with empty
3497	// values are omitted from API requests. However, any field with an
3498	// empty value appearing in NullFields will be sent to the server as
3499	// null. It is an error if a field in this list has a non-empty value.
3500	// This may be used to include null fields in Patch requests.
3501	NullFields []string `json:"-"`
3502}
3503
3504func (s *DatafeedsCustomBatchRequest) MarshalJSON() ([]byte, error) {
3505	type NoMethod DatafeedsCustomBatchRequest
3506	raw := NoMethod(*s)
3507	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3508}
3509
3510// DatafeedsCustomBatchRequestEntry: A batch entry encoding a single
3511// non-batch datafeeds request.
3512type DatafeedsCustomBatchRequestEntry struct {
3513	// BatchId: An entry ID, unique within the batch request.
3514	BatchId int64 `json:"batchId,omitempty"`
3515
3516	// Datafeed: The data feed to insert.
3517	Datafeed *Datafeed `json:"datafeed,omitempty"`
3518
3519	// DatafeedId: The ID of the data feed to get, delete or fetch.
3520	DatafeedId uint64 `json:"datafeedId,omitempty,string"`
3521
3522	// MerchantId: The ID of the managing account.
3523	MerchantId uint64 `json:"merchantId,omitempty,string"`
3524
3525	// Method: The method of the batch entry. Acceptable values are: -
3526	// "delete" - "fetchNow" - "get" - "insert" - "update"
3527	Method string `json:"method,omitempty"`
3528
3529	// ForceSendFields is a list of field names (e.g. "BatchId") to
3530	// unconditionally include in API requests. By default, fields with
3531	// empty or default values are omitted from API requests. However, any
3532	// non-pointer, non-interface field appearing in ForceSendFields will be
3533	// sent to the server regardless of whether the field is empty or not.
3534	// This may be used to include empty fields in Patch requests.
3535	ForceSendFields []string `json:"-"`
3536
3537	// NullFields is a list of field names (e.g. "BatchId") to include in
3538	// API requests with the JSON null value. By default, fields with empty
3539	// values are omitted from API requests. However, any field with an
3540	// empty value appearing in NullFields will be sent to the server as
3541	// null. It is an error if a field in this list has a non-empty value.
3542	// This may be used to include null fields in Patch requests.
3543	NullFields []string `json:"-"`
3544}
3545
3546func (s *DatafeedsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
3547	type NoMethod DatafeedsCustomBatchRequestEntry
3548	raw := NoMethod(*s)
3549	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3550}
3551
3552type DatafeedsCustomBatchResponse struct {
3553	// Entries: The result of the execution of the batch requests.
3554	Entries []*DatafeedsCustomBatchResponseEntry `json:"entries,omitempty"`
3555
3556	// Kind: Identifies what kind of resource this is. Value: the fixed
3557	// string "content#datafeedsCustomBatchResponse".
3558	Kind string `json:"kind,omitempty"`
3559
3560	// ServerResponse contains the HTTP response code and headers from the
3561	// server.
3562	googleapi.ServerResponse `json:"-"`
3563
3564	// ForceSendFields is a list of field names (e.g. "Entries") to
3565	// unconditionally include in API requests. By default, fields with
3566	// empty or default values are omitted from API requests. However, any
3567	// non-pointer, non-interface field appearing in ForceSendFields will be
3568	// sent to the server regardless of whether the field is empty or not.
3569	// This may be used to include empty fields in Patch requests.
3570	ForceSendFields []string `json:"-"`
3571
3572	// NullFields is a list of field names (e.g. "Entries") to include in
3573	// API requests with the JSON null value. By default, fields with empty
3574	// values are omitted from API requests. However, any field with an
3575	// empty value appearing in NullFields will be sent to the server as
3576	// null. It is an error if a field in this list has a non-empty value.
3577	// This may be used to include null fields in Patch requests.
3578	NullFields []string `json:"-"`
3579}
3580
3581func (s *DatafeedsCustomBatchResponse) MarshalJSON() ([]byte, error) {
3582	type NoMethod DatafeedsCustomBatchResponse
3583	raw := NoMethod(*s)
3584	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3585}
3586
3587// DatafeedsCustomBatchResponseEntry: A batch entry encoding a single
3588// non-batch datafeeds response.
3589type DatafeedsCustomBatchResponseEntry struct {
3590	// BatchId: The ID of the request entry this entry responds to.
3591	BatchId int64 `json:"batchId,omitempty"`
3592
3593	// Datafeed: The requested data feed. Defined if and only if the request
3594	// was successful.
3595	Datafeed *Datafeed `json:"datafeed,omitempty"`
3596
3597	// Errors: A list of errors defined if and only if the request failed.
3598	Errors *Errors `json:"errors,omitempty"`
3599
3600	// ForceSendFields is a list of field names (e.g. "BatchId") to
3601	// unconditionally include in API requests. By default, fields with
3602	// empty or default values are omitted from API requests. However, any
3603	// non-pointer, non-interface field appearing in ForceSendFields will be
3604	// sent to the server regardless of whether the field is empty or not.
3605	// This may be used to include empty fields in Patch requests.
3606	ForceSendFields []string `json:"-"`
3607
3608	// NullFields is a list of field names (e.g. "BatchId") to include in
3609	// API requests with the JSON null value. By default, fields with empty
3610	// values are omitted from API requests. However, any field with an
3611	// empty value appearing in NullFields will be sent to the server as
3612	// null. It is an error if a field in this list has a non-empty value.
3613	// This may be used to include null fields in Patch requests.
3614	NullFields []string `json:"-"`
3615}
3616
3617func (s *DatafeedsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
3618	type NoMethod DatafeedsCustomBatchResponseEntry
3619	raw := NoMethod(*s)
3620	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3621}
3622
3623type DatafeedsFetchNowResponse struct {
3624	// Kind: Identifies what kind of resource this is. Value: the fixed
3625	// string "content#datafeedsFetchNowResponse".
3626	Kind string `json:"kind,omitempty"`
3627
3628	// ServerResponse contains the HTTP response code and headers from the
3629	// server.
3630	googleapi.ServerResponse `json:"-"`
3631
3632	// ForceSendFields is a list of field names (e.g. "Kind") to
3633	// unconditionally include in API requests. By default, fields with
3634	// empty or default values are omitted from API requests. However, any
3635	// non-pointer, non-interface field appearing in ForceSendFields will be
3636	// sent to the server regardless of whether the field is empty or not.
3637	// This may be used to include empty fields in Patch requests.
3638	ForceSendFields []string `json:"-"`
3639
3640	// NullFields is a list of field names (e.g. "Kind") to include in API
3641	// requests with the JSON null value. By default, fields with empty
3642	// values are omitted from API requests. However, any field with an
3643	// empty value appearing in NullFields will be sent to the server as
3644	// null. It is an error if a field in this list has a non-empty value.
3645	// This may be used to include null fields in Patch requests.
3646	NullFields []string `json:"-"`
3647}
3648
3649func (s *DatafeedsFetchNowResponse) MarshalJSON() ([]byte, error) {
3650	type NoMethod DatafeedsFetchNowResponse
3651	raw := NoMethod(*s)
3652	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3653}
3654
3655type DatafeedsListResponse struct {
3656	// Kind: Identifies what kind of resource this is. Value: the fixed
3657	// string "content#datafeedsListResponse".
3658	Kind string `json:"kind,omitempty"`
3659
3660	// NextPageToken: The token for the retrieval of the next page of
3661	// datafeeds.
3662	NextPageToken string `json:"nextPageToken,omitempty"`
3663
3664	Resources []*Datafeed `json:"resources,omitempty"`
3665
3666	// ServerResponse contains the HTTP response code and headers from the
3667	// server.
3668	googleapi.ServerResponse `json:"-"`
3669
3670	// ForceSendFields is a list of field names (e.g. "Kind") to
3671	// unconditionally include in API requests. By default, fields with
3672	// empty or default values are omitted from API requests. However, any
3673	// non-pointer, non-interface field appearing in ForceSendFields will be
3674	// sent to the server regardless of whether the field is empty or not.
3675	// This may be used to include empty fields in Patch requests.
3676	ForceSendFields []string `json:"-"`
3677
3678	// NullFields is a list of field names (e.g. "Kind") to include in API
3679	// requests with the JSON null value. By default, fields with empty
3680	// values are omitted from API requests. However, any field with an
3681	// empty value appearing in NullFields will be sent to the server as
3682	// null. It is an error if a field in this list has a non-empty value.
3683	// This may be used to include null fields in Patch requests.
3684	NullFields []string `json:"-"`
3685}
3686
3687func (s *DatafeedsListResponse) MarshalJSON() ([]byte, error) {
3688	type NoMethod DatafeedsListResponse
3689	raw := NoMethod(*s)
3690	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3691}
3692
3693type DatafeedstatusesCustomBatchRequest struct {
3694	// Entries: The request entries to be processed in the batch.
3695	Entries []*DatafeedstatusesCustomBatchRequestEntry `json:"entries,omitempty"`
3696
3697	// ForceSendFields is a list of field names (e.g. "Entries") to
3698	// unconditionally include in API requests. By default, fields with
3699	// empty or default values are omitted from API requests. However, any
3700	// non-pointer, non-interface field appearing in ForceSendFields will be
3701	// sent to the server regardless of whether the field is empty or not.
3702	// This may be used to include empty fields in Patch requests.
3703	ForceSendFields []string `json:"-"`
3704
3705	// NullFields is a list of field names (e.g. "Entries") to include in
3706	// API requests with the JSON null value. By default, fields with empty
3707	// values are omitted from API requests. However, any field with an
3708	// empty value appearing in NullFields will be sent to the server as
3709	// null. It is an error if a field in this list has a non-empty value.
3710	// This may be used to include null fields in Patch requests.
3711	NullFields []string `json:"-"`
3712}
3713
3714func (s *DatafeedstatusesCustomBatchRequest) MarshalJSON() ([]byte, error) {
3715	type NoMethod DatafeedstatusesCustomBatchRequest
3716	raw := NoMethod(*s)
3717	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3718}
3719
3720// DatafeedstatusesCustomBatchRequestEntry: A batch entry encoding a
3721// single non-batch datafeedstatuses request.
3722type DatafeedstatusesCustomBatchRequestEntry struct {
3723	// BatchId: An entry ID, unique within the batch request.
3724	BatchId int64 `json:"batchId,omitempty"`
3725
3726	// Country: The country for which to get the datafeed status. If this
3727	// parameter is provided then language must also be provided. Note that
3728	// for multi-target datafeeds this parameter is required.
3729	Country string `json:"country,omitempty"`
3730
3731	// DatafeedId: The ID of the data feed to get.
3732	DatafeedId uint64 `json:"datafeedId,omitempty,string"`
3733
3734	// Language: The language for which to get the datafeed status. If this
3735	// parameter is provided then country must also be provided. Note that
3736	// for multi-target datafeeds this parameter is required.
3737	Language string `json:"language,omitempty"`
3738
3739	// MerchantId: The ID of the managing account.
3740	MerchantId uint64 `json:"merchantId,omitempty,string"`
3741
3742	// Method: The method of the batch entry. Acceptable values are: -
3743	// "get"
3744	Method string `json:"method,omitempty"`
3745
3746	// ForceSendFields is a list of field names (e.g. "BatchId") to
3747	// unconditionally include in API requests. By default, fields with
3748	// empty or default values are omitted from API requests. However, any
3749	// non-pointer, non-interface field appearing in ForceSendFields will be
3750	// sent to the server regardless of whether the field is empty or not.
3751	// This may be used to include empty fields in Patch requests.
3752	ForceSendFields []string `json:"-"`
3753
3754	// NullFields is a list of field names (e.g. "BatchId") to include in
3755	// API requests with the JSON null value. By default, fields with empty
3756	// values are omitted from API requests. However, any field with an
3757	// empty value appearing in NullFields will be sent to the server as
3758	// null. It is an error if a field in this list has a non-empty value.
3759	// This may be used to include null fields in Patch requests.
3760	NullFields []string `json:"-"`
3761}
3762
3763func (s *DatafeedstatusesCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
3764	type NoMethod DatafeedstatusesCustomBatchRequestEntry
3765	raw := NoMethod(*s)
3766	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3767}
3768
3769type DatafeedstatusesCustomBatchResponse struct {
3770	// Entries: The result of the execution of the batch requests.
3771	Entries []*DatafeedstatusesCustomBatchResponseEntry `json:"entries,omitempty"`
3772
3773	// Kind: Identifies what kind of resource this is. Value: the fixed
3774	// string "content#datafeedstatusesCustomBatchResponse".
3775	Kind string `json:"kind,omitempty"`
3776
3777	// ServerResponse contains the HTTP response code and headers from the
3778	// server.
3779	googleapi.ServerResponse `json:"-"`
3780
3781	// ForceSendFields is a list of field names (e.g. "Entries") to
3782	// unconditionally include in API requests. By default, fields with
3783	// empty or default values are omitted from API requests. However, any
3784	// non-pointer, non-interface field appearing in ForceSendFields will be
3785	// sent to the server regardless of whether the field is empty or not.
3786	// This may be used to include empty fields in Patch requests.
3787	ForceSendFields []string `json:"-"`
3788
3789	// NullFields is a list of field names (e.g. "Entries") to include in
3790	// API requests with the JSON null value. By default, fields with empty
3791	// values are omitted from API requests. However, any field with an
3792	// empty value appearing in NullFields will be sent to the server as
3793	// null. It is an error if a field in this list has a non-empty value.
3794	// This may be used to include null fields in Patch requests.
3795	NullFields []string `json:"-"`
3796}
3797
3798func (s *DatafeedstatusesCustomBatchResponse) MarshalJSON() ([]byte, error) {
3799	type NoMethod DatafeedstatusesCustomBatchResponse
3800	raw := NoMethod(*s)
3801	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3802}
3803
3804// DatafeedstatusesCustomBatchResponseEntry: A batch entry encoding a
3805// single non-batch datafeedstatuses response.
3806type DatafeedstatusesCustomBatchResponseEntry struct {
3807	// BatchId: The ID of the request entry this entry responds to.
3808	BatchId int64 `json:"batchId,omitempty"`
3809
3810	// DatafeedStatus: The requested data feed status. Defined if and only
3811	// if the request was successful.
3812	DatafeedStatus *DatafeedStatus `json:"datafeedStatus,omitempty"`
3813
3814	// Errors: A list of errors defined if and only if the request failed.
3815	Errors *Errors `json:"errors,omitempty"`
3816
3817	// ForceSendFields is a list of field names (e.g. "BatchId") to
3818	// unconditionally include in API requests. By default, fields with
3819	// empty or default values are omitted from API requests. However, any
3820	// non-pointer, non-interface field appearing in ForceSendFields will be
3821	// sent to the server regardless of whether the field is empty or not.
3822	// This may be used to include empty fields in Patch requests.
3823	ForceSendFields []string `json:"-"`
3824
3825	// NullFields is a list of field names (e.g. "BatchId") to include in
3826	// API requests with the JSON null value. By default, fields with empty
3827	// values are omitted from API requests. However, any field with an
3828	// empty value appearing in NullFields will be sent to the server as
3829	// null. It is an error if a field in this list has a non-empty value.
3830	// This may be used to include null fields in Patch requests.
3831	NullFields []string `json:"-"`
3832}
3833
3834func (s *DatafeedstatusesCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
3835	type NoMethod DatafeedstatusesCustomBatchResponseEntry
3836	raw := NoMethod(*s)
3837	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3838}
3839
3840type DatafeedstatusesListResponse struct {
3841	// Kind: Identifies what kind of resource this is. Value: the fixed
3842	// string "content#datafeedstatusesListResponse".
3843	Kind string `json:"kind,omitempty"`
3844
3845	// NextPageToken: The token for the retrieval of the next page of
3846	// datafeed statuses.
3847	NextPageToken string `json:"nextPageToken,omitempty"`
3848
3849	Resources []*DatafeedStatus `json:"resources,omitempty"`
3850
3851	// ServerResponse contains the HTTP response code and headers from the
3852	// server.
3853	googleapi.ServerResponse `json:"-"`
3854
3855	// ForceSendFields is a list of field names (e.g. "Kind") to
3856	// unconditionally include in API requests. By default, fields with
3857	// empty or default values are omitted from API requests. However, any
3858	// non-pointer, non-interface field appearing in ForceSendFields will be
3859	// sent to the server regardless of whether the field is empty or not.
3860	// This may be used to include empty fields in Patch requests.
3861	ForceSendFields []string `json:"-"`
3862
3863	// NullFields is a list of field names (e.g. "Kind") to include in API
3864	// requests with the JSON null value. By default, fields with empty
3865	// values are omitted from API requests. However, any field with an
3866	// empty value appearing in NullFields will be sent to the server as
3867	// null. It is an error if a field in this list has a non-empty value.
3868	// This may be used to include null fields in Patch requests.
3869	NullFields []string `json:"-"`
3870}
3871
3872func (s *DatafeedstatusesListResponse) MarshalJSON() ([]byte, error) {
3873	type NoMethod DatafeedstatusesListResponse
3874	raw := NoMethod(*s)
3875	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3876}
3877
3878// Date: Represents a whole or partial calendar date, such as a
3879// birthday. The time of day and time zone are either specified
3880// elsewhere or are insignificant. The date is relative to the Gregorian
3881// Calendar. This can represent one of the following: * A full date,
3882// with non-zero year, month, and day values * A month and day value,
3883// with a zero year, such as an anniversary * A year on its own, with
3884// zero month and day values * A year and month value, with a zero day,
3885// such as a credit card expiration date Related types are
3886// google.type.TimeOfDay and `google.protobuf.Timestamp`.
3887type Date struct {
3888	// Day: Day of a month. Must be from 1 to 31 and valid for the year and
3889	// month, or 0 to specify a year by itself or a year and month where the
3890	// day isn't significant.
3891	Day int64 `json:"day,omitempty"`
3892
3893	// Month: Month of a year. Must be from 1 to 12, or 0 to specify a year
3894	// without a month and day.
3895	Month int64 `json:"month,omitempty"`
3896
3897	// Year: Year of the date. Must be from 1 to 9999, or 0 to specify a
3898	// date without a year.
3899	Year int64 `json:"year,omitempty"`
3900
3901	// ForceSendFields is a list of field names (e.g. "Day") to
3902	// unconditionally include in API requests. By default, fields with
3903	// empty or default values are omitted from API requests. However, any
3904	// non-pointer, non-interface field appearing in ForceSendFields will be
3905	// sent to the server regardless of whether the field is empty or not.
3906	// This may be used to include empty fields in Patch requests.
3907	ForceSendFields []string `json:"-"`
3908
3909	// NullFields is a list of field names (e.g. "Day") to include in API
3910	// requests with the JSON null value. By default, fields with empty
3911	// values are omitted from API requests. However, any field with an
3912	// empty value appearing in NullFields will be sent to the server as
3913	// null. It is an error if a field in this list has a non-empty value.
3914	// This may be used to include null fields in Patch requests.
3915	NullFields []string `json:"-"`
3916}
3917
3918func (s *Date) MarshalJSON() ([]byte, error) {
3919	type NoMethod Date
3920	raw := NoMethod(*s)
3921	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3922}
3923
3924// DateTime: Represents civil time (or occasionally physical time). This
3925// type can represent a civil time in one of a few possible ways: * When
3926// utc_offset is set and time_zone is unset: a civil time on a calendar
3927// day with a particular offset from UTC. * When time_zone is set and
3928// utc_offset is unset: a civil time on a calendar day in a particular
3929// time zone. * When neither time_zone nor utc_offset is set: a civil
3930// time on a calendar day in local time. The date is relative to the
3931// Proleptic Gregorian Calendar. If year is 0, the DateTime is
3932// considered not to have a specific year. month and day must have
3933// valid, non-zero values. This type may also be used to represent a
3934// physical time if all the date and time fields are set and either case
3935// of the `time_offset` oneof is set. Consider using `Timestamp` message
3936// for physical time instead. If your use case also would like to store
3937// the user's timezone, that can be done in another field. This type is
3938// more flexible than some applications may want. Make sure to document
3939// and validate your application's limitations.
3940type DateTime struct {
3941	// Day: Required. Day of month. Must be from 1 to 31 and valid for the
3942	// year and month.
3943	Day int64 `json:"day,omitempty"`
3944
3945	// Hours: Required. Hours of day in 24 hour format. Should be from 0 to
3946	// 23. An API may choose to allow the value "24:00:00" for scenarios
3947	// like business closing time.
3948	Hours int64 `json:"hours,omitempty"`
3949
3950	// Minutes: Required. Minutes of hour of day. Must be from 0 to 59.
3951	Minutes int64 `json:"minutes,omitempty"`
3952
3953	// Month: Required. Month of year. Must be from 1 to 12.
3954	Month int64 `json:"month,omitempty"`
3955
3956	// Nanos: Required. Fractions of seconds in nanoseconds. Must be from 0
3957	// to 999,999,999.
3958	Nanos int64 `json:"nanos,omitempty"`
3959
3960	// Seconds: Required. Seconds of minutes of the time. Must normally be
3961	// from 0 to 59. An API may allow the value 60 if it allows
3962	// leap-seconds.
3963	Seconds int64 `json:"seconds,omitempty"`
3964
3965	// TimeZone: Time zone.
3966	TimeZone *TimeZone `json:"timeZone,omitempty"`
3967
3968	// UtcOffset: UTC offset. Must be whole seconds, between -18 hours and
3969	// +18 hours. For example, a UTC offset of -4:00 would be represented as
3970	// { seconds: -14400 }.
3971	UtcOffset string `json:"utcOffset,omitempty"`
3972
3973	// Year: Optional. Year of date. Must be from 1 to 9999, or 0 if
3974	// specifying a datetime without a year.
3975	Year int64 `json:"year,omitempty"`
3976
3977	// ForceSendFields is a list of field names (e.g. "Day") to
3978	// unconditionally include in API requests. By default, fields with
3979	// empty or default values are omitted from API requests. However, any
3980	// non-pointer, non-interface field appearing in ForceSendFields will be
3981	// sent to the server regardless of whether the field is empty or not.
3982	// This may be used to include empty fields in Patch requests.
3983	ForceSendFields []string `json:"-"`
3984
3985	// NullFields is a list of field names (e.g. "Day") to include in API
3986	// requests with the JSON null value. By default, fields with empty
3987	// values are omitted from API requests. However, any field with an
3988	// empty value appearing in NullFields will be sent to the server as
3989	// null. It is an error if a field in this list has a non-empty value.
3990	// This may be used to include null fields in Patch requests.
3991	NullFields []string `json:"-"`
3992}
3993
3994func (s *DateTime) MarshalJSON() ([]byte, error) {
3995	type NoMethod DateTime
3996	raw := NoMethod(*s)
3997	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3998}
3999
4000type DeliveryTime struct {
4001	// CutoffTime: Business days cutoff time definition. If not configured
4002	// the cutoff time will be defaulted to 8AM PST.
4003	CutoffTime *CutoffTime `json:"cutoffTime,omitempty"`
4004
4005	// HandlingBusinessDayConfig: The business days during which orders can
4006	// be handled. If not provided, Monday to Friday business days will be
4007	// assumed.
4008	HandlingBusinessDayConfig *BusinessDayConfig `json:"handlingBusinessDayConfig,omitempty"`
4009
4010	// HolidayCutoffs: Holiday cutoff definitions. If configured, they
4011	// specify order cutoff times for holiday-specific shipping.
4012	HolidayCutoffs []*HolidayCutoff `json:"holidayCutoffs,omitempty"`
4013
4014	// MaxHandlingTimeInDays: Maximum number of business days spent before
4015	// an order is shipped. 0 means same day shipped, 1 means next day
4016	// shipped. Must be greater than or equal to `minHandlingTimeInDays`.
4017	MaxHandlingTimeInDays int64 `json:"maxHandlingTimeInDays,omitempty"`
4018
4019	// MaxTransitTimeInDays: Maximum number of business days that is spent
4020	// in transit. 0 means same day delivery, 1 means next day delivery.
4021	// Must be greater than or equal to `minTransitTimeInDays`.
4022	MaxTransitTimeInDays int64 `json:"maxTransitTimeInDays,omitempty"`
4023
4024	// MinHandlingTimeInDays: Minimum number of business days spent before
4025	// an order is shipped. 0 means same day shipped, 1 means next day
4026	// shipped.
4027	MinHandlingTimeInDays int64 `json:"minHandlingTimeInDays,omitempty"`
4028
4029	// MinTransitTimeInDays: Minimum number of business days that is spent
4030	// in transit. 0 means same day delivery, 1 means next day delivery.
4031	// Either `{min,max}TransitTimeInDays` or `transitTimeTable` must be
4032	// set, but not both.
4033	MinTransitTimeInDays int64 `json:"minTransitTimeInDays,omitempty"`
4034
4035	// TransitBusinessDayConfig: The business days during which orders can
4036	// be in-transit. If not provided, Monday to Friday business days will
4037	// be assumed.
4038	TransitBusinessDayConfig *BusinessDayConfig `json:"transitBusinessDayConfig,omitempty"`
4039
4040	// TransitTimeTable: Transit time table, number of business days spent
4041	// in transit based on row and column dimensions. Either
4042	// `{min,max}TransitTimeInDays` or `transitTimeTable` can be set, but
4043	// not both.
4044	TransitTimeTable *TransitTable `json:"transitTimeTable,omitempty"`
4045
4046	// WarehouseBasedDeliveryTimes: Indicates that the delivery time should
4047	// be calculated per warehouse (shipping origin location) based on the
4048	// settings of the selected carrier. When set, no other transit time
4049	// related field in DeliveryTime should be set.
4050	WarehouseBasedDeliveryTimes []*WarehouseBasedDeliveryTime `json:"warehouseBasedDeliveryTimes,omitempty"`
4051
4052	// ForceSendFields is a list of field names (e.g. "CutoffTime") to
4053	// unconditionally include in API requests. By default, fields with
4054	// empty or default values are omitted from API requests. However, any
4055	// non-pointer, non-interface field appearing in ForceSendFields will be
4056	// sent to the server regardless of whether the field is empty or not.
4057	// This may be used to include empty fields in Patch requests.
4058	ForceSendFields []string `json:"-"`
4059
4060	// NullFields is a list of field names (e.g. "CutoffTime") to include in
4061	// API requests with the JSON null value. By default, fields with empty
4062	// values are omitted from API requests. However, any field with an
4063	// empty value appearing in NullFields will be sent to the server as
4064	// null. It is an error if a field in this list has a non-empty value.
4065	// This may be used to include null fields in Patch requests.
4066	NullFields []string `json:"-"`
4067}
4068
4069func (s *DeliveryTime) MarshalJSON() ([]byte, error) {
4070	type NoMethod DeliveryTime
4071	raw := NoMethod(*s)
4072	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4073}
4074
4075// ECommercePlatformLinkInfo: Additional information required for
4076// E_COMMERCE_PLATFORM link type.
4077type ECommercePlatformLinkInfo struct {
4078	// ExternalAccountId: The id used by the third party service provider to
4079	// identify the merchant.
4080	ExternalAccountId string `json:"externalAccountId,omitempty"`
4081
4082	// ForceSendFields is a list of field names (e.g. "ExternalAccountId")
4083	// to unconditionally include in API requests. By default, fields with
4084	// empty or default values are omitted from API requests. However, any
4085	// non-pointer, non-interface field appearing in ForceSendFields will be
4086	// sent to the server regardless of whether the field is empty or not.
4087	// This may be used to include empty fields in Patch requests.
4088	ForceSendFields []string `json:"-"`
4089
4090	// NullFields is a list of field names (e.g. "ExternalAccountId") to
4091	// include in API requests with the JSON null value. By default, fields
4092	// with empty values are omitted from API requests. However, any field
4093	// with an empty value appearing in NullFields will be sent to the
4094	// server as null. It is an error if a field in this list has a
4095	// non-empty value. This may be used to include null fields in Patch
4096	// requests.
4097	NullFields []string `json:"-"`
4098}
4099
4100func (s *ECommercePlatformLinkInfo) MarshalJSON() ([]byte, error) {
4101	type NoMethod ECommercePlatformLinkInfo
4102	raw := NoMethod(*s)
4103	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4104}
4105
4106// Error: An error returned by the API.
4107type Error struct {
4108	// Domain: The domain of the error.
4109	Domain string `json:"domain,omitempty"`
4110
4111	// Message: A description of the error.
4112	Message string `json:"message,omitempty"`
4113
4114	// Reason: The error code.
4115	Reason string `json:"reason,omitempty"`
4116
4117	// ForceSendFields is a list of field names (e.g. "Domain") to
4118	// unconditionally include in API requests. By default, fields with
4119	// empty or default values are omitted from API requests. However, any
4120	// non-pointer, non-interface field appearing in ForceSendFields will be
4121	// sent to the server regardless of whether the field is empty or not.
4122	// This may be used to include empty fields in Patch requests.
4123	ForceSendFields []string `json:"-"`
4124
4125	// NullFields is a list of field names (e.g. "Domain") to include in API
4126	// requests with the JSON null value. By default, fields with empty
4127	// values are omitted from API requests. However, any field with an
4128	// empty value appearing in NullFields will be sent to the server as
4129	// null. It is an error if a field in this list has a non-empty value.
4130	// This may be used to include null fields in Patch requests.
4131	NullFields []string `json:"-"`
4132}
4133
4134func (s *Error) MarshalJSON() ([]byte, error) {
4135	type NoMethod Error
4136	raw := NoMethod(*s)
4137	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4138}
4139
4140// Errors: A list of errors returned by a failed batch entry.
4141type Errors struct {
4142	// Code: The HTTP status of the first error in `errors`.
4143	Code int64 `json:"code,omitempty"`
4144
4145	// Errors: A list of errors.
4146	Errors []*Error `json:"errors,omitempty"`
4147
4148	// Message: The message of the first error in `errors`.
4149	Message string `json:"message,omitempty"`
4150
4151	// ForceSendFields is a list of field names (e.g. "Code") to
4152	// unconditionally include in API requests. By default, fields with
4153	// empty or default values are omitted from API requests. However, any
4154	// non-pointer, non-interface field appearing in ForceSendFields will be
4155	// sent to the server regardless of whether the field is empty or not.
4156	// This may be used to include empty fields in Patch requests.
4157	ForceSendFields []string `json:"-"`
4158
4159	// NullFields is a list of field names (e.g. "Code") to include in API
4160	// requests with the JSON null value. By default, fields with empty
4161	// values are omitted from API requests. However, any field with an
4162	// empty value appearing in NullFields will be sent to the server as
4163	// null. It is an error if a field in this list has a non-empty value.
4164	// This may be used to include null fields in Patch requests.
4165	NullFields []string `json:"-"`
4166}
4167
4168func (s *Errors) MarshalJSON() ([]byte, error) {
4169	type NoMethod Errors
4170	raw := NoMethod(*s)
4171	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4172}
4173
4174// FreeListingsProgramStatus: Response message for
4175// GetFreeListingsProgramStatus.
4176type FreeListingsProgramStatus struct {
4177	// RegionStatuses: Status of the program in each region. Regions with
4178	// the same status and review eligibility are grouped together in
4179	// `regionCodes`.
4180	RegionStatuses []*FreeListingsProgramStatusRegionStatus `json:"regionStatuses,omitempty"`
4181
4182	// State: If program is successfully onboarded for at least one region.
4183	//
4184	// Possible values:
4185	//   "PROGRAM_STATE_UNSPECIFIED" - State is not known.
4186	//   "ONBOARDED" - Program is onboarded for at least one country.
4187	//   "NOT_ONBOARDED" - Program is not onboarded for any country.
4188	State string `json:"state,omitempty"`
4189
4190	// ServerResponse contains the HTTP response code and headers from the
4191	// server.
4192	googleapi.ServerResponse `json:"-"`
4193
4194	// ForceSendFields is a list of field names (e.g. "RegionStatuses") to
4195	// unconditionally include in API requests. By default, fields with
4196	// empty or default values are omitted from API requests. However, any
4197	// non-pointer, non-interface field appearing in ForceSendFields will be
4198	// sent to the server regardless of whether the field is empty or not.
4199	// This may be used to include empty fields in Patch requests.
4200	ForceSendFields []string `json:"-"`
4201
4202	// NullFields is a list of field names (e.g. "RegionStatuses") to
4203	// include in API requests with the JSON null value. By default, fields
4204	// with empty values are omitted from API requests. However, any field
4205	// with an empty value appearing in NullFields will be sent to the
4206	// server as null. It is an error if a field in this list has a
4207	// non-empty value. This may be used to include null fields in Patch
4208	// requests.
4209	NullFields []string `json:"-"`
4210}
4211
4212func (s *FreeListingsProgramStatus) MarshalJSON() ([]byte, error) {
4213	type NoMethod FreeListingsProgramStatus
4214	raw := NoMethod(*s)
4215	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4216}
4217
4218// FreeListingsProgramStatusRegionStatus: Status of program and region.
4219type FreeListingsProgramStatusRegionStatus struct {
4220	// DisapprovalDate: Date by which `eligibility_status` will go from
4221	// `WARNING` to `DISAPPROVED`. It will be present when
4222	// `eligibility_status` is `WARNING`. Date will be provided in ISO 8601
4223	// format i.e. YYYY-MM-DD
4224	DisapprovalDate string `json:"disapprovalDate,omitempty"`
4225
4226	// EligibilityStatus: Eligibility status of the standard free listing
4227	// program.
4228	//
4229	// Possible values:
4230	//   "STATE_UNSPECIFIED" - State is not known.
4231	//   "APPROVED" - If the account has no issues and review is completed
4232	// successfully.
4233	//   "DISAPPROVED" - There are one or more issues that needs to be
4234	// resolved for account to be active for the program. Detailed list of
4235	// account issues are available in
4236	// [accountstatuses](https://developers.google.com/shopping-content/refer
4237	// ence/rest/v2.1/accountstatuses) API.
4238	//   "WARNING" - If account has issues but offers are servable. Some of
4239	// the issue can make account DISAPPROVED after a certain deadline.
4240	//   "UNDER_REVIEW" - Account is under review.
4241	//   "PENDING_REVIEW" - Account is waiting for review to start.
4242	//   "ONBOARDING" - Program is currently onboarding.
4243	EligibilityStatus string `json:"eligibilityStatus,omitempty"`
4244
4245	// EnhancedEligibilityStatus: Eligibility status of the enhanced free
4246	// listing program.
4247	//
4248	// Possible values:
4249	//   "STATE_UNSPECIFIED" - State is not known.
4250	//   "APPROVED" - If the account has no issues and review is completed
4251	// successfully.
4252	//   "DISAPPROVED" - There are one or more issues that needs to be
4253	// resolved for account to be active for the program. Detailed list of
4254	// account issues are available in
4255	// [accountstatuses](https://developers.google.com/shopping-content/refer
4256	// ence/rest/v2.1/accountstatuses) API.
4257	//   "WARNING" - If account has issues but offers are servable. Some of
4258	// the issue can make account DISAPPROVED after a certain deadline.
4259	//   "UNDER_REVIEW" - Account is under review.
4260	//   "PENDING_REVIEW" - Account is waiting for review to start.
4261	//   "ONBOARDING" - Program is currently onboarding.
4262	EnhancedEligibilityStatus string `json:"enhancedEligibilityStatus,omitempty"`
4263
4264	// IneligibilityReason: Reason if a program in a given country is not
4265	// eligible for review. Populated only if `review_eligibility_status` is
4266	// `INELIGIBLE`.
4267	IneligibilityReason string `json:"ineligibilityReason,omitempty"`
4268
4269	// RegionCodes: The two-letter ISO 3166-1 alpha-2
4270	// (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) codes for all the
4271	// regions with the same `eligibilityStatus` and `reviewEligibility`.
4272	RegionCodes []string `json:"regionCodes,omitempty"`
4273
4274	// ReviewEligibilityStatus: If a program in a given country is eligible
4275	// for review. It will be present only if eligibility status is
4276	// `DISAPPROVED`.
4277	//
4278	// Possible values:
4279	//   "REVIEW_ELIGIBILITY_UNSPECIFIED" - Review eligibility state is
4280	// unknown.
4281	//   "ELIGIBLE" - Account for a region code is eligible for review.
4282	//   "INELIGIBLE" - Account for a region code is not eligible for
4283	// review.
4284	ReviewEligibilityStatus string `json:"reviewEligibilityStatus,omitempty"`
4285
4286	// ReviewIssues: These issues will be evaluated in review process. Fix
4287	// all the issues before requesting the review.
4288	ReviewIssues []string `json:"reviewIssues,omitempty"`
4289
4290	// ForceSendFields is a list of field names (e.g. "DisapprovalDate") to
4291	// unconditionally include in API requests. By default, fields with
4292	// empty or default values are omitted from API requests. However, any
4293	// non-pointer, non-interface field appearing in ForceSendFields will be
4294	// sent to the server regardless of whether the field is empty or not.
4295	// This may be used to include empty fields in Patch requests.
4296	ForceSendFields []string `json:"-"`
4297
4298	// NullFields is a list of field names (e.g. "DisapprovalDate") to
4299	// include in API requests with the JSON null value. By default, fields
4300	// with empty values are omitted from API requests. However, any field
4301	// with an empty value appearing in NullFields will be sent to the
4302	// server as null. It is an error if a field in this list has a
4303	// non-empty value. This may be used to include null fields in Patch
4304	// requests.
4305	NullFields []string `json:"-"`
4306}
4307
4308func (s *FreeListingsProgramStatusRegionStatus) MarshalJSON() ([]byte, error) {
4309	type NoMethod FreeListingsProgramStatusRegionStatus
4310	raw := NoMethod(*s)
4311	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4312}
4313
4314type GmbAccounts struct {
4315	// AccountId: The ID of the Merchant Center account.
4316	AccountId uint64 `json:"accountId,omitempty,string"`
4317
4318	// GmbAccounts: A list of GMB accounts which are available to the
4319	// merchant.
4320	GmbAccounts []*GmbAccountsGmbAccount `json:"gmbAccounts,omitempty"`
4321
4322	// ForceSendFields is a list of field names (e.g. "AccountId") to
4323	// unconditionally include in API requests. By default, fields with
4324	// empty or default values are omitted from API requests. However, any
4325	// non-pointer, non-interface field appearing in ForceSendFields will be
4326	// sent to the server regardless of whether the field is empty or not.
4327	// This may be used to include empty fields in Patch requests.
4328	ForceSendFields []string `json:"-"`
4329
4330	// NullFields is a list of field names (e.g. "AccountId") to include in
4331	// API requests with the JSON null value. By default, fields with empty
4332	// values are omitted from API requests. However, any field with an
4333	// empty value appearing in NullFields will be sent to the server as
4334	// null. It is an error if a field in this list has a non-empty value.
4335	// This may be used to include null fields in Patch requests.
4336	NullFields []string `json:"-"`
4337}
4338
4339func (s *GmbAccounts) MarshalJSON() ([]byte, error) {
4340	type NoMethod GmbAccounts
4341	raw := NoMethod(*s)
4342	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4343}
4344
4345type GmbAccountsGmbAccount struct {
4346	// Email: The email which identifies the GMB account.
4347	Email string `json:"email,omitempty"`
4348
4349	// ListingCount: Number of listings under this account.
4350	ListingCount uint64 `json:"listingCount,omitempty,string"`
4351
4352	// Name: The name of the GMB account.
4353	Name string `json:"name,omitempty"`
4354
4355	// Type: The type of the GMB account (User or Business).
4356	Type string `json:"type,omitempty"`
4357
4358	// ForceSendFields is a list of field names (e.g. "Email") to
4359	// unconditionally include in API requests. By default, fields with
4360	// empty or default values are omitted from API requests. However, any
4361	// non-pointer, non-interface field appearing in ForceSendFields will be
4362	// sent to the server regardless of whether the field is empty or not.
4363	// This may be used to include empty fields in Patch requests.
4364	ForceSendFields []string `json:"-"`
4365
4366	// NullFields is a list of field names (e.g. "Email") to include in API
4367	// requests with the JSON null value. By default, fields with empty
4368	// values are omitted from API requests. However, any field with an
4369	// empty value appearing in NullFields will be sent to the server as
4370	// null. It is an error if a field in this list has a non-empty value.
4371	// This may be used to include null fields in Patch requests.
4372	NullFields []string `json:"-"`
4373}
4374
4375func (s *GmbAccountsGmbAccount) MarshalJSON() ([]byte, error) {
4376	type NoMethod GmbAccountsGmbAccount
4377	raw := NoMethod(*s)
4378	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4379}
4380
4381// Headers: A non-empty list of row or column headers for a table.
4382// Exactly one of `prices`, `weights`, `numItems`,
4383// `postalCodeGroupNames`, or `location` must be set.
4384type Headers struct {
4385	// Locations: A list of location ID sets. Must be non-empty. Can only be
4386	// set if all other fields are not set.
4387	Locations []*LocationIdSet `json:"locations,omitempty"`
4388
4389	// NumberOfItems: A list of inclusive number of items upper bounds. The
4390	// last value can be "infinity". For example `["10", "50",
4391	// "infinity"]` represents the headers "<= 10 items", "<= 50 items", and
4392	// "> 50 items". Must be non-empty. Can only be set if all other fields
4393	// are not set.
4394	NumberOfItems []string `json:"numberOfItems,omitempty"`
4395
4396	// PostalCodeGroupNames: A list of postal group names. The last value
4397	// can be "all other locations". Example: `["zone 1", "zone 2", "all
4398	// other locations"]`. The referred postal code groups must match the
4399	// delivery country of the service. Must be non-empty. Can only be set
4400	// if all other fields are not set.
4401	PostalCodeGroupNames []string `json:"postalCodeGroupNames,omitempty"`
4402
4403	// Prices: A list of inclusive order price upper bounds. The last
4404	// price's value can be "infinity". For example `[{"value": "10",
4405	// "currency": "USD"}, {"value": "500", "currency": "USD"}, {"value":
4406	// "infinity", "currency": "USD"}]` represents the headers "<= $10", "<=
4407	// $500", and "> $500". All prices within a service must have the same
4408	// currency. Must be non-empty. Can only be set if all other fields are
4409	// not set.
4410	Prices []*Price `json:"prices,omitempty"`
4411
4412	// Weights: A list of inclusive order weight upper bounds. The last
4413	// weight's value can be "infinity". For example `[{"value": "10",
4414	// "unit": "kg"}, {"value": "50", "unit": "kg"}, {"value": "infinity",
4415	// "unit": "kg"}]` represents the headers "<= 10kg", "<= 50kg", and ">
4416	// 50kg". All weights within a service must have the same unit. Must be
4417	// non-empty. Can only be set if all other fields are not set.
4418	Weights []*Weight `json:"weights,omitempty"`
4419
4420	// ForceSendFields is a list of field names (e.g. "Locations") to
4421	// unconditionally include in API requests. By default, fields with
4422	// empty or default values are omitted from API requests. However, any
4423	// non-pointer, non-interface field appearing in ForceSendFields will be
4424	// sent to the server regardless of whether the field is empty or not.
4425	// This may be used to include empty fields in Patch requests.
4426	ForceSendFields []string `json:"-"`
4427
4428	// NullFields is a list of field names (e.g. "Locations") to include in
4429	// API requests with the JSON null value. By default, fields with empty
4430	// values are omitted from API requests. However, any field with an
4431	// empty value appearing in NullFields will be sent to the server as
4432	// null. It is an error if a field in this list has a non-empty value.
4433	// This may be used to include null fields in Patch requests.
4434	NullFields []string `json:"-"`
4435}
4436
4437func (s *Headers) MarshalJSON() ([]byte, error) {
4438	type NoMethod Headers
4439	raw := NoMethod(*s)
4440	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4441}
4442
4443type HolidayCutoff struct {
4444	// DeadlineDate: Date of the order deadline, in ISO 8601 format. E.g.
4445	// "2016-11-29" for 29th November 2016. Required.
4446	DeadlineDate string `json:"deadlineDate,omitempty"`
4447
4448	// DeadlineHour: Hour of the day on the deadline date until which the
4449	// order has to be placed to qualify for the delivery guarantee.
4450	// Possible values are: 0 (midnight), 1, ..., 12 (noon), 13, ..., 23.
4451	// Required.
4452	DeadlineHour int64 `json:"deadlineHour,omitempty"`
4453
4454	// DeadlineTimezone: Timezone identifier for the deadline hour. A list
4455	// of identifiers can be found in the AdWords API documentation. E.g.
4456	// "Europe/Zurich". Required.
4457	DeadlineTimezone string `json:"deadlineTimezone,omitempty"`
4458
4459	// HolidayId: Unique identifier for the holiday. Required.
4460	HolidayId string `json:"holidayId,omitempty"`
4461
4462	// VisibleFromDate: Date on which the deadline will become visible to
4463	// consumers in ISO 8601 format. E.g. "2016-10-31" for 31st October
4464	// 2016. Required.
4465	VisibleFromDate string `json:"visibleFromDate,omitempty"`
4466
4467	// ForceSendFields is a list of field names (e.g. "DeadlineDate") to
4468	// unconditionally include in API requests. By default, fields with
4469	// empty or default values are omitted from API requests. However, any
4470	// non-pointer, non-interface field appearing in ForceSendFields will be
4471	// sent to the server regardless of whether the field is empty or not.
4472	// This may be used to include empty fields in Patch requests.
4473	ForceSendFields []string `json:"-"`
4474
4475	// NullFields is a list of field names (e.g. "DeadlineDate") to include
4476	// in API requests with the JSON null value. By default, fields with
4477	// empty values are omitted from API requests. However, any field with
4478	// an empty value appearing in NullFields will be sent to the server as
4479	// null. It is an error if a field in this list has a non-empty value.
4480	// This may be used to include null fields in Patch requests.
4481	NullFields []string `json:"-"`
4482}
4483
4484func (s *HolidayCutoff) MarshalJSON() ([]byte, error) {
4485	type NoMethod HolidayCutoff
4486	raw := NoMethod(*s)
4487	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4488}
4489
4490type HolidaysHoliday struct {
4491	// CountryCode: The CLDR territory code of the country in which the
4492	// holiday is available. E.g. "US", "DE", "GB". A holiday cutoff can
4493	// only be configured in a shipping settings service with matching
4494	// delivery country. Always present.
4495	CountryCode string `json:"countryCode,omitempty"`
4496
4497	// Date: Date of the holiday, in ISO 8601 format. E.g. "2016-12-25" for
4498	// Christmas 2016. Always present.
4499	Date string `json:"date,omitempty"`
4500
4501	// DeliveryGuaranteeDate: Date on which the order has to arrive at the
4502	// customer's, in ISO 8601 format. E.g. "2016-12-24" for 24th December
4503	// 2016. Always present.
4504	DeliveryGuaranteeDate string `json:"deliveryGuaranteeDate,omitempty"`
4505
4506	// DeliveryGuaranteeHour: Hour of the day in the delivery location's
4507	// timezone on the guaranteed delivery date by which the order has to
4508	// arrive at the customer's. Possible values are: 0 (midnight), 1, ...,
4509	// 12 (noon), 13, ..., 23. Always present.
4510	DeliveryGuaranteeHour uint64 `json:"deliveryGuaranteeHour,omitempty,string"`
4511
4512	// Id: Unique identifier for the holiday to be used when configuring
4513	// holiday cutoffs. Always present.
4514	Id string `json:"id,omitempty"`
4515
4516	// Type: The holiday type. Always present. Acceptable values are: -
4517	// "Christmas" - "Easter" - "Father's Day" - "Halloween" -
4518	// "Independence Day (USA)" - "Mother's Day" - "Thanksgiving" -
4519	// "Valentine's Day"
4520	Type string `json:"type,omitempty"`
4521
4522	// ForceSendFields is a list of field names (e.g. "CountryCode") to
4523	// unconditionally include in API requests. By default, fields with
4524	// empty or default values are omitted from API requests. However, any
4525	// non-pointer, non-interface field appearing in ForceSendFields will be
4526	// sent to the server regardless of whether the field is empty or not.
4527	// This may be used to include empty fields in Patch requests.
4528	ForceSendFields []string `json:"-"`
4529
4530	// NullFields is a list of field names (e.g. "CountryCode") to include
4531	// in API requests with the JSON null value. By default, fields with
4532	// empty values are omitted from API requests. However, any field with
4533	// an empty value appearing in NullFields will be sent to the server as
4534	// null. It is an error if a field in this list has a non-empty value.
4535	// This may be used to include null fields in Patch requests.
4536	NullFields []string `json:"-"`
4537}
4538
4539func (s *HolidaysHoliday) MarshalJSON() ([]byte, error) {
4540	type NoMethod HolidaysHoliday
4541	raw := NoMethod(*s)
4542	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4543}
4544
4545// InapplicabilityDetails: Map of inapplicability details.
4546type InapplicabilityDetails struct {
4547	// InapplicableCount: Count of this inapplicable reason code.
4548	InapplicableCount int64 `json:"inapplicableCount,omitempty,string"`
4549
4550	// InapplicableReason: Reason code this rule was not applicable.
4551	//
4552	// Possible values:
4553	//   "INAPPLICABLE_REASON_UNSPECIFIED" - Default value. Should not be
4554	// used.
4555	//   "CANNOT_BEAT_BUYBOX_WINNER" - The rule set for this product cannot
4556	// beat the buybox winner.
4557	//   "ALREADY_WINNING_BUYBOX" - This product can already win the buybox
4558	// without rule.
4559	//   "TRIUMPHED_OVER_BY_SAME_TYPE_RULE" - Another rule of the same type
4560	// takes precedence over this one.
4561	//   "TRIUMPHED_OVER_BY_OTHER_RULE_ON_OFFER" - Another rule of a
4562	// different type takes precedence over this one.
4563	//   "RESTRICTIONS_NOT_MET" - The rule restrictions are not met. For
4564	// example, this may be the case if the calculated rule price is lower
4565	// than floor price in the restriction.
4566	//   "UNCATEGORIZED" - The reason is not categorized to any known
4567	// reason.
4568	//   "INVALID_AUTO_PRICE_MIN" - The auto_pricing_min_price is invalid.
4569	// For example, it is missing or < 0.
4570	//   "INVALID_FLOOR_CONFIG" - The floor defined in the rule is invalid.
4571	// For example, it has the wrong sign which results in a floor < 0.
4572	InapplicableReason string `json:"inapplicableReason,omitempty"`
4573
4574	// ForceSendFields is a list of field names (e.g. "InapplicableCount")
4575	// to unconditionally include in API requests. By default, fields with
4576	// empty or default values are omitted from API requests. However, any
4577	// non-pointer, non-interface field appearing in ForceSendFields will be
4578	// sent to the server regardless of whether the field is empty or not.
4579	// This may be used to include empty fields in Patch requests.
4580	ForceSendFields []string `json:"-"`
4581
4582	// NullFields is a list of field names (e.g. "InapplicableCount") to
4583	// include in API requests with the JSON null value. By default, fields
4584	// with empty values are omitted from API requests. However, any field
4585	// with an empty value appearing in NullFields will be sent to the
4586	// server as null. It is an error if a field in this list has a
4587	// non-empty value. This may be used to include null fields in Patch
4588	// requests.
4589	NullFields []string `json:"-"`
4590}
4591
4592func (s *InapplicabilityDetails) MarshalJSON() ([]byte, error) {
4593	type NoMethod InapplicabilityDetails
4594	raw := NoMethod(*s)
4595	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4596}
4597
4598type Installment struct {
4599	// Amount: The amount the buyer has to pay per month.
4600	Amount *Price `json:"amount,omitempty"`
4601
4602	// Months: The number of installments the buyer has to pay.
4603	Months int64 `json:"months,omitempty,string"`
4604
4605	// ForceSendFields is a list of field names (e.g. "Amount") to
4606	// unconditionally include in API requests. By default, fields with
4607	// empty or default values are omitted from API requests. However, any
4608	// non-pointer, non-interface field appearing in ForceSendFields will be
4609	// sent to the server regardless of whether the field is empty or not.
4610	// This may be used to include empty fields in Patch requests.
4611	ForceSendFields []string `json:"-"`
4612
4613	// NullFields is a list of field names (e.g. "Amount") to include in API
4614	// requests with the JSON null value. By default, fields with empty
4615	// values are omitted from API requests. However, any field with an
4616	// empty value appearing in NullFields will be sent to the server as
4617	// null. It is an error if a field in this list has a non-empty value.
4618	// This may be used to include null fields in Patch requests.
4619	NullFields []string `json:"-"`
4620}
4621
4622func (s *Installment) MarshalJSON() ([]byte, error) {
4623	type NoMethod Installment
4624	raw := NoMethod(*s)
4625	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4626}
4627
4628type InvoiceSummary struct {
4629	// AdditionalChargeSummaries: Summary of the total amounts of the
4630	// additional charges.
4631	AdditionalChargeSummaries []*InvoiceSummaryAdditionalChargeSummary `json:"additionalChargeSummaries,omitempty"`
4632
4633	// ProductTotal: [required] Total price for the product.
4634	ProductTotal *Amount `json:"productTotal,omitempty"`
4635
4636	// ForceSendFields is a list of field names (e.g.
4637	// "AdditionalChargeSummaries") to unconditionally include in API
4638	// requests. By default, fields with empty or default values are omitted
4639	// from API requests. However, any non-pointer, non-interface field
4640	// appearing in ForceSendFields will be sent to the server regardless of
4641	// whether the field is empty or not. This may be used to include empty
4642	// fields in Patch requests.
4643	ForceSendFields []string `json:"-"`
4644
4645	// NullFields is a list of field names (e.g.
4646	// "AdditionalChargeSummaries") to include in API requests with the JSON
4647	// null value. By default, fields with empty values are omitted from API
4648	// requests. However, any field with an empty value appearing in
4649	// NullFields will be sent to the server as null. It is an error if a
4650	// field in this list has a non-empty value. This may be used to include
4651	// null fields in Patch requests.
4652	NullFields []string `json:"-"`
4653}
4654
4655func (s *InvoiceSummary) MarshalJSON() ([]byte, error) {
4656	type NoMethod InvoiceSummary
4657	raw := NoMethod(*s)
4658	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4659}
4660
4661type InvoiceSummaryAdditionalChargeSummary struct {
4662	// TotalAmount: [required] Total additional charge for this type.
4663	TotalAmount *Amount `json:"totalAmount,omitempty"`
4664
4665	// Type: [required] Type of the additional charge. Acceptable values
4666	// are: - "shipping"
4667	Type string `json:"type,omitempty"`
4668
4669	// ForceSendFields is a list of field names (e.g. "TotalAmount") to
4670	// unconditionally include in API requests. By default, fields with
4671	// empty or default values are omitted from API requests. However, any
4672	// non-pointer, non-interface field appearing in ForceSendFields will be
4673	// sent to the server regardless of whether the field is empty or not.
4674	// This may be used to include empty fields in Patch requests.
4675	ForceSendFields []string `json:"-"`
4676
4677	// NullFields is a list of field names (e.g. "TotalAmount") to include
4678	// in API requests with the JSON null value. By default, fields with
4679	// empty values are omitted from API requests. However, any field with
4680	// an empty value appearing in NullFields will be sent to the server as
4681	// null. It is an error if a field in this list has a non-empty value.
4682	// This may be used to include null fields in Patch requests.
4683	NullFields []string `json:"-"`
4684}
4685
4686func (s *InvoiceSummaryAdditionalChargeSummary) MarshalJSON() ([]byte, error) {
4687	type NoMethod InvoiceSummaryAdditionalChargeSummary
4688	raw := NoMethod(*s)
4689	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4690}
4691
4692// LabelIds: The IDs of labels that should be assigned to the CSS
4693// domain.
4694type LabelIds struct {
4695	// LabelIds: The list of label IDs.
4696	LabelIds googleapi.Int64s `json:"labelIds,omitempty"`
4697
4698	// ForceSendFields is a list of field names (e.g. "LabelIds") to
4699	// unconditionally include in API requests. By default, fields with
4700	// empty or default values are omitted from API requests. However, any
4701	// non-pointer, non-interface field appearing in ForceSendFields will be
4702	// sent to the server regardless of whether the field is empty or not.
4703	// This may be used to include empty fields in Patch requests.
4704	ForceSendFields []string `json:"-"`
4705
4706	// NullFields is a list of field names (e.g. "LabelIds") to include in
4707	// API requests with the JSON null value. By default, fields with empty
4708	// values are omitted from API requests. However, any field with an
4709	// empty value appearing in NullFields will be sent to the server as
4710	// null. It is an error if a field in this list has a non-empty value.
4711	// This may be used to include null fields in Patch requests.
4712	NullFields []string `json:"-"`
4713}
4714
4715func (s *LabelIds) MarshalJSON() ([]byte, error) {
4716	type NoMethod LabelIds
4717	raw := NoMethod(*s)
4718	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4719}
4720
4721type LiaAboutPageSettings struct {
4722	// Status: The status of the verification process for the About page.
4723	// Acceptable values are: - "active" - "inactive" - "pending"
4724	Status string `json:"status,omitempty"`
4725
4726	// Url: The URL for the About page.
4727	Url string `json:"url,omitempty"`
4728
4729	// ForceSendFields is a list of field names (e.g. "Status") to
4730	// unconditionally include in API requests. By default, fields with
4731	// empty or default values are omitted from API requests. However, any
4732	// non-pointer, non-interface field appearing in ForceSendFields will be
4733	// sent to the server regardless of whether the field is empty or not.
4734	// This may be used to include empty fields in Patch requests.
4735	ForceSendFields []string `json:"-"`
4736
4737	// NullFields is a list of field names (e.g. "Status") to include in API
4738	// requests with the JSON null value. By default, fields with empty
4739	// values are omitted from API requests. However, any field with an
4740	// empty value appearing in NullFields will be sent to the server as
4741	// null. It is an error if a field in this list has a non-empty value.
4742	// This may be used to include null fields in Patch requests.
4743	NullFields []string `json:"-"`
4744}
4745
4746func (s *LiaAboutPageSettings) MarshalJSON() ([]byte, error) {
4747	type NoMethod LiaAboutPageSettings
4748	raw := NoMethod(*s)
4749	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4750}
4751
4752type LiaCountrySettings struct {
4753	// About: The settings for the About page.
4754	About *LiaAboutPageSettings `json:"about,omitempty"`
4755
4756	// Country: Required. CLDR country code (e.g. "US").
4757	Country string `json:"country,omitempty"`
4758
4759	// HostedLocalStorefrontActive: The status of the "Merchant hosted local
4760	// storefront" feature.
4761	HostedLocalStorefrontActive bool `json:"hostedLocalStorefrontActive,omitempty"`
4762
4763	// Inventory: LIA inventory verification settings.
4764	Inventory *LiaInventorySettings `json:"inventory,omitempty"`
4765
4766	// OnDisplayToOrder: LIA "On Display To Order" settings.
4767	OnDisplayToOrder *LiaOnDisplayToOrderSettings `json:"onDisplayToOrder,omitempty"`
4768
4769	// PosDataProvider: The POS data provider linked with this country.
4770	PosDataProvider *LiaPosDataProvider `json:"posDataProvider,omitempty"`
4771
4772	// StorePickupActive: The status of the "Store pickup" feature.
4773	StorePickupActive bool `json:"storePickupActive,omitempty"`
4774
4775	// ForceSendFields is a list of field names (e.g. "About") to
4776	// unconditionally include in API requests. By default, fields with
4777	// empty or default values are omitted from API requests. However, any
4778	// non-pointer, non-interface field appearing in ForceSendFields will be
4779	// sent to the server regardless of whether the field is empty or not.
4780	// This may be used to include empty fields in Patch requests.
4781	ForceSendFields []string `json:"-"`
4782
4783	// NullFields is a list of field names (e.g. "About") to include in API
4784	// requests with the JSON null value. By default, fields with empty
4785	// values are omitted from API requests. However, any field with an
4786	// empty value appearing in NullFields will be sent to the server as
4787	// null. It is an error if a field in this list has a non-empty value.
4788	// This may be used to include null fields in Patch requests.
4789	NullFields []string `json:"-"`
4790}
4791
4792func (s *LiaCountrySettings) MarshalJSON() ([]byte, error) {
4793	type NoMethod LiaCountrySettings
4794	raw := NoMethod(*s)
4795	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4796}
4797
4798type LiaInventorySettings struct {
4799	// InventoryVerificationContactEmail: The email of the contact for the
4800	// inventory verification process.
4801	InventoryVerificationContactEmail string `json:"inventoryVerificationContactEmail,omitempty"`
4802
4803	// InventoryVerificationContactName: The name of the contact for the
4804	// inventory verification process.
4805	InventoryVerificationContactName string `json:"inventoryVerificationContactName,omitempty"`
4806
4807	// InventoryVerificationContactStatus: The status of the verification
4808	// contact. Acceptable values are: - "active" - "inactive" -
4809	// "pending"
4810	InventoryVerificationContactStatus string `json:"inventoryVerificationContactStatus,omitempty"`
4811
4812	// Status: The status of the inventory verification process. Acceptable
4813	// values are: - "active" - "inactive" - "pending"
4814	Status string `json:"status,omitempty"`
4815
4816	// ForceSendFields is a list of field names (e.g.
4817	// "InventoryVerificationContactEmail") to unconditionally include in
4818	// API requests. By default, fields with empty or default values are
4819	// omitted from API requests. However, any non-pointer, non-interface
4820	// field appearing in ForceSendFields will be sent to the server
4821	// regardless of whether the field is empty or not. This may be used to
4822	// include empty fields in Patch requests.
4823	ForceSendFields []string `json:"-"`
4824
4825	// NullFields is a list of field names (e.g.
4826	// "InventoryVerificationContactEmail") to include in API requests with
4827	// the JSON null value. By default, fields with empty values are omitted
4828	// from API requests. However, any field with an empty value appearing
4829	// in NullFields will be sent to the server as null. It is an error if a
4830	// field in this list has a non-empty value. This may be used to include
4831	// null fields in Patch requests.
4832	NullFields []string `json:"-"`
4833}
4834
4835func (s *LiaInventorySettings) MarshalJSON() ([]byte, error) {
4836	type NoMethod LiaInventorySettings
4837	raw := NoMethod(*s)
4838	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4839}
4840
4841type LiaOnDisplayToOrderSettings struct {
4842	// ShippingCostPolicyUrl: Shipping cost and policy URL.
4843	ShippingCostPolicyUrl string `json:"shippingCostPolicyUrl,omitempty"`
4844
4845	// Status: The status of the ?On display to order? feature. Acceptable
4846	// values are: - "active" - "inactive" - "pending"
4847	Status string `json:"status,omitempty"`
4848
4849	// ForceSendFields is a list of field names (e.g.
4850	// "ShippingCostPolicyUrl") to unconditionally include in API requests.
4851	// By default, fields with empty or default values are omitted from API
4852	// requests. However, any non-pointer, non-interface field appearing in
4853	// ForceSendFields will be sent to the server regardless of whether the
4854	// field is empty or not. This may be used to include empty fields in
4855	// Patch requests.
4856	ForceSendFields []string `json:"-"`
4857
4858	// NullFields is a list of field names (e.g. "ShippingCostPolicyUrl") to
4859	// include in API requests with the JSON null value. By default, fields
4860	// with empty values are omitted from API requests. However, any field
4861	// with an empty value appearing in NullFields will be sent to the
4862	// server as null. It is an error if a field in this list has a
4863	// non-empty value. This may be used to include null fields in Patch
4864	// requests.
4865	NullFields []string `json:"-"`
4866}
4867
4868func (s *LiaOnDisplayToOrderSettings) MarshalJSON() ([]byte, error) {
4869	type NoMethod LiaOnDisplayToOrderSettings
4870	raw := NoMethod(*s)
4871	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4872}
4873
4874type LiaPosDataProvider struct {
4875	// PosDataProviderId: The ID of the POS data provider.
4876	PosDataProviderId uint64 `json:"posDataProviderId,omitempty,string"`
4877
4878	// PosExternalAccountId: The account ID by which this merchant is known
4879	// to the POS data provider.
4880	PosExternalAccountId string `json:"posExternalAccountId,omitempty"`
4881
4882	// ForceSendFields is a list of field names (e.g. "PosDataProviderId")
4883	// to unconditionally include in API requests. By default, fields with
4884	// empty or default values are omitted from API requests. However, any
4885	// non-pointer, non-interface field appearing in ForceSendFields will be
4886	// sent to the server regardless of whether the field is empty or not.
4887	// This may be used to include empty fields in Patch requests.
4888	ForceSendFields []string `json:"-"`
4889
4890	// NullFields is a list of field names (e.g. "PosDataProviderId") to
4891	// include in API requests with the JSON null value. By default, fields
4892	// with empty values are omitted from API requests. However, any field
4893	// with an empty value appearing in NullFields will be sent to the
4894	// server as null. It is an error if a field in this list has a
4895	// non-empty value. This may be used to include null fields in Patch
4896	// requests.
4897	NullFields []string `json:"-"`
4898}
4899
4900func (s *LiaPosDataProvider) MarshalJSON() ([]byte, error) {
4901	type NoMethod LiaPosDataProvider
4902	raw := NoMethod(*s)
4903	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4904}
4905
4906// LiaSettings: Local Inventory ads (LIA) settings. All methods except
4907// listposdataproviders require the admin role.
4908type LiaSettings struct {
4909	// AccountId: The ID of the account to which these LIA settings belong.
4910	// Ignored upon update, always present in get request responses.
4911	AccountId uint64 `json:"accountId,omitempty,string"`
4912
4913	// CountrySettings: The LIA settings for each country.
4914	CountrySettings []*LiaCountrySettings `json:"countrySettings,omitempty"`
4915
4916	// Kind: Identifies what kind of resource this is. Value: the fixed
4917	// string "content#liaSettings"
4918	Kind string `json:"kind,omitempty"`
4919
4920	// ServerResponse contains the HTTP response code and headers from the
4921	// server.
4922	googleapi.ServerResponse `json:"-"`
4923
4924	// ForceSendFields is a list of field names (e.g. "AccountId") to
4925	// unconditionally include in API requests. By default, fields with
4926	// empty or default values are omitted from API requests. However, any
4927	// non-pointer, non-interface field appearing in ForceSendFields will be
4928	// sent to the server regardless of whether the field is empty or not.
4929	// This may be used to include empty fields in Patch requests.
4930	ForceSendFields []string `json:"-"`
4931
4932	// NullFields is a list of field names (e.g. "AccountId") to include in
4933	// API requests with the JSON null value. By default, fields with empty
4934	// values are omitted from API requests. However, any field with an
4935	// empty value appearing in NullFields will be sent to the server as
4936	// null. It is an error if a field in this list has a non-empty value.
4937	// This may be used to include null fields in Patch requests.
4938	NullFields []string `json:"-"`
4939}
4940
4941func (s *LiaSettings) MarshalJSON() ([]byte, error) {
4942	type NoMethod LiaSettings
4943	raw := NoMethod(*s)
4944	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4945}
4946
4947type LiasettingsCustomBatchRequest struct {
4948	// Entries: The request entries to be processed in the batch.
4949	Entries []*LiasettingsCustomBatchRequestEntry `json:"entries,omitempty"`
4950
4951	// ForceSendFields is a list of field names (e.g. "Entries") to
4952	// unconditionally include in API requests. By default, fields with
4953	// empty or default values are omitted from API requests. However, any
4954	// non-pointer, non-interface field appearing in ForceSendFields will be
4955	// sent to the server regardless of whether the field is empty or not.
4956	// This may be used to include empty fields in Patch requests.
4957	ForceSendFields []string `json:"-"`
4958
4959	// NullFields is a list of field names (e.g. "Entries") to include in
4960	// API requests with the JSON null value. By default, fields with empty
4961	// values are omitted from API requests. However, any field with an
4962	// empty value appearing in NullFields will be sent to the server as
4963	// null. It is an error if a field in this list has a non-empty value.
4964	// This may be used to include null fields in Patch requests.
4965	NullFields []string `json:"-"`
4966}
4967
4968func (s *LiasettingsCustomBatchRequest) MarshalJSON() ([]byte, error) {
4969	type NoMethod LiasettingsCustomBatchRequest
4970	raw := NoMethod(*s)
4971	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4972}
4973
4974type LiasettingsCustomBatchRequestEntry struct {
4975	// AccountId: The ID of the account for which to get/update account LIA
4976	// settings.
4977	AccountId uint64 `json:"accountId,omitempty,string"`
4978
4979	// BatchId: An entry ID, unique within the batch request.
4980	BatchId int64 `json:"batchId,omitempty"`
4981
4982	// ContactEmail: Inventory validation contact email. Required only for
4983	// SetInventoryValidationContact.
4984	ContactEmail string `json:"contactEmail,omitempty"`
4985
4986	// ContactName: Inventory validation contact name. Required only for
4987	// SetInventoryValidationContact.
4988	ContactName string `json:"contactName,omitempty"`
4989
4990	// Country: The country code. Required only for
4991	// RequestInventoryVerification.
4992	Country string `json:"country,omitempty"`
4993
4994	// GmbEmail: The GMB account. Required only for RequestGmbAccess.
4995	GmbEmail string `json:"gmbEmail,omitempty"`
4996
4997	// LiaSettings: The account Lia settings to update. Only defined if the
4998	// method is `update`.
4999	LiaSettings *LiaSettings `json:"liaSettings,omitempty"`
5000
5001	// MerchantId: The ID of the managing account.
5002	MerchantId uint64 `json:"merchantId,omitempty,string"`
5003
5004	// Method: The method of the batch entry. Acceptable values are: -
5005	// "get" - "getAccessibleGmbAccounts" - "requestGmbAccess" -
5006	// "requestInventoryVerification" -
5007	// "setInventoryVerificationContact" - "update"
5008	Method string `json:"method,omitempty"`
5009
5010	// PosDataProviderId: The ID of POS data provider. Required only for
5011	// SetPosProvider.
5012	PosDataProviderId uint64 `json:"posDataProviderId,omitempty,string"`
5013
5014	// PosExternalAccountId: The account ID by which this merchant is known
5015	// to the POS provider.
5016	PosExternalAccountId string `json:"posExternalAccountId,omitempty"`
5017
5018	// ForceSendFields is a list of field names (e.g. "AccountId") to
5019	// unconditionally include in API requests. By default, fields with
5020	// empty or default values are omitted from API requests. However, any
5021	// non-pointer, non-interface field appearing in ForceSendFields will be
5022	// sent to the server regardless of whether the field is empty or not.
5023	// This may be used to include empty fields in Patch requests.
5024	ForceSendFields []string `json:"-"`
5025
5026	// NullFields is a list of field names (e.g. "AccountId") to include in
5027	// API requests with the JSON null value. By default, fields with empty
5028	// values are omitted from API requests. However, any field with an
5029	// empty value appearing in NullFields will be sent to the server as
5030	// null. It is an error if a field in this list has a non-empty value.
5031	// This may be used to include null fields in Patch requests.
5032	NullFields []string `json:"-"`
5033}
5034
5035func (s *LiasettingsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
5036	type NoMethod LiasettingsCustomBatchRequestEntry
5037	raw := NoMethod(*s)
5038	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5039}
5040
5041type LiasettingsCustomBatchResponse struct {
5042	// Entries: The result of the execution of the batch requests.
5043	Entries []*LiasettingsCustomBatchResponseEntry `json:"entries,omitempty"`
5044
5045	// Kind: Identifies what kind of resource this is. Value: the fixed
5046	// string "content#liasettingsCustomBatchResponse".
5047	Kind string `json:"kind,omitempty"`
5048
5049	// ServerResponse contains the HTTP response code and headers from the
5050	// server.
5051	googleapi.ServerResponse `json:"-"`
5052
5053	// ForceSendFields is a list of field names (e.g. "Entries") to
5054	// unconditionally include in API requests. By default, fields with
5055	// empty or default values are omitted from API requests. However, any
5056	// non-pointer, non-interface field appearing in ForceSendFields will be
5057	// sent to the server regardless of whether the field is empty or not.
5058	// This may be used to include empty fields in Patch requests.
5059	ForceSendFields []string `json:"-"`
5060
5061	// NullFields is a list of field names (e.g. "Entries") to include in
5062	// API requests with the JSON null value. By default, fields with empty
5063	// values are omitted from API requests. However, any field with an
5064	// empty value appearing in NullFields will be sent to the server as
5065	// null. It is an error if a field in this list has a non-empty value.
5066	// This may be used to include null fields in Patch requests.
5067	NullFields []string `json:"-"`
5068}
5069
5070func (s *LiasettingsCustomBatchResponse) MarshalJSON() ([]byte, error) {
5071	type NoMethod LiasettingsCustomBatchResponse
5072	raw := NoMethod(*s)
5073	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5074}
5075
5076type LiasettingsCustomBatchResponseEntry struct {
5077	// BatchId: The ID of the request entry to which this entry responds.
5078	BatchId int64 `json:"batchId,omitempty"`
5079
5080	// Errors: A list of errors defined if, and only if, the request failed.
5081	Errors *Errors `json:"errors,omitempty"`
5082
5083	// GmbAccounts: The list of accessible GMB accounts.
5084	GmbAccounts *GmbAccounts `json:"gmbAccounts,omitempty"`
5085
5086	// Kind: Identifies what kind of resource this is. Value: the fixed
5087	// string "content#liasettingsCustomBatchResponseEntry"
5088	Kind string `json:"kind,omitempty"`
5089
5090	// LiaSettings: The retrieved or updated Lia settings.
5091	LiaSettings *LiaSettings `json:"liaSettings,omitempty"`
5092
5093	// PosDataProviders: The list of POS data providers.
5094	PosDataProviders []*PosDataProviders `json:"posDataProviders,omitempty"`
5095
5096	// ForceSendFields is a list of field names (e.g. "BatchId") to
5097	// unconditionally include in API requests. By default, fields with
5098	// empty or default values are omitted from API requests. However, any
5099	// non-pointer, non-interface field appearing in ForceSendFields will be
5100	// sent to the server regardless of whether the field is empty or not.
5101	// This may be used to include empty fields in Patch requests.
5102	ForceSendFields []string `json:"-"`
5103
5104	// NullFields is a list of field names (e.g. "BatchId") to include in
5105	// API requests with the JSON null value. By default, fields with empty
5106	// values are omitted from API requests. However, any field with an
5107	// empty value appearing in NullFields will be sent to the server as
5108	// null. It is an error if a field in this list has a non-empty value.
5109	// This may be used to include null fields in Patch requests.
5110	NullFields []string `json:"-"`
5111}
5112
5113func (s *LiasettingsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
5114	type NoMethod LiasettingsCustomBatchResponseEntry
5115	raw := NoMethod(*s)
5116	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5117}
5118
5119type LiasettingsGetAccessibleGmbAccountsResponse struct {
5120	// AccountId: The ID of the Merchant Center account.
5121	AccountId uint64 `json:"accountId,omitempty,string"`
5122
5123	// GmbAccounts: A list of GMB accounts which are available to the
5124	// merchant.
5125	GmbAccounts []*GmbAccountsGmbAccount `json:"gmbAccounts,omitempty"`
5126
5127	// Kind: Identifies what kind of resource this is. Value: the fixed
5128	// string "content#liasettingsGetAccessibleGmbAccountsResponse".
5129	Kind string `json:"kind,omitempty"`
5130
5131	// ServerResponse contains the HTTP response code and headers from the
5132	// server.
5133	googleapi.ServerResponse `json:"-"`
5134
5135	// ForceSendFields is a list of field names (e.g. "AccountId") to
5136	// unconditionally include in API requests. By default, fields with
5137	// empty or default values are omitted from API requests. However, any
5138	// non-pointer, non-interface field appearing in ForceSendFields will be
5139	// sent to the server regardless of whether the field is empty or not.
5140	// This may be used to include empty fields in Patch requests.
5141	ForceSendFields []string `json:"-"`
5142
5143	// NullFields is a list of field names (e.g. "AccountId") to include in
5144	// API requests with the JSON null value. By default, fields with empty
5145	// values are omitted from API requests. However, any field with an
5146	// empty value appearing in NullFields will be sent to the server as
5147	// null. It is an error if a field in this list has a non-empty value.
5148	// This may be used to include null fields in Patch requests.
5149	NullFields []string `json:"-"`
5150}
5151
5152func (s *LiasettingsGetAccessibleGmbAccountsResponse) MarshalJSON() ([]byte, error) {
5153	type NoMethod LiasettingsGetAccessibleGmbAccountsResponse
5154	raw := NoMethod(*s)
5155	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5156}
5157
5158type LiasettingsListPosDataProvidersResponse struct {
5159	// Kind: Identifies what kind of resource this is. Value: the fixed
5160	// string "content#liasettingsListPosDataProvidersResponse".
5161	Kind string `json:"kind,omitempty"`
5162
5163	// PosDataProviders: The list of POS data providers for each eligible
5164	// country
5165	PosDataProviders []*PosDataProviders `json:"posDataProviders,omitempty"`
5166
5167	// ServerResponse contains the HTTP response code and headers from the
5168	// server.
5169	googleapi.ServerResponse `json:"-"`
5170
5171	// ForceSendFields is a list of field names (e.g. "Kind") to
5172	// unconditionally include in API requests. By default, fields with
5173	// empty or default values are omitted from API requests. However, any
5174	// non-pointer, non-interface field appearing in ForceSendFields will be
5175	// sent to the server regardless of whether the field is empty or not.
5176	// This may be used to include empty fields in Patch requests.
5177	ForceSendFields []string `json:"-"`
5178
5179	// NullFields is a list of field names (e.g. "Kind") to include in API
5180	// requests with the JSON null value. By default, fields with empty
5181	// values are omitted from API requests. However, any field with an
5182	// empty value appearing in NullFields will be sent to the server as
5183	// null. It is an error if a field in this list has a non-empty value.
5184	// This may be used to include null fields in Patch requests.
5185	NullFields []string `json:"-"`
5186}
5187
5188func (s *LiasettingsListPosDataProvidersResponse) MarshalJSON() ([]byte, error) {
5189	type NoMethod LiasettingsListPosDataProvidersResponse
5190	raw := NoMethod(*s)
5191	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5192}
5193
5194type LiasettingsListResponse struct {
5195	// Kind: Identifies what kind of resource this is. Value: the fixed
5196	// string "content#liasettingsListResponse".
5197	Kind string `json:"kind,omitempty"`
5198
5199	// NextPageToken: The token for the retrieval of the next page of LIA
5200	// settings.
5201	NextPageToken string `json:"nextPageToken,omitempty"`
5202
5203	Resources []*LiaSettings `json:"resources,omitempty"`
5204
5205	// ServerResponse contains the HTTP response code and headers from the
5206	// server.
5207	googleapi.ServerResponse `json:"-"`
5208
5209	// ForceSendFields is a list of field names (e.g. "Kind") to
5210	// unconditionally include in API requests. By default, fields with
5211	// empty or default values are omitted from API requests. However, any
5212	// non-pointer, non-interface field appearing in ForceSendFields will be
5213	// sent to the server regardless of whether the field is empty or not.
5214	// This may be used to include empty fields in Patch requests.
5215	ForceSendFields []string `json:"-"`
5216
5217	// NullFields is a list of field names (e.g. "Kind") to include in API
5218	// requests with the JSON null value. By default, fields with empty
5219	// values are omitted from API requests. However, any field with an
5220	// empty value appearing in NullFields will be sent to the server as
5221	// null. It is an error if a field in this list has a non-empty value.
5222	// This may be used to include null fields in Patch requests.
5223	NullFields []string `json:"-"`
5224}
5225
5226func (s *LiasettingsListResponse) MarshalJSON() ([]byte, error) {
5227	type NoMethod LiasettingsListResponse
5228	raw := NoMethod(*s)
5229	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5230}
5231
5232type LiasettingsRequestGmbAccessResponse struct {
5233	// Kind: Identifies what kind of resource this is. Value: the fixed
5234	// string "content#liasettingsRequestGmbAccessResponse".
5235	Kind string `json:"kind,omitempty"`
5236
5237	// ServerResponse contains the HTTP response code and headers from the
5238	// server.
5239	googleapi.ServerResponse `json:"-"`
5240
5241	// ForceSendFields is a list of field names (e.g. "Kind") to
5242	// unconditionally include in API requests. By default, fields with
5243	// empty or default values are omitted from API requests. However, any
5244	// non-pointer, non-interface field appearing in ForceSendFields will be
5245	// sent to the server regardless of whether the field is empty or not.
5246	// This may be used to include empty fields in Patch requests.
5247	ForceSendFields []string `json:"-"`
5248
5249	// NullFields is a list of field names (e.g. "Kind") to include in API
5250	// requests with the JSON null value. By default, fields with empty
5251	// values are omitted from API requests. However, any field with an
5252	// empty value appearing in NullFields will be sent to the server as
5253	// null. It is an error if a field in this list has a non-empty value.
5254	// This may be used to include null fields in Patch requests.
5255	NullFields []string `json:"-"`
5256}
5257
5258func (s *LiasettingsRequestGmbAccessResponse) MarshalJSON() ([]byte, error) {
5259	type NoMethod LiasettingsRequestGmbAccessResponse
5260	raw := NoMethod(*s)
5261	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5262}
5263
5264type LiasettingsRequestInventoryVerificationResponse struct {
5265	// Kind: Identifies what kind of resource this is. Value: the fixed
5266	// string "content#liasettingsRequestInventoryVerificationResponse".
5267	Kind string `json:"kind,omitempty"`
5268
5269	// ServerResponse contains the HTTP response code and headers from the
5270	// server.
5271	googleapi.ServerResponse `json:"-"`
5272
5273	// ForceSendFields is a list of field names (e.g. "Kind") to
5274	// unconditionally include in API requests. By default, fields with
5275	// empty or default values are omitted from API requests. However, any
5276	// non-pointer, non-interface field appearing in ForceSendFields will be
5277	// sent to the server regardless of whether the field is empty or not.
5278	// This may be used to include empty fields in Patch requests.
5279	ForceSendFields []string `json:"-"`
5280
5281	// NullFields is a list of field names (e.g. "Kind") to include in API
5282	// requests with the JSON null value. By default, fields with empty
5283	// values are omitted from API requests. However, any field with an
5284	// empty value appearing in NullFields will be sent to the server as
5285	// null. It is an error if a field in this list has a non-empty value.
5286	// This may be used to include null fields in Patch requests.
5287	NullFields []string `json:"-"`
5288}
5289
5290func (s *LiasettingsRequestInventoryVerificationResponse) MarshalJSON() ([]byte, error) {
5291	type NoMethod LiasettingsRequestInventoryVerificationResponse
5292	raw := NoMethod(*s)
5293	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5294}
5295
5296type LiasettingsSetInventoryVerificationContactResponse struct {
5297	// Kind: Identifies what kind of resource this is. Value: the fixed
5298	// string
5299	// "content#liasettingsSetInventoryVerificationContactResponse".
5300	Kind string `json:"kind,omitempty"`
5301
5302	// ServerResponse contains the HTTP response code and headers from the
5303	// server.
5304	googleapi.ServerResponse `json:"-"`
5305
5306	// ForceSendFields is a list of field names (e.g. "Kind") to
5307	// unconditionally include in API requests. By default, fields with
5308	// empty or default values are omitted from API requests. However, any
5309	// non-pointer, non-interface field appearing in ForceSendFields will be
5310	// sent to the server regardless of whether the field is empty or not.
5311	// This may be used to include empty fields in Patch requests.
5312	ForceSendFields []string `json:"-"`
5313
5314	// NullFields is a list of field names (e.g. "Kind") to include in API
5315	// requests with the JSON null value. By default, fields with empty
5316	// values are omitted from API requests. However, any field with an
5317	// empty value appearing in NullFields will be sent to the server as
5318	// null. It is an error if a field in this list has a non-empty value.
5319	// This may be used to include null fields in Patch requests.
5320	NullFields []string `json:"-"`
5321}
5322
5323func (s *LiasettingsSetInventoryVerificationContactResponse) MarshalJSON() ([]byte, error) {
5324	type NoMethod LiasettingsSetInventoryVerificationContactResponse
5325	raw := NoMethod(*s)
5326	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5327}
5328
5329type LiasettingsSetPosDataProviderResponse struct {
5330	// Kind: Identifies what kind of resource this is. Value: the fixed
5331	// string "content#liasettingsSetPosDataProviderResponse".
5332	Kind string `json:"kind,omitempty"`
5333
5334	// ServerResponse contains the HTTP response code and headers from the
5335	// server.
5336	googleapi.ServerResponse `json:"-"`
5337
5338	// ForceSendFields is a list of field names (e.g. "Kind") to
5339	// unconditionally include in API requests. By default, fields with
5340	// empty or default values are omitted from API requests. However, any
5341	// non-pointer, non-interface field appearing in ForceSendFields will be
5342	// sent to the server regardless of whether the field is empty or not.
5343	// This may be used to include empty fields in Patch requests.
5344	ForceSendFields []string `json:"-"`
5345
5346	// NullFields is a list of field names (e.g. "Kind") to include in API
5347	// requests with the JSON null value. By default, fields with empty
5348	// values are omitted from API requests. However, any field with an
5349	// empty value appearing in NullFields will be sent to the server as
5350	// null. It is an error if a field in this list has a non-empty value.
5351	// This may be used to include null fields in Patch requests.
5352	NullFields []string `json:"-"`
5353}
5354
5355func (s *LiasettingsSetPosDataProviderResponse) MarshalJSON() ([]byte, error) {
5356	type NoMethod LiasettingsSetPosDataProviderResponse
5357	raw := NoMethod(*s)
5358	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5359}
5360
5361type LinkService struct {
5362	// Service: Service provided to or by the linked account. Acceptable
5363	// values are: - "shoppingActionsOrderManagement" -
5364	// "shoppingActionsProductManagement" -
5365	// "shoppingAdsProductManagement" - "paymentProcessing"
5366	Service string `json:"service,omitempty"`
5367
5368	// Status: Status of the link Acceptable values are: - "active" -
5369	// "inactive" - "pending"
5370	Status string `json:"status,omitempty"`
5371
5372	// ForceSendFields is a list of field names (e.g. "Service") to
5373	// unconditionally include in API requests. By default, fields with
5374	// empty or default values are omitted from API requests. However, any
5375	// non-pointer, non-interface field appearing in ForceSendFields will be
5376	// sent to the server regardless of whether the field is empty or not.
5377	// This may be used to include empty fields in Patch requests.
5378	ForceSendFields []string `json:"-"`
5379
5380	// NullFields is a list of field names (e.g. "Service") to include in
5381	// API requests with the JSON null value. By default, fields with empty
5382	// values are omitted from API requests. However, any field with an
5383	// empty value appearing in NullFields will be sent to the server as
5384	// null. It is an error if a field in this list has a non-empty value.
5385	// This may be used to include null fields in Patch requests.
5386	NullFields []string `json:"-"`
5387}
5388
5389func (s *LinkService) MarshalJSON() ([]byte, error) {
5390	type NoMethod LinkService
5391	raw := NoMethod(*s)
5392	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5393}
5394
5395type LinkedAccount struct {
5396	// LinkedAccountId: The ID of the linked account.
5397	LinkedAccountId string `json:"linkedAccountId,omitempty"`
5398
5399	// Services: List of provided services.
5400	Services []*LinkService `json:"services,omitempty"`
5401
5402	// ForceSendFields is a list of field names (e.g. "LinkedAccountId") to
5403	// unconditionally include in API requests. By default, fields with
5404	// empty or default values are omitted from API requests. However, any
5405	// non-pointer, non-interface field appearing in ForceSendFields will be
5406	// sent to the server regardless of whether the field is empty or not.
5407	// This may be used to include empty fields in Patch requests.
5408	ForceSendFields []string `json:"-"`
5409
5410	// NullFields is a list of field names (e.g. "LinkedAccountId") to
5411	// include in API requests with the JSON null value. By default, fields
5412	// with empty values are omitted from API requests. However, any field
5413	// with an empty value appearing in NullFields will be sent to the
5414	// server as null. It is an error if a field in this list has a
5415	// non-empty value. This may be used to include null fields in Patch
5416	// requests.
5417	NullFields []string `json:"-"`
5418}
5419
5420func (s *LinkedAccount) MarshalJSON() ([]byte, error) {
5421	type NoMethod LinkedAccount
5422	raw := NoMethod(*s)
5423	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5424}
5425
5426// ListAccountLabelsResponse: Response message for the
5427// `ListAccountLabels` method.
5428type ListAccountLabelsResponse struct {
5429	// AccountLabels: The labels from the specified account.
5430	AccountLabels []*AccountLabel `json:"accountLabels,omitempty"`
5431
5432	// NextPageToken: A token, which can be sent as `page_token` to retrieve
5433	// the next page. If this field is omitted, there are no subsequent
5434	// pages.
5435	NextPageToken string `json:"nextPageToken,omitempty"`
5436
5437	// ServerResponse contains the HTTP response code and headers from the
5438	// server.
5439	googleapi.ServerResponse `json:"-"`
5440
5441	// ForceSendFields is a list of field names (e.g. "AccountLabels") to
5442	// unconditionally include in API requests. By default, fields with
5443	// empty or default values are omitted from API requests. However, any
5444	// non-pointer, non-interface field appearing in ForceSendFields will be
5445	// sent to the server regardless of whether the field is empty or not.
5446	// This may be used to include empty fields in Patch requests.
5447	ForceSendFields []string `json:"-"`
5448
5449	// NullFields is a list of field names (e.g. "AccountLabels") to include
5450	// in API requests with the JSON null value. By default, fields with
5451	// empty values are omitted from API requests. However, any field with
5452	// an empty value appearing in NullFields will be sent to the server as
5453	// null. It is an error if a field in this list has a non-empty value.
5454	// This may be used to include null fields in Patch requests.
5455	NullFields []string `json:"-"`
5456}
5457
5458func (s *ListAccountLabelsResponse) MarshalJSON() ([]byte, error) {
5459	type NoMethod ListAccountLabelsResponse
5460	raw := NoMethod(*s)
5461	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5462}
5463
5464// ListAccountReturnCarrierResponse: Response for listing account return
5465// carriers.
5466type ListAccountReturnCarrierResponse struct {
5467	// AccountReturnCarriers: List of all available account return carriers
5468	// for the merchant.
5469	AccountReturnCarriers []*AccountReturnCarrier `json:"accountReturnCarriers,omitempty"`
5470
5471	// ServerResponse contains the HTTP response code and headers from the
5472	// server.
5473	googleapi.ServerResponse `json:"-"`
5474
5475	// ForceSendFields is a list of field names (e.g.
5476	// "AccountReturnCarriers") to unconditionally include in API requests.
5477	// By default, fields with empty or default values are omitted from API
5478	// requests. However, any non-pointer, non-interface field appearing in
5479	// ForceSendFields will be sent to the server regardless of whether the
5480	// field is empty or not. This may be used to include empty fields in
5481	// Patch requests.
5482	ForceSendFields []string `json:"-"`
5483
5484	// NullFields is a list of field names (e.g. "AccountReturnCarriers") to
5485	// include in API requests with the JSON null value. By default, fields
5486	// with empty values are omitted from API requests. However, any field
5487	// with an empty value appearing in NullFields will be sent to the
5488	// server as null. It is an error if a field in this list has a
5489	// non-empty value. This may be used to include null fields in Patch
5490	// requests.
5491	NullFields []string `json:"-"`
5492}
5493
5494func (s *ListAccountReturnCarrierResponse) MarshalJSON() ([]byte, error) {
5495	type NoMethod ListAccountReturnCarrierResponse
5496	raw := NoMethod(*s)
5497	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5498}
5499
5500// ListCollectionStatusesResponse: Response message for the
5501// ListCollectionStatuses method.
5502type ListCollectionStatusesResponse struct {
5503	// NextPageToken: A token, which can be sent as `page_token` to retrieve
5504	// the next page. If this field is omitted, there are no subsequent
5505	// pages.
5506	NextPageToken string `json:"nextPageToken,omitempty"`
5507
5508	// Resources: The collectionstatuses listed.
5509	Resources []*CollectionStatus `json:"resources,omitempty"`
5510
5511	// ServerResponse contains the HTTP response code and headers from the
5512	// server.
5513	googleapi.ServerResponse `json:"-"`
5514
5515	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
5516	// unconditionally include in API requests. By default, fields with
5517	// empty or default values are omitted from API requests. However, any
5518	// non-pointer, non-interface field appearing in ForceSendFields will be
5519	// sent to the server regardless of whether the field is empty or not.
5520	// This may be used to include empty fields in Patch requests.
5521	ForceSendFields []string `json:"-"`
5522
5523	// NullFields is a list of field names (e.g. "NextPageToken") to include
5524	// in API requests with the JSON null value. By default, fields with
5525	// empty values are omitted from API requests. However, any field with
5526	// an empty value appearing in NullFields will be sent to the server as
5527	// null. It is an error if a field in this list has a non-empty value.
5528	// This may be used to include null fields in Patch requests.
5529	NullFields []string `json:"-"`
5530}
5531
5532func (s *ListCollectionStatusesResponse) MarshalJSON() ([]byte, error) {
5533	type NoMethod ListCollectionStatusesResponse
5534	raw := NoMethod(*s)
5535	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5536}
5537
5538// ListCollectionsResponse: Response message for the ListCollections
5539// method.
5540type ListCollectionsResponse struct {
5541	// NextPageToken: A token, which can be sent as `page_token` to retrieve
5542	// the next page. If this field is omitted, there are no subsequent
5543	// pages.
5544	NextPageToken string `json:"nextPageToken,omitempty"`
5545
5546	// Resources: The collections listed.
5547	Resources []*Collection `json:"resources,omitempty"`
5548
5549	// ServerResponse contains the HTTP response code and headers from the
5550	// server.
5551	googleapi.ServerResponse `json:"-"`
5552
5553	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
5554	// unconditionally include in API requests. By default, fields with
5555	// empty or default values are omitted from API requests. However, any
5556	// non-pointer, non-interface field appearing in ForceSendFields will be
5557	// sent to the server regardless of whether the field is empty or not.
5558	// This may be used to include empty fields in Patch requests.
5559	ForceSendFields []string `json:"-"`
5560
5561	// NullFields is a list of field names (e.g. "NextPageToken") to include
5562	// in API requests with the JSON null value. By default, fields with
5563	// empty values are omitted from API requests. However, any field with
5564	// an empty value appearing in NullFields will be sent to the server as
5565	// null. It is an error if a field in this list has a non-empty value.
5566	// This may be used to include null fields in Patch requests.
5567	NullFields []string `json:"-"`
5568}
5569
5570func (s *ListCollectionsResponse) MarshalJSON() ([]byte, error) {
5571	type NoMethod ListCollectionsResponse
5572	raw := NoMethod(*s)
5573	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5574}
5575
5576// ListCssesResponse: The response message for the `ListCsses` method
5577type ListCssesResponse struct {
5578	// Csses: The CSS domains affiliated with the specified CSS group.
5579	Csses []*Css `json:"csses,omitempty"`
5580
5581	// NextPageToken: A token, which can be sent as `page_token` to retrieve
5582	// the next page. If this field is omitted, there are no subsequent
5583	// pages.
5584	NextPageToken string `json:"nextPageToken,omitempty"`
5585
5586	// ServerResponse contains the HTTP response code and headers from the
5587	// server.
5588	googleapi.ServerResponse `json:"-"`
5589
5590	// ForceSendFields is a list of field names (e.g. "Csses") to
5591	// unconditionally include in API requests. By default, fields with
5592	// empty or default values are omitted from API requests. However, any
5593	// non-pointer, non-interface field appearing in ForceSendFields will be
5594	// sent to the server regardless of whether the field is empty or not.
5595	// This may be used to include empty fields in Patch requests.
5596	ForceSendFields []string `json:"-"`
5597
5598	// NullFields is a list of field names (e.g. "Csses") to include in API
5599	// requests with the JSON null value. By default, fields with empty
5600	// values are omitted from API requests. However, any field with an
5601	// empty value appearing in NullFields will be sent to the server as
5602	// null. It is an error if a field in this list has a non-empty value.
5603	// This may be used to include null fields in Patch requests.
5604	NullFields []string `json:"-"`
5605}
5606
5607func (s *ListCssesResponse) MarshalJSON() ([]byte, error) {
5608	type NoMethod ListCssesResponse
5609	raw := NoMethod(*s)
5610	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5611}
5612
5613// ListRegionsResponse: Response message for the `ListRegions` method.
5614type ListRegionsResponse struct {
5615	// NextPageToken: A token, which can be sent as `page_token` to retrieve
5616	// the next page. If this field is omitted, there are no subsequent
5617	// pages.
5618	NextPageToken string `json:"nextPageToken,omitempty"`
5619
5620	// Regions: The regions from the specified merchant.
5621	Regions []*Region `json:"regions,omitempty"`
5622
5623	// ServerResponse contains the HTTP response code and headers from the
5624	// server.
5625	googleapi.ServerResponse `json:"-"`
5626
5627	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
5628	// unconditionally include in API requests. By default, fields with
5629	// empty or default values are omitted from API requests. However, any
5630	// non-pointer, non-interface field appearing in ForceSendFields will be
5631	// sent to the server regardless of whether the field is empty or not.
5632	// This may be used to include empty fields in Patch requests.
5633	ForceSendFields []string `json:"-"`
5634
5635	// NullFields is a list of field names (e.g. "NextPageToken") to include
5636	// in API requests with the JSON null value. By default, fields with
5637	// empty values are omitted from API requests. However, any field with
5638	// an empty value appearing in NullFields will be sent to the server as
5639	// null. It is an error if a field in this list has a non-empty value.
5640	// This may be used to include null fields in Patch requests.
5641	NullFields []string `json:"-"`
5642}
5643
5644func (s *ListRegionsResponse) MarshalJSON() ([]byte, error) {
5645	type NoMethod ListRegionsResponse
5646	raw := NoMethod(*s)
5647	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5648}
5649
5650// ListRepricingProductReportsResponse: Response message for the
5651// ListRepricingProductReports method.
5652type ListRepricingProductReportsResponse struct {
5653	// NextPageToken: A token for retrieving the next page. Its absence
5654	// means there is no subsequent page.
5655	NextPageToken string `json:"nextPageToken,omitempty"`
5656
5657	// RepricingProductReports: Periodic reports for the given Repricing
5658	// product.
5659	RepricingProductReports []*RepricingProductReport `json:"repricingProductReports,omitempty"`
5660
5661	// ServerResponse contains the HTTP response code and headers from the
5662	// server.
5663	googleapi.ServerResponse `json:"-"`
5664
5665	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
5666	// unconditionally include in API requests. By default, fields with
5667	// empty or default values are omitted from API requests. However, any
5668	// non-pointer, non-interface field appearing in ForceSendFields will be
5669	// sent to the server regardless of whether the field is empty or not.
5670	// This may be used to include empty fields in Patch requests.
5671	ForceSendFields []string `json:"-"`
5672
5673	// NullFields is a list of field names (e.g. "NextPageToken") to include
5674	// in API requests with the JSON null value. By default, fields with
5675	// empty values are omitted from API requests. However, any field with
5676	// an empty value appearing in NullFields will be sent to the server as
5677	// null. It is an error if a field in this list has a non-empty value.
5678	// This may be used to include null fields in Patch requests.
5679	NullFields []string `json:"-"`
5680}
5681
5682func (s *ListRepricingProductReportsResponse) MarshalJSON() ([]byte, error) {
5683	type NoMethod ListRepricingProductReportsResponse
5684	raw := NoMethod(*s)
5685	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5686}
5687
5688// ListRepricingRuleReportsResponse: Response message for the
5689// ListRepricingRuleReports method.
5690type ListRepricingRuleReportsResponse struct {
5691	// NextPageToken: A token for retrieving the next page. Its absence
5692	// means there is no subsequent page.
5693	NextPageToken string `json:"nextPageToken,omitempty"`
5694
5695	// RepricingRuleReports: Daily reports for the given Repricing rule.
5696	RepricingRuleReports []*RepricingRuleReport `json:"repricingRuleReports,omitempty"`
5697
5698	// ServerResponse contains the HTTP response code and headers from the
5699	// server.
5700	googleapi.ServerResponse `json:"-"`
5701
5702	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
5703	// 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. "NextPageToken") to include
5711	// in API requests with the JSON null value. By default, fields with
5712	// empty values are omitted from API requests. However, any field with
5713	// an empty value appearing in NullFields will be sent to the server as
5714	// null. It is an error if a field in this list has a non-empty value.
5715	// This may be used to include null fields in Patch requests.
5716	NullFields []string `json:"-"`
5717}
5718
5719func (s *ListRepricingRuleReportsResponse) MarshalJSON() ([]byte, error) {
5720	type NoMethod ListRepricingRuleReportsResponse
5721	raw := NoMethod(*s)
5722	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5723}
5724
5725// ListRepricingRulesResponse: Response message for the
5726// `ListRepricingRules` method.
5727type ListRepricingRulesResponse struct {
5728	// NextPageToken: A token, which can be sent as `page_token` to retrieve
5729	// the next page. If this field is omitted, there are no subsequent
5730	// pages.
5731	NextPageToken string `json:"nextPageToken,omitempty"`
5732
5733	// RepricingRules: The rules from the specified merchant.
5734	RepricingRules []*RepricingRule `json:"repricingRules,omitempty"`
5735
5736	// ServerResponse contains the HTTP response code and headers from the
5737	// server.
5738	googleapi.ServerResponse `json:"-"`
5739
5740	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
5741	// unconditionally include in API requests. By default, fields with
5742	// empty or default values are omitted from API requests. However, any
5743	// non-pointer, non-interface field appearing in ForceSendFields will be
5744	// sent to the server regardless of whether the field is empty or not.
5745	// This may be used to include empty fields in Patch requests.
5746	ForceSendFields []string `json:"-"`
5747
5748	// NullFields is a list of field names (e.g. "NextPageToken") to include
5749	// in API requests with the JSON null value. By default, fields with
5750	// empty values are omitted from API requests. However, any field with
5751	// an empty value appearing in NullFields will be sent to the server as
5752	// null. It is an error if a field in this list has a non-empty value.
5753	// This may be used to include null fields in Patch requests.
5754	NullFields []string `json:"-"`
5755}
5756
5757func (s *ListRepricingRulesResponse) MarshalJSON() ([]byte, error) {
5758	type NoMethod ListRepricingRulesResponse
5759	raw := NoMethod(*s)
5760	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5761}
5762
5763// ListReturnPolicyOnlineResponse: Response message for the
5764// `ListReturnPolicyOnline` method.
5765type ListReturnPolicyOnlineResponse struct {
5766	// ReturnPolicies: The retrieved return policies.
5767	ReturnPolicies []*ReturnPolicyOnline `json:"returnPolicies,omitempty"`
5768
5769	// ServerResponse contains the HTTP response code and headers from the
5770	// server.
5771	googleapi.ServerResponse `json:"-"`
5772
5773	// ForceSendFields is a list of field names (e.g. "ReturnPolicies") to
5774	// unconditionally include in API requests. By default, fields with
5775	// empty or default values are omitted from API requests. However, any
5776	// non-pointer, non-interface field appearing in ForceSendFields will be
5777	// sent to the server regardless of whether the field is empty or not.
5778	// This may be used to include empty fields in Patch requests.
5779	ForceSendFields []string `json:"-"`
5780
5781	// NullFields is a list of field names (e.g. "ReturnPolicies") to
5782	// include in API requests with the JSON null value. By default, fields
5783	// with empty values are omitted from API requests. However, any field
5784	// with an empty value appearing in NullFields will be sent to the
5785	// server as null. It is an error if a field in this list has a
5786	// non-empty value. This may be used to include null fields in Patch
5787	// requests.
5788	NullFields []string `json:"-"`
5789}
5790
5791func (s *ListReturnPolicyOnlineResponse) MarshalJSON() ([]byte, error) {
5792	type NoMethod ListReturnPolicyOnlineResponse
5793	raw := NoMethod(*s)
5794	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5795}
5796
5797// LocalInventory: Local inventory resource. For accepted attribute
5798// values, see the local product inventory feed specification.
5799type LocalInventory struct {
5800	// Availability: Availability of the product. For accepted attribute
5801	// values, see the local product inventory feed specification.
5802	Availability string `json:"availability,omitempty"`
5803
5804	// InstoreProductLocation: In-store product location.
5805	InstoreProductLocation string `json:"instoreProductLocation,omitempty"`
5806
5807	// Kind: Identifies what kind of resource this is. Value: the fixed
5808	// string "content#localInventory"
5809	Kind string `json:"kind,omitempty"`
5810
5811	// PickupMethod: Supported pickup method for this offer. Unless the
5812	// value is "not supported", this field must be submitted together with
5813	// `pickupSla`. For accepted attribute values, see the local product
5814	// inventory feed specification.
5815	PickupMethod string `json:"pickupMethod,omitempty"`
5816
5817	// PickupSla: Expected date that an order will be ready for pickup
5818	// relative to the order date. Must be submitted together with
5819	// `pickupMethod`. For accepted attribute values, see the local product
5820	// inventory feed specification.
5821	PickupSla string `json:"pickupSla,omitempty"`
5822
5823	// Price: Price of the product.
5824	Price *Price `json:"price,omitempty"`
5825
5826	// Quantity: Quantity of the product. Must be nonnegative.
5827	Quantity int64 `json:"quantity,omitempty"`
5828
5829	// SalePrice: Sale price of the product. Mandatory if
5830	// `sale_price_effective_date` is defined.
5831	SalePrice *Price `json:"salePrice,omitempty"`
5832
5833	// SalePriceEffectiveDate: A date range represented by a pair of ISO
5834	// 8601 dates separated by a space, comma, or slash. Both dates may be
5835	// specified as 'null' if undecided.
5836	SalePriceEffectiveDate string `json:"salePriceEffectiveDate,omitempty"`
5837
5838	// StoreCode: Required. Store code of this local inventory resource.
5839	StoreCode string `json:"storeCode,omitempty"`
5840
5841	// ServerResponse contains the HTTP response code and headers from the
5842	// server.
5843	googleapi.ServerResponse `json:"-"`
5844
5845	// ForceSendFields is a list of field names (e.g. "Availability") to
5846	// unconditionally include in API requests. By default, fields with
5847	// empty or default values are omitted from API requests. However, any
5848	// non-pointer, non-interface field appearing in ForceSendFields will be
5849	// sent to the server regardless of whether the field is empty or not.
5850	// This may be used to include empty fields in Patch requests.
5851	ForceSendFields []string `json:"-"`
5852
5853	// NullFields is a list of field names (e.g. "Availability") to include
5854	// in API requests with the JSON null value. By default, fields with
5855	// empty values are omitted from API requests. However, any field with
5856	// an empty value appearing in NullFields will be sent to the server as
5857	// null. It is an error if a field in this list has a non-empty value.
5858	// This may be used to include null fields in Patch requests.
5859	NullFields []string `json:"-"`
5860}
5861
5862func (s *LocalInventory) MarshalJSON() ([]byte, error) {
5863	type NoMethod LocalInventory
5864	raw := NoMethod(*s)
5865	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5866}
5867
5868type LocalinventoryCustomBatchRequest struct {
5869	// Entries: The request entries to be processed in the batch.
5870	Entries []*LocalinventoryCustomBatchRequestEntry `json:"entries,omitempty"`
5871
5872	// ForceSendFields is a list of field names (e.g. "Entries") to
5873	// unconditionally include in API requests. By default, fields with
5874	// empty or default values are omitted from API requests. However, any
5875	// non-pointer, non-interface field appearing in ForceSendFields will be
5876	// sent to the server regardless of whether the field is empty or not.
5877	// This may be used to include empty fields in Patch requests.
5878	ForceSendFields []string `json:"-"`
5879
5880	// NullFields is a list of field names (e.g. "Entries") to include in
5881	// API requests with the JSON null value. By default, fields with empty
5882	// values are omitted from API requests. However, any field with an
5883	// empty value appearing in NullFields will be sent to the server as
5884	// null. It is an error if a field in this list has a non-empty value.
5885	// This may be used to include null fields in Patch requests.
5886	NullFields []string `json:"-"`
5887}
5888
5889func (s *LocalinventoryCustomBatchRequest) MarshalJSON() ([]byte, error) {
5890	type NoMethod LocalinventoryCustomBatchRequest
5891	raw := NoMethod(*s)
5892	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5893}
5894
5895// LocalinventoryCustomBatchRequestEntry: Batch entry encoding a single
5896// local inventory update request.
5897type LocalinventoryCustomBatchRequestEntry struct {
5898	// BatchId: An entry ID, unique within the batch request.
5899	BatchId int64 `json:"batchId,omitempty"`
5900
5901	// LocalInventory: Local inventory of the product.
5902	LocalInventory *LocalInventory `json:"localInventory,omitempty"`
5903
5904	// MerchantId: The ID of the managing account.
5905	MerchantId uint64 `json:"merchantId,omitempty,string"`
5906
5907	// Method: Method of the batch request entry. Acceptable values are: -
5908	// "insert"
5909	Method string `json:"method,omitempty"`
5910
5911	// ProductId: The ID of the product for which to update local inventory.
5912	ProductId string `json:"productId,omitempty"`
5913
5914	// ForceSendFields is a list of field names (e.g. "BatchId") to
5915	// unconditionally include in API requests. By default, fields with
5916	// empty or default values are omitted from API requests. However, any
5917	// non-pointer, non-interface field appearing in ForceSendFields will be
5918	// sent to the server regardless of whether the field is empty or not.
5919	// This may be used to include empty fields in Patch requests.
5920	ForceSendFields []string `json:"-"`
5921
5922	// NullFields is a list of field names (e.g. "BatchId") to include in
5923	// API requests with the JSON null value. By default, fields with empty
5924	// values are omitted from API requests. However, any field with an
5925	// empty value appearing in NullFields will be sent to the server as
5926	// null. It is an error if a field in this list has a non-empty value.
5927	// This may be used to include null fields in Patch requests.
5928	NullFields []string `json:"-"`
5929}
5930
5931func (s *LocalinventoryCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
5932	type NoMethod LocalinventoryCustomBatchRequestEntry
5933	raw := NoMethod(*s)
5934	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5935}
5936
5937type LocalinventoryCustomBatchResponse struct {
5938	// Entries: The result of the execution of the batch requests.
5939	Entries []*LocalinventoryCustomBatchResponseEntry `json:"entries,omitempty"`
5940
5941	// Kind: Identifies what kind of resource this is. Value: the fixed
5942	// string "content#localinventoryCustomBatchResponse".
5943	Kind string `json:"kind,omitempty"`
5944
5945	// ServerResponse contains the HTTP response code and headers from the
5946	// server.
5947	googleapi.ServerResponse `json:"-"`
5948
5949	// ForceSendFields is a list of field names (e.g. "Entries") to
5950	// unconditionally include in API requests. By default, fields with
5951	// empty or default values are omitted from API requests. However, any
5952	// non-pointer, non-interface field appearing in ForceSendFields will be
5953	// sent to the server regardless of whether the field is empty or not.
5954	// This may be used to include empty fields in Patch requests.
5955	ForceSendFields []string `json:"-"`
5956
5957	// NullFields is a list of field names (e.g. "Entries") to include in
5958	// API requests with the JSON null value. By default, fields with empty
5959	// values are omitted from API requests. However, any field with an
5960	// empty value appearing in NullFields will be sent to the server as
5961	// null. It is an error if a field in this list has a non-empty value.
5962	// This may be used to include null fields in Patch requests.
5963	NullFields []string `json:"-"`
5964}
5965
5966func (s *LocalinventoryCustomBatchResponse) MarshalJSON() ([]byte, error) {
5967	type NoMethod LocalinventoryCustomBatchResponse
5968	raw := NoMethod(*s)
5969	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5970}
5971
5972// LocalinventoryCustomBatchResponseEntry: Batch entry encoding a single
5973// local inventory update response.
5974type LocalinventoryCustomBatchResponseEntry struct {
5975	// BatchId: The ID of the request entry this entry responds to.
5976	BatchId int64 `json:"batchId,omitempty"`
5977
5978	// Errors: A list of errors defined if and only if the request failed.
5979	Errors *Errors `json:"errors,omitempty"`
5980
5981	// Kind: Identifies what kind of resource this is. Value: the fixed
5982	// string "content#localinventoryCustomBatchResponseEntry"
5983	Kind string `json:"kind,omitempty"`
5984
5985	// ForceSendFields is a list of field names (e.g. "BatchId") to
5986	// unconditionally include in API requests. By default, fields with
5987	// empty or default values are omitted from API requests. However, any
5988	// non-pointer, non-interface field appearing in ForceSendFields will be
5989	// sent to the server regardless of whether the field is empty or not.
5990	// This may be used to include empty fields in Patch requests.
5991	ForceSendFields []string `json:"-"`
5992
5993	// NullFields is a list of field names (e.g. "BatchId") to include in
5994	// API requests with the JSON null value. By default, fields with empty
5995	// values are omitted from API requests. However, any field with an
5996	// empty value appearing in NullFields will be sent to the server as
5997	// null. It is an error if a field in this list has a non-empty value.
5998	// This may be used to include null fields in Patch requests.
5999	NullFields []string `json:"-"`
6000}
6001
6002func (s *LocalinventoryCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
6003	type NoMethod LocalinventoryCustomBatchResponseEntry
6004	raw := NoMethod(*s)
6005	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6006}
6007
6008type LocationIdSet struct {
6009	// LocationIds: A non-empty list of location IDs. They must all be of
6010	// the same location type (e.g., state).
6011	LocationIds []string `json:"locationIds,omitempty"`
6012
6013	// ForceSendFields is a list of field names (e.g. "LocationIds") to
6014	// unconditionally include in API requests. By default, fields with
6015	// empty or default values are omitted from API requests. However, any
6016	// non-pointer, non-interface field appearing in ForceSendFields will be
6017	// sent to the server regardless of whether the field is empty or not.
6018	// This may be used to include empty fields in Patch requests.
6019	ForceSendFields []string `json:"-"`
6020
6021	// NullFields is a list of field names (e.g. "LocationIds") to include
6022	// in API requests with the JSON null value. By default, fields with
6023	// empty values are omitted from API requests. However, any field with
6024	// an empty value appearing in NullFields will be sent to the server as
6025	// null. It is an error if a field in this list has a non-empty value.
6026	// This may be used to include null fields in Patch requests.
6027	NullFields []string `json:"-"`
6028}
6029
6030func (s *LocationIdSet) MarshalJSON() ([]byte, error) {
6031	type NoMethod LocationIdSet
6032	raw := NoMethod(*s)
6033	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6034}
6035
6036type LoyaltyPoints struct {
6037	// Name: Name of loyalty points program. It is recommended to limit the
6038	// name to 12 full-width characters or 24 Roman characters.
6039	Name string `json:"name,omitempty"`
6040
6041	// PointsValue: The retailer's loyalty points in absolute value.
6042	PointsValue int64 `json:"pointsValue,omitempty,string"`
6043
6044	// Ratio: The ratio of a point when converted to currency. Google
6045	// assumes currency based on Merchant Center settings. If ratio is left
6046	// out, it defaults to 1.0.
6047	Ratio float64 `json:"ratio,omitempty"`
6048
6049	// ForceSendFields is a list of field names (e.g. "Name") to
6050	// unconditionally include in API requests. By default, fields with
6051	// empty or default values are omitted from API requests. However, any
6052	// non-pointer, non-interface field appearing in ForceSendFields will be
6053	// sent to the server regardless of whether the field is empty or not.
6054	// This may be used to include empty fields in Patch requests.
6055	ForceSendFields []string `json:"-"`
6056
6057	// NullFields is a list of field names (e.g. "Name") to include in API
6058	// requests with the JSON null value. By default, fields with empty
6059	// values are omitted from API requests. However, any field with an
6060	// empty value appearing in NullFields will be sent to the server as
6061	// null. It is an error if a field in this list has a non-empty value.
6062	// This may be used to include null fields in Patch requests.
6063	NullFields []string `json:"-"`
6064}
6065
6066func (s *LoyaltyPoints) MarshalJSON() ([]byte, error) {
6067	type NoMethod LoyaltyPoints
6068	raw := NoMethod(*s)
6069	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6070}
6071
6072func (s *LoyaltyPoints) UnmarshalJSON(data []byte) error {
6073	type NoMethod LoyaltyPoints
6074	var s1 struct {
6075		Ratio gensupport.JSONFloat64 `json:"ratio"`
6076		*NoMethod
6077	}
6078	s1.NoMethod = (*NoMethod)(s)
6079	if err := json.Unmarshal(data, &s1); err != nil {
6080		return err
6081	}
6082	s.Ratio = float64(s1.Ratio)
6083	return nil
6084}
6085
6086// MerchantOrderReturn: Order return. Production access (all methods)
6087// requires the order manager role. Sandbox access does not.
6088type MerchantOrderReturn struct {
6089	// CreationDate: The date of creation of the return, in ISO 8601 format.
6090	CreationDate string `json:"creationDate,omitempty"`
6091
6092	// MerchantOrderId: Merchant defined order ID.
6093	MerchantOrderId string `json:"merchantOrderId,omitempty"`
6094
6095	// OrderId: Google order ID.
6096	OrderId string `json:"orderId,omitempty"`
6097
6098	// OrderReturnId: Order return ID generated by Google.
6099	OrderReturnId string `json:"orderReturnId,omitempty"`
6100
6101	// ReturnItems: Items of the return.
6102	ReturnItems []*MerchantOrderReturnItem `json:"returnItems,omitempty"`
6103
6104	// ReturnPricingInfo: Information about shipping costs.
6105	ReturnPricingInfo *ReturnPricingInfo `json:"returnPricingInfo,omitempty"`
6106
6107	// ReturnShipments: Shipments of the return.
6108	ReturnShipments []*ReturnShipment `json:"returnShipments,omitempty"`
6109
6110	// ServerResponse contains the HTTP response code and headers from the
6111	// server.
6112	googleapi.ServerResponse `json:"-"`
6113
6114	// ForceSendFields is a list of field names (e.g. "CreationDate") to
6115	// unconditionally include in API requests. By default, fields with
6116	// empty or default values are omitted from API requests. However, any
6117	// non-pointer, non-interface field appearing in ForceSendFields will be
6118	// sent to the server regardless of whether the field is empty or not.
6119	// This may be used to include empty fields in Patch requests.
6120	ForceSendFields []string `json:"-"`
6121
6122	// NullFields is a list of field names (e.g. "CreationDate") to include
6123	// in API requests with the JSON null value. By default, fields with
6124	// empty values are omitted from API requests. However, any field with
6125	// an empty value appearing in NullFields will be sent to the server as
6126	// null. It is an error if a field in this list has a non-empty value.
6127	// This may be used to include null fields in Patch requests.
6128	NullFields []string `json:"-"`
6129}
6130
6131func (s *MerchantOrderReturn) MarshalJSON() ([]byte, error) {
6132	type NoMethod MerchantOrderReturn
6133	raw := NoMethod(*s)
6134	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6135}
6136
6137type MerchantOrderReturnItem struct {
6138	// CustomerReturnReason: The reason that the customer chooses to return
6139	// an item.
6140	CustomerReturnReason *CustomerReturnReason `json:"customerReturnReason,omitempty"`
6141
6142	// ItemId: Product level item ID. If the returned items are of the same
6143	// product, they will have the same ID.
6144	ItemId string `json:"itemId,omitempty"`
6145
6146	// MerchantRejectionReason: The reason that the merchant chose to reject
6147	// an item return.
6148	MerchantRejectionReason *MerchantRejectionReason `json:"merchantRejectionReason,omitempty"`
6149
6150	// MerchantReturnReason: The reason that merchant chooses to accept a
6151	// return item.
6152	MerchantReturnReason *RefundReason `json:"merchantReturnReason,omitempty"`
6153
6154	// Product: Product data from the time of the order placement.
6155	Product *OrderLineItemProduct `json:"product,omitempty"`
6156
6157	// RefundableAmount: Maximum amount that can be refunded for this return
6158	// item.
6159	RefundableAmount *MonetaryAmount `json:"refundableAmount,omitempty"`
6160
6161	// ReturnItemId: Unit level ID for the return item. Different units of
6162	// the same product will have different IDs.
6163	ReturnItemId string `json:"returnItemId,omitempty"`
6164
6165	// ReturnShipmentIds: IDs of the return shipments that this return item
6166	// belongs to.
6167	ReturnShipmentIds []string `json:"returnShipmentIds,omitempty"`
6168
6169	// ShipmentGroupId: ID of the original shipment group. Provided for
6170	// shipments with invoice support.
6171	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
6172
6173	// ShipmentUnitId: ID of the shipment unit assigned by the merchant.
6174	// Provided for shipments with invoice support.
6175	ShipmentUnitId string `json:"shipmentUnitId,omitempty"`
6176
6177	// State: State of the item. Acceptable values are: - "canceled" -
6178	// "new" - "received" - "refunded" - "rejected"
6179	State string `json:"state,omitempty"`
6180
6181	// ForceSendFields is a list of field names (e.g.
6182	// "CustomerReturnReason") to unconditionally include in API requests.
6183	// By default, fields with empty or default values are omitted from API
6184	// requests. However, any non-pointer, non-interface field appearing in
6185	// ForceSendFields will be sent to the server regardless of whether the
6186	// field is empty or not. This may be used to include empty fields in
6187	// Patch requests.
6188	ForceSendFields []string `json:"-"`
6189
6190	// NullFields is a list of field names (e.g. "CustomerReturnReason") to
6191	// include in API requests with the JSON null value. By default, fields
6192	// with empty values are omitted from API requests. However, any field
6193	// with an empty value appearing in NullFields will be sent to the
6194	// server as null. It is an error if a field in this list has a
6195	// non-empty value. This may be used to include null fields in Patch
6196	// requests.
6197	NullFields []string `json:"-"`
6198}
6199
6200func (s *MerchantOrderReturnItem) MarshalJSON() ([]byte, error) {
6201	type NoMethod MerchantOrderReturnItem
6202	raw := NoMethod(*s)
6203	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6204}
6205
6206type MerchantRejectionReason struct {
6207	// Description: Description of the reason.
6208	Description string `json:"description,omitempty"`
6209
6210	// ReasonCode: Code of the rejection reason.
6211	ReasonCode string `json:"reasonCode,omitempty"`
6212
6213	// ForceSendFields is a list of field names (e.g. "Description") to
6214	// unconditionally include in API requests. By default, fields with
6215	// empty or default values are omitted from API requests. However, any
6216	// non-pointer, non-interface field appearing in ForceSendFields will be
6217	// sent to the server regardless of whether the field is empty or not.
6218	// This may be used to include empty fields in Patch requests.
6219	ForceSendFields []string `json:"-"`
6220
6221	// NullFields is a list of field names (e.g. "Description") to include
6222	// in API requests with the JSON null value. By default, fields with
6223	// empty values are omitted from API requests. However, any field with
6224	// an empty value appearing in NullFields will be sent to the server as
6225	// null. It is an error if a field in this list has a non-empty value.
6226	// This may be used to include null fields in Patch requests.
6227	NullFields []string `json:"-"`
6228}
6229
6230func (s *MerchantRejectionReason) MarshalJSON() ([]byte, error) {
6231	type NoMethod MerchantRejectionReason
6232	raw := NoMethod(*s)
6233	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6234}
6235
6236// Metrics: Performance metrics. Values are only set for metrics
6237// requested explicitly in the request's search query.
6238type Metrics struct {
6239	// Aos: Average order size - the average number of items in an order.
6240	// **This metric cannot be segmented by product dimensions.**
6241	Aos float64 `json:"aos,omitempty"`
6242
6243	// AovMicros: Average order value - the average value (total price of
6244	// items) of all placed orders. The currency of the returned value is
6245	// stored in the currency_code segment. If this metric is selected,
6246	// 'segments.currency_code' is automatically added to the SELECT clause
6247	// in the search query (unless it is explicitly selected by the user)
6248	// and the currency_code segment is populated in the response. **This
6249	// metric cannot be segmented by product dimensions.**
6250	AovMicros float64 `json:"aovMicros,omitempty"`
6251
6252	// Clicks: Number of clicks.
6253	Clicks int64 `json:"clicks,omitempty,string"`
6254
6255	// Ctr: Click-through rate - the number of clicks merchant's products
6256	// receive (clicks) divided by the number of times the products are
6257	// shown (impressions).
6258	Ctr float64 `json:"ctr,omitempty"`
6259
6260	// DaysToShip: Average number of days between an order being placed and
6261	// the order being fully shipped, reported on the last shipment date.
6262	// **This metric cannot be segmented by product dimensions.**
6263	DaysToShip float64 `json:"daysToShip,omitempty"`
6264
6265	// Impressions: Number of times merchant's products are shown.
6266	Impressions int64 `json:"impressions,omitempty,string"`
6267
6268	// ItemDaysToShip: Average number of days between an item being ordered
6269	// and the item being
6270	ItemDaysToShip float64 `json:"itemDaysToShip,omitempty"`
6271
6272	// ItemFillRate: Percentage of shipped items in relation to all
6273	// finalized items (shipped or rejected by the merchant; unshipped items
6274	// are not taken into account), reported on the order date. Item fill
6275	// rate is lowered by merchant rejections.
6276	ItemFillRate float64 `json:"itemFillRate,omitempty"`
6277
6278	// OrderedItemSalesMicros: Total price of ordered items. Excludes
6279	// shipping, taxes (US only), and customer cancellations that happened
6280	// within 30 minutes of placing the order. The currency of the returned
6281	// value is stored in the currency_code segment. If this metric is
6282	// selected, 'segments.currency_code' is automatically added to the
6283	// SELECT clause in the search query (unless it is explicitly selected
6284	// by the user) and the currency_code segment is populated in the
6285	// response.
6286	OrderedItemSalesMicros int64 `json:"orderedItemSalesMicros,omitempty,string"`
6287
6288	// OrderedItems: Number of ordered items. Excludes customer
6289	// cancellations that happened within 30 minutes of placing the order.
6290	OrderedItems int64 `json:"orderedItems,omitempty,string"`
6291
6292	// Orders: Number of placed orders. Excludes customer cancellations that
6293	// happened within 30 minutes of placing the order. **This metric cannot
6294	// be segmented by product dimensions.**
6295	Orders int64 `json:"orders,omitempty,string"`
6296
6297	// RejectedItems: Number of ordered items canceled by the merchant,
6298	// reported on the order date.
6299	RejectedItems int64 `json:"rejectedItems,omitempty,string"`
6300
6301	// ReturnRate: Total price of returned items divided by the total price
6302	// of shipped items, reported on the order date. If this metric is
6303	// selected, 'segments.currency_code' is automatically added to the
6304	// SELECT clause in the search query (unless it is explicitly selected
6305	// by the user) and the currency_code segment is populated in the
6306	// response.
6307	ReturnRate float64 `json:"returnRate,omitempty"`
6308
6309	// ReturnedItems: Number of ordered items sent back for return, reported
6310	// on the date when the merchant accepted the return.
6311	ReturnedItems int64 `json:"returnedItems,omitempty,string"`
6312
6313	// ReturnsMicros: Total price of ordered items sent back for return,
6314	// reported on the date when the merchant accepted the return. The
6315	// currency of the returned value is stored in the currency_code
6316	// segment. If this metric is selected, 'segments.currency_code' is
6317	// automatically added to the SELECT clause in the search query (unless
6318	// it is explicitly selected by the user) and the currency_code segment
6319	// is populated in the response.
6320	ReturnsMicros int64 `json:"returnsMicros,omitempty,string"`
6321
6322	// ShippedItemSalesMicros: Total price of shipped items, reported on the
6323	// order date. Excludes shipping and taxes (US only). The currency of
6324	// the returned value is stored in the currency_code segment. If this
6325	// metric is selected, 'segments.currency_code' is automatically added
6326	// to the SELECT clause in the search query (unless it is explicitly
6327	// selected by the user) and the currency_code segment is populated in
6328	// the response.
6329	ShippedItemSalesMicros int64 `json:"shippedItemSalesMicros,omitempty,string"`
6330
6331	// ShippedItems: Number of shipped items, reported on the shipment date.
6332	ShippedItems int64 `json:"shippedItems,omitempty,string"`
6333
6334	// ShippedOrders: Number of fully shipped orders, reported on the last
6335	// shipment date. **This metric cannot be segmented by product
6336	// dimensions.**
6337	ShippedOrders int64 `json:"shippedOrders,omitempty,string"`
6338
6339	// UnshippedItems: Number of ordered items not shipped up until the end
6340	// of the queried day. If a multi-day period is specified in the search
6341	// query, the returned value is the average number of unshipped items
6342	// over the days in the queried period.
6343	UnshippedItems float64 `json:"unshippedItems,omitempty"`
6344
6345	// UnshippedOrders: Number of orders not shipped or partially shipped up
6346	// until the end of the queried day. If a multi-day period is specified
6347	// in the search query, the returned value is the average number of
6348	// unshipped orders over the days in the queried period. **This metric
6349	// cannot be segmented by product dimensions.**
6350	UnshippedOrders float64 `json:"unshippedOrders,omitempty"`
6351
6352	// ForceSendFields is a list of field names (e.g. "Aos") 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. "Aos") to include in API
6361	// requests with the JSON null value. By default, fields with empty
6362	// values are omitted from API requests. However, any field with an
6363	// 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 *Metrics) MarshalJSON() ([]byte, error) {
6370	type NoMethod Metrics
6371	raw := NoMethod(*s)
6372	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6373}
6374
6375func (s *Metrics) UnmarshalJSON(data []byte) error {
6376	type NoMethod Metrics
6377	var s1 struct {
6378		Aos             gensupport.JSONFloat64 `json:"aos"`
6379		AovMicros       gensupport.JSONFloat64 `json:"aovMicros"`
6380		Ctr             gensupport.JSONFloat64 `json:"ctr"`
6381		DaysToShip      gensupport.JSONFloat64 `json:"daysToShip"`
6382		ItemDaysToShip  gensupport.JSONFloat64 `json:"itemDaysToShip"`
6383		ItemFillRate    gensupport.JSONFloat64 `json:"itemFillRate"`
6384		ReturnRate      gensupport.JSONFloat64 `json:"returnRate"`
6385		UnshippedItems  gensupport.JSONFloat64 `json:"unshippedItems"`
6386		UnshippedOrders gensupport.JSONFloat64 `json:"unshippedOrders"`
6387		*NoMethod
6388	}
6389	s1.NoMethod = (*NoMethod)(s)
6390	if err := json.Unmarshal(data, &s1); err != nil {
6391		return err
6392	}
6393	s.Aos = float64(s1.Aos)
6394	s.AovMicros = float64(s1.AovMicros)
6395	s.Ctr = float64(s1.Ctr)
6396	s.DaysToShip = float64(s1.DaysToShip)
6397	s.ItemDaysToShip = float64(s1.ItemDaysToShip)
6398	s.ItemFillRate = float64(s1.ItemFillRate)
6399	s.ReturnRate = float64(s1.ReturnRate)
6400	s.UnshippedItems = float64(s1.UnshippedItems)
6401	s.UnshippedOrders = float64(s1.UnshippedOrders)
6402	return nil
6403}
6404
6405type MinimumOrderValueTable struct {
6406	StoreCodeSetWithMovs []*MinimumOrderValueTableStoreCodeSetWithMov `json:"storeCodeSetWithMovs,omitempty"`
6407
6408	// ForceSendFields is a list of field names (e.g.
6409	// "StoreCodeSetWithMovs") to unconditionally include in API requests.
6410	// By default, fields with empty or default values are omitted from API
6411	// requests. However, any non-pointer, non-interface field appearing in
6412	// ForceSendFields will be sent to the server regardless of whether the
6413	// field is empty or not. This may be used to include empty fields in
6414	// Patch requests.
6415	ForceSendFields []string `json:"-"`
6416
6417	// NullFields is a list of field names (e.g. "StoreCodeSetWithMovs") to
6418	// include in API requests with the JSON null value. By default, fields
6419	// with empty values are omitted from API requests. However, any field
6420	// with an empty value appearing in NullFields will be sent to the
6421	// server as null. It is an error if a field in this list has a
6422	// non-empty value. This may be used to include null fields in Patch
6423	// requests.
6424	NullFields []string `json:"-"`
6425}
6426
6427func (s *MinimumOrderValueTable) MarshalJSON() ([]byte, error) {
6428	type NoMethod MinimumOrderValueTable
6429	raw := NoMethod(*s)
6430	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6431}
6432
6433// MinimumOrderValueTableStoreCodeSetWithMov: A list of store code sets
6434// sharing the same minimum order value. At least two sets are required
6435// and the last one must be empty, which signifies 'MOV for all other
6436// stores'. Each store code can only appear once across all the sets.
6437// All prices within a service must have the same currency.
6438type MinimumOrderValueTableStoreCodeSetWithMov struct {
6439	// StoreCodes: A list of unique store codes or empty for the catch all.
6440	StoreCodes []string `json:"storeCodes,omitempty"`
6441
6442	// Value: The minimum order value for the given stores.
6443	Value *Price `json:"value,omitempty"`
6444
6445	// ForceSendFields is a list of field names (e.g. "StoreCodes") to
6446	// unconditionally include in API requests. By default, fields with
6447	// empty or default values are omitted from API requests. However, any
6448	// non-pointer, non-interface field appearing in ForceSendFields will be
6449	// sent to the server regardless of whether the field is empty or not.
6450	// This may be used to include empty fields in Patch requests.
6451	ForceSendFields []string `json:"-"`
6452
6453	// NullFields is a list of field names (e.g. "StoreCodes") to include in
6454	// API requests with the JSON null value. By default, fields with empty
6455	// values are omitted from API requests. However, any field with an
6456	// empty value appearing in NullFields will be sent to the server as
6457	// null. It is an error if a field in this list has a non-empty value.
6458	// This may be used to include null fields in Patch requests.
6459	NullFields []string `json:"-"`
6460}
6461
6462func (s *MinimumOrderValueTableStoreCodeSetWithMov) MarshalJSON() ([]byte, error) {
6463	type NoMethod MinimumOrderValueTableStoreCodeSetWithMov
6464	raw := NoMethod(*s)
6465	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6466}
6467
6468type MonetaryAmount struct {
6469	// PriceAmount: The pre-tax or post-tax price depends on the location of
6470	// the order. - For countries (e.g. US) where price attribute excludes
6471	// tax, this field corresponds to the pre-tax value. - For coutries
6472	// (e.g. France) where price attribute includes tax, this field
6473	// corresponds to the post-tax value .
6474	PriceAmount *Price `json:"priceAmount,omitempty"`
6475
6476	// TaxAmount: Tax value, present only for countries where price
6477	// attribute excludes tax (e.g. US). No tax is referenced as 0 value
6478	// with the corresponding `currency`.
6479	TaxAmount *Price `json:"taxAmount,omitempty"`
6480
6481	// ForceSendFields is a list of field names (e.g. "PriceAmount") to
6482	// unconditionally include in API requests. By default, fields with
6483	// empty or default values are omitted from API requests. However, any
6484	// non-pointer, non-interface field appearing in ForceSendFields will be
6485	// sent to the server regardless of whether the field is empty or not.
6486	// This may be used to include empty fields in Patch requests.
6487	ForceSendFields []string `json:"-"`
6488
6489	// NullFields is a list of field names (e.g. "PriceAmount") to include
6490	// in API requests with the JSON null value. By default, fields with
6491	// empty values are omitted from API requests. However, any field with
6492	// an empty value appearing in NullFields will be sent to the server as
6493	// null. It is an error if a field in this list has a non-empty value.
6494	// This may be used to include null fields in Patch requests.
6495	NullFields []string `json:"-"`
6496}
6497
6498func (s *MonetaryAmount) MarshalJSON() ([]byte, error) {
6499	type NoMethod MonetaryAmount
6500	raw := NoMethod(*s)
6501	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6502}
6503
6504// OnboardBuyOnGoogleProgramRequest: Request message for the
6505// OnboardProgram method.
6506type OnboardBuyOnGoogleProgramRequest struct {
6507	// CustomerServiceEmail: The customer service email.
6508	CustomerServiceEmail string `json:"customerServiceEmail,omitempty"`
6509
6510	// ForceSendFields is a list of field names (e.g.
6511	// "CustomerServiceEmail") to unconditionally include in API requests.
6512	// By default, fields with empty or default values are omitted from API
6513	// requests. However, any non-pointer, non-interface field appearing in
6514	// ForceSendFields will be sent to the server regardless of whether the
6515	// field is empty or not. This may be used to include empty fields in
6516	// Patch requests.
6517	ForceSendFields []string `json:"-"`
6518
6519	// NullFields is a list of field names (e.g. "CustomerServiceEmail") to
6520	// include in API requests with the JSON null value. By default, fields
6521	// with empty values are omitted from API requests. However, any field
6522	// with an empty value appearing in NullFields will be sent to the
6523	// server as null. It is an error if a field in this list has a
6524	// non-empty value. This may be used to include null fields in Patch
6525	// requests.
6526	NullFields []string `json:"-"`
6527}
6528
6529func (s *OnboardBuyOnGoogleProgramRequest) MarshalJSON() ([]byte, error) {
6530	type NoMethod OnboardBuyOnGoogleProgramRequest
6531	raw := NoMethod(*s)
6532	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6533}
6534
6535// Order: Order. Production access (all methods) requires the order
6536// manager role. Sandbox access does not.
6537type Order struct {
6538	// Acknowledged: Whether the order was acknowledged.
6539	Acknowledged bool `json:"acknowledged,omitempty"`
6540
6541	// Annotations: List of key-value pairs that are attached to a given
6542	// order.
6543	Annotations []*OrderOrderAnnotation `json:"annotations,omitempty"`
6544
6545	// BillingAddress: The billing address.
6546	BillingAddress *OrderAddress `json:"billingAddress,omitempty"`
6547
6548	// Customer: The details of the customer who placed the order.
6549	Customer *OrderCustomer `json:"customer,omitempty"`
6550
6551	// DeliveryDetails: Delivery details for shipments of type `delivery`.
6552	DeliveryDetails *OrderDeliveryDetails `json:"deliveryDetails,omitempty"`
6553
6554	// Id: The REST ID of the order. Globally unique.
6555	Id string `json:"id,omitempty"`
6556
6557	// Kind: Identifies what kind of resource this is. Value: the fixed
6558	// string "content#order"
6559	Kind string `json:"kind,omitempty"`
6560
6561	// LineItems: Line items that are ordered.
6562	LineItems []*OrderLineItem `json:"lineItems,omitempty"`
6563
6564	MerchantId uint64 `json:"merchantId,omitempty,string"`
6565
6566	// MerchantOrderId: Merchant-provided ID of the order.
6567	MerchantOrderId string `json:"merchantOrderId,omitempty"`
6568
6569	// NetPriceAmount: The net amount for the order (price part). For
6570	// example, if an order was originally for $100 and a refund was issued
6571	// for $20, the net amount will be $80.
6572	NetPriceAmount *Price `json:"netPriceAmount,omitempty"`
6573
6574	// NetTaxAmount: The net amount for the order (tax part). Note that in
6575	// certain cases due to taxable base adjustment `netTaxAmount` might not
6576	// match to a sum of tax field across all lineItems and refunds.
6577	NetTaxAmount *Price `json:"netTaxAmount,omitempty"`
6578
6579	// PaymentStatus: The status of the payment. Acceptable values are: -
6580	// "paymentCaptured" - "paymentRejected" - "paymentSecured" -
6581	// "pendingAuthorization"
6582	PaymentStatus string `json:"paymentStatus,omitempty"`
6583
6584	// PickupDetails: Pickup details for shipments of type `pickup`.
6585	PickupDetails *OrderPickupDetails `json:"pickupDetails,omitempty"`
6586
6587	// PlacedDate: The date when the order was placed, in ISO 8601 format.
6588	PlacedDate string `json:"placedDate,omitempty"`
6589
6590	// Promotions: Promotions associated with the order. To determine which
6591	// promotions apply to which products, check the
6592	// `Promotions[].appliedItems[].lineItemId` field against the
6593	// `LineItems[].id` field for each promotion. If a promotion is applied
6594	// to more than 1 offerId, divide the discount value by the number of
6595	// affected offers to determine how much discount to apply to each
6596	// offerId. Examples: 1. To calculate price paid by the customer for a
6597	// single line item including the discount: For each promotion, subtract
6598	// the `LineItems[].adjustments[].priceAdjustment.value` amount from the
6599	// `LineItems[].Price.value`. 2. To calculate price paid by the customer
6600	// for a single line item including the discount in case of multiple
6601	// quantity: For each promotion, divide the
6602	// `LineItems[].adjustments[].priceAdjustment.value` by the quantity of
6603	// products then subtract the resulting value from the
6604	// `LineItems[].Product.Price.value` for each quantity item. Only 1
6605	// promotion can be applied to an offerId in a given order. To refund an
6606	// item which had a promotion applied to it, make sure to refund the
6607	// amount after first subtracting the promotion discount from the item
6608	// price. More details about the program are here.
6609	Promotions []*OrderPromotion `json:"promotions,omitempty"`
6610
6611	// Refunds: Refunds for the order.
6612	Refunds []*OrderRefund `json:"refunds,omitempty"`
6613
6614	// Shipments: Shipments of the order.
6615	Shipments []*OrderShipment `json:"shipments,omitempty"`
6616
6617	// ShippingCost: The total cost of shipping for all items.
6618	ShippingCost *Price `json:"shippingCost,omitempty"`
6619
6620	// ShippingCostTax: The tax for the total shipping cost.
6621	ShippingCostTax *Price `json:"shippingCostTax,omitempty"`
6622
6623	// Status: The status of the order. Acceptable values are: -
6624	// "canceled" - "delivered" - "inProgress" -
6625	// "partiallyDelivered" - "partiallyReturned" - "partiallyShipped"
6626	// - "pendingShipment" - "returned" - "shipped"
6627	Status string `json:"status,omitempty"`
6628
6629	// TaxCollector: The party responsible for collecting and remitting
6630	// taxes. Acceptable values are: - "marketplaceFacilitator" -
6631	// "merchant"
6632	TaxCollector string `json:"taxCollector,omitempty"`
6633
6634	// ServerResponse contains the HTTP response code and headers from the
6635	// server.
6636	googleapi.ServerResponse `json:"-"`
6637
6638	// ForceSendFields is a list of field names (e.g. "Acknowledged") to
6639	// unconditionally include in API requests. By default, fields with
6640	// empty or default values are omitted from API requests. However, any
6641	// non-pointer, non-interface field appearing in ForceSendFields will be
6642	// sent to the server regardless of whether the field is empty or not.
6643	// This may be used to include empty fields in Patch requests.
6644	ForceSendFields []string `json:"-"`
6645
6646	// NullFields is a list of field names (e.g. "Acknowledged") to include
6647	// in API requests with the JSON null value. By default, fields with
6648	// empty values are omitted from API requests. However, any field with
6649	// an empty value appearing in NullFields will be sent to the server as
6650	// null. It is an error if a field in this list has a non-empty value.
6651	// This may be used to include null fields in Patch requests.
6652	NullFields []string `json:"-"`
6653}
6654
6655func (s *Order) MarshalJSON() ([]byte, error) {
6656	type NoMethod Order
6657	raw := NoMethod(*s)
6658	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6659}
6660
6661type OrderAddress struct {
6662	// Country: CLDR country code (e.g. "US").
6663	Country string `json:"country,omitempty"`
6664
6665	// FullAddress: Strings representing the lines of the printed label for
6666	// mailing the order, for example: John Smith 1600 Amphitheatre Parkway
6667	// Mountain View, CA, 94043 United States
6668	FullAddress []string `json:"fullAddress,omitempty"`
6669
6670	// IsPostOfficeBox: Whether the address is a post office box.
6671	IsPostOfficeBox bool `json:"isPostOfficeBox,omitempty"`
6672
6673	// Locality: City, town or commune. May also include dependent
6674	// localities or sublocalities (e.g. neighborhoods or suburbs).
6675	Locality string `json:"locality,omitempty"`
6676
6677	// PostalCode: Postal Code or ZIP (e.g. "94043").
6678	PostalCode string `json:"postalCode,omitempty"`
6679
6680	// RecipientName: Name of the recipient.
6681	RecipientName string `json:"recipientName,omitempty"`
6682
6683	// Region: Top-level administrative subdivision of the country. For
6684	// example, a state like California ("CA") or a province like Quebec
6685	// ("QC").
6686	Region string `json:"region,omitempty"`
6687
6688	// StreetAddress: Street-level part of the address.
6689	StreetAddress []string `json:"streetAddress,omitempty"`
6690
6691	// ForceSendFields is a list of field names (e.g. "Country") to
6692	// unconditionally include in API requests. By default, fields with
6693	// empty or default values are omitted from API requests. However, any
6694	// non-pointer, non-interface field appearing in ForceSendFields will be
6695	// sent to the server regardless of whether the field is empty or not.
6696	// This may be used to include empty fields in Patch requests.
6697	ForceSendFields []string `json:"-"`
6698
6699	// NullFields is a list of field names (e.g. "Country") to include in
6700	// API requests with the JSON null value. By default, fields with empty
6701	// values are omitted from API requests. However, any field with an
6702	// empty value appearing in NullFields will be sent to the server as
6703	// null. It is an error if a field in this list has a non-empty value.
6704	// This may be used to include null fields in Patch requests.
6705	NullFields []string `json:"-"`
6706}
6707
6708func (s *OrderAddress) MarshalJSON() ([]byte, error) {
6709	type NoMethod OrderAddress
6710	raw := NoMethod(*s)
6711	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6712}
6713
6714type OrderCancellation struct {
6715	// Actor: The actor that created the cancellation. Acceptable values
6716	// are: - "customer" - "googleBot" - "googleCustomerService" -
6717	// "googlePayments" - "googleSabre" - "merchant"
6718	Actor string `json:"actor,omitempty"`
6719
6720	// CreationDate: Date on which the cancellation has been created, in ISO
6721	// 8601 format.
6722	CreationDate string `json:"creationDate,omitempty"`
6723
6724	// Quantity: The quantity that was canceled.
6725	Quantity int64 `json:"quantity,omitempty"`
6726
6727	// Reason: The reason for the cancellation. Orders that are canceled
6728	// with a noInventory reason will lead to the removal of the product
6729	// from Buy on Google until you make an update to that product. This
6730	// will not affect your Shopping ads. Acceptable values are: -
6731	// "autoPostInternal" - "autoPostInvalidBillingAddress" -
6732	// "autoPostNoInventory" - "autoPostPriceError" -
6733	// "autoPostUndeliverableShippingAddress" - "couponAbuse" -
6734	// "customerCanceled" - "customerInitiatedCancel" -
6735	// "customerSupportRequested" - "failToPushOrderGoogleError" -
6736	// "failToPushOrderMerchantError" -
6737	// "failToPushOrderMerchantFulfillmentError" -
6738	// "failToPushOrderToMerchant" -
6739	// "failToPushOrderToMerchantOutOfStock" - "invalidCoupon" -
6740	// "malformedShippingAddress" - "merchantDidNotShipOnTime" -
6741	// "noInventory" - "orderTimeout" - "other" - "paymentAbuse" -
6742	// "paymentDeclined" - "priceError" - "returnRefundAbuse" -
6743	// "shippingPriceError" - "taxError" -
6744	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
6745	// "failedToCaptureFunds"
6746	Reason string `json:"reason,omitempty"`
6747
6748	// ReasonText: The explanation of the reason.
6749	ReasonText string `json:"reasonText,omitempty"`
6750
6751	// ForceSendFields is a list of field names (e.g. "Actor") to
6752	// unconditionally include in API requests. By default, fields with
6753	// empty or default values are omitted from API requests. However, any
6754	// non-pointer, non-interface field appearing in ForceSendFields will be
6755	// sent to the server regardless of whether the field is empty or not.
6756	// This may be used to include empty fields in Patch requests.
6757	ForceSendFields []string `json:"-"`
6758
6759	// NullFields is a list of field names (e.g. "Actor") to include in API
6760	// requests with the JSON null value. By default, fields with empty
6761	// values are omitted from API requests. However, any field with an
6762	// empty value appearing in NullFields will be sent to the server as
6763	// null. It is an error if a field in this list has a non-empty value.
6764	// This may be used to include null fields in Patch requests.
6765	NullFields []string `json:"-"`
6766}
6767
6768func (s *OrderCancellation) MarshalJSON() ([]byte, error) {
6769	type NoMethod OrderCancellation
6770	raw := NoMethod(*s)
6771	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6772}
6773
6774type OrderCustomer struct {
6775	// FullName: Full name of the customer.
6776	FullName string `json:"fullName,omitempty"`
6777
6778	// InvoiceReceivingEmail: Email address for the merchant to send
6779	// value-added tax or invoice documentation of the order. Only the last
6780	// document sent is made available to the customer. For more
6781	// information, see About automated VAT invoicing for Buy on Google.
6782	InvoiceReceivingEmail string `json:"invoiceReceivingEmail,omitempty"`
6783
6784	// LoyaltyInfo: Loyalty program information.
6785	LoyaltyInfo *OrderCustomerLoyaltyInfo `json:"loyaltyInfo,omitempty"`
6786
6787	// MarketingRightsInfo: Customer's marketing preferences. Contains the
6788	// marketing opt-in information that is current at the time that the
6789	// merchant call. User preference selections can change from one order
6790	// to the next so preferences must be checked with every order.
6791	MarketingRightsInfo *OrderCustomerMarketingRightsInfo `json:"marketingRightsInfo,omitempty"`
6792
6793	// ForceSendFields is a list of field names (e.g. "FullName") 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. "FullName") to include in
6802	// API 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 *OrderCustomer) MarshalJSON() ([]byte, error) {
6811	type NoMethod OrderCustomer
6812	raw := NoMethod(*s)
6813	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6814}
6815
6816type OrderCustomerLoyaltyInfo struct {
6817	// LoyaltyNumber: The loyalty card/membership number.
6818	LoyaltyNumber string `json:"loyaltyNumber,omitempty"`
6819
6820	// Name: Name of card/membership holder, this field will be populated
6821	// when
6822	Name string `json:"name,omitempty"`
6823
6824	// ForceSendFields is a list of field names (e.g. "LoyaltyNumber") to
6825	// unconditionally include in API requests. By default, fields with
6826	// empty or default values are omitted from API requests. However, any
6827	// non-pointer, non-interface field appearing in ForceSendFields will be
6828	// sent to the server regardless of whether the field is empty or not.
6829	// This may be used to include empty fields in Patch requests.
6830	ForceSendFields []string `json:"-"`
6831
6832	// NullFields is a list of field names (e.g. "LoyaltyNumber") to include
6833	// in API requests with the JSON null value. By default, fields with
6834	// empty values are omitted from API requests. However, any field with
6835	// an empty value appearing in NullFields will be sent to the server as
6836	// null. It is an error if a field in this list has a non-empty value.
6837	// This may be used to include null fields in Patch requests.
6838	NullFields []string `json:"-"`
6839}
6840
6841func (s *OrderCustomerLoyaltyInfo) MarshalJSON() ([]byte, error) {
6842	type NoMethod OrderCustomerLoyaltyInfo
6843	raw := NoMethod(*s)
6844	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6845}
6846
6847type OrderCustomerMarketingRightsInfo struct {
6848	// ExplicitMarketingPreference: Last known customer selection regarding
6849	// marketing preferences. In certain cases this selection might not be
6850	// known, so this field would be empty. If a customer selected `granted`
6851	// in their most recent order, they can be subscribed to marketing
6852	// emails. Customers who have chosen `denied` must not be subscribed, or
6853	// must be unsubscribed if already opted-in. Acceptable values are: -
6854	// "denied" - "granted"
6855	ExplicitMarketingPreference string `json:"explicitMarketingPreference,omitempty"`
6856
6857	// LastUpdatedTimestamp: Timestamp when last time marketing preference
6858	// was updated. Could be empty, if user wasn't offered a selection yet.
6859	LastUpdatedTimestamp string `json:"lastUpdatedTimestamp,omitempty"`
6860
6861	// MarketingEmailAddress: Email address that can be used for marketing
6862	// purposes. The field may be empty even if
6863	// `explicitMarketingPreference` is 'granted'. This happens when
6864	// retrieving an old order from the customer who deleted their account.
6865	MarketingEmailAddress string `json:"marketingEmailAddress,omitempty"`
6866
6867	// ForceSendFields is a list of field names (e.g.
6868	// "ExplicitMarketingPreference") to unconditionally include in API
6869	// requests. By default, fields with empty or default values are omitted
6870	// from API requests. However, any non-pointer, non-interface field
6871	// appearing in ForceSendFields will be sent to the server regardless of
6872	// whether the field is empty or not. This may be used to include empty
6873	// fields in Patch requests.
6874	ForceSendFields []string `json:"-"`
6875
6876	// NullFields is a list of field names (e.g.
6877	// "ExplicitMarketingPreference") to include in API requests with the
6878	// JSON null value. By default, fields with empty values are omitted
6879	// from API requests. However, any field with an empty value appearing
6880	// in NullFields will be sent to the server as null. It is an error if a
6881	// field in this list has a non-empty value. This may be used to include
6882	// null fields in Patch requests.
6883	NullFields []string `json:"-"`
6884}
6885
6886func (s *OrderCustomerMarketingRightsInfo) MarshalJSON() ([]byte, error) {
6887	type NoMethod OrderCustomerMarketingRightsInfo
6888	raw := NoMethod(*s)
6889	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6890}
6891
6892type OrderDeliveryDetails struct {
6893	// Address: The delivery address
6894	Address *OrderAddress `json:"address,omitempty"`
6895
6896	// PhoneNumber: The phone number of the person receiving the delivery.
6897	PhoneNumber string `json:"phoneNumber,omitempty"`
6898
6899	// ForceSendFields is a list of field names (e.g. "Address") to
6900	// unconditionally include in API requests. By default, fields with
6901	// empty or default values are omitted from API requests. However, any
6902	// non-pointer, non-interface field appearing in ForceSendFields will be
6903	// sent to the server regardless of whether the field is empty or not.
6904	// This may be used to include empty fields in Patch requests.
6905	ForceSendFields []string `json:"-"`
6906
6907	// NullFields is a list of field names (e.g. "Address") to include in
6908	// API requests with the JSON null value. By default, fields with empty
6909	// values are omitted from API requests. However, any field with an
6910	// empty value appearing in NullFields will be sent to the server as
6911	// null. It is an error if a field in this list has a non-empty value.
6912	// This may be used to include null fields in Patch requests.
6913	NullFields []string `json:"-"`
6914}
6915
6916func (s *OrderDeliveryDetails) MarshalJSON() ([]byte, error) {
6917	type NoMethod OrderDeliveryDetails
6918	raw := NoMethod(*s)
6919	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6920}
6921
6922type OrderLineItem struct {
6923	// Adjustments: Price and tax adjustments applied on the line item.
6924	Adjustments []*OrderLineItemAdjustment `json:"adjustments,omitempty"`
6925
6926	// Annotations: Annotations that are attached to the line item.
6927	Annotations []*OrderMerchantProvidedAnnotation `json:"annotations,omitempty"`
6928
6929	// Cancellations: Cancellations of the line item.
6930	Cancellations []*OrderCancellation `json:"cancellations,omitempty"`
6931
6932	// Id: The ID of the line item.
6933	Id string `json:"id,omitempty"`
6934
6935	// Price: Total price for the line item. For example, if two items for
6936	// $10 are purchased, the total price will be $20.
6937	Price *Price `json:"price,omitempty"`
6938
6939	// Product: Product data as seen by customer from the time of the order
6940	// placement. Note that certain attributes values (e.g. title or gtin)
6941	// might be reformatted and no longer match values submitted via product
6942	// feed.
6943	Product *OrderLineItemProduct `json:"product,omitempty"`
6944
6945	// QuantityCanceled: Number of items canceled.
6946	QuantityCanceled int64 `json:"quantityCanceled,omitempty"`
6947
6948	// QuantityDelivered: Number of items delivered.
6949	QuantityDelivered int64 `json:"quantityDelivered,omitempty"`
6950
6951	// QuantityOrdered: Number of items ordered.
6952	QuantityOrdered int64 `json:"quantityOrdered,omitempty"`
6953
6954	// QuantityPending: Number of items pending.
6955	QuantityPending int64 `json:"quantityPending,omitempty"`
6956
6957	// QuantityReadyForPickup: Number of items ready for pickup.
6958	QuantityReadyForPickup int64 `json:"quantityReadyForPickup,omitempty"`
6959
6960	// QuantityReturned: Number of items returned.
6961	QuantityReturned int64 `json:"quantityReturned,omitempty"`
6962
6963	// QuantityShipped: Number of items shipped.
6964	QuantityShipped int64 `json:"quantityShipped,omitempty"`
6965
6966	// QuantityUndeliverable: Number of items undeliverable.
6967	QuantityUndeliverable int64 `json:"quantityUndeliverable,omitempty"`
6968
6969	// ReturnInfo: Details of the return policy for the line item.
6970	ReturnInfo *OrderLineItemReturnInfo `json:"returnInfo,omitempty"`
6971
6972	// Returns: Returns of the line item.
6973	Returns []*OrderReturn `json:"returns,omitempty"`
6974
6975	// ShippingDetails: Details of the requested shipping for the line item.
6976	ShippingDetails *OrderLineItemShippingDetails `json:"shippingDetails,omitempty"`
6977
6978	// Tax: Total tax amount for the line item. For example, if two items
6979	// are purchased, and each have a cost tax of $2, the total tax amount
6980	// will be $4.
6981	Tax *Price `json:"tax,omitempty"`
6982
6983	// ForceSendFields is a list of field names (e.g. "Adjustments") to
6984	// unconditionally include in API requests. By default, fields with
6985	// empty or default values are omitted from API requests. However, any
6986	// non-pointer, non-interface field appearing in ForceSendFields will be
6987	// sent to the server regardless of whether the field is empty or not.
6988	// This may be used to include empty fields in Patch requests.
6989	ForceSendFields []string `json:"-"`
6990
6991	// NullFields is a list of field names (e.g. "Adjustments") to include
6992	// in API requests with the JSON null value. By default, fields with
6993	// empty values are omitted from API requests. However, any field with
6994	// an empty value appearing in NullFields will be sent to the server as
6995	// null. It is an error if a field in this list has a non-empty value.
6996	// This may be used to include null fields in Patch requests.
6997	NullFields []string `json:"-"`
6998}
6999
7000func (s *OrderLineItem) MarshalJSON() ([]byte, error) {
7001	type NoMethod OrderLineItem
7002	raw := NoMethod(*s)
7003	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7004}
7005
7006type OrderLineItemAdjustment struct {
7007	// PriceAdjustment: Adjustment for total price of the line item.
7008	PriceAdjustment *Price `json:"priceAdjustment,omitempty"`
7009
7010	// TaxAdjustment: Adjustment for total tax of the line item.
7011	TaxAdjustment *Price `json:"taxAdjustment,omitempty"`
7012
7013	// Type: Type of this adjustment. Acceptable values are: - "promotion"
7014	Type string `json:"type,omitempty"`
7015
7016	// ForceSendFields is a list of field names (e.g. "PriceAdjustment") to
7017	// unconditionally include in API requests. By default, fields with
7018	// empty or default values are omitted from API requests. However, any
7019	// non-pointer, non-interface field appearing in ForceSendFields will be
7020	// sent to the server regardless of whether the field is empty or not.
7021	// This may be used to include empty fields in Patch requests.
7022	ForceSendFields []string `json:"-"`
7023
7024	// NullFields is a list of field names (e.g. "PriceAdjustment") to
7025	// include in API requests with the JSON null value. By default, fields
7026	// with empty values are omitted from API requests. However, any field
7027	// with an empty value appearing in NullFields will be sent to the
7028	// server as null. It is an error if a field in this list has a
7029	// non-empty value. This may be used to include null fields in Patch
7030	// requests.
7031	NullFields []string `json:"-"`
7032}
7033
7034func (s *OrderLineItemAdjustment) MarshalJSON() ([]byte, error) {
7035	type NoMethod OrderLineItemAdjustment
7036	raw := NoMethod(*s)
7037	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7038}
7039
7040type OrderLineItemProduct struct {
7041	// Brand: Brand of the item.
7042	Brand string `json:"brand,omitempty"`
7043
7044	// Condition: Condition or state of the item. Acceptable values are: -
7045	// "new" - "refurbished" - "used"
7046	Condition string `json:"condition,omitempty"`
7047
7048	// ContentLanguage: The two-letter ISO 639-1 language code for the item.
7049	ContentLanguage string `json:"contentLanguage,omitempty"`
7050
7051	// Fees: Associated fees at order creation time.
7052	Fees []*OrderLineItemProductFee `json:"fees,omitempty"`
7053
7054	// Gtin: Global Trade Item Number (GTIN) of the item.
7055	Gtin string `json:"gtin,omitempty"`
7056
7057	// Id: The REST ID of the product.
7058	Id string `json:"id,omitempty"`
7059
7060	// ImageLink: URL of an image of the item.
7061	ImageLink string `json:"imageLink,omitempty"`
7062
7063	// ItemGroupId: Shared identifier for all variants of the same product.
7064	ItemGroupId string `json:"itemGroupId,omitempty"`
7065
7066	// Mpn: Manufacturer Part Number (MPN) of the item.
7067	Mpn string `json:"mpn,omitempty"`
7068
7069	// OfferId: An identifier of the item.
7070	OfferId string `json:"offerId,omitempty"`
7071
7072	// Price: Price of the item.
7073	Price *Price `json:"price,omitempty"`
7074
7075	// ShownImage: URL to the cached image shown to the user when order was
7076	// placed.
7077	ShownImage string `json:"shownImage,omitempty"`
7078
7079	// TargetCountry: The CLDR territory // code of the target country of
7080	// the product.
7081	TargetCountry string `json:"targetCountry,omitempty"`
7082
7083	// Title: The title of the product.
7084	Title string `json:"title,omitempty"`
7085
7086	// VariantAttributes: Variant attributes for the item. These are
7087	// dimensions of the product, such as color, gender, material, pattern,
7088	// and size. You can find a comprehensive list of variant attributes
7089	// here.
7090	VariantAttributes []*OrderLineItemProductVariantAttribute `json:"variantAttributes,omitempty"`
7091
7092	// ForceSendFields is a list of field names (e.g. "Brand") to
7093	// unconditionally include in API requests. By default, fields with
7094	// empty or default values are omitted from API requests. However, any
7095	// non-pointer, non-interface field appearing in ForceSendFields will be
7096	// sent to the server regardless of whether the field is empty or not.
7097	// This may be used to include empty fields in Patch requests.
7098	ForceSendFields []string `json:"-"`
7099
7100	// NullFields is a list of field names (e.g. "Brand") to include in API
7101	// requests with the JSON null value. By default, fields with empty
7102	// values are omitted from API requests. However, any field with an
7103	// empty value appearing in NullFields will be sent to the server as
7104	// null. It is an error if a field in this list has a non-empty value.
7105	// This may be used to include null fields in Patch requests.
7106	NullFields []string `json:"-"`
7107}
7108
7109func (s *OrderLineItemProduct) MarshalJSON() ([]byte, error) {
7110	type NoMethod OrderLineItemProduct
7111	raw := NoMethod(*s)
7112	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7113}
7114
7115type OrderLineItemProductFee struct {
7116	// Amount: Amount of the fee.
7117	Amount *Price `json:"amount,omitempty"`
7118
7119	// Name: Name of the fee.
7120	Name string `json:"name,omitempty"`
7121
7122	// ForceSendFields is a list of field names (e.g. "Amount") to
7123	// unconditionally include in API requests. By default, fields with
7124	// empty or default values are omitted from API requests. However, any
7125	// non-pointer, non-interface field appearing in ForceSendFields will be
7126	// sent to the server regardless of whether the field is empty or not.
7127	// This may be used to include empty fields in Patch requests.
7128	ForceSendFields []string `json:"-"`
7129
7130	// NullFields is a list of field names (e.g. "Amount") to include in API
7131	// requests with the JSON null value. By default, fields with empty
7132	// values are omitted from API requests. However, any field with an
7133	// empty value appearing in NullFields will be sent to the server as
7134	// null. It is an error if a field in this list has a non-empty value.
7135	// This may be used to include null fields in Patch requests.
7136	NullFields []string `json:"-"`
7137}
7138
7139func (s *OrderLineItemProductFee) MarshalJSON() ([]byte, error) {
7140	type NoMethod OrderLineItemProductFee
7141	raw := NoMethod(*s)
7142	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7143}
7144
7145type OrderLineItemProductVariantAttribute struct {
7146	// Dimension: The dimension of the variant.
7147	Dimension string `json:"dimension,omitempty"`
7148
7149	// Value: The value for the dimension.
7150	Value string `json:"value,omitempty"`
7151
7152	// ForceSendFields is a list of field names (e.g. "Dimension") to
7153	// unconditionally include in API requests. By default, fields with
7154	// empty or default values are omitted from API requests. However, any
7155	// non-pointer, non-interface field appearing in ForceSendFields will be
7156	// sent to the server regardless of whether the field is empty or not.
7157	// This may be used to include empty fields in Patch requests.
7158	ForceSendFields []string `json:"-"`
7159
7160	// NullFields is a list of field names (e.g. "Dimension") to include in
7161	// API requests with the JSON null value. By default, fields with empty
7162	// values are omitted from API requests. However, any field with an
7163	// empty value appearing in NullFields will be sent to the server as
7164	// null. It is an error if a field in this list has a non-empty value.
7165	// This may be used to include null fields in Patch requests.
7166	NullFields []string `json:"-"`
7167}
7168
7169func (s *OrderLineItemProductVariantAttribute) MarshalJSON() ([]byte, error) {
7170	type NoMethod OrderLineItemProductVariantAttribute
7171	raw := NoMethod(*s)
7172	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7173}
7174
7175type OrderLineItemReturnInfo struct {
7176	// DaysToReturn: Required. How many days later the item can be returned.
7177	DaysToReturn int64 `json:"daysToReturn,omitempty"`
7178
7179	// IsReturnable: Required. Whether the item is returnable.
7180	IsReturnable bool `json:"isReturnable,omitempty"`
7181
7182	// PolicyUrl: Required. URL of the item return policy.
7183	PolicyUrl string `json:"policyUrl,omitempty"`
7184
7185	// ForceSendFields is a list of field names (e.g. "DaysToReturn") to
7186	// unconditionally include in API requests. By default, fields with
7187	// empty or default values are omitted from API requests. However, any
7188	// non-pointer, non-interface field appearing in ForceSendFields will be
7189	// sent to the server regardless of whether the field is empty or not.
7190	// This may be used to include empty fields in Patch requests.
7191	ForceSendFields []string `json:"-"`
7192
7193	// NullFields is a list of field names (e.g. "DaysToReturn") to include
7194	// in API requests with the JSON null value. By default, fields with
7195	// empty values are omitted from API requests. However, any field with
7196	// an empty value appearing in NullFields will be sent to the server as
7197	// null. It is an error if a field in this list has a non-empty value.
7198	// This may be used to include null fields in Patch requests.
7199	NullFields []string `json:"-"`
7200}
7201
7202func (s *OrderLineItemReturnInfo) MarshalJSON() ([]byte, error) {
7203	type NoMethod OrderLineItemReturnInfo
7204	raw := NoMethod(*s)
7205	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7206}
7207
7208type OrderLineItemShippingDetails struct {
7209	// DeliverByDate: Required. The delivery by date, in ISO 8601 format.
7210	DeliverByDate string `json:"deliverByDate,omitempty"`
7211
7212	// Method: Required. Details of the shipping method.
7213	Method *OrderLineItemShippingDetailsMethod `json:"method,omitempty"`
7214
7215	// PickupPromiseInMinutes: The promised time in minutes in which the
7216	// order will be ready for pickup. This only applies to
7217	// buy-online-pickup-in-store same-day order.
7218	PickupPromiseInMinutes int64 `json:"pickupPromiseInMinutes,omitempty"`
7219
7220	// ShipByDate: Required. The ship by date, in ISO 8601 format.
7221	ShipByDate string `json:"shipByDate,omitempty"`
7222
7223	// Type: Type of shipment. Indicates whether `deliveryDetails` or
7224	// `pickupDetails` is applicable for this shipment. Acceptable values
7225	// are: - "delivery" - "pickup"
7226	Type string `json:"type,omitempty"`
7227
7228	// ForceSendFields is a list of field names (e.g. "DeliverByDate") to
7229	// unconditionally include in API requests. By default, fields with
7230	// empty or default values are omitted from API requests. However, any
7231	// non-pointer, non-interface field appearing in ForceSendFields will be
7232	// sent to the server regardless of whether the field is empty or not.
7233	// This may be used to include empty fields in Patch requests.
7234	ForceSendFields []string `json:"-"`
7235
7236	// NullFields is a list of field names (e.g. "DeliverByDate") to include
7237	// in API requests with the JSON null value. By default, fields with
7238	// empty values are omitted from API requests. However, any field with
7239	// an empty value appearing in NullFields will be sent to the server as
7240	// null. It is an error if a field in this list has a non-empty value.
7241	// This may be used to include null fields in Patch requests.
7242	NullFields []string `json:"-"`
7243}
7244
7245func (s *OrderLineItemShippingDetails) MarshalJSON() ([]byte, error) {
7246	type NoMethod OrderLineItemShippingDetails
7247	raw := NoMethod(*s)
7248	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7249}
7250
7251type OrderLineItemShippingDetailsMethod struct {
7252	// Carrier: The carrier for the shipping. Optional. See
7253	// `shipments[].carrier` for a list of acceptable values.
7254	Carrier string `json:"carrier,omitempty"`
7255
7256	// MaxDaysInTransit: Required. Maximum transit time.
7257	MaxDaysInTransit int64 `json:"maxDaysInTransit,omitempty"`
7258
7259	// MethodName: Required. The name of the shipping method.
7260	MethodName string `json:"methodName,omitempty"`
7261
7262	// MinDaysInTransit: Required. Minimum transit time.
7263	MinDaysInTransit int64 `json:"minDaysInTransit,omitempty"`
7264
7265	// ForceSendFields is a list of field names (e.g. "Carrier") to
7266	// unconditionally include in API requests. By default, fields with
7267	// empty or default values are omitted from API requests. However, any
7268	// non-pointer, non-interface field appearing in ForceSendFields will be
7269	// sent to the server regardless of whether the field is empty or not.
7270	// This may be used to include empty fields in Patch requests.
7271	ForceSendFields []string `json:"-"`
7272
7273	// NullFields is a list of field names (e.g. "Carrier") to include in
7274	// API requests with the JSON null value. By default, fields with empty
7275	// values are omitted from API requests. However, any field with an
7276	// empty value appearing in NullFields will be sent to the server as
7277	// null. It is an error if a field in this list has a non-empty value.
7278	// This may be used to include null fields in Patch requests.
7279	NullFields []string `json:"-"`
7280}
7281
7282func (s *OrderLineItemShippingDetailsMethod) MarshalJSON() ([]byte, error) {
7283	type NoMethod OrderLineItemShippingDetailsMethod
7284	raw := NoMethod(*s)
7285	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7286}
7287
7288type OrderMerchantProvidedAnnotation struct {
7289	// Key: Key for additional merchant provided (as key-value pairs)
7290	// annotation about the line item.
7291	Key string `json:"key,omitempty"`
7292
7293	// Value: Value for additional merchant provided (as key-value pairs)
7294	// annotation about the line item.
7295	Value string `json:"value,omitempty"`
7296
7297	// ForceSendFields is a list of field names (e.g. "Key") to
7298	// unconditionally include in API requests. By default, fields with
7299	// empty or default values are omitted from API requests. However, any
7300	// non-pointer, non-interface field appearing in ForceSendFields will be
7301	// sent to the server regardless of whether the field is empty or not.
7302	// This may be used to include empty fields in Patch requests.
7303	ForceSendFields []string `json:"-"`
7304
7305	// NullFields is a list of field names (e.g. "Key") to include in API
7306	// requests with the JSON null value. By default, fields with empty
7307	// values are omitted from API requests. However, any field with an
7308	// empty value appearing in NullFields will be sent to the server as
7309	// null. It is an error if a field in this list has a non-empty value.
7310	// This may be used to include null fields in Patch requests.
7311	NullFields []string `json:"-"`
7312}
7313
7314func (s *OrderMerchantProvidedAnnotation) MarshalJSON() ([]byte, error) {
7315	type NoMethod OrderMerchantProvidedAnnotation
7316	raw := NoMethod(*s)
7317	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7318}
7319
7320type OrderOrderAnnotation struct {
7321	// Key: Key for additional google provided (as key-value pairs)
7322	// annotation.
7323	Key string `json:"key,omitempty"`
7324
7325	// Value: Value for additional google provided (as key-value pairs)
7326	// annotation.
7327	Value string `json:"value,omitempty"`
7328
7329	// ForceSendFields is a list of field names (e.g. "Key") to
7330	// unconditionally include in API requests. By default, fields with
7331	// empty or default values are omitted from API requests. However, any
7332	// non-pointer, non-interface field appearing in ForceSendFields will be
7333	// sent to the server regardless of whether the field is empty or not.
7334	// This may be used to include empty fields in Patch requests.
7335	ForceSendFields []string `json:"-"`
7336
7337	// NullFields is a list of field names (e.g. "Key") to include in API
7338	// requests with the JSON null value. By default, fields with empty
7339	// values are omitted from API requests. However, any field with an
7340	// empty value appearing in NullFields will be sent to the server as
7341	// null. It is an error if a field in this list has a non-empty value.
7342	// This may be used to include null fields in Patch requests.
7343	NullFields []string `json:"-"`
7344}
7345
7346func (s *OrderOrderAnnotation) MarshalJSON() ([]byte, error) {
7347	type NoMethod OrderOrderAnnotation
7348	raw := NoMethod(*s)
7349	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7350}
7351
7352type OrderPickupDetails struct {
7353	// Address: Address of the pickup location where the shipment should be
7354	// sent. Note that `recipientName` in the address is the name of the
7355	// business at the pickup location.
7356	Address *OrderAddress `json:"address,omitempty"`
7357
7358	// Collectors: Collectors authorized to pick up shipment from the pickup
7359	// location.
7360	Collectors []*OrderPickupDetailsCollector `json:"collectors,omitempty"`
7361
7362	// LocationId: ID of the pickup location.
7363	LocationId string `json:"locationId,omitempty"`
7364
7365	// PickupType: The pickup type of this order. Acceptable values are: -
7366	// "merchantStore" - "merchantStoreCurbside" -
7367	// "merchantStoreLocker" - "thirdPartyPickupPoint" -
7368	// "thirdPartyLocker"
7369	PickupType string `json:"pickupType,omitempty"`
7370
7371	// ForceSendFields is a list of field names (e.g. "Address") to
7372	// unconditionally include in API requests. By default, fields with
7373	// empty or default values are omitted from API requests. However, any
7374	// non-pointer, non-interface field appearing in ForceSendFields will be
7375	// sent to the server regardless of whether the field is empty or not.
7376	// This may be used to include empty fields in Patch requests.
7377	ForceSendFields []string `json:"-"`
7378
7379	// NullFields is a list of field names (e.g. "Address") to include in
7380	// API requests with the JSON null value. By default, fields with empty
7381	// values are omitted from API requests. However, any field with an
7382	// empty value appearing in NullFields will be sent to the server as
7383	// null. It is an error if a field in this list has a non-empty value.
7384	// This may be used to include null fields in Patch requests.
7385	NullFields []string `json:"-"`
7386}
7387
7388func (s *OrderPickupDetails) MarshalJSON() ([]byte, error) {
7389	type NoMethod OrderPickupDetails
7390	raw := NoMethod(*s)
7391	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7392}
7393
7394type OrderPickupDetailsCollector struct {
7395	// Name: Name of the person picking up the shipment.
7396	Name string `json:"name,omitempty"`
7397
7398	// PhoneNumber: Phone number of the person picking up the shipment.
7399	PhoneNumber string `json:"phoneNumber,omitempty"`
7400
7401	// ForceSendFields is a list of field names (e.g. "Name") to
7402	// unconditionally include in API requests. By default, fields with
7403	// empty or default values are omitted from API requests. However, any
7404	// non-pointer, non-interface field appearing in ForceSendFields will be
7405	// sent to the server regardless of whether the field is empty or not.
7406	// This may be used to include empty fields in Patch requests.
7407	ForceSendFields []string `json:"-"`
7408
7409	// NullFields is a list of field names (e.g. "Name") to include in API
7410	// requests with the JSON null value. By default, fields with empty
7411	// values are omitted from API requests. However, any field with an
7412	// empty value appearing in NullFields will be sent to the server as
7413	// null. It is an error if a field in this list has a non-empty value.
7414	// This may be used to include null fields in Patch requests.
7415	NullFields []string `json:"-"`
7416}
7417
7418func (s *OrderPickupDetailsCollector) MarshalJSON() ([]byte, error) {
7419	type NoMethod OrderPickupDetailsCollector
7420	raw := NoMethod(*s)
7421	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7422}
7423
7424type OrderPromotion struct {
7425	// ApplicableItems: Items that this promotion may be applied to. If
7426	// empty, there are no restrictions on applicable items and quantity.
7427	// This field will also be empty for shipping promotions because
7428	// shipping is not tied to any specific item.
7429	ApplicableItems []*OrderPromotionItem `json:"applicableItems,omitempty"`
7430
7431	// AppliedItems: Items that this promotion have been applied to. Do not
7432	// provide for `orders.createtestorder`. This field will be empty for
7433	// shipping promotions because shipping is not tied to any specific
7434	// item.
7435	AppliedItems []*OrderPromotionItem `json:"appliedItems,omitempty"`
7436
7437	// EndTime: Promotion end time in ISO 8601 format. Date, time, and
7438	// offset required, e.g., "2020-01-02T09:00:00+01:00" or
7439	// "2020-01-02T09:00:00Z".
7440	EndTime string `json:"endTime,omitempty"`
7441
7442	// Funder: Required. The party funding the promotion. Only `merchant` is
7443	// supported for `orders.createtestorder`. Acceptable values are: -
7444	// "google" - "merchant"
7445	Funder string `json:"funder,omitempty"`
7446
7447	// MerchantPromotionId: Required. This field is used to identify
7448	// promotions within merchants' own systems.
7449	MerchantPromotionId string `json:"merchantPromotionId,omitempty"`
7450
7451	// PriceValue: Estimated discount applied to price. Amount is pre-tax or
7452	// post-tax depending on location of order.
7453	PriceValue *Price `json:"priceValue,omitempty"`
7454
7455	// ShortTitle: A short title of the promotion to be shown on the
7456	// checkout page. Do not provide for `orders.createtestorder`.
7457	ShortTitle string `json:"shortTitle,omitempty"`
7458
7459	// StartTime: Promotion start time in ISO 8601 format. Date, time, and
7460	// offset required, e.g., "2020-01-02T09:00:00+01:00" or
7461	// "2020-01-02T09:00:00Z".
7462	StartTime string `json:"startTime,omitempty"`
7463
7464	// Subtype: Required. The category of the promotion. Only `moneyOff` is
7465	// supported for `orders.createtestorder`. Acceptable values are: -
7466	// "buyMGetMoneyOff" - "buyMGetNMoneyOff" - "buyMGetNPercentOff" -
7467	// "buyMGetPercentOff" - "freeGift" - "freeGiftWithItemId" -
7468	// "freeGiftWithValue" - "freeShippingOvernight" -
7469	// "freeShippingStandard" - "freeShippingTwoDay" - "moneyOff" -
7470	// "percentOff" - "rewardPoints" - "salePrice"
7471	Subtype string `json:"subtype,omitempty"`
7472
7473	// TaxValue: Estimated discount applied to tax (if allowed by law). Do
7474	// not provide for `orders.createtestorder`.
7475	TaxValue *Price `json:"taxValue,omitempty"`
7476
7477	// Title: Required. The title of the promotion.
7478	Title string `json:"title,omitempty"`
7479
7480	// Type: Required. The scope of the promotion. Only `product` is
7481	// supported for `orders.createtestorder`. Acceptable values are: -
7482	// "product" - "shipping"
7483	Type string `json:"type,omitempty"`
7484
7485	// ForceSendFields is a list of field names (e.g. "ApplicableItems") to
7486	// unconditionally include in API requests. By default, fields with
7487	// empty or default values are omitted from API requests. However, any
7488	// non-pointer, non-interface field appearing in ForceSendFields will be
7489	// sent to the server regardless of whether the field is empty or not.
7490	// This may be used to include empty fields in Patch requests.
7491	ForceSendFields []string `json:"-"`
7492
7493	// NullFields is a list of field names (e.g. "ApplicableItems") to
7494	// include in API requests with the JSON null value. By default, fields
7495	// with empty values are omitted from API requests. However, any field
7496	// with an empty value appearing in NullFields will be sent to the
7497	// server as null. It is an error if a field in this list has a
7498	// non-empty value. This may be used to include null fields in Patch
7499	// requests.
7500	NullFields []string `json:"-"`
7501}
7502
7503func (s *OrderPromotion) MarshalJSON() ([]byte, error) {
7504	type NoMethod OrderPromotion
7505	raw := NoMethod(*s)
7506	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7507}
7508
7509type OrderPromotionItem struct {
7510	// LineItemId: The line item ID of a product. Do not provide for
7511	// `orders.createtestorder`.
7512	LineItemId string `json:"lineItemId,omitempty"`
7513
7514	// OfferId: Required. Offer ID of a product. Only for
7515	// `orders.createtestorder`.
7516	OfferId string `json:"offerId,omitempty"`
7517
7518	// ProductId: `orders.createtestorder`.
7519	ProductId string `json:"productId,omitempty"`
7520
7521	// Quantity: The quantity of the associated product. Do not provide for
7522	// `orders.createtestorder`.
7523	Quantity int64 `json:"quantity,omitempty"`
7524
7525	// ForceSendFields is a list of field names (e.g. "LineItemId") to
7526	// unconditionally include in API requests. By default, fields with
7527	// empty or default values are omitted from API requests. However, any
7528	// non-pointer, non-interface field appearing in ForceSendFields will be
7529	// sent to the server regardless of whether the field is empty or not.
7530	// This may be used to include empty fields in Patch requests.
7531	ForceSendFields []string `json:"-"`
7532
7533	// NullFields is a list of field names (e.g. "LineItemId") to include in
7534	// API requests with the JSON null value. By default, fields with empty
7535	// values are omitted from API requests. However, any field with an
7536	// empty value appearing in NullFields will be sent to the server as
7537	// null. It is an error if a field in this list has a non-empty value.
7538	// This may be used to include null fields in Patch requests.
7539	NullFields []string `json:"-"`
7540}
7541
7542func (s *OrderPromotionItem) MarshalJSON() ([]byte, error) {
7543	type NoMethod OrderPromotionItem
7544	raw := NoMethod(*s)
7545	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7546}
7547
7548type OrderRefund struct {
7549	// Actor: The actor that created the refund. Acceptable values are: -
7550	// "customer" - "googleBot" - "googleCustomerService" -
7551	// "googlePayments" - "googleSabre" - "merchant"
7552	Actor string `json:"actor,omitempty"`
7553
7554	// Amount: The amount that is refunded.
7555	Amount *Price `json:"amount,omitempty"`
7556
7557	// CreationDate: Date on which the item has been created, in ISO 8601
7558	// format.
7559	CreationDate string `json:"creationDate,omitempty"`
7560
7561	// Reason: The reason for the refund. Acceptable values are: -
7562	// "adjustment" - "autoPostInternal" -
7563	// "autoPostInvalidBillingAddress" - "autoPostNoInventory" -
7564	// "autoPostPriceError" - "autoPostUndeliverableShippingAddress" -
7565	// "couponAbuse" - "courtesyAdjustment" - "customerCanceled" -
7566	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
7567	// - "customerSupportRequested" - "deliveredLateByCarrier" -
7568	// "deliveredTooLate" - "expiredItem" -
7569	// "failToPushOrderGoogleError" - "failToPushOrderMerchantError" -
7570	// "failToPushOrderMerchantFulfillmentError" -
7571	// "failToPushOrderToMerchant" -
7572	// "failToPushOrderToMerchantOutOfStock" - "feeAdjustment" -
7573	// "invalidCoupon" - "lateShipmentCredit" -
7574	// "malformedShippingAddress" - "merchantDidNotShipOnTime" -
7575	// "noInventory" - "orderTimeout" - "other" - "paymentAbuse" -
7576	// "paymentDeclined" - "priceAdjustment" - "priceError" -
7577	// "productArrivedDamaged" - "productNotAsDescribed" -
7578	// "promoReallocation" - "qualityNotAsExpected" -
7579	// "returnRefundAbuse" - "shippingCostAdjustment" -
7580	// "shippingPriceError" - "taxAdjustment" - "taxError" -
7581	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
7582	// "wrongProductShipped"
7583	Reason string `json:"reason,omitempty"`
7584
7585	// ReasonText: The explanation of the reason.
7586	ReasonText string `json:"reasonText,omitempty"`
7587
7588	// ForceSendFields is a list of field names (e.g. "Actor") to
7589	// unconditionally include in API requests. By default, fields with
7590	// empty or default values are omitted from API requests. However, any
7591	// non-pointer, non-interface field appearing in ForceSendFields will be
7592	// sent to the server regardless of whether the field is empty or not.
7593	// This may be used to include empty fields in Patch requests.
7594	ForceSendFields []string `json:"-"`
7595
7596	// NullFields is a list of field names (e.g. "Actor") to include in API
7597	// requests with the JSON null value. By default, fields with empty
7598	// values are omitted from API requests. However, any field with an
7599	// empty value appearing in NullFields will be sent to the server as
7600	// null. It is an error if a field in this list has a non-empty value.
7601	// This may be used to include null fields in Patch requests.
7602	NullFields []string `json:"-"`
7603}
7604
7605func (s *OrderRefund) MarshalJSON() ([]byte, error) {
7606	type NoMethod OrderRefund
7607	raw := NoMethod(*s)
7608	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7609}
7610
7611// OrderReportDisbursement: Order disbursement. All methods require the
7612// payment analyst role.
7613type OrderReportDisbursement struct {
7614	// DisbursementAmount: The disbursement amount.
7615	DisbursementAmount *Price `json:"disbursementAmount,omitempty"`
7616
7617	// DisbursementCreationDate: The disbursement date, in ISO 8601 format.
7618	DisbursementCreationDate string `json:"disbursementCreationDate,omitempty"`
7619
7620	// DisbursementDate: The date the disbursement was initiated, in ISO
7621	// 8601 format.
7622	DisbursementDate string `json:"disbursementDate,omitempty"`
7623
7624	// DisbursementId: The ID of the disbursement.
7625	DisbursementId string `json:"disbursementId,omitempty"`
7626
7627	// MerchantId: The ID of the managing account.
7628	MerchantId uint64 `json:"merchantId,omitempty,string"`
7629
7630	// ForceSendFields is a list of field names (e.g. "DisbursementAmount")
7631	// to unconditionally include in API requests. By default, fields with
7632	// empty or default values are omitted from API requests. However, any
7633	// non-pointer, non-interface field appearing in ForceSendFields will be
7634	// sent to the server regardless of whether the field is empty or not.
7635	// This may be used to include empty fields in Patch requests.
7636	ForceSendFields []string `json:"-"`
7637
7638	// NullFields is a list of field names (e.g. "DisbursementAmount") to
7639	// include in API requests with the JSON null value. By default, fields
7640	// with empty values are omitted from API requests. However, any field
7641	// with an empty value appearing in NullFields will be sent to the
7642	// server as null. It is an error if a field in this list has a
7643	// non-empty value. This may be used to include null fields in Patch
7644	// requests.
7645	NullFields []string `json:"-"`
7646}
7647
7648func (s *OrderReportDisbursement) MarshalJSON() ([]byte, error) {
7649	type NoMethod OrderReportDisbursement
7650	raw := NoMethod(*s)
7651	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7652}
7653
7654type OrderReportTransaction struct {
7655	// DisbursementAmount: The disbursement amount.
7656	DisbursementAmount *Price `json:"disbursementAmount,omitempty"`
7657
7658	// DisbursementCreationDate: The date the disbursement was created, in
7659	// ISO 8601 format.
7660	DisbursementCreationDate string `json:"disbursementCreationDate,omitempty"`
7661
7662	// DisbursementDate: The date the disbursement was initiated, in ISO
7663	// 8601 format.
7664	DisbursementDate string `json:"disbursementDate,omitempty"`
7665
7666	// DisbursementId: The ID of the disbursement.
7667	DisbursementId string `json:"disbursementId,omitempty"`
7668
7669	// MerchantId: The ID of the managing account.
7670	MerchantId uint64 `json:"merchantId,omitempty,string"`
7671
7672	// MerchantOrderId: Merchant-provided ID of the order.
7673	MerchantOrderId string `json:"merchantOrderId,omitempty"`
7674
7675	// OrderId: The ID of the order.
7676	OrderId string `json:"orderId,omitempty"`
7677
7678	// ProductAmount: Total amount for the items.
7679	ProductAmount *ProductAmount `json:"productAmount,omitempty"`
7680
7681	// TransactionDate: The date of the transaction, in ISO 8601 format.
7682	TransactionDate string `json:"transactionDate,omitempty"`
7683
7684	// ForceSendFields is a list of field names (e.g. "DisbursementAmount")
7685	// to unconditionally include in API requests. By default, fields with
7686	// empty or default values are omitted from API requests. However, any
7687	// non-pointer, non-interface field appearing in ForceSendFields will be
7688	// sent to the server regardless of whether the field is empty or not.
7689	// This may be used to include empty fields in Patch requests.
7690	ForceSendFields []string `json:"-"`
7691
7692	// NullFields is a list of field names (e.g. "DisbursementAmount") to
7693	// include in API requests with the JSON null value. By default, fields
7694	// with empty values are omitted from API requests. However, any field
7695	// with an empty value appearing in NullFields will be sent to the
7696	// server as null. It is an error if a field in this list has a
7697	// non-empty value. This may be used to include null fields in Patch
7698	// requests.
7699	NullFields []string `json:"-"`
7700}
7701
7702func (s *OrderReportTransaction) MarshalJSON() ([]byte, error) {
7703	type NoMethod OrderReportTransaction
7704	raw := NoMethod(*s)
7705	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7706}
7707
7708type OrderReturn struct {
7709	// Actor: The actor that created the refund. Acceptable values are: -
7710	// "customer" - "googleBot" - "googleCustomerService" -
7711	// "googlePayments" - "googleSabre" - "merchant"
7712	Actor string `json:"actor,omitempty"`
7713
7714	// CreationDate: Date on which the item has been created, in ISO 8601
7715	// format.
7716	CreationDate string `json:"creationDate,omitempty"`
7717
7718	// Quantity: Quantity that is returned.
7719	Quantity int64 `json:"quantity,omitempty"`
7720
7721	// Reason: The reason for the return. Acceptable values are: -
7722	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
7723	// - "deliveredTooLate" - "expiredItem" - "invalidCoupon" -
7724	// "malformedShippingAddress" - "other" - "productArrivedDamaged"
7725	// - "productNotAsDescribed" - "qualityNotAsExpected" -
7726	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
7727	// "wrongProductShipped"
7728	Reason string `json:"reason,omitempty"`
7729
7730	// ReasonText: The explanation of the reason.
7731	ReasonText string `json:"reasonText,omitempty"`
7732
7733	// ForceSendFields is a list of field names (e.g. "Actor") to
7734	// unconditionally include in API requests. By default, fields with
7735	// empty or default values are omitted from API requests. However, any
7736	// non-pointer, non-interface field appearing in ForceSendFields will be
7737	// sent to the server regardless of whether the field is empty or not.
7738	// This may be used to include empty fields in Patch requests.
7739	ForceSendFields []string `json:"-"`
7740
7741	// NullFields is a list of field names (e.g. "Actor") to include in API
7742	// requests with the JSON null value. By default, fields with empty
7743	// values are omitted from API requests. However, any field with an
7744	// empty value appearing in NullFields will be sent to the server as
7745	// null. It is an error if a field in this list has a non-empty value.
7746	// This may be used to include null fields in Patch requests.
7747	NullFields []string `json:"-"`
7748}
7749
7750func (s *OrderReturn) MarshalJSON() ([]byte, error) {
7751	type NoMethod OrderReturn
7752	raw := NoMethod(*s)
7753	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7754}
7755
7756type OrderShipment struct {
7757	// Carrier: The carrier handling the shipment. For supported carriers,
7758	// Google includes the carrier name and tracking URL in emails to
7759	// customers. For select supported carriers, Google also automatically
7760	// updates the shipment status based on the provided shipment ID.
7761	// *Note:* You can also use unsupported carriers, but emails to
7762	// customers will not include the carrier name or tracking URL, and
7763	// there will be no automatic order status updates. Supported carriers
7764	// for US are: - "ups" (United Parcel Service) *automatic status
7765	// updates* - "usps" (United States Postal Service) *automatic status
7766	// updates* - "fedex" (FedEx) *automatic status updates * - "dhl"
7767	// (DHL eCommerce) *automatic status updates* (US only) - "ontrac"
7768	// (OnTrac) *automatic status updates * - "dhl express" (DHL Express)
7769	// - "deliv" (Deliv) - "dynamex" (TForce) - "lasership"
7770	// (LaserShip) - "mpx" (Military Parcel Xpress) - "uds" (United
7771	// Delivery Service) - "efw" (Estes Forwarding Worldwide) - "jd
7772	// logistics" (JD Logistics) - "yunexpress" (YunExpress) - "china
7773	// post" (China Post) - "china ems" (China Post Express Mail Service)
7774	// - "singapore post" (Singapore Post) - "pos malaysia" (Pos
7775	// Malaysia) - "postnl" (PostNL) - "ptt" (PTT Turkish Post) -
7776	// "eub" (ePacket) - "chukou1" (Chukou1 Logistics) - "bestex"
7777	// (Best Express) - "canada post" (Canada Post) - "purolator"
7778	// (Purolator) - "canpar" (Canpar) - "india post" (India Post) -
7779	// "blue dart" (Blue Dart) - "delhivery" (Delhivery) - "dtdc"
7780	// (DTDC) - "tpc india" (TPC India) - "lso" (Lone Star Overnight) -
7781	// "tww" (Team Worldwide) Supported carriers for FR are: - "la
7782	// poste" (La Poste) *automatic status updates * - "colissimo"
7783	// (Colissimo by La Poste) *automatic status updates* - "ups" (United
7784	// Parcel Service) *automatic status updates * - "chronopost"
7785	// (Chronopost by La Poste) - "gls" (General Logistics Systems France)
7786	// - "dpd" (DPD Group by GeoPost) - "bpost" (Belgian Post Group) -
7787	// "colis prive" (Colis Privé) - "boxtal" (Boxtal) - "geodis"
7788	// (GEODIS) - "tnt" (TNT) - "db schenker" (DB Schenker) - "aramex"
7789	// (Aramex)
7790	Carrier string `json:"carrier,omitempty"`
7791
7792	// CreationDate: Date on which the shipment has been created, in ISO
7793	// 8601 format.
7794	CreationDate string `json:"creationDate,omitempty"`
7795
7796	// DeliveryDate: Date on which the shipment has been delivered, in ISO
7797	// 8601 format. Present only if `status` is `delivered`
7798	DeliveryDate string `json:"deliveryDate,omitempty"`
7799
7800	// Id: The ID of the shipment.
7801	Id string `json:"id,omitempty"`
7802
7803	// LineItems: The line items that are shipped.
7804	LineItems []*OrderShipmentLineItemShipment `json:"lineItems,omitempty"`
7805
7806	// ScheduledDeliveryDetails: Delivery details of the shipment if
7807	// scheduling is needed.
7808	ScheduledDeliveryDetails *OrderShipmentScheduledDeliveryDetails `json:"scheduledDeliveryDetails,omitempty"`
7809
7810	// ShipmentGroupId: The shipment group ID of the shipment. This is set
7811	// in shiplineitems request.
7812	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
7813
7814	// Status: The status of the shipment. Acceptable values are: -
7815	// "delivered" - "readyForPickup" - "shipped" - "undeliverable"
7816	Status string `json:"status,omitempty"`
7817
7818	// TrackingId: The tracking ID for the shipment.
7819	TrackingId string `json:"trackingId,omitempty"`
7820
7821	// ForceSendFields is a list of field names (e.g. "Carrier") 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. "Carrier") to include in
7830	// API 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 *OrderShipment) MarshalJSON() ([]byte, error) {
7839	type NoMethod OrderShipment
7840	raw := NoMethod(*s)
7841	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7842}
7843
7844type OrderShipmentLineItemShipment struct {
7845	// LineItemId: The ID of the line item that is shipped. This value is
7846	// assigned by Google when an order is created. Either lineItemId or
7847	// productId is required.
7848	LineItemId string `json:"lineItemId,omitempty"`
7849
7850	// ProductId: The ID of the product to ship. This is the REST ID used in
7851	// the products service. Either lineItemId or productId is required.
7852	ProductId string `json:"productId,omitempty"`
7853
7854	// Quantity: The quantity that is shipped.
7855	Quantity int64 `json:"quantity,omitempty"`
7856
7857	// ForceSendFields is a list of field names (e.g. "LineItemId") 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. "LineItemId") to include in
7866	// API requests with the JSON null value. By default, fields with empty
7867	// values are omitted from API requests. However, any field with an
7868	// empty value appearing in NullFields will be sent to the server as
7869	// null. It is an error if a field in this list has a non-empty value.
7870	// This may be used to include null fields in Patch requests.
7871	NullFields []string `json:"-"`
7872}
7873
7874func (s *OrderShipmentLineItemShipment) MarshalJSON() ([]byte, error) {
7875	type NoMethod OrderShipmentLineItemShipment
7876	raw := NoMethod(*s)
7877	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7878}
7879
7880type OrderShipmentScheduledDeliveryDetails struct {
7881	// CarrierPhoneNumber: The phone number of the carrier fulfilling the
7882	// delivery. The phone number is formatted as the international notation
7883	// in ITU-T Recommendation E.123 (e.g., "+41 44 668 1800").
7884	CarrierPhoneNumber string `json:"carrierPhoneNumber,omitempty"`
7885
7886	// ScheduledDate: The date a shipment is scheduled for delivery, in ISO
7887	// 8601 format.
7888	ScheduledDate string `json:"scheduledDate,omitempty"`
7889
7890	// ForceSendFields is a list of field names (e.g. "CarrierPhoneNumber")
7891	// to unconditionally include in API requests. By default, fields with
7892	// empty or default values are omitted from API requests. However, any
7893	// non-pointer, non-interface field appearing in ForceSendFields will be
7894	// sent to the server regardless of whether the field is empty or not.
7895	// This may be used to include empty fields in Patch requests.
7896	ForceSendFields []string `json:"-"`
7897
7898	// NullFields is a list of field names (e.g. "CarrierPhoneNumber") to
7899	// include in API requests with the JSON null value. By default, fields
7900	// with empty values are omitted from API requests. However, any field
7901	// with an empty value appearing in NullFields will be sent to the
7902	// server as null. It is an error if a field in this list has a
7903	// non-empty value. This may be used to include null fields in Patch
7904	// requests.
7905	NullFields []string `json:"-"`
7906}
7907
7908func (s *OrderShipmentScheduledDeliveryDetails) MarshalJSON() ([]byte, error) {
7909	type NoMethod OrderShipmentScheduledDeliveryDetails
7910	raw := NoMethod(*s)
7911	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7912}
7913
7914// OrderTrackingSignal: Represents a merchant trade from which signals
7915// are extracted, e.g. shipping.
7916type OrderTrackingSignal struct {
7917	// CustomerShippingFee: The shipping fee of the order; this value should
7918	// be set to zero in the case of free shipping.
7919	CustomerShippingFee *PriceAmount `json:"customerShippingFee,omitempty"`
7920
7921	// DeliveryPostalCode: Required. The delivery postal code, as a
7922	// continuous string without spaces or dashes, e.g. "95016". This field
7923	// will be anonymized in returned OrderTrackingSignal creation response.
7924	DeliveryPostalCode string `json:"deliveryPostalCode,omitempty"`
7925
7926	// DeliveryRegionCode: Required. The [CLDR territory code]
7927	// (http://www.unicode.org/repos/cldr/tags/latest/common/main/en.xml)
7928	// for the shipping destination.
7929	DeliveryRegionCode string `json:"deliveryRegionCode,omitempty"`
7930
7931	// LineItems: Information about line items in the order.
7932	LineItems []*OrderTrackingSignalLineItemDetails `json:"lineItems,omitempty"`
7933
7934	// MerchantId: The Google merchant ID of this order tracking signal.
7935	// This value is optional. If left unset, the caller's merchant ID is
7936	// used. You must request access in order to provide data on behalf of
7937	// another merchant. For more information, see Submitting Order Tracking
7938	// Signals (/shopping-content/guides/order-tracking-signals).
7939	MerchantId int64 `json:"merchantId,omitempty,string"`
7940
7941	// OrderCreatedTime: Required. The time when the order was created on
7942	// the merchant side. Include the year and timezone string, if
7943	// available.
7944	OrderCreatedTime *DateTime `json:"orderCreatedTime,omitempty"`
7945
7946	// OrderId: Required. The ID of the order on the merchant side. This
7947	// field will be hashed in returned OrderTrackingSignal creation
7948	// response.
7949	OrderId string `json:"orderId,omitempty"`
7950
7951	// OrderTrackingSignalId: Output only. The ID that uniquely identifies
7952	// this order tracking signal.
7953	OrderTrackingSignalId int64 `json:"orderTrackingSignalId,omitempty,string"`
7954
7955	// ShipmentLineItemMapping: The mapping of the line items to the
7956	// shipment information.
7957	ShipmentLineItemMapping []*OrderTrackingSignalShipmentLineItemMapping `json:"shipmentLineItemMapping,omitempty"`
7958
7959	// ShippingInfo: The shipping information for the order.
7960	ShippingInfo []*OrderTrackingSignalShippingInfo `json:"shippingInfo,omitempty"`
7961
7962	// ServerResponse contains the HTTP response code and headers from the
7963	// server.
7964	googleapi.ServerResponse `json:"-"`
7965
7966	// ForceSendFields is a list of field names (e.g. "CustomerShippingFee")
7967	// to unconditionally include in API requests. By default, fields with
7968	// empty or default values are omitted from API requests. However, any
7969	// non-pointer, non-interface field appearing in ForceSendFields will be
7970	// sent to the server regardless of whether the field is empty or not.
7971	// This may be used to include empty fields in Patch requests.
7972	ForceSendFields []string `json:"-"`
7973
7974	// NullFields is a list of field names (e.g. "CustomerShippingFee") to
7975	// include in API requests with the JSON null value. By default, fields
7976	// with empty values are omitted from API requests. However, any field
7977	// with an empty value appearing in NullFields will be sent to the
7978	// server as null. It is an error if a field in this list has a
7979	// non-empty value. This may be used to include null fields in Patch
7980	// requests.
7981	NullFields []string `json:"-"`
7982}
7983
7984func (s *OrderTrackingSignal) MarshalJSON() ([]byte, error) {
7985	type NoMethod OrderTrackingSignal
7986	raw := NoMethod(*s)
7987	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7988}
7989
7990// OrderTrackingSignalLineItemDetails: The line items of the order.
7991type OrderTrackingSignalLineItemDetails struct {
7992	// Brand: Brand of the product.
7993	Brand string `json:"brand,omitempty"`
7994
7995	// Gtin: The Global Trade Item Number.
7996	Gtin string `json:"gtin,omitempty"`
7997
7998	// LineItemId: Required. The ID for this line item.
7999	LineItemId string `json:"lineItemId,omitempty"`
8000
8001	// Mpn: The manufacturer part number.
8002	Mpn string `json:"mpn,omitempty"`
8003
8004	// ProductDescription: Plain text description of this product
8005	// (deprecated: Please use product_title instead).
8006	ProductDescription string `json:"productDescription,omitempty"`
8007
8008	// ProductId: Required. The Content API REST ID of the product, in the
8009	// form channel:contentLanguage:targetCountry:offerId.
8010	ProductId string `json:"productId,omitempty"`
8011
8012	// ProductTitle: Plain text title of this product.
8013	ProductTitle string `json:"productTitle,omitempty"`
8014
8015	// Quantity: Required. The quantity of the line item in the order.
8016	Quantity int64 `json:"quantity,omitempty,string"`
8017
8018	// Sku: Merchant SKU for this item (deprecated).
8019	Sku string `json:"sku,omitempty"`
8020
8021	// Upc: Universal product code for this item (deprecated: Please use
8022	// GTIN instead).
8023	Upc string `json:"upc,omitempty"`
8024
8025	// ForceSendFields is a list of field names (e.g. "Brand") to
8026	// unconditionally include in API requests. By default, fields with
8027	// empty or default values are omitted from API requests. However, any
8028	// non-pointer, non-interface field appearing in ForceSendFields will be
8029	// sent to the server regardless of whether the field is empty or not.
8030	// This may be used to include empty fields in Patch requests.
8031	ForceSendFields []string `json:"-"`
8032
8033	// NullFields is a list of field names (e.g. "Brand") to include in API
8034	// requests with the JSON null value. By default, fields with empty
8035	// values are omitted from API requests. However, any field with an
8036	// empty value appearing in NullFields will be sent to the server as
8037	// null. It is an error if a field in this list has a non-empty value.
8038	// This may be used to include null fields in Patch requests.
8039	NullFields []string `json:"-"`
8040}
8041
8042func (s *OrderTrackingSignalLineItemDetails) MarshalJSON() ([]byte, error) {
8043	type NoMethod OrderTrackingSignalLineItemDetails
8044	raw := NoMethod(*s)
8045	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8046}
8047
8048// OrderTrackingSignalShipmentLineItemMapping: Represents how many items
8049// are in the shipment for the given shipment_id and line_item_id.
8050type OrderTrackingSignalShipmentLineItemMapping struct {
8051	// LineItemId: Required. The line item ID.
8052	LineItemId string `json:"lineItemId,omitempty"`
8053
8054	// Quantity: Required. The line item quantity in the shipment.
8055	Quantity int64 `json:"quantity,omitempty,string"`
8056
8057	// ShipmentId: Required. The shipment ID. This field will be hashed in
8058	// returned OrderTrackingSignal creation response.
8059	ShipmentId string `json:"shipmentId,omitempty"`
8060
8061	// ForceSendFields is a list of field names (e.g. "LineItemId") to
8062	// unconditionally include in API requests. By default, fields with
8063	// empty or default values are omitted from API requests. However, any
8064	// non-pointer, non-interface field appearing in ForceSendFields will be
8065	// sent to the server regardless of whether the field is empty or not.
8066	// This may be used to include empty fields in Patch requests.
8067	ForceSendFields []string `json:"-"`
8068
8069	// NullFields is a list of field names (e.g. "LineItemId") to include in
8070	// API requests with the JSON null value. By default, fields with empty
8071	// values are omitted from API requests. However, any field with an
8072	// empty value appearing in NullFields will be sent to the server as
8073	// null. It is an error if a field in this list has a non-empty value.
8074	// This may be used to include null fields in Patch requests.
8075	NullFields []string `json:"-"`
8076}
8077
8078func (s *OrderTrackingSignalShipmentLineItemMapping) MarshalJSON() ([]byte, error) {
8079	type NoMethod OrderTrackingSignalShipmentLineItemMapping
8080	raw := NoMethod(*s)
8081	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8082}
8083
8084// OrderTrackingSignalShippingInfo: The shipping information for the
8085// order.
8086type OrderTrackingSignalShippingInfo struct {
8087	// ActualDeliveryTime: The time when the shipment was actually
8088	// delivered. Include the year and timezone string, if available. This
8089	// field is required, if one of the following fields is absent:
8090	// tracking_id or carrier_name.
8091	ActualDeliveryTime *DateTime `json:"actualDeliveryTime,omitempty"`
8092
8093	// CarrierName: The name of the shipping carrier for the delivery. This
8094	// field is required if one of the following fields is absent:
8095	// earliest_delivery_promise_time, latest_delivery_promise_time, and
8096	// actual_delivery_time.
8097	CarrierName string `json:"carrierName,omitempty"`
8098
8099	// CarrierServiceName: The service type for fulfillment, e.g., GROUND,
8100	// FIRST_CLASS, etc.
8101	CarrierServiceName string `json:"carrierServiceName,omitempty"`
8102
8103	// EarliestDeliveryPromiseTime: The earliest delivery promised time.
8104	// Include the year and timezone string, if available. This field is
8105	// required, if one of the following fields is absent: tracking_id or
8106	// carrier_name.
8107	EarliestDeliveryPromiseTime *DateTime `json:"earliestDeliveryPromiseTime,omitempty"`
8108
8109	// LatestDeliveryPromiseTime: The latest delivery promised time. Include
8110	// the year and timezone string, if available. This field is required,
8111	// if one of the following fields is absent: tracking_id or
8112	// carrier_name.
8113	LatestDeliveryPromiseTime *DateTime `json:"latestDeliveryPromiseTime,omitempty"`
8114
8115	// OriginPostalCode: The origin postal code, as a continuous string
8116	// without spaces or dashes, e.g. "95016". This field will be anonymized
8117	// in returned OrderTrackingSignal creation response.
8118	OriginPostalCode string `json:"originPostalCode,omitempty"`
8119
8120	// OriginRegionCode: The [CLDR territory code]
8121	// (http://www.unicode.org/repos/cldr/tags/latest/common/main/en.xml)
8122	// for the shipping origin.
8123	OriginRegionCode string `json:"originRegionCode,omitempty"`
8124
8125	// ShipmentId: Required. The shipment ID. This field will be hashed in
8126	// returned OrderTrackingSignal creation response.
8127	ShipmentId string `json:"shipmentId,omitempty"`
8128
8129	// ShippedTime: The time when the shipment was shipped. Include the year
8130	// and timezone string, if available.
8131	ShippedTime *DateTime `json:"shippedTime,omitempty"`
8132
8133	// ShippingStatus: The status of the shipment.
8134	//
8135	// Possible values:
8136	//   "SHIPPING_STATE_UNSPECIFIED" - The shipping status is not known to
8137	// merchant.
8138	//   "SHIPPED" - All items are shipped.
8139	//   "DELIVERED" - The shipment is already delivered.
8140	ShippingStatus string `json:"shippingStatus,omitempty"`
8141
8142	// TrackingId: The tracking ID of the shipment. This field is required
8143	// if one of the following fields is absent:
8144	// earliest_delivery_promise_time, latest_delivery_promise_time, and
8145	// actual_delivery_time.
8146	TrackingId string `json:"trackingId,omitempty"`
8147
8148	// ForceSendFields is a list of field names (e.g. "ActualDeliveryTime")
8149	// to unconditionally include in API requests. By default, fields with
8150	// empty or default values are omitted from API requests. However, any
8151	// non-pointer, non-interface field appearing in ForceSendFields will be
8152	// sent to the server regardless of whether the field is empty or not.
8153	// This may be used to include empty fields in Patch requests.
8154	ForceSendFields []string `json:"-"`
8155
8156	// NullFields is a list of field names (e.g. "ActualDeliveryTime") to
8157	// include in API requests with the JSON null value. By default, fields
8158	// with empty values are omitted from API requests. However, any field
8159	// with an empty value appearing in NullFields will be sent to the
8160	// server as null. It is an error if a field in this list has a
8161	// non-empty value. This may be used to include null fields in Patch
8162	// requests.
8163	NullFields []string `json:"-"`
8164}
8165
8166func (s *OrderTrackingSignalShippingInfo) MarshalJSON() ([]byte, error) {
8167	type NoMethod OrderTrackingSignalShippingInfo
8168	raw := NoMethod(*s)
8169	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8170}
8171
8172type OrderinvoicesCreateChargeInvoiceRequest struct {
8173	// InvoiceId: [required] The ID of the invoice.
8174	InvoiceId string `json:"invoiceId,omitempty"`
8175
8176	// InvoiceSummary: [required] Invoice summary.
8177	InvoiceSummary *InvoiceSummary `json:"invoiceSummary,omitempty"`
8178
8179	// LineItemInvoices: [required] Invoice details per line item.
8180	LineItemInvoices []*ShipmentInvoiceLineItemInvoice `json:"lineItemInvoices,omitempty"`
8181
8182	// OperationId: [required] The ID of the operation, unique across all
8183	// operations for a given order.
8184	OperationId string `json:"operationId,omitempty"`
8185
8186	// ShipmentGroupId: [required] ID of the shipment group. It is assigned
8187	// by the merchant in the `shipLineItems` method and is used to group
8188	// multiple line items that have the same kind of shipping charges.
8189	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
8190
8191	// ForceSendFields is a list of field names (e.g. "InvoiceId") to
8192	// unconditionally include in API requests. By default, fields with
8193	// empty or default values are omitted from API requests. However, any
8194	// non-pointer, non-interface field appearing in ForceSendFields will be
8195	// sent to the server regardless of whether the field is empty or not.
8196	// This may be used to include empty fields in Patch requests.
8197	ForceSendFields []string `json:"-"`
8198
8199	// NullFields is a list of field names (e.g. "InvoiceId") to include in
8200	// API requests with the JSON null value. By default, fields with empty
8201	// values are omitted from API requests. However, any field with an
8202	// empty value appearing in NullFields will be sent to the server as
8203	// null. It is an error if a field in this list has a non-empty value.
8204	// This may be used to include null fields in Patch requests.
8205	NullFields []string `json:"-"`
8206}
8207
8208func (s *OrderinvoicesCreateChargeInvoiceRequest) MarshalJSON() ([]byte, error) {
8209	type NoMethod OrderinvoicesCreateChargeInvoiceRequest
8210	raw := NoMethod(*s)
8211	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8212}
8213
8214type OrderinvoicesCreateChargeInvoiceResponse struct {
8215	// ExecutionStatus: The status of the execution. Acceptable values are:
8216	// - "duplicate" - "executed"
8217	ExecutionStatus string `json:"executionStatus,omitempty"`
8218
8219	// Kind: Identifies what kind of resource this is. Value: the fixed
8220	// string "content#orderinvoicesCreateChargeInvoiceResponse".
8221	Kind string `json:"kind,omitempty"`
8222
8223	// ServerResponse contains the HTTP response code and headers from the
8224	// server.
8225	googleapi.ServerResponse `json:"-"`
8226
8227	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8228	// unconditionally include in API requests. By default, fields with
8229	// empty or default values are omitted from API requests. However, any
8230	// non-pointer, non-interface field appearing in ForceSendFields will be
8231	// sent to the server regardless of whether the field is empty or not.
8232	// This may be used to include empty fields in Patch requests.
8233	ForceSendFields []string `json:"-"`
8234
8235	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8236	// include in API requests with the JSON null value. By default, fields
8237	// with empty values are omitted from API requests. However, any field
8238	// with an empty value appearing in NullFields will be sent to the
8239	// server as null. It is an error if a field in this list has a
8240	// non-empty value. This may be used to include null fields in Patch
8241	// requests.
8242	NullFields []string `json:"-"`
8243}
8244
8245func (s *OrderinvoicesCreateChargeInvoiceResponse) MarshalJSON() ([]byte, error) {
8246	type NoMethod OrderinvoicesCreateChargeInvoiceResponse
8247	raw := NoMethod(*s)
8248	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8249}
8250
8251type OrderinvoicesCreateRefundInvoiceRequest struct {
8252	// InvoiceId: [required] The ID of the invoice.
8253	InvoiceId string `json:"invoiceId,omitempty"`
8254
8255	// OperationId: [required] The ID of the operation, unique across all
8256	// operations for a given order.
8257	OperationId string `json:"operationId,omitempty"`
8258
8259	// RefundOnlyOption: Option to create a refund-only invoice. Exactly one
8260	// of `refundOnlyOption` or `returnOption` must be provided.
8261	RefundOnlyOption *OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceRefundOption `json:"refundOnlyOption,omitempty"`
8262
8263	// ReturnOption: Option to create an invoice for a refund and mark all
8264	// items within the invoice as returned. Exactly one of
8265	// `refundOnlyOption` or `returnOption` must be provided.
8266	ReturnOption *OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceReturnOption `json:"returnOption,omitempty"`
8267
8268	// ShipmentInvoices: Invoice details for different shipment groups.
8269	ShipmentInvoices []*ShipmentInvoice `json:"shipmentInvoices,omitempty"`
8270
8271	// ForceSendFields is a list of field names (e.g. "InvoiceId") to
8272	// unconditionally include in API requests. By default, fields with
8273	// empty or default values are omitted from API requests. However, any
8274	// non-pointer, non-interface field appearing in ForceSendFields will be
8275	// sent to the server regardless of whether the field is empty or not.
8276	// This may be used to include empty fields in Patch requests.
8277	ForceSendFields []string `json:"-"`
8278
8279	// NullFields is a list of field names (e.g. "InvoiceId") to include in
8280	// API requests with the JSON null value. By default, fields with empty
8281	// values are omitted from API requests. However, any field with an
8282	// empty value appearing in NullFields will be sent to the server as
8283	// null. It is an error if a field in this list has a non-empty value.
8284	// This may be used to include null fields in Patch requests.
8285	NullFields []string `json:"-"`
8286}
8287
8288func (s *OrderinvoicesCreateRefundInvoiceRequest) MarshalJSON() ([]byte, error) {
8289	type NoMethod OrderinvoicesCreateRefundInvoiceRequest
8290	raw := NoMethod(*s)
8291	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8292}
8293
8294type OrderinvoicesCreateRefundInvoiceResponse struct {
8295	// ExecutionStatus: The status of the execution. Acceptable values are:
8296	// - "duplicate" - "executed"
8297	ExecutionStatus string `json:"executionStatus,omitempty"`
8298
8299	// Kind: Identifies what kind of resource this is. Value: the fixed
8300	// string "content#orderinvoicesCreateRefundInvoiceResponse".
8301	Kind string `json:"kind,omitempty"`
8302
8303	// ServerResponse contains the HTTP response code and headers from the
8304	// server.
8305	googleapi.ServerResponse `json:"-"`
8306
8307	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8308	// unconditionally include in API requests. By default, fields with
8309	// empty or default values are omitted from API requests. However, any
8310	// non-pointer, non-interface field appearing in ForceSendFields will be
8311	// sent to the server regardless of whether the field is empty or not.
8312	// This may be used to include empty fields in Patch requests.
8313	ForceSendFields []string `json:"-"`
8314
8315	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8316	// include in API requests with the JSON null value. By default, fields
8317	// with empty values are omitted from API requests. However, any field
8318	// with an empty value appearing in NullFields will be sent to the
8319	// server as null. It is an error if a field in this list has a
8320	// non-empty value. This may be used to include null fields in Patch
8321	// requests.
8322	NullFields []string `json:"-"`
8323}
8324
8325func (s *OrderinvoicesCreateRefundInvoiceResponse) MarshalJSON() ([]byte, error) {
8326	type NoMethod OrderinvoicesCreateRefundInvoiceResponse
8327	raw := NoMethod(*s)
8328	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8329}
8330
8331type OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceRefundOption struct {
8332	// Description: Optional description of the refund reason.
8333	Description string `json:"description,omitempty"`
8334
8335	// Reason: [required] Reason for the refund. Acceptable values are: -
8336	// "adjustment" - "autoPostInternal" -
8337	// "autoPostInvalidBillingAddress" - "autoPostNoInventory" -
8338	// "autoPostPriceError" - "autoPostUndeliverableShippingAddress" -
8339	// "couponAbuse" - "courtesyAdjustment" - "customerCanceled" -
8340	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
8341	// - "customerSupportRequested" - "deliveredLateByCarrier" -
8342	// "deliveredTooLate" - "expiredItem" -
8343	// "failToPushOrderGoogleError" - "failToPushOrderMerchantError" -
8344	// "failToPushOrderMerchantFulfillmentError" -
8345	// "failToPushOrderToMerchant" -
8346	// "failToPushOrderToMerchantOutOfStock" - "feeAdjustment" -
8347	// "invalidCoupon" - "lateShipmentCredit" -
8348	// "malformedShippingAddress" - "merchantDidNotShipOnTime" -
8349	// "noInventory" - "orderTimeout" - "other" - "paymentAbuse" -
8350	// "paymentDeclined" - "priceAdjustment" - "priceError" -
8351	// "productArrivedDamaged" - "productNotAsDescribed" -
8352	// "promoReallocation" - "qualityNotAsExpected" -
8353	// "returnRefundAbuse" - "shippingCostAdjustment" -
8354	// "shippingPriceError" - "taxAdjustment" - "taxError" -
8355	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
8356	// "wrongProductShipped"
8357	Reason string `json:"reason,omitempty"`
8358
8359	// ForceSendFields is a list of field names (e.g. "Description") to
8360	// unconditionally include in API requests. By default, fields with
8361	// empty or default values are omitted from API requests. However, any
8362	// non-pointer, non-interface field appearing in ForceSendFields will be
8363	// sent to the server regardless of whether the field is empty or not.
8364	// This may be used to include empty fields in Patch requests.
8365	ForceSendFields []string `json:"-"`
8366
8367	// NullFields is a list of field names (e.g. "Description") to include
8368	// in API requests with the JSON null value. By default, fields with
8369	// empty values are omitted from API requests. However, any field with
8370	// an empty value appearing in NullFields will be sent to the server as
8371	// null. It is an error if a field in this list has a non-empty value.
8372	// This may be used to include null fields in Patch requests.
8373	NullFields []string `json:"-"`
8374}
8375
8376func (s *OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceRefundOption) MarshalJSON() ([]byte, error) {
8377	type NoMethod OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceRefundOption
8378	raw := NoMethod(*s)
8379	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8380}
8381
8382type OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceReturnOption struct {
8383	// Description: Optional description of the return reason.
8384	Description string `json:"description,omitempty"`
8385
8386	// Reason: [required] Reason for the return. Acceptable values are: -
8387	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
8388	// - "deliveredTooLate" - "expiredItem" - "invalidCoupon" -
8389	// "malformedShippingAddress" - "other" - "productArrivedDamaged"
8390	// - "productNotAsDescribed" - "qualityNotAsExpected" -
8391	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
8392	// "wrongProductShipped"
8393	Reason string `json:"reason,omitempty"`
8394
8395	// ForceSendFields is a list of field names (e.g. "Description") to
8396	// unconditionally include in API requests. By default, fields with
8397	// empty or default values are omitted from API requests. However, any
8398	// non-pointer, non-interface field appearing in ForceSendFields will be
8399	// sent to the server regardless of whether the field is empty or not.
8400	// This may be used to include empty fields in Patch requests.
8401	ForceSendFields []string `json:"-"`
8402
8403	// NullFields is a list of field names (e.g. "Description") to include
8404	// in API requests with the JSON null value. By default, fields with
8405	// empty values are omitted from API requests. However, any field with
8406	// an empty value appearing in NullFields will be sent to the server as
8407	// null. It is an error if a field in this list has a non-empty value.
8408	// This may be used to include null fields in Patch requests.
8409	NullFields []string `json:"-"`
8410}
8411
8412func (s *OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceReturnOption) MarshalJSON() ([]byte, error) {
8413	type NoMethod OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceReturnOption
8414	raw := NoMethod(*s)
8415	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8416}
8417
8418type OrderreportsListDisbursementsResponse struct {
8419	// Disbursements: The list of disbursements.
8420	Disbursements []*OrderReportDisbursement `json:"disbursements,omitempty"`
8421
8422	// Kind: Identifies what kind of resource this is. Value: the fixed
8423	// string "content#orderreportsListDisbursementsResponse".
8424	Kind string `json:"kind,omitempty"`
8425
8426	// NextPageToken: The token for the retrieval of the next page of
8427	// disbursements.
8428	NextPageToken string `json:"nextPageToken,omitempty"`
8429
8430	// ServerResponse contains the HTTP response code and headers from the
8431	// server.
8432	googleapi.ServerResponse `json:"-"`
8433
8434	// ForceSendFields is a list of field names (e.g. "Disbursements") to
8435	// unconditionally include in API requests. By default, fields with
8436	// empty or default values are omitted from API requests. However, any
8437	// non-pointer, non-interface field appearing in ForceSendFields will be
8438	// sent to the server regardless of whether the field is empty or not.
8439	// This may be used to include empty fields in Patch requests.
8440	ForceSendFields []string `json:"-"`
8441
8442	// NullFields is a list of field names (e.g. "Disbursements") to include
8443	// in API requests with the JSON null value. By default, fields with
8444	// empty values are omitted from API requests. However, any field with
8445	// an empty value appearing in NullFields will be sent to the server as
8446	// null. It is an error if a field in this list has a non-empty value.
8447	// This may be used to include null fields in Patch requests.
8448	NullFields []string `json:"-"`
8449}
8450
8451func (s *OrderreportsListDisbursementsResponse) MarshalJSON() ([]byte, error) {
8452	type NoMethod OrderreportsListDisbursementsResponse
8453	raw := NoMethod(*s)
8454	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8455}
8456
8457type OrderreportsListTransactionsResponse struct {
8458	// Kind: Identifies what kind of resource this is. Value: the fixed
8459	// string "content#orderreportsListTransactionsResponse".
8460	Kind string `json:"kind,omitempty"`
8461
8462	// NextPageToken: The token for the retrieval of the next page of
8463	// transactions.
8464	NextPageToken string `json:"nextPageToken,omitempty"`
8465
8466	// Transactions: The list of transactions.
8467	Transactions []*OrderReportTransaction `json:"transactions,omitempty"`
8468
8469	// ServerResponse contains the HTTP response code and headers from the
8470	// server.
8471	googleapi.ServerResponse `json:"-"`
8472
8473	// ForceSendFields is a list of field names (e.g. "Kind") to
8474	// unconditionally include in API requests. By default, fields with
8475	// empty or default values are omitted from API requests. However, any
8476	// non-pointer, non-interface field appearing in ForceSendFields will be
8477	// sent to the server regardless of whether the field is empty or not.
8478	// This may be used to include empty fields in Patch requests.
8479	ForceSendFields []string `json:"-"`
8480
8481	// NullFields is a list of field names (e.g. "Kind") to include in API
8482	// requests with the JSON null value. By default, fields with empty
8483	// values are omitted from API requests. However, any field with an
8484	// empty value appearing in NullFields will be sent to the server as
8485	// null. It is an error if a field in this list has a non-empty value.
8486	// This may be used to include null fields in Patch requests.
8487	NullFields []string `json:"-"`
8488}
8489
8490func (s *OrderreportsListTransactionsResponse) MarshalJSON() ([]byte, error) {
8491	type NoMethod OrderreportsListTransactionsResponse
8492	raw := NoMethod(*s)
8493	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8494}
8495
8496type OrderreturnsAcknowledgeRequest struct {
8497	// OperationId: [required] The ID of the operation, unique across all
8498	// operations for a given order return.
8499	OperationId string `json:"operationId,omitempty"`
8500
8501	// ForceSendFields is a list of field names (e.g. "OperationId") to
8502	// unconditionally include in API requests. By default, fields with
8503	// empty or default values are omitted from API requests. However, any
8504	// non-pointer, non-interface field appearing in ForceSendFields will be
8505	// sent to the server regardless of whether the field is empty or not.
8506	// This may be used to include empty fields in Patch requests.
8507	ForceSendFields []string `json:"-"`
8508
8509	// NullFields is a list of field names (e.g. "OperationId") to include
8510	// in API requests with the JSON null value. By default, fields with
8511	// empty values are omitted from API requests. However, any field with
8512	// an empty value appearing in NullFields will be sent to the server as
8513	// null. It is an error if a field in this list has a non-empty value.
8514	// This may be used to include null fields in Patch requests.
8515	NullFields []string `json:"-"`
8516}
8517
8518func (s *OrderreturnsAcknowledgeRequest) MarshalJSON() ([]byte, error) {
8519	type NoMethod OrderreturnsAcknowledgeRequest
8520	raw := NoMethod(*s)
8521	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8522}
8523
8524type OrderreturnsAcknowledgeResponse struct {
8525	// ExecutionStatus: The status of the execution. Acceptable values are:
8526	// - "duplicate" - "executed"
8527	ExecutionStatus string `json:"executionStatus,omitempty"`
8528
8529	// Kind: Identifies what kind of resource this is. Value: the fixed
8530	// string "content#orderreturnsAcknowledgeResponse".
8531	Kind string `json:"kind,omitempty"`
8532
8533	// ServerResponse contains the HTTP response code and headers from the
8534	// server.
8535	googleapi.ServerResponse `json:"-"`
8536
8537	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8538	// unconditionally include in API requests. By default, fields with
8539	// empty or default values are omitted from API requests. However, any
8540	// non-pointer, non-interface field appearing in ForceSendFields will be
8541	// sent to the server regardless of whether the field is empty or not.
8542	// This may be used to include empty fields in Patch requests.
8543	ForceSendFields []string `json:"-"`
8544
8545	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8546	// include in API requests with the JSON null value. By default, fields
8547	// with empty values are omitted from API requests. However, any field
8548	// with an empty value appearing in NullFields will be sent to the
8549	// server as null. It is an error if a field in this list has a
8550	// non-empty value. This may be used to include null fields in Patch
8551	// requests.
8552	NullFields []string `json:"-"`
8553}
8554
8555func (s *OrderreturnsAcknowledgeResponse) MarshalJSON() ([]byte, error) {
8556	type NoMethod OrderreturnsAcknowledgeResponse
8557	raw := NoMethod(*s)
8558	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8559}
8560
8561type OrderreturnsCreateOrderReturnRequest struct {
8562	// LineItems: The list of line items to return.
8563	LineItems []*OrderreturnsLineItem `json:"lineItems,omitempty"`
8564
8565	// OperationId: The ID of the operation. Unique across all operations
8566	// for a given order.
8567	OperationId string `json:"operationId,omitempty"`
8568
8569	// OrderId: The ID of the order.
8570	OrderId string `json:"orderId,omitempty"`
8571
8572	// ReturnMethodType: The way of the package being returned.
8573	ReturnMethodType string `json:"returnMethodType,omitempty"`
8574
8575	// ForceSendFields is a list of field names (e.g. "LineItems") to
8576	// unconditionally include in API requests. By default, fields with
8577	// empty or default values are omitted from API requests. However, any
8578	// non-pointer, non-interface field appearing in ForceSendFields will be
8579	// sent to the server regardless of whether the field is empty or not.
8580	// This may be used to include empty fields in Patch requests.
8581	ForceSendFields []string `json:"-"`
8582
8583	// NullFields is a list of field names (e.g. "LineItems") to include in
8584	// API requests with the JSON null value. By default, fields with empty
8585	// values are omitted from API requests. However, any field with an
8586	// empty value appearing in NullFields will be sent to the server as
8587	// null. It is an error if a field in this list has a non-empty value.
8588	// This may be used to include null fields in Patch requests.
8589	NullFields []string `json:"-"`
8590}
8591
8592func (s *OrderreturnsCreateOrderReturnRequest) MarshalJSON() ([]byte, error) {
8593	type NoMethod OrderreturnsCreateOrderReturnRequest
8594	raw := NoMethod(*s)
8595	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8596}
8597
8598type OrderreturnsCreateOrderReturnResponse struct {
8599	// ExecutionStatus: The status of the execution. Acceptable values are:
8600	// - "duplicate" - "executed"
8601	ExecutionStatus string `json:"executionStatus,omitempty"`
8602
8603	// Kind: Identifies what kind of resource this is. Value: the fixed
8604	// string "content#orderreturnsCreateOrderReturnResponse".
8605	Kind string `json:"kind,omitempty"`
8606
8607	// OrderReturn: Created order return.
8608	OrderReturn *MerchantOrderReturn `json:"orderReturn,omitempty"`
8609
8610	// ServerResponse contains the HTTP response code and headers from the
8611	// server.
8612	googleapi.ServerResponse `json:"-"`
8613
8614	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8615	// unconditionally include in API requests. By default, fields with
8616	// empty or default values are omitted from API requests. However, any
8617	// non-pointer, non-interface field appearing in ForceSendFields will be
8618	// sent to the server regardless of whether the field is empty or not.
8619	// This may be used to include empty fields in Patch requests.
8620	ForceSendFields []string `json:"-"`
8621
8622	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8623	// include in API requests with the JSON null value. By default, fields
8624	// with empty values are omitted from API requests. However, any field
8625	// with an empty value appearing in NullFields will be sent to the
8626	// server as null. It is an error if a field in this list has a
8627	// non-empty value. This may be used to include null fields in Patch
8628	// requests.
8629	NullFields []string `json:"-"`
8630}
8631
8632func (s *OrderreturnsCreateOrderReturnResponse) MarshalJSON() ([]byte, error) {
8633	type NoMethod OrderreturnsCreateOrderReturnResponse
8634	raw := NoMethod(*s)
8635	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8636}
8637
8638type OrderreturnsLineItem struct {
8639	// LineItemId: The ID of the line item. This value is assigned by Google
8640	// when an order is created. Either lineItemId or productId is required.
8641	LineItemId string `json:"lineItemId,omitempty"`
8642
8643	// ProductId: The ID of the product to cancel. This is the REST ID used
8644	// in the products service. Either lineItemId or productId is required.
8645	ProductId string `json:"productId,omitempty"`
8646
8647	// Quantity: The quantity of this line item.
8648	Quantity int64 `json:"quantity,omitempty"`
8649
8650	// ForceSendFields is a list of field names (e.g. "LineItemId") to
8651	// unconditionally include in API requests. By default, fields with
8652	// empty or default values are omitted from API requests. However, any
8653	// non-pointer, non-interface field appearing in ForceSendFields will be
8654	// sent to the server regardless of whether the field is empty or not.
8655	// This may be used to include empty fields in Patch requests.
8656	ForceSendFields []string `json:"-"`
8657
8658	// NullFields is a list of field names (e.g. "LineItemId") to include in
8659	// API requests with the JSON null value. By default, fields with empty
8660	// values are omitted from API requests. However, any field with an
8661	// empty value appearing in NullFields will be sent to the server as
8662	// null. It is an error if a field in this list has a non-empty value.
8663	// This may be used to include null fields in Patch requests.
8664	NullFields []string `json:"-"`
8665}
8666
8667func (s *OrderreturnsLineItem) MarshalJSON() ([]byte, error) {
8668	type NoMethod OrderreturnsLineItem
8669	raw := NoMethod(*s)
8670	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8671}
8672
8673type OrderreturnsListResponse struct {
8674	// Kind: Identifies what kind of resource this is. Value: the fixed
8675	// string "content#orderreturnsListResponse".
8676	Kind string `json:"kind,omitempty"`
8677
8678	// NextPageToken: The token for the retrieval of the next page of
8679	// returns.
8680	NextPageToken string `json:"nextPageToken,omitempty"`
8681
8682	Resources []*MerchantOrderReturn `json:"resources,omitempty"`
8683
8684	// ServerResponse contains the HTTP response code and headers from the
8685	// server.
8686	googleapi.ServerResponse `json:"-"`
8687
8688	// ForceSendFields is a list of field names (e.g. "Kind") to
8689	// unconditionally include in API requests. By default, fields with
8690	// empty or default values are omitted from API requests. However, any
8691	// non-pointer, non-interface field appearing in ForceSendFields will be
8692	// sent to the server regardless of whether the field is empty or not.
8693	// This may be used to include empty fields in Patch requests.
8694	ForceSendFields []string `json:"-"`
8695
8696	// NullFields is a list of field names (e.g. "Kind") to include in API
8697	// requests with the JSON null value. By default, fields with empty
8698	// values are omitted from API requests. However, any field with an
8699	// empty value appearing in NullFields will be sent to the server as
8700	// null. It is an error if a field in this list has a non-empty value.
8701	// This may be used to include null fields in Patch requests.
8702	NullFields []string `json:"-"`
8703}
8704
8705func (s *OrderreturnsListResponse) MarshalJSON() ([]byte, error) {
8706	type NoMethod OrderreturnsListResponse
8707	raw := NoMethod(*s)
8708	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8709}
8710
8711type OrderreturnsPartialRefund struct {
8712	// PriceAmount: The pre-tax or post-tax amount to be refunded, depending
8713	// on the location of the order.
8714	PriceAmount *Price `json:"priceAmount,omitempty"`
8715
8716	// TaxAmount: Tax amount to be refunded. Note: This has different
8717	// meaning depending on the location of the order.
8718	TaxAmount *Price `json:"taxAmount,omitempty"`
8719
8720	// ForceSendFields is a list of field names (e.g. "PriceAmount") to
8721	// unconditionally include in API requests. By default, fields with
8722	// empty or default values are omitted from API requests. However, any
8723	// non-pointer, non-interface field appearing in ForceSendFields will be
8724	// sent to the server regardless of whether the field is empty or not.
8725	// This may be used to include empty fields in Patch requests.
8726	ForceSendFields []string `json:"-"`
8727
8728	// NullFields is a list of field names (e.g. "PriceAmount") to include
8729	// in API requests with the JSON null value. By default, fields with
8730	// empty values are omitted from API requests. However, any field with
8731	// an empty value appearing in NullFields will be sent to the server as
8732	// null. It is an error if a field in this list has a non-empty value.
8733	// This may be used to include null fields in Patch requests.
8734	NullFields []string `json:"-"`
8735}
8736
8737func (s *OrderreturnsPartialRefund) MarshalJSON() ([]byte, error) {
8738	type NoMethod OrderreturnsPartialRefund
8739	raw := NoMethod(*s)
8740	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8741}
8742
8743type OrderreturnsProcessRequest struct {
8744	// FullChargeReturnShippingCost: Option to charge the customer return
8745	// shipping cost.
8746	FullChargeReturnShippingCost bool `json:"fullChargeReturnShippingCost,omitempty"`
8747
8748	// OperationId: [required] The ID of the operation, unique across all
8749	// operations for a given order return.
8750	OperationId string `json:"operationId,omitempty"`
8751
8752	// RefundShippingFee: Refunds for original shipping fee.
8753	RefundShippingFee *OrderreturnsRefundOperation `json:"refundShippingFee,omitempty"`
8754
8755	// ReturnItems: The list of items to return.
8756	ReturnItems []*OrderreturnsReturnItem `json:"returnItems,omitempty"`
8757
8758	// ForceSendFields is a list of field names (e.g.
8759	// "FullChargeReturnShippingCost") to unconditionally include in API
8760	// requests. By default, fields with empty or default values are omitted
8761	// from API requests. However, any non-pointer, non-interface field
8762	// appearing in ForceSendFields will be sent to the server regardless of
8763	// whether the field is empty or not. This may be used to include empty
8764	// fields in Patch requests.
8765	ForceSendFields []string `json:"-"`
8766
8767	// NullFields is a list of field names (e.g.
8768	// "FullChargeReturnShippingCost") to include in API requests with the
8769	// JSON null value. By default, fields with empty values are omitted
8770	// from API requests. However, any field with an empty value appearing
8771	// in NullFields will be sent to the server as null. It is an error if a
8772	// field in this list has a non-empty value. This may be used to include
8773	// null fields in Patch requests.
8774	NullFields []string `json:"-"`
8775}
8776
8777func (s *OrderreturnsProcessRequest) MarshalJSON() ([]byte, error) {
8778	type NoMethod OrderreturnsProcessRequest
8779	raw := NoMethod(*s)
8780	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8781}
8782
8783type OrderreturnsProcessResponse struct {
8784	// ExecutionStatus: The status of the execution. Acceptable values are:
8785	// - "duplicate" - "executed"
8786	ExecutionStatus string `json:"executionStatus,omitempty"`
8787
8788	// Kind: Identifies what kind of resource this is. Value: the fixed
8789	// string "content#orderreturnsProcessResponse".
8790	Kind string `json:"kind,omitempty"`
8791
8792	// ServerResponse contains the HTTP response code and headers from the
8793	// server.
8794	googleapi.ServerResponse `json:"-"`
8795
8796	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8797	// unconditionally include in API requests. By default, fields with
8798	// empty or default values are omitted from API requests. However, any
8799	// non-pointer, non-interface field appearing in ForceSendFields will be
8800	// sent to the server regardless of whether the field is empty or not.
8801	// This may be used to include empty fields in Patch requests.
8802	ForceSendFields []string `json:"-"`
8803
8804	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8805	// include in API requests with the JSON null value. By default, fields
8806	// with empty values are omitted from API requests. However, any field
8807	// with an empty value appearing in NullFields will be sent to the
8808	// server as null. It is an error if a field in this list has a
8809	// non-empty value. This may be used to include null fields in Patch
8810	// requests.
8811	NullFields []string `json:"-"`
8812}
8813
8814func (s *OrderreturnsProcessResponse) MarshalJSON() ([]byte, error) {
8815	type NoMethod OrderreturnsProcessResponse
8816	raw := NoMethod(*s)
8817	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8818}
8819
8820type OrderreturnsRefundOperation struct {
8821	// FullRefund: If true, the item will be fully refunded. Allowed only
8822	// when payment_type is FOP. Merchant can choose this refund option to
8823	// indicate the full remaining amount of corresponding object to be
8824	// refunded to the customer via FOP.
8825	FullRefund bool `json:"fullRefund,omitempty"`
8826
8827	// PartialRefund: If this is set, the item will be partially refunded.
8828	// Merchant can choose this refund option to specify the customized
8829	// amount that to be refunded to the customer.
8830	PartialRefund *OrderreturnsPartialRefund `json:"partialRefund,omitempty"`
8831
8832	// PaymentType: The payment way of issuing refund. Default value is
8833	// ORIGINAL_FOP if not set.
8834	PaymentType string `json:"paymentType,omitempty"`
8835
8836	// ReasonText: The explanation of the reason.
8837	ReasonText string `json:"reasonText,omitempty"`
8838
8839	// ReturnRefundReason: Code of the refund reason.
8840	ReturnRefundReason string `json:"returnRefundReason,omitempty"`
8841
8842	// ForceSendFields is a list of field names (e.g. "FullRefund") to
8843	// unconditionally include in API requests. By default, fields with
8844	// empty or default values are omitted from API requests. However, any
8845	// non-pointer, non-interface field appearing in ForceSendFields will be
8846	// sent to the server regardless of whether the field is empty or not.
8847	// This may be used to include empty fields in Patch requests.
8848	ForceSendFields []string `json:"-"`
8849
8850	// NullFields is a list of field names (e.g. "FullRefund") to include in
8851	// API requests with the JSON null value. By default, fields with empty
8852	// values are omitted from API requests. However, any field with an
8853	// empty value appearing in NullFields will be sent to the server as
8854	// null. It is an error if a field in this list has a non-empty value.
8855	// This may be used to include null fields in Patch requests.
8856	NullFields []string `json:"-"`
8857}
8858
8859func (s *OrderreturnsRefundOperation) MarshalJSON() ([]byte, error) {
8860	type NoMethod OrderreturnsRefundOperation
8861	raw := NoMethod(*s)
8862	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8863}
8864
8865type OrderreturnsRejectOperation struct {
8866	// Reason: The reason for the return.
8867	Reason string `json:"reason,omitempty"`
8868
8869	// ReasonText: The explanation of the reason.
8870	ReasonText string `json:"reasonText,omitempty"`
8871
8872	// ForceSendFields is a list of field names (e.g. "Reason") to
8873	// unconditionally include in API requests. By default, fields with
8874	// empty or default values are omitted from API requests. However, any
8875	// non-pointer, non-interface field appearing in ForceSendFields will be
8876	// sent to the server regardless of whether the field is empty or not.
8877	// This may be used to include empty fields in Patch requests.
8878	ForceSendFields []string `json:"-"`
8879
8880	// NullFields is a list of field names (e.g. "Reason") to include in API
8881	// requests with the JSON null value. By default, fields with empty
8882	// values are omitted from API requests. However, any field with an
8883	// empty value appearing in NullFields will be sent to the server as
8884	// null. It is an error if a field in this list has a non-empty value.
8885	// This may be used to include null fields in Patch requests.
8886	NullFields []string `json:"-"`
8887}
8888
8889func (s *OrderreturnsRejectOperation) MarshalJSON() ([]byte, error) {
8890	type NoMethod OrderreturnsRejectOperation
8891	raw := NoMethod(*s)
8892	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8893}
8894
8895type OrderreturnsReturnItem struct {
8896	// Refund: Refunds the item.
8897	Refund *OrderreturnsRefundOperation `json:"refund,omitempty"`
8898
8899	// Reject: Rejects the item.
8900	Reject *OrderreturnsRejectOperation `json:"reject,omitempty"`
8901
8902	// ReturnItemId: Unit level ID for the return item. Different units of
8903	// the same product will have different IDs.
8904	ReturnItemId string `json:"returnItemId,omitempty"`
8905
8906	// ForceSendFields is a list of field names (e.g. "Refund") to
8907	// unconditionally include in API requests. By default, fields with
8908	// empty or default values are omitted from API requests. However, any
8909	// non-pointer, non-interface field appearing in ForceSendFields will be
8910	// sent to the server regardless of whether the field is empty or not.
8911	// This may be used to include empty fields in Patch requests.
8912	ForceSendFields []string `json:"-"`
8913
8914	// NullFields is a list of field names (e.g. "Refund") to include in API
8915	// requests with the JSON null value. By default, fields with empty
8916	// values are omitted from API requests. However, any field with an
8917	// empty value appearing in NullFields will be sent to the server as
8918	// null. It is an error if a field in this list has a non-empty value.
8919	// This may be used to include null fields in Patch requests.
8920	NullFields []string `json:"-"`
8921}
8922
8923func (s *OrderreturnsReturnItem) MarshalJSON() ([]byte, error) {
8924	type NoMethod OrderreturnsReturnItem
8925	raw := NoMethod(*s)
8926	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8927}
8928
8929type OrdersAcknowledgeRequest struct {
8930	// OperationId: The ID of the operation. Unique across all operations
8931	// for a given order.
8932	OperationId string `json:"operationId,omitempty"`
8933
8934	// ForceSendFields is a list of field names (e.g. "OperationId") to
8935	// unconditionally include in API requests. By default, fields with
8936	// empty or default values are omitted from API requests. However, any
8937	// non-pointer, non-interface field appearing in ForceSendFields will be
8938	// sent to the server regardless of whether the field is empty or not.
8939	// This may be used to include empty fields in Patch requests.
8940	ForceSendFields []string `json:"-"`
8941
8942	// NullFields is a list of field names (e.g. "OperationId") to include
8943	// in API requests with the JSON null value. By default, fields with
8944	// empty values are omitted from API requests. However, any field with
8945	// an empty value appearing in NullFields will be sent to the server as
8946	// null. It is an error if a field in this list has a non-empty value.
8947	// This may be used to include null fields in Patch requests.
8948	NullFields []string `json:"-"`
8949}
8950
8951func (s *OrdersAcknowledgeRequest) MarshalJSON() ([]byte, error) {
8952	type NoMethod OrdersAcknowledgeRequest
8953	raw := NoMethod(*s)
8954	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8955}
8956
8957type OrdersAcknowledgeResponse struct {
8958	// ExecutionStatus: The status of the execution. Acceptable values are:
8959	// - "duplicate" - "executed"
8960	ExecutionStatus string `json:"executionStatus,omitempty"`
8961
8962	// Kind: Identifies what kind of resource this is. Value: the fixed
8963	// string "content#ordersAcknowledgeResponse".
8964	Kind string `json:"kind,omitempty"`
8965
8966	// ServerResponse contains the HTTP response code and headers from the
8967	// server.
8968	googleapi.ServerResponse `json:"-"`
8969
8970	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8971	// unconditionally include in API requests. By default, fields with
8972	// empty or default values are omitted from API requests. However, any
8973	// non-pointer, non-interface field appearing in ForceSendFields will be
8974	// sent to the server regardless of whether the field is empty or not.
8975	// This may be used to include empty fields in Patch requests.
8976	ForceSendFields []string `json:"-"`
8977
8978	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8979	// include in API requests with the JSON null value. By default, fields
8980	// with empty values are omitted from API requests. However, any field
8981	// with an empty value appearing in NullFields will be sent to the
8982	// server as null. It is an error if a field in this list has a
8983	// non-empty value. This may be used to include null fields in Patch
8984	// requests.
8985	NullFields []string `json:"-"`
8986}
8987
8988func (s *OrdersAcknowledgeResponse) MarshalJSON() ([]byte, error) {
8989	type NoMethod OrdersAcknowledgeResponse
8990	raw := NoMethod(*s)
8991	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8992}
8993
8994type OrdersAdvanceTestOrderResponse struct {
8995	// Kind: Identifies what kind of resource this is. Value: the fixed
8996	// string "content#ordersAdvanceTestOrderResponse".
8997	Kind string `json:"kind,omitempty"`
8998
8999	// ServerResponse contains the HTTP response code and headers from the
9000	// server.
9001	googleapi.ServerResponse `json:"-"`
9002
9003	// ForceSendFields is a list of field names (e.g. "Kind") to
9004	// unconditionally include in API requests. By default, fields with
9005	// empty or default values are omitted from API requests. However, any
9006	// non-pointer, non-interface field appearing in ForceSendFields will be
9007	// sent to the server regardless of whether the field is empty or not.
9008	// This may be used to include empty fields in Patch requests.
9009	ForceSendFields []string `json:"-"`
9010
9011	// NullFields is a list of field names (e.g. "Kind") to include in API
9012	// requests with the JSON null value. By default, fields with empty
9013	// values are omitted from API requests. However, any field with an
9014	// empty value appearing in NullFields will be sent to the server as
9015	// null. It is an error if a field in this list has a non-empty value.
9016	// This may be used to include null fields in Patch requests.
9017	NullFields []string `json:"-"`
9018}
9019
9020func (s *OrdersAdvanceTestOrderResponse) MarshalJSON() ([]byte, error) {
9021	type NoMethod OrdersAdvanceTestOrderResponse
9022	raw := NoMethod(*s)
9023	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9024}
9025
9026type OrdersCancelLineItemRequest struct {
9027	// LineItemId: The ID of the line item to cancel. Either lineItemId or
9028	// productId is required.
9029	LineItemId string `json:"lineItemId,omitempty"`
9030
9031	// OperationId: The ID of the operation. Unique across all operations
9032	// for a given order.
9033	OperationId string `json:"operationId,omitempty"`
9034
9035	// ProductId: The ID of the product to cancel. This is the REST ID used
9036	// in the products service. Either lineItemId or productId is required.
9037	ProductId string `json:"productId,omitempty"`
9038
9039	// Quantity: The quantity to cancel.
9040	Quantity int64 `json:"quantity,omitempty"`
9041
9042	// Reason: The reason for the cancellation. Acceptable values are: -
9043	// "customerInitiatedCancel" - "invalidCoupon" -
9044	// "malformedShippingAddress" - "noInventory" - "other" -
9045	// "priceError" - "shippingPriceError" - "taxError" -
9046	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
9047	// "failedToCaptureFunds"
9048	Reason string `json:"reason,omitempty"`
9049
9050	// ReasonText: The explanation of the reason.
9051	ReasonText string `json:"reasonText,omitempty"`
9052
9053	// ForceSendFields is a list of field names (e.g. "LineItemId") to
9054	// unconditionally include in API requests. By default, fields with
9055	// empty or default values are omitted from API requests. However, any
9056	// non-pointer, non-interface field appearing in ForceSendFields will be
9057	// sent to the server regardless of whether the field is empty or not.
9058	// This may be used to include empty fields in Patch requests.
9059	ForceSendFields []string `json:"-"`
9060
9061	// NullFields is a list of field names (e.g. "LineItemId") to include in
9062	// API requests with the JSON null value. By default, fields with empty
9063	// values are omitted from API requests. However, any field with an
9064	// empty value appearing in NullFields will be sent to the server as
9065	// null. It is an error if a field in this list has a non-empty value.
9066	// This may be used to include null fields in Patch requests.
9067	NullFields []string `json:"-"`
9068}
9069
9070func (s *OrdersCancelLineItemRequest) MarshalJSON() ([]byte, error) {
9071	type NoMethod OrdersCancelLineItemRequest
9072	raw := NoMethod(*s)
9073	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9074}
9075
9076type OrdersCancelLineItemResponse struct {
9077	// ExecutionStatus: The status of the execution. Acceptable values are:
9078	// - "duplicate" - "executed"
9079	ExecutionStatus string `json:"executionStatus,omitempty"`
9080
9081	// Kind: Identifies what kind of resource this is. Value: the fixed
9082	// string "content#ordersCancelLineItemResponse".
9083	Kind string `json:"kind,omitempty"`
9084
9085	// ServerResponse contains the HTTP response code and headers from the
9086	// server.
9087	googleapi.ServerResponse `json:"-"`
9088
9089	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
9090	// unconditionally include in API requests. By default, fields with
9091	// empty or default values are omitted from API requests. However, any
9092	// non-pointer, non-interface field appearing in ForceSendFields will be
9093	// sent to the server regardless of whether the field is empty or not.
9094	// This may be used to include empty fields in Patch requests.
9095	ForceSendFields []string `json:"-"`
9096
9097	// NullFields is a list of field names (e.g. "ExecutionStatus") to
9098	// include in API requests with the JSON null value. By default, fields
9099	// with empty values are omitted from API requests. However, any field
9100	// with an empty value appearing in NullFields will be sent to the
9101	// server as null. It is an error if a field in this list has a
9102	// non-empty value. This may be used to include null fields in Patch
9103	// requests.
9104	NullFields []string `json:"-"`
9105}
9106
9107func (s *OrdersCancelLineItemResponse) MarshalJSON() ([]byte, error) {
9108	type NoMethod OrdersCancelLineItemResponse
9109	raw := NoMethod(*s)
9110	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9111}
9112
9113type OrdersCancelRequest struct {
9114	// OperationId: The ID of the operation. Unique across all operations
9115	// for a given order.
9116	OperationId string `json:"operationId,omitempty"`
9117
9118	// Reason: The reason for the cancellation. Acceptable values are: -
9119	// "customerInitiatedCancel" - "invalidCoupon" -
9120	// "malformedShippingAddress" - "noInventory" - "other" -
9121	// "priceError" - "shippingPriceError" - "taxError" -
9122	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
9123	// "failedToCaptureFunds"
9124	Reason string `json:"reason,omitempty"`
9125
9126	// ReasonText: The explanation of the reason.
9127	ReasonText string `json:"reasonText,omitempty"`
9128
9129	// ForceSendFields is a list of field names (e.g. "OperationId") to
9130	// unconditionally include in API requests. By default, fields with
9131	// empty or default values are omitted from API requests. However, any
9132	// non-pointer, non-interface field appearing in ForceSendFields will be
9133	// sent to the server regardless of whether the field is empty or not.
9134	// This may be used to include empty fields in Patch requests.
9135	ForceSendFields []string `json:"-"`
9136
9137	// NullFields is a list of field names (e.g. "OperationId") to include
9138	// in API requests with the JSON null value. By default, fields with
9139	// empty values are omitted from API requests. However, any field with
9140	// an empty value appearing in NullFields will be sent to the server as
9141	// null. It is an error if a field in this list has a non-empty value.
9142	// This may be used to include null fields in Patch requests.
9143	NullFields []string `json:"-"`
9144}
9145
9146func (s *OrdersCancelRequest) MarshalJSON() ([]byte, error) {
9147	type NoMethod OrdersCancelRequest
9148	raw := NoMethod(*s)
9149	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9150}
9151
9152type OrdersCancelResponse struct {
9153	// ExecutionStatus: The status of the execution. Acceptable values are:
9154	// - "duplicate" - "executed"
9155	ExecutionStatus string `json:"executionStatus,omitempty"`
9156
9157	// Kind: Identifies what kind of resource this is. Value: the fixed
9158	// string "content#ordersCancelResponse".
9159	Kind string `json:"kind,omitempty"`
9160
9161	// ServerResponse contains the HTTP response code and headers from the
9162	// server.
9163	googleapi.ServerResponse `json:"-"`
9164
9165	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
9166	// unconditionally include in API requests. By default, fields with
9167	// empty or default values are omitted from API requests. However, any
9168	// non-pointer, non-interface field appearing in ForceSendFields will be
9169	// sent to the server regardless of whether the field is empty or not.
9170	// This may be used to include empty fields in Patch requests.
9171	ForceSendFields []string `json:"-"`
9172
9173	// NullFields is a list of field names (e.g. "ExecutionStatus") to
9174	// include in API requests with the JSON null value. By default, fields
9175	// with empty values are omitted from API requests. However, any field
9176	// with an empty value appearing in NullFields will be sent to the
9177	// server as null. It is an error if a field in this list has a
9178	// non-empty value. This may be used to include null fields in Patch
9179	// requests.
9180	NullFields []string `json:"-"`
9181}
9182
9183func (s *OrdersCancelResponse) MarshalJSON() ([]byte, error) {
9184	type NoMethod OrdersCancelResponse
9185	raw := NoMethod(*s)
9186	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9187}
9188
9189type OrdersCancelTestOrderByCustomerRequest struct {
9190	// Reason: The reason for the cancellation. Acceptable values are: -
9191	// "changedMind" - "orderedWrongItem" - "other"
9192	Reason string `json:"reason,omitempty"`
9193
9194	// ForceSendFields is a list of field names (e.g. "Reason") to
9195	// unconditionally include in API requests. By default, fields with
9196	// empty or default values are omitted from API requests. However, any
9197	// non-pointer, non-interface field appearing in ForceSendFields will be
9198	// sent to the server regardless of whether the field is empty or not.
9199	// This may be used to include empty fields in Patch requests.
9200	ForceSendFields []string `json:"-"`
9201
9202	// NullFields is a list of field names (e.g. "Reason") to include in API
9203	// requests with the JSON null value. By default, fields with empty
9204	// values are omitted from API requests. However, any field with an
9205	// empty value appearing in NullFields will be sent to the server as
9206	// null. It is an error if a field in this list has a non-empty value.
9207	// This may be used to include null fields in Patch requests.
9208	NullFields []string `json:"-"`
9209}
9210
9211func (s *OrdersCancelTestOrderByCustomerRequest) MarshalJSON() ([]byte, error) {
9212	type NoMethod OrdersCancelTestOrderByCustomerRequest
9213	raw := NoMethod(*s)
9214	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9215}
9216
9217type OrdersCancelTestOrderByCustomerResponse struct {
9218	// Kind: Identifies what kind of resource this is. Value: the fixed
9219	// string "content#ordersCancelTestOrderByCustomerResponse".
9220	Kind string `json:"kind,omitempty"`
9221
9222	// ServerResponse contains the HTTP response code and headers from the
9223	// server.
9224	googleapi.ServerResponse `json:"-"`
9225
9226	// ForceSendFields is a list of field names (e.g. "Kind") to
9227	// unconditionally include in API requests. By default, fields with
9228	// empty or default values are omitted from API requests. However, any
9229	// non-pointer, non-interface field appearing in ForceSendFields will be
9230	// sent to the server regardless of whether the field is empty or not.
9231	// This may be used to include empty fields in Patch requests.
9232	ForceSendFields []string `json:"-"`
9233
9234	// NullFields is a list of field names (e.g. "Kind") to include in API
9235	// requests with the JSON null value. By default, fields with empty
9236	// values are omitted from API requests. However, any field with an
9237	// empty value appearing in NullFields will be sent to the server as
9238	// null. It is an error if a field in this list has a non-empty value.
9239	// This may be used to include null fields in Patch requests.
9240	NullFields []string `json:"-"`
9241}
9242
9243func (s *OrdersCancelTestOrderByCustomerResponse) MarshalJSON() ([]byte, error) {
9244	type NoMethod OrdersCancelTestOrderByCustomerResponse
9245	raw := NoMethod(*s)
9246	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9247}
9248
9249type OrdersCreateTestOrderRequest struct {
9250	// Country: The CLDR territory code of the country of the test order to
9251	// create. Affects the currency and addresses of orders created via
9252	// `template_name`, or the addresses of orders created via `test_order`.
9253	// Acceptable values are: - "US" - "FR" Defaults to `US`.
9254	Country string `json:"country,omitempty"`
9255
9256	// TemplateName: The test order template to use. Specify as an
9257	// alternative to `testOrder` as a shortcut for retrieving a template
9258	// and then creating an order using that template. Acceptable values
9259	// are: - "template1" - "template1a" - "template1b" -
9260	// "template2" - "template3"
9261	TemplateName string `json:"templateName,omitempty"`
9262
9263	// TestOrder: The test order to create.
9264	TestOrder *TestOrder `json:"testOrder,omitempty"`
9265
9266	// ForceSendFields is a list of field names (e.g. "Country") to
9267	// unconditionally include in API requests. By default, fields with
9268	// empty or default values are omitted from API requests. However, any
9269	// non-pointer, non-interface field appearing in ForceSendFields will be
9270	// sent to the server regardless of whether the field is empty or not.
9271	// This may be used to include empty fields in Patch requests.
9272	ForceSendFields []string `json:"-"`
9273
9274	// NullFields is a list of field names (e.g. "Country") to include in
9275	// API requests with the JSON null value. By default, fields with empty
9276	// values are omitted from API requests. However, any field with an
9277	// empty value appearing in NullFields will be sent to the server as
9278	// null. It is an error if a field in this list has a non-empty value.
9279	// This may be used to include null fields in Patch requests.
9280	NullFields []string `json:"-"`
9281}
9282
9283func (s *OrdersCreateTestOrderRequest) MarshalJSON() ([]byte, error) {
9284	type NoMethod OrdersCreateTestOrderRequest
9285	raw := NoMethod(*s)
9286	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9287}
9288
9289type OrdersCreateTestOrderResponse struct {
9290	// Kind: Identifies what kind of resource this is. Value: the fixed
9291	// string "content#ordersCreateTestOrderResponse".
9292	Kind string `json:"kind,omitempty"`
9293
9294	// OrderId: The ID of the newly created test order.
9295	OrderId string `json:"orderId,omitempty"`
9296
9297	// ServerResponse contains the HTTP response code and headers from the
9298	// server.
9299	googleapi.ServerResponse `json:"-"`
9300
9301	// ForceSendFields is a list of field names (e.g. "Kind") to
9302	// unconditionally include in API requests. By default, fields with
9303	// empty or default values are omitted from API requests. However, any
9304	// non-pointer, non-interface field appearing in ForceSendFields will be
9305	// sent to the server regardless of whether the field is empty or not.
9306	// This may be used to include empty fields in Patch requests.
9307	ForceSendFields []string `json:"-"`
9308
9309	// NullFields is a list of field names (e.g. "Kind") to include in API
9310	// requests with the JSON null value. By default, fields with empty
9311	// values are omitted from API requests. However, any field with an
9312	// empty value appearing in NullFields will be sent to the server as
9313	// null. It is an error if a field in this list has a non-empty value.
9314	// This may be used to include null fields in Patch requests.
9315	NullFields []string `json:"-"`
9316}
9317
9318func (s *OrdersCreateTestOrderResponse) MarshalJSON() ([]byte, error) {
9319	type NoMethod OrdersCreateTestOrderResponse
9320	raw := NoMethod(*s)
9321	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9322}
9323
9324type OrdersCreateTestReturnRequest struct {
9325	// Items: Returned items.
9326	Items []*OrdersCustomBatchRequestEntryCreateTestReturnReturnItem `json:"items,omitempty"`
9327
9328	// ForceSendFields is a list of field names (e.g. "Items") to
9329	// unconditionally include in API requests. By default, fields with
9330	// empty or default values are omitted from API requests. However, any
9331	// non-pointer, non-interface field appearing in ForceSendFields will be
9332	// sent to the server regardless of whether the field is empty or not.
9333	// This may be used to include empty fields in Patch requests.
9334	ForceSendFields []string `json:"-"`
9335
9336	// NullFields is a list of field names (e.g. "Items") to include in API
9337	// requests with the JSON null value. By default, fields with empty
9338	// values are omitted from API requests. However, any field with an
9339	// empty value appearing in NullFields will be sent to the server as
9340	// null. It is an error if a field in this list has a non-empty value.
9341	// This may be used to include null fields in Patch requests.
9342	NullFields []string `json:"-"`
9343}
9344
9345func (s *OrdersCreateTestReturnRequest) MarshalJSON() ([]byte, error) {
9346	type NoMethod OrdersCreateTestReturnRequest
9347	raw := NoMethod(*s)
9348	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9349}
9350
9351type OrdersCreateTestReturnResponse struct {
9352	// Kind: Identifies what kind of resource this is. Value: the fixed
9353	// string "content#ordersCreateTestReturnResponse".
9354	Kind string `json:"kind,omitempty"`
9355
9356	// ReturnId: The ID of the newly created test order return.
9357	ReturnId string `json:"returnId,omitempty"`
9358
9359	// ServerResponse contains the HTTP response code and headers from the
9360	// server.
9361	googleapi.ServerResponse `json:"-"`
9362
9363	// ForceSendFields is a list of field names (e.g. "Kind") to
9364	// unconditionally include in API requests. By default, fields with
9365	// empty or default values are omitted from API requests. However, any
9366	// non-pointer, non-interface field appearing in ForceSendFields will be
9367	// sent to the server regardless of whether the field is empty or not.
9368	// This may be used to include empty fields in Patch requests.
9369	ForceSendFields []string `json:"-"`
9370
9371	// NullFields is a list of field names (e.g. "Kind") to include in API
9372	// requests with the JSON null value. By default, fields with empty
9373	// values are omitted from API requests. However, any field with an
9374	// empty value appearing in NullFields will be sent to the server as
9375	// null. It is an error if a field in this list has a non-empty value.
9376	// This may be used to include null fields in Patch requests.
9377	NullFields []string `json:"-"`
9378}
9379
9380func (s *OrdersCreateTestReturnResponse) MarshalJSON() ([]byte, error) {
9381	type NoMethod OrdersCreateTestReturnResponse
9382	raw := NoMethod(*s)
9383	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9384}
9385
9386type OrdersCustomBatchRequestEntryCreateTestReturnReturnItem struct {
9387	// LineItemId: The ID of the line item to return.
9388	LineItemId string `json:"lineItemId,omitempty"`
9389
9390	// Quantity: Quantity that is returned.
9391	Quantity int64 `json:"quantity,omitempty"`
9392
9393	// ForceSendFields is a list of field names (e.g. "LineItemId") to
9394	// unconditionally include in API requests. By default, fields with
9395	// empty or default values are omitted from API requests. However, any
9396	// non-pointer, non-interface field appearing in ForceSendFields will be
9397	// sent to the server regardless of whether the field is empty or not.
9398	// This may be used to include empty fields in Patch requests.
9399	ForceSendFields []string `json:"-"`
9400
9401	// NullFields is a list of field names (e.g. "LineItemId") to include in
9402	// API requests with the JSON null value. By default, fields with empty
9403	// values are omitted from API requests. However, any field with an
9404	// empty value appearing in NullFields will be sent to the server as
9405	// null. It is an error if a field in this list has a non-empty value.
9406	// This may be used to include null fields in Patch requests.
9407	NullFields []string `json:"-"`
9408}
9409
9410func (s *OrdersCustomBatchRequestEntryCreateTestReturnReturnItem) MarshalJSON() ([]byte, error) {
9411	type NoMethod OrdersCustomBatchRequestEntryCreateTestReturnReturnItem
9412	raw := NoMethod(*s)
9413	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9414}
9415
9416type OrdersCustomBatchRequestEntryRefundItemItem struct {
9417	// Amount: The total amount that is refunded. (e.g. refunding $5 each
9418	// for 2 products should be done by setting quantity to 2 and amount to
9419	// 10$) In case of multiple refunds, this should be the amount you
9420	// currently want to refund to the customer.
9421	Amount *MonetaryAmount `json:"amount,omitempty"`
9422
9423	// FullRefund: If true, the full item will be refunded. If this is true,
9424	// amount should not be provided and will be ignored.
9425	FullRefund bool `json:"fullRefund,omitempty"`
9426
9427	// LineItemId: The ID of the line item. Either lineItemId or productId
9428	// is required.
9429	LineItemId string `json:"lineItemId,omitempty"`
9430
9431	// ProductId: The ID of the product. This is the REST ID used in the
9432	// products service. Either lineItemId or productId is required.
9433	ProductId string `json:"productId,omitempty"`
9434
9435	// Quantity: The number of products that are refunded.
9436	Quantity int64 `json:"quantity,omitempty"`
9437
9438	// ForceSendFields is a list of field names (e.g. "Amount") to
9439	// unconditionally include in API requests. By default, fields with
9440	// empty or default values are omitted from API requests. However, any
9441	// non-pointer, non-interface field appearing in ForceSendFields will be
9442	// sent to the server regardless of whether the field is empty or not.
9443	// This may be used to include empty fields in Patch requests.
9444	ForceSendFields []string `json:"-"`
9445
9446	// NullFields is a list of field names (e.g. "Amount") to include in API
9447	// requests with the JSON null value. By default, fields with empty
9448	// values are omitted from API requests. However, any field with an
9449	// empty value appearing in NullFields will be sent to the server as
9450	// null. It is an error if a field in this list has a non-empty value.
9451	// This may be used to include null fields in Patch requests.
9452	NullFields []string `json:"-"`
9453}
9454
9455func (s *OrdersCustomBatchRequestEntryRefundItemItem) MarshalJSON() ([]byte, error) {
9456	type NoMethod OrdersCustomBatchRequestEntryRefundItemItem
9457	raw := NoMethod(*s)
9458	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9459}
9460
9461type OrdersCustomBatchRequestEntryRefundItemShipping struct {
9462	// Amount: The amount that is refunded. If this is not the first refund
9463	// for the shipment, this should be the newly refunded amount.
9464	Amount *Price `json:"amount,omitempty"`
9465
9466	// FullRefund: If set to true, all shipping costs for the order will be
9467	// refunded. If this is true, amount should not be provided and will be
9468	// ignored. If set to false, submit the amount of the partial shipping
9469	// refund, excluding the shipping tax. The shipping tax is calculated
9470	// and handled on Google's side.
9471	FullRefund bool `json:"fullRefund,omitempty"`
9472
9473	// ForceSendFields is a list of field names (e.g. "Amount") to
9474	// unconditionally include in API requests. By default, fields with
9475	// empty or default values are omitted from API requests. However, any
9476	// non-pointer, non-interface field appearing in ForceSendFields will be
9477	// sent to the server regardless of whether the field is empty or not.
9478	// This may be used to include empty fields in Patch requests.
9479	ForceSendFields []string `json:"-"`
9480
9481	// NullFields is a list of field names (e.g. "Amount") to include in API
9482	// requests with the JSON null value. By default, fields with empty
9483	// values are omitted from API requests. However, any field with an
9484	// empty value appearing in NullFields will be sent to the server as
9485	// null. It is an error if a field in this list has a non-empty value.
9486	// This may be used to include null fields in Patch requests.
9487	NullFields []string `json:"-"`
9488}
9489
9490func (s *OrdersCustomBatchRequestEntryRefundItemShipping) MarshalJSON() ([]byte, error) {
9491	type NoMethod OrdersCustomBatchRequestEntryRefundItemShipping
9492	raw := NoMethod(*s)
9493	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9494}
9495
9496type OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo struct {
9497	// Carrier: The carrier handling the shipment. See `shipments[].carrier`
9498	// in the Orders resource representation for a list of acceptable
9499	// values.
9500	Carrier string `json:"carrier,omitempty"`
9501
9502	// ShipmentId: Required. The ID of the shipment. This is assigned by the
9503	// merchant and is unique to each shipment.
9504	ShipmentId string `json:"shipmentId,omitempty"`
9505
9506	// TrackingId: The tracking ID for the shipment.
9507	TrackingId string `json:"trackingId,omitempty"`
9508
9509	// ForceSendFields is a list of field names (e.g. "Carrier") to
9510	// unconditionally include in API requests. By default, fields with
9511	// empty or default values are omitted from API requests. However, any
9512	// non-pointer, non-interface field appearing in ForceSendFields will be
9513	// sent to the server regardless of whether the field is empty or not.
9514	// This may be used to include empty fields in Patch requests.
9515	ForceSendFields []string `json:"-"`
9516
9517	// NullFields is a list of field names (e.g. "Carrier") to include in
9518	// API requests with the JSON null value. By default, fields with empty
9519	// values are omitted from API requests. However, any field with an
9520	// empty value appearing in NullFields will be sent to the server as
9521	// null. It is an error if a field in this list has a non-empty value.
9522	// This may be used to include null fields in Patch requests.
9523	NullFields []string `json:"-"`
9524}
9525
9526func (s *OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo) MarshalJSON() ([]byte, error) {
9527	type NoMethod OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo
9528	raw := NoMethod(*s)
9529	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9530}
9531
9532// OrdersCustomBatchRequestEntryUpdateShipmentScheduledDeliveryDetails:
9533// ScheduledDeliveryDetails used to update the scheduled delivery order.
9534type OrdersCustomBatchRequestEntryUpdateShipmentScheduledDeliveryDetails struct {
9535	// CarrierPhoneNumber: The phone number of the carrier fulfilling the
9536	// delivery. The phone number should be formatted as the international
9537	// notation in
9538	CarrierPhoneNumber string `json:"carrierPhoneNumber,omitempty"`
9539
9540	// ScheduledDate: The date a shipment is scheduled for delivery, in ISO
9541	// 8601 format.
9542	ScheduledDate string `json:"scheduledDate,omitempty"`
9543
9544	// ForceSendFields is a list of field names (e.g. "CarrierPhoneNumber")
9545	// to unconditionally include in API requests. By default, fields with
9546	// empty or default values are omitted from API requests. However, any
9547	// non-pointer, non-interface field appearing in ForceSendFields will be
9548	// sent to the server regardless of whether the field is empty or not.
9549	// This may be used to include empty fields in Patch requests.
9550	ForceSendFields []string `json:"-"`
9551
9552	// NullFields is a list of field names (e.g. "CarrierPhoneNumber") to
9553	// include in API requests with the JSON null value. By default, fields
9554	// with empty values are omitted from API requests. However, any field
9555	// with an empty value appearing in NullFields will be sent to the
9556	// server as null. It is an error if a field in this list has a
9557	// non-empty value. This may be used to include null fields in Patch
9558	// requests.
9559	NullFields []string `json:"-"`
9560}
9561
9562func (s *OrdersCustomBatchRequestEntryUpdateShipmentScheduledDeliveryDetails) MarshalJSON() ([]byte, error) {
9563	type NoMethod OrdersCustomBatchRequestEntryUpdateShipmentScheduledDeliveryDetails
9564	raw := NoMethod(*s)
9565	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9566}
9567
9568type OrdersGetByMerchantOrderIdResponse struct {
9569	// Kind: Identifies what kind of resource this is. Value: the fixed
9570	// string "content#ordersGetByMerchantOrderIdResponse".
9571	Kind string `json:"kind,omitempty"`
9572
9573	// Order: The requested order.
9574	Order *Order `json:"order,omitempty"`
9575
9576	// ServerResponse contains the HTTP response code and headers from the
9577	// server.
9578	googleapi.ServerResponse `json:"-"`
9579
9580	// ForceSendFields is a list of field names (e.g. "Kind") to
9581	// unconditionally include in API requests. By default, fields with
9582	// empty or default values are omitted from API requests. However, any
9583	// non-pointer, non-interface field appearing in ForceSendFields will be
9584	// sent to the server regardless of whether the field is empty or not.
9585	// This may be used to include empty fields in Patch requests.
9586	ForceSendFields []string `json:"-"`
9587
9588	// NullFields is a list of field names (e.g. "Kind") to include in API
9589	// requests with the JSON null value. By default, fields with empty
9590	// values are omitted from API requests. However, any field with an
9591	// empty value appearing in NullFields will be sent to the server as
9592	// null. It is an error if a field in this list has a non-empty value.
9593	// This may be used to include null fields in Patch requests.
9594	NullFields []string `json:"-"`
9595}
9596
9597func (s *OrdersGetByMerchantOrderIdResponse) MarshalJSON() ([]byte, error) {
9598	type NoMethod OrdersGetByMerchantOrderIdResponse
9599	raw := NoMethod(*s)
9600	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9601}
9602
9603type OrdersGetTestOrderTemplateResponse struct {
9604	// Kind: Identifies what kind of resource this is. Value: the fixed
9605	// string "content#ordersGetTestOrderTemplateResponse".
9606	Kind string `json:"kind,omitempty"`
9607
9608	// Template: The requested test order template.
9609	Template *TestOrder `json:"template,omitempty"`
9610
9611	// ServerResponse contains the HTTP response code and headers from the
9612	// server.
9613	googleapi.ServerResponse `json:"-"`
9614
9615	// ForceSendFields is a list of field names (e.g. "Kind") to
9616	// unconditionally include in API requests. By default, fields with
9617	// empty or default values are omitted from API requests. However, any
9618	// non-pointer, non-interface field appearing in ForceSendFields will be
9619	// sent to the server regardless of whether the field is empty or not.
9620	// This may be used to include empty fields in Patch requests.
9621	ForceSendFields []string `json:"-"`
9622
9623	// NullFields is a list of field names (e.g. "Kind") to include in API
9624	// requests with the JSON null value. By default, fields with empty
9625	// values are omitted from API requests. However, any field with an
9626	// empty value appearing in NullFields will be sent to the server as
9627	// null. It is an error if a field in this list has a non-empty value.
9628	// This may be used to include null fields in Patch requests.
9629	NullFields []string `json:"-"`
9630}
9631
9632func (s *OrdersGetTestOrderTemplateResponse) MarshalJSON() ([]byte, error) {
9633	type NoMethod OrdersGetTestOrderTemplateResponse
9634	raw := NoMethod(*s)
9635	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9636}
9637
9638type OrdersInStoreRefundLineItemRequest struct {
9639	// LineItemId: The ID of the line item to return. Either lineItemId or
9640	// productId is required.
9641	LineItemId string `json:"lineItemId,omitempty"`
9642
9643	// OperationId: The ID of the operation. Unique across all operations
9644	// for a given order.
9645	OperationId string `json:"operationId,omitempty"`
9646
9647	// PriceAmount: The amount to be refunded. This may be pre-tax or
9648	// post-tax depending on the location of the order. Required.
9649	PriceAmount *Price `json:"priceAmount,omitempty"`
9650
9651	// ProductId: The ID of the product to return. This is the REST ID used
9652	// in the products service. Either lineItemId or productId is required.
9653	ProductId string `json:"productId,omitempty"`
9654
9655	// Quantity: The quantity to return and refund.
9656	Quantity int64 `json:"quantity,omitempty"`
9657
9658	// Reason: The reason for the return. Acceptable values are: -
9659	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
9660	// - "deliveredTooLate" - "expiredItem" - "invalidCoupon" -
9661	// "malformedShippingAddress" - "other" - "productArrivedDamaged"
9662	// - "productNotAsDescribed" - "qualityNotAsExpected" -
9663	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
9664	// "wrongProductShipped"
9665	Reason string `json:"reason,omitempty"`
9666
9667	// ReasonText: The explanation of the reason.
9668	ReasonText string `json:"reasonText,omitempty"`
9669
9670	// TaxAmount: The amount of tax to be refunded. Required.
9671	TaxAmount *Price `json:"taxAmount,omitempty"`
9672
9673	// ForceSendFields is a list of field names (e.g. "LineItemId") to
9674	// unconditionally include in API requests. By default, fields with
9675	// empty or default values are omitted from API requests. However, any
9676	// non-pointer, non-interface field appearing in ForceSendFields will be
9677	// sent to the server regardless of whether the field is empty or not.
9678	// This may be used to include empty fields in Patch requests.
9679	ForceSendFields []string `json:"-"`
9680
9681	// NullFields is a list of field names (e.g. "LineItemId") to include in
9682	// API requests with the JSON null value. By default, fields with empty
9683	// values are omitted from API requests. However, any field with an
9684	// empty value appearing in NullFields will be sent to the server as
9685	// null. It is an error if a field in this list has a non-empty value.
9686	// This may be used to include null fields in Patch requests.
9687	NullFields []string `json:"-"`
9688}
9689
9690func (s *OrdersInStoreRefundLineItemRequest) MarshalJSON() ([]byte, error) {
9691	type NoMethod OrdersInStoreRefundLineItemRequest
9692	raw := NoMethod(*s)
9693	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9694}
9695
9696type OrdersInStoreRefundLineItemResponse struct {
9697	// ExecutionStatus: The status of the execution. Acceptable values are:
9698	// - "duplicate" - "executed"
9699	ExecutionStatus string `json:"executionStatus,omitempty"`
9700
9701	// Kind: Identifies what kind of resource this is. Value: the fixed
9702	// string "content#ordersInStoreRefundLineItemResponse".
9703	Kind string `json:"kind,omitempty"`
9704
9705	// ServerResponse contains the HTTP response code and headers from the
9706	// server.
9707	googleapi.ServerResponse `json:"-"`
9708
9709	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
9710	// unconditionally include in API requests. By default, fields with
9711	// empty or default values are omitted from API requests. However, any
9712	// non-pointer, non-interface field appearing in ForceSendFields will be
9713	// sent to the server regardless of whether the field is empty or not.
9714	// This may be used to include empty fields in Patch requests.
9715	ForceSendFields []string `json:"-"`
9716
9717	// NullFields is a list of field names (e.g. "ExecutionStatus") to
9718	// include in API requests with the JSON null value. By default, fields
9719	// with empty values are omitted from API requests. However, any field
9720	// with an empty value appearing in NullFields will be sent to the
9721	// server as null. It is an error if a field in this list has a
9722	// non-empty value. This may be used to include null fields in Patch
9723	// requests.
9724	NullFields []string `json:"-"`
9725}
9726
9727func (s *OrdersInStoreRefundLineItemResponse) MarshalJSON() ([]byte, error) {
9728	type NoMethod OrdersInStoreRefundLineItemResponse
9729	raw := NoMethod(*s)
9730	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9731}
9732
9733type OrdersListResponse struct {
9734	// Kind: Identifies what kind of resource this is. Value: the fixed
9735	// string "content#ordersListResponse".
9736	Kind string `json:"kind,omitempty"`
9737
9738	// NextPageToken: The token for the retrieval of the next page of
9739	// orders.
9740	NextPageToken string `json:"nextPageToken,omitempty"`
9741
9742	Resources []*Order `json:"resources,omitempty"`
9743
9744	// ServerResponse contains the HTTP response code and headers from the
9745	// server.
9746	googleapi.ServerResponse `json:"-"`
9747
9748	// ForceSendFields is a list of field names (e.g. "Kind") to
9749	// unconditionally include in API requests. By default, fields with
9750	// empty or default values are omitted from API requests. However, any
9751	// non-pointer, non-interface field appearing in ForceSendFields will be
9752	// sent to the server regardless of whether the field is empty or not.
9753	// This may be used to include empty fields in Patch requests.
9754	ForceSendFields []string `json:"-"`
9755
9756	// NullFields is a list of field names (e.g. "Kind") to include in API
9757	// requests with the JSON null value. By default, fields with empty
9758	// values are omitted from API requests. However, any field with an
9759	// empty value appearing in NullFields will be sent to the server as
9760	// null. It is an error if a field in this list has a non-empty value.
9761	// This may be used to include null fields in Patch requests.
9762	NullFields []string `json:"-"`
9763}
9764
9765func (s *OrdersListResponse) MarshalJSON() ([]byte, error) {
9766	type NoMethod OrdersListResponse
9767	raw := NoMethod(*s)
9768	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9769}
9770
9771type OrdersRefundItemRequest struct {
9772	// Items: The items that are refunded. Either Item or Shipping must be
9773	// provided in the request.
9774	Items []*OrdersCustomBatchRequestEntryRefundItemItem `json:"items,omitempty"`
9775
9776	// OperationId: The ID of the operation. Unique across all operations
9777	// for a given order.
9778	OperationId string `json:"operationId,omitempty"`
9779
9780	// Reason: The reason for the refund. Acceptable values are: -
9781	// "shippingCostAdjustment" - "priceAdjustment" - "taxAdjustment"
9782	// - "feeAdjustment" - "courtesyAdjustment" - "adjustment" -
9783	// "customerCancelled" - "noInventory" - "productNotAsDescribed" -
9784	// "undeliverableShippingAddress" - "wrongProductShipped" -
9785	// "lateShipmentCredit" - "deliveredLateByCarrier" -
9786	// "productArrivedDamaged"
9787	Reason string `json:"reason,omitempty"`
9788
9789	// ReasonText: The explanation of the reason.
9790	ReasonText string `json:"reasonText,omitempty"`
9791
9792	// Shipping: The refund on shipping. Optional, but either Item or
9793	// Shipping must be provided in the request.
9794	Shipping *OrdersCustomBatchRequestEntryRefundItemShipping `json:"shipping,omitempty"`
9795
9796	// ForceSendFields is a list of field names (e.g. "Items") to
9797	// unconditionally include in API requests. By default, fields with
9798	// empty or default values are omitted from API requests. However, any
9799	// non-pointer, non-interface field appearing in ForceSendFields will be
9800	// sent to the server regardless of whether the field is empty or not.
9801	// This may be used to include empty fields in Patch requests.
9802	ForceSendFields []string `json:"-"`
9803
9804	// NullFields is a list of field names (e.g. "Items") to include in API
9805	// requests with the JSON null value. By default, fields with empty
9806	// values are omitted from API requests. However, any field with an
9807	// empty value appearing in NullFields will be sent to the server as
9808	// null. It is an error if a field in this list has a non-empty value.
9809	// This may be used to include null fields in Patch requests.
9810	NullFields []string `json:"-"`
9811}
9812
9813func (s *OrdersRefundItemRequest) MarshalJSON() ([]byte, error) {
9814	type NoMethod OrdersRefundItemRequest
9815	raw := NoMethod(*s)
9816	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9817}
9818
9819type OrdersRefundItemResponse struct {
9820	// ExecutionStatus: The status of the execution. Acceptable values are:
9821	// - "duplicate" - "executed"
9822	ExecutionStatus string `json:"executionStatus,omitempty"`
9823
9824	// Kind: Identifies what kind of resource this is. Value: the fixed
9825	// string "content#ordersRefundItemResponse".
9826	Kind string `json:"kind,omitempty"`
9827
9828	// ServerResponse contains the HTTP response code and headers from the
9829	// server.
9830	googleapi.ServerResponse `json:"-"`
9831
9832	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
9833	// unconditionally include in API requests. By default, fields with
9834	// empty or default values are omitted from API requests. However, any
9835	// non-pointer, non-interface field appearing in ForceSendFields will be
9836	// sent to the server regardless of whether the field is empty or not.
9837	// This may be used to include empty fields in Patch requests.
9838	ForceSendFields []string `json:"-"`
9839
9840	// NullFields is a list of field names (e.g. "ExecutionStatus") to
9841	// include in API requests with the JSON null value. By default, fields
9842	// with empty values are omitted from API requests. However, any field
9843	// with an empty value appearing in NullFields will be sent to the
9844	// server as null. It is an error if a field in this list has a
9845	// non-empty value. This may be used to include null fields in Patch
9846	// requests.
9847	NullFields []string `json:"-"`
9848}
9849
9850func (s *OrdersRefundItemResponse) MarshalJSON() ([]byte, error) {
9851	type NoMethod OrdersRefundItemResponse
9852	raw := NoMethod(*s)
9853	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9854}
9855
9856type OrdersRefundOrderRequest struct {
9857	// Amount: The amount that is refunded. If this is not the first refund
9858	// for the order, this should be the newly refunded amount.
9859	Amount *MonetaryAmount `json:"amount,omitempty"`
9860
9861	// FullRefund: If true, the full order will be refunded, including
9862	// shipping. If this is true, amount should not be provided and will be
9863	// ignored.
9864	FullRefund bool `json:"fullRefund,omitempty"`
9865
9866	// OperationId: The ID of the operation. Unique across all operations
9867	// for a given order.
9868	OperationId string `json:"operationId,omitempty"`
9869
9870	// Reason: The reason for the refund. Acceptable values are: -
9871	// "courtesyAdjustment" - "other"
9872	Reason string `json:"reason,omitempty"`
9873
9874	// ReasonText: The explanation of the reason.
9875	ReasonText string `json:"reasonText,omitempty"`
9876
9877	// ForceSendFields is a list of field names (e.g. "Amount") to
9878	// unconditionally include in API requests. By default, fields with
9879	// empty or default values are omitted from API requests. However, any
9880	// non-pointer, non-interface field appearing in ForceSendFields will be
9881	// sent to the server regardless of whether the field is empty or not.
9882	// This may be used to include empty fields in Patch requests.
9883	ForceSendFields []string `json:"-"`
9884
9885	// NullFields is a list of field names (e.g. "Amount") to include in API
9886	// requests with the JSON null value. By default, fields with empty
9887	// values are omitted from API requests. However, any field with an
9888	// empty value appearing in NullFields will be sent to the server as
9889	// null. It is an error if a field in this list has a non-empty value.
9890	// This may be used to include null fields in Patch requests.
9891	NullFields []string `json:"-"`
9892}
9893
9894func (s *OrdersRefundOrderRequest) MarshalJSON() ([]byte, error) {
9895	type NoMethod OrdersRefundOrderRequest
9896	raw := NoMethod(*s)
9897	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9898}
9899
9900type OrdersRefundOrderResponse struct {
9901	// ExecutionStatus: The status of the execution. Acceptable values are:
9902	// - "duplicate" - "executed"
9903	ExecutionStatus string `json:"executionStatus,omitempty"`
9904
9905	// Kind: Identifies what kind of resource this is. Value: the fixed
9906	// string "content#ordersRefundOrderResponse".
9907	Kind string `json:"kind,omitempty"`
9908
9909	// ServerResponse contains the HTTP response code and headers from the
9910	// server.
9911	googleapi.ServerResponse `json:"-"`
9912
9913	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
9914	// unconditionally include in API requests. By default, fields with
9915	// empty or default values are omitted from API requests. However, any
9916	// non-pointer, non-interface field appearing in ForceSendFields will be
9917	// sent to the server regardless of whether the field is empty or not.
9918	// This may be used to include empty fields in Patch requests.
9919	ForceSendFields []string `json:"-"`
9920
9921	// NullFields is a list of field names (e.g. "ExecutionStatus") to
9922	// include in API requests with the JSON null value. By default, fields
9923	// with empty values are omitted from API requests. However, any field
9924	// with an empty value appearing in NullFields will be sent to the
9925	// server as null. It is an error if a field in this list has a
9926	// non-empty value. This may be used to include null fields in Patch
9927	// requests.
9928	NullFields []string `json:"-"`
9929}
9930
9931func (s *OrdersRefundOrderResponse) MarshalJSON() ([]byte, error) {
9932	type NoMethod OrdersRefundOrderResponse
9933	raw := NoMethod(*s)
9934	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9935}
9936
9937type OrdersRejectReturnLineItemRequest struct {
9938	// LineItemId: The ID of the line item to return. Either lineItemId or
9939	// productId is required.
9940	LineItemId string `json:"lineItemId,omitempty"`
9941
9942	// OperationId: The ID of the operation. Unique across all operations
9943	// for a given order.
9944	OperationId string `json:"operationId,omitempty"`
9945
9946	// ProductId: The ID of the product to return. This is the REST ID used
9947	// in the products service. Either lineItemId or productId is required.
9948	ProductId string `json:"productId,omitempty"`
9949
9950	// Quantity: The quantity to return and refund.
9951	Quantity int64 `json:"quantity,omitempty"`
9952
9953	// Reason: The reason for the return. Acceptable values are: -
9954	// "damagedOrUsed" - "missingComponent" - "notEligible" -
9955	// "other" - "outOfReturnWindow"
9956	Reason string `json:"reason,omitempty"`
9957
9958	// ReasonText: The explanation of the reason.
9959	ReasonText string `json:"reasonText,omitempty"`
9960
9961	// ForceSendFields is a list of field names (e.g. "LineItemId") to
9962	// unconditionally include in API requests. By default, fields with
9963	// empty or default values are omitted from API requests. However, any
9964	// non-pointer, non-interface field appearing in ForceSendFields will be
9965	// sent to the server regardless of whether the field is empty or not.
9966	// This may be used to include empty fields in Patch requests.
9967	ForceSendFields []string `json:"-"`
9968
9969	// NullFields is a list of field names (e.g. "LineItemId") to include in
9970	// API requests with the JSON null value. By default, fields with empty
9971	// values are omitted from API requests. However, any field with an
9972	// empty value appearing in NullFields will be sent to the server as
9973	// null. It is an error if a field in this list has a non-empty value.
9974	// This may be used to include null fields in Patch requests.
9975	NullFields []string `json:"-"`
9976}
9977
9978func (s *OrdersRejectReturnLineItemRequest) MarshalJSON() ([]byte, error) {
9979	type NoMethod OrdersRejectReturnLineItemRequest
9980	raw := NoMethod(*s)
9981	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9982}
9983
9984type OrdersRejectReturnLineItemResponse struct {
9985	// ExecutionStatus: The status of the execution. Acceptable values are:
9986	// - "duplicate" - "executed"
9987	ExecutionStatus string `json:"executionStatus,omitempty"`
9988
9989	// Kind: Identifies what kind of resource this is. Value: the fixed
9990	// string "content#ordersRejectReturnLineItemResponse".
9991	Kind string `json:"kind,omitempty"`
9992
9993	// ServerResponse contains the HTTP response code and headers from the
9994	// server.
9995	googleapi.ServerResponse `json:"-"`
9996
9997	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
9998	// unconditionally include in API requests. By default, fields with
9999	// empty or default values are omitted from API requests. However, any
10000	// non-pointer, non-interface field appearing in ForceSendFields will be
10001	// sent to the server regardless of whether the field is empty or not.
10002	// This may be used to include empty fields in Patch requests.
10003	ForceSendFields []string `json:"-"`
10004
10005	// NullFields is a list of field names (e.g. "ExecutionStatus") to
10006	// include in API requests with the JSON null value. By default, fields
10007	// with empty values are omitted from API requests. However, any field
10008	// with an empty value appearing in NullFields will be sent to the
10009	// server as null. It is an error if a field in this list has a
10010	// non-empty value. This may be used to include null fields in Patch
10011	// requests.
10012	NullFields []string `json:"-"`
10013}
10014
10015func (s *OrdersRejectReturnLineItemResponse) MarshalJSON() ([]byte, error) {
10016	type NoMethod OrdersRejectReturnLineItemResponse
10017	raw := NoMethod(*s)
10018	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10019}
10020
10021type OrdersReturnRefundLineItemRequest struct {
10022	// LineItemId: The ID of the line item to return. Either lineItemId or
10023	// productId is required.
10024	LineItemId string `json:"lineItemId,omitempty"`
10025
10026	// OperationId: The ID of the operation. Unique across all operations
10027	// for a given order.
10028	OperationId string `json:"operationId,omitempty"`
10029
10030	// PriceAmount: The amount to be refunded. This may be pre-tax or
10031	// post-tax depending on the location of the order. If omitted,
10032	// refundless return is assumed.
10033	PriceAmount *Price `json:"priceAmount,omitempty"`
10034
10035	// ProductId: The ID of the product to return. This is the REST ID used
10036	// in the products service. Either lineItemId or productId is required.
10037	ProductId string `json:"productId,omitempty"`
10038
10039	// Quantity: The quantity to return and refund. Quantity is required.
10040	Quantity int64 `json:"quantity,omitempty"`
10041
10042	// Reason: The reason for the return. Acceptable values are: -
10043	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
10044	// - "deliveredTooLate" - "expiredItem" - "invalidCoupon" -
10045	// "malformedShippingAddress" - "other" - "productArrivedDamaged"
10046	// - "productNotAsDescribed" - "qualityNotAsExpected" -
10047	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
10048	// "wrongProductShipped"
10049	Reason string `json:"reason,omitempty"`
10050
10051	// ReasonText: The explanation of the reason.
10052	ReasonText string `json:"reasonText,omitempty"`
10053
10054	// TaxAmount: The amount of tax to be refunded. Optional, but if filled,
10055	// then priceAmount must be set. Calculated automatically if not
10056	// provided.
10057	TaxAmount *Price `json:"taxAmount,omitempty"`
10058
10059	// ForceSendFields is a list of field names (e.g. "LineItemId") to
10060	// unconditionally include in API requests. By default, fields with
10061	// empty or default values are omitted from API requests. However, any
10062	// non-pointer, non-interface field appearing in ForceSendFields will be
10063	// sent to the server regardless of whether the field is empty or not.
10064	// This may be used to include empty fields in Patch requests.
10065	ForceSendFields []string `json:"-"`
10066
10067	// NullFields is a list of field names (e.g. "LineItemId") to include in
10068	// API requests with the JSON null value. By default, fields with empty
10069	// values are omitted from API requests. However, any field with an
10070	// empty value appearing in NullFields will be sent to the server as
10071	// null. It is an error if a field in this list has a non-empty value.
10072	// This may be used to include null fields in Patch requests.
10073	NullFields []string `json:"-"`
10074}
10075
10076func (s *OrdersReturnRefundLineItemRequest) MarshalJSON() ([]byte, error) {
10077	type NoMethod OrdersReturnRefundLineItemRequest
10078	raw := NoMethod(*s)
10079	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10080}
10081
10082type OrdersReturnRefundLineItemResponse struct {
10083	// ExecutionStatus: The status of the execution. Acceptable values are:
10084	// - "duplicate" - "executed"
10085	ExecutionStatus string `json:"executionStatus,omitempty"`
10086
10087	// Kind: Identifies what kind of resource this is. Value: the fixed
10088	// string "content#ordersReturnRefundLineItemResponse".
10089	Kind string `json:"kind,omitempty"`
10090
10091	// ServerResponse contains the HTTP response code and headers from the
10092	// server.
10093	googleapi.ServerResponse `json:"-"`
10094
10095	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
10096	// unconditionally include in API requests. By default, fields with
10097	// empty or default values are omitted from API requests. However, any
10098	// non-pointer, non-interface field appearing in ForceSendFields will be
10099	// sent to the server regardless of whether the field is empty or not.
10100	// This may be used to include empty fields in Patch requests.
10101	ForceSendFields []string `json:"-"`
10102
10103	// NullFields is a list of field names (e.g. "ExecutionStatus") to
10104	// include in API requests with the JSON null value. By default, fields
10105	// with empty values are omitted from API requests. However, any field
10106	// with an empty value appearing in NullFields will be sent to the
10107	// server as null. It is an error if a field in this list has a
10108	// non-empty value. This may be used to include null fields in Patch
10109	// requests.
10110	NullFields []string `json:"-"`
10111}
10112
10113func (s *OrdersReturnRefundLineItemResponse) MarshalJSON() ([]byte, error) {
10114	type NoMethod OrdersReturnRefundLineItemResponse
10115	raw := NoMethod(*s)
10116	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10117}
10118
10119type OrdersSetLineItemMetadataRequest struct {
10120	Annotations []*OrderMerchantProvidedAnnotation `json:"annotations,omitempty"`
10121
10122	// LineItemId: The ID of the line item to set metadata. Either
10123	// lineItemId or productId is required.
10124	LineItemId string `json:"lineItemId,omitempty"`
10125
10126	// OperationId: The ID of the operation. Unique across all operations
10127	// for a given order.
10128	OperationId string `json:"operationId,omitempty"`
10129
10130	// ProductId: The ID of the product to set metadata. This is the REST ID
10131	// used in the products service. Either lineItemId or productId is
10132	// required.
10133	ProductId string `json:"productId,omitempty"`
10134
10135	// ForceSendFields is a list of field names (e.g. "Annotations") to
10136	// unconditionally include in API requests. By default, fields with
10137	// empty or default values are omitted from API requests. However, any
10138	// non-pointer, non-interface field appearing in ForceSendFields will be
10139	// sent to the server regardless of whether the field is empty or not.
10140	// This may be used to include empty fields in Patch requests.
10141	ForceSendFields []string `json:"-"`
10142
10143	// NullFields is a list of field names (e.g. "Annotations") to include
10144	// in API requests with the JSON null value. By default, fields with
10145	// empty values are omitted from API requests. However, any field with
10146	// an empty value appearing in NullFields will be sent to the server as
10147	// null. It is an error if a field in this list has a non-empty value.
10148	// This may be used to include null fields in Patch requests.
10149	NullFields []string `json:"-"`
10150}
10151
10152func (s *OrdersSetLineItemMetadataRequest) MarshalJSON() ([]byte, error) {
10153	type NoMethod OrdersSetLineItemMetadataRequest
10154	raw := NoMethod(*s)
10155	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10156}
10157
10158type OrdersSetLineItemMetadataResponse struct {
10159	// ExecutionStatus: The status of the execution. Acceptable values are:
10160	// - "duplicate" - "executed"
10161	ExecutionStatus string `json:"executionStatus,omitempty"`
10162
10163	// Kind: Identifies what kind of resource this is. Value: the fixed
10164	// string "content#ordersSetLineItemMetadataResponse".
10165	Kind string `json:"kind,omitempty"`
10166
10167	// ServerResponse contains the HTTP response code and headers from the
10168	// server.
10169	googleapi.ServerResponse `json:"-"`
10170
10171	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
10172	// unconditionally include in API requests. By default, fields with
10173	// empty or default values are omitted from API requests. However, any
10174	// non-pointer, non-interface field appearing in ForceSendFields will be
10175	// sent to the server regardless of whether the field is empty or not.
10176	// This may be used to include empty fields in Patch requests.
10177	ForceSendFields []string `json:"-"`
10178
10179	// NullFields is a list of field names (e.g. "ExecutionStatus") to
10180	// include in API requests with the JSON null value. By default, fields
10181	// with empty values are omitted from API requests. However, any field
10182	// with an empty value appearing in NullFields will be sent to the
10183	// server as null. It is an error if a field in this list has a
10184	// non-empty value. This may be used to include null fields in Patch
10185	// requests.
10186	NullFields []string `json:"-"`
10187}
10188
10189func (s *OrdersSetLineItemMetadataResponse) MarshalJSON() ([]byte, error) {
10190	type NoMethod OrdersSetLineItemMetadataResponse
10191	raw := NoMethod(*s)
10192	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10193}
10194
10195type OrdersShipLineItemsRequest struct {
10196	// LineItems: Line items to ship.
10197	LineItems []*OrderShipmentLineItemShipment `json:"lineItems,omitempty"`
10198
10199	// OperationId: The ID of the operation. Unique across all operations
10200	// for a given order.
10201	OperationId string `json:"operationId,omitempty"`
10202
10203	// ShipmentGroupId: ID of the shipment group. Required for orders that
10204	// use the orderinvoices service.
10205	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
10206
10207	// ShipmentInfos: Shipment information. This field is repeated because a
10208	// single line item can be shipped in several packages (and have several
10209	// tracking IDs).
10210	ShipmentInfos []*OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo `json:"shipmentInfos,omitempty"`
10211
10212	// ForceSendFields is a list of field names (e.g. "LineItems") to
10213	// unconditionally include in API requests. By default, fields with
10214	// empty or default values are omitted from API requests. However, any
10215	// non-pointer, non-interface field appearing in ForceSendFields will be
10216	// sent to the server regardless of whether the field is empty or not.
10217	// This may be used to include empty fields in Patch requests.
10218	ForceSendFields []string `json:"-"`
10219
10220	// NullFields is a list of field names (e.g. "LineItems") to include in
10221	// API requests with the JSON null value. By default, fields with empty
10222	// values are omitted from API requests. However, any field with an
10223	// empty value appearing in NullFields will be sent to the server as
10224	// null. It is an error if a field in this list has a non-empty value.
10225	// This may be used to include null fields in Patch requests.
10226	NullFields []string `json:"-"`
10227}
10228
10229func (s *OrdersShipLineItemsRequest) MarshalJSON() ([]byte, error) {
10230	type NoMethod OrdersShipLineItemsRequest
10231	raw := NoMethod(*s)
10232	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10233}
10234
10235type OrdersShipLineItemsResponse struct {
10236	// ExecutionStatus: The status of the execution. Acceptable values are:
10237	// - "duplicate" - "executed"
10238	ExecutionStatus string `json:"executionStatus,omitempty"`
10239
10240	// Kind: Identifies what kind of resource this is. Value: the fixed
10241	// string "content#ordersShipLineItemsResponse".
10242	Kind string `json:"kind,omitempty"`
10243
10244	// ServerResponse contains the HTTP response code and headers from the
10245	// server.
10246	googleapi.ServerResponse `json:"-"`
10247
10248	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
10249	// unconditionally include in API requests. By default, fields with
10250	// empty or default values are omitted from API requests. However, any
10251	// non-pointer, non-interface field appearing in ForceSendFields will be
10252	// sent to the server regardless of whether the field is empty or not.
10253	// This may be used to include empty fields in Patch requests.
10254	ForceSendFields []string `json:"-"`
10255
10256	// NullFields is a list of field names (e.g. "ExecutionStatus") to
10257	// include in API requests with the JSON null value. By default, fields
10258	// with empty values are omitted from API requests. However, any field
10259	// with an empty value appearing in NullFields will be sent to the
10260	// server as null. It is an error if a field in this list has a
10261	// non-empty value. This may be used to include null fields in Patch
10262	// requests.
10263	NullFields []string `json:"-"`
10264}
10265
10266func (s *OrdersShipLineItemsResponse) MarshalJSON() ([]byte, error) {
10267	type NoMethod OrdersShipLineItemsResponse
10268	raw := NoMethod(*s)
10269	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10270}
10271
10272type OrdersUpdateLineItemShippingDetailsRequest struct {
10273	// DeliverByDate: Updated delivery by date, in ISO 8601 format. If not
10274	// specified only ship by date is updated. Provided date should be
10275	// within 1 year timeframe and can not be a date in the past.
10276	DeliverByDate string `json:"deliverByDate,omitempty"`
10277
10278	// LineItemId: The ID of the line item to set metadata. Either
10279	// lineItemId or productId is required.
10280	LineItemId string `json:"lineItemId,omitempty"`
10281
10282	// OperationId: The ID of the operation. Unique across all operations
10283	// for a given order.
10284	OperationId string `json:"operationId,omitempty"`
10285
10286	// ProductId: The ID of the product to set metadata. This is the REST ID
10287	// used in the products service. Either lineItemId or productId is
10288	// required.
10289	ProductId string `json:"productId,omitempty"`
10290
10291	// ShipByDate: Updated ship by date, in ISO 8601 format. If not
10292	// specified only deliver by date is updated. Provided date should be
10293	// within 1 year timeframe and can not be a date in the past.
10294	ShipByDate string `json:"shipByDate,omitempty"`
10295
10296	// ForceSendFields is a list of field names (e.g. "DeliverByDate") to
10297	// unconditionally include in API requests. By default, fields with
10298	// empty or default values are omitted from API requests. However, any
10299	// non-pointer, non-interface field appearing in ForceSendFields will be
10300	// sent to the server regardless of whether the field is empty or not.
10301	// This may be used to include empty fields in Patch requests.
10302	ForceSendFields []string `json:"-"`
10303
10304	// NullFields is a list of field names (e.g. "DeliverByDate") to include
10305	// in API requests with the JSON null value. By default, fields with
10306	// empty values are omitted from API requests. However, any field with
10307	// an empty value appearing in NullFields will be sent to the server as
10308	// null. It is an error if a field in this list has a non-empty value.
10309	// This may be used to include null fields in Patch requests.
10310	NullFields []string `json:"-"`
10311}
10312
10313func (s *OrdersUpdateLineItemShippingDetailsRequest) MarshalJSON() ([]byte, error) {
10314	type NoMethod OrdersUpdateLineItemShippingDetailsRequest
10315	raw := NoMethod(*s)
10316	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10317}
10318
10319type OrdersUpdateLineItemShippingDetailsResponse struct {
10320	// ExecutionStatus: The status of the execution. Acceptable values are:
10321	// - "duplicate" - "executed"
10322	ExecutionStatus string `json:"executionStatus,omitempty"`
10323
10324	// Kind: Identifies what kind of resource this is. Value: the fixed
10325	// string "content#ordersUpdateLineItemShippingDetailsResponse".
10326	Kind string `json:"kind,omitempty"`
10327
10328	// ServerResponse contains the HTTP response code and headers from the
10329	// server.
10330	googleapi.ServerResponse `json:"-"`
10331
10332	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
10333	// unconditionally include in API requests. By default, fields with
10334	// empty or default values are omitted from API requests. However, any
10335	// non-pointer, non-interface field appearing in ForceSendFields will be
10336	// sent to the server regardless of whether the field is empty or not.
10337	// This may be used to include empty fields in Patch requests.
10338	ForceSendFields []string `json:"-"`
10339
10340	// NullFields is a list of field names (e.g. "ExecutionStatus") to
10341	// include in API requests with the JSON null value. By default, fields
10342	// with empty values are omitted from API requests. However, any field
10343	// with an empty value appearing in NullFields will be sent to the
10344	// server as null. It is an error if a field in this list has a
10345	// non-empty value. This may be used to include null fields in Patch
10346	// requests.
10347	NullFields []string `json:"-"`
10348}
10349
10350func (s *OrdersUpdateLineItemShippingDetailsResponse) MarshalJSON() ([]byte, error) {
10351	type NoMethod OrdersUpdateLineItemShippingDetailsResponse
10352	raw := NoMethod(*s)
10353	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10354}
10355
10356type OrdersUpdateMerchantOrderIdRequest struct {
10357	// MerchantOrderId: The merchant order id to be assigned to the order.
10358	// Must be unique per merchant.
10359	MerchantOrderId string `json:"merchantOrderId,omitempty"`
10360
10361	// OperationId: The ID of the operation. Unique across all operations
10362	// for a given order.
10363	OperationId string `json:"operationId,omitempty"`
10364
10365	// ForceSendFields is a list of field names (e.g. "MerchantOrderId") to
10366	// unconditionally include in API requests. By default, fields with
10367	// empty or default values are omitted from API requests. However, any
10368	// non-pointer, non-interface field appearing in ForceSendFields will be
10369	// sent to the server regardless of whether the field is empty or not.
10370	// This may be used to include empty fields in Patch requests.
10371	ForceSendFields []string `json:"-"`
10372
10373	// NullFields is a list of field names (e.g. "MerchantOrderId") to
10374	// include in API requests with the JSON null value. By default, fields
10375	// with empty values are omitted from API requests. However, any field
10376	// with an empty value appearing in NullFields will be sent to the
10377	// server as null. It is an error if a field in this list has a
10378	// non-empty value. This may be used to include null fields in Patch
10379	// requests.
10380	NullFields []string `json:"-"`
10381}
10382
10383func (s *OrdersUpdateMerchantOrderIdRequest) MarshalJSON() ([]byte, error) {
10384	type NoMethod OrdersUpdateMerchantOrderIdRequest
10385	raw := NoMethod(*s)
10386	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10387}
10388
10389type OrdersUpdateMerchantOrderIdResponse struct {
10390	// ExecutionStatus: The status of the execution. Acceptable values are:
10391	// - "duplicate" - "executed"
10392	ExecutionStatus string `json:"executionStatus,omitempty"`
10393
10394	// Kind: Identifies what kind of resource this is. Value: the fixed
10395	// string "content#ordersUpdateMerchantOrderIdResponse".
10396	Kind string `json:"kind,omitempty"`
10397
10398	// ServerResponse contains the HTTP response code and headers from the
10399	// server.
10400	googleapi.ServerResponse `json:"-"`
10401
10402	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
10403	// unconditionally include in API requests. By default, fields with
10404	// empty or default values are omitted from API requests. However, any
10405	// non-pointer, non-interface field appearing in ForceSendFields will be
10406	// sent to the server regardless of whether the field is empty or not.
10407	// This may be used to include empty fields in Patch requests.
10408	ForceSendFields []string `json:"-"`
10409
10410	// NullFields is a list of field names (e.g. "ExecutionStatus") to
10411	// include in API requests with the JSON null value. By default, fields
10412	// with empty values are omitted from API requests. However, any field
10413	// with an empty value appearing in NullFields will be sent to the
10414	// server as null. It is an error if a field in this list has a
10415	// non-empty value. This may be used to include null fields in Patch
10416	// requests.
10417	NullFields []string `json:"-"`
10418}
10419
10420func (s *OrdersUpdateMerchantOrderIdResponse) MarshalJSON() ([]byte, error) {
10421	type NoMethod OrdersUpdateMerchantOrderIdResponse
10422	raw := NoMethod(*s)
10423	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10424}
10425
10426type OrdersUpdateShipmentRequest struct {
10427	// Carrier: The carrier handling the shipment. Not updated if missing.
10428	// See `shipments[].carrier` in the Orders resource representation for a
10429	// list of acceptable values.
10430	Carrier string `json:"carrier,omitempty"`
10431
10432	// DeliveryDate: Date on which the shipment has been delivered, in ISO
10433	// 8601 format. Optional and can be provided only if `status` is
10434	// `delivered`.
10435	DeliveryDate string `json:"deliveryDate,omitempty"`
10436
10437	// LastPickupDate: Date after which the pickup will expire, in ISO 8601
10438	// format. Required only when order is buy-online-pickup-in-store(BOPIS)
10439	// and `status` is `ready for pickup`.
10440	LastPickupDate string `json:"lastPickupDate,omitempty"`
10441
10442	// OperationId: The ID of the operation. Unique across all operations
10443	// for a given order.
10444	OperationId string `json:"operationId,omitempty"`
10445
10446	// ReadyPickupDate: Date on which the shipment has been ready for
10447	// pickup, in ISO 8601 format. Optional and can be provided only if
10448	// `status` is `ready for pickup`.
10449	ReadyPickupDate string `json:"readyPickupDate,omitempty"`
10450
10451	// ScheduledDeliveryDetails: Delivery details of the shipment if
10452	// scheduling is needed.
10453	ScheduledDeliveryDetails *OrdersCustomBatchRequestEntryUpdateShipmentScheduledDeliveryDetails `json:"scheduledDeliveryDetails,omitempty"`
10454
10455	// ShipmentId: The ID of the shipment.
10456	ShipmentId string `json:"shipmentId,omitempty"`
10457
10458	// Status: New status for the shipment. Not updated if missing.
10459	// Acceptable values are: - "delivered" - "undeliverable" -
10460	// "readyForPickup"
10461	Status string `json:"status,omitempty"`
10462
10463	// TrackingId: The tracking ID for the shipment. Not updated if missing.
10464	TrackingId string `json:"trackingId,omitempty"`
10465
10466	// UndeliveredDate: Date on which the shipment has been undeliverable,
10467	// in ISO 8601 format. Optional and can be provided only if `status` is
10468	// `undeliverable`.
10469	UndeliveredDate string `json:"undeliveredDate,omitempty"`
10470
10471	// ForceSendFields is a list of field names (e.g. "Carrier") 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. "Carrier") to include in
10480	// API 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 *OrdersUpdateShipmentRequest) MarshalJSON() ([]byte, error) {
10489	type NoMethod OrdersUpdateShipmentRequest
10490	raw := NoMethod(*s)
10491	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10492}
10493
10494type OrdersUpdateShipmentResponse struct {
10495	// ExecutionStatus: The status of the execution. Acceptable values are:
10496	// - "duplicate" - "executed"
10497	ExecutionStatus string `json:"executionStatus,omitempty"`
10498
10499	// Kind: Identifies what kind of resource this is. Value: the fixed
10500	// string "content#ordersUpdateShipmentResponse".
10501	Kind string `json:"kind,omitempty"`
10502
10503	// ServerResponse contains the HTTP response code and headers from the
10504	// server.
10505	googleapi.ServerResponse `json:"-"`
10506
10507	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
10508	// unconditionally include in API requests. By default, fields with
10509	// empty or default values are omitted from API requests. However, any
10510	// non-pointer, non-interface field appearing in ForceSendFields will be
10511	// sent to the server regardless of whether the field is empty or not.
10512	// This may be used to include empty fields in Patch requests.
10513	ForceSendFields []string `json:"-"`
10514
10515	// NullFields is a list of field names (e.g. "ExecutionStatus") to
10516	// include in API requests with the JSON null value. By default, fields
10517	// with empty values are omitted from API requests. However, any field
10518	// with an empty value appearing in NullFields will be sent to the
10519	// server as null. It is an error if a field in this list has a
10520	// non-empty value. This may be used to include null fields in Patch
10521	// requests.
10522	NullFields []string `json:"-"`
10523}
10524
10525func (s *OrdersUpdateShipmentResponse) MarshalJSON() ([]byte, error) {
10526	type NoMethod OrdersUpdateShipmentResponse
10527	raw := NoMethod(*s)
10528	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10529}
10530
10531// PauseBuyOnGoogleProgramRequest: Request message for the PauseProgram
10532// method.
10533type PauseBuyOnGoogleProgramRequest struct {
10534}
10535
10536// PaymentServiceProviderLinkInfo: Additional information required for
10537// PAYMENT_SERVICE_PROVIDER link type.
10538type PaymentServiceProviderLinkInfo struct {
10539	// ExternalAccountBusinessCountry: The business country of the merchant
10540	// account as identified by the third party service provider.
10541	ExternalAccountBusinessCountry string `json:"externalAccountBusinessCountry,omitempty"`
10542
10543	// ExternalAccountId: The id used by the third party service provider to
10544	// identify the merchant.
10545	ExternalAccountId string `json:"externalAccountId,omitempty"`
10546
10547	// ForceSendFields is a list of field names (e.g.
10548	// "ExternalAccountBusinessCountry") to unconditionally include in API
10549	// requests. By default, fields with empty or default values are omitted
10550	// from API requests. However, any non-pointer, non-interface field
10551	// appearing in ForceSendFields will be sent to the server regardless of
10552	// whether the field is empty or not. This may be used to include empty
10553	// fields in Patch requests.
10554	ForceSendFields []string `json:"-"`
10555
10556	// NullFields is a list of field names (e.g.
10557	// "ExternalAccountBusinessCountry") to include in API requests with the
10558	// JSON null value. By default, fields with empty values are omitted
10559	// from API requests. However, any field with an empty value appearing
10560	// in NullFields will be sent to the server as null. It is an error if a
10561	// field in this list has a non-empty value. This may be used to include
10562	// null fields in Patch requests.
10563	NullFields []string `json:"-"`
10564}
10565
10566func (s *PaymentServiceProviderLinkInfo) MarshalJSON() ([]byte, error) {
10567	type NoMethod PaymentServiceProviderLinkInfo
10568	raw := NoMethod(*s)
10569	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10570}
10571
10572type PickupCarrierService struct {
10573	// CarrierName: The name of the pickup carrier (e.g., "UPS").
10574	// Required.
10575	CarrierName string `json:"carrierName,omitempty"`
10576
10577	// ServiceName: The name of the pickup service (e.g., "Access point").
10578	// Required.
10579	ServiceName string `json:"serviceName,omitempty"`
10580
10581	// ForceSendFields is a list of field names (e.g. "CarrierName") to
10582	// unconditionally include in API requests. By default, fields with
10583	// empty or default values are omitted from API requests. However, any
10584	// non-pointer, non-interface field appearing in ForceSendFields will be
10585	// sent to the server regardless of whether the field is empty or not.
10586	// This may be used to include empty fields in Patch requests.
10587	ForceSendFields []string `json:"-"`
10588
10589	// NullFields is a list of field names (e.g. "CarrierName") to include
10590	// in API requests with the JSON null value. By default, fields with
10591	// empty values are omitted from API requests. However, any field with
10592	// an empty value appearing in NullFields will be sent to the server as
10593	// null. It is an error if a field in this list has a non-empty value.
10594	// This may be used to include null fields in Patch requests.
10595	NullFields []string `json:"-"`
10596}
10597
10598func (s *PickupCarrierService) MarshalJSON() ([]byte, error) {
10599	type NoMethod PickupCarrierService
10600	raw := NoMethod(*s)
10601	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10602}
10603
10604type PickupServicesPickupService struct {
10605	// CarrierName: The name of the carrier (e.g., "UPS"). Always present.
10606	CarrierName string `json:"carrierName,omitempty"`
10607
10608	// Country: The CLDR country code of the carrier (e.g., "US"). Always
10609	// present.
10610	Country string `json:"country,omitempty"`
10611
10612	// ServiceName: The name of the pickup service (e.g., "Access point").
10613	// Always present.
10614	ServiceName string `json:"serviceName,omitempty"`
10615
10616	// ForceSendFields is a list of field names (e.g. "CarrierName") to
10617	// unconditionally include in API requests. By default, fields with
10618	// empty or default values are omitted from API requests. However, any
10619	// non-pointer, non-interface field appearing in ForceSendFields will be
10620	// sent to the server regardless of whether the field is empty or not.
10621	// This may be used to include empty fields in Patch requests.
10622	ForceSendFields []string `json:"-"`
10623
10624	// NullFields is a list of field names (e.g. "CarrierName") to include
10625	// in API requests with the JSON null value. By default, fields with
10626	// empty values are omitted from API requests. However, any field with
10627	// an empty value appearing in NullFields will be sent to the server as
10628	// null. It is an error if a field in this list has a non-empty value.
10629	// This may be used to include null fields in Patch requests.
10630	NullFields []string `json:"-"`
10631}
10632
10633func (s *PickupServicesPickupService) MarshalJSON() ([]byte, error) {
10634	type NoMethod PickupServicesPickupService
10635	raw := NoMethod(*s)
10636	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10637}
10638
10639type PosCustomBatchRequest struct {
10640	// Entries: The request entries to be processed in the batch.
10641	Entries []*PosCustomBatchRequestEntry `json:"entries,omitempty"`
10642
10643	// ForceSendFields is a list of field names (e.g. "Entries") to
10644	// unconditionally include in API requests. By default, fields with
10645	// empty or default values are omitted from API requests. However, any
10646	// non-pointer, non-interface field appearing in ForceSendFields will be
10647	// sent to the server regardless of whether the field is empty or not.
10648	// This may be used to include empty fields in Patch requests.
10649	ForceSendFields []string `json:"-"`
10650
10651	// NullFields is a list of field names (e.g. "Entries") to include in
10652	// API requests with the JSON null value. By default, fields with empty
10653	// values are omitted from API requests. However, any field with an
10654	// empty value appearing in NullFields will be sent to the server as
10655	// null. It is an error if a field in this list has a non-empty value.
10656	// This may be used to include null fields in Patch requests.
10657	NullFields []string `json:"-"`
10658}
10659
10660func (s *PosCustomBatchRequest) MarshalJSON() ([]byte, error) {
10661	type NoMethod PosCustomBatchRequest
10662	raw := NoMethod(*s)
10663	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10664}
10665
10666type PosCustomBatchRequestEntry struct {
10667	// BatchId: An entry ID, unique within the batch request.
10668	BatchId int64 `json:"batchId,omitempty"`
10669
10670	// Inventory: The inventory to submit. This should be set only if the
10671	// method is `inventory`.
10672	Inventory *PosInventory `json:"inventory,omitempty"`
10673
10674	// MerchantId: The ID of the POS data provider.
10675	MerchantId uint64 `json:"merchantId,omitempty,string"`
10676
10677	// Method: The method of the batch entry. Acceptable values are: -
10678	// "delete" - "get" - "insert" - "inventory" - "sale"
10679	Method string `json:"method,omitempty"`
10680
10681	// Sale: The sale information to submit. This should be set only if the
10682	// method is `sale`.
10683	Sale *PosSale `json:"sale,omitempty"`
10684
10685	// Store: The store information to submit. This should be set only if
10686	// the method is `insert`.
10687	Store *PosStore `json:"store,omitempty"`
10688
10689	// StoreCode: The store code. This should be set only if the method is
10690	// `delete` or `get`.
10691	StoreCode string `json:"storeCode,omitempty"`
10692
10693	// TargetMerchantId: The ID of the account for which to get/submit data.
10694	TargetMerchantId uint64 `json:"targetMerchantId,omitempty,string"`
10695
10696	// ForceSendFields is a list of field names (e.g. "BatchId") to
10697	// unconditionally include in API requests. By default, fields with
10698	// empty or default values are omitted from API requests. However, any
10699	// non-pointer, non-interface field appearing in ForceSendFields will be
10700	// sent to the server regardless of whether the field is empty or not.
10701	// This may be used to include empty fields in Patch requests.
10702	ForceSendFields []string `json:"-"`
10703
10704	// NullFields is a list of field names (e.g. "BatchId") to include in
10705	// API requests with the JSON null value. By default, fields with empty
10706	// values are omitted from API requests. However, any field with an
10707	// empty value appearing in NullFields will be sent to the server as
10708	// null. It is an error if a field in this list has a non-empty value.
10709	// This may be used to include null fields in Patch requests.
10710	NullFields []string `json:"-"`
10711}
10712
10713func (s *PosCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
10714	type NoMethod PosCustomBatchRequestEntry
10715	raw := NoMethod(*s)
10716	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10717}
10718
10719type PosCustomBatchResponse struct {
10720	// Entries: The result of the execution of the batch requests.
10721	Entries []*PosCustomBatchResponseEntry `json:"entries,omitempty"`
10722
10723	// Kind: Identifies what kind of resource this is. Value: the fixed
10724	// string "content#posCustomBatchResponse".
10725	Kind string `json:"kind,omitempty"`
10726
10727	// ServerResponse contains the HTTP response code and headers from the
10728	// server.
10729	googleapi.ServerResponse `json:"-"`
10730
10731	// ForceSendFields is a list of field names (e.g. "Entries") to
10732	// unconditionally include in API requests. By default, fields with
10733	// empty or default values are omitted from API requests. However, any
10734	// non-pointer, non-interface field appearing in ForceSendFields will be
10735	// sent to the server regardless of whether the field is empty or not.
10736	// This may be used to include empty fields in Patch requests.
10737	ForceSendFields []string `json:"-"`
10738
10739	// NullFields is a list of field names (e.g. "Entries") to include in
10740	// API requests with the JSON null value. By default, fields with empty
10741	// values are omitted from API requests. However, any field with an
10742	// empty value appearing in NullFields will be sent to the server as
10743	// null. It is an error if a field in this list has a non-empty value.
10744	// This may be used to include null fields in Patch requests.
10745	NullFields []string `json:"-"`
10746}
10747
10748func (s *PosCustomBatchResponse) MarshalJSON() ([]byte, error) {
10749	type NoMethod PosCustomBatchResponse
10750	raw := NoMethod(*s)
10751	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10752}
10753
10754type PosCustomBatchResponseEntry struct {
10755	// BatchId: The ID of the request entry to which this entry responds.
10756	BatchId int64 `json:"batchId,omitempty"`
10757
10758	// Errors: A list of errors defined if, and only if, the request failed.
10759	Errors *Errors `json:"errors,omitempty"`
10760
10761	// Inventory: The updated inventory information.
10762	Inventory *PosInventory `json:"inventory,omitempty"`
10763
10764	// Kind: Identifies what kind of resource this is. Value: the fixed
10765	// string "content#posCustomBatchResponseEntry"
10766	Kind string `json:"kind,omitempty"`
10767
10768	// Sale: The updated sale information.
10769	Sale *PosSale `json:"sale,omitempty"`
10770
10771	// Store: The retrieved or updated store information.
10772	Store *PosStore `json:"store,omitempty"`
10773
10774	// ForceSendFields is a list of field names (e.g. "BatchId") to
10775	// unconditionally include in API requests. By default, fields with
10776	// empty or default values are omitted from API requests. However, any
10777	// non-pointer, non-interface field appearing in ForceSendFields will be
10778	// sent to the server regardless of whether the field is empty or not.
10779	// This may be used to include empty fields in Patch requests.
10780	ForceSendFields []string `json:"-"`
10781
10782	// NullFields is a list of field names (e.g. "BatchId") to include in
10783	// API requests with the JSON null value. By default, fields with empty
10784	// values are omitted from API requests. However, any field with an
10785	// empty value appearing in NullFields will be sent to the server as
10786	// null. It is an error if a field in this list has a non-empty value.
10787	// This may be used to include null fields in Patch requests.
10788	NullFields []string `json:"-"`
10789}
10790
10791func (s *PosCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
10792	type NoMethod PosCustomBatchResponseEntry
10793	raw := NoMethod(*s)
10794	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10795}
10796
10797type PosDataProviders struct {
10798	// Country: Country code.
10799	Country string `json:"country,omitempty"`
10800
10801	// PosDataProviders: A list of POS data providers.
10802	PosDataProviders []*PosDataProvidersPosDataProvider `json:"posDataProviders,omitempty"`
10803
10804	// ForceSendFields is a list of field names (e.g. "Country") to
10805	// unconditionally include in API requests. By default, fields with
10806	// empty or default values are omitted from API requests. However, any
10807	// non-pointer, non-interface field appearing in ForceSendFields will be
10808	// sent to the server regardless of whether the field is empty or not.
10809	// This may be used to include empty fields in Patch requests.
10810	ForceSendFields []string `json:"-"`
10811
10812	// NullFields is a list of field names (e.g. "Country") to include in
10813	// API requests with the JSON null value. By default, fields with empty
10814	// values are omitted from API requests. However, any field with an
10815	// empty value appearing in NullFields will be sent to the server as
10816	// null. It is an error if a field in this list has a non-empty value.
10817	// This may be used to include null fields in Patch requests.
10818	NullFields []string `json:"-"`
10819}
10820
10821func (s *PosDataProviders) MarshalJSON() ([]byte, error) {
10822	type NoMethod PosDataProviders
10823	raw := NoMethod(*s)
10824	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10825}
10826
10827type PosDataProvidersPosDataProvider struct {
10828	// DisplayName: The display name of Pos data Provider.
10829	DisplayName string `json:"displayName,omitempty"`
10830
10831	// FullName: The full name of this POS data Provider.
10832	FullName string `json:"fullName,omitempty"`
10833
10834	// ProviderId: The ID of the account.
10835	ProviderId uint64 `json:"providerId,omitempty,string"`
10836
10837	// ForceSendFields is a list of field names (e.g. "DisplayName") to
10838	// unconditionally include in API requests. By default, fields with
10839	// empty or default values are omitted from API requests. However, any
10840	// non-pointer, non-interface field appearing in ForceSendFields will be
10841	// sent to the server regardless of whether the field is empty or not.
10842	// This may be used to include empty fields in Patch requests.
10843	ForceSendFields []string `json:"-"`
10844
10845	// NullFields is a list of field names (e.g. "DisplayName") to include
10846	// in API requests with the JSON null value. By default, fields with
10847	// empty values are omitted from API requests. However, any field with
10848	// an empty value appearing in NullFields will be sent to the server as
10849	// null. It is an error if a field in this list has a non-empty value.
10850	// This may be used to include null fields in Patch requests.
10851	NullFields []string `json:"-"`
10852}
10853
10854func (s *PosDataProvidersPosDataProvider) MarshalJSON() ([]byte, error) {
10855	type NoMethod PosDataProvidersPosDataProvider
10856	raw := NoMethod(*s)
10857	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10858}
10859
10860// PosInventory: The absolute quantity of an item available at the given
10861// store.
10862type PosInventory struct {
10863	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
10864	// the item.
10865	ContentLanguage string `json:"contentLanguage,omitempty"`
10866
10867	// Gtin: Global Trade Item Number.
10868	Gtin string `json:"gtin,omitempty"`
10869
10870	// ItemId: Required. A unique identifier for the item.
10871	ItemId string `json:"itemId,omitempty"`
10872
10873	// Kind: Identifies what kind of resource this is. Value: the fixed
10874	// string "content#posInventory"
10875	Kind string `json:"kind,omitempty"`
10876
10877	// Price: Required. The current price of the item.
10878	Price *Price `json:"price,omitempty"`
10879
10880	// Quantity: Required. The available quantity of the item.
10881	Quantity int64 `json:"quantity,omitempty,string"`
10882
10883	// StoreCode: Required. The identifier of the merchant's store. Either a
10884	// `storeCode` inserted via the API or the code of the store in Google
10885	// My Business.
10886	StoreCode string `json:"storeCode,omitempty"`
10887
10888	// TargetCountry: Required. The CLDR territory code for the item.
10889	TargetCountry string `json:"targetCountry,omitempty"`
10890
10891	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
10892	Timestamp string `json:"timestamp,omitempty"`
10893
10894	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
10895	// unconditionally include in API requests. By default, fields with
10896	// empty or default values are omitted from API requests. However, any
10897	// non-pointer, non-interface field appearing in ForceSendFields will be
10898	// sent to the server regardless of whether the field is empty or not.
10899	// This may be used to include empty fields in Patch requests.
10900	ForceSendFields []string `json:"-"`
10901
10902	// NullFields is a list of field names (e.g. "ContentLanguage") to
10903	// include in API requests with the JSON null value. By default, fields
10904	// with empty values are omitted from API requests. However, any field
10905	// with an empty value appearing in NullFields will be sent to the
10906	// server as null. It is an error if a field in this list has a
10907	// non-empty value. This may be used to include null fields in Patch
10908	// requests.
10909	NullFields []string `json:"-"`
10910}
10911
10912func (s *PosInventory) MarshalJSON() ([]byte, error) {
10913	type NoMethod PosInventory
10914	raw := NoMethod(*s)
10915	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10916}
10917
10918type PosInventoryRequest struct {
10919	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
10920	// the item.
10921	ContentLanguage string `json:"contentLanguage,omitempty"`
10922
10923	// Gtin: Global Trade Item Number.
10924	Gtin string `json:"gtin,omitempty"`
10925
10926	// ItemId: Required. A unique identifier for the item.
10927	ItemId string `json:"itemId,omitempty"`
10928
10929	// Price: Required. The current price of the item.
10930	Price *Price `json:"price,omitempty"`
10931
10932	// Quantity: Required. The available quantity of the item.
10933	Quantity int64 `json:"quantity,omitempty,string"`
10934
10935	// StoreCode: Required. The identifier of the merchant's store. Either a
10936	// `storeCode` inserted via the API or the code of the store in Google
10937	// My Business.
10938	StoreCode string `json:"storeCode,omitempty"`
10939
10940	// TargetCountry: Required. The CLDR territory code for the item.
10941	TargetCountry string `json:"targetCountry,omitempty"`
10942
10943	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
10944	Timestamp string `json:"timestamp,omitempty"`
10945
10946	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
10947	// unconditionally include in API requests. By default, fields with
10948	// empty or default values are omitted from API requests. However, any
10949	// non-pointer, non-interface field appearing in ForceSendFields will be
10950	// sent to the server regardless of whether the field is empty or not.
10951	// This may be used to include empty fields in Patch requests.
10952	ForceSendFields []string `json:"-"`
10953
10954	// NullFields is a list of field names (e.g. "ContentLanguage") to
10955	// include in API requests with the JSON null value. By default, fields
10956	// with empty values are omitted from API requests. However, any field
10957	// with an empty value appearing in NullFields will be sent to the
10958	// server as null. It is an error if a field in this list has a
10959	// non-empty value. This may be used to include null fields in Patch
10960	// requests.
10961	NullFields []string `json:"-"`
10962}
10963
10964func (s *PosInventoryRequest) MarshalJSON() ([]byte, error) {
10965	type NoMethod PosInventoryRequest
10966	raw := NoMethod(*s)
10967	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10968}
10969
10970type PosInventoryResponse struct {
10971	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
10972	// the item.
10973	ContentLanguage string `json:"contentLanguage,omitempty"`
10974
10975	// Gtin: Global Trade Item Number.
10976	Gtin string `json:"gtin,omitempty"`
10977
10978	// ItemId: Required. A unique identifier for the item.
10979	ItemId string `json:"itemId,omitempty"`
10980
10981	// Kind: Identifies what kind of resource this is. Value: the fixed
10982	// string "content#posInventoryResponse".
10983	Kind string `json:"kind,omitempty"`
10984
10985	// Price: Required. The current price of the item.
10986	Price *Price `json:"price,omitempty"`
10987
10988	// Quantity: Required. The available quantity of the item.
10989	Quantity int64 `json:"quantity,omitempty,string"`
10990
10991	// StoreCode: Required. The identifier of the merchant's store. Either a
10992	// `storeCode` inserted via the API or the code of the store in Google
10993	// My Business.
10994	StoreCode string `json:"storeCode,omitempty"`
10995
10996	// TargetCountry: Required. The CLDR territory code for the item.
10997	TargetCountry string `json:"targetCountry,omitempty"`
10998
10999	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
11000	Timestamp string `json:"timestamp,omitempty"`
11001
11002	// ServerResponse contains the HTTP response code and headers from the
11003	// server.
11004	googleapi.ServerResponse `json:"-"`
11005
11006	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
11007	// unconditionally include in API requests. By default, fields with
11008	// empty or default values are omitted from API requests. However, any
11009	// non-pointer, non-interface field appearing in ForceSendFields will be
11010	// sent to the server regardless of whether the field is empty or not.
11011	// This may be used to include empty fields in Patch requests.
11012	ForceSendFields []string `json:"-"`
11013
11014	// NullFields is a list of field names (e.g. "ContentLanguage") to
11015	// include in API requests with the JSON null value. By default, fields
11016	// with empty values are omitted from API requests. However, any field
11017	// with an empty value appearing in NullFields will be sent to the
11018	// server as null. It is an error if a field in this list has a
11019	// non-empty value. This may be used to include null fields in Patch
11020	// requests.
11021	NullFields []string `json:"-"`
11022}
11023
11024func (s *PosInventoryResponse) MarshalJSON() ([]byte, error) {
11025	type NoMethod PosInventoryResponse
11026	raw := NoMethod(*s)
11027	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11028}
11029
11030type PosListResponse struct {
11031	// Kind: Identifies what kind of resource this is. Value: the fixed
11032	// string "content#posListResponse".
11033	Kind string `json:"kind,omitempty"`
11034
11035	Resources []*PosStore `json:"resources,omitempty"`
11036
11037	// ServerResponse contains the HTTP response code and headers from the
11038	// server.
11039	googleapi.ServerResponse `json:"-"`
11040
11041	// ForceSendFields is a list of field names (e.g. "Kind") to
11042	// unconditionally include in API requests. By default, fields with
11043	// empty or default values are omitted from API requests. However, any
11044	// non-pointer, non-interface field appearing in ForceSendFields will be
11045	// sent to the server regardless of whether the field is empty or not.
11046	// This may be used to include empty fields in Patch requests.
11047	ForceSendFields []string `json:"-"`
11048
11049	// NullFields is a list of field names (e.g. "Kind") to include in API
11050	// requests with the JSON null value. By default, fields with empty
11051	// values are omitted from API requests. However, any field with an
11052	// empty value appearing in NullFields will be sent to the server as
11053	// null. It is an error if a field in this list has a non-empty value.
11054	// This may be used to include null fields in Patch requests.
11055	NullFields []string `json:"-"`
11056}
11057
11058func (s *PosListResponse) MarshalJSON() ([]byte, error) {
11059	type NoMethod PosListResponse
11060	raw := NoMethod(*s)
11061	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11062}
11063
11064// PosSale: The change of the available quantity of an item at the given
11065// store.
11066type PosSale struct {
11067	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
11068	// the item.
11069	ContentLanguage string `json:"contentLanguage,omitempty"`
11070
11071	// Gtin: Global Trade Item Number.
11072	Gtin string `json:"gtin,omitempty"`
11073
11074	// ItemId: Required. A unique identifier for the item.
11075	ItemId string `json:"itemId,omitempty"`
11076
11077	// Kind: Identifies what kind of resource this is. Value: the fixed
11078	// string "content#posSale"
11079	Kind string `json:"kind,omitempty"`
11080
11081	// Price: Required. The price of the item.
11082	Price *Price `json:"price,omitempty"`
11083
11084	// Quantity: Required. The relative change of the available quantity.
11085	// Negative for items returned.
11086	Quantity int64 `json:"quantity,omitempty,string"`
11087
11088	// SaleId: A unique ID to group items from the same sale event.
11089	SaleId string `json:"saleId,omitempty"`
11090
11091	// StoreCode: Required. The identifier of the merchant's store. Either a
11092	// `storeCode` inserted via the API or the code of the store in Google
11093	// My Business.
11094	StoreCode string `json:"storeCode,omitempty"`
11095
11096	// TargetCountry: Required. The CLDR territory code for the item.
11097	TargetCountry string `json:"targetCountry,omitempty"`
11098
11099	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
11100	Timestamp string `json:"timestamp,omitempty"`
11101
11102	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
11103	// unconditionally include in API requests. By default, fields with
11104	// empty or default values are omitted from API requests. However, any
11105	// non-pointer, non-interface field appearing in ForceSendFields will be
11106	// sent to the server regardless of whether the field is empty or not.
11107	// This may be used to include empty fields in Patch requests.
11108	ForceSendFields []string `json:"-"`
11109
11110	// NullFields is a list of field names (e.g. "ContentLanguage") to
11111	// include in API requests with the JSON null value. By default, fields
11112	// with empty values are omitted from API requests. However, any field
11113	// with an empty value appearing in NullFields will be sent to the
11114	// server as null. It is an error if a field in this list has a
11115	// non-empty value. This may be used to include null fields in Patch
11116	// requests.
11117	NullFields []string `json:"-"`
11118}
11119
11120func (s *PosSale) MarshalJSON() ([]byte, error) {
11121	type NoMethod PosSale
11122	raw := NoMethod(*s)
11123	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11124}
11125
11126type PosSaleRequest struct {
11127	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
11128	// the item.
11129	ContentLanguage string `json:"contentLanguage,omitempty"`
11130
11131	// Gtin: Global Trade Item Number.
11132	Gtin string `json:"gtin,omitempty"`
11133
11134	// ItemId: Required. A unique identifier for the item.
11135	ItemId string `json:"itemId,omitempty"`
11136
11137	// Price: Required. The price of the item.
11138	Price *Price `json:"price,omitempty"`
11139
11140	// Quantity: Required. The relative change of the available quantity.
11141	// Negative for items returned.
11142	Quantity int64 `json:"quantity,omitempty,string"`
11143
11144	// SaleId: A unique ID to group items from the same sale event.
11145	SaleId string `json:"saleId,omitempty"`
11146
11147	// StoreCode: Required. The identifier of the merchant's store. Either a
11148	// `storeCode` inserted via the API or the code of the store in Google
11149	// My Business.
11150	StoreCode string `json:"storeCode,omitempty"`
11151
11152	// TargetCountry: Required. The CLDR territory code for the item.
11153	TargetCountry string `json:"targetCountry,omitempty"`
11154
11155	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
11156	Timestamp string `json:"timestamp,omitempty"`
11157
11158	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
11159	// unconditionally include in API requests. By default, fields with
11160	// empty or default values are omitted from API requests. However, any
11161	// non-pointer, non-interface field appearing in ForceSendFields will be
11162	// sent to the server regardless of whether the field is empty or not.
11163	// This may be used to include empty fields in Patch requests.
11164	ForceSendFields []string `json:"-"`
11165
11166	// NullFields is a list of field names (e.g. "ContentLanguage") to
11167	// include in API requests with the JSON null value. By default, fields
11168	// with empty values are omitted from API requests. However, any field
11169	// with an empty value appearing in NullFields will be sent to the
11170	// server as null. It is an error if a field in this list has a
11171	// non-empty value. This may be used to include null fields in Patch
11172	// requests.
11173	NullFields []string `json:"-"`
11174}
11175
11176func (s *PosSaleRequest) MarshalJSON() ([]byte, error) {
11177	type NoMethod PosSaleRequest
11178	raw := NoMethod(*s)
11179	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11180}
11181
11182type PosSaleResponse struct {
11183	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
11184	// the item.
11185	ContentLanguage string `json:"contentLanguage,omitempty"`
11186
11187	// Gtin: Global Trade Item Number.
11188	Gtin string `json:"gtin,omitempty"`
11189
11190	// ItemId: Required. A unique identifier for the item.
11191	ItemId string `json:"itemId,omitempty"`
11192
11193	// Kind: Identifies what kind of resource this is. Value: the fixed
11194	// string "content#posSaleResponse".
11195	Kind string `json:"kind,omitempty"`
11196
11197	// Price: Required. The price of the item.
11198	Price *Price `json:"price,omitempty"`
11199
11200	// Quantity: Required. The relative change of the available quantity.
11201	// Negative for items returned.
11202	Quantity int64 `json:"quantity,omitempty,string"`
11203
11204	// SaleId: A unique ID to group items from the same sale event.
11205	SaleId string `json:"saleId,omitempty"`
11206
11207	// StoreCode: Required. The identifier of the merchant's store. Either a
11208	// `storeCode` inserted via the API or the code of the store in Google
11209	// My Business.
11210	StoreCode string `json:"storeCode,omitempty"`
11211
11212	// TargetCountry: Required. The CLDR territory code for the item.
11213	TargetCountry string `json:"targetCountry,omitempty"`
11214
11215	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
11216	Timestamp string `json:"timestamp,omitempty"`
11217
11218	// ServerResponse contains the HTTP response code and headers from the
11219	// server.
11220	googleapi.ServerResponse `json:"-"`
11221
11222	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
11223	// unconditionally include in API requests. By default, fields with
11224	// empty or default values are omitted from API requests. However, any
11225	// non-pointer, non-interface field appearing in ForceSendFields will be
11226	// sent to the server regardless of whether the field is empty or not.
11227	// This may be used to include empty fields in Patch requests.
11228	ForceSendFields []string `json:"-"`
11229
11230	// NullFields is a list of field names (e.g. "ContentLanguage") to
11231	// include in API requests with the JSON null value. By default, fields
11232	// with empty values are omitted from API requests. However, any field
11233	// with an empty value appearing in NullFields will be sent to the
11234	// server as null. It is an error if a field in this list has a
11235	// non-empty value. This may be used to include null fields in Patch
11236	// requests.
11237	NullFields []string `json:"-"`
11238}
11239
11240func (s *PosSaleResponse) MarshalJSON() ([]byte, error) {
11241	type NoMethod PosSaleResponse
11242	raw := NoMethod(*s)
11243	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11244}
11245
11246// PosStore: Store resource.
11247type PosStore struct {
11248	// Kind: Identifies what kind of resource this is. Value: the fixed
11249	// string "content#posStore"
11250	Kind string `json:"kind,omitempty"`
11251
11252	// StoreAddress: Required. The street address of the store.
11253	StoreAddress string `json:"storeAddress,omitempty"`
11254
11255	// StoreCode: Required. A store identifier that is unique for the given
11256	// merchant.
11257	StoreCode string `json:"storeCode,omitempty"`
11258
11259	// ServerResponse contains the HTTP response code and headers from the
11260	// server.
11261	googleapi.ServerResponse `json:"-"`
11262
11263	// ForceSendFields is a list of field names (e.g. "Kind") to
11264	// unconditionally include in API requests. By default, fields with
11265	// empty or default values are omitted from API requests. However, any
11266	// non-pointer, non-interface field appearing in ForceSendFields will be
11267	// sent to the server regardless of whether the field is empty or not.
11268	// This may be used to include empty fields in Patch requests.
11269	ForceSendFields []string `json:"-"`
11270
11271	// NullFields is a list of field names (e.g. "Kind") to include in API
11272	// requests with the JSON null value. By default, fields with empty
11273	// values are omitted from API requests. However, any field with an
11274	// empty value appearing in NullFields will be sent to the server as
11275	// null. It is an error if a field in this list has a non-empty value.
11276	// This may be used to include null fields in Patch requests.
11277	NullFields []string `json:"-"`
11278}
11279
11280func (s *PosStore) MarshalJSON() ([]byte, error) {
11281	type NoMethod PosStore
11282	raw := NoMethod(*s)
11283	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11284}
11285
11286type PostalCodeGroup struct {
11287	// Country: The CLDR territory code of the country the postal code group
11288	// applies to. Required.
11289	Country string `json:"country,omitempty"`
11290
11291	// Name: The name of the postal code group, referred to in headers.
11292	// Required.
11293	Name string `json:"name,omitempty"`
11294
11295	// PostalCodeRanges: A range of postal codes. Required.
11296	PostalCodeRanges []*PostalCodeRange `json:"postalCodeRanges,omitempty"`
11297
11298	// ForceSendFields is a list of field names (e.g. "Country") to
11299	// unconditionally include in API requests. By default, fields with
11300	// empty or default values are omitted from API requests. However, any
11301	// non-pointer, non-interface field appearing in ForceSendFields will be
11302	// sent to the server regardless of whether the field is empty or not.
11303	// This may be used to include empty fields in Patch requests.
11304	ForceSendFields []string `json:"-"`
11305
11306	// NullFields is a list of field names (e.g. "Country") to include in
11307	// API requests with the JSON null value. By default, fields with empty
11308	// values are omitted from API requests. However, any field with an
11309	// empty value appearing in NullFields will be sent to the server as
11310	// null. It is an error if a field in this list has a non-empty value.
11311	// This may be used to include null fields in Patch requests.
11312	NullFields []string `json:"-"`
11313}
11314
11315func (s *PostalCodeGroup) MarshalJSON() ([]byte, error) {
11316	type NoMethod PostalCodeGroup
11317	raw := NoMethod(*s)
11318	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11319}
11320
11321type PostalCodeRange struct {
11322	// PostalCodeRangeBegin: A postal code or a pattern of the form
11323	// `prefix*` denoting the inclusive lower bound of the range defining
11324	// the area. Examples values: "94108", "9410*", "9*". Required.
11325	PostalCodeRangeBegin string `json:"postalCodeRangeBegin,omitempty"`
11326
11327	// PostalCodeRangeEnd: A postal code or a pattern of the form `prefix*`
11328	// denoting the inclusive upper bound of the range defining the area. It
11329	// must have the same length as `postalCodeRangeBegin`: if
11330	// `postalCodeRangeBegin` is a postal code then `postalCodeRangeEnd`
11331	// must be a postal code too; if `postalCodeRangeBegin` is a pattern
11332	// then `postalCodeRangeEnd` must be a pattern with the same prefix
11333	// length. Optional: if not set, then the area is defined as being all
11334	// the postal codes matching `postalCodeRangeBegin`.
11335	PostalCodeRangeEnd string `json:"postalCodeRangeEnd,omitempty"`
11336
11337	// ForceSendFields is a list of field names (e.g.
11338	// "PostalCodeRangeBegin") to unconditionally include in API requests.
11339	// By default, fields with empty or default values are omitted from API
11340	// requests. However, any non-pointer, non-interface field appearing in
11341	// ForceSendFields will be sent to the server regardless of whether the
11342	// field is empty or not. This may be used to include empty fields in
11343	// Patch requests.
11344	ForceSendFields []string `json:"-"`
11345
11346	// NullFields is a list of field names (e.g. "PostalCodeRangeBegin") to
11347	// include in API requests with the JSON null value. By default, fields
11348	// with empty values are omitted from API requests. However, any field
11349	// with an empty value appearing in NullFields will be sent to the
11350	// server as null. It is an error if a field in this list has a
11351	// non-empty value. This may be used to include null fields in Patch
11352	// requests.
11353	NullFields []string `json:"-"`
11354}
11355
11356func (s *PostalCodeRange) MarshalJSON() ([]byte, error) {
11357	type NoMethod PostalCodeRange
11358	raw := NoMethod(*s)
11359	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11360}
11361
11362type Price struct {
11363	// Currency: The currency of the price.
11364	Currency string `json:"currency,omitempty"`
11365
11366	// Value: The price represented as a number.
11367	Value string `json:"value,omitempty"`
11368
11369	// ForceSendFields is a list of field names (e.g. "Currency") to
11370	// unconditionally include in API requests. By default, fields with
11371	// empty or default values are omitted from API requests. However, any
11372	// non-pointer, non-interface field appearing in ForceSendFields will be
11373	// sent to the server regardless of whether the field is empty or not.
11374	// This may be used to include empty fields in Patch requests.
11375	ForceSendFields []string `json:"-"`
11376
11377	// NullFields is a list of field names (e.g. "Currency") to include in
11378	// API requests with the JSON null value. By default, fields with empty
11379	// values are omitted from API requests. However, any field with an
11380	// empty value appearing in NullFields will be sent to the server as
11381	// null. It is an error if a field in this list has a non-empty value.
11382	// This may be used to include null fields in Patch requests.
11383	NullFields []string `json:"-"`
11384}
11385
11386func (s *Price) MarshalJSON() ([]byte, error) {
11387	type NoMethod Price
11388	raw := NoMethod(*s)
11389	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11390}
11391
11392// PriceAmount: The price represented as a number and currency.
11393type PriceAmount struct {
11394	// Currency: The currency of the price.
11395	Currency string `json:"currency,omitempty"`
11396
11397	// Value: The price represented as a number.
11398	Value string `json:"value,omitempty"`
11399
11400	// ForceSendFields is a list of field names (e.g. "Currency") 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. "Currency") to include in
11409	// API 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 *PriceAmount) MarshalJSON() ([]byte, error) {
11418	type NoMethod PriceAmount
11419	raw := NoMethod(*s)
11420	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11421}
11422
11423// Product:  Required product attributes are primarily defined by the
11424// products data specification. See the Products Data Specification Help
11425// Center article for information. Product data. After inserting,
11426// updating, or deleting a product, it may take several minutes before
11427// changes take effect.
11428type Product struct {
11429	// AdditionalImageLinks: Additional URLs of images of the item.
11430	AdditionalImageLinks []string `json:"additionalImageLinks,omitempty"`
11431
11432	// AdditionalSizeType: Additional cut of the item. Used together with
11433	// size_type to represent combined size types for apparel items.
11434	AdditionalSizeType string `json:"additionalSizeType,omitempty"`
11435
11436	// AdsGrouping: Used to group items in an arbitrary way. Only for CPA%,
11437	// discouraged otherwise.
11438	AdsGrouping string `json:"adsGrouping,omitempty"`
11439
11440	// AdsLabels: Similar to ads_grouping, but only works on CPC.
11441	AdsLabels []string `json:"adsLabels,omitempty"`
11442
11443	// AdsRedirect: Allows advertisers to override the item URL when the
11444	// product is shown within the context of Product Ads.
11445	AdsRedirect string `json:"adsRedirect,omitempty"`
11446
11447	// Adult: Should be set to true if the item is targeted towards adults.
11448	Adult bool `json:"adult,omitempty"`
11449
11450	// AgeGroup: Target age group of the item.
11451	AgeGroup string `json:"ageGroup,omitempty"`
11452
11453	// Availability: Availability status of the item.
11454	Availability string `json:"availability,omitempty"`
11455
11456	// AvailabilityDate: The day a pre-ordered product becomes available for
11457	// delivery, in ISO 8601 format.
11458	AvailabilityDate string `json:"availabilityDate,omitempty"`
11459
11460	// Brand: Brand of the item.
11461	Brand string `json:"brand,omitempty"`
11462
11463	// CanonicalLink: URL for the canonical version of your item's landing
11464	// page.
11465	CanonicalLink string `json:"canonicalLink,omitempty"`
11466
11467	// Channel: Required. The item's channel (online or local). Acceptable
11468	// values are: - "local" - "online"
11469	Channel string `json:"channel,omitempty"`
11470
11471	// Color: Color of the item.
11472	Color string `json:"color,omitempty"`
11473
11474	// Condition: Condition or state of the item.
11475	Condition string `json:"condition,omitempty"`
11476
11477	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
11478	// the item.
11479	ContentLanguage string `json:"contentLanguage,omitempty"`
11480
11481	// CostOfGoodsSold: Cost of goods sold. Used for gross profit reporting.
11482	CostOfGoodsSold *Price `json:"costOfGoodsSold,omitempty"`
11483
11484	// CustomAttributes: A list of custom (merchant-provided) attributes. It
11485	// can also be used for submitting any attribute of the feed
11486	// specification in its generic form (e.g., `{ "name": "size type",
11487	// "value": "regular" }`). This is useful for submitting attributes not
11488	// explicitly exposed by the API, such as additional attributes used for
11489	// Buy on Google (formerly known as Shopping Actions).
11490	CustomAttributes []*CustomAttribute `json:"customAttributes,omitempty"`
11491
11492	// CustomLabel0: Custom label 0 for custom grouping of items in a
11493	// Shopping campaign.
11494	CustomLabel0 string `json:"customLabel0,omitempty"`
11495
11496	// CustomLabel1: Custom label 1 for custom grouping of items in a
11497	// Shopping campaign.
11498	CustomLabel1 string `json:"customLabel1,omitempty"`
11499
11500	// CustomLabel2: Custom label 2 for custom grouping of items in a
11501	// Shopping campaign.
11502	CustomLabel2 string `json:"customLabel2,omitempty"`
11503
11504	// CustomLabel3: Custom label 3 for custom grouping of items in a
11505	// Shopping campaign.
11506	CustomLabel3 string `json:"customLabel3,omitempty"`
11507
11508	// CustomLabel4: Custom label 4 for custom grouping of items in a
11509	// Shopping campaign.
11510	CustomLabel4 string `json:"customLabel4,omitempty"`
11511
11512	// Description: Description of the item.
11513	Description string `json:"description,omitempty"`
11514
11515	// DisplayAdsId: An identifier for an item for dynamic remarketing
11516	// campaigns.
11517	DisplayAdsId string `json:"displayAdsId,omitempty"`
11518
11519	// DisplayAdsLink: URL directly to your item's landing page for dynamic
11520	// remarketing campaigns.
11521	DisplayAdsLink string `json:"displayAdsLink,omitempty"`
11522
11523	// DisplayAdsSimilarIds: Advertiser-specified recommendations.
11524	DisplayAdsSimilarIds []string `json:"displayAdsSimilarIds,omitempty"`
11525
11526	// DisplayAdsTitle: Title of an item for dynamic remarketing campaigns.
11527	DisplayAdsTitle string `json:"displayAdsTitle,omitempty"`
11528
11529	// DisplayAdsValue: Offer margin for dynamic remarketing campaigns.
11530	DisplayAdsValue float64 `json:"displayAdsValue,omitempty"`
11531
11532	// EnergyEfficiencyClass: The energy efficiency class as defined in EU
11533	// directive 2010/30/EU.
11534	EnergyEfficiencyClass string `json:"energyEfficiencyClass,omitempty"`
11535
11536	// ExcludedDestinations: The list of destinations to exclude for this
11537	// target (corresponds to unchecked check boxes in Merchant Center).
11538	ExcludedDestinations []string `json:"excludedDestinations,omitempty"`
11539
11540	// ExpirationDate: Date on which the item should expire, as specified
11541	// upon insertion, in ISO 8601 format. The actual expiration date in
11542	// Google Shopping is exposed in `productstatuses` as
11543	// `googleExpirationDate` and might be earlier if `expirationDate` is
11544	// too far in the future.
11545	ExpirationDate string `json:"expirationDate,omitempty"`
11546
11547	// Gender: Target gender of the item.
11548	Gender string `json:"gender,omitempty"`
11549
11550	// GoogleProductCategory: Google's category of the item (see Google
11551	// product taxonomy
11552	// (https://support.google.com/merchants/answer/1705911)). When querying
11553	// products, this field will contain the user provided value. There is
11554	// currently no way to get back the auto assigned google product
11555	// categories through the API.
11556	GoogleProductCategory string `json:"googleProductCategory,omitempty"`
11557
11558	// Gtin: Global Trade Item Number (GTIN) of the item.
11559	Gtin string `json:"gtin,omitempty"`
11560
11561	// Id: The REST ID of the product. Content API methods that operate on
11562	// products take this as their `productId` parameter. The REST ID for a
11563	// product is of the form channel:contentLanguage: targetCountry:
11564	// offerId.
11565	Id string `json:"id,omitempty"`
11566
11567	// IdentifierExists: False when the item does not have unique product
11568	// identifiers appropriate to its category, such as GTIN, MPN, and
11569	// brand. Required according to the Unique Product Identifier Rules for
11570	// all target countries except for Canada.
11571	IdentifierExists bool `json:"identifierExists,omitempty"`
11572
11573	// ImageLink: URL of an image of the item.
11574	ImageLink string `json:"imageLink,omitempty"`
11575
11576	// IncludedDestinations: The list of destinations to include for this
11577	// target (corresponds to checked check boxes in Merchant Center).
11578	// Default destinations are always included unless provided in
11579	// `excludedDestinations`.
11580	IncludedDestinations []string `json:"includedDestinations,omitempty"`
11581
11582	// Installment: Number and amount of installments to pay for an item.
11583	Installment *Installment `json:"installment,omitempty"`
11584
11585	// IsBundle: Whether the item is a merchant-defined bundle. A bundle is
11586	// a custom grouping of different products sold by a merchant for a
11587	// single price.
11588	IsBundle bool `json:"isBundle,omitempty"`
11589
11590	// ItemGroupId: Shared identifier for all variants of the same product.
11591	ItemGroupId string `json:"itemGroupId,omitempty"`
11592
11593	// Kind: Identifies what kind of resource this is. Value: the fixed
11594	// string "content#product"
11595	Kind string `json:"kind,omitempty"`
11596
11597	// Link: URL directly linking to your item's page on your website.
11598	Link string `json:"link,omitempty"`
11599
11600	// LinkTemplate: URL template for merchant hosted local storefront.
11601	LinkTemplate string `json:"linkTemplate,omitempty"`
11602
11603	// LoyaltyPoints: Loyalty points that users receive after purchasing the
11604	// item. Japan only.
11605	LoyaltyPoints *LoyaltyPoints `json:"loyaltyPoints,omitempty"`
11606
11607	// Material: The material of which the item is made.
11608	Material string `json:"material,omitempty"`
11609
11610	// MaxEnergyEfficiencyClass: The energy efficiency class as defined in
11611	// EU directive 2010/30/EU.
11612	MaxEnergyEfficiencyClass string `json:"maxEnergyEfficiencyClass,omitempty"`
11613
11614	// MaxHandlingTime: Maximal product handling time (in business days).
11615	MaxHandlingTime int64 `json:"maxHandlingTime,omitempty,string"`
11616
11617	// MinEnergyEfficiencyClass: The energy efficiency class as defined in
11618	// EU directive 2010/30/EU.
11619	MinEnergyEfficiencyClass string `json:"minEnergyEfficiencyClass,omitempty"`
11620
11621	// MinHandlingTime: Minimal product handling time (in business days).
11622	MinHandlingTime int64 `json:"minHandlingTime,omitempty,string"`
11623
11624	// MobileLink: URL for the mobile-optimized version of your item's
11625	// landing page.
11626	MobileLink string `json:"mobileLink,omitempty"`
11627
11628	// MobileLinkTemplate: URL template for merchant hosted local storefront
11629	// optimized for mobile devices.
11630	MobileLinkTemplate string `json:"mobileLinkTemplate,omitempty"`
11631
11632	// Mpn: Manufacturer Part Number (MPN) of the item.
11633	Mpn string `json:"mpn,omitempty"`
11634
11635	// Multipack: The number of identical products in a merchant-defined
11636	// multipack.
11637	Multipack int64 `json:"multipack,omitempty,string"`
11638
11639	// OfferId: Required. A unique identifier for the item. Leading and
11640	// trailing whitespaces are stripped and multiple whitespaces are
11641	// replaced by a single whitespace upon submission. Only valid unicode
11642	// characters are accepted. See the products feed specification for
11643	// details. *Note:* Content API methods that operate on products take
11644	// the REST ID of the product, *not* this identifier.
11645	OfferId string `json:"offerId,omitempty"`
11646
11647	// Pattern: The item's pattern (e.g. polka dots).
11648	Pattern string `json:"pattern,omitempty"`
11649
11650	// PickupMethod: The pick up option for the item. Acceptable values are:
11651	// - "buy" - "reserve" - "ship to store" - "not supported"
11652	PickupMethod string `json:"pickupMethod,omitempty"`
11653
11654	// PickupSla: Item store pickup timeline. Acceptable values are: -
11655	// "same day" - "next day" - "2-day" - "3-day" - "4-day" -
11656	// "5-day" - "6-day" - "7-day" - "multi-week"
11657	PickupSla string `json:"pickupSla,omitempty"`
11658
11659	// Price: Price of the item.
11660	Price *Price `json:"price,omitempty"`
11661
11662	// ProductDetails: Technical specification or additional product
11663	// details.
11664	ProductDetails []*ProductProductDetail `json:"productDetails,omitempty"`
11665
11666	// ProductHeight: The height of the product in the units provided. The
11667	// value must be between 0 (exclusive) and 3000 (inclusive).
11668	ProductHeight *ProductDimension `json:"productHeight,omitempty"`
11669
11670	// ProductHighlights: Bullet points describing the most relevant
11671	// highlights of a product.
11672	ProductHighlights []string `json:"productHighlights,omitempty"`
11673
11674	// ProductLength: The length of the product in the units provided. The
11675	// value must be between 0 (exclusive) and 3000 (inclusive).
11676	ProductLength *ProductDimension `json:"productLength,omitempty"`
11677
11678	// ProductTypes: Categories of the item (formatted as in products data
11679	// specification).
11680	ProductTypes []string `json:"productTypes,omitempty"`
11681
11682	// ProductWeight: The weight of the product in the units provided. The
11683	// value must be between 0 (exclusive) and 2000 (inclusive).
11684	ProductWeight *ProductWeight `json:"productWeight,omitempty"`
11685
11686	// ProductWidth: The width of the product in the units provided. The
11687	// value must be between 0 (exclusive) and 3000 (inclusive).
11688	ProductWidth *ProductDimension `json:"productWidth,omitempty"`
11689
11690	// PromotionIds: The unique ID of a promotion.
11691	PromotionIds []string `json:"promotionIds,omitempty"`
11692
11693	// SalePrice: Advertised sale price of the item.
11694	SalePrice *Price `json:"salePrice,omitempty"`
11695
11696	// SalePriceEffectiveDate: Date range during which the item is on sale
11697	// (see products data specification ).
11698	SalePriceEffectiveDate string `json:"salePriceEffectiveDate,omitempty"`
11699
11700	// SellOnGoogleQuantity: The quantity of the product that is available
11701	// for selling on Google. Supported only for online products.
11702	SellOnGoogleQuantity int64 `json:"sellOnGoogleQuantity,omitempty,string"`
11703
11704	// Shipping: Shipping rules.
11705	Shipping []*ProductShipping `json:"shipping,omitempty"`
11706
11707	// ShippingHeight: Height of the item for shipping.
11708	ShippingHeight *ProductShippingDimension `json:"shippingHeight,omitempty"`
11709
11710	// ShippingLabel: The shipping label of the product, used to group
11711	// product in account-level shipping rules.
11712	ShippingLabel string `json:"shippingLabel,omitempty"`
11713
11714	// ShippingLength: Length of the item for shipping.
11715	ShippingLength *ProductShippingDimension `json:"shippingLength,omitempty"`
11716
11717	// ShippingWeight: Weight of the item for shipping.
11718	ShippingWeight *ProductShippingWeight `json:"shippingWeight,omitempty"`
11719
11720	// ShippingWidth: Width of the item for shipping.
11721	ShippingWidth *ProductShippingDimension `json:"shippingWidth,omitempty"`
11722
11723	// ShoppingAdsExcludedCountries: List of country codes (ISO 3166-1
11724	// alpha-2) to exclude the offer from Shopping Ads destination.
11725	// Countries from this list are removed from countries configured in MC
11726	// feed settings.
11727	ShoppingAdsExcludedCountries []string `json:"shoppingAdsExcludedCountries,omitempty"`
11728
11729	// SizeSystem: System in which the size is specified. Recommended for
11730	// apparel items.
11731	SizeSystem string `json:"sizeSystem,omitempty"`
11732
11733	// SizeType: The cut of the item. Recommended for apparel items.
11734	SizeType string `json:"sizeType,omitempty"`
11735
11736	// Sizes: Size of the item. Only one value is allowed. For variants with
11737	// different sizes, insert a separate product for each size with the
11738	// same `itemGroupId` value (see size definition).
11739	Sizes []string `json:"sizes,omitempty"`
11740
11741	// Source: The source of the offer, i.e., how the offer was created.
11742	// Acceptable values are: - "api" - "crawl" - "feed"
11743	Source string `json:"source,omitempty"`
11744
11745	// SubscriptionCost: Number of periods (months or years) and amount of
11746	// payment per period for an item with an associated subscription
11747	// contract.
11748	SubscriptionCost *ProductSubscriptionCost `json:"subscriptionCost,omitempty"`
11749
11750	// TargetCountry: Required. The CLDR territory code for the item.
11751	TargetCountry string `json:"targetCountry,omitempty"`
11752
11753	// TaxCategory: The tax category of the product, used to configure
11754	// detailed tax nexus in account-level tax settings.
11755	TaxCategory string `json:"taxCategory,omitempty"`
11756
11757	// Taxes: Tax information.
11758	Taxes []*ProductTax `json:"taxes,omitempty"`
11759
11760	// Title: Title of the item.
11761	Title string `json:"title,omitempty"`
11762
11763	// TransitTimeLabel: The transit time label of the product, used to
11764	// group product in account-level transit time tables.
11765	TransitTimeLabel string `json:"transitTimeLabel,omitempty"`
11766
11767	// UnitPricingBaseMeasure: The preference of the denominator of the unit
11768	// price.
11769	UnitPricingBaseMeasure *ProductUnitPricingBaseMeasure `json:"unitPricingBaseMeasure,omitempty"`
11770
11771	// UnitPricingMeasure: The measure and dimension of an item.
11772	UnitPricingMeasure *ProductUnitPricingMeasure `json:"unitPricingMeasure,omitempty"`
11773
11774	// ServerResponse contains the HTTP response code and headers from the
11775	// server.
11776	googleapi.ServerResponse `json:"-"`
11777
11778	// ForceSendFields is a list of field names (e.g.
11779	// "AdditionalImageLinks") to unconditionally include in API requests.
11780	// By default, fields with empty or default values are omitted from API
11781	// requests. However, any non-pointer, non-interface field appearing in
11782	// ForceSendFields will be sent to the server regardless of whether the
11783	// field is empty or not. This may be used to include empty fields in
11784	// Patch requests.
11785	ForceSendFields []string `json:"-"`
11786
11787	// NullFields is a list of field names (e.g. "AdditionalImageLinks") to
11788	// include in API requests with the JSON null value. By default, fields
11789	// with empty values are omitted from API requests. However, any field
11790	// with an empty value appearing in NullFields will be sent to the
11791	// server as null. It is an error if a field in this list has a
11792	// non-empty value. This may be used to include null fields in Patch
11793	// requests.
11794	NullFields []string `json:"-"`
11795}
11796
11797func (s *Product) MarshalJSON() ([]byte, error) {
11798	type NoMethod Product
11799	raw := NoMethod(*s)
11800	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11801}
11802
11803func (s *Product) UnmarshalJSON(data []byte) error {
11804	type NoMethod Product
11805	var s1 struct {
11806		DisplayAdsValue gensupport.JSONFloat64 `json:"displayAdsValue"`
11807		*NoMethod
11808	}
11809	s1.NoMethod = (*NoMethod)(s)
11810	if err := json.Unmarshal(data, &s1); err != nil {
11811		return err
11812	}
11813	s.DisplayAdsValue = float64(s1.DisplayAdsValue)
11814	return nil
11815}
11816
11817type ProductAmount struct {
11818	// PriceAmount: The pre-tax or post-tax price depending on the location
11819	// of the order.
11820	PriceAmount *Price `json:"priceAmount,omitempty"`
11821
11822	// RemittedTaxAmount: Remitted tax value.
11823	RemittedTaxAmount *Price `json:"remittedTaxAmount,omitempty"`
11824
11825	// TaxAmount: Tax value.
11826	TaxAmount *Price `json:"taxAmount,omitempty"`
11827
11828	// ForceSendFields is a list of field names (e.g. "PriceAmount") to
11829	// unconditionally include in API requests. By default, fields with
11830	// empty or default values are omitted from API requests. However, any
11831	// non-pointer, non-interface field appearing in ForceSendFields will be
11832	// sent to the server regardless of whether the field is empty or not.
11833	// This may be used to include empty fields in Patch requests.
11834	ForceSendFields []string `json:"-"`
11835
11836	// NullFields is a list of field names (e.g. "PriceAmount") to include
11837	// in API requests with the JSON null value. By default, fields with
11838	// empty values are omitted from API requests. However, any field with
11839	// an empty value appearing in NullFields will be sent to the server as
11840	// null. It is an error if a field in this list has a non-empty value.
11841	// This may be used to include null fields in Patch requests.
11842	NullFields []string `json:"-"`
11843}
11844
11845func (s *ProductAmount) MarshalJSON() ([]byte, error) {
11846	type NoMethod ProductAmount
11847	raw := NoMethod(*s)
11848	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11849}
11850
11851type ProductDimension struct {
11852	// Unit: Required. The length units. Acceptable values are: - "in" -
11853	// "cm"
11854	Unit string `json:"unit,omitempty"`
11855
11856	// Value: Required. The length value represented as a number. The value
11857	// can have a maximum precision of four decimal places.
11858	Value float64 `json:"value,omitempty"`
11859
11860	// ForceSendFields is a list of field names (e.g. "Unit") to
11861	// unconditionally include in API requests. By default, fields with
11862	// empty or default values are omitted from API requests. However, any
11863	// non-pointer, non-interface field appearing in ForceSendFields will be
11864	// sent to the server regardless of whether the field is empty or not.
11865	// This may be used to include empty fields in Patch requests.
11866	ForceSendFields []string `json:"-"`
11867
11868	// NullFields is a list of field names (e.g. "Unit") to include in API
11869	// requests with the JSON null value. By default, fields with empty
11870	// values are omitted from API requests. However, any field with an
11871	// empty value appearing in NullFields will be sent to the server as
11872	// null. It is an error if a field in this list has a non-empty value.
11873	// This may be used to include null fields in Patch requests.
11874	NullFields []string `json:"-"`
11875}
11876
11877func (s *ProductDimension) MarshalJSON() ([]byte, error) {
11878	type NoMethod ProductDimension
11879	raw := NoMethod(*s)
11880	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11881}
11882
11883func (s *ProductDimension) UnmarshalJSON(data []byte) error {
11884	type NoMethod ProductDimension
11885	var s1 struct {
11886		Value gensupport.JSONFloat64 `json:"value"`
11887		*NoMethod
11888	}
11889	s1.NoMethod = (*NoMethod)(s)
11890	if err := json.Unmarshal(data, &s1); err != nil {
11891		return err
11892	}
11893	s.Value = float64(s1.Value)
11894	return nil
11895}
11896
11897type ProductProductDetail struct {
11898	// AttributeName: The name of the product detail.
11899	AttributeName string `json:"attributeName,omitempty"`
11900
11901	// AttributeValue: The value of the product detail.
11902	AttributeValue string `json:"attributeValue,omitempty"`
11903
11904	// SectionName: The section header used to group a set of product
11905	// details.
11906	SectionName string `json:"sectionName,omitempty"`
11907
11908	// ForceSendFields is a list of field names (e.g. "AttributeName") to
11909	// unconditionally include in API requests. By default, fields with
11910	// empty or default values are omitted from API requests. However, any
11911	// non-pointer, non-interface field appearing in ForceSendFields will be
11912	// sent to the server regardless of whether the field is empty or not.
11913	// This may be used to include empty fields in Patch requests.
11914	ForceSendFields []string `json:"-"`
11915
11916	// NullFields is a list of field names (e.g. "AttributeName") to include
11917	// in API requests with the JSON null value. By default, fields with
11918	// empty values are omitted from API requests. However, any field with
11919	// an empty value appearing in NullFields will be sent to the server as
11920	// null. It is an error if a field in this list has a non-empty value.
11921	// This may be used to include null fields in Patch requests.
11922	NullFields []string `json:"-"`
11923}
11924
11925func (s *ProductProductDetail) MarshalJSON() ([]byte, error) {
11926	type NoMethod ProductProductDetail
11927	raw := NoMethod(*s)
11928	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11929}
11930
11931type ProductShipping struct {
11932	// Country: The CLDR territory code of the country to which an item will
11933	// ship.
11934	Country string `json:"country,omitempty"`
11935
11936	// LocationGroupName: The location where the shipping is applicable,
11937	// represented by a location group name.
11938	LocationGroupName string `json:"locationGroupName,omitempty"`
11939
11940	// LocationId: The numeric ID of a location that the shipping rate
11941	// applies to as defined in the AdWords API.
11942	LocationId int64 `json:"locationId,omitempty,string"`
11943
11944	// MaxHandlingTime: Maximum handling time (inclusive) between when the
11945	// order is received and shipped in business days. 0 means that the
11946	// order is shipped on the same day as it is received if it happens
11947	// before the cut-off time. Both maxHandlingTime and maxTransitTime are
11948	// required if providing shipping speeds.
11949	MaxHandlingTime int64 `json:"maxHandlingTime,omitempty,string"`
11950
11951	// MaxTransitTime: Maximum transit time (inclusive) between when the
11952	// order has shipped and when it is delivered in business days. 0 means
11953	// that the order is delivered on the same day as it ships. Both
11954	// maxHandlingTime and maxTransitTime are required if providing shipping
11955	// speeds.
11956	MaxTransitTime int64 `json:"maxTransitTime,omitempty,string"`
11957
11958	// MinHandlingTime: Minimum handling time (inclusive) between when the
11959	// order is received and shipped in business days. 0 means that the
11960	// order is shipped on the same day as it is received if it happens
11961	// before the cut-off time. minHandlingTime can only be present together
11962	// with maxHandlingTime; but it is not required if maxHandlingTime is
11963	// present.
11964	MinHandlingTime int64 `json:"minHandlingTime,omitempty,string"`
11965
11966	// MinTransitTime: Minimum transit time (inclusive) between when the
11967	// order has shipped and when it is delivered in business days. 0 means
11968	// that the order is delivered on the same day as it ships.
11969	// minTransitTime can only be present together with maxTransitTime; but
11970	// it is not required if maxTransitTime is present.
11971	MinTransitTime int64 `json:"minTransitTime,omitempty,string"`
11972
11973	// PostalCode: The postal code range that the shipping rate applies to,
11974	// represented by a postal code, a postal code prefix followed by a *
11975	// wildcard, a range between two postal codes or two postal code
11976	// prefixes of equal length.
11977	PostalCode string `json:"postalCode,omitempty"`
11978
11979	// Price: Fixed shipping price, represented as a number.
11980	Price *Price `json:"price,omitempty"`
11981
11982	// Region: The geographic region to which a shipping rate applies.
11983	Region string `json:"region,omitempty"`
11984
11985	// Service: A free-form description of the service class or delivery
11986	// speed.
11987	Service string `json:"service,omitempty"`
11988
11989	// ForceSendFields is a list of field names (e.g. "Country") to
11990	// unconditionally include in API requests. By default, fields with
11991	// empty or default values are omitted from API requests. However, any
11992	// non-pointer, non-interface field appearing in ForceSendFields will be
11993	// sent to the server regardless of whether the field is empty or not.
11994	// This may be used to include empty fields in Patch requests.
11995	ForceSendFields []string `json:"-"`
11996
11997	// NullFields is a list of field names (e.g. "Country") to include in
11998	// API requests with the JSON null value. By default, fields with empty
11999	// values are omitted from API requests. However, any field with an
12000	// empty value appearing in NullFields will be sent to the server as
12001	// null. It is an error if a field in this list has a non-empty value.
12002	// This may be used to include null fields in Patch requests.
12003	NullFields []string `json:"-"`
12004}
12005
12006func (s *ProductShipping) MarshalJSON() ([]byte, error) {
12007	type NoMethod ProductShipping
12008	raw := NoMethod(*s)
12009	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12010}
12011
12012type ProductShippingDimension struct {
12013	// Unit: The unit of value.
12014	Unit string `json:"unit,omitempty"`
12015
12016	// Value: The dimension of the product used to calculate the shipping
12017	// cost of the item.
12018	Value float64 `json:"value,omitempty"`
12019
12020	// ForceSendFields is a list of field names (e.g. "Unit") to
12021	// unconditionally include in API requests. By default, fields with
12022	// empty or default values are omitted from API requests. However, any
12023	// non-pointer, non-interface field appearing in ForceSendFields will be
12024	// sent to the server regardless of whether the field is empty or not.
12025	// This may be used to include empty fields in Patch requests.
12026	ForceSendFields []string `json:"-"`
12027
12028	// NullFields is a list of field names (e.g. "Unit") to include in API
12029	// requests with the JSON null value. By default, fields with empty
12030	// values are omitted from API requests. However, any field with an
12031	// empty value appearing in NullFields will be sent to the server as
12032	// null. It is an error if a field in this list has a non-empty value.
12033	// This may be used to include null fields in Patch requests.
12034	NullFields []string `json:"-"`
12035}
12036
12037func (s *ProductShippingDimension) MarshalJSON() ([]byte, error) {
12038	type NoMethod ProductShippingDimension
12039	raw := NoMethod(*s)
12040	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12041}
12042
12043func (s *ProductShippingDimension) UnmarshalJSON(data []byte) error {
12044	type NoMethod ProductShippingDimension
12045	var s1 struct {
12046		Value gensupport.JSONFloat64 `json:"value"`
12047		*NoMethod
12048	}
12049	s1.NoMethod = (*NoMethod)(s)
12050	if err := json.Unmarshal(data, &s1); err != nil {
12051		return err
12052	}
12053	s.Value = float64(s1.Value)
12054	return nil
12055}
12056
12057type ProductShippingWeight struct {
12058	// Unit: The unit of value.
12059	Unit string `json:"unit,omitempty"`
12060
12061	// Value: The weight of the product used to calculate the shipping cost
12062	// of the item.
12063	Value float64 `json:"value,omitempty"`
12064
12065	// ForceSendFields is a list of field names (e.g. "Unit") to
12066	// unconditionally include in API requests. By default, fields with
12067	// empty or default values are omitted from API requests. However, any
12068	// non-pointer, non-interface field appearing in ForceSendFields will be
12069	// sent to the server regardless of whether the field is empty or not.
12070	// This may be used to include empty fields in Patch requests.
12071	ForceSendFields []string `json:"-"`
12072
12073	// NullFields is a list of field names (e.g. "Unit") to include in API
12074	// requests with the JSON null value. By default, fields with empty
12075	// values are omitted from API requests. However, any field with an
12076	// empty value appearing in NullFields will be sent to the server as
12077	// null. It is an error if a field in this list has a non-empty value.
12078	// This may be used to include null fields in Patch requests.
12079	NullFields []string `json:"-"`
12080}
12081
12082func (s *ProductShippingWeight) MarshalJSON() ([]byte, error) {
12083	type NoMethod ProductShippingWeight
12084	raw := NoMethod(*s)
12085	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12086}
12087
12088func (s *ProductShippingWeight) UnmarshalJSON(data []byte) error {
12089	type NoMethod ProductShippingWeight
12090	var s1 struct {
12091		Value gensupport.JSONFloat64 `json:"value"`
12092		*NoMethod
12093	}
12094	s1.NoMethod = (*NoMethod)(s)
12095	if err := json.Unmarshal(data, &s1); err != nil {
12096		return err
12097	}
12098	s.Value = float64(s1.Value)
12099	return nil
12100}
12101
12102// ProductStatus: The status of a product, i.e., information about a
12103// product computed asynchronously.
12104type ProductStatus struct {
12105	// CreationDate: Date on which the item has been created, in ISO 8601
12106	// format.
12107	CreationDate string `json:"creationDate,omitempty"`
12108
12109	// DestinationStatuses: The intended destinations for the product.
12110	DestinationStatuses []*ProductStatusDestinationStatus `json:"destinationStatuses,omitempty"`
12111
12112	// GoogleExpirationDate: Date on which the item expires in Google
12113	// Shopping, in ISO 8601 format.
12114	GoogleExpirationDate string `json:"googleExpirationDate,omitempty"`
12115
12116	// ItemLevelIssues: A list of all issues associated with the product.
12117	ItemLevelIssues []*ProductStatusItemLevelIssue `json:"itemLevelIssues,omitempty"`
12118
12119	// Kind: Identifies what kind of resource this is. Value: the fixed
12120	// string "content#productStatus"
12121	Kind string `json:"kind,omitempty"`
12122
12123	// LastUpdateDate: Date on which the item has been last updated, in ISO
12124	// 8601 format.
12125	LastUpdateDate string `json:"lastUpdateDate,omitempty"`
12126
12127	// Link: The link to the product.
12128	Link string `json:"link,omitempty"`
12129
12130	// ProductId: The ID of the product for which status is reported.
12131	ProductId string `json:"productId,omitempty"`
12132
12133	// Title: The title of the product.
12134	Title string `json:"title,omitempty"`
12135
12136	// ServerResponse contains the HTTP response code and headers from the
12137	// server.
12138	googleapi.ServerResponse `json:"-"`
12139
12140	// ForceSendFields is a list of field names (e.g. "CreationDate") to
12141	// unconditionally include in API requests. By default, fields with
12142	// empty or default values are omitted from API requests. However, any
12143	// non-pointer, non-interface field appearing in ForceSendFields will be
12144	// sent to the server regardless of whether the field is empty or not.
12145	// This may be used to include empty fields in Patch requests.
12146	ForceSendFields []string `json:"-"`
12147
12148	// NullFields is a list of field names (e.g. "CreationDate") to include
12149	// in API requests with the JSON null value. By default, fields with
12150	// empty values are omitted from API requests. However, any field with
12151	// an empty value appearing in NullFields will be sent to the server as
12152	// null. It is an error if a field in this list has a non-empty value.
12153	// This may be used to include null fields in Patch requests.
12154	NullFields []string `json:"-"`
12155}
12156
12157func (s *ProductStatus) MarshalJSON() ([]byte, error) {
12158	type NoMethod ProductStatus
12159	raw := NoMethod(*s)
12160	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12161}
12162
12163type ProductStatusDestinationStatus struct {
12164	// ApprovedCountries: List of country codes (ISO 3166-1 alpha-2) where
12165	// the offer is approved.
12166	ApprovedCountries []string `json:"approvedCountries,omitempty"`
12167
12168	// Destination: The name of the destination
12169	Destination string `json:"destination,omitempty"`
12170
12171	// DisapprovedCountries: List of country codes (ISO 3166-1 alpha-2)
12172	// where the offer is disapproved.
12173	DisapprovedCountries []string `json:"disapprovedCountries,omitempty"`
12174
12175	// PendingCountries: List of country codes (ISO 3166-1 alpha-2) where
12176	// the offer is pending approval.
12177	PendingCountries []string `json:"pendingCountries,omitempty"`
12178
12179	// Status: Destination approval status in `targetCountry` of the offer.
12180	Status string `json:"status,omitempty"`
12181
12182	// ForceSendFields is a list of field names (e.g. "ApprovedCountries")
12183	// to unconditionally include in API requests. By default, fields with
12184	// empty or default values are omitted from API requests. However, any
12185	// non-pointer, non-interface field appearing in ForceSendFields will be
12186	// sent to the server regardless of whether the field is empty or not.
12187	// This may be used to include empty fields in Patch requests.
12188	ForceSendFields []string `json:"-"`
12189
12190	// NullFields is a list of field names (e.g. "ApprovedCountries") to
12191	// include in API requests with the JSON null value. By default, fields
12192	// with empty values are omitted from API requests. However, any field
12193	// with an empty value appearing in NullFields will be sent to the
12194	// server as null. It is an error if a field in this list has a
12195	// non-empty value. This may be used to include null fields in Patch
12196	// requests.
12197	NullFields []string `json:"-"`
12198}
12199
12200func (s *ProductStatusDestinationStatus) MarshalJSON() ([]byte, error) {
12201	type NoMethod ProductStatusDestinationStatus
12202	raw := NoMethod(*s)
12203	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12204}
12205
12206type ProductStatusItemLevelIssue struct {
12207	// ApplicableCountries: List of country codes (ISO 3166-1 alpha-2) where
12208	// issue applies to the offer.
12209	ApplicableCountries []string `json:"applicableCountries,omitempty"`
12210
12211	// AttributeName: The attribute's name, if the issue is caused by a
12212	// single attribute.
12213	AttributeName string `json:"attributeName,omitempty"`
12214
12215	// Code: The error code of the issue.
12216	Code string `json:"code,omitempty"`
12217
12218	// Description: A short issue description in English.
12219	Description string `json:"description,omitempty"`
12220
12221	// Destination: The destination the issue applies to.
12222	Destination string `json:"destination,omitempty"`
12223
12224	// Detail: A detailed issue description in English.
12225	Detail string `json:"detail,omitempty"`
12226
12227	// Documentation: The URL of a web page to help with resolving this
12228	// issue.
12229	Documentation string `json:"documentation,omitempty"`
12230
12231	// Resolution: Whether the issue can be resolved by the merchant.
12232	Resolution string `json:"resolution,omitempty"`
12233
12234	// Servability: How this issue affects serving of the offer.
12235	Servability string `json:"servability,omitempty"`
12236
12237	// ForceSendFields is a list of field names (e.g. "ApplicableCountries")
12238	// to unconditionally include in API requests. By default, fields with
12239	// empty or default values are omitted from API requests. However, any
12240	// non-pointer, non-interface field appearing in ForceSendFields will be
12241	// sent to the server regardless of whether the field is empty or not.
12242	// This may be used to include empty fields in Patch requests.
12243	ForceSendFields []string `json:"-"`
12244
12245	// NullFields is a list of field names (e.g. "ApplicableCountries") to
12246	// include in API requests with the JSON null value. By default, fields
12247	// with empty values are omitted from API requests. However, any field
12248	// with an empty value appearing in NullFields will be sent to the
12249	// server as null. It is an error if a field in this list has a
12250	// non-empty value. This may be used to include null fields in Patch
12251	// requests.
12252	NullFields []string `json:"-"`
12253}
12254
12255func (s *ProductStatusItemLevelIssue) MarshalJSON() ([]byte, error) {
12256	type NoMethod ProductStatusItemLevelIssue
12257	raw := NoMethod(*s)
12258	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12259}
12260
12261type ProductSubscriptionCost struct {
12262	// Amount: The amount the buyer has to pay per subscription period.
12263	Amount *Price `json:"amount,omitempty"`
12264
12265	// Period: The type of subscription period.
12266	Period string `json:"period,omitempty"`
12267
12268	// PeriodLength: The number of subscription periods the buyer has to
12269	// pay.
12270	PeriodLength int64 `json:"periodLength,omitempty,string"`
12271
12272	// ForceSendFields is a list of field names (e.g. "Amount") to
12273	// unconditionally include in API requests. By default, fields with
12274	// empty or default values are omitted from API requests. However, any
12275	// non-pointer, non-interface field appearing in ForceSendFields will be
12276	// sent to the server regardless of whether the field is empty or not.
12277	// This may be used to include empty fields in Patch requests.
12278	ForceSendFields []string `json:"-"`
12279
12280	// NullFields is a list of field names (e.g. "Amount") to include in API
12281	// requests with the JSON null value. By default, fields with empty
12282	// values are omitted from API requests. However, any field with an
12283	// empty value appearing in NullFields will be sent to the server as
12284	// null. It is an error if a field in this list has a non-empty value.
12285	// This may be used to include null fields in Patch requests.
12286	NullFields []string `json:"-"`
12287}
12288
12289func (s *ProductSubscriptionCost) MarshalJSON() ([]byte, error) {
12290	type NoMethod ProductSubscriptionCost
12291	raw := NoMethod(*s)
12292	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12293}
12294
12295type ProductTax struct {
12296	// Country: The country within which the item is taxed, specified as a
12297	// CLDR territory code.
12298	Country string `json:"country,omitempty"`
12299
12300	// LocationId: The numeric ID of a location that the tax rate applies to
12301	// as defined in the AdWords API.
12302	LocationId int64 `json:"locationId,omitempty,string"`
12303
12304	// PostalCode: The postal code range that the tax rate applies to,
12305	// represented by a ZIP code, a ZIP code prefix using * wildcard, a
12306	// range between two ZIP codes or two ZIP code prefixes of equal length.
12307	// Examples: 94114, 94*, 94002-95460, 94*-95*.
12308	PostalCode string `json:"postalCode,omitempty"`
12309
12310	// Rate: The percentage of tax rate that applies to the item price.
12311	Rate float64 `json:"rate,omitempty"`
12312
12313	// Region: The geographic region to which the tax rate applies.
12314	Region string `json:"region,omitempty"`
12315
12316	// TaxShip: Should be set to true if tax is charged on shipping.
12317	TaxShip bool `json:"taxShip,omitempty"`
12318
12319	// ForceSendFields is a list of field names (e.g. "Country") to
12320	// unconditionally include in API requests. By default, fields with
12321	// empty or default values are omitted from API requests. However, any
12322	// non-pointer, non-interface field appearing in ForceSendFields will be
12323	// sent to the server regardless of whether the field is empty or not.
12324	// This may be used to include empty fields in Patch requests.
12325	ForceSendFields []string `json:"-"`
12326
12327	// NullFields is a list of field names (e.g. "Country") to include in
12328	// API requests with the JSON null value. By default, fields with empty
12329	// values are omitted from API requests. However, any field with an
12330	// empty value appearing in NullFields will be sent to the server as
12331	// null. It is an error if a field in this list has a non-empty value.
12332	// This may be used to include null fields in Patch requests.
12333	NullFields []string `json:"-"`
12334}
12335
12336func (s *ProductTax) MarshalJSON() ([]byte, error) {
12337	type NoMethod ProductTax
12338	raw := NoMethod(*s)
12339	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12340}
12341
12342func (s *ProductTax) UnmarshalJSON(data []byte) error {
12343	type NoMethod ProductTax
12344	var s1 struct {
12345		Rate gensupport.JSONFloat64 `json:"rate"`
12346		*NoMethod
12347	}
12348	s1.NoMethod = (*NoMethod)(s)
12349	if err := json.Unmarshal(data, &s1); err != nil {
12350		return err
12351	}
12352	s.Rate = float64(s1.Rate)
12353	return nil
12354}
12355
12356type ProductUnitPricingBaseMeasure struct {
12357	// Unit: The unit of the denominator.
12358	Unit string `json:"unit,omitempty"`
12359
12360	// Value: The denominator of the unit price.
12361	Value int64 `json:"value,omitempty,string"`
12362
12363	// ForceSendFields is a list of field names (e.g. "Unit") to
12364	// unconditionally include in API requests. By default, fields with
12365	// empty or default values are omitted from API requests. However, any
12366	// non-pointer, non-interface field appearing in ForceSendFields will be
12367	// sent to the server regardless of whether the field is empty or not.
12368	// This may be used to include empty fields in Patch requests.
12369	ForceSendFields []string `json:"-"`
12370
12371	// NullFields is a list of field names (e.g. "Unit") to include in API
12372	// requests with the JSON null value. By default, fields with empty
12373	// values are omitted from API requests. However, any field with an
12374	// empty value appearing in NullFields will be sent to the server as
12375	// null. It is an error if a field in this list has a non-empty value.
12376	// This may be used to include null fields in Patch requests.
12377	NullFields []string `json:"-"`
12378}
12379
12380func (s *ProductUnitPricingBaseMeasure) MarshalJSON() ([]byte, error) {
12381	type NoMethod ProductUnitPricingBaseMeasure
12382	raw := NoMethod(*s)
12383	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12384}
12385
12386type ProductUnitPricingMeasure struct {
12387	// Unit: The unit of the measure.
12388	Unit string `json:"unit,omitempty"`
12389
12390	// Value: The measure of an item.
12391	Value float64 `json:"value,omitempty"`
12392
12393	// ForceSendFields is a list of field names (e.g. "Unit") to
12394	// unconditionally include in API requests. By default, fields with
12395	// empty or default values are omitted from API requests. However, any
12396	// non-pointer, non-interface field appearing in ForceSendFields will be
12397	// sent to the server regardless of whether the field is empty or not.
12398	// This may be used to include empty fields in Patch requests.
12399	ForceSendFields []string `json:"-"`
12400
12401	// NullFields is a list of field names (e.g. "Unit") to include in API
12402	// requests with the JSON null value. By default, fields with empty
12403	// values are omitted from API requests. However, any field with an
12404	// empty value appearing in NullFields will be sent to the server as
12405	// null. It is an error if a field in this list has a non-empty value.
12406	// This may be used to include null fields in Patch requests.
12407	NullFields []string `json:"-"`
12408}
12409
12410func (s *ProductUnitPricingMeasure) MarshalJSON() ([]byte, error) {
12411	type NoMethod ProductUnitPricingMeasure
12412	raw := NoMethod(*s)
12413	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12414}
12415
12416func (s *ProductUnitPricingMeasure) UnmarshalJSON(data []byte) error {
12417	type NoMethod ProductUnitPricingMeasure
12418	var s1 struct {
12419		Value gensupport.JSONFloat64 `json:"value"`
12420		*NoMethod
12421	}
12422	s1.NoMethod = (*NoMethod)(s)
12423	if err := json.Unmarshal(data, &s1); err != nil {
12424		return err
12425	}
12426	s.Value = float64(s1.Value)
12427	return nil
12428}
12429
12430type ProductWeight struct {
12431	// Unit: Required. The weight unit. Acceptable values are: - "g" -
12432	// "kg" - "oz" - "lb"
12433	Unit string `json:"unit,omitempty"`
12434
12435	// Value: Required. The weight represented as a number. The weight can
12436	// have a maximum precision of four decimal places.
12437	Value float64 `json:"value,omitempty"`
12438
12439	// ForceSendFields is a list of field names (e.g. "Unit") to
12440	// unconditionally include in API requests. By default, fields with
12441	// empty or default values are omitted from API requests. However, any
12442	// non-pointer, non-interface field appearing in ForceSendFields will be
12443	// sent to the server regardless of whether the field is empty or not.
12444	// This may be used to include empty fields in Patch requests.
12445	ForceSendFields []string `json:"-"`
12446
12447	// NullFields is a list of field names (e.g. "Unit") to include in API
12448	// requests with the JSON null value. By default, fields with empty
12449	// values are omitted from API requests. However, any field with an
12450	// empty value appearing in NullFields will be sent to the server as
12451	// null. It is an error if a field in this list has a non-empty value.
12452	// This may be used to include null fields in Patch requests.
12453	NullFields []string `json:"-"`
12454}
12455
12456func (s *ProductWeight) MarshalJSON() ([]byte, error) {
12457	type NoMethod ProductWeight
12458	raw := NoMethod(*s)
12459	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12460}
12461
12462func (s *ProductWeight) UnmarshalJSON(data []byte) error {
12463	type NoMethod ProductWeight
12464	var s1 struct {
12465		Value gensupport.JSONFloat64 `json:"value"`
12466		*NoMethod
12467	}
12468	s1.NoMethod = (*NoMethod)(s)
12469	if err := json.Unmarshal(data, &s1); err != nil {
12470		return err
12471	}
12472	s.Value = float64(s1.Value)
12473	return nil
12474}
12475
12476type ProductsCustomBatchRequest struct {
12477	// Entries: The request entries to be processed in the batch.
12478	Entries []*ProductsCustomBatchRequestEntry `json:"entries,omitempty"`
12479
12480	// ForceSendFields is a list of field names (e.g. "Entries") to
12481	// unconditionally include in API requests. By default, fields with
12482	// empty or default values are omitted from API requests. However, any
12483	// non-pointer, non-interface field appearing in ForceSendFields will be
12484	// sent to the server regardless of whether the field is empty or not.
12485	// This may be used to include empty fields in Patch requests.
12486	ForceSendFields []string `json:"-"`
12487
12488	// NullFields is a list of field names (e.g. "Entries") to include in
12489	// API requests with the JSON null value. By default, fields with empty
12490	// values are omitted from API requests. However, any field with an
12491	// empty value appearing in NullFields will be sent to the server as
12492	// null. It is an error if a field in this list has a non-empty value.
12493	// This may be used to include null fields in Patch requests.
12494	NullFields []string `json:"-"`
12495}
12496
12497func (s *ProductsCustomBatchRequest) MarshalJSON() ([]byte, error) {
12498	type NoMethod ProductsCustomBatchRequest
12499	raw := NoMethod(*s)
12500	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12501}
12502
12503// ProductsCustomBatchRequestEntry: A batch entry encoding a single
12504// non-batch products request.
12505type ProductsCustomBatchRequestEntry struct {
12506	// BatchId: An entry ID, unique within the batch request.
12507	BatchId int64 `json:"batchId,omitempty"`
12508
12509	// FeedId: The Content API Supplemental Feed ID. If present then product
12510	// insertion or deletion applies to a supplemental feed instead of
12511	// primary Content API feed.
12512	FeedId uint64 `json:"feedId,omitempty,string"`
12513
12514	// MerchantId: The ID of the managing account.
12515	MerchantId uint64 `json:"merchantId,omitempty,string"`
12516
12517	// Method: The method of the batch entry. Acceptable values are: -
12518	// "delete" - "get" - "insert" - "update"
12519	Method string `json:"method,omitempty"`
12520
12521	// Product: The product to insert or update. Only required if the method
12522	// is `insert` or `update`. If the `update` method is used with
12523	// `updateMask` only to delete a field, then this isn't required. For
12524	// example, setting `salePrice` on the `updateMask` and not providing a
12525	// `product` will result in an existing sale price on the product
12526	// specified by `productId` being deleted.
12527	Product *Product `json:"product,omitempty"`
12528
12529	// ProductId: The ID of the product to get or mutate. Only defined if
12530	// the method is `get`, `delete`, or `update`.
12531	ProductId string `json:"productId,omitempty"`
12532
12533	// UpdateMask: The comma-separated list of product attributes to be
12534	// updated. Example: "title,salePrice". Attributes specified in the
12535	// update mask without a value specified in the body will be deleted
12536	// from the product. Only top-level product attributes can be updated.
12537	// If not defined, product attributes with set values will be updated
12538	// and other attributes will stay unchanged. Only defined if the method
12539	// is `update`.
12540	UpdateMask string `json:"updateMask,omitempty"`
12541
12542	// ForceSendFields is a list of field names (e.g. "BatchId") to
12543	// unconditionally include in API requests. By default, fields with
12544	// empty or default values are omitted from API requests. However, any
12545	// non-pointer, non-interface field appearing in ForceSendFields will be
12546	// sent to the server regardless of whether the field is empty or not.
12547	// This may be used to include empty fields in Patch requests.
12548	ForceSendFields []string `json:"-"`
12549
12550	// NullFields is a list of field names (e.g. "BatchId") to include in
12551	// API requests with the JSON null value. By default, fields with empty
12552	// values are omitted from API requests. However, any field with an
12553	// empty value appearing in NullFields will be sent to the server as
12554	// null. It is an error if a field in this list has a non-empty value.
12555	// This may be used to include null fields in Patch requests.
12556	NullFields []string `json:"-"`
12557}
12558
12559func (s *ProductsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
12560	type NoMethod ProductsCustomBatchRequestEntry
12561	raw := NoMethod(*s)
12562	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12563}
12564
12565type ProductsCustomBatchResponse struct {
12566	// Entries: The result of the execution of the batch requests.
12567	Entries []*ProductsCustomBatchResponseEntry `json:"entries,omitempty"`
12568
12569	// Kind: Identifies what kind of resource this is. Value: the fixed
12570	// string "content#productsCustomBatchResponse".
12571	Kind string `json:"kind,omitempty"`
12572
12573	// ServerResponse contains the HTTP response code and headers from the
12574	// server.
12575	googleapi.ServerResponse `json:"-"`
12576
12577	// ForceSendFields is a list of field names (e.g. "Entries") to
12578	// unconditionally include in API requests. By default, fields with
12579	// empty or default values are omitted from API requests. However, any
12580	// non-pointer, non-interface field appearing in ForceSendFields will be
12581	// sent to the server regardless of whether the field is empty or not.
12582	// This may be used to include empty fields in Patch requests.
12583	ForceSendFields []string `json:"-"`
12584
12585	// NullFields is a list of field names (e.g. "Entries") to include in
12586	// API requests with the JSON null value. By default, fields with empty
12587	// values are omitted from API requests. However, any field with an
12588	// empty value appearing in NullFields will be sent to the server as
12589	// null. It is an error if a field in this list has a non-empty value.
12590	// This may be used to include null fields in Patch requests.
12591	NullFields []string `json:"-"`
12592}
12593
12594func (s *ProductsCustomBatchResponse) MarshalJSON() ([]byte, error) {
12595	type NoMethod ProductsCustomBatchResponse
12596	raw := NoMethod(*s)
12597	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12598}
12599
12600// ProductsCustomBatchResponseEntry: A batch entry encoding a single
12601// non-batch products response.
12602type ProductsCustomBatchResponseEntry struct {
12603	// BatchId: The ID of the request entry this entry responds to.
12604	BatchId int64 `json:"batchId,omitempty"`
12605
12606	// Errors: A list of errors defined if and only if the request failed.
12607	Errors *Errors `json:"errors,omitempty"`
12608
12609	// Kind: Identifies what kind of resource this is. Value: the fixed
12610	// string "content#productsCustomBatchResponseEntry"
12611	Kind string `json:"kind,omitempty"`
12612
12613	// Product: The inserted product. Only defined if the method is `insert`
12614	// and if the request was successful.
12615	Product *Product `json:"product,omitempty"`
12616
12617	// ForceSendFields is a list of field names (e.g. "BatchId") to
12618	// unconditionally include in API requests. By default, fields with
12619	// empty or default values are omitted from API requests. However, any
12620	// non-pointer, non-interface field appearing in ForceSendFields will be
12621	// sent to the server regardless of whether the field is empty or not.
12622	// This may be used to include empty fields in Patch requests.
12623	ForceSendFields []string `json:"-"`
12624
12625	// NullFields is a list of field names (e.g. "BatchId") to include in
12626	// API requests with the JSON null value. By default, fields with empty
12627	// values are omitted from API requests. However, any field with an
12628	// empty value appearing in NullFields will be sent to the server as
12629	// null. It is an error if a field in this list has a non-empty value.
12630	// This may be used to include null fields in Patch requests.
12631	NullFields []string `json:"-"`
12632}
12633
12634func (s *ProductsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
12635	type NoMethod ProductsCustomBatchResponseEntry
12636	raw := NoMethod(*s)
12637	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12638}
12639
12640type ProductsListResponse struct {
12641	// Kind: Identifies what kind of resource this is. Value: the fixed
12642	// string "content#productsListResponse".
12643	Kind string `json:"kind,omitempty"`
12644
12645	// NextPageToken: The token for the retrieval of the next page of
12646	// products.
12647	NextPageToken string `json:"nextPageToken,omitempty"`
12648
12649	Resources []*Product `json:"resources,omitempty"`
12650
12651	// ServerResponse contains the HTTP response code and headers from the
12652	// server.
12653	googleapi.ServerResponse `json:"-"`
12654
12655	// ForceSendFields is a list of field names (e.g. "Kind") to
12656	// unconditionally include in API requests. By default, fields with
12657	// empty or default values are omitted from API requests. However, any
12658	// non-pointer, non-interface field appearing in ForceSendFields will be
12659	// sent to the server regardless of whether the field is empty or not.
12660	// This may be used to include empty fields in Patch requests.
12661	ForceSendFields []string `json:"-"`
12662
12663	// NullFields is a list of field names (e.g. "Kind") to include in API
12664	// requests with the JSON null value. By default, fields with empty
12665	// values are omitted from API requests. However, any field with an
12666	// empty value appearing in NullFields will be sent to the server as
12667	// null. It is an error if a field in this list has a non-empty value.
12668	// This may be used to include null fields in Patch requests.
12669	NullFields []string `json:"-"`
12670}
12671
12672func (s *ProductsListResponse) MarshalJSON() ([]byte, error) {
12673	type NoMethod ProductsListResponse
12674	raw := NoMethod(*s)
12675	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12676}
12677
12678type ProductstatusesCustomBatchRequest struct {
12679	// Entries: The request entries to be processed in the batch.
12680	Entries []*ProductstatusesCustomBatchRequestEntry `json:"entries,omitempty"`
12681
12682	// ForceSendFields is a list of field names (e.g. "Entries") to
12683	// unconditionally include in API requests. By default, fields with
12684	// empty or default values are omitted from API requests. However, any
12685	// non-pointer, non-interface field appearing in ForceSendFields will be
12686	// sent to the server regardless of whether the field is empty or not.
12687	// This may be used to include empty fields in Patch requests.
12688	ForceSendFields []string `json:"-"`
12689
12690	// NullFields is a list of field names (e.g. "Entries") to include in
12691	// API requests with the JSON null value. By default, fields with empty
12692	// values are omitted from API requests. However, any field with an
12693	// empty value appearing in NullFields will be sent to the server as
12694	// null. It is an error if a field in this list has a non-empty value.
12695	// This may be used to include null fields in Patch requests.
12696	NullFields []string `json:"-"`
12697}
12698
12699func (s *ProductstatusesCustomBatchRequest) MarshalJSON() ([]byte, error) {
12700	type NoMethod ProductstatusesCustomBatchRequest
12701	raw := NoMethod(*s)
12702	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12703}
12704
12705// ProductstatusesCustomBatchRequestEntry: A batch entry encoding a
12706// single non-batch productstatuses request.
12707type ProductstatusesCustomBatchRequestEntry struct {
12708	// BatchId: An entry ID, unique within the batch request.
12709	BatchId int64 `json:"batchId,omitempty"`
12710
12711	// Destinations: If set, only issues for the specified destinations are
12712	// returned, otherwise only issues for the Shopping destination.
12713	Destinations []string `json:"destinations,omitempty"`
12714
12715	IncludeAttributes bool `json:"includeAttributes,omitempty"`
12716
12717	// MerchantId: The ID of the managing account.
12718	MerchantId uint64 `json:"merchantId,omitempty,string"`
12719
12720	// Method: The method of the batch entry. Acceptable values are: -
12721	// "get"
12722	Method string `json:"method,omitempty"`
12723
12724	// ProductId: The ID of the product whose status to get.
12725	ProductId string `json:"productId,omitempty"`
12726
12727	// ForceSendFields is a list of field names (e.g. "BatchId") to
12728	// unconditionally include in API requests. By default, fields with
12729	// empty or default values are omitted from API requests. However, any
12730	// non-pointer, non-interface field appearing in ForceSendFields will be
12731	// sent to the server regardless of whether the field is empty or not.
12732	// This may be used to include empty fields in Patch requests.
12733	ForceSendFields []string `json:"-"`
12734
12735	// NullFields is a list of field names (e.g. "BatchId") to include in
12736	// API requests with the JSON null value. By default, fields with empty
12737	// values are omitted from API requests. However, any field with an
12738	// empty value appearing in NullFields will be sent to the server as
12739	// null. It is an error if a field in this list has a non-empty value.
12740	// This may be used to include null fields in Patch requests.
12741	NullFields []string `json:"-"`
12742}
12743
12744func (s *ProductstatusesCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
12745	type NoMethod ProductstatusesCustomBatchRequestEntry
12746	raw := NoMethod(*s)
12747	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12748}
12749
12750type ProductstatusesCustomBatchResponse struct {
12751	// Entries: The result of the execution of the batch requests.
12752	Entries []*ProductstatusesCustomBatchResponseEntry `json:"entries,omitempty"`
12753
12754	// Kind: Identifies what kind of resource this is. Value: the fixed
12755	// string "content#productstatusesCustomBatchResponse".
12756	Kind string `json:"kind,omitempty"`
12757
12758	// ServerResponse contains the HTTP response code and headers from the
12759	// server.
12760	googleapi.ServerResponse `json:"-"`
12761
12762	// ForceSendFields is a list of field names (e.g. "Entries") to
12763	// unconditionally include in API requests. By default, fields with
12764	// empty or default values are omitted from API requests. However, any
12765	// non-pointer, non-interface field appearing in ForceSendFields will be
12766	// sent to the server regardless of whether the field is empty or not.
12767	// This may be used to include empty fields in Patch requests.
12768	ForceSendFields []string `json:"-"`
12769
12770	// NullFields is a list of field names (e.g. "Entries") to include in
12771	// API requests with the JSON null value. By default, fields with empty
12772	// values are omitted from API requests. However, any field with an
12773	// empty value appearing in NullFields will be sent to the server as
12774	// null. It is an error if a field in this list has a non-empty value.
12775	// This may be used to include null fields in Patch requests.
12776	NullFields []string `json:"-"`
12777}
12778
12779func (s *ProductstatusesCustomBatchResponse) MarshalJSON() ([]byte, error) {
12780	type NoMethod ProductstatusesCustomBatchResponse
12781	raw := NoMethod(*s)
12782	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12783}
12784
12785// ProductstatusesCustomBatchResponseEntry: A batch entry encoding a
12786// single non-batch productstatuses response.
12787type ProductstatusesCustomBatchResponseEntry struct {
12788	// BatchId: The ID of the request entry this entry responds to.
12789	BatchId int64 `json:"batchId,omitempty"`
12790
12791	// Errors: A list of errors, if the request failed.
12792	Errors *Errors `json:"errors,omitempty"`
12793
12794	// Kind: Identifies what kind of resource this is. Value: the fixed
12795	// string "content#productstatusesCustomBatchResponseEntry"
12796	Kind string `json:"kind,omitempty"`
12797
12798	// ProductStatus: The requested product status. Only defined if the
12799	// request was successful.
12800	ProductStatus *ProductStatus `json:"productStatus,omitempty"`
12801
12802	// ForceSendFields is a list of field names (e.g. "BatchId") to
12803	// unconditionally include in API requests. By default, fields with
12804	// empty or default values are omitted from API requests. However, any
12805	// non-pointer, non-interface field appearing in ForceSendFields will be
12806	// sent to the server regardless of whether the field is empty or not.
12807	// This may be used to include empty fields in Patch requests.
12808	ForceSendFields []string `json:"-"`
12809
12810	// NullFields is a list of field names (e.g. "BatchId") to include in
12811	// API requests with the JSON null value. By default, fields with empty
12812	// values are omitted from API requests. However, any field with an
12813	// empty value appearing in NullFields will be sent to the server as
12814	// null. It is an error if a field in this list has a non-empty value.
12815	// This may be used to include null fields in Patch requests.
12816	NullFields []string `json:"-"`
12817}
12818
12819func (s *ProductstatusesCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
12820	type NoMethod ProductstatusesCustomBatchResponseEntry
12821	raw := NoMethod(*s)
12822	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12823}
12824
12825type ProductstatusesListResponse struct {
12826	// Kind: Identifies what kind of resource this is. Value: the fixed
12827	// string "content#productstatusesListResponse".
12828	Kind string `json:"kind,omitempty"`
12829
12830	// NextPageToken: The token for the retrieval of the next page of
12831	// products statuses.
12832	NextPageToken string `json:"nextPageToken,omitempty"`
12833
12834	Resources []*ProductStatus `json:"resources,omitempty"`
12835
12836	// ServerResponse contains the HTTP response code and headers from the
12837	// server.
12838	googleapi.ServerResponse `json:"-"`
12839
12840	// ForceSendFields is a list of field names (e.g. "Kind") to
12841	// unconditionally include in API requests. By default, fields with
12842	// empty or default values are omitted from API requests. However, any
12843	// non-pointer, non-interface field appearing in ForceSendFields will be
12844	// sent to the server regardless of whether the field is empty or not.
12845	// This may be used to include empty fields in Patch requests.
12846	ForceSendFields []string `json:"-"`
12847
12848	// NullFields is a list of field names (e.g. "Kind") to include in API
12849	// requests with the JSON null value. By default, fields with empty
12850	// values are omitted from API requests. However, any field with an
12851	// empty value appearing in NullFields will be sent to the server as
12852	// null. It is an error if a field in this list has a non-empty value.
12853	// This may be used to include null fields in Patch requests.
12854	NullFields []string `json:"-"`
12855}
12856
12857func (s *ProductstatusesListResponse) MarshalJSON() ([]byte, error) {
12858	type NoMethod ProductstatusesListResponse
12859	raw := NoMethod(*s)
12860	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12861}
12862
12863// Promotion:  The Promotions feature is currently in alpha and is not
12864// yet publicly available via Content API for Shopping. This
12865// documentation is provided for reference only may be subject to
12866// change. Represents a promotion. See the following articles for more
12867// details. * Promotions feed specification
12868// (https://support.google.com/merchants/answer/2906014) * Local
12869// promotions feed specification
12870// (https://support.google.com/merchants/answer/10146130) * Promotions
12871// on Buy on Google product data specification
12872// (https://support.google.com/merchants/answer/9173673)
12873type Promotion struct {
12874	// Brand: Product filter by brand for the promotion.
12875	Brand []string `json:"brand,omitempty"`
12876
12877	// BrandExclusion: Product filter by brand exclusion for the promotion.
12878	BrandExclusion []string `json:"brandExclusion,omitempty"`
12879
12880	// ContentLanguage: Required. The content language used as part of the
12881	// unique identifier.
12882	ContentLanguage string `json:"contentLanguage,omitempty"`
12883
12884	// CouponValueType: Required. Coupon value type for the promotion.
12885	//
12886	// Possible values:
12887	//   "COUPON_VALUE_TYPE_UNSPECIFIED" - Indicates that the coupon value
12888	// type is unspecified.
12889	//   "MONEY_OFF" - Money off coupon value type.
12890	//   "PERCENT_OFF" - Percent off coupon value type.
12891	//   "BUY_M_GET_N_MONEY_OFF" - Buy M quantity, get N money off coupon
12892	// value type. buy_this_quantity and get_this_quantity must be present.
12893	// money_off_amount must also be present.
12894	//   "BUY_M_GET_N_PERCENT_OFF" - Buy M quantity, get N percent off
12895	// coupon value type. buy_this_quantity and get_this_quantity must be
12896	// present. percent_off_percentage must also be present.
12897	//   "BUY_M_GET_MONEY_OFF" - Buy M quantity, get money off.
12898	// buy_this_quantity and money_off_amount must be present.
12899	//   "BUY_M_GET_PERCENT_OFF" - Buy M quantity, get money off.
12900	// buy_this_quantity and percent_off_percentage must be present.
12901	//   "FREE_GIFT" - Free gift with description only
12902	//   "FREE_GIFT_WITH_VALUE" - Free gift with value (description is
12903	// optional).
12904	//   "FREE_GIFT_WITH_ITEM_ID" - Free gift with item id (description is
12905	// optional).
12906	//   "FREE_SHIPPING_STANDARD" - Standard free shipping coupon value
12907	// type.
12908	//   "FREE_SHIPPING_OVERNIGHT" - Overnight free shipping coupon value
12909	// type.
12910	//   "FREE_SHIPPING_TWO_DAY" - Two day free shipping coupon value type.
12911	CouponValueType string `json:"couponValueType,omitempty"`
12912
12913	// FreeGiftDescription: Free gift description for the promotion.
12914	FreeGiftDescription string `json:"freeGiftDescription,omitempty"`
12915
12916	// FreeGiftItemId: Free gift item id for the promotion.
12917	FreeGiftItemId string `json:"freeGiftItemId,omitempty"`
12918
12919	// FreeGiftValue: Free gift value for the promotion.
12920	FreeGiftValue *PriceAmount `json:"freeGiftValue,omitempty"`
12921
12922	// GenericRedemptionCode: Generic redemption code for the promotion. To
12923	// be used with the above field.
12924	GenericRedemptionCode string `json:"genericRedemptionCode,omitempty"`
12925
12926	// GetThisQuantityDiscounted: The number of items discounted in the
12927	// promotion.
12928	GetThisQuantityDiscounted int64 `json:"getThisQuantityDiscounted,omitempty"`
12929
12930	// Id: Required. Output only. The REST promotion id to uniquely identify
12931	// the promotion. Content API methods that operate on promotions take
12932	// this as their promotionId parameter. The REST ID for a promotion is
12933	// of the form channel:contentLanguage:targetCountry:promotionId The
12934	// channel field will have a value of "online", "in_store", or
12935	// "online_in_store".
12936	Id string `json:"id,omitempty"`
12937
12938	// ItemGroupId: Product filter by item group id for the promotion.
12939	ItemGroupId []string `json:"itemGroupId,omitempty"`
12940
12941	// ItemGroupIdExclusion: Product filter by item group id exclusion for
12942	// the promotion.
12943	ItemGroupIdExclusion []string `json:"itemGroupIdExclusion,omitempty"`
12944
12945	// ItemId: Product filter by item id for the promotion.
12946	ItemId []string `json:"itemId,omitempty"`
12947
12948	// ItemIdExclusion: Product filter by item id exclusion for the
12949	// promotion.
12950	ItemIdExclusion []string `json:"itemIdExclusion,omitempty"`
12951
12952	// LimitQuantity: Maximum purchase quantity for the promotion.
12953	LimitQuantity int64 `json:"limitQuantity,omitempty"`
12954
12955	// LimitValue: Maximum purchase value for the promotion.
12956	LimitValue *PriceAmount `json:"limitValue,omitempty"`
12957
12958	// LongTitle: Long title for the promotion.
12959	LongTitle string `json:"longTitle,omitempty"`
12960
12961	// MinimumPurchaseAmount: Minimum purchase amount for the promotion.
12962	MinimumPurchaseAmount *PriceAmount `json:"minimumPurchaseAmount,omitempty"`
12963
12964	// MinimumPurchaseQuantity: Minimum purchase quantity for the promotion.
12965	MinimumPurchaseQuantity int64 `json:"minimumPurchaseQuantity,omitempty"`
12966
12967	// MoneyBudget: Promotion cost cap of the promotion.
12968	MoneyBudget *PriceAmount `json:"moneyBudget,omitempty"`
12969
12970	// MoneyOffAmount: The money off amount offered in the promotion.
12971	MoneyOffAmount *PriceAmount `json:"moneyOffAmount,omitempty"`
12972
12973	// OfferType: Required. Type of the promotion.
12974	//
12975	// Possible values:
12976	//   "OFFER_TYPE_UNSPECIFIED" - Unknown offer type.
12977	//   "NO_CODE" - Offer type without a code.
12978	//   "GENERIC_CODE" - Offer type with a code.
12979	OfferType string `json:"offerType,omitempty"`
12980
12981	// OrderLimit: Order limit for the promotion.
12982	OrderLimit int64 `json:"orderLimit,omitempty"`
12983
12984	// PercentOff: The percentage discount offered in the promotion.
12985	PercentOff int64 `json:"percentOff,omitempty"`
12986
12987	// ProductApplicability: Required. Applicability of the promotion to
12988	// either all products or only specific products.
12989	//
12990	// Possible values:
12991	//   "PRODUCT_APPLICABILITY_UNSPECIFIED" - Unknown product
12992	// applicability.
12993	//   "ALL_PRODUCTS" - Applicable to all products.
12994	//   "SPECIFIC_PRODUCTS" - Applicable to only a single product or list
12995	// of products.
12996	ProductApplicability string `json:"productApplicability,omitempty"`
12997
12998	// ProductType: Product filter by product type for the promotion.
12999	ProductType []string `json:"productType,omitempty"`
13000
13001	// ProductTypeExclusion: Product filter by product type exclusion for
13002	// the promotion.
13003	ProductTypeExclusion []string `json:"productTypeExclusion,omitempty"`
13004
13005	// PromotionDestinationIds: Destination ID for the promotion.
13006	PromotionDestinationIds []string `json:"promotionDestinationIds,omitempty"`
13007
13008	// PromotionDisplayDates: String representation of the promotion display
13009	// dates.
13010	PromotionDisplayDates string `json:"promotionDisplayDates,omitempty"`
13011
13012	// PromotionEffectiveDates: Required. String representation of the
13013	// promotion effective dates.
13014	PromotionEffectiveDates string `json:"promotionEffectiveDates,omitempty"`
13015
13016	// PromotionId: Required. The user provided promotion id to uniquely
13017	// identify the promotion.
13018	PromotionId string `json:"promotionId,omitempty"`
13019
13020	// RedemptionChannel: Required. Redemption channel for the promotion. At
13021	// least one channel is required.
13022	//
13023	// Possible values:
13024	//   "REDEMPTION_CHANNEL_UNSPECIFIED" - Indicates that the channel is
13025	// unspecified.
13026	//   "IN_STORE" - Indicates that the channel is in store.
13027	//   "ONLINE" - Indicates that the channel is online.
13028	RedemptionChannel []string `json:"redemptionChannel,omitempty"`
13029
13030	// ShippingServiceNames: Shipping service names for thse promotion.
13031	ShippingServiceNames []string `json:"shippingServiceNames,omitempty"`
13032
13033	// TargetCountry: Required. The target country used as part of the
13034	// unique identifier.
13035	TargetCountry string `json:"targetCountry,omitempty"`
13036
13037	// ServerResponse contains the HTTP response code and headers from the
13038	// server.
13039	googleapi.ServerResponse `json:"-"`
13040
13041	// ForceSendFields is a list of field names (e.g. "Brand") to
13042	// unconditionally include in API requests. By default, fields with
13043	// empty or default values are omitted from API requests. However, any
13044	// non-pointer, non-interface field appearing in ForceSendFields will be
13045	// sent to the server regardless of whether the field is empty or not.
13046	// This may be used to include empty fields in Patch requests.
13047	ForceSendFields []string `json:"-"`
13048
13049	// NullFields is a list of field names (e.g. "Brand") to include in API
13050	// requests with the JSON null value. By default, fields with empty
13051	// values are omitted from API requests. However, any field with an
13052	// empty value appearing in NullFields will be sent to the server as
13053	// null. It is an error if a field in this list has a non-empty value.
13054	// This may be used to include null fields in Patch requests.
13055	NullFields []string `json:"-"`
13056}
13057
13058func (s *Promotion) MarshalJSON() ([]byte, error) {
13059	type NoMethod Promotion
13060	raw := NoMethod(*s)
13061	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13062}
13063
13064// PubsubNotificationSettings: Settings for Pub/Sub notifications, all
13065// methods require that the caller is a direct user of the merchant
13066// center account.
13067type PubsubNotificationSettings struct {
13068	// CloudTopicName: Cloud pub/sub topic to which notifications are sent
13069	// (read-only).
13070	CloudTopicName string `json:"cloudTopicName,omitempty"`
13071
13072	// Kind: Identifies what kind of resource this is. Value: the fixed
13073	// string "content#pubsubNotificationSettings"
13074	Kind string `json:"kind,omitempty"`
13075
13076	// RegisteredEvents: List of event types. Acceptable values are: -
13077	// "orderPendingShipment"
13078	RegisteredEvents []string `json:"registeredEvents,omitempty"`
13079
13080	// ServerResponse contains the HTTP response code and headers from the
13081	// server.
13082	googleapi.ServerResponse `json:"-"`
13083
13084	// ForceSendFields is a list of field names (e.g. "CloudTopicName") to
13085	// unconditionally include in API requests. By default, fields with
13086	// empty or default values are omitted from API requests. However, any
13087	// non-pointer, non-interface field appearing in ForceSendFields will be
13088	// sent to the server regardless of whether the field is empty or not.
13089	// This may be used to include empty fields in Patch requests.
13090	ForceSendFields []string `json:"-"`
13091
13092	// NullFields is a list of field names (e.g. "CloudTopicName") to
13093	// include in API requests with the JSON null value. By default, fields
13094	// with empty values are omitted from API requests. However, any field
13095	// with an empty value appearing in NullFields will be sent to the
13096	// server as null. It is an error if a field in this list has a
13097	// non-empty value. This may be used to include null fields in Patch
13098	// requests.
13099	NullFields []string `json:"-"`
13100}
13101
13102func (s *PubsubNotificationSettings) MarshalJSON() ([]byte, error) {
13103	type NoMethod PubsubNotificationSettings
13104	raw := NoMethod(*s)
13105	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13106}
13107
13108type RateGroup struct {
13109	// ApplicableShippingLabels: A list of shipping labels defining the
13110	// products to which this rate group applies to. This is a disjunction:
13111	// only one of the labels has to match for the rate group to apply. May
13112	// only be empty for the last rate group of a service. Required.
13113	ApplicableShippingLabels []string `json:"applicableShippingLabels,omitempty"`
13114
13115	// CarrierRates: A list of carrier rates that can be referred to by
13116	// `mainTable` or `singleValue`.
13117	CarrierRates []*CarrierRate `json:"carrierRates,omitempty"`
13118
13119	// MainTable: A table defining the rate group, when `singleValue` is not
13120	// expressive enough. Can only be set if `singleValue` is not set.
13121	MainTable *Table `json:"mainTable,omitempty"`
13122
13123	// Name: Name of the rate group. Optional. If set has to be unique
13124	// within shipping service.
13125	Name string `json:"name,omitempty"`
13126
13127	// SingleValue: The value of the rate group (e.g. flat rate $10). Can
13128	// only be set if `mainTable` and `subtables` are not set.
13129	SingleValue *Value `json:"singleValue,omitempty"`
13130
13131	// Subtables: A list of subtables referred to by `mainTable`. Can only
13132	// be set if `mainTable` is set.
13133	Subtables []*Table `json:"subtables,omitempty"`
13134
13135	// ForceSendFields is a list of field names (e.g.
13136	// "ApplicableShippingLabels") to unconditionally include in API
13137	// requests. By default, fields with empty or default values are omitted
13138	// from API requests. However, any non-pointer, non-interface field
13139	// appearing in ForceSendFields will be sent to the server regardless of
13140	// whether the field is empty or not. This may be used to include empty
13141	// fields in Patch requests.
13142	ForceSendFields []string `json:"-"`
13143
13144	// NullFields is a list of field names (e.g. "ApplicableShippingLabels")
13145	// to include in API requests with the JSON null value. By default,
13146	// fields with empty values are omitted from API requests. However, any
13147	// field with an empty value appearing in NullFields will be sent to the
13148	// server as null. It is an error if a field in this list has a
13149	// non-empty value. This may be used to include null fields in Patch
13150	// requests.
13151	NullFields []string `json:"-"`
13152}
13153
13154func (s *RateGroup) MarshalJSON() ([]byte, error) {
13155	type NoMethod RateGroup
13156	raw := NoMethod(*s)
13157	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13158}
13159
13160type RefundReason struct {
13161	// Description: Description of the reason.
13162	Description string `json:"description,omitempty"`
13163
13164	// ReasonCode: Code of the refund reason. Acceptable values are: -
13165	// "adjustment" - "autoPostInternal" -
13166	// "autoPostInvalidBillingAddress" - "autoPostNoInventory" -
13167	// "autoPostPriceError" - "autoPostUndeliverableShippingAddress" -
13168	// "couponAbuse" - "courtesyAdjustment" - "customerCanceled" -
13169	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
13170	// - "customerSupportRequested" - "deliveredLateByCarrier" -
13171	// "deliveredTooLate" - "expiredItem" -
13172	// "failToPushOrderGoogleError" - "failToPushOrderMerchantError" -
13173	// "failToPushOrderMerchantFulfillmentError" -
13174	// "failToPushOrderToMerchant" -
13175	// "failToPushOrderToMerchantOutOfStock" - "feeAdjustment" -
13176	// "invalidCoupon" - "lateShipmentCredit" -
13177	// "malformedShippingAddress" - "merchantDidNotShipOnTime" -
13178	// "noInventory" - "orderTimeout" - "other" - "paymentAbuse" -
13179	// "paymentDeclined" - "priceAdjustment" - "priceError" -
13180	// "productArrivedDamaged" - "productNotAsDescribed" -
13181	// "promoReallocation" - "qualityNotAsExpected" -
13182	// "returnRefundAbuse" - "shippingCostAdjustment" -
13183	// "shippingPriceError" - "taxAdjustment" - "taxError" -
13184	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
13185	// "wrongProductShipped"
13186	ReasonCode string `json:"reasonCode,omitempty"`
13187
13188	// ForceSendFields is a list of field names (e.g. "Description") to
13189	// unconditionally include in API requests. By default, fields with
13190	// empty or default values are omitted from API requests. However, any
13191	// non-pointer, non-interface field appearing in ForceSendFields will be
13192	// sent to the server regardless of whether the field is empty or not.
13193	// This may be used to include empty fields in Patch requests.
13194	ForceSendFields []string `json:"-"`
13195
13196	// NullFields is a list of field names (e.g. "Description") to include
13197	// in API requests with the JSON null value. By default, fields with
13198	// empty values are omitted from API requests. However, any field with
13199	// an empty value appearing in NullFields will be sent to the server as
13200	// null. It is an error if a field in this list has a non-empty value.
13201	// This may be used to include null fields in Patch requests.
13202	NullFields []string `json:"-"`
13203}
13204
13205func (s *RefundReason) MarshalJSON() ([]byte, error) {
13206	type NoMethod RefundReason
13207	raw := NoMethod(*s)
13208	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13209}
13210
13211// Region: Represents a geographic region that you can use as a target
13212// with both the `RegionalInventory` and `ShippingSettings` services.
13213// You can define regions as collections of either postal codes or, in
13214// some countries, using predefined geotargets.
13215type Region struct {
13216	// DisplayName: The display name of the region.
13217	DisplayName string `json:"displayName,omitempty"`
13218
13219	// GeotargetArea: A list of geotargets that defines the region area.
13220	GeotargetArea *RegionGeoTargetArea `json:"geotargetArea,omitempty"`
13221
13222	// MerchantId: Output only. Immutable. Merchant that owns the region.
13223	MerchantId int64 `json:"merchantId,omitempty,string"`
13224
13225	// PostalCodeArea: A list of postal codes that defines the region area.
13226	PostalCodeArea *RegionPostalCodeArea `json:"postalCodeArea,omitempty"`
13227
13228	// RegionId: Output only. Immutable. The ID uniquely identifying each
13229	// region.
13230	RegionId string `json:"regionId,omitempty"`
13231
13232	// RegionalInventoryEligible: Output only. Indicates if the region is
13233	// eligible to use in the Regional Inventory configuration.
13234	RegionalInventoryEligible bool `json:"regionalInventoryEligible,omitempty"`
13235
13236	// ShippingEligible: Output only. Indicates if the region is eligible to
13237	// use in the Shipping Services configuration.
13238	ShippingEligible bool `json:"shippingEligible,omitempty"`
13239
13240	// ServerResponse contains the HTTP response code and headers from the
13241	// server.
13242	googleapi.ServerResponse `json:"-"`
13243
13244	// ForceSendFields is a list of field names (e.g. "DisplayName") to
13245	// unconditionally include in API requests. By default, fields with
13246	// empty or default values are omitted from API requests. However, any
13247	// non-pointer, non-interface field appearing in ForceSendFields will be
13248	// sent to the server regardless of whether the field is empty or not.
13249	// This may be used to include empty fields in Patch requests.
13250	ForceSendFields []string `json:"-"`
13251
13252	// NullFields is a list of field names (e.g. "DisplayName") to include
13253	// in API requests with the JSON null value. By default, fields with
13254	// empty values are omitted from API requests. However, any field with
13255	// an empty value appearing in NullFields will be sent to the server as
13256	// null. It is an error if a field in this list has a non-empty value.
13257	// This may be used to include null fields in Patch requests.
13258	NullFields []string `json:"-"`
13259}
13260
13261func (s *Region) MarshalJSON() ([]byte, error) {
13262	type NoMethod Region
13263	raw := NoMethod(*s)
13264	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13265}
13266
13267// RegionGeoTargetArea: A list of geotargets that defines the region
13268// area.
13269type RegionGeoTargetArea struct {
13270	// GeotargetCriteriaIds: Required. A non-empty list of location IDs
13271	// (https://developers.google.com/adwords/api/docs/appendix/geotargeting).
13272	// They must all be of the same location type (e.g., state).
13273	GeotargetCriteriaIds googleapi.Int64s `json:"geotargetCriteriaIds,omitempty"`
13274
13275	// ForceSendFields is a list of field names (e.g.
13276	// "GeotargetCriteriaIds") to unconditionally include in API requests.
13277	// By default, fields with empty or default values are omitted from API
13278	// requests. However, any non-pointer, non-interface field appearing in
13279	// ForceSendFields will be sent to the server regardless of whether the
13280	// field is empty or not. This may be used to include empty fields in
13281	// Patch requests.
13282	ForceSendFields []string `json:"-"`
13283
13284	// NullFields is a list of field names (e.g. "GeotargetCriteriaIds") to
13285	// include in API requests with the JSON null value. By default, fields
13286	// with empty values are omitted from API requests. However, any field
13287	// with an empty value appearing in NullFields will be sent to the
13288	// server as null. It is an error if a field in this list has a
13289	// non-empty value. This may be used to include null fields in Patch
13290	// requests.
13291	NullFields []string `json:"-"`
13292}
13293
13294func (s *RegionGeoTargetArea) MarshalJSON() ([]byte, error) {
13295	type NoMethod RegionGeoTargetArea
13296	raw := NoMethod(*s)
13297	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13298}
13299
13300// RegionPostalCodeArea: A list of postal codes that defines the region
13301// area. Note: All regions defined using postal codes are accessible via
13302// the account's `ShippingSettings.postalCodeGroups` resource.
13303type RegionPostalCodeArea struct {
13304	// PostalCodes: Required. A range of postal codes.
13305	PostalCodes []*RegionPostalCodeAreaPostalCodeRange `json:"postalCodes,omitempty"`
13306
13307	// RegionCode: Required. CLDR territory code or the country the postal
13308	// code group applies to.
13309	RegionCode string `json:"regionCode,omitempty"`
13310
13311	// ForceSendFields is a list of field names (e.g. "PostalCodes") to
13312	// unconditionally include in API requests. By default, fields with
13313	// empty or default values are omitted from API requests. However, any
13314	// non-pointer, non-interface field appearing in ForceSendFields will be
13315	// sent to the server regardless of whether the field is empty or not.
13316	// This may be used to include empty fields in Patch requests.
13317	ForceSendFields []string `json:"-"`
13318
13319	// NullFields is a list of field names (e.g. "PostalCodes") to include
13320	// in API requests with the JSON null value. By default, fields with
13321	// empty values are omitted from API requests. However, any field with
13322	// an empty value appearing in NullFields will be sent to the server as
13323	// null. It is an error if a field in this list has a non-empty value.
13324	// This may be used to include null fields in Patch requests.
13325	NullFields []string `json:"-"`
13326}
13327
13328func (s *RegionPostalCodeArea) MarshalJSON() ([]byte, error) {
13329	type NoMethod RegionPostalCodeArea
13330	raw := NoMethod(*s)
13331	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13332}
13333
13334// RegionPostalCodeAreaPostalCodeRange: A range of postal codes that
13335// defines the region area.
13336type RegionPostalCodeAreaPostalCodeRange struct {
13337	// Begin: Required. A postal code or a pattern of the form prefix*
13338	// denoting the inclusive lower bound of the range defining the area.
13339	// Examples values: "94108", "9410*", "9*".
13340	Begin string `json:"begin,omitempty"`
13341
13342	// End: Optional. A postal code or a pattern of the form prefix*
13343	// denoting the inclusive upper bound of the range defining the area. It
13344	// must have the same length as postalCodeRangeBegin: if
13345	// postalCodeRangeBegin is a postal code then postalCodeRangeEnd must be
13346	// a postal code too; if postalCodeRangeBegin is a pattern then
13347	// postalCodeRangeEnd must be a pattern with the same prefix length.
13348	// Optional: if not set, then the area is defined as being all the
13349	// postal codes matching postalCodeRangeBegin.
13350	End string `json:"end,omitempty"`
13351
13352	// ForceSendFields is a list of field names (e.g. "Begin") to
13353	// unconditionally include in API requests. By default, fields with
13354	// empty or default values are omitted from API requests. However, any
13355	// non-pointer, non-interface field appearing in ForceSendFields will be
13356	// sent to the server regardless of whether the field is empty or not.
13357	// This may be used to include empty fields in Patch requests.
13358	ForceSendFields []string `json:"-"`
13359
13360	// NullFields is a list of field names (e.g. "Begin") to include in API
13361	// requests with the JSON null value. By default, fields with empty
13362	// values are omitted from API requests. However, any field with an
13363	// empty value appearing in NullFields will be sent to the server as
13364	// null. It is an error if a field in this list has a non-empty value.
13365	// This may be used to include null fields in Patch requests.
13366	NullFields []string `json:"-"`
13367}
13368
13369func (s *RegionPostalCodeAreaPostalCodeRange) MarshalJSON() ([]byte, error) {
13370	type NoMethod RegionPostalCodeAreaPostalCodeRange
13371	raw := NoMethod(*s)
13372	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13373}
13374
13375// RegionalInventory: Regional inventory resource. contains the regional
13376// name and all attributes which are overridden for the specified
13377// region.
13378type RegionalInventory struct {
13379	// Availability: The availability of the product.
13380	Availability string `json:"availability,omitempty"`
13381
13382	// CustomAttributes: A list of custom (merchant-provided) attributes. It
13383	// can also be used for submitting any attribute of the feed
13384	// specification in its generic form.
13385	CustomAttributes []*CustomAttribute `json:"customAttributes,omitempty"`
13386
13387	// Kind: Identifies what kind of resource this is. Value: the fixed
13388	// string "content#regionalInventory".
13389	Kind string `json:"kind,omitempty"`
13390
13391	// Price: The price of the product.
13392	Price *Price `json:"price,omitempty"`
13393
13394	// RegionId: The ID uniquely identifying each region.
13395	RegionId string `json:"regionId,omitempty"`
13396
13397	// SalePrice: The sale price of the product. Mandatory if
13398	// `sale_price_effective_date` is defined.
13399	SalePrice *Price `json:"salePrice,omitempty"`
13400
13401	// SalePriceEffectiveDate: A date range represented by a pair of ISO
13402	// 8601 dates separated by a space, comma, or slash. Both dates might be
13403	// specified as 'null' if undecided.
13404	SalePriceEffectiveDate string `json:"salePriceEffectiveDate,omitempty"`
13405
13406	// ServerResponse contains the HTTP response code and headers from the
13407	// server.
13408	googleapi.ServerResponse `json:"-"`
13409
13410	// ForceSendFields is a list of field names (e.g. "Availability") to
13411	// unconditionally include in API requests. By default, fields with
13412	// empty or default values are omitted from API requests. However, any
13413	// non-pointer, non-interface field appearing in ForceSendFields will be
13414	// sent to the server regardless of whether the field is empty or not.
13415	// This may be used to include empty fields in Patch requests.
13416	ForceSendFields []string `json:"-"`
13417
13418	// NullFields is a list of field names (e.g. "Availability") to include
13419	// in API requests with the JSON null value. By default, fields with
13420	// empty values are omitted from API requests. However, any field with
13421	// an empty value appearing in NullFields will be sent to the server as
13422	// null. It is an error if a field in this list has a non-empty value.
13423	// This may be used to include null fields in Patch requests.
13424	NullFields []string `json:"-"`
13425}
13426
13427func (s *RegionalInventory) MarshalJSON() ([]byte, error) {
13428	type NoMethod RegionalInventory
13429	raw := NoMethod(*s)
13430	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13431}
13432
13433type RegionalinventoryCustomBatchRequest struct {
13434	// Entries: The request entries to be processed in the batch.
13435	Entries []*RegionalinventoryCustomBatchRequestEntry `json:"entries,omitempty"`
13436
13437	// ForceSendFields is a list of field names (e.g. "Entries") to
13438	// unconditionally include in API requests. By default, fields with
13439	// empty or default values are omitted from API requests. However, any
13440	// non-pointer, non-interface field appearing in ForceSendFields will be
13441	// sent to the server regardless of whether the field is empty or not.
13442	// This may be used to include empty fields in Patch requests.
13443	ForceSendFields []string `json:"-"`
13444
13445	// NullFields is a list of field names (e.g. "Entries") to include in
13446	// API requests with the JSON null value. By default, fields with empty
13447	// values are omitted from API requests. However, any field with an
13448	// empty value appearing in NullFields will be sent to the server as
13449	// null. It is an error if a field in this list has a non-empty value.
13450	// This may be used to include null fields in Patch requests.
13451	NullFields []string `json:"-"`
13452}
13453
13454func (s *RegionalinventoryCustomBatchRequest) MarshalJSON() ([]byte, error) {
13455	type NoMethod RegionalinventoryCustomBatchRequest
13456	raw := NoMethod(*s)
13457	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13458}
13459
13460// RegionalinventoryCustomBatchRequestEntry: A batch entry encoding a
13461// single non-batch regional inventory request.
13462type RegionalinventoryCustomBatchRequestEntry struct {
13463	// BatchId: An entry ID, unique within the batch request.
13464	BatchId int64 `json:"batchId,omitempty"`
13465
13466	// MerchantId: The ID of the managing account.
13467	MerchantId uint64 `json:"merchantId,omitempty,string"`
13468
13469	// Method: Method of the batch request entry. Acceptable values are: -
13470	// "insert"
13471	Method string `json:"method,omitempty"`
13472
13473	// ProductId: The ID of the product for which to update price and
13474	// availability.
13475	ProductId string `json:"productId,omitempty"`
13476
13477	// RegionalInventory: Price and availability of the product.
13478	RegionalInventory *RegionalInventory `json:"regionalInventory,omitempty"`
13479
13480	// ForceSendFields is a list of field names (e.g. "BatchId") to
13481	// unconditionally include in API requests. By default, fields with
13482	// empty or default values are omitted from API requests. However, any
13483	// non-pointer, non-interface field appearing in ForceSendFields will be
13484	// sent to the server regardless of whether the field is empty or not.
13485	// This may be used to include empty fields in Patch requests.
13486	ForceSendFields []string `json:"-"`
13487
13488	// NullFields is a list of field names (e.g. "BatchId") to include in
13489	// API requests with the JSON null value. By default, fields with empty
13490	// values are omitted from API requests. However, any field with an
13491	// empty value appearing in NullFields will be sent to the server as
13492	// null. It is an error if a field in this list has a non-empty value.
13493	// This may be used to include null fields in Patch requests.
13494	NullFields []string `json:"-"`
13495}
13496
13497func (s *RegionalinventoryCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
13498	type NoMethod RegionalinventoryCustomBatchRequestEntry
13499	raw := NoMethod(*s)
13500	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13501}
13502
13503type RegionalinventoryCustomBatchResponse struct {
13504	// Entries: The result of the execution of the batch requests.
13505	Entries []*RegionalinventoryCustomBatchResponseEntry `json:"entries,omitempty"`
13506
13507	// Kind: Identifies what kind of resource this is. Value: the fixed
13508	// string "content#regionalinventoryCustomBatchResponse".
13509	Kind string `json:"kind,omitempty"`
13510
13511	// ServerResponse contains the HTTP response code and headers from the
13512	// server.
13513	googleapi.ServerResponse `json:"-"`
13514
13515	// ForceSendFields is a list of field names (e.g. "Entries") to
13516	// unconditionally include in API requests. By default, fields with
13517	// empty or default values are omitted from API requests. However, any
13518	// non-pointer, non-interface field appearing in ForceSendFields will be
13519	// sent to the server regardless of whether the field is empty or not.
13520	// This may be used to include empty fields in Patch requests.
13521	ForceSendFields []string `json:"-"`
13522
13523	// NullFields is a list of field names (e.g. "Entries") to include in
13524	// API requests with the JSON null value. By default, fields with empty
13525	// values are omitted from API requests. However, any field with an
13526	// empty value appearing in NullFields will be sent to the server as
13527	// null. It is an error if a field in this list has a non-empty value.
13528	// This may be used to include null fields in Patch requests.
13529	NullFields []string `json:"-"`
13530}
13531
13532func (s *RegionalinventoryCustomBatchResponse) MarshalJSON() ([]byte, error) {
13533	type NoMethod RegionalinventoryCustomBatchResponse
13534	raw := NoMethod(*s)
13535	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13536}
13537
13538// RegionalinventoryCustomBatchResponseEntry: A batch entry encoding a
13539// single non-batch regional inventory response.
13540type RegionalinventoryCustomBatchResponseEntry struct {
13541	// BatchId: The ID of the request entry this entry responds to.
13542	BatchId int64 `json:"batchId,omitempty"`
13543
13544	// Errors: A list of errors defined if and only if the request failed.
13545	Errors *Errors `json:"errors,omitempty"`
13546
13547	// Kind: Identifies what kind of resource this is. Value: the fixed
13548	// string "content#regionalinventoryCustomBatchResponseEntry".
13549	Kind string `json:"kind,omitempty"`
13550
13551	// RegionalInventory: Price and availability of the product.
13552	RegionalInventory *RegionalInventory `json:"regionalInventory,omitempty"`
13553
13554	// ForceSendFields is a list of field names (e.g. "BatchId") to
13555	// unconditionally include in API requests. By default, fields with
13556	// empty or default values are omitted from API requests. However, any
13557	// non-pointer, non-interface field appearing in ForceSendFields will be
13558	// sent to the server regardless of whether the field is empty or not.
13559	// This may be used to include empty fields in Patch requests.
13560	ForceSendFields []string `json:"-"`
13561
13562	// NullFields is a list of field names (e.g. "BatchId") to include in
13563	// API requests with the JSON null value. By default, fields with empty
13564	// values are omitted from API requests. However, any field with an
13565	// empty value appearing in NullFields will be sent to the server as
13566	// null. It is an error if a field in this list has a non-empty value.
13567	// This may be used to include null fields in Patch requests.
13568	NullFields []string `json:"-"`
13569}
13570
13571func (s *RegionalinventoryCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
13572	type NoMethod RegionalinventoryCustomBatchResponseEntry
13573	raw := NoMethod(*s)
13574	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13575}
13576
13577// ReportRow: Result row returned from the search query.
13578type ReportRow struct {
13579	// Metrics: Metrics requested by the merchant in the query. Metric
13580	// values are only set for metrics requested explicitly in the query.
13581	Metrics *Metrics `json:"metrics,omitempty"`
13582
13583	// Segments: Segmentation dimensions requested by the merchant in the
13584	// query. Dimension values are only set for dimensions requested
13585	// explicitly in the query.
13586	Segments *Segments `json:"segments,omitempty"`
13587
13588	// ForceSendFields is a list of field names (e.g. "Metrics") to
13589	// unconditionally include in API requests. By default, fields with
13590	// empty or default values are omitted from API requests. However, any
13591	// non-pointer, non-interface field appearing in ForceSendFields will be
13592	// sent to the server regardless of whether the field is empty or not.
13593	// This may be used to include empty fields in Patch requests.
13594	ForceSendFields []string `json:"-"`
13595
13596	// NullFields is a list of field names (e.g. "Metrics") to include in
13597	// API requests with the JSON null value. By default, fields with empty
13598	// values are omitted from API requests. However, any field with an
13599	// empty value appearing in NullFields will be sent to the server as
13600	// null. It is an error if a field in this list has a non-empty value.
13601	// This may be used to include null fields in Patch requests.
13602	NullFields []string `json:"-"`
13603}
13604
13605func (s *ReportRow) MarshalJSON() ([]byte, error) {
13606	type NoMethod ReportRow
13607	raw := NoMethod(*s)
13608	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13609}
13610
13611// RepricingProductReport: Resource that represents a daily Repricing
13612// product report. Each report contains stats for a single type of
13613// Repricing rule for a single product on a given day. If there are
13614// multiple rules of the same type for the product on that day, the
13615// report lists all the rules by rule ids, combines the stats, and
13616// paginates the results by date. To retrieve the stats of a particular
13617// rule, provide the rule_id in the request.
13618type RepricingProductReport struct {
13619	// ApplicationCount: Total count of Repricer applications. This value
13620	// captures how many times the rule of this type was applied to this
13621	// product during this reporting period.
13622	ApplicationCount int64 `json:"applicationCount,omitempty,string"`
13623
13624	// BuyboxWinningProductStats: Stats specific to buybox winning rules for
13625	// product report (deprecated).
13626	BuyboxWinningProductStats *RepricingProductReportBuyboxWinningProductStats `json:"buyboxWinningProductStats,omitempty"`
13627
13628	// Date: Date of the stats in this report. The report starts and ends
13629	// according to the merchant's timezone.
13630	Date *Date `json:"date,omitempty"`
13631
13632	// HighWatermark: Maximum displayed price after repriced during this
13633	// reporting period.
13634	HighWatermark *PriceAmount `json:"highWatermark,omitempty"`
13635
13636	// InapplicabilityDetails: List of all reasons the rule did not apply to
13637	// the product during the specified reporting period.
13638	InapplicabilityDetails []*InapplicabilityDetails `json:"inapplicabilityDetails,omitempty"`
13639
13640	// LowWatermark: Minimum displayed price after repriced during this
13641	// reporting period.
13642	LowWatermark *PriceAmount `json:"lowWatermark,omitempty"`
13643
13644	// OrderItemCount: Total unit count of impacted products ordered while
13645	// the rule was active on the date of the report. This count includes
13646	// all orders that were started while the rule was active, even if the
13647	// rule was no longer active when the order was completed.
13648	OrderItemCount int64 `json:"orderItemCount,omitempty"`
13649
13650	// RuleIds: Ids of the Repricing rule for this report.
13651	RuleIds []string `json:"ruleIds,omitempty"`
13652
13653	// TotalGmv: Total GMV generated by impacted products while the rule was
13654	// active on the date of the report. This value includes all orders that
13655	// were started while the rule was active, even if the rule was no
13656	// longer active when the order was completed.
13657	TotalGmv *PriceAmount `json:"totalGmv,omitempty"`
13658
13659	// Type: Type of the rule.
13660	//
13661	// Possible values:
13662	//   "REPRICING_RULE_TYPE_UNSPECIFIED" - Unused.
13663	//   "TYPE_STATS_BASED" - Statistical measurement based rules among
13664	// Google SA merchants. If this rule is chosen, repricer will adjust the
13665	// offer price based on statistical metrics (currently only min is
13666	// available) among other merchants who sell the same product. Details
13667	// need to be provdided in the RuleDefinition.
13668	//   "TYPE_COGS_BASED" - Cost of goods sale based rule. Repricer will
13669	// adjust the offer price based on the offer's sale cost which is
13670	// provided by the merchant.
13671	//   "TYPE_SALES_VOLUME_BASED" - Sales volume based rule. Repricer will
13672	// adjust the offer price based on the offer's sales volume in the past
13673	// period of time defined within the rule.
13674	//   "TYPE_COMPETITIVE_PRICE" - Competitive price rule. Repricer will
13675	// adjust the offer price based on the min price from a list of unnamed
13676	// big competitors.
13677	Type string `json:"type,omitempty"`
13678
13679	// ForceSendFields is a list of field names (e.g. "ApplicationCount") to
13680	// unconditionally include in API requests. By default, fields with
13681	// empty or default values are omitted from API requests. However, any
13682	// non-pointer, non-interface field appearing in ForceSendFields will be
13683	// sent to the server regardless of whether the field is empty or not.
13684	// This may be used to include empty fields in Patch requests.
13685	ForceSendFields []string `json:"-"`
13686
13687	// NullFields is a list of field names (e.g. "ApplicationCount") to
13688	// include in API requests with the JSON null value. By default, fields
13689	// with empty values are omitted from API requests. However, any field
13690	// with an empty value appearing in NullFields will be sent to the
13691	// server as null. It is an error if a field in this list has a
13692	// non-empty value. This may be used to include null fields in Patch
13693	// requests.
13694	NullFields []string `json:"-"`
13695}
13696
13697func (s *RepricingProductReport) MarshalJSON() ([]byte, error) {
13698	type NoMethod RepricingProductReport
13699	raw := NoMethod(*s)
13700	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13701}
13702
13703// RepricingProductReportBuyboxWinningProductStats: Stats specific to
13704// buybox winning rules for product report.
13705type RepricingProductReportBuyboxWinningProductStats struct {
13706	// BuyboxWinsCount: Number of times this product won the buybox with
13707	// these rules during this time period.
13708	BuyboxWinsCount int64 `json:"buyboxWinsCount,omitempty"`
13709
13710	// ForceSendFields is a list of field names (e.g. "BuyboxWinsCount") to
13711	// unconditionally include in API requests. By default, fields with
13712	// empty or default values are omitted from API requests. However, any
13713	// non-pointer, non-interface field appearing in ForceSendFields will be
13714	// sent to the server regardless of whether the field is empty or not.
13715	// This may be used to include empty fields in Patch requests.
13716	ForceSendFields []string `json:"-"`
13717
13718	// NullFields is a list of field names (e.g. "BuyboxWinsCount") to
13719	// include in API requests with the JSON null value. By default, fields
13720	// with empty values are omitted from API requests. However, any field
13721	// with an empty value appearing in NullFields will be sent to the
13722	// server as null. It is an error if a field in this list has a
13723	// non-empty value. This may be used to include null fields in Patch
13724	// requests.
13725	NullFields []string `json:"-"`
13726}
13727
13728func (s *RepricingProductReportBuyboxWinningProductStats) MarshalJSON() ([]byte, error) {
13729	type NoMethod RepricingProductReportBuyboxWinningProductStats
13730	raw := NoMethod(*s)
13731	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13732}
13733
13734// RepricingRule: Represents a repricing rule. A repricing rule is used
13735// by shopping serving to adjust transactable offer prices if conditions
13736// are met. Next ID: 24
13737type RepricingRule struct {
13738	// CogsBasedRule: The rule definition for TYPE_COGS_BASED. Required when
13739	// the rule type is TYPE_COGS_BASED.
13740	CogsBasedRule *RepricingRuleCostOfGoodsSaleRule `json:"cogsBasedRule,omitempty"`
13741
13742	// CountryCode: Required. Immutable. CLDR country code
13743	// (http://www.unicode.org/repos/cldr/tags/latest/common/main/en.xml)
13744	// (e.g. "US").
13745	CountryCode string `json:"countryCode,omitempty"`
13746
13747	// EffectiveTimePeriod: Required. Time period when the rule should take
13748	// effect.
13749	EffectiveTimePeriod *RepricingRuleEffectiveTime `json:"effectiveTimePeriod,omitempty"`
13750
13751	// EligibleOfferMatcher: Required. Match criteria for the eligible
13752	// offers.
13753	EligibleOfferMatcher *RepricingRuleEligibleOfferMatcher `json:"eligibleOfferMatcher,omitempty"`
13754
13755	// LanguageCode: Required. Immutable. The two-letter ISO 639-1 language
13756	// code associated with the repricing rule.
13757	LanguageCode string `json:"languageCode,omitempty"`
13758
13759	// MerchantId: Output only. Immutable. Merchant that owns the repricing
13760	// rule.
13761	MerchantId int64 `json:"merchantId,omitempty,string"`
13762
13763	// Paused: Represents whether a rule is paused. A paused rule will
13764	// behave like a non-paused rule within CRUD operations, with the major
13765	// difference that a paused rule will not be evaluated and will have no
13766	// effect on offers.
13767	Paused bool `json:"paused,omitempty"`
13768
13769	// Restriction: Required. Restriction of the rule appliance.
13770	Restriction *RepricingRuleRestriction `json:"restriction,omitempty"`
13771
13772	// RuleId: Output only. Immutable. The ID to uniquely identify each
13773	// repricing rule.
13774	RuleId string `json:"ruleId,omitempty"`
13775
13776	// StatsBasedRule: The rule definition for TYPE_STATS_BASED. Required
13777	// when the rule type is TYPE_STATS_BASED.
13778	StatsBasedRule *RepricingRuleStatsBasedRule `json:"statsBasedRule,omitempty"`
13779
13780	// Title: The title for the rule.
13781	Title string `json:"title,omitempty"`
13782
13783	// Type: Required. Immutable. The type of the rule.
13784	//
13785	// Possible values:
13786	//   "REPRICING_RULE_TYPE_UNSPECIFIED" - Unused.
13787	//   "TYPE_STATS_BASED" - Statistical measurement based rules among
13788	// Google SA merchants. If this rule is chosen, repricer will adjust the
13789	// offer price based on statistical metrics (currently only min is
13790	// available) among other merchants who sell the same product. Details
13791	// need to be provdided in the RuleDefinition.
13792	//   "TYPE_COGS_BASED" - Cost of goods sale based rule. Repricer will
13793	// adjust the offer price based on the offer's sale cost which is
13794	// provided by the merchant.
13795	//   "TYPE_SALES_VOLUME_BASED" - Sales volume based rule. Repricer will
13796	// adjust the offer price based on the offer's sales volume in the past
13797	// period of time defined within the rule.
13798	//   "TYPE_COMPETITIVE_PRICE" - Competitive price rule. Repricer will
13799	// adjust the offer price based on the min price from a list of unnamed
13800	// big competitors.
13801	Type string `json:"type,omitempty"`
13802
13803	// ServerResponse contains the HTTP response code and headers from the
13804	// server.
13805	googleapi.ServerResponse `json:"-"`
13806
13807	// ForceSendFields is a list of field names (e.g. "CogsBasedRule") to
13808	// unconditionally include in API requests. By default, fields with
13809	// empty or default values are omitted from API requests. However, any
13810	// non-pointer, non-interface field appearing in ForceSendFields will be
13811	// sent to the server regardless of whether the field is empty or not.
13812	// This may be used to include empty fields in Patch requests.
13813	ForceSendFields []string `json:"-"`
13814
13815	// NullFields is a list of field names (e.g. "CogsBasedRule") to include
13816	// in API requests with the JSON null value. By default, fields with
13817	// empty values are omitted from API requests. However, any field with
13818	// an empty value appearing in NullFields will be sent to the server as
13819	// null. It is an error if a field in this list has a non-empty value.
13820	// This may be used to include null fields in Patch requests.
13821	NullFields []string `json:"-"`
13822}
13823
13824func (s *RepricingRule) MarshalJSON() ([]byte, error) {
13825	type NoMethod RepricingRule
13826	raw := NoMethod(*s)
13827	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13828}
13829
13830// RepricingRuleCostOfGoodsSaleRule: A repricing rule that changes the
13831// sale price based on cost of goods sale.
13832type RepricingRuleCostOfGoodsSaleRule struct {
13833	// PercentageDelta: The percent change against the COGS. Ex: 20 would
13834	// mean to set the adjusted price 1.2X of the COGS data.
13835	PercentageDelta int64 `json:"percentageDelta,omitempty"`
13836
13837	// PriceDelta: The price delta against the COGS. E.g. 2 means $2 more of
13838	// the COGS.
13839	PriceDelta string `json:"priceDelta,omitempty"`
13840
13841	// ForceSendFields is a list of field names (e.g. "PercentageDelta") to
13842	// unconditionally include in API requests. By default, fields with
13843	// empty or default values are omitted from API requests. However, any
13844	// non-pointer, non-interface field appearing in ForceSendFields will be
13845	// sent to the server regardless of whether the field is empty or not.
13846	// This may be used to include empty fields in Patch requests.
13847	ForceSendFields []string `json:"-"`
13848
13849	// NullFields is a list of field names (e.g. "PercentageDelta") to
13850	// include in API requests with the JSON null value. By default, fields
13851	// with empty values are omitted from API requests. However, any field
13852	// with an empty value appearing in NullFields will be sent to the
13853	// server as null. It is an error if a field in this list has a
13854	// non-empty value. This may be used to include null fields in Patch
13855	// requests.
13856	NullFields []string `json:"-"`
13857}
13858
13859func (s *RepricingRuleCostOfGoodsSaleRule) MarshalJSON() ([]byte, error) {
13860	type NoMethod RepricingRuleCostOfGoodsSaleRule
13861	raw := NoMethod(*s)
13862	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13863}
13864
13865type RepricingRuleEffectiveTime struct {
13866	// FixedTimePeriods: A list of fixed time periods combined with OR. The
13867	// maximum number of entries is limited to 5.
13868	FixedTimePeriods []*RepricingRuleEffectiveTimeFixedTimePeriod `json:"fixedTimePeriods,omitempty"`
13869
13870	// ForceSendFields is a list of field names (e.g. "FixedTimePeriods") to
13871	// unconditionally include in API requests. By default, fields with
13872	// empty or default values are omitted from API requests. However, any
13873	// non-pointer, non-interface field appearing in ForceSendFields will be
13874	// sent to the server regardless of whether the field is empty or not.
13875	// This may be used to include empty fields in Patch requests.
13876	ForceSendFields []string `json:"-"`
13877
13878	// NullFields is a list of field names (e.g. "FixedTimePeriods") to
13879	// include in API requests with the JSON null value. By default, fields
13880	// with empty values are omitted from API requests. However, any field
13881	// with an empty value appearing in NullFields will be sent to the
13882	// server as null. It is an error if a field in this list has a
13883	// non-empty value. This may be used to include null fields in Patch
13884	// requests.
13885	NullFields []string `json:"-"`
13886}
13887
13888func (s *RepricingRuleEffectiveTime) MarshalJSON() ([]byte, error) {
13889	type NoMethod RepricingRuleEffectiveTime
13890	raw := NoMethod(*s)
13891	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13892}
13893
13894// RepricingRuleEffectiveTimeFixedTimePeriod: Definition of a fixed time
13895// period.
13896type RepricingRuleEffectiveTimeFixedTimePeriod struct {
13897	// EndTime: The end time (exclusive) of the period. It can only be hour
13898	// granularity.
13899	EndTime string `json:"endTime,omitempty"`
13900
13901	// StartTime: The start time (inclusive) of the period. It can only be
13902	// hour granularity.
13903	StartTime string `json:"startTime,omitempty"`
13904
13905	// ForceSendFields is a list of field names (e.g. "EndTime") to
13906	// unconditionally include in API requests. By default, fields with
13907	// empty or default values are omitted from API requests. However, any
13908	// non-pointer, non-interface field appearing in ForceSendFields will be
13909	// sent to the server regardless of whether the field is empty or not.
13910	// This may be used to include empty fields in Patch requests.
13911	ForceSendFields []string `json:"-"`
13912
13913	// NullFields is a list of field names (e.g. "EndTime") to include in
13914	// API requests with the JSON null value. By default, fields with empty
13915	// values are omitted from API requests. However, any field with an
13916	// empty value appearing in NullFields will be sent to the server as
13917	// null. It is an error if a field in this list has a non-empty value.
13918	// This may be used to include null fields in Patch requests.
13919	NullFields []string `json:"-"`
13920}
13921
13922func (s *RepricingRuleEffectiveTimeFixedTimePeriod) MarshalJSON() ([]byte, error) {
13923	type NoMethod RepricingRuleEffectiveTimeFixedTimePeriod
13924	raw := NoMethod(*s)
13925	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13926}
13927
13928// RepricingRuleEligibleOfferMatcher: Matcher that specifies eligible
13929// offers. When the USE_FEED_ATTRIBUTE option is selected, only the
13930// repricing_rule_id attribute on the product feed is used to specify
13931// offer-rule mapping. When the CUSTOM_FILTER option is selected, only
13932// the *_matcher fields are used to filter the offers for offer-rule
13933// mapping. If the CUSTOM_FILTER option is selected, an offer needs to
13934// satisfy each custom filter matcher to be eligible for a rule. Size
13935// limit: the sum of the number of entries in all the matchers should
13936// not exceed 20. For example, there can be 15 product ids and 5 brands,
13937// but not 10 product ids and 11 brands.
13938type RepricingRuleEligibleOfferMatcher struct {
13939	// BrandMatcher: Filter by the brand.
13940	BrandMatcher *RepricingRuleEligibleOfferMatcherStringMatcher `json:"brandMatcher,omitempty"`
13941
13942	// ItemGroupIdMatcher: Filter by the item group id.
13943	ItemGroupIdMatcher *RepricingRuleEligibleOfferMatcherStringMatcher `json:"itemGroupIdMatcher,omitempty"`
13944
13945	// MatcherOption: Determines whether to use the custom matchers or the
13946	// product feed attribute "repricing_rule_id" to specify offer-rule
13947	// mapping.
13948	//
13949	// Possible values:
13950	//   "MATCHER_OPTION_UNSPECIFIED" - Unused.
13951	//   "MATCHER_OPTION_CUSTOM_FILTER" - Use custom filters.
13952	//   "MATCHER_OPTION_USE_FEED_ATTRIBUTE" - Use repricing_rule_id feed
13953	// attribute on the product resource to specify offer-rule mapping.
13954	//   "MATCHER_OPTION_ALL_PRODUCTS" - Matching all products.
13955	MatcherOption string `json:"matcherOption,omitempty"`
13956
13957	// OfferIdMatcher: Filter by the offer id.
13958	OfferIdMatcher *RepricingRuleEligibleOfferMatcherStringMatcher `json:"offerIdMatcher,omitempty"`
13959
13960	// SkipWhenOnPromotion: When true, the rule won't be applied to offers
13961	// with active promotions.
13962	SkipWhenOnPromotion bool `json:"skipWhenOnPromotion,omitempty"`
13963
13964	// ForceSendFields is a list of field names (e.g. "BrandMatcher") to
13965	// unconditionally include in API requests. By default, fields with
13966	// empty or default values are omitted from API requests. However, any
13967	// non-pointer, non-interface field appearing in ForceSendFields will be
13968	// sent to the server regardless of whether the field is empty or not.
13969	// This may be used to include empty fields in Patch requests.
13970	ForceSendFields []string `json:"-"`
13971
13972	// NullFields is a list of field names (e.g. "BrandMatcher") to include
13973	// in API requests with the JSON null value. By default, fields with
13974	// empty values are omitted from API requests. However, any field with
13975	// an empty value appearing in NullFields will be sent to the server as
13976	// null. It is an error if a field in this list has a non-empty value.
13977	// This may be used to include null fields in Patch requests.
13978	NullFields []string `json:"-"`
13979}
13980
13981func (s *RepricingRuleEligibleOfferMatcher) MarshalJSON() ([]byte, error) {
13982	type NoMethod RepricingRuleEligibleOfferMatcher
13983	raw := NoMethod(*s)
13984	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13985}
13986
13987// RepricingRuleEligibleOfferMatcherStringMatcher: Matcher by string
13988// attributes.
13989type RepricingRuleEligibleOfferMatcherStringMatcher struct {
13990	// StrAttributes: String attributes, as long as such attribute of an
13991	// offer is one of the string attribute values, the offer is considered
13992	// as passing the matcher. The string matcher checks an offer for
13993	// inclusivity in the string attributes, not equality. Only literal
13994	// string matching is supported, no regex.
13995	StrAttributes []string `json:"strAttributes,omitempty"`
13996
13997	// ForceSendFields is a list of field names (e.g. "StrAttributes") to
13998	// unconditionally include in API requests. By default, fields with
13999	// empty or default values are omitted from API requests. However, any
14000	// non-pointer, non-interface field appearing in ForceSendFields will be
14001	// sent to the server regardless of whether the field is empty or not.
14002	// This may be used to include empty fields in Patch requests.
14003	ForceSendFields []string `json:"-"`
14004
14005	// NullFields is a list of field names (e.g. "StrAttributes") to include
14006	// in API requests with the JSON null value. By default, fields with
14007	// empty values are omitted from API requests. However, any field with
14008	// an empty value appearing in NullFields will be sent to the server as
14009	// null. It is an error if a field in this list has a non-empty value.
14010	// This may be used to include null fields in Patch requests.
14011	NullFields []string `json:"-"`
14012}
14013
14014func (s *RepricingRuleEligibleOfferMatcherStringMatcher) MarshalJSON() ([]byte, error) {
14015	type NoMethod RepricingRuleEligibleOfferMatcherStringMatcher
14016	raw := NoMethod(*s)
14017	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14018}
14019
14020// RepricingRuleReport: Resource that represents a daily Repricing rule
14021// report. Next ID: 11
14022type RepricingRuleReport struct {
14023	// BuyboxWinningRuleStats: Stats specific to buybox winning rules for
14024	// rule report (deprecated).
14025	BuyboxWinningRuleStats *RepricingRuleReportBuyboxWinningRuleStats `json:"buyboxWinningRuleStats,omitempty"`
14026
14027	// Date: Date of the stats in this report. The report starts and ends
14028	// according to the merchant's timezone.
14029	Date *Date `json:"date,omitempty"`
14030
14031	// ImpactedProducts: List of product ids that are impacted by this rule
14032	// during this reporting period. Out of stock products and products not
14033	// searched for by customers are examples of non-impacted products.
14034	ImpactedProducts []string `json:"impactedProducts,omitempty"`
14035
14036	// InapplicabilityDetails: List of all reasons the rule did not apply to
14037	// the inapplicable products during the specified reporting period.
14038	InapplicabilityDetails []*InapplicabilityDetails `json:"inapplicabilityDetails,omitempty"`
14039
14040	// InapplicableProducts: List of product ids that are inapplicable to
14041	// this rule during this reporting period. To get the inapplicable
14042	// reason for a specific product, see RepricingProductReport.
14043	InapplicableProducts []string `json:"inapplicableProducts,omitempty"`
14044
14045	// OrderItemCount: Total unit count of impacted products ordered while
14046	// the rule was active on the date of the report. This count includes
14047	// all orders that were started while the rule was active, even if the
14048	// rule was no longer active when the order was completed.
14049	OrderItemCount int64 `json:"orderItemCount,omitempty"`
14050
14051	// RuleId: Id of the Repricing rule for this report.
14052	RuleId string `json:"ruleId,omitempty"`
14053
14054	// TotalGmv: Total GMV generated by impacted products while the rule was
14055	// active on the date of the report. This value includes all orders that
14056	// were started while the rule was active, even if the rule was no
14057	// longer active when the order was completed.
14058	TotalGmv *PriceAmount `json:"totalGmv,omitempty"`
14059
14060	// Type: Type of the rule.
14061	//
14062	// Possible values:
14063	//   "REPRICING_RULE_TYPE_UNSPECIFIED" - Unused.
14064	//   "TYPE_STATS_BASED" - Statistical measurement based rules among
14065	// Google SA merchants. If this rule is chosen, repricer will adjust the
14066	// offer price based on statistical metrics (currently only min is
14067	// available) among other merchants who sell the same product. Details
14068	// need to be provdided in the RuleDefinition.
14069	//   "TYPE_COGS_BASED" - Cost of goods sale based rule. Repricer will
14070	// adjust the offer price based on the offer's sale cost which is
14071	// provided by the merchant.
14072	//   "TYPE_SALES_VOLUME_BASED" - Sales volume based rule. Repricer will
14073	// adjust the offer price based on the offer's sales volume in the past
14074	// period of time defined within the rule.
14075	//   "TYPE_COMPETITIVE_PRICE" - Competitive price rule. Repricer will
14076	// adjust the offer price based on the min price from a list of unnamed
14077	// big competitors.
14078	Type string `json:"type,omitempty"`
14079
14080	// ForceSendFields is a list of field names (e.g.
14081	// "BuyboxWinningRuleStats") to unconditionally include in API requests.
14082	// By default, fields with empty or default values are omitted from API
14083	// requests. However, any non-pointer, non-interface field appearing in
14084	// ForceSendFields will be sent to the server regardless of whether the
14085	// field is empty or not. This may be used to include empty fields in
14086	// Patch requests.
14087	ForceSendFields []string `json:"-"`
14088
14089	// NullFields is a list of field names (e.g. "BuyboxWinningRuleStats")
14090	// to include in API requests with the JSON null value. By default,
14091	// fields with empty values are omitted from API requests. However, any
14092	// field with an empty value appearing in NullFields will be sent to the
14093	// server as null. It is an error if a field in this list has a
14094	// non-empty value. This may be used to include null fields in Patch
14095	// requests.
14096	NullFields []string `json:"-"`
14097}
14098
14099func (s *RepricingRuleReport) MarshalJSON() ([]byte, error) {
14100	type NoMethod RepricingRuleReport
14101	raw := NoMethod(*s)
14102	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14103}
14104
14105// RepricingRuleReportBuyboxWinningRuleStats: Stats specific to buybox
14106// winning rules for rule report.
14107type RepricingRuleReportBuyboxWinningRuleStats struct {
14108	// BuyboxWonProductCount: Number of unique products that won the buybox
14109	// with this rule during this period of time.
14110	BuyboxWonProductCount int64 `json:"buyboxWonProductCount,omitempty"`
14111
14112	// ForceSendFields is a list of field names (e.g.
14113	// "BuyboxWonProductCount") to unconditionally include in API requests.
14114	// By default, fields with empty or default values are omitted from API
14115	// requests. However, any non-pointer, non-interface field appearing in
14116	// ForceSendFields will be sent to the server regardless of whether the
14117	// field is empty or not. This may be used to include empty fields in
14118	// Patch requests.
14119	ForceSendFields []string `json:"-"`
14120
14121	// NullFields is a list of field names (e.g. "BuyboxWonProductCount") to
14122	// include in API requests with the JSON null value. By default, fields
14123	// with empty values are omitted from API requests. However, any field
14124	// with an empty value appearing in NullFields will be sent to the
14125	// server as null. It is an error if a field in this list has a
14126	// non-empty value. This may be used to include null fields in Patch
14127	// requests.
14128	NullFields []string `json:"-"`
14129}
14130
14131func (s *RepricingRuleReportBuyboxWinningRuleStats) MarshalJSON() ([]byte, error) {
14132	type NoMethod RepricingRuleReportBuyboxWinningRuleStats
14133	raw := NoMethod(*s)
14134	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14135}
14136
14137// RepricingRuleRestriction: Definition of a rule restriction. At least
14138// one of the following needs to be true: (1) use_auto_pricing_min_price
14139// is true (2) floor.price_delta exists (3) floor.percentage_delta
14140// exists If floor.price_delta and floor.percentage_delta are both set
14141// on a rule, the highest value will be chosen by the Repricer. In other
14142// words, for a product with a price of $50, if the
14143// `floor.percentage_delta` is "-10" and the floor.price_delta is "-12",
14144// the offer price will only be lowered $5 (10% lower than the original
14145// offer price).
14146type RepricingRuleRestriction struct {
14147	// Floor: The inclusive floor lower bound. The repricing rule only
14148	// applies when new price >= floor.
14149	Floor *RepricingRuleRestrictionBoundary `json:"floor,omitempty"`
14150
14151	// UseAutoPricingMinPrice: If true, use the AUTO_PRICING_MIN_PRICE offer
14152	// attribute as the lower bound of the rule. If
14153	// use_auto_pricing_min_price is true, then only offers with
14154	// `AUTO_PRICING_MIN_PRICE` existing on the offer will get Repricer
14155	// treatment, even if a floor value is set on the rule. Also, if
14156	// use_auto_pricing_min_price is true, the floor restriction will be
14157	// ignored.
14158	UseAutoPricingMinPrice bool `json:"useAutoPricingMinPrice,omitempty"`
14159
14160	// ForceSendFields is a list of field names (e.g. "Floor") to
14161	// unconditionally include in API requests. By default, fields with
14162	// empty or default values are omitted from API requests. However, any
14163	// non-pointer, non-interface field appearing in ForceSendFields will be
14164	// sent to the server regardless of whether the field is empty or not.
14165	// This may be used to include empty fields in Patch requests.
14166	ForceSendFields []string `json:"-"`
14167
14168	// NullFields is a list of field names (e.g. "Floor") to include in API
14169	// requests with the JSON null value. By default, fields with empty
14170	// values are omitted from API requests. However, any field with an
14171	// empty value appearing in NullFields will be sent to the server as
14172	// null. It is an error if a field in this list has a non-empty value.
14173	// This may be used to include null fields in Patch requests.
14174	NullFields []string `json:"-"`
14175}
14176
14177func (s *RepricingRuleRestriction) MarshalJSON() ([]byte, error) {
14178	type NoMethod RepricingRuleRestriction
14179	raw := NoMethod(*s)
14180	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14181}
14182
14183// RepricingRuleRestrictionBoundary: Definition of a boundary.
14184type RepricingRuleRestrictionBoundary struct {
14185	// PercentageDelta: The percentage delta relative to the offer selling
14186	// price. This field is signed. It must be negative in floor. When it is
14187	// used in floor, it should be > -100. For example, if an offer is
14188	// selling at $10 and this field is -30 in floor, the repricing rule
14189	// only applies if the calculated new price is >= $7.
14190	PercentageDelta int64 `json:"percentageDelta,omitempty"`
14191
14192	// PriceDelta: The price micros relative to the offer selling price.
14193	// This field is signed. It must be negative in floor. For example, if
14194	// an offer is selling at $10 and this field is -$2 in floor, the
14195	// repricing rule only applies if the calculated new price is >= $8.
14196	PriceDelta string `json:"priceDelta,omitempty"`
14197
14198	// ForceSendFields is a list of field names (e.g. "PercentageDelta") to
14199	// unconditionally include in API requests. By default, fields with
14200	// empty or default values are omitted from API requests. However, any
14201	// non-pointer, non-interface field appearing in ForceSendFields will be
14202	// sent to the server regardless of whether the field is empty or not.
14203	// This may be used to include empty fields in Patch requests.
14204	ForceSendFields []string `json:"-"`
14205
14206	// NullFields is a list of field names (e.g. "PercentageDelta") to
14207	// include in API requests with the JSON null value. By default, fields
14208	// with empty values are omitted from API requests. However, any field
14209	// with an empty value appearing in NullFields will be sent to the
14210	// server as null. It is an error if a field in this list has a
14211	// non-empty value. This may be used to include null fields in Patch
14212	// requests.
14213	NullFields []string `json:"-"`
14214}
14215
14216func (s *RepricingRuleRestrictionBoundary) MarshalJSON() ([]byte, error) {
14217	type NoMethod RepricingRuleRestrictionBoundary
14218	raw := NoMethod(*s)
14219	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14220}
14221
14222// RepricingRuleStatsBasedRule: Definition of stats based rule.
14223type RepricingRuleStatsBasedRule struct {
14224	// PercentageDelta: The percent change against the price target. Valid
14225	// from 0 to 100 inclusively.
14226	PercentageDelta int64 `json:"percentageDelta,omitempty"`
14227
14228	// PriceDelta: The price delta against the above price target. A
14229	// positive value means the price should be adjusted to be above
14230	// statistical measure, and a negative value means below. Currency code
14231	// must not be included.
14232	PriceDelta string `json:"priceDelta,omitempty"`
14233
14234	// ForceSendFields is a list of field names (e.g. "PercentageDelta") to
14235	// unconditionally include in API requests. By default, fields with
14236	// empty or default values are omitted from API requests. However, any
14237	// non-pointer, non-interface field appearing in ForceSendFields will be
14238	// sent to the server regardless of whether the field is empty or not.
14239	// This may be used to include empty fields in Patch requests.
14240	ForceSendFields []string `json:"-"`
14241
14242	// NullFields is a list of field names (e.g. "PercentageDelta") to
14243	// include in API requests with the JSON null value. By default, fields
14244	// with empty values are omitted from API requests. However, any field
14245	// with an empty value appearing in NullFields will be sent to the
14246	// server as null. It is an error if a field in this list has a
14247	// non-empty value. This may be used to include null fields in Patch
14248	// requests.
14249	NullFields []string `json:"-"`
14250}
14251
14252func (s *RepricingRuleStatsBasedRule) MarshalJSON() ([]byte, error) {
14253	type NoMethod RepricingRuleStatsBasedRule
14254	raw := NoMethod(*s)
14255	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14256}
14257
14258// RequestPhoneVerificationRequest: Request message for the
14259// RequestPhoneVerification method.
14260type RequestPhoneVerificationRequest struct {
14261	// LanguageCode: Language code IETF BCP 47 syntax
14262	// (https://tools.ietf.org/html/bcp47) (for example, en-US). Language
14263	// code is used to provide localized `SMS` and `PHONE_CALL`. Default
14264	// language used is en-US if not provided.
14265	LanguageCode string `json:"languageCode,omitempty"`
14266
14267	// PhoneNumber: Phone number to be verified.
14268	PhoneNumber string `json:"phoneNumber,omitempty"`
14269
14270	// PhoneRegionCode: Required. Two letter country code for the phone
14271	// number, for example `CA` for Canadian numbers. See the ISO 3166-1
14272	// alpha-2
14273	// (https://wikipedia.org/wiki/ISO_3166-1_alpha-2#Officially_assigned_code_elements)
14274	// officially assigned codes.
14275	PhoneRegionCode string `json:"phoneRegionCode,omitempty"`
14276
14277	// PhoneVerificationMethod: Verification method to receive verification
14278	// code.
14279	//
14280	// Possible values:
14281	//   "PHONE_VERIFICATION_METHOD_UNSPECIFIED" - Unknown method.
14282	//   "SMS" - Receive verification code by SMS.
14283	//   "PHONE_CALL" - Receive verification code by phone call.
14284	PhoneVerificationMethod string `json:"phoneVerificationMethod,omitempty"`
14285
14286	// ForceSendFields is a list of field names (e.g. "LanguageCode") to
14287	// unconditionally include in API requests. By default, fields with
14288	// empty or default values are omitted from API requests. However, any
14289	// non-pointer, non-interface field appearing in ForceSendFields will be
14290	// sent to the server regardless of whether the field is empty or not.
14291	// This may be used to include empty fields in Patch requests.
14292	ForceSendFields []string `json:"-"`
14293
14294	// NullFields is a list of field names (e.g. "LanguageCode") to include
14295	// in API requests with the JSON null value. By default, fields with
14296	// empty values are omitted from API requests. However, any field with
14297	// an empty value appearing in NullFields will be sent to the server as
14298	// null. It is an error if a field in this list has a non-empty value.
14299	// This may be used to include null fields in Patch requests.
14300	NullFields []string `json:"-"`
14301}
14302
14303func (s *RequestPhoneVerificationRequest) MarshalJSON() ([]byte, error) {
14304	type NoMethod RequestPhoneVerificationRequest
14305	raw := NoMethod(*s)
14306	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14307}
14308
14309// RequestPhoneVerificationResponse: Response message for the
14310// RequestPhoneVerification method.
14311type RequestPhoneVerificationResponse struct {
14312	// VerificationId: The verification ID to use in subsequent calls to
14313	// `verifyphonenumber`.
14314	VerificationId string `json:"verificationId,omitempty"`
14315
14316	// ServerResponse contains the HTTP response code and headers from the
14317	// server.
14318	googleapi.ServerResponse `json:"-"`
14319
14320	// ForceSendFields is a list of field names (e.g. "VerificationId") to
14321	// unconditionally include in API requests. By default, fields with
14322	// empty or default values are omitted from API requests. However, any
14323	// non-pointer, non-interface field appearing in ForceSendFields will be
14324	// sent to the server regardless of whether the field is empty or not.
14325	// This may be used to include empty fields in Patch requests.
14326	ForceSendFields []string `json:"-"`
14327
14328	// NullFields is a list of field names (e.g. "VerificationId") to
14329	// include in API requests with the JSON null value. By default, fields
14330	// with empty values are omitted from API requests. However, any field
14331	// with an empty value appearing in NullFields will be sent to the
14332	// server as null. It is an error if a field in this list has a
14333	// non-empty value. This may be used to include null fields in Patch
14334	// requests.
14335	NullFields []string `json:"-"`
14336}
14337
14338func (s *RequestPhoneVerificationResponse) MarshalJSON() ([]byte, error) {
14339	type NoMethod RequestPhoneVerificationResponse
14340	raw := NoMethod(*s)
14341	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14342}
14343
14344// RequestReviewBuyOnGoogleProgramRequest: Request message for the
14345// RequestReviewProgram method.
14346type RequestReviewBuyOnGoogleProgramRequest struct {
14347}
14348
14349// RequestReviewFreeListingsRequest: Request message for the
14350// RequestReviewFreeListings Program method.
14351type RequestReviewFreeListingsRequest struct {
14352	// RegionCode: The code ISO 3166-1 alpha-2
14353	// (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) of the country for
14354	// which review is to be requested.
14355	RegionCode string `json:"regionCode,omitempty"`
14356
14357	// ForceSendFields is a list of field names (e.g. "RegionCode") to
14358	// unconditionally include in API requests. By default, fields with
14359	// empty or default values are omitted from API requests. However, any
14360	// non-pointer, non-interface field appearing in ForceSendFields will be
14361	// sent to the server regardless of whether the field is empty or not.
14362	// This may be used to include empty fields in Patch requests.
14363	ForceSendFields []string `json:"-"`
14364
14365	// NullFields is a list of field names (e.g. "RegionCode") to include in
14366	// API requests with the JSON null value. By default, fields with empty
14367	// values are omitted from API requests. However, any field with an
14368	// empty value appearing in NullFields will be sent to the server as
14369	// null. It is an error if a field in this list has a non-empty value.
14370	// This may be used to include null fields in Patch requests.
14371	NullFields []string `json:"-"`
14372}
14373
14374func (s *RequestReviewFreeListingsRequest) MarshalJSON() ([]byte, error) {
14375	type NoMethod RequestReviewFreeListingsRequest
14376	raw := NoMethod(*s)
14377	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14378}
14379
14380// RequestReviewShoppingAdsRequest: Request message for the
14381// RequestReviewShoppingAds program method.
14382type RequestReviewShoppingAdsRequest struct {
14383	// RegionCode: The code ISO 3166-1 alpha-2
14384	// (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) of the country for
14385	// which review is to be requested.
14386	RegionCode string `json:"regionCode,omitempty"`
14387
14388	// ForceSendFields is a list of field names (e.g. "RegionCode") to
14389	// unconditionally include in API requests. By default, fields with
14390	// empty or default values are omitted from API requests. However, any
14391	// non-pointer, non-interface field appearing in ForceSendFields will be
14392	// sent to the server regardless of whether the field is empty or not.
14393	// This may be used to include empty fields in Patch requests.
14394	ForceSendFields []string `json:"-"`
14395
14396	// NullFields is a list of field names (e.g. "RegionCode") to include in
14397	// API requests with the JSON null value. By default, fields with empty
14398	// values are omitted from API requests. However, any field with an
14399	// empty value appearing in NullFields will be sent to the server as
14400	// null. It is an error if a field in this list has a non-empty value.
14401	// This may be used to include null fields in Patch requests.
14402	NullFields []string `json:"-"`
14403}
14404
14405func (s *RequestReviewShoppingAdsRequest) MarshalJSON() ([]byte, error) {
14406	type NoMethod RequestReviewShoppingAdsRequest
14407	raw := NoMethod(*s)
14408	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14409}
14410
14411// ReturnAddress: Return address resource.
14412type ReturnAddress struct {
14413	// Address: Required. The address.
14414	Address *ReturnAddressAddress `json:"address,omitempty"`
14415
14416	// Country: Required. The country of sale where the return address is
14417	// applicable.
14418	Country string `json:"country,omitempty"`
14419
14420	// Kind: Identifies what kind of resource this is. Value: the fixed
14421	// string "content#returnAddress"
14422	Kind string `json:"kind,omitempty"`
14423
14424	// Label: Required. The user-defined label of the return address. For
14425	// the default address, use the label "default".
14426	Label string `json:"label,omitempty"`
14427
14428	// PhoneNumber: Required. The merchant's contact phone number regarding
14429	// the return.
14430	PhoneNumber string `json:"phoneNumber,omitempty"`
14431
14432	// ReturnAddressId: Return address ID generated by Google.
14433	ReturnAddressId string `json:"returnAddressId,omitempty"`
14434
14435	// ServerResponse contains the HTTP response code and headers from the
14436	// server.
14437	googleapi.ServerResponse `json:"-"`
14438
14439	// ForceSendFields is a list of field names (e.g. "Address") to
14440	// unconditionally include in API requests. By default, fields with
14441	// empty or default values are omitted from API requests. However, any
14442	// non-pointer, non-interface field appearing in ForceSendFields will be
14443	// sent to the server regardless of whether the field is empty or not.
14444	// This may be used to include empty fields in Patch requests.
14445	ForceSendFields []string `json:"-"`
14446
14447	// NullFields is a list of field names (e.g. "Address") to include in
14448	// API requests with the JSON null value. By default, fields with empty
14449	// values are omitted from API requests. However, any field with an
14450	// empty value appearing in NullFields will be sent to the server as
14451	// null. It is an error if a field in this list has a non-empty value.
14452	// This may be used to include null fields in Patch requests.
14453	NullFields []string `json:"-"`
14454}
14455
14456func (s *ReturnAddress) MarshalJSON() ([]byte, error) {
14457	type NoMethod ReturnAddress
14458	raw := NoMethod(*s)
14459	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14460}
14461
14462type ReturnAddressAddress struct {
14463	// Country: CLDR country code (e.g. "US").
14464	Country string `json:"country,omitempty"`
14465
14466	// Locality: City, town or commune. May also include dependent
14467	// localities or sublocalities (e.g. neighborhoods or suburbs).
14468	Locality string `json:"locality,omitempty"`
14469
14470	// PostalCode: Postal code or ZIP (e.g. "94043").
14471	PostalCode string `json:"postalCode,omitempty"`
14472
14473	// RecipientName: Name of the recipient to address returns to.
14474	RecipientName string `json:"recipientName,omitempty"`
14475
14476	// Region: Top-level administrative subdivision of the country. For
14477	// example, a state like California ("CA") or a province like Quebec
14478	// ("QC").
14479	Region string `json:"region,omitempty"`
14480
14481	// StreetAddress: Street-level part of the address. May be up to two
14482	// lines, each line specified as an array element.
14483	StreetAddress []string `json:"streetAddress,omitempty"`
14484
14485	// ForceSendFields is a list of field names (e.g. "Country") to
14486	// unconditionally include in API requests. By default, fields with
14487	// empty or default values are omitted from API requests. However, any
14488	// non-pointer, non-interface field appearing in ForceSendFields will be
14489	// sent to the server regardless of whether the field is empty or not.
14490	// This may be used to include empty fields in Patch requests.
14491	ForceSendFields []string `json:"-"`
14492
14493	// NullFields is a list of field names (e.g. "Country") to include in
14494	// API requests with the JSON null value. By default, fields with empty
14495	// values are omitted from API requests. However, any field with an
14496	// empty value appearing in NullFields will be sent to the server as
14497	// null. It is an error if a field in this list has a non-empty value.
14498	// This may be used to include null fields in Patch requests.
14499	NullFields []string `json:"-"`
14500}
14501
14502func (s *ReturnAddressAddress) MarshalJSON() ([]byte, error) {
14503	type NoMethod ReturnAddressAddress
14504	raw := NoMethod(*s)
14505	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14506}
14507
14508// ReturnPolicy: Return policy resource.
14509type ReturnPolicy struct {
14510	// Country: Required. The country of sale where the return policy is
14511	// applicable.
14512	Country string `json:"country,omitempty"`
14513
14514	// Kind: Identifies what kind of resource this is. Value: the fixed
14515	// string "content#returnPolicy"
14516	Kind string `json:"kind,omitempty"`
14517
14518	// Label: Required. The user-defined label of the return policy. For the
14519	// default policy, use the label "default".
14520	Label string `json:"label,omitempty"`
14521
14522	// Name: Required. The name of the policy as shown in Merchant Center.
14523	Name string `json:"name,omitempty"`
14524
14525	// NonFreeReturnReasons: Return reasons that will incur return fees.
14526	NonFreeReturnReasons []string `json:"nonFreeReturnReasons,omitempty"`
14527
14528	// Policy: Required. The policy.
14529	Policy *ReturnPolicyPolicy `json:"policy,omitempty"`
14530
14531	// ReturnPolicyId: Return policy ID generated by Google.
14532	ReturnPolicyId string `json:"returnPolicyId,omitempty"`
14533
14534	// ReturnShippingFee: The return shipping fee that will apply to non
14535	// free return reasons.
14536	ReturnShippingFee *Price `json:"returnShippingFee,omitempty"`
14537
14538	// SeasonalOverrides: An optional list of seasonal overrides.
14539	SeasonalOverrides []*ReturnPolicySeasonalOverride `json:"seasonalOverrides,omitempty"`
14540
14541	// ServerResponse contains the HTTP response code and headers from the
14542	// server.
14543	googleapi.ServerResponse `json:"-"`
14544
14545	// ForceSendFields is a list of field names (e.g. "Country") to
14546	// unconditionally include in API requests. By default, fields with
14547	// empty or default values are omitted from API requests. However, any
14548	// non-pointer, non-interface field appearing in ForceSendFields will be
14549	// sent to the server regardless of whether the field is empty or not.
14550	// This may be used to include empty fields in Patch requests.
14551	ForceSendFields []string `json:"-"`
14552
14553	// NullFields is a list of field names (e.g. "Country") to include in
14554	// API requests with the JSON null value. By default, fields with empty
14555	// values are omitted from API requests. However, any field with an
14556	// empty value appearing in NullFields will be sent to the server as
14557	// null. It is an error if a field in this list has a non-empty value.
14558	// This may be used to include null fields in Patch requests.
14559	NullFields []string `json:"-"`
14560}
14561
14562func (s *ReturnPolicy) MarshalJSON() ([]byte, error) {
14563	type NoMethod ReturnPolicy
14564	raw := NoMethod(*s)
14565	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14566}
14567
14568// ReturnPolicyOnline: Return policy online object. This is currently
14569// used to represent return policies for ads and free listings programs.
14570type ReturnPolicyOnline struct {
14571	// Countries: The countries of sale where the return policy is
14572	// applicable. The values must be a valid 2 letter ISO 3166 code, e.g.
14573	// "US".
14574	Countries []string `json:"countries,omitempty"`
14575
14576	// ItemConditions: The item conditions that are accepted for returns.
14577	// This is required to not be empty unless the type of return policy is
14578	// noReturns.
14579	//
14580	// Possible values:
14581	//   "ITEM_CONDITION_UNSPECIFIED" - Default value. This value is unused.
14582	//   "NEW" - New.
14583	//   "USED" - Used.
14584	ItemConditions []string `json:"itemConditions,omitempty"`
14585
14586	// Label: The unique user-defined label of the return policy. The same
14587	// label cannot be used in different return policies for the same
14588	// country. Policies with the label 'default' will apply to all
14589	// products, unless a product specifies a return_policy_label attribute.
14590	Label string `json:"label,omitempty"`
14591
14592	// Name: The name of the policy as shown in Merchant Center.
14593	Name string `json:"name,omitempty"`
14594
14595	// Policy: The return policy.
14596	Policy *ReturnPolicyOnlinePolicy `json:"policy,omitempty"`
14597
14598	// RestockingFee: The restocking fee that applies to all return reason
14599	// categories. This would be treated as a free restocking fee if the
14600	// value is not set.
14601	RestockingFee *ReturnPolicyOnlineRestockingFee `json:"restockingFee,omitempty"`
14602
14603	// ReturnMethods: The return methods of how customers can return an
14604	// item. This value is required to not be empty unless the type of
14605	// return policy is noReturns.
14606	//
14607	// Possible values:
14608	//   "RETURN_METHOD_UNSPECIFIED" - Default value. This value is unused.
14609	//   "BY_MAIL" - By mail.
14610	//   "IN_STORE" - In store.
14611	//   "AT_A_KIOSK" - At a kiosk.
14612	ReturnMethods []string `json:"returnMethods,omitempty"`
14613
14614	// ReturnPolicyId: Output only. Return policy ID generated by Google.
14615	ReturnPolicyId string `json:"returnPolicyId,omitempty"`
14616
14617	// ReturnPolicyUri: The return policy uri. This can used by Google to do
14618	// a sanity check for the policy.
14619	ReturnPolicyUri string `json:"returnPolicyUri,omitempty"`
14620
14621	// ReturnReasonCategoryInfo: The return reason category information.
14622	// This required to not be empty unless the type of return policy is
14623	// noReturns.
14624	ReturnReasonCategoryInfo []*ReturnPolicyOnlineReturnReasonCategoryInfo `json:"returnReasonCategoryInfo,omitempty"`
14625
14626	// ServerResponse contains the HTTP response code and headers from the
14627	// server.
14628	googleapi.ServerResponse `json:"-"`
14629
14630	// ForceSendFields is a list of field names (e.g. "Countries") to
14631	// unconditionally include in API requests. By default, fields with
14632	// empty or default values are omitted from API requests. However, any
14633	// non-pointer, non-interface field appearing in ForceSendFields will be
14634	// sent to the server regardless of whether the field is empty or not.
14635	// This may be used to include empty fields in Patch requests.
14636	ForceSendFields []string `json:"-"`
14637
14638	// NullFields is a list of field names (e.g. "Countries") to include in
14639	// API requests with the JSON null value. By default, fields with empty
14640	// values are omitted from API requests. However, any field with an
14641	// empty value appearing in NullFields will be sent to the server as
14642	// null. It is an error if a field in this list has a non-empty value.
14643	// This may be used to include null fields in Patch requests.
14644	NullFields []string `json:"-"`
14645}
14646
14647func (s *ReturnPolicyOnline) MarshalJSON() ([]byte, error) {
14648	type NoMethod ReturnPolicyOnline
14649	raw := NoMethod(*s)
14650	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14651}
14652
14653// ReturnPolicyOnlinePolicy: The available policies.
14654type ReturnPolicyOnlinePolicy struct {
14655	// Days: The number of days items can be returned after delivery, where
14656	// one day is defined to be 24 hours after the delivery timestamp.
14657	// Required for `numberOfDaysAfterDelivery` returns.
14658	Days int64 `json:"days,omitempty,string"`
14659
14660	// Type: Policy type.
14661	//
14662	// Possible values:
14663	//   "TYPE_UNSPECIFIED" - Default value. This value is unused.
14664	//   "NUMBER_OF_DAYS_AFTER_DELIVERY" - Number of days after a return is
14665	// delivered.
14666	//   "NO_RETURNS" - No returns.
14667	//   "LIFETIME_RETURNS" - Life time returns.
14668	Type string `json:"type,omitempty"`
14669
14670	// ForceSendFields is a list of field names (e.g. "Days") to
14671	// unconditionally include in API requests. By default, fields with
14672	// empty or default values are omitted from API requests. However, any
14673	// non-pointer, non-interface field appearing in ForceSendFields will be
14674	// sent to the server regardless of whether the field is empty or not.
14675	// This may be used to include empty fields in Patch requests.
14676	ForceSendFields []string `json:"-"`
14677
14678	// NullFields is a list of field names (e.g. "Days") to include in API
14679	// requests with the JSON null value. By default, fields with empty
14680	// values are omitted from API requests. However, any field with an
14681	// empty value appearing in NullFields will be sent to the server as
14682	// null. It is an error if a field in this list has a non-empty value.
14683	// This may be used to include null fields in Patch requests.
14684	NullFields []string `json:"-"`
14685}
14686
14687func (s *ReturnPolicyOnlinePolicy) MarshalJSON() ([]byte, error) {
14688	type NoMethod ReturnPolicyOnlinePolicy
14689	raw := NoMethod(*s)
14690	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14691}
14692
14693// ReturnPolicyOnlineRestockingFee: The restocking fee. This can either
14694// be a fixed fee or a micro percent.
14695type ReturnPolicyOnlineRestockingFee struct {
14696	// FixedFee: Fixed restocking fee.
14697	FixedFee *PriceAmount `json:"fixedFee,omitempty"`
14698
14699	// MicroPercent: Percent of total price in micros. 15,000,000 means 15%
14700	// of the total price would be charged.
14701	MicroPercent int64 `json:"microPercent,omitempty"`
14702
14703	// ForceSendFields is a list of field names (e.g. "FixedFee") to
14704	// unconditionally include in API requests. By default, fields with
14705	// empty or default values are omitted from API requests. However, any
14706	// non-pointer, non-interface field appearing in ForceSendFields will be
14707	// sent to the server regardless of whether the field is empty or not.
14708	// This may be used to include empty fields in Patch requests.
14709	ForceSendFields []string `json:"-"`
14710
14711	// NullFields is a list of field names (e.g. "FixedFee") to include in
14712	// API requests with the JSON null value. By default, fields with empty
14713	// values are omitted from API requests. However, any field with an
14714	// empty value appearing in NullFields will be sent to the server as
14715	// null. It is an error if a field in this list has a non-empty value.
14716	// This may be used to include null fields in Patch requests.
14717	NullFields []string `json:"-"`
14718}
14719
14720func (s *ReturnPolicyOnlineRestockingFee) MarshalJSON() ([]byte, error) {
14721	type NoMethod ReturnPolicyOnlineRestockingFee
14722	raw := NoMethod(*s)
14723	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14724}
14725
14726// ReturnPolicyOnlineReturnReasonCategoryInfo: The return reason
14727// category info wrapper.
14728type ReturnPolicyOnlineReturnReasonCategoryInfo struct {
14729	// ReturnLabelSource: The corresponding return label source.
14730	//
14731	// Possible values:
14732	//   "RETURN_LABEL_SOURCE_UNSPECIFIED" - Default value. This value is
14733	// unused.
14734	//   "DOWNLOAD_AND_PRINT" - Download and print the label.
14735	//   "IN_THE_BOX" - Label in the box.
14736	//   "CUSTOMER_RESPONSIBILITY" - Customers' responsibility to get the
14737	// label.
14738	ReturnLabelSource string `json:"returnLabelSource,omitempty"`
14739
14740	// ReturnReasonCategory: The return reason category.
14741	//
14742	// Possible values:
14743	//   "RETURN_REASON_CATEGORY_UNSPECIFIED" - Default value. This value is
14744	// unused.
14745	//   "BUYER_REMORSE" - Buyer remorse.
14746	//   "ITEM_DEFECT" - Item defect.
14747	ReturnReasonCategory string `json:"returnReasonCategory,omitempty"`
14748
14749	// ReturnShippingFee: The corresponding return shipping fee. This is
14750	// only applicable when returnLabelSource is not the customer's
14751	// responsibility.
14752	ReturnShippingFee *ReturnPolicyOnlineReturnShippingFee `json:"returnShippingFee,omitempty"`
14753
14754	// ForceSendFields is a list of field names (e.g. "ReturnLabelSource")
14755	// to unconditionally include in API requests. By default, fields with
14756	// empty or default values are omitted from API requests. However, any
14757	// non-pointer, non-interface field appearing in ForceSendFields will be
14758	// sent to the server regardless of whether the field is empty or not.
14759	// This may be used to include empty fields in Patch requests.
14760	ForceSendFields []string `json:"-"`
14761
14762	// NullFields is a list of field names (e.g. "ReturnLabelSource") to
14763	// include in API requests with the JSON null value. By default, fields
14764	// with empty values are omitted from API requests. However, any field
14765	// with an empty value appearing in NullFields will be sent to the
14766	// server as null. It is an error if a field in this list has a
14767	// non-empty value. This may be used to include null fields in Patch
14768	// requests.
14769	NullFields []string `json:"-"`
14770}
14771
14772func (s *ReturnPolicyOnlineReturnReasonCategoryInfo) MarshalJSON() ([]byte, error) {
14773	type NoMethod ReturnPolicyOnlineReturnReasonCategoryInfo
14774	raw := NoMethod(*s)
14775	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14776}
14777
14778// ReturnPolicyOnlineReturnShippingFee: The return shipping fee. This
14779// can either be a fixed fee or a boolean to indicate that the customer
14780// pays the actual shipping cost.
14781type ReturnPolicyOnlineReturnShippingFee struct {
14782	// FixedFee: Fixed return shipping fee amount. This value is only
14783	// applicable when type is FIXED. We will treat the return shipping fee
14784	// as free if type is FIXED and this value is not set.
14785	FixedFee *PriceAmount `json:"fixedFee,omitempty"`
14786
14787	// Type: Type of return shipping fee.
14788	//
14789	// Possible values:
14790	//   "TYPE_UNSPECIFIED" - Default value. This value is unused.
14791	//   "FIXED" - The return shipping fee is a fixed value.
14792	//   "CUSTOMER_PAYING_ACTUAL_FEE" - Customer will pay the actual return
14793	// shipping fee.
14794	Type string `json:"type,omitempty"`
14795
14796	// ForceSendFields is a list of field names (e.g. "FixedFee") to
14797	// unconditionally include in API requests. By default, fields with
14798	// empty or default values are omitted from API requests. However, any
14799	// non-pointer, non-interface field appearing in ForceSendFields will be
14800	// sent to the server regardless of whether the field is empty or not.
14801	// This may be used to include empty fields in Patch requests.
14802	ForceSendFields []string `json:"-"`
14803
14804	// NullFields is a list of field names (e.g. "FixedFee") to include in
14805	// API requests with the JSON null value. By default, fields with empty
14806	// values are omitted from API requests. However, any field with an
14807	// empty value appearing in NullFields will be sent to the server as
14808	// null. It is an error if a field in this list has a non-empty value.
14809	// This may be used to include null fields in Patch requests.
14810	NullFields []string `json:"-"`
14811}
14812
14813func (s *ReturnPolicyOnlineReturnShippingFee) MarshalJSON() ([]byte, error) {
14814	type NoMethod ReturnPolicyOnlineReturnShippingFee
14815	raw := NoMethod(*s)
14816	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14817}
14818
14819type ReturnPolicyPolicy struct {
14820	// LastReturnDate: Required. Last day for returning the items. In ISO
14821	// 8601 format. When specifying the return window like this, set the
14822	// policy type to "lastReturnDate". Use this for seasonal overrides
14823	// only.
14824	LastReturnDate string `json:"lastReturnDate,omitempty"`
14825
14826	// NumberOfDays: The number of days items can be returned after
14827	// delivery, where one day is defined to be 24 hours after the delivery
14828	// timestamp. When specifying the return window like this, set the
14829	// policy type to "numberOfDaysAfterDelivery". Acceptable values are 30,
14830	// 45, 60, 90, 100, 180, 270 and 365 for the default policy. Additional
14831	// policies further allow 14, 15, 21 and 28 days, but note that for most
14832	// items a minimum of 30 days is required for returns. Exceptions may be
14833	// made for electronics. A policy of less than 30 days can only be
14834	// applied to those items.
14835	NumberOfDays int64 `json:"numberOfDays,omitempty,string"`
14836
14837	// Type: Policy type. Use "lastReturnDate" for seasonal overrides only.
14838	// Note that for most items a minimum of 30 days is required for
14839	// returns. Exceptions may be made for electronics or non-returnable
14840	// items such as food, perishables, and living things. A policy of less
14841	// than 30 days can only be applied to those items. Acceptable values
14842	// are: - "lastReturnDate" - "lifetimeReturns" - "noReturns" -
14843	// "numberOfDaysAfterDelivery"
14844	Type string `json:"type,omitempty"`
14845
14846	// ForceSendFields is a list of field names (e.g. "LastReturnDate") to
14847	// unconditionally include in API requests. By default, fields with
14848	// empty or default values are omitted from API requests. However, any
14849	// non-pointer, non-interface field appearing in ForceSendFields will be
14850	// sent to the server regardless of whether the field is empty or not.
14851	// This may be used to include empty fields in Patch requests.
14852	ForceSendFields []string `json:"-"`
14853
14854	// NullFields is a list of field names (e.g. "LastReturnDate") to
14855	// include in API requests with the JSON null value. By default, fields
14856	// with empty values are omitted from API requests. However, any field
14857	// with an empty value appearing in NullFields will be sent to the
14858	// server as null. It is an error if a field in this list has a
14859	// non-empty value. This may be used to include null fields in Patch
14860	// requests.
14861	NullFields []string `json:"-"`
14862}
14863
14864func (s *ReturnPolicyPolicy) MarshalJSON() ([]byte, error) {
14865	type NoMethod ReturnPolicyPolicy
14866	raw := NoMethod(*s)
14867	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14868}
14869
14870type ReturnPolicySeasonalOverride struct {
14871	// EndDate: Required. Last day on which the override applies. In ISO
14872	// 8601 format.
14873	EndDate string `json:"endDate,omitempty"`
14874
14875	// Name: Required. The name of the seasonal override as shown in
14876	// Merchant Center.
14877	Name string `json:"name,omitempty"`
14878
14879	// Policy: Required. The policy which is in effect during that time.
14880	Policy *ReturnPolicyPolicy `json:"policy,omitempty"`
14881
14882	// StartDate: Required. First day on which the override applies. In ISO
14883	// 8601 format.
14884	StartDate string `json:"startDate,omitempty"`
14885
14886	// ForceSendFields is a list of field names (e.g. "EndDate") to
14887	// unconditionally include in API requests. By default, fields with
14888	// empty or default values are omitted from API requests. However, any
14889	// non-pointer, non-interface field appearing in ForceSendFields will be
14890	// sent to the server regardless of whether the field is empty or not.
14891	// This may be used to include empty fields in Patch requests.
14892	ForceSendFields []string `json:"-"`
14893
14894	// NullFields is a list of field names (e.g. "EndDate") to include in
14895	// API requests with the JSON null value. By default, fields with empty
14896	// values are omitted from API requests. However, any field with an
14897	// empty value appearing in NullFields will be sent to the server as
14898	// null. It is an error if a field in this list has a non-empty value.
14899	// This may be used to include null fields in Patch requests.
14900	NullFields []string `json:"-"`
14901}
14902
14903func (s *ReturnPolicySeasonalOverride) MarshalJSON() ([]byte, error) {
14904	type NoMethod ReturnPolicySeasonalOverride
14905	raw := NoMethod(*s)
14906	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14907}
14908
14909type ReturnPricingInfo struct {
14910	// ChargeReturnShippingFee: Default option for whether merchant should
14911	// charge the customer for return shipping costs, based on customer
14912	// selected return reason and merchant's return policy for the items
14913	// being returned.
14914	ChargeReturnShippingFee bool `json:"chargeReturnShippingFee,omitempty"`
14915
14916	// MaxReturnShippingFee: Maximum return shipping costs that may be
14917	// charged to the customer depending on merchant's assessment of the
14918	// return reason and the merchant's return policy for the items being
14919	// returned.
14920	MaxReturnShippingFee *MonetaryAmount `json:"maxReturnShippingFee,omitempty"`
14921
14922	// RefundableItemsTotalAmount: Total amount that can be refunded for the
14923	// items in this return. It represents the total amount received by the
14924	// merchant for the items, after applying merchant coupons.
14925	RefundableItemsTotalAmount *MonetaryAmount `json:"refundableItemsTotalAmount,omitempty"`
14926
14927	// RefundableShippingAmount: Maximum amount that can be refunded for the
14928	// original shipping fee.
14929	RefundableShippingAmount *MonetaryAmount `json:"refundableShippingAmount,omitempty"`
14930
14931	// TotalRefundedAmount: Total amount already refunded by the merchant.
14932	// It includes all types of refunds (items, shipping, etc.) Not provided
14933	// if no refund has been applied yet.
14934	TotalRefundedAmount *MonetaryAmount `json:"totalRefundedAmount,omitempty"`
14935
14936	// ForceSendFields is a list of field names (e.g.
14937	// "ChargeReturnShippingFee") to unconditionally include in API
14938	// requests. By default, fields with empty or default values are omitted
14939	// from API requests. However, any non-pointer, non-interface field
14940	// appearing in ForceSendFields will be sent to the server regardless of
14941	// whether the field is empty or not. This may be used to include empty
14942	// fields in Patch requests.
14943	ForceSendFields []string `json:"-"`
14944
14945	// NullFields is a list of field names (e.g. "ChargeReturnShippingFee")
14946	// to include in API requests with the JSON null value. By default,
14947	// fields with empty values are omitted from API requests. However, any
14948	// field with an empty value appearing in NullFields will be sent to the
14949	// server as null. It is an error if a field in this list has a
14950	// non-empty value. This may be used to include null fields in Patch
14951	// requests.
14952	NullFields []string `json:"-"`
14953}
14954
14955func (s *ReturnPricingInfo) MarshalJSON() ([]byte, error) {
14956	type NoMethod ReturnPricingInfo
14957	raw := NoMethod(*s)
14958	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14959}
14960
14961type ReturnShipment struct {
14962	// CreationDate: The date of creation of the shipment, in ISO 8601
14963	// format.
14964	CreationDate string `json:"creationDate,omitempty"`
14965
14966	// DeliveryDate: The date of delivery of the shipment, in ISO 8601
14967	// format.
14968	DeliveryDate string `json:"deliveryDate,omitempty"`
14969
14970	// ReturnMethodType: Type of the return method. Acceptable values are: -
14971	// "byMail" - "contactCustomerSupport" - "returnless" -
14972	// "inStore"
14973	ReturnMethodType string `json:"returnMethodType,omitempty"`
14974
14975	// ShipmentId: Shipment ID generated by Google.
14976	ShipmentId string `json:"shipmentId,omitempty"`
14977
14978	// ShipmentTrackingInfos: Tracking information of the shipment. One
14979	// return shipment might be handled by several shipping carriers
14980	// sequentially.
14981	ShipmentTrackingInfos []*ShipmentTrackingInfo `json:"shipmentTrackingInfos,omitempty"`
14982
14983	// ShippingDate: The date of shipping of the shipment, in ISO 8601
14984	// format.
14985	ShippingDate string `json:"shippingDate,omitempty"`
14986
14987	// State: State of the shipment. Acceptable values are: - "completed"
14988	// - "new" - "shipped" - "undeliverable" - "pending"
14989	State string `json:"state,omitempty"`
14990
14991	// ForceSendFields is a list of field names (e.g. "CreationDate") to
14992	// unconditionally include in API requests. By default, fields with
14993	// empty or default values are omitted from API requests. However, any
14994	// non-pointer, non-interface field appearing in ForceSendFields will be
14995	// sent to the server regardless of whether the field is empty or not.
14996	// This may be used to include empty fields in Patch requests.
14997	ForceSendFields []string `json:"-"`
14998
14999	// NullFields is a list of field names (e.g. "CreationDate") to include
15000	// in API requests with the JSON null value. By default, fields with
15001	// empty values are omitted from API requests. However, any field with
15002	// an empty value appearing in NullFields will be sent to the server as
15003	// null. It is an error if a field in this list has a non-empty value.
15004	// This may be used to include null fields in Patch requests.
15005	NullFields []string `json:"-"`
15006}
15007
15008func (s *ReturnShipment) MarshalJSON() ([]byte, error) {
15009	type NoMethod ReturnShipment
15010	raw := NoMethod(*s)
15011	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15012}
15013
15014// ReturnShippingLabel: Return shipping label for a Buy on Google
15015// merchant-managed return.
15016type ReturnShippingLabel struct {
15017	// Carrier: Name of the carrier.
15018	Carrier string `json:"carrier,omitempty"`
15019
15020	// LabelUri: The URL for the return shipping label in PDF format
15021	LabelUri string `json:"labelUri,omitempty"`
15022
15023	// TrackingId: The tracking id of this return label.
15024	TrackingId string `json:"trackingId,omitempty"`
15025
15026	// ServerResponse contains the HTTP response code and headers from the
15027	// server.
15028	googleapi.ServerResponse `json:"-"`
15029
15030	// ForceSendFields is a list of field names (e.g. "Carrier") to
15031	// unconditionally include in API requests. By default, fields with
15032	// empty or default values are omitted from API requests. However, any
15033	// non-pointer, non-interface field appearing in ForceSendFields will be
15034	// sent to the server regardless of whether the field is empty or not.
15035	// This may be used to include empty fields in Patch requests.
15036	ForceSendFields []string `json:"-"`
15037
15038	// NullFields is a list of field names (e.g. "Carrier") to include in
15039	// API requests with the JSON null value. By default, fields with empty
15040	// values are omitted from API requests. However, any field with an
15041	// empty value appearing in NullFields will be sent to the server as
15042	// null. It is an error if a field in this list has a non-empty value.
15043	// This may be used to include null fields in Patch requests.
15044	NullFields []string `json:"-"`
15045}
15046
15047func (s *ReturnShippingLabel) MarshalJSON() ([]byte, error) {
15048	type NoMethod ReturnShippingLabel
15049	raw := NoMethod(*s)
15050	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15051}
15052
15053type ReturnaddressCustomBatchRequest struct {
15054	// Entries: The request entries to be processed in the batch.
15055	Entries []*ReturnaddressCustomBatchRequestEntry `json:"entries,omitempty"`
15056
15057	// ForceSendFields is a list of field names (e.g. "Entries") to
15058	// unconditionally include in API requests. By default, fields with
15059	// empty or default values are omitted from API requests. However, any
15060	// non-pointer, non-interface field appearing in ForceSendFields will be
15061	// sent to the server regardless of whether the field is empty or not.
15062	// This may be used to include empty fields in Patch requests.
15063	ForceSendFields []string `json:"-"`
15064
15065	// NullFields is a list of field names (e.g. "Entries") to include in
15066	// API requests with the JSON null value. By default, fields with empty
15067	// values are omitted from API requests. However, any field with an
15068	// empty value appearing in NullFields will be sent to the server as
15069	// null. It is an error if a field in this list has a non-empty value.
15070	// This may be used to include null fields in Patch requests.
15071	NullFields []string `json:"-"`
15072}
15073
15074func (s *ReturnaddressCustomBatchRequest) MarshalJSON() ([]byte, error) {
15075	type NoMethod ReturnaddressCustomBatchRequest
15076	raw := NoMethod(*s)
15077	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15078}
15079
15080type ReturnaddressCustomBatchRequestEntry struct {
15081	// BatchId: An entry ID, unique within the batch request.
15082	BatchId int64 `json:"batchId,omitempty"`
15083
15084	// MerchantId: The Merchant Center account ID.
15085	MerchantId uint64 `json:"merchantId,omitempty,string"`
15086
15087	// Method: Method of the batch request entry. Acceptable values are: -
15088	// "delete" - "get" - "insert"
15089	Method string `json:"method,omitempty"`
15090
15091	// ReturnAddress: The return address to submit. This should be set only
15092	// if the method is `insert`.
15093	ReturnAddress *ReturnAddress `json:"returnAddress,omitempty"`
15094
15095	// ReturnAddressId: The return address ID. This should be set only if
15096	// the method is `delete` or `get`.
15097	ReturnAddressId string `json:"returnAddressId,omitempty"`
15098
15099	// ForceSendFields is a list of field names (e.g. "BatchId") to
15100	// unconditionally include in API requests. By default, fields with
15101	// empty or default values are omitted from API requests. However, any
15102	// non-pointer, non-interface field appearing in ForceSendFields will be
15103	// sent to the server regardless of whether the field is empty or not.
15104	// This may be used to include empty fields in Patch requests.
15105	ForceSendFields []string `json:"-"`
15106
15107	// NullFields is a list of field names (e.g. "BatchId") to include in
15108	// API requests with the JSON null value. By default, fields with empty
15109	// values are omitted from API requests. However, any field with an
15110	// empty value appearing in NullFields will be sent to the server as
15111	// null. It is an error if a field in this list has a non-empty value.
15112	// This may be used to include null fields in Patch requests.
15113	NullFields []string `json:"-"`
15114}
15115
15116func (s *ReturnaddressCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
15117	type NoMethod ReturnaddressCustomBatchRequestEntry
15118	raw := NoMethod(*s)
15119	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15120}
15121
15122type ReturnaddressCustomBatchResponse struct {
15123	// Entries: The result of the execution of the batch requests.
15124	Entries []*ReturnaddressCustomBatchResponseEntry `json:"entries,omitempty"`
15125
15126	// Kind: Identifies what kind of resource this is. Value: the fixed
15127	// string "content#returnaddressCustomBatchResponse".
15128	Kind string `json:"kind,omitempty"`
15129
15130	// ServerResponse contains the HTTP response code and headers from the
15131	// server.
15132	googleapi.ServerResponse `json:"-"`
15133
15134	// ForceSendFields is a list of field names (e.g. "Entries") to
15135	// unconditionally include in API requests. By default, fields with
15136	// empty or default values are omitted from API requests. However, any
15137	// non-pointer, non-interface field appearing in ForceSendFields will be
15138	// sent to the server regardless of whether the field is empty or not.
15139	// This may be used to include empty fields in Patch requests.
15140	ForceSendFields []string `json:"-"`
15141
15142	// NullFields is a list of field names (e.g. "Entries") to include in
15143	// API requests with the JSON null value. By default, fields with empty
15144	// values are omitted from API requests. However, any field with an
15145	// empty value appearing in NullFields will be sent to the server as
15146	// null. It is an error if a field in this list has a non-empty value.
15147	// This may be used to include null fields in Patch requests.
15148	NullFields []string `json:"-"`
15149}
15150
15151func (s *ReturnaddressCustomBatchResponse) MarshalJSON() ([]byte, error) {
15152	type NoMethod ReturnaddressCustomBatchResponse
15153	raw := NoMethod(*s)
15154	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15155}
15156
15157type ReturnaddressCustomBatchResponseEntry struct {
15158	// BatchId: The ID of the request entry to which this entry responds.
15159	BatchId int64 `json:"batchId,omitempty"`
15160
15161	// Errors: A list of errors defined if, and only if, the request failed.
15162	Errors *Errors `json:"errors,omitempty"`
15163
15164	// Kind: Identifies what kind of resource this is. Value: the fixed
15165	// string "content#returnaddressCustomBatchResponseEntry"
15166	Kind string `json:"kind,omitempty"`
15167
15168	// ReturnAddress: The retrieved return address.
15169	ReturnAddress *ReturnAddress `json:"returnAddress,omitempty"`
15170
15171	// ForceSendFields is a list of field names (e.g. "BatchId") to
15172	// unconditionally include in API requests. By default, fields with
15173	// empty or default values are omitted from API requests. However, any
15174	// non-pointer, non-interface field appearing in ForceSendFields will be
15175	// sent to the server regardless of whether the field is empty or not.
15176	// This may be used to include empty fields in Patch requests.
15177	ForceSendFields []string `json:"-"`
15178
15179	// NullFields is a list of field names (e.g. "BatchId") to include in
15180	// API requests with the JSON null value. By default, fields with empty
15181	// values are omitted from API requests. However, any field with an
15182	// empty value appearing in NullFields will be sent to the server as
15183	// null. It is an error if a field in this list has a non-empty value.
15184	// This may be used to include null fields in Patch requests.
15185	NullFields []string `json:"-"`
15186}
15187
15188func (s *ReturnaddressCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
15189	type NoMethod ReturnaddressCustomBatchResponseEntry
15190	raw := NoMethod(*s)
15191	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15192}
15193
15194type ReturnaddressListResponse struct {
15195	// Kind: Identifies what kind of resource this is. Value: the fixed
15196	// string "content#returnaddressListResponse".
15197	Kind string `json:"kind,omitempty"`
15198
15199	// NextPageToken: The token for the retrieval of the next page of
15200	// addresses.
15201	NextPageToken string `json:"nextPageToken,omitempty"`
15202
15203	Resources []*ReturnAddress `json:"resources,omitempty"`
15204
15205	// ServerResponse contains the HTTP response code and headers from the
15206	// server.
15207	googleapi.ServerResponse `json:"-"`
15208
15209	// ForceSendFields is a list of field names (e.g. "Kind") to
15210	// unconditionally include in API requests. By default, fields with
15211	// empty or default values are omitted from API requests. However, any
15212	// non-pointer, non-interface field appearing in ForceSendFields will be
15213	// sent to the server regardless of whether the field is empty or not.
15214	// This may be used to include empty fields in Patch requests.
15215	ForceSendFields []string `json:"-"`
15216
15217	// NullFields is a list of field names (e.g. "Kind") to include in API
15218	// requests with the JSON null value. By default, fields with empty
15219	// values are omitted from API requests. However, any field with an
15220	// empty value appearing in NullFields will be sent to the server as
15221	// null. It is an error if a field in this list has a non-empty value.
15222	// This may be used to include null fields in Patch requests.
15223	NullFields []string `json:"-"`
15224}
15225
15226func (s *ReturnaddressListResponse) MarshalJSON() ([]byte, error) {
15227	type NoMethod ReturnaddressListResponse
15228	raw := NoMethod(*s)
15229	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15230}
15231
15232type ReturnpolicyCustomBatchRequest struct {
15233	// Entries: The request entries to be processed in the batch.
15234	Entries []*ReturnpolicyCustomBatchRequestEntry `json:"entries,omitempty"`
15235
15236	// ForceSendFields is a list of field names (e.g. "Entries") to
15237	// unconditionally include in API requests. By default, fields with
15238	// empty or default values are omitted from API requests. However, any
15239	// non-pointer, non-interface field appearing in ForceSendFields will be
15240	// sent to the server regardless of whether the field is empty or not.
15241	// This may be used to include empty fields in Patch requests.
15242	ForceSendFields []string `json:"-"`
15243
15244	// NullFields is a list of field names (e.g. "Entries") to include in
15245	// API requests with the JSON null value. By default, fields with empty
15246	// values are omitted from API requests. However, any field with an
15247	// empty value appearing in NullFields will be sent to the server as
15248	// null. It is an error if a field in this list has a non-empty value.
15249	// This may be used to include null fields in Patch requests.
15250	NullFields []string `json:"-"`
15251}
15252
15253func (s *ReturnpolicyCustomBatchRequest) MarshalJSON() ([]byte, error) {
15254	type NoMethod ReturnpolicyCustomBatchRequest
15255	raw := NoMethod(*s)
15256	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15257}
15258
15259type ReturnpolicyCustomBatchRequestEntry struct {
15260	// BatchId: An entry ID, unique within the batch request.
15261	BatchId int64 `json:"batchId,omitempty"`
15262
15263	// MerchantId: The Merchant Center account ID.
15264	MerchantId uint64 `json:"merchantId,omitempty,string"`
15265
15266	// Method: Method of the batch request entry. Acceptable values are: -
15267	// "delete" - "get" - "insert"
15268	Method string `json:"method,omitempty"`
15269
15270	// ReturnPolicy: The return policy to submit. This should be set only if
15271	// the method is `insert`.
15272	ReturnPolicy *ReturnPolicy `json:"returnPolicy,omitempty"`
15273
15274	// ReturnPolicyId: The return policy ID. This should be set only if the
15275	// method is `delete` or `get`.
15276	ReturnPolicyId string `json:"returnPolicyId,omitempty"`
15277
15278	// ForceSendFields is a list of field names (e.g. "BatchId") to
15279	// unconditionally include in API requests. By default, fields with
15280	// empty or default values are omitted from API requests. However, any
15281	// non-pointer, non-interface field appearing in ForceSendFields will be
15282	// sent to the server regardless of whether the field is empty or not.
15283	// This may be used to include empty fields in Patch requests.
15284	ForceSendFields []string `json:"-"`
15285
15286	// NullFields is a list of field names (e.g. "BatchId") to include in
15287	// API requests with the JSON null value. By default, fields with empty
15288	// values are omitted from API requests. However, any field with an
15289	// empty value appearing in NullFields will be sent to the server as
15290	// null. It is an error if a field in this list has a non-empty value.
15291	// This may be used to include null fields in Patch requests.
15292	NullFields []string `json:"-"`
15293}
15294
15295func (s *ReturnpolicyCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
15296	type NoMethod ReturnpolicyCustomBatchRequestEntry
15297	raw := NoMethod(*s)
15298	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15299}
15300
15301type ReturnpolicyCustomBatchResponse struct {
15302	// Entries: The result of the execution of the batch requests.
15303	Entries []*ReturnpolicyCustomBatchResponseEntry `json:"entries,omitempty"`
15304
15305	// Kind: Identifies what kind of resource this is. Value: the fixed
15306	// string "content#returnpolicyCustomBatchResponse".
15307	Kind string `json:"kind,omitempty"`
15308
15309	// ServerResponse contains the HTTP response code and headers from the
15310	// server.
15311	googleapi.ServerResponse `json:"-"`
15312
15313	// ForceSendFields is a list of field names (e.g. "Entries") to
15314	// unconditionally include in API requests. By default, fields with
15315	// empty or default values are omitted from API requests. However, any
15316	// non-pointer, non-interface field appearing in ForceSendFields will be
15317	// sent to the server regardless of whether the field is empty or not.
15318	// This may be used to include empty fields in Patch requests.
15319	ForceSendFields []string `json:"-"`
15320
15321	// NullFields is a list of field names (e.g. "Entries") to include in
15322	// API requests with the JSON null value. By default, fields with empty
15323	// values are omitted from API requests. However, any field with an
15324	// empty value appearing in NullFields will be sent to the server as
15325	// null. It is an error if a field in this list has a non-empty value.
15326	// This may be used to include null fields in Patch requests.
15327	NullFields []string `json:"-"`
15328}
15329
15330func (s *ReturnpolicyCustomBatchResponse) MarshalJSON() ([]byte, error) {
15331	type NoMethod ReturnpolicyCustomBatchResponse
15332	raw := NoMethod(*s)
15333	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15334}
15335
15336type ReturnpolicyCustomBatchResponseEntry struct {
15337	// BatchId: The ID of the request entry to which this entry responds.
15338	BatchId int64 `json:"batchId,omitempty"`
15339
15340	// Errors: A list of errors defined if, and only if, the request failed.
15341	Errors *Errors `json:"errors,omitempty"`
15342
15343	// Kind: Identifies what kind of resource this is. Value: the fixed
15344	// string "content#returnpolicyCustomBatchResponseEntry"
15345	Kind string `json:"kind,omitempty"`
15346
15347	// ReturnPolicy: The retrieved return policy.
15348	ReturnPolicy *ReturnPolicy `json:"returnPolicy,omitempty"`
15349
15350	// ForceSendFields is a list of field names (e.g. "BatchId") to
15351	// unconditionally include in API requests. By default, fields with
15352	// empty or default values are omitted from API requests. However, any
15353	// non-pointer, non-interface field appearing in ForceSendFields will be
15354	// sent to the server regardless of whether the field is empty or not.
15355	// This may be used to include empty fields in Patch requests.
15356	ForceSendFields []string `json:"-"`
15357
15358	// NullFields is a list of field names (e.g. "BatchId") to include in
15359	// API requests with the JSON null value. By default, fields with empty
15360	// values are omitted from API requests. However, any field with an
15361	// empty value appearing in NullFields will be sent to the server as
15362	// null. It is an error if a field in this list has a non-empty value.
15363	// This may be used to include null fields in Patch requests.
15364	NullFields []string `json:"-"`
15365}
15366
15367func (s *ReturnpolicyCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
15368	type NoMethod ReturnpolicyCustomBatchResponseEntry
15369	raw := NoMethod(*s)
15370	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15371}
15372
15373type ReturnpolicyListResponse struct {
15374	// Kind: Identifies what kind of resource this is. Value: the fixed
15375	// string "content#returnpolicyListResponse".
15376	Kind string `json:"kind,omitempty"`
15377
15378	Resources []*ReturnPolicy `json:"resources,omitempty"`
15379
15380	// ServerResponse contains the HTTP response code and headers from the
15381	// server.
15382	googleapi.ServerResponse `json:"-"`
15383
15384	// ForceSendFields is a list of field names (e.g. "Kind") to
15385	// unconditionally include in API requests. By default, fields with
15386	// empty or default values are omitted from API requests. However, any
15387	// non-pointer, non-interface field appearing in ForceSendFields will be
15388	// sent to the server regardless of whether the field is empty or not.
15389	// This may be used to include empty fields in Patch requests.
15390	ForceSendFields []string `json:"-"`
15391
15392	// NullFields is a list of field names (e.g. "Kind") to include in API
15393	// requests with the JSON null value. By default, fields with empty
15394	// values are omitted from API requests. However, any field with an
15395	// empty value appearing in NullFields will be sent to the server as
15396	// null. It is an error if a field in this list has a non-empty value.
15397	// This may be used to include null fields in Patch requests.
15398	NullFields []string `json:"-"`
15399}
15400
15401func (s *ReturnpolicyListResponse) MarshalJSON() ([]byte, error) {
15402	type NoMethod ReturnpolicyListResponse
15403	raw := NoMethod(*s)
15404	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15405}
15406
15407type Row struct {
15408	// Cells: The list of cells that constitute the row. Must have the same
15409	// length as `columnHeaders` for two-dimensional tables, a length of 1
15410	// for one-dimensional tables. Required.
15411	Cells []*Value `json:"cells,omitempty"`
15412
15413	// ForceSendFields is a list of field names (e.g. "Cells") to
15414	// unconditionally include in API requests. By default, fields with
15415	// empty or default values are omitted from API requests. However, any
15416	// non-pointer, non-interface field appearing in ForceSendFields will be
15417	// sent to the server regardless of whether the field is empty or not.
15418	// This may be used to include empty fields in Patch requests.
15419	ForceSendFields []string `json:"-"`
15420
15421	// NullFields is a list of field names (e.g. "Cells") to include in API
15422	// requests with the JSON null value. By default, fields with empty
15423	// values are omitted from API requests. However, any field with an
15424	// empty value appearing in NullFields will be sent to the server as
15425	// null. It is an error if a field in this list has a non-empty value.
15426	// This may be used to include null fields in Patch requests.
15427	NullFields []string `json:"-"`
15428}
15429
15430func (s *Row) MarshalJSON() ([]byte, error) {
15431	type NoMethod Row
15432	raw := NoMethod(*s)
15433	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15434}
15435
15436// SearchRequest: Request message for the ReportService.Search method.
15437type SearchRequest struct {
15438	// PageSize: Number of ReportRows to retrieve in a single page. Defaults
15439	// to the maximum of 1000. Values above 1000 are coerced to 1000.
15440	PageSize int64 `json:"pageSize,omitempty"`
15441
15442	// PageToken: Token of the page to retrieve. If not specified, the first
15443	// page of results is returned. In order to request the next page of
15444	// results, the value obtained from `next_page_token` in the previous
15445	// response should be used.
15446	PageToken string `json:"pageToken,omitempty"`
15447
15448	// Query: Required. Query that defines performance metrics to retrieve
15449	// and dimensions according to which the metrics are to be segmented.
15450	// For details on how to construct your query, see the Query Language
15451	// guide
15452	// (https://developers.google.com/shopping-content/guides/reports/query-language/overview).
15453	Query string `json:"query,omitempty"`
15454
15455	// ForceSendFields is a list of field names (e.g. "PageSize") to
15456	// unconditionally include in API requests. By default, fields with
15457	// empty or default values are omitted from API requests. However, any
15458	// non-pointer, non-interface field appearing in ForceSendFields will be
15459	// sent to the server regardless of whether the field is empty or not.
15460	// This may be used to include empty fields in Patch requests.
15461	ForceSendFields []string `json:"-"`
15462
15463	// NullFields is a list of field names (e.g. "PageSize") to include in
15464	// API requests with the JSON null value. By default, fields with empty
15465	// values are omitted from API requests. However, any field with an
15466	// empty value appearing in NullFields will be sent to the server as
15467	// null. It is an error if a field in this list has a non-empty value.
15468	// This may be used to include null fields in Patch requests.
15469	NullFields []string `json:"-"`
15470}
15471
15472func (s *SearchRequest) MarshalJSON() ([]byte, error) {
15473	type NoMethod SearchRequest
15474	raw := NoMethod(*s)
15475	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15476}
15477
15478// SearchResponse: Response message for the ReportService.Search method.
15479type SearchResponse struct {
15480	// NextPageToken: Token which can be sent as `page_token` to retrieve
15481	// the next page. If omitted, there are no subsequent pages.
15482	NextPageToken string `json:"nextPageToken,omitempty"`
15483
15484	// Results: Rows that matched the search query.
15485	Results []*ReportRow `json:"results,omitempty"`
15486
15487	// ServerResponse contains the HTTP response code and headers from the
15488	// server.
15489	googleapi.ServerResponse `json:"-"`
15490
15491	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
15492	// unconditionally include in API requests. By default, fields with
15493	// empty or default values are omitted from API requests. However, any
15494	// non-pointer, non-interface field appearing in ForceSendFields will be
15495	// sent to the server regardless of whether the field is empty or not.
15496	// This may be used to include empty fields in Patch requests.
15497	ForceSendFields []string `json:"-"`
15498
15499	// NullFields is a list of field names (e.g. "NextPageToken") to include
15500	// in API requests with the JSON null value. By default, fields with
15501	// empty values are omitted from API requests. However, any field with
15502	// an empty value appearing in NullFields will be sent to the server as
15503	// null. It is an error if a field in this list has a non-empty value.
15504	// This may be used to include null fields in Patch requests.
15505	NullFields []string `json:"-"`
15506}
15507
15508func (s *SearchResponse) MarshalJSON() ([]byte, error) {
15509	type NoMethod SearchResponse
15510	raw := NoMethod(*s)
15511	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15512}
15513
15514// Segments: Dimensions according to which metrics are segmented in the
15515// response. Values of product dimensions, e.g., offer id, reflect the
15516// state of a product at the time of the corresponding event, e.g.,
15517// impression or order. Segment fields cannot be selected in queries
15518// without also selecting at least one metric field. Values are only set
15519// for dimensions requested explicitly in the request's search query.
15520type Segments struct {
15521	// Brand: Brand of the product.
15522	Brand string `json:"brand,omitempty"`
15523
15524	// CategoryL1: Product category (1st level)
15525	// (https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
15526	// in Google's product taxonomy.
15527	CategoryL1 string `json:"categoryL1,omitempty"`
15528
15529	// CategoryL2: Product category (2nd level)
15530	// (https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
15531	// in Google's product taxonomy.
15532	CategoryL2 string `json:"categoryL2,omitempty"`
15533
15534	// CategoryL3: Product category (3rd level)
15535	// (https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
15536	// in Google's product taxonomy.
15537	CategoryL3 string `json:"categoryL3,omitempty"`
15538
15539	// CategoryL4: Product category (4th level)
15540	// (https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
15541	// in Google's product taxonomy.
15542	CategoryL4 string `json:"categoryL4,omitempty"`
15543
15544	// CategoryL5: Product category (5th level)
15545	// (https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
15546	// in Google's product taxonomy.
15547	CategoryL5 string `json:"categoryL5,omitempty"`
15548
15549	// CurrencyCode: Currency in which price metrics are represented, e.g.,
15550	// if you select `ordered_item_sales_micros`, the returned value will be
15551	// represented by this currency.
15552	CurrencyCode string `json:"currencyCode,omitempty"`
15553
15554	// CustomLabel0: Custom label 0 for custom grouping of products.
15555	CustomLabel0 string `json:"customLabel0,omitempty"`
15556
15557	// CustomLabel1: Custom label 1 for custom grouping of products.
15558	CustomLabel1 string `json:"customLabel1,omitempty"`
15559
15560	// CustomLabel2: Custom label 2 for custom grouping of products.
15561	CustomLabel2 string `json:"customLabel2,omitempty"`
15562
15563	// CustomLabel3: Custom label 3 for custom grouping of products.
15564	CustomLabel3 string `json:"customLabel3,omitempty"`
15565
15566	// CustomLabel4: Custom label 4 for custom grouping of products.
15567	CustomLabel4 string `json:"customLabel4,omitempty"`
15568
15569	// Date: Date in the merchant timezone to which metrics apply.
15570	Date *Date `json:"date,omitempty"`
15571
15572	// OfferId: Merchant-provided id of the product.
15573	OfferId string `json:"offerId,omitempty"`
15574
15575	// ProductTypeL1: Product type (1st level)
15576	// (https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
15577	// in merchant's own product taxonomy.
15578	ProductTypeL1 string `json:"productTypeL1,omitempty"`
15579
15580	// ProductTypeL2: Product type (2nd level)
15581	// (https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
15582	// in merchant's own product taxonomy.
15583	ProductTypeL2 string `json:"productTypeL2,omitempty"`
15584
15585	// ProductTypeL3: Product type (3rd level)
15586	// (https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
15587	// in merchant's own product taxonomy.
15588	ProductTypeL3 string `json:"productTypeL3,omitempty"`
15589
15590	// ProductTypeL4: Product type (4th level)
15591	// (https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
15592	// in merchant's own product taxonomy.
15593	ProductTypeL4 string `json:"productTypeL4,omitempty"`
15594
15595	// ProductTypeL5: Product type (5th level)
15596	// (https://developers.google.com/shopping-content/guides/reports/segmentation#category_and_product_type)
15597	// in merchant's own product taxonomy.
15598	ProductTypeL5 string `json:"productTypeL5,omitempty"`
15599
15600	// Program: Program to which metrics apply, e.g., Free Product Listing.
15601	//
15602	// Possible values:
15603	//   "PROGRAM_UNSPECIFIED" - Not specified.
15604	//   "SHOPPING_ADS" - Shopping Ads.
15605	//   "FREE_PRODUCT_LISTING" - Free Product Listing.
15606	//   "FREE_LOCAL_PRODUCT_LISTING" - Free Local Product Listing.
15607	//   "BUY_ON_GOOGLE_LISTING" - Buy on Google Listing.
15608	Program string `json:"program,omitempty"`
15609
15610	// Title: Title of the product.
15611	Title string `json:"title,omitempty"`
15612
15613	// Week: First day of the week (Monday) of the metrics date in the
15614	// merchant timezone.
15615	Week *Date `json:"week,omitempty"`
15616
15617	// ForceSendFields is a list of field names (e.g. "Brand") to
15618	// unconditionally include in API requests. By default, fields with
15619	// empty or default values are omitted from API requests. However, any
15620	// non-pointer, non-interface field appearing in ForceSendFields will be
15621	// sent to the server regardless of whether the field is empty or not.
15622	// This may be used to include empty fields in Patch requests.
15623	ForceSendFields []string `json:"-"`
15624
15625	// NullFields is a list of field names (e.g. "Brand") to include in API
15626	// requests with the JSON null value. By default, fields with empty
15627	// values are omitted from API requests. However, any field with an
15628	// empty value appearing in NullFields will be sent to the server as
15629	// null. It is an error if a field in this list has a non-empty value.
15630	// This may be used to include null fields in Patch requests.
15631	NullFields []string `json:"-"`
15632}
15633
15634func (s *Segments) MarshalJSON() ([]byte, error) {
15635	type NoMethod Segments
15636	raw := NoMethod(*s)
15637	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15638}
15639
15640type Service struct {
15641	// Active: A boolean exposing the active status of the shipping service.
15642	// Required.
15643	Active bool `json:"active,omitempty"`
15644
15645	// Currency: The CLDR code of the currency to which this service
15646	// applies. Must match that of the prices in rate groups.
15647	Currency string `json:"currency,omitempty"`
15648
15649	// DeliveryCountry: The CLDR territory code of the country to which the
15650	// service applies. Required.
15651	DeliveryCountry string `json:"deliveryCountry,omitempty"`
15652
15653	// DeliveryTime: Time spent in various aspects from order to the
15654	// delivery of the product. Required.
15655	DeliveryTime *DeliveryTime `json:"deliveryTime,omitempty"`
15656
15657	// Eligibility: Eligibility for this service. Acceptable values are: -
15658	// "All scenarios" - "All scenarios except Shopping Actions" -
15659	// "Shopping Actions"
15660	Eligibility string `json:"eligibility,omitempty"`
15661
15662	// MinimumOrderValue: Minimum order value for this service. If set,
15663	// indicates that customers will have to spend at least this amount. All
15664	// prices within a service must have the same currency. Cannot be set
15665	// together with minimum_order_value_table.
15666	MinimumOrderValue *Price `json:"minimumOrderValue,omitempty"`
15667
15668	// MinimumOrderValueTable: Table of per store minimum order values for
15669	// the pickup fulfillment type. Cannot be set together with
15670	// minimum_order_value.
15671	MinimumOrderValueTable *MinimumOrderValueTable `json:"minimumOrderValueTable,omitempty"`
15672
15673	// Name: Free-form name of the service. Must be unique within target
15674	// account. Required.
15675	Name string `json:"name,omitempty"`
15676
15677	// PickupService: The carrier-service pair delivering items to
15678	// collection points. The list of supported pickup services can be
15679	// retrieved via the `getSupportedPickupServices` method. Required if
15680	// and only if the service delivery type is `pickup`.
15681	PickupService *PickupCarrierService `json:"pickupService,omitempty"`
15682
15683	// RateGroups: Shipping rate group definitions. Only the last one is
15684	// allowed to have an empty `applicableShippingLabels`, which means
15685	// "everything else". The other `applicableShippingLabels` must not
15686	// overlap.
15687	RateGroups []*RateGroup `json:"rateGroups,omitempty"`
15688
15689	// ShipmentType: Type of locations this service ships orders to.
15690	// Acceptable values are: - "delivery" - "pickup"
15691	ShipmentType string `json:"shipmentType,omitempty"`
15692
15693	// ForceSendFields is a list of field names (e.g. "Active") to
15694	// unconditionally include in API requests. By default, fields with
15695	// empty or default values are omitted from API requests. However, any
15696	// non-pointer, non-interface field appearing in ForceSendFields will be
15697	// sent to the server regardless of whether the field is empty or not.
15698	// This may be used to include empty fields in Patch requests.
15699	ForceSendFields []string `json:"-"`
15700
15701	// NullFields is a list of field names (e.g. "Active") to include in API
15702	// requests with the JSON null value. By default, fields with empty
15703	// values are omitted from API requests. However, any field with an
15704	// empty value appearing in NullFields will be sent to the server as
15705	// null. It is an error if a field in this list has a non-empty value.
15706	// This may be used to include null fields in Patch requests.
15707	NullFields []string `json:"-"`
15708}
15709
15710func (s *Service) MarshalJSON() ([]byte, error) {
15711	type NoMethod Service
15712	raw := NoMethod(*s)
15713	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15714}
15715
15716// SettlementReport:  Settlement reports detail order-level and
15717// item-level credits and debits between you and Google.
15718type SettlementReport struct {
15719	// EndDate: The end date on which all transactions are included in the
15720	// report, in ISO 8601 format.
15721	EndDate string `json:"endDate,omitempty"`
15722
15723	// Kind: Identifies what kind of resource this is. Value: the fixed
15724	// string "content#settlementReport"
15725	Kind string `json:"kind,omitempty"`
15726
15727	// PreviousBalance: The residual amount from the previous invoice. This
15728	// is set only if the previous invoices are not paid because of negative
15729	// balance.
15730	PreviousBalance *Price `json:"previousBalance,omitempty"`
15731
15732	// SettlementId: The ID of the settlement report.
15733	SettlementId string `json:"settlementId,omitempty"`
15734
15735	// StartDate: The start date on which all transactions are included in
15736	// the report, in ISO 8601 format.
15737	StartDate string `json:"startDate,omitempty"`
15738
15739	// TransferAmount: The money due to the merchant.
15740	TransferAmount *Price `json:"transferAmount,omitempty"`
15741
15742	// TransferDate: Date on which transfer for this payment was initiated
15743	// by Google, in ISO 8601 format.
15744	TransferDate string `json:"transferDate,omitempty"`
15745
15746	// TransferIds: The list of bank identifiers used for the transfer. e.g.
15747	// Trace ID for Federal Automated Clearing House (ACH). This may also be
15748	// known as the Wire ID.
15749	TransferIds []string `json:"transferIds,omitempty"`
15750
15751	// ServerResponse contains the HTTP response code and headers from the
15752	// server.
15753	googleapi.ServerResponse `json:"-"`
15754
15755	// ForceSendFields is a list of field names (e.g. "EndDate") to
15756	// unconditionally include in API requests. By default, fields with
15757	// empty or default values are omitted from API requests. However, any
15758	// non-pointer, non-interface field appearing in ForceSendFields will be
15759	// sent to the server regardless of whether the field is empty or not.
15760	// This may be used to include empty fields in Patch requests.
15761	ForceSendFields []string `json:"-"`
15762
15763	// NullFields is a list of field names (e.g. "EndDate") to include in
15764	// API requests with the JSON null value. By default, fields with empty
15765	// values are omitted from API requests. However, any field with an
15766	// empty value appearing in NullFields will be sent to the server as
15767	// null. It is an error if a field in this list has a non-empty value.
15768	// This may be used to include null fields in Patch requests.
15769	NullFields []string `json:"-"`
15770}
15771
15772func (s *SettlementReport) MarshalJSON() ([]byte, error) {
15773	type NoMethod SettlementReport
15774	raw := NoMethod(*s)
15775	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15776}
15777
15778// SettlementTransaction: Settlement transactions give a detailed
15779// breakdown of the settlement report.
15780type SettlementTransaction struct {
15781	// Amount: The amount for the transaction.
15782	Amount *SettlementTransactionAmount `json:"amount,omitempty"`
15783
15784	// Identifiers: Identifiers of the transaction.
15785	Identifiers *SettlementTransactionIdentifiers `json:"identifiers,omitempty"`
15786
15787	// Kind: Identifies what kind of resource this is. Value: the fixed
15788	// string "content#settlementTransaction"
15789	Kind string `json:"kind,omitempty"`
15790
15791	// Transaction: Details of the transaction.
15792	Transaction *SettlementTransactionTransaction `json:"transaction,omitempty"`
15793
15794	// ForceSendFields is a list of field names (e.g. "Amount") to
15795	// unconditionally include in API requests. By default, fields with
15796	// empty or default values are omitted from API requests. However, any
15797	// non-pointer, non-interface field appearing in ForceSendFields will be
15798	// sent to the server regardless of whether the field is empty or not.
15799	// This may be used to include empty fields in Patch requests.
15800	ForceSendFields []string `json:"-"`
15801
15802	// NullFields is a list of field names (e.g. "Amount") to include in API
15803	// requests with the JSON null value. By default, fields with empty
15804	// values are omitted from API requests. However, any field with an
15805	// empty value appearing in NullFields will be sent to the server as
15806	// null. It is an error if a field in this list has a non-empty value.
15807	// This may be used to include null fields in Patch requests.
15808	NullFields []string `json:"-"`
15809}
15810
15811func (s *SettlementTransaction) MarshalJSON() ([]byte, error) {
15812	type NoMethod SettlementTransaction
15813	raw := NoMethod(*s)
15814	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15815}
15816
15817type SettlementTransactionAmount struct {
15818	Commission *SettlementTransactionAmountCommission `json:"commission,omitempty"`
15819
15820	// Description: The description of the event. Acceptable values are: -
15821	// "taxWithhold" - "principal" - "principalAdjustment" -
15822	// "shippingFee" - "merchantRemittedSalesTax" -
15823	// "googleRemittedSalesTax" - "merchantCoupon" -
15824	// "merchantCouponTax" - "merchantRemittedDisposalTax" -
15825	// "googleRemittedDisposalTax" - "merchantRemittedRedemptionFee" -
15826	// "googleRemittedRedemptionFee" - "eeeEcoFee" - "furnitureEcoFee"
15827	// - "copyPrivateFee" - "eeeEcoFeeCommission" -
15828	// "furnitureEcoFeeCommission" - "copyPrivateFeeCommission" -
15829	// "principalRefund" - "principalRefundTax" - "itemCommission" -
15830	// "adjustmentCommission" - "shippingFeeCommission" -
15831	// "commissionRefund" - "damaged" - "damagedOrDefectiveItem" -
15832	// "expiredItem" - "faultyItem" - "incorrectItemReceived" -
15833	// "itemMissing" - "qualityNotExpected" - "receivedTooLate" -
15834	// "storePackageMissing" - "transitPackageMissing" -
15835	// "unsuccessfulDeliveryUndeliverable" - "wrongChargeInStore" -
15836	// "wrongItem" - "returns" - "undeliverable" -
15837	// "issueRelatedRefundAndReplacementAmountDescription" -
15838	// "refundFromMerchant" - "returnLabelShippingFee" -
15839	// "lumpSumCorrection" - "pspFee" - "principalRefundDoesNotFit" -
15840	// "principalRefundOrderedWrongItem" -
15841	// "principalRefundQualityNotExpected" -
15842	// "principalRefundBetterPriceFound" -
15843	// "principalRefundNoLongerNeeded" - "principalRefundChangedMind" -
15844	// "principalRefundReceivedTooLate" -
15845	// "principalRefundIncorrectItemReceived" -
15846	// "principalRefundDamagedOrDefectiveItem" -
15847	// "principalRefundDidNotMatchDescription" -
15848	// "principalRefundExpiredItem"
15849	Description string `json:"description,omitempty"`
15850
15851	// TransactionAmount: The amount that contributes to the line item
15852	// price.
15853	TransactionAmount *Price `json:"transactionAmount,omitempty"`
15854
15855	// Type: The type of the amount. Acceptable values are: - "itemPrice"
15856	// - "orderPrice" - "refund" - "earlyRefund" - "courtesyRefund"
15857	// - "returnRefund" - "returnLabelShippingFeeAmount" -
15858	// "lumpSumCorrectionAmount"
15859	Type string `json:"type,omitempty"`
15860
15861	// ForceSendFields is a list of field names (e.g. "Commission") to
15862	// unconditionally include in API requests. By default, fields with
15863	// empty or default values are omitted from API requests. However, any
15864	// non-pointer, non-interface field appearing in ForceSendFields will be
15865	// sent to the server regardless of whether the field is empty or not.
15866	// This may be used to include empty fields in Patch requests.
15867	ForceSendFields []string `json:"-"`
15868
15869	// NullFields is a list of field names (e.g. "Commission") to include in
15870	// API requests with the JSON null value. By default, fields with empty
15871	// values are omitted from API requests. However, any field with an
15872	// empty value appearing in NullFields will be sent to the server as
15873	// null. It is an error if a field in this list has a non-empty value.
15874	// This may be used to include null fields in Patch requests.
15875	NullFields []string `json:"-"`
15876}
15877
15878func (s *SettlementTransactionAmount) MarshalJSON() ([]byte, error) {
15879	type NoMethod SettlementTransactionAmount
15880	raw := NoMethod(*s)
15881	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15882}
15883
15884type SettlementTransactionAmountCommission struct {
15885	// Category: The category of the commission. Acceptable values are: -
15886	// "animalsAndPetSupplies" - "dogCatFoodAndCatLitter" -
15887	// "apparelAndAccessories" - "shoesHandbagsAndSunglasses" -
15888	// "costumesAndAccessories" - "jewelry" - "watches" -
15889	// "hobbiesArtsAndCrafts" - "homeAndGarden" -
15890	// "entertainmentCollectibles" - "collectibleCoins" -
15891	// "sportsCollectibles" - "sportingGoods" - "toysAndGames" -
15892	// "musicalInstruments" - "giftCards" - "babyAndToddler" -
15893	// "babyFoodWipesAndDiapers" - "businessAndIndustrial" -
15894	// "camerasOpticsAndPhotography" - "consumerElectronics" -
15895	// "electronicsAccessories" - "personalComputers" -
15896	// "videoGameConsoles" - "foodAndGrocery" - "beverages" -
15897	// "tobaccoProducts" - "furniture" - "hardware" -
15898	// "buildingMaterials" - "tools" - "healthAndPersonalCare" -
15899	// "beauty" - "householdSupplies" - "kitchenAndDining" -
15900	// "majorAppliances" - "luggageAndBags" - "media" -
15901	// "officeSupplies" - "softwareAndVideoGames" -
15902	// "vehiclePartsAndAccessories" - "vehicleTiresAndWheels" -
15903	// "vehicles" - "everythingElse"
15904	Category string `json:"category,omitempty"`
15905
15906	// Rate: Rate of the commission in percentage.
15907	Rate string `json:"rate,omitempty"`
15908
15909	// ForceSendFields is a list of field names (e.g. "Category") to
15910	// unconditionally include in API requests. By default, fields with
15911	// empty or default values are omitted from API requests. However, any
15912	// non-pointer, non-interface field appearing in ForceSendFields will be
15913	// sent to the server regardless of whether the field is empty or not.
15914	// This may be used to include empty fields in Patch requests.
15915	ForceSendFields []string `json:"-"`
15916
15917	// NullFields is a list of field names (e.g. "Category") to include in
15918	// API requests with the JSON null value. By default, fields with empty
15919	// values are omitted from API requests. However, any field with an
15920	// empty value appearing in NullFields will be sent to the server as
15921	// null. It is an error if a field in this list has a non-empty value.
15922	// This may be used to include null fields in Patch requests.
15923	NullFields []string `json:"-"`
15924}
15925
15926func (s *SettlementTransactionAmountCommission) MarshalJSON() ([]byte, error) {
15927	type NoMethod SettlementTransactionAmountCommission
15928	raw := NoMethod(*s)
15929	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15930}
15931
15932type SettlementTransactionIdentifiers struct {
15933	// AdjustmentId: The identifier of the adjustments, if it is available.
15934	AdjustmentId string `json:"adjustmentId,omitempty"`
15935
15936	// MerchantOrderId: The merchant provided order ID.
15937	MerchantOrderId string `json:"merchantOrderId,omitempty"`
15938
15939	// OrderItemId: The identifier of the item.
15940	OrderItemId string `json:"orderItemId,omitempty"`
15941
15942	// SettlementEntryId: The unique ID of the settlement transaction entry.
15943	SettlementEntryId string `json:"settlementEntryId,omitempty"`
15944
15945	// ShipmentIds: The shipment ids for the item.
15946	ShipmentIds []string `json:"shipmentIds,omitempty"`
15947
15948	// TransactionId: The Google transaction ID.
15949	TransactionId string `json:"transactionId,omitempty"`
15950
15951	// ForceSendFields is a list of field names (e.g. "AdjustmentId") to
15952	// unconditionally include in API requests. By default, fields with
15953	// empty or default values are omitted from API requests. However, any
15954	// non-pointer, non-interface field appearing in ForceSendFields will be
15955	// sent to the server regardless of whether the field is empty or not.
15956	// This may be used to include empty fields in Patch requests.
15957	ForceSendFields []string `json:"-"`
15958
15959	// NullFields is a list of field names (e.g. "AdjustmentId") to include
15960	// in API requests with the JSON null value. By default, fields with
15961	// empty values are omitted from API requests. However, any field with
15962	// an empty value appearing in NullFields will be sent to the server as
15963	// null. It is an error if a field in this list has a non-empty value.
15964	// This may be used to include null fields in Patch requests.
15965	NullFields []string `json:"-"`
15966}
15967
15968func (s *SettlementTransactionIdentifiers) MarshalJSON() ([]byte, error) {
15969	type NoMethod SettlementTransactionIdentifiers
15970	raw := NoMethod(*s)
15971	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15972}
15973
15974type SettlementTransactionTransaction struct {
15975	// PostDate: The time on which the event occurred in ISO 8601 format.
15976	PostDate string `json:"postDate,omitempty"`
15977
15978	// Type: The type of the transaction that occurred. Acceptable values
15979	// are: - "order" - "reversal" - "orderRefund" -
15980	// "reversalRefund" - "issueRelatedRefundAndReplacement" -
15981	// "returnLabelShippingFeeTransaction" -
15982	// "reversalIssueRelatedRefundAndReplacement" -
15983	// "reversalReturnLabelShippingFeeTransaction" -
15984	// "lumpSumCorrectionTransaction"
15985	Type string `json:"type,omitempty"`
15986
15987	// ForceSendFields is a list of field names (e.g. "PostDate") to
15988	// unconditionally include in API requests. By default, fields with
15989	// empty or default values are omitted from API requests. However, any
15990	// non-pointer, non-interface field appearing in ForceSendFields will be
15991	// sent to the server regardless of whether the field is empty or not.
15992	// This may be used to include empty fields in Patch requests.
15993	ForceSendFields []string `json:"-"`
15994
15995	// NullFields is a list of field names (e.g. "PostDate") to include in
15996	// API requests with the JSON null value. By default, fields with empty
15997	// values are omitted from API requests. However, any field with an
15998	// empty value appearing in NullFields will be sent to the server as
15999	// null. It is an error if a field in this list has a non-empty value.
16000	// This may be used to include null fields in Patch requests.
16001	NullFields []string `json:"-"`
16002}
16003
16004func (s *SettlementTransactionTransaction) MarshalJSON() ([]byte, error) {
16005	type NoMethod SettlementTransactionTransaction
16006	raw := NoMethod(*s)
16007	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16008}
16009
16010type SettlementreportsListResponse struct {
16011	// Kind: Identifies what kind of resource this is. Value: the fixed
16012	// string "content#settlementreportsListResponse".
16013	Kind string `json:"kind,omitempty"`
16014
16015	// NextPageToken: The token for the retrieval of the next page of
16016	// returns.
16017	NextPageToken string `json:"nextPageToken,omitempty"`
16018
16019	Resources []*SettlementReport `json:"resources,omitempty"`
16020
16021	// ServerResponse contains the HTTP response code and headers from the
16022	// server.
16023	googleapi.ServerResponse `json:"-"`
16024
16025	// ForceSendFields is a list of field names (e.g. "Kind") to
16026	// unconditionally include in API requests. By default, fields with
16027	// empty or default values are omitted from API requests. However, any
16028	// non-pointer, non-interface field appearing in ForceSendFields will be
16029	// sent to the server regardless of whether the field is empty or not.
16030	// This may be used to include empty fields in Patch requests.
16031	ForceSendFields []string `json:"-"`
16032
16033	// NullFields is a list of field names (e.g. "Kind") to include in API
16034	// requests with the JSON null value. By default, fields with empty
16035	// values are omitted from API requests. However, any field with an
16036	// empty value appearing in NullFields will be sent to the server as
16037	// null. It is an error if a field in this list has a non-empty value.
16038	// This may be used to include null fields in Patch requests.
16039	NullFields []string `json:"-"`
16040}
16041
16042func (s *SettlementreportsListResponse) MarshalJSON() ([]byte, error) {
16043	type NoMethod SettlementreportsListResponse
16044	raw := NoMethod(*s)
16045	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16046}
16047
16048type SettlementtransactionsListResponse struct {
16049	// Kind: Identifies what kind of resource this is. Value: the fixed
16050	// string "content#settlementtransactionsListResponse".
16051	Kind string `json:"kind,omitempty"`
16052
16053	// NextPageToken: The token for the retrieval of the next page of
16054	// returns.
16055	NextPageToken string `json:"nextPageToken,omitempty"`
16056
16057	Resources []*SettlementTransaction `json:"resources,omitempty"`
16058
16059	// ServerResponse contains the HTTP response code and headers from the
16060	// server.
16061	googleapi.ServerResponse `json:"-"`
16062
16063	// ForceSendFields is a list of field names (e.g. "Kind") to
16064	// unconditionally include in API requests. By default, fields with
16065	// empty or default values are omitted from API requests. However, any
16066	// non-pointer, non-interface field appearing in ForceSendFields will be
16067	// sent to the server regardless of whether the field is empty or not.
16068	// This may be used to include empty fields in Patch requests.
16069	ForceSendFields []string `json:"-"`
16070
16071	// NullFields is a list of field names (e.g. "Kind") to include in API
16072	// requests with the JSON null value. By default, fields with empty
16073	// values are omitted from API requests. However, any field with an
16074	// empty value appearing in NullFields will be sent to the server as
16075	// null. It is an error if a field in this list has a non-empty value.
16076	// This may be used to include null fields in Patch requests.
16077	NullFields []string `json:"-"`
16078}
16079
16080func (s *SettlementtransactionsListResponse) MarshalJSON() ([]byte, error) {
16081	type NoMethod SettlementtransactionsListResponse
16082	raw := NoMethod(*s)
16083	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16084}
16085
16086type ShipmentInvoice struct {
16087	// InvoiceSummary: [required] Invoice summary.
16088	InvoiceSummary *InvoiceSummary `json:"invoiceSummary,omitempty"`
16089
16090	// LineItemInvoices: [required] Invoice details per line item.
16091	LineItemInvoices []*ShipmentInvoiceLineItemInvoice `json:"lineItemInvoices,omitempty"`
16092
16093	// ShipmentGroupId: [required] ID of the shipment group. It is assigned
16094	// by the merchant in the `shipLineItems` method and is used to group
16095	// multiple line items that have the same kind of shipping charges.
16096	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
16097
16098	// ForceSendFields is a list of field names (e.g. "InvoiceSummary") to
16099	// unconditionally include in API requests. By default, fields with
16100	// empty or default values are omitted from API requests. However, any
16101	// non-pointer, non-interface field appearing in ForceSendFields will be
16102	// sent to the server regardless of whether the field is empty or not.
16103	// This may be used to include empty fields in Patch requests.
16104	ForceSendFields []string `json:"-"`
16105
16106	// NullFields is a list of field names (e.g. "InvoiceSummary") to
16107	// include in API requests with the JSON null value. By default, fields
16108	// with empty values are omitted from API requests. However, any field
16109	// with an empty value appearing in NullFields will be sent to the
16110	// server as null. It is an error if a field in this list has a
16111	// non-empty value. This may be used to include null fields in Patch
16112	// requests.
16113	NullFields []string `json:"-"`
16114}
16115
16116func (s *ShipmentInvoice) MarshalJSON() ([]byte, error) {
16117	type NoMethod ShipmentInvoice
16118	raw := NoMethod(*s)
16119	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16120}
16121
16122type ShipmentInvoiceLineItemInvoice struct {
16123	// LineItemId: ID of the line item. Either lineItemId or productId must
16124	// be set.
16125	LineItemId string `json:"lineItemId,omitempty"`
16126
16127	// ProductId: ID of the product. This is the REST ID used in the
16128	// products service. Either lineItemId or productId must be set.
16129	ProductId string `json:"productId,omitempty"`
16130
16131	// ShipmentUnitIds: [required] The shipment unit ID is assigned by the
16132	// merchant and defines individual quantities within a line item. The
16133	// same ID can be assigned to units that are the same while units that
16134	// differ must be assigned a different ID (for example: free or
16135	// promotional units).
16136	ShipmentUnitIds []string `json:"shipmentUnitIds,omitempty"`
16137
16138	// UnitInvoice: [required] Invoice details for a single unit.
16139	UnitInvoice *UnitInvoice `json:"unitInvoice,omitempty"`
16140
16141	// ForceSendFields is a list of field names (e.g. "LineItemId") to
16142	// unconditionally include in API requests. By default, fields with
16143	// empty or default values are omitted from API requests. However, any
16144	// non-pointer, non-interface field appearing in ForceSendFields will be
16145	// sent to the server regardless of whether the field is empty or not.
16146	// This may be used to include empty fields in Patch requests.
16147	ForceSendFields []string `json:"-"`
16148
16149	// NullFields is a list of field names (e.g. "LineItemId") to include in
16150	// API requests with the JSON null value. By default, fields with empty
16151	// values are omitted from API requests. However, any field with an
16152	// empty value appearing in NullFields will be sent to the server as
16153	// null. It is an error if a field in this list has a non-empty value.
16154	// This may be used to include null fields in Patch requests.
16155	NullFields []string `json:"-"`
16156}
16157
16158func (s *ShipmentInvoiceLineItemInvoice) MarshalJSON() ([]byte, error) {
16159	type NoMethod ShipmentInvoiceLineItemInvoice
16160	raw := NoMethod(*s)
16161	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16162}
16163
16164type ShipmentTrackingInfo struct {
16165	// Carrier: The shipping carrier that handles the package. Acceptable
16166	// values are: - "boxtal" - "bpost" - "chronopost" -
16167	// "colisPrive" - "colissimo" - "cxt" - "deliv" - "dhl" -
16168	// "dpd" - "dynamex" - "eCourier" - "easypost" - "efw" -
16169	// "fedex" - "fedexSmartpost" - "geodis" - "gls" -
16170	// "googleCourier" - "gsx" - "jdLogistics" - "laPoste" -
16171	// "lasership" - "manual" - "mpx" - "onTrac" - "other" -
16172	// "tnt" - "uds" - "ups" - "usps"
16173	Carrier string `json:"carrier,omitempty"`
16174
16175	// TrackingNumber: The tracking number for the package.
16176	TrackingNumber string `json:"trackingNumber,omitempty"`
16177
16178	// ForceSendFields is a list of field names (e.g. "Carrier") to
16179	// unconditionally include in API requests. By default, fields with
16180	// empty or default values are omitted from API requests. However, any
16181	// non-pointer, non-interface field appearing in ForceSendFields will be
16182	// sent to the server regardless of whether the field is empty or not.
16183	// This may be used to include empty fields in Patch requests.
16184	ForceSendFields []string `json:"-"`
16185
16186	// NullFields is a list of field names (e.g. "Carrier") to include in
16187	// API requests with the JSON null value. By default, fields with empty
16188	// values are omitted from API requests. However, any field with an
16189	// empty value appearing in NullFields will be sent to the server as
16190	// null. It is an error if a field in this list has a non-empty value.
16191	// This may be used to include null fields in Patch requests.
16192	NullFields []string `json:"-"`
16193}
16194
16195func (s *ShipmentTrackingInfo) MarshalJSON() ([]byte, error) {
16196	type NoMethod ShipmentTrackingInfo
16197	raw := NoMethod(*s)
16198	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16199}
16200
16201// ShippingSettings: The merchant account's shipping settings. All
16202// methods except getsupportedcarriers and getsupportedholidays require
16203// the admin role.
16204type ShippingSettings struct {
16205	// AccountId: The ID of the account to which these account shipping
16206	// settings belong. Ignored upon update, always present in get request
16207	// responses.
16208	AccountId uint64 `json:"accountId,omitempty,string"`
16209
16210	// PostalCodeGroups: A list of postal code groups that can be referred
16211	// to in `services`. Optional.
16212	PostalCodeGroups []*PostalCodeGroup `json:"postalCodeGroups,omitempty"`
16213
16214	// Services: The target account's list of services. Optional.
16215	Services []*Service `json:"services,omitempty"`
16216
16217	// Warehouses: Optional. A list of warehouses which can be referred to
16218	// in `services`.
16219	Warehouses []*Warehouse `json:"warehouses,omitempty"`
16220
16221	// ServerResponse contains the HTTP response code and headers from the
16222	// server.
16223	googleapi.ServerResponse `json:"-"`
16224
16225	// ForceSendFields is a list of field names (e.g. "AccountId") to
16226	// unconditionally include in API requests. By default, fields with
16227	// empty or default values are omitted from API requests. However, any
16228	// non-pointer, non-interface field appearing in ForceSendFields will be
16229	// sent to the server regardless of whether the field is empty or not.
16230	// This may be used to include empty fields in Patch requests.
16231	ForceSendFields []string `json:"-"`
16232
16233	// NullFields is a list of field names (e.g. "AccountId") to include in
16234	// API requests with the JSON null value. By default, fields with empty
16235	// values are omitted from API requests. However, any field with an
16236	// empty value appearing in NullFields will be sent to the server as
16237	// null. It is an error if a field in this list has a non-empty value.
16238	// This may be used to include null fields in Patch requests.
16239	NullFields []string `json:"-"`
16240}
16241
16242func (s *ShippingSettings) MarshalJSON() ([]byte, error) {
16243	type NoMethod ShippingSettings
16244	raw := NoMethod(*s)
16245	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16246}
16247
16248type ShippingsettingsCustomBatchRequest struct {
16249	// Entries: The request entries to be processed in the batch.
16250	Entries []*ShippingsettingsCustomBatchRequestEntry `json:"entries,omitempty"`
16251
16252	// ForceSendFields is a list of field names (e.g. "Entries") to
16253	// unconditionally include in API requests. By default, fields with
16254	// empty or default values are omitted from API requests. However, any
16255	// non-pointer, non-interface field appearing in ForceSendFields will be
16256	// sent to the server regardless of whether the field is empty or not.
16257	// This may be used to include empty fields in Patch requests.
16258	ForceSendFields []string `json:"-"`
16259
16260	// NullFields is a list of field names (e.g. "Entries") to include in
16261	// API requests with the JSON null value. By default, fields with empty
16262	// values are omitted from API requests. However, any field with an
16263	// empty value appearing in NullFields will be sent to the server as
16264	// null. It is an error if a field in this list has a non-empty value.
16265	// This may be used to include null fields in Patch requests.
16266	NullFields []string `json:"-"`
16267}
16268
16269func (s *ShippingsettingsCustomBatchRequest) MarshalJSON() ([]byte, error) {
16270	type NoMethod ShippingsettingsCustomBatchRequest
16271	raw := NoMethod(*s)
16272	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16273}
16274
16275// ShippingsettingsCustomBatchRequestEntry: A batch entry encoding a
16276// single non-batch shippingsettings request.
16277type ShippingsettingsCustomBatchRequestEntry struct {
16278	// AccountId: The ID of the account for which to get/update account
16279	// shipping settings.
16280	AccountId uint64 `json:"accountId,omitempty,string"`
16281
16282	// BatchId: An entry ID, unique within the batch request.
16283	BatchId int64 `json:"batchId,omitempty"`
16284
16285	// MerchantId: The ID of the managing account.
16286	MerchantId uint64 `json:"merchantId,omitempty,string"`
16287
16288	// Method: The method of the batch entry. Acceptable values are: -
16289	// "get" - "update"
16290	Method string `json:"method,omitempty"`
16291
16292	// ShippingSettings: The account shipping settings to update. Only
16293	// defined if the method is `update`.
16294	ShippingSettings *ShippingSettings `json:"shippingSettings,omitempty"`
16295
16296	// ForceSendFields is a list of field names (e.g. "AccountId") to
16297	// unconditionally include in API requests. By default, fields with
16298	// empty or default values are omitted from API requests. However, any
16299	// non-pointer, non-interface field appearing in ForceSendFields will be
16300	// sent to the server regardless of whether the field is empty or not.
16301	// This may be used to include empty fields in Patch requests.
16302	ForceSendFields []string `json:"-"`
16303
16304	// NullFields is a list of field names (e.g. "AccountId") to include in
16305	// API requests with the JSON null value. By default, fields with empty
16306	// values are omitted from API requests. However, any field with an
16307	// empty value appearing in NullFields will be sent to the server as
16308	// null. It is an error if a field in this list has a non-empty value.
16309	// This may be used to include null fields in Patch requests.
16310	NullFields []string `json:"-"`
16311}
16312
16313func (s *ShippingsettingsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
16314	type NoMethod ShippingsettingsCustomBatchRequestEntry
16315	raw := NoMethod(*s)
16316	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16317}
16318
16319type ShippingsettingsCustomBatchResponse struct {
16320	// Entries: The result of the execution of the batch requests.
16321	Entries []*ShippingsettingsCustomBatchResponseEntry `json:"entries,omitempty"`
16322
16323	// Kind: Identifies what kind of resource this is. Value: the fixed
16324	// string "content#shippingsettingsCustomBatchResponse".
16325	Kind string `json:"kind,omitempty"`
16326
16327	// ServerResponse contains the HTTP response code and headers from the
16328	// server.
16329	googleapi.ServerResponse `json:"-"`
16330
16331	// ForceSendFields is a list of field names (e.g. "Entries") to
16332	// unconditionally include in API requests. By default, fields with
16333	// empty or default values are omitted from API requests. However, any
16334	// non-pointer, non-interface field appearing in ForceSendFields will be
16335	// sent to the server regardless of whether the field is empty or not.
16336	// This may be used to include empty fields in Patch requests.
16337	ForceSendFields []string `json:"-"`
16338
16339	// NullFields is a list of field names (e.g. "Entries") to include in
16340	// API requests with the JSON null value. By default, fields with empty
16341	// values are omitted from API requests. However, any field with an
16342	// empty value appearing in NullFields will be sent to the server as
16343	// null. It is an error if a field in this list has a non-empty value.
16344	// This may be used to include null fields in Patch requests.
16345	NullFields []string `json:"-"`
16346}
16347
16348func (s *ShippingsettingsCustomBatchResponse) MarshalJSON() ([]byte, error) {
16349	type NoMethod ShippingsettingsCustomBatchResponse
16350	raw := NoMethod(*s)
16351	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16352}
16353
16354// ShippingsettingsCustomBatchResponseEntry: A batch entry encoding a
16355// single non-batch shipping settings response.
16356type ShippingsettingsCustomBatchResponseEntry struct {
16357	// BatchId: The ID of the request entry to which this entry responds.
16358	BatchId int64 `json:"batchId,omitempty"`
16359
16360	// Errors: A list of errors defined if, and only if, the request failed.
16361	Errors *Errors `json:"errors,omitempty"`
16362
16363	// Kind: Identifies what kind of resource this is. Value: the fixed
16364	// string "content#shippingsettingsCustomBatchResponseEntry"
16365	Kind string `json:"kind,omitempty"`
16366
16367	// ShippingSettings: The retrieved or updated account shipping settings.
16368	ShippingSettings *ShippingSettings `json:"shippingSettings,omitempty"`
16369
16370	// ForceSendFields is a list of field names (e.g. "BatchId") to
16371	// unconditionally include in API requests. By default, fields with
16372	// empty or default values are omitted from API requests. However, any
16373	// non-pointer, non-interface field appearing in ForceSendFields will be
16374	// sent to the server regardless of whether the field is empty or not.
16375	// This may be used to include empty fields in Patch requests.
16376	ForceSendFields []string `json:"-"`
16377
16378	// NullFields is a list of field names (e.g. "BatchId") to include in
16379	// API requests with the JSON null value. By default, fields with empty
16380	// values are omitted from API requests. However, any field with an
16381	// empty value appearing in NullFields will be sent to the server as
16382	// null. It is an error if a field in this list has a non-empty value.
16383	// This may be used to include null fields in Patch requests.
16384	NullFields []string `json:"-"`
16385}
16386
16387func (s *ShippingsettingsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
16388	type NoMethod ShippingsettingsCustomBatchResponseEntry
16389	raw := NoMethod(*s)
16390	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16391}
16392
16393type ShippingsettingsGetSupportedCarriersResponse struct {
16394	// Carriers: A list of supported carriers. May be empty.
16395	Carriers []*CarriersCarrier `json:"carriers,omitempty"`
16396
16397	// Kind: Identifies what kind of resource this is. Value: the fixed
16398	// string "content#shippingsettingsGetSupportedCarriersResponse".
16399	Kind string `json:"kind,omitempty"`
16400
16401	// ServerResponse contains the HTTP response code and headers from the
16402	// server.
16403	googleapi.ServerResponse `json:"-"`
16404
16405	// ForceSendFields is a list of field names (e.g. "Carriers") to
16406	// unconditionally include in API requests. By default, fields with
16407	// empty or default values are omitted from API requests. However, any
16408	// non-pointer, non-interface field appearing in ForceSendFields will be
16409	// sent to the server regardless of whether the field is empty or not.
16410	// This may be used to include empty fields in Patch requests.
16411	ForceSendFields []string `json:"-"`
16412
16413	// NullFields is a list of field names (e.g. "Carriers") to include in
16414	// API requests with the JSON null value. By default, fields with empty
16415	// values are omitted from API requests. However, any field with an
16416	// empty value appearing in NullFields will be sent to the server as
16417	// null. It is an error if a field in this list has a non-empty value.
16418	// This may be used to include null fields in Patch requests.
16419	NullFields []string `json:"-"`
16420}
16421
16422func (s *ShippingsettingsGetSupportedCarriersResponse) MarshalJSON() ([]byte, error) {
16423	type NoMethod ShippingsettingsGetSupportedCarriersResponse
16424	raw := NoMethod(*s)
16425	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16426}
16427
16428type ShippingsettingsGetSupportedHolidaysResponse struct {
16429	// Holidays: A list of holidays applicable for delivery guarantees. May
16430	// be empty.
16431	Holidays []*HolidaysHoliday `json:"holidays,omitempty"`
16432
16433	// Kind: Identifies what kind of resource this is. Value: the fixed
16434	// string "content#shippingsettingsGetSupportedHolidaysResponse".
16435	Kind string `json:"kind,omitempty"`
16436
16437	// ServerResponse contains the HTTP response code and headers from the
16438	// server.
16439	googleapi.ServerResponse `json:"-"`
16440
16441	// ForceSendFields is a list of field names (e.g. "Holidays") to
16442	// unconditionally include in API requests. By default, fields with
16443	// empty or default values are omitted from API requests. However, any
16444	// non-pointer, non-interface field appearing in ForceSendFields will be
16445	// sent to the server regardless of whether the field is empty or not.
16446	// This may be used to include empty fields in Patch requests.
16447	ForceSendFields []string `json:"-"`
16448
16449	// NullFields is a list of field names (e.g. "Holidays") to include in
16450	// API requests with the JSON null value. By default, fields with empty
16451	// values are omitted from API requests. However, any field with an
16452	// empty value appearing in NullFields will be sent to the server as
16453	// null. It is an error if a field in this list has a non-empty value.
16454	// This may be used to include null fields in Patch requests.
16455	NullFields []string `json:"-"`
16456}
16457
16458func (s *ShippingsettingsGetSupportedHolidaysResponse) MarshalJSON() ([]byte, error) {
16459	type NoMethod ShippingsettingsGetSupportedHolidaysResponse
16460	raw := NoMethod(*s)
16461	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16462}
16463
16464type ShippingsettingsGetSupportedPickupServicesResponse struct {
16465	// Kind: Identifies what kind of resource this is. Value: the fixed
16466	// string
16467	// "content#shippingsettingsGetSupportedPickupServicesResponse".
16468	Kind string `json:"kind,omitempty"`
16469
16470	// PickupServices: A list of supported pickup services. May be empty.
16471	PickupServices []*PickupServicesPickupService `json:"pickupServices,omitempty"`
16472
16473	// ServerResponse contains the HTTP response code and headers from the
16474	// server.
16475	googleapi.ServerResponse `json:"-"`
16476
16477	// ForceSendFields is a list of field names (e.g. "Kind") to
16478	// unconditionally include in API requests. By default, fields with
16479	// empty or default values are omitted from API requests. However, any
16480	// non-pointer, non-interface field appearing in ForceSendFields will be
16481	// sent to the server regardless of whether the field is empty or not.
16482	// This may be used to include empty fields in Patch requests.
16483	ForceSendFields []string `json:"-"`
16484
16485	// NullFields is a list of field names (e.g. "Kind") to include in API
16486	// requests with the JSON null value. By default, fields with empty
16487	// values are omitted from API requests. However, any field with an
16488	// empty value appearing in NullFields will be sent to the server as
16489	// null. It is an error if a field in this list has a non-empty value.
16490	// This may be used to include null fields in Patch requests.
16491	NullFields []string `json:"-"`
16492}
16493
16494func (s *ShippingsettingsGetSupportedPickupServicesResponse) MarshalJSON() ([]byte, error) {
16495	type NoMethod ShippingsettingsGetSupportedPickupServicesResponse
16496	raw := NoMethod(*s)
16497	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16498}
16499
16500type ShippingsettingsListResponse struct {
16501	// Kind: Identifies what kind of resource this is. Value: the fixed
16502	// string "content#shippingsettingsListResponse".
16503	Kind string `json:"kind,omitempty"`
16504
16505	// NextPageToken: The token for the retrieval of the next page of
16506	// shipping settings.
16507	NextPageToken string `json:"nextPageToken,omitempty"`
16508
16509	Resources []*ShippingSettings `json:"resources,omitempty"`
16510
16511	// ServerResponse contains the HTTP response code and headers from the
16512	// server.
16513	googleapi.ServerResponse `json:"-"`
16514
16515	// ForceSendFields is a list of field names (e.g. "Kind") to
16516	// unconditionally include in API requests. By default, fields with
16517	// empty or default values are omitted from API requests. However, any
16518	// non-pointer, non-interface field appearing in ForceSendFields will be
16519	// sent to the server regardless of whether the field is empty or not.
16520	// This may be used to include empty fields in Patch requests.
16521	ForceSendFields []string `json:"-"`
16522
16523	// NullFields is a list of field names (e.g. "Kind") to include in API
16524	// requests with the JSON null value. By default, fields with empty
16525	// values are omitted from API requests. However, any field with an
16526	// empty value appearing in NullFields will be sent to the server as
16527	// null. It is an error if a field in this list has a non-empty value.
16528	// This may be used to include null fields in Patch requests.
16529	NullFields []string `json:"-"`
16530}
16531
16532func (s *ShippingsettingsListResponse) MarshalJSON() ([]byte, error) {
16533	type NoMethod ShippingsettingsListResponse
16534	raw := NoMethod(*s)
16535	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16536}
16537
16538// ShoppingAdsProgramStatus: Response message for
16539// GetShoppingAdsProgramStatus.
16540type ShoppingAdsProgramStatus struct {
16541	// RegionStatuses: Status of the program in each region. Regions with
16542	// the same status and review eligibility are grouped together in
16543	// `regionCodes`.
16544	RegionStatuses []*ShoppingAdsProgramStatusRegionStatus `json:"regionStatuses,omitempty"`
16545
16546	// State: If program is successfully onboarded for at least one region.
16547	//
16548	// Possible values:
16549	//   "PROGRAM_STATE_UNSPECIFIED" - State is not known.
16550	//   "ONBOARDED" - Program is onboarded for at least one country.
16551	//   "NOT_ONBOARDED" - Program is not onboarded for any country.
16552	State string `json:"state,omitempty"`
16553
16554	// ServerResponse contains the HTTP response code and headers from the
16555	// server.
16556	googleapi.ServerResponse `json:"-"`
16557
16558	// ForceSendFields is a list of field names (e.g. "RegionStatuses") to
16559	// unconditionally include in API requests. By default, fields with
16560	// empty or default values are omitted from API requests. However, any
16561	// non-pointer, non-interface field appearing in ForceSendFields will be
16562	// sent to the server regardless of whether the field is empty or not.
16563	// This may be used to include empty fields in Patch requests.
16564	ForceSendFields []string `json:"-"`
16565
16566	// NullFields is a list of field names (e.g. "RegionStatuses") to
16567	// include in API requests with the JSON null value. By default, fields
16568	// with empty values are omitted from API requests. However, any field
16569	// with an empty value appearing in NullFields will be sent to the
16570	// server as null. It is an error if a field in this list has a
16571	// non-empty value. This may be used to include null fields in Patch
16572	// requests.
16573	NullFields []string `json:"-"`
16574}
16575
16576func (s *ShoppingAdsProgramStatus) MarshalJSON() ([]byte, error) {
16577	type NoMethod ShoppingAdsProgramStatus
16578	raw := NoMethod(*s)
16579	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16580}
16581
16582// ShoppingAdsProgramStatusRegionStatus: Status of program and region.
16583type ShoppingAdsProgramStatusRegionStatus struct {
16584	// DisapprovalDate: Date by which `eligibility_status` will go from
16585	// `WARNING` to `DISAPPROVED`. It will be present when
16586	// `eligibility_status` is `WARNING`. Date will be provided in ISO 8601
16587	// (https://en.wikipedia.org/wiki/ISO_8601) format i.e. YYYY-MM-DD
16588	DisapprovalDate string `json:"disapprovalDate,omitempty"`
16589
16590	// EligibilityStatus: Eligibility status of the Shopping Ads program.
16591	//
16592	// Possible values:
16593	//   "STATE_UNSPECIFIED" - State is not known.
16594	//   "APPROVED" - If the account has no issues and review is completed
16595	// successfully.
16596	//   "DISAPPROVED" - There are one or more issues that needs to be
16597	// resolved for account to be active for the program. Detailed list of
16598	// account issues are available in
16599	// [accountstatuses](https://developers.google.com/shopping-content/refer
16600	// ence/rest/v2.1/accountstatuses) API.
16601	//   "WARNING" - If account has issues but offers are servable. Some of
16602	// the issue can make account DISAPPROVED after a certain deadline.
16603	//   "UNDER_REVIEW" - Account is under review.
16604	//   "PENDING_REVIEW" - Account is waiting for review to start.
16605	//   "ONBOARDING" - Program is currently onboarding.
16606	EligibilityStatus string `json:"eligibilityStatus,omitempty"`
16607
16608	// IneligibilityReason: Reason if a program in a given country is not
16609	// eligible for review. Populated only if `review_eligibility_status` is
16610	// `INELIGIBLE`.
16611	IneligibilityReason string `json:"ineligibilityReason,omitempty"`
16612
16613	// RegionCodes: The two-letter ISO 3166-1 alpha-2
16614	// (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) codes for all the
16615	// regions with the same `eligibilityStatus` and `reviewEligibility`.
16616	RegionCodes []string `json:"regionCodes,omitempty"`
16617
16618	// ReviewEligibilityStatus: If a program in a given country is eligible
16619	// for review. It will be present only if eligibility status is
16620	// `DISAPPROVED`.
16621	//
16622	// Possible values:
16623	//   "REVIEW_ELIGIBILITY_UNSPECIFIED" - Review eligibility state is
16624	// unknown.
16625	//   "ELIGIBLE" - Account for a region code is eligible for review.
16626	//   "INELIGIBLE" - Account for a region code is not eligible for
16627	// review.
16628	ReviewEligibilityStatus string `json:"reviewEligibilityStatus,omitempty"`
16629
16630	// ReviewIssues: These issues will be evaluated in review process. Fix
16631	// all the issues before requesting the review.
16632	ReviewIssues []string `json:"reviewIssues,omitempty"`
16633
16634	// ForceSendFields is a list of field names (e.g. "DisapprovalDate") to
16635	// unconditionally include in API requests. By default, fields with
16636	// empty or default values are omitted from API requests. However, any
16637	// non-pointer, non-interface field appearing in ForceSendFields will be
16638	// sent to the server regardless of whether the field is empty or not.
16639	// This may be used to include empty fields in Patch requests.
16640	ForceSendFields []string `json:"-"`
16641
16642	// NullFields is a list of field names (e.g. "DisapprovalDate") to
16643	// include in API requests with the JSON null value. By default, fields
16644	// with empty values are omitted from API requests. However, any field
16645	// with an empty value appearing in NullFields will be sent to the
16646	// server as null. It is an error if a field in this list has a
16647	// non-empty value. This may be used to include null fields in Patch
16648	// requests.
16649	NullFields []string `json:"-"`
16650}
16651
16652func (s *ShoppingAdsProgramStatusRegionStatus) MarshalJSON() ([]byte, error) {
16653	type NoMethod ShoppingAdsProgramStatusRegionStatus
16654	raw := NoMethod(*s)
16655	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16656}
16657
16658type Table struct {
16659	// ColumnHeaders: Headers of the table's columns. Optional: if not set
16660	// then the table has only one dimension.
16661	ColumnHeaders *Headers `json:"columnHeaders,omitempty"`
16662
16663	// Name: Name of the table. Required for subtables, ignored for the main
16664	// table.
16665	Name string `json:"name,omitempty"`
16666
16667	// RowHeaders: Headers of the table's rows. Required.
16668	RowHeaders *Headers `json:"rowHeaders,omitempty"`
16669
16670	// Rows: The list of rows that constitute the table. Must have the same
16671	// length as `rowHeaders`. Required.
16672	Rows []*Row `json:"rows,omitempty"`
16673
16674	// ForceSendFields is a list of field names (e.g. "ColumnHeaders") to
16675	// unconditionally include in API requests. By default, fields with
16676	// empty or default values are omitted from API requests. However, any
16677	// non-pointer, non-interface field appearing in ForceSendFields will be
16678	// sent to the server regardless of whether the field is empty or not.
16679	// This may be used to include empty fields in Patch requests.
16680	ForceSendFields []string `json:"-"`
16681
16682	// NullFields is a list of field names (e.g. "ColumnHeaders") to include
16683	// in API requests with the JSON null value. By default, fields with
16684	// empty values are omitted from API requests. However, any field with
16685	// an empty value appearing in NullFields will be sent to the server as
16686	// null. It is an error if a field in this list has a non-empty value.
16687	// This may be used to include null fields in Patch requests.
16688	NullFields []string `json:"-"`
16689}
16690
16691func (s *Table) MarshalJSON() ([]byte, error) {
16692	type NoMethod Table
16693	raw := NoMethod(*s)
16694	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16695}
16696
16697type TestOrder struct {
16698	// DeliveryDetails: Overrides the predefined delivery details if
16699	// provided.
16700	DeliveryDetails *TestOrderDeliveryDetails `json:"deliveryDetails,omitempty"`
16701
16702	// EnableOrderinvoices: Whether the orderinvoices service should support
16703	// this order.
16704	EnableOrderinvoices bool `json:"enableOrderinvoices,omitempty"`
16705
16706	// Kind: Identifies what kind of resource this is. Value: the fixed
16707	// string "content#testOrder"
16708	Kind string `json:"kind,omitempty"`
16709
16710	// LineItems: Required. Line items that are ordered. At least one line
16711	// item must be provided.
16712	LineItems []*TestOrderLineItem `json:"lineItems,omitempty"`
16713
16714	// NotificationMode: Restricted. Do not use.
16715	NotificationMode string `json:"notificationMode,omitempty"`
16716
16717	// PickupDetails: Overrides the predefined pickup details if provided.
16718	PickupDetails *TestOrderPickupDetails `json:"pickupDetails,omitempty"`
16719
16720	// PredefinedBillingAddress: Required. The billing address. Acceptable
16721	// values are: - "dwight" - "jim" - "pam"
16722	PredefinedBillingAddress string `json:"predefinedBillingAddress,omitempty"`
16723
16724	// PredefinedDeliveryAddress: Required. Identifier of one of the
16725	// predefined delivery addresses for the delivery. Acceptable values
16726	// are: - "dwight" - "jim" - "pam"
16727	PredefinedDeliveryAddress string `json:"predefinedDeliveryAddress,omitempty"`
16728
16729	// PredefinedEmail: Required. Email address of the customer. Acceptable
16730	// values are: - "pog.dwight.schrute@gmail.com" -
16731	// "pog.jim.halpert@gmail.com" - "penpog.pam.beesly@gmail.comding"
16732	PredefinedEmail string `json:"predefinedEmail,omitempty"`
16733
16734	// PredefinedPickupDetails: Identifier of one of the predefined pickup
16735	// details. Required for orders containing line items with shipping type
16736	// `pickup`. Acceptable values are: - "dwight" - "jim" - "pam"
16737	PredefinedPickupDetails string `json:"predefinedPickupDetails,omitempty"`
16738
16739	// Promotions: Promotions associated with the order.
16740	Promotions []*OrderPromotion `json:"promotions,omitempty"`
16741
16742	// ShippingCost: Required. The price of shipping for all items. Shipping
16743	// tax is automatically calculated for orders where marketplace
16744	// facilitator tax laws are applicable. Otherwise, tax settings from
16745	// Merchant Center are applied. Note that shipping is not taxed in
16746	// certain states.
16747	ShippingCost *Price `json:"shippingCost,omitempty"`
16748
16749	// ShippingOption: Required. The requested shipping option. Acceptable
16750	// values are: - "economy" - "expedited" - "oneDay" - "sameDay"
16751	// - "standard" - "twoDay"
16752	ShippingOption string `json:"shippingOption,omitempty"`
16753
16754	// ForceSendFields is a list of field names (e.g. "DeliveryDetails") to
16755	// unconditionally include in API requests. By default, fields with
16756	// empty or default values are omitted from API requests. However, any
16757	// non-pointer, non-interface field appearing in ForceSendFields will be
16758	// sent to the server regardless of whether the field is empty or not.
16759	// This may be used to include empty fields in Patch requests.
16760	ForceSendFields []string `json:"-"`
16761
16762	// NullFields is a list of field names (e.g. "DeliveryDetails") to
16763	// include in API requests with the JSON null value. By default, fields
16764	// with empty values are omitted from API requests. However, any field
16765	// with an empty value appearing in NullFields will be sent to the
16766	// server as null. It is an error if a field in this list has a
16767	// non-empty value. This may be used to include null fields in Patch
16768	// requests.
16769	NullFields []string `json:"-"`
16770}
16771
16772func (s *TestOrder) MarshalJSON() ([]byte, error) {
16773	type NoMethod TestOrder
16774	raw := NoMethod(*s)
16775	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16776}
16777
16778type TestOrderAddress struct {
16779	// Country: CLDR country code (e.g. "US").
16780	Country string `json:"country,omitempty"`
16781
16782	// FullAddress: Strings representing the lines of the printed label for
16783	// mailing the order, for example: John Smith 1600 Amphitheatre Parkway
16784	// Mountain View, CA, 94043 United States
16785	FullAddress []string `json:"fullAddress,omitempty"`
16786
16787	// IsPostOfficeBox: Whether the address is a post office box.
16788	IsPostOfficeBox bool `json:"isPostOfficeBox,omitempty"`
16789
16790	// Locality: City, town or commune. May also include dependent
16791	// localities or sublocalities (e.g. neighborhoods or suburbs).
16792	Locality string `json:"locality,omitempty"`
16793
16794	// PostalCode: Postal Code or ZIP (e.g. "94043").
16795	PostalCode string `json:"postalCode,omitempty"`
16796
16797	// RecipientName: Name of the recipient.
16798	RecipientName string `json:"recipientName,omitempty"`
16799
16800	// Region: Top-level administrative subdivision of the country. For
16801	// example, a state like California ("CA") or a province like Quebec
16802	// ("QC").
16803	Region string `json:"region,omitempty"`
16804
16805	// StreetAddress: Street-level part of the address.
16806	StreetAddress []string `json:"streetAddress,omitempty"`
16807
16808	// ForceSendFields is a list of field names (e.g. "Country") to
16809	// unconditionally include in API requests. By default, fields with
16810	// empty or default values are omitted from API requests. However, any
16811	// non-pointer, non-interface field appearing in ForceSendFields will be
16812	// sent to the server regardless of whether the field is empty or not.
16813	// This may be used to include empty fields in Patch requests.
16814	ForceSendFields []string `json:"-"`
16815
16816	// NullFields is a list of field names (e.g. "Country") to include in
16817	// API requests with the JSON null value. By default, fields with empty
16818	// values are omitted from API requests. However, any field with an
16819	// empty value appearing in NullFields will be sent to the server as
16820	// null. It is an error if a field in this list has a non-empty value.
16821	// This may be used to include null fields in Patch requests.
16822	NullFields []string `json:"-"`
16823}
16824
16825func (s *TestOrderAddress) MarshalJSON() ([]byte, error) {
16826	type NoMethod TestOrderAddress
16827	raw := NoMethod(*s)
16828	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16829}
16830
16831type TestOrderDeliveryDetails struct {
16832	// Address: The delivery address
16833	Address *TestOrderAddress `json:"address,omitempty"`
16834
16835	// IsScheduledDelivery: Whether the order is scheduled delivery order.
16836	IsScheduledDelivery bool `json:"isScheduledDelivery,omitempty"`
16837
16838	// PhoneNumber: The phone number of the person receiving the delivery.
16839	PhoneNumber string `json:"phoneNumber,omitempty"`
16840
16841	// ForceSendFields is a list of field names (e.g. "Address") to
16842	// unconditionally include in API requests. By default, fields with
16843	// empty or default values are omitted from API requests. However, any
16844	// non-pointer, non-interface field appearing in ForceSendFields will be
16845	// sent to the server regardless of whether the field is empty or not.
16846	// This may be used to include empty fields in Patch requests.
16847	ForceSendFields []string `json:"-"`
16848
16849	// NullFields is a list of field names (e.g. "Address") to include in
16850	// API requests with the JSON null value. By default, fields with empty
16851	// values are omitted from API requests. However, any field with an
16852	// empty value appearing in NullFields will be sent to the server as
16853	// null. It is an error if a field in this list has a non-empty value.
16854	// This may be used to include null fields in Patch requests.
16855	NullFields []string `json:"-"`
16856}
16857
16858func (s *TestOrderDeliveryDetails) MarshalJSON() ([]byte, error) {
16859	type NoMethod TestOrderDeliveryDetails
16860	raw := NoMethod(*s)
16861	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16862}
16863
16864type TestOrderLineItem struct {
16865	// Product: Required. Product data from the time of the order placement.
16866	Product *TestOrderLineItemProduct `json:"product,omitempty"`
16867
16868	// QuantityOrdered: Required. Number of items ordered.
16869	QuantityOrdered int64 `json:"quantityOrdered,omitempty"`
16870
16871	// ReturnInfo: Required. Details of the return policy for the line item.
16872	ReturnInfo *OrderLineItemReturnInfo `json:"returnInfo,omitempty"`
16873
16874	// ShippingDetails: Required. Details of the requested shipping for the
16875	// line item.
16876	ShippingDetails *OrderLineItemShippingDetails `json:"shippingDetails,omitempty"`
16877
16878	// ForceSendFields is a list of field names (e.g. "Product") to
16879	// unconditionally include in API requests. By default, fields with
16880	// empty or default values are omitted from API requests. However, any
16881	// non-pointer, non-interface field appearing in ForceSendFields will be
16882	// sent to the server regardless of whether the field is empty or not.
16883	// This may be used to include empty fields in Patch requests.
16884	ForceSendFields []string `json:"-"`
16885
16886	// NullFields is a list of field names (e.g. "Product") to include in
16887	// API requests with the JSON null value. By default, fields with empty
16888	// values are omitted from API requests. However, any field with an
16889	// empty value appearing in NullFields will be sent to the server as
16890	// null. It is an error if a field in this list has a non-empty value.
16891	// This may be used to include null fields in Patch requests.
16892	NullFields []string `json:"-"`
16893}
16894
16895func (s *TestOrderLineItem) MarshalJSON() ([]byte, error) {
16896	type NoMethod TestOrderLineItem
16897	raw := NoMethod(*s)
16898	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16899}
16900
16901type TestOrderLineItemProduct struct {
16902	// Brand: Required. Brand of the item.
16903	Brand string `json:"brand,omitempty"`
16904
16905	// Condition: Required. Condition or state of the item. Acceptable
16906	// values are: - "new"
16907	Condition string `json:"condition,omitempty"`
16908
16909	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
16910	// the item. Acceptable values are: - "en" - "fr"
16911	ContentLanguage string `json:"contentLanguage,omitempty"`
16912
16913	// Fees: Fees for the item. Optional.
16914	Fees []*OrderLineItemProductFee `json:"fees,omitempty"`
16915
16916	// Gtin: Global Trade Item Number (GTIN) of the item. Optional.
16917	Gtin string `json:"gtin,omitempty"`
16918
16919	// ImageLink: Required. URL of an image of the item.
16920	ImageLink string `json:"imageLink,omitempty"`
16921
16922	// ItemGroupId: Shared identifier for all variants of the same product.
16923	// Optional.
16924	ItemGroupId string `json:"itemGroupId,omitempty"`
16925
16926	// Mpn: Manufacturer Part Number (MPN) of the item. Optional.
16927	Mpn string `json:"mpn,omitempty"`
16928
16929	// OfferId: Required. An identifier of the item.
16930	OfferId string `json:"offerId,omitempty"`
16931
16932	// Price: Required. The price for the product. Tax is automatically
16933	// calculated for orders where marketplace facilitator tax laws are
16934	// applicable. Otherwise, tax settings from Merchant Center are applied.
16935	Price *Price `json:"price,omitempty"`
16936
16937	// TargetCountry: Required. The CLDR territory // code of the target
16938	// country of the product.
16939	TargetCountry string `json:"targetCountry,omitempty"`
16940
16941	// Title: Required. The title of the product.
16942	Title string `json:"title,omitempty"`
16943
16944	// VariantAttributes: Variant attributes for the item. Optional.
16945	VariantAttributes []*OrderLineItemProductVariantAttribute `json:"variantAttributes,omitempty"`
16946
16947	// ForceSendFields is a list of field names (e.g. "Brand") to
16948	// unconditionally include in API requests. By default, fields with
16949	// empty or default values are omitted from API requests. However, any
16950	// non-pointer, non-interface field appearing in ForceSendFields will be
16951	// sent to the server regardless of whether the field is empty or not.
16952	// This may be used to include empty fields in Patch requests.
16953	ForceSendFields []string `json:"-"`
16954
16955	// NullFields is a list of field names (e.g. "Brand") to include in API
16956	// requests with the JSON null value. By default, fields with empty
16957	// values are omitted from API requests. However, any field with an
16958	// empty value appearing in NullFields will be sent to the server as
16959	// null. It is an error if a field in this list has a non-empty value.
16960	// This may be used to include null fields in Patch requests.
16961	NullFields []string `json:"-"`
16962}
16963
16964func (s *TestOrderLineItemProduct) MarshalJSON() ([]byte, error) {
16965	type NoMethod TestOrderLineItemProduct
16966	raw := NoMethod(*s)
16967	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16968}
16969
16970type TestOrderPickupDetails struct {
16971	// LocationCode: Required. Code of the location defined by provider or
16972	// merchant.
16973	LocationCode string `json:"locationCode,omitempty"`
16974
16975	// PickupLocationAddress: Required. Pickup location address.
16976	PickupLocationAddress *TestOrderAddress `json:"pickupLocationAddress,omitempty"`
16977
16978	// PickupLocationType: Pickup location type. Acceptable values are: -
16979	// "locker" - "store" - "curbside"
16980	PickupLocationType string `json:"pickupLocationType,omitempty"`
16981
16982	// PickupPersons: Required. all pickup persons set by users.
16983	PickupPersons []*TestOrderPickupDetailsPickupPerson `json:"pickupPersons,omitempty"`
16984
16985	// ForceSendFields is a list of field names (e.g. "LocationCode") to
16986	// unconditionally include in API requests. By default, fields with
16987	// empty or default values are omitted from API requests. However, any
16988	// non-pointer, non-interface field appearing in ForceSendFields will be
16989	// sent to the server regardless of whether the field is empty or not.
16990	// This may be used to include empty fields in Patch requests.
16991	ForceSendFields []string `json:"-"`
16992
16993	// NullFields is a list of field names (e.g. "LocationCode") to include
16994	// in API requests with the JSON null value. By default, fields with
16995	// empty values are omitted from API requests. However, any field with
16996	// an empty value appearing in NullFields will be sent to the server as
16997	// null. It is an error if a field in this list has a non-empty value.
16998	// This may be used to include null fields in Patch requests.
16999	NullFields []string `json:"-"`
17000}
17001
17002func (s *TestOrderPickupDetails) MarshalJSON() ([]byte, error) {
17003	type NoMethod TestOrderPickupDetails
17004	raw := NoMethod(*s)
17005	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17006}
17007
17008type TestOrderPickupDetailsPickupPerson struct {
17009	// Name: Required. Full name of the pickup person.
17010	Name string `json:"name,omitempty"`
17011
17012	// PhoneNumber: Required. The phone number of the person picking up the
17013	// items.
17014	PhoneNumber string `json:"phoneNumber,omitempty"`
17015
17016	// ForceSendFields is a list of field names (e.g. "Name") to
17017	// unconditionally include in API requests. By default, fields with
17018	// empty or default values are omitted from API requests. However, any
17019	// non-pointer, non-interface field appearing in ForceSendFields will be
17020	// sent to the server regardless of whether the field is empty or not.
17021	// This may be used to include empty fields in Patch requests.
17022	ForceSendFields []string `json:"-"`
17023
17024	// NullFields is a list of field names (e.g. "Name") to include in API
17025	// requests with the JSON null value. By default, fields with empty
17026	// values are omitted from API requests. However, any field with an
17027	// empty value appearing in NullFields will be sent to the server as
17028	// null. It is an error if a field in this list has a non-empty value.
17029	// This may be used to include null fields in Patch requests.
17030	NullFields []string `json:"-"`
17031}
17032
17033func (s *TestOrderPickupDetailsPickupPerson) MarshalJSON() ([]byte, error) {
17034	type NoMethod TestOrderPickupDetailsPickupPerson
17035	raw := NoMethod(*s)
17036	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17037}
17038
17039// TimeZone: Represents a time zone from the IANA Time Zone Database
17040// (https://www.iana.org/time-zones).
17041type TimeZone struct {
17042	// Id: IANA Time Zone Database time zone, e.g. "America/New_York".
17043	Id string `json:"id,omitempty"`
17044
17045	// Version: Optional. IANA Time Zone Database version number, e.g.
17046	// "2019a".
17047	Version string `json:"version,omitempty"`
17048
17049	// ForceSendFields is a list of field names (e.g. "Id") to
17050	// unconditionally include in API requests. By default, fields with
17051	// empty or default values are omitted from API requests. However, any
17052	// non-pointer, non-interface field appearing in ForceSendFields will be
17053	// sent to the server regardless of whether the field is empty or not.
17054	// This may be used to include empty fields in Patch requests.
17055	ForceSendFields []string `json:"-"`
17056
17057	// NullFields is a list of field names (e.g. "Id") to include in API
17058	// requests with the JSON null value. By default, fields with empty
17059	// values are omitted from API requests. However, any field with an
17060	// empty value appearing in NullFields will be sent to the server as
17061	// null. It is an error if a field in this list has a non-empty value.
17062	// This may be used to include null fields in Patch requests.
17063	NullFields []string `json:"-"`
17064}
17065
17066func (s *TimeZone) MarshalJSON() ([]byte, error) {
17067	type NoMethod TimeZone
17068	raw := NoMethod(*s)
17069	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17070}
17071
17072type TransitTable struct {
17073	// PostalCodeGroupNames: A list of postal group names. The last value
17074	// can be "all other locations". Example: `["zone 1", "zone 2", "all
17075	// other locations"]`. The referred postal code groups must match the
17076	// delivery country of the service.
17077	PostalCodeGroupNames []string `json:"postalCodeGroupNames,omitempty"`
17078
17079	Rows []*TransitTableTransitTimeRow `json:"rows,omitempty"`
17080
17081	// TransitTimeLabels: A list of transit time labels. The last value can
17082	// be "all other labels". Example: `["food", "electronics", "all other
17083	// labels"]`.
17084	TransitTimeLabels []string `json:"transitTimeLabels,omitempty"`
17085
17086	// ForceSendFields is a list of field names (e.g.
17087	// "PostalCodeGroupNames") to unconditionally include in API requests.
17088	// By default, fields with empty or default values are omitted from API
17089	// requests. However, any non-pointer, non-interface field appearing in
17090	// ForceSendFields will be sent to the server regardless of whether the
17091	// field is empty or not. This may be used to include empty fields in
17092	// Patch requests.
17093	ForceSendFields []string `json:"-"`
17094
17095	// NullFields is a list of field names (e.g. "PostalCodeGroupNames") to
17096	// include in API requests with the JSON null value. By default, fields
17097	// with empty values are omitted from API requests. However, any field
17098	// with an empty value appearing in NullFields will be sent to the
17099	// server as null. It is an error if a field in this list has a
17100	// non-empty value. This may be used to include null fields in Patch
17101	// requests.
17102	NullFields []string `json:"-"`
17103}
17104
17105func (s *TransitTable) MarshalJSON() ([]byte, error) {
17106	type NoMethod TransitTable
17107	raw := NoMethod(*s)
17108	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17109}
17110
17111type TransitTableTransitTimeRow struct {
17112	Values []*TransitTableTransitTimeRowTransitTimeValue `json:"values,omitempty"`
17113
17114	// ForceSendFields is a list of field names (e.g. "Values") to
17115	// unconditionally include in API requests. By default, fields with
17116	// empty or default values are omitted from API requests. However, any
17117	// non-pointer, non-interface field appearing in ForceSendFields will be
17118	// sent to the server regardless of whether the field is empty or not.
17119	// This may be used to include empty fields in Patch requests.
17120	ForceSendFields []string `json:"-"`
17121
17122	// NullFields is a list of field names (e.g. "Values") to include in API
17123	// requests with the JSON null value. By default, fields with empty
17124	// values are omitted from API requests. However, any field with an
17125	// empty value appearing in NullFields will be sent to the server as
17126	// null. It is an error if a field in this list has a non-empty value.
17127	// This may be used to include null fields in Patch requests.
17128	NullFields []string `json:"-"`
17129}
17130
17131func (s *TransitTableTransitTimeRow) MarshalJSON() ([]byte, error) {
17132	type NoMethod TransitTableTransitTimeRow
17133	raw := NoMethod(*s)
17134	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17135}
17136
17137type TransitTableTransitTimeRowTransitTimeValue struct {
17138	// MaxTransitTimeInDays: Must be greater than or equal to
17139	// `minTransitTimeInDays`.
17140	MaxTransitTimeInDays int64 `json:"maxTransitTimeInDays,omitempty"`
17141
17142	// MinTransitTimeInDays: Transit time range (min-max) in business days.
17143	// 0 means same day delivery, 1 means next day delivery.
17144	MinTransitTimeInDays int64 `json:"minTransitTimeInDays,omitempty"`
17145
17146	// ForceSendFields is a list of field names (e.g.
17147	// "MaxTransitTimeInDays") to unconditionally include in API requests.
17148	// By default, fields with empty or default values are omitted from API
17149	// requests. However, any non-pointer, non-interface field appearing in
17150	// ForceSendFields will be sent to the server regardless of whether the
17151	// field is empty or not. This may be used to include empty fields in
17152	// Patch requests.
17153	ForceSendFields []string `json:"-"`
17154
17155	// NullFields is a list of field names (e.g. "MaxTransitTimeInDays") to
17156	// include in API requests with the JSON null value. By default, fields
17157	// with empty values are omitted from API requests. However, any field
17158	// with an empty value appearing in NullFields will be sent to the
17159	// server as null. It is an error if a field in this list has a
17160	// non-empty value. This may be used to include null fields in Patch
17161	// requests.
17162	NullFields []string `json:"-"`
17163}
17164
17165func (s *TransitTableTransitTimeRowTransitTimeValue) MarshalJSON() ([]byte, error) {
17166	type NoMethod TransitTableTransitTimeRowTransitTimeValue
17167	raw := NoMethod(*s)
17168	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17169}
17170
17171type UnitInvoice struct {
17172	// AdditionalCharges: Additional charges for a unit, e.g. shipping
17173	// costs.
17174	AdditionalCharges []*UnitInvoiceAdditionalCharge `json:"additionalCharges,omitempty"`
17175
17176	// UnitPrice: [required] Pre-tax or post-tax price of one unit depending
17177	// on the locality of the order. *Note:* Invoicing works on a per unit
17178	// basis. The `unitPrice` is the price of a single unit, and will be
17179	// multiplied by the number of entries in `shipmentUnitId`.
17180	UnitPrice *Price `json:"unitPrice,omitempty"`
17181
17182	// UnitPriceTaxes: Tax amounts to apply to the unit price.
17183	UnitPriceTaxes []*UnitInvoiceTaxLine `json:"unitPriceTaxes,omitempty"`
17184
17185	// ForceSendFields is a list of field names (e.g. "AdditionalCharges")
17186	// to unconditionally include in API requests. By default, fields with
17187	// empty or default values are omitted from API requests. However, any
17188	// non-pointer, non-interface field appearing in ForceSendFields will be
17189	// sent to the server regardless of whether the field is empty or not.
17190	// This may be used to include empty fields in Patch requests.
17191	ForceSendFields []string `json:"-"`
17192
17193	// NullFields is a list of field names (e.g. "AdditionalCharges") to
17194	// include in API requests with the JSON null value. By default, fields
17195	// with empty values are omitted from API requests. However, any field
17196	// with an empty value appearing in NullFields will be sent to the
17197	// server as null. It is an error if a field in this list has a
17198	// non-empty value. This may be used to include null fields in Patch
17199	// requests.
17200	NullFields []string `json:"-"`
17201}
17202
17203func (s *UnitInvoice) MarshalJSON() ([]byte, error) {
17204	type NoMethod UnitInvoice
17205	raw := NoMethod(*s)
17206	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17207}
17208
17209type UnitInvoiceAdditionalCharge struct {
17210	// AdditionalChargeAmount: [required] Amount of the additional charge
17211	// per unit. *Note:* Invoicing works on a per unit bases. The
17212	// `additionalChargeAmount` is the amount charged per unit, and will be
17213	// multiplied by the number of entries in `shipmentUnitID`.
17214	AdditionalChargeAmount *Amount `json:"additionalChargeAmount,omitempty"`
17215
17216	// Type: [required] Type of the additional charge. Acceptable values
17217	// are: - "shipping"
17218	Type string `json:"type,omitempty"`
17219
17220	// ForceSendFields is a list of field names (e.g.
17221	// "AdditionalChargeAmount") to unconditionally include in API requests.
17222	// By default, fields with empty or default values are omitted from API
17223	// requests. However, any non-pointer, non-interface field appearing in
17224	// ForceSendFields will be sent to the server regardless of whether the
17225	// field is empty or not. This may be used to include empty fields in
17226	// Patch requests.
17227	ForceSendFields []string `json:"-"`
17228
17229	// NullFields is a list of field names (e.g. "AdditionalChargeAmount")
17230	// to include in API requests with the JSON null value. By default,
17231	// fields with empty values are omitted from API requests. However, any
17232	// field with an empty value appearing in NullFields will be sent to the
17233	// server as null. It is an error if a field in this list has a
17234	// non-empty value. This may be used to include null fields in Patch
17235	// requests.
17236	NullFields []string `json:"-"`
17237}
17238
17239func (s *UnitInvoiceAdditionalCharge) MarshalJSON() ([]byte, error) {
17240	type NoMethod UnitInvoiceAdditionalCharge
17241	raw := NoMethod(*s)
17242	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17243}
17244
17245type UnitInvoiceTaxLine struct {
17246	// TaxAmount: [required] Tax amount for the tax type.
17247	TaxAmount *Price `json:"taxAmount,omitempty"`
17248
17249	// TaxName: Optional name of the tax type. This should only be provided
17250	// if `taxType` is `otherFeeTax`.
17251	TaxName string `json:"taxName,omitempty"`
17252
17253	// TaxType: [required] Type of the tax. Acceptable values are: -
17254	// "otherFee" - "otherFeeTax" - "sales"
17255	TaxType string `json:"taxType,omitempty"`
17256
17257	// ForceSendFields is a list of field names (e.g. "TaxAmount") to
17258	// unconditionally include in API requests. By default, fields with
17259	// empty or default values are omitted from API requests. However, any
17260	// non-pointer, non-interface field appearing in ForceSendFields will be
17261	// sent to the server regardless of whether the field is empty or not.
17262	// This may be used to include empty fields in Patch requests.
17263	ForceSendFields []string `json:"-"`
17264
17265	// NullFields is a list of field names (e.g. "TaxAmount") to include in
17266	// API requests with the JSON null value. By default, fields with empty
17267	// values are omitted from API requests. However, any field with an
17268	// empty value appearing in NullFields will be sent to the server as
17269	// null. It is an error if a field in this list has a non-empty value.
17270	// This may be used to include null fields in Patch requests.
17271	NullFields []string `json:"-"`
17272}
17273
17274func (s *UnitInvoiceTaxLine) MarshalJSON() ([]byte, error) {
17275	type NoMethod UnitInvoiceTaxLine
17276	raw := NoMethod(*s)
17277	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17278}
17279
17280// Value: The single value of a rate group or the value of a rate group
17281// table's cell. Exactly one of `noShipping`, `flatRate`,
17282// `pricePercentage`, `carrierRateName`, `subtableName` must be set.
17283type Value struct {
17284	// CarrierRateName: The name of a carrier rate referring to a carrier
17285	// rate defined in the same rate group. Can only be set if all other
17286	// fields are not set.
17287	CarrierRateName string `json:"carrierRateName,omitempty"`
17288
17289	// FlatRate: A flat rate. Can only be set if all other fields are not
17290	// set.
17291	FlatRate *Price `json:"flatRate,omitempty"`
17292
17293	// NoShipping: If true, then the product can't ship. Must be true when
17294	// set, can only be set if all other fields are not set.
17295	NoShipping bool `json:"noShipping,omitempty"`
17296
17297	// PricePercentage: A percentage of the price represented as a number in
17298	// decimal notation (e.g., "5.4"). Can only be set if all other fields
17299	// are not set.
17300	PricePercentage string `json:"pricePercentage,omitempty"`
17301
17302	// SubtableName: The name of a subtable. Can only be set in table cells
17303	// (i.e., not for single values), and only if all other fields are not
17304	// set.
17305	SubtableName string `json:"subtableName,omitempty"`
17306
17307	// ForceSendFields is a list of field names (e.g. "CarrierRateName") to
17308	// unconditionally include in API requests. By default, fields with
17309	// empty or default values are omitted from API requests. However, any
17310	// non-pointer, non-interface field appearing in ForceSendFields will be
17311	// sent to the server regardless of whether the field is empty or not.
17312	// This may be used to include empty fields in Patch requests.
17313	ForceSendFields []string `json:"-"`
17314
17315	// NullFields is a list of field names (e.g. "CarrierRateName") to
17316	// include in API requests with the JSON null value. By default, fields
17317	// with empty values are omitted from API requests. However, any field
17318	// with an empty value appearing in NullFields will be sent to the
17319	// server as null. It is an error if a field in this list has a
17320	// non-empty value. This may be used to include null fields in Patch
17321	// requests.
17322	NullFields []string `json:"-"`
17323}
17324
17325func (s *Value) MarshalJSON() ([]byte, error) {
17326	type NoMethod Value
17327	raw := NoMethod(*s)
17328	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17329}
17330
17331// VerifyPhoneNumberRequest: Request message for the VerifyPhoneNumber
17332// method.
17333type VerifyPhoneNumberRequest struct {
17334	// PhoneVerificationMethod: Verification method used to receive
17335	// verification code.
17336	//
17337	// Possible values:
17338	//   "PHONE_VERIFICATION_METHOD_UNSPECIFIED" - Unknown method.
17339	//   "SMS" - Receive verification code by SMS.
17340	//   "PHONE_CALL" - Receive verification code by phone call.
17341	PhoneVerificationMethod string `json:"phoneVerificationMethod,omitempty"`
17342
17343	// VerificationCode: The verification code that was sent to the phone
17344	// number for validation.
17345	VerificationCode string `json:"verificationCode,omitempty"`
17346
17347	// VerificationId: The verification ID returned by
17348	// `requestphoneverification`.
17349	VerificationId string `json:"verificationId,omitempty"`
17350
17351	// ForceSendFields is a list of field names (e.g.
17352	// "PhoneVerificationMethod") to unconditionally include in API
17353	// requests. By default, fields with empty or default values are omitted
17354	// from API requests. However, any non-pointer, non-interface field
17355	// appearing in ForceSendFields will be sent to the server regardless of
17356	// whether the field is empty or not. This may be used to include empty
17357	// fields in Patch requests.
17358	ForceSendFields []string `json:"-"`
17359
17360	// NullFields is a list of field names (e.g. "PhoneVerificationMethod")
17361	// to include in API requests with the JSON null value. By default,
17362	// fields with empty values are omitted from API requests. However, any
17363	// field with an empty value appearing in NullFields will be sent to the
17364	// server as null. It is an error if a field in this list has a
17365	// non-empty value. This may be used to include null fields in Patch
17366	// requests.
17367	NullFields []string `json:"-"`
17368}
17369
17370func (s *VerifyPhoneNumberRequest) MarshalJSON() ([]byte, error) {
17371	type NoMethod VerifyPhoneNumberRequest
17372	raw := NoMethod(*s)
17373	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17374}
17375
17376// VerifyPhoneNumberResponse: Response message for the VerifyPhoneNumber
17377// method.
17378type VerifyPhoneNumberResponse struct {
17379	// VerifiedPhoneNumber: Verified phone number if verification is
17380	// successful. This phone number can only be replaced by another
17381	// verified phone number.
17382	VerifiedPhoneNumber string `json:"verifiedPhoneNumber,omitempty"`
17383
17384	// ServerResponse contains the HTTP response code and headers from the
17385	// server.
17386	googleapi.ServerResponse `json:"-"`
17387
17388	// ForceSendFields is a list of field names (e.g. "VerifiedPhoneNumber")
17389	// to unconditionally include in API requests. By default, fields with
17390	// empty or default values are omitted from API requests. However, any
17391	// non-pointer, non-interface field appearing in ForceSendFields will be
17392	// sent to the server regardless of whether the field is empty or not.
17393	// This may be used to include empty fields in Patch requests.
17394	ForceSendFields []string `json:"-"`
17395
17396	// NullFields is a list of field names (e.g. "VerifiedPhoneNumber") to
17397	// include in API requests with the JSON null value. By default, fields
17398	// with empty values are omitted from API requests. However, any field
17399	// with an empty value appearing in NullFields will be sent to the
17400	// server as null. It is an error if a field in this list has a
17401	// non-empty value. This may be used to include null fields in Patch
17402	// requests.
17403	NullFields []string `json:"-"`
17404}
17405
17406func (s *VerifyPhoneNumberResponse) MarshalJSON() ([]byte, error) {
17407	type NoMethod VerifyPhoneNumberResponse
17408	raw := NoMethod(*s)
17409	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17410}
17411
17412// Warehouse: A fulfillment warehouse, which stores and handles
17413// inventory.
17414type Warehouse struct {
17415	// BusinessDayConfig: Business days of the warehouse. If not set, will
17416	// be Monday to Friday by default.
17417	BusinessDayConfig *BusinessDayConfig `json:"businessDayConfig,omitempty"`
17418
17419	// CutoffTime: Required. The latest time of day that an order can be
17420	// accepted and begin processing. Later orders will be processed in the
17421	// next day. The time is based on the warehouse postal code.
17422	CutoffTime *WarehouseCutoffTime `json:"cutoffTime,omitempty"`
17423
17424	// HandlingDays: Required. The number of days it takes for this
17425	// warehouse to pack up and ship an item. This is on the warehouse
17426	// level, but can be overridden on the offer level based on the
17427	// attributes of an item.
17428	HandlingDays int64 `json:"handlingDays,omitempty,string"`
17429
17430	// Name: Required. The name of the warehouse. Must be unique within
17431	// account.
17432	Name string `json:"name,omitempty"`
17433
17434	// ShippingAddress: Required. Shipping address of the warehouse.
17435	ShippingAddress *Address `json:"shippingAddress,omitempty"`
17436
17437	// ForceSendFields is a list of field names (e.g. "BusinessDayConfig")
17438	// to unconditionally include in API requests. By default, fields with
17439	// empty or default values are omitted from API requests. However, any
17440	// non-pointer, non-interface field appearing in ForceSendFields will be
17441	// sent to the server regardless of whether the field is empty or not.
17442	// This may be used to include empty fields in Patch requests.
17443	ForceSendFields []string `json:"-"`
17444
17445	// NullFields is a list of field names (e.g. "BusinessDayConfig") to
17446	// include in API requests with the JSON null value. By default, fields
17447	// with empty values are omitted from API requests. However, any field
17448	// with an empty value appearing in NullFields will be sent to the
17449	// server as null. It is an error if a field in this list has a
17450	// non-empty value. This may be used to include null fields in Patch
17451	// requests.
17452	NullFields []string `json:"-"`
17453}
17454
17455func (s *Warehouse) MarshalJSON() ([]byte, error) {
17456	type NoMethod Warehouse
17457	raw := NoMethod(*s)
17458	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17459}
17460
17461type WarehouseBasedDeliveryTime struct {
17462	// Carrier: Required. Carrier, such as "UPS" or "Fedex". The list of
17463	// supported carriers can be retrieved via the `listSupportedCarriers`
17464	// method.
17465	Carrier string `json:"carrier,omitempty"`
17466
17467	// CarrierService: Required. Carrier service, such as "ground" or "2
17468	// days". The list of supported services for a carrier can be retrieved
17469	// via the `listSupportedCarriers` method. The name of the service must
17470	// be in the eddSupportedServices list.
17471	CarrierService string `json:"carrierService,omitempty"`
17472
17473	// OriginAdministrativeArea: Shipping origin's state.
17474	OriginAdministrativeArea string `json:"originAdministrativeArea,omitempty"`
17475
17476	// OriginCity: Shipping origin's city.
17477	OriginCity string `json:"originCity,omitempty"`
17478
17479	// OriginCountry: Shipping origin's country represented as a CLDR
17480	// territory code
17481	// (http://www.unicode.org/repos/cldr/tags/latest/common/main/en.xml).
17482	OriginCountry string `json:"originCountry,omitempty"`
17483
17484	// OriginPostalCode: Shipping origin.
17485	OriginPostalCode string `json:"originPostalCode,omitempty"`
17486
17487	// OriginStreetAddress: Shipping origin's street address.
17488	OriginStreetAddress string `json:"originStreetAddress,omitempty"`
17489
17490	// WarehouseName: The name of the warehouse. Warehouse name need to be
17491	// matched with name. If warehouseName is set, the below fields will be
17492	// ignored. The warehouse info will be read from warehouse.
17493	WarehouseName string `json:"warehouseName,omitempty"`
17494
17495	// ForceSendFields is a list of field names (e.g. "Carrier") to
17496	// unconditionally include in API requests. By default, fields with
17497	// empty or default values are omitted from API requests. However, any
17498	// non-pointer, non-interface field appearing in ForceSendFields will be
17499	// sent to the server regardless of whether the field is empty or not.
17500	// This may be used to include empty fields in Patch requests.
17501	ForceSendFields []string `json:"-"`
17502
17503	// NullFields is a list of field names (e.g. "Carrier") to include in
17504	// API requests with the JSON null value. By default, fields with empty
17505	// values are omitted from API requests. However, any field with an
17506	// empty value appearing in NullFields will be sent to the server as
17507	// null. It is an error if a field in this list has a non-empty value.
17508	// This may be used to include null fields in Patch requests.
17509	NullFields []string `json:"-"`
17510}
17511
17512func (s *WarehouseBasedDeliveryTime) MarshalJSON() ([]byte, error) {
17513	type NoMethod WarehouseBasedDeliveryTime
17514	raw := NoMethod(*s)
17515	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17516}
17517
17518type WarehouseCutoffTime struct {
17519	// Hour: Required. Hour (24-hour clock) of the cutoff time until which
17520	// an order has to be placed to be processed in the same day by the
17521	// warehouse. Hour is based on the timezone of warehouse.
17522	Hour int64 `json:"hour,omitempty"`
17523
17524	// Minute: Required. Minute of the cutoff time until which an order has
17525	// to be placed to be processed in the same day by the warehouse. Minute
17526	// is based on the timezone of warehouse.
17527	Minute int64 `json:"minute,omitempty"`
17528
17529	// ForceSendFields is a list of field names (e.g. "Hour") to
17530	// unconditionally include in API requests. By default, fields with
17531	// empty or default values are omitted from API requests. However, any
17532	// non-pointer, non-interface field appearing in ForceSendFields will be
17533	// sent to the server regardless of whether the field is empty or not.
17534	// This may be used to include empty fields in Patch requests.
17535	ForceSendFields []string `json:"-"`
17536
17537	// NullFields is a list of field names (e.g. "Hour") to include in API
17538	// requests with the JSON null value. By default, fields with empty
17539	// values are omitted from API requests. However, any field with an
17540	// empty value appearing in NullFields will be sent to the server as
17541	// null. It is an error if a field in this list has a non-empty value.
17542	// This may be used to include null fields in Patch requests.
17543	NullFields []string `json:"-"`
17544}
17545
17546func (s *WarehouseCutoffTime) MarshalJSON() ([]byte, error) {
17547	type NoMethod WarehouseCutoffTime
17548	raw := NoMethod(*s)
17549	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17550}
17551
17552type Weight struct {
17553	// Unit: Required. The weight unit. Acceptable values are: - "kg" -
17554	// "lb"
17555	Unit string `json:"unit,omitempty"`
17556
17557	// Value: Required. The weight represented as a number. The weight can
17558	// have a maximum precision of four decimal places.
17559	Value string `json:"value,omitempty"`
17560
17561	// ForceSendFields is a list of field names (e.g. "Unit") to
17562	// unconditionally include in API requests. By default, fields with
17563	// empty or default values are omitted from API requests. However, any
17564	// non-pointer, non-interface field appearing in ForceSendFields will be
17565	// sent to the server regardless of whether the field is empty or not.
17566	// This may be used to include empty fields in Patch requests.
17567	ForceSendFields []string `json:"-"`
17568
17569	// NullFields is a list of field names (e.g. "Unit") to include in API
17570	// requests with the JSON null value. By default, fields with empty
17571	// values are omitted from API requests. However, any field with an
17572	// empty value appearing in NullFields will be sent to the server as
17573	// null. It is an error if a field in this list has a non-empty value.
17574	// This may be used to include null fields in Patch requests.
17575	NullFields []string `json:"-"`
17576}
17577
17578func (s *Weight) MarshalJSON() ([]byte, error) {
17579	type NoMethod Weight
17580	raw := NoMethod(*s)
17581	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17582}
17583
17584// method id "content.accounts.authinfo":
17585
17586type AccountsAuthinfoCall struct {
17587	s            *APIService
17588	urlParams_   gensupport.URLParams
17589	ifNoneMatch_ string
17590	ctx_         context.Context
17591	header_      http.Header
17592}
17593
17594// Authinfo: Returns information about the authenticated user.
17595func (r *AccountsService) Authinfo() *AccountsAuthinfoCall {
17596	c := &AccountsAuthinfoCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17597	return c
17598}
17599
17600// Fields allows partial responses to be retrieved. See
17601// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17602// for more information.
17603func (c *AccountsAuthinfoCall) Fields(s ...googleapi.Field) *AccountsAuthinfoCall {
17604	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17605	return c
17606}
17607
17608// IfNoneMatch sets the optional parameter which makes the operation
17609// fail if the object's ETag matches the given value. This is useful for
17610// getting updates only after the object has changed since the last
17611// request. Use googleapi.IsNotModified to check whether the response
17612// error from Do is the result of In-None-Match.
17613func (c *AccountsAuthinfoCall) IfNoneMatch(entityTag string) *AccountsAuthinfoCall {
17614	c.ifNoneMatch_ = entityTag
17615	return c
17616}
17617
17618// Context sets the context to be used in this call's Do method. Any
17619// pending HTTP request will be aborted if the provided context is
17620// canceled.
17621func (c *AccountsAuthinfoCall) Context(ctx context.Context) *AccountsAuthinfoCall {
17622	c.ctx_ = ctx
17623	return c
17624}
17625
17626// Header returns an http.Header that can be modified by the caller to
17627// add HTTP headers to the request.
17628func (c *AccountsAuthinfoCall) Header() http.Header {
17629	if c.header_ == nil {
17630		c.header_ = make(http.Header)
17631	}
17632	return c.header_
17633}
17634
17635func (c *AccountsAuthinfoCall) doRequest(alt string) (*http.Response, error) {
17636	reqHeaders := make(http.Header)
17637	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
17638	for k, v := range c.header_ {
17639		reqHeaders[k] = v
17640	}
17641	reqHeaders.Set("User-Agent", c.s.userAgent())
17642	if c.ifNoneMatch_ != "" {
17643		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
17644	}
17645	var body io.Reader = nil
17646	c.urlParams_.Set("alt", alt)
17647	c.urlParams_.Set("prettyPrint", "false")
17648	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/authinfo")
17649	urls += "?" + c.urlParams_.Encode()
17650	req, err := http.NewRequest("GET", urls, body)
17651	if err != nil {
17652		return nil, err
17653	}
17654	req.Header = reqHeaders
17655	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17656}
17657
17658// Do executes the "content.accounts.authinfo" call.
17659// Exactly one of *AccountsAuthInfoResponse or error will be non-nil.
17660// Any non-2xx status code is an error. Response headers are in either
17661// *AccountsAuthInfoResponse.ServerResponse.Header or (if a response was
17662// returned at all) in error.(*googleapi.Error).Header. Use
17663// googleapi.IsNotModified to check whether the returned error was
17664// because http.StatusNotModified was returned.
17665func (c *AccountsAuthinfoCall) Do(opts ...googleapi.CallOption) (*AccountsAuthInfoResponse, error) {
17666	gensupport.SetOptions(c.urlParams_, opts...)
17667	res, err := c.doRequest("json")
17668	if res != nil && res.StatusCode == http.StatusNotModified {
17669		if res.Body != nil {
17670			res.Body.Close()
17671		}
17672		return nil, &googleapi.Error{
17673			Code:   res.StatusCode,
17674			Header: res.Header,
17675		}
17676	}
17677	if err != nil {
17678		return nil, err
17679	}
17680	defer googleapi.CloseBody(res)
17681	if err := googleapi.CheckResponse(res); err != nil {
17682		return nil, err
17683	}
17684	ret := &AccountsAuthInfoResponse{
17685		ServerResponse: googleapi.ServerResponse{
17686			Header:         res.Header,
17687			HTTPStatusCode: res.StatusCode,
17688		},
17689	}
17690	target := &ret
17691	if err := gensupport.DecodeResponse(target, res); err != nil {
17692		return nil, err
17693	}
17694	return ret, nil
17695	// {
17696	//   "description": "Returns information about the authenticated user.",
17697	//   "flatPath": "accounts/authinfo",
17698	//   "httpMethod": "GET",
17699	//   "id": "content.accounts.authinfo",
17700	//   "parameterOrder": [],
17701	//   "parameters": {},
17702	//   "path": "accounts/authinfo",
17703	//   "response": {
17704	//     "$ref": "AccountsAuthInfoResponse"
17705	//   },
17706	//   "scopes": [
17707	//     "https://www.googleapis.com/auth/content"
17708	//   ]
17709	// }
17710
17711}
17712
17713// method id "content.accounts.claimwebsite":
17714
17715type AccountsClaimwebsiteCall struct {
17716	s          *APIService
17717	merchantId uint64
17718	accountId  uint64
17719	urlParams_ gensupport.URLParams
17720	ctx_       context.Context
17721	header_    http.Header
17722}
17723
17724// Claimwebsite: Claims the website of a Merchant Center sub-account.
17725//
17726// - accountId: The ID of the account whose website is claimed.
17727// - merchantId: The ID of the managing account. If this parameter is
17728//   not the same as accountId, then this account must be a multi-client
17729//   account and `accountId` must be the ID of a sub-account of this
17730//   account.
17731func (r *AccountsService) Claimwebsite(merchantId uint64, accountId uint64) *AccountsClaimwebsiteCall {
17732	c := &AccountsClaimwebsiteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17733	c.merchantId = merchantId
17734	c.accountId = accountId
17735	return c
17736}
17737
17738// Overwrite sets the optional parameter "overwrite": Only available to
17739// selected merchants. When set to `True`, this flag removes any
17740// existing claim on the requested website by another account and
17741// replaces it with a claim from this account.
17742func (c *AccountsClaimwebsiteCall) Overwrite(overwrite bool) *AccountsClaimwebsiteCall {
17743	c.urlParams_.Set("overwrite", fmt.Sprint(overwrite))
17744	return c
17745}
17746
17747// Fields allows partial responses to be retrieved. See
17748// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17749// for more information.
17750func (c *AccountsClaimwebsiteCall) Fields(s ...googleapi.Field) *AccountsClaimwebsiteCall {
17751	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17752	return c
17753}
17754
17755// Context sets the context to be used in this call's Do method. Any
17756// pending HTTP request will be aborted if the provided context is
17757// canceled.
17758func (c *AccountsClaimwebsiteCall) Context(ctx context.Context) *AccountsClaimwebsiteCall {
17759	c.ctx_ = ctx
17760	return c
17761}
17762
17763// Header returns an http.Header that can be modified by the caller to
17764// add HTTP headers to the request.
17765func (c *AccountsClaimwebsiteCall) Header() http.Header {
17766	if c.header_ == nil {
17767		c.header_ = make(http.Header)
17768	}
17769	return c.header_
17770}
17771
17772func (c *AccountsClaimwebsiteCall) doRequest(alt string) (*http.Response, error) {
17773	reqHeaders := make(http.Header)
17774	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
17775	for k, v := range c.header_ {
17776		reqHeaders[k] = v
17777	}
17778	reqHeaders.Set("User-Agent", c.s.userAgent())
17779	var body io.Reader = nil
17780	c.urlParams_.Set("alt", alt)
17781	c.urlParams_.Set("prettyPrint", "false")
17782	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}/claimwebsite")
17783	urls += "?" + c.urlParams_.Encode()
17784	req, err := http.NewRequest("POST", urls, body)
17785	if err != nil {
17786		return nil, err
17787	}
17788	req.Header = reqHeaders
17789	googleapi.Expand(req.URL, map[string]string{
17790		"merchantId": strconv.FormatUint(c.merchantId, 10),
17791		"accountId":  strconv.FormatUint(c.accountId, 10),
17792	})
17793	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17794}
17795
17796// Do executes the "content.accounts.claimwebsite" call.
17797// Exactly one of *AccountsClaimWebsiteResponse or error will be
17798// non-nil. Any non-2xx status code is an error. Response headers are in
17799// either *AccountsClaimWebsiteResponse.ServerResponse.Header or (if a
17800// response was returned at all) in error.(*googleapi.Error).Header. Use
17801// googleapi.IsNotModified to check whether the returned error was
17802// because http.StatusNotModified was returned.
17803func (c *AccountsClaimwebsiteCall) Do(opts ...googleapi.CallOption) (*AccountsClaimWebsiteResponse, error) {
17804	gensupport.SetOptions(c.urlParams_, opts...)
17805	res, err := c.doRequest("json")
17806	if res != nil && res.StatusCode == http.StatusNotModified {
17807		if res.Body != nil {
17808			res.Body.Close()
17809		}
17810		return nil, &googleapi.Error{
17811			Code:   res.StatusCode,
17812			Header: res.Header,
17813		}
17814	}
17815	if err != nil {
17816		return nil, err
17817	}
17818	defer googleapi.CloseBody(res)
17819	if err := googleapi.CheckResponse(res); err != nil {
17820		return nil, err
17821	}
17822	ret := &AccountsClaimWebsiteResponse{
17823		ServerResponse: googleapi.ServerResponse{
17824			Header:         res.Header,
17825			HTTPStatusCode: res.StatusCode,
17826		},
17827	}
17828	target := &ret
17829	if err := gensupport.DecodeResponse(target, res); err != nil {
17830		return nil, err
17831	}
17832	return ret, nil
17833	// {
17834	//   "description": "Claims the website of a Merchant Center sub-account.",
17835	//   "flatPath": "{merchantId}/accounts/{accountId}/claimwebsite",
17836	//   "httpMethod": "POST",
17837	//   "id": "content.accounts.claimwebsite",
17838	//   "parameterOrder": [
17839	//     "merchantId",
17840	//     "accountId"
17841	//   ],
17842	//   "parameters": {
17843	//     "accountId": {
17844	//       "description": "The ID of the account whose website is claimed.",
17845	//       "format": "uint64",
17846	//       "location": "path",
17847	//       "required": true,
17848	//       "type": "string"
17849	//     },
17850	//     "merchantId": {
17851	//       "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.",
17852	//       "format": "uint64",
17853	//       "location": "path",
17854	//       "required": true,
17855	//       "type": "string"
17856	//     },
17857	//     "overwrite": {
17858	//       "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.",
17859	//       "location": "query",
17860	//       "type": "boolean"
17861	//     }
17862	//   },
17863	//   "path": "{merchantId}/accounts/{accountId}/claimwebsite",
17864	//   "response": {
17865	//     "$ref": "AccountsClaimWebsiteResponse"
17866	//   },
17867	//   "scopes": [
17868	//     "https://www.googleapis.com/auth/content"
17869	//   ]
17870	// }
17871
17872}
17873
17874// method id "content.accounts.custombatch":
17875
17876type AccountsCustombatchCall struct {
17877	s                          *APIService
17878	accountscustombatchrequest *AccountsCustomBatchRequest
17879	urlParams_                 gensupport.URLParams
17880	ctx_                       context.Context
17881	header_                    http.Header
17882}
17883
17884// Custombatch: Retrieves, inserts, updates, and deletes multiple
17885// Merchant Center (sub-)accounts in a single request.
17886func (r *AccountsService) Custombatch(accountscustombatchrequest *AccountsCustomBatchRequest) *AccountsCustombatchCall {
17887	c := &AccountsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17888	c.accountscustombatchrequest = accountscustombatchrequest
17889	return c
17890}
17891
17892// Fields allows partial responses to be retrieved. See
17893// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17894// for more information.
17895func (c *AccountsCustombatchCall) Fields(s ...googleapi.Field) *AccountsCustombatchCall {
17896	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17897	return c
17898}
17899
17900// Context sets the context to be used in this call's Do method. Any
17901// pending HTTP request will be aborted if the provided context is
17902// canceled.
17903func (c *AccountsCustombatchCall) Context(ctx context.Context) *AccountsCustombatchCall {
17904	c.ctx_ = ctx
17905	return c
17906}
17907
17908// Header returns an http.Header that can be modified by the caller to
17909// add HTTP headers to the request.
17910func (c *AccountsCustombatchCall) Header() http.Header {
17911	if c.header_ == nil {
17912		c.header_ = make(http.Header)
17913	}
17914	return c.header_
17915}
17916
17917func (c *AccountsCustombatchCall) doRequest(alt string) (*http.Response, error) {
17918	reqHeaders := make(http.Header)
17919	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
17920	for k, v := range c.header_ {
17921		reqHeaders[k] = v
17922	}
17923	reqHeaders.Set("User-Agent", c.s.userAgent())
17924	var body io.Reader = nil
17925	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountscustombatchrequest)
17926	if err != nil {
17927		return nil, err
17928	}
17929	reqHeaders.Set("Content-Type", "application/json")
17930	c.urlParams_.Set("alt", alt)
17931	c.urlParams_.Set("prettyPrint", "false")
17932	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/batch")
17933	urls += "?" + c.urlParams_.Encode()
17934	req, err := http.NewRequest("POST", urls, body)
17935	if err != nil {
17936		return nil, err
17937	}
17938	req.Header = reqHeaders
17939	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17940}
17941
17942// Do executes the "content.accounts.custombatch" call.
17943// Exactly one of *AccountsCustomBatchResponse or error will be non-nil.
17944// Any non-2xx status code is an error. Response headers are in either
17945// *AccountsCustomBatchResponse.ServerResponse.Header or (if a response
17946// was returned at all) in error.(*googleapi.Error).Header. Use
17947// googleapi.IsNotModified to check whether the returned error was
17948// because http.StatusNotModified was returned.
17949func (c *AccountsCustombatchCall) Do(opts ...googleapi.CallOption) (*AccountsCustomBatchResponse, error) {
17950	gensupport.SetOptions(c.urlParams_, opts...)
17951	res, err := c.doRequest("json")
17952	if res != nil && res.StatusCode == http.StatusNotModified {
17953		if res.Body != nil {
17954			res.Body.Close()
17955		}
17956		return nil, &googleapi.Error{
17957			Code:   res.StatusCode,
17958			Header: res.Header,
17959		}
17960	}
17961	if err != nil {
17962		return nil, err
17963	}
17964	defer googleapi.CloseBody(res)
17965	if err := googleapi.CheckResponse(res); err != nil {
17966		return nil, err
17967	}
17968	ret := &AccountsCustomBatchResponse{
17969		ServerResponse: googleapi.ServerResponse{
17970			Header:         res.Header,
17971			HTTPStatusCode: res.StatusCode,
17972		},
17973	}
17974	target := &ret
17975	if err := gensupport.DecodeResponse(target, res); err != nil {
17976		return nil, err
17977	}
17978	return ret, nil
17979	// {
17980	//   "description": "Retrieves, inserts, updates, and deletes multiple Merchant Center (sub-)accounts in a single request.",
17981	//   "flatPath": "accounts/batch",
17982	//   "httpMethod": "POST",
17983	//   "id": "content.accounts.custombatch",
17984	//   "parameterOrder": [],
17985	//   "parameters": {},
17986	//   "path": "accounts/batch",
17987	//   "request": {
17988	//     "$ref": "AccountsCustomBatchRequest"
17989	//   },
17990	//   "response": {
17991	//     "$ref": "AccountsCustomBatchResponse"
17992	//   },
17993	//   "scopes": [
17994	//     "https://www.googleapis.com/auth/content"
17995	//   ]
17996	// }
17997
17998}
17999
18000// method id "content.accounts.delete":
18001
18002type AccountsDeleteCall struct {
18003	s          *APIService
18004	merchantId uint64
18005	accountId  uint64
18006	urlParams_ gensupport.URLParams
18007	ctx_       context.Context
18008	header_    http.Header
18009}
18010
18011// Delete: Deletes a Merchant Center sub-account.
18012//
18013// - accountId: The ID of the account.
18014// - merchantId: The ID of the managing account. This must be a
18015//   multi-client account, and accountId must be the ID of a sub-account
18016//   of this account.
18017func (r *AccountsService) Delete(merchantId uint64, accountId uint64) *AccountsDeleteCall {
18018	c := &AccountsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18019	c.merchantId = merchantId
18020	c.accountId = accountId
18021	return c
18022}
18023
18024// Force sets the optional parameter "force": Flag to delete
18025// sub-accounts with products. The default value is false.
18026func (c *AccountsDeleteCall) Force(force bool) *AccountsDeleteCall {
18027	c.urlParams_.Set("force", fmt.Sprint(force))
18028	return c
18029}
18030
18031// Fields allows partial responses to be retrieved. See
18032// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18033// for more information.
18034func (c *AccountsDeleteCall) Fields(s ...googleapi.Field) *AccountsDeleteCall {
18035	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18036	return c
18037}
18038
18039// Context sets the context to be used in this call's Do method. Any
18040// pending HTTP request will be aborted if the provided context is
18041// canceled.
18042func (c *AccountsDeleteCall) Context(ctx context.Context) *AccountsDeleteCall {
18043	c.ctx_ = ctx
18044	return c
18045}
18046
18047// Header returns an http.Header that can be modified by the caller to
18048// add HTTP headers to the request.
18049func (c *AccountsDeleteCall) Header() http.Header {
18050	if c.header_ == nil {
18051		c.header_ = make(http.Header)
18052	}
18053	return c.header_
18054}
18055
18056func (c *AccountsDeleteCall) doRequest(alt string) (*http.Response, error) {
18057	reqHeaders := make(http.Header)
18058	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
18059	for k, v := range c.header_ {
18060		reqHeaders[k] = v
18061	}
18062	reqHeaders.Set("User-Agent", c.s.userAgent())
18063	var body io.Reader = nil
18064	c.urlParams_.Set("alt", alt)
18065	c.urlParams_.Set("prettyPrint", "false")
18066	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}")
18067	urls += "?" + c.urlParams_.Encode()
18068	req, err := http.NewRequest("DELETE", urls, body)
18069	if err != nil {
18070		return nil, err
18071	}
18072	req.Header = reqHeaders
18073	googleapi.Expand(req.URL, map[string]string{
18074		"merchantId": strconv.FormatUint(c.merchantId, 10),
18075		"accountId":  strconv.FormatUint(c.accountId, 10),
18076	})
18077	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18078}
18079
18080// Do executes the "content.accounts.delete" call.
18081func (c *AccountsDeleteCall) Do(opts ...googleapi.CallOption) error {
18082	gensupport.SetOptions(c.urlParams_, opts...)
18083	res, err := c.doRequest("json")
18084	if err != nil {
18085		return err
18086	}
18087	defer googleapi.CloseBody(res)
18088	if err := googleapi.CheckResponse(res); err != nil {
18089		return err
18090	}
18091	return nil
18092	// {
18093	//   "description": "Deletes a Merchant Center sub-account.",
18094	//   "flatPath": "{merchantId}/accounts/{accountId}",
18095	//   "httpMethod": "DELETE",
18096	//   "id": "content.accounts.delete",
18097	//   "parameterOrder": [
18098	//     "merchantId",
18099	//     "accountId"
18100	//   ],
18101	//   "parameters": {
18102	//     "accountId": {
18103	//       "description": "The ID of the account.",
18104	//       "format": "uint64",
18105	//       "location": "path",
18106	//       "required": true,
18107	//       "type": "string"
18108	//     },
18109	//     "force": {
18110	//       "default": "false",
18111	//       "description": "Flag to delete sub-accounts with products. The default value is false.",
18112	//       "location": "query",
18113	//       "type": "boolean"
18114	//     },
18115	//     "merchantId": {
18116	//       "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.",
18117	//       "format": "uint64",
18118	//       "location": "path",
18119	//       "required": true,
18120	//       "type": "string"
18121	//     }
18122	//   },
18123	//   "path": "{merchantId}/accounts/{accountId}",
18124	//   "scopes": [
18125	//     "https://www.googleapis.com/auth/content"
18126	//   ]
18127	// }
18128
18129}
18130
18131// method id "content.accounts.get":
18132
18133type AccountsGetCall struct {
18134	s            *APIService
18135	merchantId   uint64
18136	accountId    uint64
18137	urlParams_   gensupport.URLParams
18138	ifNoneMatch_ string
18139	ctx_         context.Context
18140	header_      http.Header
18141}
18142
18143// Get: Retrieves a Merchant Center account.
18144//
18145// - accountId: The ID of the account.
18146// - merchantId: The ID of the managing account. If this parameter is
18147//   not the same as accountId, then this account must be a multi-client
18148//   account and `accountId` must be the ID of a sub-account of this
18149//   account.
18150func (r *AccountsService) Get(merchantId uint64, accountId uint64) *AccountsGetCall {
18151	c := &AccountsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18152	c.merchantId = merchantId
18153	c.accountId = accountId
18154	return c
18155}
18156
18157// View sets the optional parameter "view": Controls which fields will
18158// be populated. Acceptable values are: "merchant" and "css". The
18159// default value is "merchant".
18160//
18161// Possible values:
18162//   "MERCHANT" - Default. View is populated with Merchant Center
18163// fields.
18164//   "CSS" - View is populated with Comparison Shopping Services fields.
18165func (c *AccountsGetCall) View(view string) *AccountsGetCall {
18166	c.urlParams_.Set("view", view)
18167	return c
18168}
18169
18170// Fields allows partial responses to be retrieved. See
18171// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18172// for more information.
18173func (c *AccountsGetCall) Fields(s ...googleapi.Field) *AccountsGetCall {
18174	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18175	return c
18176}
18177
18178// IfNoneMatch sets the optional parameter which makes the operation
18179// fail if the object's ETag matches the given value. This is useful for
18180// getting updates only after the object has changed since the last
18181// request. Use googleapi.IsNotModified to check whether the response
18182// error from Do is the result of In-None-Match.
18183func (c *AccountsGetCall) IfNoneMatch(entityTag string) *AccountsGetCall {
18184	c.ifNoneMatch_ = entityTag
18185	return c
18186}
18187
18188// Context sets the context to be used in this call's Do method. Any
18189// pending HTTP request will be aborted if the provided context is
18190// canceled.
18191func (c *AccountsGetCall) Context(ctx context.Context) *AccountsGetCall {
18192	c.ctx_ = ctx
18193	return c
18194}
18195
18196// Header returns an http.Header that can be modified by the caller to
18197// add HTTP headers to the request.
18198func (c *AccountsGetCall) Header() http.Header {
18199	if c.header_ == nil {
18200		c.header_ = make(http.Header)
18201	}
18202	return c.header_
18203}
18204
18205func (c *AccountsGetCall) doRequest(alt string) (*http.Response, error) {
18206	reqHeaders := make(http.Header)
18207	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
18208	for k, v := range c.header_ {
18209		reqHeaders[k] = v
18210	}
18211	reqHeaders.Set("User-Agent", c.s.userAgent())
18212	if c.ifNoneMatch_ != "" {
18213		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
18214	}
18215	var body io.Reader = nil
18216	c.urlParams_.Set("alt", alt)
18217	c.urlParams_.Set("prettyPrint", "false")
18218	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}")
18219	urls += "?" + c.urlParams_.Encode()
18220	req, err := http.NewRequest("GET", urls, body)
18221	if err != nil {
18222		return nil, err
18223	}
18224	req.Header = reqHeaders
18225	googleapi.Expand(req.URL, map[string]string{
18226		"merchantId": strconv.FormatUint(c.merchantId, 10),
18227		"accountId":  strconv.FormatUint(c.accountId, 10),
18228	})
18229	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18230}
18231
18232// Do executes the "content.accounts.get" call.
18233// Exactly one of *Account or error will be non-nil. Any non-2xx status
18234// code is an error. Response headers are in either
18235// *Account.ServerResponse.Header or (if a response was returned at all)
18236// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
18237// check whether the returned error was because http.StatusNotModified
18238// was returned.
18239func (c *AccountsGetCall) Do(opts ...googleapi.CallOption) (*Account, error) {
18240	gensupport.SetOptions(c.urlParams_, opts...)
18241	res, err := c.doRequest("json")
18242	if res != nil && res.StatusCode == http.StatusNotModified {
18243		if res.Body != nil {
18244			res.Body.Close()
18245		}
18246		return nil, &googleapi.Error{
18247			Code:   res.StatusCode,
18248			Header: res.Header,
18249		}
18250	}
18251	if err != nil {
18252		return nil, err
18253	}
18254	defer googleapi.CloseBody(res)
18255	if err := googleapi.CheckResponse(res); err != nil {
18256		return nil, err
18257	}
18258	ret := &Account{
18259		ServerResponse: googleapi.ServerResponse{
18260			Header:         res.Header,
18261			HTTPStatusCode: res.StatusCode,
18262		},
18263	}
18264	target := &ret
18265	if err := gensupport.DecodeResponse(target, res); err != nil {
18266		return nil, err
18267	}
18268	return ret, nil
18269	// {
18270	//   "description": "Retrieves a Merchant Center account.",
18271	//   "flatPath": "{merchantId}/accounts/{accountId}",
18272	//   "httpMethod": "GET",
18273	//   "id": "content.accounts.get",
18274	//   "parameterOrder": [
18275	//     "merchantId",
18276	//     "accountId"
18277	//   ],
18278	//   "parameters": {
18279	//     "accountId": {
18280	//       "description": "The ID of the account.",
18281	//       "format": "uint64",
18282	//       "location": "path",
18283	//       "required": true,
18284	//       "type": "string"
18285	//     },
18286	//     "merchantId": {
18287	//       "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.",
18288	//       "format": "uint64",
18289	//       "location": "path",
18290	//       "required": true,
18291	//       "type": "string"
18292	//     },
18293	//     "view": {
18294	//       "description": "Controls which fields will be populated. Acceptable values are: \"merchant\" and \"css\". The default value is \"merchant\".",
18295	//       "enum": [
18296	//         "MERCHANT",
18297	//         "CSS"
18298	//       ],
18299	//       "enumDescriptions": [
18300	//         "Default. View is populated with Merchant Center fields.",
18301	//         "View is populated with Comparison Shopping Services fields."
18302	//       ],
18303	//       "location": "query",
18304	//       "type": "string"
18305	//     }
18306	//   },
18307	//   "path": "{merchantId}/accounts/{accountId}",
18308	//   "response": {
18309	//     "$ref": "Account"
18310	//   },
18311	//   "scopes": [
18312	//     "https://www.googleapis.com/auth/content"
18313	//   ]
18314	// }
18315
18316}
18317
18318// method id "content.accounts.insert":
18319
18320type AccountsInsertCall struct {
18321	s          *APIService
18322	merchantId uint64
18323	account    *Account
18324	urlParams_ gensupport.URLParams
18325	ctx_       context.Context
18326	header_    http.Header
18327}
18328
18329// Insert: Creates a Merchant Center sub-account.
18330//
18331// - merchantId: The ID of the managing account. This must be a
18332//   multi-client account.
18333func (r *AccountsService) Insert(merchantId uint64, account *Account) *AccountsInsertCall {
18334	c := &AccountsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18335	c.merchantId = merchantId
18336	c.account = account
18337	return c
18338}
18339
18340// Fields allows partial responses to be retrieved. See
18341// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18342// for more information.
18343func (c *AccountsInsertCall) Fields(s ...googleapi.Field) *AccountsInsertCall {
18344	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18345	return c
18346}
18347
18348// Context sets the context to be used in this call's Do method. Any
18349// pending HTTP request will be aborted if the provided context is
18350// canceled.
18351func (c *AccountsInsertCall) Context(ctx context.Context) *AccountsInsertCall {
18352	c.ctx_ = ctx
18353	return c
18354}
18355
18356// Header returns an http.Header that can be modified by the caller to
18357// add HTTP headers to the request.
18358func (c *AccountsInsertCall) Header() http.Header {
18359	if c.header_ == nil {
18360		c.header_ = make(http.Header)
18361	}
18362	return c.header_
18363}
18364
18365func (c *AccountsInsertCall) doRequest(alt string) (*http.Response, error) {
18366	reqHeaders := make(http.Header)
18367	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
18368	for k, v := range c.header_ {
18369		reqHeaders[k] = v
18370	}
18371	reqHeaders.Set("User-Agent", c.s.userAgent())
18372	var body io.Reader = nil
18373	body, err := googleapi.WithoutDataWrapper.JSONReader(c.account)
18374	if err != nil {
18375		return nil, err
18376	}
18377	reqHeaders.Set("Content-Type", "application/json")
18378	c.urlParams_.Set("alt", alt)
18379	c.urlParams_.Set("prettyPrint", "false")
18380	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts")
18381	urls += "?" + c.urlParams_.Encode()
18382	req, err := http.NewRequest("POST", urls, body)
18383	if err != nil {
18384		return nil, err
18385	}
18386	req.Header = reqHeaders
18387	googleapi.Expand(req.URL, map[string]string{
18388		"merchantId": strconv.FormatUint(c.merchantId, 10),
18389	})
18390	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18391}
18392
18393// Do executes the "content.accounts.insert" call.
18394// Exactly one of *Account or error will be non-nil. Any non-2xx status
18395// code is an error. Response headers are in either
18396// *Account.ServerResponse.Header or (if a response was returned at all)
18397// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
18398// check whether the returned error was because http.StatusNotModified
18399// was returned.
18400func (c *AccountsInsertCall) Do(opts ...googleapi.CallOption) (*Account, error) {
18401	gensupport.SetOptions(c.urlParams_, opts...)
18402	res, err := c.doRequest("json")
18403	if res != nil && res.StatusCode == http.StatusNotModified {
18404		if res.Body != nil {
18405			res.Body.Close()
18406		}
18407		return nil, &googleapi.Error{
18408			Code:   res.StatusCode,
18409			Header: res.Header,
18410		}
18411	}
18412	if err != nil {
18413		return nil, err
18414	}
18415	defer googleapi.CloseBody(res)
18416	if err := googleapi.CheckResponse(res); err != nil {
18417		return nil, err
18418	}
18419	ret := &Account{
18420		ServerResponse: googleapi.ServerResponse{
18421			Header:         res.Header,
18422			HTTPStatusCode: res.StatusCode,
18423		},
18424	}
18425	target := &ret
18426	if err := gensupport.DecodeResponse(target, res); err != nil {
18427		return nil, err
18428	}
18429	return ret, nil
18430	// {
18431	//   "description": "Creates a Merchant Center sub-account.",
18432	//   "flatPath": "{merchantId}/accounts",
18433	//   "httpMethod": "POST",
18434	//   "id": "content.accounts.insert",
18435	//   "parameterOrder": [
18436	//     "merchantId"
18437	//   ],
18438	//   "parameters": {
18439	//     "merchantId": {
18440	//       "description": "The ID of the managing account. This must be a multi-client account.",
18441	//       "format": "uint64",
18442	//       "location": "path",
18443	//       "required": true,
18444	//       "type": "string"
18445	//     }
18446	//   },
18447	//   "path": "{merchantId}/accounts",
18448	//   "request": {
18449	//     "$ref": "Account"
18450	//   },
18451	//   "response": {
18452	//     "$ref": "Account"
18453	//   },
18454	//   "scopes": [
18455	//     "https://www.googleapis.com/auth/content"
18456	//   ]
18457	// }
18458
18459}
18460
18461// method id "content.accounts.link":
18462
18463type AccountsLinkCall struct {
18464	s                   *APIService
18465	merchantId          uint64
18466	accountId           uint64
18467	accountslinkrequest *AccountsLinkRequest
18468	urlParams_          gensupport.URLParams
18469	ctx_                context.Context
18470	header_             http.Header
18471}
18472
18473// Link: Performs an action on a link between two Merchant Center
18474// accounts, namely accountId and linkedAccountId.
18475//
18476// - accountId: The ID of the account that should be linked.
18477// - merchantId: The ID of the managing account. If this parameter is
18478//   not the same as accountId, then this account must be a multi-client
18479//   account and `accountId` must be the ID of a sub-account of this
18480//   account.
18481func (r *AccountsService) Link(merchantId uint64, accountId uint64, accountslinkrequest *AccountsLinkRequest) *AccountsLinkCall {
18482	c := &AccountsLinkCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18483	c.merchantId = merchantId
18484	c.accountId = accountId
18485	c.accountslinkrequest = accountslinkrequest
18486	return c
18487}
18488
18489// Fields allows partial responses to be retrieved. See
18490// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18491// for more information.
18492func (c *AccountsLinkCall) Fields(s ...googleapi.Field) *AccountsLinkCall {
18493	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18494	return c
18495}
18496
18497// Context sets the context to be used in this call's Do method. Any
18498// pending HTTP request will be aborted if the provided context is
18499// canceled.
18500func (c *AccountsLinkCall) Context(ctx context.Context) *AccountsLinkCall {
18501	c.ctx_ = ctx
18502	return c
18503}
18504
18505// Header returns an http.Header that can be modified by the caller to
18506// add HTTP headers to the request.
18507func (c *AccountsLinkCall) Header() http.Header {
18508	if c.header_ == nil {
18509		c.header_ = make(http.Header)
18510	}
18511	return c.header_
18512}
18513
18514func (c *AccountsLinkCall) doRequest(alt string) (*http.Response, error) {
18515	reqHeaders := make(http.Header)
18516	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
18517	for k, v := range c.header_ {
18518		reqHeaders[k] = v
18519	}
18520	reqHeaders.Set("User-Agent", c.s.userAgent())
18521	var body io.Reader = nil
18522	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountslinkrequest)
18523	if err != nil {
18524		return nil, err
18525	}
18526	reqHeaders.Set("Content-Type", "application/json")
18527	c.urlParams_.Set("alt", alt)
18528	c.urlParams_.Set("prettyPrint", "false")
18529	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}/link")
18530	urls += "?" + c.urlParams_.Encode()
18531	req, err := http.NewRequest("POST", urls, body)
18532	if err != nil {
18533		return nil, err
18534	}
18535	req.Header = reqHeaders
18536	googleapi.Expand(req.URL, map[string]string{
18537		"merchantId": strconv.FormatUint(c.merchantId, 10),
18538		"accountId":  strconv.FormatUint(c.accountId, 10),
18539	})
18540	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18541}
18542
18543// Do executes the "content.accounts.link" call.
18544// Exactly one of *AccountsLinkResponse or error will be non-nil. Any
18545// non-2xx status code is an error. Response headers are in either
18546// *AccountsLinkResponse.ServerResponse.Header or (if a response was
18547// returned at all) in error.(*googleapi.Error).Header. Use
18548// googleapi.IsNotModified to check whether the returned error was
18549// because http.StatusNotModified was returned.
18550func (c *AccountsLinkCall) Do(opts ...googleapi.CallOption) (*AccountsLinkResponse, error) {
18551	gensupport.SetOptions(c.urlParams_, opts...)
18552	res, err := c.doRequest("json")
18553	if res != nil && res.StatusCode == http.StatusNotModified {
18554		if res.Body != nil {
18555			res.Body.Close()
18556		}
18557		return nil, &googleapi.Error{
18558			Code:   res.StatusCode,
18559			Header: res.Header,
18560		}
18561	}
18562	if err != nil {
18563		return nil, err
18564	}
18565	defer googleapi.CloseBody(res)
18566	if err := googleapi.CheckResponse(res); err != nil {
18567		return nil, err
18568	}
18569	ret := &AccountsLinkResponse{
18570		ServerResponse: googleapi.ServerResponse{
18571			Header:         res.Header,
18572			HTTPStatusCode: res.StatusCode,
18573		},
18574	}
18575	target := &ret
18576	if err := gensupport.DecodeResponse(target, res); err != nil {
18577		return nil, err
18578	}
18579	return ret, nil
18580	// {
18581	//   "description": "Performs an action on a link between two Merchant Center accounts, namely accountId and linkedAccountId.",
18582	//   "flatPath": "{merchantId}/accounts/{accountId}/link",
18583	//   "httpMethod": "POST",
18584	//   "id": "content.accounts.link",
18585	//   "parameterOrder": [
18586	//     "merchantId",
18587	//     "accountId"
18588	//   ],
18589	//   "parameters": {
18590	//     "accountId": {
18591	//       "description": "The ID of the account that should be linked.",
18592	//       "format": "uint64",
18593	//       "location": "path",
18594	//       "required": true,
18595	//       "type": "string"
18596	//     },
18597	//     "merchantId": {
18598	//       "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.",
18599	//       "format": "uint64",
18600	//       "location": "path",
18601	//       "required": true,
18602	//       "type": "string"
18603	//     }
18604	//   },
18605	//   "path": "{merchantId}/accounts/{accountId}/link",
18606	//   "request": {
18607	//     "$ref": "AccountsLinkRequest"
18608	//   },
18609	//   "response": {
18610	//     "$ref": "AccountsLinkResponse"
18611	//   },
18612	//   "scopes": [
18613	//     "https://www.googleapis.com/auth/content"
18614	//   ]
18615	// }
18616
18617}
18618
18619// method id "content.accounts.list":
18620
18621type AccountsListCall struct {
18622	s            *APIService
18623	merchantId   uint64
18624	urlParams_   gensupport.URLParams
18625	ifNoneMatch_ string
18626	ctx_         context.Context
18627	header_      http.Header
18628}
18629
18630// List: Lists the sub-accounts in your Merchant Center account.
18631//
18632// - merchantId: The ID of the managing account. This must be a
18633//   multi-client account.
18634func (r *AccountsService) List(merchantId uint64) *AccountsListCall {
18635	c := &AccountsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18636	c.merchantId = merchantId
18637	return c
18638}
18639
18640// Label sets the optional parameter "label": If view is set to "css",
18641// only return accounts that are assigned label with given ID.
18642func (c *AccountsListCall) Label(label uint64) *AccountsListCall {
18643	c.urlParams_.Set("label", fmt.Sprint(label))
18644	return c
18645}
18646
18647// MaxResults sets the optional parameter "maxResults": The maximum
18648// number of accounts to return in the response, used for paging.
18649func (c *AccountsListCall) MaxResults(maxResults int64) *AccountsListCall {
18650	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
18651	return c
18652}
18653
18654// Name sets the optional parameter "name": If set, only the accounts
18655// with the given name (case sensitive) will be returned.
18656func (c *AccountsListCall) Name(name string) *AccountsListCall {
18657	c.urlParams_.Set("name", name)
18658	return c
18659}
18660
18661// PageToken sets the optional parameter "pageToken": The token returned
18662// by the previous request.
18663func (c *AccountsListCall) PageToken(pageToken string) *AccountsListCall {
18664	c.urlParams_.Set("pageToken", pageToken)
18665	return c
18666}
18667
18668// View sets the optional parameter "view": Controls which fields will
18669// be populated. Acceptable values are: "merchant" and "css". The
18670// default value is "merchant".
18671//
18672// Possible values:
18673//   "MERCHANT" - Default. View is populated with Merchant Center
18674// fields.
18675//   "CSS" - View is populated with Comparison Shopping Services fields.
18676func (c *AccountsListCall) View(view string) *AccountsListCall {
18677	c.urlParams_.Set("view", view)
18678	return c
18679}
18680
18681// Fields allows partial responses to be retrieved. See
18682// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18683// for more information.
18684func (c *AccountsListCall) Fields(s ...googleapi.Field) *AccountsListCall {
18685	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18686	return c
18687}
18688
18689// IfNoneMatch sets the optional parameter which makes the operation
18690// fail if the object's ETag matches the given value. This is useful for
18691// getting updates only after the object has changed since the last
18692// request. Use googleapi.IsNotModified to check whether the response
18693// error from Do is the result of In-None-Match.
18694func (c *AccountsListCall) IfNoneMatch(entityTag string) *AccountsListCall {
18695	c.ifNoneMatch_ = entityTag
18696	return c
18697}
18698
18699// Context sets the context to be used in this call's Do method. Any
18700// pending HTTP request will be aborted if the provided context is
18701// canceled.
18702func (c *AccountsListCall) Context(ctx context.Context) *AccountsListCall {
18703	c.ctx_ = ctx
18704	return c
18705}
18706
18707// Header returns an http.Header that can be modified by the caller to
18708// add HTTP headers to the request.
18709func (c *AccountsListCall) Header() http.Header {
18710	if c.header_ == nil {
18711		c.header_ = make(http.Header)
18712	}
18713	return c.header_
18714}
18715
18716func (c *AccountsListCall) doRequest(alt string) (*http.Response, error) {
18717	reqHeaders := make(http.Header)
18718	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
18719	for k, v := range c.header_ {
18720		reqHeaders[k] = v
18721	}
18722	reqHeaders.Set("User-Agent", c.s.userAgent())
18723	if c.ifNoneMatch_ != "" {
18724		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
18725	}
18726	var body io.Reader = nil
18727	c.urlParams_.Set("alt", alt)
18728	c.urlParams_.Set("prettyPrint", "false")
18729	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts")
18730	urls += "?" + c.urlParams_.Encode()
18731	req, err := http.NewRequest("GET", urls, body)
18732	if err != nil {
18733		return nil, err
18734	}
18735	req.Header = reqHeaders
18736	googleapi.Expand(req.URL, map[string]string{
18737		"merchantId": strconv.FormatUint(c.merchantId, 10),
18738	})
18739	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18740}
18741
18742// Do executes the "content.accounts.list" call.
18743// Exactly one of *AccountsListResponse or error will be non-nil. Any
18744// non-2xx status code is an error. Response headers are in either
18745// *AccountsListResponse.ServerResponse.Header or (if a response was
18746// returned at all) in error.(*googleapi.Error).Header. Use
18747// googleapi.IsNotModified to check whether the returned error was
18748// because http.StatusNotModified was returned.
18749func (c *AccountsListCall) Do(opts ...googleapi.CallOption) (*AccountsListResponse, error) {
18750	gensupport.SetOptions(c.urlParams_, opts...)
18751	res, err := c.doRequest("json")
18752	if res != nil && res.StatusCode == http.StatusNotModified {
18753		if res.Body != nil {
18754			res.Body.Close()
18755		}
18756		return nil, &googleapi.Error{
18757			Code:   res.StatusCode,
18758			Header: res.Header,
18759		}
18760	}
18761	if err != nil {
18762		return nil, err
18763	}
18764	defer googleapi.CloseBody(res)
18765	if err := googleapi.CheckResponse(res); err != nil {
18766		return nil, err
18767	}
18768	ret := &AccountsListResponse{
18769		ServerResponse: googleapi.ServerResponse{
18770			Header:         res.Header,
18771			HTTPStatusCode: res.StatusCode,
18772		},
18773	}
18774	target := &ret
18775	if err := gensupport.DecodeResponse(target, res); err != nil {
18776		return nil, err
18777	}
18778	return ret, nil
18779	// {
18780	//   "description": "Lists the sub-accounts in your Merchant Center account.",
18781	//   "flatPath": "{merchantId}/accounts",
18782	//   "httpMethod": "GET",
18783	//   "id": "content.accounts.list",
18784	//   "parameterOrder": [
18785	//     "merchantId"
18786	//   ],
18787	//   "parameters": {
18788	//     "label": {
18789	//       "description": "If view is set to \"css\", only return accounts that are assigned label with given ID.",
18790	//       "format": "uint64",
18791	//       "location": "query",
18792	//       "type": "string"
18793	//     },
18794	//     "maxResults": {
18795	//       "description": "The maximum number of accounts to return in the response, used for paging.",
18796	//       "format": "uint32",
18797	//       "location": "query",
18798	//       "type": "integer"
18799	//     },
18800	//     "merchantId": {
18801	//       "description": "The ID of the managing account. This must be a multi-client account.",
18802	//       "format": "uint64",
18803	//       "location": "path",
18804	//       "required": true,
18805	//       "type": "string"
18806	//     },
18807	//     "name": {
18808	//       "description": "If set, only the accounts with the given name (case sensitive) will be returned.",
18809	//       "location": "query",
18810	//       "type": "string"
18811	//     },
18812	//     "pageToken": {
18813	//       "description": "The token returned by the previous request.",
18814	//       "location": "query",
18815	//       "type": "string"
18816	//     },
18817	//     "view": {
18818	//       "description": "Controls which fields will be populated. Acceptable values are: \"merchant\" and \"css\". The default value is \"merchant\".",
18819	//       "enum": [
18820	//         "MERCHANT",
18821	//         "CSS"
18822	//       ],
18823	//       "enumDescriptions": [
18824	//         "Default. View is populated with Merchant Center fields.",
18825	//         "View is populated with Comparison Shopping Services fields."
18826	//       ],
18827	//       "location": "query",
18828	//       "type": "string"
18829	//     }
18830	//   },
18831	//   "path": "{merchantId}/accounts",
18832	//   "response": {
18833	//     "$ref": "AccountsListResponse"
18834	//   },
18835	//   "scopes": [
18836	//     "https://www.googleapis.com/auth/content"
18837	//   ]
18838	// }
18839
18840}
18841
18842// Pages invokes f for each page of results.
18843// A non-nil error returned from f will halt the iteration.
18844// The provided context supersedes any context provided to the Context method.
18845func (c *AccountsListCall) Pages(ctx context.Context, f func(*AccountsListResponse) error) error {
18846	c.ctx_ = ctx
18847	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
18848	for {
18849		x, err := c.Do()
18850		if err != nil {
18851			return err
18852		}
18853		if err := f(x); err != nil {
18854			return err
18855		}
18856		if x.NextPageToken == "" {
18857			return nil
18858		}
18859		c.PageToken(x.NextPageToken)
18860	}
18861}
18862
18863// method id "content.accounts.listlinks":
18864
18865type AccountsListlinksCall struct {
18866	s            *APIService
18867	merchantId   uint64
18868	accountId    uint64
18869	urlParams_   gensupport.URLParams
18870	ifNoneMatch_ string
18871	ctx_         context.Context
18872	header_      http.Header
18873}
18874
18875// Listlinks: Returns the list of accounts linked to your Merchant
18876// Center account.
18877//
18878// - accountId: The ID of the account for which to list links.
18879// - merchantId: The ID of the managing account. If this parameter is
18880//   not the same as accountId, then this account must be a multi-client
18881//   account and `accountId` must be the ID of a sub-account of this
18882//   account.
18883func (r *AccountsService) Listlinks(merchantId uint64, accountId uint64) *AccountsListlinksCall {
18884	c := &AccountsListlinksCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18885	c.merchantId = merchantId
18886	c.accountId = accountId
18887	return c
18888}
18889
18890// MaxResults sets the optional parameter "maxResults": The maximum
18891// number of links to return in the response, used for pagination. The
18892// minimum allowed value is 5 results per page. If provided value is
18893// lower than 5, it will be automatically increased to 5.
18894func (c *AccountsListlinksCall) MaxResults(maxResults int64) *AccountsListlinksCall {
18895	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
18896	return c
18897}
18898
18899// PageToken sets the optional parameter "pageToken": The token returned
18900// by the previous request.
18901func (c *AccountsListlinksCall) PageToken(pageToken string) *AccountsListlinksCall {
18902	c.urlParams_.Set("pageToken", pageToken)
18903	return c
18904}
18905
18906// Fields allows partial responses to be retrieved. See
18907// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18908// for more information.
18909func (c *AccountsListlinksCall) Fields(s ...googleapi.Field) *AccountsListlinksCall {
18910	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18911	return c
18912}
18913
18914// IfNoneMatch sets the optional parameter which makes the operation
18915// fail if the object's ETag matches the given value. This is useful for
18916// getting updates only after the object has changed since the last
18917// request. Use googleapi.IsNotModified to check whether the response
18918// error from Do is the result of In-None-Match.
18919func (c *AccountsListlinksCall) IfNoneMatch(entityTag string) *AccountsListlinksCall {
18920	c.ifNoneMatch_ = entityTag
18921	return c
18922}
18923
18924// Context sets the context to be used in this call's Do method. Any
18925// pending HTTP request will be aborted if the provided context is
18926// canceled.
18927func (c *AccountsListlinksCall) Context(ctx context.Context) *AccountsListlinksCall {
18928	c.ctx_ = ctx
18929	return c
18930}
18931
18932// Header returns an http.Header that can be modified by the caller to
18933// add HTTP headers to the request.
18934func (c *AccountsListlinksCall) Header() http.Header {
18935	if c.header_ == nil {
18936		c.header_ = make(http.Header)
18937	}
18938	return c.header_
18939}
18940
18941func (c *AccountsListlinksCall) doRequest(alt string) (*http.Response, error) {
18942	reqHeaders := make(http.Header)
18943	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
18944	for k, v := range c.header_ {
18945		reqHeaders[k] = v
18946	}
18947	reqHeaders.Set("User-Agent", c.s.userAgent())
18948	if c.ifNoneMatch_ != "" {
18949		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
18950	}
18951	var body io.Reader = nil
18952	c.urlParams_.Set("alt", alt)
18953	c.urlParams_.Set("prettyPrint", "false")
18954	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}/listlinks")
18955	urls += "?" + c.urlParams_.Encode()
18956	req, err := http.NewRequest("GET", urls, body)
18957	if err != nil {
18958		return nil, err
18959	}
18960	req.Header = reqHeaders
18961	googleapi.Expand(req.URL, map[string]string{
18962		"merchantId": strconv.FormatUint(c.merchantId, 10),
18963		"accountId":  strconv.FormatUint(c.accountId, 10),
18964	})
18965	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18966}
18967
18968// Do executes the "content.accounts.listlinks" call.
18969// Exactly one of *AccountsListLinksResponse or error will be non-nil.
18970// Any non-2xx status code is an error. Response headers are in either
18971// *AccountsListLinksResponse.ServerResponse.Header or (if a response
18972// was returned at all) in error.(*googleapi.Error).Header. Use
18973// googleapi.IsNotModified to check whether the returned error was
18974// because http.StatusNotModified was returned.
18975func (c *AccountsListlinksCall) Do(opts ...googleapi.CallOption) (*AccountsListLinksResponse, error) {
18976	gensupport.SetOptions(c.urlParams_, opts...)
18977	res, err := c.doRequest("json")
18978	if res != nil && res.StatusCode == http.StatusNotModified {
18979		if res.Body != nil {
18980			res.Body.Close()
18981		}
18982		return nil, &googleapi.Error{
18983			Code:   res.StatusCode,
18984			Header: res.Header,
18985		}
18986	}
18987	if err != nil {
18988		return nil, err
18989	}
18990	defer googleapi.CloseBody(res)
18991	if err := googleapi.CheckResponse(res); err != nil {
18992		return nil, err
18993	}
18994	ret := &AccountsListLinksResponse{
18995		ServerResponse: googleapi.ServerResponse{
18996			Header:         res.Header,
18997			HTTPStatusCode: res.StatusCode,
18998		},
18999	}
19000	target := &ret
19001	if err := gensupport.DecodeResponse(target, res); err != nil {
19002		return nil, err
19003	}
19004	return ret, nil
19005	// {
19006	//   "description": "Returns the list of accounts linked to your Merchant Center account.",
19007	//   "flatPath": "{merchantId}/accounts/{accountId}/listlinks",
19008	//   "httpMethod": "GET",
19009	//   "id": "content.accounts.listlinks",
19010	//   "parameterOrder": [
19011	//     "merchantId",
19012	//     "accountId"
19013	//   ],
19014	//   "parameters": {
19015	//     "accountId": {
19016	//       "description": "The ID of the account for which to list links.",
19017	//       "format": "uint64",
19018	//       "location": "path",
19019	//       "required": true,
19020	//       "type": "string"
19021	//     },
19022	//     "maxResults": {
19023	//       "description": "The maximum number of links to return in the response, used for pagination. The minimum allowed value is 5 results per page. If provided value is lower than 5, it will be automatically increased to 5.",
19024	//       "format": "uint32",
19025	//       "location": "query",
19026	//       "type": "integer"
19027	//     },
19028	//     "merchantId": {
19029	//       "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.",
19030	//       "format": "uint64",
19031	//       "location": "path",
19032	//       "required": true,
19033	//       "type": "string"
19034	//     },
19035	//     "pageToken": {
19036	//       "description": "The token returned by the previous request.",
19037	//       "location": "query",
19038	//       "type": "string"
19039	//     }
19040	//   },
19041	//   "path": "{merchantId}/accounts/{accountId}/listlinks",
19042	//   "response": {
19043	//     "$ref": "AccountsListLinksResponse"
19044	//   },
19045	//   "scopes": [
19046	//     "https://www.googleapis.com/auth/content"
19047	//   ]
19048	// }
19049
19050}
19051
19052// Pages invokes f for each page of results.
19053// A non-nil error returned from f will halt the iteration.
19054// The provided context supersedes any context provided to the Context method.
19055func (c *AccountsListlinksCall) Pages(ctx context.Context, f func(*AccountsListLinksResponse) error) error {
19056	c.ctx_ = ctx
19057	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
19058	for {
19059		x, err := c.Do()
19060		if err != nil {
19061			return err
19062		}
19063		if err := f(x); err != nil {
19064			return err
19065		}
19066		if x.NextPageToken == "" {
19067			return nil
19068		}
19069		c.PageToken(x.NextPageToken)
19070	}
19071}
19072
19073// method id "content.accounts.requestphoneverification":
19074
19075type AccountsRequestphoneverificationCall struct {
19076	s                               *APIService
19077	merchantId                      int64
19078	accountId                       int64
19079	requestphoneverificationrequest *RequestPhoneVerificationRequest
19080	urlParams_                      gensupport.URLParams
19081	ctx_                            context.Context
19082	header_                         http.Header
19083}
19084
19085// Requestphoneverification: Request verification code to start phone
19086// verification.
19087//
19088// - accountId: The ID of the account.
19089// - merchantId: The ID of the managing account. If this parameter is
19090//   not the same as accountId, then this account must be a multi-client
19091//   account and accountId must be the ID of a sub-account of this
19092//   account.
19093func (r *AccountsService) Requestphoneverification(merchantId int64, accountId int64, requestphoneverificationrequest *RequestPhoneVerificationRequest) *AccountsRequestphoneverificationCall {
19094	c := &AccountsRequestphoneverificationCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19095	c.merchantId = merchantId
19096	c.accountId = accountId
19097	c.requestphoneverificationrequest = requestphoneverificationrequest
19098	return c
19099}
19100
19101// Fields allows partial responses to be retrieved. See
19102// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19103// for more information.
19104func (c *AccountsRequestphoneverificationCall) Fields(s ...googleapi.Field) *AccountsRequestphoneverificationCall {
19105	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19106	return c
19107}
19108
19109// Context sets the context to be used in this call's Do method. Any
19110// pending HTTP request will be aborted if the provided context is
19111// canceled.
19112func (c *AccountsRequestphoneverificationCall) Context(ctx context.Context) *AccountsRequestphoneverificationCall {
19113	c.ctx_ = ctx
19114	return c
19115}
19116
19117// Header returns an http.Header that can be modified by the caller to
19118// add HTTP headers to the request.
19119func (c *AccountsRequestphoneverificationCall) Header() http.Header {
19120	if c.header_ == nil {
19121		c.header_ = make(http.Header)
19122	}
19123	return c.header_
19124}
19125
19126func (c *AccountsRequestphoneverificationCall) doRequest(alt string) (*http.Response, error) {
19127	reqHeaders := make(http.Header)
19128	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
19129	for k, v := range c.header_ {
19130		reqHeaders[k] = v
19131	}
19132	reqHeaders.Set("User-Agent", c.s.userAgent())
19133	var body io.Reader = nil
19134	body, err := googleapi.WithoutDataWrapper.JSONReader(c.requestphoneverificationrequest)
19135	if err != nil {
19136		return nil, err
19137	}
19138	reqHeaders.Set("Content-Type", "application/json")
19139	c.urlParams_.Set("alt", alt)
19140	c.urlParams_.Set("prettyPrint", "false")
19141	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}/requestphoneverification")
19142	urls += "?" + c.urlParams_.Encode()
19143	req, err := http.NewRequest("POST", urls, body)
19144	if err != nil {
19145		return nil, err
19146	}
19147	req.Header = reqHeaders
19148	googleapi.Expand(req.URL, map[string]string{
19149		"merchantId": strconv.FormatInt(c.merchantId, 10),
19150		"accountId":  strconv.FormatInt(c.accountId, 10),
19151	})
19152	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19153}
19154
19155// Do executes the "content.accounts.requestphoneverification" call.
19156// Exactly one of *RequestPhoneVerificationResponse or error will be
19157// non-nil. Any non-2xx status code is an error. Response headers are in
19158// either *RequestPhoneVerificationResponse.ServerResponse.Header or (if
19159// a response was returned at all) in error.(*googleapi.Error).Header.
19160// Use googleapi.IsNotModified to check whether the returned error was
19161// because http.StatusNotModified was returned.
19162func (c *AccountsRequestphoneverificationCall) Do(opts ...googleapi.CallOption) (*RequestPhoneVerificationResponse, error) {
19163	gensupport.SetOptions(c.urlParams_, opts...)
19164	res, err := c.doRequest("json")
19165	if res != nil && res.StatusCode == http.StatusNotModified {
19166		if res.Body != nil {
19167			res.Body.Close()
19168		}
19169		return nil, &googleapi.Error{
19170			Code:   res.StatusCode,
19171			Header: res.Header,
19172		}
19173	}
19174	if err != nil {
19175		return nil, err
19176	}
19177	defer googleapi.CloseBody(res)
19178	if err := googleapi.CheckResponse(res); err != nil {
19179		return nil, err
19180	}
19181	ret := &RequestPhoneVerificationResponse{
19182		ServerResponse: googleapi.ServerResponse{
19183			Header:         res.Header,
19184			HTTPStatusCode: res.StatusCode,
19185		},
19186	}
19187	target := &ret
19188	if err := gensupport.DecodeResponse(target, res); err != nil {
19189		return nil, err
19190	}
19191	return ret, nil
19192	// {
19193	//   "description": "Request verification code to start phone verification.",
19194	//   "flatPath": "{merchantId}/accounts/{accountId}/requestphoneverification",
19195	//   "httpMethod": "POST",
19196	//   "id": "content.accounts.requestphoneverification",
19197	//   "parameterOrder": [
19198	//     "merchantId",
19199	//     "accountId"
19200	//   ],
19201	//   "parameters": {
19202	//     "accountId": {
19203	//       "description": "Required. The ID of the account.",
19204	//       "format": "int64",
19205	//       "location": "path",
19206	//       "required": true,
19207	//       "type": "string"
19208	//     },
19209	//     "merchantId": {
19210	//       "description": "Required. The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.",
19211	//       "format": "int64",
19212	//       "location": "path",
19213	//       "required": true,
19214	//       "type": "string"
19215	//     }
19216	//   },
19217	//   "path": "{merchantId}/accounts/{accountId}/requestphoneverification",
19218	//   "request": {
19219	//     "$ref": "RequestPhoneVerificationRequest"
19220	//   },
19221	//   "response": {
19222	//     "$ref": "RequestPhoneVerificationResponse"
19223	//   },
19224	//   "scopes": [
19225	//     "https://www.googleapis.com/auth/content"
19226	//   ]
19227	// }
19228
19229}
19230
19231// method id "content.accounts.update":
19232
19233type AccountsUpdateCall struct {
19234	s          *APIService
19235	merchantId uint64
19236	accountId  uint64
19237	account    *Account
19238	urlParams_ gensupport.URLParams
19239	ctx_       context.Context
19240	header_    http.Header
19241}
19242
19243// Update: Updates a Merchant Center account. Any fields that are not
19244// provided are deleted from the resource.
19245//
19246// - accountId: The ID of the account.
19247// - merchantId: The ID of the managing account. If this parameter is
19248//   not the same as accountId, then this account must be a multi-client
19249//   account and `accountId` must be the ID of a sub-account of this
19250//   account.
19251func (r *AccountsService) Update(merchantId uint64, accountId uint64, account *Account) *AccountsUpdateCall {
19252	c := &AccountsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19253	c.merchantId = merchantId
19254	c.accountId = accountId
19255	c.account = account
19256	return c
19257}
19258
19259// Fields allows partial responses to be retrieved. See
19260// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19261// for more information.
19262func (c *AccountsUpdateCall) Fields(s ...googleapi.Field) *AccountsUpdateCall {
19263	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19264	return c
19265}
19266
19267// Context sets the context to be used in this call's Do method. Any
19268// pending HTTP request will be aborted if the provided context is
19269// canceled.
19270func (c *AccountsUpdateCall) Context(ctx context.Context) *AccountsUpdateCall {
19271	c.ctx_ = ctx
19272	return c
19273}
19274
19275// Header returns an http.Header that can be modified by the caller to
19276// add HTTP headers to the request.
19277func (c *AccountsUpdateCall) Header() http.Header {
19278	if c.header_ == nil {
19279		c.header_ = make(http.Header)
19280	}
19281	return c.header_
19282}
19283
19284func (c *AccountsUpdateCall) doRequest(alt string) (*http.Response, error) {
19285	reqHeaders := make(http.Header)
19286	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
19287	for k, v := range c.header_ {
19288		reqHeaders[k] = v
19289	}
19290	reqHeaders.Set("User-Agent", c.s.userAgent())
19291	var body io.Reader = nil
19292	body, err := googleapi.WithoutDataWrapper.JSONReader(c.account)
19293	if err != nil {
19294		return nil, err
19295	}
19296	reqHeaders.Set("Content-Type", "application/json")
19297	c.urlParams_.Set("alt", alt)
19298	c.urlParams_.Set("prettyPrint", "false")
19299	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}")
19300	urls += "?" + c.urlParams_.Encode()
19301	req, err := http.NewRequest("PUT", urls, body)
19302	if err != nil {
19303		return nil, err
19304	}
19305	req.Header = reqHeaders
19306	googleapi.Expand(req.URL, map[string]string{
19307		"merchantId": strconv.FormatUint(c.merchantId, 10),
19308		"accountId":  strconv.FormatUint(c.accountId, 10),
19309	})
19310	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19311}
19312
19313// Do executes the "content.accounts.update" call.
19314// Exactly one of *Account or error will be non-nil. Any non-2xx status
19315// code is an error. Response headers are in either
19316// *Account.ServerResponse.Header or (if a response was returned at all)
19317// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
19318// check whether the returned error was because http.StatusNotModified
19319// was returned.
19320func (c *AccountsUpdateCall) Do(opts ...googleapi.CallOption) (*Account, error) {
19321	gensupport.SetOptions(c.urlParams_, opts...)
19322	res, err := c.doRequest("json")
19323	if res != nil && res.StatusCode == http.StatusNotModified {
19324		if res.Body != nil {
19325			res.Body.Close()
19326		}
19327		return nil, &googleapi.Error{
19328			Code:   res.StatusCode,
19329			Header: res.Header,
19330		}
19331	}
19332	if err != nil {
19333		return nil, err
19334	}
19335	defer googleapi.CloseBody(res)
19336	if err := googleapi.CheckResponse(res); err != nil {
19337		return nil, err
19338	}
19339	ret := &Account{
19340		ServerResponse: googleapi.ServerResponse{
19341			Header:         res.Header,
19342			HTTPStatusCode: res.StatusCode,
19343		},
19344	}
19345	target := &ret
19346	if err := gensupport.DecodeResponse(target, res); err != nil {
19347		return nil, err
19348	}
19349	return ret, nil
19350	// {
19351	//   "description": "Updates a Merchant Center account. Any fields that are not provided are deleted from the resource.",
19352	//   "flatPath": "{merchantId}/accounts/{accountId}",
19353	//   "httpMethod": "PUT",
19354	//   "id": "content.accounts.update",
19355	//   "parameterOrder": [
19356	//     "merchantId",
19357	//     "accountId"
19358	//   ],
19359	//   "parameters": {
19360	//     "accountId": {
19361	//       "description": "The ID of the account.",
19362	//       "format": "uint64",
19363	//       "location": "path",
19364	//       "required": true,
19365	//       "type": "string"
19366	//     },
19367	//     "merchantId": {
19368	//       "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.",
19369	//       "format": "uint64",
19370	//       "location": "path",
19371	//       "required": true,
19372	//       "type": "string"
19373	//     }
19374	//   },
19375	//   "path": "{merchantId}/accounts/{accountId}",
19376	//   "request": {
19377	//     "$ref": "Account"
19378	//   },
19379	//   "response": {
19380	//     "$ref": "Account"
19381	//   },
19382	//   "scopes": [
19383	//     "https://www.googleapis.com/auth/content"
19384	//   ]
19385	// }
19386
19387}
19388
19389// method id "content.accounts.updatelabels":
19390
19391type AccountsUpdatelabelsCall struct {
19392	s                           *APIService
19393	merchantId                  uint64
19394	accountId                   uint64
19395	accountsupdatelabelsrequest *AccountsUpdateLabelsRequest
19396	urlParams_                  gensupport.URLParams
19397	ctx_                        context.Context
19398	header_                     http.Header
19399}
19400
19401// Updatelabels: Updates labels that are assigned to the Merchant Center
19402// account by CSS user.
19403//
19404// - accountId: The ID of the account whose labels are updated.
19405// - merchantId: The ID of the managing account.
19406func (r *AccountsService) Updatelabels(merchantId uint64, accountId uint64, accountsupdatelabelsrequest *AccountsUpdateLabelsRequest) *AccountsUpdatelabelsCall {
19407	c := &AccountsUpdatelabelsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19408	c.merchantId = merchantId
19409	c.accountId = accountId
19410	c.accountsupdatelabelsrequest = accountsupdatelabelsrequest
19411	return c
19412}
19413
19414// Fields allows partial responses to be retrieved. See
19415// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19416// for more information.
19417func (c *AccountsUpdatelabelsCall) Fields(s ...googleapi.Field) *AccountsUpdatelabelsCall {
19418	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19419	return c
19420}
19421
19422// Context sets the context to be used in this call's Do method. Any
19423// pending HTTP request will be aborted if the provided context is
19424// canceled.
19425func (c *AccountsUpdatelabelsCall) Context(ctx context.Context) *AccountsUpdatelabelsCall {
19426	c.ctx_ = ctx
19427	return c
19428}
19429
19430// Header returns an http.Header that can be modified by the caller to
19431// add HTTP headers to the request.
19432func (c *AccountsUpdatelabelsCall) Header() http.Header {
19433	if c.header_ == nil {
19434		c.header_ = make(http.Header)
19435	}
19436	return c.header_
19437}
19438
19439func (c *AccountsUpdatelabelsCall) doRequest(alt string) (*http.Response, error) {
19440	reqHeaders := make(http.Header)
19441	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
19442	for k, v := range c.header_ {
19443		reqHeaders[k] = v
19444	}
19445	reqHeaders.Set("User-Agent", c.s.userAgent())
19446	var body io.Reader = nil
19447	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountsupdatelabelsrequest)
19448	if err != nil {
19449		return nil, err
19450	}
19451	reqHeaders.Set("Content-Type", "application/json")
19452	c.urlParams_.Set("alt", alt)
19453	c.urlParams_.Set("prettyPrint", "false")
19454	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}/updatelabels")
19455	urls += "?" + c.urlParams_.Encode()
19456	req, err := http.NewRequest("POST", urls, body)
19457	if err != nil {
19458		return nil, err
19459	}
19460	req.Header = reqHeaders
19461	googleapi.Expand(req.URL, map[string]string{
19462		"merchantId": strconv.FormatUint(c.merchantId, 10),
19463		"accountId":  strconv.FormatUint(c.accountId, 10),
19464	})
19465	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19466}
19467
19468// Do executes the "content.accounts.updatelabels" call.
19469// Exactly one of *AccountsUpdateLabelsResponse or error will be
19470// non-nil. Any non-2xx status code is an error. Response headers are in
19471// either *AccountsUpdateLabelsResponse.ServerResponse.Header or (if a
19472// response was returned at all) in error.(*googleapi.Error).Header. Use
19473// googleapi.IsNotModified to check whether the returned error was
19474// because http.StatusNotModified was returned.
19475func (c *AccountsUpdatelabelsCall) Do(opts ...googleapi.CallOption) (*AccountsUpdateLabelsResponse, error) {
19476	gensupport.SetOptions(c.urlParams_, opts...)
19477	res, err := c.doRequest("json")
19478	if res != nil && res.StatusCode == http.StatusNotModified {
19479		if res.Body != nil {
19480			res.Body.Close()
19481		}
19482		return nil, &googleapi.Error{
19483			Code:   res.StatusCode,
19484			Header: res.Header,
19485		}
19486	}
19487	if err != nil {
19488		return nil, err
19489	}
19490	defer googleapi.CloseBody(res)
19491	if err := googleapi.CheckResponse(res); err != nil {
19492		return nil, err
19493	}
19494	ret := &AccountsUpdateLabelsResponse{
19495		ServerResponse: googleapi.ServerResponse{
19496			Header:         res.Header,
19497			HTTPStatusCode: res.StatusCode,
19498		},
19499	}
19500	target := &ret
19501	if err := gensupport.DecodeResponse(target, res); err != nil {
19502		return nil, err
19503	}
19504	return ret, nil
19505	// {
19506	//   "description": "Updates labels that are assigned to the Merchant Center account by CSS user.",
19507	//   "flatPath": "{merchantId}/accounts/{accountId}/updatelabels",
19508	//   "httpMethod": "POST",
19509	//   "id": "content.accounts.updatelabels",
19510	//   "parameterOrder": [
19511	//     "merchantId",
19512	//     "accountId"
19513	//   ],
19514	//   "parameters": {
19515	//     "accountId": {
19516	//       "description": "The ID of the account whose labels are updated.",
19517	//       "format": "uint64",
19518	//       "location": "path",
19519	//       "required": true,
19520	//       "type": "string"
19521	//     },
19522	//     "merchantId": {
19523	//       "description": "The ID of the managing account.",
19524	//       "format": "uint64",
19525	//       "location": "path",
19526	//       "required": true,
19527	//       "type": "string"
19528	//     }
19529	//   },
19530	//   "path": "{merchantId}/accounts/{accountId}/updatelabels",
19531	//   "request": {
19532	//     "$ref": "AccountsUpdateLabelsRequest"
19533	//   },
19534	//   "response": {
19535	//     "$ref": "AccountsUpdateLabelsResponse"
19536	//   },
19537	//   "scopes": [
19538	//     "https://www.googleapis.com/auth/content"
19539	//   ]
19540	// }
19541
19542}
19543
19544// method id "content.accounts.verifyphonenumber":
19545
19546type AccountsVerifyphonenumberCall struct {
19547	s                        *APIService
19548	merchantId               int64
19549	accountId                int64
19550	verifyphonenumberrequest *VerifyPhoneNumberRequest
19551	urlParams_               gensupport.URLParams
19552	ctx_                     context.Context
19553	header_                  http.Header
19554}
19555
19556// Verifyphonenumber: Validates verification code to verify phone number
19557// for the account. If successful this will overwrite the value of
19558// `accounts.businessinformation.phoneNumber`. Only verified phone
19559// number will replace an existing verified phone number.
19560//
19561// - accountId: The ID of the account.
19562// - merchantId: The ID of the managing account. If this parameter is
19563//   not the same as accountId, then this account must be a multi-client
19564//   account and accountId must be the ID of a sub-account of this
19565//   account.
19566func (r *AccountsService) Verifyphonenumber(merchantId int64, accountId int64, verifyphonenumberrequest *VerifyPhoneNumberRequest) *AccountsVerifyphonenumberCall {
19567	c := &AccountsVerifyphonenumberCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19568	c.merchantId = merchantId
19569	c.accountId = accountId
19570	c.verifyphonenumberrequest = verifyphonenumberrequest
19571	return c
19572}
19573
19574// Fields allows partial responses to be retrieved. See
19575// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19576// for more information.
19577func (c *AccountsVerifyphonenumberCall) Fields(s ...googleapi.Field) *AccountsVerifyphonenumberCall {
19578	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19579	return c
19580}
19581
19582// Context sets the context to be used in this call's Do method. Any
19583// pending HTTP request will be aborted if the provided context is
19584// canceled.
19585func (c *AccountsVerifyphonenumberCall) Context(ctx context.Context) *AccountsVerifyphonenumberCall {
19586	c.ctx_ = ctx
19587	return c
19588}
19589
19590// Header returns an http.Header that can be modified by the caller to
19591// add HTTP headers to the request.
19592func (c *AccountsVerifyphonenumberCall) Header() http.Header {
19593	if c.header_ == nil {
19594		c.header_ = make(http.Header)
19595	}
19596	return c.header_
19597}
19598
19599func (c *AccountsVerifyphonenumberCall) doRequest(alt string) (*http.Response, error) {
19600	reqHeaders := make(http.Header)
19601	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
19602	for k, v := range c.header_ {
19603		reqHeaders[k] = v
19604	}
19605	reqHeaders.Set("User-Agent", c.s.userAgent())
19606	var body io.Reader = nil
19607	body, err := googleapi.WithoutDataWrapper.JSONReader(c.verifyphonenumberrequest)
19608	if err != nil {
19609		return nil, err
19610	}
19611	reqHeaders.Set("Content-Type", "application/json")
19612	c.urlParams_.Set("alt", alt)
19613	c.urlParams_.Set("prettyPrint", "false")
19614	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}/verifyphonenumber")
19615	urls += "?" + c.urlParams_.Encode()
19616	req, err := http.NewRequest("POST", urls, body)
19617	if err != nil {
19618		return nil, err
19619	}
19620	req.Header = reqHeaders
19621	googleapi.Expand(req.URL, map[string]string{
19622		"merchantId": strconv.FormatInt(c.merchantId, 10),
19623		"accountId":  strconv.FormatInt(c.accountId, 10),
19624	})
19625	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19626}
19627
19628// Do executes the "content.accounts.verifyphonenumber" call.
19629// Exactly one of *VerifyPhoneNumberResponse or error will be non-nil.
19630// Any non-2xx status code is an error. Response headers are in either
19631// *VerifyPhoneNumberResponse.ServerResponse.Header or (if a response
19632// was returned at all) in error.(*googleapi.Error).Header. Use
19633// googleapi.IsNotModified to check whether the returned error was
19634// because http.StatusNotModified was returned.
19635func (c *AccountsVerifyphonenumberCall) Do(opts ...googleapi.CallOption) (*VerifyPhoneNumberResponse, error) {
19636	gensupport.SetOptions(c.urlParams_, opts...)
19637	res, err := c.doRequest("json")
19638	if res != nil && res.StatusCode == http.StatusNotModified {
19639		if res.Body != nil {
19640			res.Body.Close()
19641		}
19642		return nil, &googleapi.Error{
19643			Code:   res.StatusCode,
19644			Header: res.Header,
19645		}
19646	}
19647	if err != nil {
19648		return nil, err
19649	}
19650	defer googleapi.CloseBody(res)
19651	if err := googleapi.CheckResponse(res); err != nil {
19652		return nil, err
19653	}
19654	ret := &VerifyPhoneNumberResponse{
19655		ServerResponse: googleapi.ServerResponse{
19656			Header:         res.Header,
19657			HTTPStatusCode: res.StatusCode,
19658		},
19659	}
19660	target := &ret
19661	if err := gensupport.DecodeResponse(target, res); err != nil {
19662		return nil, err
19663	}
19664	return ret, nil
19665	// {
19666	//   "description": "Validates verification code to verify phone number for the account. If successful this will overwrite the value of `accounts.businessinformation.phoneNumber`. Only verified phone number will replace an existing verified phone number.",
19667	//   "flatPath": "{merchantId}/accounts/{accountId}/verifyphonenumber",
19668	//   "httpMethod": "POST",
19669	//   "id": "content.accounts.verifyphonenumber",
19670	//   "parameterOrder": [
19671	//     "merchantId",
19672	//     "accountId"
19673	//   ],
19674	//   "parameters": {
19675	//     "accountId": {
19676	//       "description": "Required. The ID of the account.",
19677	//       "format": "int64",
19678	//       "location": "path",
19679	//       "required": true,
19680	//       "type": "string"
19681	//     },
19682	//     "merchantId": {
19683	//       "description": "Required. The ID of the managing account. If this parameter is not the same as accountId, then this account must be a multi-client account and accountId must be the ID of a sub-account of this account.",
19684	//       "format": "int64",
19685	//       "location": "path",
19686	//       "required": true,
19687	//       "type": "string"
19688	//     }
19689	//   },
19690	//   "path": "{merchantId}/accounts/{accountId}/verifyphonenumber",
19691	//   "request": {
19692	//     "$ref": "VerifyPhoneNumberRequest"
19693	//   },
19694	//   "response": {
19695	//     "$ref": "VerifyPhoneNumberResponse"
19696	//   },
19697	//   "scopes": [
19698	//     "https://www.googleapis.com/auth/content"
19699	//   ]
19700	// }
19701
19702}
19703
19704// method id "content.accounts.credentials.create":
19705
19706type AccountsCredentialsCreateCall struct {
19707	s                  *APIService
19708	accountId          int64
19709	accountcredentials *AccountCredentials
19710	urlParams_         gensupport.URLParams
19711	ctx_               context.Context
19712	header_            http.Header
19713}
19714
19715// Create: Uploads credentials for the Merchant Center account. If
19716// credentials already exist for this Merchant Center account and
19717// purpose, this method updates them.
19718//
19719// - accountId: The merchant id of the account these credentials belong
19720//   to.
19721func (r *AccountsCredentialsService) Create(accountId int64, accountcredentials *AccountCredentials) *AccountsCredentialsCreateCall {
19722	c := &AccountsCredentialsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19723	c.accountId = accountId
19724	c.accountcredentials = accountcredentials
19725	return c
19726}
19727
19728// Fields allows partial responses to be retrieved. See
19729// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19730// for more information.
19731func (c *AccountsCredentialsCreateCall) Fields(s ...googleapi.Field) *AccountsCredentialsCreateCall {
19732	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19733	return c
19734}
19735
19736// Context sets the context to be used in this call's Do method. Any
19737// pending HTTP request will be aborted if the provided context is
19738// canceled.
19739func (c *AccountsCredentialsCreateCall) Context(ctx context.Context) *AccountsCredentialsCreateCall {
19740	c.ctx_ = ctx
19741	return c
19742}
19743
19744// Header returns an http.Header that can be modified by the caller to
19745// add HTTP headers to the request.
19746func (c *AccountsCredentialsCreateCall) Header() http.Header {
19747	if c.header_ == nil {
19748		c.header_ = make(http.Header)
19749	}
19750	return c.header_
19751}
19752
19753func (c *AccountsCredentialsCreateCall) doRequest(alt string) (*http.Response, error) {
19754	reqHeaders := make(http.Header)
19755	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
19756	for k, v := range c.header_ {
19757		reqHeaders[k] = v
19758	}
19759	reqHeaders.Set("User-Agent", c.s.userAgent())
19760	var body io.Reader = nil
19761	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountcredentials)
19762	if err != nil {
19763		return nil, err
19764	}
19765	reqHeaders.Set("Content-Type", "application/json")
19766	c.urlParams_.Set("alt", alt)
19767	c.urlParams_.Set("prettyPrint", "false")
19768	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/{accountId}/credentials")
19769	urls += "?" + c.urlParams_.Encode()
19770	req, err := http.NewRequest("POST", urls, body)
19771	if err != nil {
19772		return nil, err
19773	}
19774	req.Header = reqHeaders
19775	googleapi.Expand(req.URL, map[string]string{
19776		"accountId": strconv.FormatInt(c.accountId, 10),
19777	})
19778	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19779}
19780
19781// Do executes the "content.accounts.credentials.create" call.
19782// Exactly one of *AccountCredentials or error will be non-nil. Any
19783// non-2xx status code is an error. Response headers are in either
19784// *AccountCredentials.ServerResponse.Header or (if a response was
19785// returned at all) in error.(*googleapi.Error).Header. Use
19786// googleapi.IsNotModified to check whether the returned error was
19787// because http.StatusNotModified was returned.
19788func (c *AccountsCredentialsCreateCall) Do(opts ...googleapi.CallOption) (*AccountCredentials, error) {
19789	gensupport.SetOptions(c.urlParams_, opts...)
19790	res, err := c.doRequest("json")
19791	if res != nil && res.StatusCode == http.StatusNotModified {
19792		if res.Body != nil {
19793			res.Body.Close()
19794		}
19795		return nil, &googleapi.Error{
19796			Code:   res.StatusCode,
19797			Header: res.Header,
19798		}
19799	}
19800	if err != nil {
19801		return nil, err
19802	}
19803	defer googleapi.CloseBody(res)
19804	if err := googleapi.CheckResponse(res); err != nil {
19805		return nil, err
19806	}
19807	ret := &AccountCredentials{
19808		ServerResponse: googleapi.ServerResponse{
19809			Header:         res.Header,
19810			HTTPStatusCode: res.StatusCode,
19811		},
19812	}
19813	target := &ret
19814	if err := gensupport.DecodeResponse(target, res); err != nil {
19815		return nil, err
19816	}
19817	return ret, nil
19818	// {
19819	//   "description": "Uploads credentials for the Merchant Center account. If credentials already exist for this Merchant Center account and purpose, this method updates them.",
19820	//   "flatPath": "accounts/{accountId}/credentials",
19821	//   "httpMethod": "POST",
19822	//   "id": "content.accounts.credentials.create",
19823	//   "parameterOrder": [
19824	//     "accountId"
19825	//   ],
19826	//   "parameters": {
19827	//     "accountId": {
19828	//       "description": "Required. The merchant id of the account these credentials belong to.",
19829	//       "format": "int64",
19830	//       "location": "path",
19831	//       "required": true,
19832	//       "type": "string"
19833	//     }
19834	//   },
19835	//   "path": "accounts/{accountId}/credentials",
19836	//   "request": {
19837	//     "$ref": "AccountCredentials"
19838	//   },
19839	//   "response": {
19840	//     "$ref": "AccountCredentials"
19841	//   },
19842	//   "scopes": [
19843	//     "https://www.googleapis.com/auth/content"
19844	//   ]
19845	// }
19846
19847}
19848
19849// method id "content.accounts.labels.create":
19850
19851type AccountsLabelsCreateCall struct {
19852	s            *APIService
19853	accountId    int64
19854	accountlabel *AccountLabel
19855	urlParams_   gensupport.URLParams
19856	ctx_         context.Context
19857	header_      http.Header
19858}
19859
19860// Create: Creates a new label, not assigned to any account.
19861//
19862// - accountId: The id of the account this label belongs to.
19863func (r *AccountsLabelsService) Create(accountId int64, accountlabel *AccountLabel) *AccountsLabelsCreateCall {
19864	c := &AccountsLabelsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19865	c.accountId = accountId
19866	c.accountlabel = accountlabel
19867	return c
19868}
19869
19870// Fields allows partial responses to be retrieved. See
19871// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19872// for more information.
19873func (c *AccountsLabelsCreateCall) Fields(s ...googleapi.Field) *AccountsLabelsCreateCall {
19874	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19875	return c
19876}
19877
19878// Context sets the context to be used in this call's Do method. Any
19879// pending HTTP request will be aborted if the provided context is
19880// canceled.
19881func (c *AccountsLabelsCreateCall) Context(ctx context.Context) *AccountsLabelsCreateCall {
19882	c.ctx_ = ctx
19883	return c
19884}
19885
19886// Header returns an http.Header that can be modified by the caller to
19887// add HTTP headers to the request.
19888func (c *AccountsLabelsCreateCall) Header() http.Header {
19889	if c.header_ == nil {
19890		c.header_ = make(http.Header)
19891	}
19892	return c.header_
19893}
19894
19895func (c *AccountsLabelsCreateCall) doRequest(alt string) (*http.Response, error) {
19896	reqHeaders := make(http.Header)
19897	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
19898	for k, v := range c.header_ {
19899		reqHeaders[k] = v
19900	}
19901	reqHeaders.Set("User-Agent", c.s.userAgent())
19902	var body io.Reader = nil
19903	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountlabel)
19904	if err != nil {
19905		return nil, err
19906	}
19907	reqHeaders.Set("Content-Type", "application/json")
19908	c.urlParams_.Set("alt", alt)
19909	c.urlParams_.Set("prettyPrint", "false")
19910	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/{accountId}/labels")
19911	urls += "?" + c.urlParams_.Encode()
19912	req, err := http.NewRequest("POST", urls, body)
19913	if err != nil {
19914		return nil, err
19915	}
19916	req.Header = reqHeaders
19917	googleapi.Expand(req.URL, map[string]string{
19918		"accountId": strconv.FormatInt(c.accountId, 10),
19919	})
19920	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19921}
19922
19923// Do executes the "content.accounts.labels.create" call.
19924// Exactly one of *AccountLabel or error will be non-nil. Any non-2xx
19925// status code is an error. Response headers are in either
19926// *AccountLabel.ServerResponse.Header or (if a response was returned at
19927// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
19928// to check whether the returned error was because
19929// http.StatusNotModified was returned.
19930func (c *AccountsLabelsCreateCall) Do(opts ...googleapi.CallOption) (*AccountLabel, error) {
19931	gensupport.SetOptions(c.urlParams_, opts...)
19932	res, err := c.doRequest("json")
19933	if res != nil && res.StatusCode == http.StatusNotModified {
19934		if res.Body != nil {
19935			res.Body.Close()
19936		}
19937		return nil, &googleapi.Error{
19938			Code:   res.StatusCode,
19939			Header: res.Header,
19940		}
19941	}
19942	if err != nil {
19943		return nil, err
19944	}
19945	defer googleapi.CloseBody(res)
19946	if err := googleapi.CheckResponse(res); err != nil {
19947		return nil, err
19948	}
19949	ret := &AccountLabel{
19950		ServerResponse: googleapi.ServerResponse{
19951			Header:         res.Header,
19952			HTTPStatusCode: res.StatusCode,
19953		},
19954	}
19955	target := &ret
19956	if err := gensupport.DecodeResponse(target, res); err != nil {
19957		return nil, err
19958	}
19959	return ret, nil
19960	// {
19961	//   "description": "Creates a new label, not assigned to any account.",
19962	//   "flatPath": "accounts/{accountId}/labels",
19963	//   "httpMethod": "POST",
19964	//   "id": "content.accounts.labels.create",
19965	//   "parameterOrder": [
19966	//     "accountId"
19967	//   ],
19968	//   "parameters": {
19969	//     "accountId": {
19970	//       "description": "Required. The id of the account this label belongs to.",
19971	//       "format": "int64",
19972	//       "location": "path",
19973	//       "required": true,
19974	//       "type": "string"
19975	//     }
19976	//   },
19977	//   "path": "accounts/{accountId}/labels",
19978	//   "request": {
19979	//     "$ref": "AccountLabel"
19980	//   },
19981	//   "response": {
19982	//     "$ref": "AccountLabel"
19983	//   },
19984	//   "scopes": [
19985	//     "https://www.googleapis.com/auth/content"
19986	//   ]
19987	// }
19988
19989}
19990
19991// method id "content.accounts.labels.delete":
19992
19993type AccountsLabelsDeleteCall struct {
19994	s          *APIService
19995	accountId  int64
19996	labelId    int64
19997	urlParams_ gensupport.URLParams
19998	ctx_       context.Context
19999	header_    http.Header
20000}
20001
20002// Delete: Deletes a label and removes it from all accounts to which it
20003// was assigned.
20004//
20005// - accountId: The id of the account that owns the label.
20006// - labelId: The id of the label to delete.
20007func (r *AccountsLabelsService) Delete(accountId int64, labelId int64) *AccountsLabelsDeleteCall {
20008	c := &AccountsLabelsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20009	c.accountId = accountId
20010	c.labelId = labelId
20011	return c
20012}
20013
20014// Fields allows partial responses to be retrieved. See
20015// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20016// for more information.
20017func (c *AccountsLabelsDeleteCall) Fields(s ...googleapi.Field) *AccountsLabelsDeleteCall {
20018	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20019	return c
20020}
20021
20022// Context sets the context to be used in this call's Do method. Any
20023// pending HTTP request will be aborted if the provided context is
20024// canceled.
20025func (c *AccountsLabelsDeleteCall) Context(ctx context.Context) *AccountsLabelsDeleteCall {
20026	c.ctx_ = ctx
20027	return c
20028}
20029
20030// Header returns an http.Header that can be modified by the caller to
20031// add HTTP headers to the request.
20032func (c *AccountsLabelsDeleteCall) Header() http.Header {
20033	if c.header_ == nil {
20034		c.header_ = make(http.Header)
20035	}
20036	return c.header_
20037}
20038
20039func (c *AccountsLabelsDeleteCall) doRequest(alt string) (*http.Response, error) {
20040	reqHeaders := make(http.Header)
20041	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
20042	for k, v := range c.header_ {
20043		reqHeaders[k] = v
20044	}
20045	reqHeaders.Set("User-Agent", c.s.userAgent())
20046	var body io.Reader = nil
20047	c.urlParams_.Set("alt", alt)
20048	c.urlParams_.Set("prettyPrint", "false")
20049	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/{accountId}/labels/{labelId}")
20050	urls += "?" + c.urlParams_.Encode()
20051	req, err := http.NewRequest("DELETE", urls, body)
20052	if err != nil {
20053		return nil, err
20054	}
20055	req.Header = reqHeaders
20056	googleapi.Expand(req.URL, map[string]string{
20057		"accountId": strconv.FormatInt(c.accountId, 10),
20058		"labelId":   strconv.FormatInt(c.labelId, 10),
20059	})
20060	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20061}
20062
20063// Do executes the "content.accounts.labels.delete" call.
20064func (c *AccountsLabelsDeleteCall) Do(opts ...googleapi.CallOption) error {
20065	gensupport.SetOptions(c.urlParams_, opts...)
20066	res, err := c.doRequest("json")
20067	if err != nil {
20068		return err
20069	}
20070	defer googleapi.CloseBody(res)
20071	if err := googleapi.CheckResponse(res); err != nil {
20072		return err
20073	}
20074	return nil
20075	// {
20076	//   "description": "Deletes a label and removes it from all accounts to which it was assigned.",
20077	//   "flatPath": "accounts/{accountId}/labels/{labelId}",
20078	//   "httpMethod": "DELETE",
20079	//   "id": "content.accounts.labels.delete",
20080	//   "parameterOrder": [
20081	//     "accountId",
20082	//     "labelId"
20083	//   ],
20084	//   "parameters": {
20085	//     "accountId": {
20086	//       "description": "Required. The id of the account that owns the label.",
20087	//       "format": "int64",
20088	//       "location": "path",
20089	//       "required": true,
20090	//       "type": "string"
20091	//     },
20092	//     "labelId": {
20093	//       "description": "Required. The id of the label to delete.",
20094	//       "format": "int64",
20095	//       "location": "path",
20096	//       "required": true,
20097	//       "type": "string"
20098	//     }
20099	//   },
20100	//   "path": "accounts/{accountId}/labels/{labelId}",
20101	//   "scopes": [
20102	//     "https://www.googleapis.com/auth/content"
20103	//   ]
20104	// }
20105
20106}
20107
20108// method id "content.accounts.labels.list":
20109
20110type AccountsLabelsListCall struct {
20111	s            *APIService
20112	accountId    int64
20113	urlParams_   gensupport.URLParams
20114	ifNoneMatch_ string
20115	ctx_         context.Context
20116	header_      http.Header
20117}
20118
20119// List: Lists the labels assigned to an account.
20120//
20121// - accountId: The account id for whose labels are to be listed.
20122func (r *AccountsLabelsService) List(accountId int64) *AccountsLabelsListCall {
20123	c := &AccountsLabelsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20124	c.accountId = accountId
20125	return c
20126}
20127
20128// PageSize sets the optional parameter "pageSize": The maximum number
20129// of labels to return. The service may return fewer than this value. If
20130// unspecified, at most 50 labels will be returned. The maximum value is
20131// 1000; values above 1000 will be coerced to 1000.
20132func (c *AccountsLabelsListCall) PageSize(pageSize int64) *AccountsLabelsListCall {
20133	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
20134	return c
20135}
20136
20137// PageToken sets the optional parameter "pageToken": A page token,
20138// received from a previous `ListAccountLabels` call. Provide this to
20139// retrieve the subsequent page. When paginating, all other parameters
20140// provided to `ListAccountLabels` must match the call that provided the
20141// page token.
20142func (c *AccountsLabelsListCall) PageToken(pageToken string) *AccountsLabelsListCall {
20143	c.urlParams_.Set("pageToken", pageToken)
20144	return c
20145}
20146
20147// Fields allows partial responses to be retrieved. See
20148// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20149// for more information.
20150func (c *AccountsLabelsListCall) Fields(s ...googleapi.Field) *AccountsLabelsListCall {
20151	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20152	return c
20153}
20154
20155// IfNoneMatch sets the optional parameter which makes the operation
20156// fail if the object's ETag matches the given value. This is useful for
20157// getting updates only after the object has changed since the last
20158// request. Use googleapi.IsNotModified to check whether the response
20159// error from Do is the result of In-None-Match.
20160func (c *AccountsLabelsListCall) IfNoneMatch(entityTag string) *AccountsLabelsListCall {
20161	c.ifNoneMatch_ = entityTag
20162	return c
20163}
20164
20165// Context sets the context to be used in this call's Do method. Any
20166// pending HTTP request will be aborted if the provided context is
20167// canceled.
20168func (c *AccountsLabelsListCall) Context(ctx context.Context) *AccountsLabelsListCall {
20169	c.ctx_ = ctx
20170	return c
20171}
20172
20173// Header returns an http.Header that can be modified by the caller to
20174// add HTTP headers to the request.
20175func (c *AccountsLabelsListCall) Header() http.Header {
20176	if c.header_ == nil {
20177		c.header_ = make(http.Header)
20178	}
20179	return c.header_
20180}
20181
20182func (c *AccountsLabelsListCall) doRequest(alt string) (*http.Response, error) {
20183	reqHeaders := make(http.Header)
20184	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
20185	for k, v := range c.header_ {
20186		reqHeaders[k] = v
20187	}
20188	reqHeaders.Set("User-Agent", c.s.userAgent())
20189	if c.ifNoneMatch_ != "" {
20190		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
20191	}
20192	var body io.Reader = nil
20193	c.urlParams_.Set("alt", alt)
20194	c.urlParams_.Set("prettyPrint", "false")
20195	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/{accountId}/labels")
20196	urls += "?" + c.urlParams_.Encode()
20197	req, err := http.NewRequest("GET", urls, body)
20198	if err != nil {
20199		return nil, err
20200	}
20201	req.Header = reqHeaders
20202	googleapi.Expand(req.URL, map[string]string{
20203		"accountId": strconv.FormatInt(c.accountId, 10),
20204	})
20205	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20206}
20207
20208// Do executes the "content.accounts.labels.list" call.
20209// Exactly one of *ListAccountLabelsResponse or error will be non-nil.
20210// Any non-2xx status code is an error. Response headers are in either
20211// *ListAccountLabelsResponse.ServerResponse.Header or (if a response
20212// was returned at all) in error.(*googleapi.Error).Header. Use
20213// googleapi.IsNotModified to check whether the returned error was
20214// because http.StatusNotModified was returned.
20215func (c *AccountsLabelsListCall) Do(opts ...googleapi.CallOption) (*ListAccountLabelsResponse, error) {
20216	gensupport.SetOptions(c.urlParams_, opts...)
20217	res, err := c.doRequest("json")
20218	if res != nil && res.StatusCode == http.StatusNotModified {
20219		if res.Body != nil {
20220			res.Body.Close()
20221		}
20222		return nil, &googleapi.Error{
20223			Code:   res.StatusCode,
20224			Header: res.Header,
20225		}
20226	}
20227	if err != nil {
20228		return nil, err
20229	}
20230	defer googleapi.CloseBody(res)
20231	if err := googleapi.CheckResponse(res); err != nil {
20232		return nil, err
20233	}
20234	ret := &ListAccountLabelsResponse{
20235		ServerResponse: googleapi.ServerResponse{
20236			Header:         res.Header,
20237			HTTPStatusCode: res.StatusCode,
20238		},
20239	}
20240	target := &ret
20241	if err := gensupport.DecodeResponse(target, res); err != nil {
20242		return nil, err
20243	}
20244	return ret, nil
20245	// {
20246	//   "description": "Lists the labels assigned to an account.",
20247	//   "flatPath": "accounts/{accountId}/labels",
20248	//   "httpMethod": "GET",
20249	//   "id": "content.accounts.labels.list",
20250	//   "parameterOrder": [
20251	//     "accountId"
20252	//   ],
20253	//   "parameters": {
20254	//     "accountId": {
20255	//       "description": "Required. The account id for whose labels are to be listed.",
20256	//       "format": "int64",
20257	//       "location": "path",
20258	//       "required": true,
20259	//       "type": "string"
20260	//     },
20261	//     "pageSize": {
20262	//       "description": "The maximum number of labels to return. The service may return fewer than this value. If unspecified, at most 50 labels will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.",
20263	//       "format": "int32",
20264	//       "location": "query",
20265	//       "type": "integer"
20266	//     },
20267	//     "pageToken": {
20268	//       "description": "A page token, received from a previous `ListAccountLabels` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAccountLabels` must match the call that provided the page token.",
20269	//       "location": "query",
20270	//       "type": "string"
20271	//     }
20272	//   },
20273	//   "path": "accounts/{accountId}/labels",
20274	//   "response": {
20275	//     "$ref": "ListAccountLabelsResponse"
20276	//   },
20277	//   "scopes": [
20278	//     "https://www.googleapis.com/auth/content"
20279	//   ]
20280	// }
20281
20282}
20283
20284// Pages invokes f for each page of results.
20285// A non-nil error returned from f will halt the iteration.
20286// The provided context supersedes any context provided to the Context method.
20287func (c *AccountsLabelsListCall) Pages(ctx context.Context, f func(*ListAccountLabelsResponse) error) error {
20288	c.ctx_ = ctx
20289	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
20290	for {
20291		x, err := c.Do()
20292		if err != nil {
20293			return err
20294		}
20295		if err := f(x); err != nil {
20296			return err
20297		}
20298		if x.NextPageToken == "" {
20299			return nil
20300		}
20301		c.PageToken(x.NextPageToken)
20302	}
20303}
20304
20305// method id "content.accounts.labels.patch":
20306
20307type AccountsLabelsPatchCall struct {
20308	s            *APIService
20309	accountId    int64
20310	labelId      int64
20311	accountlabel *AccountLabel
20312	urlParams_   gensupport.URLParams
20313	ctx_         context.Context
20314	header_      http.Header
20315}
20316
20317// Patch: Updates a label.
20318//
20319// - accountId: The id of the account this label belongs to.
20320// - labelId: The id of the label to update.
20321func (r *AccountsLabelsService) Patch(accountId int64, labelId int64, accountlabel *AccountLabel) *AccountsLabelsPatchCall {
20322	c := &AccountsLabelsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20323	c.accountId = accountId
20324	c.labelId = labelId
20325	c.accountlabel = accountlabel
20326	return c
20327}
20328
20329// Fields allows partial responses to be retrieved. See
20330// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20331// for more information.
20332func (c *AccountsLabelsPatchCall) Fields(s ...googleapi.Field) *AccountsLabelsPatchCall {
20333	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20334	return c
20335}
20336
20337// Context sets the context to be used in this call's Do method. Any
20338// pending HTTP request will be aborted if the provided context is
20339// canceled.
20340func (c *AccountsLabelsPatchCall) Context(ctx context.Context) *AccountsLabelsPatchCall {
20341	c.ctx_ = ctx
20342	return c
20343}
20344
20345// Header returns an http.Header that can be modified by the caller to
20346// add HTTP headers to the request.
20347func (c *AccountsLabelsPatchCall) Header() http.Header {
20348	if c.header_ == nil {
20349		c.header_ = make(http.Header)
20350	}
20351	return c.header_
20352}
20353
20354func (c *AccountsLabelsPatchCall) doRequest(alt string) (*http.Response, error) {
20355	reqHeaders := make(http.Header)
20356	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
20357	for k, v := range c.header_ {
20358		reqHeaders[k] = v
20359	}
20360	reqHeaders.Set("User-Agent", c.s.userAgent())
20361	var body io.Reader = nil
20362	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountlabel)
20363	if err != nil {
20364		return nil, err
20365	}
20366	reqHeaders.Set("Content-Type", "application/json")
20367	c.urlParams_.Set("alt", alt)
20368	c.urlParams_.Set("prettyPrint", "false")
20369	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/{accountId}/labels/{labelId}")
20370	urls += "?" + c.urlParams_.Encode()
20371	req, err := http.NewRequest("PATCH", urls, body)
20372	if err != nil {
20373		return nil, err
20374	}
20375	req.Header = reqHeaders
20376	googleapi.Expand(req.URL, map[string]string{
20377		"accountId": strconv.FormatInt(c.accountId, 10),
20378		"labelId":   strconv.FormatInt(c.labelId, 10),
20379	})
20380	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20381}
20382
20383// Do executes the "content.accounts.labels.patch" call.
20384// Exactly one of *AccountLabel or error will be non-nil. Any non-2xx
20385// status code is an error. Response headers are in either
20386// *AccountLabel.ServerResponse.Header or (if a response was returned at
20387// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
20388// to check whether the returned error was because
20389// http.StatusNotModified was returned.
20390func (c *AccountsLabelsPatchCall) Do(opts ...googleapi.CallOption) (*AccountLabel, error) {
20391	gensupport.SetOptions(c.urlParams_, opts...)
20392	res, err := c.doRequest("json")
20393	if res != nil && res.StatusCode == http.StatusNotModified {
20394		if res.Body != nil {
20395			res.Body.Close()
20396		}
20397		return nil, &googleapi.Error{
20398			Code:   res.StatusCode,
20399			Header: res.Header,
20400		}
20401	}
20402	if err != nil {
20403		return nil, err
20404	}
20405	defer googleapi.CloseBody(res)
20406	if err := googleapi.CheckResponse(res); err != nil {
20407		return nil, err
20408	}
20409	ret := &AccountLabel{
20410		ServerResponse: googleapi.ServerResponse{
20411			Header:         res.Header,
20412			HTTPStatusCode: res.StatusCode,
20413		},
20414	}
20415	target := &ret
20416	if err := gensupport.DecodeResponse(target, res); err != nil {
20417		return nil, err
20418	}
20419	return ret, nil
20420	// {
20421	//   "description": "Updates a label.",
20422	//   "flatPath": "accounts/{accountId}/labels/{labelId}",
20423	//   "httpMethod": "PATCH",
20424	//   "id": "content.accounts.labels.patch",
20425	//   "parameterOrder": [
20426	//     "accountId",
20427	//     "labelId"
20428	//   ],
20429	//   "parameters": {
20430	//     "accountId": {
20431	//       "description": "Required. The id of the account this label belongs to.",
20432	//       "format": "int64",
20433	//       "location": "path",
20434	//       "required": true,
20435	//       "type": "string"
20436	//     },
20437	//     "labelId": {
20438	//       "description": "Required. The id of the label to update.",
20439	//       "format": "int64",
20440	//       "location": "path",
20441	//       "required": true,
20442	//       "type": "string"
20443	//     }
20444	//   },
20445	//   "path": "accounts/{accountId}/labels/{labelId}",
20446	//   "request": {
20447	//     "$ref": "AccountLabel"
20448	//   },
20449	//   "response": {
20450	//     "$ref": "AccountLabel"
20451	//   },
20452	//   "scopes": [
20453	//     "https://www.googleapis.com/auth/content"
20454	//   ]
20455	// }
20456
20457}
20458
20459// method id "content.accounts.returncarrier.create":
20460
20461type AccountsReturncarrierCreateCall struct {
20462	s                    *APIService
20463	accountId            int64
20464	accountreturncarrier *AccountReturnCarrier
20465	urlParams_           gensupport.URLParams
20466	ctx_                 context.Context
20467	header_              http.Header
20468}
20469
20470// Create: Links return carrier to a merchant account.
20471//
20472// - accountId: The Merchant Center Account Id under which the Return
20473//   Carrier is to be linked.
20474func (r *AccountsReturncarrierService) Create(accountId int64, accountreturncarrier *AccountReturnCarrier) *AccountsReturncarrierCreateCall {
20475	c := &AccountsReturncarrierCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20476	c.accountId = accountId
20477	c.accountreturncarrier = accountreturncarrier
20478	return c
20479}
20480
20481// Fields allows partial responses to be retrieved. See
20482// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20483// for more information.
20484func (c *AccountsReturncarrierCreateCall) Fields(s ...googleapi.Field) *AccountsReturncarrierCreateCall {
20485	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20486	return c
20487}
20488
20489// Context sets the context to be used in this call's Do method. Any
20490// pending HTTP request will be aborted if the provided context is
20491// canceled.
20492func (c *AccountsReturncarrierCreateCall) Context(ctx context.Context) *AccountsReturncarrierCreateCall {
20493	c.ctx_ = ctx
20494	return c
20495}
20496
20497// Header returns an http.Header that can be modified by the caller to
20498// add HTTP headers to the request.
20499func (c *AccountsReturncarrierCreateCall) Header() http.Header {
20500	if c.header_ == nil {
20501		c.header_ = make(http.Header)
20502	}
20503	return c.header_
20504}
20505
20506func (c *AccountsReturncarrierCreateCall) doRequest(alt string) (*http.Response, error) {
20507	reqHeaders := make(http.Header)
20508	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
20509	for k, v := range c.header_ {
20510		reqHeaders[k] = v
20511	}
20512	reqHeaders.Set("User-Agent", c.s.userAgent())
20513	var body io.Reader = nil
20514	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountreturncarrier)
20515	if err != nil {
20516		return nil, err
20517	}
20518	reqHeaders.Set("Content-Type", "application/json")
20519	c.urlParams_.Set("alt", alt)
20520	c.urlParams_.Set("prettyPrint", "false")
20521	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/{accountId}/returncarrier")
20522	urls += "?" + c.urlParams_.Encode()
20523	req, err := http.NewRequest("POST", urls, body)
20524	if err != nil {
20525		return nil, err
20526	}
20527	req.Header = reqHeaders
20528	googleapi.Expand(req.URL, map[string]string{
20529		"accountId": strconv.FormatInt(c.accountId, 10),
20530	})
20531	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20532}
20533
20534// Do executes the "content.accounts.returncarrier.create" call.
20535// Exactly one of *AccountReturnCarrier or error will be non-nil. Any
20536// non-2xx status code is an error. Response headers are in either
20537// *AccountReturnCarrier.ServerResponse.Header or (if a response was
20538// returned at all) in error.(*googleapi.Error).Header. Use
20539// googleapi.IsNotModified to check whether the returned error was
20540// because http.StatusNotModified was returned.
20541func (c *AccountsReturncarrierCreateCall) Do(opts ...googleapi.CallOption) (*AccountReturnCarrier, error) {
20542	gensupport.SetOptions(c.urlParams_, opts...)
20543	res, err := c.doRequest("json")
20544	if res != nil && res.StatusCode == http.StatusNotModified {
20545		if res.Body != nil {
20546			res.Body.Close()
20547		}
20548		return nil, &googleapi.Error{
20549			Code:   res.StatusCode,
20550			Header: res.Header,
20551		}
20552	}
20553	if err != nil {
20554		return nil, err
20555	}
20556	defer googleapi.CloseBody(res)
20557	if err := googleapi.CheckResponse(res); err != nil {
20558		return nil, err
20559	}
20560	ret := &AccountReturnCarrier{
20561		ServerResponse: googleapi.ServerResponse{
20562			Header:         res.Header,
20563			HTTPStatusCode: res.StatusCode,
20564		},
20565	}
20566	target := &ret
20567	if err := gensupport.DecodeResponse(target, res); err != nil {
20568		return nil, err
20569	}
20570	return ret, nil
20571	// {
20572	//   "description": "Links return carrier to a merchant account.",
20573	//   "flatPath": "accounts/{accountId}/returncarrier",
20574	//   "httpMethod": "POST",
20575	//   "id": "content.accounts.returncarrier.create",
20576	//   "parameterOrder": [
20577	//     "accountId"
20578	//   ],
20579	//   "parameters": {
20580	//     "accountId": {
20581	//       "description": "Required. The Merchant Center Account Id under which the Return Carrier is to be linked.",
20582	//       "format": "int64",
20583	//       "location": "path",
20584	//       "required": true,
20585	//       "type": "string"
20586	//     }
20587	//   },
20588	//   "path": "accounts/{accountId}/returncarrier",
20589	//   "request": {
20590	//     "$ref": "AccountReturnCarrier"
20591	//   },
20592	//   "response": {
20593	//     "$ref": "AccountReturnCarrier"
20594	//   },
20595	//   "scopes": [
20596	//     "https://www.googleapis.com/auth/content"
20597	//   ]
20598	// }
20599
20600}
20601
20602// method id "content.accounts.returncarrier.delete":
20603
20604type AccountsReturncarrierDeleteCall struct {
20605	s                *APIService
20606	accountId        int64
20607	carrierAccountId int64
20608	urlParams_       gensupport.URLParams
20609	ctx_             context.Context
20610	header_          http.Header
20611}
20612
20613// Delete: Delete a return carrier in the merchant account.
20614//
20615// - accountId: The Merchant Center Account Id under which the Return
20616//   Carrier is to be linked.
20617// - carrierAccountId: The Google-provided unique carrier ID, used to
20618//   update the resource.
20619func (r *AccountsReturncarrierService) Delete(accountId int64, carrierAccountId int64) *AccountsReturncarrierDeleteCall {
20620	c := &AccountsReturncarrierDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20621	c.accountId = accountId
20622	c.carrierAccountId = carrierAccountId
20623	return c
20624}
20625
20626// Fields allows partial responses to be retrieved. See
20627// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20628// for more information.
20629func (c *AccountsReturncarrierDeleteCall) Fields(s ...googleapi.Field) *AccountsReturncarrierDeleteCall {
20630	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20631	return c
20632}
20633
20634// Context sets the context to be used in this call's Do method. Any
20635// pending HTTP request will be aborted if the provided context is
20636// canceled.
20637func (c *AccountsReturncarrierDeleteCall) Context(ctx context.Context) *AccountsReturncarrierDeleteCall {
20638	c.ctx_ = ctx
20639	return c
20640}
20641
20642// Header returns an http.Header that can be modified by the caller to
20643// add HTTP headers to the request.
20644func (c *AccountsReturncarrierDeleteCall) Header() http.Header {
20645	if c.header_ == nil {
20646		c.header_ = make(http.Header)
20647	}
20648	return c.header_
20649}
20650
20651func (c *AccountsReturncarrierDeleteCall) doRequest(alt string) (*http.Response, error) {
20652	reqHeaders := make(http.Header)
20653	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
20654	for k, v := range c.header_ {
20655		reqHeaders[k] = v
20656	}
20657	reqHeaders.Set("User-Agent", c.s.userAgent())
20658	var body io.Reader = nil
20659	c.urlParams_.Set("alt", alt)
20660	c.urlParams_.Set("prettyPrint", "false")
20661	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/{accountId}/returncarrier/{carrierAccountId}")
20662	urls += "?" + c.urlParams_.Encode()
20663	req, err := http.NewRequest("DELETE", urls, body)
20664	if err != nil {
20665		return nil, err
20666	}
20667	req.Header = reqHeaders
20668	googleapi.Expand(req.URL, map[string]string{
20669		"accountId":        strconv.FormatInt(c.accountId, 10),
20670		"carrierAccountId": strconv.FormatInt(c.carrierAccountId, 10),
20671	})
20672	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20673}
20674
20675// Do executes the "content.accounts.returncarrier.delete" call.
20676func (c *AccountsReturncarrierDeleteCall) Do(opts ...googleapi.CallOption) error {
20677	gensupport.SetOptions(c.urlParams_, opts...)
20678	res, err := c.doRequest("json")
20679	if err != nil {
20680		return err
20681	}
20682	defer googleapi.CloseBody(res)
20683	if err := googleapi.CheckResponse(res); err != nil {
20684		return err
20685	}
20686	return nil
20687	// {
20688	//   "description": "Delete a return carrier in the merchant account.",
20689	//   "flatPath": "accounts/{accountId}/returncarrier/{carrierAccountId}",
20690	//   "httpMethod": "DELETE",
20691	//   "id": "content.accounts.returncarrier.delete",
20692	//   "parameterOrder": [
20693	//     "accountId",
20694	//     "carrierAccountId"
20695	//   ],
20696	//   "parameters": {
20697	//     "accountId": {
20698	//       "description": "Required. The Merchant Center Account Id under which the Return Carrier is to be linked.",
20699	//       "format": "int64",
20700	//       "location": "path",
20701	//       "required": true,
20702	//       "type": "string"
20703	//     },
20704	//     "carrierAccountId": {
20705	//       "description": "Required. The Google-provided unique carrier ID, used to update the resource.",
20706	//       "format": "int64",
20707	//       "location": "path",
20708	//       "required": true,
20709	//       "type": "string"
20710	//     }
20711	//   },
20712	//   "path": "accounts/{accountId}/returncarrier/{carrierAccountId}",
20713	//   "scopes": [
20714	//     "https://www.googleapis.com/auth/content"
20715	//   ]
20716	// }
20717
20718}
20719
20720// method id "content.accounts.returncarrier.list":
20721
20722type AccountsReturncarrierListCall struct {
20723	s            *APIService
20724	accountId    int64
20725	urlParams_   gensupport.URLParams
20726	ifNoneMatch_ string
20727	ctx_         context.Context
20728	header_      http.Header
20729}
20730
20731// List: Lists available return carriers in the merchant account.
20732//
20733// - accountId: The Merchant Center Account Id under which the Return
20734//   Carrier is to be linked.
20735func (r *AccountsReturncarrierService) List(accountId int64) *AccountsReturncarrierListCall {
20736	c := &AccountsReturncarrierListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20737	c.accountId = accountId
20738	return c
20739}
20740
20741// Fields allows partial responses to be retrieved. See
20742// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20743// for more information.
20744func (c *AccountsReturncarrierListCall) Fields(s ...googleapi.Field) *AccountsReturncarrierListCall {
20745	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20746	return c
20747}
20748
20749// IfNoneMatch sets the optional parameter which makes the operation
20750// fail if the object's ETag matches the given value. This is useful for
20751// getting updates only after the object has changed since the last
20752// request. Use googleapi.IsNotModified to check whether the response
20753// error from Do is the result of In-None-Match.
20754func (c *AccountsReturncarrierListCall) IfNoneMatch(entityTag string) *AccountsReturncarrierListCall {
20755	c.ifNoneMatch_ = entityTag
20756	return c
20757}
20758
20759// Context sets the context to be used in this call's Do method. Any
20760// pending HTTP request will be aborted if the provided context is
20761// canceled.
20762func (c *AccountsReturncarrierListCall) Context(ctx context.Context) *AccountsReturncarrierListCall {
20763	c.ctx_ = ctx
20764	return c
20765}
20766
20767// Header returns an http.Header that can be modified by the caller to
20768// add HTTP headers to the request.
20769func (c *AccountsReturncarrierListCall) Header() http.Header {
20770	if c.header_ == nil {
20771		c.header_ = make(http.Header)
20772	}
20773	return c.header_
20774}
20775
20776func (c *AccountsReturncarrierListCall) doRequest(alt string) (*http.Response, error) {
20777	reqHeaders := make(http.Header)
20778	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
20779	for k, v := range c.header_ {
20780		reqHeaders[k] = v
20781	}
20782	reqHeaders.Set("User-Agent", c.s.userAgent())
20783	if c.ifNoneMatch_ != "" {
20784		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
20785	}
20786	var body io.Reader = nil
20787	c.urlParams_.Set("alt", alt)
20788	c.urlParams_.Set("prettyPrint", "false")
20789	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/{accountId}/returncarrier")
20790	urls += "?" + c.urlParams_.Encode()
20791	req, err := http.NewRequest("GET", urls, body)
20792	if err != nil {
20793		return nil, err
20794	}
20795	req.Header = reqHeaders
20796	googleapi.Expand(req.URL, map[string]string{
20797		"accountId": strconv.FormatInt(c.accountId, 10),
20798	})
20799	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20800}
20801
20802// Do executes the "content.accounts.returncarrier.list" call.
20803// Exactly one of *ListAccountReturnCarrierResponse or error will be
20804// non-nil. Any non-2xx status code is an error. Response headers are in
20805// either *ListAccountReturnCarrierResponse.ServerResponse.Header or (if
20806// a response was returned at all) in error.(*googleapi.Error).Header.
20807// Use googleapi.IsNotModified to check whether the returned error was
20808// because http.StatusNotModified was returned.
20809func (c *AccountsReturncarrierListCall) Do(opts ...googleapi.CallOption) (*ListAccountReturnCarrierResponse, error) {
20810	gensupport.SetOptions(c.urlParams_, opts...)
20811	res, err := c.doRequest("json")
20812	if res != nil && res.StatusCode == http.StatusNotModified {
20813		if res.Body != nil {
20814			res.Body.Close()
20815		}
20816		return nil, &googleapi.Error{
20817			Code:   res.StatusCode,
20818			Header: res.Header,
20819		}
20820	}
20821	if err != nil {
20822		return nil, err
20823	}
20824	defer googleapi.CloseBody(res)
20825	if err := googleapi.CheckResponse(res); err != nil {
20826		return nil, err
20827	}
20828	ret := &ListAccountReturnCarrierResponse{
20829		ServerResponse: googleapi.ServerResponse{
20830			Header:         res.Header,
20831			HTTPStatusCode: res.StatusCode,
20832		},
20833	}
20834	target := &ret
20835	if err := gensupport.DecodeResponse(target, res); err != nil {
20836		return nil, err
20837	}
20838	return ret, nil
20839	// {
20840	//   "description": "Lists available return carriers in the merchant account.",
20841	//   "flatPath": "accounts/{accountId}/returncarrier",
20842	//   "httpMethod": "GET",
20843	//   "id": "content.accounts.returncarrier.list",
20844	//   "parameterOrder": [
20845	//     "accountId"
20846	//   ],
20847	//   "parameters": {
20848	//     "accountId": {
20849	//       "description": "Required. The Merchant Center Account Id under which the Return Carrier is to be linked.",
20850	//       "format": "int64",
20851	//       "location": "path",
20852	//       "required": true,
20853	//       "type": "string"
20854	//     }
20855	//   },
20856	//   "path": "accounts/{accountId}/returncarrier",
20857	//   "response": {
20858	//     "$ref": "ListAccountReturnCarrierResponse"
20859	//   },
20860	//   "scopes": [
20861	//     "https://www.googleapis.com/auth/content"
20862	//   ]
20863	// }
20864
20865}
20866
20867// method id "content.accounts.returncarrier.patch":
20868
20869type AccountsReturncarrierPatchCall struct {
20870	s                    *APIService
20871	accountId            int64
20872	carrierAccountId     int64
20873	accountreturncarrier *AccountReturnCarrier
20874	urlParams_           gensupport.URLParams
20875	ctx_                 context.Context
20876	header_              http.Header
20877}
20878
20879// Patch: Updates a return carrier in the merchant account.
20880//
20881// - accountId: The Merchant Center Account Id under which the Return
20882//   Carrier is to be linked.
20883// - carrierAccountId: The Google-provided unique carrier ID, used to
20884//   update the resource.
20885func (r *AccountsReturncarrierService) Patch(accountId int64, carrierAccountId int64, accountreturncarrier *AccountReturnCarrier) *AccountsReturncarrierPatchCall {
20886	c := &AccountsReturncarrierPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20887	c.accountId = accountId
20888	c.carrierAccountId = carrierAccountId
20889	c.accountreturncarrier = accountreturncarrier
20890	return c
20891}
20892
20893// Fields allows partial responses to be retrieved. See
20894// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20895// for more information.
20896func (c *AccountsReturncarrierPatchCall) Fields(s ...googleapi.Field) *AccountsReturncarrierPatchCall {
20897	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20898	return c
20899}
20900
20901// Context sets the context to be used in this call's Do method. Any
20902// pending HTTP request will be aborted if the provided context is
20903// canceled.
20904func (c *AccountsReturncarrierPatchCall) Context(ctx context.Context) *AccountsReturncarrierPatchCall {
20905	c.ctx_ = ctx
20906	return c
20907}
20908
20909// Header returns an http.Header that can be modified by the caller to
20910// add HTTP headers to the request.
20911func (c *AccountsReturncarrierPatchCall) Header() http.Header {
20912	if c.header_ == nil {
20913		c.header_ = make(http.Header)
20914	}
20915	return c.header_
20916}
20917
20918func (c *AccountsReturncarrierPatchCall) doRequest(alt string) (*http.Response, error) {
20919	reqHeaders := make(http.Header)
20920	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
20921	for k, v := range c.header_ {
20922		reqHeaders[k] = v
20923	}
20924	reqHeaders.Set("User-Agent", c.s.userAgent())
20925	var body io.Reader = nil
20926	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountreturncarrier)
20927	if err != nil {
20928		return nil, err
20929	}
20930	reqHeaders.Set("Content-Type", "application/json")
20931	c.urlParams_.Set("alt", alt)
20932	c.urlParams_.Set("prettyPrint", "false")
20933	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/{accountId}/returncarrier/{carrierAccountId}")
20934	urls += "?" + c.urlParams_.Encode()
20935	req, err := http.NewRequest("PATCH", urls, body)
20936	if err != nil {
20937		return nil, err
20938	}
20939	req.Header = reqHeaders
20940	googleapi.Expand(req.URL, map[string]string{
20941		"accountId":        strconv.FormatInt(c.accountId, 10),
20942		"carrierAccountId": strconv.FormatInt(c.carrierAccountId, 10),
20943	})
20944	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20945}
20946
20947// Do executes the "content.accounts.returncarrier.patch" call.
20948// Exactly one of *AccountReturnCarrier or error will be non-nil. Any
20949// non-2xx status code is an error. Response headers are in either
20950// *AccountReturnCarrier.ServerResponse.Header or (if a response was
20951// returned at all) in error.(*googleapi.Error).Header. Use
20952// googleapi.IsNotModified to check whether the returned error was
20953// because http.StatusNotModified was returned.
20954func (c *AccountsReturncarrierPatchCall) Do(opts ...googleapi.CallOption) (*AccountReturnCarrier, error) {
20955	gensupport.SetOptions(c.urlParams_, opts...)
20956	res, err := c.doRequest("json")
20957	if res != nil && res.StatusCode == http.StatusNotModified {
20958		if res.Body != nil {
20959			res.Body.Close()
20960		}
20961		return nil, &googleapi.Error{
20962			Code:   res.StatusCode,
20963			Header: res.Header,
20964		}
20965	}
20966	if err != nil {
20967		return nil, err
20968	}
20969	defer googleapi.CloseBody(res)
20970	if err := googleapi.CheckResponse(res); err != nil {
20971		return nil, err
20972	}
20973	ret := &AccountReturnCarrier{
20974		ServerResponse: googleapi.ServerResponse{
20975			Header:         res.Header,
20976			HTTPStatusCode: res.StatusCode,
20977		},
20978	}
20979	target := &ret
20980	if err := gensupport.DecodeResponse(target, res); err != nil {
20981		return nil, err
20982	}
20983	return ret, nil
20984	// {
20985	//   "description": "Updates a return carrier in the merchant account.",
20986	//   "flatPath": "accounts/{accountId}/returncarrier/{carrierAccountId}",
20987	//   "httpMethod": "PATCH",
20988	//   "id": "content.accounts.returncarrier.patch",
20989	//   "parameterOrder": [
20990	//     "accountId",
20991	//     "carrierAccountId"
20992	//   ],
20993	//   "parameters": {
20994	//     "accountId": {
20995	//       "description": "Required. The Merchant Center Account Id under which the Return Carrier is to be linked.",
20996	//       "format": "int64",
20997	//       "location": "path",
20998	//       "required": true,
20999	//       "type": "string"
21000	//     },
21001	//     "carrierAccountId": {
21002	//       "description": "Required. The Google-provided unique carrier ID, used to update the resource.",
21003	//       "format": "int64",
21004	//       "location": "path",
21005	//       "required": true,
21006	//       "type": "string"
21007	//     }
21008	//   },
21009	//   "path": "accounts/{accountId}/returncarrier/{carrierAccountId}",
21010	//   "request": {
21011	//     "$ref": "AccountReturnCarrier"
21012	//   },
21013	//   "response": {
21014	//     "$ref": "AccountReturnCarrier"
21015	//   },
21016	//   "scopes": [
21017	//     "https://www.googleapis.com/auth/content"
21018	//   ]
21019	// }
21020
21021}
21022
21023// method id "content.accountstatuses.custombatch":
21024
21025type AccountstatusesCustombatchCall struct {
21026	s                                 *APIService
21027	accountstatusescustombatchrequest *AccountstatusesCustomBatchRequest
21028	urlParams_                        gensupport.URLParams
21029	ctx_                              context.Context
21030	header_                           http.Header
21031}
21032
21033// Custombatch: Retrieves multiple Merchant Center account statuses in a
21034// single request.
21035func (r *AccountstatusesService) Custombatch(accountstatusescustombatchrequest *AccountstatusesCustomBatchRequest) *AccountstatusesCustombatchCall {
21036	c := &AccountstatusesCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21037	c.accountstatusescustombatchrequest = accountstatusescustombatchrequest
21038	return c
21039}
21040
21041// Fields allows partial responses to be retrieved. See
21042// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21043// for more information.
21044func (c *AccountstatusesCustombatchCall) Fields(s ...googleapi.Field) *AccountstatusesCustombatchCall {
21045	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21046	return c
21047}
21048
21049// Context sets the context to be used in this call's Do method. Any
21050// pending HTTP request will be aborted if the provided context is
21051// canceled.
21052func (c *AccountstatusesCustombatchCall) Context(ctx context.Context) *AccountstatusesCustombatchCall {
21053	c.ctx_ = ctx
21054	return c
21055}
21056
21057// Header returns an http.Header that can be modified by the caller to
21058// add HTTP headers to the request.
21059func (c *AccountstatusesCustombatchCall) Header() http.Header {
21060	if c.header_ == nil {
21061		c.header_ = make(http.Header)
21062	}
21063	return c.header_
21064}
21065
21066func (c *AccountstatusesCustombatchCall) doRequest(alt string) (*http.Response, error) {
21067	reqHeaders := make(http.Header)
21068	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
21069	for k, v := range c.header_ {
21070		reqHeaders[k] = v
21071	}
21072	reqHeaders.Set("User-Agent", c.s.userAgent())
21073	var body io.Reader = nil
21074	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountstatusescustombatchrequest)
21075	if err != nil {
21076		return nil, err
21077	}
21078	reqHeaders.Set("Content-Type", "application/json")
21079	c.urlParams_.Set("alt", alt)
21080	c.urlParams_.Set("prettyPrint", "false")
21081	urls := googleapi.ResolveRelative(c.s.BasePath, "accountstatuses/batch")
21082	urls += "?" + c.urlParams_.Encode()
21083	req, err := http.NewRequest("POST", urls, body)
21084	if err != nil {
21085		return nil, err
21086	}
21087	req.Header = reqHeaders
21088	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21089}
21090
21091// Do executes the "content.accountstatuses.custombatch" call.
21092// Exactly one of *AccountstatusesCustomBatchResponse or error will be
21093// non-nil. Any non-2xx status code is an error. Response headers are in
21094// either *AccountstatusesCustomBatchResponse.ServerResponse.Header or
21095// (if a response was returned at all) in
21096// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
21097// whether the returned error was because http.StatusNotModified was
21098// returned.
21099func (c *AccountstatusesCustombatchCall) Do(opts ...googleapi.CallOption) (*AccountstatusesCustomBatchResponse, error) {
21100	gensupport.SetOptions(c.urlParams_, opts...)
21101	res, err := c.doRequest("json")
21102	if res != nil && res.StatusCode == http.StatusNotModified {
21103		if res.Body != nil {
21104			res.Body.Close()
21105		}
21106		return nil, &googleapi.Error{
21107			Code:   res.StatusCode,
21108			Header: res.Header,
21109		}
21110	}
21111	if err != nil {
21112		return nil, err
21113	}
21114	defer googleapi.CloseBody(res)
21115	if err := googleapi.CheckResponse(res); err != nil {
21116		return nil, err
21117	}
21118	ret := &AccountstatusesCustomBatchResponse{
21119		ServerResponse: googleapi.ServerResponse{
21120			Header:         res.Header,
21121			HTTPStatusCode: res.StatusCode,
21122		},
21123	}
21124	target := &ret
21125	if err := gensupport.DecodeResponse(target, res); err != nil {
21126		return nil, err
21127	}
21128	return ret, nil
21129	// {
21130	//   "description": "Retrieves multiple Merchant Center account statuses in a single request.",
21131	//   "flatPath": "accountstatuses/batch",
21132	//   "httpMethod": "POST",
21133	//   "id": "content.accountstatuses.custombatch",
21134	//   "parameterOrder": [],
21135	//   "parameters": {},
21136	//   "path": "accountstatuses/batch",
21137	//   "request": {
21138	//     "$ref": "AccountstatusesCustomBatchRequest"
21139	//   },
21140	//   "response": {
21141	//     "$ref": "AccountstatusesCustomBatchResponse"
21142	//   },
21143	//   "scopes": [
21144	//     "https://www.googleapis.com/auth/content"
21145	//   ]
21146	// }
21147
21148}
21149
21150// method id "content.accountstatuses.get":
21151
21152type AccountstatusesGetCall struct {
21153	s            *APIService
21154	merchantId   uint64
21155	accountId    uint64
21156	urlParams_   gensupport.URLParams
21157	ifNoneMatch_ string
21158	ctx_         context.Context
21159	header_      http.Header
21160}
21161
21162// Get: Retrieves the status of a Merchant Center account. No
21163// itemLevelIssues are returned for multi-client accounts.
21164//
21165// - accountId: The ID of the account.
21166// - merchantId: The ID of the managing account. If this parameter is
21167//   not the same as accountId, then this account must be a multi-client
21168//   account and `accountId` must be the ID of a sub-account of this
21169//   account.
21170func (r *AccountstatusesService) Get(merchantId uint64, accountId uint64) *AccountstatusesGetCall {
21171	c := &AccountstatusesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21172	c.merchantId = merchantId
21173	c.accountId = accountId
21174	return c
21175}
21176
21177// Destinations sets the optional parameter "destinations": If set, only
21178// issues for the specified destinations are returned, otherwise only
21179// issues for the Shopping destination.
21180func (c *AccountstatusesGetCall) Destinations(destinations ...string) *AccountstatusesGetCall {
21181	c.urlParams_.SetMulti("destinations", append([]string{}, destinations...))
21182	return c
21183}
21184
21185// Fields allows partial responses to be retrieved. See
21186// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21187// for more information.
21188func (c *AccountstatusesGetCall) Fields(s ...googleapi.Field) *AccountstatusesGetCall {
21189	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21190	return c
21191}
21192
21193// IfNoneMatch sets the optional parameter which makes the operation
21194// fail if the object's ETag matches the given value. This is useful for
21195// getting updates only after the object has changed since the last
21196// request. Use googleapi.IsNotModified to check whether the response
21197// error from Do is the result of In-None-Match.
21198func (c *AccountstatusesGetCall) IfNoneMatch(entityTag string) *AccountstatusesGetCall {
21199	c.ifNoneMatch_ = entityTag
21200	return c
21201}
21202
21203// Context sets the context to be used in this call's Do method. Any
21204// pending HTTP request will be aborted if the provided context is
21205// canceled.
21206func (c *AccountstatusesGetCall) Context(ctx context.Context) *AccountstatusesGetCall {
21207	c.ctx_ = ctx
21208	return c
21209}
21210
21211// Header returns an http.Header that can be modified by the caller to
21212// add HTTP headers to the request.
21213func (c *AccountstatusesGetCall) Header() http.Header {
21214	if c.header_ == nil {
21215		c.header_ = make(http.Header)
21216	}
21217	return c.header_
21218}
21219
21220func (c *AccountstatusesGetCall) doRequest(alt string) (*http.Response, error) {
21221	reqHeaders := make(http.Header)
21222	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
21223	for k, v := range c.header_ {
21224		reqHeaders[k] = v
21225	}
21226	reqHeaders.Set("User-Agent", c.s.userAgent())
21227	if c.ifNoneMatch_ != "" {
21228		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
21229	}
21230	var body io.Reader = nil
21231	c.urlParams_.Set("alt", alt)
21232	c.urlParams_.Set("prettyPrint", "false")
21233	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accountstatuses/{accountId}")
21234	urls += "?" + c.urlParams_.Encode()
21235	req, err := http.NewRequest("GET", urls, body)
21236	if err != nil {
21237		return nil, err
21238	}
21239	req.Header = reqHeaders
21240	googleapi.Expand(req.URL, map[string]string{
21241		"merchantId": strconv.FormatUint(c.merchantId, 10),
21242		"accountId":  strconv.FormatUint(c.accountId, 10),
21243	})
21244	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21245}
21246
21247// Do executes the "content.accountstatuses.get" call.
21248// Exactly one of *AccountStatus or error will be non-nil. Any non-2xx
21249// status code is an error. Response headers are in either
21250// *AccountStatus.ServerResponse.Header or (if a response was returned
21251// at all) in error.(*googleapi.Error).Header. Use
21252// googleapi.IsNotModified to check whether the returned error was
21253// because http.StatusNotModified was returned.
21254func (c *AccountstatusesGetCall) Do(opts ...googleapi.CallOption) (*AccountStatus, error) {
21255	gensupport.SetOptions(c.urlParams_, opts...)
21256	res, err := c.doRequest("json")
21257	if res != nil && res.StatusCode == http.StatusNotModified {
21258		if res.Body != nil {
21259			res.Body.Close()
21260		}
21261		return nil, &googleapi.Error{
21262			Code:   res.StatusCode,
21263			Header: res.Header,
21264		}
21265	}
21266	if err != nil {
21267		return nil, err
21268	}
21269	defer googleapi.CloseBody(res)
21270	if err := googleapi.CheckResponse(res); err != nil {
21271		return nil, err
21272	}
21273	ret := &AccountStatus{
21274		ServerResponse: googleapi.ServerResponse{
21275			Header:         res.Header,
21276			HTTPStatusCode: res.StatusCode,
21277		},
21278	}
21279	target := &ret
21280	if err := gensupport.DecodeResponse(target, res); err != nil {
21281		return nil, err
21282	}
21283	return ret, nil
21284	// {
21285	//   "description": "Retrieves the status of a Merchant Center account. No itemLevelIssues are returned for multi-client accounts.",
21286	//   "flatPath": "{merchantId}/accountstatuses/{accountId}",
21287	//   "httpMethod": "GET",
21288	//   "id": "content.accountstatuses.get",
21289	//   "parameterOrder": [
21290	//     "merchantId",
21291	//     "accountId"
21292	//   ],
21293	//   "parameters": {
21294	//     "accountId": {
21295	//       "description": "The ID of the account.",
21296	//       "format": "uint64",
21297	//       "location": "path",
21298	//       "required": true,
21299	//       "type": "string"
21300	//     },
21301	//     "destinations": {
21302	//       "description": "If set, only issues for the specified destinations are returned, otherwise only issues for the Shopping destination.",
21303	//       "location": "query",
21304	//       "repeated": true,
21305	//       "type": "string"
21306	//     },
21307	//     "merchantId": {
21308	//       "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.",
21309	//       "format": "uint64",
21310	//       "location": "path",
21311	//       "required": true,
21312	//       "type": "string"
21313	//     }
21314	//   },
21315	//   "path": "{merchantId}/accountstatuses/{accountId}",
21316	//   "response": {
21317	//     "$ref": "AccountStatus"
21318	//   },
21319	//   "scopes": [
21320	//     "https://www.googleapis.com/auth/content"
21321	//   ]
21322	// }
21323
21324}
21325
21326// method id "content.accountstatuses.list":
21327
21328type AccountstatusesListCall struct {
21329	s            *APIService
21330	merchantId   uint64
21331	urlParams_   gensupport.URLParams
21332	ifNoneMatch_ string
21333	ctx_         context.Context
21334	header_      http.Header
21335}
21336
21337// List: Lists the statuses of the sub-accounts in your Merchant Center
21338// account.
21339//
21340// - merchantId: The ID of the managing account. This must be a
21341//   multi-client account.
21342func (r *AccountstatusesService) List(merchantId uint64) *AccountstatusesListCall {
21343	c := &AccountstatusesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21344	c.merchantId = merchantId
21345	return c
21346}
21347
21348// Destinations sets the optional parameter "destinations": If set, only
21349// issues for the specified destinations are returned, otherwise only
21350// issues for the Shopping destination.
21351func (c *AccountstatusesListCall) Destinations(destinations ...string) *AccountstatusesListCall {
21352	c.urlParams_.SetMulti("destinations", append([]string{}, destinations...))
21353	return c
21354}
21355
21356// MaxResults sets the optional parameter "maxResults": The maximum
21357// number of account statuses to return in the response, used for
21358// paging.
21359func (c *AccountstatusesListCall) MaxResults(maxResults int64) *AccountstatusesListCall {
21360	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
21361	return c
21362}
21363
21364// Name sets the optional parameter "name": If set, only the accounts
21365// with the given name (case sensitive) will be returned.
21366func (c *AccountstatusesListCall) Name(name string) *AccountstatusesListCall {
21367	c.urlParams_.Set("name", name)
21368	return c
21369}
21370
21371// PageToken sets the optional parameter "pageToken": The token returned
21372// by the previous request.
21373func (c *AccountstatusesListCall) PageToken(pageToken string) *AccountstatusesListCall {
21374	c.urlParams_.Set("pageToken", pageToken)
21375	return c
21376}
21377
21378// Fields allows partial responses to be retrieved. See
21379// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21380// for more information.
21381func (c *AccountstatusesListCall) Fields(s ...googleapi.Field) *AccountstatusesListCall {
21382	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21383	return c
21384}
21385
21386// IfNoneMatch sets the optional parameter which makes the operation
21387// fail if the object's ETag matches the given value. This is useful for
21388// getting updates only after the object has changed since the last
21389// request. Use googleapi.IsNotModified to check whether the response
21390// error from Do is the result of In-None-Match.
21391func (c *AccountstatusesListCall) IfNoneMatch(entityTag string) *AccountstatusesListCall {
21392	c.ifNoneMatch_ = entityTag
21393	return c
21394}
21395
21396// Context sets the context to be used in this call's Do method. Any
21397// pending HTTP request will be aborted if the provided context is
21398// canceled.
21399func (c *AccountstatusesListCall) Context(ctx context.Context) *AccountstatusesListCall {
21400	c.ctx_ = ctx
21401	return c
21402}
21403
21404// Header returns an http.Header that can be modified by the caller to
21405// add HTTP headers to the request.
21406func (c *AccountstatusesListCall) Header() http.Header {
21407	if c.header_ == nil {
21408		c.header_ = make(http.Header)
21409	}
21410	return c.header_
21411}
21412
21413func (c *AccountstatusesListCall) doRequest(alt string) (*http.Response, error) {
21414	reqHeaders := make(http.Header)
21415	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
21416	for k, v := range c.header_ {
21417		reqHeaders[k] = v
21418	}
21419	reqHeaders.Set("User-Agent", c.s.userAgent())
21420	if c.ifNoneMatch_ != "" {
21421		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
21422	}
21423	var body io.Reader = nil
21424	c.urlParams_.Set("alt", alt)
21425	c.urlParams_.Set("prettyPrint", "false")
21426	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accountstatuses")
21427	urls += "?" + c.urlParams_.Encode()
21428	req, err := http.NewRequest("GET", urls, body)
21429	if err != nil {
21430		return nil, err
21431	}
21432	req.Header = reqHeaders
21433	googleapi.Expand(req.URL, map[string]string{
21434		"merchantId": strconv.FormatUint(c.merchantId, 10),
21435	})
21436	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21437}
21438
21439// Do executes the "content.accountstatuses.list" call.
21440// Exactly one of *AccountstatusesListResponse or error will be non-nil.
21441// Any non-2xx status code is an error. Response headers are in either
21442// *AccountstatusesListResponse.ServerResponse.Header or (if a response
21443// was returned at all) in error.(*googleapi.Error).Header. Use
21444// googleapi.IsNotModified to check whether the returned error was
21445// because http.StatusNotModified was returned.
21446func (c *AccountstatusesListCall) Do(opts ...googleapi.CallOption) (*AccountstatusesListResponse, error) {
21447	gensupport.SetOptions(c.urlParams_, opts...)
21448	res, err := c.doRequest("json")
21449	if res != nil && res.StatusCode == http.StatusNotModified {
21450		if res.Body != nil {
21451			res.Body.Close()
21452		}
21453		return nil, &googleapi.Error{
21454			Code:   res.StatusCode,
21455			Header: res.Header,
21456		}
21457	}
21458	if err != nil {
21459		return nil, err
21460	}
21461	defer googleapi.CloseBody(res)
21462	if err := googleapi.CheckResponse(res); err != nil {
21463		return nil, err
21464	}
21465	ret := &AccountstatusesListResponse{
21466		ServerResponse: googleapi.ServerResponse{
21467			Header:         res.Header,
21468			HTTPStatusCode: res.StatusCode,
21469		},
21470	}
21471	target := &ret
21472	if err := gensupport.DecodeResponse(target, res); err != nil {
21473		return nil, err
21474	}
21475	return ret, nil
21476	// {
21477	//   "description": "Lists the statuses of the sub-accounts in your Merchant Center account.",
21478	//   "flatPath": "{merchantId}/accountstatuses",
21479	//   "httpMethod": "GET",
21480	//   "id": "content.accountstatuses.list",
21481	//   "parameterOrder": [
21482	//     "merchantId"
21483	//   ],
21484	//   "parameters": {
21485	//     "destinations": {
21486	//       "description": "If set, only issues for the specified destinations are returned, otherwise only issues for the Shopping destination.",
21487	//       "location": "query",
21488	//       "repeated": true,
21489	//       "type": "string"
21490	//     },
21491	//     "maxResults": {
21492	//       "description": "The maximum number of account statuses to return in the response, used for paging.",
21493	//       "format": "uint32",
21494	//       "location": "query",
21495	//       "type": "integer"
21496	//     },
21497	//     "merchantId": {
21498	//       "description": "The ID of the managing account. This must be a multi-client account.",
21499	//       "format": "uint64",
21500	//       "location": "path",
21501	//       "required": true,
21502	//       "type": "string"
21503	//     },
21504	//     "name": {
21505	//       "description": "If set, only the accounts with the given name (case sensitive) will be returned.",
21506	//       "location": "query",
21507	//       "type": "string"
21508	//     },
21509	//     "pageToken": {
21510	//       "description": "The token returned by the previous request.",
21511	//       "location": "query",
21512	//       "type": "string"
21513	//     }
21514	//   },
21515	//   "path": "{merchantId}/accountstatuses",
21516	//   "response": {
21517	//     "$ref": "AccountstatusesListResponse"
21518	//   },
21519	//   "scopes": [
21520	//     "https://www.googleapis.com/auth/content"
21521	//   ]
21522	// }
21523
21524}
21525
21526// Pages invokes f for each page of results.
21527// A non-nil error returned from f will halt the iteration.
21528// The provided context supersedes any context provided to the Context method.
21529func (c *AccountstatusesListCall) Pages(ctx context.Context, f func(*AccountstatusesListResponse) error) error {
21530	c.ctx_ = ctx
21531	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
21532	for {
21533		x, err := c.Do()
21534		if err != nil {
21535			return err
21536		}
21537		if err := f(x); err != nil {
21538			return err
21539		}
21540		if x.NextPageToken == "" {
21541			return nil
21542		}
21543		c.PageToken(x.NextPageToken)
21544	}
21545}
21546
21547// method id "content.accounttax.custombatch":
21548
21549type AccounttaxCustombatchCall struct {
21550	s                            *APIService
21551	accounttaxcustombatchrequest *AccounttaxCustomBatchRequest
21552	urlParams_                   gensupport.URLParams
21553	ctx_                         context.Context
21554	header_                      http.Header
21555}
21556
21557// Custombatch: Retrieves and updates tax settings of multiple accounts
21558// in a single request.
21559func (r *AccounttaxService) Custombatch(accounttaxcustombatchrequest *AccounttaxCustomBatchRequest) *AccounttaxCustombatchCall {
21560	c := &AccounttaxCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21561	c.accounttaxcustombatchrequest = accounttaxcustombatchrequest
21562	return c
21563}
21564
21565// Fields allows partial responses to be retrieved. See
21566// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21567// for more information.
21568func (c *AccounttaxCustombatchCall) Fields(s ...googleapi.Field) *AccounttaxCustombatchCall {
21569	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21570	return c
21571}
21572
21573// Context sets the context to be used in this call's Do method. Any
21574// pending HTTP request will be aborted if the provided context is
21575// canceled.
21576func (c *AccounttaxCustombatchCall) Context(ctx context.Context) *AccounttaxCustombatchCall {
21577	c.ctx_ = ctx
21578	return c
21579}
21580
21581// Header returns an http.Header that can be modified by the caller to
21582// add HTTP headers to the request.
21583func (c *AccounttaxCustombatchCall) Header() http.Header {
21584	if c.header_ == nil {
21585		c.header_ = make(http.Header)
21586	}
21587	return c.header_
21588}
21589
21590func (c *AccounttaxCustombatchCall) doRequest(alt string) (*http.Response, error) {
21591	reqHeaders := make(http.Header)
21592	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
21593	for k, v := range c.header_ {
21594		reqHeaders[k] = v
21595	}
21596	reqHeaders.Set("User-Agent", c.s.userAgent())
21597	var body io.Reader = nil
21598	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accounttaxcustombatchrequest)
21599	if err != nil {
21600		return nil, err
21601	}
21602	reqHeaders.Set("Content-Type", "application/json")
21603	c.urlParams_.Set("alt", alt)
21604	c.urlParams_.Set("prettyPrint", "false")
21605	urls := googleapi.ResolveRelative(c.s.BasePath, "accounttax/batch")
21606	urls += "?" + c.urlParams_.Encode()
21607	req, err := http.NewRequest("POST", urls, body)
21608	if err != nil {
21609		return nil, err
21610	}
21611	req.Header = reqHeaders
21612	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21613}
21614
21615// Do executes the "content.accounttax.custombatch" call.
21616// Exactly one of *AccounttaxCustomBatchResponse or error will be
21617// non-nil. Any non-2xx status code is an error. Response headers are in
21618// either *AccounttaxCustomBatchResponse.ServerResponse.Header or (if a
21619// response was returned at all) in error.(*googleapi.Error).Header. Use
21620// googleapi.IsNotModified to check whether the returned error was
21621// because http.StatusNotModified was returned.
21622func (c *AccounttaxCustombatchCall) Do(opts ...googleapi.CallOption) (*AccounttaxCustomBatchResponse, error) {
21623	gensupport.SetOptions(c.urlParams_, opts...)
21624	res, err := c.doRequest("json")
21625	if res != nil && res.StatusCode == http.StatusNotModified {
21626		if res.Body != nil {
21627			res.Body.Close()
21628		}
21629		return nil, &googleapi.Error{
21630			Code:   res.StatusCode,
21631			Header: res.Header,
21632		}
21633	}
21634	if err != nil {
21635		return nil, err
21636	}
21637	defer googleapi.CloseBody(res)
21638	if err := googleapi.CheckResponse(res); err != nil {
21639		return nil, err
21640	}
21641	ret := &AccounttaxCustomBatchResponse{
21642		ServerResponse: googleapi.ServerResponse{
21643			Header:         res.Header,
21644			HTTPStatusCode: res.StatusCode,
21645		},
21646	}
21647	target := &ret
21648	if err := gensupport.DecodeResponse(target, res); err != nil {
21649		return nil, err
21650	}
21651	return ret, nil
21652	// {
21653	//   "description": "Retrieves and updates tax settings of multiple accounts in a single request.",
21654	//   "flatPath": "accounttax/batch",
21655	//   "httpMethod": "POST",
21656	//   "id": "content.accounttax.custombatch",
21657	//   "parameterOrder": [],
21658	//   "parameters": {},
21659	//   "path": "accounttax/batch",
21660	//   "request": {
21661	//     "$ref": "AccounttaxCustomBatchRequest"
21662	//   },
21663	//   "response": {
21664	//     "$ref": "AccounttaxCustomBatchResponse"
21665	//   },
21666	//   "scopes": [
21667	//     "https://www.googleapis.com/auth/content"
21668	//   ]
21669	// }
21670
21671}
21672
21673// method id "content.accounttax.get":
21674
21675type AccounttaxGetCall struct {
21676	s            *APIService
21677	merchantId   uint64
21678	accountId    uint64
21679	urlParams_   gensupport.URLParams
21680	ifNoneMatch_ string
21681	ctx_         context.Context
21682	header_      http.Header
21683}
21684
21685// Get: Retrieves the tax settings of the account.
21686//
21687// - accountId: The ID of the account for which to get/update account
21688//   tax settings.
21689// - merchantId: The ID of the managing account. If this parameter is
21690//   not the same as accountId, then this account must be a multi-client
21691//   account and `accountId` must be the ID of a sub-account of this
21692//   account.
21693func (r *AccounttaxService) Get(merchantId uint64, accountId uint64) *AccounttaxGetCall {
21694	c := &AccounttaxGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21695	c.merchantId = merchantId
21696	c.accountId = accountId
21697	return c
21698}
21699
21700// Fields allows partial responses to be retrieved. See
21701// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21702// for more information.
21703func (c *AccounttaxGetCall) Fields(s ...googleapi.Field) *AccounttaxGetCall {
21704	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21705	return c
21706}
21707
21708// IfNoneMatch sets the optional parameter which makes the operation
21709// fail if the object's ETag matches the given value. This is useful for
21710// getting updates only after the object has changed since the last
21711// request. Use googleapi.IsNotModified to check whether the response
21712// error from Do is the result of In-None-Match.
21713func (c *AccounttaxGetCall) IfNoneMatch(entityTag string) *AccounttaxGetCall {
21714	c.ifNoneMatch_ = entityTag
21715	return c
21716}
21717
21718// Context sets the context to be used in this call's Do method. Any
21719// pending HTTP request will be aborted if the provided context is
21720// canceled.
21721func (c *AccounttaxGetCall) Context(ctx context.Context) *AccounttaxGetCall {
21722	c.ctx_ = ctx
21723	return c
21724}
21725
21726// Header returns an http.Header that can be modified by the caller to
21727// add HTTP headers to the request.
21728func (c *AccounttaxGetCall) Header() http.Header {
21729	if c.header_ == nil {
21730		c.header_ = make(http.Header)
21731	}
21732	return c.header_
21733}
21734
21735func (c *AccounttaxGetCall) doRequest(alt string) (*http.Response, error) {
21736	reqHeaders := make(http.Header)
21737	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
21738	for k, v := range c.header_ {
21739		reqHeaders[k] = v
21740	}
21741	reqHeaders.Set("User-Agent", c.s.userAgent())
21742	if c.ifNoneMatch_ != "" {
21743		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
21744	}
21745	var body io.Reader = nil
21746	c.urlParams_.Set("alt", alt)
21747	c.urlParams_.Set("prettyPrint", "false")
21748	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounttax/{accountId}")
21749	urls += "?" + c.urlParams_.Encode()
21750	req, err := http.NewRequest("GET", urls, body)
21751	if err != nil {
21752		return nil, err
21753	}
21754	req.Header = reqHeaders
21755	googleapi.Expand(req.URL, map[string]string{
21756		"merchantId": strconv.FormatUint(c.merchantId, 10),
21757		"accountId":  strconv.FormatUint(c.accountId, 10),
21758	})
21759	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21760}
21761
21762// Do executes the "content.accounttax.get" call.
21763// Exactly one of *AccountTax or error will be non-nil. Any non-2xx
21764// status code is an error. Response headers are in either
21765// *AccountTax.ServerResponse.Header or (if a response was returned at
21766// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
21767// to check whether the returned error was because
21768// http.StatusNotModified was returned.
21769func (c *AccounttaxGetCall) Do(opts ...googleapi.CallOption) (*AccountTax, error) {
21770	gensupport.SetOptions(c.urlParams_, opts...)
21771	res, err := c.doRequest("json")
21772	if res != nil && res.StatusCode == http.StatusNotModified {
21773		if res.Body != nil {
21774			res.Body.Close()
21775		}
21776		return nil, &googleapi.Error{
21777			Code:   res.StatusCode,
21778			Header: res.Header,
21779		}
21780	}
21781	if err != nil {
21782		return nil, err
21783	}
21784	defer googleapi.CloseBody(res)
21785	if err := googleapi.CheckResponse(res); err != nil {
21786		return nil, err
21787	}
21788	ret := &AccountTax{
21789		ServerResponse: googleapi.ServerResponse{
21790			Header:         res.Header,
21791			HTTPStatusCode: res.StatusCode,
21792		},
21793	}
21794	target := &ret
21795	if err := gensupport.DecodeResponse(target, res); err != nil {
21796		return nil, err
21797	}
21798	return ret, nil
21799	// {
21800	//   "description": "Retrieves the tax settings of the account.",
21801	//   "flatPath": "{merchantId}/accounttax/{accountId}",
21802	//   "httpMethod": "GET",
21803	//   "id": "content.accounttax.get",
21804	//   "parameterOrder": [
21805	//     "merchantId",
21806	//     "accountId"
21807	//   ],
21808	//   "parameters": {
21809	//     "accountId": {
21810	//       "description": "The ID of the account for which to get/update account tax settings.",
21811	//       "format": "uint64",
21812	//       "location": "path",
21813	//       "required": true,
21814	//       "type": "string"
21815	//     },
21816	//     "merchantId": {
21817	//       "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.",
21818	//       "format": "uint64",
21819	//       "location": "path",
21820	//       "required": true,
21821	//       "type": "string"
21822	//     }
21823	//   },
21824	//   "path": "{merchantId}/accounttax/{accountId}",
21825	//   "response": {
21826	//     "$ref": "AccountTax"
21827	//   },
21828	//   "scopes": [
21829	//     "https://www.googleapis.com/auth/content"
21830	//   ]
21831	// }
21832
21833}
21834
21835// method id "content.accounttax.list":
21836
21837type AccounttaxListCall struct {
21838	s            *APIService
21839	merchantId   uint64
21840	urlParams_   gensupport.URLParams
21841	ifNoneMatch_ string
21842	ctx_         context.Context
21843	header_      http.Header
21844}
21845
21846// List: Lists the tax settings of the sub-accounts in your Merchant
21847// Center account.
21848//
21849// - merchantId: The ID of the managing account. This must be a
21850//   multi-client account.
21851func (r *AccounttaxService) List(merchantId uint64) *AccounttaxListCall {
21852	c := &AccounttaxListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21853	c.merchantId = merchantId
21854	return c
21855}
21856
21857// MaxResults sets the optional parameter "maxResults": The maximum
21858// number of tax settings to return in the response, used for paging.
21859func (c *AccounttaxListCall) MaxResults(maxResults int64) *AccounttaxListCall {
21860	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
21861	return c
21862}
21863
21864// PageToken sets the optional parameter "pageToken": The token returned
21865// by the previous request.
21866func (c *AccounttaxListCall) PageToken(pageToken string) *AccounttaxListCall {
21867	c.urlParams_.Set("pageToken", pageToken)
21868	return c
21869}
21870
21871// Fields allows partial responses to be retrieved. See
21872// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21873// for more information.
21874func (c *AccounttaxListCall) Fields(s ...googleapi.Field) *AccounttaxListCall {
21875	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21876	return c
21877}
21878
21879// IfNoneMatch sets the optional parameter which makes the operation
21880// fail if the object's ETag matches the given value. This is useful for
21881// getting updates only after the object has changed since the last
21882// request. Use googleapi.IsNotModified to check whether the response
21883// error from Do is the result of In-None-Match.
21884func (c *AccounttaxListCall) IfNoneMatch(entityTag string) *AccounttaxListCall {
21885	c.ifNoneMatch_ = entityTag
21886	return c
21887}
21888
21889// Context sets the context to be used in this call's Do method. Any
21890// pending HTTP request will be aborted if the provided context is
21891// canceled.
21892func (c *AccounttaxListCall) Context(ctx context.Context) *AccounttaxListCall {
21893	c.ctx_ = ctx
21894	return c
21895}
21896
21897// Header returns an http.Header that can be modified by the caller to
21898// add HTTP headers to the request.
21899func (c *AccounttaxListCall) Header() http.Header {
21900	if c.header_ == nil {
21901		c.header_ = make(http.Header)
21902	}
21903	return c.header_
21904}
21905
21906func (c *AccounttaxListCall) doRequest(alt string) (*http.Response, error) {
21907	reqHeaders := make(http.Header)
21908	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
21909	for k, v := range c.header_ {
21910		reqHeaders[k] = v
21911	}
21912	reqHeaders.Set("User-Agent", c.s.userAgent())
21913	if c.ifNoneMatch_ != "" {
21914		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
21915	}
21916	var body io.Reader = nil
21917	c.urlParams_.Set("alt", alt)
21918	c.urlParams_.Set("prettyPrint", "false")
21919	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounttax")
21920	urls += "?" + c.urlParams_.Encode()
21921	req, err := http.NewRequest("GET", urls, body)
21922	if err != nil {
21923		return nil, err
21924	}
21925	req.Header = reqHeaders
21926	googleapi.Expand(req.URL, map[string]string{
21927		"merchantId": strconv.FormatUint(c.merchantId, 10),
21928	})
21929	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21930}
21931
21932// Do executes the "content.accounttax.list" call.
21933// Exactly one of *AccounttaxListResponse or error will be non-nil. Any
21934// non-2xx status code is an error. Response headers are in either
21935// *AccounttaxListResponse.ServerResponse.Header or (if a response was
21936// returned at all) in error.(*googleapi.Error).Header. Use
21937// googleapi.IsNotModified to check whether the returned error was
21938// because http.StatusNotModified was returned.
21939func (c *AccounttaxListCall) Do(opts ...googleapi.CallOption) (*AccounttaxListResponse, error) {
21940	gensupport.SetOptions(c.urlParams_, opts...)
21941	res, err := c.doRequest("json")
21942	if res != nil && res.StatusCode == http.StatusNotModified {
21943		if res.Body != nil {
21944			res.Body.Close()
21945		}
21946		return nil, &googleapi.Error{
21947			Code:   res.StatusCode,
21948			Header: res.Header,
21949		}
21950	}
21951	if err != nil {
21952		return nil, err
21953	}
21954	defer googleapi.CloseBody(res)
21955	if err := googleapi.CheckResponse(res); err != nil {
21956		return nil, err
21957	}
21958	ret := &AccounttaxListResponse{
21959		ServerResponse: googleapi.ServerResponse{
21960			Header:         res.Header,
21961			HTTPStatusCode: res.StatusCode,
21962		},
21963	}
21964	target := &ret
21965	if err := gensupport.DecodeResponse(target, res); err != nil {
21966		return nil, err
21967	}
21968	return ret, nil
21969	// {
21970	//   "description": "Lists the tax settings of the sub-accounts in your Merchant Center account.",
21971	//   "flatPath": "{merchantId}/accounttax",
21972	//   "httpMethod": "GET",
21973	//   "id": "content.accounttax.list",
21974	//   "parameterOrder": [
21975	//     "merchantId"
21976	//   ],
21977	//   "parameters": {
21978	//     "maxResults": {
21979	//       "description": "The maximum number of tax settings to return in the response, used for paging.",
21980	//       "format": "uint32",
21981	//       "location": "query",
21982	//       "type": "integer"
21983	//     },
21984	//     "merchantId": {
21985	//       "description": "The ID of the managing account. This must be a multi-client account.",
21986	//       "format": "uint64",
21987	//       "location": "path",
21988	//       "required": true,
21989	//       "type": "string"
21990	//     },
21991	//     "pageToken": {
21992	//       "description": "The token returned by the previous request.",
21993	//       "location": "query",
21994	//       "type": "string"
21995	//     }
21996	//   },
21997	//   "path": "{merchantId}/accounttax",
21998	//   "response": {
21999	//     "$ref": "AccounttaxListResponse"
22000	//   },
22001	//   "scopes": [
22002	//     "https://www.googleapis.com/auth/content"
22003	//   ]
22004	// }
22005
22006}
22007
22008// Pages invokes f for each page of results.
22009// A non-nil error returned from f will halt the iteration.
22010// The provided context supersedes any context provided to the Context method.
22011func (c *AccounttaxListCall) Pages(ctx context.Context, f func(*AccounttaxListResponse) error) error {
22012	c.ctx_ = ctx
22013	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
22014	for {
22015		x, err := c.Do()
22016		if err != nil {
22017			return err
22018		}
22019		if err := f(x); err != nil {
22020			return err
22021		}
22022		if x.NextPageToken == "" {
22023			return nil
22024		}
22025		c.PageToken(x.NextPageToken)
22026	}
22027}
22028
22029// method id "content.accounttax.update":
22030
22031type AccounttaxUpdateCall struct {
22032	s          *APIService
22033	merchantId uint64
22034	accountId  uint64
22035	accounttax *AccountTax
22036	urlParams_ gensupport.URLParams
22037	ctx_       context.Context
22038	header_    http.Header
22039}
22040
22041// Update: Updates the tax settings of the account. Any fields that are
22042// not provided are deleted from the resource.
22043//
22044// - accountId: The ID of the account for which to get/update account
22045//   tax settings.
22046// - merchantId: The ID of the managing account. If this parameter is
22047//   not the same as accountId, then this account must be a multi-client
22048//   account and `accountId` must be the ID of a sub-account of this
22049//   account.
22050func (r *AccounttaxService) Update(merchantId uint64, accountId uint64, accounttax *AccountTax) *AccounttaxUpdateCall {
22051	c := &AccounttaxUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22052	c.merchantId = merchantId
22053	c.accountId = accountId
22054	c.accounttax = accounttax
22055	return c
22056}
22057
22058// Fields allows partial responses to be retrieved. See
22059// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22060// for more information.
22061func (c *AccounttaxUpdateCall) Fields(s ...googleapi.Field) *AccounttaxUpdateCall {
22062	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22063	return c
22064}
22065
22066// Context sets the context to be used in this call's Do method. Any
22067// pending HTTP request will be aborted if the provided context is
22068// canceled.
22069func (c *AccounttaxUpdateCall) Context(ctx context.Context) *AccounttaxUpdateCall {
22070	c.ctx_ = ctx
22071	return c
22072}
22073
22074// Header returns an http.Header that can be modified by the caller to
22075// add HTTP headers to the request.
22076func (c *AccounttaxUpdateCall) Header() http.Header {
22077	if c.header_ == nil {
22078		c.header_ = make(http.Header)
22079	}
22080	return c.header_
22081}
22082
22083func (c *AccounttaxUpdateCall) doRequest(alt string) (*http.Response, error) {
22084	reqHeaders := make(http.Header)
22085	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
22086	for k, v := range c.header_ {
22087		reqHeaders[k] = v
22088	}
22089	reqHeaders.Set("User-Agent", c.s.userAgent())
22090	var body io.Reader = nil
22091	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accounttax)
22092	if err != nil {
22093		return nil, err
22094	}
22095	reqHeaders.Set("Content-Type", "application/json")
22096	c.urlParams_.Set("alt", alt)
22097	c.urlParams_.Set("prettyPrint", "false")
22098	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounttax/{accountId}")
22099	urls += "?" + c.urlParams_.Encode()
22100	req, err := http.NewRequest("PUT", urls, body)
22101	if err != nil {
22102		return nil, err
22103	}
22104	req.Header = reqHeaders
22105	googleapi.Expand(req.URL, map[string]string{
22106		"merchantId": strconv.FormatUint(c.merchantId, 10),
22107		"accountId":  strconv.FormatUint(c.accountId, 10),
22108	})
22109	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22110}
22111
22112// Do executes the "content.accounttax.update" call.
22113// Exactly one of *AccountTax or error will be non-nil. Any non-2xx
22114// status code is an error. Response headers are in either
22115// *AccountTax.ServerResponse.Header or (if a response was returned at
22116// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
22117// to check whether the returned error was because
22118// http.StatusNotModified was returned.
22119func (c *AccounttaxUpdateCall) Do(opts ...googleapi.CallOption) (*AccountTax, error) {
22120	gensupport.SetOptions(c.urlParams_, opts...)
22121	res, err := c.doRequest("json")
22122	if res != nil && res.StatusCode == http.StatusNotModified {
22123		if res.Body != nil {
22124			res.Body.Close()
22125		}
22126		return nil, &googleapi.Error{
22127			Code:   res.StatusCode,
22128			Header: res.Header,
22129		}
22130	}
22131	if err != nil {
22132		return nil, err
22133	}
22134	defer googleapi.CloseBody(res)
22135	if err := googleapi.CheckResponse(res); err != nil {
22136		return nil, err
22137	}
22138	ret := &AccountTax{
22139		ServerResponse: googleapi.ServerResponse{
22140			Header:         res.Header,
22141			HTTPStatusCode: res.StatusCode,
22142		},
22143	}
22144	target := &ret
22145	if err := gensupport.DecodeResponse(target, res); err != nil {
22146		return nil, err
22147	}
22148	return ret, nil
22149	// {
22150	//   "description": "Updates the tax settings of the account. Any fields that are not provided are deleted from the resource.",
22151	//   "flatPath": "{merchantId}/accounttax/{accountId}",
22152	//   "httpMethod": "PUT",
22153	//   "id": "content.accounttax.update",
22154	//   "parameterOrder": [
22155	//     "merchantId",
22156	//     "accountId"
22157	//   ],
22158	//   "parameters": {
22159	//     "accountId": {
22160	//       "description": "The ID of the account for which to get/update account tax settings.",
22161	//       "format": "uint64",
22162	//       "location": "path",
22163	//       "required": true,
22164	//       "type": "string"
22165	//     },
22166	//     "merchantId": {
22167	//       "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.",
22168	//       "format": "uint64",
22169	//       "location": "path",
22170	//       "required": true,
22171	//       "type": "string"
22172	//     }
22173	//   },
22174	//   "path": "{merchantId}/accounttax/{accountId}",
22175	//   "request": {
22176	//     "$ref": "AccountTax"
22177	//   },
22178	//   "response": {
22179	//     "$ref": "AccountTax"
22180	//   },
22181	//   "scopes": [
22182	//     "https://www.googleapis.com/auth/content"
22183	//   ]
22184	// }
22185
22186}
22187
22188// method id "content.buyongoogleprograms.activate":
22189
22190type BuyongoogleprogramsActivateCall struct {
22191	s                                 *APIService
22192	merchantId                        int64
22193	regionCode                        string
22194	activatebuyongoogleprogramrequest *ActivateBuyOnGoogleProgramRequest
22195	urlParams_                        gensupport.URLParams
22196	ctx_                              context.Context
22197	header_                           http.Header
22198}
22199
22200// Activate: Reactivates the BoG program in your Merchant Center
22201// account. Moves the program to the active state when allowed, e.g.
22202// when paused. Important: This method is only whitelisted for selected
22203// merchants.
22204//
22205// - merchantId: The ID of the account.
22206// - regionCode: The program region code ISO 3166-1 alpha-2
22207//   (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). Currently only
22208//   US is available.
22209func (r *BuyongoogleprogramsService) Activate(merchantId int64, regionCode string, activatebuyongoogleprogramrequest *ActivateBuyOnGoogleProgramRequest) *BuyongoogleprogramsActivateCall {
22210	c := &BuyongoogleprogramsActivateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22211	c.merchantId = merchantId
22212	c.regionCode = regionCode
22213	c.activatebuyongoogleprogramrequest = activatebuyongoogleprogramrequest
22214	return c
22215}
22216
22217// Fields allows partial responses to be retrieved. See
22218// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22219// for more information.
22220func (c *BuyongoogleprogramsActivateCall) Fields(s ...googleapi.Field) *BuyongoogleprogramsActivateCall {
22221	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22222	return c
22223}
22224
22225// Context sets the context to be used in this call's Do method. Any
22226// pending HTTP request will be aborted if the provided context is
22227// canceled.
22228func (c *BuyongoogleprogramsActivateCall) Context(ctx context.Context) *BuyongoogleprogramsActivateCall {
22229	c.ctx_ = ctx
22230	return c
22231}
22232
22233// Header returns an http.Header that can be modified by the caller to
22234// add HTTP headers to the request.
22235func (c *BuyongoogleprogramsActivateCall) Header() http.Header {
22236	if c.header_ == nil {
22237		c.header_ = make(http.Header)
22238	}
22239	return c.header_
22240}
22241
22242func (c *BuyongoogleprogramsActivateCall) doRequest(alt string) (*http.Response, error) {
22243	reqHeaders := make(http.Header)
22244	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
22245	for k, v := range c.header_ {
22246		reqHeaders[k] = v
22247	}
22248	reqHeaders.Set("User-Agent", c.s.userAgent())
22249	var body io.Reader = nil
22250	body, err := googleapi.WithoutDataWrapper.JSONReader(c.activatebuyongoogleprogramrequest)
22251	if err != nil {
22252		return nil, err
22253	}
22254	reqHeaders.Set("Content-Type", "application/json")
22255	c.urlParams_.Set("alt", alt)
22256	c.urlParams_.Set("prettyPrint", "false")
22257	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/buyongoogleprograms/{regionCode}/activate")
22258	urls += "?" + c.urlParams_.Encode()
22259	req, err := http.NewRequest("POST", urls, body)
22260	if err != nil {
22261		return nil, err
22262	}
22263	req.Header = reqHeaders
22264	googleapi.Expand(req.URL, map[string]string{
22265		"merchantId": strconv.FormatInt(c.merchantId, 10),
22266		"regionCode": c.regionCode,
22267	})
22268	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22269}
22270
22271// Do executes the "content.buyongoogleprograms.activate" call.
22272func (c *BuyongoogleprogramsActivateCall) Do(opts ...googleapi.CallOption) error {
22273	gensupport.SetOptions(c.urlParams_, opts...)
22274	res, err := c.doRequest("json")
22275	if err != nil {
22276		return err
22277	}
22278	defer googleapi.CloseBody(res)
22279	if err := googleapi.CheckResponse(res); err != nil {
22280		return err
22281	}
22282	return nil
22283	// {
22284	//   "description": "Reactivates the BoG program in your Merchant Center account. Moves the program to the active state when allowed, e.g. when paused. Important: This method is only whitelisted for selected merchants.",
22285	//   "flatPath": "{merchantId}/buyongoogleprograms/{regionCode}/activate",
22286	//   "httpMethod": "POST",
22287	//   "id": "content.buyongoogleprograms.activate",
22288	//   "parameterOrder": [
22289	//     "merchantId",
22290	//     "regionCode"
22291	//   ],
22292	//   "parameters": {
22293	//     "merchantId": {
22294	//       "description": "Required. The ID of the account.",
22295	//       "format": "int64",
22296	//       "location": "path",
22297	//       "required": true,
22298	//       "type": "string"
22299	//     },
22300	//     "regionCode": {
22301	//       "description": "Required. The program region code [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). Currently only US is available.",
22302	//       "location": "path",
22303	//       "required": true,
22304	//       "type": "string"
22305	//     }
22306	//   },
22307	//   "path": "{merchantId}/buyongoogleprograms/{regionCode}/activate",
22308	//   "request": {
22309	//     "$ref": "ActivateBuyOnGoogleProgramRequest"
22310	//   },
22311	//   "scopes": [
22312	//     "https://www.googleapis.com/auth/content"
22313	//   ]
22314	// }
22315
22316}
22317
22318// method id "content.buyongoogleprograms.get":
22319
22320type BuyongoogleprogramsGetCall struct {
22321	s            *APIService
22322	merchantId   int64
22323	regionCode   string
22324	urlParams_   gensupport.URLParams
22325	ifNoneMatch_ string
22326	ctx_         context.Context
22327	header_      http.Header
22328}
22329
22330// Get: Retrieves a status of the BoG program for your Merchant Center
22331// account.
22332//
22333// - merchantId: The ID of the account.
22334// - regionCode: The Program region code ISO 3166-1 alpha-2
22335//   (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). Currently only
22336//   US is available.
22337func (r *BuyongoogleprogramsService) Get(merchantId int64, regionCode string) *BuyongoogleprogramsGetCall {
22338	c := &BuyongoogleprogramsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22339	c.merchantId = merchantId
22340	c.regionCode = regionCode
22341	return c
22342}
22343
22344// Fields allows partial responses to be retrieved. See
22345// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22346// for more information.
22347func (c *BuyongoogleprogramsGetCall) Fields(s ...googleapi.Field) *BuyongoogleprogramsGetCall {
22348	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22349	return c
22350}
22351
22352// IfNoneMatch sets the optional parameter which makes the operation
22353// fail if the object's ETag matches the given value. This is useful for
22354// getting updates only after the object has changed since the last
22355// request. Use googleapi.IsNotModified to check whether the response
22356// error from Do is the result of In-None-Match.
22357func (c *BuyongoogleprogramsGetCall) IfNoneMatch(entityTag string) *BuyongoogleprogramsGetCall {
22358	c.ifNoneMatch_ = entityTag
22359	return c
22360}
22361
22362// Context sets the context to be used in this call's Do method. Any
22363// pending HTTP request will be aborted if the provided context is
22364// canceled.
22365func (c *BuyongoogleprogramsGetCall) Context(ctx context.Context) *BuyongoogleprogramsGetCall {
22366	c.ctx_ = ctx
22367	return c
22368}
22369
22370// Header returns an http.Header that can be modified by the caller to
22371// add HTTP headers to the request.
22372func (c *BuyongoogleprogramsGetCall) Header() http.Header {
22373	if c.header_ == nil {
22374		c.header_ = make(http.Header)
22375	}
22376	return c.header_
22377}
22378
22379func (c *BuyongoogleprogramsGetCall) doRequest(alt string) (*http.Response, error) {
22380	reqHeaders := make(http.Header)
22381	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
22382	for k, v := range c.header_ {
22383		reqHeaders[k] = v
22384	}
22385	reqHeaders.Set("User-Agent", c.s.userAgent())
22386	if c.ifNoneMatch_ != "" {
22387		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
22388	}
22389	var body io.Reader = nil
22390	c.urlParams_.Set("alt", alt)
22391	c.urlParams_.Set("prettyPrint", "false")
22392	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/buyongoogleprograms/{regionCode}")
22393	urls += "?" + c.urlParams_.Encode()
22394	req, err := http.NewRequest("GET", urls, body)
22395	if err != nil {
22396		return nil, err
22397	}
22398	req.Header = reqHeaders
22399	googleapi.Expand(req.URL, map[string]string{
22400		"merchantId": strconv.FormatInt(c.merchantId, 10),
22401		"regionCode": c.regionCode,
22402	})
22403	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22404}
22405
22406// Do executes the "content.buyongoogleprograms.get" call.
22407// Exactly one of *BuyOnGoogleProgramStatus or error will be non-nil.
22408// Any non-2xx status code is an error. Response headers are in either
22409// *BuyOnGoogleProgramStatus.ServerResponse.Header or (if a response was
22410// returned at all) in error.(*googleapi.Error).Header. Use
22411// googleapi.IsNotModified to check whether the returned error was
22412// because http.StatusNotModified was returned.
22413func (c *BuyongoogleprogramsGetCall) Do(opts ...googleapi.CallOption) (*BuyOnGoogleProgramStatus, error) {
22414	gensupport.SetOptions(c.urlParams_, opts...)
22415	res, err := c.doRequest("json")
22416	if res != nil && res.StatusCode == http.StatusNotModified {
22417		if res.Body != nil {
22418			res.Body.Close()
22419		}
22420		return nil, &googleapi.Error{
22421			Code:   res.StatusCode,
22422			Header: res.Header,
22423		}
22424	}
22425	if err != nil {
22426		return nil, err
22427	}
22428	defer googleapi.CloseBody(res)
22429	if err := googleapi.CheckResponse(res); err != nil {
22430		return nil, err
22431	}
22432	ret := &BuyOnGoogleProgramStatus{
22433		ServerResponse: googleapi.ServerResponse{
22434			Header:         res.Header,
22435			HTTPStatusCode: res.StatusCode,
22436		},
22437	}
22438	target := &ret
22439	if err := gensupport.DecodeResponse(target, res); err != nil {
22440		return nil, err
22441	}
22442	return ret, nil
22443	// {
22444	//   "description": "Retrieves a status of the BoG program for your Merchant Center account.",
22445	//   "flatPath": "{merchantId}/buyongoogleprograms/{regionCode}",
22446	//   "httpMethod": "GET",
22447	//   "id": "content.buyongoogleprograms.get",
22448	//   "parameterOrder": [
22449	//     "merchantId",
22450	//     "regionCode"
22451	//   ],
22452	//   "parameters": {
22453	//     "merchantId": {
22454	//       "description": "Required. The ID of the account.",
22455	//       "format": "int64",
22456	//       "location": "path",
22457	//       "required": true,
22458	//       "type": "string"
22459	//     },
22460	//     "regionCode": {
22461	//       "description": "Required. The Program region code [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). Currently only US is available.",
22462	//       "location": "path",
22463	//       "required": true,
22464	//       "type": "string"
22465	//     }
22466	//   },
22467	//   "path": "{merchantId}/buyongoogleprograms/{regionCode}",
22468	//   "response": {
22469	//     "$ref": "BuyOnGoogleProgramStatus"
22470	//   },
22471	//   "scopes": [
22472	//     "https://www.googleapis.com/auth/content"
22473	//   ]
22474	// }
22475
22476}
22477
22478// method id "content.buyongoogleprograms.onboard":
22479
22480type BuyongoogleprogramsOnboardCall struct {
22481	s                                *APIService
22482	merchantId                       int64
22483	regionCode                       string
22484	onboardbuyongoogleprogramrequest *OnboardBuyOnGoogleProgramRequest
22485	urlParams_                       gensupport.URLParams
22486	ctx_                             context.Context
22487	header_                          http.Header
22488}
22489
22490// Onboard: Onboards the BoG program in your Merchant Center account. By
22491// using this method, you agree to the Terms of Service
22492// (https://merchants.google.com/mc/termsofservice/transactions/US/latest).
22493// Calling this method is only possible if the authenticated account is
22494// the same as the merchant id in the request. Calling this method
22495// multiple times will only accept Terms of Service if the latest
22496// version is not currently signed.
22497//
22498// - merchantId: The ID of the account.
22499// - regionCode: The program region code ISO 3166-1 alpha-2
22500//   (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). Currently only
22501//   US is available.
22502func (r *BuyongoogleprogramsService) Onboard(merchantId int64, regionCode string, onboardbuyongoogleprogramrequest *OnboardBuyOnGoogleProgramRequest) *BuyongoogleprogramsOnboardCall {
22503	c := &BuyongoogleprogramsOnboardCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22504	c.merchantId = merchantId
22505	c.regionCode = regionCode
22506	c.onboardbuyongoogleprogramrequest = onboardbuyongoogleprogramrequest
22507	return c
22508}
22509
22510// Fields allows partial responses to be retrieved. See
22511// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22512// for more information.
22513func (c *BuyongoogleprogramsOnboardCall) Fields(s ...googleapi.Field) *BuyongoogleprogramsOnboardCall {
22514	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22515	return c
22516}
22517
22518// Context sets the context to be used in this call's Do method. Any
22519// pending HTTP request will be aborted if the provided context is
22520// canceled.
22521func (c *BuyongoogleprogramsOnboardCall) Context(ctx context.Context) *BuyongoogleprogramsOnboardCall {
22522	c.ctx_ = ctx
22523	return c
22524}
22525
22526// Header returns an http.Header that can be modified by the caller to
22527// add HTTP headers to the request.
22528func (c *BuyongoogleprogramsOnboardCall) Header() http.Header {
22529	if c.header_ == nil {
22530		c.header_ = make(http.Header)
22531	}
22532	return c.header_
22533}
22534
22535func (c *BuyongoogleprogramsOnboardCall) doRequest(alt string) (*http.Response, error) {
22536	reqHeaders := make(http.Header)
22537	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
22538	for k, v := range c.header_ {
22539		reqHeaders[k] = v
22540	}
22541	reqHeaders.Set("User-Agent", c.s.userAgent())
22542	var body io.Reader = nil
22543	body, err := googleapi.WithoutDataWrapper.JSONReader(c.onboardbuyongoogleprogramrequest)
22544	if err != nil {
22545		return nil, err
22546	}
22547	reqHeaders.Set("Content-Type", "application/json")
22548	c.urlParams_.Set("alt", alt)
22549	c.urlParams_.Set("prettyPrint", "false")
22550	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/buyongoogleprograms/{regionCode}/onboard")
22551	urls += "?" + c.urlParams_.Encode()
22552	req, err := http.NewRequest("POST", urls, body)
22553	if err != nil {
22554		return nil, err
22555	}
22556	req.Header = reqHeaders
22557	googleapi.Expand(req.URL, map[string]string{
22558		"merchantId": strconv.FormatInt(c.merchantId, 10),
22559		"regionCode": c.regionCode,
22560	})
22561	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22562}
22563
22564// Do executes the "content.buyongoogleprograms.onboard" call.
22565func (c *BuyongoogleprogramsOnboardCall) Do(opts ...googleapi.CallOption) error {
22566	gensupport.SetOptions(c.urlParams_, opts...)
22567	res, err := c.doRequest("json")
22568	if err != nil {
22569		return err
22570	}
22571	defer googleapi.CloseBody(res)
22572	if err := googleapi.CheckResponse(res); err != nil {
22573		return err
22574	}
22575	return nil
22576	// {
22577	//   "description": "Onboards the BoG program in your Merchant Center account. By using this method, you agree to the [Terms of Service](https://merchants.google.com/mc/termsofservice/transactions/US/latest). Calling this method is only possible if the authenticated account is the same as the merchant id in the request. Calling this method multiple times will only accept Terms of Service if the latest version is not currently signed.",
22578	//   "flatPath": "{merchantId}/buyongoogleprograms/{regionCode}/onboard",
22579	//   "httpMethod": "POST",
22580	//   "id": "content.buyongoogleprograms.onboard",
22581	//   "parameterOrder": [
22582	//     "merchantId",
22583	//     "regionCode"
22584	//   ],
22585	//   "parameters": {
22586	//     "merchantId": {
22587	//       "description": "Required. The ID of the account.",
22588	//       "format": "int64",
22589	//       "location": "path",
22590	//       "required": true,
22591	//       "type": "string"
22592	//     },
22593	//     "regionCode": {
22594	//       "description": "Required. The program region code [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). Currently only US is available.",
22595	//       "location": "path",
22596	//       "required": true,
22597	//       "type": "string"
22598	//     }
22599	//   },
22600	//   "path": "{merchantId}/buyongoogleprograms/{regionCode}/onboard",
22601	//   "request": {
22602	//     "$ref": "OnboardBuyOnGoogleProgramRequest"
22603	//   },
22604	//   "scopes": [
22605	//     "https://www.googleapis.com/auth/content"
22606	//   ]
22607	// }
22608
22609}
22610
22611// method id "content.buyongoogleprograms.patch":
22612
22613type BuyongoogleprogramsPatchCall struct {
22614	s                        *APIService
22615	merchantId               int64
22616	regionCode               string
22617	buyongoogleprogramstatus *BuyOnGoogleProgramStatus
22618	urlParams_               gensupport.URLParams
22619	ctx_                     context.Context
22620	header_                  http.Header
22621}
22622
22623// Patch: Updates the status of the BoG program for your Merchant Center
22624// account.
22625//
22626// - merchantId: The ID of the account.
22627// - regionCode: The program region code ISO 3166-1 alpha-2
22628//   (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). Currently only
22629//   US is available.
22630func (r *BuyongoogleprogramsService) Patch(merchantId int64, regionCode string, buyongoogleprogramstatus *BuyOnGoogleProgramStatus) *BuyongoogleprogramsPatchCall {
22631	c := &BuyongoogleprogramsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22632	c.merchantId = merchantId
22633	c.regionCode = regionCode
22634	c.buyongoogleprogramstatus = buyongoogleprogramstatus
22635	return c
22636}
22637
22638// UpdateMask sets the optional parameter "updateMask": The list of
22639// fields to update. If the update mask is not provided, then all the
22640// fields set in buyOnGoogleProgramStatus will be updated. Clearing
22641// fields is only possible if update mask is provided.
22642func (c *BuyongoogleprogramsPatchCall) UpdateMask(updateMask string) *BuyongoogleprogramsPatchCall {
22643	c.urlParams_.Set("updateMask", updateMask)
22644	return c
22645}
22646
22647// Fields allows partial responses to be retrieved. See
22648// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22649// for more information.
22650func (c *BuyongoogleprogramsPatchCall) Fields(s ...googleapi.Field) *BuyongoogleprogramsPatchCall {
22651	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22652	return c
22653}
22654
22655// Context sets the context to be used in this call's Do method. Any
22656// pending HTTP request will be aborted if the provided context is
22657// canceled.
22658func (c *BuyongoogleprogramsPatchCall) Context(ctx context.Context) *BuyongoogleprogramsPatchCall {
22659	c.ctx_ = ctx
22660	return c
22661}
22662
22663// Header returns an http.Header that can be modified by the caller to
22664// add HTTP headers to the request.
22665func (c *BuyongoogleprogramsPatchCall) Header() http.Header {
22666	if c.header_ == nil {
22667		c.header_ = make(http.Header)
22668	}
22669	return c.header_
22670}
22671
22672func (c *BuyongoogleprogramsPatchCall) doRequest(alt string) (*http.Response, error) {
22673	reqHeaders := make(http.Header)
22674	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
22675	for k, v := range c.header_ {
22676		reqHeaders[k] = v
22677	}
22678	reqHeaders.Set("User-Agent", c.s.userAgent())
22679	var body io.Reader = nil
22680	body, err := googleapi.WithoutDataWrapper.JSONReader(c.buyongoogleprogramstatus)
22681	if err != nil {
22682		return nil, err
22683	}
22684	reqHeaders.Set("Content-Type", "application/json")
22685	c.urlParams_.Set("alt", alt)
22686	c.urlParams_.Set("prettyPrint", "false")
22687	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/buyongoogleprograms/{regionCode}")
22688	urls += "?" + c.urlParams_.Encode()
22689	req, err := http.NewRequest("PATCH", urls, body)
22690	if err != nil {
22691		return nil, err
22692	}
22693	req.Header = reqHeaders
22694	googleapi.Expand(req.URL, map[string]string{
22695		"merchantId": strconv.FormatInt(c.merchantId, 10),
22696		"regionCode": c.regionCode,
22697	})
22698	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22699}
22700
22701// Do executes the "content.buyongoogleprograms.patch" call.
22702// Exactly one of *BuyOnGoogleProgramStatus or error will be non-nil.
22703// Any non-2xx status code is an error. Response headers are in either
22704// *BuyOnGoogleProgramStatus.ServerResponse.Header or (if a response was
22705// returned at all) in error.(*googleapi.Error).Header. Use
22706// googleapi.IsNotModified to check whether the returned error was
22707// because http.StatusNotModified was returned.
22708func (c *BuyongoogleprogramsPatchCall) Do(opts ...googleapi.CallOption) (*BuyOnGoogleProgramStatus, error) {
22709	gensupport.SetOptions(c.urlParams_, opts...)
22710	res, err := c.doRequest("json")
22711	if res != nil && res.StatusCode == http.StatusNotModified {
22712		if res.Body != nil {
22713			res.Body.Close()
22714		}
22715		return nil, &googleapi.Error{
22716			Code:   res.StatusCode,
22717			Header: res.Header,
22718		}
22719	}
22720	if err != nil {
22721		return nil, err
22722	}
22723	defer googleapi.CloseBody(res)
22724	if err := googleapi.CheckResponse(res); err != nil {
22725		return nil, err
22726	}
22727	ret := &BuyOnGoogleProgramStatus{
22728		ServerResponse: googleapi.ServerResponse{
22729			Header:         res.Header,
22730			HTTPStatusCode: res.StatusCode,
22731		},
22732	}
22733	target := &ret
22734	if err := gensupport.DecodeResponse(target, res); err != nil {
22735		return nil, err
22736	}
22737	return ret, nil
22738	// {
22739	//   "description": "Updates the status of the BoG program for your Merchant Center account.",
22740	//   "flatPath": "{merchantId}/buyongoogleprograms/{regionCode}",
22741	//   "httpMethod": "PATCH",
22742	//   "id": "content.buyongoogleprograms.patch",
22743	//   "parameterOrder": [
22744	//     "merchantId",
22745	//     "regionCode"
22746	//   ],
22747	//   "parameters": {
22748	//     "merchantId": {
22749	//       "description": "Required. The ID of the account.",
22750	//       "format": "int64",
22751	//       "location": "path",
22752	//       "required": true,
22753	//       "type": "string"
22754	//     },
22755	//     "regionCode": {
22756	//       "description": "Required. The program region code [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). Currently only US is available.",
22757	//       "location": "path",
22758	//       "required": true,
22759	//       "type": "string"
22760	//     },
22761	//     "updateMask": {
22762	//       "description": "The list of fields to update. If the update mask is not provided, then all the fields set in buyOnGoogleProgramStatus will be updated. Clearing fields is only possible if update mask is provided.",
22763	//       "format": "google-fieldmask",
22764	//       "location": "query",
22765	//       "type": "string"
22766	//     }
22767	//   },
22768	//   "path": "{merchantId}/buyongoogleprograms/{regionCode}",
22769	//   "request": {
22770	//     "$ref": "BuyOnGoogleProgramStatus"
22771	//   },
22772	//   "response": {
22773	//     "$ref": "BuyOnGoogleProgramStatus"
22774	//   },
22775	//   "scopes": [
22776	//     "https://www.googleapis.com/auth/content"
22777	//   ]
22778	// }
22779
22780}
22781
22782// method id "content.buyongoogleprograms.pause":
22783
22784type BuyongoogleprogramsPauseCall struct {
22785	s                              *APIService
22786	merchantId                     int64
22787	regionCode                     string
22788	pausebuyongoogleprogramrequest *PauseBuyOnGoogleProgramRequest
22789	urlParams_                     gensupport.URLParams
22790	ctx_                           context.Context
22791	header_                        http.Header
22792}
22793
22794// Pause: Pauses the BoG program in your Merchant Center account.
22795// Important: This method is only whitelisted for selected merchants.
22796//
22797// - merchantId: The ID of the account.
22798// - regionCode: The program region code ISO 3166-1 alpha-2
22799//   (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). Currently only
22800//   US is available.
22801func (r *BuyongoogleprogramsService) Pause(merchantId int64, regionCode string, pausebuyongoogleprogramrequest *PauseBuyOnGoogleProgramRequest) *BuyongoogleprogramsPauseCall {
22802	c := &BuyongoogleprogramsPauseCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22803	c.merchantId = merchantId
22804	c.regionCode = regionCode
22805	c.pausebuyongoogleprogramrequest = pausebuyongoogleprogramrequest
22806	return c
22807}
22808
22809// Fields allows partial responses to be retrieved. See
22810// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22811// for more information.
22812func (c *BuyongoogleprogramsPauseCall) Fields(s ...googleapi.Field) *BuyongoogleprogramsPauseCall {
22813	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22814	return c
22815}
22816
22817// Context sets the context to be used in this call's Do method. Any
22818// pending HTTP request will be aborted if the provided context is
22819// canceled.
22820func (c *BuyongoogleprogramsPauseCall) Context(ctx context.Context) *BuyongoogleprogramsPauseCall {
22821	c.ctx_ = ctx
22822	return c
22823}
22824
22825// Header returns an http.Header that can be modified by the caller to
22826// add HTTP headers to the request.
22827func (c *BuyongoogleprogramsPauseCall) Header() http.Header {
22828	if c.header_ == nil {
22829		c.header_ = make(http.Header)
22830	}
22831	return c.header_
22832}
22833
22834func (c *BuyongoogleprogramsPauseCall) doRequest(alt string) (*http.Response, error) {
22835	reqHeaders := make(http.Header)
22836	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
22837	for k, v := range c.header_ {
22838		reqHeaders[k] = v
22839	}
22840	reqHeaders.Set("User-Agent", c.s.userAgent())
22841	var body io.Reader = nil
22842	body, err := googleapi.WithoutDataWrapper.JSONReader(c.pausebuyongoogleprogramrequest)
22843	if err != nil {
22844		return nil, err
22845	}
22846	reqHeaders.Set("Content-Type", "application/json")
22847	c.urlParams_.Set("alt", alt)
22848	c.urlParams_.Set("prettyPrint", "false")
22849	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/buyongoogleprograms/{regionCode}/pause")
22850	urls += "?" + c.urlParams_.Encode()
22851	req, err := http.NewRequest("POST", urls, body)
22852	if err != nil {
22853		return nil, err
22854	}
22855	req.Header = reqHeaders
22856	googleapi.Expand(req.URL, map[string]string{
22857		"merchantId": strconv.FormatInt(c.merchantId, 10),
22858		"regionCode": c.regionCode,
22859	})
22860	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22861}
22862
22863// Do executes the "content.buyongoogleprograms.pause" call.
22864func (c *BuyongoogleprogramsPauseCall) Do(opts ...googleapi.CallOption) error {
22865	gensupport.SetOptions(c.urlParams_, opts...)
22866	res, err := c.doRequest("json")
22867	if err != nil {
22868		return err
22869	}
22870	defer googleapi.CloseBody(res)
22871	if err := googleapi.CheckResponse(res); err != nil {
22872		return err
22873	}
22874	return nil
22875	// {
22876	//   "description": "Pauses the BoG program in your Merchant Center account. Important: This method is only whitelisted for selected merchants.",
22877	//   "flatPath": "{merchantId}/buyongoogleprograms/{regionCode}/pause",
22878	//   "httpMethod": "POST",
22879	//   "id": "content.buyongoogleprograms.pause",
22880	//   "parameterOrder": [
22881	//     "merchantId",
22882	//     "regionCode"
22883	//   ],
22884	//   "parameters": {
22885	//     "merchantId": {
22886	//       "description": "Required. The ID of the account.",
22887	//       "format": "int64",
22888	//       "location": "path",
22889	//       "required": true,
22890	//       "type": "string"
22891	//     },
22892	//     "regionCode": {
22893	//       "description": "Required. The program region code [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). Currently only US is available.",
22894	//       "location": "path",
22895	//       "required": true,
22896	//       "type": "string"
22897	//     }
22898	//   },
22899	//   "path": "{merchantId}/buyongoogleprograms/{regionCode}/pause",
22900	//   "request": {
22901	//     "$ref": "PauseBuyOnGoogleProgramRequest"
22902	//   },
22903	//   "scopes": [
22904	//     "https://www.googleapis.com/auth/content"
22905	//   ]
22906	// }
22907
22908}
22909
22910// method id "content.buyongoogleprograms.requestreview":
22911
22912type BuyongoogleprogramsRequestreviewCall struct {
22913	s                                      *APIService
22914	merchantId                             int64
22915	regionCode                             string
22916	requestreviewbuyongoogleprogramrequest *RequestReviewBuyOnGoogleProgramRequest
22917	urlParams_                             gensupport.URLParams
22918	ctx_                                   context.Context
22919	header_                                http.Header
22920}
22921
22922// Requestreview: Requests review and then activates the BoG program in
22923// your Merchant Center account for the first time. Moves the program to
22924// the REVIEW_PENDING state. Important: This method is only whitelisted
22925// for selected merchants.
22926//
22927// - merchantId: The ID of the account.
22928// - regionCode: The program region code ISO 3166-1 alpha-2
22929//   (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). Currently only
22930//   US is available.
22931func (r *BuyongoogleprogramsService) Requestreview(merchantId int64, regionCode string, requestreviewbuyongoogleprogramrequest *RequestReviewBuyOnGoogleProgramRequest) *BuyongoogleprogramsRequestreviewCall {
22932	c := &BuyongoogleprogramsRequestreviewCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22933	c.merchantId = merchantId
22934	c.regionCode = regionCode
22935	c.requestreviewbuyongoogleprogramrequest = requestreviewbuyongoogleprogramrequest
22936	return c
22937}
22938
22939// Fields allows partial responses to be retrieved. See
22940// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22941// for more information.
22942func (c *BuyongoogleprogramsRequestreviewCall) Fields(s ...googleapi.Field) *BuyongoogleprogramsRequestreviewCall {
22943	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22944	return c
22945}
22946
22947// Context sets the context to be used in this call's Do method. Any
22948// pending HTTP request will be aborted if the provided context is
22949// canceled.
22950func (c *BuyongoogleprogramsRequestreviewCall) Context(ctx context.Context) *BuyongoogleprogramsRequestreviewCall {
22951	c.ctx_ = ctx
22952	return c
22953}
22954
22955// Header returns an http.Header that can be modified by the caller to
22956// add HTTP headers to the request.
22957func (c *BuyongoogleprogramsRequestreviewCall) Header() http.Header {
22958	if c.header_ == nil {
22959		c.header_ = make(http.Header)
22960	}
22961	return c.header_
22962}
22963
22964func (c *BuyongoogleprogramsRequestreviewCall) doRequest(alt string) (*http.Response, error) {
22965	reqHeaders := make(http.Header)
22966	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
22967	for k, v := range c.header_ {
22968		reqHeaders[k] = v
22969	}
22970	reqHeaders.Set("User-Agent", c.s.userAgent())
22971	var body io.Reader = nil
22972	body, err := googleapi.WithoutDataWrapper.JSONReader(c.requestreviewbuyongoogleprogramrequest)
22973	if err != nil {
22974		return nil, err
22975	}
22976	reqHeaders.Set("Content-Type", "application/json")
22977	c.urlParams_.Set("alt", alt)
22978	c.urlParams_.Set("prettyPrint", "false")
22979	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/buyongoogleprograms/{regionCode}/requestreview")
22980	urls += "?" + c.urlParams_.Encode()
22981	req, err := http.NewRequest("POST", urls, body)
22982	if err != nil {
22983		return nil, err
22984	}
22985	req.Header = reqHeaders
22986	googleapi.Expand(req.URL, map[string]string{
22987		"merchantId": strconv.FormatInt(c.merchantId, 10),
22988		"regionCode": c.regionCode,
22989	})
22990	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22991}
22992
22993// Do executes the "content.buyongoogleprograms.requestreview" call.
22994func (c *BuyongoogleprogramsRequestreviewCall) Do(opts ...googleapi.CallOption) error {
22995	gensupport.SetOptions(c.urlParams_, opts...)
22996	res, err := c.doRequest("json")
22997	if err != nil {
22998		return err
22999	}
23000	defer googleapi.CloseBody(res)
23001	if err := googleapi.CheckResponse(res); err != nil {
23002		return err
23003	}
23004	return nil
23005	// {
23006	//   "description": "Requests review and then activates the BoG program in your Merchant Center account for the first time. Moves the program to the REVIEW_PENDING state. Important: This method is only whitelisted for selected merchants.",
23007	//   "flatPath": "{merchantId}/buyongoogleprograms/{regionCode}/requestreview",
23008	//   "httpMethod": "POST",
23009	//   "id": "content.buyongoogleprograms.requestreview",
23010	//   "parameterOrder": [
23011	//     "merchantId",
23012	//     "regionCode"
23013	//   ],
23014	//   "parameters": {
23015	//     "merchantId": {
23016	//       "description": "Required. The ID of the account.",
23017	//       "format": "int64",
23018	//       "location": "path",
23019	//       "required": true,
23020	//       "type": "string"
23021	//     },
23022	//     "regionCode": {
23023	//       "description": "Required. The program region code [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). Currently only US is available.",
23024	//       "location": "path",
23025	//       "required": true,
23026	//       "type": "string"
23027	//     }
23028	//   },
23029	//   "path": "{merchantId}/buyongoogleprograms/{regionCode}/requestreview",
23030	//   "request": {
23031	//     "$ref": "RequestReviewBuyOnGoogleProgramRequest"
23032	//   },
23033	//   "scopes": [
23034	//     "https://www.googleapis.com/auth/content"
23035	//   ]
23036	// }
23037
23038}
23039
23040// method id "content.collections.create":
23041
23042type CollectionsCreateCall struct {
23043	s          *APIService
23044	merchantId int64
23045	collection *Collection
23046	urlParams_ gensupport.URLParams
23047	ctx_       context.Context
23048	header_    http.Header
23049}
23050
23051// Create: Uploads a collection to your Merchant Center account. If a
23052// collection with the same collectionId already exists, this method
23053// updates that entry. In each update, the collection is completely
23054// replaced by the fields in the body of the update request.
23055//
23056// - merchantId: The ID of the account that contains the collection.
23057//   This account cannot be a multi-client account.
23058func (r *CollectionsService) Create(merchantId int64, collection *Collection) *CollectionsCreateCall {
23059	c := &CollectionsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23060	c.merchantId = merchantId
23061	c.collection = collection
23062	return c
23063}
23064
23065// Fields allows partial responses to be retrieved. See
23066// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23067// for more information.
23068func (c *CollectionsCreateCall) Fields(s ...googleapi.Field) *CollectionsCreateCall {
23069	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23070	return c
23071}
23072
23073// Context sets the context to be used in this call's Do method. Any
23074// pending HTTP request will be aborted if the provided context is
23075// canceled.
23076func (c *CollectionsCreateCall) Context(ctx context.Context) *CollectionsCreateCall {
23077	c.ctx_ = ctx
23078	return c
23079}
23080
23081// Header returns an http.Header that can be modified by the caller to
23082// add HTTP headers to the request.
23083func (c *CollectionsCreateCall) Header() http.Header {
23084	if c.header_ == nil {
23085		c.header_ = make(http.Header)
23086	}
23087	return c.header_
23088}
23089
23090func (c *CollectionsCreateCall) doRequest(alt string) (*http.Response, error) {
23091	reqHeaders := make(http.Header)
23092	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
23093	for k, v := range c.header_ {
23094		reqHeaders[k] = v
23095	}
23096	reqHeaders.Set("User-Agent", c.s.userAgent())
23097	var body io.Reader = nil
23098	body, err := googleapi.WithoutDataWrapper.JSONReader(c.collection)
23099	if err != nil {
23100		return nil, err
23101	}
23102	reqHeaders.Set("Content-Type", "application/json")
23103	c.urlParams_.Set("alt", alt)
23104	c.urlParams_.Set("prettyPrint", "false")
23105	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/collections")
23106	urls += "?" + c.urlParams_.Encode()
23107	req, err := http.NewRequest("POST", urls, body)
23108	if err != nil {
23109		return nil, err
23110	}
23111	req.Header = reqHeaders
23112	googleapi.Expand(req.URL, map[string]string{
23113		"merchantId": strconv.FormatInt(c.merchantId, 10),
23114	})
23115	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23116}
23117
23118// Do executes the "content.collections.create" call.
23119// Exactly one of *Collection or error will be non-nil. Any non-2xx
23120// status code is an error. Response headers are in either
23121// *Collection.ServerResponse.Header or (if a response was returned at
23122// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
23123// to check whether the returned error was because
23124// http.StatusNotModified was returned.
23125func (c *CollectionsCreateCall) Do(opts ...googleapi.CallOption) (*Collection, error) {
23126	gensupport.SetOptions(c.urlParams_, opts...)
23127	res, err := c.doRequest("json")
23128	if res != nil && res.StatusCode == http.StatusNotModified {
23129		if res.Body != nil {
23130			res.Body.Close()
23131		}
23132		return nil, &googleapi.Error{
23133			Code:   res.StatusCode,
23134			Header: res.Header,
23135		}
23136	}
23137	if err != nil {
23138		return nil, err
23139	}
23140	defer googleapi.CloseBody(res)
23141	if err := googleapi.CheckResponse(res); err != nil {
23142		return nil, err
23143	}
23144	ret := &Collection{
23145		ServerResponse: googleapi.ServerResponse{
23146			Header:         res.Header,
23147			HTTPStatusCode: res.StatusCode,
23148		},
23149	}
23150	target := &ret
23151	if err := gensupport.DecodeResponse(target, res); err != nil {
23152		return nil, err
23153	}
23154	return ret, nil
23155	// {
23156	//   "description": "Uploads a collection to your Merchant Center account. If a collection with the same collectionId already exists, this method updates that entry. In each update, the collection is completely replaced by the fields in the body of the update request.",
23157	//   "flatPath": "{merchantId}/collections",
23158	//   "httpMethod": "POST",
23159	//   "id": "content.collections.create",
23160	//   "parameterOrder": [
23161	//     "merchantId"
23162	//   ],
23163	//   "parameters": {
23164	//     "merchantId": {
23165	//       "description": "Required. The ID of the account that contains the collection. This account cannot be a multi-client account.",
23166	//       "format": "int64",
23167	//       "location": "path",
23168	//       "required": true,
23169	//       "type": "string"
23170	//     }
23171	//   },
23172	//   "path": "{merchantId}/collections",
23173	//   "request": {
23174	//     "$ref": "Collection"
23175	//   },
23176	//   "response": {
23177	//     "$ref": "Collection"
23178	//   },
23179	//   "scopes": [
23180	//     "https://www.googleapis.com/auth/content"
23181	//   ]
23182	// }
23183
23184}
23185
23186// method id "content.collections.delete":
23187
23188type CollectionsDeleteCall struct {
23189	s            *APIService
23190	merchantId   int64
23191	collectionId string
23192	urlParams_   gensupport.URLParams
23193	ctx_         context.Context
23194	header_      http.Header
23195}
23196
23197// Delete: Deletes a collection from your Merchant Center account.
23198//
23199// - collectionId: The collectionId of the collection. CollectionId is
23200//   the same as the REST ID of the collection.
23201// - merchantId: The ID of the account that contains the collection.
23202//   This account cannot be a multi-client account.
23203func (r *CollectionsService) Delete(merchantId int64, collectionId string) *CollectionsDeleteCall {
23204	c := &CollectionsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23205	c.merchantId = merchantId
23206	c.collectionId = collectionId
23207	return c
23208}
23209
23210// Fields allows partial responses to be retrieved. See
23211// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23212// for more information.
23213func (c *CollectionsDeleteCall) Fields(s ...googleapi.Field) *CollectionsDeleteCall {
23214	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23215	return c
23216}
23217
23218// Context sets the context to be used in this call's Do method. Any
23219// pending HTTP request will be aborted if the provided context is
23220// canceled.
23221func (c *CollectionsDeleteCall) Context(ctx context.Context) *CollectionsDeleteCall {
23222	c.ctx_ = ctx
23223	return c
23224}
23225
23226// Header returns an http.Header that can be modified by the caller to
23227// add HTTP headers to the request.
23228func (c *CollectionsDeleteCall) Header() http.Header {
23229	if c.header_ == nil {
23230		c.header_ = make(http.Header)
23231	}
23232	return c.header_
23233}
23234
23235func (c *CollectionsDeleteCall) doRequest(alt string) (*http.Response, error) {
23236	reqHeaders := make(http.Header)
23237	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
23238	for k, v := range c.header_ {
23239		reqHeaders[k] = v
23240	}
23241	reqHeaders.Set("User-Agent", c.s.userAgent())
23242	var body io.Reader = nil
23243	c.urlParams_.Set("alt", alt)
23244	c.urlParams_.Set("prettyPrint", "false")
23245	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/collections/{collectionId}")
23246	urls += "?" + c.urlParams_.Encode()
23247	req, err := http.NewRequest("DELETE", urls, body)
23248	if err != nil {
23249		return nil, err
23250	}
23251	req.Header = reqHeaders
23252	googleapi.Expand(req.URL, map[string]string{
23253		"merchantId":   strconv.FormatInt(c.merchantId, 10),
23254		"collectionId": c.collectionId,
23255	})
23256	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23257}
23258
23259// Do executes the "content.collections.delete" call.
23260func (c *CollectionsDeleteCall) Do(opts ...googleapi.CallOption) error {
23261	gensupport.SetOptions(c.urlParams_, opts...)
23262	res, err := c.doRequest("json")
23263	if err != nil {
23264		return err
23265	}
23266	defer googleapi.CloseBody(res)
23267	if err := googleapi.CheckResponse(res); err != nil {
23268		return err
23269	}
23270	return nil
23271	// {
23272	//   "description": "Deletes a collection from your Merchant Center account.",
23273	//   "flatPath": "{merchantId}/collections/{collectionId}",
23274	//   "httpMethod": "DELETE",
23275	//   "id": "content.collections.delete",
23276	//   "parameterOrder": [
23277	//     "merchantId",
23278	//     "collectionId"
23279	//   ],
23280	//   "parameters": {
23281	//     "collectionId": {
23282	//       "description": "Required. The collectionId of the collection. CollectionId is the same as the REST ID of the collection.",
23283	//       "location": "path",
23284	//       "required": true,
23285	//       "type": "string"
23286	//     },
23287	//     "merchantId": {
23288	//       "description": "Required. The ID of the account that contains the collection. This account cannot be a multi-client account.",
23289	//       "format": "int64",
23290	//       "location": "path",
23291	//       "required": true,
23292	//       "type": "string"
23293	//     }
23294	//   },
23295	//   "path": "{merchantId}/collections/{collectionId}",
23296	//   "scopes": [
23297	//     "https://www.googleapis.com/auth/content"
23298	//   ]
23299	// }
23300
23301}
23302
23303// method id "content.collections.get":
23304
23305type CollectionsGetCall struct {
23306	s            *APIService
23307	merchantId   int64
23308	collectionId string
23309	urlParams_   gensupport.URLParams
23310	ifNoneMatch_ string
23311	ctx_         context.Context
23312	header_      http.Header
23313}
23314
23315// Get: Retrieves a collection from your Merchant Center account.
23316//
23317// - collectionId: The REST ID of the collection.
23318// - merchantId: The ID of the account that contains the collection.
23319//   This account cannot be a multi-client account.
23320func (r *CollectionsService) Get(merchantId int64, collectionId string) *CollectionsGetCall {
23321	c := &CollectionsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23322	c.merchantId = merchantId
23323	c.collectionId = collectionId
23324	return c
23325}
23326
23327// Fields allows partial responses to be retrieved. See
23328// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23329// for more information.
23330func (c *CollectionsGetCall) Fields(s ...googleapi.Field) *CollectionsGetCall {
23331	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23332	return c
23333}
23334
23335// IfNoneMatch sets the optional parameter which makes the operation
23336// fail if the object's ETag matches the given value. This is useful for
23337// getting updates only after the object has changed since the last
23338// request. Use googleapi.IsNotModified to check whether the response
23339// error from Do is the result of In-None-Match.
23340func (c *CollectionsGetCall) IfNoneMatch(entityTag string) *CollectionsGetCall {
23341	c.ifNoneMatch_ = entityTag
23342	return c
23343}
23344
23345// Context sets the context to be used in this call's Do method. Any
23346// pending HTTP request will be aborted if the provided context is
23347// canceled.
23348func (c *CollectionsGetCall) Context(ctx context.Context) *CollectionsGetCall {
23349	c.ctx_ = ctx
23350	return c
23351}
23352
23353// Header returns an http.Header that can be modified by the caller to
23354// add HTTP headers to the request.
23355func (c *CollectionsGetCall) Header() http.Header {
23356	if c.header_ == nil {
23357		c.header_ = make(http.Header)
23358	}
23359	return c.header_
23360}
23361
23362func (c *CollectionsGetCall) doRequest(alt string) (*http.Response, error) {
23363	reqHeaders := make(http.Header)
23364	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
23365	for k, v := range c.header_ {
23366		reqHeaders[k] = v
23367	}
23368	reqHeaders.Set("User-Agent", c.s.userAgent())
23369	if c.ifNoneMatch_ != "" {
23370		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
23371	}
23372	var body io.Reader = nil
23373	c.urlParams_.Set("alt", alt)
23374	c.urlParams_.Set("prettyPrint", "false")
23375	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/collections/{collectionId}")
23376	urls += "?" + c.urlParams_.Encode()
23377	req, err := http.NewRequest("GET", urls, body)
23378	if err != nil {
23379		return nil, err
23380	}
23381	req.Header = reqHeaders
23382	googleapi.Expand(req.URL, map[string]string{
23383		"merchantId":   strconv.FormatInt(c.merchantId, 10),
23384		"collectionId": c.collectionId,
23385	})
23386	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23387}
23388
23389// Do executes the "content.collections.get" call.
23390// Exactly one of *Collection or error will be non-nil. Any non-2xx
23391// status code is an error. Response headers are in either
23392// *Collection.ServerResponse.Header or (if a response was returned at
23393// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
23394// to check whether the returned error was because
23395// http.StatusNotModified was returned.
23396func (c *CollectionsGetCall) Do(opts ...googleapi.CallOption) (*Collection, error) {
23397	gensupport.SetOptions(c.urlParams_, opts...)
23398	res, err := c.doRequest("json")
23399	if res != nil && res.StatusCode == http.StatusNotModified {
23400		if res.Body != nil {
23401			res.Body.Close()
23402		}
23403		return nil, &googleapi.Error{
23404			Code:   res.StatusCode,
23405			Header: res.Header,
23406		}
23407	}
23408	if err != nil {
23409		return nil, err
23410	}
23411	defer googleapi.CloseBody(res)
23412	if err := googleapi.CheckResponse(res); err != nil {
23413		return nil, err
23414	}
23415	ret := &Collection{
23416		ServerResponse: googleapi.ServerResponse{
23417			Header:         res.Header,
23418			HTTPStatusCode: res.StatusCode,
23419		},
23420	}
23421	target := &ret
23422	if err := gensupport.DecodeResponse(target, res); err != nil {
23423		return nil, err
23424	}
23425	return ret, nil
23426	// {
23427	//   "description": "Retrieves a collection from your Merchant Center account.",
23428	//   "flatPath": "{merchantId}/collections/{collectionId}",
23429	//   "httpMethod": "GET",
23430	//   "id": "content.collections.get",
23431	//   "parameterOrder": [
23432	//     "merchantId",
23433	//     "collectionId"
23434	//   ],
23435	//   "parameters": {
23436	//     "collectionId": {
23437	//       "description": "Required. The REST ID of the collection.",
23438	//       "location": "path",
23439	//       "required": true,
23440	//       "type": "string"
23441	//     },
23442	//     "merchantId": {
23443	//       "description": "Required. The ID of the account that contains the collection. This account cannot be a multi-client account.",
23444	//       "format": "int64",
23445	//       "location": "path",
23446	//       "required": true,
23447	//       "type": "string"
23448	//     }
23449	//   },
23450	//   "path": "{merchantId}/collections/{collectionId}",
23451	//   "response": {
23452	//     "$ref": "Collection"
23453	//   },
23454	//   "scopes": [
23455	//     "https://www.googleapis.com/auth/content"
23456	//   ]
23457	// }
23458
23459}
23460
23461// method id "content.collections.list":
23462
23463type CollectionsListCall struct {
23464	s            *APIService
23465	merchantId   int64
23466	urlParams_   gensupport.URLParams
23467	ifNoneMatch_ string
23468	ctx_         context.Context
23469	header_      http.Header
23470}
23471
23472// List: Lists the collections in your Merchant Center account. The
23473// response might contain fewer items than specified by page_size. Rely
23474// on next_page_token to determine if there are more items to be
23475// requested.
23476//
23477// - merchantId: The ID of the account that contains the collection.
23478//   This account cannot be a multi-client account.
23479func (r *CollectionsService) List(merchantId int64) *CollectionsListCall {
23480	c := &CollectionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23481	c.merchantId = merchantId
23482	return c
23483}
23484
23485// PageSize sets the optional parameter "pageSize": The maximum number
23486// of collections to return in the response, used for paging. Defaults
23487// to 50; values above 1000 will be coerced to 1000.
23488func (c *CollectionsListCall) PageSize(pageSize int64) *CollectionsListCall {
23489	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
23490	return c
23491}
23492
23493// PageToken sets the optional parameter "pageToken": Token (if
23494// provided) to retrieve the subsequent page. All other parameters must
23495// match the original call that provided the page token.
23496func (c *CollectionsListCall) PageToken(pageToken string) *CollectionsListCall {
23497	c.urlParams_.Set("pageToken", pageToken)
23498	return c
23499}
23500
23501// Fields allows partial responses to be retrieved. See
23502// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23503// for more information.
23504func (c *CollectionsListCall) Fields(s ...googleapi.Field) *CollectionsListCall {
23505	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23506	return c
23507}
23508
23509// IfNoneMatch sets the optional parameter which makes the operation
23510// fail if the object's ETag matches the given value. This is useful for
23511// getting updates only after the object has changed since the last
23512// request. Use googleapi.IsNotModified to check whether the response
23513// error from Do is the result of In-None-Match.
23514func (c *CollectionsListCall) IfNoneMatch(entityTag string) *CollectionsListCall {
23515	c.ifNoneMatch_ = entityTag
23516	return c
23517}
23518
23519// Context sets the context to be used in this call's Do method. Any
23520// pending HTTP request will be aborted if the provided context is
23521// canceled.
23522func (c *CollectionsListCall) Context(ctx context.Context) *CollectionsListCall {
23523	c.ctx_ = ctx
23524	return c
23525}
23526
23527// Header returns an http.Header that can be modified by the caller to
23528// add HTTP headers to the request.
23529func (c *CollectionsListCall) Header() http.Header {
23530	if c.header_ == nil {
23531		c.header_ = make(http.Header)
23532	}
23533	return c.header_
23534}
23535
23536func (c *CollectionsListCall) doRequest(alt string) (*http.Response, error) {
23537	reqHeaders := make(http.Header)
23538	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
23539	for k, v := range c.header_ {
23540		reqHeaders[k] = v
23541	}
23542	reqHeaders.Set("User-Agent", c.s.userAgent())
23543	if c.ifNoneMatch_ != "" {
23544		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
23545	}
23546	var body io.Reader = nil
23547	c.urlParams_.Set("alt", alt)
23548	c.urlParams_.Set("prettyPrint", "false")
23549	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/collections")
23550	urls += "?" + c.urlParams_.Encode()
23551	req, err := http.NewRequest("GET", urls, body)
23552	if err != nil {
23553		return nil, err
23554	}
23555	req.Header = reqHeaders
23556	googleapi.Expand(req.URL, map[string]string{
23557		"merchantId": strconv.FormatInt(c.merchantId, 10),
23558	})
23559	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23560}
23561
23562// Do executes the "content.collections.list" call.
23563// Exactly one of *ListCollectionsResponse or error will be non-nil. Any
23564// non-2xx status code is an error. Response headers are in either
23565// *ListCollectionsResponse.ServerResponse.Header or (if a response was
23566// returned at all) in error.(*googleapi.Error).Header. Use
23567// googleapi.IsNotModified to check whether the returned error was
23568// because http.StatusNotModified was returned.
23569func (c *CollectionsListCall) Do(opts ...googleapi.CallOption) (*ListCollectionsResponse, error) {
23570	gensupport.SetOptions(c.urlParams_, opts...)
23571	res, err := c.doRequest("json")
23572	if res != nil && res.StatusCode == http.StatusNotModified {
23573		if res.Body != nil {
23574			res.Body.Close()
23575		}
23576		return nil, &googleapi.Error{
23577			Code:   res.StatusCode,
23578			Header: res.Header,
23579		}
23580	}
23581	if err != nil {
23582		return nil, err
23583	}
23584	defer googleapi.CloseBody(res)
23585	if err := googleapi.CheckResponse(res); err != nil {
23586		return nil, err
23587	}
23588	ret := &ListCollectionsResponse{
23589		ServerResponse: googleapi.ServerResponse{
23590			Header:         res.Header,
23591			HTTPStatusCode: res.StatusCode,
23592		},
23593	}
23594	target := &ret
23595	if err := gensupport.DecodeResponse(target, res); err != nil {
23596		return nil, err
23597	}
23598	return ret, nil
23599	// {
23600	//   "description": "Lists the collections in your Merchant Center account. The response might contain fewer items than specified by page_size. Rely on next_page_token to determine if there are more items to be requested.",
23601	//   "flatPath": "{merchantId}/collections",
23602	//   "httpMethod": "GET",
23603	//   "id": "content.collections.list",
23604	//   "parameterOrder": [
23605	//     "merchantId"
23606	//   ],
23607	//   "parameters": {
23608	//     "merchantId": {
23609	//       "description": "Required. The ID of the account that contains the collection. This account cannot be a multi-client account.",
23610	//       "format": "int64",
23611	//       "location": "path",
23612	//       "required": true,
23613	//       "type": "string"
23614	//     },
23615	//     "pageSize": {
23616	//       "description": "The maximum number of collections to return in the response, used for paging. Defaults to 50; values above 1000 will be coerced to 1000.",
23617	//       "format": "int32",
23618	//       "location": "query",
23619	//       "type": "integer"
23620	//     },
23621	//     "pageToken": {
23622	//       "description": "Token (if provided) to retrieve the subsequent page. All other parameters must match the original call that provided the page token.",
23623	//       "location": "query",
23624	//       "type": "string"
23625	//     }
23626	//   },
23627	//   "path": "{merchantId}/collections",
23628	//   "response": {
23629	//     "$ref": "ListCollectionsResponse"
23630	//   },
23631	//   "scopes": [
23632	//     "https://www.googleapis.com/auth/content"
23633	//   ]
23634	// }
23635
23636}
23637
23638// Pages invokes f for each page of results.
23639// A non-nil error returned from f will halt the iteration.
23640// The provided context supersedes any context provided to the Context method.
23641func (c *CollectionsListCall) Pages(ctx context.Context, f func(*ListCollectionsResponse) error) error {
23642	c.ctx_ = ctx
23643	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
23644	for {
23645		x, err := c.Do()
23646		if err != nil {
23647			return err
23648		}
23649		if err := f(x); err != nil {
23650			return err
23651		}
23652		if x.NextPageToken == "" {
23653			return nil
23654		}
23655		c.PageToken(x.NextPageToken)
23656	}
23657}
23658
23659// method id "content.collectionstatuses.get":
23660
23661type CollectionstatusesGetCall struct {
23662	s            *APIService
23663	merchantId   int64
23664	collectionId string
23665	urlParams_   gensupport.URLParams
23666	ifNoneMatch_ string
23667	ctx_         context.Context
23668	header_      http.Header
23669}
23670
23671// Get: Gets the status of a collection from your Merchant Center
23672// account.
23673//
23674// - collectionId: The collectionId of the collection. CollectionId is
23675//   the same as the REST ID of the collection.
23676// - merchantId: The ID of the account that contains the collection.
23677//   This account cannot be a multi-client account.
23678func (r *CollectionstatusesService) Get(merchantId int64, collectionId string) *CollectionstatusesGetCall {
23679	c := &CollectionstatusesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23680	c.merchantId = merchantId
23681	c.collectionId = collectionId
23682	return c
23683}
23684
23685// Fields allows partial responses to be retrieved. See
23686// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23687// for more information.
23688func (c *CollectionstatusesGetCall) Fields(s ...googleapi.Field) *CollectionstatusesGetCall {
23689	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23690	return c
23691}
23692
23693// IfNoneMatch sets the optional parameter which makes the operation
23694// fail if the object's ETag matches the given value. This is useful for
23695// getting updates only after the object has changed since the last
23696// request. Use googleapi.IsNotModified to check whether the response
23697// error from Do is the result of In-None-Match.
23698func (c *CollectionstatusesGetCall) IfNoneMatch(entityTag string) *CollectionstatusesGetCall {
23699	c.ifNoneMatch_ = entityTag
23700	return c
23701}
23702
23703// Context sets the context to be used in this call's Do method. Any
23704// pending HTTP request will be aborted if the provided context is
23705// canceled.
23706func (c *CollectionstatusesGetCall) Context(ctx context.Context) *CollectionstatusesGetCall {
23707	c.ctx_ = ctx
23708	return c
23709}
23710
23711// Header returns an http.Header that can be modified by the caller to
23712// add HTTP headers to the request.
23713func (c *CollectionstatusesGetCall) Header() http.Header {
23714	if c.header_ == nil {
23715		c.header_ = make(http.Header)
23716	}
23717	return c.header_
23718}
23719
23720func (c *CollectionstatusesGetCall) doRequest(alt string) (*http.Response, error) {
23721	reqHeaders := make(http.Header)
23722	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
23723	for k, v := range c.header_ {
23724		reqHeaders[k] = v
23725	}
23726	reqHeaders.Set("User-Agent", c.s.userAgent())
23727	if c.ifNoneMatch_ != "" {
23728		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
23729	}
23730	var body io.Reader = nil
23731	c.urlParams_.Set("alt", alt)
23732	c.urlParams_.Set("prettyPrint", "false")
23733	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/collectionstatuses/{collectionId}")
23734	urls += "?" + c.urlParams_.Encode()
23735	req, err := http.NewRequest("GET", urls, body)
23736	if err != nil {
23737		return nil, err
23738	}
23739	req.Header = reqHeaders
23740	googleapi.Expand(req.URL, map[string]string{
23741		"merchantId":   strconv.FormatInt(c.merchantId, 10),
23742		"collectionId": c.collectionId,
23743	})
23744	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23745}
23746
23747// Do executes the "content.collectionstatuses.get" call.
23748// Exactly one of *CollectionStatus or error will be non-nil. Any
23749// non-2xx status code is an error. Response headers are in either
23750// *CollectionStatus.ServerResponse.Header or (if a response was
23751// returned at all) in error.(*googleapi.Error).Header. Use
23752// googleapi.IsNotModified to check whether the returned error was
23753// because http.StatusNotModified was returned.
23754func (c *CollectionstatusesGetCall) Do(opts ...googleapi.CallOption) (*CollectionStatus, error) {
23755	gensupport.SetOptions(c.urlParams_, opts...)
23756	res, err := c.doRequest("json")
23757	if res != nil && res.StatusCode == http.StatusNotModified {
23758		if res.Body != nil {
23759			res.Body.Close()
23760		}
23761		return nil, &googleapi.Error{
23762			Code:   res.StatusCode,
23763			Header: res.Header,
23764		}
23765	}
23766	if err != nil {
23767		return nil, err
23768	}
23769	defer googleapi.CloseBody(res)
23770	if err := googleapi.CheckResponse(res); err != nil {
23771		return nil, err
23772	}
23773	ret := &CollectionStatus{
23774		ServerResponse: googleapi.ServerResponse{
23775			Header:         res.Header,
23776			HTTPStatusCode: res.StatusCode,
23777		},
23778	}
23779	target := &ret
23780	if err := gensupport.DecodeResponse(target, res); err != nil {
23781		return nil, err
23782	}
23783	return ret, nil
23784	// {
23785	//   "description": "Gets the status of a collection from your Merchant Center account.",
23786	//   "flatPath": "{merchantId}/collectionstatuses/{collectionId}",
23787	//   "httpMethod": "GET",
23788	//   "id": "content.collectionstatuses.get",
23789	//   "parameterOrder": [
23790	//     "merchantId",
23791	//     "collectionId"
23792	//   ],
23793	//   "parameters": {
23794	//     "collectionId": {
23795	//       "description": "Required. The collectionId of the collection. CollectionId is the same as the REST ID of the collection.",
23796	//       "location": "path",
23797	//       "required": true,
23798	//       "type": "string"
23799	//     },
23800	//     "merchantId": {
23801	//       "description": "Required. The ID of the account that contains the collection. This account cannot be a multi-client account.",
23802	//       "format": "int64",
23803	//       "location": "path",
23804	//       "required": true,
23805	//       "type": "string"
23806	//     }
23807	//   },
23808	//   "path": "{merchantId}/collectionstatuses/{collectionId}",
23809	//   "response": {
23810	//     "$ref": "CollectionStatus"
23811	//   },
23812	//   "scopes": [
23813	//     "https://www.googleapis.com/auth/content"
23814	//   ]
23815	// }
23816
23817}
23818
23819// method id "content.collectionstatuses.list":
23820
23821type CollectionstatusesListCall struct {
23822	s            *APIService
23823	merchantId   int64
23824	urlParams_   gensupport.URLParams
23825	ifNoneMatch_ string
23826	ctx_         context.Context
23827	header_      http.Header
23828}
23829
23830// List: Lists the statuses of the collections in your Merchant Center
23831// account.
23832//
23833// - merchantId: The ID of the account that contains the collection.
23834//   This account cannot be a multi-client account.
23835func (r *CollectionstatusesService) List(merchantId int64) *CollectionstatusesListCall {
23836	c := &CollectionstatusesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23837	c.merchantId = merchantId
23838	return c
23839}
23840
23841// PageSize sets the optional parameter "pageSize": The maximum number
23842// of collection statuses to return in the response, used for paging.
23843// Defaults to 50; values above 1000 will be coerced to 1000.
23844func (c *CollectionstatusesListCall) PageSize(pageSize int64) *CollectionstatusesListCall {
23845	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
23846	return c
23847}
23848
23849// PageToken sets the optional parameter "pageToken": Token (if
23850// provided) to retrieve the subsequent page. All other parameters must
23851// match the original call that provided the page token.
23852func (c *CollectionstatusesListCall) PageToken(pageToken string) *CollectionstatusesListCall {
23853	c.urlParams_.Set("pageToken", pageToken)
23854	return c
23855}
23856
23857// Fields allows partial responses to be retrieved. See
23858// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23859// for more information.
23860func (c *CollectionstatusesListCall) Fields(s ...googleapi.Field) *CollectionstatusesListCall {
23861	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23862	return c
23863}
23864
23865// IfNoneMatch sets the optional parameter which makes the operation
23866// fail if the object's ETag matches the given value. This is useful for
23867// getting updates only after the object has changed since the last
23868// request. Use googleapi.IsNotModified to check whether the response
23869// error from Do is the result of In-None-Match.
23870func (c *CollectionstatusesListCall) IfNoneMatch(entityTag string) *CollectionstatusesListCall {
23871	c.ifNoneMatch_ = entityTag
23872	return c
23873}
23874
23875// Context sets the context to be used in this call's Do method. Any
23876// pending HTTP request will be aborted if the provided context is
23877// canceled.
23878func (c *CollectionstatusesListCall) Context(ctx context.Context) *CollectionstatusesListCall {
23879	c.ctx_ = ctx
23880	return c
23881}
23882
23883// Header returns an http.Header that can be modified by the caller to
23884// add HTTP headers to the request.
23885func (c *CollectionstatusesListCall) Header() http.Header {
23886	if c.header_ == nil {
23887		c.header_ = make(http.Header)
23888	}
23889	return c.header_
23890}
23891
23892func (c *CollectionstatusesListCall) doRequest(alt string) (*http.Response, error) {
23893	reqHeaders := make(http.Header)
23894	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
23895	for k, v := range c.header_ {
23896		reqHeaders[k] = v
23897	}
23898	reqHeaders.Set("User-Agent", c.s.userAgent())
23899	if c.ifNoneMatch_ != "" {
23900		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
23901	}
23902	var body io.Reader = nil
23903	c.urlParams_.Set("alt", alt)
23904	c.urlParams_.Set("prettyPrint", "false")
23905	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/collectionstatuses")
23906	urls += "?" + c.urlParams_.Encode()
23907	req, err := http.NewRequest("GET", urls, body)
23908	if err != nil {
23909		return nil, err
23910	}
23911	req.Header = reqHeaders
23912	googleapi.Expand(req.URL, map[string]string{
23913		"merchantId": strconv.FormatInt(c.merchantId, 10),
23914	})
23915	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23916}
23917
23918// Do executes the "content.collectionstatuses.list" call.
23919// Exactly one of *ListCollectionStatusesResponse or error will be
23920// non-nil. Any non-2xx status code is an error. Response headers are in
23921// either *ListCollectionStatusesResponse.ServerResponse.Header or (if a
23922// response was returned at all) in error.(*googleapi.Error).Header. Use
23923// googleapi.IsNotModified to check whether the returned error was
23924// because http.StatusNotModified was returned.
23925func (c *CollectionstatusesListCall) Do(opts ...googleapi.CallOption) (*ListCollectionStatusesResponse, error) {
23926	gensupport.SetOptions(c.urlParams_, opts...)
23927	res, err := c.doRequest("json")
23928	if res != nil && res.StatusCode == http.StatusNotModified {
23929		if res.Body != nil {
23930			res.Body.Close()
23931		}
23932		return nil, &googleapi.Error{
23933			Code:   res.StatusCode,
23934			Header: res.Header,
23935		}
23936	}
23937	if err != nil {
23938		return nil, err
23939	}
23940	defer googleapi.CloseBody(res)
23941	if err := googleapi.CheckResponse(res); err != nil {
23942		return nil, err
23943	}
23944	ret := &ListCollectionStatusesResponse{
23945		ServerResponse: googleapi.ServerResponse{
23946			Header:         res.Header,
23947			HTTPStatusCode: res.StatusCode,
23948		},
23949	}
23950	target := &ret
23951	if err := gensupport.DecodeResponse(target, res); err != nil {
23952		return nil, err
23953	}
23954	return ret, nil
23955	// {
23956	//   "description": "Lists the statuses of the collections in your Merchant Center account.",
23957	//   "flatPath": "{merchantId}/collectionstatuses",
23958	//   "httpMethod": "GET",
23959	//   "id": "content.collectionstatuses.list",
23960	//   "parameterOrder": [
23961	//     "merchantId"
23962	//   ],
23963	//   "parameters": {
23964	//     "merchantId": {
23965	//       "description": "Required. The ID of the account that contains the collection. This account cannot be a multi-client account.",
23966	//       "format": "int64",
23967	//       "location": "path",
23968	//       "required": true,
23969	//       "type": "string"
23970	//     },
23971	//     "pageSize": {
23972	//       "description": "The maximum number of collection statuses to return in the response, used for paging. Defaults to 50; values above 1000 will be coerced to 1000.",
23973	//       "format": "int32",
23974	//       "location": "query",
23975	//       "type": "integer"
23976	//     },
23977	//     "pageToken": {
23978	//       "description": "Token (if provided) to retrieve the subsequent page. All other parameters must match the original call that provided the page token.",
23979	//       "location": "query",
23980	//       "type": "string"
23981	//     }
23982	//   },
23983	//   "path": "{merchantId}/collectionstatuses",
23984	//   "response": {
23985	//     "$ref": "ListCollectionStatusesResponse"
23986	//   },
23987	//   "scopes": [
23988	//     "https://www.googleapis.com/auth/content"
23989	//   ]
23990	// }
23991
23992}
23993
23994// Pages invokes f for each page of results.
23995// A non-nil error returned from f will halt the iteration.
23996// The provided context supersedes any context provided to the Context method.
23997func (c *CollectionstatusesListCall) Pages(ctx context.Context, f func(*ListCollectionStatusesResponse) error) error {
23998	c.ctx_ = ctx
23999	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
24000	for {
24001		x, err := c.Do()
24002		if err != nil {
24003			return err
24004		}
24005		if err := f(x); err != nil {
24006			return err
24007		}
24008		if x.NextPageToken == "" {
24009			return nil
24010		}
24011		c.PageToken(x.NextPageToken)
24012	}
24013}
24014
24015// method id "content.csses.get":
24016
24017type CssesGetCall struct {
24018	s            *APIService
24019	cssGroupId   int64
24020	cssDomainId  int64
24021	urlParams_   gensupport.URLParams
24022	ifNoneMatch_ string
24023	ctx_         context.Context
24024	header_      http.Header
24025}
24026
24027// Get: Retrieves a single CSS domain by ID.
24028//
24029// - cssDomainId: The ID of the CSS domain to return.
24030// - cssGroupId: The ID of the managing account. If this parameter is
24031//   not the same as cssDomainId (#cssDomainId), then this ID must be a
24032//   CSS group ID and `cssDomainId` must be the ID of a CSS domain
24033//   affiliated with this group.
24034func (r *CssesService) Get(cssGroupId int64, cssDomainId int64) *CssesGetCall {
24035	c := &CssesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24036	c.cssGroupId = cssGroupId
24037	c.cssDomainId = cssDomainId
24038	return c
24039}
24040
24041// Fields allows partial responses to be retrieved. See
24042// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24043// for more information.
24044func (c *CssesGetCall) Fields(s ...googleapi.Field) *CssesGetCall {
24045	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24046	return c
24047}
24048
24049// IfNoneMatch sets the optional parameter which makes the operation
24050// fail if the object's ETag matches the given value. This is useful for
24051// getting updates only after the object has changed since the last
24052// request. Use googleapi.IsNotModified to check whether the response
24053// error from Do is the result of In-None-Match.
24054func (c *CssesGetCall) IfNoneMatch(entityTag string) *CssesGetCall {
24055	c.ifNoneMatch_ = entityTag
24056	return c
24057}
24058
24059// Context sets the context to be used in this call's Do method. Any
24060// pending HTTP request will be aborted if the provided context is
24061// canceled.
24062func (c *CssesGetCall) Context(ctx context.Context) *CssesGetCall {
24063	c.ctx_ = ctx
24064	return c
24065}
24066
24067// Header returns an http.Header that can be modified by the caller to
24068// add HTTP headers to the request.
24069func (c *CssesGetCall) Header() http.Header {
24070	if c.header_ == nil {
24071		c.header_ = make(http.Header)
24072	}
24073	return c.header_
24074}
24075
24076func (c *CssesGetCall) doRequest(alt string) (*http.Response, error) {
24077	reqHeaders := make(http.Header)
24078	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
24079	for k, v := range c.header_ {
24080		reqHeaders[k] = v
24081	}
24082	reqHeaders.Set("User-Agent", c.s.userAgent())
24083	if c.ifNoneMatch_ != "" {
24084		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
24085	}
24086	var body io.Reader = nil
24087	c.urlParams_.Set("alt", alt)
24088	c.urlParams_.Set("prettyPrint", "false")
24089	urls := googleapi.ResolveRelative(c.s.BasePath, "{cssGroupId}/csses/{cssDomainId}")
24090	urls += "?" + c.urlParams_.Encode()
24091	req, err := http.NewRequest("GET", urls, body)
24092	if err != nil {
24093		return nil, err
24094	}
24095	req.Header = reqHeaders
24096	googleapi.Expand(req.URL, map[string]string{
24097		"cssGroupId":  strconv.FormatInt(c.cssGroupId, 10),
24098		"cssDomainId": strconv.FormatInt(c.cssDomainId, 10),
24099	})
24100	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24101}
24102
24103// Do executes the "content.csses.get" call.
24104// Exactly one of *Css or error will be non-nil. Any non-2xx status code
24105// is an error. Response headers are in either
24106// *Css.ServerResponse.Header or (if a response was returned at all) in
24107// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
24108// whether the returned error was because http.StatusNotModified was
24109// returned.
24110func (c *CssesGetCall) Do(opts ...googleapi.CallOption) (*Css, error) {
24111	gensupport.SetOptions(c.urlParams_, opts...)
24112	res, err := c.doRequest("json")
24113	if res != nil && res.StatusCode == http.StatusNotModified {
24114		if res.Body != nil {
24115			res.Body.Close()
24116		}
24117		return nil, &googleapi.Error{
24118			Code:   res.StatusCode,
24119			Header: res.Header,
24120		}
24121	}
24122	if err != nil {
24123		return nil, err
24124	}
24125	defer googleapi.CloseBody(res)
24126	if err := googleapi.CheckResponse(res); err != nil {
24127		return nil, err
24128	}
24129	ret := &Css{
24130		ServerResponse: googleapi.ServerResponse{
24131			Header:         res.Header,
24132			HTTPStatusCode: res.StatusCode,
24133		},
24134	}
24135	target := &ret
24136	if err := gensupport.DecodeResponse(target, res); err != nil {
24137		return nil, err
24138	}
24139	return ret, nil
24140	// {
24141	//   "description": "Retrieves a single CSS domain by ID.",
24142	//   "flatPath": "{cssGroupId}/csses/{cssDomainId}",
24143	//   "httpMethod": "GET",
24144	//   "id": "content.csses.get",
24145	//   "parameterOrder": [
24146	//     "cssGroupId",
24147	//     "cssDomainId"
24148	//   ],
24149	//   "parameters": {
24150	//     "cssDomainId": {
24151	//       "description": "Required. The ID of the CSS domain to return.",
24152	//       "format": "int64",
24153	//       "location": "path",
24154	//       "required": true,
24155	//       "type": "string"
24156	//     },
24157	//     "cssGroupId": {
24158	//       "description": "Required. The ID of the managing account. If this parameter is not the same as [cssDomainId](#cssDomainId), then this ID must be a CSS group ID and `cssDomainId` must be the ID of a CSS domain affiliated with this group.",
24159	//       "format": "int64",
24160	//       "location": "path",
24161	//       "required": true,
24162	//       "type": "string"
24163	//     }
24164	//   },
24165	//   "path": "{cssGroupId}/csses/{cssDomainId}",
24166	//   "response": {
24167	//     "$ref": "Css"
24168	//   },
24169	//   "scopes": [
24170	//     "https://www.googleapis.com/auth/content"
24171	//   ]
24172	// }
24173
24174}
24175
24176// method id "content.csses.list":
24177
24178type CssesListCall struct {
24179	s            *APIService
24180	cssGroupId   int64
24181	urlParams_   gensupport.URLParams
24182	ifNoneMatch_ string
24183	ctx_         context.Context
24184	header_      http.Header
24185}
24186
24187// List: Lists CSS domains affiliated with a CSS group.
24188//
24189// - cssGroupId: The CSS group ID of CSS domains to be listed.
24190func (r *CssesService) List(cssGroupId int64) *CssesListCall {
24191	c := &CssesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24192	c.cssGroupId = cssGroupId
24193	return c
24194}
24195
24196// PageSize sets the optional parameter "pageSize": The maximum number
24197// of CSS domains to return. The service may return fewer than this
24198// value. If unspecified, at most 50 CSS domains will be returned. The
24199// maximum value is 1000; values above 1000 will be coerced to 1000.
24200func (c *CssesListCall) PageSize(pageSize int64) *CssesListCall {
24201	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
24202	return c
24203}
24204
24205// PageToken sets the optional parameter "pageToken": A page token,
24206// received from a previous `ListCsses` call. Provide this to retrieve
24207// the subsequent page. When paginating, all other parameters provided
24208// to `ListCsses` must match the call that provided the page token.
24209func (c *CssesListCall) PageToken(pageToken string) *CssesListCall {
24210	c.urlParams_.Set("pageToken", pageToken)
24211	return c
24212}
24213
24214// Fields allows partial responses to be retrieved. See
24215// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24216// for more information.
24217func (c *CssesListCall) Fields(s ...googleapi.Field) *CssesListCall {
24218	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24219	return c
24220}
24221
24222// IfNoneMatch sets the optional parameter which makes the operation
24223// fail if the object's ETag matches the given value. This is useful for
24224// getting updates only after the object has changed since the last
24225// request. Use googleapi.IsNotModified to check whether the response
24226// error from Do is the result of In-None-Match.
24227func (c *CssesListCall) IfNoneMatch(entityTag string) *CssesListCall {
24228	c.ifNoneMatch_ = entityTag
24229	return c
24230}
24231
24232// Context sets the context to be used in this call's Do method. Any
24233// pending HTTP request will be aborted if the provided context is
24234// canceled.
24235func (c *CssesListCall) Context(ctx context.Context) *CssesListCall {
24236	c.ctx_ = ctx
24237	return c
24238}
24239
24240// Header returns an http.Header that can be modified by the caller to
24241// add HTTP headers to the request.
24242func (c *CssesListCall) Header() http.Header {
24243	if c.header_ == nil {
24244		c.header_ = make(http.Header)
24245	}
24246	return c.header_
24247}
24248
24249func (c *CssesListCall) doRequest(alt string) (*http.Response, error) {
24250	reqHeaders := make(http.Header)
24251	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
24252	for k, v := range c.header_ {
24253		reqHeaders[k] = v
24254	}
24255	reqHeaders.Set("User-Agent", c.s.userAgent())
24256	if c.ifNoneMatch_ != "" {
24257		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
24258	}
24259	var body io.Reader = nil
24260	c.urlParams_.Set("alt", alt)
24261	c.urlParams_.Set("prettyPrint", "false")
24262	urls := googleapi.ResolveRelative(c.s.BasePath, "{cssGroupId}/csses")
24263	urls += "?" + c.urlParams_.Encode()
24264	req, err := http.NewRequest("GET", urls, body)
24265	if err != nil {
24266		return nil, err
24267	}
24268	req.Header = reqHeaders
24269	googleapi.Expand(req.URL, map[string]string{
24270		"cssGroupId": strconv.FormatInt(c.cssGroupId, 10),
24271	})
24272	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24273}
24274
24275// Do executes the "content.csses.list" call.
24276// Exactly one of *ListCssesResponse or error will be non-nil. Any
24277// non-2xx status code is an error. Response headers are in either
24278// *ListCssesResponse.ServerResponse.Header or (if a response was
24279// returned at all) in error.(*googleapi.Error).Header. Use
24280// googleapi.IsNotModified to check whether the returned error was
24281// because http.StatusNotModified was returned.
24282func (c *CssesListCall) Do(opts ...googleapi.CallOption) (*ListCssesResponse, error) {
24283	gensupport.SetOptions(c.urlParams_, opts...)
24284	res, err := c.doRequest("json")
24285	if res != nil && res.StatusCode == http.StatusNotModified {
24286		if res.Body != nil {
24287			res.Body.Close()
24288		}
24289		return nil, &googleapi.Error{
24290			Code:   res.StatusCode,
24291			Header: res.Header,
24292		}
24293	}
24294	if err != nil {
24295		return nil, err
24296	}
24297	defer googleapi.CloseBody(res)
24298	if err := googleapi.CheckResponse(res); err != nil {
24299		return nil, err
24300	}
24301	ret := &ListCssesResponse{
24302		ServerResponse: googleapi.ServerResponse{
24303			Header:         res.Header,
24304			HTTPStatusCode: res.StatusCode,
24305		},
24306	}
24307	target := &ret
24308	if err := gensupport.DecodeResponse(target, res); err != nil {
24309		return nil, err
24310	}
24311	return ret, nil
24312	// {
24313	//   "description": "Lists CSS domains affiliated with a CSS group.",
24314	//   "flatPath": "{cssGroupId}/csses",
24315	//   "httpMethod": "GET",
24316	//   "id": "content.csses.list",
24317	//   "parameterOrder": [
24318	//     "cssGroupId"
24319	//   ],
24320	//   "parameters": {
24321	//     "cssGroupId": {
24322	//       "description": "Required. The CSS group ID of CSS domains to be listed.",
24323	//       "format": "int64",
24324	//       "location": "path",
24325	//       "required": true,
24326	//       "type": "string"
24327	//     },
24328	//     "pageSize": {
24329	//       "description": "The maximum number of CSS domains to return. The service may return fewer than this value. If unspecified, at most 50 CSS domains will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.",
24330	//       "format": "int32",
24331	//       "location": "query",
24332	//       "type": "integer"
24333	//     },
24334	//     "pageToken": {
24335	//       "description": "A page token, received from a previous `ListCsses` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListCsses` must match the call that provided the page token.",
24336	//       "location": "query",
24337	//       "type": "string"
24338	//     }
24339	//   },
24340	//   "path": "{cssGroupId}/csses",
24341	//   "response": {
24342	//     "$ref": "ListCssesResponse"
24343	//   },
24344	//   "scopes": [
24345	//     "https://www.googleapis.com/auth/content"
24346	//   ]
24347	// }
24348
24349}
24350
24351// Pages invokes f for each page of results.
24352// A non-nil error returned from f will halt the iteration.
24353// The provided context supersedes any context provided to the Context method.
24354func (c *CssesListCall) Pages(ctx context.Context, f func(*ListCssesResponse) error) error {
24355	c.ctx_ = ctx
24356	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
24357	for {
24358		x, err := c.Do()
24359		if err != nil {
24360			return err
24361		}
24362		if err := f(x); err != nil {
24363			return err
24364		}
24365		if x.NextPageToken == "" {
24366			return nil
24367		}
24368		c.PageToken(x.NextPageToken)
24369	}
24370}
24371
24372// method id "content.csses.updatelabels":
24373
24374type CssesUpdatelabelsCall struct {
24375	s           *APIService
24376	cssGroupId  int64
24377	cssDomainId int64
24378	labelids    *LabelIds
24379	urlParams_  gensupport.URLParams
24380	ctx_        context.Context
24381	header_     http.Header
24382}
24383
24384// Updatelabels: Updates labels that are assigned to a CSS domain by its
24385// CSS group.
24386//
24387// - cssDomainId: The ID of the updated CSS domain.
24388// - cssGroupId: The CSS group ID of the updated CSS domain.
24389func (r *CssesService) Updatelabels(cssGroupId int64, cssDomainId int64, labelids *LabelIds) *CssesUpdatelabelsCall {
24390	c := &CssesUpdatelabelsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24391	c.cssGroupId = cssGroupId
24392	c.cssDomainId = cssDomainId
24393	c.labelids = labelids
24394	return c
24395}
24396
24397// Fields allows partial responses to be retrieved. See
24398// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24399// for more information.
24400func (c *CssesUpdatelabelsCall) Fields(s ...googleapi.Field) *CssesUpdatelabelsCall {
24401	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24402	return c
24403}
24404
24405// Context sets the context to be used in this call's Do method. Any
24406// pending HTTP request will be aborted if the provided context is
24407// canceled.
24408func (c *CssesUpdatelabelsCall) Context(ctx context.Context) *CssesUpdatelabelsCall {
24409	c.ctx_ = ctx
24410	return c
24411}
24412
24413// Header returns an http.Header that can be modified by the caller to
24414// add HTTP headers to the request.
24415func (c *CssesUpdatelabelsCall) Header() http.Header {
24416	if c.header_ == nil {
24417		c.header_ = make(http.Header)
24418	}
24419	return c.header_
24420}
24421
24422func (c *CssesUpdatelabelsCall) doRequest(alt string) (*http.Response, error) {
24423	reqHeaders := make(http.Header)
24424	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
24425	for k, v := range c.header_ {
24426		reqHeaders[k] = v
24427	}
24428	reqHeaders.Set("User-Agent", c.s.userAgent())
24429	var body io.Reader = nil
24430	body, err := googleapi.WithoutDataWrapper.JSONReader(c.labelids)
24431	if err != nil {
24432		return nil, err
24433	}
24434	reqHeaders.Set("Content-Type", "application/json")
24435	c.urlParams_.Set("alt", alt)
24436	c.urlParams_.Set("prettyPrint", "false")
24437	urls := googleapi.ResolveRelative(c.s.BasePath, "{cssGroupId}/csses/{cssDomainId}/updatelabels")
24438	urls += "?" + c.urlParams_.Encode()
24439	req, err := http.NewRequest("POST", urls, body)
24440	if err != nil {
24441		return nil, err
24442	}
24443	req.Header = reqHeaders
24444	googleapi.Expand(req.URL, map[string]string{
24445		"cssGroupId":  strconv.FormatInt(c.cssGroupId, 10),
24446		"cssDomainId": strconv.FormatInt(c.cssDomainId, 10),
24447	})
24448	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24449}
24450
24451// Do executes the "content.csses.updatelabels" call.
24452// Exactly one of *Css or error will be non-nil. Any non-2xx status code
24453// is an error. Response headers are in either
24454// *Css.ServerResponse.Header or (if a response was returned at all) in
24455// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
24456// whether the returned error was because http.StatusNotModified was
24457// returned.
24458func (c *CssesUpdatelabelsCall) Do(opts ...googleapi.CallOption) (*Css, error) {
24459	gensupport.SetOptions(c.urlParams_, opts...)
24460	res, err := c.doRequest("json")
24461	if res != nil && res.StatusCode == http.StatusNotModified {
24462		if res.Body != nil {
24463			res.Body.Close()
24464		}
24465		return nil, &googleapi.Error{
24466			Code:   res.StatusCode,
24467			Header: res.Header,
24468		}
24469	}
24470	if err != nil {
24471		return nil, err
24472	}
24473	defer googleapi.CloseBody(res)
24474	if err := googleapi.CheckResponse(res); err != nil {
24475		return nil, err
24476	}
24477	ret := &Css{
24478		ServerResponse: googleapi.ServerResponse{
24479			Header:         res.Header,
24480			HTTPStatusCode: res.StatusCode,
24481		},
24482	}
24483	target := &ret
24484	if err := gensupport.DecodeResponse(target, res); err != nil {
24485		return nil, err
24486	}
24487	return ret, nil
24488	// {
24489	//   "description": "Updates labels that are assigned to a CSS domain by its CSS group.",
24490	//   "flatPath": "{cssGroupId}/csses/{cssDomainId}/updatelabels",
24491	//   "httpMethod": "POST",
24492	//   "id": "content.csses.updatelabels",
24493	//   "parameterOrder": [
24494	//     "cssGroupId",
24495	//     "cssDomainId"
24496	//   ],
24497	//   "parameters": {
24498	//     "cssDomainId": {
24499	//       "description": "Required. The ID of the updated CSS domain.",
24500	//       "format": "int64",
24501	//       "location": "path",
24502	//       "required": true,
24503	//       "type": "string"
24504	//     },
24505	//     "cssGroupId": {
24506	//       "description": "Required. The CSS group ID of the updated CSS domain.",
24507	//       "format": "int64",
24508	//       "location": "path",
24509	//       "required": true,
24510	//       "type": "string"
24511	//     }
24512	//   },
24513	//   "path": "{cssGroupId}/csses/{cssDomainId}/updatelabels",
24514	//   "request": {
24515	//     "$ref": "LabelIds"
24516	//   },
24517	//   "response": {
24518	//     "$ref": "Css"
24519	//   },
24520	//   "scopes": [
24521	//     "https://www.googleapis.com/auth/content"
24522	//   ]
24523	// }
24524
24525}
24526
24527// method id "content.datafeeds.custombatch":
24528
24529type DatafeedsCustombatchCall struct {
24530	s                           *APIService
24531	datafeedscustombatchrequest *DatafeedsCustomBatchRequest
24532	urlParams_                  gensupport.URLParams
24533	ctx_                        context.Context
24534	header_                     http.Header
24535}
24536
24537// Custombatch: Deletes, fetches, gets, inserts and updates multiple
24538// datafeeds in a single request.
24539func (r *DatafeedsService) Custombatch(datafeedscustombatchrequest *DatafeedsCustomBatchRequest) *DatafeedsCustombatchCall {
24540	c := &DatafeedsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24541	c.datafeedscustombatchrequest = datafeedscustombatchrequest
24542	return c
24543}
24544
24545// Fields allows partial responses to be retrieved. See
24546// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24547// for more information.
24548func (c *DatafeedsCustombatchCall) Fields(s ...googleapi.Field) *DatafeedsCustombatchCall {
24549	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24550	return c
24551}
24552
24553// Context sets the context to be used in this call's Do method. Any
24554// pending HTTP request will be aborted if the provided context is
24555// canceled.
24556func (c *DatafeedsCustombatchCall) Context(ctx context.Context) *DatafeedsCustombatchCall {
24557	c.ctx_ = ctx
24558	return c
24559}
24560
24561// Header returns an http.Header that can be modified by the caller to
24562// add HTTP headers to the request.
24563func (c *DatafeedsCustombatchCall) Header() http.Header {
24564	if c.header_ == nil {
24565		c.header_ = make(http.Header)
24566	}
24567	return c.header_
24568}
24569
24570func (c *DatafeedsCustombatchCall) doRequest(alt string) (*http.Response, error) {
24571	reqHeaders := make(http.Header)
24572	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
24573	for k, v := range c.header_ {
24574		reqHeaders[k] = v
24575	}
24576	reqHeaders.Set("User-Agent", c.s.userAgent())
24577	var body io.Reader = nil
24578	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeedscustombatchrequest)
24579	if err != nil {
24580		return nil, err
24581	}
24582	reqHeaders.Set("Content-Type", "application/json")
24583	c.urlParams_.Set("alt", alt)
24584	c.urlParams_.Set("prettyPrint", "false")
24585	urls := googleapi.ResolveRelative(c.s.BasePath, "datafeeds/batch")
24586	urls += "?" + c.urlParams_.Encode()
24587	req, err := http.NewRequest("POST", urls, body)
24588	if err != nil {
24589		return nil, err
24590	}
24591	req.Header = reqHeaders
24592	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24593}
24594
24595// Do executes the "content.datafeeds.custombatch" call.
24596// Exactly one of *DatafeedsCustomBatchResponse or error will be
24597// non-nil. Any non-2xx status code is an error. Response headers are in
24598// either *DatafeedsCustomBatchResponse.ServerResponse.Header or (if a
24599// response was returned at all) in error.(*googleapi.Error).Header. Use
24600// googleapi.IsNotModified to check whether the returned error was
24601// because http.StatusNotModified was returned.
24602func (c *DatafeedsCustombatchCall) Do(opts ...googleapi.CallOption) (*DatafeedsCustomBatchResponse, error) {
24603	gensupport.SetOptions(c.urlParams_, opts...)
24604	res, err := c.doRequest("json")
24605	if res != nil && res.StatusCode == http.StatusNotModified {
24606		if res.Body != nil {
24607			res.Body.Close()
24608		}
24609		return nil, &googleapi.Error{
24610			Code:   res.StatusCode,
24611			Header: res.Header,
24612		}
24613	}
24614	if err != nil {
24615		return nil, err
24616	}
24617	defer googleapi.CloseBody(res)
24618	if err := googleapi.CheckResponse(res); err != nil {
24619		return nil, err
24620	}
24621	ret := &DatafeedsCustomBatchResponse{
24622		ServerResponse: googleapi.ServerResponse{
24623			Header:         res.Header,
24624			HTTPStatusCode: res.StatusCode,
24625		},
24626	}
24627	target := &ret
24628	if err := gensupport.DecodeResponse(target, res); err != nil {
24629		return nil, err
24630	}
24631	return ret, nil
24632	// {
24633	//   "description": "Deletes, fetches, gets, inserts and updates multiple datafeeds in a single request.",
24634	//   "flatPath": "datafeeds/batch",
24635	//   "httpMethod": "POST",
24636	//   "id": "content.datafeeds.custombatch",
24637	//   "parameterOrder": [],
24638	//   "parameters": {},
24639	//   "path": "datafeeds/batch",
24640	//   "request": {
24641	//     "$ref": "DatafeedsCustomBatchRequest"
24642	//   },
24643	//   "response": {
24644	//     "$ref": "DatafeedsCustomBatchResponse"
24645	//   },
24646	//   "scopes": [
24647	//     "https://www.googleapis.com/auth/content"
24648	//   ]
24649	// }
24650
24651}
24652
24653// method id "content.datafeeds.delete":
24654
24655type DatafeedsDeleteCall struct {
24656	s          *APIService
24657	merchantId uint64
24658	datafeedId uint64
24659	urlParams_ gensupport.URLParams
24660	ctx_       context.Context
24661	header_    http.Header
24662}
24663
24664// Delete: Deletes a datafeed configuration from your Merchant Center
24665// account.
24666//
24667// - datafeedId: The ID of the datafeed.
24668// - merchantId: The ID of the account that manages the datafeed. This
24669//   account cannot be a multi-client account.
24670func (r *DatafeedsService) Delete(merchantId uint64, datafeedId uint64) *DatafeedsDeleteCall {
24671	c := &DatafeedsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24672	c.merchantId = merchantId
24673	c.datafeedId = datafeedId
24674	return c
24675}
24676
24677// Fields allows partial responses to be retrieved. See
24678// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24679// for more information.
24680func (c *DatafeedsDeleteCall) Fields(s ...googleapi.Field) *DatafeedsDeleteCall {
24681	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24682	return c
24683}
24684
24685// Context sets the context to be used in this call's Do method. Any
24686// pending HTTP request will be aborted if the provided context is
24687// canceled.
24688func (c *DatafeedsDeleteCall) Context(ctx context.Context) *DatafeedsDeleteCall {
24689	c.ctx_ = ctx
24690	return c
24691}
24692
24693// Header returns an http.Header that can be modified by the caller to
24694// add HTTP headers to the request.
24695func (c *DatafeedsDeleteCall) Header() http.Header {
24696	if c.header_ == nil {
24697		c.header_ = make(http.Header)
24698	}
24699	return c.header_
24700}
24701
24702func (c *DatafeedsDeleteCall) doRequest(alt string) (*http.Response, error) {
24703	reqHeaders := make(http.Header)
24704	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
24705	for k, v := range c.header_ {
24706		reqHeaders[k] = v
24707	}
24708	reqHeaders.Set("User-Agent", c.s.userAgent())
24709	var body io.Reader = nil
24710	c.urlParams_.Set("alt", alt)
24711	c.urlParams_.Set("prettyPrint", "false")
24712	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds/{datafeedId}")
24713	urls += "?" + c.urlParams_.Encode()
24714	req, err := http.NewRequest("DELETE", urls, body)
24715	if err != nil {
24716		return nil, err
24717	}
24718	req.Header = reqHeaders
24719	googleapi.Expand(req.URL, map[string]string{
24720		"merchantId": strconv.FormatUint(c.merchantId, 10),
24721		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
24722	})
24723	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24724}
24725
24726// Do executes the "content.datafeeds.delete" call.
24727func (c *DatafeedsDeleteCall) Do(opts ...googleapi.CallOption) error {
24728	gensupport.SetOptions(c.urlParams_, opts...)
24729	res, err := c.doRequest("json")
24730	if err != nil {
24731		return err
24732	}
24733	defer googleapi.CloseBody(res)
24734	if err := googleapi.CheckResponse(res); err != nil {
24735		return err
24736	}
24737	return nil
24738	// {
24739	//   "description": "Deletes a datafeed configuration from your Merchant Center account.",
24740	//   "flatPath": "{merchantId}/datafeeds/{datafeedId}",
24741	//   "httpMethod": "DELETE",
24742	//   "id": "content.datafeeds.delete",
24743	//   "parameterOrder": [
24744	//     "merchantId",
24745	//     "datafeedId"
24746	//   ],
24747	//   "parameters": {
24748	//     "datafeedId": {
24749	//       "description": "The ID of the datafeed.",
24750	//       "format": "uint64",
24751	//       "location": "path",
24752	//       "required": true,
24753	//       "type": "string"
24754	//     },
24755	//     "merchantId": {
24756	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
24757	//       "format": "uint64",
24758	//       "location": "path",
24759	//       "required": true,
24760	//       "type": "string"
24761	//     }
24762	//   },
24763	//   "path": "{merchantId}/datafeeds/{datafeedId}",
24764	//   "scopes": [
24765	//     "https://www.googleapis.com/auth/content"
24766	//   ]
24767	// }
24768
24769}
24770
24771// method id "content.datafeeds.fetchnow":
24772
24773type DatafeedsFetchnowCall struct {
24774	s          *APIService
24775	merchantId uint64
24776	datafeedId uint64
24777	urlParams_ gensupport.URLParams
24778	ctx_       context.Context
24779	header_    http.Header
24780}
24781
24782// Fetchnow: Invokes a fetch for the datafeed in your Merchant Center
24783// account. If you need to call this method more than once per day, we
24784// recommend you use the Products service to update your product data.
24785//
24786// - datafeedId: The ID of the datafeed to be fetched.
24787// - merchantId: The ID of the account that manages the datafeed. This
24788//   account cannot be a multi-client account.
24789func (r *DatafeedsService) Fetchnow(merchantId uint64, datafeedId uint64) *DatafeedsFetchnowCall {
24790	c := &DatafeedsFetchnowCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24791	c.merchantId = merchantId
24792	c.datafeedId = datafeedId
24793	return c
24794}
24795
24796// Fields allows partial responses to be retrieved. See
24797// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24798// for more information.
24799func (c *DatafeedsFetchnowCall) Fields(s ...googleapi.Field) *DatafeedsFetchnowCall {
24800	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24801	return c
24802}
24803
24804// Context sets the context to be used in this call's Do method. Any
24805// pending HTTP request will be aborted if the provided context is
24806// canceled.
24807func (c *DatafeedsFetchnowCall) Context(ctx context.Context) *DatafeedsFetchnowCall {
24808	c.ctx_ = ctx
24809	return c
24810}
24811
24812// Header returns an http.Header that can be modified by the caller to
24813// add HTTP headers to the request.
24814func (c *DatafeedsFetchnowCall) Header() http.Header {
24815	if c.header_ == nil {
24816		c.header_ = make(http.Header)
24817	}
24818	return c.header_
24819}
24820
24821func (c *DatafeedsFetchnowCall) doRequest(alt string) (*http.Response, error) {
24822	reqHeaders := make(http.Header)
24823	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
24824	for k, v := range c.header_ {
24825		reqHeaders[k] = v
24826	}
24827	reqHeaders.Set("User-Agent", c.s.userAgent())
24828	var body io.Reader = nil
24829	c.urlParams_.Set("alt", alt)
24830	c.urlParams_.Set("prettyPrint", "false")
24831	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds/{datafeedId}/fetchNow")
24832	urls += "?" + c.urlParams_.Encode()
24833	req, err := http.NewRequest("POST", urls, body)
24834	if err != nil {
24835		return nil, err
24836	}
24837	req.Header = reqHeaders
24838	googleapi.Expand(req.URL, map[string]string{
24839		"merchantId": strconv.FormatUint(c.merchantId, 10),
24840		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
24841	})
24842	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24843}
24844
24845// Do executes the "content.datafeeds.fetchnow" call.
24846// Exactly one of *DatafeedsFetchNowResponse or error will be non-nil.
24847// Any non-2xx status code is an error. Response headers are in either
24848// *DatafeedsFetchNowResponse.ServerResponse.Header or (if a response
24849// was returned at all) in error.(*googleapi.Error).Header. Use
24850// googleapi.IsNotModified to check whether the returned error was
24851// because http.StatusNotModified was returned.
24852func (c *DatafeedsFetchnowCall) Do(opts ...googleapi.CallOption) (*DatafeedsFetchNowResponse, error) {
24853	gensupport.SetOptions(c.urlParams_, opts...)
24854	res, err := c.doRequest("json")
24855	if res != nil && res.StatusCode == http.StatusNotModified {
24856		if res.Body != nil {
24857			res.Body.Close()
24858		}
24859		return nil, &googleapi.Error{
24860			Code:   res.StatusCode,
24861			Header: res.Header,
24862		}
24863	}
24864	if err != nil {
24865		return nil, err
24866	}
24867	defer googleapi.CloseBody(res)
24868	if err := googleapi.CheckResponse(res); err != nil {
24869		return nil, err
24870	}
24871	ret := &DatafeedsFetchNowResponse{
24872		ServerResponse: googleapi.ServerResponse{
24873			Header:         res.Header,
24874			HTTPStatusCode: res.StatusCode,
24875		},
24876	}
24877	target := &ret
24878	if err := gensupport.DecodeResponse(target, res); err != nil {
24879		return nil, err
24880	}
24881	return ret, nil
24882	// {
24883	//   "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.",
24884	//   "flatPath": "{merchantId}/datafeeds/{datafeedId}/fetchNow",
24885	//   "httpMethod": "POST",
24886	//   "id": "content.datafeeds.fetchnow",
24887	//   "parameterOrder": [
24888	//     "merchantId",
24889	//     "datafeedId"
24890	//   ],
24891	//   "parameters": {
24892	//     "datafeedId": {
24893	//       "description": "The ID of the datafeed to be fetched.",
24894	//       "format": "uint64",
24895	//       "location": "path",
24896	//       "required": true,
24897	//       "type": "string"
24898	//     },
24899	//     "merchantId": {
24900	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
24901	//       "format": "uint64",
24902	//       "location": "path",
24903	//       "required": true,
24904	//       "type": "string"
24905	//     }
24906	//   },
24907	//   "path": "{merchantId}/datafeeds/{datafeedId}/fetchNow",
24908	//   "response": {
24909	//     "$ref": "DatafeedsFetchNowResponse"
24910	//   },
24911	//   "scopes": [
24912	//     "https://www.googleapis.com/auth/content"
24913	//   ]
24914	// }
24915
24916}
24917
24918// method id "content.datafeeds.get":
24919
24920type DatafeedsGetCall struct {
24921	s            *APIService
24922	merchantId   uint64
24923	datafeedId   uint64
24924	urlParams_   gensupport.URLParams
24925	ifNoneMatch_ string
24926	ctx_         context.Context
24927	header_      http.Header
24928}
24929
24930// Get: Retrieves a datafeed configuration from your Merchant Center
24931// account.
24932//
24933// - datafeedId: The ID of the datafeed.
24934// - merchantId: The ID of the account that manages the datafeed. This
24935//   account cannot be a multi-client account.
24936func (r *DatafeedsService) Get(merchantId uint64, datafeedId uint64) *DatafeedsGetCall {
24937	c := &DatafeedsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24938	c.merchantId = merchantId
24939	c.datafeedId = datafeedId
24940	return c
24941}
24942
24943// Fields allows partial responses to be retrieved. See
24944// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24945// for more information.
24946func (c *DatafeedsGetCall) Fields(s ...googleapi.Field) *DatafeedsGetCall {
24947	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24948	return c
24949}
24950
24951// IfNoneMatch sets the optional parameter which makes the operation
24952// fail if the object's ETag matches the given value. This is useful for
24953// getting updates only after the object has changed since the last
24954// request. Use googleapi.IsNotModified to check whether the response
24955// error from Do is the result of In-None-Match.
24956func (c *DatafeedsGetCall) IfNoneMatch(entityTag string) *DatafeedsGetCall {
24957	c.ifNoneMatch_ = entityTag
24958	return c
24959}
24960
24961// Context sets the context to be used in this call's Do method. Any
24962// pending HTTP request will be aborted if the provided context is
24963// canceled.
24964func (c *DatafeedsGetCall) Context(ctx context.Context) *DatafeedsGetCall {
24965	c.ctx_ = ctx
24966	return c
24967}
24968
24969// Header returns an http.Header that can be modified by the caller to
24970// add HTTP headers to the request.
24971func (c *DatafeedsGetCall) Header() http.Header {
24972	if c.header_ == nil {
24973		c.header_ = make(http.Header)
24974	}
24975	return c.header_
24976}
24977
24978func (c *DatafeedsGetCall) doRequest(alt string) (*http.Response, error) {
24979	reqHeaders := make(http.Header)
24980	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
24981	for k, v := range c.header_ {
24982		reqHeaders[k] = v
24983	}
24984	reqHeaders.Set("User-Agent", c.s.userAgent())
24985	if c.ifNoneMatch_ != "" {
24986		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
24987	}
24988	var body io.Reader = nil
24989	c.urlParams_.Set("alt", alt)
24990	c.urlParams_.Set("prettyPrint", "false")
24991	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds/{datafeedId}")
24992	urls += "?" + c.urlParams_.Encode()
24993	req, err := http.NewRequest("GET", urls, body)
24994	if err != nil {
24995		return nil, err
24996	}
24997	req.Header = reqHeaders
24998	googleapi.Expand(req.URL, map[string]string{
24999		"merchantId": strconv.FormatUint(c.merchantId, 10),
25000		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
25001	})
25002	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25003}
25004
25005// Do executes the "content.datafeeds.get" call.
25006// Exactly one of *Datafeed or error will be non-nil. Any non-2xx status
25007// code is an error. Response headers are in either
25008// *Datafeed.ServerResponse.Header or (if a response was returned at
25009// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
25010// to check whether the returned error was because
25011// http.StatusNotModified was returned.
25012func (c *DatafeedsGetCall) Do(opts ...googleapi.CallOption) (*Datafeed, error) {
25013	gensupport.SetOptions(c.urlParams_, opts...)
25014	res, err := c.doRequest("json")
25015	if res != nil && res.StatusCode == http.StatusNotModified {
25016		if res.Body != nil {
25017			res.Body.Close()
25018		}
25019		return nil, &googleapi.Error{
25020			Code:   res.StatusCode,
25021			Header: res.Header,
25022		}
25023	}
25024	if err != nil {
25025		return nil, err
25026	}
25027	defer googleapi.CloseBody(res)
25028	if err := googleapi.CheckResponse(res); err != nil {
25029		return nil, err
25030	}
25031	ret := &Datafeed{
25032		ServerResponse: googleapi.ServerResponse{
25033			Header:         res.Header,
25034			HTTPStatusCode: res.StatusCode,
25035		},
25036	}
25037	target := &ret
25038	if err := gensupport.DecodeResponse(target, res); err != nil {
25039		return nil, err
25040	}
25041	return ret, nil
25042	// {
25043	//   "description": "Retrieves a datafeed configuration from your Merchant Center account.",
25044	//   "flatPath": "{merchantId}/datafeeds/{datafeedId}",
25045	//   "httpMethod": "GET",
25046	//   "id": "content.datafeeds.get",
25047	//   "parameterOrder": [
25048	//     "merchantId",
25049	//     "datafeedId"
25050	//   ],
25051	//   "parameters": {
25052	//     "datafeedId": {
25053	//       "description": "The ID of the datafeed.",
25054	//       "format": "uint64",
25055	//       "location": "path",
25056	//       "required": true,
25057	//       "type": "string"
25058	//     },
25059	//     "merchantId": {
25060	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
25061	//       "format": "uint64",
25062	//       "location": "path",
25063	//       "required": true,
25064	//       "type": "string"
25065	//     }
25066	//   },
25067	//   "path": "{merchantId}/datafeeds/{datafeedId}",
25068	//   "response": {
25069	//     "$ref": "Datafeed"
25070	//   },
25071	//   "scopes": [
25072	//     "https://www.googleapis.com/auth/content"
25073	//   ]
25074	// }
25075
25076}
25077
25078// method id "content.datafeeds.insert":
25079
25080type DatafeedsInsertCall struct {
25081	s          *APIService
25082	merchantId uint64
25083	datafeed   *Datafeed
25084	urlParams_ gensupport.URLParams
25085	ctx_       context.Context
25086	header_    http.Header
25087}
25088
25089// Insert: Registers a datafeed configuration with your Merchant Center
25090// account.
25091//
25092// - merchantId: The ID of the account that manages the datafeed. This
25093//   account cannot be a multi-client account.
25094func (r *DatafeedsService) Insert(merchantId uint64, datafeed *Datafeed) *DatafeedsInsertCall {
25095	c := &DatafeedsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25096	c.merchantId = merchantId
25097	c.datafeed = datafeed
25098	return c
25099}
25100
25101// Fields allows partial responses to be retrieved. See
25102// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25103// for more information.
25104func (c *DatafeedsInsertCall) Fields(s ...googleapi.Field) *DatafeedsInsertCall {
25105	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25106	return c
25107}
25108
25109// Context sets the context to be used in this call's Do method. Any
25110// pending HTTP request will be aborted if the provided context is
25111// canceled.
25112func (c *DatafeedsInsertCall) Context(ctx context.Context) *DatafeedsInsertCall {
25113	c.ctx_ = ctx
25114	return c
25115}
25116
25117// Header returns an http.Header that can be modified by the caller to
25118// add HTTP headers to the request.
25119func (c *DatafeedsInsertCall) Header() http.Header {
25120	if c.header_ == nil {
25121		c.header_ = make(http.Header)
25122	}
25123	return c.header_
25124}
25125
25126func (c *DatafeedsInsertCall) doRequest(alt string) (*http.Response, error) {
25127	reqHeaders := make(http.Header)
25128	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
25129	for k, v := range c.header_ {
25130		reqHeaders[k] = v
25131	}
25132	reqHeaders.Set("User-Agent", c.s.userAgent())
25133	var body io.Reader = nil
25134	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeed)
25135	if err != nil {
25136		return nil, err
25137	}
25138	reqHeaders.Set("Content-Type", "application/json")
25139	c.urlParams_.Set("alt", alt)
25140	c.urlParams_.Set("prettyPrint", "false")
25141	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds")
25142	urls += "?" + c.urlParams_.Encode()
25143	req, err := http.NewRequest("POST", urls, body)
25144	if err != nil {
25145		return nil, err
25146	}
25147	req.Header = reqHeaders
25148	googleapi.Expand(req.URL, map[string]string{
25149		"merchantId": strconv.FormatUint(c.merchantId, 10),
25150	})
25151	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25152}
25153
25154// Do executes the "content.datafeeds.insert" call.
25155// Exactly one of *Datafeed or error will be non-nil. Any non-2xx status
25156// code is an error. Response headers are in either
25157// *Datafeed.ServerResponse.Header or (if a response was returned at
25158// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
25159// to check whether the returned error was because
25160// http.StatusNotModified was returned.
25161func (c *DatafeedsInsertCall) Do(opts ...googleapi.CallOption) (*Datafeed, error) {
25162	gensupport.SetOptions(c.urlParams_, opts...)
25163	res, err := c.doRequest("json")
25164	if res != nil && res.StatusCode == http.StatusNotModified {
25165		if res.Body != nil {
25166			res.Body.Close()
25167		}
25168		return nil, &googleapi.Error{
25169			Code:   res.StatusCode,
25170			Header: res.Header,
25171		}
25172	}
25173	if err != nil {
25174		return nil, err
25175	}
25176	defer googleapi.CloseBody(res)
25177	if err := googleapi.CheckResponse(res); err != nil {
25178		return nil, err
25179	}
25180	ret := &Datafeed{
25181		ServerResponse: googleapi.ServerResponse{
25182			Header:         res.Header,
25183			HTTPStatusCode: res.StatusCode,
25184		},
25185	}
25186	target := &ret
25187	if err := gensupport.DecodeResponse(target, res); err != nil {
25188		return nil, err
25189	}
25190	return ret, nil
25191	// {
25192	//   "description": "Registers a datafeed configuration with your Merchant Center account.",
25193	//   "flatPath": "{merchantId}/datafeeds",
25194	//   "httpMethod": "POST",
25195	//   "id": "content.datafeeds.insert",
25196	//   "parameterOrder": [
25197	//     "merchantId"
25198	//   ],
25199	//   "parameters": {
25200	//     "merchantId": {
25201	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
25202	//       "format": "uint64",
25203	//       "location": "path",
25204	//       "required": true,
25205	//       "type": "string"
25206	//     }
25207	//   },
25208	//   "path": "{merchantId}/datafeeds",
25209	//   "request": {
25210	//     "$ref": "Datafeed"
25211	//   },
25212	//   "response": {
25213	//     "$ref": "Datafeed"
25214	//   },
25215	//   "scopes": [
25216	//     "https://www.googleapis.com/auth/content"
25217	//   ]
25218	// }
25219
25220}
25221
25222// method id "content.datafeeds.list":
25223
25224type DatafeedsListCall struct {
25225	s            *APIService
25226	merchantId   uint64
25227	urlParams_   gensupport.URLParams
25228	ifNoneMatch_ string
25229	ctx_         context.Context
25230	header_      http.Header
25231}
25232
25233// List: Lists the configurations for datafeeds in your Merchant Center
25234// account.
25235//
25236// - merchantId: The ID of the account that manages the datafeeds. This
25237//   account cannot be a multi-client account.
25238func (r *DatafeedsService) List(merchantId uint64) *DatafeedsListCall {
25239	c := &DatafeedsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25240	c.merchantId = merchantId
25241	return c
25242}
25243
25244// MaxResults sets the optional parameter "maxResults": The maximum
25245// number of products to return in the response, used for paging.
25246func (c *DatafeedsListCall) MaxResults(maxResults int64) *DatafeedsListCall {
25247	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
25248	return c
25249}
25250
25251// PageToken sets the optional parameter "pageToken": The token returned
25252// by the previous request.
25253func (c *DatafeedsListCall) PageToken(pageToken string) *DatafeedsListCall {
25254	c.urlParams_.Set("pageToken", pageToken)
25255	return c
25256}
25257
25258// Fields allows partial responses to be retrieved. See
25259// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25260// for more information.
25261func (c *DatafeedsListCall) Fields(s ...googleapi.Field) *DatafeedsListCall {
25262	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25263	return c
25264}
25265
25266// IfNoneMatch sets the optional parameter which makes the operation
25267// fail if the object's ETag matches the given value. This is useful for
25268// getting updates only after the object has changed since the last
25269// request. Use googleapi.IsNotModified to check whether the response
25270// error from Do is the result of In-None-Match.
25271func (c *DatafeedsListCall) IfNoneMatch(entityTag string) *DatafeedsListCall {
25272	c.ifNoneMatch_ = entityTag
25273	return c
25274}
25275
25276// Context sets the context to be used in this call's Do method. Any
25277// pending HTTP request will be aborted if the provided context is
25278// canceled.
25279func (c *DatafeedsListCall) Context(ctx context.Context) *DatafeedsListCall {
25280	c.ctx_ = ctx
25281	return c
25282}
25283
25284// Header returns an http.Header that can be modified by the caller to
25285// add HTTP headers to the request.
25286func (c *DatafeedsListCall) Header() http.Header {
25287	if c.header_ == nil {
25288		c.header_ = make(http.Header)
25289	}
25290	return c.header_
25291}
25292
25293func (c *DatafeedsListCall) doRequest(alt string) (*http.Response, error) {
25294	reqHeaders := make(http.Header)
25295	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
25296	for k, v := range c.header_ {
25297		reqHeaders[k] = v
25298	}
25299	reqHeaders.Set("User-Agent", c.s.userAgent())
25300	if c.ifNoneMatch_ != "" {
25301		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
25302	}
25303	var body io.Reader = nil
25304	c.urlParams_.Set("alt", alt)
25305	c.urlParams_.Set("prettyPrint", "false")
25306	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds")
25307	urls += "?" + c.urlParams_.Encode()
25308	req, err := http.NewRequest("GET", urls, body)
25309	if err != nil {
25310		return nil, err
25311	}
25312	req.Header = reqHeaders
25313	googleapi.Expand(req.URL, map[string]string{
25314		"merchantId": strconv.FormatUint(c.merchantId, 10),
25315	})
25316	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25317}
25318
25319// Do executes the "content.datafeeds.list" call.
25320// Exactly one of *DatafeedsListResponse or error will be non-nil. Any
25321// non-2xx status code is an error. Response headers are in either
25322// *DatafeedsListResponse.ServerResponse.Header or (if a response was
25323// returned at all) in error.(*googleapi.Error).Header. Use
25324// googleapi.IsNotModified to check whether the returned error was
25325// because http.StatusNotModified was returned.
25326func (c *DatafeedsListCall) Do(opts ...googleapi.CallOption) (*DatafeedsListResponse, error) {
25327	gensupport.SetOptions(c.urlParams_, opts...)
25328	res, err := c.doRequest("json")
25329	if res != nil && res.StatusCode == http.StatusNotModified {
25330		if res.Body != nil {
25331			res.Body.Close()
25332		}
25333		return nil, &googleapi.Error{
25334			Code:   res.StatusCode,
25335			Header: res.Header,
25336		}
25337	}
25338	if err != nil {
25339		return nil, err
25340	}
25341	defer googleapi.CloseBody(res)
25342	if err := googleapi.CheckResponse(res); err != nil {
25343		return nil, err
25344	}
25345	ret := &DatafeedsListResponse{
25346		ServerResponse: googleapi.ServerResponse{
25347			Header:         res.Header,
25348			HTTPStatusCode: res.StatusCode,
25349		},
25350	}
25351	target := &ret
25352	if err := gensupport.DecodeResponse(target, res); err != nil {
25353		return nil, err
25354	}
25355	return ret, nil
25356	// {
25357	//   "description": "Lists the configurations for datafeeds in your Merchant Center account.",
25358	//   "flatPath": "{merchantId}/datafeeds",
25359	//   "httpMethod": "GET",
25360	//   "id": "content.datafeeds.list",
25361	//   "parameterOrder": [
25362	//     "merchantId"
25363	//   ],
25364	//   "parameters": {
25365	//     "maxResults": {
25366	//       "description": "The maximum number of products to return in the response, used for paging.",
25367	//       "format": "uint32",
25368	//       "location": "query",
25369	//       "type": "integer"
25370	//     },
25371	//     "merchantId": {
25372	//       "description": "The ID of the account that manages the datafeeds. This account cannot be a multi-client account.",
25373	//       "format": "uint64",
25374	//       "location": "path",
25375	//       "required": true,
25376	//       "type": "string"
25377	//     },
25378	//     "pageToken": {
25379	//       "description": "The token returned by the previous request.",
25380	//       "location": "query",
25381	//       "type": "string"
25382	//     }
25383	//   },
25384	//   "path": "{merchantId}/datafeeds",
25385	//   "response": {
25386	//     "$ref": "DatafeedsListResponse"
25387	//   },
25388	//   "scopes": [
25389	//     "https://www.googleapis.com/auth/content"
25390	//   ]
25391	// }
25392
25393}
25394
25395// Pages invokes f for each page of results.
25396// A non-nil error returned from f will halt the iteration.
25397// The provided context supersedes any context provided to the Context method.
25398func (c *DatafeedsListCall) Pages(ctx context.Context, f func(*DatafeedsListResponse) error) error {
25399	c.ctx_ = ctx
25400	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
25401	for {
25402		x, err := c.Do()
25403		if err != nil {
25404			return err
25405		}
25406		if err := f(x); err != nil {
25407			return err
25408		}
25409		if x.NextPageToken == "" {
25410			return nil
25411		}
25412		c.PageToken(x.NextPageToken)
25413	}
25414}
25415
25416// method id "content.datafeeds.update":
25417
25418type DatafeedsUpdateCall struct {
25419	s          *APIService
25420	merchantId uint64
25421	datafeedId uint64
25422	datafeed   *Datafeed
25423	urlParams_ gensupport.URLParams
25424	ctx_       context.Context
25425	header_    http.Header
25426}
25427
25428// Update: Updates a datafeed configuration of your Merchant Center
25429// account. Any fields that are not provided are deleted from the
25430// resource.
25431//
25432// - datafeedId: The ID of the datafeed.
25433// - merchantId: The ID of the account that manages the datafeed. This
25434//   account cannot be a multi-client account.
25435func (r *DatafeedsService) Update(merchantId uint64, datafeedId uint64, datafeed *Datafeed) *DatafeedsUpdateCall {
25436	c := &DatafeedsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25437	c.merchantId = merchantId
25438	c.datafeedId = datafeedId
25439	c.datafeed = datafeed
25440	return c
25441}
25442
25443// Fields allows partial responses to be retrieved. See
25444// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25445// for more information.
25446func (c *DatafeedsUpdateCall) Fields(s ...googleapi.Field) *DatafeedsUpdateCall {
25447	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25448	return c
25449}
25450
25451// Context sets the context to be used in this call's Do method. Any
25452// pending HTTP request will be aborted if the provided context is
25453// canceled.
25454func (c *DatafeedsUpdateCall) Context(ctx context.Context) *DatafeedsUpdateCall {
25455	c.ctx_ = ctx
25456	return c
25457}
25458
25459// Header returns an http.Header that can be modified by the caller to
25460// add HTTP headers to the request.
25461func (c *DatafeedsUpdateCall) Header() http.Header {
25462	if c.header_ == nil {
25463		c.header_ = make(http.Header)
25464	}
25465	return c.header_
25466}
25467
25468func (c *DatafeedsUpdateCall) doRequest(alt string) (*http.Response, error) {
25469	reqHeaders := make(http.Header)
25470	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
25471	for k, v := range c.header_ {
25472		reqHeaders[k] = v
25473	}
25474	reqHeaders.Set("User-Agent", c.s.userAgent())
25475	var body io.Reader = nil
25476	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeed)
25477	if err != nil {
25478		return nil, err
25479	}
25480	reqHeaders.Set("Content-Type", "application/json")
25481	c.urlParams_.Set("alt", alt)
25482	c.urlParams_.Set("prettyPrint", "false")
25483	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds/{datafeedId}")
25484	urls += "?" + c.urlParams_.Encode()
25485	req, err := http.NewRequest("PUT", urls, body)
25486	if err != nil {
25487		return nil, err
25488	}
25489	req.Header = reqHeaders
25490	googleapi.Expand(req.URL, map[string]string{
25491		"merchantId": strconv.FormatUint(c.merchantId, 10),
25492		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
25493	})
25494	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25495}
25496
25497// Do executes the "content.datafeeds.update" call.
25498// Exactly one of *Datafeed or error will be non-nil. Any non-2xx status
25499// code is an error. Response headers are in either
25500// *Datafeed.ServerResponse.Header or (if a response was returned at
25501// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
25502// to check whether the returned error was because
25503// http.StatusNotModified was returned.
25504func (c *DatafeedsUpdateCall) Do(opts ...googleapi.CallOption) (*Datafeed, error) {
25505	gensupport.SetOptions(c.urlParams_, opts...)
25506	res, err := c.doRequest("json")
25507	if res != nil && res.StatusCode == http.StatusNotModified {
25508		if res.Body != nil {
25509			res.Body.Close()
25510		}
25511		return nil, &googleapi.Error{
25512			Code:   res.StatusCode,
25513			Header: res.Header,
25514		}
25515	}
25516	if err != nil {
25517		return nil, err
25518	}
25519	defer googleapi.CloseBody(res)
25520	if err := googleapi.CheckResponse(res); err != nil {
25521		return nil, err
25522	}
25523	ret := &Datafeed{
25524		ServerResponse: googleapi.ServerResponse{
25525			Header:         res.Header,
25526			HTTPStatusCode: res.StatusCode,
25527		},
25528	}
25529	target := &ret
25530	if err := gensupport.DecodeResponse(target, res); err != nil {
25531		return nil, err
25532	}
25533	return ret, nil
25534	// {
25535	//   "description": "Updates a datafeed configuration of your Merchant Center account. Any fields that are not provided are deleted from the resource.",
25536	//   "flatPath": "{merchantId}/datafeeds/{datafeedId}",
25537	//   "httpMethod": "PUT",
25538	//   "id": "content.datafeeds.update",
25539	//   "parameterOrder": [
25540	//     "merchantId",
25541	//     "datafeedId"
25542	//   ],
25543	//   "parameters": {
25544	//     "datafeedId": {
25545	//       "description": "The ID of the datafeed.",
25546	//       "format": "uint64",
25547	//       "location": "path",
25548	//       "required": true,
25549	//       "type": "string"
25550	//     },
25551	//     "merchantId": {
25552	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
25553	//       "format": "uint64",
25554	//       "location": "path",
25555	//       "required": true,
25556	//       "type": "string"
25557	//     }
25558	//   },
25559	//   "path": "{merchantId}/datafeeds/{datafeedId}",
25560	//   "request": {
25561	//     "$ref": "Datafeed"
25562	//   },
25563	//   "response": {
25564	//     "$ref": "Datafeed"
25565	//   },
25566	//   "scopes": [
25567	//     "https://www.googleapis.com/auth/content"
25568	//   ]
25569	// }
25570
25571}
25572
25573// method id "content.datafeedstatuses.custombatch":
25574
25575type DatafeedstatusesCustombatchCall struct {
25576	s                                  *APIService
25577	datafeedstatusescustombatchrequest *DatafeedstatusesCustomBatchRequest
25578	urlParams_                         gensupport.URLParams
25579	ctx_                               context.Context
25580	header_                            http.Header
25581}
25582
25583// Custombatch: Gets multiple Merchant Center datafeed statuses in a
25584// single request.
25585func (r *DatafeedstatusesService) Custombatch(datafeedstatusescustombatchrequest *DatafeedstatusesCustomBatchRequest) *DatafeedstatusesCustombatchCall {
25586	c := &DatafeedstatusesCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25587	c.datafeedstatusescustombatchrequest = datafeedstatusescustombatchrequest
25588	return c
25589}
25590
25591// Fields allows partial responses to be retrieved. See
25592// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25593// for more information.
25594func (c *DatafeedstatusesCustombatchCall) Fields(s ...googleapi.Field) *DatafeedstatusesCustombatchCall {
25595	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25596	return c
25597}
25598
25599// Context sets the context to be used in this call's Do method. Any
25600// pending HTTP request will be aborted if the provided context is
25601// canceled.
25602func (c *DatafeedstatusesCustombatchCall) Context(ctx context.Context) *DatafeedstatusesCustombatchCall {
25603	c.ctx_ = ctx
25604	return c
25605}
25606
25607// Header returns an http.Header that can be modified by the caller to
25608// add HTTP headers to the request.
25609func (c *DatafeedstatusesCustombatchCall) Header() http.Header {
25610	if c.header_ == nil {
25611		c.header_ = make(http.Header)
25612	}
25613	return c.header_
25614}
25615
25616func (c *DatafeedstatusesCustombatchCall) doRequest(alt string) (*http.Response, error) {
25617	reqHeaders := make(http.Header)
25618	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
25619	for k, v := range c.header_ {
25620		reqHeaders[k] = v
25621	}
25622	reqHeaders.Set("User-Agent", c.s.userAgent())
25623	var body io.Reader = nil
25624	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeedstatusescustombatchrequest)
25625	if err != nil {
25626		return nil, err
25627	}
25628	reqHeaders.Set("Content-Type", "application/json")
25629	c.urlParams_.Set("alt", alt)
25630	c.urlParams_.Set("prettyPrint", "false")
25631	urls := googleapi.ResolveRelative(c.s.BasePath, "datafeedstatuses/batch")
25632	urls += "?" + c.urlParams_.Encode()
25633	req, err := http.NewRequest("POST", urls, body)
25634	if err != nil {
25635		return nil, err
25636	}
25637	req.Header = reqHeaders
25638	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25639}
25640
25641// Do executes the "content.datafeedstatuses.custombatch" call.
25642// Exactly one of *DatafeedstatusesCustomBatchResponse or error will be
25643// non-nil. Any non-2xx status code is an error. Response headers are in
25644// either *DatafeedstatusesCustomBatchResponse.ServerResponse.Header or
25645// (if a response was returned at all) in
25646// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
25647// whether the returned error was because http.StatusNotModified was
25648// returned.
25649func (c *DatafeedstatusesCustombatchCall) Do(opts ...googleapi.CallOption) (*DatafeedstatusesCustomBatchResponse, error) {
25650	gensupport.SetOptions(c.urlParams_, opts...)
25651	res, err := c.doRequest("json")
25652	if res != nil && res.StatusCode == http.StatusNotModified {
25653		if res.Body != nil {
25654			res.Body.Close()
25655		}
25656		return nil, &googleapi.Error{
25657			Code:   res.StatusCode,
25658			Header: res.Header,
25659		}
25660	}
25661	if err != nil {
25662		return nil, err
25663	}
25664	defer googleapi.CloseBody(res)
25665	if err := googleapi.CheckResponse(res); err != nil {
25666		return nil, err
25667	}
25668	ret := &DatafeedstatusesCustomBatchResponse{
25669		ServerResponse: googleapi.ServerResponse{
25670			Header:         res.Header,
25671			HTTPStatusCode: res.StatusCode,
25672		},
25673	}
25674	target := &ret
25675	if err := gensupport.DecodeResponse(target, res); err != nil {
25676		return nil, err
25677	}
25678	return ret, nil
25679	// {
25680	//   "description": "Gets multiple Merchant Center datafeed statuses in a single request.",
25681	//   "flatPath": "datafeedstatuses/batch",
25682	//   "httpMethod": "POST",
25683	//   "id": "content.datafeedstatuses.custombatch",
25684	//   "parameterOrder": [],
25685	//   "parameters": {},
25686	//   "path": "datafeedstatuses/batch",
25687	//   "request": {
25688	//     "$ref": "DatafeedstatusesCustomBatchRequest"
25689	//   },
25690	//   "response": {
25691	//     "$ref": "DatafeedstatusesCustomBatchResponse"
25692	//   },
25693	//   "scopes": [
25694	//     "https://www.googleapis.com/auth/content"
25695	//   ]
25696	// }
25697
25698}
25699
25700// method id "content.datafeedstatuses.get":
25701
25702type DatafeedstatusesGetCall struct {
25703	s            *APIService
25704	merchantId   uint64
25705	datafeedId   uint64
25706	urlParams_   gensupport.URLParams
25707	ifNoneMatch_ string
25708	ctx_         context.Context
25709	header_      http.Header
25710}
25711
25712// Get: Retrieves the status of a datafeed from your Merchant Center
25713// account.
25714//
25715// - datafeedId: The ID of the datafeed.
25716// - merchantId: The ID of the account that manages the datafeed. This
25717//   account cannot be a multi-client account.
25718func (r *DatafeedstatusesService) Get(merchantId uint64, datafeedId uint64) *DatafeedstatusesGetCall {
25719	c := &DatafeedstatusesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25720	c.merchantId = merchantId
25721	c.datafeedId = datafeedId
25722	return c
25723}
25724
25725// Country sets the optional parameter "country": The country for which
25726// to get the datafeed status. If this parameter is provided then
25727// language must also be provided. Note that this parameter is required
25728// for feeds targeting multiple countries and languages, since a feed
25729// may have a different status for each target.
25730func (c *DatafeedstatusesGetCall) Country(country string) *DatafeedstatusesGetCall {
25731	c.urlParams_.Set("country", country)
25732	return c
25733}
25734
25735// Language sets the optional parameter "language": The language for
25736// which to get the datafeed status. If this parameter is provided then
25737// country must also be provided. Note that this parameter is required
25738// for feeds targeting multiple countries and languages, since a feed
25739// may have a different status for each target.
25740func (c *DatafeedstatusesGetCall) Language(language string) *DatafeedstatusesGetCall {
25741	c.urlParams_.Set("language", language)
25742	return c
25743}
25744
25745// Fields allows partial responses to be retrieved. See
25746// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25747// for more information.
25748func (c *DatafeedstatusesGetCall) Fields(s ...googleapi.Field) *DatafeedstatusesGetCall {
25749	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25750	return c
25751}
25752
25753// IfNoneMatch sets the optional parameter which makes the operation
25754// fail if the object's ETag matches the given value. This is useful for
25755// getting updates only after the object has changed since the last
25756// request. Use googleapi.IsNotModified to check whether the response
25757// error from Do is the result of In-None-Match.
25758func (c *DatafeedstatusesGetCall) IfNoneMatch(entityTag string) *DatafeedstatusesGetCall {
25759	c.ifNoneMatch_ = entityTag
25760	return c
25761}
25762
25763// Context sets the context to be used in this call's Do method. Any
25764// pending HTTP request will be aborted if the provided context is
25765// canceled.
25766func (c *DatafeedstatusesGetCall) Context(ctx context.Context) *DatafeedstatusesGetCall {
25767	c.ctx_ = ctx
25768	return c
25769}
25770
25771// Header returns an http.Header that can be modified by the caller to
25772// add HTTP headers to the request.
25773func (c *DatafeedstatusesGetCall) Header() http.Header {
25774	if c.header_ == nil {
25775		c.header_ = make(http.Header)
25776	}
25777	return c.header_
25778}
25779
25780func (c *DatafeedstatusesGetCall) doRequest(alt string) (*http.Response, error) {
25781	reqHeaders := make(http.Header)
25782	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
25783	for k, v := range c.header_ {
25784		reqHeaders[k] = v
25785	}
25786	reqHeaders.Set("User-Agent", c.s.userAgent())
25787	if c.ifNoneMatch_ != "" {
25788		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
25789	}
25790	var body io.Reader = nil
25791	c.urlParams_.Set("alt", alt)
25792	c.urlParams_.Set("prettyPrint", "false")
25793	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeedstatuses/{datafeedId}")
25794	urls += "?" + c.urlParams_.Encode()
25795	req, err := http.NewRequest("GET", urls, body)
25796	if err != nil {
25797		return nil, err
25798	}
25799	req.Header = reqHeaders
25800	googleapi.Expand(req.URL, map[string]string{
25801		"merchantId": strconv.FormatUint(c.merchantId, 10),
25802		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
25803	})
25804	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25805}
25806
25807// Do executes the "content.datafeedstatuses.get" call.
25808// Exactly one of *DatafeedStatus or error will be non-nil. Any non-2xx
25809// status code is an error. Response headers are in either
25810// *DatafeedStatus.ServerResponse.Header or (if a response was returned
25811// at all) in error.(*googleapi.Error).Header. Use
25812// googleapi.IsNotModified to check whether the returned error was
25813// because http.StatusNotModified was returned.
25814func (c *DatafeedstatusesGetCall) Do(opts ...googleapi.CallOption) (*DatafeedStatus, error) {
25815	gensupport.SetOptions(c.urlParams_, opts...)
25816	res, err := c.doRequest("json")
25817	if res != nil && res.StatusCode == http.StatusNotModified {
25818		if res.Body != nil {
25819			res.Body.Close()
25820		}
25821		return nil, &googleapi.Error{
25822			Code:   res.StatusCode,
25823			Header: res.Header,
25824		}
25825	}
25826	if err != nil {
25827		return nil, err
25828	}
25829	defer googleapi.CloseBody(res)
25830	if err := googleapi.CheckResponse(res); err != nil {
25831		return nil, err
25832	}
25833	ret := &DatafeedStatus{
25834		ServerResponse: googleapi.ServerResponse{
25835			Header:         res.Header,
25836			HTTPStatusCode: res.StatusCode,
25837		},
25838	}
25839	target := &ret
25840	if err := gensupport.DecodeResponse(target, res); err != nil {
25841		return nil, err
25842	}
25843	return ret, nil
25844	// {
25845	//   "description": "Retrieves the status of a datafeed from your Merchant Center account.",
25846	//   "flatPath": "{merchantId}/datafeedstatuses/{datafeedId}",
25847	//   "httpMethod": "GET",
25848	//   "id": "content.datafeedstatuses.get",
25849	//   "parameterOrder": [
25850	//     "merchantId",
25851	//     "datafeedId"
25852	//   ],
25853	//   "parameters": {
25854	//     "country": {
25855	//       "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.",
25856	//       "location": "query",
25857	//       "type": "string"
25858	//     },
25859	//     "datafeedId": {
25860	//       "description": "The ID of the datafeed.",
25861	//       "format": "uint64",
25862	//       "location": "path",
25863	//       "required": true,
25864	//       "type": "string"
25865	//     },
25866	//     "language": {
25867	//       "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.",
25868	//       "location": "query",
25869	//       "type": "string"
25870	//     },
25871	//     "merchantId": {
25872	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
25873	//       "format": "uint64",
25874	//       "location": "path",
25875	//       "required": true,
25876	//       "type": "string"
25877	//     }
25878	//   },
25879	//   "path": "{merchantId}/datafeedstatuses/{datafeedId}",
25880	//   "response": {
25881	//     "$ref": "DatafeedStatus"
25882	//   },
25883	//   "scopes": [
25884	//     "https://www.googleapis.com/auth/content"
25885	//   ]
25886	// }
25887
25888}
25889
25890// method id "content.datafeedstatuses.list":
25891
25892type DatafeedstatusesListCall struct {
25893	s            *APIService
25894	merchantId   uint64
25895	urlParams_   gensupport.URLParams
25896	ifNoneMatch_ string
25897	ctx_         context.Context
25898	header_      http.Header
25899}
25900
25901// List: Lists the statuses of the datafeeds in your Merchant Center
25902// account.
25903//
25904// - merchantId: The ID of the account that manages the datafeeds. This
25905//   account cannot be a multi-client account.
25906func (r *DatafeedstatusesService) List(merchantId uint64) *DatafeedstatusesListCall {
25907	c := &DatafeedstatusesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25908	c.merchantId = merchantId
25909	return c
25910}
25911
25912// MaxResults sets the optional parameter "maxResults": The maximum
25913// number of products to return in the response, used for paging.
25914func (c *DatafeedstatusesListCall) MaxResults(maxResults int64) *DatafeedstatusesListCall {
25915	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
25916	return c
25917}
25918
25919// PageToken sets the optional parameter "pageToken": The token returned
25920// by the previous request.
25921func (c *DatafeedstatusesListCall) PageToken(pageToken string) *DatafeedstatusesListCall {
25922	c.urlParams_.Set("pageToken", pageToken)
25923	return c
25924}
25925
25926// Fields allows partial responses to be retrieved. See
25927// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25928// for more information.
25929func (c *DatafeedstatusesListCall) Fields(s ...googleapi.Field) *DatafeedstatusesListCall {
25930	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25931	return c
25932}
25933
25934// IfNoneMatch sets the optional parameter which makes the operation
25935// fail if the object's ETag matches the given value. This is useful for
25936// getting updates only after the object has changed since the last
25937// request. Use googleapi.IsNotModified to check whether the response
25938// error from Do is the result of In-None-Match.
25939func (c *DatafeedstatusesListCall) IfNoneMatch(entityTag string) *DatafeedstatusesListCall {
25940	c.ifNoneMatch_ = entityTag
25941	return c
25942}
25943
25944// Context sets the context to be used in this call's Do method. Any
25945// pending HTTP request will be aborted if the provided context is
25946// canceled.
25947func (c *DatafeedstatusesListCall) Context(ctx context.Context) *DatafeedstatusesListCall {
25948	c.ctx_ = ctx
25949	return c
25950}
25951
25952// Header returns an http.Header that can be modified by the caller to
25953// add HTTP headers to the request.
25954func (c *DatafeedstatusesListCall) Header() http.Header {
25955	if c.header_ == nil {
25956		c.header_ = make(http.Header)
25957	}
25958	return c.header_
25959}
25960
25961func (c *DatafeedstatusesListCall) doRequest(alt string) (*http.Response, error) {
25962	reqHeaders := make(http.Header)
25963	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
25964	for k, v := range c.header_ {
25965		reqHeaders[k] = v
25966	}
25967	reqHeaders.Set("User-Agent", c.s.userAgent())
25968	if c.ifNoneMatch_ != "" {
25969		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
25970	}
25971	var body io.Reader = nil
25972	c.urlParams_.Set("alt", alt)
25973	c.urlParams_.Set("prettyPrint", "false")
25974	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeedstatuses")
25975	urls += "?" + c.urlParams_.Encode()
25976	req, err := http.NewRequest("GET", urls, body)
25977	if err != nil {
25978		return nil, err
25979	}
25980	req.Header = reqHeaders
25981	googleapi.Expand(req.URL, map[string]string{
25982		"merchantId": strconv.FormatUint(c.merchantId, 10),
25983	})
25984	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25985}
25986
25987// Do executes the "content.datafeedstatuses.list" call.
25988// Exactly one of *DatafeedstatusesListResponse or error will be
25989// non-nil. Any non-2xx status code is an error. Response headers are in
25990// either *DatafeedstatusesListResponse.ServerResponse.Header or (if a
25991// response was returned at all) in error.(*googleapi.Error).Header. Use
25992// googleapi.IsNotModified to check whether the returned error was
25993// because http.StatusNotModified was returned.
25994func (c *DatafeedstatusesListCall) Do(opts ...googleapi.CallOption) (*DatafeedstatusesListResponse, error) {
25995	gensupport.SetOptions(c.urlParams_, opts...)
25996	res, err := c.doRequest("json")
25997	if res != nil && res.StatusCode == http.StatusNotModified {
25998		if res.Body != nil {
25999			res.Body.Close()
26000		}
26001		return nil, &googleapi.Error{
26002			Code:   res.StatusCode,
26003			Header: res.Header,
26004		}
26005	}
26006	if err != nil {
26007		return nil, err
26008	}
26009	defer googleapi.CloseBody(res)
26010	if err := googleapi.CheckResponse(res); err != nil {
26011		return nil, err
26012	}
26013	ret := &DatafeedstatusesListResponse{
26014		ServerResponse: googleapi.ServerResponse{
26015			Header:         res.Header,
26016			HTTPStatusCode: res.StatusCode,
26017		},
26018	}
26019	target := &ret
26020	if err := gensupport.DecodeResponse(target, res); err != nil {
26021		return nil, err
26022	}
26023	return ret, nil
26024	// {
26025	//   "description": "Lists the statuses of the datafeeds in your Merchant Center account.",
26026	//   "flatPath": "{merchantId}/datafeedstatuses",
26027	//   "httpMethod": "GET",
26028	//   "id": "content.datafeedstatuses.list",
26029	//   "parameterOrder": [
26030	//     "merchantId"
26031	//   ],
26032	//   "parameters": {
26033	//     "maxResults": {
26034	//       "description": "The maximum number of products to return in the response, used for paging.",
26035	//       "format": "uint32",
26036	//       "location": "query",
26037	//       "type": "integer"
26038	//     },
26039	//     "merchantId": {
26040	//       "description": "The ID of the account that manages the datafeeds. This account cannot be a multi-client account.",
26041	//       "format": "uint64",
26042	//       "location": "path",
26043	//       "required": true,
26044	//       "type": "string"
26045	//     },
26046	//     "pageToken": {
26047	//       "description": "The token returned by the previous request.",
26048	//       "location": "query",
26049	//       "type": "string"
26050	//     }
26051	//   },
26052	//   "path": "{merchantId}/datafeedstatuses",
26053	//   "response": {
26054	//     "$ref": "DatafeedstatusesListResponse"
26055	//   },
26056	//   "scopes": [
26057	//     "https://www.googleapis.com/auth/content"
26058	//   ]
26059	// }
26060
26061}
26062
26063// Pages invokes f for each page of results.
26064// A non-nil error returned from f will halt the iteration.
26065// The provided context supersedes any context provided to the Context method.
26066func (c *DatafeedstatusesListCall) Pages(ctx context.Context, f func(*DatafeedstatusesListResponse) error) error {
26067	c.ctx_ = ctx
26068	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
26069	for {
26070		x, err := c.Do()
26071		if err != nil {
26072			return err
26073		}
26074		if err := f(x); err != nil {
26075			return err
26076		}
26077		if x.NextPageToken == "" {
26078			return nil
26079		}
26080		c.PageToken(x.NextPageToken)
26081	}
26082}
26083
26084// method id "content.freelistingsprogram.get":
26085
26086type FreelistingsprogramGetCall struct {
26087	s            *APIService
26088	merchantId   int64
26089	urlParams_   gensupport.URLParams
26090	ifNoneMatch_ string
26091	ctx_         context.Context
26092	header_      http.Header
26093}
26094
26095// Get: Retrieves the status and review eligibility for the free listing
26096// program.
26097//
26098// - merchantId: The ID of the account.
26099func (r *FreelistingsprogramService) Get(merchantId int64) *FreelistingsprogramGetCall {
26100	c := &FreelistingsprogramGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26101	c.merchantId = merchantId
26102	return c
26103}
26104
26105// Fields allows partial responses to be retrieved. See
26106// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26107// for more information.
26108func (c *FreelistingsprogramGetCall) Fields(s ...googleapi.Field) *FreelistingsprogramGetCall {
26109	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26110	return c
26111}
26112
26113// IfNoneMatch sets the optional parameter which makes the operation
26114// fail if the object's ETag matches the given value. This is useful for
26115// getting updates only after the object has changed since the last
26116// request. Use googleapi.IsNotModified to check whether the response
26117// error from Do is the result of In-None-Match.
26118func (c *FreelistingsprogramGetCall) IfNoneMatch(entityTag string) *FreelistingsprogramGetCall {
26119	c.ifNoneMatch_ = entityTag
26120	return c
26121}
26122
26123// Context sets the context to be used in this call's Do method. Any
26124// pending HTTP request will be aborted if the provided context is
26125// canceled.
26126func (c *FreelistingsprogramGetCall) Context(ctx context.Context) *FreelistingsprogramGetCall {
26127	c.ctx_ = ctx
26128	return c
26129}
26130
26131// Header returns an http.Header that can be modified by the caller to
26132// add HTTP headers to the request.
26133func (c *FreelistingsprogramGetCall) Header() http.Header {
26134	if c.header_ == nil {
26135		c.header_ = make(http.Header)
26136	}
26137	return c.header_
26138}
26139
26140func (c *FreelistingsprogramGetCall) doRequest(alt string) (*http.Response, error) {
26141	reqHeaders := make(http.Header)
26142	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
26143	for k, v := range c.header_ {
26144		reqHeaders[k] = v
26145	}
26146	reqHeaders.Set("User-Agent", c.s.userAgent())
26147	if c.ifNoneMatch_ != "" {
26148		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
26149	}
26150	var body io.Reader = nil
26151	c.urlParams_.Set("alt", alt)
26152	c.urlParams_.Set("prettyPrint", "false")
26153	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/freelistingsprogram")
26154	urls += "?" + c.urlParams_.Encode()
26155	req, err := http.NewRequest("GET", urls, body)
26156	if err != nil {
26157		return nil, err
26158	}
26159	req.Header = reqHeaders
26160	googleapi.Expand(req.URL, map[string]string{
26161		"merchantId": strconv.FormatInt(c.merchantId, 10),
26162	})
26163	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26164}
26165
26166// Do executes the "content.freelistingsprogram.get" call.
26167// Exactly one of *FreeListingsProgramStatus or error will be non-nil.
26168// Any non-2xx status code is an error. Response headers are in either
26169// *FreeListingsProgramStatus.ServerResponse.Header or (if a response
26170// was returned at all) in error.(*googleapi.Error).Header. Use
26171// googleapi.IsNotModified to check whether the returned error was
26172// because http.StatusNotModified was returned.
26173func (c *FreelistingsprogramGetCall) Do(opts ...googleapi.CallOption) (*FreeListingsProgramStatus, error) {
26174	gensupport.SetOptions(c.urlParams_, opts...)
26175	res, err := c.doRequest("json")
26176	if res != nil && res.StatusCode == http.StatusNotModified {
26177		if res.Body != nil {
26178			res.Body.Close()
26179		}
26180		return nil, &googleapi.Error{
26181			Code:   res.StatusCode,
26182			Header: res.Header,
26183		}
26184	}
26185	if err != nil {
26186		return nil, err
26187	}
26188	defer googleapi.CloseBody(res)
26189	if err := googleapi.CheckResponse(res); err != nil {
26190		return nil, err
26191	}
26192	ret := &FreeListingsProgramStatus{
26193		ServerResponse: googleapi.ServerResponse{
26194			Header:         res.Header,
26195			HTTPStatusCode: res.StatusCode,
26196		},
26197	}
26198	target := &ret
26199	if err := gensupport.DecodeResponse(target, res); err != nil {
26200		return nil, err
26201	}
26202	return ret, nil
26203	// {
26204	//   "description": "Retrieves the status and review eligibility for the free listing program.",
26205	//   "flatPath": "{merchantId}/freelistingsprogram",
26206	//   "httpMethod": "GET",
26207	//   "id": "content.freelistingsprogram.get",
26208	//   "parameterOrder": [
26209	//     "merchantId"
26210	//   ],
26211	//   "parameters": {
26212	//     "merchantId": {
26213	//       "description": "Required. The ID of the account.",
26214	//       "format": "int64",
26215	//       "location": "path",
26216	//       "required": true,
26217	//       "type": "string"
26218	//     }
26219	//   },
26220	//   "path": "{merchantId}/freelistingsprogram",
26221	//   "response": {
26222	//     "$ref": "FreeListingsProgramStatus"
26223	//   },
26224	//   "scopes": [
26225	//     "https://www.googleapis.com/auth/content"
26226	//   ]
26227	// }
26228
26229}
26230
26231// method id "content.freelistingsprogram.requestreview":
26232
26233type FreelistingsprogramRequestreviewCall struct {
26234	s                                *APIService
26235	merchantId                       int64
26236	requestreviewfreelistingsrequest *RequestReviewFreeListingsRequest
26237	urlParams_                       gensupport.URLParams
26238	ctx_                             context.Context
26239	header_                          http.Header
26240}
26241
26242// Requestreview: Requests a review for Free Listings program in the
26243// provided region. Important: This method is only whitelisted for
26244// selected merchants.
26245//
26246// - merchantId: The ID of the account.
26247func (r *FreelistingsprogramService) Requestreview(merchantId int64, requestreviewfreelistingsrequest *RequestReviewFreeListingsRequest) *FreelistingsprogramRequestreviewCall {
26248	c := &FreelistingsprogramRequestreviewCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26249	c.merchantId = merchantId
26250	c.requestreviewfreelistingsrequest = requestreviewfreelistingsrequest
26251	return c
26252}
26253
26254// Fields allows partial responses to be retrieved. See
26255// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26256// for more information.
26257func (c *FreelistingsprogramRequestreviewCall) Fields(s ...googleapi.Field) *FreelistingsprogramRequestreviewCall {
26258	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26259	return c
26260}
26261
26262// Context sets the context to be used in this call's Do method. Any
26263// pending HTTP request will be aborted if the provided context is
26264// canceled.
26265func (c *FreelistingsprogramRequestreviewCall) Context(ctx context.Context) *FreelistingsprogramRequestreviewCall {
26266	c.ctx_ = ctx
26267	return c
26268}
26269
26270// Header returns an http.Header that can be modified by the caller to
26271// add HTTP headers to the request.
26272func (c *FreelistingsprogramRequestreviewCall) Header() http.Header {
26273	if c.header_ == nil {
26274		c.header_ = make(http.Header)
26275	}
26276	return c.header_
26277}
26278
26279func (c *FreelistingsprogramRequestreviewCall) doRequest(alt string) (*http.Response, error) {
26280	reqHeaders := make(http.Header)
26281	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
26282	for k, v := range c.header_ {
26283		reqHeaders[k] = v
26284	}
26285	reqHeaders.Set("User-Agent", c.s.userAgent())
26286	var body io.Reader = nil
26287	body, err := googleapi.WithoutDataWrapper.JSONReader(c.requestreviewfreelistingsrequest)
26288	if err != nil {
26289		return nil, err
26290	}
26291	reqHeaders.Set("Content-Type", "application/json")
26292	c.urlParams_.Set("alt", alt)
26293	c.urlParams_.Set("prettyPrint", "false")
26294	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/freelistingsprogram/requestreview")
26295	urls += "?" + c.urlParams_.Encode()
26296	req, err := http.NewRequest("POST", urls, body)
26297	if err != nil {
26298		return nil, err
26299	}
26300	req.Header = reqHeaders
26301	googleapi.Expand(req.URL, map[string]string{
26302		"merchantId": strconv.FormatInt(c.merchantId, 10),
26303	})
26304	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26305}
26306
26307// Do executes the "content.freelistingsprogram.requestreview" call.
26308func (c *FreelistingsprogramRequestreviewCall) Do(opts ...googleapi.CallOption) error {
26309	gensupport.SetOptions(c.urlParams_, opts...)
26310	res, err := c.doRequest("json")
26311	if err != nil {
26312		return err
26313	}
26314	defer googleapi.CloseBody(res)
26315	if err := googleapi.CheckResponse(res); err != nil {
26316		return err
26317	}
26318	return nil
26319	// {
26320	//   "description": "Requests a review for Free Listings program in the provided region. Important: This method is only whitelisted for selected merchants.",
26321	//   "flatPath": "{merchantId}/freelistingsprogram/requestreview",
26322	//   "httpMethod": "POST",
26323	//   "id": "content.freelistingsprogram.requestreview",
26324	//   "parameterOrder": [
26325	//     "merchantId"
26326	//   ],
26327	//   "parameters": {
26328	//     "merchantId": {
26329	//       "description": "Required. The ID of the account.",
26330	//       "format": "int64",
26331	//       "location": "path",
26332	//       "required": true,
26333	//       "type": "string"
26334	//     }
26335	//   },
26336	//   "path": "{merchantId}/freelistingsprogram/requestreview",
26337	//   "request": {
26338	//     "$ref": "RequestReviewFreeListingsRequest"
26339	//   },
26340	//   "scopes": [
26341	//     "https://www.googleapis.com/auth/content"
26342	//   ]
26343	// }
26344
26345}
26346
26347// method id "content.liasettings.custombatch":
26348
26349type LiasettingsCustombatchCall struct {
26350	s                             *APIService
26351	liasettingscustombatchrequest *LiasettingsCustomBatchRequest
26352	urlParams_                    gensupport.URLParams
26353	ctx_                          context.Context
26354	header_                       http.Header
26355}
26356
26357// Custombatch: Retrieves and/or updates the LIA settings of multiple
26358// accounts in a single request.
26359func (r *LiasettingsService) Custombatch(liasettingscustombatchrequest *LiasettingsCustomBatchRequest) *LiasettingsCustombatchCall {
26360	c := &LiasettingsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26361	c.liasettingscustombatchrequest = liasettingscustombatchrequest
26362	return c
26363}
26364
26365// Fields allows partial responses to be retrieved. See
26366// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26367// for more information.
26368func (c *LiasettingsCustombatchCall) Fields(s ...googleapi.Field) *LiasettingsCustombatchCall {
26369	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26370	return c
26371}
26372
26373// Context sets the context to be used in this call's Do method. Any
26374// pending HTTP request will be aborted if the provided context is
26375// canceled.
26376func (c *LiasettingsCustombatchCall) Context(ctx context.Context) *LiasettingsCustombatchCall {
26377	c.ctx_ = ctx
26378	return c
26379}
26380
26381// Header returns an http.Header that can be modified by the caller to
26382// add HTTP headers to the request.
26383func (c *LiasettingsCustombatchCall) Header() http.Header {
26384	if c.header_ == nil {
26385		c.header_ = make(http.Header)
26386	}
26387	return c.header_
26388}
26389
26390func (c *LiasettingsCustombatchCall) doRequest(alt string) (*http.Response, error) {
26391	reqHeaders := make(http.Header)
26392	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
26393	for k, v := range c.header_ {
26394		reqHeaders[k] = v
26395	}
26396	reqHeaders.Set("User-Agent", c.s.userAgent())
26397	var body io.Reader = nil
26398	body, err := googleapi.WithoutDataWrapper.JSONReader(c.liasettingscustombatchrequest)
26399	if err != nil {
26400		return nil, err
26401	}
26402	reqHeaders.Set("Content-Type", "application/json")
26403	c.urlParams_.Set("alt", alt)
26404	c.urlParams_.Set("prettyPrint", "false")
26405	urls := googleapi.ResolveRelative(c.s.BasePath, "liasettings/batch")
26406	urls += "?" + c.urlParams_.Encode()
26407	req, err := http.NewRequest("POST", urls, body)
26408	if err != nil {
26409		return nil, err
26410	}
26411	req.Header = reqHeaders
26412	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26413}
26414
26415// Do executes the "content.liasettings.custombatch" call.
26416// Exactly one of *LiasettingsCustomBatchResponse or error will be
26417// non-nil. Any non-2xx status code is an error. Response headers are in
26418// either *LiasettingsCustomBatchResponse.ServerResponse.Header or (if a
26419// response was returned at all) in error.(*googleapi.Error).Header. Use
26420// googleapi.IsNotModified to check whether the returned error was
26421// because http.StatusNotModified was returned.
26422func (c *LiasettingsCustombatchCall) Do(opts ...googleapi.CallOption) (*LiasettingsCustomBatchResponse, error) {
26423	gensupport.SetOptions(c.urlParams_, opts...)
26424	res, err := c.doRequest("json")
26425	if res != nil && res.StatusCode == http.StatusNotModified {
26426		if res.Body != nil {
26427			res.Body.Close()
26428		}
26429		return nil, &googleapi.Error{
26430			Code:   res.StatusCode,
26431			Header: res.Header,
26432		}
26433	}
26434	if err != nil {
26435		return nil, err
26436	}
26437	defer googleapi.CloseBody(res)
26438	if err := googleapi.CheckResponse(res); err != nil {
26439		return nil, err
26440	}
26441	ret := &LiasettingsCustomBatchResponse{
26442		ServerResponse: googleapi.ServerResponse{
26443			Header:         res.Header,
26444			HTTPStatusCode: res.StatusCode,
26445		},
26446	}
26447	target := &ret
26448	if err := gensupport.DecodeResponse(target, res); err != nil {
26449		return nil, err
26450	}
26451	return ret, nil
26452	// {
26453	//   "description": "Retrieves and/or updates the LIA settings of multiple accounts in a single request.",
26454	//   "flatPath": "liasettings/batch",
26455	//   "httpMethod": "POST",
26456	//   "id": "content.liasettings.custombatch",
26457	//   "parameterOrder": [],
26458	//   "parameters": {},
26459	//   "path": "liasettings/batch",
26460	//   "request": {
26461	//     "$ref": "LiasettingsCustomBatchRequest"
26462	//   },
26463	//   "response": {
26464	//     "$ref": "LiasettingsCustomBatchResponse"
26465	//   },
26466	//   "scopes": [
26467	//     "https://www.googleapis.com/auth/content"
26468	//   ]
26469	// }
26470
26471}
26472
26473// method id "content.liasettings.get":
26474
26475type LiasettingsGetCall struct {
26476	s            *APIService
26477	merchantId   uint64
26478	accountId    uint64
26479	urlParams_   gensupport.URLParams
26480	ifNoneMatch_ string
26481	ctx_         context.Context
26482	header_      http.Header
26483}
26484
26485// Get: Retrieves the LIA settings of the account.
26486//
26487// - accountId: The ID of the account for which to get or update LIA
26488//   settings.
26489// - merchantId: The ID of the managing account. If this parameter is
26490//   not the same as accountId, then this account must be a multi-client
26491//   account and `accountId` must be the ID of a sub-account of this
26492//   account.
26493func (r *LiasettingsService) Get(merchantId uint64, accountId uint64) *LiasettingsGetCall {
26494	c := &LiasettingsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26495	c.merchantId = merchantId
26496	c.accountId = accountId
26497	return c
26498}
26499
26500// Fields allows partial responses to be retrieved. See
26501// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26502// for more information.
26503func (c *LiasettingsGetCall) Fields(s ...googleapi.Field) *LiasettingsGetCall {
26504	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26505	return c
26506}
26507
26508// IfNoneMatch sets the optional parameter which makes the operation
26509// fail if the object's ETag matches the given value. This is useful for
26510// getting updates only after the object has changed since the last
26511// request. Use googleapi.IsNotModified to check whether the response
26512// error from Do is the result of In-None-Match.
26513func (c *LiasettingsGetCall) IfNoneMatch(entityTag string) *LiasettingsGetCall {
26514	c.ifNoneMatch_ = entityTag
26515	return c
26516}
26517
26518// Context sets the context to be used in this call's Do method. Any
26519// pending HTTP request will be aborted if the provided context is
26520// canceled.
26521func (c *LiasettingsGetCall) Context(ctx context.Context) *LiasettingsGetCall {
26522	c.ctx_ = ctx
26523	return c
26524}
26525
26526// Header returns an http.Header that can be modified by the caller to
26527// add HTTP headers to the request.
26528func (c *LiasettingsGetCall) Header() http.Header {
26529	if c.header_ == nil {
26530		c.header_ = make(http.Header)
26531	}
26532	return c.header_
26533}
26534
26535func (c *LiasettingsGetCall) doRequest(alt string) (*http.Response, error) {
26536	reqHeaders := make(http.Header)
26537	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
26538	for k, v := range c.header_ {
26539		reqHeaders[k] = v
26540	}
26541	reqHeaders.Set("User-Agent", c.s.userAgent())
26542	if c.ifNoneMatch_ != "" {
26543		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
26544	}
26545	var body io.Reader = nil
26546	c.urlParams_.Set("alt", alt)
26547	c.urlParams_.Set("prettyPrint", "false")
26548	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}")
26549	urls += "?" + c.urlParams_.Encode()
26550	req, err := http.NewRequest("GET", urls, body)
26551	if err != nil {
26552		return nil, err
26553	}
26554	req.Header = reqHeaders
26555	googleapi.Expand(req.URL, map[string]string{
26556		"merchantId": strconv.FormatUint(c.merchantId, 10),
26557		"accountId":  strconv.FormatUint(c.accountId, 10),
26558	})
26559	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26560}
26561
26562// Do executes the "content.liasettings.get" call.
26563// Exactly one of *LiaSettings or error will be non-nil. Any non-2xx
26564// status code is an error. Response headers are in either
26565// *LiaSettings.ServerResponse.Header or (if a response was returned at
26566// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
26567// to check whether the returned error was because
26568// http.StatusNotModified was returned.
26569func (c *LiasettingsGetCall) Do(opts ...googleapi.CallOption) (*LiaSettings, error) {
26570	gensupport.SetOptions(c.urlParams_, opts...)
26571	res, err := c.doRequest("json")
26572	if res != nil && res.StatusCode == http.StatusNotModified {
26573		if res.Body != nil {
26574			res.Body.Close()
26575		}
26576		return nil, &googleapi.Error{
26577			Code:   res.StatusCode,
26578			Header: res.Header,
26579		}
26580	}
26581	if err != nil {
26582		return nil, err
26583	}
26584	defer googleapi.CloseBody(res)
26585	if err := googleapi.CheckResponse(res); err != nil {
26586		return nil, err
26587	}
26588	ret := &LiaSettings{
26589		ServerResponse: googleapi.ServerResponse{
26590			Header:         res.Header,
26591			HTTPStatusCode: res.StatusCode,
26592		},
26593	}
26594	target := &ret
26595	if err := gensupport.DecodeResponse(target, res); err != nil {
26596		return nil, err
26597	}
26598	return ret, nil
26599	// {
26600	//   "description": "Retrieves the LIA settings of the account.",
26601	//   "flatPath": "{merchantId}/liasettings/{accountId}",
26602	//   "httpMethod": "GET",
26603	//   "id": "content.liasettings.get",
26604	//   "parameterOrder": [
26605	//     "merchantId",
26606	//     "accountId"
26607	//   ],
26608	//   "parameters": {
26609	//     "accountId": {
26610	//       "description": "The ID of the account for which to get or update LIA settings.",
26611	//       "format": "uint64",
26612	//       "location": "path",
26613	//       "required": true,
26614	//       "type": "string"
26615	//     },
26616	//     "merchantId": {
26617	//       "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.",
26618	//       "format": "uint64",
26619	//       "location": "path",
26620	//       "required": true,
26621	//       "type": "string"
26622	//     }
26623	//   },
26624	//   "path": "{merchantId}/liasettings/{accountId}",
26625	//   "response": {
26626	//     "$ref": "LiaSettings"
26627	//   },
26628	//   "scopes": [
26629	//     "https://www.googleapis.com/auth/content"
26630	//   ]
26631	// }
26632
26633}
26634
26635// method id "content.liasettings.getaccessiblegmbaccounts":
26636
26637type LiasettingsGetaccessiblegmbaccountsCall struct {
26638	s            *APIService
26639	merchantId   uint64
26640	accountId    uint64
26641	urlParams_   gensupport.URLParams
26642	ifNoneMatch_ string
26643	ctx_         context.Context
26644	header_      http.Header
26645}
26646
26647// Getaccessiblegmbaccounts: Retrieves the list of accessible Google My
26648// Business accounts.
26649//
26650// - accountId: The ID of the account for which to retrieve accessible
26651//   Google My Business accounts.
26652// - merchantId: The ID of the managing account. If this parameter is
26653//   not the same as accountId, then this account must be a multi-client
26654//   account and `accountId` must be the ID of a sub-account of this
26655//   account.
26656func (r *LiasettingsService) Getaccessiblegmbaccounts(merchantId uint64, accountId uint64) *LiasettingsGetaccessiblegmbaccountsCall {
26657	c := &LiasettingsGetaccessiblegmbaccountsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26658	c.merchantId = merchantId
26659	c.accountId = accountId
26660	return c
26661}
26662
26663// Fields allows partial responses to be retrieved. See
26664// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26665// for more information.
26666func (c *LiasettingsGetaccessiblegmbaccountsCall) Fields(s ...googleapi.Field) *LiasettingsGetaccessiblegmbaccountsCall {
26667	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26668	return c
26669}
26670
26671// IfNoneMatch sets the optional parameter which makes the operation
26672// fail if the object's ETag matches the given value. This is useful for
26673// getting updates only after the object has changed since the last
26674// request. Use googleapi.IsNotModified to check whether the response
26675// error from Do is the result of In-None-Match.
26676func (c *LiasettingsGetaccessiblegmbaccountsCall) IfNoneMatch(entityTag string) *LiasettingsGetaccessiblegmbaccountsCall {
26677	c.ifNoneMatch_ = entityTag
26678	return c
26679}
26680
26681// Context sets the context to be used in this call's Do method. Any
26682// pending HTTP request will be aborted if the provided context is
26683// canceled.
26684func (c *LiasettingsGetaccessiblegmbaccountsCall) Context(ctx context.Context) *LiasettingsGetaccessiblegmbaccountsCall {
26685	c.ctx_ = ctx
26686	return c
26687}
26688
26689// Header returns an http.Header that can be modified by the caller to
26690// add HTTP headers to the request.
26691func (c *LiasettingsGetaccessiblegmbaccountsCall) Header() http.Header {
26692	if c.header_ == nil {
26693		c.header_ = make(http.Header)
26694	}
26695	return c.header_
26696}
26697
26698func (c *LiasettingsGetaccessiblegmbaccountsCall) doRequest(alt string) (*http.Response, error) {
26699	reqHeaders := make(http.Header)
26700	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
26701	for k, v := range c.header_ {
26702		reqHeaders[k] = v
26703	}
26704	reqHeaders.Set("User-Agent", c.s.userAgent())
26705	if c.ifNoneMatch_ != "" {
26706		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
26707	}
26708	var body io.Reader = nil
26709	c.urlParams_.Set("alt", alt)
26710	c.urlParams_.Set("prettyPrint", "false")
26711	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/accessiblegmbaccounts")
26712	urls += "?" + c.urlParams_.Encode()
26713	req, err := http.NewRequest("GET", urls, body)
26714	if err != nil {
26715		return nil, err
26716	}
26717	req.Header = reqHeaders
26718	googleapi.Expand(req.URL, map[string]string{
26719		"merchantId": strconv.FormatUint(c.merchantId, 10),
26720		"accountId":  strconv.FormatUint(c.accountId, 10),
26721	})
26722	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26723}
26724
26725// Do executes the "content.liasettings.getaccessiblegmbaccounts" call.
26726// Exactly one of *LiasettingsGetAccessibleGmbAccountsResponse or error
26727// will be non-nil. Any non-2xx status code is an error. Response
26728// headers are in either
26729// *LiasettingsGetAccessibleGmbAccountsResponse.ServerResponse.Header or
26730// (if a response was returned at all) in
26731// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
26732// whether the returned error was because http.StatusNotModified was
26733// returned.
26734func (c *LiasettingsGetaccessiblegmbaccountsCall) Do(opts ...googleapi.CallOption) (*LiasettingsGetAccessibleGmbAccountsResponse, error) {
26735	gensupport.SetOptions(c.urlParams_, opts...)
26736	res, err := c.doRequest("json")
26737	if res != nil && res.StatusCode == http.StatusNotModified {
26738		if res.Body != nil {
26739			res.Body.Close()
26740		}
26741		return nil, &googleapi.Error{
26742			Code:   res.StatusCode,
26743			Header: res.Header,
26744		}
26745	}
26746	if err != nil {
26747		return nil, err
26748	}
26749	defer googleapi.CloseBody(res)
26750	if err := googleapi.CheckResponse(res); err != nil {
26751		return nil, err
26752	}
26753	ret := &LiasettingsGetAccessibleGmbAccountsResponse{
26754		ServerResponse: googleapi.ServerResponse{
26755			Header:         res.Header,
26756			HTTPStatusCode: res.StatusCode,
26757		},
26758	}
26759	target := &ret
26760	if err := gensupport.DecodeResponse(target, res); err != nil {
26761		return nil, err
26762	}
26763	return ret, nil
26764	// {
26765	//   "description": "Retrieves the list of accessible Google My Business accounts.",
26766	//   "flatPath": "{merchantId}/liasettings/{accountId}/accessiblegmbaccounts",
26767	//   "httpMethod": "GET",
26768	//   "id": "content.liasettings.getaccessiblegmbaccounts",
26769	//   "parameterOrder": [
26770	//     "merchantId",
26771	//     "accountId"
26772	//   ],
26773	//   "parameters": {
26774	//     "accountId": {
26775	//       "description": "The ID of the account for which to retrieve accessible Google My Business accounts.",
26776	//       "format": "uint64",
26777	//       "location": "path",
26778	//       "required": true,
26779	//       "type": "string"
26780	//     },
26781	//     "merchantId": {
26782	//       "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.",
26783	//       "format": "uint64",
26784	//       "location": "path",
26785	//       "required": true,
26786	//       "type": "string"
26787	//     }
26788	//   },
26789	//   "path": "{merchantId}/liasettings/{accountId}/accessiblegmbaccounts",
26790	//   "response": {
26791	//     "$ref": "LiasettingsGetAccessibleGmbAccountsResponse"
26792	//   },
26793	//   "scopes": [
26794	//     "https://www.googleapis.com/auth/content"
26795	//   ]
26796	// }
26797
26798}
26799
26800// method id "content.liasettings.list":
26801
26802type LiasettingsListCall struct {
26803	s            *APIService
26804	merchantId   uint64
26805	urlParams_   gensupport.URLParams
26806	ifNoneMatch_ string
26807	ctx_         context.Context
26808	header_      http.Header
26809}
26810
26811// List: Lists the LIA settings of the sub-accounts in your Merchant
26812// Center account.
26813//
26814// - merchantId: The ID of the managing account. This must be a
26815//   multi-client account.
26816func (r *LiasettingsService) List(merchantId uint64) *LiasettingsListCall {
26817	c := &LiasettingsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26818	c.merchantId = merchantId
26819	return c
26820}
26821
26822// MaxResults sets the optional parameter "maxResults": The maximum
26823// number of LIA settings to return in the response, used for paging.
26824func (c *LiasettingsListCall) MaxResults(maxResults int64) *LiasettingsListCall {
26825	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
26826	return c
26827}
26828
26829// PageToken sets the optional parameter "pageToken": The token returned
26830// by the previous request.
26831func (c *LiasettingsListCall) PageToken(pageToken string) *LiasettingsListCall {
26832	c.urlParams_.Set("pageToken", pageToken)
26833	return c
26834}
26835
26836// Fields allows partial responses to be retrieved. See
26837// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26838// for more information.
26839func (c *LiasettingsListCall) Fields(s ...googleapi.Field) *LiasettingsListCall {
26840	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26841	return c
26842}
26843
26844// IfNoneMatch sets the optional parameter which makes the operation
26845// fail if the object's ETag matches the given value. This is useful for
26846// getting updates only after the object has changed since the last
26847// request. Use googleapi.IsNotModified to check whether the response
26848// error from Do is the result of In-None-Match.
26849func (c *LiasettingsListCall) IfNoneMatch(entityTag string) *LiasettingsListCall {
26850	c.ifNoneMatch_ = entityTag
26851	return c
26852}
26853
26854// Context sets the context to be used in this call's Do method. Any
26855// pending HTTP request will be aborted if the provided context is
26856// canceled.
26857func (c *LiasettingsListCall) Context(ctx context.Context) *LiasettingsListCall {
26858	c.ctx_ = ctx
26859	return c
26860}
26861
26862// Header returns an http.Header that can be modified by the caller to
26863// add HTTP headers to the request.
26864func (c *LiasettingsListCall) Header() http.Header {
26865	if c.header_ == nil {
26866		c.header_ = make(http.Header)
26867	}
26868	return c.header_
26869}
26870
26871func (c *LiasettingsListCall) doRequest(alt string) (*http.Response, error) {
26872	reqHeaders := make(http.Header)
26873	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
26874	for k, v := range c.header_ {
26875		reqHeaders[k] = v
26876	}
26877	reqHeaders.Set("User-Agent", c.s.userAgent())
26878	if c.ifNoneMatch_ != "" {
26879		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
26880	}
26881	var body io.Reader = nil
26882	c.urlParams_.Set("alt", alt)
26883	c.urlParams_.Set("prettyPrint", "false")
26884	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings")
26885	urls += "?" + c.urlParams_.Encode()
26886	req, err := http.NewRequest("GET", urls, body)
26887	if err != nil {
26888		return nil, err
26889	}
26890	req.Header = reqHeaders
26891	googleapi.Expand(req.URL, map[string]string{
26892		"merchantId": strconv.FormatUint(c.merchantId, 10),
26893	})
26894	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26895}
26896
26897// Do executes the "content.liasettings.list" call.
26898// Exactly one of *LiasettingsListResponse or error will be non-nil. Any
26899// non-2xx status code is an error. Response headers are in either
26900// *LiasettingsListResponse.ServerResponse.Header or (if a response was
26901// returned at all) in error.(*googleapi.Error).Header. Use
26902// googleapi.IsNotModified to check whether the returned error was
26903// because http.StatusNotModified was returned.
26904func (c *LiasettingsListCall) Do(opts ...googleapi.CallOption) (*LiasettingsListResponse, error) {
26905	gensupport.SetOptions(c.urlParams_, opts...)
26906	res, err := c.doRequest("json")
26907	if res != nil && res.StatusCode == http.StatusNotModified {
26908		if res.Body != nil {
26909			res.Body.Close()
26910		}
26911		return nil, &googleapi.Error{
26912			Code:   res.StatusCode,
26913			Header: res.Header,
26914		}
26915	}
26916	if err != nil {
26917		return nil, err
26918	}
26919	defer googleapi.CloseBody(res)
26920	if err := googleapi.CheckResponse(res); err != nil {
26921		return nil, err
26922	}
26923	ret := &LiasettingsListResponse{
26924		ServerResponse: googleapi.ServerResponse{
26925			Header:         res.Header,
26926			HTTPStatusCode: res.StatusCode,
26927		},
26928	}
26929	target := &ret
26930	if err := gensupport.DecodeResponse(target, res); err != nil {
26931		return nil, err
26932	}
26933	return ret, nil
26934	// {
26935	//   "description": "Lists the LIA settings of the sub-accounts in your Merchant Center account.",
26936	//   "flatPath": "{merchantId}/liasettings",
26937	//   "httpMethod": "GET",
26938	//   "id": "content.liasettings.list",
26939	//   "parameterOrder": [
26940	//     "merchantId"
26941	//   ],
26942	//   "parameters": {
26943	//     "maxResults": {
26944	//       "description": "The maximum number of LIA settings to return in the response, used for paging.",
26945	//       "format": "uint32",
26946	//       "location": "query",
26947	//       "type": "integer"
26948	//     },
26949	//     "merchantId": {
26950	//       "description": "The ID of the managing account. This must be a multi-client account.",
26951	//       "format": "uint64",
26952	//       "location": "path",
26953	//       "required": true,
26954	//       "type": "string"
26955	//     },
26956	//     "pageToken": {
26957	//       "description": "The token returned by the previous request.",
26958	//       "location": "query",
26959	//       "type": "string"
26960	//     }
26961	//   },
26962	//   "path": "{merchantId}/liasettings",
26963	//   "response": {
26964	//     "$ref": "LiasettingsListResponse"
26965	//   },
26966	//   "scopes": [
26967	//     "https://www.googleapis.com/auth/content"
26968	//   ]
26969	// }
26970
26971}
26972
26973// Pages invokes f for each page of results.
26974// A non-nil error returned from f will halt the iteration.
26975// The provided context supersedes any context provided to the Context method.
26976func (c *LiasettingsListCall) Pages(ctx context.Context, f func(*LiasettingsListResponse) error) error {
26977	c.ctx_ = ctx
26978	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
26979	for {
26980		x, err := c.Do()
26981		if err != nil {
26982			return err
26983		}
26984		if err := f(x); err != nil {
26985			return err
26986		}
26987		if x.NextPageToken == "" {
26988			return nil
26989		}
26990		c.PageToken(x.NextPageToken)
26991	}
26992}
26993
26994// method id "content.liasettings.listposdataproviders":
26995
26996type LiasettingsListposdataprovidersCall struct {
26997	s            *APIService
26998	urlParams_   gensupport.URLParams
26999	ifNoneMatch_ string
27000	ctx_         context.Context
27001	header_      http.Header
27002}
27003
27004// Listposdataproviders: Retrieves the list of POS data providers that
27005// have active settings for the all eiligible countries.
27006func (r *LiasettingsService) Listposdataproviders() *LiasettingsListposdataprovidersCall {
27007	c := &LiasettingsListposdataprovidersCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27008	return c
27009}
27010
27011// Fields allows partial responses to be retrieved. See
27012// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27013// for more information.
27014func (c *LiasettingsListposdataprovidersCall) Fields(s ...googleapi.Field) *LiasettingsListposdataprovidersCall {
27015	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27016	return c
27017}
27018
27019// IfNoneMatch sets the optional parameter which makes the operation
27020// fail if the object's ETag matches the given value. This is useful for
27021// getting updates only after the object has changed since the last
27022// request. Use googleapi.IsNotModified to check whether the response
27023// error from Do is the result of In-None-Match.
27024func (c *LiasettingsListposdataprovidersCall) IfNoneMatch(entityTag string) *LiasettingsListposdataprovidersCall {
27025	c.ifNoneMatch_ = entityTag
27026	return c
27027}
27028
27029// Context sets the context to be used in this call's Do method. Any
27030// pending HTTP request will be aborted if the provided context is
27031// canceled.
27032func (c *LiasettingsListposdataprovidersCall) Context(ctx context.Context) *LiasettingsListposdataprovidersCall {
27033	c.ctx_ = ctx
27034	return c
27035}
27036
27037// Header returns an http.Header that can be modified by the caller to
27038// add HTTP headers to the request.
27039func (c *LiasettingsListposdataprovidersCall) Header() http.Header {
27040	if c.header_ == nil {
27041		c.header_ = make(http.Header)
27042	}
27043	return c.header_
27044}
27045
27046func (c *LiasettingsListposdataprovidersCall) doRequest(alt string) (*http.Response, error) {
27047	reqHeaders := make(http.Header)
27048	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
27049	for k, v := range c.header_ {
27050		reqHeaders[k] = v
27051	}
27052	reqHeaders.Set("User-Agent", c.s.userAgent())
27053	if c.ifNoneMatch_ != "" {
27054		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
27055	}
27056	var body io.Reader = nil
27057	c.urlParams_.Set("alt", alt)
27058	c.urlParams_.Set("prettyPrint", "false")
27059	urls := googleapi.ResolveRelative(c.s.BasePath, "liasettings/posdataproviders")
27060	urls += "?" + c.urlParams_.Encode()
27061	req, err := http.NewRequest("GET", urls, body)
27062	if err != nil {
27063		return nil, err
27064	}
27065	req.Header = reqHeaders
27066	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27067}
27068
27069// Do executes the "content.liasettings.listposdataproviders" call.
27070// Exactly one of *LiasettingsListPosDataProvidersResponse or error will
27071// be non-nil. Any non-2xx status code is an error. Response headers are
27072// in either
27073// *LiasettingsListPosDataProvidersResponse.ServerResponse.Header or (if
27074// a response was returned at all) in error.(*googleapi.Error).Header.
27075// Use googleapi.IsNotModified to check whether the returned error was
27076// because http.StatusNotModified was returned.
27077func (c *LiasettingsListposdataprovidersCall) Do(opts ...googleapi.CallOption) (*LiasettingsListPosDataProvidersResponse, error) {
27078	gensupport.SetOptions(c.urlParams_, opts...)
27079	res, err := c.doRequest("json")
27080	if res != nil && res.StatusCode == http.StatusNotModified {
27081		if res.Body != nil {
27082			res.Body.Close()
27083		}
27084		return nil, &googleapi.Error{
27085			Code:   res.StatusCode,
27086			Header: res.Header,
27087		}
27088	}
27089	if err != nil {
27090		return nil, err
27091	}
27092	defer googleapi.CloseBody(res)
27093	if err := googleapi.CheckResponse(res); err != nil {
27094		return nil, err
27095	}
27096	ret := &LiasettingsListPosDataProvidersResponse{
27097		ServerResponse: googleapi.ServerResponse{
27098			Header:         res.Header,
27099			HTTPStatusCode: res.StatusCode,
27100		},
27101	}
27102	target := &ret
27103	if err := gensupport.DecodeResponse(target, res); err != nil {
27104		return nil, err
27105	}
27106	return ret, nil
27107	// {
27108	//   "description": "Retrieves the list of POS data providers that have active settings for the all eiligible countries.",
27109	//   "flatPath": "liasettings/posdataproviders",
27110	//   "httpMethod": "GET",
27111	//   "id": "content.liasettings.listposdataproviders",
27112	//   "parameterOrder": [],
27113	//   "parameters": {},
27114	//   "path": "liasettings/posdataproviders",
27115	//   "response": {
27116	//     "$ref": "LiasettingsListPosDataProvidersResponse"
27117	//   },
27118	//   "scopes": [
27119	//     "https://www.googleapis.com/auth/content"
27120	//   ]
27121	// }
27122
27123}
27124
27125// method id "content.liasettings.requestgmbaccess":
27126
27127type LiasettingsRequestgmbaccessCall struct {
27128	s          *APIService
27129	merchantId uint64
27130	accountId  uint64
27131	urlParams_ gensupport.URLParams
27132	ctx_       context.Context
27133	header_    http.Header
27134}
27135
27136// Requestgmbaccess: Requests access to a specified Google My Business
27137// account.
27138//
27139// - accountId: The ID of the account for which GMB access is requested.
27140// - gmbEmail: The email of the Google My Business account.
27141// - merchantId: The ID of the managing account. If this parameter is
27142//   not the same as accountId, then this account must be a multi-client
27143//   account and `accountId` must be the ID of a sub-account of this
27144//   account.
27145func (r *LiasettingsService) Requestgmbaccess(merchantId uint64, accountId uint64, gmbEmail string) *LiasettingsRequestgmbaccessCall {
27146	c := &LiasettingsRequestgmbaccessCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27147	c.merchantId = merchantId
27148	c.accountId = accountId
27149	c.urlParams_.Set("gmbEmail", gmbEmail)
27150	return c
27151}
27152
27153// Fields allows partial responses to be retrieved. See
27154// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27155// for more information.
27156func (c *LiasettingsRequestgmbaccessCall) Fields(s ...googleapi.Field) *LiasettingsRequestgmbaccessCall {
27157	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27158	return c
27159}
27160
27161// Context sets the context to be used in this call's Do method. Any
27162// pending HTTP request will be aborted if the provided context is
27163// canceled.
27164func (c *LiasettingsRequestgmbaccessCall) Context(ctx context.Context) *LiasettingsRequestgmbaccessCall {
27165	c.ctx_ = ctx
27166	return c
27167}
27168
27169// Header returns an http.Header that can be modified by the caller to
27170// add HTTP headers to the request.
27171func (c *LiasettingsRequestgmbaccessCall) Header() http.Header {
27172	if c.header_ == nil {
27173		c.header_ = make(http.Header)
27174	}
27175	return c.header_
27176}
27177
27178func (c *LiasettingsRequestgmbaccessCall) doRequest(alt string) (*http.Response, error) {
27179	reqHeaders := make(http.Header)
27180	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
27181	for k, v := range c.header_ {
27182		reqHeaders[k] = v
27183	}
27184	reqHeaders.Set("User-Agent", c.s.userAgent())
27185	var body io.Reader = nil
27186	c.urlParams_.Set("alt", alt)
27187	c.urlParams_.Set("prettyPrint", "false")
27188	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/requestgmbaccess")
27189	urls += "?" + c.urlParams_.Encode()
27190	req, err := http.NewRequest("POST", urls, body)
27191	if err != nil {
27192		return nil, err
27193	}
27194	req.Header = reqHeaders
27195	googleapi.Expand(req.URL, map[string]string{
27196		"merchantId": strconv.FormatUint(c.merchantId, 10),
27197		"accountId":  strconv.FormatUint(c.accountId, 10),
27198	})
27199	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27200}
27201
27202// Do executes the "content.liasettings.requestgmbaccess" call.
27203// Exactly one of *LiasettingsRequestGmbAccessResponse or error will be
27204// non-nil. Any non-2xx status code is an error. Response headers are in
27205// either *LiasettingsRequestGmbAccessResponse.ServerResponse.Header or
27206// (if a response was returned at all) in
27207// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
27208// whether the returned error was because http.StatusNotModified was
27209// returned.
27210func (c *LiasettingsRequestgmbaccessCall) Do(opts ...googleapi.CallOption) (*LiasettingsRequestGmbAccessResponse, error) {
27211	gensupport.SetOptions(c.urlParams_, opts...)
27212	res, err := c.doRequest("json")
27213	if res != nil && res.StatusCode == http.StatusNotModified {
27214		if res.Body != nil {
27215			res.Body.Close()
27216		}
27217		return nil, &googleapi.Error{
27218			Code:   res.StatusCode,
27219			Header: res.Header,
27220		}
27221	}
27222	if err != nil {
27223		return nil, err
27224	}
27225	defer googleapi.CloseBody(res)
27226	if err := googleapi.CheckResponse(res); err != nil {
27227		return nil, err
27228	}
27229	ret := &LiasettingsRequestGmbAccessResponse{
27230		ServerResponse: googleapi.ServerResponse{
27231			Header:         res.Header,
27232			HTTPStatusCode: res.StatusCode,
27233		},
27234	}
27235	target := &ret
27236	if err := gensupport.DecodeResponse(target, res); err != nil {
27237		return nil, err
27238	}
27239	return ret, nil
27240	// {
27241	//   "description": "Requests access to a specified Google My Business account.",
27242	//   "flatPath": "{merchantId}/liasettings/{accountId}/requestgmbaccess",
27243	//   "httpMethod": "POST",
27244	//   "id": "content.liasettings.requestgmbaccess",
27245	//   "parameterOrder": [
27246	//     "merchantId",
27247	//     "accountId",
27248	//     "gmbEmail"
27249	//   ],
27250	//   "parameters": {
27251	//     "accountId": {
27252	//       "description": "The ID of the account for which GMB access is requested.",
27253	//       "format": "uint64",
27254	//       "location": "path",
27255	//       "required": true,
27256	//       "type": "string"
27257	//     },
27258	//     "gmbEmail": {
27259	//       "description": "The email of the Google My Business account.",
27260	//       "location": "query",
27261	//       "required": true,
27262	//       "type": "string"
27263	//     },
27264	//     "merchantId": {
27265	//       "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.",
27266	//       "format": "uint64",
27267	//       "location": "path",
27268	//       "required": true,
27269	//       "type": "string"
27270	//     }
27271	//   },
27272	//   "path": "{merchantId}/liasettings/{accountId}/requestgmbaccess",
27273	//   "response": {
27274	//     "$ref": "LiasettingsRequestGmbAccessResponse"
27275	//   },
27276	//   "scopes": [
27277	//     "https://www.googleapis.com/auth/content"
27278	//   ]
27279	// }
27280
27281}
27282
27283// method id "content.liasettings.requestinventoryverification":
27284
27285type LiasettingsRequestinventoryverificationCall struct {
27286	s          *APIService
27287	merchantId uint64
27288	accountId  uint64
27289	country    string
27290	urlParams_ gensupport.URLParams
27291	ctx_       context.Context
27292	header_    http.Header
27293}
27294
27295// Requestinventoryverification: Requests inventory validation for the
27296// specified country.
27297//
27298// - accountId: The ID of the account that manages the order. This
27299//   cannot be a multi-client account.
27300// - country: The country for which inventory validation is requested.
27301// - merchantId: The ID of the managing account. If this parameter is
27302//   not the same as accountId, then this account must be a multi-client
27303//   account and `accountId` must be the ID of a sub-account of this
27304//   account.
27305func (r *LiasettingsService) Requestinventoryverification(merchantId uint64, accountId uint64, country string) *LiasettingsRequestinventoryverificationCall {
27306	c := &LiasettingsRequestinventoryverificationCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27307	c.merchantId = merchantId
27308	c.accountId = accountId
27309	c.country = country
27310	return c
27311}
27312
27313// Fields allows partial responses to be retrieved. See
27314// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27315// for more information.
27316func (c *LiasettingsRequestinventoryverificationCall) Fields(s ...googleapi.Field) *LiasettingsRequestinventoryverificationCall {
27317	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27318	return c
27319}
27320
27321// Context sets the context to be used in this call's Do method. Any
27322// pending HTTP request will be aborted if the provided context is
27323// canceled.
27324func (c *LiasettingsRequestinventoryverificationCall) Context(ctx context.Context) *LiasettingsRequestinventoryverificationCall {
27325	c.ctx_ = ctx
27326	return c
27327}
27328
27329// Header returns an http.Header that can be modified by the caller to
27330// add HTTP headers to the request.
27331func (c *LiasettingsRequestinventoryverificationCall) Header() http.Header {
27332	if c.header_ == nil {
27333		c.header_ = make(http.Header)
27334	}
27335	return c.header_
27336}
27337
27338func (c *LiasettingsRequestinventoryverificationCall) doRequest(alt string) (*http.Response, error) {
27339	reqHeaders := make(http.Header)
27340	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
27341	for k, v := range c.header_ {
27342		reqHeaders[k] = v
27343	}
27344	reqHeaders.Set("User-Agent", c.s.userAgent())
27345	var body io.Reader = nil
27346	c.urlParams_.Set("alt", alt)
27347	c.urlParams_.Set("prettyPrint", "false")
27348	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/requestinventoryverification/{country}")
27349	urls += "?" + c.urlParams_.Encode()
27350	req, err := http.NewRequest("POST", urls, body)
27351	if err != nil {
27352		return nil, err
27353	}
27354	req.Header = reqHeaders
27355	googleapi.Expand(req.URL, map[string]string{
27356		"merchantId": strconv.FormatUint(c.merchantId, 10),
27357		"accountId":  strconv.FormatUint(c.accountId, 10),
27358		"country":    c.country,
27359	})
27360	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27361}
27362
27363// Do executes the "content.liasettings.requestinventoryverification" call.
27364// Exactly one of *LiasettingsRequestInventoryVerificationResponse or
27365// error will be non-nil. Any non-2xx status code is an error. Response
27366// headers are in either
27367// *LiasettingsRequestInventoryVerificationResponse.ServerResponse.Header
27368//  or (if a response was returned at all) in
27369// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
27370// whether the returned error was because http.StatusNotModified was
27371// returned.
27372func (c *LiasettingsRequestinventoryverificationCall) Do(opts ...googleapi.CallOption) (*LiasettingsRequestInventoryVerificationResponse, error) {
27373	gensupport.SetOptions(c.urlParams_, opts...)
27374	res, err := c.doRequest("json")
27375	if res != nil && res.StatusCode == http.StatusNotModified {
27376		if res.Body != nil {
27377			res.Body.Close()
27378		}
27379		return nil, &googleapi.Error{
27380			Code:   res.StatusCode,
27381			Header: res.Header,
27382		}
27383	}
27384	if err != nil {
27385		return nil, err
27386	}
27387	defer googleapi.CloseBody(res)
27388	if err := googleapi.CheckResponse(res); err != nil {
27389		return nil, err
27390	}
27391	ret := &LiasettingsRequestInventoryVerificationResponse{
27392		ServerResponse: googleapi.ServerResponse{
27393			Header:         res.Header,
27394			HTTPStatusCode: res.StatusCode,
27395		},
27396	}
27397	target := &ret
27398	if err := gensupport.DecodeResponse(target, res); err != nil {
27399		return nil, err
27400	}
27401	return ret, nil
27402	// {
27403	//   "description": "Requests inventory validation for the specified country.",
27404	//   "flatPath": "{merchantId}/liasettings/{accountId}/requestinventoryverification/{country}",
27405	//   "httpMethod": "POST",
27406	//   "id": "content.liasettings.requestinventoryverification",
27407	//   "parameterOrder": [
27408	//     "merchantId",
27409	//     "accountId",
27410	//     "country"
27411	//   ],
27412	//   "parameters": {
27413	//     "accountId": {
27414	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
27415	//       "format": "uint64",
27416	//       "location": "path",
27417	//       "required": true,
27418	//       "type": "string"
27419	//     },
27420	//     "country": {
27421	//       "description": "The country for which inventory validation is requested.",
27422	//       "location": "path",
27423	//       "required": true,
27424	//       "type": "string"
27425	//     },
27426	//     "merchantId": {
27427	//       "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.",
27428	//       "format": "uint64",
27429	//       "location": "path",
27430	//       "required": true,
27431	//       "type": "string"
27432	//     }
27433	//   },
27434	//   "path": "{merchantId}/liasettings/{accountId}/requestinventoryverification/{country}",
27435	//   "response": {
27436	//     "$ref": "LiasettingsRequestInventoryVerificationResponse"
27437	//   },
27438	//   "scopes": [
27439	//     "https://www.googleapis.com/auth/content"
27440	//   ]
27441	// }
27442
27443}
27444
27445// method id "content.liasettings.setinventoryverificationcontact":
27446
27447type LiasettingsSetinventoryverificationcontactCall struct {
27448	s          *APIService
27449	merchantId uint64
27450	accountId  uint64
27451	urlParams_ gensupport.URLParams
27452	ctx_       context.Context
27453	header_    http.Header
27454}
27455
27456// Setinventoryverificationcontact: Sets the inventory verification
27457// contract for the specified country.
27458//
27459// - accountId: The ID of the account that manages the order. This
27460//   cannot be a multi-client account.
27461// - contactEmail: The email of the inventory verification contact.
27462// - contactName: The name of the inventory verification contact.
27463// - country: The country for which inventory verification is requested.
27464// - language: The language for which inventory verification is
27465//   requested.
27466// - merchantId: The ID of the managing account. If this parameter is
27467//   not the same as accountId, then this account must be a multi-client
27468//   account and `accountId` must be the ID of a sub-account of this
27469//   account.
27470func (r *LiasettingsService) Setinventoryverificationcontact(merchantId uint64, accountId uint64, country string, language string, contactName string, contactEmail string) *LiasettingsSetinventoryverificationcontactCall {
27471	c := &LiasettingsSetinventoryverificationcontactCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27472	c.merchantId = merchantId
27473	c.accountId = accountId
27474	c.urlParams_.Set("country", country)
27475	c.urlParams_.Set("language", language)
27476	c.urlParams_.Set("contactName", contactName)
27477	c.urlParams_.Set("contactEmail", contactEmail)
27478	return c
27479}
27480
27481// Fields allows partial responses to be retrieved. See
27482// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27483// for more information.
27484func (c *LiasettingsSetinventoryverificationcontactCall) Fields(s ...googleapi.Field) *LiasettingsSetinventoryverificationcontactCall {
27485	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27486	return c
27487}
27488
27489// Context sets the context to be used in this call's Do method. Any
27490// pending HTTP request will be aborted if the provided context is
27491// canceled.
27492func (c *LiasettingsSetinventoryverificationcontactCall) Context(ctx context.Context) *LiasettingsSetinventoryverificationcontactCall {
27493	c.ctx_ = ctx
27494	return c
27495}
27496
27497// Header returns an http.Header that can be modified by the caller to
27498// add HTTP headers to the request.
27499func (c *LiasettingsSetinventoryverificationcontactCall) Header() http.Header {
27500	if c.header_ == nil {
27501		c.header_ = make(http.Header)
27502	}
27503	return c.header_
27504}
27505
27506func (c *LiasettingsSetinventoryverificationcontactCall) doRequest(alt string) (*http.Response, error) {
27507	reqHeaders := make(http.Header)
27508	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
27509	for k, v := range c.header_ {
27510		reqHeaders[k] = v
27511	}
27512	reqHeaders.Set("User-Agent", c.s.userAgent())
27513	var body io.Reader = nil
27514	c.urlParams_.Set("alt", alt)
27515	c.urlParams_.Set("prettyPrint", "false")
27516	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/setinventoryverificationcontact")
27517	urls += "?" + c.urlParams_.Encode()
27518	req, err := http.NewRequest("POST", urls, body)
27519	if err != nil {
27520		return nil, err
27521	}
27522	req.Header = reqHeaders
27523	googleapi.Expand(req.URL, map[string]string{
27524		"merchantId": strconv.FormatUint(c.merchantId, 10),
27525		"accountId":  strconv.FormatUint(c.accountId, 10),
27526	})
27527	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27528}
27529
27530// Do executes the "content.liasettings.setinventoryverificationcontact" call.
27531// Exactly one of *LiasettingsSetInventoryVerificationContactResponse or
27532// error will be non-nil. Any non-2xx status code is an error. Response
27533// headers are in either
27534// *LiasettingsSetInventoryVerificationContactResponse.ServerResponse.Hea
27535// der or (if a response was returned at all) in
27536// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
27537// whether the returned error was because http.StatusNotModified was
27538// returned.
27539func (c *LiasettingsSetinventoryverificationcontactCall) Do(opts ...googleapi.CallOption) (*LiasettingsSetInventoryVerificationContactResponse, error) {
27540	gensupport.SetOptions(c.urlParams_, opts...)
27541	res, err := c.doRequest("json")
27542	if res != nil && res.StatusCode == http.StatusNotModified {
27543		if res.Body != nil {
27544			res.Body.Close()
27545		}
27546		return nil, &googleapi.Error{
27547			Code:   res.StatusCode,
27548			Header: res.Header,
27549		}
27550	}
27551	if err != nil {
27552		return nil, err
27553	}
27554	defer googleapi.CloseBody(res)
27555	if err := googleapi.CheckResponse(res); err != nil {
27556		return nil, err
27557	}
27558	ret := &LiasettingsSetInventoryVerificationContactResponse{
27559		ServerResponse: googleapi.ServerResponse{
27560			Header:         res.Header,
27561			HTTPStatusCode: res.StatusCode,
27562		},
27563	}
27564	target := &ret
27565	if err := gensupport.DecodeResponse(target, res); err != nil {
27566		return nil, err
27567	}
27568	return ret, nil
27569	// {
27570	//   "description": "Sets the inventory verification contract for the specified country.",
27571	//   "flatPath": "{merchantId}/liasettings/{accountId}/setinventoryverificationcontact",
27572	//   "httpMethod": "POST",
27573	//   "id": "content.liasettings.setinventoryverificationcontact",
27574	//   "parameterOrder": [
27575	//     "merchantId",
27576	//     "accountId",
27577	//     "country",
27578	//     "language",
27579	//     "contactName",
27580	//     "contactEmail"
27581	//   ],
27582	//   "parameters": {
27583	//     "accountId": {
27584	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
27585	//       "format": "uint64",
27586	//       "location": "path",
27587	//       "required": true,
27588	//       "type": "string"
27589	//     },
27590	//     "contactEmail": {
27591	//       "description": "The email of the inventory verification contact.",
27592	//       "location": "query",
27593	//       "required": true,
27594	//       "type": "string"
27595	//     },
27596	//     "contactName": {
27597	//       "description": "The name of the inventory verification contact.",
27598	//       "location": "query",
27599	//       "required": true,
27600	//       "type": "string"
27601	//     },
27602	//     "country": {
27603	//       "description": "The country for which inventory verification is requested.",
27604	//       "location": "query",
27605	//       "required": true,
27606	//       "type": "string"
27607	//     },
27608	//     "language": {
27609	//       "description": "The language for which inventory verification is requested.",
27610	//       "location": "query",
27611	//       "required": true,
27612	//       "type": "string"
27613	//     },
27614	//     "merchantId": {
27615	//       "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.",
27616	//       "format": "uint64",
27617	//       "location": "path",
27618	//       "required": true,
27619	//       "type": "string"
27620	//     }
27621	//   },
27622	//   "path": "{merchantId}/liasettings/{accountId}/setinventoryverificationcontact",
27623	//   "response": {
27624	//     "$ref": "LiasettingsSetInventoryVerificationContactResponse"
27625	//   },
27626	//   "scopes": [
27627	//     "https://www.googleapis.com/auth/content"
27628	//   ]
27629	// }
27630
27631}
27632
27633// method id "content.liasettings.setposdataprovider":
27634
27635type LiasettingsSetposdataproviderCall struct {
27636	s          *APIService
27637	merchantId uint64
27638	accountId  uint64
27639	urlParams_ gensupport.URLParams
27640	ctx_       context.Context
27641	header_    http.Header
27642}
27643
27644// Setposdataprovider: Sets the POS data provider for the specified
27645// country.
27646//
27647// - accountId: The ID of the account for which to retrieve accessible
27648//   Google My Business accounts.
27649// - country: The country for which the POS data provider is selected.
27650// - merchantId: The ID of the managing account. If this parameter is
27651//   not the same as accountId, then this account must be a multi-client
27652//   account and `accountId` must be the ID of a sub-account of this
27653//   account.
27654func (r *LiasettingsService) Setposdataprovider(merchantId uint64, accountId uint64, country string) *LiasettingsSetposdataproviderCall {
27655	c := &LiasettingsSetposdataproviderCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27656	c.merchantId = merchantId
27657	c.accountId = accountId
27658	c.urlParams_.Set("country", country)
27659	return c
27660}
27661
27662// PosDataProviderId sets the optional parameter "posDataProviderId":
27663// The ID of POS data provider.
27664func (c *LiasettingsSetposdataproviderCall) PosDataProviderId(posDataProviderId uint64) *LiasettingsSetposdataproviderCall {
27665	c.urlParams_.Set("posDataProviderId", fmt.Sprint(posDataProviderId))
27666	return c
27667}
27668
27669// PosExternalAccountId sets the optional parameter
27670// "posExternalAccountId": The account ID by which this merchant is
27671// known to the POS data provider.
27672func (c *LiasettingsSetposdataproviderCall) PosExternalAccountId(posExternalAccountId string) *LiasettingsSetposdataproviderCall {
27673	c.urlParams_.Set("posExternalAccountId", posExternalAccountId)
27674	return c
27675}
27676
27677// Fields allows partial responses to be retrieved. See
27678// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27679// for more information.
27680func (c *LiasettingsSetposdataproviderCall) Fields(s ...googleapi.Field) *LiasettingsSetposdataproviderCall {
27681	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27682	return c
27683}
27684
27685// Context sets the context to be used in this call's Do method. Any
27686// pending HTTP request will be aborted if the provided context is
27687// canceled.
27688func (c *LiasettingsSetposdataproviderCall) Context(ctx context.Context) *LiasettingsSetposdataproviderCall {
27689	c.ctx_ = ctx
27690	return c
27691}
27692
27693// Header returns an http.Header that can be modified by the caller to
27694// add HTTP headers to the request.
27695func (c *LiasettingsSetposdataproviderCall) Header() http.Header {
27696	if c.header_ == nil {
27697		c.header_ = make(http.Header)
27698	}
27699	return c.header_
27700}
27701
27702func (c *LiasettingsSetposdataproviderCall) doRequest(alt string) (*http.Response, error) {
27703	reqHeaders := make(http.Header)
27704	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
27705	for k, v := range c.header_ {
27706		reqHeaders[k] = v
27707	}
27708	reqHeaders.Set("User-Agent", c.s.userAgent())
27709	var body io.Reader = nil
27710	c.urlParams_.Set("alt", alt)
27711	c.urlParams_.Set("prettyPrint", "false")
27712	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/setposdataprovider")
27713	urls += "?" + c.urlParams_.Encode()
27714	req, err := http.NewRequest("POST", urls, body)
27715	if err != nil {
27716		return nil, err
27717	}
27718	req.Header = reqHeaders
27719	googleapi.Expand(req.URL, map[string]string{
27720		"merchantId": strconv.FormatUint(c.merchantId, 10),
27721		"accountId":  strconv.FormatUint(c.accountId, 10),
27722	})
27723	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27724}
27725
27726// Do executes the "content.liasettings.setposdataprovider" call.
27727// Exactly one of *LiasettingsSetPosDataProviderResponse or error will
27728// be non-nil. Any non-2xx status code is an error. Response headers are
27729// in either
27730// *LiasettingsSetPosDataProviderResponse.ServerResponse.Header or (if a
27731// response was returned at all) in error.(*googleapi.Error).Header. Use
27732// googleapi.IsNotModified to check whether the returned error was
27733// because http.StatusNotModified was returned.
27734func (c *LiasettingsSetposdataproviderCall) Do(opts ...googleapi.CallOption) (*LiasettingsSetPosDataProviderResponse, error) {
27735	gensupport.SetOptions(c.urlParams_, opts...)
27736	res, err := c.doRequest("json")
27737	if res != nil && res.StatusCode == http.StatusNotModified {
27738		if res.Body != nil {
27739			res.Body.Close()
27740		}
27741		return nil, &googleapi.Error{
27742			Code:   res.StatusCode,
27743			Header: res.Header,
27744		}
27745	}
27746	if err != nil {
27747		return nil, err
27748	}
27749	defer googleapi.CloseBody(res)
27750	if err := googleapi.CheckResponse(res); err != nil {
27751		return nil, err
27752	}
27753	ret := &LiasettingsSetPosDataProviderResponse{
27754		ServerResponse: googleapi.ServerResponse{
27755			Header:         res.Header,
27756			HTTPStatusCode: res.StatusCode,
27757		},
27758	}
27759	target := &ret
27760	if err := gensupport.DecodeResponse(target, res); err != nil {
27761		return nil, err
27762	}
27763	return ret, nil
27764	// {
27765	//   "description": "Sets the POS data provider for the specified country.",
27766	//   "flatPath": "{merchantId}/liasettings/{accountId}/setposdataprovider",
27767	//   "httpMethod": "POST",
27768	//   "id": "content.liasettings.setposdataprovider",
27769	//   "parameterOrder": [
27770	//     "merchantId",
27771	//     "accountId",
27772	//     "country"
27773	//   ],
27774	//   "parameters": {
27775	//     "accountId": {
27776	//       "description": "The ID of the account for which to retrieve accessible Google My Business accounts.",
27777	//       "format": "uint64",
27778	//       "location": "path",
27779	//       "required": true,
27780	//       "type": "string"
27781	//     },
27782	//     "country": {
27783	//       "description": "The country for which the POS data provider is selected.",
27784	//       "location": "query",
27785	//       "required": true,
27786	//       "type": "string"
27787	//     },
27788	//     "merchantId": {
27789	//       "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.",
27790	//       "format": "uint64",
27791	//       "location": "path",
27792	//       "required": true,
27793	//       "type": "string"
27794	//     },
27795	//     "posDataProviderId": {
27796	//       "description": "The ID of POS data provider.",
27797	//       "format": "uint64",
27798	//       "location": "query",
27799	//       "type": "string"
27800	//     },
27801	//     "posExternalAccountId": {
27802	//       "description": "The account ID by which this merchant is known to the POS data provider.",
27803	//       "location": "query",
27804	//       "type": "string"
27805	//     }
27806	//   },
27807	//   "path": "{merchantId}/liasettings/{accountId}/setposdataprovider",
27808	//   "response": {
27809	//     "$ref": "LiasettingsSetPosDataProviderResponse"
27810	//   },
27811	//   "scopes": [
27812	//     "https://www.googleapis.com/auth/content"
27813	//   ]
27814	// }
27815
27816}
27817
27818// method id "content.liasettings.update":
27819
27820type LiasettingsUpdateCall struct {
27821	s           *APIService
27822	merchantId  uint64
27823	accountId   uint64
27824	liasettings *LiaSettings
27825	urlParams_  gensupport.URLParams
27826	ctx_        context.Context
27827	header_     http.Header
27828}
27829
27830// Update: Updates the LIA settings of the account. Any fields that are
27831// not provided are deleted from the resource.
27832//
27833// - accountId: The ID of the account for which to get or update LIA
27834//   settings.
27835// - merchantId: The ID of the managing account. If this parameter is
27836//   not the same as accountId, then this account must be a multi-client
27837//   account and `accountId` must be the ID of a sub-account of this
27838//   account.
27839func (r *LiasettingsService) Update(merchantId uint64, accountId uint64, liasettings *LiaSettings) *LiasettingsUpdateCall {
27840	c := &LiasettingsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27841	c.merchantId = merchantId
27842	c.accountId = accountId
27843	c.liasettings = liasettings
27844	return c
27845}
27846
27847// Fields allows partial responses to be retrieved. See
27848// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27849// for more information.
27850func (c *LiasettingsUpdateCall) Fields(s ...googleapi.Field) *LiasettingsUpdateCall {
27851	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27852	return c
27853}
27854
27855// Context sets the context to be used in this call's Do method. Any
27856// pending HTTP request will be aborted if the provided context is
27857// canceled.
27858func (c *LiasettingsUpdateCall) Context(ctx context.Context) *LiasettingsUpdateCall {
27859	c.ctx_ = ctx
27860	return c
27861}
27862
27863// Header returns an http.Header that can be modified by the caller to
27864// add HTTP headers to the request.
27865func (c *LiasettingsUpdateCall) Header() http.Header {
27866	if c.header_ == nil {
27867		c.header_ = make(http.Header)
27868	}
27869	return c.header_
27870}
27871
27872func (c *LiasettingsUpdateCall) doRequest(alt string) (*http.Response, error) {
27873	reqHeaders := make(http.Header)
27874	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
27875	for k, v := range c.header_ {
27876		reqHeaders[k] = v
27877	}
27878	reqHeaders.Set("User-Agent", c.s.userAgent())
27879	var body io.Reader = nil
27880	body, err := googleapi.WithoutDataWrapper.JSONReader(c.liasettings)
27881	if err != nil {
27882		return nil, err
27883	}
27884	reqHeaders.Set("Content-Type", "application/json")
27885	c.urlParams_.Set("alt", alt)
27886	c.urlParams_.Set("prettyPrint", "false")
27887	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}")
27888	urls += "?" + c.urlParams_.Encode()
27889	req, err := http.NewRequest("PUT", urls, body)
27890	if err != nil {
27891		return nil, err
27892	}
27893	req.Header = reqHeaders
27894	googleapi.Expand(req.URL, map[string]string{
27895		"merchantId": strconv.FormatUint(c.merchantId, 10),
27896		"accountId":  strconv.FormatUint(c.accountId, 10),
27897	})
27898	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27899}
27900
27901// Do executes the "content.liasettings.update" call.
27902// Exactly one of *LiaSettings or error will be non-nil. Any non-2xx
27903// status code is an error. Response headers are in either
27904// *LiaSettings.ServerResponse.Header or (if a response was returned at
27905// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
27906// to check whether the returned error was because
27907// http.StatusNotModified was returned.
27908func (c *LiasettingsUpdateCall) Do(opts ...googleapi.CallOption) (*LiaSettings, error) {
27909	gensupport.SetOptions(c.urlParams_, opts...)
27910	res, err := c.doRequest("json")
27911	if res != nil && res.StatusCode == http.StatusNotModified {
27912		if res.Body != nil {
27913			res.Body.Close()
27914		}
27915		return nil, &googleapi.Error{
27916			Code:   res.StatusCode,
27917			Header: res.Header,
27918		}
27919	}
27920	if err != nil {
27921		return nil, err
27922	}
27923	defer googleapi.CloseBody(res)
27924	if err := googleapi.CheckResponse(res); err != nil {
27925		return nil, err
27926	}
27927	ret := &LiaSettings{
27928		ServerResponse: googleapi.ServerResponse{
27929			Header:         res.Header,
27930			HTTPStatusCode: res.StatusCode,
27931		},
27932	}
27933	target := &ret
27934	if err := gensupport.DecodeResponse(target, res); err != nil {
27935		return nil, err
27936	}
27937	return ret, nil
27938	// {
27939	//   "description": "Updates the LIA settings of the account. Any fields that are not provided are deleted from the resource.",
27940	//   "flatPath": "{merchantId}/liasettings/{accountId}",
27941	//   "httpMethod": "PUT",
27942	//   "id": "content.liasettings.update",
27943	//   "parameterOrder": [
27944	//     "merchantId",
27945	//     "accountId"
27946	//   ],
27947	//   "parameters": {
27948	//     "accountId": {
27949	//       "description": "The ID of the account for which to get or update LIA settings.",
27950	//       "format": "uint64",
27951	//       "location": "path",
27952	//       "required": true,
27953	//       "type": "string"
27954	//     },
27955	//     "merchantId": {
27956	//       "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.",
27957	//       "format": "uint64",
27958	//       "location": "path",
27959	//       "required": true,
27960	//       "type": "string"
27961	//     }
27962	//   },
27963	//   "path": "{merchantId}/liasettings/{accountId}",
27964	//   "request": {
27965	//     "$ref": "LiaSettings"
27966	//   },
27967	//   "response": {
27968	//     "$ref": "LiaSettings"
27969	//   },
27970	//   "scopes": [
27971	//     "https://www.googleapis.com/auth/content"
27972	//   ]
27973	// }
27974
27975}
27976
27977// method id "content.localinventory.custombatch":
27978
27979type LocalinventoryCustombatchCall struct {
27980	s                                *APIService
27981	localinventorycustombatchrequest *LocalinventoryCustomBatchRequest
27982	urlParams_                       gensupport.URLParams
27983	ctx_                             context.Context
27984	header_                          http.Header
27985}
27986
27987// Custombatch: Updates local inventory for multiple products or stores
27988// in a single request.
27989func (r *LocalinventoryService) Custombatch(localinventorycustombatchrequest *LocalinventoryCustomBatchRequest) *LocalinventoryCustombatchCall {
27990	c := &LocalinventoryCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27991	c.localinventorycustombatchrequest = localinventorycustombatchrequest
27992	return c
27993}
27994
27995// Fields allows partial responses to be retrieved. See
27996// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27997// for more information.
27998func (c *LocalinventoryCustombatchCall) Fields(s ...googleapi.Field) *LocalinventoryCustombatchCall {
27999	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28000	return c
28001}
28002
28003// Context sets the context to be used in this call's Do method. Any
28004// pending HTTP request will be aborted if the provided context is
28005// canceled.
28006func (c *LocalinventoryCustombatchCall) Context(ctx context.Context) *LocalinventoryCustombatchCall {
28007	c.ctx_ = ctx
28008	return c
28009}
28010
28011// Header returns an http.Header that can be modified by the caller to
28012// add HTTP headers to the request.
28013func (c *LocalinventoryCustombatchCall) Header() http.Header {
28014	if c.header_ == nil {
28015		c.header_ = make(http.Header)
28016	}
28017	return c.header_
28018}
28019
28020func (c *LocalinventoryCustombatchCall) doRequest(alt string) (*http.Response, error) {
28021	reqHeaders := make(http.Header)
28022	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
28023	for k, v := range c.header_ {
28024		reqHeaders[k] = v
28025	}
28026	reqHeaders.Set("User-Agent", c.s.userAgent())
28027	var body io.Reader = nil
28028	body, err := googleapi.WithoutDataWrapper.JSONReader(c.localinventorycustombatchrequest)
28029	if err != nil {
28030		return nil, err
28031	}
28032	reqHeaders.Set("Content-Type", "application/json")
28033	c.urlParams_.Set("alt", alt)
28034	c.urlParams_.Set("prettyPrint", "false")
28035	urls := googleapi.ResolveRelative(c.s.BasePath, "localinventory/batch")
28036	urls += "?" + c.urlParams_.Encode()
28037	req, err := http.NewRequest("POST", urls, body)
28038	if err != nil {
28039		return nil, err
28040	}
28041	req.Header = reqHeaders
28042	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28043}
28044
28045// Do executes the "content.localinventory.custombatch" call.
28046// Exactly one of *LocalinventoryCustomBatchResponse or error will be
28047// non-nil. Any non-2xx status code is an error. Response headers are in
28048// either *LocalinventoryCustomBatchResponse.ServerResponse.Header or
28049// (if a response was returned at all) in
28050// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
28051// whether the returned error was because http.StatusNotModified was
28052// returned.
28053func (c *LocalinventoryCustombatchCall) Do(opts ...googleapi.CallOption) (*LocalinventoryCustomBatchResponse, error) {
28054	gensupport.SetOptions(c.urlParams_, opts...)
28055	res, err := c.doRequest("json")
28056	if res != nil && res.StatusCode == http.StatusNotModified {
28057		if res.Body != nil {
28058			res.Body.Close()
28059		}
28060		return nil, &googleapi.Error{
28061			Code:   res.StatusCode,
28062			Header: res.Header,
28063		}
28064	}
28065	if err != nil {
28066		return nil, err
28067	}
28068	defer googleapi.CloseBody(res)
28069	if err := googleapi.CheckResponse(res); err != nil {
28070		return nil, err
28071	}
28072	ret := &LocalinventoryCustomBatchResponse{
28073		ServerResponse: googleapi.ServerResponse{
28074			Header:         res.Header,
28075			HTTPStatusCode: res.StatusCode,
28076		},
28077	}
28078	target := &ret
28079	if err := gensupport.DecodeResponse(target, res); err != nil {
28080		return nil, err
28081	}
28082	return ret, nil
28083	// {
28084	//   "description": "Updates local inventory for multiple products or stores in a single request.",
28085	//   "flatPath": "localinventory/batch",
28086	//   "httpMethod": "POST",
28087	//   "id": "content.localinventory.custombatch",
28088	//   "parameterOrder": [],
28089	//   "parameters": {},
28090	//   "path": "localinventory/batch",
28091	//   "request": {
28092	//     "$ref": "LocalinventoryCustomBatchRequest"
28093	//   },
28094	//   "response": {
28095	//     "$ref": "LocalinventoryCustomBatchResponse"
28096	//   },
28097	//   "scopes": [
28098	//     "https://www.googleapis.com/auth/content"
28099	//   ]
28100	// }
28101
28102}
28103
28104// method id "content.localinventory.insert":
28105
28106type LocalinventoryInsertCall struct {
28107	s              *APIService
28108	merchantId     uint64
28109	productId      string
28110	localinventory *LocalInventory
28111	urlParams_     gensupport.URLParams
28112	ctx_           context.Context
28113	header_        http.Header
28114}
28115
28116// Insert: Updates the local inventory of a product in your Merchant
28117// Center account.
28118//
28119// - merchantId: The ID of the account that contains the product. This
28120//   account cannot be a multi-client account.
28121// - productId: The REST ID of the product for which to update local
28122//   inventory.
28123func (r *LocalinventoryService) Insert(merchantId uint64, productId string, localinventory *LocalInventory) *LocalinventoryInsertCall {
28124	c := &LocalinventoryInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28125	c.merchantId = merchantId
28126	c.productId = productId
28127	c.localinventory = localinventory
28128	return c
28129}
28130
28131// Fields allows partial responses to be retrieved. See
28132// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28133// for more information.
28134func (c *LocalinventoryInsertCall) Fields(s ...googleapi.Field) *LocalinventoryInsertCall {
28135	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28136	return c
28137}
28138
28139// Context sets the context to be used in this call's Do method. Any
28140// pending HTTP request will be aborted if the provided context is
28141// canceled.
28142func (c *LocalinventoryInsertCall) Context(ctx context.Context) *LocalinventoryInsertCall {
28143	c.ctx_ = ctx
28144	return c
28145}
28146
28147// Header returns an http.Header that can be modified by the caller to
28148// add HTTP headers to the request.
28149func (c *LocalinventoryInsertCall) Header() http.Header {
28150	if c.header_ == nil {
28151		c.header_ = make(http.Header)
28152	}
28153	return c.header_
28154}
28155
28156func (c *LocalinventoryInsertCall) doRequest(alt string) (*http.Response, error) {
28157	reqHeaders := make(http.Header)
28158	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
28159	for k, v := range c.header_ {
28160		reqHeaders[k] = v
28161	}
28162	reqHeaders.Set("User-Agent", c.s.userAgent())
28163	var body io.Reader = nil
28164	body, err := googleapi.WithoutDataWrapper.JSONReader(c.localinventory)
28165	if err != nil {
28166		return nil, err
28167	}
28168	reqHeaders.Set("Content-Type", "application/json")
28169	c.urlParams_.Set("alt", alt)
28170	c.urlParams_.Set("prettyPrint", "false")
28171	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products/{productId}/localinventory")
28172	urls += "?" + c.urlParams_.Encode()
28173	req, err := http.NewRequest("POST", urls, body)
28174	if err != nil {
28175		return nil, err
28176	}
28177	req.Header = reqHeaders
28178	googleapi.Expand(req.URL, map[string]string{
28179		"merchantId": strconv.FormatUint(c.merchantId, 10),
28180		"productId":  c.productId,
28181	})
28182	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28183}
28184
28185// Do executes the "content.localinventory.insert" call.
28186// Exactly one of *LocalInventory or error will be non-nil. Any non-2xx
28187// status code is an error. Response headers are in either
28188// *LocalInventory.ServerResponse.Header or (if a response was returned
28189// at all) in error.(*googleapi.Error).Header. Use
28190// googleapi.IsNotModified to check whether the returned error was
28191// because http.StatusNotModified was returned.
28192func (c *LocalinventoryInsertCall) Do(opts ...googleapi.CallOption) (*LocalInventory, error) {
28193	gensupport.SetOptions(c.urlParams_, opts...)
28194	res, err := c.doRequest("json")
28195	if res != nil && res.StatusCode == http.StatusNotModified {
28196		if res.Body != nil {
28197			res.Body.Close()
28198		}
28199		return nil, &googleapi.Error{
28200			Code:   res.StatusCode,
28201			Header: res.Header,
28202		}
28203	}
28204	if err != nil {
28205		return nil, err
28206	}
28207	defer googleapi.CloseBody(res)
28208	if err := googleapi.CheckResponse(res); err != nil {
28209		return nil, err
28210	}
28211	ret := &LocalInventory{
28212		ServerResponse: googleapi.ServerResponse{
28213			Header:         res.Header,
28214			HTTPStatusCode: res.StatusCode,
28215		},
28216	}
28217	target := &ret
28218	if err := gensupport.DecodeResponse(target, res); err != nil {
28219		return nil, err
28220	}
28221	return ret, nil
28222	// {
28223	//   "description": "Updates the local inventory of a product in your Merchant Center account.",
28224	//   "flatPath": "{merchantId}/products/{productId}/localinventory",
28225	//   "httpMethod": "POST",
28226	//   "id": "content.localinventory.insert",
28227	//   "parameterOrder": [
28228	//     "merchantId",
28229	//     "productId"
28230	//   ],
28231	//   "parameters": {
28232	//     "merchantId": {
28233	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
28234	//       "format": "uint64",
28235	//       "location": "path",
28236	//       "required": true,
28237	//       "type": "string"
28238	//     },
28239	//     "productId": {
28240	//       "description": "The REST ID of the product for which to update local inventory.",
28241	//       "location": "path",
28242	//       "required": true,
28243	//       "type": "string"
28244	//     }
28245	//   },
28246	//   "path": "{merchantId}/products/{productId}/localinventory",
28247	//   "request": {
28248	//     "$ref": "LocalInventory"
28249	//   },
28250	//   "response": {
28251	//     "$ref": "LocalInventory"
28252	//   },
28253	//   "scopes": [
28254	//     "https://www.googleapis.com/auth/content"
28255	//   ]
28256	// }
28257
28258}
28259
28260// method id "content.orderinvoices.createchargeinvoice":
28261
28262type OrderinvoicesCreatechargeinvoiceCall struct {
28263	s                                       *APIService
28264	merchantId                              uint64
28265	orderId                                 string
28266	orderinvoicescreatechargeinvoicerequest *OrderinvoicesCreateChargeInvoiceRequest
28267	urlParams_                              gensupport.URLParams
28268	ctx_                                    context.Context
28269	header_                                 http.Header
28270}
28271
28272// Createchargeinvoice: Creates a charge invoice for a shipment group,
28273// and triggers a charge capture for orderinvoice enabled orders.
28274//
28275// - merchantId: The ID of the account that manages the order. This
28276//   cannot be a multi-client account.
28277// - orderId: The ID of the order.
28278func (r *OrderinvoicesService) Createchargeinvoice(merchantId uint64, orderId string, orderinvoicescreatechargeinvoicerequest *OrderinvoicesCreateChargeInvoiceRequest) *OrderinvoicesCreatechargeinvoiceCall {
28279	c := &OrderinvoicesCreatechargeinvoiceCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28280	c.merchantId = merchantId
28281	c.orderId = orderId
28282	c.orderinvoicescreatechargeinvoicerequest = orderinvoicescreatechargeinvoicerequest
28283	return c
28284}
28285
28286// Fields allows partial responses to be retrieved. See
28287// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28288// for more information.
28289func (c *OrderinvoicesCreatechargeinvoiceCall) Fields(s ...googleapi.Field) *OrderinvoicesCreatechargeinvoiceCall {
28290	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28291	return c
28292}
28293
28294// Context sets the context to be used in this call's Do method. Any
28295// pending HTTP request will be aborted if the provided context is
28296// canceled.
28297func (c *OrderinvoicesCreatechargeinvoiceCall) Context(ctx context.Context) *OrderinvoicesCreatechargeinvoiceCall {
28298	c.ctx_ = ctx
28299	return c
28300}
28301
28302// Header returns an http.Header that can be modified by the caller to
28303// add HTTP headers to the request.
28304func (c *OrderinvoicesCreatechargeinvoiceCall) Header() http.Header {
28305	if c.header_ == nil {
28306		c.header_ = make(http.Header)
28307	}
28308	return c.header_
28309}
28310
28311func (c *OrderinvoicesCreatechargeinvoiceCall) doRequest(alt string) (*http.Response, error) {
28312	reqHeaders := make(http.Header)
28313	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
28314	for k, v := range c.header_ {
28315		reqHeaders[k] = v
28316	}
28317	reqHeaders.Set("User-Agent", c.s.userAgent())
28318	var body io.Reader = nil
28319	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderinvoicescreatechargeinvoicerequest)
28320	if err != nil {
28321		return nil, err
28322	}
28323	reqHeaders.Set("Content-Type", "application/json")
28324	c.urlParams_.Set("alt", alt)
28325	c.urlParams_.Set("prettyPrint", "false")
28326	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderinvoices/{orderId}/createChargeInvoice")
28327	urls += "?" + c.urlParams_.Encode()
28328	req, err := http.NewRequest("POST", urls, body)
28329	if err != nil {
28330		return nil, err
28331	}
28332	req.Header = reqHeaders
28333	googleapi.Expand(req.URL, map[string]string{
28334		"merchantId": strconv.FormatUint(c.merchantId, 10),
28335		"orderId":    c.orderId,
28336	})
28337	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28338}
28339
28340// Do executes the "content.orderinvoices.createchargeinvoice" call.
28341// Exactly one of *OrderinvoicesCreateChargeInvoiceResponse or error
28342// will be non-nil. Any non-2xx status code is an error. Response
28343// headers are in either
28344// *OrderinvoicesCreateChargeInvoiceResponse.ServerResponse.Header or
28345// (if a response was returned at all) in
28346// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
28347// whether the returned error was because http.StatusNotModified was
28348// returned.
28349func (c *OrderinvoicesCreatechargeinvoiceCall) Do(opts ...googleapi.CallOption) (*OrderinvoicesCreateChargeInvoiceResponse, error) {
28350	gensupport.SetOptions(c.urlParams_, opts...)
28351	res, err := c.doRequest("json")
28352	if res != nil && res.StatusCode == http.StatusNotModified {
28353		if res.Body != nil {
28354			res.Body.Close()
28355		}
28356		return nil, &googleapi.Error{
28357			Code:   res.StatusCode,
28358			Header: res.Header,
28359		}
28360	}
28361	if err != nil {
28362		return nil, err
28363	}
28364	defer googleapi.CloseBody(res)
28365	if err := googleapi.CheckResponse(res); err != nil {
28366		return nil, err
28367	}
28368	ret := &OrderinvoicesCreateChargeInvoiceResponse{
28369		ServerResponse: googleapi.ServerResponse{
28370			Header:         res.Header,
28371			HTTPStatusCode: res.StatusCode,
28372		},
28373	}
28374	target := &ret
28375	if err := gensupport.DecodeResponse(target, res); err != nil {
28376		return nil, err
28377	}
28378	return ret, nil
28379	// {
28380	//   "description": "Creates a charge invoice for a shipment group, and triggers a charge capture for orderinvoice enabled orders.",
28381	//   "flatPath": "{merchantId}/orderinvoices/{orderId}/createChargeInvoice",
28382	//   "httpMethod": "POST",
28383	//   "id": "content.orderinvoices.createchargeinvoice",
28384	//   "parameterOrder": [
28385	//     "merchantId",
28386	//     "orderId"
28387	//   ],
28388	//   "parameters": {
28389	//     "merchantId": {
28390	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
28391	//       "format": "uint64",
28392	//       "location": "path",
28393	//       "required": true,
28394	//       "type": "string"
28395	//     },
28396	//     "orderId": {
28397	//       "description": "The ID of the order.",
28398	//       "location": "path",
28399	//       "required": true,
28400	//       "type": "string"
28401	//     }
28402	//   },
28403	//   "path": "{merchantId}/orderinvoices/{orderId}/createChargeInvoice",
28404	//   "request": {
28405	//     "$ref": "OrderinvoicesCreateChargeInvoiceRequest"
28406	//   },
28407	//   "response": {
28408	//     "$ref": "OrderinvoicesCreateChargeInvoiceResponse"
28409	//   },
28410	//   "scopes": [
28411	//     "https://www.googleapis.com/auth/content"
28412	//   ]
28413	// }
28414
28415}
28416
28417// method id "content.orderinvoices.createrefundinvoice":
28418
28419type OrderinvoicesCreaterefundinvoiceCall struct {
28420	s                                       *APIService
28421	merchantId                              uint64
28422	orderId                                 string
28423	orderinvoicescreaterefundinvoicerequest *OrderinvoicesCreateRefundInvoiceRequest
28424	urlParams_                              gensupport.URLParams
28425	ctx_                                    context.Context
28426	header_                                 http.Header
28427}
28428
28429// Createrefundinvoice: Creates a refund invoice for one or more
28430// shipment groups, and triggers a refund for orderinvoice enabled
28431// orders. This can only be used for line items that have previously
28432// been charged using `createChargeInvoice`. All amounts (except for the
28433// summary) are incremental with respect to the previous invoice.
28434//
28435// - merchantId: The ID of the account that manages the order. This
28436//   cannot be a multi-client account.
28437// - orderId: The ID of the order.
28438func (r *OrderinvoicesService) Createrefundinvoice(merchantId uint64, orderId string, orderinvoicescreaterefundinvoicerequest *OrderinvoicesCreateRefundInvoiceRequest) *OrderinvoicesCreaterefundinvoiceCall {
28439	c := &OrderinvoicesCreaterefundinvoiceCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28440	c.merchantId = merchantId
28441	c.orderId = orderId
28442	c.orderinvoicescreaterefundinvoicerequest = orderinvoicescreaterefundinvoicerequest
28443	return c
28444}
28445
28446// Fields allows partial responses to be retrieved. See
28447// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28448// for more information.
28449func (c *OrderinvoicesCreaterefundinvoiceCall) Fields(s ...googleapi.Field) *OrderinvoicesCreaterefundinvoiceCall {
28450	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28451	return c
28452}
28453
28454// Context sets the context to be used in this call's Do method. Any
28455// pending HTTP request will be aborted if the provided context is
28456// canceled.
28457func (c *OrderinvoicesCreaterefundinvoiceCall) Context(ctx context.Context) *OrderinvoicesCreaterefundinvoiceCall {
28458	c.ctx_ = ctx
28459	return c
28460}
28461
28462// Header returns an http.Header that can be modified by the caller to
28463// add HTTP headers to the request.
28464func (c *OrderinvoicesCreaterefundinvoiceCall) Header() http.Header {
28465	if c.header_ == nil {
28466		c.header_ = make(http.Header)
28467	}
28468	return c.header_
28469}
28470
28471func (c *OrderinvoicesCreaterefundinvoiceCall) doRequest(alt string) (*http.Response, error) {
28472	reqHeaders := make(http.Header)
28473	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
28474	for k, v := range c.header_ {
28475		reqHeaders[k] = v
28476	}
28477	reqHeaders.Set("User-Agent", c.s.userAgent())
28478	var body io.Reader = nil
28479	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderinvoicescreaterefundinvoicerequest)
28480	if err != nil {
28481		return nil, err
28482	}
28483	reqHeaders.Set("Content-Type", "application/json")
28484	c.urlParams_.Set("alt", alt)
28485	c.urlParams_.Set("prettyPrint", "false")
28486	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderinvoices/{orderId}/createRefundInvoice")
28487	urls += "?" + c.urlParams_.Encode()
28488	req, err := http.NewRequest("POST", urls, body)
28489	if err != nil {
28490		return nil, err
28491	}
28492	req.Header = reqHeaders
28493	googleapi.Expand(req.URL, map[string]string{
28494		"merchantId": strconv.FormatUint(c.merchantId, 10),
28495		"orderId":    c.orderId,
28496	})
28497	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28498}
28499
28500// Do executes the "content.orderinvoices.createrefundinvoice" call.
28501// Exactly one of *OrderinvoicesCreateRefundInvoiceResponse or error
28502// will be non-nil. Any non-2xx status code is an error. Response
28503// headers are in either
28504// *OrderinvoicesCreateRefundInvoiceResponse.ServerResponse.Header or
28505// (if a response was returned at all) in
28506// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
28507// whether the returned error was because http.StatusNotModified was
28508// returned.
28509func (c *OrderinvoicesCreaterefundinvoiceCall) Do(opts ...googleapi.CallOption) (*OrderinvoicesCreateRefundInvoiceResponse, error) {
28510	gensupport.SetOptions(c.urlParams_, opts...)
28511	res, err := c.doRequest("json")
28512	if res != nil && res.StatusCode == http.StatusNotModified {
28513		if res.Body != nil {
28514			res.Body.Close()
28515		}
28516		return nil, &googleapi.Error{
28517			Code:   res.StatusCode,
28518			Header: res.Header,
28519		}
28520	}
28521	if err != nil {
28522		return nil, err
28523	}
28524	defer googleapi.CloseBody(res)
28525	if err := googleapi.CheckResponse(res); err != nil {
28526		return nil, err
28527	}
28528	ret := &OrderinvoicesCreateRefundInvoiceResponse{
28529		ServerResponse: googleapi.ServerResponse{
28530			Header:         res.Header,
28531			HTTPStatusCode: res.StatusCode,
28532		},
28533	}
28534	target := &ret
28535	if err := gensupport.DecodeResponse(target, res); err != nil {
28536		return nil, err
28537	}
28538	return ret, nil
28539	// {
28540	//   "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.",
28541	//   "flatPath": "{merchantId}/orderinvoices/{orderId}/createRefundInvoice",
28542	//   "httpMethod": "POST",
28543	//   "id": "content.orderinvoices.createrefundinvoice",
28544	//   "parameterOrder": [
28545	//     "merchantId",
28546	//     "orderId"
28547	//   ],
28548	//   "parameters": {
28549	//     "merchantId": {
28550	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
28551	//       "format": "uint64",
28552	//       "location": "path",
28553	//       "required": true,
28554	//       "type": "string"
28555	//     },
28556	//     "orderId": {
28557	//       "description": "The ID of the order.",
28558	//       "location": "path",
28559	//       "required": true,
28560	//       "type": "string"
28561	//     }
28562	//   },
28563	//   "path": "{merchantId}/orderinvoices/{orderId}/createRefundInvoice",
28564	//   "request": {
28565	//     "$ref": "OrderinvoicesCreateRefundInvoiceRequest"
28566	//   },
28567	//   "response": {
28568	//     "$ref": "OrderinvoicesCreateRefundInvoiceResponse"
28569	//   },
28570	//   "scopes": [
28571	//     "https://www.googleapis.com/auth/content"
28572	//   ]
28573	// }
28574
28575}
28576
28577// method id "content.orderreports.listdisbursements":
28578
28579type OrderreportsListdisbursementsCall struct {
28580	s            *APIService
28581	merchantId   uint64
28582	urlParams_   gensupport.URLParams
28583	ifNoneMatch_ string
28584	ctx_         context.Context
28585	header_      http.Header
28586}
28587
28588// Listdisbursements: Retrieves a report for disbursements from your
28589// Merchant Center account.
28590//
28591// - merchantId: The ID of the account that manages the order. This
28592//   cannot be a multi-client account.
28593func (r *OrderreportsService) Listdisbursements(merchantId uint64) *OrderreportsListdisbursementsCall {
28594	c := &OrderreportsListdisbursementsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28595	c.merchantId = merchantId
28596	return c
28597}
28598
28599// DisbursementEndDate sets the optional parameter
28600// "disbursementEndDate": The last date which disbursements occurred. In
28601// ISO 8601 format. Default: current date.
28602func (c *OrderreportsListdisbursementsCall) DisbursementEndDate(disbursementEndDate string) *OrderreportsListdisbursementsCall {
28603	c.urlParams_.Set("disbursementEndDate", disbursementEndDate)
28604	return c
28605}
28606
28607// DisbursementStartDate sets the optional parameter
28608// "disbursementStartDate": The first date which disbursements occurred.
28609// In ISO 8601 format.
28610func (c *OrderreportsListdisbursementsCall) DisbursementStartDate(disbursementStartDate string) *OrderreportsListdisbursementsCall {
28611	c.urlParams_.Set("disbursementStartDate", disbursementStartDate)
28612	return c
28613}
28614
28615// MaxResults sets the optional parameter "maxResults": The maximum
28616// number of disbursements to return in the response, used for paging.
28617func (c *OrderreportsListdisbursementsCall) MaxResults(maxResults int64) *OrderreportsListdisbursementsCall {
28618	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
28619	return c
28620}
28621
28622// PageToken sets the optional parameter "pageToken": The token returned
28623// by the previous request.
28624func (c *OrderreportsListdisbursementsCall) PageToken(pageToken string) *OrderreportsListdisbursementsCall {
28625	c.urlParams_.Set("pageToken", pageToken)
28626	return c
28627}
28628
28629// Fields allows partial responses to be retrieved. See
28630// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28631// for more information.
28632func (c *OrderreportsListdisbursementsCall) Fields(s ...googleapi.Field) *OrderreportsListdisbursementsCall {
28633	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28634	return c
28635}
28636
28637// IfNoneMatch sets the optional parameter which makes the operation
28638// fail if the object's ETag matches the given value. This is useful for
28639// getting updates only after the object has changed since the last
28640// request. Use googleapi.IsNotModified to check whether the response
28641// error from Do is the result of In-None-Match.
28642func (c *OrderreportsListdisbursementsCall) IfNoneMatch(entityTag string) *OrderreportsListdisbursementsCall {
28643	c.ifNoneMatch_ = entityTag
28644	return c
28645}
28646
28647// Context sets the context to be used in this call's Do method. Any
28648// pending HTTP request will be aborted if the provided context is
28649// canceled.
28650func (c *OrderreportsListdisbursementsCall) Context(ctx context.Context) *OrderreportsListdisbursementsCall {
28651	c.ctx_ = ctx
28652	return c
28653}
28654
28655// Header returns an http.Header that can be modified by the caller to
28656// add HTTP headers to the request.
28657func (c *OrderreportsListdisbursementsCall) Header() http.Header {
28658	if c.header_ == nil {
28659		c.header_ = make(http.Header)
28660	}
28661	return c.header_
28662}
28663
28664func (c *OrderreportsListdisbursementsCall) doRequest(alt string) (*http.Response, error) {
28665	reqHeaders := make(http.Header)
28666	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
28667	for k, v := range c.header_ {
28668		reqHeaders[k] = v
28669	}
28670	reqHeaders.Set("User-Agent", c.s.userAgent())
28671	if c.ifNoneMatch_ != "" {
28672		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
28673	}
28674	var body io.Reader = nil
28675	c.urlParams_.Set("alt", alt)
28676	c.urlParams_.Set("prettyPrint", "false")
28677	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreports/disbursements")
28678	urls += "?" + c.urlParams_.Encode()
28679	req, err := http.NewRequest("GET", urls, body)
28680	if err != nil {
28681		return nil, err
28682	}
28683	req.Header = reqHeaders
28684	googleapi.Expand(req.URL, map[string]string{
28685		"merchantId": strconv.FormatUint(c.merchantId, 10),
28686	})
28687	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28688}
28689
28690// Do executes the "content.orderreports.listdisbursements" call.
28691// Exactly one of *OrderreportsListDisbursementsResponse or error will
28692// be non-nil. Any non-2xx status code is an error. Response headers are
28693// in either
28694// *OrderreportsListDisbursementsResponse.ServerResponse.Header or (if a
28695// response was returned at all) in error.(*googleapi.Error).Header. Use
28696// googleapi.IsNotModified to check whether the returned error was
28697// because http.StatusNotModified was returned.
28698func (c *OrderreportsListdisbursementsCall) Do(opts ...googleapi.CallOption) (*OrderreportsListDisbursementsResponse, error) {
28699	gensupport.SetOptions(c.urlParams_, opts...)
28700	res, err := c.doRequest("json")
28701	if res != nil && res.StatusCode == http.StatusNotModified {
28702		if res.Body != nil {
28703			res.Body.Close()
28704		}
28705		return nil, &googleapi.Error{
28706			Code:   res.StatusCode,
28707			Header: res.Header,
28708		}
28709	}
28710	if err != nil {
28711		return nil, err
28712	}
28713	defer googleapi.CloseBody(res)
28714	if err := googleapi.CheckResponse(res); err != nil {
28715		return nil, err
28716	}
28717	ret := &OrderreportsListDisbursementsResponse{
28718		ServerResponse: googleapi.ServerResponse{
28719			Header:         res.Header,
28720			HTTPStatusCode: res.StatusCode,
28721		},
28722	}
28723	target := &ret
28724	if err := gensupport.DecodeResponse(target, res); err != nil {
28725		return nil, err
28726	}
28727	return ret, nil
28728	// {
28729	//   "description": "Retrieves a report for disbursements from your Merchant Center account.",
28730	//   "flatPath": "{merchantId}/orderreports/disbursements",
28731	//   "httpMethod": "GET",
28732	//   "id": "content.orderreports.listdisbursements",
28733	//   "parameterOrder": [
28734	//     "merchantId"
28735	//   ],
28736	//   "parameters": {
28737	//     "disbursementEndDate": {
28738	//       "description": "The last date which disbursements occurred. In ISO 8601 format. Default: current date.",
28739	//       "location": "query",
28740	//       "type": "string"
28741	//     },
28742	//     "disbursementStartDate": {
28743	//       "description": "The first date which disbursements occurred. In ISO 8601 format.",
28744	//       "location": "query",
28745	//       "type": "string"
28746	//     },
28747	//     "maxResults": {
28748	//       "description": "The maximum number of disbursements to return in the response, used for paging.",
28749	//       "format": "uint32",
28750	//       "location": "query",
28751	//       "type": "integer"
28752	//     },
28753	//     "merchantId": {
28754	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
28755	//       "format": "uint64",
28756	//       "location": "path",
28757	//       "required": true,
28758	//       "type": "string"
28759	//     },
28760	//     "pageToken": {
28761	//       "description": "The token returned by the previous request.",
28762	//       "location": "query",
28763	//       "type": "string"
28764	//     }
28765	//   },
28766	//   "path": "{merchantId}/orderreports/disbursements",
28767	//   "response": {
28768	//     "$ref": "OrderreportsListDisbursementsResponse"
28769	//   },
28770	//   "scopes": [
28771	//     "https://www.googleapis.com/auth/content"
28772	//   ]
28773	// }
28774
28775}
28776
28777// Pages invokes f for each page of results.
28778// A non-nil error returned from f will halt the iteration.
28779// The provided context supersedes any context provided to the Context method.
28780func (c *OrderreportsListdisbursementsCall) Pages(ctx context.Context, f func(*OrderreportsListDisbursementsResponse) error) error {
28781	c.ctx_ = ctx
28782	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
28783	for {
28784		x, err := c.Do()
28785		if err != nil {
28786			return err
28787		}
28788		if err := f(x); err != nil {
28789			return err
28790		}
28791		if x.NextPageToken == "" {
28792			return nil
28793		}
28794		c.PageToken(x.NextPageToken)
28795	}
28796}
28797
28798// method id "content.orderreports.listtransactions":
28799
28800type OrderreportsListtransactionsCall struct {
28801	s              *APIService
28802	merchantId     uint64
28803	disbursementId string
28804	urlParams_     gensupport.URLParams
28805	ifNoneMatch_   string
28806	ctx_           context.Context
28807	header_        http.Header
28808}
28809
28810// Listtransactions: Retrieves a list of transactions for a disbursement
28811// from your Merchant Center account.
28812//
28813// - disbursementId: The Google-provided ID of the disbursement (found
28814//   in Wallet).
28815// - merchantId: The ID of the account that manages the order. This
28816//   cannot be a multi-client account.
28817func (r *OrderreportsService) Listtransactions(merchantId uint64, disbursementId string) *OrderreportsListtransactionsCall {
28818	c := &OrderreportsListtransactionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28819	c.merchantId = merchantId
28820	c.disbursementId = disbursementId
28821	return c
28822}
28823
28824// MaxResults sets the optional parameter "maxResults": The maximum
28825// number of disbursements to return in the response, used for paging.
28826func (c *OrderreportsListtransactionsCall) MaxResults(maxResults int64) *OrderreportsListtransactionsCall {
28827	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
28828	return c
28829}
28830
28831// PageToken sets the optional parameter "pageToken": The token returned
28832// by the previous request.
28833func (c *OrderreportsListtransactionsCall) PageToken(pageToken string) *OrderreportsListtransactionsCall {
28834	c.urlParams_.Set("pageToken", pageToken)
28835	return c
28836}
28837
28838// TransactionEndDate sets the optional parameter "transactionEndDate":
28839// The last date in which transaction occurred. In ISO 8601 format.
28840// Default: current date.
28841func (c *OrderreportsListtransactionsCall) TransactionEndDate(transactionEndDate string) *OrderreportsListtransactionsCall {
28842	c.urlParams_.Set("transactionEndDate", transactionEndDate)
28843	return c
28844}
28845
28846// TransactionStartDate sets the optional parameter
28847// "transactionStartDate": The first date in which transaction occurred.
28848// In ISO 8601 format.
28849func (c *OrderreportsListtransactionsCall) TransactionStartDate(transactionStartDate string) *OrderreportsListtransactionsCall {
28850	c.urlParams_.Set("transactionStartDate", transactionStartDate)
28851	return c
28852}
28853
28854// Fields allows partial responses to be retrieved. See
28855// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28856// for more information.
28857func (c *OrderreportsListtransactionsCall) Fields(s ...googleapi.Field) *OrderreportsListtransactionsCall {
28858	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28859	return c
28860}
28861
28862// IfNoneMatch sets the optional parameter which makes the operation
28863// fail if the object's ETag matches the given value. This is useful for
28864// getting updates only after the object has changed since the last
28865// request. Use googleapi.IsNotModified to check whether the response
28866// error from Do is the result of In-None-Match.
28867func (c *OrderreportsListtransactionsCall) IfNoneMatch(entityTag string) *OrderreportsListtransactionsCall {
28868	c.ifNoneMatch_ = entityTag
28869	return c
28870}
28871
28872// Context sets the context to be used in this call's Do method. Any
28873// pending HTTP request will be aborted if the provided context is
28874// canceled.
28875func (c *OrderreportsListtransactionsCall) Context(ctx context.Context) *OrderreportsListtransactionsCall {
28876	c.ctx_ = ctx
28877	return c
28878}
28879
28880// Header returns an http.Header that can be modified by the caller to
28881// add HTTP headers to the request.
28882func (c *OrderreportsListtransactionsCall) Header() http.Header {
28883	if c.header_ == nil {
28884		c.header_ = make(http.Header)
28885	}
28886	return c.header_
28887}
28888
28889func (c *OrderreportsListtransactionsCall) doRequest(alt string) (*http.Response, error) {
28890	reqHeaders := make(http.Header)
28891	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
28892	for k, v := range c.header_ {
28893		reqHeaders[k] = v
28894	}
28895	reqHeaders.Set("User-Agent", c.s.userAgent())
28896	if c.ifNoneMatch_ != "" {
28897		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
28898	}
28899	var body io.Reader = nil
28900	c.urlParams_.Set("alt", alt)
28901	c.urlParams_.Set("prettyPrint", "false")
28902	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreports/disbursements/{disbursementId}/transactions")
28903	urls += "?" + c.urlParams_.Encode()
28904	req, err := http.NewRequest("GET", urls, body)
28905	if err != nil {
28906		return nil, err
28907	}
28908	req.Header = reqHeaders
28909	googleapi.Expand(req.URL, map[string]string{
28910		"merchantId":     strconv.FormatUint(c.merchantId, 10),
28911		"disbursementId": c.disbursementId,
28912	})
28913	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28914}
28915
28916// Do executes the "content.orderreports.listtransactions" call.
28917// Exactly one of *OrderreportsListTransactionsResponse or error will be
28918// non-nil. Any non-2xx status code is an error. Response headers are in
28919// either *OrderreportsListTransactionsResponse.ServerResponse.Header or
28920// (if a response was returned at all) in
28921// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
28922// whether the returned error was because http.StatusNotModified was
28923// returned.
28924func (c *OrderreportsListtransactionsCall) Do(opts ...googleapi.CallOption) (*OrderreportsListTransactionsResponse, error) {
28925	gensupport.SetOptions(c.urlParams_, opts...)
28926	res, err := c.doRequest("json")
28927	if res != nil && res.StatusCode == http.StatusNotModified {
28928		if res.Body != nil {
28929			res.Body.Close()
28930		}
28931		return nil, &googleapi.Error{
28932			Code:   res.StatusCode,
28933			Header: res.Header,
28934		}
28935	}
28936	if err != nil {
28937		return nil, err
28938	}
28939	defer googleapi.CloseBody(res)
28940	if err := googleapi.CheckResponse(res); err != nil {
28941		return nil, err
28942	}
28943	ret := &OrderreportsListTransactionsResponse{
28944		ServerResponse: googleapi.ServerResponse{
28945			Header:         res.Header,
28946			HTTPStatusCode: res.StatusCode,
28947		},
28948	}
28949	target := &ret
28950	if err := gensupport.DecodeResponse(target, res); err != nil {
28951		return nil, err
28952	}
28953	return ret, nil
28954	// {
28955	//   "description": "Retrieves a list of transactions for a disbursement from your Merchant Center account.",
28956	//   "flatPath": "{merchantId}/orderreports/disbursements/{disbursementId}/transactions",
28957	//   "httpMethod": "GET",
28958	//   "id": "content.orderreports.listtransactions",
28959	//   "parameterOrder": [
28960	//     "merchantId",
28961	//     "disbursementId"
28962	//   ],
28963	//   "parameters": {
28964	//     "disbursementId": {
28965	//       "description": "The Google-provided ID of the disbursement (found in Wallet).",
28966	//       "location": "path",
28967	//       "required": true,
28968	//       "type": "string"
28969	//     },
28970	//     "maxResults": {
28971	//       "description": "The maximum number of disbursements to return in the response, used for paging.",
28972	//       "format": "uint32",
28973	//       "location": "query",
28974	//       "type": "integer"
28975	//     },
28976	//     "merchantId": {
28977	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
28978	//       "format": "uint64",
28979	//       "location": "path",
28980	//       "required": true,
28981	//       "type": "string"
28982	//     },
28983	//     "pageToken": {
28984	//       "description": "The token returned by the previous request.",
28985	//       "location": "query",
28986	//       "type": "string"
28987	//     },
28988	//     "transactionEndDate": {
28989	//       "description": "The last date in which transaction occurred. In ISO 8601 format. Default: current date.",
28990	//       "location": "query",
28991	//       "type": "string"
28992	//     },
28993	//     "transactionStartDate": {
28994	//       "description": "The first date in which transaction occurred. In ISO 8601 format.",
28995	//       "location": "query",
28996	//       "type": "string"
28997	//     }
28998	//   },
28999	//   "path": "{merchantId}/orderreports/disbursements/{disbursementId}/transactions",
29000	//   "response": {
29001	//     "$ref": "OrderreportsListTransactionsResponse"
29002	//   },
29003	//   "scopes": [
29004	//     "https://www.googleapis.com/auth/content"
29005	//   ]
29006	// }
29007
29008}
29009
29010// Pages invokes f for each page of results.
29011// A non-nil error returned from f will halt the iteration.
29012// The provided context supersedes any context provided to the Context method.
29013func (c *OrderreportsListtransactionsCall) Pages(ctx context.Context, f func(*OrderreportsListTransactionsResponse) error) error {
29014	c.ctx_ = ctx
29015	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
29016	for {
29017		x, err := c.Do()
29018		if err != nil {
29019			return err
29020		}
29021		if err := f(x); err != nil {
29022			return err
29023		}
29024		if x.NextPageToken == "" {
29025			return nil
29026		}
29027		c.PageToken(x.NextPageToken)
29028	}
29029}
29030
29031// method id "content.orderreturns.acknowledge":
29032
29033type OrderreturnsAcknowledgeCall struct {
29034	s                              *APIService
29035	merchantId                     uint64
29036	returnId                       string
29037	orderreturnsacknowledgerequest *OrderreturnsAcknowledgeRequest
29038	urlParams_                     gensupport.URLParams
29039	ctx_                           context.Context
29040	header_                        http.Header
29041}
29042
29043// Acknowledge: Acks an order return in your Merchant Center account.
29044//
29045// - merchantId: The ID of the account that manages the order. This
29046//   cannot be a multi-client account.
29047// - returnId: The ID of the return.
29048func (r *OrderreturnsService) Acknowledge(merchantId uint64, returnId string, orderreturnsacknowledgerequest *OrderreturnsAcknowledgeRequest) *OrderreturnsAcknowledgeCall {
29049	c := &OrderreturnsAcknowledgeCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29050	c.merchantId = merchantId
29051	c.returnId = returnId
29052	c.orderreturnsacknowledgerequest = orderreturnsacknowledgerequest
29053	return c
29054}
29055
29056// Fields allows partial responses to be retrieved. See
29057// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29058// for more information.
29059func (c *OrderreturnsAcknowledgeCall) Fields(s ...googleapi.Field) *OrderreturnsAcknowledgeCall {
29060	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29061	return c
29062}
29063
29064// Context sets the context to be used in this call's Do method. Any
29065// pending HTTP request will be aborted if the provided context is
29066// canceled.
29067func (c *OrderreturnsAcknowledgeCall) Context(ctx context.Context) *OrderreturnsAcknowledgeCall {
29068	c.ctx_ = ctx
29069	return c
29070}
29071
29072// Header returns an http.Header that can be modified by the caller to
29073// add HTTP headers to the request.
29074func (c *OrderreturnsAcknowledgeCall) Header() http.Header {
29075	if c.header_ == nil {
29076		c.header_ = make(http.Header)
29077	}
29078	return c.header_
29079}
29080
29081func (c *OrderreturnsAcknowledgeCall) doRequest(alt string) (*http.Response, error) {
29082	reqHeaders := make(http.Header)
29083	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
29084	for k, v := range c.header_ {
29085		reqHeaders[k] = v
29086	}
29087	reqHeaders.Set("User-Agent", c.s.userAgent())
29088	var body io.Reader = nil
29089	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderreturnsacknowledgerequest)
29090	if err != nil {
29091		return nil, err
29092	}
29093	reqHeaders.Set("Content-Type", "application/json")
29094	c.urlParams_.Set("alt", alt)
29095	c.urlParams_.Set("prettyPrint", "false")
29096	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreturns/{returnId}/acknowledge")
29097	urls += "?" + c.urlParams_.Encode()
29098	req, err := http.NewRequest("POST", urls, body)
29099	if err != nil {
29100		return nil, err
29101	}
29102	req.Header = reqHeaders
29103	googleapi.Expand(req.URL, map[string]string{
29104		"merchantId": strconv.FormatUint(c.merchantId, 10),
29105		"returnId":   c.returnId,
29106	})
29107	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29108}
29109
29110// Do executes the "content.orderreturns.acknowledge" call.
29111// Exactly one of *OrderreturnsAcknowledgeResponse or error will be
29112// non-nil. Any non-2xx status code is an error. Response headers are in
29113// either *OrderreturnsAcknowledgeResponse.ServerResponse.Header or (if
29114// a response was returned at all) in error.(*googleapi.Error).Header.
29115// Use googleapi.IsNotModified to check whether the returned error was
29116// because http.StatusNotModified was returned.
29117func (c *OrderreturnsAcknowledgeCall) Do(opts ...googleapi.CallOption) (*OrderreturnsAcknowledgeResponse, error) {
29118	gensupport.SetOptions(c.urlParams_, opts...)
29119	res, err := c.doRequest("json")
29120	if res != nil && res.StatusCode == http.StatusNotModified {
29121		if res.Body != nil {
29122			res.Body.Close()
29123		}
29124		return nil, &googleapi.Error{
29125			Code:   res.StatusCode,
29126			Header: res.Header,
29127		}
29128	}
29129	if err != nil {
29130		return nil, err
29131	}
29132	defer googleapi.CloseBody(res)
29133	if err := googleapi.CheckResponse(res); err != nil {
29134		return nil, err
29135	}
29136	ret := &OrderreturnsAcknowledgeResponse{
29137		ServerResponse: googleapi.ServerResponse{
29138			Header:         res.Header,
29139			HTTPStatusCode: res.StatusCode,
29140		},
29141	}
29142	target := &ret
29143	if err := gensupport.DecodeResponse(target, res); err != nil {
29144		return nil, err
29145	}
29146	return ret, nil
29147	// {
29148	//   "description": "Acks an order return in your Merchant Center account.",
29149	//   "flatPath": "{merchantId}/orderreturns/{returnId}/acknowledge",
29150	//   "httpMethod": "POST",
29151	//   "id": "content.orderreturns.acknowledge",
29152	//   "parameterOrder": [
29153	//     "merchantId",
29154	//     "returnId"
29155	//   ],
29156	//   "parameters": {
29157	//     "merchantId": {
29158	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
29159	//       "format": "uint64",
29160	//       "location": "path",
29161	//       "required": true,
29162	//       "type": "string"
29163	//     },
29164	//     "returnId": {
29165	//       "description": "The ID of the return.",
29166	//       "location": "path",
29167	//       "required": true,
29168	//       "type": "string"
29169	//     }
29170	//   },
29171	//   "path": "{merchantId}/orderreturns/{returnId}/acknowledge",
29172	//   "request": {
29173	//     "$ref": "OrderreturnsAcknowledgeRequest"
29174	//   },
29175	//   "response": {
29176	//     "$ref": "OrderreturnsAcknowledgeResponse"
29177	//   },
29178	//   "scopes": [
29179	//     "https://www.googleapis.com/auth/content"
29180	//   ]
29181	// }
29182
29183}
29184
29185// method id "content.orderreturns.createorderreturn":
29186
29187type OrderreturnsCreateorderreturnCall struct {
29188	s                                    *APIService
29189	merchantId                           uint64
29190	orderreturnscreateorderreturnrequest *OrderreturnsCreateOrderReturnRequest
29191	urlParams_                           gensupport.URLParams
29192	ctx_                                 context.Context
29193	header_                              http.Header
29194}
29195
29196// Createorderreturn: Create return in your Merchant Center account.
29197//
29198// - merchantId: The ID of the account that manages the order. This
29199//   cannot be a multi-client account.
29200func (r *OrderreturnsService) Createorderreturn(merchantId uint64, orderreturnscreateorderreturnrequest *OrderreturnsCreateOrderReturnRequest) *OrderreturnsCreateorderreturnCall {
29201	c := &OrderreturnsCreateorderreturnCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29202	c.merchantId = merchantId
29203	c.orderreturnscreateorderreturnrequest = orderreturnscreateorderreturnrequest
29204	return c
29205}
29206
29207// Fields allows partial responses to be retrieved. See
29208// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29209// for more information.
29210func (c *OrderreturnsCreateorderreturnCall) Fields(s ...googleapi.Field) *OrderreturnsCreateorderreturnCall {
29211	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29212	return c
29213}
29214
29215// Context sets the context to be used in this call's Do method. Any
29216// pending HTTP request will be aborted if the provided context is
29217// canceled.
29218func (c *OrderreturnsCreateorderreturnCall) Context(ctx context.Context) *OrderreturnsCreateorderreturnCall {
29219	c.ctx_ = ctx
29220	return c
29221}
29222
29223// Header returns an http.Header that can be modified by the caller to
29224// add HTTP headers to the request.
29225func (c *OrderreturnsCreateorderreturnCall) Header() http.Header {
29226	if c.header_ == nil {
29227		c.header_ = make(http.Header)
29228	}
29229	return c.header_
29230}
29231
29232func (c *OrderreturnsCreateorderreturnCall) doRequest(alt string) (*http.Response, error) {
29233	reqHeaders := make(http.Header)
29234	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
29235	for k, v := range c.header_ {
29236		reqHeaders[k] = v
29237	}
29238	reqHeaders.Set("User-Agent", c.s.userAgent())
29239	var body io.Reader = nil
29240	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderreturnscreateorderreturnrequest)
29241	if err != nil {
29242		return nil, err
29243	}
29244	reqHeaders.Set("Content-Type", "application/json")
29245	c.urlParams_.Set("alt", alt)
29246	c.urlParams_.Set("prettyPrint", "false")
29247	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreturns/createOrderReturn")
29248	urls += "?" + c.urlParams_.Encode()
29249	req, err := http.NewRequest("POST", urls, body)
29250	if err != nil {
29251		return nil, err
29252	}
29253	req.Header = reqHeaders
29254	googleapi.Expand(req.URL, map[string]string{
29255		"merchantId": strconv.FormatUint(c.merchantId, 10),
29256	})
29257	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29258}
29259
29260// Do executes the "content.orderreturns.createorderreturn" call.
29261// Exactly one of *OrderreturnsCreateOrderReturnResponse or error will
29262// be non-nil. Any non-2xx status code is an error. Response headers are
29263// in either
29264// *OrderreturnsCreateOrderReturnResponse.ServerResponse.Header or (if a
29265// response was returned at all) in error.(*googleapi.Error).Header. Use
29266// googleapi.IsNotModified to check whether the returned error was
29267// because http.StatusNotModified was returned.
29268func (c *OrderreturnsCreateorderreturnCall) Do(opts ...googleapi.CallOption) (*OrderreturnsCreateOrderReturnResponse, error) {
29269	gensupport.SetOptions(c.urlParams_, opts...)
29270	res, err := c.doRequest("json")
29271	if res != nil && res.StatusCode == http.StatusNotModified {
29272		if res.Body != nil {
29273			res.Body.Close()
29274		}
29275		return nil, &googleapi.Error{
29276			Code:   res.StatusCode,
29277			Header: res.Header,
29278		}
29279	}
29280	if err != nil {
29281		return nil, err
29282	}
29283	defer googleapi.CloseBody(res)
29284	if err := googleapi.CheckResponse(res); err != nil {
29285		return nil, err
29286	}
29287	ret := &OrderreturnsCreateOrderReturnResponse{
29288		ServerResponse: googleapi.ServerResponse{
29289			Header:         res.Header,
29290			HTTPStatusCode: res.StatusCode,
29291		},
29292	}
29293	target := &ret
29294	if err := gensupport.DecodeResponse(target, res); err != nil {
29295		return nil, err
29296	}
29297	return ret, nil
29298	// {
29299	//   "description": "Create return in your Merchant Center account.",
29300	//   "flatPath": "{merchantId}/orderreturns/createOrderReturn",
29301	//   "httpMethod": "POST",
29302	//   "id": "content.orderreturns.createorderreturn",
29303	//   "parameterOrder": [
29304	//     "merchantId"
29305	//   ],
29306	//   "parameters": {
29307	//     "merchantId": {
29308	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
29309	//       "format": "uint64",
29310	//       "location": "path",
29311	//       "required": true,
29312	//       "type": "string"
29313	//     }
29314	//   },
29315	//   "path": "{merchantId}/orderreturns/createOrderReturn",
29316	//   "request": {
29317	//     "$ref": "OrderreturnsCreateOrderReturnRequest"
29318	//   },
29319	//   "response": {
29320	//     "$ref": "OrderreturnsCreateOrderReturnResponse"
29321	//   },
29322	//   "scopes": [
29323	//     "https://www.googleapis.com/auth/content"
29324	//   ]
29325	// }
29326
29327}
29328
29329// method id "content.orderreturns.get":
29330
29331type OrderreturnsGetCall struct {
29332	s            *APIService
29333	merchantId   uint64
29334	returnId     string
29335	urlParams_   gensupport.URLParams
29336	ifNoneMatch_ string
29337	ctx_         context.Context
29338	header_      http.Header
29339}
29340
29341// Get: Retrieves an order return from your Merchant Center account.
29342//
29343// - merchantId: The ID of the account that manages the order. This
29344//   cannot be a multi-client account.
29345// - returnId: Merchant order return ID generated by Google.
29346func (r *OrderreturnsService) Get(merchantId uint64, returnId string) *OrderreturnsGetCall {
29347	c := &OrderreturnsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29348	c.merchantId = merchantId
29349	c.returnId = returnId
29350	return c
29351}
29352
29353// Fields allows partial responses to be retrieved. See
29354// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29355// for more information.
29356func (c *OrderreturnsGetCall) Fields(s ...googleapi.Field) *OrderreturnsGetCall {
29357	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29358	return c
29359}
29360
29361// IfNoneMatch sets the optional parameter which makes the operation
29362// fail if the object's ETag matches the given value. This is useful for
29363// getting updates only after the object has changed since the last
29364// request. Use googleapi.IsNotModified to check whether the response
29365// error from Do is the result of In-None-Match.
29366func (c *OrderreturnsGetCall) IfNoneMatch(entityTag string) *OrderreturnsGetCall {
29367	c.ifNoneMatch_ = entityTag
29368	return c
29369}
29370
29371// Context sets the context to be used in this call's Do method. Any
29372// pending HTTP request will be aborted if the provided context is
29373// canceled.
29374func (c *OrderreturnsGetCall) Context(ctx context.Context) *OrderreturnsGetCall {
29375	c.ctx_ = ctx
29376	return c
29377}
29378
29379// Header returns an http.Header that can be modified by the caller to
29380// add HTTP headers to the request.
29381func (c *OrderreturnsGetCall) Header() http.Header {
29382	if c.header_ == nil {
29383		c.header_ = make(http.Header)
29384	}
29385	return c.header_
29386}
29387
29388func (c *OrderreturnsGetCall) doRequest(alt string) (*http.Response, error) {
29389	reqHeaders := make(http.Header)
29390	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
29391	for k, v := range c.header_ {
29392		reqHeaders[k] = v
29393	}
29394	reqHeaders.Set("User-Agent", c.s.userAgent())
29395	if c.ifNoneMatch_ != "" {
29396		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
29397	}
29398	var body io.Reader = nil
29399	c.urlParams_.Set("alt", alt)
29400	c.urlParams_.Set("prettyPrint", "false")
29401	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreturns/{returnId}")
29402	urls += "?" + c.urlParams_.Encode()
29403	req, err := http.NewRequest("GET", urls, body)
29404	if err != nil {
29405		return nil, err
29406	}
29407	req.Header = reqHeaders
29408	googleapi.Expand(req.URL, map[string]string{
29409		"merchantId": strconv.FormatUint(c.merchantId, 10),
29410		"returnId":   c.returnId,
29411	})
29412	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29413}
29414
29415// Do executes the "content.orderreturns.get" call.
29416// Exactly one of *MerchantOrderReturn or error will be non-nil. Any
29417// non-2xx status code is an error. Response headers are in either
29418// *MerchantOrderReturn.ServerResponse.Header or (if a response was
29419// returned at all) in error.(*googleapi.Error).Header. Use
29420// googleapi.IsNotModified to check whether the returned error was
29421// because http.StatusNotModified was returned.
29422func (c *OrderreturnsGetCall) Do(opts ...googleapi.CallOption) (*MerchantOrderReturn, error) {
29423	gensupport.SetOptions(c.urlParams_, opts...)
29424	res, err := c.doRequest("json")
29425	if res != nil && res.StatusCode == http.StatusNotModified {
29426		if res.Body != nil {
29427			res.Body.Close()
29428		}
29429		return nil, &googleapi.Error{
29430			Code:   res.StatusCode,
29431			Header: res.Header,
29432		}
29433	}
29434	if err != nil {
29435		return nil, err
29436	}
29437	defer googleapi.CloseBody(res)
29438	if err := googleapi.CheckResponse(res); err != nil {
29439		return nil, err
29440	}
29441	ret := &MerchantOrderReturn{
29442		ServerResponse: googleapi.ServerResponse{
29443			Header:         res.Header,
29444			HTTPStatusCode: res.StatusCode,
29445		},
29446	}
29447	target := &ret
29448	if err := gensupport.DecodeResponse(target, res); err != nil {
29449		return nil, err
29450	}
29451	return ret, nil
29452	// {
29453	//   "description": "Retrieves an order return from your Merchant Center account.",
29454	//   "flatPath": "{merchantId}/orderreturns/{returnId}",
29455	//   "httpMethod": "GET",
29456	//   "id": "content.orderreturns.get",
29457	//   "parameterOrder": [
29458	//     "merchantId",
29459	//     "returnId"
29460	//   ],
29461	//   "parameters": {
29462	//     "merchantId": {
29463	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
29464	//       "format": "uint64",
29465	//       "location": "path",
29466	//       "required": true,
29467	//       "type": "string"
29468	//     },
29469	//     "returnId": {
29470	//       "description": "Merchant order return ID generated by Google.",
29471	//       "location": "path",
29472	//       "required": true,
29473	//       "type": "string"
29474	//     }
29475	//   },
29476	//   "path": "{merchantId}/orderreturns/{returnId}",
29477	//   "response": {
29478	//     "$ref": "MerchantOrderReturn"
29479	//   },
29480	//   "scopes": [
29481	//     "https://www.googleapis.com/auth/content"
29482	//   ]
29483	// }
29484
29485}
29486
29487// method id "content.orderreturns.list":
29488
29489type OrderreturnsListCall struct {
29490	s            *APIService
29491	merchantId   uint64
29492	urlParams_   gensupport.URLParams
29493	ifNoneMatch_ string
29494	ctx_         context.Context
29495	header_      http.Header
29496}
29497
29498// List: Lists order returns in your Merchant Center account.
29499//
29500// - merchantId: The ID of the account that manages the order. This
29501//   cannot be a multi-client account.
29502func (r *OrderreturnsService) List(merchantId uint64) *OrderreturnsListCall {
29503	c := &OrderreturnsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29504	c.merchantId = merchantId
29505	return c
29506}
29507
29508// Acknowledged sets the optional parameter "acknowledged": Obtains
29509// order returns that match the acknowledgement status. When set to
29510// true, obtains order returns that have been acknowledged. When false,
29511// obtains order returns that have not been acknowledged. When not
29512// provided, obtains order returns regardless of their acknowledgement
29513// status. We recommend using this filter set to `false`, in conjunction
29514// with the `acknowledge` call, such that only un-acknowledged order
29515// returns are returned.
29516func (c *OrderreturnsListCall) Acknowledged(acknowledged bool) *OrderreturnsListCall {
29517	c.urlParams_.Set("acknowledged", fmt.Sprint(acknowledged))
29518	return c
29519}
29520
29521// CreatedEndDate sets the optional parameter "createdEndDate": Obtains
29522// order returns created before this date (inclusively), in ISO 8601
29523// format.
29524func (c *OrderreturnsListCall) CreatedEndDate(createdEndDate string) *OrderreturnsListCall {
29525	c.urlParams_.Set("createdEndDate", createdEndDate)
29526	return c
29527}
29528
29529// CreatedStartDate sets the optional parameter "createdStartDate":
29530// Obtains order returns created after this date (inclusively), in ISO
29531// 8601 format.
29532func (c *OrderreturnsListCall) CreatedStartDate(createdStartDate string) *OrderreturnsListCall {
29533	c.urlParams_.Set("createdStartDate", createdStartDate)
29534	return c
29535}
29536
29537// GoogleOrderIds sets the optional parameter "googleOrderIds": Obtains
29538// order returns with the specified order ids. If this parameter is
29539// provided, createdStartDate, createdEndDate, shipmentType,
29540// shipmentStatus, shipmentState and acknowledged parameters must be not
29541// set. Note: if googleOrderId and shipmentTrackingNumber parameters are
29542// provided, the obtained results will include all order returns that
29543// either match the specified order id or the specified tracking number.
29544func (c *OrderreturnsListCall) GoogleOrderIds(googleOrderIds ...string) *OrderreturnsListCall {
29545	c.urlParams_.SetMulti("googleOrderIds", append([]string{}, googleOrderIds...))
29546	return c
29547}
29548
29549// MaxResults sets the optional parameter "maxResults": The maximum
29550// number of order returns to return in the response, used for paging.
29551// The default value is 25 returns per page, and the maximum allowed
29552// value is 250 returns per page.
29553func (c *OrderreturnsListCall) MaxResults(maxResults int64) *OrderreturnsListCall {
29554	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
29555	return c
29556}
29557
29558// OrderBy sets the optional parameter "orderBy": Return the results in
29559// the specified order.
29560//
29561// Possible values:
29562//   "RETURN_CREATION_TIME_DESC" - Return results in descending order.
29563//   "RETURN_CREATION_TIME_ASC" - Return results in ascending order.
29564func (c *OrderreturnsListCall) OrderBy(orderBy string) *OrderreturnsListCall {
29565	c.urlParams_.Set("orderBy", orderBy)
29566	return c
29567}
29568
29569// PageToken sets the optional parameter "pageToken": The token returned
29570// by the previous request.
29571func (c *OrderreturnsListCall) PageToken(pageToken string) *OrderreturnsListCall {
29572	c.urlParams_.Set("pageToken", pageToken)
29573	return c
29574}
29575
29576// ShipmentStates sets the optional parameter "shipmentStates": Obtains
29577// order returns that match any shipment state provided in this
29578// parameter. When this parameter is not provided, order returns are
29579// obtained regardless of their shipment states.
29580//
29581// Possible values:
29582//   "NEW" - Return shipments with `new` state only.
29583//   "SHIPPED" - Return shipments with `shipped` state only.
29584//   "COMPLETED" - Return shipments with `completed` state only.
29585//   "UNDELIVERABLE" - Return shipments with `undeliverable` state only.
29586//   "PENDING" - Return shipments with `pending` state only.
29587func (c *OrderreturnsListCall) ShipmentStates(shipmentStates ...string) *OrderreturnsListCall {
29588	c.urlParams_.SetMulti("shipmentStates", append([]string{}, shipmentStates...))
29589	return c
29590}
29591
29592// ShipmentStatus sets the optional parameter "shipmentStatus": Obtains
29593// order returns that match any shipment status provided in this
29594// parameter. When this parameter is not provided, order returns are
29595// obtained regardless of their shipment statuses.
29596//
29597// Possible values:
29598//   "NEW" - Return shipments with `new` status only.
29599//   "IN_PROGRESS" - Return shipments with `inProgress` status only.
29600//   "PROCESSED" - Return shipments with `processed` status only.
29601func (c *OrderreturnsListCall) ShipmentStatus(shipmentStatus ...string) *OrderreturnsListCall {
29602	c.urlParams_.SetMulti("shipmentStatus", append([]string{}, shipmentStatus...))
29603	return c
29604}
29605
29606// ShipmentTrackingNumbers sets the optional parameter
29607// "shipmentTrackingNumbers": Obtains order returns with the specified
29608// tracking numbers. If this parameter is provided, createdStartDate,
29609// createdEndDate, shipmentType, shipmentStatus, shipmentState and
29610// acknowledged parameters must be not set. Note: if googleOrderId and
29611// shipmentTrackingNumber parameters are provided, the obtained results
29612// will include all order returns that either match the specified order
29613// id or the specified tracking number.
29614func (c *OrderreturnsListCall) ShipmentTrackingNumbers(shipmentTrackingNumbers ...string) *OrderreturnsListCall {
29615	c.urlParams_.SetMulti("shipmentTrackingNumbers", append([]string{}, shipmentTrackingNumbers...))
29616	return c
29617}
29618
29619// ShipmentTypes sets the optional parameter "shipmentTypes": Obtains
29620// order returns that match any shipment type provided in this
29621// parameter. When this parameter is not provided, order returns are
29622// obtained regardless of their shipment types.
29623//
29624// Possible values:
29625//   "BY_MAIL" - Return shipments with type `byMail` only.
29626//   "RETURNLESS" - Return shipments with type `returnless` only.
29627//   "CONTACT_CUSTOMER_SUPPORT" - Return shipments with type
29628// `contactCustomerSupport` only.
29629func (c *OrderreturnsListCall) ShipmentTypes(shipmentTypes ...string) *OrderreturnsListCall {
29630	c.urlParams_.SetMulti("shipmentTypes", append([]string{}, shipmentTypes...))
29631	return c
29632}
29633
29634// Fields allows partial responses to be retrieved. See
29635// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29636// for more information.
29637func (c *OrderreturnsListCall) Fields(s ...googleapi.Field) *OrderreturnsListCall {
29638	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29639	return c
29640}
29641
29642// IfNoneMatch sets the optional parameter which makes the operation
29643// fail if the object's ETag matches the given value. This is useful for
29644// getting updates only after the object has changed since the last
29645// request. Use googleapi.IsNotModified to check whether the response
29646// error from Do is the result of In-None-Match.
29647func (c *OrderreturnsListCall) IfNoneMatch(entityTag string) *OrderreturnsListCall {
29648	c.ifNoneMatch_ = entityTag
29649	return c
29650}
29651
29652// Context sets the context to be used in this call's Do method. Any
29653// pending HTTP request will be aborted if the provided context is
29654// canceled.
29655func (c *OrderreturnsListCall) Context(ctx context.Context) *OrderreturnsListCall {
29656	c.ctx_ = ctx
29657	return c
29658}
29659
29660// Header returns an http.Header that can be modified by the caller to
29661// add HTTP headers to the request.
29662func (c *OrderreturnsListCall) Header() http.Header {
29663	if c.header_ == nil {
29664		c.header_ = make(http.Header)
29665	}
29666	return c.header_
29667}
29668
29669func (c *OrderreturnsListCall) doRequest(alt string) (*http.Response, error) {
29670	reqHeaders := make(http.Header)
29671	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
29672	for k, v := range c.header_ {
29673		reqHeaders[k] = v
29674	}
29675	reqHeaders.Set("User-Agent", c.s.userAgent())
29676	if c.ifNoneMatch_ != "" {
29677		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
29678	}
29679	var body io.Reader = nil
29680	c.urlParams_.Set("alt", alt)
29681	c.urlParams_.Set("prettyPrint", "false")
29682	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreturns")
29683	urls += "?" + c.urlParams_.Encode()
29684	req, err := http.NewRequest("GET", urls, body)
29685	if err != nil {
29686		return nil, err
29687	}
29688	req.Header = reqHeaders
29689	googleapi.Expand(req.URL, map[string]string{
29690		"merchantId": strconv.FormatUint(c.merchantId, 10),
29691	})
29692	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29693}
29694
29695// Do executes the "content.orderreturns.list" call.
29696// Exactly one of *OrderreturnsListResponse or error will be non-nil.
29697// Any non-2xx status code is an error. Response headers are in either
29698// *OrderreturnsListResponse.ServerResponse.Header or (if a response was
29699// returned at all) in error.(*googleapi.Error).Header. Use
29700// googleapi.IsNotModified to check whether the returned error was
29701// because http.StatusNotModified was returned.
29702func (c *OrderreturnsListCall) Do(opts ...googleapi.CallOption) (*OrderreturnsListResponse, error) {
29703	gensupport.SetOptions(c.urlParams_, opts...)
29704	res, err := c.doRequest("json")
29705	if res != nil && res.StatusCode == http.StatusNotModified {
29706		if res.Body != nil {
29707			res.Body.Close()
29708		}
29709		return nil, &googleapi.Error{
29710			Code:   res.StatusCode,
29711			Header: res.Header,
29712		}
29713	}
29714	if err != nil {
29715		return nil, err
29716	}
29717	defer googleapi.CloseBody(res)
29718	if err := googleapi.CheckResponse(res); err != nil {
29719		return nil, err
29720	}
29721	ret := &OrderreturnsListResponse{
29722		ServerResponse: googleapi.ServerResponse{
29723			Header:         res.Header,
29724			HTTPStatusCode: res.StatusCode,
29725		},
29726	}
29727	target := &ret
29728	if err := gensupport.DecodeResponse(target, res); err != nil {
29729		return nil, err
29730	}
29731	return ret, nil
29732	// {
29733	//   "description": "Lists order returns in your Merchant Center account.",
29734	//   "flatPath": "{merchantId}/orderreturns",
29735	//   "httpMethod": "GET",
29736	//   "id": "content.orderreturns.list",
29737	//   "parameterOrder": [
29738	//     "merchantId"
29739	//   ],
29740	//   "parameters": {
29741	//     "acknowledged": {
29742	//       "description": "Obtains order returns that match the acknowledgement status. When set to true, obtains order returns that have been acknowledged. When false, obtains order returns that have not been acknowledged. When not provided, obtains order returns regardless of their acknowledgement status. We recommend using this filter set to `false`, in conjunction with the `acknowledge` call, such that only un-acknowledged order returns are returned. ",
29743	//       "location": "query",
29744	//       "type": "boolean"
29745	//     },
29746	//     "createdEndDate": {
29747	//       "description": "Obtains order returns created before this date (inclusively), in ISO 8601 format.",
29748	//       "location": "query",
29749	//       "type": "string"
29750	//     },
29751	//     "createdStartDate": {
29752	//       "description": "Obtains order returns created after this date (inclusively), in ISO 8601 format.",
29753	//       "location": "query",
29754	//       "type": "string"
29755	//     },
29756	//     "googleOrderIds": {
29757	//       "description": "Obtains order returns with the specified order ids. If this parameter is provided, createdStartDate, createdEndDate, shipmentType, shipmentStatus, shipmentState and acknowledged parameters must be not set. Note: if googleOrderId and shipmentTrackingNumber parameters are provided, the obtained results will include all order returns that either match the specified order id or the specified tracking number.",
29758	//       "location": "query",
29759	//       "repeated": true,
29760	//       "type": "string"
29761	//     },
29762	//     "maxResults": {
29763	//       "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.",
29764	//       "format": "uint32",
29765	//       "location": "query",
29766	//       "type": "integer"
29767	//     },
29768	//     "merchantId": {
29769	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
29770	//       "format": "uint64",
29771	//       "location": "path",
29772	//       "required": true,
29773	//       "type": "string"
29774	//     },
29775	//     "orderBy": {
29776	//       "description": "Return the results in the specified order.",
29777	//       "enum": [
29778	//         "RETURN_CREATION_TIME_DESC",
29779	//         "RETURN_CREATION_TIME_ASC"
29780	//       ],
29781	//       "enumDescriptions": [
29782	//         "Return results in descending order.",
29783	//         "Return results in ascending order."
29784	//       ],
29785	//       "location": "query",
29786	//       "type": "string"
29787	//     },
29788	//     "pageToken": {
29789	//       "description": "The token returned by the previous request.",
29790	//       "location": "query",
29791	//       "type": "string"
29792	//     },
29793	//     "shipmentStates": {
29794	//       "description": "Obtains order returns that match any shipment state provided in this parameter. When this parameter is not provided, order returns are obtained regardless of their shipment states.",
29795	//       "enum": [
29796	//         "NEW",
29797	//         "SHIPPED",
29798	//         "COMPLETED",
29799	//         "UNDELIVERABLE",
29800	//         "PENDING"
29801	//       ],
29802	//       "enumDescriptions": [
29803	//         "Return shipments with `new` state only.",
29804	//         "Return shipments with `shipped` state only.",
29805	//         "Return shipments with `completed` state only.",
29806	//         "Return shipments with `undeliverable` state only.",
29807	//         "Return shipments with `pending` state only."
29808	//       ],
29809	//       "location": "query",
29810	//       "repeated": true,
29811	//       "type": "string"
29812	//     },
29813	//     "shipmentStatus": {
29814	//       "description": "Obtains order returns that match any shipment status provided in this parameter. When this parameter is not provided, order returns are obtained regardless of their shipment statuses.",
29815	//       "enum": [
29816	//         "NEW",
29817	//         "IN_PROGRESS",
29818	//         "PROCESSED"
29819	//       ],
29820	//       "enumDescriptions": [
29821	//         "Return shipments with `new` status only.",
29822	//         "Return shipments with `inProgress` status only.",
29823	//         "Return shipments with `processed` status only."
29824	//       ],
29825	//       "location": "query",
29826	//       "repeated": true,
29827	//       "type": "string"
29828	//     },
29829	//     "shipmentTrackingNumbers": {
29830	//       "description": "Obtains order returns with the specified tracking numbers. If this parameter is provided, createdStartDate, createdEndDate, shipmentType, shipmentStatus, shipmentState and acknowledged parameters must be not set. Note: if googleOrderId and shipmentTrackingNumber parameters are provided, the obtained results will include all order returns that either match the specified order id or the specified tracking number.",
29831	//       "location": "query",
29832	//       "repeated": true,
29833	//       "type": "string"
29834	//     },
29835	//     "shipmentTypes": {
29836	//       "description": "Obtains order returns that match any shipment type provided in this parameter. When this parameter is not provided, order returns are obtained regardless of their shipment types.",
29837	//       "enum": [
29838	//         "BY_MAIL",
29839	//         "RETURNLESS",
29840	//         "CONTACT_CUSTOMER_SUPPORT"
29841	//       ],
29842	//       "enumDescriptions": [
29843	//         "Return shipments with type `byMail` only.",
29844	//         "Return shipments with type `returnless` only.",
29845	//         "Return shipments with type `contactCustomerSupport` only."
29846	//       ],
29847	//       "location": "query",
29848	//       "repeated": true,
29849	//       "type": "string"
29850	//     }
29851	//   },
29852	//   "path": "{merchantId}/orderreturns",
29853	//   "response": {
29854	//     "$ref": "OrderreturnsListResponse"
29855	//   },
29856	//   "scopes": [
29857	//     "https://www.googleapis.com/auth/content"
29858	//   ]
29859	// }
29860
29861}
29862
29863// Pages invokes f for each page of results.
29864// A non-nil error returned from f will halt the iteration.
29865// The provided context supersedes any context provided to the Context method.
29866func (c *OrderreturnsListCall) Pages(ctx context.Context, f func(*OrderreturnsListResponse) error) error {
29867	c.ctx_ = ctx
29868	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
29869	for {
29870		x, err := c.Do()
29871		if err != nil {
29872			return err
29873		}
29874		if err := f(x); err != nil {
29875			return err
29876		}
29877		if x.NextPageToken == "" {
29878			return nil
29879		}
29880		c.PageToken(x.NextPageToken)
29881	}
29882}
29883
29884// method id "content.orderreturns.process":
29885
29886type OrderreturnsProcessCall struct {
29887	s                          *APIService
29888	merchantId                 uint64
29889	returnId                   string
29890	orderreturnsprocessrequest *OrderreturnsProcessRequest
29891	urlParams_                 gensupport.URLParams
29892	ctx_                       context.Context
29893	header_                    http.Header
29894}
29895
29896// Process: Processes return in your Merchant Center account.
29897//
29898// - merchantId: The ID of the account that manages the order. This
29899//   cannot be a multi-client account.
29900// - returnId: The ID of the return.
29901func (r *OrderreturnsService) Process(merchantId uint64, returnId string, orderreturnsprocessrequest *OrderreturnsProcessRequest) *OrderreturnsProcessCall {
29902	c := &OrderreturnsProcessCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29903	c.merchantId = merchantId
29904	c.returnId = returnId
29905	c.orderreturnsprocessrequest = orderreturnsprocessrequest
29906	return c
29907}
29908
29909// Fields allows partial responses to be retrieved. See
29910// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29911// for more information.
29912func (c *OrderreturnsProcessCall) Fields(s ...googleapi.Field) *OrderreturnsProcessCall {
29913	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29914	return c
29915}
29916
29917// Context sets the context to be used in this call's Do method. Any
29918// pending HTTP request will be aborted if the provided context is
29919// canceled.
29920func (c *OrderreturnsProcessCall) Context(ctx context.Context) *OrderreturnsProcessCall {
29921	c.ctx_ = ctx
29922	return c
29923}
29924
29925// Header returns an http.Header that can be modified by the caller to
29926// add HTTP headers to the request.
29927func (c *OrderreturnsProcessCall) Header() http.Header {
29928	if c.header_ == nil {
29929		c.header_ = make(http.Header)
29930	}
29931	return c.header_
29932}
29933
29934func (c *OrderreturnsProcessCall) doRequest(alt string) (*http.Response, error) {
29935	reqHeaders := make(http.Header)
29936	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
29937	for k, v := range c.header_ {
29938		reqHeaders[k] = v
29939	}
29940	reqHeaders.Set("User-Agent", c.s.userAgent())
29941	var body io.Reader = nil
29942	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderreturnsprocessrequest)
29943	if err != nil {
29944		return nil, err
29945	}
29946	reqHeaders.Set("Content-Type", "application/json")
29947	c.urlParams_.Set("alt", alt)
29948	c.urlParams_.Set("prettyPrint", "false")
29949	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreturns/{returnId}/process")
29950	urls += "?" + c.urlParams_.Encode()
29951	req, err := http.NewRequest("POST", urls, body)
29952	if err != nil {
29953		return nil, err
29954	}
29955	req.Header = reqHeaders
29956	googleapi.Expand(req.URL, map[string]string{
29957		"merchantId": strconv.FormatUint(c.merchantId, 10),
29958		"returnId":   c.returnId,
29959	})
29960	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29961}
29962
29963// Do executes the "content.orderreturns.process" call.
29964// Exactly one of *OrderreturnsProcessResponse or error will be non-nil.
29965// Any non-2xx status code is an error. Response headers are in either
29966// *OrderreturnsProcessResponse.ServerResponse.Header or (if a response
29967// was returned at all) in error.(*googleapi.Error).Header. Use
29968// googleapi.IsNotModified to check whether the returned error was
29969// because http.StatusNotModified was returned.
29970func (c *OrderreturnsProcessCall) Do(opts ...googleapi.CallOption) (*OrderreturnsProcessResponse, error) {
29971	gensupport.SetOptions(c.urlParams_, opts...)
29972	res, err := c.doRequest("json")
29973	if res != nil && res.StatusCode == http.StatusNotModified {
29974		if res.Body != nil {
29975			res.Body.Close()
29976		}
29977		return nil, &googleapi.Error{
29978			Code:   res.StatusCode,
29979			Header: res.Header,
29980		}
29981	}
29982	if err != nil {
29983		return nil, err
29984	}
29985	defer googleapi.CloseBody(res)
29986	if err := googleapi.CheckResponse(res); err != nil {
29987		return nil, err
29988	}
29989	ret := &OrderreturnsProcessResponse{
29990		ServerResponse: googleapi.ServerResponse{
29991			Header:         res.Header,
29992			HTTPStatusCode: res.StatusCode,
29993		},
29994	}
29995	target := &ret
29996	if err := gensupport.DecodeResponse(target, res); err != nil {
29997		return nil, err
29998	}
29999	return ret, nil
30000	// {
30001	//   "description": "Processes return in your Merchant Center account.",
30002	//   "flatPath": "{merchantId}/orderreturns/{returnId}/process",
30003	//   "httpMethod": "POST",
30004	//   "id": "content.orderreturns.process",
30005	//   "parameterOrder": [
30006	//     "merchantId",
30007	//     "returnId"
30008	//   ],
30009	//   "parameters": {
30010	//     "merchantId": {
30011	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
30012	//       "format": "uint64",
30013	//       "location": "path",
30014	//       "required": true,
30015	//       "type": "string"
30016	//     },
30017	//     "returnId": {
30018	//       "description": "The ID of the return.",
30019	//       "location": "path",
30020	//       "required": true,
30021	//       "type": "string"
30022	//     }
30023	//   },
30024	//   "path": "{merchantId}/orderreturns/{returnId}/process",
30025	//   "request": {
30026	//     "$ref": "OrderreturnsProcessRequest"
30027	//   },
30028	//   "response": {
30029	//     "$ref": "OrderreturnsProcessResponse"
30030	//   },
30031	//   "scopes": [
30032	//     "https://www.googleapis.com/auth/content"
30033	//   ]
30034	// }
30035
30036}
30037
30038// method id "content.orderreturns.labels.create":
30039
30040type OrderreturnsLabelsCreateCall struct {
30041	s                   *APIService
30042	merchantId          int64
30043	returnId            string
30044	returnshippinglabel *ReturnShippingLabel
30045	urlParams_          gensupport.URLParams
30046	ctx_                context.Context
30047	header_             http.Header
30048}
30049
30050// Create: Links a return shipping label to a return id. You can only
30051// create one return label per return id. Since the label is sent to the
30052// buyer, the linked return label cannot be updated or deleted. If you
30053// try to create multiple return shipping labels for a single return id,
30054// every create request except the first will fail.
30055//
30056// - merchantId: The merchant the Return Shipping Label belongs to.
30057// - returnId: Provide the Google-generated merchant order return ID.
30058func (r *OrderreturnsLabelsService) Create(merchantId int64, returnId string, returnshippinglabel *ReturnShippingLabel) *OrderreturnsLabelsCreateCall {
30059	c := &OrderreturnsLabelsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30060	c.merchantId = merchantId
30061	c.returnId = returnId
30062	c.returnshippinglabel = returnshippinglabel
30063	return c
30064}
30065
30066// Fields allows partial responses to be retrieved. See
30067// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30068// for more information.
30069func (c *OrderreturnsLabelsCreateCall) Fields(s ...googleapi.Field) *OrderreturnsLabelsCreateCall {
30070	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30071	return c
30072}
30073
30074// Context sets the context to be used in this call's Do method. Any
30075// pending HTTP request will be aborted if the provided context is
30076// canceled.
30077func (c *OrderreturnsLabelsCreateCall) Context(ctx context.Context) *OrderreturnsLabelsCreateCall {
30078	c.ctx_ = ctx
30079	return c
30080}
30081
30082// Header returns an http.Header that can be modified by the caller to
30083// add HTTP headers to the request.
30084func (c *OrderreturnsLabelsCreateCall) Header() http.Header {
30085	if c.header_ == nil {
30086		c.header_ = make(http.Header)
30087	}
30088	return c.header_
30089}
30090
30091func (c *OrderreturnsLabelsCreateCall) doRequest(alt string) (*http.Response, error) {
30092	reqHeaders := make(http.Header)
30093	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
30094	for k, v := range c.header_ {
30095		reqHeaders[k] = v
30096	}
30097	reqHeaders.Set("User-Agent", c.s.userAgent())
30098	var body io.Reader = nil
30099	body, err := googleapi.WithoutDataWrapper.JSONReader(c.returnshippinglabel)
30100	if err != nil {
30101		return nil, err
30102	}
30103	reqHeaders.Set("Content-Type", "application/json")
30104	c.urlParams_.Set("alt", alt)
30105	c.urlParams_.Set("prettyPrint", "false")
30106	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreturns/{returnId}/labels")
30107	urls += "?" + c.urlParams_.Encode()
30108	req, err := http.NewRequest("POST", urls, body)
30109	if err != nil {
30110		return nil, err
30111	}
30112	req.Header = reqHeaders
30113	googleapi.Expand(req.URL, map[string]string{
30114		"merchantId": strconv.FormatInt(c.merchantId, 10),
30115		"returnId":   c.returnId,
30116	})
30117	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30118}
30119
30120// Do executes the "content.orderreturns.labels.create" call.
30121// Exactly one of *ReturnShippingLabel or error will be non-nil. Any
30122// non-2xx status code is an error. Response headers are in either
30123// *ReturnShippingLabel.ServerResponse.Header or (if a response was
30124// returned at all) in error.(*googleapi.Error).Header. Use
30125// googleapi.IsNotModified to check whether the returned error was
30126// because http.StatusNotModified was returned.
30127func (c *OrderreturnsLabelsCreateCall) Do(opts ...googleapi.CallOption) (*ReturnShippingLabel, error) {
30128	gensupport.SetOptions(c.urlParams_, opts...)
30129	res, err := c.doRequest("json")
30130	if res != nil && res.StatusCode == http.StatusNotModified {
30131		if res.Body != nil {
30132			res.Body.Close()
30133		}
30134		return nil, &googleapi.Error{
30135			Code:   res.StatusCode,
30136			Header: res.Header,
30137		}
30138	}
30139	if err != nil {
30140		return nil, err
30141	}
30142	defer googleapi.CloseBody(res)
30143	if err := googleapi.CheckResponse(res); err != nil {
30144		return nil, err
30145	}
30146	ret := &ReturnShippingLabel{
30147		ServerResponse: googleapi.ServerResponse{
30148			Header:         res.Header,
30149			HTTPStatusCode: res.StatusCode,
30150		},
30151	}
30152	target := &ret
30153	if err := gensupport.DecodeResponse(target, res); err != nil {
30154		return nil, err
30155	}
30156	return ret, nil
30157	// {
30158	//   "description": "Links a return shipping label to a return id. You can only create one return label per return id. Since the label is sent to the buyer, the linked return label cannot be updated or deleted. If you try to create multiple return shipping labels for a single return id, every create request except the first will fail.",
30159	//   "flatPath": "{merchantId}/orderreturns/{returnId}/labels",
30160	//   "httpMethod": "POST",
30161	//   "id": "content.orderreturns.labels.create",
30162	//   "parameterOrder": [
30163	//     "merchantId",
30164	//     "returnId"
30165	//   ],
30166	//   "parameters": {
30167	//     "merchantId": {
30168	//       "description": "Required. The merchant the Return Shipping Label belongs to.",
30169	//       "format": "int64",
30170	//       "location": "path",
30171	//       "required": true,
30172	//       "type": "string"
30173	//     },
30174	//     "returnId": {
30175	//       "description": "Required. Provide the Google-generated merchant order return ID.",
30176	//       "location": "path",
30177	//       "required": true,
30178	//       "type": "string"
30179	//     }
30180	//   },
30181	//   "path": "{merchantId}/orderreturns/{returnId}/labels",
30182	//   "request": {
30183	//     "$ref": "ReturnShippingLabel"
30184	//   },
30185	//   "response": {
30186	//     "$ref": "ReturnShippingLabel"
30187	//   },
30188	//   "scopes": [
30189	//     "https://www.googleapis.com/auth/content"
30190	//   ]
30191	// }
30192
30193}
30194
30195// method id "content.orders.acknowledge":
30196
30197type OrdersAcknowledgeCall struct {
30198	s                        *APIService
30199	merchantId               uint64
30200	orderId                  string
30201	ordersacknowledgerequest *OrdersAcknowledgeRequest
30202	urlParams_               gensupport.URLParams
30203	ctx_                     context.Context
30204	header_                  http.Header
30205}
30206
30207// Acknowledge: Marks an order as acknowledged.
30208//
30209// - merchantId: The ID of the account that manages the order. This
30210//   cannot be a multi-client account.
30211// - orderId: The ID of the order.
30212func (r *OrdersService) Acknowledge(merchantId uint64, orderId string, ordersacknowledgerequest *OrdersAcknowledgeRequest) *OrdersAcknowledgeCall {
30213	c := &OrdersAcknowledgeCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30214	c.merchantId = merchantId
30215	c.orderId = orderId
30216	c.ordersacknowledgerequest = ordersacknowledgerequest
30217	return c
30218}
30219
30220// Fields allows partial responses to be retrieved. See
30221// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30222// for more information.
30223func (c *OrdersAcknowledgeCall) Fields(s ...googleapi.Field) *OrdersAcknowledgeCall {
30224	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30225	return c
30226}
30227
30228// Context sets the context to be used in this call's Do method. Any
30229// pending HTTP request will be aborted if the provided context is
30230// canceled.
30231func (c *OrdersAcknowledgeCall) Context(ctx context.Context) *OrdersAcknowledgeCall {
30232	c.ctx_ = ctx
30233	return c
30234}
30235
30236// Header returns an http.Header that can be modified by the caller to
30237// add HTTP headers to the request.
30238func (c *OrdersAcknowledgeCall) Header() http.Header {
30239	if c.header_ == nil {
30240		c.header_ = make(http.Header)
30241	}
30242	return c.header_
30243}
30244
30245func (c *OrdersAcknowledgeCall) doRequest(alt string) (*http.Response, error) {
30246	reqHeaders := make(http.Header)
30247	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
30248	for k, v := range c.header_ {
30249		reqHeaders[k] = v
30250	}
30251	reqHeaders.Set("User-Agent", c.s.userAgent())
30252	var body io.Reader = nil
30253	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersacknowledgerequest)
30254	if err != nil {
30255		return nil, err
30256	}
30257	reqHeaders.Set("Content-Type", "application/json")
30258	c.urlParams_.Set("alt", alt)
30259	c.urlParams_.Set("prettyPrint", "false")
30260	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/acknowledge")
30261	urls += "?" + c.urlParams_.Encode()
30262	req, err := http.NewRequest("POST", urls, body)
30263	if err != nil {
30264		return nil, err
30265	}
30266	req.Header = reqHeaders
30267	googleapi.Expand(req.URL, map[string]string{
30268		"merchantId": strconv.FormatUint(c.merchantId, 10),
30269		"orderId":    c.orderId,
30270	})
30271	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30272}
30273
30274// Do executes the "content.orders.acknowledge" call.
30275// Exactly one of *OrdersAcknowledgeResponse or error will be non-nil.
30276// Any non-2xx status code is an error. Response headers are in either
30277// *OrdersAcknowledgeResponse.ServerResponse.Header or (if a response
30278// was returned at all) in error.(*googleapi.Error).Header. Use
30279// googleapi.IsNotModified to check whether the returned error was
30280// because http.StatusNotModified was returned.
30281func (c *OrdersAcknowledgeCall) Do(opts ...googleapi.CallOption) (*OrdersAcknowledgeResponse, error) {
30282	gensupport.SetOptions(c.urlParams_, opts...)
30283	res, err := c.doRequest("json")
30284	if res != nil && res.StatusCode == http.StatusNotModified {
30285		if res.Body != nil {
30286			res.Body.Close()
30287		}
30288		return nil, &googleapi.Error{
30289			Code:   res.StatusCode,
30290			Header: res.Header,
30291		}
30292	}
30293	if err != nil {
30294		return nil, err
30295	}
30296	defer googleapi.CloseBody(res)
30297	if err := googleapi.CheckResponse(res); err != nil {
30298		return nil, err
30299	}
30300	ret := &OrdersAcknowledgeResponse{
30301		ServerResponse: googleapi.ServerResponse{
30302			Header:         res.Header,
30303			HTTPStatusCode: res.StatusCode,
30304		},
30305	}
30306	target := &ret
30307	if err := gensupport.DecodeResponse(target, res); err != nil {
30308		return nil, err
30309	}
30310	return ret, nil
30311	// {
30312	//   "description": "Marks an order as acknowledged.",
30313	//   "flatPath": "{merchantId}/orders/{orderId}/acknowledge",
30314	//   "httpMethod": "POST",
30315	//   "id": "content.orders.acknowledge",
30316	//   "parameterOrder": [
30317	//     "merchantId",
30318	//     "orderId"
30319	//   ],
30320	//   "parameters": {
30321	//     "merchantId": {
30322	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
30323	//       "format": "uint64",
30324	//       "location": "path",
30325	//       "required": true,
30326	//       "type": "string"
30327	//     },
30328	//     "orderId": {
30329	//       "description": "The ID of the order.",
30330	//       "location": "path",
30331	//       "required": true,
30332	//       "type": "string"
30333	//     }
30334	//   },
30335	//   "path": "{merchantId}/orders/{orderId}/acknowledge",
30336	//   "request": {
30337	//     "$ref": "OrdersAcknowledgeRequest"
30338	//   },
30339	//   "response": {
30340	//     "$ref": "OrdersAcknowledgeResponse"
30341	//   },
30342	//   "scopes": [
30343	//     "https://www.googleapis.com/auth/content"
30344	//   ]
30345	// }
30346
30347}
30348
30349// method id "content.orders.advancetestorder":
30350
30351type OrdersAdvancetestorderCall struct {
30352	s          *APIService
30353	merchantId uint64
30354	orderId    string
30355	urlParams_ gensupport.URLParams
30356	ctx_       context.Context
30357	header_    http.Header
30358}
30359
30360// Advancetestorder: Sandbox only. Moves a test order from state
30361// "inProgress" to state "pendingShipment".
30362//
30363// - merchantId: The ID of the account that manages the order. This
30364//   cannot be a multi-client account.
30365// - orderId: The ID of the test order to modify.
30366func (r *OrdersService) Advancetestorder(merchantId uint64, orderId string) *OrdersAdvancetestorderCall {
30367	c := &OrdersAdvancetestorderCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30368	c.merchantId = merchantId
30369	c.orderId = orderId
30370	return c
30371}
30372
30373// Fields allows partial responses to be retrieved. See
30374// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30375// for more information.
30376func (c *OrdersAdvancetestorderCall) Fields(s ...googleapi.Field) *OrdersAdvancetestorderCall {
30377	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30378	return c
30379}
30380
30381// Context sets the context to be used in this call's Do method. Any
30382// pending HTTP request will be aborted if the provided context is
30383// canceled.
30384func (c *OrdersAdvancetestorderCall) Context(ctx context.Context) *OrdersAdvancetestorderCall {
30385	c.ctx_ = ctx
30386	return c
30387}
30388
30389// Header returns an http.Header that can be modified by the caller to
30390// add HTTP headers to the request.
30391func (c *OrdersAdvancetestorderCall) Header() http.Header {
30392	if c.header_ == nil {
30393		c.header_ = make(http.Header)
30394	}
30395	return c.header_
30396}
30397
30398func (c *OrdersAdvancetestorderCall) doRequest(alt string) (*http.Response, error) {
30399	reqHeaders := make(http.Header)
30400	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
30401	for k, v := range c.header_ {
30402		reqHeaders[k] = v
30403	}
30404	reqHeaders.Set("User-Agent", c.s.userAgent())
30405	var body io.Reader = nil
30406	c.urlParams_.Set("alt", alt)
30407	c.urlParams_.Set("prettyPrint", "false")
30408	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/testorders/{orderId}/advance")
30409	urls += "?" + c.urlParams_.Encode()
30410	req, err := http.NewRequest("POST", urls, body)
30411	if err != nil {
30412		return nil, err
30413	}
30414	req.Header = reqHeaders
30415	googleapi.Expand(req.URL, map[string]string{
30416		"merchantId": strconv.FormatUint(c.merchantId, 10),
30417		"orderId":    c.orderId,
30418	})
30419	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30420}
30421
30422// Do executes the "content.orders.advancetestorder" call.
30423// Exactly one of *OrdersAdvanceTestOrderResponse or error will be
30424// non-nil. Any non-2xx status code is an error. Response headers are in
30425// either *OrdersAdvanceTestOrderResponse.ServerResponse.Header or (if a
30426// response was returned at all) in error.(*googleapi.Error).Header. Use
30427// googleapi.IsNotModified to check whether the returned error was
30428// because http.StatusNotModified was returned.
30429func (c *OrdersAdvancetestorderCall) Do(opts ...googleapi.CallOption) (*OrdersAdvanceTestOrderResponse, error) {
30430	gensupport.SetOptions(c.urlParams_, opts...)
30431	res, err := c.doRequest("json")
30432	if res != nil && res.StatusCode == http.StatusNotModified {
30433		if res.Body != nil {
30434			res.Body.Close()
30435		}
30436		return nil, &googleapi.Error{
30437			Code:   res.StatusCode,
30438			Header: res.Header,
30439		}
30440	}
30441	if err != nil {
30442		return nil, err
30443	}
30444	defer googleapi.CloseBody(res)
30445	if err := googleapi.CheckResponse(res); err != nil {
30446		return nil, err
30447	}
30448	ret := &OrdersAdvanceTestOrderResponse{
30449		ServerResponse: googleapi.ServerResponse{
30450			Header:         res.Header,
30451			HTTPStatusCode: res.StatusCode,
30452		},
30453	}
30454	target := &ret
30455	if err := gensupport.DecodeResponse(target, res); err != nil {
30456		return nil, err
30457	}
30458	return ret, nil
30459	// {
30460	//   "description": "Sandbox only. Moves a test order from state \"`inProgress`\" to state \"`pendingShipment`\".",
30461	//   "flatPath": "{merchantId}/testorders/{orderId}/advance",
30462	//   "httpMethod": "POST",
30463	//   "id": "content.orders.advancetestorder",
30464	//   "parameterOrder": [
30465	//     "merchantId",
30466	//     "orderId"
30467	//   ],
30468	//   "parameters": {
30469	//     "merchantId": {
30470	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
30471	//       "format": "uint64",
30472	//       "location": "path",
30473	//       "required": true,
30474	//       "type": "string"
30475	//     },
30476	//     "orderId": {
30477	//       "description": "The ID of the test order to modify.",
30478	//       "location": "path",
30479	//       "required": true,
30480	//       "type": "string"
30481	//     }
30482	//   },
30483	//   "path": "{merchantId}/testorders/{orderId}/advance",
30484	//   "response": {
30485	//     "$ref": "OrdersAdvanceTestOrderResponse"
30486	//   },
30487	//   "scopes": [
30488	//     "https://www.googleapis.com/auth/content"
30489	//   ]
30490	// }
30491
30492}
30493
30494// method id "content.orders.cancel":
30495
30496type OrdersCancelCall struct {
30497	s                   *APIService
30498	merchantId          uint64
30499	orderId             string
30500	orderscancelrequest *OrdersCancelRequest
30501	urlParams_          gensupport.URLParams
30502	ctx_                context.Context
30503	header_             http.Header
30504}
30505
30506// Cancel: Cancels all line items in an order, making a full refund.
30507//
30508// - merchantId: The ID of the account that manages the order. This
30509//   cannot be a multi-client account.
30510// - orderId: The ID of the order to cancel.
30511func (r *OrdersService) Cancel(merchantId uint64, orderId string, orderscancelrequest *OrdersCancelRequest) *OrdersCancelCall {
30512	c := &OrdersCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30513	c.merchantId = merchantId
30514	c.orderId = orderId
30515	c.orderscancelrequest = orderscancelrequest
30516	return c
30517}
30518
30519// Fields allows partial responses to be retrieved. See
30520// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30521// for more information.
30522func (c *OrdersCancelCall) Fields(s ...googleapi.Field) *OrdersCancelCall {
30523	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30524	return c
30525}
30526
30527// Context sets the context to be used in this call's Do method. Any
30528// pending HTTP request will be aborted if the provided context is
30529// canceled.
30530func (c *OrdersCancelCall) Context(ctx context.Context) *OrdersCancelCall {
30531	c.ctx_ = ctx
30532	return c
30533}
30534
30535// Header returns an http.Header that can be modified by the caller to
30536// add HTTP headers to the request.
30537func (c *OrdersCancelCall) Header() http.Header {
30538	if c.header_ == nil {
30539		c.header_ = make(http.Header)
30540	}
30541	return c.header_
30542}
30543
30544func (c *OrdersCancelCall) doRequest(alt string) (*http.Response, error) {
30545	reqHeaders := make(http.Header)
30546	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
30547	for k, v := range c.header_ {
30548		reqHeaders[k] = v
30549	}
30550	reqHeaders.Set("User-Agent", c.s.userAgent())
30551	var body io.Reader = nil
30552	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscancelrequest)
30553	if err != nil {
30554		return nil, err
30555	}
30556	reqHeaders.Set("Content-Type", "application/json")
30557	c.urlParams_.Set("alt", alt)
30558	c.urlParams_.Set("prettyPrint", "false")
30559	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/cancel")
30560	urls += "?" + c.urlParams_.Encode()
30561	req, err := http.NewRequest("POST", urls, body)
30562	if err != nil {
30563		return nil, err
30564	}
30565	req.Header = reqHeaders
30566	googleapi.Expand(req.URL, map[string]string{
30567		"merchantId": strconv.FormatUint(c.merchantId, 10),
30568		"orderId":    c.orderId,
30569	})
30570	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30571}
30572
30573// Do executes the "content.orders.cancel" call.
30574// Exactly one of *OrdersCancelResponse or error will be non-nil. Any
30575// non-2xx status code is an error. Response headers are in either
30576// *OrdersCancelResponse.ServerResponse.Header or (if a response was
30577// returned at all) in error.(*googleapi.Error).Header. Use
30578// googleapi.IsNotModified to check whether the returned error was
30579// because http.StatusNotModified was returned.
30580func (c *OrdersCancelCall) Do(opts ...googleapi.CallOption) (*OrdersCancelResponse, error) {
30581	gensupport.SetOptions(c.urlParams_, opts...)
30582	res, err := c.doRequest("json")
30583	if res != nil && res.StatusCode == http.StatusNotModified {
30584		if res.Body != nil {
30585			res.Body.Close()
30586		}
30587		return nil, &googleapi.Error{
30588			Code:   res.StatusCode,
30589			Header: res.Header,
30590		}
30591	}
30592	if err != nil {
30593		return nil, err
30594	}
30595	defer googleapi.CloseBody(res)
30596	if err := googleapi.CheckResponse(res); err != nil {
30597		return nil, err
30598	}
30599	ret := &OrdersCancelResponse{
30600		ServerResponse: googleapi.ServerResponse{
30601			Header:         res.Header,
30602			HTTPStatusCode: res.StatusCode,
30603		},
30604	}
30605	target := &ret
30606	if err := gensupport.DecodeResponse(target, res); err != nil {
30607		return nil, err
30608	}
30609	return ret, nil
30610	// {
30611	//   "description": "Cancels all line items in an order, making a full refund.",
30612	//   "flatPath": "{merchantId}/orders/{orderId}/cancel",
30613	//   "httpMethod": "POST",
30614	//   "id": "content.orders.cancel",
30615	//   "parameterOrder": [
30616	//     "merchantId",
30617	//     "orderId"
30618	//   ],
30619	//   "parameters": {
30620	//     "merchantId": {
30621	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
30622	//       "format": "uint64",
30623	//       "location": "path",
30624	//       "required": true,
30625	//       "type": "string"
30626	//     },
30627	//     "orderId": {
30628	//       "description": "The ID of the order to cancel.",
30629	//       "location": "path",
30630	//       "required": true,
30631	//       "type": "string"
30632	//     }
30633	//   },
30634	//   "path": "{merchantId}/orders/{orderId}/cancel",
30635	//   "request": {
30636	//     "$ref": "OrdersCancelRequest"
30637	//   },
30638	//   "response": {
30639	//     "$ref": "OrdersCancelResponse"
30640	//   },
30641	//   "scopes": [
30642	//     "https://www.googleapis.com/auth/content"
30643	//   ]
30644	// }
30645
30646}
30647
30648// method id "content.orders.cancellineitem":
30649
30650type OrdersCancellineitemCall struct {
30651	s                           *APIService
30652	merchantId                  uint64
30653	orderId                     string
30654	orderscancellineitemrequest *OrdersCancelLineItemRequest
30655	urlParams_                  gensupport.URLParams
30656	ctx_                        context.Context
30657	header_                     http.Header
30658}
30659
30660// Cancellineitem: Cancels a line item, making a full refund.
30661//
30662// - merchantId: The ID of the account that manages the order. This
30663//   cannot be a multi-client account.
30664// - orderId: The ID of the order.
30665func (r *OrdersService) Cancellineitem(merchantId uint64, orderId string, orderscancellineitemrequest *OrdersCancelLineItemRequest) *OrdersCancellineitemCall {
30666	c := &OrdersCancellineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30667	c.merchantId = merchantId
30668	c.orderId = orderId
30669	c.orderscancellineitemrequest = orderscancellineitemrequest
30670	return c
30671}
30672
30673// Fields allows partial responses to be retrieved. See
30674// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30675// for more information.
30676func (c *OrdersCancellineitemCall) Fields(s ...googleapi.Field) *OrdersCancellineitemCall {
30677	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30678	return c
30679}
30680
30681// Context sets the context to be used in this call's Do method. Any
30682// pending HTTP request will be aborted if the provided context is
30683// canceled.
30684func (c *OrdersCancellineitemCall) Context(ctx context.Context) *OrdersCancellineitemCall {
30685	c.ctx_ = ctx
30686	return c
30687}
30688
30689// Header returns an http.Header that can be modified by the caller to
30690// add HTTP headers to the request.
30691func (c *OrdersCancellineitemCall) Header() http.Header {
30692	if c.header_ == nil {
30693		c.header_ = make(http.Header)
30694	}
30695	return c.header_
30696}
30697
30698func (c *OrdersCancellineitemCall) doRequest(alt string) (*http.Response, error) {
30699	reqHeaders := make(http.Header)
30700	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
30701	for k, v := range c.header_ {
30702		reqHeaders[k] = v
30703	}
30704	reqHeaders.Set("User-Agent", c.s.userAgent())
30705	var body io.Reader = nil
30706	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscancellineitemrequest)
30707	if err != nil {
30708		return nil, err
30709	}
30710	reqHeaders.Set("Content-Type", "application/json")
30711	c.urlParams_.Set("alt", alt)
30712	c.urlParams_.Set("prettyPrint", "false")
30713	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/cancelLineItem")
30714	urls += "?" + c.urlParams_.Encode()
30715	req, err := http.NewRequest("POST", urls, body)
30716	if err != nil {
30717		return nil, err
30718	}
30719	req.Header = reqHeaders
30720	googleapi.Expand(req.URL, map[string]string{
30721		"merchantId": strconv.FormatUint(c.merchantId, 10),
30722		"orderId":    c.orderId,
30723	})
30724	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30725}
30726
30727// Do executes the "content.orders.cancellineitem" call.
30728// Exactly one of *OrdersCancelLineItemResponse or error will be
30729// non-nil. Any non-2xx status code is an error. Response headers are in
30730// either *OrdersCancelLineItemResponse.ServerResponse.Header or (if a
30731// response was returned at all) in error.(*googleapi.Error).Header. Use
30732// googleapi.IsNotModified to check whether the returned error was
30733// because http.StatusNotModified was returned.
30734func (c *OrdersCancellineitemCall) Do(opts ...googleapi.CallOption) (*OrdersCancelLineItemResponse, error) {
30735	gensupport.SetOptions(c.urlParams_, opts...)
30736	res, err := c.doRequest("json")
30737	if res != nil && res.StatusCode == http.StatusNotModified {
30738		if res.Body != nil {
30739			res.Body.Close()
30740		}
30741		return nil, &googleapi.Error{
30742			Code:   res.StatusCode,
30743			Header: res.Header,
30744		}
30745	}
30746	if err != nil {
30747		return nil, err
30748	}
30749	defer googleapi.CloseBody(res)
30750	if err := googleapi.CheckResponse(res); err != nil {
30751		return nil, err
30752	}
30753	ret := &OrdersCancelLineItemResponse{
30754		ServerResponse: googleapi.ServerResponse{
30755			Header:         res.Header,
30756			HTTPStatusCode: res.StatusCode,
30757		},
30758	}
30759	target := &ret
30760	if err := gensupport.DecodeResponse(target, res); err != nil {
30761		return nil, err
30762	}
30763	return ret, nil
30764	// {
30765	//   "description": "Cancels a line item, making a full refund.",
30766	//   "flatPath": "{merchantId}/orders/{orderId}/cancelLineItem",
30767	//   "httpMethod": "POST",
30768	//   "id": "content.orders.cancellineitem",
30769	//   "parameterOrder": [
30770	//     "merchantId",
30771	//     "orderId"
30772	//   ],
30773	//   "parameters": {
30774	//     "merchantId": {
30775	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
30776	//       "format": "uint64",
30777	//       "location": "path",
30778	//       "required": true,
30779	//       "type": "string"
30780	//     },
30781	//     "orderId": {
30782	//       "description": "The ID of the order.",
30783	//       "location": "path",
30784	//       "required": true,
30785	//       "type": "string"
30786	//     }
30787	//   },
30788	//   "path": "{merchantId}/orders/{orderId}/cancelLineItem",
30789	//   "request": {
30790	//     "$ref": "OrdersCancelLineItemRequest"
30791	//   },
30792	//   "response": {
30793	//     "$ref": "OrdersCancelLineItemResponse"
30794	//   },
30795	//   "scopes": [
30796	//     "https://www.googleapis.com/auth/content"
30797	//   ]
30798	// }
30799
30800}
30801
30802// method id "content.orders.canceltestorderbycustomer":
30803
30804type OrdersCanceltestorderbycustomerCall struct {
30805	s                                      *APIService
30806	merchantId                             uint64
30807	orderId                                string
30808	orderscanceltestorderbycustomerrequest *OrdersCancelTestOrderByCustomerRequest
30809	urlParams_                             gensupport.URLParams
30810	ctx_                                   context.Context
30811	header_                                http.Header
30812}
30813
30814// Canceltestorderbycustomer: Sandbox only. Cancels a test order for
30815// customer-initiated cancellation.
30816//
30817// - merchantId: The ID of the account that manages the order. This
30818//   cannot be a multi-client account.
30819// - orderId: The ID of the test order to cancel.
30820func (r *OrdersService) Canceltestorderbycustomer(merchantId uint64, orderId string, orderscanceltestorderbycustomerrequest *OrdersCancelTestOrderByCustomerRequest) *OrdersCanceltestorderbycustomerCall {
30821	c := &OrdersCanceltestorderbycustomerCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30822	c.merchantId = merchantId
30823	c.orderId = orderId
30824	c.orderscanceltestorderbycustomerrequest = orderscanceltestorderbycustomerrequest
30825	return c
30826}
30827
30828// Fields allows partial responses to be retrieved. See
30829// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30830// for more information.
30831func (c *OrdersCanceltestorderbycustomerCall) Fields(s ...googleapi.Field) *OrdersCanceltestorderbycustomerCall {
30832	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30833	return c
30834}
30835
30836// Context sets the context to be used in this call's Do method. Any
30837// pending HTTP request will be aborted if the provided context is
30838// canceled.
30839func (c *OrdersCanceltestorderbycustomerCall) Context(ctx context.Context) *OrdersCanceltestorderbycustomerCall {
30840	c.ctx_ = ctx
30841	return c
30842}
30843
30844// Header returns an http.Header that can be modified by the caller to
30845// add HTTP headers to the request.
30846func (c *OrdersCanceltestorderbycustomerCall) Header() http.Header {
30847	if c.header_ == nil {
30848		c.header_ = make(http.Header)
30849	}
30850	return c.header_
30851}
30852
30853func (c *OrdersCanceltestorderbycustomerCall) doRequest(alt string) (*http.Response, error) {
30854	reqHeaders := make(http.Header)
30855	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
30856	for k, v := range c.header_ {
30857		reqHeaders[k] = v
30858	}
30859	reqHeaders.Set("User-Agent", c.s.userAgent())
30860	var body io.Reader = nil
30861	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscanceltestorderbycustomerrequest)
30862	if err != nil {
30863		return nil, err
30864	}
30865	reqHeaders.Set("Content-Type", "application/json")
30866	c.urlParams_.Set("alt", alt)
30867	c.urlParams_.Set("prettyPrint", "false")
30868	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/testorders/{orderId}/cancelByCustomer")
30869	urls += "?" + c.urlParams_.Encode()
30870	req, err := http.NewRequest("POST", urls, body)
30871	if err != nil {
30872		return nil, err
30873	}
30874	req.Header = reqHeaders
30875	googleapi.Expand(req.URL, map[string]string{
30876		"merchantId": strconv.FormatUint(c.merchantId, 10),
30877		"orderId":    c.orderId,
30878	})
30879	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30880}
30881
30882// Do executes the "content.orders.canceltestorderbycustomer" call.
30883// Exactly one of *OrdersCancelTestOrderByCustomerResponse or error will
30884// be non-nil. Any non-2xx status code is an error. Response headers are
30885// in either
30886// *OrdersCancelTestOrderByCustomerResponse.ServerResponse.Header or (if
30887// a response was returned at all) in error.(*googleapi.Error).Header.
30888// Use googleapi.IsNotModified to check whether the returned error was
30889// because http.StatusNotModified was returned.
30890func (c *OrdersCanceltestorderbycustomerCall) Do(opts ...googleapi.CallOption) (*OrdersCancelTestOrderByCustomerResponse, error) {
30891	gensupport.SetOptions(c.urlParams_, opts...)
30892	res, err := c.doRequest("json")
30893	if res != nil && res.StatusCode == http.StatusNotModified {
30894		if res.Body != nil {
30895			res.Body.Close()
30896		}
30897		return nil, &googleapi.Error{
30898			Code:   res.StatusCode,
30899			Header: res.Header,
30900		}
30901	}
30902	if err != nil {
30903		return nil, err
30904	}
30905	defer googleapi.CloseBody(res)
30906	if err := googleapi.CheckResponse(res); err != nil {
30907		return nil, err
30908	}
30909	ret := &OrdersCancelTestOrderByCustomerResponse{
30910		ServerResponse: googleapi.ServerResponse{
30911			Header:         res.Header,
30912			HTTPStatusCode: res.StatusCode,
30913		},
30914	}
30915	target := &ret
30916	if err := gensupport.DecodeResponse(target, res); err != nil {
30917		return nil, err
30918	}
30919	return ret, nil
30920	// {
30921	//   "description": "Sandbox only. Cancels a test order for customer-initiated cancellation.",
30922	//   "flatPath": "{merchantId}/testorders/{orderId}/cancelByCustomer",
30923	//   "httpMethod": "POST",
30924	//   "id": "content.orders.canceltestorderbycustomer",
30925	//   "parameterOrder": [
30926	//     "merchantId",
30927	//     "orderId"
30928	//   ],
30929	//   "parameters": {
30930	//     "merchantId": {
30931	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
30932	//       "format": "uint64",
30933	//       "location": "path",
30934	//       "required": true,
30935	//       "type": "string"
30936	//     },
30937	//     "orderId": {
30938	//       "description": "The ID of the test order to cancel.",
30939	//       "location": "path",
30940	//       "required": true,
30941	//       "type": "string"
30942	//     }
30943	//   },
30944	//   "path": "{merchantId}/testorders/{orderId}/cancelByCustomer",
30945	//   "request": {
30946	//     "$ref": "OrdersCancelTestOrderByCustomerRequest"
30947	//   },
30948	//   "response": {
30949	//     "$ref": "OrdersCancelTestOrderByCustomerResponse"
30950	//   },
30951	//   "scopes": [
30952	//     "https://www.googleapis.com/auth/content"
30953	//   ]
30954	// }
30955
30956}
30957
30958// method id "content.orders.captureOrder":
30959
30960type OrdersCaptureOrderCall struct {
30961	s                   *APIService
30962	merchantId          int64
30963	orderId             string
30964	captureorderrequest *CaptureOrderRequest
30965	urlParams_          gensupport.URLParams
30966	ctx_                context.Context
30967	header_             http.Header
30968}
30969
30970// CaptureOrder: Capture funds from the customer for the current order
30971// total. This method should be called after the merchant verifies that
30972// they are able and ready to start shipping the order. This method
30973// blocks until a response is received from the payment processsor. If
30974// this method succeeds, the merchant is guaranteed to receive funds for
30975// the order after shipment. If the request fails, it can be retried or
30976// the order may be cancelled. This method cannot be called after the
30977// entire order is already shipped. A rejected error code is returned
30978// when the payment service provider has declined the charge. This
30979// indicates a problem between the PSP and either the merchant's or
30980// customer's account. Sometimes this error will be resolved by the
30981// customer. We recommend retrying these errors once per day or
30982// cancelling the order with reason `failedToCaptureFunds` if the items
30983// cannot be held.
30984//
30985// - merchantId: The ID of the account that manages the order. This
30986//   cannot be a multi-client account.
30987// - orderId: The ID of the Order.
30988func (r *OrdersService) CaptureOrder(merchantId int64, orderId string, captureorderrequest *CaptureOrderRequest) *OrdersCaptureOrderCall {
30989	c := &OrdersCaptureOrderCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30990	c.merchantId = merchantId
30991	c.orderId = orderId
30992	c.captureorderrequest = captureorderrequest
30993	return c
30994}
30995
30996// Fields allows partial responses to be retrieved. See
30997// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30998// for more information.
30999func (c *OrdersCaptureOrderCall) Fields(s ...googleapi.Field) *OrdersCaptureOrderCall {
31000	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31001	return c
31002}
31003
31004// Context sets the context to be used in this call's Do method. Any
31005// pending HTTP request will be aborted if the provided context is
31006// canceled.
31007func (c *OrdersCaptureOrderCall) Context(ctx context.Context) *OrdersCaptureOrderCall {
31008	c.ctx_ = ctx
31009	return c
31010}
31011
31012// Header returns an http.Header that can be modified by the caller to
31013// add HTTP headers to the request.
31014func (c *OrdersCaptureOrderCall) Header() http.Header {
31015	if c.header_ == nil {
31016		c.header_ = make(http.Header)
31017	}
31018	return c.header_
31019}
31020
31021func (c *OrdersCaptureOrderCall) doRequest(alt string) (*http.Response, error) {
31022	reqHeaders := make(http.Header)
31023	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
31024	for k, v := range c.header_ {
31025		reqHeaders[k] = v
31026	}
31027	reqHeaders.Set("User-Agent", c.s.userAgent())
31028	var body io.Reader = nil
31029	body, err := googleapi.WithoutDataWrapper.JSONReader(c.captureorderrequest)
31030	if err != nil {
31031		return nil, err
31032	}
31033	reqHeaders.Set("Content-Type", "application/json")
31034	c.urlParams_.Set("alt", alt)
31035	c.urlParams_.Set("prettyPrint", "false")
31036	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/captureOrder")
31037	urls += "?" + c.urlParams_.Encode()
31038	req, err := http.NewRequest("POST", urls, body)
31039	if err != nil {
31040		return nil, err
31041	}
31042	req.Header = reqHeaders
31043	googleapi.Expand(req.URL, map[string]string{
31044		"merchantId": strconv.FormatInt(c.merchantId, 10),
31045		"orderId":    c.orderId,
31046	})
31047	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31048}
31049
31050// Do executes the "content.orders.captureOrder" call.
31051// Exactly one of *CaptureOrderResponse or error will be non-nil. Any
31052// non-2xx status code is an error. Response headers are in either
31053// *CaptureOrderResponse.ServerResponse.Header or (if a response was
31054// returned at all) in error.(*googleapi.Error).Header. Use
31055// googleapi.IsNotModified to check whether the returned error was
31056// because http.StatusNotModified was returned.
31057func (c *OrdersCaptureOrderCall) Do(opts ...googleapi.CallOption) (*CaptureOrderResponse, error) {
31058	gensupport.SetOptions(c.urlParams_, opts...)
31059	res, err := c.doRequest("json")
31060	if res != nil && res.StatusCode == http.StatusNotModified {
31061		if res.Body != nil {
31062			res.Body.Close()
31063		}
31064		return nil, &googleapi.Error{
31065			Code:   res.StatusCode,
31066			Header: res.Header,
31067		}
31068	}
31069	if err != nil {
31070		return nil, err
31071	}
31072	defer googleapi.CloseBody(res)
31073	if err := googleapi.CheckResponse(res); err != nil {
31074		return nil, err
31075	}
31076	ret := &CaptureOrderResponse{
31077		ServerResponse: googleapi.ServerResponse{
31078			Header:         res.Header,
31079			HTTPStatusCode: res.StatusCode,
31080		},
31081	}
31082	target := &ret
31083	if err := gensupport.DecodeResponse(target, res); err != nil {
31084		return nil, err
31085	}
31086	return ret, nil
31087	// {
31088	//   "description": "Capture funds from the customer for the current order total. This method should be called after the merchant verifies that they are able and ready to start shipping the order. This method blocks until a response is received from the payment processsor. If this method succeeds, the merchant is guaranteed to receive funds for the order after shipment. If the request fails, it can be retried or the order may be cancelled. This method cannot be called after the entire order is already shipped. A rejected error code is returned when the payment service provider has declined the charge. This indicates a problem between the PSP and either the merchant's or customer's account. Sometimes this error will be resolved by the customer. We recommend retrying these errors once per day or cancelling the order with reason `failedToCaptureFunds` if the items cannot be held.",
31089	//   "flatPath": "{merchantId}/orders/{orderId}/captureOrder",
31090	//   "httpMethod": "POST",
31091	//   "id": "content.orders.captureOrder",
31092	//   "parameterOrder": [
31093	//     "merchantId",
31094	//     "orderId"
31095	//   ],
31096	//   "parameters": {
31097	//     "merchantId": {
31098	//       "description": "Required. The ID of the account that manages the order. This cannot be a multi-client account.",
31099	//       "format": "int64",
31100	//       "location": "path",
31101	//       "required": true,
31102	//       "type": "string"
31103	//     },
31104	//     "orderId": {
31105	//       "description": "Required. The ID of the Order.",
31106	//       "location": "path",
31107	//       "required": true,
31108	//       "type": "string"
31109	//     }
31110	//   },
31111	//   "path": "{merchantId}/orders/{orderId}/captureOrder",
31112	//   "request": {
31113	//     "$ref": "CaptureOrderRequest"
31114	//   },
31115	//   "response": {
31116	//     "$ref": "CaptureOrderResponse"
31117	//   },
31118	//   "scopes": [
31119	//     "https://www.googleapis.com/auth/content"
31120	//   ]
31121	// }
31122
31123}
31124
31125// method id "content.orders.createtestorder":
31126
31127type OrdersCreatetestorderCall struct {
31128	s                            *APIService
31129	merchantId                   uint64
31130	orderscreatetestorderrequest *OrdersCreateTestOrderRequest
31131	urlParams_                   gensupport.URLParams
31132	ctx_                         context.Context
31133	header_                      http.Header
31134}
31135
31136// Createtestorder: Sandbox only. Creates a test order.
31137//
31138// - merchantId: The ID of the account that should manage the order.
31139//   This cannot be a multi-client account.
31140func (r *OrdersService) Createtestorder(merchantId uint64, orderscreatetestorderrequest *OrdersCreateTestOrderRequest) *OrdersCreatetestorderCall {
31141	c := &OrdersCreatetestorderCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31142	c.merchantId = merchantId
31143	c.orderscreatetestorderrequest = orderscreatetestorderrequest
31144	return c
31145}
31146
31147// Fields allows partial responses to be retrieved. See
31148// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31149// for more information.
31150func (c *OrdersCreatetestorderCall) Fields(s ...googleapi.Field) *OrdersCreatetestorderCall {
31151	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31152	return c
31153}
31154
31155// Context sets the context to be used in this call's Do method. Any
31156// pending HTTP request will be aborted if the provided context is
31157// canceled.
31158func (c *OrdersCreatetestorderCall) Context(ctx context.Context) *OrdersCreatetestorderCall {
31159	c.ctx_ = ctx
31160	return c
31161}
31162
31163// Header returns an http.Header that can be modified by the caller to
31164// add HTTP headers to the request.
31165func (c *OrdersCreatetestorderCall) Header() http.Header {
31166	if c.header_ == nil {
31167		c.header_ = make(http.Header)
31168	}
31169	return c.header_
31170}
31171
31172func (c *OrdersCreatetestorderCall) doRequest(alt string) (*http.Response, error) {
31173	reqHeaders := make(http.Header)
31174	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
31175	for k, v := range c.header_ {
31176		reqHeaders[k] = v
31177	}
31178	reqHeaders.Set("User-Agent", c.s.userAgent())
31179	var body io.Reader = nil
31180	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscreatetestorderrequest)
31181	if err != nil {
31182		return nil, err
31183	}
31184	reqHeaders.Set("Content-Type", "application/json")
31185	c.urlParams_.Set("alt", alt)
31186	c.urlParams_.Set("prettyPrint", "false")
31187	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/testorders")
31188	urls += "?" + c.urlParams_.Encode()
31189	req, err := http.NewRequest("POST", urls, body)
31190	if err != nil {
31191		return nil, err
31192	}
31193	req.Header = reqHeaders
31194	googleapi.Expand(req.URL, map[string]string{
31195		"merchantId": strconv.FormatUint(c.merchantId, 10),
31196	})
31197	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31198}
31199
31200// Do executes the "content.orders.createtestorder" call.
31201// Exactly one of *OrdersCreateTestOrderResponse or error will be
31202// non-nil. Any non-2xx status code is an error. Response headers are in
31203// either *OrdersCreateTestOrderResponse.ServerResponse.Header or (if a
31204// response was returned at all) in error.(*googleapi.Error).Header. Use
31205// googleapi.IsNotModified to check whether the returned error was
31206// because http.StatusNotModified was returned.
31207func (c *OrdersCreatetestorderCall) Do(opts ...googleapi.CallOption) (*OrdersCreateTestOrderResponse, error) {
31208	gensupport.SetOptions(c.urlParams_, opts...)
31209	res, err := c.doRequest("json")
31210	if res != nil && res.StatusCode == http.StatusNotModified {
31211		if res.Body != nil {
31212			res.Body.Close()
31213		}
31214		return nil, &googleapi.Error{
31215			Code:   res.StatusCode,
31216			Header: res.Header,
31217		}
31218	}
31219	if err != nil {
31220		return nil, err
31221	}
31222	defer googleapi.CloseBody(res)
31223	if err := googleapi.CheckResponse(res); err != nil {
31224		return nil, err
31225	}
31226	ret := &OrdersCreateTestOrderResponse{
31227		ServerResponse: googleapi.ServerResponse{
31228			Header:         res.Header,
31229			HTTPStatusCode: res.StatusCode,
31230		},
31231	}
31232	target := &ret
31233	if err := gensupport.DecodeResponse(target, res); err != nil {
31234		return nil, err
31235	}
31236	return ret, nil
31237	// {
31238	//   "description": "Sandbox only. Creates a test order.",
31239	//   "flatPath": "{merchantId}/testorders",
31240	//   "httpMethod": "POST",
31241	//   "id": "content.orders.createtestorder",
31242	//   "parameterOrder": [
31243	//     "merchantId"
31244	//   ],
31245	//   "parameters": {
31246	//     "merchantId": {
31247	//       "description": "The ID of the account that should manage the order. This cannot be a multi-client account.",
31248	//       "format": "uint64",
31249	//       "location": "path",
31250	//       "required": true,
31251	//       "type": "string"
31252	//     }
31253	//   },
31254	//   "path": "{merchantId}/testorders",
31255	//   "request": {
31256	//     "$ref": "OrdersCreateTestOrderRequest"
31257	//   },
31258	//   "response": {
31259	//     "$ref": "OrdersCreateTestOrderResponse"
31260	//   },
31261	//   "scopes": [
31262	//     "https://www.googleapis.com/auth/content"
31263	//   ]
31264	// }
31265
31266}
31267
31268// method id "content.orders.createtestreturn":
31269
31270type OrdersCreatetestreturnCall struct {
31271	s                             *APIService
31272	merchantId                    uint64
31273	orderId                       string
31274	orderscreatetestreturnrequest *OrdersCreateTestReturnRequest
31275	urlParams_                    gensupport.URLParams
31276	ctx_                          context.Context
31277	header_                       http.Header
31278}
31279
31280// Createtestreturn: Sandbox only. Creates a test return.
31281//
31282// - merchantId: The ID of the account that manages the order. This
31283//   cannot be a multi-client account.
31284// - orderId: The ID of the order.
31285func (r *OrdersService) Createtestreturn(merchantId uint64, orderId string, orderscreatetestreturnrequest *OrdersCreateTestReturnRequest) *OrdersCreatetestreturnCall {
31286	c := &OrdersCreatetestreturnCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31287	c.merchantId = merchantId
31288	c.orderId = orderId
31289	c.orderscreatetestreturnrequest = orderscreatetestreturnrequest
31290	return c
31291}
31292
31293// Fields allows partial responses to be retrieved. See
31294// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31295// for more information.
31296func (c *OrdersCreatetestreturnCall) Fields(s ...googleapi.Field) *OrdersCreatetestreturnCall {
31297	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31298	return c
31299}
31300
31301// Context sets the context to be used in this call's Do method. Any
31302// pending HTTP request will be aborted if the provided context is
31303// canceled.
31304func (c *OrdersCreatetestreturnCall) Context(ctx context.Context) *OrdersCreatetestreturnCall {
31305	c.ctx_ = ctx
31306	return c
31307}
31308
31309// Header returns an http.Header that can be modified by the caller to
31310// add HTTP headers to the request.
31311func (c *OrdersCreatetestreturnCall) Header() http.Header {
31312	if c.header_ == nil {
31313		c.header_ = make(http.Header)
31314	}
31315	return c.header_
31316}
31317
31318func (c *OrdersCreatetestreturnCall) doRequest(alt string) (*http.Response, error) {
31319	reqHeaders := make(http.Header)
31320	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
31321	for k, v := range c.header_ {
31322		reqHeaders[k] = v
31323	}
31324	reqHeaders.Set("User-Agent", c.s.userAgent())
31325	var body io.Reader = nil
31326	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscreatetestreturnrequest)
31327	if err != nil {
31328		return nil, err
31329	}
31330	reqHeaders.Set("Content-Type", "application/json")
31331	c.urlParams_.Set("alt", alt)
31332	c.urlParams_.Set("prettyPrint", "false")
31333	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/testreturn")
31334	urls += "?" + c.urlParams_.Encode()
31335	req, err := http.NewRequest("POST", urls, body)
31336	if err != nil {
31337		return nil, err
31338	}
31339	req.Header = reqHeaders
31340	googleapi.Expand(req.URL, map[string]string{
31341		"merchantId": strconv.FormatUint(c.merchantId, 10),
31342		"orderId":    c.orderId,
31343	})
31344	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31345}
31346
31347// Do executes the "content.orders.createtestreturn" call.
31348// Exactly one of *OrdersCreateTestReturnResponse or error will be
31349// non-nil. Any non-2xx status code is an error. Response headers are in
31350// either *OrdersCreateTestReturnResponse.ServerResponse.Header or (if a
31351// response was returned at all) in error.(*googleapi.Error).Header. Use
31352// googleapi.IsNotModified to check whether the returned error was
31353// because http.StatusNotModified was returned.
31354func (c *OrdersCreatetestreturnCall) Do(opts ...googleapi.CallOption) (*OrdersCreateTestReturnResponse, error) {
31355	gensupport.SetOptions(c.urlParams_, opts...)
31356	res, err := c.doRequest("json")
31357	if res != nil && res.StatusCode == http.StatusNotModified {
31358		if res.Body != nil {
31359			res.Body.Close()
31360		}
31361		return nil, &googleapi.Error{
31362			Code:   res.StatusCode,
31363			Header: res.Header,
31364		}
31365	}
31366	if err != nil {
31367		return nil, err
31368	}
31369	defer googleapi.CloseBody(res)
31370	if err := googleapi.CheckResponse(res); err != nil {
31371		return nil, err
31372	}
31373	ret := &OrdersCreateTestReturnResponse{
31374		ServerResponse: googleapi.ServerResponse{
31375			Header:         res.Header,
31376			HTTPStatusCode: res.StatusCode,
31377		},
31378	}
31379	target := &ret
31380	if err := gensupport.DecodeResponse(target, res); err != nil {
31381		return nil, err
31382	}
31383	return ret, nil
31384	// {
31385	//   "description": "Sandbox only. Creates a test return.",
31386	//   "flatPath": "{merchantId}/orders/{orderId}/testreturn",
31387	//   "httpMethod": "POST",
31388	//   "id": "content.orders.createtestreturn",
31389	//   "parameterOrder": [
31390	//     "merchantId",
31391	//     "orderId"
31392	//   ],
31393	//   "parameters": {
31394	//     "merchantId": {
31395	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
31396	//       "format": "uint64",
31397	//       "location": "path",
31398	//       "required": true,
31399	//       "type": "string"
31400	//     },
31401	//     "orderId": {
31402	//       "description": "The ID of the order.",
31403	//       "location": "path",
31404	//       "required": true,
31405	//       "type": "string"
31406	//     }
31407	//   },
31408	//   "path": "{merchantId}/orders/{orderId}/testreturn",
31409	//   "request": {
31410	//     "$ref": "OrdersCreateTestReturnRequest"
31411	//   },
31412	//   "response": {
31413	//     "$ref": "OrdersCreateTestReturnResponse"
31414	//   },
31415	//   "scopes": [
31416	//     "https://www.googleapis.com/auth/content"
31417	//   ]
31418	// }
31419
31420}
31421
31422// method id "content.orders.get":
31423
31424type OrdersGetCall struct {
31425	s            *APIService
31426	merchantId   uint64
31427	orderId      string
31428	urlParams_   gensupport.URLParams
31429	ifNoneMatch_ string
31430	ctx_         context.Context
31431	header_      http.Header
31432}
31433
31434// Get: Retrieves an order from your Merchant Center account.
31435//
31436// - merchantId: The ID of the account that manages the order. This
31437//   cannot be a multi-client account.
31438// - orderId: The ID of the order.
31439func (r *OrdersService) Get(merchantId uint64, orderId string) *OrdersGetCall {
31440	c := &OrdersGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31441	c.merchantId = merchantId
31442	c.orderId = orderId
31443	return c
31444}
31445
31446// Fields allows partial responses to be retrieved. See
31447// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31448// for more information.
31449func (c *OrdersGetCall) Fields(s ...googleapi.Field) *OrdersGetCall {
31450	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31451	return c
31452}
31453
31454// IfNoneMatch sets the optional parameter which makes the operation
31455// fail if the object's ETag matches the given value. This is useful for
31456// getting updates only after the object has changed since the last
31457// request. Use googleapi.IsNotModified to check whether the response
31458// error from Do is the result of In-None-Match.
31459func (c *OrdersGetCall) IfNoneMatch(entityTag string) *OrdersGetCall {
31460	c.ifNoneMatch_ = entityTag
31461	return c
31462}
31463
31464// Context sets the context to be used in this call's Do method. Any
31465// pending HTTP request will be aborted if the provided context is
31466// canceled.
31467func (c *OrdersGetCall) Context(ctx context.Context) *OrdersGetCall {
31468	c.ctx_ = ctx
31469	return c
31470}
31471
31472// Header returns an http.Header that can be modified by the caller to
31473// add HTTP headers to the request.
31474func (c *OrdersGetCall) Header() http.Header {
31475	if c.header_ == nil {
31476		c.header_ = make(http.Header)
31477	}
31478	return c.header_
31479}
31480
31481func (c *OrdersGetCall) doRequest(alt string) (*http.Response, error) {
31482	reqHeaders := make(http.Header)
31483	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
31484	for k, v := range c.header_ {
31485		reqHeaders[k] = v
31486	}
31487	reqHeaders.Set("User-Agent", c.s.userAgent())
31488	if c.ifNoneMatch_ != "" {
31489		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
31490	}
31491	var body io.Reader = nil
31492	c.urlParams_.Set("alt", alt)
31493	c.urlParams_.Set("prettyPrint", "false")
31494	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}")
31495	urls += "?" + c.urlParams_.Encode()
31496	req, err := http.NewRequest("GET", urls, body)
31497	if err != nil {
31498		return nil, err
31499	}
31500	req.Header = reqHeaders
31501	googleapi.Expand(req.URL, map[string]string{
31502		"merchantId": strconv.FormatUint(c.merchantId, 10),
31503		"orderId":    c.orderId,
31504	})
31505	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31506}
31507
31508// Do executes the "content.orders.get" call.
31509// Exactly one of *Order or error will be non-nil. Any non-2xx status
31510// code is an error. Response headers are in either
31511// *Order.ServerResponse.Header or (if a response was returned at all)
31512// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
31513// check whether the returned error was because http.StatusNotModified
31514// was returned.
31515func (c *OrdersGetCall) Do(opts ...googleapi.CallOption) (*Order, error) {
31516	gensupport.SetOptions(c.urlParams_, opts...)
31517	res, err := c.doRequest("json")
31518	if res != nil && res.StatusCode == http.StatusNotModified {
31519		if res.Body != nil {
31520			res.Body.Close()
31521		}
31522		return nil, &googleapi.Error{
31523			Code:   res.StatusCode,
31524			Header: res.Header,
31525		}
31526	}
31527	if err != nil {
31528		return nil, err
31529	}
31530	defer googleapi.CloseBody(res)
31531	if err := googleapi.CheckResponse(res); err != nil {
31532		return nil, err
31533	}
31534	ret := &Order{
31535		ServerResponse: googleapi.ServerResponse{
31536			Header:         res.Header,
31537			HTTPStatusCode: res.StatusCode,
31538		},
31539	}
31540	target := &ret
31541	if err := gensupport.DecodeResponse(target, res); err != nil {
31542		return nil, err
31543	}
31544	return ret, nil
31545	// {
31546	//   "description": "Retrieves an order from your Merchant Center account.",
31547	//   "flatPath": "{merchantId}/orders/{orderId}",
31548	//   "httpMethod": "GET",
31549	//   "id": "content.orders.get",
31550	//   "parameterOrder": [
31551	//     "merchantId",
31552	//     "orderId"
31553	//   ],
31554	//   "parameters": {
31555	//     "merchantId": {
31556	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
31557	//       "format": "uint64",
31558	//       "location": "path",
31559	//       "required": true,
31560	//       "type": "string"
31561	//     },
31562	//     "orderId": {
31563	//       "description": "The ID of the order.",
31564	//       "location": "path",
31565	//       "required": true,
31566	//       "type": "string"
31567	//     }
31568	//   },
31569	//   "path": "{merchantId}/orders/{orderId}",
31570	//   "response": {
31571	//     "$ref": "Order"
31572	//   },
31573	//   "scopes": [
31574	//     "https://www.googleapis.com/auth/content"
31575	//   ]
31576	// }
31577
31578}
31579
31580// method id "content.orders.getbymerchantorderid":
31581
31582type OrdersGetbymerchantorderidCall struct {
31583	s               *APIService
31584	merchantId      uint64
31585	merchantOrderId string
31586	urlParams_      gensupport.URLParams
31587	ifNoneMatch_    string
31588	ctx_            context.Context
31589	header_         http.Header
31590}
31591
31592// Getbymerchantorderid: Retrieves an order using merchant order ID.
31593//
31594// - merchantId: The ID of the account that manages the order. This
31595//   cannot be a multi-client account.
31596// - merchantOrderId: The merchant order ID to be looked for.
31597func (r *OrdersService) Getbymerchantorderid(merchantId uint64, merchantOrderId string) *OrdersGetbymerchantorderidCall {
31598	c := &OrdersGetbymerchantorderidCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31599	c.merchantId = merchantId
31600	c.merchantOrderId = merchantOrderId
31601	return c
31602}
31603
31604// Fields allows partial responses to be retrieved. See
31605// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31606// for more information.
31607func (c *OrdersGetbymerchantorderidCall) Fields(s ...googleapi.Field) *OrdersGetbymerchantorderidCall {
31608	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31609	return c
31610}
31611
31612// IfNoneMatch sets the optional parameter which makes the operation
31613// fail if the object's ETag matches the given value. This is useful for
31614// getting updates only after the object has changed since the last
31615// request. Use googleapi.IsNotModified to check whether the response
31616// error from Do is the result of In-None-Match.
31617func (c *OrdersGetbymerchantorderidCall) IfNoneMatch(entityTag string) *OrdersGetbymerchantorderidCall {
31618	c.ifNoneMatch_ = entityTag
31619	return c
31620}
31621
31622// Context sets the context to be used in this call's Do method. Any
31623// pending HTTP request will be aborted if the provided context is
31624// canceled.
31625func (c *OrdersGetbymerchantorderidCall) Context(ctx context.Context) *OrdersGetbymerchantorderidCall {
31626	c.ctx_ = ctx
31627	return c
31628}
31629
31630// Header returns an http.Header that can be modified by the caller to
31631// add HTTP headers to the request.
31632func (c *OrdersGetbymerchantorderidCall) Header() http.Header {
31633	if c.header_ == nil {
31634		c.header_ = make(http.Header)
31635	}
31636	return c.header_
31637}
31638
31639func (c *OrdersGetbymerchantorderidCall) doRequest(alt string) (*http.Response, error) {
31640	reqHeaders := make(http.Header)
31641	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
31642	for k, v := range c.header_ {
31643		reqHeaders[k] = v
31644	}
31645	reqHeaders.Set("User-Agent", c.s.userAgent())
31646	if c.ifNoneMatch_ != "" {
31647		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
31648	}
31649	var body io.Reader = nil
31650	c.urlParams_.Set("alt", alt)
31651	c.urlParams_.Set("prettyPrint", "false")
31652	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/ordersbymerchantid/{merchantOrderId}")
31653	urls += "?" + c.urlParams_.Encode()
31654	req, err := http.NewRequest("GET", urls, body)
31655	if err != nil {
31656		return nil, err
31657	}
31658	req.Header = reqHeaders
31659	googleapi.Expand(req.URL, map[string]string{
31660		"merchantId":      strconv.FormatUint(c.merchantId, 10),
31661		"merchantOrderId": c.merchantOrderId,
31662	})
31663	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31664}
31665
31666// Do executes the "content.orders.getbymerchantorderid" call.
31667// Exactly one of *OrdersGetByMerchantOrderIdResponse or error will be
31668// non-nil. Any non-2xx status code is an error. Response headers are in
31669// either *OrdersGetByMerchantOrderIdResponse.ServerResponse.Header or
31670// (if a response was returned at all) in
31671// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
31672// whether the returned error was because http.StatusNotModified was
31673// returned.
31674func (c *OrdersGetbymerchantorderidCall) Do(opts ...googleapi.CallOption) (*OrdersGetByMerchantOrderIdResponse, error) {
31675	gensupport.SetOptions(c.urlParams_, opts...)
31676	res, err := c.doRequest("json")
31677	if res != nil && res.StatusCode == http.StatusNotModified {
31678		if res.Body != nil {
31679			res.Body.Close()
31680		}
31681		return nil, &googleapi.Error{
31682			Code:   res.StatusCode,
31683			Header: res.Header,
31684		}
31685	}
31686	if err != nil {
31687		return nil, err
31688	}
31689	defer googleapi.CloseBody(res)
31690	if err := googleapi.CheckResponse(res); err != nil {
31691		return nil, err
31692	}
31693	ret := &OrdersGetByMerchantOrderIdResponse{
31694		ServerResponse: googleapi.ServerResponse{
31695			Header:         res.Header,
31696			HTTPStatusCode: res.StatusCode,
31697		},
31698	}
31699	target := &ret
31700	if err := gensupport.DecodeResponse(target, res); err != nil {
31701		return nil, err
31702	}
31703	return ret, nil
31704	// {
31705	//   "description": "Retrieves an order using merchant order ID.",
31706	//   "flatPath": "{merchantId}/ordersbymerchantid/{merchantOrderId}",
31707	//   "httpMethod": "GET",
31708	//   "id": "content.orders.getbymerchantorderid",
31709	//   "parameterOrder": [
31710	//     "merchantId",
31711	//     "merchantOrderId"
31712	//   ],
31713	//   "parameters": {
31714	//     "merchantId": {
31715	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
31716	//       "format": "uint64",
31717	//       "location": "path",
31718	//       "required": true,
31719	//       "type": "string"
31720	//     },
31721	//     "merchantOrderId": {
31722	//       "description": "The merchant order ID to be looked for.",
31723	//       "location": "path",
31724	//       "required": true,
31725	//       "type": "string"
31726	//     }
31727	//   },
31728	//   "path": "{merchantId}/ordersbymerchantid/{merchantOrderId}",
31729	//   "response": {
31730	//     "$ref": "OrdersGetByMerchantOrderIdResponse"
31731	//   },
31732	//   "scopes": [
31733	//     "https://www.googleapis.com/auth/content"
31734	//   ]
31735	// }
31736
31737}
31738
31739// method id "content.orders.gettestordertemplate":
31740
31741type OrdersGettestordertemplateCall struct {
31742	s            *APIService
31743	merchantId   uint64
31744	templateName string
31745	urlParams_   gensupport.URLParams
31746	ifNoneMatch_ string
31747	ctx_         context.Context
31748	header_      http.Header
31749}
31750
31751// Gettestordertemplate: Sandbox only. Retrieves an order template that
31752// can be used to quickly create a new order in sandbox.
31753//
31754// - merchantId: The ID of the account that should manage the order.
31755//   This cannot be a multi-client account.
31756// - templateName: The name of the template to retrieve.
31757func (r *OrdersService) Gettestordertemplate(merchantId uint64, templateName string) *OrdersGettestordertemplateCall {
31758	c := &OrdersGettestordertemplateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31759	c.merchantId = merchantId
31760	c.templateName = templateName
31761	return c
31762}
31763
31764// Country sets the optional parameter "country": The country of the
31765// template to retrieve. Defaults to `US`.
31766func (c *OrdersGettestordertemplateCall) Country(country string) *OrdersGettestordertemplateCall {
31767	c.urlParams_.Set("country", country)
31768	return c
31769}
31770
31771// Fields allows partial responses to be retrieved. See
31772// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31773// for more information.
31774func (c *OrdersGettestordertemplateCall) Fields(s ...googleapi.Field) *OrdersGettestordertemplateCall {
31775	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31776	return c
31777}
31778
31779// IfNoneMatch sets the optional parameter which makes the operation
31780// fail if the object's ETag matches the given value. This is useful for
31781// getting updates only after the object has changed since the last
31782// request. Use googleapi.IsNotModified to check whether the response
31783// error from Do is the result of In-None-Match.
31784func (c *OrdersGettestordertemplateCall) IfNoneMatch(entityTag string) *OrdersGettestordertemplateCall {
31785	c.ifNoneMatch_ = entityTag
31786	return c
31787}
31788
31789// Context sets the context to be used in this call's Do method. Any
31790// pending HTTP request will be aborted if the provided context is
31791// canceled.
31792func (c *OrdersGettestordertemplateCall) Context(ctx context.Context) *OrdersGettestordertemplateCall {
31793	c.ctx_ = ctx
31794	return c
31795}
31796
31797// Header returns an http.Header that can be modified by the caller to
31798// add HTTP headers to the request.
31799func (c *OrdersGettestordertemplateCall) Header() http.Header {
31800	if c.header_ == nil {
31801		c.header_ = make(http.Header)
31802	}
31803	return c.header_
31804}
31805
31806func (c *OrdersGettestordertemplateCall) doRequest(alt string) (*http.Response, error) {
31807	reqHeaders := make(http.Header)
31808	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
31809	for k, v := range c.header_ {
31810		reqHeaders[k] = v
31811	}
31812	reqHeaders.Set("User-Agent", c.s.userAgent())
31813	if c.ifNoneMatch_ != "" {
31814		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
31815	}
31816	var body io.Reader = nil
31817	c.urlParams_.Set("alt", alt)
31818	c.urlParams_.Set("prettyPrint", "false")
31819	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/testordertemplates/{templateName}")
31820	urls += "?" + c.urlParams_.Encode()
31821	req, err := http.NewRequest("GET", urls, body)
31822	if err != nil {
31823		return nil, err
31824	}
31825	req.Header = reqHeaders
31826	googleapi.Expand(req.URL, map[string]string{
31827		"merchantId":   strconv.FormatUint(c.merchantId, 10),
31828		"templateName": c.templateName,
31829	})
31830	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31831}
31832
31833// Do executes the "content.orders.gettestordertemplate" call.
31834// Exactly one of *OrdersGetTestOrderTemplateResponse or error will be
31835// non-nil. Any non-2xx status code is an error. Response headers are in
31836// either *OrdersGetTestOrderTemplateResponse.ServerResponse.Header or
31837// (if a response was returned at all) in
31838// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
31839// whether the returned error was because http.StatusNotModified was
31840// returned.
31841func (c *OrdersGettestordertemplateCall) Do(opts ...googleapi.CallOption) (*OrdersGetTestOrderTemplateResponse, error) {
31842	gensupport.SetOptions(c.urlParams_, opts...)
31843	res, err := c.doRequest("json")
31844	if res != nil && res.StatusCode == http.StatusNotModified {
31845		if res.Body != nil {
31846			res.Body.Close()
31847		}
31848		return nil, &googleapi.Error{
31849			Code:   res.StatusCode,
31850			Header: res.Header,
31851		}
31852	}
31853	if err != nil {
31854		return nil, err
31855	}
31856	defer googleapi.CloseBody(res)
31857	if err := googleapi.CheckResponse(res); err != nil {
31858		return nil, err
31859	}
31860	ret := &OrdersGetTestOrderTemplateResponse{
31861		ServerResponse: googleapi.ServerResponse{
31862			Header:         res.Header,
31863			HTTPStatusCode: res.StatusCode,
31864		},
31865	}
31866	target := &ret
31867	if err := gensupport.DecodeResponse(target, res); err != nil {
31868		return nil, err
31869	}
31870	return ret, nil
31871	// {
31872	//   "description": "Sandbox only. Retrieves an order template that can be used to quickly create a new order in sandbox.",
31873	//   "flatPath": "{merchantId}/testordertemplates/{templateName}",
31874	//   "httpMethod": "GET",
31875	//   "id": "content.orders.gettestordertemplate",
31876	//   "parameterOrder": [
31877	//     "merchantId",
31878	//     "templateName"
31879	//   ],
31880	//   "parameters": {
31881	//     "country": {
31882	//       "description": "The country of the template to retrieve. Defaults to `US`.",
31883	//       "location": "query",
31884	//       "type": "string"
31885	//     },
31886	//     "merchantId": {
31887	//       "description": "The ID of the account that should manage the order. This cannot be a multi-client account.",
31888	//       "format": "uint64",
31889	//       "location": "path",
31890	//       "required": true,
31891	//       "type": "string"
31892	//     },
31893	//     "templateName": {
31894	//       "description": "The name of the template to retrieve.",
31895	//       "enum": [
31896	//         "TEMPLATE1",
31897	//         "TEMPLATE2",
31898	//         "TEMPLATE1A",
31899	//         "TEMPLATE1B",
31900	//         "TEMPLATE3",
31901	//         "TEMPLATE4"
31902	//       ],
31903	//       "enumDescriptions": [
31904	//         "Get `template1`.",
31905	//         "Get `template2`.",
31906	//         "Get `template1A`.",
31907	//         "Get `template1B`.",
31908	//         "Get `template3`.",
31909	//         "Get `template4`."
31910	//       ],
31911	//       "location": "path",
31912	//       "required": true,
31913	//       "type": "string"
31914	//     }
31915	//   },
31916	//   "path": "{merchantId}/testordertemplates/{templateName}",
31917	//   "response": {
31918	//     "$ref": "OrdersGetTestOrderTemplateResponse"
31919	//   },
31920	//   "scopes": [
31921	//     "https://www.googleapis.com/auth/content"
31922	//   ]
31923	// }
31924
31925}
31926
31927// method id "content.orders.instorerefundlineitem":
31928
31929type OrdersInstorerefundlineitemCall struct {
31930	s                                  *APIService
31931	merchantId                         uint64
31932	orderId                            string
31933	ordersinstorerefundlineitemrequest *OrdersInStoreRefundLineItemRequest
31934	urlParams_                         gensupport.URLParams
31935	ctx_                               context.Context
31936	header_                            http.Header
31937}
31938
31939// Instorerefundlineitem: Deprecated. Notifies that item return and
31940// refund was handled directly by merchant outside of Google payments
31941// processing (e.g. cash refund done in store). Note: We recommend
31942// calling the returnrefundlineitem method to refund in-store returns.
31943// We will issue the refund directly to the customer. This helps to
31944// prevent possible differences arising between merchant and Google
31945// transaction records. We also recommend having the point of sale
31946// system communicate with Google to ensure that customers do not
31947// receive a double refund by first refunding via Google then via an
31948// in-store return.
31949//
31950// - merchantId: The ID of the account that manages the order. This
31951//   cannot be a multi-client account.
31952// - orderId: The ID of the order.
31953func (r *OrdersService) Instorerefundlineitem(merchantId uint64, orderId string, ordersinstorerefundlineitemrequest *OrdersInStoreRefundLineItemRequest) *OrdersInstorerefundlineitemCall {
31954	c := &OrdersInstorerefundlineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31955	c.merchantId = merchantId
31956	c.orderId = orderId
31957	c.ordersinstorerefundlineitemrequest = ordersinstorerefundlineitemrequest
31958	return c
31959}
31960
31961// Fields allows partial responses to be retrieved. See
31962// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31963// for more information.
31964func (c *OrdersInstorerefundlineitemCall) Fields(s ...googleapi.Field) *OrdersInstorerefundlineitemCall {
31965	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31966	return c
31967}
31968
31969// Context sets the context to be used in this call's Do method. Any
31970// pending HTTP request will be aborted if the provided context is
31971// canceled.
31972func (c *OrdersInstorerefundlineitemCall) Context(ctx context.Context) *OrdersInstorerefundlineitemCall {
31973	c.ctx_ = ctx
31974	return c
31975}
31976
31977// Header returns an http.Header that can be modified by the caller to
31978// add HTTP headers to the request.
31979func (c *OrdersInstorerefundlineitemCall) Header() http.Header {
31980	if c.header_ == nil {
31981		c.header_ = make(http.Header)
31982	}
31983	return c.header_
31984}
31985
31986func (c *OrdersInstorerefundlineitemCall) doRequest(alt string) (*http.Response, error) {
31987	reqHeaders := make(http.Header)
31988	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
31989	for k, v := range c.header_ {
31990		reqHeaders[k] = v
31991	}
31992	reqHeaders.Set("User-Agent", c.s.userAgent())
31993	var body io.Reader = nil
31994	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersinstorerefundlineitemrequest)
31995	if err != nil {
31996		return nil, err
31997	}
31998	reqHeaders.Set("Content-Type", "application/json")
31999	c.urlParams_.Set("alt", alt)
32000	c.urlParams_.Set("prettyPrint", "false")
32001	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/inStoreRefundLineItem")
32002	urls += "?" + c.urlParams_.Encode()
32003	req, err := http.NewRequest("POST", urls, body)
32004	if err != nil {
32005		return nil, err
32006	}
32007	req.Header = reqHeaders
32008	googleapi.Expand(req.URL, map[string]string{
32009		"merchantId": strconv.FormatUint(c.merchantId, 10),
32010		"orderId":    c.orderId,
32011	})
32012	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32013}
32014
32015// Do executes the "content.orders.instorerefundlineitem" call.
32016// Exactly one of *OrdersInStoreRefundLineItemResponse or error will be
32017// non-nil. Any non-2xx status code is an error. Response headers are in
32018// either *OrdersInStoreRefundLineItemResponse.ServerResponse.Header or
32019// (if a response was returned at all) in
32020// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
32021// whether the returned error was because http.StatusNotModified was
32022// returned.
32023func (c *OrdersInstorerefundlineitemCall) Do(opts ...googleapi.CallOption) (*OrdersInStoreRefundLineItemResponse, error) {
32024	gensupport.SetOptions(c.urlParams_, opts...)
32025	res, err := c.doRequest("json")
32026	if res != nil && res.StatusCode == http.StatusNotModified {
32027		if res.Body != nil {
32028			res.Body.Close()
32029		}
32030		return nil, &googleapi.Error{
32031			Code:   res.StatusCode,
32032			Header: res.Header,
32033		}
32034	}
32035	if err != nil {
32036		return nil, err
32037	}
32038	defer googleapi.CloseBody(res)
32039	if err := googleapi.CheckResponse(res); err != nil {
32040		return nil, err
32041	}
32042	ret := &OrdersInStoreRefundLineItemResponse{
32043		ServerResponse: googleapi.ServerResponse{
32044			Header:         res.Header,
32045			HTTPStatusCode: res.StatusCode,
32046		},
32047	}
32048	target := &ret
32049	if err := gensupport.DecodeResponse(target, res); err != nil {
32050		return nil, err
32051	}
32052	return ret, nil
32053	// {
32054	//   "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.",
32055	//   "flatPath": "{merchantId}/orders/{orderId}/inStoreRefundLineItem",
32056	//   "httpMethod": "POST",
32057	//   "id": "content.orders.instorerefundlineitem",
32058	//   "parameterOrder": [
32059	//     "merchantId",
32060	//     "orderId"
32061	//   ],
32062	//   "parameters": {
32063	//     "merchantId": {
32064	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
32065	//       "format": "uint64",
32066	//       "location": "path",
32067	//       "required": true,
32068	//       "type": "string"
32069	//     },
32070	//     "orderId": {
32071	//       "description": "The ID of the order.",
32072	//       "location": "path",
32073	//       "required": true,
32074	//       "type": "string"
32075	//     }
32076	//   },
32077	//   "path": "{merchantId}/orders/{orderId}/inStoreRefundLineItem",
32078	//   "request": {
32079	//     "$ref": "OrdersInStoreRefundLineItemRequest"
32080	//   },
32081	//   "response": {
32082	//     "$ref": "OrdersInStoreRefundLineItemResponse"
32083	//   },
32084	//   "scopes": [
32085	//     "https://www.googleapis.com/auth/content"
32086	//   ]
32087	// }
32088
32089}
32090
32091// method id "content.orders.list":
32092
32093type OrdersListCall struct {
32094	s            *APIService
32095	merchantId   uint64
32096	urlParams_   gensupport.URLParams
32097	ifNoneMatch_ string
32098	ctx_         context.Context
32099	header_      http.Header
32100}
32101
32102// List: Lists the orders in your Merchant Center account.
32103//
32104// - merchantId: The ID of the account that manages the order. This
32105//   cannot be a multi-client account.
32106func (r *OrdersService) List(merchantId uint64) *OrdersListCall {
32107	c := &OrdersListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32108	c.merchantId = merchantId
32109	return c
32110}
32111
32112// Acknowledged sets the optional parameter "acknowledged": Obtains
32113// orders that match the acknowledgement status. When set to true,
32114// obtains orders that have been acknowledged. When false, obtains
32115// orders that have not been acknowledged. We recommend using this
32116// filter set to `false`, in conjunction with the `acknowledge` call,
32117// such that only un-acknowledged orders are returned.
32118func (c *OrdersListCall) Acknowledged(acknowledged bool) *OrdersListCall {
32119	c.urlParams_.Set("acknowledged", fmt.Sprint(acknowledged))
32120	return c
32121}
32122
32123// MaxResults sets the optional parameter "maxResults": The maximum
32124// number of orders to return in the response, used for paging. The
32125// default value is 25 orders per page, and the maximum allowed value is
32126// 250 orders per page.
32127func (c *OrdersListCall) MaxResults(maxResults int64) *OrdersListCall {
32128	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
32129	return c
32130}
32131
32132// OrderBy sets the optional parameter "orderBy": Order results by
32133// placement date in descending or ascending order. Acceptable values
32134// are: - placedDateAsc - placedDateDesc
32135func (c *OrdersListCall) OrderBy(orderBy string) *OrdersListCall {
32136	c.urlParams_.Set("orderBy", orderBy)
32137	return c
32138}
32139
32140// PageToken sets the optional parameter "pageToken": The token returned
32141// by the previous request.
32142func (c *OrdersListCall) PageToken(pageToken string) *OrdersListCall {
32143	c.urlParams_.Set("pageToken", pageToken)
32144	return c
32145}
32146
32147// PlacedDateEnd sets the optional parameter "placedDateEnd": Obtains
32148// orders placed before this date (exclusively), in ISO 8601 format.
32149func (c *OrdersListCall) PlacedDateEnd(placedDateEnd string) *OrdersListCall {
32150	c.urlParams_.Set("placedDateEnd", placedDateEnd)
32151	return c
32152}
32153
32154// PlacedDateStart sets the optional parameter "placedDateStart":
32155// Obtains orders placed after this date (inclusively), in ISO 8601
32156// format.
32157func (c *OrdersListCall) PlacedDateStart(placedDateStart string) *OrdersListCall {
32158	c.urlParams_.Set("placedDateStart", placedDateStart)
32159	return c
32160}
32161
32162// Statuses sets the optional parameter "statuses": Obtains orders that
32163// match any of the specified statuses. Please note that `active` is a
32164// shortcut for `pendingShipment` and `partiallyShipped`, and
32165// `completed` is a shortcut for `shipped`, `partiallyDelivered`,
32166// `delivered`, `partiallyReturned`, `returned`, and `canceled`.
32167//
32168// Possible values:
32169//   "ACTIVE" - Return orders with status `active`. The `active` status
32170// includes `pendingShipment` and `partiallyShipped` orders.
32171//   "COMPLETED" - Return orders with status `completed`. The
32172// `completed` status includes `shipped`, `partiallyDelivered`,
32173// `delivered`, `partiallyReturned`, `returned`, and `canceled` orders.
32174//   "CANCELED" - Return orders with status `canceled`.
32175//   "IN_PROGRESS" - Return orders with status `inProgress`.
32176//   "PENDING_SHIPMENT" - Return orders with status `pendingShipment`.
32177//   "PARTIALLY_SHIPPED" - Return orders with status `partiallyShipped`.
32178//   "SHIPPED" - Return orders with status `shipped`.
32179//   "PARTIALLY_DELIVERED" - Return orders with status
32180// `partiallyDelivered`.
32181//   "DELIVERED" - Return orders with status `delivered`.
32182//   "PARTIALLY_RETURNED" - Return orders with status
32183// `partiallyReturned`.
32184//   "RETURNED" - Return orders with status `returned`.
32185func (c *OrdersListCall) Statuses(statuses ...string) *OrdersListCall {
32186	c.urlParams_.SetMulti("statuses", append([]string{}, statuses...))
32187	return c
32188}
32189
32190// Fields allows partial responses to be retrieved. See
32191// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32192// for more information.
32193func (c *OrdersListCall) Fields(s ...googleapi.Field) *OrdersListCall {
32194	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32195	return c
32196}
32197
32198// IfNoneMatch sets the optional parameter which makes the operation
32199// fail if the object's ETag matches the given value. This is useful for
32200// getting updates only after the object has changed since the last
32201// request. Use googleapi.IsNotModified to check whether the response
32202// error from Do is the result of In-None-Match.
32203func (c *OrdersListCall) IfNoneMatch(entityTag string) *OrdersListCall {
32204	c.ifNoneMatch_ = entityTag
32205	return c
32206}
32207
32208// Context sets the context to be used in this call's Do method. Any
32209// pending HTTP request will be aborted if the provided context is
32210// canceled.
32211func (c *OrdersListCall) Context(ctx context.Context) *OrdersListCall {
32212	c.ctx_ = ctx
32213	return c
32214}
32215
32216// Header returns an http.Header that can be modified by the caller to
32217// add HTTP headers to the request.
32218func (c *OrdersListCall) Header() http.Header {
32219	if c.header_ == nil {
32220		c.header_ = make(http.Header)
32221	}
32222	return c.header_
32223}
32224
32225func (c *OrdersListCall) doRequest(alt string) (*http.Response, error) {
32226	reqHeaders := make(http.Header)
32227	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
32228	for k, v := range c.header_ {
32229		reqHeaders[k] = v
32230	}
32231	reqHeaders.Set("User-Agent", c.s.userAgent())
32232	if c.ifNoneMatch_ != "" {
32233		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
32234	}
32235	var body io.Reader = nil
32236	c.urlParams_.Set("alt", alt)
32237	c.urlParams_.Set("prettyPrint", "false")
32238	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders")
32239	urls += "?" + c.urlParams_.Encode()
32240	req, err := http.NewRequest("GET", urls, body)
32241	if err != nil {
32242		return nil, err
32243	}
32244	req.Header = reqHeaders
32245	googleapi.Expand(req.URL, map[string]string{
32246		"merchantId": strconv.FormatUint(c.merchantId, 10),
32247	})
32248	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32249}
32250
32251// Do executes the "content.orders.list" call.
32252// Exactly one of *OrdersListResponse or error will be non-nil. Any
32253// non-2xx status code is an error. Response headers are in either
32254// *OrdersListResponse.ServerResponse.Header or (if a response was
32255// returned at all) in error.(*googleapi.Error).Header. Use
32256// googleapi.IsNotModified to check whether the returned error was
32257// because http.StatusNotModified was returned.
32258func (c *OrdersListCall) Do(opts ...googleapi.CallOption) (*OrdersListResponse, error) {
32259	gensupport.SetOptions(c.urlParams_, opts...)
32260	res, err := c.doRequest("json")
32261	if res != nil && res.StatusCode == http.StatusNotModified {
32262		if res.Body != nil {
32263			res.Body.Close()
32264		}
32265		return nil, &googleapi.Error{
32266			Code:   res.StatusCode,
32267			Header: res.Header,
32268		}
32269	}
32270	if err != nil {
32271		return nil, err
32272	}
32273	defer googleapi.CloseBody(res)
32274	if err := googleapi.CheckResponse(res); err != nil {
32275		return nil, err
32276	}
32277	ret := &OrdersListResponse{
32278		ServerResponse: googleapi.ServerResponse{
32279			Header:         res.Header,
32280			HTTPStatusCode: res.StatusCode,
32281		},
32282	}
32283	target := &ret
32284	if err := gensupport.DecodeResponse(target, res); err != nil {
32285		return nil, err
32286	}
32287	return ret, nil
32288	// {
32289	//   "description": "Lists the orders in your Merchant Center account.",
32290	//   "flatPath": "{merchantId}/orders",
32291	//   "httpMethod": "GET",
32292	//   "id": "content.orders.list",
32293	//   "parameterOrder": [
32294	//     "merchantId"
32295	//   ],
32296	//   "parameters": {
32297	//     "acknowledged": {
32298	//       "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. ",
32299	//       "location": "query",
32300	//       "type": "boolean"
32301	//     },
32302	//     "maxResults": {
32303	//       "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.",
32304	//       "format": "uint32",
32305	//       "location": "query",
32306	//       "type": "integer"
32307	//     },
32308	//     "merchantId": {
32309	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
32310	//       "format": "uint64",
32311	//       "location": "path",
32312	//       "required": true,
32313	//       "type": "string"
32314	//     },
32315	//     "orderBy": {
32316	//       "description": "Order results by placement date in descending or ascending order. Acceptable values are: - placedDateAsc - placedDateDesc ",
32317	//       "location": "query",
32318	//       "type": "string"
32319	//     },
32320	//     "pageToken": {
32321	//       "description": "The token returned by the previous request.",
32322	//       "location": "query",
32323	//       "type": "string"
32324	//     },
32325	//     "placedDateEnd": {
32326	//       "description": "Obtains orders placed before this date (exclusively), in ISO 8601 format.",
32327	//       "location": "query",
32328	//       "type": "string"
32329	//     },
32330	//     "placedDateStart": {
32331	//       "description": "Obtains orders placed after this date (inclusively), in ISO 8601 format.",
32332	//       "location": "query",
32333	//       "type": "string"
32334	//     },
32335	//     "statuses": {
32336	//       "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`.",
32337	//       "enum": [
32338	//         "ACTIVE",
32339	//         "COMPLETED",
32340	//         "CANCELED",
32341	//         "IN_PROGRESS",
32342	//         "PENDING_SHIPMENT",
32343	//         "PARTIALLY_SHIPPED",
32344	//         "SHIPPED",
32345	//         "PARTIALLY_DELIVERED",
32346	//         "DELIVERED",
32347	//         "PARTIALLY_RETURNED",
32348	//         "RETURNED"
32349	//       ],
32350	//       "enumDescriptions": [
32351	//         "Return orders with status `active`. The `active` status includes `pendingShipment` and `partiallyShipped` orders.",
32352	//         "Return orders with status `completed`. The `completed` status includes `shipped`, `partiallyDelivered`, `delivered`, `partiallyReturned`, `returned`, and `canceled` orders.",
32353	//         "Return orders with status `canceled`.",
32354	//         "Return orders with status `inProgress`.",
32355	//         "Return orders with status `pendingShipment`.",
32356	//         "Return orders with status `partiallyShipped`.",
32357	//         "Return orders with status `shipped`.",
32358	//         "Return orders with status `partiallyDelivered`.",
32359	//         "Return orders with status `delivered`.",
32360	//         "Return orders with status `partiallyReturned`.",
32361	//         "Return orders with status `returned`."
32362	//       ],
32363	//       "location": "query",
32364	//       "repeated": true,
32365	//       "type": "string"
32366	//     }
32367	//   },
32368	//   "path": "{merchantId}/orders",
32369	//   "response": {
32370	//     "$ref": "OrdersListResponse"
32371	//   },
32372	//   "scopes": [
32373	//     "https://www.googleapis.com/auth/content"
32374	//   ]
32375	// }
32376
32377}
32378
32379// Pages invokes f for each page of results.
32380// A non-nil error returned from f will halt the iteration.
32381// The provided context supersedes any context provided to the Context method.
32382func (c *OrdersListCall) Pages(ctx context.Context, f func(*OrdersListResponse) error) error {
32383	c.ctx_ = ctx
32384	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
32385	for {
32386		x, err := c.Do()
32387		if err != nil {
32388			return err
32389		}
32390		if err := f(x); err != nil {
32391			return err
32392		}
32393		if x.NextPageToken == "" {
32394			return nil
32395		}
32396		c.PageToken(x.NextPageToken)
32397	}
32398}
32399
32400// method id "content.orders.refunditem":
32401
32402type OrdersRefunditemCall struct {
32403	s                       *APIService
32404	merchantId              uint64
32405	orderId                 string
32406	ordersrefunditemrequest *OrdersRefundItemRequest
32407	urlParams_              gensupport.URLParams
32408	ctx_                    context.Context
32409	header_                 http.Header
32410}
32411
32412// Refunditem: Issues a partial or total refund for items and shipment.
32413//
32414// - merchantId: The ID of the account that manages the order. This
32415//   cannot be a multi-client account.
32416// - orderId: The ID of the order to refund.
32417func (r *OrdersService) Refunditem(merchantId uint64, orderId string, ordersrefunditemrequest *OrdersRefundItemRequest) *OrdersRefunditemCall {
32418	c := &OrdersRefunditemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32419	c.merchantId = merchantId
32420	c.orderId = orderId
32421	c.ordersrefunditemrequest = ordersrefunditemrequest
32422	return c
32423}
32424
32425// Fields allows partial responses to be retrieved. See
32426// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32427// for more information.
32428func (c *OrdersRefunditemCall) Fields(s ...googleapi.Field) *OrdersRefunditemCall {
32429	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32430	return c
32431}
32432
32433// Context sets the context to be used in this call's Do method. Any
32434// pending HTTP request will be aborted if the provided context is
32435// canceled.
32436func (c *OrdersRefunditemCall) Context(ctx context.Context) *OrdersRefunditemCall {
32437	c.ctx_ = ctx
32438	return c
32439}
32440
32441// Header returns an http.Header that can be modified by the caller to
32442// add HTTP headers to the request.
32443func (c *OrdersRefunditemCall) Header() http.Header {
32444	if c.header_ == nil {
32445		c.header_ = make(http.Header)
32446	}
32447	return c.header_
32448}
32449
32450func (c *OrdersRefunditemCall) doRequest(alt string) (*http.Response, error) {
32451	reqHeaders := make(http.Header)
32452	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
32453	for k, v := range c.header_ {
32454		reqHeaders[k] = v
32455	}
32456	reqHeaders.Set("User-Agent", c.s.userAgent())
32457	var body io.Reader = nil
32458	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersrefunditemrequest)
32459	if err != nil {
32460		return nil, err
32461	}
32462	reqHeaders.Set("Content-Type", "application/json")
32463	c.urlParams_.Set("alt", alt)
32464	c.urlParams_.Set("prettyPrint", "false")
32465	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/refunditem")
32466	urls += "?" + c.urlParams_.Encode()
32467	req, err := http.NewRequest("POST", urls, body)
32468	if err != nil {
32469		return nil, err
32470	}
32471	req.Header = reqHeaders
32472	googleapi.Expand(req.URL, map[string]string{
32473		"merchantId": strconv.FormatUint(c.merchantId, 10),
32474		"orderId":    c.orderId,
32475	})
32476	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32477}
32478
32479// Do executes the "content.orders.refunditem" call.
32480// Exactly one of *OrdersRefundItemResponse or error will be non-nil.
32481// Any non-2xx status code is an error. Response headers are in either
32482// *OrdersRefundItemResponse.ServerResponse.Header or (if a response was
32483// returned at all) in error.(*googleapi.Error).Header. Use
32484// googleapi.IsNotModified to check whether the returned error was
32485// because http.StatusNotModified was returned.
32486func (c *OrdersRefunditemCall) Do(opts ...googleapi.CallOption) (*OrdersRefundItemResponse, error) {
32487	gensupport.SetOptions(c.urlParams_, opts...)
32488	res, err := c.doRequest("json")
32489	if res != nil && res.StatusCode == http.StatusNotModified {
32490		if res.Body != nil {
32491			res.Body.Close()
32492		}
32493		return nil, &googleapi.Error{
32494			Code:   res.StatusCode,
32495			Header: res.Header,
32496		}
32497	}
32498	if err != nil {
32499		return nil, err
32500	}
32501	defer googleapi.CloseBody(res)
32502	if err := googleapi.CheckResponse(res); err != nil {
32503		return nil, err
32504	}
32505	ret := &OrdersRefundItemResponse{
32506		ServerResponse: googleapi.ServerResponse{
32507			Header:         res.Header,
32508			HTTPStatusCode: res.StatusCode,
32509		},
32510	}
32511	target := &ret
32512	if err := gensupport.DecodeResponse(target, res); err != nil {
32513		return nil, err
32514	}
32515	return ret, nil
32516	// {
32517	//   "description": "Issues a partial or total refund for items and shipment.",
32518	//   "flatPath": "{merchantId}/orders/{orderId}/refunditem",
32519	//   "httpMethod": "POST",
32520	//   "id": "content.orders.refunditem",
32521	//   "parameterOrder": [
32522	//     "merchantId",
32523	//     "orderId"
32524	//   ],
32525	//   "parameters": {
32526	//     "merchantId": {
32527	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
32528	//       "format": "uint64",
32529	//       "location": "path",
32530	//       "required": true,
32531	//       "type": "string"
32532	//     },
32533	//     "orderId": {
32534	//       "description": "The ID of the order to refund.",
32535	//       "location": "path",
32536	//       "required": true,
32537	//       "type": "string"
32538	//     }
32539	//   },
32540	//   "path": "{merchantId}/orders/{orderId}/refunditem",
32541	//   "request": {
32542	//     "$ref": "OrdersRefundItemRequest"
32543	//   },
32544	//   "response": {
32545	//     "$ref": "OrdersRefundItemResponse"
32546	//   },
32547	//   "scopes": [
32548	//     "https://www.googleapis.com/auth/content"
32549	//   ]
32550	// }
32551
32552}
32553
32554// method id "content.orders.refundorder":
32555
32556type OrdersRefundorderCall struct {
32557	s                        *APIService
32558	merchantId               uint64
32559	orderId                  string
32560	ordersrefundorderrequest *OrdersRefundOrderRequest
32561	urlParams_               gensupport.URLParams
32562	ctx_                     context.Context
32563	header_                  http.Header
32564}
32565
32566// Refundorder: Issues a partial or total refund for an order.
32567//
32568// - merchantId: The ID of the account that manages the order. This
32569//   cannot be a multi-client account.
32570// - orderId: The ID of the order to refund.
32571func (r *OrdersService) Refundorder(merchantId uint64, orderId string, ordersrefundorderrequest *OrdersRefundOrderRequest) *OrdersRefundorderCall {
32572	c := &OrdersRefundorderCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32573	c.merchantId = merchantId
32574	c.orderId = orderId
32575	c.ordersrefundorderrequest = ordersrefundorderrequest
32576	return c
32577}
32578
32579// Fields allows partial responses to be retrieved. See
32580// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32581// for more information.
32582func (c *OrdersRefundorderCall) Fields(s ...googleapi.Field) *OrdersRefundorderCall {
32583	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32584	return c
32585}
32586
32587// Context sets the context to be used in this call's Do method. Any
32588// pending HTTP request will be aborted if the provided context is
32589// canceled.
32590func (c *OrdersRefundorderCall) Context(ctx context.Context) *OrdersRefundorderCall {
32591	c.ctx_ = ctx
32592	return c
32593}
32594
32595// Header returns an http.Header that can be modified by the caller to
32596// add HTTP headers to the request.
32597func (c *OrdersRefundorderCall) Header() http.Header {
32598	if c.header_ == nil {
32599		c.header_ = make(http.Header)
32600	}
32601	return c.header_
32602}
32603
32604func (c *OrdersRefundorderCall) doRequest(alt string) (*http.Response, error) {
32605	reqHeaders := make(http.Header)
32606	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
32607	for k, v := range c.header_ {
32608		reqHeaders[k] = v
32609	}
32610	reqHeaders.Set("User-Agent", c.s.userAgent())
32611	var body io.Reader = nil
32612	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersrefundorderrequest)
32613	if err != nil {
32614		return nil, err
32615	}
32616	reqHeaders.Set("Content-Type", "application/json")
32617	c.urlParams_.Set("alt", alt)
32618	c.urlParams_.Set("prettyPrint", "false")
32619	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/refundorder")
32620	urls += "?" + c.urlParams_.Encode()
32621	req, err := http.NewRequest("POST", urls, body)
32622	if err != nil {
32623		return nil, err
32624	}
32625	req.Header = reqHeaders
32626	googleapi.Expand(req.URL, map[string]string{
32627		"merchantId": strconv.FormatUint(c.merchantId, 10),
32628		"orderId":    c.orderId,
32629	})
32630	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32631}
32632
32633// Do executes the "content.orders.refundorder" call.
32634// Exactly one of *OrdersRefundOrderResponse or error will be non-nil.
32635// Any non-2xx status code is an error. Response headers are in either
32636// *OrdersRefundOrderResponse.ServerResponse.Header or (if a response
32637// was returned at all) in error.(*googleapi.Error).Header. Use
32638// googleapi.IsNotModified to check whether the returned error was
32639// because http.StatusNotModified was returned.
32640func (c *OrdersRefundorderCall) Do(opts ...googleapi.CallOption) (*OrdersRefundOrderResponse, error) {
32641	gensupport.SetOptions(c.urlParams_, opts...)
32642	res, err := c.doRequest("json")
32643	if res != nil && res.StatusCode == http.StatusNotModified {
32644		if res.Body != nil {
32645			res.Body.Close()
32646		}
32647		return nil, &googleapi.Error{
32648			Code:   res.StatusCode,
32649			Header: res.Header,
32650		}
32651	}
32652	if err != nil {
32653		return nil, err
32654	}
32655	defer googleapi.CloseBody(res)
32656	if err := googleapi.CheckResponse(res); err != nil {
32657		return nil, err
32658	}
32659	ret := &OrdersRefundOrderResponse{
32660		ServerResponse: googleapi.ServerResponse{
32661			Header:         res.Header,
32662			HTTPStatusCode: res.StatusCode,
32663		},
32664	}
32665	target := &ret
32666	if err := gensupport.DecodeResponse(target, res); err != nil {
32667		return nil, err
32668	}
32669	return ret, nil
32670	// {
32671	//   "description": "Issues a partial or total refund for an order.",
32672	//   "flatPath": "{merchantId}/orders/{orderId}/refundorder",
32673	//   "httpMethod": "POST",
32674	//   "id": "content.orders.refundorder",
32675	//   "parameterOrder": [
32676	//     "merchantId",
32677	//     "orderId"
32678	//   ],
32679	//   "parameters": {
32680	//     "merchantId": {
32681	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
32682	//       "format": "uint64",
32683	//       "location": "path",
32684	//       "required": true,
32685	//       "type": "string"
32686	//     },
32687	//     "orderId": {
32688	//       "description": "The ID of the order to refund.",
32689	//       "location": "path",
32690	//       "required": true,
32691	//       "type": "string"
32692	//     }
32693	//   },
32694	//   "path": "{merchantId}/orders/{orderId}/refundorder",
32695	//   "request": {
32696	//     "$ref": "OrdersRefundOrderRequest"
32697	//   },
32698	//   "response": {
32699	//     "$ref": "OrdersRefundOrderResponse"
32700	//   },
32701	//   "scopes": [
32702	//     "https://www.googleapis.com/auth/content"
32703	//   ]
32704	// }
32705
32706}
32707
32708// method id "content.orders.rejectreturnlineitem":
32709
32710type OrdersRejectreturnlineitemCall struct {
32711	s                                 *APIService
32712	merchantId                        uint64
32713	orderId                           string
32714	ordersrejectreturnlineitemrequest *OrdersRejectReturnLineItemRequest
32715	urlParams_                        gensupport.URLParams
32716	ctx_                              context.Context
32717	header_                           http.Header
32718}
32719
32720// Rejectreturnlineitem: Rejects return on an line item.
32721//
32722// - merchantId: The ID of the account that manages the order. This
32723//   cannot be a multi-client account.
32724// - orderId: The ID of the order.
32725func (r *OrdersService) Rejectreturnlineitem(merchantId uint64, orderId string, ordersrejectreturnlineitemrequest *OrdersRejectReturnLineItemRequest) *OrdersRejectreturnlineitemCall {
32726	c := &OrdersRejectreturnlineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32727	c.merchantId = merchantId
32728	c.orderId = orderId
32729	c.ordersrejectreturnlineitemrequest = ordersrejectreturnlineitemrequest
32730	return c
32731}
32732
32733// Fields allows partial responses to be retrieved. See
32734// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32735// for more information.
32736func (c *OrdersRejectreturnlineitemCall) Fields(s ...googleapi.Field) *OrdersRejectreturnlineitemCall {
32737	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32738	return c
32739}
32740
32741// Context sets the context to be used in this call's Do method. Any
32742// pending HTTP request will be aborted if the provided context is
32743// canceled.
32744func (c *OrdersRejectreturnlineitemCall) Context(ctx context.Context) *OrdersRejectreturnlineitemCall {
32745	c.ctx_ = ctx
32746	return c
32747}
32748
32749// Header returns an http.Header that can be modified by the caller to
32750// add HTTP headers to the request.
32751func (c *OrdersRejectreturnlineitemCall) Header() http.Header {
32752	if c.header_ == nil {
32753		c.header_ = make(http.Header)
32754	}
32755	return c.header_
32756}
32757
32758func (c *OrdersRejectreturnlineitemCall) doRequest(alt string) (*http.Response, error) {
32759	reqHeaders := make(http.Header)
32760	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
32761	for k, v := range c.header_ {
32762		reqHeaders[k] = v
32763	}
32764	reqHeaders.Set("User-Agent", c.s.userAgent())
32765	var body io.Reader = nil
32766	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersrejectreturnlineitemrequest)
32767	if err != nil {
32768		return nil, err
32769	}
32770	reqHeaders.Set("Content-Type", "application/json")
32771	c.urlParams_.Set("alt", alt)
32772	c.urlParams_.Set("prettyPrint", "false")
32773	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/rejectReturnLineItem")
32774	urls += "?" + c.urlParams_.Encode()
32775	req, err := http.NewRequest("POST", urls, body)
32776	if err != nil {
32777		return nil, err
32778	}
32779	req.Header = reqHeaders
32780	googleapi.Expand(req.URL, map[string]string{
32781		"merchantId": strconv.FormatUint(c.merchantId, 10),
32782		"orderId":    c.orderId,
32783	})
32784	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32785}
32786
32787// Do executes the "content.orders.rejectreturnlineitem" call.
32788// Exactly one of *OrdersRejectReturnLineItemResponse or error will be
32789// non-nil. Any non-2xx status code is an error. Response headers are in
32790// either *OrdersRejectReturnLineItemResponse.ServerResponse.Header or
32791// (if a response was returned at all) in
32792// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
32793// whether the returned error was because http.StatusNotModified was
32794// returned.
32795func (c *OrdersRejectreturnlineitemCall) Do(opts ...googleapi.CallOption) (*OrdersRejectReturnLineItemResponse, error) {
32796	gensupport.SetOptions(c.urlParams_, opts...)
32797	res, err := c.doRequest("json")
32798	if res != nil && res.StatusCode == http.StatusNotModified {
32799		if res.Body != nil {
32800			res.Body.Close()
32801		}
32802		return nil, &googleapi.Error{
32803			Code:   res.StatusCode,
32804			Header: res.Header,
32805		}
32806	}
32807	if err != nil {
32808		return nil, err
32809	}
32810	defer googleapi.CloseBody(res)
32811	if err := googleapi.CheckResponse(res); err != nil {
32812		return nil, err
32813	}
32814	ret := &OrdersRejectReturnLineItemResponse{
32815		ServerResponse: googleapi.ServerResponse{
32816			Header:         res.Header,
32817			HTTPStatusCode: res.StatusCode,
32818		},
32819	}
32820	target := &ret
32821	if err := gensupport.DecodeResponse(target, res); err != nil {
32822		return nil, err
32823	}
32824	return ret, nil
32825	// {
32826	//   "description": "Rejects return on an line item.",
32827	//   "flatPath": "{merchantId}/orders/{orderId}/rejectReturnLineItem",
32828	//   "httpMethod": "POST",
32829	//   "id": "content.orders.rejectreturnlineitem",
32830	//   "parameterOrder": [
32831	//     "merchantId",
32832	//     "orderId"
32833	//   ],
32834	//   "parameters": {
32835	//     "merchantId": {
32836	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
32837	//       "format": "uint64",
32838	//       "location": "path",
32839	//       "required": true,
32840	//       "type": "string"
32841	//     },
32842	//     "orderId": {
32843	//       "description": "The ID of the order.",
32844	//       "location": "path",
32845	//       "required": true,
32846	//       "type": "string"
32847	//     }
32848	//   },
32849	//   "path": "{merchantId}/orders/{orderId}/rejectReturnLineItem",
32850	//   "request": {
32851	//     "$ref": "OrdersRejectReturnLineItemRequest"
32852	//   },
32853	//   "response": {
32854	//     "$ref": "OrdersRejectReturnLineItemResponse"
32855	//   },
32856	//   "scopes": [
32857	//     "https://www.googleapis.com/auth/content"
32858	//   ]
32859	// }
32860
32861}
32862
32863// method id "content.orders.returnrefundlineitem":
32864
32865type OrdersReturnrefundlineitemCall struct {
32866	s                                 *APIService
32867	merchantId                        uint64
32868	orderId                           string
32869	ordersreturnrefundlineitemrequest *OrdersReturnRefundLineItemRequest
32870	urlParams_                        gensupport.URLParams
32871	ctx_                              context.Context
32872	header_                           http.Header
32873}
32874
32875// Returnrefundlineitem: Returns and refunds a line item. Note that this
32876// method can only be called on fully shipped orders. Please also note
32877// that the Orderreturns API is the preferred way to handle returns
32878// after you receive a return from a customer. You can use
32879// Orderreturns.list or Orderreturns.get to search for the return, and
32880// then use Orderreturns.processreturn to issue the refund. If the
32881// return cannot be found, then we recommend using this API to issue a
32882// refund.
32883//
32884// - merchantId: The ID of the account that manages the order. This
32885//   cannot be a multi-client account.
32886// - orderId: The ID of the order.
32887func (r *OrdersService) Returnrefundlineitem(merchantId uint64, orderId string, ordersreturnrefundlineitemrequest *OrdersReturnRefundLineItemRequest) *OrdersReturnrefundlineitemCall {
32888	c := &OrdersReturnrefundlineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32889	c.merchantId = merchantId
32890	c.orderId = orderId
32891	c.ordersreturnrefundlineitemrequest = ordersreturnrefundlineitemrequest
32892	return c
32893}
32894
32895// Fields allows partial responses to be retrieved. See
32896// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32897// for more information.
32898func (c *OrdersReturnrefundlineitemCall) Fields(s ...googleapi.Field) *OrdersReturnrefundlineitemCall {
32899	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32900	return c
32901}
32902
32903// Context sets the context to be used in this call's Do method. Any
32904// pending HTTP request will be aborted if the provided context is
32905// canceled.
32906func (c *OrdersReturnrefundlineitemCall) Context(ctx context.Context) *OrdersReturnrefundlineitemCall {
32907	c.ctx_ = ctx
32908	return c
32909}
32910
32911// Header returns an http.Header that can be modified by the caller to
32912// add HTTP headers to the request.
32913func (c *OrdersReturnrefundlineitemCall) Header() http.Header {
32914	if c.header_ == nil {
32915		c.header_ = make(http.Header)
32916	}
32917	return c.header_
32918}
32919
32920func (c *OrdersReturnrefundlineitemCall) doRequest(alt string) (*http.Response, error) {
32921	reqHeaders := make(http.Header)
32922	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
32923	for k, v := range c.header_ {
32924		reqHeaders[k] = v
32925	}
32926	reqHeaders.Set("User-Agent", c.s.userAgent())
32927	var body io.Reader = nil
32928	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersreturnrefundlineitemrequest)
32929	if err != nil {
32930		return nil, err
32931	}
32932	reqHeaders.Set("Content-Type", "application/json")
32933	c.urlParams_.Set("alt", alt)
32934	c.urlParams_.Set("prettyPrint", "false")
32935	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/returnRefundLineItem")
32936	urls += "?" + c.urlParams_.Encode()
32937	req, err := http.NewRequest("POST", urls, body)
32938	if err != nil {
32939		return nil, err
32940	}
32941	req.Header = reqHeaders
32942	googleapi.Expand(req.URL, map[string]string{
32943		"merchantId": strconv.FormatUint(c.merchantId, 10),
32944		"orderId":    c.orderId,
32945	})
32946	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32947}
32948
32949// Do executes the "content.orders.returnrefundlineitem" call.
32950// Exactly one of *OrdersReturnRefundLineItemResponse or error will be
32951// non-nil. Any non-2xx status code is an error. Response headers are in
32952// either *OrdersReturnRefundLineItemResponse.ServerResponse.Header or
32953// (if a response was returned at all) in
32954// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
32955// whether the returned error was because http.StatusNotModified was
32956// returned.
32957func (c *OrdersReturnrefundlineitemCall) Do(opts ...googleapi.CallOption) (*OrdersReturnRefundLineItemResponse, error) {
32958	gensupport.SetOptions(c.urlParams_, opts...)
32959	res, err := c.doRequest("json")
32960	if res != nil && res.StatusCode == http.StatusNotModified {
32961		if res.Body != nil {
32962			res.Body.Close()
32963		}
32964		return nil, &googleapi.Error{
32965			Code:   res.StatusCode,
32966			Header: res.Header,
32967		}
32968	}
32969	if err != nil {
32970		return nil, err
32971	}
32972	defer googleapi.CloseBody(res)
32973	if err := googleapi.CheckResponse(res); err != nil {
32974		return nil, err
32975	}
32976	ret := &OrdersReturnRefundLineItemResponse{
32977		ServerResponse: googleapi.ServerResponse{
32978			Header:         res.Header,
32979			HTTPStatusCode: res.StatusCode,
32980		},
32981	}
32982	target := &ret
32983	if err := gensupport.DecodeResponse(target, res); err != nil {
32984		return nil, err
32985	}
32986	return ret, nil
32987	// {
32988	//   "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.",
32989	//   "flatPath": "{merchantId}/orders/{orderId}/returnRefundLineItem",
32990	//   "httpMethod": "POST",
32991	//   "id": "content.orders.returnrefundlineitem",
32992	//   "parameterOrder": [
32993	//     "merchantId",
32994	//     "orderId"
32995	//   ],
32996	//   "parameters": {
32997	//     "merchantId": {
32998	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
32999	//       "format": "uint64",
33000	//       "location": "path",
33001	//       "required": true,
33002	//       "type": "string"
33003	//     },
33004	//     "orderId": {
33005	//       "description": "The ID of the order.",
33006	//       "location": "path",
33007	//       "required": true,
33008	//       "type": "string"
33009	//     }
33010	//   },
33011	//   "path": "{merchantId}/orders/{orderId}/returnRefundLineItem",
33012	//   "request": {
33013	//     "$ref": "OrdersReturnRefundLineItemRequest"
33014	//   },
33015	//   "response": {
33016	//     "$ref": "OrdersReturnRefundLineItemResponse"
33017	//   },
33018	//   "scopes": [
33019	//     "https://www.googleapis.com/auth/content"
33020	//   ]
33021	// }
33022
33023}
33024
33025// method id "content.orders.setlineitemmetadata":
33026
33027type OrdersSetlineitemmetadataCall struct {
33028	s                                *APIService
33029	merchantId                       uint64
33030	orderId                          string
33031	orderssetlineitemmetadatarequest *OrdersSetLineItemMetadataRequest
33032	urlParams_                       gensupport.URLParams
33033	ctx_                             context.Context
33034	header_                          http.Header
33035}
33036
33037// Setlineitemmetadata: Sets (or overrides if it already exists)
33038// merchant provided annotations in the form of key-value pairs. A
33039// common use case would be to supply us with additional structured
33040// information about a line item that cannot be provided via other
33041// methods. Submitted key-value pairs can be retrieved as part of the
33042// orders resource.
33043//
33044// - merchantId: The ID of the account that manages the order. This
33045//   cannot be a multi-client account.
33046// - orderId: The ID of the order.
33047func (r *OrdersService) Setlineitemmetadata(merchantId uint64, orderId string, orderssetlineitemmetadatarequest *OrdersSetLineItemMetadataRequest) *OrdersSetlineitemmetadataCall {
33048	c := &OrdersSetlineitemmetadataCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33049	c.merchantId = merchantId
33050	c.orderId = orderId
33051	c.orderssetlineitemmetadatarequest = orderssetlineitemmetadatarequest
33052	return c
33053}
33054
33055// Fields allows partial responses to be retrieved. See
33056// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33057// for more information.
33058func (c *OrdersSetlineitemmetadataCall) Fields(s ...googleapi.Field) *OrdersSetlineitemmetadataCall {
33059	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33060	return c
33061}
33062
33063// Context sets the context to be used in this call's Do method. Any
33064// pending HTTP request will be aborted if the provided context is
33065// canceled.
33066func (c *OrdersSetlineitemmetadataCall) Context(ctx context.Context) *OrdersSetlineitemmetadataCall {
33067	c.ctx_ = ctx
33068	return c
33069}
33070
33071// Header returns an http.Header that can be modified by the caller to
33072// add HTTP headers to the request.
33073func (c *OrdersSetlineitemmetadataCall) Header() http.Header {
33074	if c.header_ == nil {
33075		c.header_ = make(http.Header)
33076	}
33077	return c.header_
33078}
33079
33080func (c *OrdersSetlineitemmetadataCall) doRequest(alt string) (*http.Response, error) {
33081	reqHeaders := make(http.Header)
33082	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
33083	for k, v := range c.header_ {
33084		reqHeaders[k] = v
33085	}
33086	reqHeaders.Set("User-Agent", c.s.userAgent())
33087	var body io.Reader = nil
33088	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderssetlineitemmetadatarequest)
33089	if err != nil {
33090		return nil, err
33091	}
33092	reqHeaders.Set("Content-Type", "application/json")
33093	c.urlParams_.Set("alt", alt)
33094	c.urlParams_.Set("prettyPrint", "false")
33095	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/setLineItemMetadata")
33096	urls += "?" + c.urlParams_.Encode()
33097	req, err := http.NewRequest("POST", urls, body)
33098	if err != nil {
33099		return nil, err
33100	}
33101	req.Header = reqHeaders
33102	googleapi.Expand(req.URL, map[string]string{
33103		"merchantId": strconv.FormatUint(c.merchantId, 10),
33104		"orderId":    c.orderId,
33105	})
33106	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33107}
33108
33109// Do executes the "content.orders.setlineitemmetadata" call.
33110// Exactly one of *OrdersSetLineItemMetadataResponse or error will be
33111// non-nil. Any non-2xx status code is an error. Response headers are in
33112// either *OrdersSetLineItemMetadataResponse.ServerResponse.Header or
33113// (if a response was returned at all) in
33114// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
33115// whether the returned error was because http.StatusNotModified was
33116// returned.
33117func (c *OrdersSetlineitemmetadataCall) Do(opts ...googleapi.CallOption) (*OrdersSetLineItemMetadataResponse, error) {
33118	gensupport.SetOptions(c.urlParams_, opts...)
33119	res, err := c.doRequest("json")
33120	if res != nil && res.StatusCode == http.StatusNotModified {
33121		if res.Body != nil {
33122			res.Body.Close()
33123		}
33124		return nil, &googleapi.Error{
33125			Code:   res.StatusCode,
33126			Header: res.Header,
33127		}
33128	}
33129	if err != nil {
33130		return nil, err
33131	}
33132	defer googleapi.CloseBody(res)
33133	if err := googleapi.CheckResponse(res); err != nil {
33134		return nil, err
33135	}
33136	ret := &OrdersSetLineItemMetadataResponse{
33137		ServerResponse: googleapi.ServerResponse{
33138			Header:         res.Header,
33139			HTTPStatusCode: res.StatusCode,
33140		},
33141	}
33142	target := &ret
33143	if err := gensupport.DecodeResponse(target, res); err != nil {
33144		return nil, err
33145	}
33146	return ret, nil
33147	// {
33148	//   "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.",
33149	//   "flatPath": "{merchantId}/orders/{orderId}/setLineItemMetadata",
33150	//   "httpMethod": "POST",
33151	//   "id": "content.orders.setlineitemmetadata",
33152	//   "parameterOrder": [
33153	//     "merchantId",
33154	//     "orderId"
33155	//   ],
33156	//   "parameters": {
33157	//     "merchantId": {
33158	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
33159	//       "format": "uint64",
33160	//       "location": "path",
33161	//       "required": true,
33162	//       "type": "string"
33163	//     },
33164	//     "orderId": {
33165	//       "description": "The ID of the order.",
33166	//       "location": "path",
33167	//       "required": true,
33168	//       "type": "string"
33169	//     }
33170	//   },
33171	//   "path": "{merchantId}/orders/{orderId}/setLineItemMetadata",
33172	//   "request": {
33173	//     "$ref": "OrdersSetLineItemMetadataRequest"
33174	//   },
33175	//   "response": {
33176	//     "$ref": "OrdersSetLineItemMetadataResponse"
33177	//   },
33178	//   "scopes": [
33179	//     "https://www.googleapis.com/auth/content"
33180	//   ]
33181	// }
33182
33183}
33184
33185// method id "content.orders.shiplineitems":
33186
33187type OrdersShiplineitemsCall struct {
33188	s                          *APIService
33189	merchantId                 uint64
33190	orderId                    string
33191	ordersshiplineitemsrequest *OrdersShipLineItemsRequest
33192	urlParams_                 gensupport.URLParams
33193	ctx_                       context.Context
33194	header_                    http.Header
33195}
33196
33197// Shiplineitems: Marks line item(s) as shipped.
33198//
33199// - merchantId: The ID of the account that manages the order. This
33200//   cannot be a multi-client account.
33201// - orderId: The ID of the order.
33202func (r *OrdersService) Shiplineitems(merchantId uint64, orderId string, ordersshiplineitemsrequest *OrdersShipLineItemsRequest) *OrdersShiplineitemsCall {
33203	c := &OrdersShiplineitemsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33204	c.merchantId = merchantId
33205	c.orderId = orderId
33206	c.ordersshiplineitemsrequest = ordersshiplineitemsrequest
33207	return c
33208}
33209
33210// Fields allows partial responses to be retrieved. See
33211// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33212// for more information.
33213func (c *OrdersShiplineitemsCall) Fields(s ...googleapi.Field) *OrdersShiplineitemsCall {
33214	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33215	return c
33216}
33217
33218// Context sets the context to be used in this call's Do method. Any
33219// pending HTTP request will be aborted if the provided context is
33220// canceled.
33221func (c *OrdersShiplineitemsCall) Context(ctx context.Context) *OrdersShiplineitemsCall {
33222	c.ctx_ = ctx
33223	return c
33224}
33225
33226// Header returns an http.Header that can be modified by the caller to
33227// add HTTP headers to the request.
33228func (c *OrdersShiplineitemsCall) Header() http.Header {
33229	if c.header_ == nil {
33230		c.header_ = make(http.Header)
33231	}
33232	return c.header_
33233}
33234
33235func (c *OrdersShiplineitemsCall) doRequest(alt string) (*http.Response, error) {
33236	reqHeaders := make(http.Header)
33237	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
33238	for k, v := range c.header_ {
33239		reqHeaders[k] = v
33240	}
33241	reqHeaders.Set("User-Agent", c.s.userAgent())
33242	var body io.Reader = nil
33243	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersshiplineitemsrequest)
33244	if err != nil {
33245		return nil, err
33246	}
33247	reqHeaders.Set("Content-Type", "application/json")
33248	c.urlParams_.Set("alt", alt)
33249	c.urlParams_.Set("prettyPrint", "false")
33250	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/shipLineItems")
33251	urls += "?" + c.urlParams_.Encode()
33252	req, err := http.NewRequest("POST", urls, body)
33253	if err != nil {
33254		return nil, err
33255	}
33256	req.Header = reqHeaders
33257	googleapi.Expand(req.URL, map[string]string{
33258		"merchantId": strconv.FormatUint(c.merchantId, 10),
33259		"orderId":    c.orderId,
33260	})
33261	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33262}
33263
33264// Do executes the "content.orders.shiplineitems" call.
33265// Exactly one of *OrdersShipLineItemsResponse or error will be non-nil.
33266// Any non-2xx status code is an error. Response headers are in either
33267// *OrdersShipLineItemsResponse.ServerResponse.Header or (if a response
33268// was returned at all) in error.(*googleapi.Error).Header. Use
33269// googleapi.IsNotModified to check whether the returned error was
33270// because http.StatusNotModified was returned.
33271func (c *OrdersShiplineitemsCall) Do(opts ...googleapi.CallOption) (*OrdersShipLineItemsResponse, error) {
33272	gensupport.SetOptions(c.urlParams_, opts...)
33273	res, err := c.doRequest("json")
33274	if res != nil && res.StatusCode == http.StatusNotModified {
33275		if res.Body != nil {
33276			res.Body.Close()
33277		}
33278		return nil, &googleapi.Error{
33279			Code:   res.StatusCode,
33280			Header: res.Header,
33281		}
33282	}
33283	if err != nil {
33284		return nil, err
33285	}
33286	defer googleapi.CloseBody(res)
33287	if err := googleapi.CheckResponse(res); err != nil {
33288		return nil, err
33289	}
33290	ret := &OrdersShipLineItemsResponse{
33291		ServerResponse: googleapi.ServerResponse{
33292			Header:         res.Header,
33293			HTTPStatusCode: res.StatusCode,
33294		},
33295	}
33296	target := &ret
33297	if err := gensupport.DecodeResponse(target, res); err != nil {
33298		return nil, err
33299	}
33300	return ret, nil
33301	// {
33302	//   "description": "Marks line item(s) as shipped.",
33303	//   "flatPath": "{merchantId}/orders/{orderId}/shipLineItems",
33304	//   "httpMethod": "POST",
33305	//   "id": "content.orders.shiplineitems",
33306	//   "parameterOrder": [
33307	//     "merchantId",
33308	//     "orderId"
33309	//   ],
33310	//   "parameters": {
33311	//     "merchantId": {
33312	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
33313	//       "format": "uint64",
33314	//       "location": "path",
33315	//       "required": true,
33316	//       "type": "string"
33317	//     },
33318	//     "orderId": {
33319	//       "description": "The ID of the order.",
33320	//       "location": "path",
33321	//       "required": true,
33322	//       "type": "string"
33323	//     }
33324	//   },
33325	//   "path": "{merchantId}/orders/{orderId}/shipLineItems",
33326	//   "request": {
33327	//     "$ref": "OrdersShipLineItemsRequest"
33328	//   },
33329	//   "response": {
33330	//     "$ref": "OrdersShipLineItemsResponse"
33331	//   },
33332	//   "scopes": [
33333	//     "https://www.googleapis.com/auth/content"
33334	//   ]
33335	// }
33336
33337}
33338
33339// method id "content.orders.updatelineitemshippingdetails":
33340
33341type OrdersUpdatelineitemshippingdetailsCall struct {
33342	s                                          *APIService
33343	merchantId                                 uint64
33344	orderId                                    string
33345	ordersupdatelineitemshippingdetailsrequest *OrdersUpdateLineItemShippingDetailsRequest
33346	urlParams_                                 gensupport.URLParams
33347	ctx_                                       context.Context
33348	header_                                    http.Header
33349}
33350
33351// Updatelineitemshippingdetails: Updates ship by and delivery by dates
33352// for a line item.
33353//
33354// - merchantId: The ID of the account that manages the order. This
33355//   cannot be a multi-client account.
33356// - orderId: The ID of the order.
33357func (r *OrdersService) Updatelineitemshippingdetails(merchantId uint64, orderId string, ordersupdatelineitemshippingdetailsrequest *OrdersUpdateLineItemShippingDetailsRequest) *OrdersUpdatelineitemshippingdetailsCall {
33358	c := &OrdersUpdatelineitemshippingdetailsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33359	c.merchantId = merchantId
33360	c.orderId = orderId
33361	c.ordersupdatelineitemshippingdetailsrequest = ordersupdatelineitemshippingdetailsrequest
33362	return c
33363}
33364
33365// Fields allows partial responses to be retrieved. See
33366// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33367// for more information.
33368func (c *OrdersUpdatelineitemshippingdetailsCall) Fields(s ...googleapi.Field) *OrdersUpdatelineitemshippingdetailsCall {
33369	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33370	return c
33371}
33372
33373// Context sets the context to be used in this call's Do method. Any
33374// pending HTTP request will be aborted if the provided context is
33375// canceled.
33376func (c *OrdersUpdatelineitemshippingdetailsCall) Context(ctx context.Context) *OrdersUpdatelineitemshippingdetailsCall {
33377	c.ctx_ = ctx
33378	return c
33379}
33380
33381// Header returns an http.Header that can be modified by the caller to
33382// add HTTP headers to the request.
33383func (c *OrdersUpdatelineitemshippingdetailsCall) Header() http.Header {
33384	if c.header_ == nil {
33385		c.header_ = make(http.Header)
33386	}
33387	return c.header_
33388}
33389
33390func (c *OrdersUpdatelineitemshippingdetailsCall) doRequest(alt string) (*http.Response, error) {
33391	reqHeaders := make(http.Header)
33392	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
33393	for k, v := range c.header_ {
33394		reqHeaders[k] = v
33395	}
33396	reqHeaders.Set("User-Agent", c.s.userAgent())
33397	var body io.Reader = nil
33398	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersupdatelineitemshippingdetailsrequest)
33399	if err != nil {
33400		return nil, err
33401	}
33402	reqHeaders.Set("Content-Type", "application/json")
33403	c.urlParams_.Set("alt", alt)
33404	c.urlParams_.Set("prettyPrint", "false")
33405	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/updateLineItemShippingDetails")
33406	urls += "?" + c.urlParams_.Encode()
33407	req, err := http.NewRequest("POST", urls, body)
33408	if err != nil {
33409		return nil, err
33410	}
33411	req.Header = reqHeaders
33412	googleapi.Expand(req.URL, map[string]string{
33413		"merchantId": strconv.FormatUint(c.merchantId, 10),
33414		"orderId":    c.orderId,
33415	})
33416	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33417}
33418
33419// Do executes the "content.orders.updatelineitemshippingdetails" call.
33420// Exactly one of *OrdersUpdateLineItemShippingDetailsResponse or error
33421// will be non-nil. Any non-2xx status code is an error. Response
33422// headers are in either
33423// *OrdersUpdateLineItemShippingDetailsResponse.ServerResponse.Header or
33424// (if a response was returned at all) in
33425// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
33426// whether the returned error was because http.StatusNotModified was
33427// returned.
33428func (c *OrdersUpdatelineitemshippingdetailsCall) Do(opts ...googleapi.CallOption) (*OrdersUpdateLineItemShippingDetailsResponse, error) {
33429	gensupport.SetOptions(c.urlParams_, opts...)
33430	res, err := c.doRequest("json")
33431	if res != nil && res.StatusCode == http.StatusNotModified {
33432		if res.Body != nil {
33433			res.Body.Close()
33434		}
33435		return nil, &googleapi.Error{
33436			Code:   res.StatusCode,
33437			Header: res.Header,
33438		}
33439	}
33440	if err != nil {
33441		return nil, err
33442	}
33443	defer googleapi.CloseBody(res)
33444	if err := googleapi.CheckResponse(res); err != nil {
33445		return nil, err
33446	}
33447	ret := &OrdersUpdateLineItemShippingDetailsResponse{
33448		ServerResponse: googleapi.ServerResponse{
33449			Header:         res.Header,
33450			HTTPStatusCode: res.StatusCode,
33451		},
33452	}
33453	target := &ret
33454	if err := gensupport.DecodeResponse(target, res); err != nil {
33455		return nil, err
33456	}
33457	return ret, nil
33458	// {
33459	//   "description": "Updates ship by and delivery by dates for a line item.",
33460	//   "flatPath": "{merchantId}/orders/{orderId}/updateLineItemShippingDetails",
33461	//   "httpMethod": "POST",
33462	//   "id": "content.orders.updatelineitemshippingdetails",
33463	//   "parameterOrder": [
33464	//     "merchantId",
33465	//     "orderId"
33466	//   ],
33467	//   "parameters": {
33468	//     "merchantId": {
33469	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
33470	//       "format": "uint64",
33471	//       "location": "path",
33472	//       "required": true,
33473	//       "type": "string"
33474	//     },
33475	//     "orderId": {
33476	//       "description": "The ID of the order.",
33477	//       "location": "path",
33478	//       "required": true,
33479	//       "type": "string"
33480	//     }
33481	//   },
33482	//   "path": "{merchantId}/orders/{orderId}/updateLineItemShippingDetails",
33483	//   "request": {
33484	//     "$ref": "OrdersUpdateLineItemShippingDetailsRequest"
33485	//   },
33486	//   "response": {
33487	//     "$ref": "OrdersUpdateLineItemShippingDetailsResponse"
33488	//   },
33489	//   "scopes": [
33490	//     "https://www.googleapis.com/auth/content"
33491	//   ]
33492	// }
33493
33494}
33495
33496// method id "content.orders.updatemerchantorderid":
33497
33498type OrdersUpdatemerchantorderidCall struct {
33499	s                                  *APIService
33500	merchantId                         uint64
33501	orderId                            string
33502	ordersupdatemerchantorderidrequest *OrdersUpdateMerchantOrderIdRequest
33503	urlParams_                         gensupport.URLParams
33504	ctx_                               context.Context
33505	header_                            http.Header
33506}
33507
33508// Updatemerchantorderid: Updates the merchant order ID for a given
33509// order.
33510//
33511// - merchantId: The ID of the account that manages the order. This
33512//   cannot be a multi-client account.
33513// - orderId: The ID of the order.
33514func (r *OrdersService) Updatemerchantorderid(merchantId uint64, orderId string, ordersupdatemerchantorderidrequest *OrdersUpdateMerchantOrderIdRequest) *OrdersUpdatemerchantorderidCall {
33515	c := &OrdersUpdatemerchantorderidCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33516	c.merchantId = merchantId
33517	c.orderId = orderId
33518	c.ordersupdatemerchantorderidrequest = ordersupdatemerchantorderidrequest
33519	return c
33520}
33521
33522// Fields allows partial responses to be retrieved. See
33523// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33524// for more information.
33525func (c *OrdersUpdatemerchantorderidCall) Fields(s ...googleapi.Field) *OrdersUpdatemerchantorderidCall {
33526	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33527	return c
33528}
33529
33530// Context sets the context to be used in this call's Do method. Any
33531// pending HTTP request will be aborted if the provided context is
33532// canceled.
33533func (c *OrdersUpdatemerchantorderidCall) Context(ctx context.Context) *OrdersUpdatemerchantorderidCall {
33534	c.ctx_ = ctx
33535	return c
33536}
33537
33538// Header returns an http.Header that can be modified by the caller to
33539// add HTTP headers to the request.
33540func (c *OrdersUpdatemerchantorderidCall) Header() http.Header {
33541	if c.header_ == nil {
33542		c.header_ = make(http.Header)
33543	}
33544	return c.header_
33545}
33546
33547func (c *OrdersUpdatemerchantorderidCall) doRequest(alt string) (*http.Response, error) {
33548	reqHeaders := make(http.Header)
33549	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
33550	for k, v := range c.header_ {
33551		reqHeaders[k] = v
33552	}
33553	reqHeaders.Set("User-Agent", c.s.userAgent())
33554	var body io.Reader = nil
33555	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersupdatemerchantorderidrequest)
33556	if err != nil {
33557		return nil, err
33558	}
33559	reqHeaders.Set("Content-Type", "application/json")
33560	c.urlParams_.Set("alt", alt)
33561	c.urlParams_.Set("prettyPrint", "false")
33562	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/updateMerchantOrderId")
33563	urls += "?" + c.urlParams_.Encode()
33564	req, err := http.NewRequest("POST", urls, body)
33565	if err != nil {
33566		return nil, err
33567	}
33568	req.Header = reqHeaders
33569	googleapi.Expand(req.URL, map[string]string{
33570		"merchantId": strconv.FormatUint(c.merchantId, 10),
33571		"orderId":    c.orderId,
33572	})
33573	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33574}
33575
33576// Do executes the "content.orders.updatemerchantorderid" call.
33577// Exactly one of *OrdersUpdateMerchantOrderIdResponse or error will be
33578// non-nil. Any non-2xx status code is an error. Response headers are in
33579// either *OrdersUpdateMerchantOrderIdResponse.ServerResponse.Header or
33580// (if a response was returned at all) in
33581// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
33582// whether the returned error was because http.StatusNotModified was
33583// returned.
33584func (c *OrdersUpdatemerchantorderidCall) Do(opts ...googleapi.CallOption) (*OrdersUpdateMerchantOrderIdResponse, error) {
33585	gensupport.SetOptions(c.urlParams_, opts...)
33586	res, err := c.doRequest("json")
33587	if res != nil && res.StatusCode == http.StatusNotModified {
33588		if res.Body != nil {
33589			res.Body.Close()
33590		}
33591		return nil, &googleapi.Error{
33592			Code:   res.StatusCode,
33593			Header: res.Header,
33594		}
33595	}
33596	if err != nil {
33597		return nil, err
33598	}
33599	defer googleapi.CloseBody(res)
33600	if err := googleapi.CheckResponse(res); err != nil {
33601		return nil, err
33602	}
33603	ret := &OrdersUpdateMerchantOrderIdResponse{
33604		ServerResponse: googleapi.ServerResponse{
33605			Header:         res.Header,
33606			HTTPStatusCode: res.StatusCode,
33607		},
33608	}
33609	target := &ret
33610	if err := gensupport.DecodeResponse(target, res); err != nil {
33611		return nil, err
33612	}
33613	return ret, nil
33614	// {
33615	//   "description": "Updates the merchant order ID for a given order.",
33616	//   "flatPath": "{merchantId}/orders/{orderId}/updateMerchantOrderId",
33617	//   "httpMethod": "POST",
33618	//   "id": "content.orders.updatemerchantorderid",
33619	//   "parameterOrder": [
33620	//     "merchantId",
33621	//     "orderId"
33622	//   ],
33623	//   "parameters": {
33624	//     "merchantId": {
33625	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
33626	//       "format": "uint64",
33627	//       "location": "path",
33628	//       "required": true,
33629	//       "type": "string"
33630	//     },
33631	//     "orderId": {
33632	//       "description": "The ID of the order.",
33633	//       "location": "path",
33634	//       "required": true,
33635	//       "type": "string"
33636	//     }
33637	//   },
33638	//   "path": "{merchantId}/orders/{orderId}/updateMerchantOrderId",
33639	//   "request": {
33640	//     "$ref": "OrdersUpdateMerchantOrderIdRequest"
33641	//   },
33642	//   "response": {
33643	//     "$ref": "OrdersUpdateMerchantOrderIdResponse"
33644	//   },
33645	//   "scopes": [
33646	//     "https://www.googleapis.com/auth/content"
33647	//   ]
33648	// }
33649
33650}
33651
33652// method id "content.orders.updateshipment":
33653
33654type OrdersUpdateshipmentCall struct {
33655	s                           *APIService
33656	merchantId                  uint64
33657	orderId                     string
33658	ordersupdateshipmentrequest *OrdersUpdateShipmentRequest
33659	urlParams_                  gensupport.URLParams
33660	ctx_                        context.Context
33661	header_                     http.Header
33662}
33663
33664// Updateshipment: Updates a shipment's status, carrier, and/or tracking
33665// ID.
33666//
33667// - merchantId: The ID of the account that manages the order. This
33668//   cannot be a multi-client account.
33669// - orderId: The ID of the order.
33670func (r *OrdersService) Updateshipment(merchantId uint64, orderId string, ordersupdateshipmentrequest *OrdersUpdateShipmentRequest) *OrdersUpdateshipmentCall {
33671	c := &OrdersUpdateshipmentCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33672	c.merchantId = merchantId
33673	c.orderId = orderId
33674	c.ordersupdateshipmentrequest = ordersupdateshipmentrequest
33675	return c
33676}
33677
33678// Fields allows partial responses to be retrieved. See
33679// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33680// for more information.
33681func (c *OrdersUpdateshipmentCall) Fields(s ...googleapi.Field) *OrdersUpdateshipmentCall {
33682	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33683	return c
33684}
33685
33686// Context sets the context to be used in this call's Do method. Any
33687// pending HTTP request will be aborted if the provided context is
33688// canceled.
33689func (c *OrdersUpdateshipmentCall) Context(ctx context.Context) *OrdersUpdateshipmentCall {
33690	c.ctx_ = ctx
33691	return c
33692}
33693
33694// Header returns an http.Header that can be modified by the caller to
33695// add HTTP headers to the request.
33696func (c *OrdersUpdateshipmentCall) Header() http.Header {
33697	if c.header_ == nil {
33698		c.header_ = make(http.Header)
33699	}
33700	return c.header_
33701}
33702
33703func (c *OrdersUpdateshipmentCall) doRequest(alt string) (*http.Response, error) {
33704	reqHeaders := make(http.Header)
33705	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
33706	for k, v := range c.header_ {
33707		reqHeaders[k] = v
33708	}
33709	reqHeaders.Set("User-Agent", c.s.userAgent())
33710	var body io.Reader = nil
33711	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersupdateshipmentrequest)
33712	if err != nil {
33713		return nil, err
33714	}
33715	reqHeaders.Set("Content-Type", "application/json")
33716	c.urlParams_.Set("alt", alt)
33717	c.urlParams_.Set("prettyPrint", "false")
33718	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/updateShipment")
33719	urls += "?" + c.urlParams_.Encode()
33720	req, err := http.NewRequest("POST", urls, body)
33721	if err != nil {
33722		return nil, err
33723	}
33724	req.Header = reqHeaders
33725	googleapi.Expand(req.URL, map[string]string{
33726		"merchantId": strconv.FormatUint(c.merchantId, 10),
33727		"orderId":    c.orderId,
33728	})
33729	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33730}
33731
33732// Do executes the "content.orders.updateshipment" call.
33733// Exactly one of *OrdersUpdateShipmentResponse or error will be
33734// non-nil. Any non-2xx status code is an error. Response headers are in
33735// either *OrdersUpdateShipmentResponse.ServerResponse.Header or (if a
33736// response was returned at all) in error.(*googleapi.Error).Header. Use
33737// googleapi.IsNotModified to check whether the returned error was
33738// because http.StatusNotModified was returned.
33739func (c *OrdersUpdateshipmentCall) Do(opts ...googleapi.CallOption) (*OrdersUpdateShipmentResponse, error) {
33740	gensupport.SetOptions(c.urlParams_, opts...)
33741	res, err := c.doRequest("json")
33742	if res != nil && res.StatusCode == http.StatusNotModified {
33743		if res.Body != nil {
33744			res.Body.Close()
33745		}
33746		return nil, &googleapi.Error{
33747			Code:   res.StatusCode,
33748			Header: res.Header,
33749		}
33750	}
33751	if err != nil {
33752		return nil, err
33753	}
33754	defer googleapi.CloseBody(res)
33755	if err := googleapi.CheckResponse(res); err != nil {
33756		return nil, err
33757	}
33758	ret := &OrdersUpdateShipmentResponse{
33759		ServerResponse: googleapi.ServerResponse{
33760			Header:         res.Header,
33761			HTTPStatusCode: res.StatusCode,
33762		},
33763	}
33764	target := &ret
33765	if err := gensupport.DecodeResponse(target, res); err != nil {
33766		return nil, err
33767	}
33768	return ret, nil
33769	// {
33770	//   "description": "Updates a shipment's status, carrier, and/or tracking ID.",
33771	//   "flatPath": "{merchantId}/orders/{orderId}/updateShipment",
33772	//   "httpMethod": "POST",
33773	//   "id": "content.orders.updateshipment",
33774	//   "parameterOrder": [
33775	//     "merchantId",
33776	//     "orderId"
33777	//   ],
33778	//   "parameters": {
33779	//     "merchantId": {
33780	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
33781	//       "format": "uint64",
33782	//       "location": "path",
33783	//       "required": true,
33784	//       "type": "string"
33785	//     },
33786	//     "orderId": {
33787	//       "description": "The ID of the order.",
33788	//       "location": "path",
33789	//       "required": true,
33790	//       "type": "string"
33791	//     }
33792	//   },
33793	//   "path": "{merchantId}/orders/{orderId}/updateShipment",
33794	//   "request": {
33795	//     "$ref": "OrdersUpdateShipmentRequest"
33796	//   },
33797	//   "response": {
33798	//     "$ref": "OrdersUpdateShipmentResponse"
33799	//   },
33800	//   "scopes": [
33801	//     "https://www.googleapis.com/auth/content"
33802	//   ]
33803	// }
33804
33805}
33806
33807// method id "content.ordertrackingsignals.create":
33808
33809type OrdertrackingsignalsCreateCall struct {
33810	s                   *APIService
33811	merchantId          int64
33812	ordertrackingsignal *OrderTrackingSignal
33813	urlParams_          gensupport.URLParams
33814	ctx_                context.Context
33815	header_             http.Header
33816}
33817
33818// Create: Creates new order tracking signal.
33819//
33820// - merchantId: The ID of the merchant for which the order signal is
33821//   created.
33822func (r *OrdertrackingsignalsService) Create(merchantId int64, ordertrackingsignal *OrderTrackingSignal) *OrdertrackingsignalsCreateCall {
33823	c := &OrdertrackingsignalsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33824	c.merchantId = merchantId
33825	c.ordertrackingsignal = ordertrackingsignal
33826	return c
33827}
33828
33829// Fields allows partial responses to be retrieved. See
33830// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33831// for more information.
33832func (c *OrdertrackingsignalsCreateCall) Fields(s ...googleapi.Field) *OrdertrackingsignalsCreateCall {
33833	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33834	return c
33835}
33836
33837// Context sets the context to be used in this call's Do method. Any
33838// pending HTTP request will be aborted if the provided context is
33839// canceled.
33840func (c *OrdertrackingsignalsCreateCall) Context(ctx context.Context) *OrdertrackingsignalsCreateCall {
33841	c.ctx_ = ctx
33842	return c
33843}
33844
33845// Header returns an http.Header that can be modified by the caller to
33846// add HTTP headers to the request.
33847func (c *OrdertrackingsignalsCreateCall) Header() http.Header {
33848	if c.header_ == nil {
33849		c.header_ = make(http.Header)
33850	}
33851	return c.header_
33852}
33853
33854func (c *OrdertrackingsignalsCreateCall) doRequest(alt string) (*http.Response, error) {
33855	reqHeaders := make(http.Header)
33856	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
33857	for k, v := range c.header_ {
33858		reqHeaders[k] = v
33859	}
33860	reqHeaders.Set("User-Agent", c.s.userAgent())
33861	var body io.Reader = nil
33862	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordertrackingsignal)
33863	if err != nil {
33864		return nil, err
33865	}
33866	reqHeaders.Set("Content-Type", "application/json")
33867	c.urlParams_.Set("alt", alt)
33868	c.urlParams_.Set("prettyPrint", "false")
33869	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/ordertrackingsignals")
33870	urls += "?" + c.urlParams_.Encode()
33871	req, err := http.NewRequest("POST", urls, body)
33872	if err != nil {
33873		return nil, err
33874	}
33875	req.Header = reqHeaders
33876	googleapi.Expand(req.URL, map[string]string{
33877		"merchantId": strconv.FormatInt(c.merchantId, 10),
33878	})
33879	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33880}
33881
33882// Do executes the "content.ordertrackingsignals.create" call.
33883// Exactly one of *OrderTrackingSignal or error will be non-nil. Any
33884// non-2xx status code is an error. Response headers are in either
33885// *OrderTrackingSignal.ServerResponse.Header or (if a response was
33886// returned at all) in error.(*googleapi.Error).Header. Use
33887// googleapi.IsNotModified to check whether the returned error was
33888// because http.StatusNotModified was returned.
33889func (c *OrdertrackingsignalsCreateCall) Do(opts ...googleapi.CallOption) (*OrderTrackingSignal, error) {
33890	gensupport.SetOptions(c.urlParams_, opts...)
33891	res, err := c.doRequest("json")
33892	if res != nil && res.StatusCode == http.StatusNotModified {
33893		if res.Body != nil {
33894			res.Body.Close()
33895		}
33896		return nil, &googleapi.Error{
33897			Code:   res.StatusCode,
33898			Header: res.Header,
33899		}
33900	}
33901	if err != nil {
33902		return nil, err
33903	}
33904	defer googleapi.CloseBody(res)
33905	if err := googleapi.CheckResponse(res); err != nil {
33906		return nil, err
33907	}
33908	ret := &OrderTrackingSignal{
33909		ServerResponse: googleapi.ServerResponse{
33910			Header:         res.Header,
33911			HTTPStatusCode: res.StatusCode,
33912		},
33913	}
33914	target := &ret
33915	if err := gensupport.DecodeResponse(target, res); err != nil {
33916		return nil, err
33917	}
33918	return ret, nil
33919	// {
33920	//   "description": "Creates new order tracking signal.",
33921	//   "flatPath": "{merchantId}/ordertrackingsignals",
33922	//   "httpMethod": "POST",
33923	//   "id": "content.ordertrackingsignals.create",
33924	//   "parameterOrder": [
33925	//     "merchantId"
33926	//   ],
33927	//   "parameters": {
33928	//     "merchantId": {
33929	//       "description": "The ID of the merchant for which the order signal is created.",
33930	//       "format": "int64",
33931	//       "location": "path",
33932	//       "required": true,
33933	//       "type": "string"
33934	//     }
33935	//   },
33936	//   "path": "{merchantId}/ordertrackingsignals",
33937	//   "request": {
33938	//     "$ref": "OrderTrackingSignal"
33939	//   },
33940	//   "response": {
33941	//     "$ref": "OrderTrackingSignal"
33942	//   },
33943	//   "scopes": [
33944	//     "https://www.googleapis.com/auth/content"
33945	//   ]
33946	// }
33947
33948}
33949
33950// method id "content.pos.custombatch":
33951
33952type PosCustombatchCall struct {
33953	s                     *APIService
33954	poscustombatchrequest *PosCustomBatchRequest
33955	urlParams_            gensupport.URLParams
33956	ctx_                  context.Context
33957	header_               http.Header
33958}
33959
33960// Custombatch: Batches multiple POS-related calls in a single request.
33961func (r *PosService) Custombatch(poscustombatchrequest *PosCustomBatchRequest) *PosCustombatchCall {
33962	c := &PosCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33963	c.poscustombatchrequest = poscustombatchrequest
33964	return c
33965}
33966
33967// Fields allows partial responses to be retrieved. See
33968// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33969// for more information.
33970func (c *PosCustombatchCall) Fields(s ...googleapi.Field) *PosCustombatchCall {
33971	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33972	return c
33973}
33974
33975// Context sets the context to be used in this call's Do method. Any
33976// pending HTTP request will be aborted if the provided context is
33977// canceled.
33978func (c *PosCustombatchCall) Context(ctx context.Context) *PosCustombatchCall {
33979	c.ctx_ = ctx
33980	return c
33981}
33982
33983// Header returns an http.Header that can be modified by the caller to
33984// add HTTP headers to the request.
33985func (c *PosCustombatchCall) Header() http.Header {
33986	if c.header_ == nil {
33987		c.header_ = make(http.Header)
33988	}
33989	return c.header_
33990}
33991
33992func (c *PosCustombatchCall) doRequest(alt string) (*http.Response, error) {
33993	reqHeaders := make(http.Header)
33994	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
33995	for k, v := range c.header_ {
33996		reqHeaders[k] = v
33997	}
33998	reqHeaders.Set("User-Agent", c.s.userAgent())
33999	var body io.Reader = nil
34000	body, err := googleapi.WithoutDataWrapper.JSONReader(c.poscustombatchrequest)
34001	if err != nil {
34002		return nil, err
34003	}
34004	reqHeaders.Set("Content-Type", "application/json")
34005	c.urlParams_.Set("alt", alt)
34006	c.urlParams_.Set("prettyPrint", "false")
34007	urls := googleapi.ResolveRelative(c.s.BasePath, "pos/batch")
34008	urls += "?" + c.urlParams_.Encode()
34009	req, err := http.NewRequest("POST", urls, body)
34010	if err != nil {
34011		return nil, err
34012	}
34013	req.Header = reqHeaders
34014	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34015}
34016
34017// Do executes the "content.pos.custombatch" call.
34018// Exactly one of *PosCustomBatchResponse or error will be non-nil. Any
34019// non-2xx status code is an error. Response headers are in either
34020// *PosCustomBatchResponse.ServerResponse.Header or (if a response was
34021// returned at all) in error.(*googleapi.Error).Header. Use
34022// googleapi.IsNotModified to check whether the returned error was
34023// because http.StatusNotModified was returned.
34024func (c *PosCustombatchCall) Do(opts ...googleapi.CallOption) (*PosCustomBatchResponse, error) {
34025	gensupport.SetOptions(c.urlParams_, opts...)
34026	res, err := c.doRequest("json")
34027	if res != nil && res.StatusCode == http.StatusNotModified {
34028		if res.Body != nil {
34029			res.Body.Close()
34030		}
34031		return nil, &googleapi.Error{
34032			Code:   res.StatusCode,
34033			Header: res.Header,
34034		}
34035	}
34036	if err != nil {
34037		return nil, err
34038	}
34039	defer googleapi.CloseBody(res)
34040	if err := googleapi.CheckResponse(res); err != nil {
34041		return nil, err
34042	}
34043	ret := &PosCustomBatchResponse{
34044		ServerResponse: googleapi.ServerResponse{
34045			Header:         res.Header,
34046			HTTPStatusCode: res.StatusCode,
34047		},
34048	}
34049	target := &ret
34050	if err := gensupport.DecodeResponse(target, res); err != nil {
34051		return nil, err
34052	}
34053	return ret, nil
34054	// {
34055	//   "description": "Batches multiple POS-related calls in a single request.",
34056	//   "flatPath": "pos/batch",
34057	//   "httpMethod": "POST",
34058	//   "id": "content.pos.custombatch",
34059	//   "parameterOrder": [],
34060	//   "parameters": {},
34061	//   "path": "pos/batch",
34062	//   "request": {
34063	//     "$ref": "PosCustomBatchRequest"
34064	//   },
34065	//   "response": {
34066	//     "$ref": "PosCustomBatchResponse"
34067	//   },
34068	//   "scopes": [
34069	//     "https://www.googleapis.com/auth/content"
34070	//   ]
34071	// }
34072
34073}
34074
34075// method id "content.pos.delete":
34076
34077type PosDeleteCall struct {
34078	s                *APIService
34079	merchantId       uint64
34080	targetMerchantId uint64
34081	storeCode        string
34082	urlParams_       gensupport.URLParams
34083	ctx_             context.Context
34084	header_          http.Header
34085}
34086
34087// Delete: Deletes a store for the given merchant.
34088//
34089// - merchantId: The ID of the POS or inventory data provider.
34090// - storeCode: A store code that is unique per merchant.
34091// - targetMerchantId: The ID of the target merchant.
34092func (r *PosService) Delete(merchantId uint64, targetMerchantId uint64, storeCode string) *PosDeleteCall {
34093	c := &PosDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34094	c.merchantId = merchantId
34095	c.targetMerchantId = targetMerchantId
34096	c.storeCode = storeCode
34097	return c
34098}
34099
34100// Fields allows partial responses to be retrieved. See
34101// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34102// for more information.
34103func (c *PosDeleteCall) Fields(s ...googleapi.Field) *PosDeleteCall {
34104	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34105	return c
34106}
34107
34108// Context sets the context to be used in this call's Do method. Any
34109// pending HTTP request will be aborted if the provided context is
34110// canceled.
34111func (c *PosDeleteCall) Context(ctx context.Context) *PosDeleteCall {
34112	c.ctx_ = ctx
34113	return c
34114}
34115
34116// Header returns an http.Header that can be modified by the caller to
34117// add HTTP headers to the request.
34118func (c *PosDeleteCall) Header() http.Header {
34119	if c.header_ == nil {
34120		c.header_ = make(http.Header)
34121	}
34122	return c.header_
34123}
34124
34125func (c *PosDeleteCall) doRequest(alt string) (*http.Response, error) {
34126	reqHeaders := make(http.Header)
34127	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
34128	for k, v := range c.header_ {
34129		reqHeaders[k] = v
34130	}
34131	reqHeaders.Set("User-Agent", c.s.userAgent())
34132	var body io.Reader = nil
34133	c.urlParams_.Set("alt", alt)
34134	c.urlParams_.Set("prettyPrint", "false")
34135	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/store/{storeCode}")
34136	urls += "?" + c.urlParams_.Encode()
34137	req, err := http.NewRequest("DELETE", urls, body)
34138	if err != nil {
34139		return nil, err
34140	}
34141	req.Header = reqHeaders
34142	googleapi.Expand(req.URL, map[string]string{
34143		"merchantId":       strconv.FormatUint(c.merchantId, 10),
34144		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
34145		"storeCode":        c.storeCode,
34146	})
34147	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34148}
34149
34150// Do executes the "content.pos.delete" call.
34151func (c *PosDeleteCall) Do(opts ...googleapi.CallOption) error {
34152	gensupport.SetOptions(c.urlParams_, opts...)
34153	res, err := c.doRequest("json")
34154	if err != nil {
34155		return err
34156	}
34157	defer googleapi.CloseBody(res)
34158	if err := googleapi.CheckResponse(res); err != nil {
34159		return err
34160	}
34161	return nil
34162	// {
34163	//   "description": "Deletes a store for the given merchant.",
34164	//   "flatPath": "{merchantId}/pos/{targetMerchantId}/store/{storeCode}",
34165	//   "httpMethod": "DELETE",
34166	//   "id": "content.pos.delete",
34167	//   "parameterOrder": [
34168	//     "merchantId",
34169	//     "targetMerchantId",
34170	//     "storeCode"
34171	//   ],
34172	//   "parameters": {
34173	//     "merchantId": {
34174	//       "description": "The ID of the POS or inventory data provider.",
34175	//       "format": "uint64",
34176	//       "location": "path",
34177	//       "required": true,
34178	//       "type": "string"
34179	//     },
34180	//     "storeCode": {
34181	//       "description": "A store code that is unique per merchant.",
34182	//       "location": "path",
34183	//       "required": true,
34184	//       "type": "string"
34185	//     },
34186	//     "targetMerchantId": {
34187	//       "description": "The ID of the target merchant.",
34188	//       "format": "uint64",
34189	//       "location": "path",
34190	//       "required": true,
34191	//       "type": "string"
34192	//     }
34193	//   },
34194	//   "path": "{merchantId}/pos/{targetMerchantId}/store/{storeCode}",
34195	//   "scopes": [
34196	//     "https://www.googleapis.com/auth/content"
34197	//   ]
34198	// }
34199
34200}
34201
34202// method id "content.pos.get":
34203
34204type PosGetCall struct {
34205	s                *APIService
34206	merchantId       uint64
34207	targetMerchantId uint64
34208	storeCode        string
34209	urlParams_       gensupport.URLParams
34210	ifNoneMatch_     string
34211	ctx_             context.Context
34212	header_          http.Header
34213}
34214
34215// Get: Retrieves information about the given store.
34216//
34217// - merchantId: The ID of the POS or inventory data provider.
34218// - storeCode: A store code that is unique per merchant.
34219// - targetMerchantId: The ID of the target merchant.
34220func (r *PosService) Get(merchantId uint64, targetMerchantId uint64, storeCode string) *PosGetCall {
34221	c := &PosGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34222	c.merchantId = merchantId
34223	c.targetMerchantId = targetMerchantId
34224	c.storeCode = storeCode
34225	return c
34226}
34227
34228// Fields allows partial responses to be retrieved. See
34229// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34230// for more information.
34231func (c *PosGetCall) Fields(s ...googleapi.Field) *PosGetCall {
34232	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34233	return c
34234}
34235
34236// IfNoneMatch sets the optional parameter which makes the operation
34237// fail if the object's ETag matches the given value. This is useful for
34238// getting updates only after the object has changed since the last
34239// request. Use googleapi.IsNotModified to check whether the response
34240// error from Do is the result of In-None-Match.
34241func (c *PosGetCall) IfNoneMatch(entityTag string) *PosGetCall {
34242	c.ifNoneMatch_ = entityTag
34243	return c
34244}
34245
34246// Context sets the context to be used in this call's Do method. Any
34247// pending HTTP request will be aborted if the provided context is
34248// canceled.
34249func (c *PosGetCall) Context(ctx context.Context) *PosGetCall {
34250	c.ctx_ = ctx
34251	return c
34252}
34253
34254// Header returns an http.Header that can be modified by the caller to
34255// add HTTP headers to the request.
34256func (c *PosGetCall) Header() http.Header {
34257	if c.header_ == nil {
34258		c.header_ = make(http.Header)
34259	}
34260	return c.header_
34261}
34262
34263func (c *PosGetCall) doRequest(alt string) (*http.Response, error) {
34264	reqHeaders := make(http.Header)
34265	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
34266	for k, v := range c.header_ {
34267		reqHeaders[k] = v
34268	}
34269	reqHeaders.Set("User-Agent", c.s.userAgent())
34270	if c.ifNoneMatch_ != "" {
34271		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
34272	}
34273	var body io.Reader = nil
34274	c.urlParams_.Set("alt", alt)
34275	c.urlParams_.Set("prettyPrint", "false")
34276	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/store/{storeCode}")
34277	urls += "?" + c.urlParams_.Encode()
34278	req, err := http.NewRequest("GET", urls, body)
34279	if err != nil {
34280		return nil, err
34281	}
34282	req.Header = reqHeaders
34283	googleapi.Expand(req.URL, map[string]string{
34284		"merchantId":       strconv.FormatUint(c.merchantId, 10),
34285		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
34286		"storeCode":        c.storeCode,
34287	})
34288	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34289}
34290
34291// Do executes the "content.pos.get" call.
34292// Exactly one of *PosStore or error will be non-nil. Any non-2xx status
34293// code is an error. Response headers are in either
34294// *PosStore.ServerResponse.Header or (if a response was returned at
34295// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
34296// to check whether the returned error was because
34297// http.StatusNotModified was returned.
34298func (c *PosGetCall) Do(opts ...googleapi.CallOption) (*PosStore, error) {
34299	gensupport.SetOptions(c.urlParams_, opts...)
34300	res, err := c.doRequest("json")
34301	if res != nil && res.StatusCode == http.StatusNotModified {
34302		if res.Body != nil {
34303			res.Body.Close()
34304		}
34305		return nil, &googleapi.Error{
34306			Code:   res.StatusCode,
34307			Header: res.Header,
34308		}
34309	}
34310	if err != nil {
34311		return nil, err
34312	}
34313	defer googleapi.CloseBody(res)
34314	if err := googleapi.CheckResponse(res); err != nil {
34315		return nil, err
34316	}
34317	ret := &PosStore{
34318		ServerResponse: googleapi.ServerResponse{
34319			Header:         res.Header,
34320			HTTPStatusCode: res.StatusCode,
34321		},
34322	}
34323	target := &ret
34324	if err := gensupport.DecodeResponse(target, res); err != nil {
34325		return nil, err
34326	}
34327	return ret, nil
34328	// {
34329	//   "description": "Retrieves information about the given store.",
34330	//   "flatPath": "{merchantId}/pos/{targetMerchantId}/store/{storeCode}",
34331	//   "httpMethod": "GET",
34332	//   "id": "content.pos.get",
34333	//   "parameterOrder": [
34334	//     "merchantId",
34335	//     "targetMerchantId",
34336	//     "storeCode"
34337	//   ],
34338	//   "parameters": {
34339	//     "merchantId": {
34340	//       "description": "The ID of the POS or inventory data provider.",
34341	//       "format": "uint64",
34342	//       "location": "path",
34343	//       "required": true,
34344	//       "type": "string"
34345	//     },
34346	//     "storeCode": {
34347	//       "description": "A store code that is unique per merchant.",
34348	//       "location": "path",
34349	//       "required": true,
34350	//       "type": "string"
34351	//     },
34352	//     "targetMerchantId": {
34353	//       "description": "The ID of the target merchant.",
34354	//       "format": "uint64",
34355	//       "location": "path",
34356	//       "required": true,
34357	//       "type": "string"
34358	//     }
34359	//   },
34360	//   "path": "{merchantId}/pos/{targetMerchantId}/store/{storeCode}",
34361	//   "response": {
34362	//     "$ref": "PosStore"
34363	//   },
34364	//   "scopes": [
34365	//     "https://www.googleapis.com/auth/content"
34366	//   ]
34367	// }
34368
34369}
34370
34371// method id "content.pos.insert":
34372
34373type PosInsertCall struct {
34374	s                *APIService
34375	merchantId       uint64
34376	targetMerchantId uint64
34377	posstore         *PosStore
34378	urlParams_       gensupport.URLParams
34379	ctx_             context.Context
34380	header_          http.Header
34381}
34382
34383// Insert: Creates a store for the given merchant.
34384//
34385// - merchantId: The ID of the POS or inventory data provider.
34386// - targetMerchantId: The ID of the target merchant.
34387func (r *PosService) Insert(merchantId uint64, targetMerchantId uint64, posstore *PosStore) *PosInsertCall {
34388	c := &PosInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34389	c.merchantId = merchantId
34390	c.targetMerchantId = targetMerchantId
34391	c.posstore = posstore
34392	return c
34393}
34394
34395// Fields allows partial responses to be retrieved. See
34396// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34397// for more information.
34398func (c *PosInsertCall) Fields(s ...googleapi.Field) *PosInsertCall {
34399	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34400	return c
34401}
34402
34403// Context sets the context to be used in this call's Do method. Any
34404// pending HTTP request will be aborted if the provided context is
34405// canceled.
34406func (c *PosInsertCall) Context(ctx context.Context) *PosInsertCall {
34407	c.ctx_ = ctx
34408	return c
34409}
34410
34411// Header returns an http.Header that can be modified by the caller to
34412// add HTTP headers to the request.
34413func (c *PosInsertCall) Header() http.Header {
34414	if c.header_ == nil {
34415		c.header_ = make(http.Header)
34416	}
34417	return c.header_
34418}
34419
34420func (c *PosInsertCall) doRequest(alt string) (*http.Response, error) {
34421	reqHeaders := make(http.Header)
34422	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
34423	for k, v := range c.header_ {
34424		reqHeaders[k] = v
34425	}
34426	reqHeaders.Set("User-Agent", c.s.userAgent())
34427	var body io.Reader = nil
34428	body, err := googleapi.WithoutDataWrapper.JSONReader(c.posstore)
34429	if err != nil {
34430		return nil, err
34431	}
34432	reqHeaders.Set("Content-Type", "application/json")
34433	c.urlParams_.Set("alt", alt)
34434	c.urlParams_.Set("prettyPrint", "false")
34435	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/store")
34436	urls += "?" + c.urlParams_.Encode()
34437	req, err := http.NewRequest("POST", urls, body)
34438	if err != nil {
34439		return nil, err
34440	}
34441	req.Header = reqHeaders
34442	googleapi.Expand(req.URL, map[string]string{
34443		"merchantId":       strconv.FormatUint(c.merchantId, 10),
34444		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
34445	})
34446	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34447}
34448
34449// Do executes the "content.pos.insert" call.
34450// Exactly one of *PosStore or error will be non-nil. Any non-2xx status
34451// code is an error. Response headers are in either
34452// *PosStore.ServerResponse.Header or (if a response was returned at
34453// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
34454// to check whether the returned error was because
34455// http.StatusNotModified was returned.
34456func (c *PosInsertCall) Do(opts ...googleapi.CallOption) (*PosStore, error) {
34457	gensupport.SetOptions(c.urlParams_, opts...)
34458	res, err := c.doRequest("json")
34459	if res != nil && res.StatusCode == http.StatusNotModified {
34460		if res.Body != nil {
34461			res.Body.Close()
34462		}
34463		return nil, &googleapi.Error{
34464			Code:   res.StatusCode,
34465			Header: res.Header,
34466		}
34467	}
34468	if err != nil {
34469		return nil, err
34470	}
34471	defer googleapi.CloseBody(res)
34472	if err := googleapi.CheckResponse(res); err != nil {
34473		return nil, err
34474	}
34475	ret := &PosStore{
34476		ServerResponse: googleapi.ServerResponse{
34477			Header:         res.Header,
34478			HTTPStatusCode: res.StatusCode,
34479		},
34480	}
34481	target := &ret
34482	if err := gensupport.DecodeResponse(target, res); err != nil {
34483		return nil, err
34484	}
34485	return ret, nil
34486	// {
34487	//   "description": "Creates a store for the given merchant.",
34488	//   "flatPath": "{merchantId}/pos/{targetMerchantId}/store",
34489	//   "httpMethod": "POST",
34490	//   "id": "content.pos.insert",
34491	//   "parameterOrder": [
34492	//     "merchantId",
34493	//     "targetMerchantId"
34494	//   ],
34495	//   "parameters": {
34496	//     "merchantId": {
34497	//       "description": "The ID of the POS or inventory data provider.",
34498	//       "format": "uint64",
34499	//       "location": "path",
34500	//       "required": true,
34501	//       "type": "string"
34502	//     },
34503	//     "targetMerchantId": {
34504	//       "description": "The ID of the target merchant.",
34505	//       "format": "uint64",
34506	//       "location": "path",
34507	//       "required": true,
34508	//       "type": "string"
34509	//     }
34510	//   },
34511	//   "path": "{merchantId}/pos/{targetMerchantId}/store",
34512	//   "request": {
34513	//     "$ref": "PosStore"
34514	//   },
34515	//   "response": {
34516	//     "$ref": "PosStore"
34517	//   },
34518	//   "scopes": [
34519	//     "https://www.googleapis.com/auth/content"
34520	//   ]
34521	// }
34522
34523}
34524
34525// method id "content.pos.inventory":
34526
34527type PosInventoryCall struct {
34528	s                   *APIService
34529	merchantId          uint64
34530	targetMerchantId    uint64
34531	posinventoryrequest *PosInventoryRequest
34532	urlParams_          gensupport.URLParams
34533	ctx_                context.Context
34534	header_             http.Header
34535}
34536
34537// Inventory: Submit inventory for the given merchant.
34538//
34539// - merchantId: The ID of the POS or inventory data provider.
34540// - targetMerchantId: The ID of the target merchant.
34541func (r *PosService) Inventory(merchantId uint64, targetMerchantId uint64, posinventoryrequest *PosInventoryRequest) *PosInventoryCall {
34542	c := &PosInventoryCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34543	c.merchantId = merchantId
34544	c.targetMerchantId = targetMerchantId
34545	c.posinventoryrequest = posinventoryrequest
34546	return c
34547}
34548
34549// Fields allows partial responses to be retrieved. See
34550// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34551// for more information.
34552func (c *PosInventoryCall) Fields(s ...googleapi.Field) *PosInventoryCall {
34553	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34554	return c
34555}
34556
34557// Context sets the context to be used in this call's Do method. Any
34558// pending HTTP request will be aborted if the provided context is
34559// canceled.
34560func (c *PosInventoryCall) Context(ctx context.Context) *PosInventoryCall {
34561	c.ctx_ = ctx
34562	return c
34563}
34564
34565// Header returns an http.Header that can be modified by the caller to
34566// add HTTP headers to the request.
34567func (c *PosInventoryCall) Header() http.Header {
34568	if c.header_ == nil {
34569		c.header_ = make(http.Header)
34570	}
34571	return c.header_
34572}
34573
34574func (c *PosInventoryCall) doRequest(alt string) (*http.Response, error) {
34575	reqHeaders := make(http.Header)
34576	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
34577	for k, v := range c.header_ {
34578		reqHeaders[k] = v
34579	}
34580	reqHeaders.Set("User-Agent", c.s.userAgent())
34581	var body io.Reader = nil
34582	body, err := googleapi.WithoutDataWrapper.JSONReader(c.posinventoryrequest)
34583	if err != nil {
34584		return nil, err
34585	}
34586	reqHeaders.Set("Content-Type", "application/json")
34587	c.urlParams_.Set("alt", alt)
34588	c.urlParams_.Set("prettyPrint", "false")
34589	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/inventory")
34590	urls += "?" + c.urlParams_.Encode()
34591	req, err := http.NewRequest("POST", urls, body)
34592	if err != nil {
34593		return nil, err
34594	}
34595	req.Header = reqHeaders
34596	googleapi.Expand(req.URL, map[string]string{
34597		"merchantId":       strconv.FormatUint(c.merchantId, 10),
34598		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
34599	})
34600	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34601}
34602
34603// Do executes the "content.pos.inventory" call.
34604// Exactly one of *PosInventoryResponse or error will be non-nil. Any
34605// non-2xx status code is an error. Response headers are in either
34606// *PosInventoryResponse.ServerResponse.Header or (if a response was
34607// returned at all) in error.(*googleapi.Error).Header. Use
34608// googleapi.IsNotModified to check whether the returned error was
34609// because http.StatusNotModified was returned.
34610func (c *PosInventoryCall) Do(opts ...googleapi.CallOption) (*PosInventoryResponse, error) {
34611	gensupport.SetOptions(c.urlParams_, opts...)
34612	res, err := c.doRequest("json")
34613	if res != nil && res.StatusCode == http.StatusNotModified {
34614		if res.Body != nil {
34615			res.Body.Close()
34616		}
34617		return nil, &googleapi.Error{
34618			Code:   res.StatusCode,
34619			Header: res.Header,
34620		}
34621	}
34622	if err != nil {
34623		return nil, err
34624	}
34625	defer googleapi.CloseBody(res)
34626	if err := googleapi.CheckResponse(res); err != nil {
34627		return nil, err
34628	}
34629	ret := &PosInventoryResponse{
34630		ServerResponse: googleapi.ServerResponse{
34631			Header:         res.Header,
34632			HTTPStatusCode: res.StatusCode,
34633		},
34634	}
34635	target := &ret
34636	if err := gensupport.DecodeResponse(target, res); err != nil {
34637		return nil, err
34638	}
34639	return ret, nil
34640	// {
34641	//   "description": "Submit inventory for the given merchant.",
34642	//   "flatPath": "{merchantId}/pos/{targetMerchantId}/inventory",
34643	//   "httpMethod": "POST",
34644	//   "id": "content.pos.inventory",
34645	//   "parameterOrder": [
34646	//     "merchantId",
34647	//     "targetMerchantId"
34648	//   ],
34649	//   "parameters": {
34650	//     "merchantId": {
34651	//       "description": "The ID of the POS or inventory data provider.",
34652	//       "format": "uint64",
34653	//       "location": "path",
34654	//       "required": true,
34655	//       "type": "string"
34656	//     },
34657	//     "targetMerchantId": {
34658	//       "description": "The ID of the target merchant.",
34659	//       "format": "uint64",
34660	//       "location": "path",
34661	//       "required": true,
34662	//       "type": "string"
34663	//     }
34664	//   },
34665	//   "path": "{merchantId}/pos/{targetMerchantId}/inventory",
34666	//   "request": {
34667	//     "$ref": "PosInventoryRequest"
34668	//   },
34669	//   "response": {
34670	//     "$ref": "PosInventoryResponse"
34671	//   },
34672	//   "scopes": [
34673	//     "https://www.googleapis.com/auth/content"
34674	//   ]
34675	// }
34676
34677}
34678
34679// method id "content.pos.list":
34680
34681type PosListCall struct {
34682	s                *APIService
34683	merchantId       uint64
34684	targetMerchantId uint64
34685	urlParams_       gensupport.URLParams
34686	ifNoneMatch_     string
34687	ctx_             context.Context
34688	header_          http.Header
34689}
34690
34691// List: Lists the stores of the target merchant.
34692//
34693// - merchantId: The ID of the POS or inventory data provider.
34694// - targetMerchantId: The ID of the target merchant.
34695func (r *PosService) List(merchantId uint64, targetMerchantId uint64) *PosListCall {
34696	c := &PosListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34697	c.merchantId = merchantId
34698	c.targetMerchantId = targetMerchantId
34699	return c
34700}
34701
34702// Fields allows partial responses to be retrieved. See
34703// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34704// for more information.
34705func (c *PosListCall) Fields(s ...googleapi.Field) *PosListCall {
34706	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34707	return c
34708}
34709
34710// IfNoneMatch sets the optional parameter which makes the operation
34711// fail if the object's ETag matches the given value. This is useful for
34712// getting updates only after the object has changed since the last
34713// request. Use googleapi.IsNotModified to check whether the response
34714// error from Do is the result of In-None-Match.
34715func (c *PosListCall) IfNoneMatch(entityTag string) *PosListCall {
34716	c.ifNoneMatch_ = entityTag
34717	return c
34718}
34719
34720// Context sets the context to be used in this call's Do method. Any
34721// pending HTTP request will be aborted if the provided context is
34722// canceled.
34723func (c *PosListCall) Context(ctx context.Context) *PosListCall {
34724	c.ctx_ = ctx
34725	return c
34726}
34727
34728// Header returns an http.Header that can be modified by the caller to
34729// add HTTP headers to the request.
34730func (c *PosListCall) Header() http.Header {
34731	if c.header_ == nil {
34732		c.header_ = make(http.Header)
34733	}
34734	return c.header_
34735}
34736
34737func (c *PosListCall) doRequest(alt string) (*http.Response, error) {
34738	reqHeaders := make(http.Header)
34739	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
34740	for k, v := range c.header_ {
34741		reqHeaders[k] = v
34742	}
34743	reqHeaders.Set("User-Agent", c.s.userAgent())
34744	if c.ifNoneMatch_ != "" {
34745		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
34746	}
34747	var body io.Reader = nil
34748	c.urlParams_.Set("alt", alt)
34749	c.urlParams_.Set("prettyPrint", "false")
34750	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/store")
34751	urls += "?" + c.urlParams_.Encode()
34752	req, err := http.NewRequest("GET", urls, body)
34753	if err != nil {
34754		return nil, err
34755	}
34756	req.Header = reqHeaders
34757	googleapi.Expand(req.URL, map[string]string{
34758		"merchantId":       strconv.FormatUint(c.merchantId, 10),
34759		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
34760	})
34761	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34762}
34763
34764// Do executes the "content.pos.list" call.
34765// Exactly one of *PosListResponse or error will be non-nil. Any non-2xx
34766// status code is an error. Response headers are in either
34767// *PosListResponse.ServerResponse.Header or (if a response was returned
34768// at all) in error.(*googleapi.Error).Header. Use
34769// googleapi.IsNotModified to check whether the returned error was
34770// because http.StatusNotModified was returned.
34771func (c *PosListCall) Do(opts ...googleapi.CallOption) (*PosListResponse, error) {
34772	gensupport.SetOptions(c.urlParams_, opts...)
34773	res, err := c.doRequest("json")
34774	if res != nil && res.StatusCode == http.StatusNotModified {
34775		if res.Body != nil {
34776			res.Body.Close()
34777		}
34778		return nil, &googleapi.Error{
34779			Code:   res.StatusCode,
34780			Header: res.Header,
34781		}
34782	}
34783	if err != nil {
34784		return nil, err
34785	}
34786	defer googleapi.CloseBody(res)
34787	if err := googleapi.CheckResponse(res); err != nil {
34788		return nil, err
34789	}
34790	ret := &PosListResponse{
34791		ServerResponse: googleapi.ServerResponse{
34792			Header:         res.Header,
34793			HTTPStatusCode: res.StatusCode,
34794		},
34795	}
34796	target := &ret
34797	if err := gensupport.DecodeResponse(target, res); err != nil {
34798		return nil, err
34799	}
34800	return ret, nil
34801	// {
34802	//   "description": "Lists the stores of the target merchant.",
34803	//   "flatPath": "{merchantId}/pos/{targetMerchantId}/store",
34804	//   "httpMethod": "GET",
34805	//   "id": "content.pos.list",
34806	//   "parameterOrder": [
34807	//     "merchantId",
34808	//     "targetMerchantId"
34809	//   ],
34810	//   "parameters": {
34811	//     "merchantId": {
34812	//       "description": "The ID of the POS or inventory data provider.",
34813	//       "format": "uint64",
34814	//       "location": "path",
34815	//       "required": true,
34816	//       "type": "string"
34817	//     },
34818	//     "targetMerchantId": {
34819	//       "description": "The ID of the target merchant.",
34820	//       "format": "uint64",
34821	//       "location": "path",
34822	//       "required": true,
34823	//       "type": "string"
34824	//     }
34825	//   },
34826	//   "path": "{merchantId}/pos/{targetMerchantId}/store",
34827	//   "response": {
34828	//     "$ref": "PosListResponse"
34829	//   },
34830	//   "scopes": [
34831	//     "https://www.googleapis.com/auth/content"
34832	//   ]
34833	// }
34834
34835}
34836
34837// method id "content.pos.sale":
34838
34839type PosSaleCall struct {
34840	s                *APIService
34841	merchantId       uint64
34842	targetMerchantId uint64
34843	possalerequest   *PosSaleRequest
34844	urlParams_       gensupport.URLParams
34845	ctx_             context.Context
34846	header_          http.Header
34847}
34848
34849// Sale: Submit a sale event for the given merchant.
34850//
34851// - merchantId: The ID of the POS or inventory data provider.
34852// - targetMerchantId: The ID of the target merchant.
34853func (r *PosService) Sale(merchantId uint64, targetMerchantId uint64, possalerequest *PosSaleRequest) *PosSaleCall {
34854	c := &PosSaleCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34855	c.merchantId = merchantId
34856	c.targetMerchantId = targetMerchantId
34857	c.possalerequest = possalerequest
34858	return c
34859}
34860
34861// Fields allows partial responses to be retrieved. See
34862// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34863// for more information.
34864func (c *PosSaleCall) Fields(s ...googleapi.Field) *PosSaleCall {
34865	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34866	return c
34867}
34868
34869// Context sets the context to be used in this call's Do method. Any
34870// pending HTTP request will be aborted if the provided context is
34871// canceled.
34872func (c *PosSaleCall) Context(ctx context.Context) *PosSaleCall {
34873	c.ctx_ = ctx
34874	return c
34875}
34876
34877// Header returns an http.Header that can be modified by the caller to
34878// add HTTP headers to the request.
34879func (c *PosSaleCall) Header() http.Header {
34880	if c.header_ == nil {
34881		c.header_ = make(http.Header)
34882	}
34883	return c.header_
34884}
34885
34886func (c *PosSaleCall) doRequest(alt string) (*http.Response, error) {
34887	reqHeaders := make(http.Header)
34888	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
34889	for k, v := range c.header_ {
34890		reqHeaders[k] = v
34891	}
34892	reqHeaders.Set("User-Agent", c.s.userAgent())
34893	var body io.Reader = nil
34894	body, err := googleapi.WithoutDataWrapper.JSONReader(c.possalerequest)
34895	if err != nil {
34896		return nil, err
34897	}
34898	reqHeaders.Set("Content-Type", "application/json")
34899	c.urlParams_.Set("alt", alt)
34900	c.urlParams_.Set("prettyPrint", "false")
34901	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/sale")
34902	urls += "?" + c.urlParams_.Encode()
34903	req, err := http.NewRequest("POST", urls, body)
34904	if err != nil {
34905		return nil, err
34906	}
34907	req.Header = reqHeaders
34908	googleapi.Expand(req.URL, map[string]string{
34909		"merchantId":       strconv.FormatUint(c.merchantId, 10),
34910		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
34911	})
34912	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34913}
34914
34915// Do executes the "content.pos.sale" call.
34916// Exactly one of *PosSaleResponse or error will be non-nil. Any non-2xx
34917// status code is an error. Response headers are in either
34918// *PosSaleResponse.ServerResponse.Header or (if a response was returned
34919// at all) in error.(*googleapi.Error).Header. Use
34920// googleapi.IsNotModified to check whether the returned error was
34921// because http.StatusNotModified was returned.
34922func (c *PosSaleCall) Do(opts ...googleapi.CallOption) (*PosSaleResponse, error) {
34923	gensupport.SetOptions(c.urlParams_, opts...)
34924	res, err := c.doRequest("json")
34925	if res != nil && res.StatusCode == http.StatusNotModified {
34926		if res.Body != nil {
34927			res.Body.Close()
34928		}
34929		return nil, &googleapi.Error{
34930			Code:   res.StatusCode,
34931			Header: res.Header,
34932		}
34933	}
34934	if err != nil {
34935		return nil, err
34936	}
34937	defer googleapi.CloseBody(res)
34938	if err := googleapi.CheckResponse(res); err != nil {
34939		return nil, err
34940	}
34941	ret := &PosSaleResponse{
34942		ServerResponse: googleapi.ServerResponse{
34943			Header:         res.Header,
34944			HTTPStatusCode: res.StatusCode,
34945		},
34946	}
34947	target := &ret
34948	if err := gensupport.DecodeResponse(target, res); err != nil {
34949		return nil, err
34950	}
34951	return ret, nil
34952	// {
34953	//   "description": "Submit a sale event for the given merchant.",
34954	//   "flatPath": "{merchantId}/pos/{targetMerchantId}/sale",
34955	//   "httpMethod": "POST",
34956	//   "id": "content.pos.sale",
34957	//   "parameterOrder": [
34958	//     "merchantId",
34959	//     "targetMerchantId"
34960	//   ],
34961	//   "parameters": {
34962	//     "merchantId": {
34963	//       "description": "The ID of the POS or inventory data provider.",
34964	//       "format": "uint64",
34965	//       "location": "path",
34966	//       "required": true,
34967	//       "type": "string"
34968	//     },
34969	//     "targetMerchantId": {
34970	//       "description": "The ID of the target merchant.",
34971	//       "format": "uint64",
34972	//       "location": "path",
34973	//       "required": true,
34974	//       "type": "string"
34975	//     }
34976	//   },
34977	//   "path": "{merchantId}/pos/{targetMerchantId}/sale",
34978	//   "request": {
34979	//     "$ref": "PosSaleRequest"
34980	//   },
34981	//   "response": {
34982	//     "$ref": "PosSaleResponse"
34983	//   },
34984	//   "scopes": [
34985	//     "https://www.googleapis.com/auth/content"
34986	//   ]
34987	// }
34988
34989}
34990
34991// method id "content.products.custombatch":
34992
34993type ProductsCustombatchCall struct {
34994	s                          *APIService
34995	productscustombatchrequest *ProductsCustomBatchRequest
34996	urlParams_                 gensupport.URLParams
34997	ctx_                       context.Context
34998	header_                    http.Header
34999}
35000
35001// Custombatch: Retrieves, inserts, and deletes multiple products in a
35002// single request.
35003func (r *ProductsService) Custombatch(productscustombatchrequest *ProductsCustomBatchRequest) *ProductsCustombatchCall {
35004	c := &ProductsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
35005	c.productscustombatchrequest = productscustombatchrequest
35006	return c
35007}
35008
35009// Fields allows partial responses to be retrieved. See
35010// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
35011// for more information.
35012func (c *ProductsCustombatchCall) Fields(s ...googleapi.Field) *ProductsCustombatchCall {
35013	c.urlParams_.Set("fields", googleapi.CombineFields(s))
35014	return c
35015}
35016
35017// Context sets the context to be used in this call's Do method. Any
35018// pending HTTP request will be aborted if the provided context is
35019// canceled.
35020func (c *ProductsCustombatchCall) Context(ctx context.Context) *ProductsCustombatchCall {
35021	c.ctx_ = ctx
35022	return c
35023}
35024
35025// Header returns an http.Header that can be modified by the caller to
35026// add HTTP headers to the request.
35027func (c *ProductsCustombatchCall) Header() http.Header {
35028	if c.header_ == nil {
35029		c.header_ = make(http.Header)
35030	}
35031	return c.header_
35032}
35033
35034func (c *ProductsCustombatchCall) doRequest(alt string) (*http.Response, error) {
35035	reqHeaders := make(http.Header)
35036	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
35037	for k, v := range c.header_ {
35038		reqHeaders[k] = v
35039	}
35040	reqHeaders.Set("User-Agent", c.s.userAgent())
35041	var body io.Reader = nil
35042	body, err := googleapi.WithoutDataWrapper.JSONReader(c.productscustombatchrequest)
35043	if err != nil {
35044		return nil, err
35045	}
35046	reqHeaders.Set("Content-Type", "application/json")
35047	c.urlParams_.Set("alt", alt)
35048	c.urlParams_.Set("prettyPrint", "false")
35049	urls := googleapi.ResolveRelative(c.s.BasePath, "products/batch")
35050	urls += "?" + c.urlParams_.Encode()
35051	req, err := http.NewRequest("POST", urls, body)
35052	if err != nil {
35053		return nil, err
35054	}
35055	req.Header = reqHeaders
35056	return gensupport.SendRequest(c.ctx_, c.s.client, req)
35057}
35058
35059// Do executes the "content.products.custombatch" call.
35060// Exactly one of *ProductsCustomBatchResponse or error will be non-nil.
35061// Any non-2xx status code is an error. Response headers are in either
35062// *ProductsCustomBatchResponse.ServerResponse.Header or (if a response
35063// was returned at all) in error.(*googleapi.Error).Header. Use
35064// googleapi.IsNotModified to check whether the returned error was
35065// because http.StatusNotModified was returned.
35066func (c *ProductsCustombatchCall) Do(opts ...googleapi.CallOption) (*ProductsCustomBatchResponse, error) {
35067	gensupport.SetOptions(c.urlParams_, opts...)
35068	res, err := c.doRequest("json")
35069	if res != nil && res.StatusCode == http.StatusNotModified {
35070		if res.Body != nil {
35071			res.Body.Close()
35072		}
35073		return nil, &googleapi.Error{
35074			Code:   res.StatusCode,
35075			Header: res.Header,
35076		}
35077	}
35078	if err != nil {
35079		return nil, err
35080	}
35081	defer googleapi.CloseBody(res)
35082	if err := googleapi.CheckResponse(res); err != nil {
35083		return nil, err
35084	}
35085	ret := &ProductsCustomBatchResponse{
35086		ServerResponse: googleapi.ServerResponse{
35087			Header:         res.Header,
35088			HTTPStatusCode: res.StatusCode,
35089		},
35090	}
35091	target := &ret
35092	if err := gensupport.DecodeResponse(target, res); err != nil {
35093		return nil, err
35094	}
35095	return ret, nil
35096	// {
35097	//   "description": "Retrieves, inserts, and deletes multiple products in a single request.",
35098	//   "flatPath": "products/batch",
35099	//   "httpMethod": "POST",
35100	//   "id": "content.products.custombatch",
35101	//   "parameterOrder": [],
35102	//   "parameters": {},
35103	//   "path": "products/batch",
35104	//   "request": {
35105	//     "$ref": "ProductsCustomBatchRequest"
35106	//   },
35107	//   "response": {
35108	//     "$ref": "ProductsCustomBatchResponse"
35109	//   },
35110	//   "scopes": [
35111	//     "https://www.googleapis.com/auth/content"
35112	//   ]
35113	// }
35114
35115}
35116
35117// method id "content.products.delete":
35118
35119type ProductsDeleteCall struct {
35120	s          *APIService
35121	merchantId uint64
35122	productId  string
35123	urlParams_ gensupport.URLParams
35124	ctx_       context.Context
35125	header_    http.Header
35126}
35127
35128// Delete: Deletes a product from your Merchant Center account.
35129//
35130// - merchantId: The ID of the account that contains the product. This
35131//   account cannot be a multi-client account.
35132// - productId: The REST ID of the product.
35133func (r *ProductsService) Delete(merchantId uint64, productId string) *ProductsDeleteCall {
35134	c := &ProductsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
35135	c.merchantId = merchantId
35136	c.productId = productId
35137	return c
35138}
35139
35140// FeedId sets the optional parameter "feedId": The Content API
35141// Supplemental Feed ID. If present then product deletion applies to the
35142// data in a supplemental feed. If absent, entire product will be
35143// deleted.
35144func (c *ProductsDeleteCall) FeedId(feedId uint64) *ProductsDeleteCall {
35145	c.urlParams_.Set("feedId", fmt.Sprint(feedId))
35146	return c
35147}
35148
35149// Fields allows partial responses to be retrieved. See
35150// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
35151// for more information.
35152func (c *ProductsDeleteCall) Fields(s ...googleapi.Field) *ProductsDeleteCall {
35153	c.urlParams_.Set("fields", googleapi.CombineFields(s))
35154	return c
35155}
35156
35157// Context sets the context to be used in this call's Do method. Any
35158// pending HTTP request will be aborted if the provided context is
35159// canceled.
35160func (c *ProductsDeleteCall) Context(ctx context.Context) *ProductsDeleteCall {
35161	c.ctx_ = ctx
35162	return c
35163}
35164
35165// Header returns an http.Header that can be modified by the caller to
35166// add HTTP headers to the request.
35167func (c *ProductsDeleteCall) Header() http.Header {
35168	if c.header_ == nil {
35169		c.header_ = make(http.Header)
35170	}
35171	return c.header_
35172}
35173
35174func (c *ProductsDeleteCall) doRequest(alt string) (*http.Response, error) {
35175	reqHeaders := make(http.Header)
35176	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
35177	for k, v := range c.header_ {
35178		reqHeaders[k] = v
35179	}
35180	reqHeaders.Set("User-Agent", c.s.userAgent())
35181	var body io.Reader = nil
35182	c.urlParams_.Set("alt", alt)
35183	c.urlParams_.Set("prettyPrint", "false")
35184	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products/{productId}")
35185	urls += "?" + c.urlParams_.Encode()
35186	req, err := http.NewRequest("DELETE", urls, body)
35187	if err != nil {
35188		return nil, err
35189	}
35190	req.Header = reqHeaders
35191	googleapi.Expand(req.URL, map[string]string{
35192		"merchantId": strconv.FormatUint(c.merchantId, 10),
35193		"productId":  c.productId,
35194	})
35195	return gensupport.SendRequest(c.ctx_, c.s.client, req)
35196}
35197
35198// Do executes the "content.products.delete" call.
35199func (c *ProductsDeleteCall) Do(opts ...googleapi.CallOption) error {
35200	gensupport.SetOptions(c.urlParams_, opts...)
35201	res, err := c.doRequest("json")
35202	if err != nil {
35203		return err
35204	}
35205	defer googleapi.CloseBody(res)
35206	if err := googleapi.CheckResponse(res); err != nil {
35207		return err
35208	}
35209	return nil
35210	// {
35211	//   "description": "Deletes a product from your Merchant Center account.",
35212	//   "flatPath": "{merchantId}/products/{productId}",
35213	//   "httpMethod": "DELETE",
35214	//   "id": "content.products.delete",
35215	//   "parameterOrder": [
35216	//     "merchantId",
35217	//     "productId"
35218	//   ],
35219	//   "parameters": {
35220	//     "feedId": {
35221	//       "description": "The Content API Supplemental Feed ID. If present then product deletion applies to the data in a supplemental feed. If absent, entire product will be deleted.",
35222	//       "format": "uint64",
35223	//       "location": "query",
35224	//       "type": "string"
35225	//     },
35226	//     "merchantId": {
35227	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
35228	//       "format": "uint64",
35229	//       "location": "path",
35230	//       "required": true,
35231	//       "type": "string"
35232	//     },
35233	//     "productId": {
35234	//       "description": "The REST ID of the product.",
35235	//       "location": "path",
35236	//       "required": true,
35237	//       "type": "string"
35238	//     }
35239	//   },
35240	//   "path": "{merchantId}/products/{productId}",
35241	//   "scopes": [
35242	//     "https://www.googleapis.com/auth/content"
35243	//   ]
35244	// }
35245
35246}
35247
35248// method id "content.products.get":
35249
35250type ProductsGetCall struct {
35251	s            *APIService
35252	merchantId   uint64
35253	productId    string
35254	urlParams_   gensupport.URLParams
35255	ifNoneMatch_ string
35256	ctx_         context.Context
35257	header_      http.Header
35258}
35259
35260// Get: Retrieves a product from your Merchant Center account.
35261//
35262// - merchantId: The ID of the account that contains the product. This
35263//   account cannot be a multi-client account.
35264// - productId: The REST ID of the product.
35265func (r *ProductsService) Get(merchantId uint64, productId string) *ProductsGetCall {
35266	c := &ProductsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
35267	c.merchantId = merchantId
35268	c.productId = productId
35269	return c
35270}
35271
35272// Fields allows partial responses to be retrieved. See
35273// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
35274// for more information.
35275func (c *ProductsGetCall) Fields(s ...googleapi.Field) *ProductsGetCall {
35276	c.urlParams_.Set("fields", googleapi.CombineFields(s))
35277	return c
35278}
35279
35280// IfNoneMatch sets the optional parameter which makes the operation
35281// fail if the object's ETag matches the given value. This is useful for
35282// getting updates only after the object has changed since the last
35283// request. Use googleapi.IsNotModified to check whether the response
35284// error from Do is the result of In-None-Match.
35285func (c *ProductsGetCall) IfNoneMatch(entityTag string) *ProductsGetCall {
35286	c.ifNoneMatch_ = entityTag
35287	return c
35288}
35289
35290// Context sets the context to be used in this call's Do method. Any
35291// pending HTTP request will be aborted if the provided context is
35292// canceled.
35293func (c *ProductsGetCall) Context(ctx context.Context) *ProductsGetCall {
35294	c.ctx_ = ctx
35295	return c
35296}
35297
35298// Header returns an http.Header that can be modified by the caller to
35299// add HTTP headers to the request.
35300func (c *ProductsGetCall) Header() http.Header {
35301	if c.header_ == nil {
35302		c.header_ = make(http.Header)
35303	}
35304	return c.header_
35305}
35306
35307func (c *ProductsGetCall) doRequest(alt string) (*http.Response, error) {
35308	reqHeaders := make(http.Header)
35309	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
35310	for k, v := range c.header_ {
35311		reqHeaders[k] = v
35312	}
35313	reqHeaders.Set("User-Agent", c.s.userAgent())
35314	if c.ifNoneMatch_ != "" {
35315		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
35316	}
35317	var body io.Reader = nil
35318	c.urlParams_.Set("alt", alt)
35319	c.urlParams_.Set("prettyPrint", "false")
35320	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products/{productId}")
35321	urls += "?" + c.urlParams_.Encode()
35322	req, err := http.NewRequest("GET", urls, body)
35323	if err != nil {
35324		return nil, err
35325	}
35326	req.Header = reqHeaders
35327	googleapi.Expand(req.URL, map[string]string{
35328		"merchantId": strconv.FormatUint(c.merchantId, 10),
35329		"productId":  c.productId,
35330	})
35331	return gensupport.SendRequest(c.ctx_, c.s.client, req)
35332}
35333
35334// Do executes the "content.products.get" call.
35335// Exactly one of *Product or error will be non-nil. Any non-2xx status
35336// code is an error. Response headers are in either
35337// *Product.ServerResponse.Header or (if a response was returned at all)
35338// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
35339// check whether the returned error was because http.StatusNotModified
35340// was returned.
35341func (c *ProductsGetCall) Do(opts ...googleapi.CallOption) (*Product, error) {
35342	gensupport.SetOptions(c.urlParams_, opts...)
35343	res, err := c.doRequest("json")
35344	if res != nil && res.StatusCode == http.StatusNotModified {
35345		if res.Body != nil {
35346			res.Body.Close()
35347		}
35348		return nil, &googleapi.Error{
35349			Code:   res.StatusCode,
35350			Header: res.Header,
35351		}
35352	}
35353	if err != nil {
35354		return nil, err
35355	}
35356	defer googleapi.CloseBody(res)
35357	if err := googleapi.CheckResponse(res); err != nil {
35358		return nil, err
35359	}
35360	ret := &Product{
35361		ServerResponse: googleapi.ServerResponse{
35362			Header:         res.Header,
35363			HTTPStatusCode: res.StatusCode,
35364		},
35365	}
35366	target := &ret
35367	if err := gensupport.DecodeResponse(target, res); err != nil {
35368		return nil, err
35369	}
35370	return ret, nil
35371	// {
35372	//   "description": "Retrieves a product from your Merchant Center account.",
35373	//   "flatPath": "{merchantId}/products/{productId}",
35374	//   "httpMethod": "GET",
35375	//   "id": "content.products.get",
35376	//   "parameterOrder": [
35377	//     "merchantId",
35378	//     "productId"
35379	//   ],
35380	//   "parameters": {
35381	//     "merchantId": {
35382	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
35383	//       "format": "uint64",
35384	//       "location": "path",
35385	//       "required": true,
35386	//       "type": "string"
35387	//     },
35388	//     "productId": {
35389	//       "description": "The REST ID of the product.",
35390	//       "location": "path",
35391	//       "required": true,
35392	//       "type": "string"
35393	//     }
35394	//   },
35395	//   "path": "{merchantId}/products/{productId}",
35396	//   "response": {
35397	//     "$ref": "Product"
35398	//   },
35399	//   "scopes": [
35400	//     "https://www.googleapis.com/auth/content"
35401	//   ]
35402	// }
35403
35404}
35405
35406// method id "content.products.insert":
35407
35408type ProductsInsertCall struct {
35409	s          *APIService
35410	merchantId uint64
35411	product    *Product
35412	urlParams_ gensupport.URLParams
35413	ctx_       context.Context
35414	header_    http.Header
35415}
35416
35417// Insert: Uploads a product to your Merchant Center account. If an item
35418// with the same channel, contentLanguage, offerId, and targetCountry
35419// already exists, this method updates that entry.
35420//
35421// - merchantId: The ID of the account that contains the product. This
35422//   account cannot be a multi-client account.
35423func (r *ProductsService) Insert(merchantId uint64, product *Product) *ProductsInsertCall {
35424	c := &ProductsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
35425	c.merchantId = merchantId
35426	c.product = product
35427	return c
35428}
35429
35430// FeedId sets the optional parameter "feedId": The Content API
35431// Supplemental Feed ID. If present then product insertion applies to
35432// the data in a supplemental feed.
35433func (c *ProductsInsertCall) FeedId(feedId uint64) *ProductsInsertCall {
35434	c.urlParams_.Set("feedId", fmt.Sprint(feedId))
35435	return c
35436}
35437
35438// Fields allows partial responses to be retrieved. See
35439// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
35440// for more information.
35441func (c *ProductsInsertCall) Fields(s ...googleapi.Field) *ProductsInsertCall {
35442	c.urlParams_.Set("fields", googleapi.CombineFields(s))
35443	return c
35444}
35445
35446// Context sets the context to be used in this call's Do method. Any
35447// pending HTTP request will be aborted if the provided context is
35448// canceled.
35449func (c *ProductsInsertCall) Context(ctx context.Context) *ProductsInsertCall {
35450	c.ctx_ = ctx
35451	return c
35452}
35453
35454// Header returns an http.Header that can be modified by the caller to
35455// add HTTP headers to the request.
35456func (c *ProductsInsertCall) Header() http.Header {
35457	if c.header_ == nil {
35458		c.header_ = make(http.Header)
35459	}
35460	return c.header_
35461}
35462
35463func (c *ProductsInsertCall) doRequest(alt string) (*http.Response, error) {
35464	reqHeaders := make(http.Header)
35465	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
35466	for k, v := range c.header_ {
35467		reqHeaders[k] = v
35468	}
35469	reqHeaders.Set("User-Agent", c.s.userAgent())
35470	var body io.Reader = nil
35471	body, err := googleapi.WithoutDataWrapper.JSONReader(c.product)
35472	if err != nil {
35473		return nil, err
35474	}
35475	reqHeaders.Set("Content-Type", "application/json")
35476	c.urlParams_.Set("alt", alt)
35477	c.urlParams_.Set("prettyPrint", "false")
35478	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products")
35479	urls += "?" + c.urlParams_.Encode()
35480	req, err := http.NewRequest("POST", urls, body)
35481	if err != nil {
35482		return nil, err
35483	}
35484	req.Header = reqHeaders
35485	googleapi.Expand(req.URL, map[string]string{
35486		"merchantId": strconv.FormatUint(c.merchantId, 10),
35487	})
35488	return gensupport.SendRequest(c.ctx_, c.s.client, req)
35489}
35490
35491// Do executes the "content.products.insert" call.
35492// Exactly one of *Product or error will be non-nil. Any non-2xx status
35493// code is an error. Response headers are in either
35494// *Product.ServerResponse.Header or (if a response was returned at all)
35495// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
35496// check whether the returned error was because http.StatusNotModified
35497// was returned.
35498func (c *ProductsInsertCall) Do(opts ...googleapi.CallOption) (*Product, error) {
35499	gensupport.SetOptions(c.urlParams_, opts...)
35500	res, err := c.doRequest("json")
35501	if res != nil && res.StatusCode == http.StatusNotModified {
35502		if res.Body != nil {
35503			res.Body.Close()
35504		}
35505		return nil, &googleapi.Error{
35506			Code:   res.StatusCode,
35507			Header: res.Header,
35508		}
35509	}
35510	if err != nil {
35511		return nil, err
35512	}
35513	defer googleapi.CloseBody(res)
35514	if err := googleapi.CheckResponse(res); err != nil {
35515		return nil, err
35516	}
35517	ret := &Product{
35518		ServerResponse: googleapi.ServerResponse{
35519			Header:         res.Header,
35520			HTTPStatusCode: res.StatusCode,
35521		},
35522	}
35523	target := &ret
35524	if err := gensupport.DecodeResponse(target, res); err != nil {
35525		return nil, err
35526	}
35527	return ret, nil
35528	// {
35529	//   "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.",
35530	//   "flatPath": "{merchantId}/products",
35531	//   "httpMethod": "POST",
35532	//   "id": "content.products.insert",
35533	//   "parameterOrder": [
35534	//     "merchantId"
35535	//   ],
35536	//   "parameters": {
35537	//     "feedId": {
35538	//       "description": "The Content API Supplemental Feed ID. If present then product insertion applies to the data in a supplemental feed.",
35539	//       "format": "uint64",
35540	//       "location": "query",
35541	//       "type": "string"
35542	//     },
35543	//     "merchantId": {
35544	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
35545	//       "format": "uint64",
35546	//       "location": "path",
35547	//       "required": true,
35548	//       "type": "string"
35549	//     }
35550	//   },
35551	//   "path": "{merchantId}/products",
35552	//   "request": {
35553	//     "$ref": "Product"
35554	//   },
35555	//   "response": {
35556	//     "$ref": "Product"
35557	//   },
35558	//   "scopes": [
35559	//     "https://www.googleapis.com/auth/content"
35560	//   ]
35561	// }
35562
35563}
35564
35565// method id "content.products.list":
35566
35567type ProductsListCall struct {
35568	s            *APIService
35569	merchantId   uint64
35570	urlParams_   gensupport.URLParams
35571	ifNoneMatch_ string
35572	ctx_         context.Context
35573	header_      http.Header
35574}
35575
35576// List: Lists the products in your Merchant Center account. The
35577// response might contain fewer items than specified by maxResults. Rely
35578// on nextPageToken to determine if there are more items to be
35579// requested.
35580//
35581// - merchantId: The ID of the account that contains the products. This
35582//   account cannot be a multi-client account.
35583func (r *ProductsService) List(merchantId uint64) *ProductsListCall {
35584	c := &ProductsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
35585	c.merchantId = merchantId
35586	return c
35587}
35588
35589// MaxResults sets the optional parameter "maxResults": The maximum
35590// number of products to return in the response, used for paging.
35591func (c *ProductsListCall) MaxResults(maxResults int64) *ProductsListCall {
35592	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
35593	return c
35594}
35595
35596// PageToken sets the optional parameter "pageToken": The token returned
35597// by the previous request.
35598func (c *ProductsListCall) PageToken(pageToken string) *ProductsListCall {
35599	c.urlParams_.Set("pageToken", pageToken)
35600	return c
35601}
35602
35603// Fields allows partial responses to be retrieved. See
35604// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
35605// for more information.
35606func (c *ProductsListCall) Fields(s ...googleapi.Field) *ProductsListCall {
35607	c.urlParams_.Set("fields", googleapi.CombineFields(s))
35608	return c
35609}
35610
35611// IfNoneMatch sets the optional parameter which makes the operation
35612// fail if the object's ETag matches the given value. This is useful for
35613// getting updates only after the object has changed since the last
35614// request. Use googleapi.IsNotModified to check whether the response
35615// error from Do is the result of In-None-Match.
35616func (c *ProductsListCall) IfNoneMatch(entityTag string) *ProductsListCall {
35617	c.ifNoneMatch_ = entityTag
35618	return c
35619}
35620
35621// Context sets the context to be used in this call's Do method. Any
35622// pending HTTP request will be aborted if the provided context is
35623// canceled.
35624func (c *ProductsListCall) Context(ctx context.Context) *ProductsListCall {
35625	c.ctx_ = ctx
35626	return c
35627}
35628
35629// Header returns an http.Header that can be modified by the caller to
35630// add HTTP headers to the request.
35631func (c *ProductsListCall) Header() http.Header {
35632	if c.header_ == nil {
35633		c.header_ = make(http.Header)
35634	}
35635	return c.header_
35636}
35637
35638func (c *ProductsListCall) doRequest(alt string) (*http.Response, error) {
35639	reqHeaders := make(http.Header)
35640	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
35641	for k, v := range c.header_ {
35642		reqHeaders[k] = v
35643	}
35644	reqHeaders.Set("User-Agent", c.s.userAgent())
35645	if c.ifNoneMatch_ != "" {
35646		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
35647	}
35648	var body io.Reader = nil
35649	c.urlParams_.Set("alt", alt)
35650	c.urlParams_.Set("prettyPrint", "false")
35651	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products")
35652	urls += "?" + c.urlParams_.Encode()
35653	req, err := http.NewRequest("GET", urls, body)
35654	if err != nil {
35655		return nil, err
35656	}
35657	req.Header = reqHeaders
35658	googleapi.Expand(req.URL, map[string]string{
35659		"merchantId": strconv.FormatUint(c.merchantId, 10),
35660	})
35661	return gensupport.SendRequest(c.ctx_, c.s.client, req)
35662}
35663
35664// Do executes the "content.products.list" call.
35665// Exactly one of *ProductsListResponse or error will be non-nil. Any
35666// non-2xx status code is an error. Response headers are in either
35667// *ProductsListResponse.ServerResponse.Header or (if a response was
35668// returned at all) in error.(*googleapi.Error).Header. Use
35669// googleapi.IsNotModified to check whether the returned error was
35670// because http.StatusNotModified was returned.
35671func (c *ProductsListCall) Do(opts ...googleapi.CallOption) (*ProductsListResponse, error) {
35672	gensupport.SetOptions(c.urlParams_, opts...)
35673	res, err := c.doRequest("json")
35674	if res != nil && res.StatusCode == http.StatusNotModified {
35675		if res.Body != nil {
35676			res.Body.Close()
35677		}
35678		return nil, &googleapi.Error{
35679			Code:   res.StatusCode,
35680			Header: res.Header,
35681		}
35682	}
35683	if err != nil {
35684		return nil, err
35685	}
35686	defer googleapi.CloseBody(res)
35687	if err := googleapi.CheckResponse(res); err != nil {
35688		return nil, err
35689	}
35690	ret := &ProductsListResponse{
35691		ServerResponse: googleapi.ServerResponse{
35692			Header:         res.Header,
35693			HTTPStatusCode: res.StatusCode,
35694		},
35695	}
35696	target := &ret
35697	if err := gensupport.DecodeResponse(target, res); err != nil {
35698		return nil, err
35699	}
35700	return ret, nil
35701	// {
35702	//   "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.",
35703	//   "flatPath": "{merchantId}/products",
35704	//   "httpMethod": "GET",
35705	//   "id": "content.products.list",
35706	//   "parameterOrder": [
35707	//     "merchantId"
35708	//   ],
35709	//   "parameters": {
35710	//     "maxResults": {
35711	//       "description": "The maximum number of products to return in the response, used for paging.",
35712	//       "format": "uint32",
35713	//       "location": "query",
35714	//       "type": "integer"
35715	//     },
35716	//     "merchantId": {
35717	//       "description": "The ID of the account that contains the products. This account cannot be a multi-client account.",
35718	//       "format": "uint64",
35719	//       "location": "path",
35720	//       "required": true,
35721	//       "type": "string"
35722	//     },
35723	//     "pageToken": {
35724	//       "description": "The token returned by the previous request.",
35725	//       "location": "query",
35726	//       "type": "string"
35727	//     }
35728	//   },
35729	//   "path": "{merchantId}/products",
35730	//   "response": {
35731	//     "$ref": "ProductsListResponse"
35732	//   },
35733	//   "scopes": [
35734	//     "https://www.googleapis.com/auth/content"
35735	//   ]
35736	// }
35737
35738}
35739
35740// Pages invokes f for each page of results.
35741// A non-nil error returned from f will halt the iteration.
35742// The provided context supersedes any context provided to the Context method.
35743func (c *ProductsListCall) Pages(ctx context.Context, f func(*ProductsListResponse) error) error {
35744	c.ctx_ = ctx
35745	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
35746	for {
35747		x, err := c.Do()
35748		if err != nil {
35749			return err
35750		}
35751		if err := f(x); err != nil {
35752			return err
35753		}
35754		if x.NextPageToken == "" {
35755			return nil
35756		}
35757		c.PageToken(x.NextPageToken)
35758	}
35759}
35760
35761// method id "content.products.update":
35762
35763type ProductsUpdateCall struct {
35764	s          *APIService
35765	merchantId uint64
35766	productId  string
35767	product    *Product
35768	urlParams_ gensupport.URLParams
35769	ctx_       context.Context
35770	header_    http.Header
35771}
35772
35773// Update: Updates an existing product in your Merchant Center account.
35774// Only updates attributes provided in the request.
35775//
35776// - merchantId: The ID of the account that contains the product. This
35777//   account cannot be a multi-client account.
35778// - productId: The REST ID of the product for which to update.
35779func (r *ProductsService) Update(merchantId uint64, productId string, product *Product) *ProductsUpdateCall {
35780	c := &ProductsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
35781	c.merchantId = merchantId
35782	c.productId = productId
35783	c.product = product
35784	return c
35785}
35786
35787// UpdateMask sets the optional parameter "updateMask": The
35788// comma-separated list of product attributes to be updated. Example:
35789// "title,salePrice". Attributes specified in the update mask without
35790// a value specified in the body will be deleted from the product. Only
35791// top-level product attributes can be updated. If not defined, product
35792// attributes with set values will be updated and other attributes will
35793// stay unchanged.
35794func (c *ProductsUpdateCall) UpdateMask(updateMask string) *ProductsUpdateCall {
35795	c.urlParams_.Set("updateMask", updateMask)
35796	return c
35797}
35798
35799// Fields allows partial responses to be retrieved. See
35800// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
35801// for more information.
35802func (c *ProductsUpdateCall) Fields(s ...googleapi.Field) *ProductsUpdateCall {
35803	c.urlParams_.Set("fields", googleapi.CombineFields(s))
35804	return c
35805}
35806
35807// Context sets the context to be used in this call's Do method. Any
35808// pending HTTP request will be aborted if the provided context is
35809// canceled.
35810func (c *ProductsUpdateCall) Context(ctx context.Context) *ProductsUpdateCall {
35811	c.ctx_ = ctx
35812	return c
35813}
35814
35815// Header returns an http.Header that can be modified by the caller to
35816// add HTTP headers to the request.
35817func (c *ProductsUpdateCall) Header() http.Header {
35818	if c.header_ == nil {
35819		c.header_ = make(http.Header)
35820	}
35821	return c.header_
35822}
35823
35824func (c *ProductsUpdateCall) doRequest(alt string) (*http.Response, error) {
35825	reqHeaders := make(http.Header)
35826	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
35827	for k, v := range c.header_ {
35828		reqHeaders[k] = v
35829	}
35830	reqHeaders.Set("User-Agent", c.s.userAgent())
35831	var body io.Reader = nil
35832	body, err := googleapi.WithoutDataWrapper.JSONReader(c.product)
35833	if err != nil {
35834		return nil, err
35835	}
35836	reqHeaders.Set("Content-Type", "application/json")
35837	c.urlParams_.Set("alt", alt)
35838	c.urlParams_.Set("prettyPrint", "false")
35839	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products/{productId}")
35840	urls += "?" + c.urlParams_.Encode()
35841	req, err := http.NewRequest("PATCH", urls, body)
35842	if err != nil {
35843		return nil, err
35844	}
35845	req.Header = reqHeaders
35846	googleapi.Expand(req.URL, map[string]string{
35847		"merchantId": strconv.FormatUint(c.merchantId, 10),
35848		"productId":  c.productId,
35849	})
35850	return gensupport.SendRequest(c.ctx_, c.s.client, req)
35851}
35852
35853// Do executes the "content.products.update" call.
35854// Exactly one of *Product or error will be non-nil. Any non-2xx status
35855// code is an error. Response headers are in either
35856// *Product.ServerResponse.Header or (if a response was returned at all)
35857// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
35858// check whether the returned error was because http.StatusNotModified
35859// was returned.
35860func (c *ProductsUpdateCall) Do(opts ...googleapi.CallOption) (*Product, error) {
35861	gensupport.SetOptions(c.urlParams_, opts...)
35862	res, err := c.doRequest("json")
35863	if res != nil && res.StatusCode == http.StatusNotModified {
35864		if res.Body != nil {
35865			res.Body.Close()
35866		}
35867		return nil, &googleapi.Error{
35868			Code:   res.StatusCode,
35869			Header: res.Header,
35870		}
35871	}
35872	if err != nil {
35873		return nil, err
35874	}
35875	defer googleapi.CloseBody(res)
35876	if err := googleapi.CheckResponse(res); err != nil {
35877		return nil, err
35878	}
35879	ret := &Product{
35880		ServerResponse: googleapi.ServerResponse{
35881			Header:         res.Header,
35882			HTTPStatusCode: res.StatusCode,
35883		},
35884	}
35885	target := &ret
35886	if err := gensupport.DecodeResponse(target, res); err != nil {
35887		return nil, err
35888	}
35889	return ret, nil
35890	// {
35891	//   "description": "Updates an existing product in your Merchant Center account. Only updates attributes provided in the request.",
35892	//   "flatPath": "{merchantId}/products/{productId}",
35893	//   "httpMethod": "PATCH",
35894	//   "id": "content.products.update",
35895	//   "parameterOrder": [
35896	//     "merchantId",
35897	//     "productId"
35898	//   ],
35899	//   "parameters": {
35900	//     "merchantId": {
35901	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
35902	//       "format": "uint64",
35903	//       "location": "path",
35904	//       "required": true,
35905	//       "type": "string"
35906	//     },
35907	//     "productId": {
35908	//       "description": "The REST ID of the product for which to update.",
35909	//       "location": "path",
35910	//       "required": true,
35911	//       "type": "string"
35912	//     },
35913	//     "updateMask": {
35914	//       "description": "The comma-separated list of product attributes to be updated. Example: `\"title,salePrice\"`. Attributes specified in the update mask without a value specified in the body will be deleted from the product. Only top-level product attributes can be updated. If not defined, product attributes with set values will be updated and other attributes will stay unchanged.",
35915	//       "format": "google-fieldmask",
35916	//       "location": "query",
35917	//       "type": "string"
35918	//     }
35919	//   },
35920	//   "path": "{merchantId}/products/{productId}",
35921	//   "request": {
35922	//     "$ref": "Product"
35923	//   },
35924	//   "response": {
35925	//     "$ref": "Product"
35926	//   },
35927	//   "scopes": [
35928	//     "https://www.googleapis.com/auth/content"
35929	//   ]
35930	// }
35931
35932}
35933
35934// method id "content.productstatuses.custombatch":
35935
35936type ProductstatusesCustombatchCall struct {
35937	s                                 *APIService
35938	productstatusescustombatchrequest *ProductstatusesCustomBatchRequest
35939	urlParams_                        gensupport.URLParams
35940	ctx_                              context.Context
35941	header_                           http.Header
35942}
35943
35944// Custombatch: Gets the statuses of multiple products in a single
35945// request.
35946func (r *ProductstatusesService) Custombatch(productstatusescustombatchrequest *ProductstatusesCustomBatchRequest) *ProductstatusesCustombatchCall {
35947	c := &ProductstatusesCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
35948	c.productstatusescustombatchrequest = productstatusescustombatchrequest
35949	return c
35950}
35951
35952// Fields allows partial responses to be retrieved. See
35953// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
35954// for more information.
35955func (c *ProductstatusesCustombatchCall) Fields(s ...googleapi.Field) *ProductstatusesCustombatchCall {
35956	c.urlParams_.Set("fields", googleapi.CombineFields(s))
35957	return c
35958}
35959
35960// Context sets the context to be used in this call's Do method. Any
35961// pending HTTP request will be aborted if the provided context is
35962// canceled.
35963func (c *ProductstatusesCustombatchCall) Context(ctx context.Context) *ProductstatusesCustombatchCall {
35964	c.ctx_ = ctx
35965	return c
35966}
35967
35968// Header returns an http.Header that can be modified by the caller to
35969// add HTTP headers to the request.
35970func (c *ProductstatusesCustombatchCall) Header() http.Header {
35971	if c.header_ == nil {
35972		c.header_ = make(http.Header)
35973	}
35974	return c.header_
35975}
35976
35977func (c *ProductstatusesCustombatchCall) doRequest(alt string) (*http.Response, error) {
35978	reqHeaders := make(http.Header)
35979	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
35980	for k, v := range c.header_ {
35981		reqHeaders[k] = v
35982	}
35983	reqHeaders.Set("User-Agent", c.s.userAgent())
35984	var body io.Reader = nil
35985	body, err := googleapi.WithoutDataWrapper.JSONReader(c.productstatusescustombatchrequest)
35986	if err != nil {
35987		return nil, err
35988	}
35989	reqHeaders.Set("Content-Type", "application/json")
35990	c.urlParams_.Set("alt", alt)
35991	c.urlParams_.Set("prettyPrint", "false")
35992	urls := googleapi.ResolveRelative(c.s.BasePath, "productstatuses/batch")
35993	urls += "?" + c.urlParams_.Encode()
35994	req, err := http.NewRequest("POST", urls, body)
35995	if err != nil {
35996		return nil, err
35997	}
35998	req.Header = reqHeaders
35999	return gensupport.SendRequest(c.ctx_, c.s.client, req)
36000}
36001
36002// Do executes the "content.productstatuses.custombatch" call.
36003// Exactly one of *ProductstatusesCustomBatchResponse or error will be
36004// non-nil. Any non-2xx status code is an error. Response headers are in
36005// either *ProductstatusesCustomBatchResponse.ServerResponse.Header or
36006// (if a response was returned at all) in
36007// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
36008// whether the returned error was because http.StatusNotModified was
36009// returned.
36010func (c *ProductstatusesCustombatchCall) Do(opts ...googleapi.CallOption) (*ProductstatusesCustomBatchResponse, error) {
36011	gensupport.SetOptions(c.urlParams_, opts...)
36012	res, err := c.doRequest("json")
36013	if res != nil && res.StatusCode == http.StatusNotModified {
36014		if res.Body != nil {
36015			res.Body.Close()
36016		}
36017		return nil, &googleapi.Error{
36018			Code:   res.StatusCode,
36019			Header: res.Header,
36020		}
36021	}
36022	if err != nil {
36023		return nil, err
36024	}
36025	defer googleapi.CloseBody(res)
36026	if err := googleapi.CheckResponse(res); err != nil {
36027		return nil, err
36028	}
36029	ret := &ProductstatusesCustomBatchResponse{
36030		ServerResponse: googleapi.ServerResponse{
36031			Header:         res.Header,
36032			HTTPStatusCode: res.StatusCode,
36033		},
36034	}
36035	target := &ret
36036	if err := gensupport.DecodeResponse(target, res); err != nil {
36037		return nil, err
36038	}
36039	return ret, nil
36040	// {
36041	//   "description": "Gets the statuses of multiple products in a single request.",
36042	//   "flatPath": "productstatuses/batch",
36043	//   "httpMethod": "POST",
36044	//   "id": "content.productstatuses.custombatch",
36045	//   "parameterOrder": [],
36046	//   "parameters": {},
36047	//   "path": "productstatuses/batch",
36048	//   "request": {
36049	//     "$ref": "ProductstatusesCustomBatchRequest"
36050	//   },
36051	//   "response": {
36052	//     "$ref": "ProductstatusesCustomBatchResponse"
36053	//   },
36054	//   "scopes": [
36055	//     "https://www.googleapis.com/auth/content"
36056	//   ]
36057	// }
36058
36059}
36060
36061// method id "content.productstatuses.get":
36062
36063type ProductstatusesGetCall struct {
36064	s            *APIService
36065	merchantId   uint64
36066	productId    string
36067	urlParams_   gensupport.URLParams
36068	ifNoneMatch_ string
36069	ctx_         context.Context
36070	header_      http.Header
36071}
36072
36073// Get: Gets the status of a product from your Merchant Center account.
36074//
36075// - merchantId: The ID of the account that contains the product. This
36076//   account cannot be a multi-client account.
36077// - productId: The REST ID of the product.
36078func (r *ProductstatusesService) Get(merchantId uint64, productId string) *ProductstatusesGetCall {
36079	c := &ProductstatusesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
36080	c.merchantId = merchantId
36081	c.productId = productId
36082	return c
36083}
36084
36085// Destinations sets the optional parameter "destinations": If set, only
36086// issues for the specified destinations are returned, otherwise only
36087// issues for the Shopping destination.
36088func (c *ProductstatusesGetCall) Destinations(destinations ...string) *ProductstatusesGetCall {
36089	c.urlParams_.SetMulti("destinations", append([]string{}, destinations...))
36090	return c
36091}
36092
36093// Fields allows partial responses to be retrieved. See
36094// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
36095// for more information.
36096func (c *ProductstatusesGetCall) Fields(s ...googleapi.Field) *ProductstatusesGetCall {
36097	c.urlParams_.Set("fields", googleapi.CombineFields(s))
36098	return c
36099}
36100
36101// IfNoneMatch sets the optional parameter which makes the operation
36102// fail if the object's ETag matches the given value. This is useful for
36103// getting updates only after the object has changed since the last
36104// request. Use googleapi.IsNotModified to check whether the response
36105// error from Do is the result of In-None-Match.
36106func (c *ProductstatusesGetCall) IfNoneMatch(entityTag string) *ProductstatusesGetCall {
36107	c.ifNoneMatch_ = entityTag
36108	return c
36109}
36110
36111// Context sets the context to be used in this call's Do method. Any
36112// pending HTTP request will be aborted if the provided context is
36113// canceled.
36114func (c *ProductstatusesGetCall) Context(ctx context.Context) *ProductstatusesGetCall {
36115	c.ctx_ = ctx
36116	return c
36117}
36118
36119// Header returns an http.Header that can be modified by the caller to
36120// add HTTP headers to the request.
36121func (c *ProductstatusesGetCall) Header() http.Header {
36122	if c.header_ == nil {
36123		c.header_ = make(http.Header)
36124	}
36125	return c.header_
36126}
36127
36128func (c *ProductstatusesGetCall) doRequest(alt string) (*http.Response, error) {
36129	reqHeaders := make(http.Header)
36130	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
36131	for k, v := range c.header_ {
36132		reqHeaders[k] = v
36133	}
36134	reqHeaders.Set("User-Agent", c.s.userAgent())
36135	if c.ifNoneMatch_ != "" {
36136		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
36137	}
36138	var body io.Reader = nil
36139	c.urlParams_.Set("alt", alt)
36140	c.urlParams_.Set("prettyPrint", "false")
36141	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/productstatuses/{productId}")
36142	urls += "?" + c.urlParams_.Encode()
36143	req, err := http.NewRequest("GET", urls, body)
36144	if err != nil {
36145		return nil, err
36146	}
36147	req.Header = reqHeaders
36148	googleapi.Expand(req.URL, map[string]string{
36149		"merchantId": strconv.FormatUint(c.merchantId, 10),
36150		"productId":  c.productId,
36151	})
36152	return gensupport.SendRequest(c.ctx_, c.s.client, req)
36153}
36154
36155// Do executes the "content.productstatuses.get" call.
36156// Exactly one of *ProductStatus or error will be non-nil. Any non-2xx
36157// status code is an error. Response headers are in either
36158// *ProductStatus.ServerResponse.Header or (if a response was returned
36159// at all) in error.(*googleapi.Error).Header. Use
36160// googleapi.IsNotModified to check whether the returned error was
36161// because http.StatusNotModified was returned.
36162func (c *ProductstatusesGetCall) Do(opts ...googleapi.CallOption) (*ProductStatus, error) {
36163	gensupport.SetOptions(c.urlParams_, opts...)
36164	res, err := c.doRequest("json")
36165	if res != nil && res.StatusCode == http.StatusNotModified {
36166		if res.Body != nil {
36167			res.Body.Close()
36168		}
36169		return nil, &googleapi.Error{
36170			Code:   res.StatusCode,
36171			Header: res.Header,
36172		}
36173	}
36174	if err != nil {
36175		return nil, err
36176	}
36177	defer googleapi.CloseBody(res)
36178	if err := googleapi.CheckResponse(res); err != nil {
36179		return nil, err
36180	}
36181	ret := &ProductStatus{
36182		ServerResponse: googleapi.ServerResponse{
36183			Header:         res.Header,
36184			HTTPStatusCode: res.StatusCode,
36185		},
36186	}
36187	target := &ret
36188	if err := gensupport.DecodeResponse(target, res); err != nil {
36189		return nil, err
36190	}
36191	return ret, nil
36192	// {
36193	//   "description": "Gets the status of a product from your Merchant Center account.",
36194	//   "flatPath": "{merchantId}/productstatuses/{productId}",
36195	//   "httpMethod": "GET",
36196	//   "id": "content.productstatuses.get",
36197	//   "parameterOrder": [
36198	//     "merchantId",
36199	//     "productId"
36200	//   ],
36201	//   "parameters": {
36202	//     "destinations": {
36203	//       "description": "If set, only issues for the specified destinations are returned, otherwise only issues for the Shopping destination.",
36204	//       "location": "query",
36205	//       "repeated": true,
36206	//       "type": "string"
36207	//     },
36208	//     "merchantId": {
36209	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
36210	//       "format": "uint64",
36211	//       "location": "path",
36212	//       "required": true,
36213	//       "type": "string"
36214	//     },
36215	//     "productId": {
36216	//       "description": "The REST ID of the product.",
36217	//       "location": "path",
36218	//       "required": true,
36219	//       "type": "string"
36220	//     }
36221	//   },
36222	//   "path": "{merchantId}/productstatuses/{productId}",
36223	//   "response": {
36224	//     "$ref": "ProductStatus"
36225	//   },
36226	//   "scopes": [
36227	//     "https://www.googleapis.com/auth/content"
36228	//   ]
36229	// }
36230
36231}
36232
36233// method id "content.productstatuses.list":
36234
36235type ProductstatusesListCall struct {
36236	s            *APIService
36237	merchantId   uint64
36238	urlParams_   gensupport.URLParams
36239	ifNoneMatch_ string
36240	ctx_         context.Context
36241	header_      http.Header
36242}
36243
36244// List: Lists the statuses of the products in your Merchant Center
36245// account.
36246//
36247// - merchantId: The ID of the account that contains the products. This
36248//   account cannot be a multi-client account.
36249func (r *ProductstatusesService) List(merchantId uint64) *ProductstatusesListCall {
36250	c := &ProductstatusesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
36251	c.merchantId = merchantId
36252	return c
36253}
36254
36255// Destinations sets the optional parameter "destinations": If set, only
36256// issues for the specified destinations are returned, otherwise only
36257// issues for the Shopping destination.
36258func (c *ProductstatusesListCall) Destinations(destinations ...string) *ProductstatusesListCall {
36259	c.urlParams_.SetMulti("destinations", append([]string{}, destinations...))
36260	return c
36261}
36262
36263// MaxResults sets the optional parameter "maxResults": The maximum
36264// number of product statuses to return in the response, used for
36265// paging.
36266func (c *ProductstatusesListCall) MaxResults(maxResults int64) *ProductstatusesListCall {
36267	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
36268	return c
36269}
36270
36271// PageToken sets the optional parameter "pageToken": The token returned
36272// by the previous request.
36273func (c *ProductstatusesListCall) PageToken(pageToken string) *ProductstatusesListCall {
36274	c.urlParams_.Set("pageToken", pageToken)
36275	return c
36276}
36277
36278// Fields allows partial responses to be retrieved. See
36279// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
36280// for more information.
36281func (c *ProductstatusesListCall) Fields(s ...googleapi.Field) *ProductstatusesListCall {
36282	c.urlParams_.Set("fields", googleapi.CombineFields(s))
36283	return c
36284}
36285
36286// IfNoneMatch sets the optional parameter which makes the operation
36287// fail if the object's ETag matches the given value. This is useful for
36288// getting updates only after the object has changed since the last
36289// request. Use googleapi.IsNotModified to check whether the response
36290// error from Do is the result of In-None-Match.
36291func (c *ProductstatusesListCall) IfNoneMatch(entityTag string) *ProductstatusesListCall {
36292	c.ifNoneMatch_ = entityTag
36293	return c
36294}
36295
36296// Context sets the context to be used in this call's Do method. Any
36297// pending HTTP request will be aborted if the provided context is
36298// canceled.
36299func (c *ProductstatusesListCall) Context(ctx context.Context) *ProductstatusesListCall {
36300	c.ctx_ = ctx
36301	return c
36302}
36303
36304// Header returns an http.Header that can be modified by the caller to
36305// add HTTP headers to the request.
36306func (c *ProductstatusesListCall) Header() http.Header {
36307	if c.header_ == nil {
36308		c.header_ = make(http.Header)
36309	}
36310	return c.header_
36311}
36312
36313func (c *ProductstatusesListCall) doRequest(alt string) (*http.Response, error) {
36314	reqHeaders := make(http.Header)
36315	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
36316	for k, v := range c.header_ {
36317		reqHeaders[k] = v
36318	}
36319	reqHeaders.Set("User-Agent", c.s.userAgent())
36320	if c.ifNoneMatch_ != "" {
36321		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
36322	}
36323	var body io.Reader = nil
36324	c.urlParams_.Set("alt", alt)
36325	c.urlParams_.Set("prettyPrint", "false")
36326	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/productstatuses")
36327	urls += "?" + c.urlParams_.Encode()
36328	req, err := http.NewRequest("GET", urls, body)
36329	if err != nil {
36330		return nil, err
36331	}
36332	req.Header = reqHeaders
36333	googleapi.Expand(req.URL, map[string]string{
36334		"merchantId": strconv.FormatUint(c.merchantId, 10),
36335	})
36336	return gensupport.SendRequest(c.ctx_, c.s.client, req)
36337}
36338
36339// Do executes the "content.productstatuses.list" call.
36340// Exactly one of *ProductstatusesListResponse or error will be non-nil.
36341// Any non-2xx status code is an error. Response headers are in either
36342// *ProductstatusesListResponse.ServerResponse.Header or (if a response
36343// was returned at all) in error.(*googleapi.Error).Header. Use
36344// googleapi.IsNotModified to check whether the returned error was
36345// because http.StatusNotModified was returned.
36346func (c *ProductstatusesListCall) Do(opts ...googleapi.CallOption) (*ProductstatusesListResponse, error) {
36347	gensupport.SetOptions(c.urlParams_, opts...)
36348	res, err := c.doRequest("json")
36349	if res != nil && res.StatusCode == http.StatusNotModified {
36350		if res.Body != nil {
36351			res.Body.Close()
36352		}
36353		return nil, &googleapi.Error{
36354			Code:   res.StatusCode,
36355			Header: res.Header,
36356		}
36357	}
36358	if err != nil {
36359		return nil, err
36360	}
36361	defer googleapi.CloseBody(res)
36362	if err := googleapi.CheckResponse(res); err != nil {
36363		return nil, err
36364	}
36365	ret := &ProductstatusesListResponse{
36366		ServerResponse: googleapi.ServerResponse{
36367			Header:         res.Header,
36368			HTTPStatusCode: res.StatusCode,
36369		},
36370	}
36371	target := &ret
36372	if err := gensupport.DecodeResponse(target, res); err != nil {
36373		return nil, err
36374	}
36375	return ret, nil
36376	// {
36377	//   "description": "Lists the statuses of the products in your Merchant Center account.",
36378	//   "flatPath": "{merchantId}/productstatuses",
36379	//   "httpMethod": "GET",
36380	//   "id": "content.productstatuses.list",
36381	//   "parameterOrder": [
36382	//     "merchantId"
36383	//   ],
36384	//   "parameters": {
36385	//     "destinations": {
36386	//       "description": "If set, only issues for the specified destinations are returned, otherwise only issues for the Shopping destination.",
36387	//       "location": "query",
36388	//       "repeated": true,
36389	//       "type": "string"
36390	//     },
36391	//     "maxResults": {
36392	//       "description": "The maximum number of product statuses to return in the response, used for paging.",
36393	//       "format": "uint32",
36394	//       "location": "query",
36395	//       "type": "integer"
36396	//     },
36397	//     "merchantId": {
36398	//       "description": "The ID of the account that contains the products. This account cannot be a multi-client account.",
36399	//       "format": "uint64",
36400	//       "location": "path",
36401	//       "required": true,
36402	//       "type": "string"
36403	//     },
36404	//     "pageToken": {
36405	//       "description": "The token returned by the previous request.",
36406	//       "location": "query",
36407	//       "type": "string"
36408	//     }
36409	//   },
36410	//   "path": "{merchantId}/productstatuses",
36411	//   "response": {
36412	//     "$ref": "ProductstatusesListResponse"
36413	//   },
36414	//   "scopes": [
36415	//     "https://www.googleapis.com/auth/content"
36416	//   ]
36417	// }
36418
36419}
36420
36421// Pages invokes f for each page of results.
36422// A non-nil error returned from f will halt the iteration.
36423// The provided context supersedes any context provided to the Context method.
36424func (c *ProductstatusesListCall) Pages(ctx context.Context, f func(*ProductstatusesListResponse) error) error {
36425	c.ctx_ = ctx
36426	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
36427	for {
36428		x, err := c.Do()
36429		if err != nil {
36430			return err
36431		}
36432		if err := f(x); err != nil {
36433			return err
36434		}
36435		if x.NextPageToken == "" {
36436			return nil
36437		}
36438		c.PageToken(x.NextPageToken)
36439	}
36440}
36441
36442// method id "content.productstatuses.repricingreports.list":
36443
36444type ProductstatusesRepricingreportsListCall struct {
36445	s            *APIService
36446	merchantId   int64
36447	productId    string
36448	urlParams_   gensupport.URLParams
36449	ifNoneMatch_ string
36450	ctx_         context.Context
36451	header_      http.Header
36452}
36453
36454// List: Lists the metrics report for a given Repricing product.
36455//
36456// - merchantId: Id of the merchant who owns the Repricing rule.
36457// - productId: Id of the Repricing product. Also known as the REST_ID
36458//   (https://developers.google.com/shopping-content/reference/rest/v2.1/products#Product.FIELDS.id).
36459func (r *ProductstatusesRepricingreportsService) List(merchantId int64, productId string) *ProductstatusesRepricingreportsListCall {
36460	c := &ProductstatusesRepricingreportsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
36461	c.merchantId = merchantId
36462	c.productId = productId
36463	return c
36464}
36465
36466// EndDate sets the optional parameter "endDate": Gets Repricing reports
36467// on and before this date in the merchant's timezone. You can only
36468// retrieve data up to 7 days ago (default) or earlier. Format is
36469// YYYY-MM-DD.
36470func (c *ProductstatusesRepricingreportsListCall) EndDate(endDate string) *ProductstatusesRepricingreportsListCall {
36471	c.urlParams_.Set("endDate", endDate)
36472	return c
36473}
36474
36475// PageSize sets the optional parameter "pageSize": Maximum number of
36476// days of reports to return. There can be more than one rule report
36477// returned per day. For example, if 3 rule types got applied to the
36478// same product within a 24-hour period, then a page_size of 1 will
36479// return 3 rule reports. The page size defaults to 50 and values above
36480// 1000 are coerced to 1000. This service may return fewer days of
36481// reports than this value, for example, if the time between your start
36482// and end date is less than the page size.
36483func (c *ProductstatusesRepricingreportsListCall) PageSize(pageSize int64) *ProductstatusesRepricingreportsListCall {
36484	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
36485	return c
36486}
36487
36488// PageToken sets the optional parameter "pageToken": Token (if
36489// provided) to retrieve the subsequent page. All other parameters must
36490// match the original call that provided the page token.
36491func (c *ProductstatusesRepricingreportsListCall) PageToken(pageToken string) *ProductstatusesRepricingreportsListCall {
36492	c.urlParams_.Set("pageToken", pageToken)
36493	return c
36494}
36495
36496// RuleId sets the optional parameter "ruleId": Id of the Repricing
36497// rule. If specified, only gets this rule's reports.
36498func (c *ProductstatusesRepricingreportsListCall) RuleId(ruleId string) *ProductstatusesRepricingreportsListCall {
36499	c.urlParams_.Set("ruleId", ruleId)
36500	return c
36501}
36502
36503// StartDate sets the optional parameter "startDate": Gets Repricing
36504// reports on and after this date in the merchant's timezone, up to one
36505// year ago. Do not use a start date later than 7 days ago (default).
36506// Format is YYYY-MM-DD.
36507func (c *ProductstatusesRepricingreportsListCall) StartDate(startDate string) *ProductstatusesRepricingreportsListCall {
36508	c.urlParams_.Set("startDate", startDate)
36509	return c
36510}
36511
36512// Fields allows partial responses to be retrieved. See
36513// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
36514// for more information.
36515func (c *ProductstatusesRepricingreportsListCall) Fields(s ...googleapi.Field) *ProductstatusesRepricingreportsListCall {
36516	c.urlParams_.Set("fields", googleapi.CombineFields(s))
36517	return c
36518}
36519
36520// IfNoneMatch sets the optional parameter which makes the operation
36521// fail if the object's ETag matches the given value. This is useful for
36522// getting updates only after the object has changed since the last
36523// request. Use googleapi.IsNotModified to check whether the response
36524// error from Do is the result of In-None-Match.
36525func (c *ProductstatusesRepricingreportsListCall) IfNoneMatch(entityTag string) *ProductstatusesRepricingreportsListCall {
36526	c.ifNoneMatch_ = entityTag
36527	return c
36528}
36529
36530// Context sets the context to be used in this call's Do method. Any
36531// pending HTTP request will be aborted if the provided context is
36532// canceled.
36533func (c *ProductstatusesRepricingreportsListCall) Context(ctx context.Context) *ProductstatusesRepricingreportsListCall {
36534	c.ctx_ = ctx
36535	return c
36536}
36537
36538// Header returns an http.Header that can be modified by the caller to
36539// add HTTP headers to the request.
36540func (c *ProductstatusesRepricingreportsListCall) Header() http.Header {
36541	if c.header_ == nil {
36542		c.header_ = make(http.Header)
36543	}
36544	return c.header_
36545}
36546
36547func (c *ProductstatusesRepricingreportsListCall) doRequest(alt string) (*http.Response, error) {
36548	reqHeaders := make(http.Header)
36549	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
36550	for k, v := range c.header_ {
36551		reqHeaders[k] = v
36552	}
36553	reqHeaders.Set("User-Agent", c.s.userAgent())
36554	if c.ifNoneMatch_ != "" {
36555		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
36556	}
36557	var body io.Reader = nil
36558	c.urlParams_.Set("alt", alt)
36559	c.urlParams_.Set("prettyPrint", "false")
36560	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/productstatuses/{productId}/repricingreports")
36561	urls += "?" + c.urlParams_.Encode()
36562	req, err := http.NewRequest("GET", urls, body)
36563	if err != nil {
36564		return nil, err
36565	}
36566	req.Header = reqHeaders
36567	googleapi.Expand(req.URL, map[string]string{
36568		"merchantId": strconv.FormatInt(c.merchantId, 10),
36569		"productId":  c.productId,
36570	})
36571	return gensupport.SendRequest(c.ctx_, c.s.client, req)
36572}
36573
36574// Do executes the "content.productstatuses.repricingreports.list" call.
36575// Exactly one of *ListRepricingProductReportsResponse or error will be
36576// non-nil. Any non-2xx status code is an error. Response headers are in
36577// either *ListRepricingProductReportsResponse.ServerResponse.Header or
36578// (if a response was returned at all) in
36579// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
36580// whether the returned error was because http.StatusNotModified was
36581// returned.
36582func (c *ProductstatusesRepricingreportsListCall) Do(opts ...googleapi.CallOption) (*ListRepricingProductReportsResponse, error) {
36583	gensupport.SetOptions(c.urlParams_, opts...)
36584	res, err := c.doRequest("json")
36585	if res != nil && res.StatusCode == http.StatusNotModified {
36586		if res.Body != nil {
36587			res.Body.Close()
36588		}
36589		return nil, &googleapi.Error{
36590			Code:   res.StatusCode,
36591			Header: res.Header,
36592		}
36593	}
36594	if err != nil {
36595		return nil, err
36596	}
36597	defer googleapi.CloseBody(res)
36598	if err := googleapi.CheckResponse(res); err != nil {
36599		return nil, err
36600	}
36601	ret := &ListRepricingProductReportsResponse{
36602		ServerResponse: googleapi.ServerResponse{
36603			Header:         res.Header,
36604			HTTPStatusCode: res.StatusCode,
36605		},
36606	}
36607	target := &ret
36608	if err := gensupport.DecodeResponse(target, res); err != nil {
36609		return nil, err
36610	}
36611	return ret, nil
36612	// {
36613	//   "description": "Lists the metrics report for a given Repricing product.",
36614	//   "flatPath": "{merchantId}/productstatuses/{productId}/repricingreports",
36615	//   "httpMethod": "GET",
36616	//   "id": "content.productstatuses.repricingreports.list",
36617	//   "parameterOrder": [
36618	//     "merchantId",
36619	//     "productId"
36620	//   ],
36621	//   "parameters": {
36622	//     "endDate": {
36623	//       "description": "Gets Repricing reports on and before this date in the merchant's timezone. You can only retrieve data up to 7 days ago (default) or earlier. Format is YYYY-MM-DD.",
36624	//       "location": "query",
36625	//       "type": "string"
36626	//     },
36627	//     "merchantId": {
36628	//       "description": "Required. Id of the merchant who owns the Repricing rule.",
36629	//       "format": "int64",
36630	//       "location": "path",
36631	//       "required": true,
36632	//       "type": "string"
36633	//     },
36634	//     "pageSize": {
36635	//       "description": "Maximum number of days of reports to return. There can be more than one rule report returned per day. For example, if 3 rule types got applied to the same product within a 24-hour period, then a page_size of 1 will return 3 rule reports. The page size defaults to 50 and values above 1000 are coerced to 1000. This service may return fewer days of reports than this value, for example, if the time between your start and end date is less than the page size.",
36636	//       "format": "int32",
36637	//       "location": "query",
36638	//       "type": "integer"
36639	//     },
36640	//     "pageToken": {
36641	//       "description": "Token (if provided) to retrieve the subsequent page. All other parameters must match the original call that provided the page token.",
36642	//       "location": "query",
36643	//       "type": "string"
36644	//     },
36645	//     "productId": {
36646	//       "description": "Required. Id of the Repricing product. Also known as the [REST_ID](https://developers.google.com/shopping-content/reference/rest/v2.1/products#Product.FIELDS.id)",
36647	//       "location": "path",
36648	//       "required": true,
36649	//       "type": "string"
36650	//     },
36651	//     "ruleId": {
36652	//       "description": "Id of the Repricing rule. If specified, only gets this rule's reports.",
36653	//       "location": "query",
36654	//       "type": "string"
36655	//     },
36656	//     "startDate": {
36657	//       "description": "Gets Repricing reports on and after this date in the merchant's timezone, up to one year ago. Do not use a start date later than 7 days ago (default). Format is YYYY-MM-DD.",
36658	//       "location": "query",
36659	//       "type": "string"
36660	//     }
36661	//   },
36662	//   "path": "{merchantId}/productstatuses/{productId}/repricingreports",
36663	//   "response": {
36664	//     "$ref": "ListRepricingProductReportsResponse"
36665	//   },
36666	//   "scopes": [
36667	//     "https://www.googleapis.com/auth/content"
36668	//   ]
36669	// }
36670
36671}
36672
36673// Pages invokes f for each page of results.
36674// A non-nil error returned from f will halt the iteration.
36675// The provided context supersedes any context provided to the Context method.
36676func (c *ProductstatusesRepricingreportsListCall) Pages(ctx context.Context, f func(*ListRepricingProductReportsResponse) error) error {
36677	c.ctx_ = ctx
36678	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
36679	for {
36680		x, err := c.Do()
36681		if err != nil {
36682			return err
36683		}
36684		if err := f(x); err != nil {
36685			return err
36686		}
36687		if x.NextPageToken == "" {
36688			return nil
36689		}
36690		c.PageToken(x.NextPageToken)
36691	}
36692}
36693
36694// method id "content.promotions.create":
36695
36696type PromotionsCreateCall struct {
36697	s          *APIService
36698	merchantId int64
36699	promotion  *Promotion
36700	urlParams_ gensupport.URLParams
36701	ctx_       context.Context
36702	header_    http.Header
36703}
36704
36705// Create: Inserts a promotion for your Merchant Center account. If the
36706// promotion already exists, then it will update the promotion instead.
36707//
36708// - merchantId: The ID of the account that contains the collection.
36709func (r *PromotionsService) Create(merchantId int64, promotion *Promotion) *PromotionsCreateCall {
36710	c := &PromotionsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
36711	c.merchantId = merchantId
36712	c.promotion = promotion
36713	return c
36714}
36715
36716// Fields allows partial responses to be retrieved. See
36717// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
36718// for more information.
36719func (c *PromotionsCreateCall) Fields(s ...googleapi.Field) *PromotionsCreateCall {
36720	c.urlParams_.Set("fields", googleapi.CombineFields(s))
36721	return c
36722}
36723
36724// Context sets the context to be used in this call's Do method. Any
36725// pending HTTP request will be aborted if the provided context is
36726// canceled.
36727func (c *PromotionsCreateCall) Context(ctx context.Context) *PromotionsCreateCall {
36728	c.ctx_ = ctx
36729	return c
36730}
36731
36732// Header returns an http.Header that can be modified by the caller to
36733// add HTTP headers to the request.
36734func (c *PromotionsCreateCall) Header() http.Header {
36735	if c.header_ == nil {
36736		c.header_ = make(http.Header)
36737	}
36738	return c.header_
36739}
36740
36741func (c *PromotionsCreateCall) doRequest(alt string) (*http.Response, error) {
36742	reqHeaders := make(http.Header)
36743	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
36744	for k, v := range c.header_ {
36745		reqHeaders[k] = v
36746	}
36747	reqHeaders.Set("User-Agent", c.s.userAgent())
36748	var body io.Reader = nil
36749	body, err := googleapi.WithoutDataWrapper.JSONReader(c.promotion)
36750	if err != nil {
36751		return nil, err
36752	}
36753	reqHeaders.Set("Content-Type", "application/json")
36754	c.urlParams_.Set("alt", alt)
36755	c.urlParams_.Set("prettyPrint", "false")
36756	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/promotions")
36757	urls += "?" + c.urlParams_.Encode()
36758	req, err := http.NewRequest("POST", urls, body)
36759	if err != nil {
36760		return nil, err
36761	}
36762	req.Header = reqHeaders
36763	googleapi.Expand(req.URL, map[string]string{
36764		"merchantId": strconv.FormatInt(c.merchantId, 10),
36765	})
36766	return gensupport.SendRequest(c.ctx_, c.s.client, req)
36767}
36768
36769// Do executes the "content.promotions.create" call.
36770// Exactly one of *Promotion or error will be non-nil. Any non-2xx
36771// status code is an error. Response headers are in either
36772// *Promotion.ServerResponse.Header or (if a response was returned at
36773// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
36774// to check whether the returned error was because
36775// http.StatusNotModified was returned.
36776func (c *PromotionsCreateCall) Do(opts ...googleapi.CallOption) (*Promotion, error) {
36777	gensupport.SetOptions(c.urlParams_, opts...)
36778	res, err := c.doRequest("json")
36779	if res != nil && res.StatusCode == http.StatusNotModified {
36780		if res.Body != nil {
36781			res.Body.Close()
36782		}
36783		return nil, &googleapi.Error{
36784			Code:   res.StatusCode,
36785			Header: res.Header,
36786		}
36787	}
36788	if err != nil {
36789		return nil, err
36790	}
36791	defer googleapi.CloseBody(res)
36792	if err := googleapi.CheckResponse(res); err != nil {
36793		return nil, err
36794	}
36795	ret := &Promotion{
36796		ServerResponse: googleapi.ServerResponse{
36797			Header:         res.Header,
36798			HTTPStatusCode: res.StatusCode,
36799		},
36800	}
36801	target := &ret
36802	if err := gensupport.DecodeResponse(target, res); err != nil {
36803		return nil, err
36804	}
36805	return ret, nil
36806	// {
36807	//   "description": "Inserts a promotion for your Merchant Center account. If the promotion already exists, then it will update the promotion instead.",
36808	//   "flatPath": "{merchantId}/promotions",
36809	//   "httpMethod": "POST",
36810	//   "id": "content.promotions.create",
36811	//   "parameterOrder": [
36812	//     "merchantId"
36813	//   ],
36814	//   "parameters": {
36815	//     "merchantId": {
36816	//       "description": "Required. The ID of the account that contains the collection.",
36817	//       "format": "int64",
36818	//       "location": "path",
36819	//       "required": true,
36820	//       "type": "string"
36821	//     }
36822	//   },
36823	//   "path": "{merchantId}/promotions",
36824	//   "request": {
36825	//     "$ref": "Promotion"
36826	//   },
36827	//   "response": {
36828	//     "$ref": "Promotion"
36829	//   },
36830	//   "scopes": [
36831	//     "https://www.googleapis.com/auth/content"
36832	//   ]
36833	// }
36834
36835}
36836
36837// method id "content.promotions.get":
36838
36839type PromotionsGetCall struct {
36840	s            *APIService
36841	merchantId   int64
36842	id           string
36843	urlParams_   gensupport.URLParams
36844	ifNoneMatch_ string
36845	ctx_         context.Context
36846	header_      http.Header
36847}
36848
36849// Get: Retrieves a promotion from your Merchant Center account.
36850//
36851// - id: REST ID of the promotion to retrieve.
36852// - merchantId: The ID of the account that contains the collection.
36853func (r *PromotionsService) Get(merchantId int64, id string) *PromotionsGetCall {
36854	c := &PromotionsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
36855	c.merchantId = merchantId
36856	c.id = id
36857	return c
36858}
36859
36860// Fields allows partial responses to be retrieved. See
36861// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
36862// for more information.
36863func (c *PromotionsGetCall) Fields(s ...googleapi.Field) *PromotionsGetCall {
36864	c.urlParams_.Set("fields", googleapi.CombineFields(s))
36865	return c
36866}
36867
36868// IfNoneMatch sets the optional parameter which makes the operation
36869// fail if the object's ETag matches the given value. This is useful for
36870// getting updates only after the object has changed since the last
36871// request. Use googleapi.IsNotModified to check whether the response
36872// error from Do is the result of In-None-Match.
36873func (c *PromotionsGetCall) IfNoneMatch(entityTag string) *PromotionsGetCall {
36874	c.ifNoneMatch_ = entityTag
36875	return c
36876}
36877
36878// Context sets the context to be used in this call's Do method. Any
36879// pending HTTP request will be aborted if the provided context is
36880// canceled.
36881func (c *PromotionsGetCall) Context(ctx context.Context) *PromotionsGetCall {
36882	c.ctx_ = ctx
36883	return c
36884}
36885
36886// Header returns an http.Header that can be modified by the caller to
36887// add HTTP headers to the request.
36888func (c *PromotionsGetCall) Header() http.Header {
36889	if c.header_ == nil {
36890		c.header_ = make(http.Header)
36891	}
36892	return c.header_
36893}
36894
36895func (c *PromotionsGetCall) doRequest(alt string) (*http.Response, error) {
36896	reqHeaders := make(http.Header)
36897	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
36898	for k, v := range c.header_ {
36899		reqHeaders[k] = v
36900	}
36901	reqHeaders.Set("User-Agent", c.s.userAgent())
36902	if c.ifNoneMatch_ != "" {
36903		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
36904	}
36905	var body io.Reader = nil
36906	c.urlParams_.Set("alt", alt)
36907	c.urlParams_.Set("prettyPrint", "false")
36908	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/promotions/{id}")
36909	urls += "?" + c.urlParams_.Encode()
36910	req, err := http.NewRequest("GET", urls, body)
36911	if err != nil {
36912		return nil, err
36913	}
36914	req.Header = reqHeaders
36915	googleapi.Expand(req.URL, map[string]string{
36916		"merchantId": strconv.FormatInt(c.merchantId, 10),
36917		"id":         c.id,
36918	})
36919	return gensupport.SendRequest(c.ctx_, c.s.client, req)
36920}
36921
36922// Do executes the "content.promotions.get" call.
36923// Exactly one of *Promotion or error will be non-nil. Any non-2xx
36924// status code is an error. Response headers are in either
36925// *Promotion.ServerResponse.Header or (if a response was returned at
36926// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
36927// to check whether the returned error was because
36928// http.StatusNotModified was returned.
36929func (c *PromotionsGetCall) Do(opts ...googleapi.CallOption) (*Promotion, error) {
36930	gensupport.SetOptions(c.urlParams_, opts...)
36931	res, err := c.doRequest("json")
36932	if res != nil && res.StatusCode == http.StatusNotModified {
36933		if res.Body != nil {
36934			res.Body.Close()
36935		}
36936		return nil, &googleapi.Error{
36937			Code:   res.StatusCode,
36938			Header: res.Header,
36939		}
36940	}
36941	if err != nil {
36942		return nil, err
36943	}
36944	defer googleapi.CloseBody(res)
36945	if err := googleapi.CheckResponse(res); err != nil {
36946		return nil, err
36947	}
36948	ret := &Promotion{
36949		ServerResponse: googleapi.ServerResponse{
36950			Header:         res.Header,
36951			HTTPStatusCode: res.StatusCode,
36952		},
36953	}
36954	target := &ret
36955	if err := gensupport.DecodeResponse(target, res); err != nil {
36956		return nil, err
36957	}
36958	return ret, nil
36959	// {
36960	//   "description": "Retrieves a promotion from your Merchant Center account.",
36961	//   "flatPath": "{merchantId}/promotions/{id}",
36962	//   "httpMethod": "GET",
36963	//   "id": "content.promotions.get",
36964	//   "parameterOrder": [
36965	//     "merchantId",
36966	//     "id"
36967	//   ],
36968	//   "parameters": {
36969	//     "id": {
36970	//       "description": "Required. REST ID of the promotion to retrieve.",
36971	//       "location": "path",
36972	//       "required": true,
36973	//       "type": "string"
36974	//     },
36975	//     "merchantId": {
36976	//       "description": "Required. The ID of the account that contains the collection.",
36977	//       "format": "int64",
36978	//       "location": "path",
36979	//       "required": true,
36980	//       "type": "string"
36981	//     }
36982	//   },
36983	//   "path": "{merchantId}/promotions/{id}",
36984	//   "response": {
36985	//     "$ref": "Promotion"
36986	//   },
36987	//   "scopes": [
36988	//     "https://www.googleapis.com/auth/content"
36989	//   ]
36990	// }
36991
36992}
36993
36994// method id "content.pubsubnotificationsettings.get":
36995
36996type PubsubnotificationsettingsGetCall struct {
36997	s            *APIService
36998	merchantId   uint64
36999	urlParams_   gensupport.URLParams
37000	ifNoneMatch_ string
37001	ctx_         context.Context
37002	header_      http.Header
37003}
37004
37005// Get: Retrieves a Merchant Center account's pubsub notification
37006// settings.
37007//
37008// - merchantId: The ID of the account for which to get pubsub
37009//   notification settings.
37010func (r *PubsubnotificationsettingsService) Get(merchantId uint64) *PubsubnotificationsettingsGetCall {
37011	c := &PubsubnotificationsettingsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
37012	c.merchantId = merchantId
37013	return c
37014}
37015
37016// Fields allows partial responses to be retrieved. See
37017// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
37018// for more information.
37019func (c *PubsubnotificationsettingsGetCall) Fields(s ...googleapi.Field) *PubsubnotificationsettingsGetCall {
37020	c.urlParams_.Set("fields", googleapi.CombineFields(s))
37021	return c
37022}
37023
37024// IfNoneMatch sets the optional parameter which makes the operation
37025// fail if the object's ETag matches the given value. This is useful for
37026// getting updates only after the object has changed since the last
37027// request. Use googleapi.IsNotModified to check whether the response
37028// error from Do is the result of In-None-Match.
37029func (c *PubsubnotificationsettingsGetCall) IfNoneMatch(entityTag string) *PubsubnotificationsettingsGetCall {
37030	c.ifNoneMatch_ = entityTag
37031	return c
37032}
37033
37034// Context sets the context to be used in this call's Do method. Any
37035// pending HTTP request will be aborted if the provided context is
37036// canceled.
37037func (c *PubsubnotificationsettingsGetCall) Context(ctx context.Context) *PubsubnotificationsettingsGetCall {
37038	c.ctx_ = ctx
37039	return c
37040}
37041
37042// Header returns an http.Header that can be modified by the caller to
37043// add HTTP headers to the request.
37044func (c *PubsubnotificationsettingsGetCall) Header() http.Header {
37045	if c.header_ == nil {
37046		c.header_ = make(http.Header)
37047	}
37048	return c.header_
37049}
37050
37051func (c *PubsubnotificationsettingsGetCall) doRequest(alt string) (*http.Response, error) {
37052	reqHeaders := make(http.Header)
37053	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
37054	for k, v := range c.header_ {
37055		reqHeaders[k] = v
37056	}
37057	reqHeaders.Set("User-Agent", c.s.userAgent())
37058	if c.ifNoneMatch_ != "" {
37059		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
37060	}
37061	var body io.Reader = nil
37062	c.urlParams_.Set("alt", alt)
37063	c.urlParams_.Set("prettyPrint", "false")
37064	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pubsubnotificationsettings")
37065	urls += "?" + c.urlParams_.Encode()
37066	req, err := http.NewRequest("GET", urls, body)
37067	if err != nil {
37068		return nil, err
37069	}
37070	req.Header = reqHeaders
37071	googleapi.Expand(req.URL, map[string]string{
37072		"merchantId": strconv.FormatUint(c.merchantId, 10),
37073	})
37074	return gensupport.SendRequest(c.ctx_, c.s.client, req)
37075}
37076
37077// Do executes the "content.pubsubnotificationsettings.get" call.
37078// Exactly one of *PubsubNotificationSettings or error will be non-nil.
37079// Any non-2xx status code is an error. Response headers are in either
37080// *PubsubNotificationSettings.ServerResponse.Header or (if a response
37081// was returned at all) in error.(*googleapi.Error).Header. Use
37082// googleapi.IsNotModified to check whether the returned error was
37083// because http.StatusNotModified was returned.
37084func (c *PubsubnotificationsettingsGetCall) Do(opts ...googleapi.CallOption) (*PubsubNotificationSettings, error) {
37085	gensupport.SetOptions(c.urlParams_, opts...)
37086	res, err := c.doRequest("json")
37087	if res != nil && res.StatusCode == http.StatusNotModified {
37088		if res.Body != nil {
37089			res.Body.Close()
37090		}
37091		return nil, &googleapi.Error{
37092			Code:   res.StatusCode,
37093			Header: res.Header,
37094		}
37095	}
37096	if err != nil {
37097		return nil, err
37098	}
37099	defer googleapi.CloseBody(res)
37100	if err := googleapi.CheckResponse(res); err != nil {
37101		return nil, err
37102	}
37103	ret := &PubsubNotificationSettings{
37104		ServerResponse: googleapi.ServerResponse{
37105			Header:         res.Header,
37106			HTTPStatusCode: res.StatusCode,
37107		},
37108	}
37109	target := &ret
37110	if err := gensupport.DecodeResponse(target, res); err != nil {
37111		return nil, err
37112	}
37113	return ret, nil
37114	// {
37115	//   "description": "Retrieves a Merchant Center account's pubsub notification settings.",
37116	//   "flatPath": "{merchantId}/pubsubnotificationsettings",
37117	//   "httpMethod": "GET",
37118	//   "id": "content.pubsubnotificationsettings.get",
37119	//   "parameterOrder": [
37120	//     "merchantId"
37121	//   ],
37122	//   "parameters": {
37123	//     "merchantId": {
37124	//       "description": "The ID of the account for which to get pubsub notification settings.",
37125	//       "format": "uint64",
37126	//       "location": "path",
37127	//       "required": true,
37128	//       "type": "string"
37129	//     }
37130	//   },
37131	//   "path": "{merchantId}/pubsubnotificationsettings",
37132	//   "response": {
37133	//     "$ref": "PubsubNotificationSettings"
37134	//   },
37135	//   "scopes": [
37136	//     "https://www.googleapis.com/auth/content"
37137	//   ]
37138	// }
37139
37140}
37141
37142// method id "content.pubsubnotificationsettings.update":
37143
37144type PubsubnotificationsettingsUpdateCall struct {
37145	s                          *APIService
37146	merchantId                 uint64
37147	pubsubnotificationsettings *PubsubNotificationSettings
37148	urlParams_                 gensupport.URLParams
37149	ctx_                       context.Context
37150	header_                    http.Header
37151}
37152
37153// Update: Register a Merchant Center account for pubsub notifications.
37154// Note that cloud topic name should not be provided as part of the
37155// request.
37156//
37157// - merchantId: The ID of the account.
37158func (r *PubsubnotificationsettingsService) Update(merchantId uint64, pubsubnotificationsettings *PubsubNotificationSettings) *PubsubnotificationsettingsUpdateCall {
37159	c := &PubsubnotificationsettingsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
37160	c.merchantId = merchantId
37161	c.pubsubnotificationsettings = pubsubnotificationsettings
37162	return c
37163}
37164
37165// Fields allows partial responses to be retrieved. See
37166// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
37167// for more information.
37168func (c *PubsubnotificationsettingsUpdateCall) Fields(s ...googleapi.Field) *PubsubnotificationsettingsUpdateCall {
37169	c.urlParams_.Set("fields", googleapi.CombineFields(s))
37170	return c
37171}
37172
37173// Context sets the context to be used in this call's Do method. Any
37174// pending HTTP request will be aborted if the provided context is
37175// canceled.
37176func (c *PubsubnotificationsettingsUpdateCall) Context(ctx context.Context) *PubsubnotificationsettingsUpdateCall {
37177	c.ctx_ = ctx
37178	return c
37179}
37180
37181// Header returns an http.Header that can be modified by the caller to
37182// add HTTP headers to the request.
37183func (c *PubsubnotificationsettingsUpdateCall) Header() http.Header {
37184	if c.header_ == nil {
37185		c.header_ = make(http.Header)
37186	}
37187	return c.header_
37188}
37189
37190func (c *PubsubnotificationsettingsUpdateCall) doRequest(alt string) (*http.Response, error) {
37191	reqHeaders := make(http.Header)
37192	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
37193	for k, v := range c.header_ {
37194		reqHeaders[k] = v
37195	}
37196	reqHeaders.Set("User-Agent", c.s.userAgent())
37197	var body io.Reader = nil
37198	body, err := googleapi.WithoutDataWrapper.JSONReader(c.pubsubnotificationsettings)
37199	if err != nil {
37200		return nil, err
37201	}
37202	reqHeaders.Set("Content-Type", "application/json")
37203	c.urlParams_.Set("alt", alt)
37204	c.urlParams_.Set("prettyPrint", "false")
37205	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pubsubnotificationsettings")
37206	urls += "?" + c.urlParams_.Encode()
37207	req, err := http.NewRequest("PUT", urls, body)
37208	if err != nil {
37209		return nil, err
37210	}
37211	req.Header = reqHeaders
37212	googleapi.Expand(req.URL, map[string]string{
37213		"merchantId": strconv.FormatUint(c.merchantId, 10),
37214	})
37215	return gensupport.SendRequest(c.ctx_, c.s.client, req)
37216}
37217
37218// Do executes the "content.pubsubnotificationsettings.update" call.
37219// Exactly one of *PubsubNotificationSettings or error will be non-nil.
37220// Any non-2xx status code is an error. Response headers are in either
37221// *PubsubNotificationSettings.ServerResponse.Header or (if a response
37222// was returned at all) in error.(*googleapi.Error).Header. Use
37223// googleapi.IsNotModified to check whether the returned error was
37224// because http.StatusNotModified was returned.
37225func (c *PubsubnotificationsettingsUpdateCall) Do(opts ...googleapi.CallOption) (*PubsubNotificationSettings, error) {
37226	gensupport.SetOptions(c.urlParams_, opts...)
37227	res, err := c.doRequest("json")
37228	if res != nil && res.StatusCode == http.StatusNotModified {
37229		if res.Body != nil {
37230			res.Body.Close()
37231		}
37232		return nil, &googleapi.Error{
37233			Code:   res.StatusCode,
37234			Header: res.Header,
37235		}
37236	}
37237	if err != nil {
37238		return nil, err
37239	}
37240	defer googleapi.CloseBody(res)
37241	if err := googleapi.CheckResponse(res); err != nil {
37242		return nil, err
37243	}
37244	ret := &PubsubNotificationSettings{
37245		ServerResponse: googleapi.ServerResponse{
37246			Header:         res.Header,
37247			HTTPStatusCode: res.StatusCode,
37248		},
37249	}
37250	target := &ret
37251	if err := gensupport.DecodeResponse(target, res); err != nil {
37252		return nil, err
37253	}
37254	return ret, nil
37255	// {
37256	//   "description": "Register a Merchant Center account for pubsub notifications. Note that cloud topic name should not be provided as part of the request.",
37257	//   "flatPath": "{merchantId}/pubsubnotificationsettings",
37258	//   "httpMethod": "PUT",
37259	//   "id": "content.pubsubnotificationsettings.update",
37260	//   "parameterOrder": [
37261	//     "merchantId"
37262	//   ],
37263	//   "parameters": {
37264	//     "merchantId": {
37265	//       "description": "The ID of the account.",
37266	//       "format": "uint64",
37267	//       "location": "path",
37268	//       "required": true,
37269	//       "type": "string"
37270	//     }
37271	//   },
37272	//   "path": "{merchantId}/pubsubnotificationsettings",
37273	//   "request": {
37274	//     "$ref": "PubsubNotificationSettings"
37275	//   },
37276	//   "response": {
37277	//     "$ref": "PubsubNotificationSettings"
37278	//   },
37279	//   "scopes": [
37280	//     "https://www.googleapis.com/auth/content"
37281	//   ]
37282	// }
37283
37284}
37285
37286// method id "content.regionalinventory.custombatch":
37287
37288type RegionalinventoryCustombatchCall struct {
37289	s                                   *APIService
37290	regionalinventorycustombatchrequest *RegionalinventoryCustomBatchRequest
37291	urlParams_                          gensupport.URLParams
37292	ctx_                                context.Context
37293	header_                             http.Header
37294}
37295
37296// Custombatch: Updates regional inventory for multiple products or
37297// regions in a single request.
37298func (r *RegionalinventoryService) Custombatch(regionalinventorycustombatchrequest *RegionalinventoryCustomBatchRequest) *RegionalinventoryCustombatchCall {
37299	c := &RegionalinventoryCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
37300	c.regionalinventorycustombatchrequest = regionalinventorycustombatchrequest
37301	return c
37302}
37303
37304// Fields allows partial responses to be retrieved. See
37305// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
37306// for more information.
37307func (c *RegionalinventoryCustombatchCall) Fields(s ...googleapi.Field) *RegionalinventoryCustombatchCall {
37308	c.urlParams_.Set("fields", googleapi.CombineFields(s))
37309	return c
37310}
37311
37312// Context sets the context to be used in this call's Do method. Any
37313// pending HTTP request will be aborted if the provided context is
37314// canceled.
37315func (c *RegionalinventoryCustombatchCall) Context(ctx context.Context) *RegionalinventoryCustombatchCall {
37316	c.ctx_ = ctx
37317	return c
37318}
37319
37320// Header returns an http.Header that can be modified by the caller to
37321// add HTTP headers to the request.
37322func (c *RegionalinventoryCustombatchCall) Header() http.Header {
37323	if c.header_ == nil {
37324		c.header_ = make(http.Header)
37325	}
37326	return c.header_
37327}
37328
37329func (c *RegionalinventoryCustombatchCall) doRequest(alt string) (*http.Response, error) {
37330	reqHeaders := make(http.Header)
37331	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
37332	for k, v := range c.header_ {
37333		reqHeaders[k] = v
37334	}
37335	reqHeaders.Set("User-Agent", c.s.userAgent())
37336	var body io.Reader = nil
37337	body, err := googleapi.WithoutDataWrapper.JSONReader(c.regionalinventorycustombatchrequest)
37338	if err != nil {
37339		return nil, err
37340	}
37341	reqHeaders.Set("Content-Type", "application/json")
37342	c.urlParams_.Set("alt", alt)
37343	c.urlParams_.Set("prettyPrint", "false")
37344	urls := googleapi.ResolveRelative(c.s.BasePath, "regionalinventory/batch")
37345	urls += "?" + c.urlParams_.Encode()
37346	req, err := http.NewRequest("POST", urls, body)
37347	if err != nil {
37348		return nil, err
37349	}
37350	req.Header = reqHeaders
37351	return gensupport.SendRequest(c.ctx_, c.s.client, req)
37352}
37353
37354// Do executes the "content.regionalinventory.custombatch" call.
37355// Exactly one of *RegionalinventoryCustomBatchResponse or error will be
37356// non-nil. Any non-2xx status code is an error. Response headers are in
37357// either *RegionalinventoryCustomBatchResponse.ServerResponse.Header or
37358// (if a response was returned at all) in
37359// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
37360// whether the returned error was because http.StatusNotModified was
37361// returned.
37362func (c *RegionalinventoryCustombatchCall) Do(opts ...googleapi.CallOption) (*RegionalinventoryCustomBatchResponse, error) {
37363	gensupport.SetOptions(c.urlParams_, opts...)
37364	res, err := c.doRequest("json")
37365	if res != nil && res.StatusCode == http.StatusNotModified {
37366		if res.Body != nil {
37367			res.Body.Close()
37368		}
37369		return nil, &googleapi.Error{
37370			Code:   res.StatusCode,
37371			Header: res.Header,
37372		}
37373	}
37374	if err != nil {
37375		return nil, err
37376	}
37377	defer googleapi.CloseBody(res)
37378	if err := googleapi.CheckResponse(res); err != nil {
37379		return nil, err
37380	}
37381	ret := &RegionalinventoryCustomBatchResponse{
37382		ServerResponse: googleapi.ServerResponse{
37383			Header:         res.Header,
37384			HTTPStatusCode: res.StatusCode,
37385		},
37386	}
37387	target := &ret
37388	if err := gensupport.DecodeResponse(target, res); err != nil {
37389		return nil, err
37390	}
37391	return ret, nil
37392	// {
37393	//   "description": "Updates regional inventory for multiple products or regions in a single request.",
37394	//   "flatPath": "regionalinventory/batch",
37395	//   "httpMethod": "POST",
37396	//   "id": "content.regionalinventory.custombatch",
37397	//   "parameterOrder": [],
37398	//   "parameters": {},
37399	//   "path": "regionalinventory/batch",
37400	//   "request": {
37401	//     "$ref": "RegionalinventoryCustomBatchRequest"
37402	//   },
37403	//   "response": {
37404	//     "$ref": "RegionalinventoryCustomBatchResponse"
37405	//   },
37406	//   "scopes": [
37407	//     "https://www.googleapis.com/auth/content"
37408	//   ]
37409	// }
37410
37411}
37412
37413// method id "content.regionalinventory.insert":
37414
37415type RegionalinventoryInsertCall struct {
37416	s                 *APIService
37417	merchantId        uint64
37418	productId         string
37419	regionalinventory *RegionalInventory
37420	urlParams_        gensupport.URLParams
37421	ctx_              context.Context
37422	header_           http.Header
37423}
37424
37425// Insert: Update the regional inventory of a product in your Merchant
37426// Center account. If a regional inventory with the same region ID
37427// already exists, this method updates that entry.
37428//
37429// - merchantId: The ID of the account that contains the product. This
37430//   account cannot be a multi-client account.
37431// - productId: The REST ID of the product for which to update the
37432//   regional inventory.
37433func (r *RegionalinventoryService) Insert(merchantId uint64, productId string, regionalinventory *RegionalInventory) *RegionalinventoryInsertCall {
37434	c := &RegionalinventoryInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
37435	c.merchantId = merchantId
37436	c.productId = productId
37437	c.regionalinventory = regionalinventory
37438	return c
37439}
37440
37441// Fields allows partial responses to be retrieved. See
37442// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
37443// for more information.
37444func (c *RegionalinventoryInsertCall) Fields(s ...googleapi.Field) *RegionalinventoryInsertCall {
37445	c.urlParams_.Set("fields", googleapi.CombineFields(s))
37446	return c
37447}
37448
37449// Context sets the context to be used in this call's Do method. Any
37450// pending HTTP request will be aborted if the provided context is
37451// canceled.
37452func (c *RegionalinventoryInsertCall) Context(ctx context.Context) *RegionalinventoryInsertCall {
37453	c.ctx_ = ctx
37454	return c
37455}
37456
37457// Header returns an http.Header that can be modified by the caller to
37458// add HTTP headers to the request.
37459func (c *RegionalinventoryInsertCall) Header() http.Header {
37460	if c.header_ == nil {
37461		c.header_ = make(http.Header)
37462	}
37463	return c.header_
37464}
37465
37466func (c *RegionalinventoryInsertCall) doRequest(alt string) (*http.Response, error) {
37467	reqHeaders := make(http.Header)
37468	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
37469	for k, v := range c.header_ {
37470		reqHeaders[k] = v
37471	}
37472	reqHeaders.Set("User-Agent", c.s.userAgent())
37473	var body io.Reader = nil
37474	body, err := googleapi.WithoutDataWrapper.JSONReader(c.regionalinventory)
37475	if err != nil {
37476		return nil, err
37477	}
37478	reqHeaders.Set("Content-Type", "application/json")
37479	c.urlParams_.Set("alt", alt)
37480	c.urlParams_.Set("prettyPrint", "false")
37481	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products/{productId}/regionalinventory")
37482	urls += "?" + c.urlParams_.Encode()
37483	req, err := http.NewRequest("POST", urls, body)
37484	if err != nil {
37485		return nil, err
37486	}
37487	req.Header = reqHeaders
37488	googleapi.Expand(req.URL, map[string]string{
37489		"merchantId": strconv.FormatUint(c.merchantId, 10),
37490		"productId":  c.productId,
37491	})
37492	return gensupport.SendRequest(c.ctx_, c.s.client, req)
37493}
37494
37495// Do executes the "content.regionalinventory.insert" call.
37496// Exactly one of *RegionalInventory or error will be non-nil. Any
37497// non-2xx status code is an error. Response headers are in either
37498// *RegionalInventory.ServerResponse.Header or (if a response was
37499// returned at all) in error.(*googleapi.Error).Header. Use
37500// googleapi.IsNotModified to check whether the returned error was
37501// because http.StatusNotModified was returned.
37502func (c *RegionalinventoryInsertCall) Do(opts ...googleapi.CallOption) (*RegionalInventory, error) {
37503	gensupport.SetOptions(c.urlParams_, opts...)
37504	res, err := c.doRequest("json")
37505	if res != nil && res.StatusCode == http.StatusNotModified {
37506		if res.Body != nil {
37507			res.Body.Close()
37508		}
37509		return nil, &googleapi.Error{
37510			Code:   res.StatusCode,
37511			Header: res.Header,
37512		}
37513	}
37514	if err != nil {
37515		return nil, err
37516	}
37517	defer googleapi.CloseBody(res)
37518	if err := googleapi.CheckResponse(res); err != nil {
37519		return nil, err
37520	}
37521	ret := &RegionalInventory{
37522		ServerResponse: googleapi.ServerResponse{
37523			Header:         res.Header,
37524			HTTPStatusCode: res.StatusCode,
37525		},
37526	}
37527	target := &ret
37528	if err := gensupport.DecodeResponse(target, res); err != nil {
37529		return nil, err
37530	}
37531	return ret, nil
37532	// {
37533	//   "description": "Update the regional inventory of a product in your Merchant Center account. If a regional inventory with the same region ID already exists, this method updates that entry.",
37534	//   "flatPath": "{merchantId}/products/{productId}/regionalinventory",
37535	//   "httpMethod": "POST",
37536	//   "id": "content.regionalinventory.insert",
37537	//   "parameterOrder": [
37538	//     "merchantId",
37539	//     "productId"
37540	//   ],
37541	//   "parameters": {
37542	//     "merchantId": {
37543	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
37544	//       "format": "uint64",
37545	//       "location": "path",
37546	//       "required": true,
37547	//       "type": "string"
37548	//     },
37549	//     "productId": {
37550	//       "description": "The REST ID of the product for which to update the regional inventory.",
37551	//       "location": "path",
37552	//       "required": true,
37553	//       "type": "string"
37554	//     }
37555	//   },
37556	//   "path": "{merchantId}/products/{productId}/regionalinventory",
37557	//   "request": {
37558	//     "$ref": "RegionalInventory"
37559	//   },
37560	//   "response": {
37561	//     "$ref": "RegionalInventory"
37562	//   },
37563	//   "scopes": [
37564	//     "https://www.googleapis.com/auth/content"
37565	//   ]
37566	// }
37567
37568}
37569
37570// method id "content.regions.create":
37571
37572type RegionsCreateCall struct {
37573	s          *APIService
37574	merchantId int64
37575	region     *Region
37576	urlParams_ gensupport.URLParams
37577	ctx_       context.Context
37578	header_    http.Header
37579}
37580
37581// Create: Creates a region definition in your Merchant Center account.
37582//
37583// - merchantId: The id of the merchant for which to create region
37584//   definition.
37585func (r *RegionsService) Create(merchantId int64, region *Region) *RegionsCreateCall {
37586	c := &RegionsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
37587	c.merchantId = merchantId
37588	c.region = region
37589	return c
37590}
37591
37592// RegionId sets the optional parameter "regionId": Required. The id of
37593// the region to create.
37594func (c *RegionsCreateCall) RegionId(regionId string) *RegionsCreateCall {
37595	c.urlParams_.Set("regionId", regionId)
37596	return c
37597}
37598
37599// Fields allows partial responses to be retrieved. See
37600// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
37601// for more information.
37602func (c *RegionsCreateCall) Fields(s ...googleapi.Field) *RegionsCreateCall {
37603	c.urlParams_.Set("fields", googleapi.CombineFields(s))
37604	return c
37605}
37606
37607// Context sets the context to be used in this call's Do method. Any
37608// pending HTTP request will be aborted if the provided context is
37609// canceled.
37610func (c *RegionsCreateCall) Context(ctx context.Context) *RegionsCreateCall {
37611	c.ctx_ = ctx
37612	return c
37613}
37614
37615// Header returns an http.Header that can be modified by the caller to
37616// add HTTP headers to the request.
37617func (c *RegionsCreateCall) Header() http.Header {
37618	if c.header_ == nil {
37619		c.header_ = make(http.Header)
37620	}
37621	return c.header_
37622}
37623
37624func (c *RegionsCreateCall) doRequest(alt string) (*http.Response, error) {
37625	reqHeaders := make(http.Header)
37626	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
37627	for k, v := range c.header_ {
37628		reqHeaders[k] = v
37629	}
37630	reqHeaders.Set("User-Agent", c.s.userAgent())
37631	var body io.Reader = nil
37632	body, err := googleapi.WithoutDataWrapper.JSONReader(c.region)
37633	if err != nil {
37634		return nil, err
37635	}
37636	reqHeaders.Set("Content-Type", "application/json")
37637	c.urlParams_.Set("alt", alt)
37638	c.urlParams_.Set("prettyPrint", "false")
37639	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/regions")
37640	urls += "?" + c.urlParams_.Encode()
37641	req, err := http.NewRequest("POST", urls, body)
37642	if err != nil {
37643		return nil, err
37644	}
37645	req.Header = reqHeaders
37646	googleapi.Expand(req.URL, map[string]string{
37647		"merchantId": strconv.FormatInt(c.merchantId, 10),
37648	})
37649	return gensupport.SendRequest(c.ctx_, c.s.client, req)
37650}
37651
37652// Do executes the "content.regions.create" call.
37653// Exactly one of *Region or error will be non-nil. Any non-2xx status
37654// code is an error. Response headers are in either
37655// *Region.ServerResponse.Header or (if a response was returned at all)
37656// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
37657// check whether the returned error was because http.StatusNotModified
37658// was returned.
37659func (c *RegionsCreateCall) Do(opts ...googleapi.CallOption) (*Region, error) {
37660	gensupport.SetOptions(c.urlParams_, opts...)
37661	res, err := c.doRequest("json")
37662	if res != nil && res.StatusCode == http.StatusNotModified {
37663		if res.Body != nil {
37664			res.Body.Close()
37665		}
37666		return nil, &googleapi.Error{
37667			Code:   res.StatusCode,
37668			Header: res.Header,
37669		}
37670	}
37671	if err != nil {
37672		return nil, err
37673	}
37674	defer googleapi.CloseBody(res)
37675	if err := googleapi.CheckResponse(res); err != nil {
37676		return nil, err
37677	}
37678	ret := &Region{
37679		ServerResponse: googleapi.ServerResponse{
37680			Header:         res.Header,
37681			HTTPStatusCode: res.StatusCode,
37682		},
37683	}
37684	target := &ret
37685	if err := gensupport.DecodeResponse(target, res); err != nil {
37686		return nil, err
37687	}
37688	return ret, nil
37689	// {
37690	//   "description": "Creates a region definition in your Merchant Center account.",
37691	//   "flatPath": "{merchantId}/regions",
37692	//   "httpMethod": "POST",
37693	//   "id": "content.regions.create",
37694	//   "parameterOrder": [
37695	//     "merchantId"
37696	//   ],
37697	//   "parameters": {
37698	//     "merchantId": {
37699	//       "description": "Required. The id of the merchant for which to create region definition.",
37700	//       "format": "int64",
37701	//       "location": "path",
37702	//       "required": true,
37703	//       "type": "string"
37704	//     },
37705	//     "regionId": {
37706	//       "description": "Required. The id of the region to create.",
37707	//       "location": "query",
37708	//       "type": "string"
37709	//     }
37710	//   },
37711	//   "path": "{merchantId}/regions",
37712	//   "request": {
37713	//     "$ref": "Region"
37714	//   },
37715	//   "response": {
37716	//     "$ref": "Region"
37717	//   },
37718	//   "scopes": [
37719	//     "https://www.googleapis.com/auth/content"
37720	//   ]
37721	// }
37722
37723}
37724
37725// method id "content.regions.delete":
37726
37727type RegionsDeleteCall struct {
37728	s          *APIService
37729	merchantId int64
37730	regionId   string
37731	urlParams_ gensupport.URLParams
37732	ctx_       context.Context
37733	header_    http.Header
37734}
37735
37736// Delete: Deletes a region definition from your Merchant Center
37737// account.
37738//
37739// - merchantId: The id of the merchant for which to delete region
37740//   definition.
37741// - regionId: The id of the region to delete.
37742func (r *RegionsService) Delete(merchantId int64, regionId string) *RegionsDeleteCall {
37743	c := &RegionsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
37744	c.merchantId = merchantId
37745	c.regionId = regionId
37746	return c
37747}
37748
37749// Fields allows partial responses to be retrieved. See
37750// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
37751// for more information.
37752func (c *RegionsDeleteCall) Fields(s ...googleapi.Field) *RegionsDeleteCall {
37753	c.urlParams_.Set("fields", googleapi.CombineFields(s))
37754	return c
37755}
37756
37757// Context sets the context to be used in this call's Do method. Any
37758// pending HTTP request will be aborted if the provided context is
37759// canceled.
37760func (c *RegionsDeleteCall) Context(ctx context.Context) *RegionsDeleteCall {
37761	c.ctx_ = ctx
37762	return c
37763}
37764
37765// Header returns an http.Header that can be modified by the caller to
37766// add HTTP headers to the request.
37767func (c *RegionsDeleteCall) Header() http.Header {
37768	if c.header_ == nil {
37769		c.header_ = make(http.Header)
37770	}
37771	return c.header_
37772}
37773
37774func (c *RegionsDeleteCall) doRequest(alt string) (*http.Response, error) {
37775	reqHeaders := make(http.Header)
37776	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
37777	for k, v := range c.header_ {
37778		reqHeaders[k] = v
37779	}
37780	reqHeaders.Set("User-Agent", c.s.userAgent())
37781	var body io.Reader = nil
37782	c.urlParams_.Set("alt", alt)
37783	c.urlParams_.Set("prettyPrint", "false")
37784	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/regions/{regionId}")
37785	urls += "?" + c.urlParams_.Encode()
37786	req, err := http.NewRequest("DELETE", urls, body)
37787	if err != nil {
37788		return nil, err
37789	}
37790	req.Header = reqHeaders
37791	googleapi.Expand(req.URL, map[string]string{
37792		"merchantId": strconv.FormatInt(c.merchantId, 10),
37793		"regionId":   c.regionId,
37794	})
37795	return gensupport.SendRequest(c.ctx_, c.s.client, req)
37796}
37797
37798// Do executes the "content.regions.delete" call.
37799func (c *RegionsDeleteCall) Do(opts ...googleapi.CallOption) error {
37800	gensupport.SetOptions(c.urlParams_, opts...)
37801	res, err := c.doRequest("json")
37802	if err != nil {
37803		return err
37804	}
37805	defer googleapi.CloseBody(res)
37806	if err := googleapi.CheckResponse(res); err != nil {
37807		return err
37808	}
37809	return nil
37810	// {
37811	//   "description": "Deletes a region definition from your Merchant Center account.",
37812	//   "flatPath": "{merchantId}/regions/{regionId}",
37813	//   "httpMethod": "DELETE",
37814	//   "id": "content.regions.delete",
37815	//   "parameterOrder": [
37816	//     "merchantId",
37817	//     "regionId"
37818	//   ],
37819	//   "parameters": {
37820	//     "merchantId": {
37821	//       "description": "Required. The id of the merchant for which to delete region definition.",
37822	//       "format": "int64",
37823	//       "location": "path",
37824	//       "required": true,
37825	//       "type": "string"
37826	//     },
37827	//     "regionId": {
37828	//       "description": "Required. The id of the region to delete.",
37829	//       "location": "path",
37830	//       "required": true,
37831	//       "type": "string"
37832	//     }
37833	//   },
37834	//   "path": "{merchantId}/regions/{regionId}",
37835	//   "scopes": [
37836	//     "https://www.googleapis.com/auth/content"
37837	//   ]
37838	// }
37839
37840}
37841
37842// method id "content.regions.get":
37843
37844type RegionsGetCall struct {
37845	s            *APIService
37846	merchantId   int64
37847	regionId     string
37848	urlParams_   gensupport.URLParams
37849	ifNoneMatch_ string
37850	ctx_         context.Context
37851	header_      http.Header
37852}
37853
37854// Get: Retrieves a region defined in your Merchant Center account.
37855//
37856// - merchantId: The id of the merchant for which to retrieve region
37857//   definition.
37858// - regionId: The id of the region to retrieve.
37859func (r *RegionsService) Get(merchantId int64, regionId string) *RegionsGetCall {
37860	c := &RegionsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
37861	c.merchantId = merchantId
37862	c.regionId = regionId
37863	return c
37864}
37865
37866// Fields allows partial responses to be retrieved. See
37867// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
37868// for more information.
37869func (c *RegionsGetCall) Fields(s ...googleapi.Field) *RegionsGetCall {
37870	c.urlParams_.Set("fields", googleapi.CombineFields(s))
37871	return c
37872}
37873
37874// IfNoneMatch sets the optional parameter which makes the operation
37875// fail if the object's ETag matches the given value. This is useful for
37876// getting updates only after the object has changed since the last
37877// request. Use googleapi.IsNotModified to check whether the response
37878// error from Do is the result of In-None-Match.
37879func (c *RegionsGetCall) IfNoneMatch(entityTag string) *RegionsGetCall {
37880	c.ifNoneMatch_ = entityTag
37881	return c
37882}
37883
37884// Context sets the context to be used in this call's Do method. Any
37885// pending HTTP request will be aborted if the provided context is
37886// canceled.
37887func (c *RegionsGetCall) Context(ctx context.Context) *RegionsGetCall {
37888	c.ctx_ = ctx
37889	return c
37890}
37891
37892// Header returns an http.Header that can be modified by the caller to
37893// add HTTP headers to the request.
37894func (c *RegionsGetCall) Header() http.Header {
37895	if c.header_ == nil {
37896		c.header_ = make(http.Header)
37897	}
37898	return c.header_
37899}
37900
37901func (c *RegionsGetCall) doRequest(alt string) (*http.Response, error) {
37902	reqHeaders := make(http.Header)
37903	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
37904	for k, v := range c.header_ {
37905		reqHeaders[k] = v
37906	}
37907	reqHeaders.Set("User-Agent", c.s.userAgent())
37908	if c.ifNoneMatch_ != "" {
37909		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
37910	}
37911	var body io.Reader = nil
37912	c.urlParams_.Set("alt", alt)
37913	c.urlParams_.Set("prettyPrint", "false")
37914	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/regions/{regionId}")
37915	urls += "?" + c.urlParams_.Encode()
37916	req, err := http.NewRequest("GET", urls, body)
37917	if err != nil {
37918		return nil, err
37919	}
37920	req.Header = reqHeaders
37921	googleapi.Expand(req.URL, map[string]string{
37922		"merchantId": strconv.FormatInt(c.merchantId, 10),
37923		"regionId":   c.regionId,
37924	})
37925	return gensupport.SendRequest(c.ctx_, c.s.client, req)
37926}
37927
37928// Do executes the "content.regions.get" call.
37929// Exactly one of *Region or error will be non-nil. Any non-2xx status
37930// code is an error. Response headers are in either
37931// *Region.ServerResponse.Header or (if a response was returned at all)
37932// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
37933// check whether the returned error was because http.StatusNotModified
37934// was returned.
37935func (c *RegionsGetCall) Do(opts ...googleapi.CallOption) (*Region, error) {
37936	gensupport.SetOptions(c.urlParams_, opts...)
37937	res, err := c.doRequest("json")
37938	if res != nil && res.StatusCode == http.StatusNotModified {
37939		if res.Body != nil {
37940			res.Body.Close()
37941		}
37942		return nil, &googleapi.Error{
37943			Code:   res.StatusCode,
37944			Header: res.Header,
37945		}
37946	}
37947	if err != nil {
37948		return nil, err
37949	}
37950	defer googleapi.CloseBody(res)
37951	if err := googleapi.CheckResponse(res); err != nil {
37952		return nil, err
37953	}
37954	ret := &Region{
37955		ServerResponse: googleapi.ServerResponse{
37956			Header:         res.Header,
37957			HTTPStatusCode: res.StatusCode,
37958		},
37959	}
37960	target := &ret
37961	if err := gensupport.DecodeResponse(target, res); err != nil {
37962		return nil, err
37963	}
37964	return ret, nil
37965	// {
37966	//   "description": "Retrieves a region defined in your Merchant Center account.",
37967	//   "flatPath": "{merchantId}/regions/{regionId}",
37968	//   "httpMethod": "GET",
37969	//   "id": "content.regions.get",
37970	//   "parameterOrder": [
37971	//     "merchantId",
37972	//     "regionId"
37973	//   ],
37974	//   "parameters": {
37975	//     "merchantId": {
37976	//       "description": "Required. The id of the merchant for which to retrieve region definition.",
37977	//       "format": "int64",
37978	//       "location": "path",
37979	//       "required": true,
37980	//       "type": "string"
37981	//     },
37982	//     "regionId": {
37983	//       "description": "Required. The id of the region to retrieve.",
37984	//       "location": "path",
37985	//       "required": true,
37986	//       "type": "string"
37987	//     }
37988	//   },
37989	//   "path": "{merchantId}/regions/{regionId}",
37990	//   "response": {
37991	//     "$ref": "Region"
37992	//   },
37993	//   "scopes": [
37994	//     "https://www.googleapis.com/auth/content"
37995	//   ]
37996	// }
37997
37998}
37999
38000// method id "content.regions.list":
38001
38002type RegionsListCall struct {
38003	s            *APIService
38004	merchantId   int64
38005	urlParams_   gensupport.URLParams
38006	ifNoneMatch_ string
38007	ctx_         context.Context
38008	header_      http.Header
38009}
38010
38011// List: Lists the regions in your Merchant Center account.
38012//
38013// - merchantId: The id of the merchant for which to list region
38014//   definitions.
38015func (r *RegionsService) List(merchantId int64) *RegionsListCall {
38016	c := &RegionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
38017	c.merchantId = merchantId
38018	return c
38019}
38020
38021// PageSize sets the optional parameter "pageSize": The maximum number
38022// of regions to return. The service may return fewer than this value.
38023// If unspecified, at most 50 rules will be returned. The maximum value
38024// is 1000; values above 1000 will be coerced to 1000.
38025func (c *RegionsListCall) PageSize(pageSize int64) *RegionsListCall {
38026	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
38027	return c
38028}
38029
38030// PageToken sets the optional parameter "pageToken": A page token,
38031// received from a previous `ListRegions` call. Provide this to retrieve
38032// the subsequent page. When paginating, all other parameters provided
38033// to `ListRegions` must match the call that provided the page token.
38034func (c *RegionsListCall) PageToken(pageToken string) *RegionsListCall {
38035	c.urlParams_.Set("pageToken", pageToken)
38036	return c
38037}
38038
38039// Fields allows partial responses to be retrieved. See
38040// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
38041// for more information.
38042func (c *RegionsListCall) Fields(s ...googleapi.Field) *RegionsListCall {
38043	c.urlParams_.Set("fields", googleapi.CombineFields(s))
38044	return c
38045}
38046
38047// IfNoneMatch sets the optional parameter which makes the operation
38048// fail if the object's ETag matches the given value. This is useful for
38049// getting updates only after the object has changed since the last
38050// request. Use googleapi.IsNotModified to check whether the response
38051// error from Do is the result of In-None-Match.
38052func (c *RegionsListCall) IfNoneMatch(entityTag string) *RegionsListCall {
38053	c.ifNoneMatch_ = entityTag
38054	return c
38055}
38056
38057// Context sets the context to be used in this call's Do method. Any
38058// pending HTTP request will be aborted if the provided context is
38059// canceled.
38060func (c *RegionsListCall) Context(ctx context.Context) *RegionsListCall {
38061	c.ctx_ = ctx
38062	return c
38063}
38064
38065// Header returns an http.Header that can be modified by the caller to
38066// add HTTP headers to the request.
38067func (c *RegionsListCall) Header() http.Header {
38068	if c.header_ == nil {
38069		c.header_ = make(http.Header)
38070	}
38071	return c.header_
38072}
38073
38074func (c *RegionsListCall) doRequest(alt string) (*http.Response, error) {
38075	reqHeaders := make(http.Header)
38076	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
38077	for k, v := range c.header_ {
38078		reqHeaders[k] = v
38079	}
38080	reqHeaders.Set("User-Agent", c.s.userAgent())
38081	if c.ifNoneMatch_ != "" {
38082		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
38083	}
38084	var body io.Reader = nil
38085	c.urlParams_.Set("alt", alt)
38086	c.urlParams_.Set("prettyPrint", "false")
38087	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/regions")
38088	urls += "?" + c.urlParams_.Encode()
38089	req, err := http.NewRequest("GET", urls, body)
38090	if err != nil {
38091		return nil, err
38092	}
38093	req.Header = reqHeaders
38094	googleapi.Expand(req.URL, map[string]string{
38095		"merchantId": strconv.FormatInt(c.merchantId, 10),
38096	})
38097	return gensupport.SendRequest(c.ctx_, c.s.client, req)
38098}
38099
38100// Do executes the "content.regions.list" call.
38101// Exactly one of *ListRegionsResponse or error will be non-nil. Any
38102// non-2xx status code is an error. Response headers are in either
38103// *ListRegionsResponse.ServerResponse.Header or (if a response was
38104// returned at all) in error.(*googleapi.Error).Header. Use
38105// googleapi.IsNotModified to check whether the returned error was
38106// because http.StatusNotModified was returned.
38107func (c *RegionsListCall) Do(opts ...googleapi.CallOption) (*ListRegionsResponse, error) {
38108	gensupport.SetOptions(c.urlParams_, opts...)
38109	res, err := c.doRequest("json")
38110	if res != nil && res.StatusCode == http.StatusNotModified {
38111		if res.Body != nil {
38112			res.Body.Close()
38113		}
38114		return nil, &googleapi.Error{
38115			Code:   res.StatusCode,
38116			Header: res.Header,
38117		}
38118	}
38119	if err != nil {
38120		return nil, err
38121	}
38122	defer googleapi.CloseBody(res)
38123	if err := googleapi.CheckResponse(res); err != nil {
38124		return nil, err
38125	}
38126	ret := &ListRegionsResponse{
38127		ServerResponse: googleapi.ServerResponse{
38128			Header:         res.Header,
38129			HTTPStatusCode: res.StatusCode,
38130		},
38131	}
38132	target := &ret
38133	if err := gensupport.DecodeResponse(target, res); err != nil {
38134		return nil, err
38135	}
38136	return ret, nil
38137	// {
38138	//   "description": "Lists the regions in your Merchant Center account.",
38139	//   "flatPath": "{merchantId}/regions",
38140	//   "httpMethod": "GET",
38141	//   "id": "content.regions.list",
38142	//   "parameterOrder": [
38143	//     "merchantId"
38144	//   ],
38145	//   "parameters": {
38146	//     "merchantId": {
38147	//       "description": "Required. The id of the merchant for which to list region definitions.",
38148	//       "format": "int64",
38149	//       "location": "path",
38150	//       "required": true,
38151	//       "type": "string"
38152	//     },
38153	//     "pageSize": {
38154	//       "description": "The maximum number of regions to return. The service may return fewer than this value. If unspecified, at most 50 rules will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.",
38155	//       "format": "int32",
38156	//       "location": "query",
38157	//       "type": "integer"
38158	//     },
38159	//     "pageToken": {
38160	//       "description": "A page token, received from a previous `ListRegions` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListRegions` must match the call that provided the page token.",
38161	//       "location": "query",
38162	//       "type": "string"
38163	//     }
38164	//   },
38165	//   "path": "{merchantId}/regions",
38166	//   "response": {
38167	//     "$ref": "ListRegionsResponse"
38168	//   },
38169	//   "scopes": [
38170	//     "https://www.googleapis.com/auth/content"
38171	//   ]
38172	// }
38173
38174}
38175
38176// Pages invokes f for each page of results.
38177// A non-nil error returned from f will halt the iteration.
38178// The provided context supersedes any context provided to the Context method.
38179func (c *RegionsListCall) Pages(ctx context.Context, f func(*ListRegionsResponse) error) error {
38180	c.ctx_ = ctx
38181	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
38182	for {
38183		x, err := c.Do()
38184		if err != nil {
38185			return err
38186		}
38187		if err := f(x); err != nil {
38188			return err
38189		}
38190		if x.NextPageToken == "" {
38191			return nil
38192		}
38193		c.PageToken(x.NextPageToken)
38194	}
38195}
38196
38197// method id "content.regions.patch":
38198
38199type RegionsPatchCall struct {
38200	s          *APIService
38201	merchantId int64
38202	regionId   string
38203	region     *Region
38204	urlParams_ gensupport.URLParams
38205	ctx_       context.Context
38206	header_    http.Header
38207}
38208
38209// Patch: Updates a region definition in your Merchant Center account.
38210//
38211// - merchantId: The id of the merchant for which to update region
38212//   definition.
38213// - regionId: The id of the region to update.
38214func (r *RegionsService) Patch(merchantId int64, regionId string, region *Region) *RegionsPatchCall {
38215	c := &RegionsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
38216	c.merchantId = merchantId
38217	c.regionId = regionId
38218	c.region = region
38219	return c
38220}
38221
38222// UpdateMask sets the optional parameter "updateMask": The
38223// comma-separated field mask indicating the fields to update. Example:
38224// "displayName,postalCodeArea.regionCode".
38225func (c *RegionsPatchCall) UpdateMask(updateMask string) *RegionsPatchCall {
38226	c.urlParams_.Set("updateMask", updateMask)
38227	return c
38228}
38229
38230// Fields allows partial responses to be retrieved. See
38231// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
38232// for more information.
38233func (c *RegionsPatchCall) Fields(s ...googleapi.Field) *RegionsPatchCall {
38234	c.urlParams_.Set("fields", googleapi.CombineFields(s))
38235	return c
38236}
38237
38238// Context sets the context to be used in this call's Do method. Any
38239// pending HTTP request will be aborted if the provided context is
38240// canceled.
38241func (c *RegionsPatchCall) Context(ctx context.Context) *RegionsPatchCall {
38242	c.ctx_ = ctx
38243	return c
38244}
38245
38246// Header returns an http.Header that can be modified by the caller to
38247// add HTTP headers to the request.
38248func (c *RegionsPatchCall) Header() http.Header {
38249	if c.header_ == nil {
38250		c.header_ = make(http.Header)
38251	}
38252	return c.header_
38253}
38254
38255func (c *RegionsPatchCall) doRequest(alt string) (*http.Response, error) {
38256	reqHeaders := make(http.Header)
38257	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
38258	for k, v := range c.header_ {
38259		reqHeaders[k] = v
38260	}
38261	reqHeaders.Set("User-Agent", c.s.userAgent())
38262	var body io.Reader = nil
38263	body, err := googleapi.WithoutDataWrapper.JSONReader(c.region)
38264	if err != nil {
38265		return nil, err
38266	}
38267	reqHeaders.Set("Content-Type", "application/json")
38268	c.urlParams_.Set("alt", alt)
38269	c.urlParams_.Set("prettyPrint", "false")
38270	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/regions/{regionId}")
38271	urls += "?" + c.urlParams_.Encode()
38272	req, err := http.NewRequest("PATCH", urls, body)
38273	if err != nil {
38274		return nil, err
38275	}
38276	req.Header = reqHeaders
38277	googleapi.Expand(req.URL, map[string]string{
38278		"merchantId": strconv.FormatInt(c.merchantId, 10),
38279		"regionId":   c.regionId,
38280	})
38281	return gensupport.SendRequest(c.ctx_, c.s.client, req)
38282}
38283
38284// Do executes the "content.regions.patch" call.
38285// Exactly one of *Region or error will be non-nil. Any non-2xx status
38286// code is an error. Response headers are in either
38287// *Region.ServerResponse.Header or (if a response was returned at all)
38288// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
38289// check whether the returned error was because http.StatusNotModified
38290// was returned.
38291func (c *RegionsPatchCall) Do(opts ...googleapi.CallOption) (*Region, error) {
38292	gensupport.SetOptions(c.urlParams_, opts...)
38293	res, err := c.doRequest("json")
38294	if res != nil && res.StatusCode == http.StatusNotModified {
38295		if res.Body != nil {
38296			res.Body.Close()
38297		}
38298		return nil, &googleapi.Error{
38299			Code:   res.StatusCode,
38300			Header: res.Header,
38301		}
38302	}
38303	if err != nil {
38304		return nil, err
38305	}
38306	defer googleapi.CloseBody(res)
38307	if err := googleapi.CheckResponse(res); err != nil {
38308		return nil, err
38309	}
38310	ret := &Region{
38311		ServerResponse: googleapi.ServerResponse{
38312			Header:         res.Header,
38313			HTTPStatusCode: res.StatusCode,
38314		},
38315	}
38316	target := &ret
38317	if err := gensupport.DecodeResponse(target, res); err != nil {
38318		return nil, err
38319	}
38320	return ret, nil
38321	// {
38322	//   "description": "Updates a region definition in your Merchant Center account.",
38323	//   "flatPath": "{merchantId}/regions/{regionId}",
38324	//   "httpMethod": "PATCH",
38325	//   "id": "content.regions.patch",
38326	//   "parameterOrder": [
38327	//     "merchantId",
38328	//     "regionId"
38329	//   ],
38330	//   "parameters": {
38331	//     "merchantId": {
38332	//       "description": "Required. The id of the merchant for which to update region definition.",
38333	//       "format": "int64",
38334	//       "location": "path",
38335	//       "required": true,
38336	//       "type": "string"
38337	//     },
38338	//     "regionId": {
38339	//       "description": "Required. The id of the region to update.",
38340	//       "location": "path",
38341	//       "required": true,
38342	//       "type": "string"
38343	//     },
38344	//     "updateMask": {
38345	//       "description": "Optional. The comma-separated field mask indicating the fields to update. Example: `\"displayName,postalCodeArea.regionCode\"`.",
38346	//       "format": "google-fieldmask",
38347	//       "location": "query",
38348	//       "type": "string"
38349	//     }
38350	//   },
38351	//   "path": "{merchantId}/regions/{regionId}",
38352	//   "request": {
38353	//     "$ref": "Region"
38354	//   },
38355	//   "response": {
38356	//     "$ref": "Region"
38357	//   },
38358	//   "scopes": [
38359	//     "https://www.googleapis.com/auth/content"
38360	//   ]
38361	// }
38362
38363}
38364
38365// method id "content.reports.search":
38366
38367type ReportsSearchCall struct {
38368	s             *APIService
38369	merchantId    int64
38370	searchrequest *SearchRequest
38371	urlParams_    gensupport.URLParams
38372	ctx_          context.Context
38373	header_       http.Header
38374}
38375
38376// Search: Retrieves merchant performance mertrics matching the search
38377// query and optionally segmented by selected dimensions.
38378//
38379// - merchantId: Id of the merchant making the call. Must be a
38380//   standalone account or an MCA subaccount.
38381func (r *ReportsService) Search(merchantId int64, searchrequest *SearchRequest) *ReportsSearchCall {
38382	c := &ReportsSearchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
38383	c.merchantId = merchantId
38384	c.searchrequest = searchrequest
38385	return c
38386}
38387
38388// Fields allows partial responses to be retrieved. See
38389// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
38390// for more information.
38391func (c *ReportsSearchCall) Fields(s ...googleapi.Field) *ReportsSearchCall {
38392	c.urlParams_.Set("fields", googleapi.CombineFields(s))
38393	return c
38394}
38395
38396// Context sets the context to be used in this call's Do method. Any
38397// pending HTTP request will be aborted if the provided context is
38398// canceled.
38399func (c *ReportsSearchCall) Context(ctx context.Context) *ReportsSearchCall {
38400	c.ctx_ = ctx
38401	return c
38402}
38403
38404// Header returns an http.Header that can be modified by the caller to
38405// add HTTP headers to the request.
38406func (c *ReportsSearchCall) Header() http.Header {
38407	if c.header_ == nil {
38408		c.header_ = make(http.Header)
38409	}
38410	return c.header_
38411}
38412
38413func (c *ReportsSearchCall) doRequest(alt string) (*http.Response, error) {
38414	reqHeaders := make(http.Header)
38415	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
38416	for k, v := range c.header_ {
38417		reqHeaders[k] = v
38418	}
38419	reqHeaders.Set("User-Agent", c.s.userAgent())
38420	var body io.Reader = nil
38421	body, err := googleapi.WithoutDataWrapper.JSONReader(c.searchrequest)
38422	if err != nil {
38423		return nil, err
38424	}
38425	reqHeaders.Set("Content-Type", "application/json")
38426	c.urlParams_.Set("alt", alt)
38427	c.urlParams_.Set("prettyPrint", "false")
38428	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/reports/search")
38429	urls += "?" + c.urlParams_.Encode()
38430	req, err := http.NewRequest("POST", urls, body)
38431	if err != nil {
38432		return nil, err
38433	}
38434	req.Header = reqHeaders
38435	googleapi.Expand(req.URL, map[string]string{
38436		"merchantId": strconv.FormatInt(c.merchantId, 10),
38437	})
38438	return gensupport.SendRequest(c.ctx_, c.s.client, req)
38439}
38440
38441// Do executes the "content.reports.search" call.
38442// Exactly one of *SearchResponse or error will be non-nil. Any non-2xx
38443// status code is an error. Response headers are in either
38444// *SearchResponse.ServerResponse.Header or (if a response was returned
38445// at all) in error.(*googleapi.Error).Header. Use
38446// googleapi.IsNotModified to check whether the returned error was
38447// because http.StatusNotModified was returned.
38448func (c *ReportsSearchCall) Do(opts ...googleapi.CallOption) (*SearchResponse, error) {
38449	gensupport.SetOptions(c.urlParams_, opts...)
38450	res, err := c.doRequest("json")
38451	if res != nil && res.StatusCode == http.StatusNotModified {
38452		if res.Body != nil {
38453			res.Body.Close()
38454		}
38455		return nil, &googleapi.Error{
38456			Code:   res.StatusCode,
38457			Header: res.Header,
38458		}
38459	}
38460	if err != nil {
38461		return nil, err
38462	}
38463	defer googleapi.CloseBody(res)
38464	if err := googleapi.CheckResponse(res); err != nil {
38465		return nil, err
38466	}
38467	ret := &SearchResponse{
38468		ServerResponse: googleapi.ServerResponse{
38469			Header:         res.Header,
38470			HTTPStatusCode: res.StatusCode,
38471		},
38472	}
38473	target := &ret
38474	if err := gensupport.DecodeResponse(target, res); err != nil {
38475		return nil, err
38476	}
38477	return ret, nil
38478	// {
38479	//   "description": "Retrieves merchant performance mertrics matching the search query and optionally segmented by selected dimensions.",
38480	//   "flatPath": "{merchantId}/reports/search",
38481	//   "httpMethod": "POST",
38482	//   "id": "content.reports.search",
38483	//   "parameterOrder": [
38484	//     "merchantId"
38485	//   ],
38486	//   "parameters": {
38487	//     "merchantId": {
38488	//       "description": "Required. Id of the merchant making the call. Must be a standalone account or an MCA subaccount.",
38489	//       "format": "int64",
38490	//       "location": "path",
38491	//       "required": true,
38492	//       "type": "string"
38493	//     }
38494	//   },
38495	//   "path": "{merchantId}/reports/search",
38496	//   "request": {
38497	//     "$ref": "SearchRequest"
38498	//   },
38499	//   "response": {
38500	//     "$ref": "SearchResponse"
38501	//   },
38502	//   "scopes": [
38503	//     "https://www.googleapis.com/auth/content"
38504	//   ]
38505	// }
38506
38507}
38508
38509// Pages invokes f for each page of results.
38510// A non-nil error returned from f will halt the iteration.
38511// The provided context supersedes any context provided to the Context method.
38512func (c *ReportsSearchCall) Pages(ctx context.Context, f func(*SearchResponse) error) error {
38513	c.ctx_ = ctx
38514	defer func(pt string) { c.searchrequest.PageToken = pt }(c.searchrequest.PageToken) // reset paging to original point
38515	for {
38516		x, err := c.Do()
38517		if err != nil {
38518			return err
38519		}
38520		if err := f(x); err != nil {
38521			return err
38522		}
38523		if x.NextPageToken == "" {
38524			return nil
38525		}
38526		c.searchrequest.PageToken = x.NextPageToken
38527	}
38528}
38529
38530// method id "content.repricingrules.create":
38531
38532type RepricingrulesCreateCall struct {
38533	s             *APIService
38534	merchantId    int64
38535	repricingrule *RepricingRule
38536	urlParams_    gensupport.URLParams
38537	ctx_          context.Context
38538	header_       http.Header
38539}
38540
38541// Create: Creates a repricing rule for your Merchant Center account.
38542//
38543// - merchantId: The id of the merchant who owns the repricing rule.
38544func (r *RepricingrulesService) Create(merchantId int64, repricingrule *RepricingRule) *RepricingrulesCreateCall {
38545	c := &RepricingrulesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
38546	c.merchantId = merchantId
38547	c.repricingrule = repricingrule
38548	return c
38549}
38550
38551// RuleId sets the optional parameter "ruleId": Required. The id of the
38552// rule to create.
38553func (c *RepricingrulesCreateCall) RuleId(ruleId string) *RepricingrulesCreateCall {
38554	c.urlParams_.Set("ruleId", ruleId)
38555	return c
38556}
38557
38558// Fields allows partial responses to be retrieved. See
38559// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
38560// for more information.
38561func (c *RepricingrulesCreateCall) Fields(s ...googleapi.Field) *RepricingrulesCreateCall {
38562	c.urlParams_.Set("fields", googleapi.CombineFields(s))
38563	return c
38564}
38565
38566// Context sets the context to be used in this call's Do method. Any
38567// pending HTTP request will be aborted if the provided context is
38568// canceled.
38569func (c *RepricingrulesCreateCall) Context(ctx context.Context) *RepricingrulesCreateCall {
38570	c.ctx_ = ctx
38571	return c
38572}
38573
38574// Header returns an http.Header that can be modified by the caller to
38575// add HTTP headers to the request.
38576func (c *RepricingrulesCreateCall) Header() http.Header {
38577	if c.header_ == nil {
38578		c.header_ = make(http.Header)
38579	}
38580	return c.header_
38581}
38582
38583func (c *RepricingrulesCreateCall) doRequest(alt string) (*http.Response, error) {
38584	reqHeaders := make(http.Header)
38585	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
38586	for k, v := range c.header_ {
38587		reqHeaders[k] = v
38588	}
38589	reqHeaders.Set("User-Agent", c.s.userAgent())
38590	var body io.Reader = nil
38591	body, err := googleapi.WithoutDataWrapper.JSONReader(c.repricingrule)
38592	if err != nil {
38593		return nil, err
38594	}
38595	reqHeaders.Set("Content-Type", "application/json")
38596	c.urlParams_.Set("alt", alt)
38597	c.urlParams_.Set("prettyPrint", "false")
38598	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/repricingrules")
38599	urls += "?" + c.urlParams_.Encode()
38600	req, err := http.NewRequest("POST", urls, body)
38601	if err != nil {
38602		return nil, err
38603	}
38604	req.Header = reqHeaders
38605	googleapi.Expand(req.URL, map[string]string{
38606		"merchantId": strconv.FormatInt(c.merchantId, 10),
38607	})
38608	return gensupport.SendRequest(c.ctx_, c.s.client, req)
38609}
38610
38611// Do executes the "content.repricingrules.create" call.
38612// Exactly one of *RepricingRule or error will be non-nil. Any non-2xx
38613// status code is an error. Response headers are in either
38614// *RepricingRule.ServerResponse.Header or (if a response was returned
38615// at all) in error.(*googleapi.Error).Header. Use
38616// googleapi.IsNotModified to check whether the returned error was
38617// because http.StatusNotModified was returned.
38618func (c *RepricingrulesCreateCall) Do(opts ...googleapi.CallOption) (*RepricingRule, error) {
38619	gensupport.SetOptions(c.urlParams_, opts...)
38620	res, err := c.doRequest("json")
38621	if res != nil && res.StatusCode == http.StatusNotModified {
38622		if res.Body != nil {
38623			res.Body.Close()
38624		}
38625		return nil, &googleapi.Error{
38626			Code:   res.StatusCode,
38627			Header: res.Header,
38628		}
38629	}
38630	if err != nil {
38631		return nil, err
38632	}
38633	defer googleapi.CloseBody(res)
38634	if err := googleapi.CheckResponse(res); err != nil {
38635		return nil, err
38636	}
38637	ret := &RepricingRule{
38638		ServerResponse: googleapi.ServerResponse{
38639			Header:         res.Header,
38640			HTTPStatusCode: res.StatusCode,
38641		},
38642	}
38643	target := &ret
38644	if err := gensupport.DecodeResponse(target, res); err != nil {
38645		return nil, err
38646	}
38647	return ret, nil
38648	// {
38649	//   "description": "Creates a repricing rule for your Merchant Center account.",
38650	//   "flatPath": "{merchantId}/repricingrules",
38651	//   "httpMethod": "POST",
38652	//   "id": "content.repricingrules.create",
38653	//   "parameterOrder": [
38654	//     "merchantId"
38655	//   ],
38656	//   "parameters": {
38657	//     "merchantId": {
38658	//       "description": "Required. The id of the merchant who owns the repricing rule.",
38659	//       "format": "int64",
38660	//       "location": "path",
38661	//       "required": true,
38662	//       "type": "string"
38663	//     },
38664	//     "ruleId": {
38665	//       "description": "Required. The id of the rule to create.",
38666	//       "location": "query",
38667	//       "type": "string"
38668	//     }
38669	//   },
38670	//   "path": "{merchantId}/repricingrules",
38671	//   "request": {
38672	//     "$ref": "RepricingRule"
38673	//   },
38674	//   "response": {
38675	//     "$ref": "RepricingRule"
38676	//   },
38677	//   "scopes": [
38678	//     "https://www.googleapis.com/auth/content"
38679	//   ]
38680	// }
38681
38682}
38683
38684// method id "content.repricingrules.delete":
38685
38686type RepricingrulesDeleteCall struct {
38687	s          *APIService
38688	merchantId int64
38689	ruleId     string
38690	urlParams_ gensupport.URLParams
38691	ctx_       context.Context
38692	header_    http.Header
38693}
38694
38695// Delete: Deletes a repricing rule in your Merchant Center account.
38696//
38697// - merchantId: The id of the merchant who owns the repricing rule.
38698// - ruleId: The id of the rule to Delete.
38699func (r *RepricingrulesService) Delete(merchantId int64, ruleId string) *RepricingrulesDeleteCall {
38700	c := &RepricingrulesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
38701	c.merchantId = merchantId
38702	c.ruleId = ruleId
38703	return c
38704}
38705
38706// Fields allows partial responses to be retrieved. See
38707// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
38708// for more information.
38709func (c *RepricingrulesDeleteCall) Fields(s ...googleapi.Field) *RepricingrulesDeleteCall {
38710	c.urlParams_.Set("fields", googleapi.CombineFields(s))
38711	return c
38712}
38713
38714// Context sets the context to be used in this call's Do method. Any
38715// pending HTTP request will be aborted if the provided context is
38716// canceled.
38717func (c *RepricingrulesDeleteCall) Context(ctx context.Context) *RepricingrulesDeleteCall {
38718	c.ctx_ = ctx
38719	return c
38720}
38721
38722// Header returns an http.Header that can be modified by the caller to
38723// add HTTP headers to the request.
38724func (c *RepricingrulesDeleteCall) Header() http.Header {
38725	if c.header_ == nil {
38726		c.header_ = make(http.Header)
38727	}
38728	return c.header_
38729}
38730
38731func (c *RepricingrulesDeleteCall) doRequest(alt string) (*http.Response, error) {
38732	reqHeaders := make(http.Header)
38733	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
38734	for k, v := range c.header_ {
38735		reqHeaders[k] = v
38736	}
38737	reqHeaders.Set("User-Agent", c.s.userAgent())
38738	var body io.Reader = nil
38739	c.urlParams_.Set("alt", alt)
38740	c.urlParams_.Set("prettyPrint", "false")
38741	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/repricingrules/{ruleId}")
38742	urls += "?" + c.urlParams_.Encode()
38743	req, err := http.NewRequest("DELETE", urls, body)
38744	if err != nil {
38745		return nil, err
38746	}
38747	req.Header = reqHeaders
38748	googleapi.Expand(req.URL, map[string]string{
38749		"merchantId": strconv.FormatInt(c.merchantId, 10),
38750		"ruleId":     c.ruleId,
38751	})
38752	return gensupport.SendRequest(c.ctx_, c.s.client, req)
38753}
38754
38755// Do executes the "content.repricingrules.delete" call.
38756func (c *RepricingrulesDeleteCall) Do(opts ...googleapi.CallOption) error {
38757	gensupport.SetOptions(c.urlParams_, opts...)
38758	res, err := c.doRequest("json")
38759	if err != nil {
38760		return err
38761	}
38762	defer googleapi.CloseBody(res)
38763	if err := googleapi.CheckResponse(res); err != nil {
38764		return err
38765	}
38766	return nil
38767	// {
38768	//   "description": "Deletes a repricing rule in your Merchant Center account.",
38769	//   "flatPath": "{merchantId}/repricingrules/{ruleId}",
38770	//   "httpMethod": "DELETE",
38771	//   "id": "content.repricingrules.delete",
38772	//   "parameterOrder": [
38773	//     "merchantId",
38774	//     "ruleId"
38775	//   ],
38776	//   "parameters": {
38777	//     "merchantId": {
38778	//       "description": "Required. The id of the merchant who owns the repricing rule.",
38779	//       "format": "int64",
38780	//       "location": "path",
38781	//       "required": true,
38782	//       "type": "string"
38783	//     },
38784	//     "ruleId": {
38785	//       "description": "Required. The id of the rule to Delete.",
38786	//       "location": "path",
38787	//       "required": true,
38788	//       "type": "string"
38789	//     }
38790	//   },
38791	//   "path": "{merchantId}/repricingrules/{ruleId}",
38792	//   "scopes": [
38793	//     "https://www.googleapis.com/auth/content"
38794	//   ]
38795	// }
38796
38797}
38798
38799// method id "content.repricingrules.get":
38800
38801type RepricingrulesGetCall struct {
38802	s            *APIService
38803	merchantId   int64
38804	ruleId       string
38805	urlParams_   gensupport.URLParams
38806	ifNoneMatch_ string
38807	ctx_         context.Context
38808	header_      http.Header
38809}
38810
38811// Get: Retrieves a repricing rule from your Merchant Center account.
38812//
38813// - merchantId: The id of the merchant who owns the repricing rule.
38814// - ruleId: The id of the rule to retrieve.
38815func (r *RepricingrulesService) Get(merchantId int64, ruleId string) *RepricingrulesGetCall {
38816	c := &RepricingrulesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
38817	c.merchantId = merchantId
38818	c.ruleId = ruleId
38819	return c
38820}
38821
38822// Fields allows partial responses to be retrieved. See
38823// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
38824// for more information.
38825func (c *RepricingrulesGetCall) Fields(s ...googleapi.Field) *RepricingrulesGetCall {
38826	c.urlParams_.Set("fields", googleapi.CombineFields(s))
38827	return c
38828}
38829
38830// IfNoneMatch sets the optional parameter which makes the operation
38831// fail if the object's ETag matches the given value. This is useful for
38832// getting updates only after the object has changed since the last
38833// request. Use googleapi.IsNotModified to check whether the response
38834// error from Do is the result of In-None-Match.
38835func (c *RepricingrulesGetCall) IfNoneMatch(entityTag string) *RepricingrulesGetCall {
38836	c.ifNoneMatch_ = entityTag
38837	return c
38838}
38839
38840// Context sets the context to be used in this call's Do method. Any
38841// pending HTTP request will be aborted if the provided context is
38842// canceled.
38843func (c *RepricingrulesGetCall) Context(ctx context.Context) *RepricingrulesGetCall {
38844	c.ctx_ = ctx
38845	return c
38846}
38847
38848// Header returns an http.Header that can be modified by the caller to
38849// add HTTP headers to the request.
38850func (c *RepricingrulesGetCall) Header() http.Header {
38851	if c.header_ == nil {
38852		c.header_ = make(http.Header)
38853	}
38854	return c.header_
38855}
38856
38857func (c *RepricingrulesGetCall) doRequest(alt string) (*http.Response, error) {
38858	reqHeaders := make(http.Header)
38859	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
38860	for k, v := range c.header_ {
38861		reqHeaders[k] = v
38862	}
38863	reqHeaders.Set("User-Agent", c.s.userAgent())
38864	if c.ifNoneMatch_ != "" {
38865		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
38866	}
38867	var body io.Reader = nil
38868	c.urlParams_.Set("alt", alt)
38869	c.urlParams_.Set("prettyPrint", "false")
38870	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/repricingrules/{ruleId}")
38871	urls += "?" + c.urlParams_.Encode()
38872	req, err := http.NewRequest("GET", urls, body)
38873	if err != nil {
38874		return nil, err
38875	}
38876	req.Header = reqHeaders
38877	googleapi.Expand(req.URL, map[string]string{
38878		"merchantId": strconv.FormatInt(c.merchantId, 10),
38879		"ruleId":     c.ruleId,
38880	})
38881	return gensupport.SendRequest(c.ctx_, c.s.client, req)
38882}
38883
38884// Do executes the "content.repricingrules.get" call.
38885// Exactly one of *RepricingRule or error will be non-nil. Any non-2xx
38886// status code is an error. Response headers are in either
38887// *RepricingRule.ServerResponse.Header or (if a response was returned
38888// at all) in error.(*googleapi.Error).Header. Use
38889// googleapi.IsNotModified to check whether the returned error was
38890// because http.StatusNotModified was returned.
38891func (c *RepricingrulesGetCall) Do(opts ...googleapi.CallOption) (*RepricingRule, error) {
38892	gensupport.SetOptions(c.urlParams_, opts...)
38893	res, err := c.doRequest("json")
38894	if res != nil && res.StatusCode == http.StatusNotModified {
38895		if res.Body != nil {
38896			res.Body.Close()
38897		}
38898		return nil, &googleapi.Error{
38899			Code:   res.StatusCode,
38900			Header: res.Header,
38901		}
38902	}
38903	if err != nil {
38904		return nil, err
38905	}
38906	defer googleapi.CloseBody(res)
38907	if err := googleapi.CheckResponse(res); err != nil {
38908		return nil, err
38909	}
38910	ret := &RepricingRule{
38911		ServerResponse: googleapi.ServerResponse{
38912			Header:         res.Header,
38913			HTTPStatusCode: res.StatusCode,
38914		},
38915	}
38916	target := &ret
38917	if err := gensupport.DecodeResponse(target, res); err != nil {
38918		return nil, err
38919	}
38920	return ret, nil
38921	// {
38922	//   "description": "Retrieves a repricing rule from your Merchant Center account.",
38923	//   "flatPath": "{merchantId}/repricingrules/{ruleId}",
38924	//   "httpMethod": "GET",
38925	//   "id": "content.repricingrules.get",
38926	//   "parameterOrder": [
38927	//     "merchantId",
38928	//     "ruleId"
38929	//   ],
38930	//   "parameters": {
38931	//     "merchantId": {
38932	//       "description": "Required. The id of the merchant who owns the repricing rule.",
38933	//       "format": "int64",
38934	//       "location": "path",
38935	//       "required": true,
38936	//       "type": "string"
38937	//     },
38938	//     "ruleId": {
38939	//       "description": "Required. The id of the rule to retrieve.",
38940	//       "location": "path",
38941	//       "required": true,
38942	//       "type": "string"
38943	//     }
38944	//   },
38945	//   "path": "{merchantId}/repricingrules/{ruleId}",
38946	//   "response": {
38947	//     "$ref": "RepricingRule"
38948	//   },
38949	//   "scopes": [
38950	//     "https://www.googleapis.com/auth/content"
38951	//   ]
38952	// }
38953
38954}
38955
38956// method id "content.repricingrules.list":
38957
38958type RepricingrulesListCall struct {
38959	s            *APIService
38960	merchantId   int64
38961	urlParams_   gensupport.URLParams
38962	ifNoneMatch_ string
38963	ctx_         context.Context
38964	header_      http.Header
38965}
38966
38967// List: Lists the repricing rules in your Merchant Center account.
38968//
38969// - merchantId: The id of the merchant who owns the repricing rule.
38970func (r *RepricingrulesService) List(merchantId int64) *RepricingrulesListCall {
38971	c := &RepricingrulesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
38972	c.merchantId = merchantId
38973	return c
38974}
38975
38976// CountryCode sets the optional parameter "countryCode": CLDR country
38977// code
38978// (http://www.unicode.org/repos/cldr/tags/latest/common/main/en.xml)
38979// (e.g. "US"), used as a filter on repricing rules.
38980func (c *RepricingrulesListCall) CountryCode(countryCode string) *RepricingrulesListCall {
38981	c.urlParams_.Set("countryCode", countryCode)
38982	return c
38983}
38984
38985// LanguageCode sets the optional parameter "languageCode": The
38986// two-letter ISO 639-1 language code associated with the repricing
38987// rule, used as a filter.
38988func (c *RepricingrulesListCall) LanguageCode(languageCode string) *RepricingrulesListCall {
38989	c.urlParams_.Set("languageCode", languageCode)
38990	return c
38991}
38992
38993// PageSize sets the optional parameter "pageSize": The maximum number
38994// of repricing rules to return. The service may return fewer than this
38995// value. If unspecified, at most 50 rules will be returned. The maximum
38996// value is 1000; values above 1000 will be coerced to 1000.
38997func (c *RepricingrulesListCall) PageSize(pageSize int64) *RepricingrulesListCall {
38998	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
38999	return c
39000}
39001
39002// PageToken sets the optional parameter "pageToken": A page token,
39003// received from a previous `ListRepricingRules` call. Provide this to
39004// retrieve the subsequent page. When paginating, all other parameters
39005// provided to `ListRepricingRules` must match the call that provided
39006// the page token.
39007func (c *RepricingrulesListCall) PageToken(pageToken string) *RepricingrulesListCall {
39008	c.urlParams_.Set("pageToken", pageToken)
39009	return c
39010}
39011
39012// Fields allows partial responses to be retrieved. See
39013// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
39014// for more information.
39015func (c *RepricingrulesListCall) Fields(s ...googleapi.Field) *RepricingrulesListCall {
39016	c.urlParams_.Set("fields", googleapi.CombineFields(s))
39017	return c
39018}
39019
39020// IfNoneMatch sets the optional parameter which makes the operation
39021// fail if the object's ETag matches the given value. This is useful for
39022// getting updates only after the object has changed since the last
39023// request. Use googleapi.IsNotModified to check whether the response
39024// error from Do is the result of In-None-Match.
39025func (c *RepricingrulesListCall) IfNoneMatch(entityTag string) *RepricingrulesListCall {
39026	c.ifNoneMatch_ = entityTag
39027	return c
39028}
39029
39030// Context sets the context to be used in this call's Do method. Any
39031// pending HTTP request will be aborted if the provided context is
39032// canceled.
39033func (c *RepricingrulesListCall) Context(ctx context.Context) *RepricingrulesListCall {
39034	c.ctx_ = ctx
39035	return c
39036}
39037
39038// Header returns an http.Header that can be modified by the caller to
39039// add HTTP headers to the request.
39040func (c *RepricingrulesListCall) Header() http.Header {
39041	if c.header_ == nil {
39042		c.header_ = make(http.Header)
39043	}
39044	return c.header_
39045}
39046
39047func (c *RepricingrulesListCall) doRequest(alt string) (*http.Response, error) {
39048	reqHeaders := make(http.Header)
39049	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
39050	for k, v := range c.header_ {
39051		reqHeaders[k] = v
39052	}
39053	reqHeaders.Set("User-Agent", c.s.userAgent())
39054	if c.ifNoneMatch_ != "" {
39055		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
39056	}
39057	var body io.Reader = nil
39058	c.urlParams_.Set("alt", alt)
39059	c.urlParams_.Set("prettyPrint", "false")
39060	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/repricingrules")
39061	urls += "?" + c.urlParams_.Encode()
39062	req, err := http.NewRequest("GET", urls, body)
39063	if err != nil {
39064		return nil, err
39065	}
39066	req.Header = reqHeaders
39067	googleapi.Expand(req.URL, map[string]string{
39068		"merchantId": strconv.FormatInt(c.merchantId, 10),
39069	})
39070	return gensupport.SendRequest(c.ctx_, c.s.client, req)
39071}
39072
39073// Do executes the "content.repricingrules.list" call.
39074// Exactly one of *ListRepricingRulesResponse or error will be non-nil.
39075// Any non-2xx status code is an error. Response headers are in either
39076// *ListRepricingRulesResponse.ServerResponse.Header or (if a response
39077// was returned at all) in error.(*googleapi.Error).Header. Use
39078// googleapi.IsNotModified to check whether the returned error was
39079// because http.StatusNotModified was returned.
39080func (c *RepricingrulesListCall) Do(opts ...googleapi.CallOption) (*ListRepricingRulesResponse, error) {
39081	gensupport.SetOptions(c.urlParams_, opts...)
39082	res, err := c.doRequest("json")
39083	if res != nil && res.StatusCode == http.StatusNotModified {
39084		if res.Body != nil {
39085			res.Body.Close()
39086		}
39087		return nil, &googleapi.Error{
39088			Code:   res.StatusCode,
39089			Header: res.Header,
39090		}
39091	}
39092	if err != nil {
39093		return nil, err
39094	}
39095	defer googleapi.CloseBody(res)
39096	if err := googleapi.CheckResponse(res); err != nil {
39097		return nil, err
39098	}
39099	ret := &ListRepricingRulesResponse{
39100		ServerResponse: googleapi.ServerResponse{
39101			Header:         res.Header,
39102			HTTPStatusCode: res.StatusCode,
39103		},
39104	}
39105	target := &ret
39106	if err := gensupport.DecodeResponse(target, res); err != nil {
39107		return nil, err
39108	}
39109	return ret, nil
39110	// {
39111	//   "description": "Lists the repricing rules in your Merchant Center account.",
39112	//   "flatPath": "{merchantId}/repricingrules",
39113	//   "httpMethod": "GET",
39114	//   "id": "content.repricingrules.list",
39115	//   "parameterOrder": [
39116	//     "merchantId"
39117	//   ],
39118	//   "parameters": {
39119	//     "countryCode": {
39120	//       "description": "[CLDR country code](http://www.unicode.org/repos/cldr/tags/latest/common/main/en.xml) (e.g. \"US\"), used as a filter on repricing rules.",
39121	//       "location": "query",
39122	//       "type": "string"
39123	//     },
39124	//     "languageCode": {
39125	//       "description": "The two-letter ISO 639-1 language code associated with the repricing rule, used as a filter.",
39126	//       "location": "query",
39127	//       "type": "string"
39128	//     },
39129	//     "merchantId": {
39130	//       "description": "Required. The id of the merchant who owns the repricing rule.",
39131	//       "format": "int64",
39132	//       "location": "path",
39133	//       "required": true,
39134	//       "type": "string"
39135	//     },
39136	//     "pageSize": {
39137	//       "description": "The maximum number of repricing rules to return. The service may return fewer than this value. If unspecified, at most 50 rules will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.",
39138	//       "format": "int32",
39139	//       "location": "query",
39140	//       "type": "integer"
39141	//     },
39142	//     "pageToken": {
39143	//       "description": "A page token, received from a previous `ListRepricingRules` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListRepricingRules` must match the call that provided the page token.",
39144	//       "location": "query",
39145	//       "type": "string"
39146	//     }
39147	//   },
39148	//   "path": "{merchantId}/repricingrules",
39149	//   "response": {
39150	//     "$ref": "ListRepricingRulesResponse"
39151	//   },
39152	//   "scopes": [
39153	//     "https://www.googleapis.com/auth/content"
39154	//   ]
39155	// }
39156
39157}
39158
39159// Pages invokes f for each page of results.
39160// A non-nil error returned from f will halt the iteration.
39161// The provided context supersedes any context provided to the Context method.
39162func (c *RepricingrulesListCall) Pages(ctx context.Context, f func(*ListRepricingRulesResponse) error) error {
39163	c.ctx_ = ctx
39164	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
39165	for {
39166		x, err := c.Do()
39167		if err != nil {
39168			return err
39169		}
39170		if err := f(x); err != nil {
39171			return err
39172		}
39173		if x.NextPageToken == "" {
39174			return nil
39175		}
39176		c.PageToken(x.NextPageToken)
39177	}
39178}
39179
39180// method id "content.repricingrules.patch":
39181
39182type RepricingrulesPatchCall struct {
39183	s             *APIService
39184	merchantId    int64
39185	ruleId        string
39186	repricingrule *RepricingRule
39187	urlParams_    gensupport.URLParams
39188	ctx_          context.Context
39189	header_       http.Header
39190}
39191
39192// Patch: Updates a repricing rule in your Merchant Center account. All
39193// mutable fields will be overwritten in each update request. In each
39194// update, you must provide all required mutable fields, or an error
39195// will be thrown. If you do not provide an optional field in the update
39196// request, if that field currently exists, it will be deleted from the
39197// rule.
39198//
39199// - merchantId: The id of the merchant who owns the repricing rule.
39200// - ruleId: The id of the rule to update.
39201func (r *RepricingrulesService) Patch(merchantId int64, ruleId string, repricingrule *RepricingRule) *RepricingrulesPatchCall {
39202	c := &RepricingrulesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
39203	c.merchantId = merchantId
39204	c.ruleId = ruleId
39205	c.repricingrule = repricingrule
39206	return c
39207}
39208
39209// Fields allows partial responses to be retrieved. See
39210// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
39211// for more information.
39212func (c *RepricingrulesPatchCall) Fields(s ...googleapi.Field) *RepricingrulesPatchCall {
39213	c.urlParams_.Set("fields", googleapi.CombineFields(s))
39214	return c
39215}
39216
39217// Context sets the context to be used in this call's Do method. Any
39218// pending HTTP request will be aborted if the provided context is
39219// canceled.
39220func (c *RepricingrulesPatchCall) Context(ctx context.Context) *RepricingrulesPatchCall {
39221	c.ctx_ = ctx
39222	return c
39223}
39224
39225// Header returns an http.Header that can be modified by the caller to
39226// add HTTP headers to the request.
39227func (c *RepricingrulesPatchCall) Header() http.Header {
39228	if c.header_ == nil {
39229		c.header_ = make(http.Header)
39230	}
39231	return c.header_
39232}
39233
39234func (c *RepricingrulesPatchCall) doRequest(alt string) (*http.Response, error) {
39235	reqHeaders := make(http.Header)
39236	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
39237	for k, v := range c.header_ {
39238		reqHeaders[k] = v
39239	}
39240	reqHeaders.Set("User-Agent", c.s.userAgent())
39241	var body io.Reader = nil
39242	body, err := googleapi.WithoutDataWrapper.JSONReader(c.repricingrule)
39243	if err != nil {
39244		return nil, err
39245	}
39246	reqHeaders.Set("Content-Type", "application/json")
39247	c.urlParams_.Set("alt", alt)
39248	c.urlParams_.Set("prettyPrint", "false")
39249	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/repricingrules/{ruleId}")
39250	urls += "?" + c.urlParams_.Encode()
39251	req, err := http.NewRequest("PATCH", urls, body)
39252	if err != nil {
39253		return nil, err
39254	}
39255	req.Header = reqHeaders
39256	googleapi.Expand(req.URL, map[string]string{
39257		"merchantId": strconv.FormatInt(c.merchantId, 10),
39258		"ruleId":     c.ruleId,
39259	})
39260	return gensupport.SendRequest(c.ctx_, c.s.client, req)
39261}
39262
39263// Do executes the "content.repricingrules.patch" call.
39264// Exactly one of *RepricingRule or error will be non-nil. Any non-2xx
39265// status code is an error. Response headers are in either
39266// *RepricingRule.ServerResponse.Header or (if a response was returned
39267// at all) in error.(*googleapi.Error).Header. Use
39268// googleapi.IsNotModified to check whether the returned error was
39269// because http.StatusNotModified was returned.
39270func (c *RepricingrulesPatchCall) Do(opts ...googleapi.CallOption) (*RepricingRule, error) {
39271	gensupport.SetOptions(c.urlParams_, opts...)
39272	res, err := c.doRequest("json")
39273	if res != nil && res.StatusCode == http.StatusNotModified {
39274		if res.Body != nil {
39275			res.Body.Close()
39276		}
39277		return nil, &googleapi.Error{
39278			Code:   res.StatusCode,
39279			Header: res.Header,
39280		}
39281	}
39282	if err != nil {
39283		return nil, err
39284	}
39285	defer googleapi.CloseBody(res)
39286	if err := googleapi.CheckResponse(res); err != nil {
39287		return nil, err
39288	}
39289	ret := &RepricingRule{
39290		ServerResponse: googleapi.ServerResponse{
39291			Header:         res.Header,
39292			HTTPStatusCode: res.StatusCode,
39293		},
39294	}
39295	target := &ret
39296	if err := gensupport.DecodeResponse(target, res); err != nil {
39297		return nil, err
39298	}
39299	return ret, nil
39300	// {
39301	//   "description": "Updates a repricing rule in your Merchant Center account. All mutable fields will be overwritten in each update request. In each update, you must provide all required mutable fields, or an error will be thrown. If you do not provide an optional field in the update request, if that field currently exists, it will be deleted from the rule.",
39302	//   "flatPath": "{merchantId}/repricingrules/{ruleId}",
39303	//   "httpMethod": "PATCH",
39304	//   "id": "content.repricingrules.patch",
39305	//   "parameterOrder": [
39306	//     "merchantId",
39307	//     "ruleId"
39308	//   ],
39309	//   "parameters": {
39310	//     "merchantId": {
39311	//       "description": "Required. The id of the merchant who owns the repricing rule.",
39312	//       "format": "int64",
39313	//       "location": "path",
39314	//       "required": true,
39315	//       "type": "string"
39316	//     },
39317	//     "ruleId": {
39318	//       "description": "Required. The id of the rule to update.",
39319	//       "location": "path",
39320	//       "required": true,
39321	//       "type": "string"
39322	//     }
39323	//   },
39324	//   "path": "{merchantId}/repricingrules/{ruleId}",
39325	//   "request": {
39326	//     "$ref": "RepricingRule"
39327	//   },
39328	//   "response": {
39329	//     "$ref": "RepricingRule"
39330	//   },
39331	//   "scopes": [
39332	//     "https://www.googleapis.com/auth/content"
39333	//   ]
39334	// }
39335
39336}
39337
39338// method id "content.repricingrules.repricingreports.list":
39339
39340type RepricingrulesRepricingreportsListCall struct {
39341	s            *APIService
39342	merchantId   int64
39343	ruleId       string
39344	urlParams_   gensupport.URLParams
39345	ifNoneMatch_ string
39346	ctx_         context.Context
39347	header_      http.Header
39348}
39349
39350// List: Lists the metrics report for a given Repricing rule.
39351//
39352// - merchantId: Id of the merchant who owns the Repricing rule.
39353// - ruleId: Id of the Repricing rule.
39354func (r *RepricingrulesRepricingreportsService) List(merchantId int64, ruleId string) *RepricingrulesRepricingreportsListCall {
39355	c := &RepricingrulesRepricingreportsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
39356	c.merchantId = merchantId
39357	c.ruleId = ruleId
39358	return c
39359}
39360
39361// EndDate sets the optional parameter "endDate": Gets Repricing reports
39362// on and before this date in the merchant's timezone. You can only
39363// retrieve data up to 7 days ago (default) or earlier. Format:
39364// YYYY-MM-DD.
39365func (c *RepricingrulesRepricingreportsListCall) EndDate(endDate string) *RepricingrulesRepricingreportsListCall {
39366	c.urlParams_.Set("endDate", endDate)
39367	return c
39368}
39369
39370// PageSize sets the optional parameter "pageSize": Maximum number of
39371// daily reports to return. Each report includes data from a single
39372// 24-hour period. The page size defaults to 50 and values above 1000
39373// are coerced to 1000. This service may return fewer days than this
39374// value, for example, if the time between your start and end date is
39375// less than page size.
39376func (c *RepricingrulesRepricingreportsListCall) PageSize(pageSize int64) *RepricingrulesRepricingreportsListCall {
39377	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
39378	return c
39379}
39380
39381// PageToken sets the optional parameter "pageToken": Token (if
39382// provided) to retrieve the subsequent page. All other parameters must
39383// match the original call that provided the page token.
39384func (c *RepricingrulesRepricingreportsListCall) PageToken(pageToken string) *RepricingrulesRepricingreportsListCall {
39385	c.urlParams_.Set("pageToken", pageToken)
39386	return c
39387}
39388
39389// StartDate sets the optional parameter "startDate": Gets Repricing
39390// reports on and after this date in the merchant's timezone, up to one
39391// year ago. Do not use a start date later than 7 days ago (default).
39392// Format: YYYY-MM-DD.
39393func (c *RepricingrulesRepricingreportsListCall) StartDate(startDate string) *RepricingrulesRepricingreportsListCall {
39394	c.urlParams_.Set("startDate", startDate)
39395	return c
39396}
39397
39398// Fields allows partial responses to be retrieved. See
39399// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
39400// for more information.
39401func (c *RepricingrulesRepricingreportsListCall) Fields(s ...googleapi.Field) *RepricingrulesRepricingreportsListCall {
39402	c.urlParams_.Set("fields", googleapi.CombineFields(s))
39403	return c
39404}
39405
39406// IfNoneMatch sets the optional parameter which makes the operation
39407// fail if the object's ETag matches the given value. This is useful for
39408// getting updates only after the object has changed since the last
39409// request. Use googleapi.IsNotModified to check whether the response
39410// error from Do is the result of In-None-Match.
39411func (c *RepricingrulesRepricingreportsListCall) IfNoneMatch(entityTag string) *RepricingrulesRepricingreportsListCall {
39412	c.ifNoneMatch_ = entityTag
39413	return c
39414}
39415
39416// Context sets the context to be used in this call's Do method. Any
39417// pending HTTP request will be aborted if the provided context is
39418// canceled.
39419func (c *RepricingrulesRepricingreportsListCall) Context(ctx context.Context) *RepricingrulesRepricingreportsListCall {
39420	c.ctx_ = ctx
39421	return c
39422}
39423
39424// Header returns an http.Header that can be modified by the caller to
39425// add HTTP headers to the request.
39426func (c *RepricingrulesRepricingreportsListCall) Header() http.Header {
39427	if c.header_ == nil {
39428		c.header_ = make(http.Header)
39429	}
39430	return c.header_
39431}
39432
39433func (c *RepricingrulesRepricingreportsListCall) doRequest(alt string) (*http.Response, error) {
39434	reqHeaders := make(http.Header)
39435	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
39436	for k, v := range c.header_ {
39437		reqHeaders[k] = v
39438	}
39439	reqHeaders.Set("User-Agent", c.s.userAgent())
39440	if c.ifNoneMatch_ != "" {
39441		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
39442	}
39443	var body io.Reader = nil
39444	c.urlParams_.Set("alt", alt)
39445	c.urlParams_.Set("prettyPrint", "false")
39446	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/repricingrules/{ruleId}/repricingreports")
39447	urls += "?" + c.urlParams_.Encode()
39448	req, err := http.NewRequest("GET", urls, body)
39449	if err != nil {
39450		return nil, err
39451	}
39452	req.Header = reqHeaders
39453	googleapi.Expand(req.URL, map[string]string{
39454		"merchantId": strconv.FormatInt(c.merchantId, 10),
39455		"ruleId":     c.ruleId,
39456	})
39457	return gensupport.SendRequest(c.ctx_, c.s.client, req)
39458}
39459
39460// Do executes the "content.repricingrules.repricingreports.list" call.
39461// Exactly one of *ListRepricingRuleReportsResponse or error will be
39462// non-nil. Any non-2xx status code is an error. Response headers are in
39463// either *ListRepricingRuleReportsResponse.ServerResponse.Header or (if
39464// a response was returned at all) in error.(*googleapi.Error).Header.
39465// Use googleapi.IsNotModified to check whether the returned error was
39466// because http.StatusNotModified was returned.
39467func (c *RepricingrulesRepricingreportsListCall) Do(opts ...googleapi.CallOption) (*ListRepricingRuleReportsResponse, error) {
39468	gensupport.SetOptions(c.urlParams_, opts...)
39469	res, err := c.doRequest("json")
39470	if res != nil && res.StatusCode == http.StatusNotModified {
39471		if res.Body != nil {
39472			res.Body.Close()
39473		}
39474		return nil, &googleapi.Error{
39475			Code:   res.StatusCode,
39476			Header: res.Header,
39477		}
39478	}
39479	if err != nil {
39480		return nil, err
39481	}
39482	defer googleapi.CloseBody(res)
39483	if err := googleapi.CheckResponse(res); err != nil {
39484		return nil, err
39485	}
39486	ret := &ListRepricingRuleReportsResponse{
39487		ServerResponse: googleapi.ServerResponse{
39488			Header:         res.Header,
39489			HTTPStatusCode: res.StatusCode,
39490		},
39491	}
39492	target := &ret
39493	if err := gensupport.DecodeResponse(target, res); err != nil {
39494		return nil, err
39495	}
39496	return ret, nil
39497	// {
39498	//   "description": "Lists the metrics report for a given Repricing rule.",
39499	//   "flatPath": "{merchantId}/repricingrules/{ruleId}/repricingreports",
39500	//   "httpMethod": "GET",
39501	//   "id": "content.repricingrules.repricingreports.list",
39502	//   "parameterOrder": [
39503	//     "merchantId",
39504	//     "ruleId"
39505	//   ],
39506	//   "parameters": {
39507	//     "endDate": {
39508	//       "description": "Gets Repricing reports on and before this date in the merchant's timezone. You can only retrieve data up to 7 days ago (default) or earlier. Format: YYYY-MM-DD.",
39509	//       "location": "query",
39510	//       "type": "string"
39511	//     },
39512	//     "merchantId": {
39513	//       "description": "Required. Id of the merchant who owns the Repricing rule.",
39514	//       "format": "int64",
39515	//       "location": "path",
39516	//       "required": true,
39517	//       "type": "string"
39518	//     },
39519	//     "pageSize": {
39520	//       "description": "Maximum number of daily reports to return. Each report includes data from a single 24-hour period. The page size defaults to 50 and values above 1000 are coerced to 1000. This service may return fewer days than this value, for example, if the time between your start and end date is less than page size.",
39521	//       "format": "int32",
39522	//       "location": "query",
39523	//       "type": "integer"
39524	//     },
39525	//     "pageToken": {
39526	//       "description": "Token (if provided) to retrieve the subsequent page. All other parameters must match the original call that provided the page token.",
39527	//       "location": "query",
39528	//       "type": "string"
39529	//     },
39530	//     "ruleId": {
39531	//       "description": "Required. Id of the Repricing rule.",
39532	//       "location": "path",
39533	//       "required": true,
39534	//       "type": "string"
39535	//     },
39536	//     "startDate": {
39537	//       "description": "Gets Repricing reports on and after this date in the merchant's timezone, up to one year ago. Do not use a start date later than 7 days ago (default). Format: YYYY-MM-DD.",
39538	//       "location": "query",
39539	//       "type": "string"
39540	//     }
39541	//   },
39542	//   "path": "{merchantId}/repricingrules/{ruleId}/repricingreports",
39543	//   "response": {
39544	//     "$ref": "ListRepricingRuleReportsResponse"
39545	//   },
39546	//   "scopes": [
39547	//     "https://www.googleapis.com/auth/content"
39548	//   ]
39549	// }
39550
39551}
39552
39553// Pages invokes f for each page of results.
39554// A non-nil error returned from f will halt the iteration.
39555// The provided context supersedes any context provided to the Context method.
39556func (c *RepricingrulesRepricingreportsListCall) Pages(ctx context.Context, f func(*ListRepricingRuleReportsResponse) error) error {
39557	c.ctx_ = ctx
39558	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
39559	for {
39560		x, err := c.Do()
39561		if err != nil {
39562			return err
39563		}
39564		if err := f(x); err != nil {
39565			return err
39566		}
39567		if x.NextPageToken == "" {
39568			return nil
39569		}
39570		c.PageToken(x.NextPageToken)
39571	}
39572}
39573
39574// method id "content.returnaddress.custombatch":
39575
39576type ReturnaddressCustombatchCall struct {
39577	s                               *APIService
39578	returnaddresscustombatchrequest *ReturnaddressCustomBatchRequest
39579	urlParams_                      gensupport.URLParams
39580	ctx_                            context.Context
39581	header_                         http.Header
39582}
39583
39584// Custombatch: Batches multiple return address related calls in a
39585// single request.
39586func (r *ReturnaddressService) Custombatch(returnaddresscustombatchrequest *ReturnaddressCustomBatchRequest) *ReturnaddressCustombatchCall {
39587	c := &ReturnaddressCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
39588	c.returnaddresscustombatchrequest = returnaddresscustombatchrequest
39589	return c
39590}
39591
39592// Fields allows partial responses to be retrieved. See
39593// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
39594// for more information.
39595func (c *ReturnaddressCustombatchCall) Fields(s ...googleapi.Field) *ReturnaddressCustombatchCall {
39596	c.urlParams_.Set("fields", googleapi.CombineFields(s))
39597	return c
39598}
39599
39600// Context sets the context to be used in this call's Do method. Any
39601// pending HTTP request will be aborted if the provided context is
39602// canceled.
39603func (c *ReturnaddressCustombatchCall) Context(ctx context.Context) *ReturnaddressCustombatchCall {
39604	c.ctx_ = ctx
39605	return c
39606}
39607
39608// Header returns an http.Header that can be modified by the caller to
39609// add HTTP headers to the request.
39610func (c *ReturnaddressCustombatchCall) Header() http.Header {
39611	if c.header_ == nil {
39612		c.header_ = make(http.Header)
39613	}
39614	return c.header_
39615}
39616
39617func (c *ReturnaddressCustombatchCall) doRequest(alt string) (*http.Response, error) {
39618	reqHeaders := make(http.Header)
39619	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
39620	for k, v := range c.header_ {
39621		reqHeaders[k] = v
39622	}
39623	reqHeaders.Set("User-Agent", c.s.userAgent())
39624	var body io.Reader = nil
39625	body, err := googleapi.WithoutDataWrapper.JSONReader(c.returnaddresscustombatchrequest)
39626	if err != nil {
39627		return nil, err
39628	}
39629	reqHeaders.Set("Content-Type", "application/json")
39630	c.urlParams_.Set("alt", alt)
39631	c.urlParams_.Set("prettyPrint", "false")
39632	urls := googleapi.ResolveRelative(c.s.BasePath, "returnaddress/batch")
39633	urls += "?" + c.urlParams_.Encode()
39634	req, err := http.NewRequest("POST", urls, body)
39635	if err != nil {
39636		return nil, err
39637	}
39638	req.Header = reqHeaders
39639	return gensupport.SendRequest(c.ctx_, c.s.client, req)
39640}
39641
39642// Do executes the "content.returnaddress.custombatch" call.
39643// Exactly one of *ReturnaddressCustomBatchResponse or error will be
39644// non-nil. Any non-2xx status code is an error. Response headers are in
39645// either *ReturnaddressCustomBatchResponse.ServerResponse.Header or (if
39646// a response was returned at all) in error.(*googleapi.Error).Header.
39647// Use googleapi.IsNotModified to check whether the returned error was
39648// because http.StatusNotModified was returned.
39649func (c *ReturnaddressCustombatchCall) Do(opts ...googleapi.CallOption) (*ReturnaddressCustomBatchResponse, error) {
39650	gensupport.SetOptions(c.urlParams_, opts...)
39651	res, err := c.doRequest("json")
39652	if res != nil && res.StatusCode == http.StatusNotModified {
39653		if res.Body != nil {
39654			res.Body.Close()
39655		}
39656		return nil, &googleapi.Error{
39657			Code:   res.StatusCode,
39658			Header: res.Header,
39659		}
39660	}
39661	if err != nil {
39662		return nil, err
39663	}
39664	defer googleapi.CloseBody(res)
39665	if err := googleapi.CheckResponse(res); err != nil {
39666		return nil, err
39667	}
39668	ret := &ReturnaddressCustomBatchResponse{
39669		ServerResponse: googleapi.ServerResponse{
39670			Header:         res.Header,
39671			HTTPStatusCode: res.StatusCode,
39672		},
39673	}
39674	target := &ret
39675	if err := gensupport.DecodeResponse(target, res); err != nil {
39676		return nil, err
39677	}
39678	return ret, nil
39679	// {
39680	//   "description": "Batches multiple return address related calls in a single request.",
39681	//   "flatPath": "returnaddress/batch",
39682	//   "httpMethod": "POST",
39683	//   "id": "content.returnaddress.custombatch",
39684	//   "parameterOrder": [],
39685	//   "parameters": {},
39686	//   "path": "returnaddress/batch",
39687	//   "request": {
39688	//     "$ref": "ReturnaddressCustomBatchRequest"
39689	//   },
39690	//   "response": {
39691	//     "$ref": "ReturnaddressCustomBatchResponse"
39692	//   },
39693	//   "scopes": [
39694	//     "https://www.googleapis.com/auth/content"
39695	//   ]
39696	// }
39697
39698}
39699
39700// method id "content.returnaddress.delete":
39701
39702type ReturnaddressDeleteCall struct {
39703	s               *APIService
39704	merchantId      uint64
39705	returnAddressId string
39706	urlParams_      gensupport.URLParams
39707	ctx_            context.Context
39708	header_         http.Header
39709}
39710
39711// Delete: Deletes a return address for the given Merchant Center
39712// account.
39713//
39714// - merchantId: The Merchant Center account from which to delete the
39715//   given return address.
39716// - returnAddressId: Return address ID generated by Google.
39717func (r *ReturnaddressService) Delete(merchantId uint64, returnAddressId string) *ReturnaddressDeleteCall {
39718	c := &ReturnaddressDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
39719	c.merchantId = merchantId
39720	c.returnAddressId = returnAddressId
39721	return c
39722}
39723
39724// Fields allows partial responses to be retrieved. See
39725// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
39726// for more information.
39727func (c *ReturnaddressDeleteCall) Fields(s ...googleapi.Field) *ReturnaddressDeleteCall {
39728	c.urlParams_.Set("fields", googleapi.CombineFields(s))
39729	return c
39730}
39731
39732// Context sets the context to be used in this call's Do method. Any
39733// pending HTTP request will be aborted if the provided context is
39734// canceled.
39735func (c *ReturnaddressDeleteCall) Context(ctx context.Context) *ReturnaddressDeleteCall {
39736	c.ctx_ = ctx
39737	return c
39738}
39739
39740// Header returns an http.Header that can be modified by the caller to
39741// add HTTP headers to the request.
39742func (c *ReturnaddressDeleteCall) Header() http.Header {
39743	if c.header_ == nil {
39744		c.header_ = make(http.Header)
39745	}
39746	return c.header_
39747}
39748
39749func (c *ReturnaddressDeleteCall) doRequest(alt string) (*http.Response, error) {
39750	reqHeaders := make(http.Header)
39751	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
39752	for k, v := range c.header_ {
39753		reqHeaders[k] = v
39754	}
39755	reqHeaders.Set("User-Agent", c.s.userAgent())
39756	var body io.Reader = nil
39757	c.urlParams_.Set("alt", alt)
39758	c.urlParams_.Set("prettyPrint", "false")
39759	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnaddress/{returnAddressId}")
39760	urls += "?" + c.urlParams_.Encode()
39761	req, err := http.NewRequest("DELETE", urls, body)
39762	if err != nil {
39763		return nil, err
39764	}
39765	req.Header = reqHeaders
39766	googleapi.Expand(req.URL, map[string]string{
39767		"merchantId":      strconv.FormatUint(c.merchantId, 10),
39768		"returnAddressId": c.returnAddressId,
39769	})
39770	return gensupport.SendRequest(c.ctx_, c.s.client, req)
39771}
39772
39773// Do executes the "content.returnaddress.delete" call.
39774func (c *ReturnaddressDeleteCall) Do(opts ...googleapi.CallOption) error {
39775	gensupport.SetOptions(c.urlParams_, opts...)
39776	res, err := c.doRequest("json")
39777	if err != nil {
39778		return err
39779	}
39780	defer googleapi.CloseBody(res)
39781	if err := googleapi.CheckResponse(res); err != nil {
39782		return err
39783	}
39784	return nil
39785	// {
39786	//   "description": "Deletes a return address for the given Merchant Center account.",
39787	//   "flatPath": "{merchantId}/returnaddress/{returnAddressId}",
39788	//   "httpMethod": "DELETE",
39789	//   "id": "content.returnaddress.delete",
39790	//   "parameterOrder": [
39791	//     "merchantId",
39792	//     "returnAddressId"
39793	//   ],
39794	//   "parameters": {
39795	//     "merchantId": {
39796	//       "description": "The Merchant Center account from which to delete the given return address.",
39797	//       "format": "uint64",
39798	//       "location": "path",
39799	//       "required": true,
39800	//       "type": "string"
39801	//     },
39802	//     "returnAddressId": {
39803	//       "description": "Return address ID generated by Google.",
39804	//       "location": "path",
39805	//       "required": true,
39806	//       "type": "string"
39807	//     }
39808	//   },
39809	//   "path": "{merchantId}/returnaddress/{returnAddressId}",
39810	//   "scopes": [
39811	//     "https://www.googleapis.com/auth/content"
39812	//   ]
39813	// }
39814
39815}
39816
39817// method id "content.returnaddress.get":
39818
39819type ReturnaddressGetCall struct {
39820	s               *APIService
39821	merchantId      uint64
39822	returnAddressId string
39823	urlParams_      gensupport.URLParams
39824	ifNoneMatch_    string
39825	ctx_            context.Context
39826	header_         http.Header
39827}
39828
39829// Get: Gets a return address of the Merchant Center account.
39830//
39831// - merchantId: The Merchant Center account to get a return address
39832//   for.
39833// - returnAddressId: Return address ID generated by Google.
39834func (r *ReturnaddressService) Get(merchantId uint64, returnAddressId string) *ReturnaddressGetCall {
39835	c := &ReturnaddressGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
39836	c.merchantId = merchantId
39837	c.returnAddressId = returnAddressId
39838	return c
39839}
39840
39841// Fields allows partial responses to be retrieved. See
39842// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
39843// for more information.
39844func (c *ReturnaddressGetCall) Fields(s ...googleapi.Field) *ReturnaddressGetCall {
39845	c.urlParams_.Set("fields", googleapi.CombineFields(s))
39846	return c
39847}
39848
39849// IfNoneMatch sets the optional parameter which makes the operation
39850// fail if the object's ETag matches the given value. This is useful for
39851// getting updates only after the object has changed since the last
39852// request. Use googleapi.IsNotModified to check whether the response
39853// error from Do is the result of In-None-Match.
39854func (c *ReturnaddressGetCall) IfNoneMatch(entityTag string) *ReturnaddressGetCall {
39855	c.ifNoneMatch_ = entityTag
39856	return c
39857}
39858
39859// Context sets the context to be used in this call's Do method. Any
39860// pending HTTP request will be aborted if the provided context is
39861// canceled.
39862func (c *ReturnaddressGetCall) Context(ctx context.Context) *ReturnaddressGetCall {
39863	c.ctx_ = ctx
39864	return c
39865}
39866
39867// Header returns an http.Header that can be modified by the caller to
39868// add HTTP headers to the request.
39869func (c *ReturnaddressGetCall) Header() http.Header {
39870	if c.header_ == nil {
39871		c.header_ = make(http.Header)
39872	}
39873	return c.header_
39874}
39875
39876func (c *ReturnaddressGetCall) doRequest(alt string) (*http.Response, error) {
39877	reqHeaders := make(http.Header)
39878	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
39879	for k, v := range c.header_ {
39880		reqHeaders[k] = v
39881	}
39882	reqHeaders.Set("User-Agent", c.s.userAgent())
39883	if c.ifNoneMatch_ != "" {
39884		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
39885	}
39886	var body io.Reader = nil
39887	c.urlParams_.Set("alt", alt)
39888	c.urlParams_.Set("prettyPrint", "false")
39889	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnaddress/{returnAddressId}")
39890	urls += "?" + c.urlParams_.Encode()
39891	req, err := http.NewRequest("GET", urls, body)
39892	if err != nil {
39893		return nil, err
39894	}
39895	req.Header = reqHeaders
39896	googleapi.Expand(req.URL, map[string]string{
39897		"merchantId":      strconv.FormatUint(c.merchantId, 10),
39898		"returnAddressId": c.returnAddressId,
39899	})
39900	return gensupport.SendRequest(c.ctx_, c.s.client, req)
39901}
39902
39903// Do executes the "content.returnaddress.get" call.
39904// Exactly one of *ReturnAddress or error will be non-nil. Any non-2xx
39905// status code is an error. Response headers are in either
39906// *ReturnAddress.ServerResponse.Header or (if a response was returned
39907// at all) in error.(*googleapi.Error).Header. Use
39908// googleapi.IsNotModified to check whether the returned error was
39909// because http.StatusNotModified was returned.
39910func (c *ReturnaddressGetCall) Do(opts ...googleapi.CallOption) (*ReturnAddress, error) {
39911	gensupport.SetOptions(c.urlParams_, opts...)
39912	res, err := c.doRequest("json")
39913	if res != nil && res.StatusCode == http.StatusNotModified {
39914		if res.Body != nil {
39915			res.Body.Close()
39916		}
39917		return nil, &googleapi.Error{
39918			Code:   res.StatusCode,
39919			Header: res.Header,
39920		}
39921	}
39922	if err != nil {
39923		return nil, err
39924	}
39925	defer googleapi.CloseBody(res)
39926	if err := googleapi.CheckResponse(res); err != nil {
39927		return nil, err
39928	}
39929	ret := &ReturnAddress{
39930		ServerResponse: googleapi.ServerResponse{
39931			Header:         res.Header,
39932			HTTPStatusCode: res.StatusCode,
39933		},
39934	}
39935	target := &ret
39936	if err := gensupport.DecodeResponse(target, res); err != nil {
39937		return nil, err
39938	}
39939	return ret, nil
39940	// {
39941	//   "description": "Gets a return address of the Merchant Center account.",
39942	//   "flatPath": "{merchantId}/returnaddress/{returnAddressId}",
39943	//   "httpMethod": "GET",
39944	//   "id": "content.returnaddress.get",
39945	//   "parameterOrder": [
39946	//     "merchantId",
39947	//     "returnAddressId"
39948	//   ],
39949	//   "parameters": {
39950	//     "merchantId": {
39951	//       "description": "The Merchant Center account to get a return address for.",
39952	//       "format": "uint64",
39953	//       "location": "path",
39954	//       "required": true,
39955	//       "type": "string"
39956	//     },
39957	//     "returnAddressId": {
39958	//       "description": "Return address ID generated by Google.",
39959	//       "location": "path",
39960	//       "required": true,
39961	//       "type": "string"
39962	//     }
39963	//   },
39964	//   "path": "{merchantId}/returnaddress/{returnAddressId}",
39965	//   "response": {
39966	//     "$ref": "ReturnAddress"
39967	//   },
39968	//   "scopes": [
39969	//     "https://www.googleapis.com/auth/content"
39970	//   ]
39971	// }
39972
39973}
39974
39975// method id "content.returnaddress.insert":
39976
39977type ReturnaddressInsertCall struct {
39978	s             *APIService
39979	merchantId    uint64
39980	returnaddress *ReturnAddress
39981	urlParams_    gensupport.URLParams
39982	ctx_          context.Context
39983	header_       http.Header
39984}
39985
39986// Insert: Inserts a return address for the Merchant Center account.
39987//
39988// - merchantId: The Merchant Center account to insert a return address
39989//   for.
39990func (r *ReturnaddressService) Insert(merchantId uint64, returnaddress *ReturnAddress) *ReturnaddressInsertCall {
39991	c := &ReturnaddressInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
39992	c.merchantId = merchantId
39993	c.returnaddress = returnaddress
39994	return c
39995}
39996
39997// Fields allows partial responses to be retrieved. See
39998// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
39999// for more information.
40000func (c *ReturnaddressInsertCall) Fields(s ...googleapi.Field) *ReturnaddressInsertCall {
40001	c.urlParams_.Set("fields", googleapi.CombineFields(s))
40002	return c
40003}
40004
40005// Context sets the context to be used in this call's Do method. Any
40006// pending HTTP request will be aborted if the provided context is
40007// canceled.
40008func (c *ReturnaddressInsertCall) Context(ctx context.Context) *ReturnaddressInsertCall {
40009	c.ctx_ = ctx
40010	return c
40011}
40012
40013// Header returns an http.Header that can be modified by the caller to
40014// add HTTP headers to the request.
40015func (c *ReturnaddressInsertCall) Header() http.Header {
40016	if c.header_ == nil {
40017		c.header_ = make(http.Header)
40018	}
40019	return c.header_
40020}
40021
40022func (c *ReturnaddressInsertCall) doRequest(alt string) (*http.Response, error) {
40023	reqHeaders := make(http.Header)
40024	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
40025	for k, v := range c.header_ {
40026		reqHeaders[k] = v
40027	}
40028	reqHeaders.Set("User-Agent", c.s.userAgent())
40029	var body io.Reader = nil
40030	body, err := googleapi.WithoutDataWrapper.JSONReader(c.returnaddress)
40031	if err != nil {
40032		return nil, err
40033	}
40034	reqHeaders.Set("Content-Type", "application/json")
40035	c.urlParams_.Set("alt", alt)
40036	c.urlParams_.Set("prettyPrint", "false")
40037	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnaddress")
40038	urls += "?" + c.urlParams_.Encode()
40039	req, err := http.NewRequest("POST", urls, body)
40040	if err != nil {
40041		return nil, err
40042	}
40043	req.Header = reqHeaders
40044	googleapi.Expand(req.URL, map[string]string{
40045		"merchantId": strconv.FormatUint(c.merchantId, 10),
40046	})
40047	return gensupport.SendRequest(c.ctx_, c.s.client, req)
40048}
40049
40050// Do executes the "content.returnaddress.insert" call.
40051// Exactly one of *ReturnAddress or error will be non-nil. Any non-2xx
40052// status code is an error. Response headers are in either
40053// *ReturnAddress.ServerResponse.Header or (if a response was returned
40054// at all) in error.(*googleapi.Error).Header. Use
40055// googleapi.IsNotModified to check whether the returned error was
40056// because http.StatusNotModified was returned.
40057func (c *ReturnaddressInsertCall) Do(opts ...googleapi.CallOption) (*ReturnAddress, error) {
40058	gensupport.SetOptions(c.urlParams_, opts...)
40059	res, err := c.doRequest("json")
40060	if res != nil && res.StatusCode == http.StatusNotModified {
40061		if res.Body != nil {
40062			res.Body.Close()
40063		}
40064		return nil, &googleapi.Error{
40065			Code:   res.StatusCode,
40066			Header: res.Header,
40067		}
40068	}
40069	if err != nil {
40070		return nil, err
40071	}
40072	defer googleapi.CloseBody(res)
40073	if err := googleapi.CheckResponse(res); err != nil {
40074		return nil, err
40075	}
40076	ret := &ReturnAddress{
40077		ServerResponse: googleapi.ServerResponse{
40078			Header:         res.Header,
40079			HTTPStatusCode: res.StatusCode,
40080		},
40081	}
40082	target := &ret
40083	if err := gensupport.DecodeResponse(target, res); err != nil {
40084		return nil, err
40085	}
40086	return ret, nil
40087	// {
40088	//   "description": "Inserts a return address for the Merchant Center account.",
40089	//   "flatPath": "{merchantId}/returnaddress",
40090	//   "httpMethod": "POST",
40091	//   "id": "content.returnaddress.insert",
40092	//   "parameterOrder": [
40093	//     "merchantId"
40094	//   ],
40095	//   "parameters": {
40096	//     "merchantId": {
40097	//       "description": "The Merchant Center account to insert a return address for.",
40098	//       "format": "uint64",
40099	//       "location": "path",
40100	//       "required": true,
40101	//       "type": "string"
40102	//     }
40103	//   },
40104	//   "path": "{merchantId}/returnaddress",
40105	//   "request": {
40106	//     "$ref": "ReturnAddress"
40107	//   },
40108	//   "response": {
40109	//     "$ref": "ReturnAddress"
40110	//   },
40111	//   "scopes": [
40112	//     "https://www.googleapis.com/auth/content"
40113	//   ]
40114	// }
40115
40116}
40117
40118// method id "content.returnaddress.list":
40119
40120type ReturnaddressListCall struct {
40121	s            *APIService
40122	merchantId   uint64
40123	urlParams_   gensupport.URLParams
40124	ifNoneMatch_ string
40125	ctx_         context.Context
40126	header_      http.Header
40127}
40128
40129// List: Lists the return addresses of the Merchant Center account.
40130//
40131// - merchantId: The Merchant Center account to list return addresses
40132//   for.
40133func (r *ReturnaddressService) List(merchantId uint64) *ReturnaddressListCall {
40134	c := &ReturnaddressListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
40135	c.merchantId = merchantId
40136	return c
40137}
40138
40139// Country sets the optional parameter "country": List only return
40140// addresses applicable to the given country of sale. When omitted, all
40141// return addresses are listed.
40142func (c *ReturnaddressListCall) Country(country string) *ReturnaddressListCall {
40143	c.urlParams_.Set("country", country)
40144	return c
40145}
40146
40147// MaxResults sets the optional parameter "maxResults": The maximum
40148// number of addresses in the response, used for paging.
40149func (c *ReturnaddressListCall) MaxResults(maxResults int64) *ReturnaddressListCall {
40150	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
40151	return c
40152}
40153
40154// PageToken sets the optional parameter "pageToken": The token returned
40155// by the previous request.
40156func (c *ReturnaddressListCall) PageToken(pageToken string) *ReturnaddressListCall {
40157	c.urlParams_.Set("pageToken", pageToken)
40158	return c
40159}
40160
40161// Fields allows partial responses to be retrieved. See
40162// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
40163// for more information.
40164func (c *ReturnaddressListCall) Fields(s ...googleapi.Field) *ReturnaddressListCall {
40165	c.urlParams_.Set("fields", googleapi.CombineFields(s))
40166	return c
40167}
40168
40169// IfNoneMatch sets the optional parameter which makes the operation
40170// fail if the object's ETag matches the given value. This is useful for
40171// getting updates only after the object has changed since the last
40172// request. Use googleapi.IsNotModified to check whether the response
40173// error from Do is the result of In-None-Match.
40174func (c *ReturnaddressListCall) IfNoneMatch(entityTag string) *ReturnaddressListCall {
40175	c.ifNoneMatch_ = entityTag
40176	return c
40177}
40178
40179// Context sets the context to be used in this call's Do method. Any
40180// pending HTTP request will be aborted if the provided context is
40181// canceled.
40182func (c *ReturnaddressListCall) Context(ctx context.Context) *ReturnaddressListCall {
40183	c.ctx_ = ctx
40184	return c
40185}
40186
40187// Header returns an http.Header that can be modified by the caller to
40188// add HTTP headers to the request.
40189func (c *ReturnaddressListCall) Header() http.Header {
40190	if c.header_ == nil {
40191		c.header_ = make(http.Header)
40192	}
40193	return c.header_
40194}
40195
40196func (c *ReturnaddressListCall) doRequest(alt string) (*http.Response, error) {
40197	reqHeaders := make(http.Header)
40198	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
40199	for k, v := range c.header_ {
40200		reqHeaders[k] = v
40201	}
40202	reqHeaders.Set("User-Agent", c.s.userAgent())
40203	if c.ifNoneMatch_ != "" {
40204		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
40205	}
40206	var body io.Reader = nil
40207	c.urlParams_.Set("alt", alt)
40208	c.urlParams_.Set("prettyPrint", "false")
40209	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnaddress")
40210	urls += "?" + c.urlParams_.Encode()
40211	req, err := http.NewRequest("GET", urls, body)
40212	if err != nil {
40213		return nil, err
40214	}
40215	req.Header = reqHeaders
40216	googleapi.Expand(req.URL, map[string]string{
40217		"merchantId": strconv.FormatUint(c.merchantId, 10),
40218	})
40219	return gensupport.SendRequest(c.ctx_, c.s.client, req)
40220}
40221
40222// Do executes the "content.returnaddress.list" call.
40223// Exactly one of *ReturnaddressListResponse or error will be non-nil.
40224// Any non-2xx status code is an error. Response headers are in either
40225// *ReturnaddressListResponse.ServerResponse.Header or (if a response
40226// was returned at all) in error.(*googleapi.Error).Header. Use
40227// googleapi.IsNotModified to check whether the returned error was
40228// because http.StatusNotModified was returned.
40229func (c *ReturnaddressListCall) Do(opts ...googleapi.CallOption) (*ReturnaddressListResponse, error) {
40230	gensupport.SetOptions(c.urlParams_, opts...)
40231	res, err := c.doRequest("json")
40232	if res != nil && res.StatusCode == http.StatusNotModified {
40233		if res.Body != nil {
40234			res.Body.Close()
40235		}
40236		return nil, &googleapi.Error{
40237			Code:   res.StatusCode,
40238			Header: res.Header,
40239		}
40240	}
40241	if err != nil {
40242		return nil, err
40243	}
40244	defer googleapi.CloseBody(res)
40245	if err := googleapi.CheckResponse(res); err != nil {
40246		return nil, err
40247	}
40248	ret := &ReturnaddressListResponse{
40249		ServerResponse: googleapi.ServerResponse{
40250			Header:         res.Header,
40251			HTTPStatusCode: res.StatusCode,
40252		},
40253	}
40254	target := &ret
40255	if err := gensupport.DecodeResponse(target, res); err != nil {
40256		return nil, err
40257	}
40258	return ret, nil
40259	// {
40260	//   "description": "Lists the return addresses of the Merchant Center account.",
40261	//   "flatPath": "{merchantId}/returnaddress",
40262	//   "httpMethod": "GET",
40263	//   "id": "content.returnaddress.list",
40264	//   "parameterOrder": [
40265	//     "merchantId"
40266	//   ],
40267	//   "parameters": {
40268	//     "country": {
40269	//       "description": "List only return addresses applicable to the given country of sale. When omitted, all return addresses are listed.",
40270	//       "location": "query",
40271	//       "type": "string"
40272	//     },
40273	//     "maxResults": {
40274	//       "description": "The maximum number of addresses in the response, used for paging.",
40275	//       "format": "uint32",
40276	//       "location": "query",
40277	//       "type": "integer"
40278	//     },
40279	//     "merchantId": {
40280	//       "description": "The Merchant Center account to list return addresses for.",
40281	//       "format": "uint64",
40282	//       "location": "path",
40283	//       "required": true,
40284	//       "type": "string"
40285	//     },
40286	//     "pageToken": {
40287	//       "description": "The token returned by the previous request.",
40288	//       "location": "query",
40289	//       "type": "string"
40290	//     }
40291	//   },
40292	//   "path": "{merchantId}/returnaddress",
40293	//   "response": {
40294	//     "$ref": "ReturnaddressListResponse"
40295	//   },
40296	//   "scopes": [
40297	//     "https://www.googleapis.com/auth/content"
40298	//   ]
40299	// }
40300
40301}
40302
40303// Pages invokes f for each page of results.
40304// A non-nil error returned from f will halt the iteration.
40305// The provided context supersedes any context provided to the Context method.
40306func (c *ReturnaddressListCall) Pages(ctx context.Context, f func(*ReturnaddressListResponse) error) error {
40307	c.ctx_ = ctx
40308	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
40309	for {
40310		x, err := c.Do()
40311		if err != nil {
40312			return err
40313		}
40314		if err := f(x); err != nil {
40315			return err
40316		}
40317		if x.NextPageToken == "" {
40318			return nil
40319		}
40320		c.PageToken(x.NextPageToken)
40321	}
40322}
40323
40324// method id "content.returnpolicy.custombatch":
40325
40326type ReturnpolicyCustombatchCall struct {
40327	s                              *APIService
40328	returnpolicycustombatchrequest *ReturnpolicyCustomBatchRequest
40329	urlParams_                     gensupport.URLParams
40330	ctx_                           context.Context
40331	header_                        http.Header
40332}
40333
40334// Custombatch: Batches multiple return policy related calls in a single
40335// request.
40336func (r *ReturnpolicyService) Custombatch(returnpolicycustombatchrequest *ReturnpolicyCustomBatchRequest) *ReturnpolicyCustombatchCall {
40337	c := &ReturnpolicyCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
40338	c.returnpolicycustombatchrequest = returnpolicycustombatchrequest
40339	return c
40340}
40341
40342// Fields allows partial responses to be retrieved. See
40343// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
40344// for more information.
40345func (c *ReturnpolicyCustombatchCall) Fields(s ...googleapi.Field) *ReturnpolicyCustombatchCall {
40346	c.urlParams_.Set("fields", googleapi.CombineFields(s))
40347	return c
40348}
40349
40350// Context sets the context to be used in this call's Do method. Any
40351// pending HTTP request will be aborted if the provided context is
40352// canceled.
40353func (c *ReturnpolicyCustombatchCall) Context(ctx context.Context) *ReturnpolicyCustombatchCall {
40354	c.ctx_ = ctx
40355	return c
40356}
40357
40358// Header returns an http.Header that can be modified by the caller to
40359// add HTTP headers to the request.
40360func (c *ReturnpolicyCustombatchCall) Header() http.Header {
40361	if c.header_ == nil {
40362		c.header_ = make(http.Header)
40363	}
40364	return c.header_
40365}
40366
40367func (c *ReturnpolicyCustombatchCall) doRequest(alt string) (*http.Response, error) {
40368	reqHeaders := make(http.Header)
40369	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
40370	for k, v := range c.header_ {
40371		reqHeaders[k] = v
40372	}
40373	reqHeaders.Set("User-Agent", c.s.userAgent())
40374	var body io.Reader = nil
40375	body, err := googleapi.WithoutDataWrapper.JSONReader(c.returnpolicycustombatchrequest)
40376	if err != nil {
40377		return nil, err
40378	}
40379	reqHeaders.Set("Content-Type", "application/json")
40380	c.urlParams_.Set("alt", alt)
40381	c.urlParams_.Set("prettyPrint", "false")
40382	urls := googleapi.ResolveRelative(c.s.BasePath, "returnpolicy/batch")
40383	urls += "?" + c.urlParams_.Encode()
40384	req, err := http.NewRequest("POST", urls, body)
40385	if err != nil {
40386		return nil, err
40387	}
40388	req.Header = reqHeaders
40389	return gensupport.SendRequest(c.ctx_, c.s.client, req)
40390}
40391
40392// Do executes the "content.returnpolicy.custombatch" call.
40393// Exactly one of *ReturnpolicyCustomBatchResponse or error will be
40394// non-nil. Any non-2xx status code is an error. Response headers are in
40395// either *ReturnpolicyCustomBatchResponse.ServerResponse.Header or (if
40396// a response was returned at all) in error.(*googleapi.Error).Header.
40397// Use googleapi.IsNotModified to check whether the returned error was
40398// because http.StatusNotModified was returned.
40399func (c *ReturnpolicyCustombatchCall) Do(opts ...googleapi.CallOption) (*ReturnpolicyCustomBatchResponse, error) {
40400	gensupport.SetOptions(c.urlParams_, opts...)
40401	res, err := c.doRequest("json")
40402	if res != nil && res.StatusCode == http.StatusNotModified {
40403		if res.Body != nil {
40404			res.Body.Close()
40405		}
40406		return nil, &googleapi.Error{
40407			Code:   res.StatusCode,
40408			Header: res.Header,
40409		}
40410	}
40411	if err != nil {
40412		return nil, err
40413	}
40414	defer googleapi.CloseBody(res)
40415	if err := googleapi.CheckResponse(res); err != nil {
40416		return nil, err
40417	}
40418	ret := &ReturnpolicyCustomBatchResponse{
40419		ServerResponse: googleapi.ServerResponse{
40420			Header:         res.Header,
40421			HTTPStatusCode: res.StatusCode,
40422		},
40423	}
40424	target := &ret
40425	if err := gensupport.DecodeResponse(target, res); err != nil {
40426		return nil, err
40427	}
40428	return ret, nil
40429	// {
40430	//   "description": "Batches multiple return policy related calls in a single request.",
40431	//   "flatPath": "returnpolicy/batch",
40432	//   "httpMethod": "POST",
40433	//   "id": "content.returnpolicy.custombatch",
40434	//   "parameterOrder": [],
40435	//   "parameters": {},
40436	//   "path": "returnpolicy/batch",
40437	//   "request": {
40438	//     "$ref": "ReturnpolicyCustomBatchRequest"
40439	//   },
40440	//   "response": {
40441	//     "$ref": "ReturnpolicyCustomBatchResponse"
40442	//   },
40443	//   "scopes": [
40444	//     "https://www.googleapis.com/auth/content"
40445	//   ]
40446	// }
40447
40448}
40449
40450// method id "content.returnpolicy.delete":
40451
40452type ReturnpolicyDeleteCall struct {
40453	s              *APIService
40454	merchantId     uint64
40455	returnPolicyId string
40456	urlParams_     gensupport.URLParams
40457	ctx_           context.Context
40458	header_        http.Header
40459}
40460
40461// Delete: Deletes a return policy for the given Merchant Center
40462// account.
40463//
40464// - merchantId: The Merchant Center account from which to delete the
40465//   given return policy.
40466// - returnPolicyId: Return policy ID generated by Google.
40467func (r *ReturnpolicyService) Delete(merchantId uint64, returnPolicyId string) *ReturnpolicyDeleteCall {
40468	c := &ReturnpolicyDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
40469	c.merchantId = merchantId
40470	c.returnPolicyId = returnPolicyId
40471	return c
40472}
40473
40474// Fields allows partial responses to be retrieved. See
40475// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
40476// for more information.
40477func (c *ReturnpolicyDeleteCall) Fields(s ...googleapi.Field) *ReturnpolicyDeleteCall {
40478	c.urlParams_.Set("fields", googleapi.CombineFields(s))
40479	return c
40480}
40481
40482// Context sets the context to be used in this call's Do method. Any
40483// pending HTTP request will be aborted if the provided context is
40484// canceled.
40485func (c *ReturnpolicyDeleteCall) Context(ctx context.Context) *ReturnpolicyDeleteCall {
40486	c.ctx_ = ctx
40487	return c
40488}
40489
40490// Header returns an http.Header that can be modified by the caller to
40491// add HTTP headers to the request.
40492func (c *ReturnpolicyDeleteCall) Header() http.Header {
40493	if c.header_ == nil {
40494		c.header_ = make(http.Header)
40495	}
40496	return c.header_
40497}
40498
40499func (c *ReturnpolicyDeleteCall) doRequest(alt string) (*http.Response, error) {
40500	reqHeaders := make(http.Header)
40501	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
40502	for k, v := range c.header_ {
40503		reqHeaders[k] = v
40504	}
40505	reqHeaders.Set("User-Agent", c.s.userAgent())
40506	var body io.Reader = nil
40507	c.urlParams_.Set("alt", alt)
40508	c.urlParams_.Set("prettyPrint", "false")
40509	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicy/{returnPolicyId}")
40510	urls += "?" + c.urlParams_.Encode()
40511	req, err := http.NewRequest("DELETE", urls, body)
40512	if err != nil {
40513		return nil, err
40514	}
40515	req.Header = reqHeaders
40516	googleapi.Expand(req.URL, map[string]string{
40517		"merchantId":     strconv.FormatUint(c.merchantId, 10),
40518		"returnPolicyId": c.returnPolicyId,
40519	})
40520	return gensupport.SendRequest(c.ctx_, c.s.client, req)
40521}
40522
40523// Do executes the "content.returnpolicy.delete" call.
40524func (c *ReturnpolicyDeleteCall) Do(opts ...googleapi.CallOption) error {
40525	gensupport.SetOptions(c.urlParams_, opts...)
40526	res, err := c.doRequest("json")
40527	if err != nil {
40528		return err
40529	}
40530	defer googleapi.CloseBody(res)
40531	if err := googleapi.CheckResponse(res); err != nil {
40532		return err
40533	}
40534	return nil
40535	// {
40536	//   "description": "Deletes a return policy for the given Merchant Center account.",
40537	//   "flatPath": "{merchantId}/returnpolicy/{returnPolicyId}",
40538	//   "httpMethod": "DELETE",
40539	//   "id": "content.returnpolicy.delete",
40540	//   "parameterOrder": [
40541	//     "merchantId",
40542	//     "returnPolicyId"
40543	//   ],
40544	//   "parameters": {
40545	//     "merchantId": {
40546	//       "description": "The Merchant Center account from which to delete the given return policy.",
40547	//       "format": "uint64",
40548	//       "location": "path",
40549	//       "required": true,
40550	//       "type": "string"
40551	//     },
40552	//     "returnPolicyId": {
40553	//       "description": "Return policy ID generated by Google.",
40554	//       "location": "path",
40555	//       "required": true,
40556	//       "type": "string"
40557	//     }
40558	//   },
40559	//   "path": "{merchantId}/returnpolicy/{returnPolicyId}",
40560	//   "scopes": [
40561	//     "https://www.googleapis.com/auth/content"
40562	//   ]
40563	// }
40564
40565}
40566
40567// method id "content.returnpolicy.get":
40568
40569type ReturnpolicyGetCall struct {
40570	s              *APIService
40571	merchantId     uint64
40572	returnPolicyId string
40573	urlParams_     gensupport.URLParams
40574	ifNoneMatch_   string
40575	ctx_           context.Context
40576	header_        http.Header
40577}
40578
40579// Get: Gets a return policy of the Merchant Center account.
40580//
40581// - merchantId: The Merchant Center account to get a return policy for.
40582// - returnPolicyId: Return policy ID generated by Google.
40583func (r *ReturnpolicyService) Get(merchantId uint64, returnPolicyId string) *ReturnpolicyGetCall {
40584	c := &ReturnpolicyGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
40585	c.merchantId = merchantId
40586	c.returnPolicyId = returnPolicyId
40587	return c
40588}
40589
40590// Fields allows partial responses to be retrieved. See
40591// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
40592// for more information.
40593func (c *ReturnpolicyGetCall) Fields(s ...googleapi.Field) *ReturnpolicyGetCall {
40594	c.urlParams_.Set("fields", googleapi.CombineFields(s))
40595	return c
40596}
40597
40598// IfNoneMatch sets the optional parameter which makes the operation
40599// fail if the object's ETag matches the given value. This is useful for
40600// getting updates only after the object has changed since the last
40601// request. Use googleapi.IsNotModified to check whether the response
40602// error from Do is the result of In-None-Match.
40603func (c *ReturnpolicyGetCall) IfNoneMatch(entityTag string) *ReturnpolicyGetCall {
40604	c.ifNoneMatch_ = entityTag
40605	return c
40606}
40607
40608// Context sets the context to be used in this call's Do method. Any
40609// pending HTTP request will be aborted if the provided context is
40610// canceled.
40611func (c *ReturnpolicyGetCall) Context(ctx context.Context) *ReturnpolicyGetCall {
40612	c.ctx_ = ctx
40613	return c
40614}
40615
40616// Header returns an http.Header that can be modified by the caller to
40617// add HTTP headers to the request.
40618func (c *ReturnpolicyGetCall) Header() http.Header {
40619	if c.header_ == nil {
40620		c.header_ = make(http.Header)
40621	}
40622	return c.header_
40623}
40624
40625func (c *ReturnpolicyGetCall) doRequest(alt string) (*http.Response, error) {
40626	reqHeaders := make(http.Header)
40627	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
40628	for k, v := range c.header_ {
40629		reqHeaders[k] = v
40630	}
40631	reqHeaders.Set("User-Agent", c.s.userAgent())
40632	if c.ifNoneMatch_ != "" {
40633		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
40634	}
40635	var body io.Reader = nil
40636	c.urlParams_.Set("alt", alt)
40637	c.urlParams_.Set("prettyPrint", "false")
40638	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicy/{returnPolicyId}")
40639	urls += "?" + c.urlParams_.Encode()
40640	req, err := http.NewRequest("GET", urls, body)
40641	if err != nil {
40642		return nil, err
40643	}
40644	req.Header = reqHeaders
40645	googleapi.Expand(req.URL, map[string]string{
40646		"merchantId":     strconv.FormatUint(c.merchantId, 10),
40647		"returnPolicyId": c.returnPolicyId,
40648	})
40649	return gensupport.SendRequest(c.ctx_, c.s.client, req)
40650}
40651
40652// Do executes the "content.returnpolicy.get" call.
40653// Exactly one of *ReturnPolicy or error will be non-nil. Any non-2xx
40654// status code is an error. Response headers are in either
40655// *ReturnPolicy.ServerResponse.Header or (if a response was returned at
40656// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
40657// to check whether the returned error was because
40658// http.StatusNotModified was returned.
40659func (c *ReturnpolicyGetCall) Do(opts ...googleapi.CallOption) (*ReturnPolicy, error) {
40660	gensupport.SetOptions(c.urlParams_, opts...)
40661	res, err := c.doRequest("json")
40662	if res != nil && res.StatusCode == http.StatusNotModified {
40663		if res.Body != nil {
40664			res.Body.Close()
40665		}
40666		return nil, &googleapi.Error{
40667			Code:   res.StatusCode,
40668			Header: res.Header,
40669		}
40670	}
40671	if err != nil {
40672		return nil, err
40673	}
40674	defer googleapi.CloseBody(res)
40675	if err := googleapi.CheckResponse(res); err != nil {
40676		return nil, err
40677	}
40678	ret := &ReturnPolicy{
40679		ServerResponse: googleapi.ServerResponse{
40680			Header:         res.Header,
40681			HTTPStatusCode: res.StatusCode,
40682		},
40683	}
40684	target := &ret
40685	if err := gensupport.DecodeResponse(target, res); err != nil {
40686		return nil, err
40687	}
40688	return ret, nil
40689	// {
40690	//   "description": "Gets a return policy of the Merchant Center account.",
40691	//   "flatPath": "{merchantId}/returnpolicy/{returnPolicyId}",
40692	//   "httpMethod": "GET",
40693	//   "id": "content.returnpolicy.get",
40694	//   "parameterOrder": [
40695	//     "merchantId",
40696	//     "returnPolicyId"
40697	//   ],
40698	//   "parameters": {
40699	//     "merchantId": {
40700	//       "description": "The Merchant Center account to get a return policy for.",
40701	//       "format": "uint64",
40702	//       "location": "path",
40703	//       "required": true,
40704	//       "type": "string"
40705	//     },
40706	//     "returnPolicyId": {
40707	//       "description": "Return policy ID generated by Google.",
40708	//       "location": "path",
40709	//       "required": true,
40710	//       "type": "string"
40711	//     }
40712	//   },
40713	//   "path": "{merchantId}/returnpolicy/{returnPolicyId}",
40714	//   "response": {
40715	//     "$ref": "ReturnPolicy"
40716	//   },
40717	//   "scopes": [
40718	//     "https://www.googleapis.com/auth/content"
40719	//   ]
40720	// }
40721
40722}
40723
40724// method id "content.returnpolicy.insert":
40725
40726type ReturnpolicyInsertCall struct {
40727	s            *APIService
40728	merchantId   uint64
40729	returnpolicy *ReturnPolicy
40730	urlParams_   gensupport.URLParams
40731	ctx_         context.Context
40732	header_      http.Header
40733}
40734
40735// Insert: Inserts a return policy for the Merchant Center account.
40736//
40737// - merchantId: The Merchant Center account to insert a return policy
40738//   for.
40739func (r *ReturnpolicyService) Insert(merchantId uint64, returnpolicy *ReturnPolicy) *ReturnpolicyInsertCall {
40740	c := &ReturnpolicyInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
40741	c.merchantId = merchantId
40742	c.returnpolicy = returnpolicy
40743	return c
40744}
40745
40746// Fields allows partial responses to be retrieved. See
40747// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
40748// for more information.
40749func (c *ReturnpolicyInsertCall) Fields(s ...googleapi.Field) *ReturnpolicyInsertCall {
40750	c.urlParams_.Set("fields", googleapi.CombineFields(s))
40751	return c
40752}
40753
40754// Context sets the context to be used in this call's Do method. Any
40755// pending HTTP request will be aborted if the provided context is
40756// canceled.
40757func (c *ReturnpolicyInsertCall) Context(ctx context.Context) *ReturnpolicyInsertCall {
40758	c.ctx_ = ctx
40759	return c
40760}
40761
40762// Header returns an http.Header that can be modified by the caller to
40763// add HTTP headers to the request.
40764func (c *ReturnpolicyInsertCall) Header() http.Header {
40765	if c.header_ == nil {
40766		c.header_ = make(http.Header)
40767	}
40768	return c.header_
40769}
40770
40771func (c *ReturnpolicyInsertCall) doRequest(alt string) (*http.Response, error) {
40772	reqHeaders := make(http.Header)
40773	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
40774	for k, v := range c.header_ {
40775		reqHeaders[k] = v
40776	}
40777	reqHeaders.Set("User-Agent", c.s.userAgent())
40778	var body io.Reader = nil
40779	body, err := googleapi.WithoutDataWrapper.JSONReader(c.returnpolicy)
40780	if err != nil {
40781		return nil, err
40782	}
40783	reqHeaders.Set("Content-Type", "application/json")
40784	c.urlParams_.Set("alt", alt)
40785	c.urlParams_.Set("prettyPrint", "false")
40786	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicy")
40787	urls += "?" + c.urlParams_.Encode()
40788	req, err := http.NewRequest("POST", urls, body)
40789	if err != nil {
40790		return nil, err
40791	}
40792	req.Header = reqHeaders
40793	googleapi.Expand(req.URL, map[string]string{
40794		"merchantId": strconv.FormatUint(c.merchantId, 10),
40795	})
40796	return gensupport.SendRequest(c.ctx_, c.s.client, req)
40797}
40798
40799// Do executes the "content.returnpolicy.insert" call.
40800// Exactly one of *ReturnPolicy or error will be non-nil. Any non-2xx
40801// status code is an error. Response headers are in either
40802// *ReturnPolicy.ServerResponse.Header or (if a response was returned at
40803// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
40804// to check whether the returned error was because
40805// http.StatusNotModified was returned.
40806func (c *ReturnpolicyInsertCall) Do(opts ...googleapi.CallOption) (*ReturnPolicy, error) {
40807	gensupport.SetOptions(c.urlParams_, opts...)
40808	res, err := c.doRequest("json")
40809	if res != nil && res.StatusCode == http.StatusNotModified {
40810		if res.Body != nil {
40811			res.Body.Close()
40812		}
40813		return nil, &googleapi.Error{
40814			Code:   res.StatusCode,
40815			Header: res.Header,
40816		}
40817	}
40818	if err != nil {
40819		return nil, err
40820	}
40821	defer googleapi.CloseBody(res)
40822	if err := googleapi.CheckResponse(res); err != nil {
40823		return nil, err
40824	}
40825	ret := &ReturnPolicy{
40826		ServerResponse: googleapi.ServerResponse{
40827			Header:         res.Header,
40828			HTTPStatusCode: res.StatusCode,
40829		},
40830	}
40831	target := &ret
40832	if err := gensupport.DecodeResponse(target, res); err != nil {
40833		return nil, err
40834	}
40835	return ret, nil
40836	// {
40837	//   "description": "Inserts a return policy for the Merchant Center account.",
40838	//   "flatPath": "{merchantId}/returnpolicy",
40839	//   "httpMethod": "POST",
40840	//   "id": "content.returnpolicy.insert",
40841	//   "parameterOrder": [
40842	//     "merchantId"
40843	//   ],
40844	//   "parameters": {
40845	//     "merchantId": {
40846	//       "description": "The Merchant Center account to insert a return policy for.",
40847	//       "format": "uint64",
40848	//       "location": "path",
40849	//       "required": true,
40850	//       "type": "string"
40851	//     }
40852	//   },
40853	//   "path": "{merchantId}/returnpolicy",
40854	//   "request": {
40855	//     "$ref": "ReturnPolicy"
40856	//   },
40857	//   "response": {
40858	//     "$ref": "ReturnPolicy"
40859	//   },
40860	//   "scopes": [
40861	//     "https://www.googleapis.com/auth/content"
40862	//   ]
40863	// }
40864
40865}
40866
40867// method id "content.returnpolicy.list":
40868
40869type ReturnpolicyListCall struct {
40870	s            *APIService
40871	merchantId   uint64
40872	urlParams_   gensupport.URLParams
40873	ifNoneMatch_ string
40874	ctx_         context.Context
40875	header_      http.Header
40876}
40877
40878// List: Lists the return policies of the Merchant Center account.
40879//
40880// - merchantId: The Merchant Center account to list return policies
40881//   for.
40882func (r *ReturnpolicyService) List(merchantId uint64) *ReturnpolicyListCall {
40883	c := &ReturnpolicyListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
40884	c.merchantId = merchantId
40885	return c
40886}
40887
40888// Fields allows partial responses to be retrieved. See
40889// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
40890// for more information.
40891func (c *ReturnpolicyListCall) Fields(s ...googleapi.Field) *ReturnpolicyListCall {
40892	c.urlParams_.Set("fields", googleapi.CombineFields(s))
40893	return c
40894}
40895
40896// IfNoneMatch sets the optional parameter which makes the operation
40897// fail if the object's ETag matches the given value. This is useful for
40898// getting updates only after the object has changed since the last
40899// request. Use googleapi.IsNotModified to check whether the response
40900// error from Do is the result of In-None-Match.
40901func (c *ReturnpolicyListCall) IfNoneMatch(entityTag string) *ReturnpolicyListCall {
40902	c.ifNoneMatch_ = entityTag
40903	return c
40904}
40905
40906// Context sets the context to be used in this call's Do method. Any
40907// pending HTTP request will be aborted if the provided context is
40908// canceled.
40909func (c *ReturnpolicyListCall) Context(ctx context.Context) *ReturnpolicyListCall {
40910	c.ctx_ = ctx
40911	return c
40912}
40913
40914// Header returns an http.Header that can be modified by the caller to
40915// add HTTP headers to the request.
40916func (c *ReturnpolicyListCall) Header() http.Header {
40917	if c.header_ == nil {
40918		c.header_ = make(http.Header)
40919	}
40920	return c.header_
40921}
40922
40923func (c *ReturnpolicyListCall) doRequest(alt string) (*http.Response, error) {
40924	reqHeaders := make(http.Header)
40925	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
40926	for k, v := range c.header_ {
40927		reqHeaders[k] = v
40928	}
40929	reqHeaders.Set("User-Agent", c.s.userAgent())
40930	if c.ifNoneMatch_ != "" {
40931		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
40932	}
40933	var body io.Reader = nil
40934	c.urlParams_.Set("alt", alt)
40935	c.urlParams_.Set("prettyPrint", "false")
40936	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicy")
40937	urls += "?" + c.urlParams_.Encode()
40938	req, err := http.NewRequest("GET", urls, body)
40939	if err != nil {
40940		return nil, err
40941	}
40942	req.Header = reqHeaders
40943	googleapi.Expand(req.URL, map[string]string{
40944		"merchantId": strconv.FormatUint(c.merchantId, 10),
40945	})
40946	return gensupport.SendRequest(c.ctx_, c.s.client, req)
40947}
40948
40949// Do executes the "content.returnpolicy.list" call.
40950// Exactly one of *ReturnpolicyListResponse or error will be non-nil.
40951// Any non-2xx status code is an error. Response headers are in either
40952// *ReturnpolicyListResponse.ServerResponse.Header or (if a response was
40953// returned at all) in error.(*googleapi.Error).Header. Use
40954// googleapi.IsNotModified to check whether the returned error was
40955// because http.StatusNotModified was returned.
40956func (c *ReturnpolicyListCall) Do(opts ...googleapi.CallOption) (*ReturnpolicyListResponse, error) {
40957	gensupport.SetOptions(c.urlParams_, opts...)
40958	res, err := c.doRequest("json")
40959	if res != nil && res.StatusCode == http.StatusNotModified {
40960		if res.Body != nil {
40961			res.Body.Close()
40962		}
40963		return nil, &googleapi.Error{
40964			Code:   res.StatusCode,
40965			Header: res.Header,
40966		}
40967	}
40968	if err != nil {
40969		return nil, err
40970	}
40971	defer googleapi.CloseBody(res)
40972	if err := googleapi.CheckResponse(res); err != nil {
40973		return nil, err
40974	}
40975	ret := &ReturnpolicyListResponse{
40976		ServerResponse: googleapi.ServerResponse{
40977			Header:         res.Header,
40978			HTTPStatusCode: res.StatusCode,
40979		},
40980	}
40981	target := &ret
40982	if err := gensupport.DecodeResponse(target, res); err != nil {
40983		return nil, err
40984	}
40985	return ret, nil
40986	// {
40987	//   "description": "Lists the return policies of the Merchant Center account.",
40988	//   "flatPath": "{merchantId}/returnpolicy",
40989	//   "httpMethod": "GET",
40990	//   "id": "content.returnpolicy.list",
40991	//   "parameterOrder": [
40992	//     "merchantId"
40993	//   ],
40994	//   "parameters": {
40995	//     "merchantId": {
40996	//       "description": "The Merchant Center account to list return policies for.",
40997	//       "format": "uint64",
40998	//       "location": "path",
40999	//       "required": true,
41000	//       "type": "string"
41001	//     }
41002	//   },
41003	//   "path": "{merchantId}/returnpolicy",
41004	//   "response": {
41005	//     "$ref": "ReturnpolicyListResponse"
41006	//   },
41007	//   "scopes": [
41008	//     "https://www.googleapis.com/auth/content"
41009	//   ]
41010	// }
41011
41012}
41013
41014// method id "content.returnpolicyonline.create":
41015
41016type ReturnpolicyonlineCreateCall struct {
41017	s                  *APIService
41018	merchantId         int64
41019	returnpolicyonline *ReturnPolicyOnline
41020	urlParams_         gensupport.URLParams
41021	ctx_               context.Context
41022	header_            http.Header
41023}
41024
41025// Create: Creates a new return policy.
41026//
41027// - merchantId: The id of the merchant for which to retrieve the return
41028//   policy online object.
41029func (r *ReturnpolicyonlineService) Create(merchantId int64, returnpolicyonline *ReturnPolicyOnline) *ReturnpolicyonlineCreateCall {
41030	c := &ReturnpolicyonlineCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
41031	c.merchantId = merchantId
41032	c.returnpolicyonline = returnpolicyonline
41033	return c
41034}
41035
41036// Fields allows partial responses to be retrieved. See
41037// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
41038// for more information.
41039func (c *ReturnpolicyonlineCreateCall) Fields(s ...googleapi.Field) *ReturnpolicyonlineCreateCall {
41040	c.urlParams_.Set("fields", googleapi.CombineFields(s))
41041	return c
41042}
41043
41044// Context sets the context to be used in this call's Do method. Any
41045// pending HTTP request will be aborted if the provided context is
41046// canceled.
41047func (c *ReturnpolicyonlineCreateCall) Context(ctx context.Context) *ReturnpolicyonlineCreateCall {
41048	c.ctx_ = ctx
41049	return c
41050}
41051
41052// Header returns an http.Header that can be modified by the caller to
41053// add HTTP headers to the request.
41054func (c *ReturnpolicyonlineCreateCall) Header() http.Header {
41055	if c.header_ == nil {
41056		c.header_ = make(http.Header)
41057	}
41058	return c.header_
41059}
41060
41061func (c *ReturnpolicyonlineCreateCall) doRequest(alt string) (*http.Response, error) {
41062	reqHeaders := make(http.Header)
41063	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
41064	for k, v := range c.header_ {
41065		reqHeaders[k] = v
41066	}
41067	reqHeaders.Set("User-Agent", c.s.userAgent())
41068	var body io.Reader = nil
41069	body, err := googleapi.WithoutDataWrapper.JSONReader(c.returnpolicyonline)
41070	if err != nil {
41071		return nil, err
41072	}
41073	reqHeaders.Set("Content-Type", "application/json")
41074	c.urlParams_.Set("alt", alt)
41075	c.urlParams_.Set("prettyPrint", "false")
41076	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicyonline")
41077	urls += "?" + c.urlParams_.Encode()
41078	req, err := http.NewRequest("POST", urls, body)
41079	if err != nil {
41080		return nil, err
41081	}
41082	req.Header = reqHeaders
41083	googleapi.Expand(req.URL, map[string]string{
41084		"merchantId": strconv.FormatInt(c.merchantId, 10),
41085	})
41086	return gensupport.SendRequest(c.ctx_, c.s.client, req)
41087}
41088
41089// Do executes the "content.returnpolicyonline.create" call.
41090// Exactly one of *ReturnPolicyOnline or error will be non-nil. Any
41091// non-2xx status code is an error. Response headers are in either
41092// *ReturnPolicyOnline.ServerResponse.Header or (if a response was
41093// returned at all) in error.(*googleapi.Error).Header. Use
41094// googleapi.IsNotModified to check whether the returned error was
41095// because http.StatusNotModified was returned.
41096func (c *ReturnpolicyonlineCreateCall) Do(opts ...googleapi.CallOption) (*ReturnPolicyOnline, error) {
41097	gensupport.SetOptions(c.urlParams_, opts...)
41098	res, err := c.doRequest("json")
41099	if res != nil && res.StatusCode == http.StatusNotModified {
41100		if res.Body != nil {
41101			res.Body.Close()
41102		}
41103		return nil, &googleapi.Error{
41104			Code:   res.StatusCode,
41105			Header: res.Header,
41106		}
41107	}
41108	if err != nil {
41109		return nil, err
41110	}
41111	defer googleapi.CloseBody(res)
41112	if err := googleapi.CheckResponse(res); err != nil {
41113		return nil, err
41114	}
41115	ret := &ReturnPolicyOnline{
41116		ServerResponse: googleapi.ServerResponse{
41117			Header:         res.Header,
41118			HTTPStatusCode: res.StatusCode,
41119		},
41120	}
41121	target := &ret
41122	if err := gensupport.DecodeResponse(target, res); err != nil {
41123		return nil, err
41124	}
41125	return ret, nil
41126	// {
41127	//   "description": "Creates a new return policy.",
41128	//   "flatPath": "{merchantId}/returnpolicyonline",
41129	//   "httpMethod": "POST",
41130	//   "id": "content.returnpolicyonline.create",
41131	//   "parameterOrder": [
41132	//     "merchantId"
41133	//   ],
41134	//   "parameters": {
41135	//     "merchantId": {
41136	//       "description": "Required. The id of the merchant for which to retrieve the return policy online object.",
41137	//       "format": "int64",
41138	//       "location": "path",
41139	//       "required": true,
41140	//       "type": "string"
41141	//     }
41142	//   },
41143	//   "path": "{merchantId}/returnpolicyonline",
41144	//   "request": {
41145	//     "$ref": "ReturnPolicyOnline"
41146	//   },
41147	//   "response": {
41148	//     "$ref": "ReturnPolicyOnline"
41149	//   },
41150	//   "scopes": [
41151	//     "https://www.googleapis.com/auth/content"
41152	//   ]
41153	// }
41154
41155}
41156
41157// method id "content.returnpolicyonline.delete":
41158
41159type ReturnpolicyonlineDeleteCall struct {
41160	s              *APIService
41161	merchantId     int64
41162	returnPolicyId string
41163	urlParams_     gensupport.URLParams
41164	ctx_           context.Context
41165	header_        http.Header
41166}
41167
41168// Delete: Deletes an existing return policy.
41169//
41170// - merchantId: The id of the merchant for which to retrieve the return
41171//   policy online object.
41172// - returnPolicyId: The id of the return policy to delete.
41173func (r *ReturnpolicyonlineService) Delete(merchantId int64, returnPolicyId string) *ReturnpolicyonlineDeleteCall {
41174	c := &ReturnpolicyonlineDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
41175	c.merchantId = merchantId
41176	c.returnPolicyId = returnPolicyId
41177	return c
41178}
41179
41180// Fields allows partial responses to be retrieved. See
41181// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
41182// for more information.
41183func (c *ReturnpolicyonlineDeleteCall) Fields(s ...googleapi.Field) *ReturnpolicyonlineDeleteCall {
41184	c.urlParams_.Set("fields", googleapi.CombineFields(s))
41185	return c
41186}
41187
41188// Context sets the context to be used in this call's Do method. Any
41189// pending HTTP request will be aborted if the provided context is
41190// canceled.
41191func (c *ReturnpolicyonlineDeleteCall) Context(ctx context.Context) *ReturnpolicyonlineDeleteCall {
41192	c.ctx_ = ctx
41193	return c
41194}
41195
41196// Header returns an http.Header that can be modified by the caller to
41197// add HTTP headers to the request.
41198func (c *ReturnpolicyonlineDeleteCall) Header() http.Header {
41199	if c.header_ == nil {
41200		c.header_ = make(http.Header)
41201	}
41202	return c.header_
41203}
41204
41205func (c *ReturnpolicyonlineDeleteCall) doRequest(alt string) (*http.Response, error) {
41206	reqHeaders := make(http.Header)
41207	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
41208	for k, v := range c.header_ {
41209		reqHeaders[k] = v
41210	}
41211	reqHeaders.Set("User-Agent", c.s.userAgent())
41212	var body io.Reader = nil
41213	c.urlParams_.Set("alt", alt)
41214	c.urlParams_.Set("prettyPrint", "false")
41215	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicyonline/{returnPolicyId}")
41216	urls += "?" + c.urlParams_.Encode()
41217	req, err := http.NewRequest("DELETE", urls, body)
41218	if err != nil {
41219		return nil, err
41220	}
41221	req.Header = reqHeaders
41222	googleapi.Expand(req.URL, map[string]string{
41223		"merchantId":     strconv.FormatInt(c.merchantId, 10),
41224		"returnPolicyId": c.returnPolicyId,
41225	})
41226	return gensupport.SendRequest(c.ctx_, c.s.client, req)
41227}
41228
41229// Do executes the "content.returnpolicyonline.delete" call.
41230func (c *ReturnpolicyonlineDeleteCall) Do(opts ...googleapi.CallOption) error {
41231	gensupport.SetOptions(c.urlParams_, opts...)
41232	res, err := c.doRequest("json")
41233	if err != nil {
41234		return err
41235	}
41236	defer googleapi.CloseBody(res)
41237	if err := googleapi.CheckResponse(res); err != nil {
41238		return err
41239	}
41240	return nil
41241	// {
41242	//   "description": "Deletes an existing return policy.",
41243	//   "flatPath": "{merchantId}/returnpolicyonline/{returnPolicyId}",
41244	//   "httpMethod": "DELETE",
41245	//   "id": "content.returnpolicyonline.delete",
41246	//   "parameterOrder": [
41247	//     "merchantId",
41248	//     "returnPolicyId"
41249	//   ],
41250	//   "parameters": {
41251	//     "merchantId": {
41252	//       "description": "Required. The id of the merchant for which to retrieve the return policy online object.",
41253	//       "format": "int64",
41254	//       "location": "path",
41255	//       "required": true,
41256	//       "type": "string"
41257	//     },
41258	//     "returnPolicyId": {
41259	//       "description": "Required. The id of the return policy to delete.",
41260	//       "location": "path",
41261	//       "required": true,
41262	//       "type": "string"
41263	//     }
41264	//   },
41265	//   "path": "{merchantId}/returnpolicyonline/{returnPolicyId}",
41266	//   "scopes": [
41267	//     "https://www.googleapis.com/auth/content"
41268	//   ]
41269	// }
41270
41271}
41272
41273// method id "content.returnpolicyonline.get":
41274
41275type ReturnpolicyonlineGetCall struct {
41276	s              *APIService
41277	merchantId     int64
41278	returnPolicyId string
41279	urlParams_     gensupport.URLParams
41280	ifNoneMatch_   string
41281	ctx_           context.Context
41282	header_        http.Header
41283}
41284
41285// Get: Gets an existing return policy.
41286//
41287// - merchantId: The id of the merchant for which to retrieve the return
41288//   policy online object.
41289// - returnPolicyId: The id of the return policy to retrieve.
41290func (r *ReturnpolicyonlineService) Get(merchantId int64, returnPolicyId string) *ReturnpolicyonlineGetCall {
41291	c := &ReturnpolicyonlineGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
41292	c.merchantId = merchantId
41293	c.returnPolicyId = returnPolicyId
41294	return c
41295}
41296
41297// Fields allows partial responses to be retrieved. See
41298// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
41299// for more information.
41300func (c *ReturnpolicyonlineGetCall) Fields(s ...googleapi.Field) *ReturnpolicyonlineGetCall {
41301	c.urlParams_.Set("fields", googleapi.CombineFields(s))
41302	return c
41303}
41304
41305// IfNoneMatch sets the optional parameter which makes the operation
41306// fail if the object's ETag matches the given value. This is useful for
41307// getting updates only after the object has changed since the last
41308// request. Use googleapi.IsNotModified to check whether the response
41309// error from Do is the result of In-None-Match.
41310func (c *ReturnpolicyonlineGetCall) IfNoneMatch(entityTag string) *ReturnpolicyonlineGetCall {
41311	c.ifNoneMatch_ = entityTag
41312	return c
41313}
41314
41315// Context sets the context to be used in this call's Do method. Any
41316// pending HTTP request will be aborted if the provided context is
41317// canceled.
41318func (c *ReturnpolicyonlineGetCall) Context(ctx context.Context) *ReturnpolicyonlineGetCall {
41319	c.ctx_ = ctx
41320	return c
41321}
41322
41323// Header returns an http.Header that can be modified by the caller to
41324// add HTTP headers to the request.
41325func (c *ReturnpolicyonlineGetCall) Header() http.Header {
41326	if c.header_ == nil {
41327		c.header_ = make(http.Header)
41328	}
41329	return c.header_
41330}
41331
41332func (c *ReturnpolicyonlineGetCall) doRequest(alt string) (*http.Response, error) {
41333	reqHeaders := make(http.Header)
41334	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
41335	for k, v := range c.header_ {
41336		reqHeaders[k] = v
41337	}
41338	reqHeaders.Set("User-Agent", c.s.userAgent())
41339	if c.ifNoneMatch_ != "" {
41340		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
41341	}
41342	var body io.Reader = nil
41343	c.urlParams_.Set("alt", alt)
41344	c.urlParams_.Set("prettyPrint", "false")
41345	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicyonline/{returnPolicyId}")
41346	urls += "?" + c.urlParams_.Encode()
41347	req, err := http.NewRequest("GET", urls, body)
41348	if err != nil {
41349		return nil, err
41350	}
41351	req.Header = reqHeaders
41352	googleapi.Expand(req.URL, map[string]string{
41353		"merchantId":     strconv.FormatInt(c.merchantId, 10),
41354		"returnPolicyId": c.returnPolicyId,
41355	})
41356	return gensupport.SendRequest(c.ctx_, c.s.client, req)
41357}
41358
41359// Do executes the "content.returnpolicyonline.get" call.
41360// Exactly one of *ReturnPolicyOnline or error will be non-nil. Any
41361// non-2xx status code is an error. Response headers are in either
41362// *ReturnPolicyOnline.ServerResponse.Header or (if a response was
41363// returned at all) in error.(*googleapi.Error).Header. Use
41364// googleapi.IsNotModified to check whether the returned error was
41365// because http.StatusNotModified was returned.
41366func (c *ReturnpolicyonlineGetCall) Do(opts ...googleapi.CallOption) (*ReturnPolicyOnline, error) {
41367	gensupport.SetOptions(c.urlParams_, opts...)
41368	res, err := c.doRequest("json")
41369	if res != nil && res.StatusCode == http.StatusNotModified {
41370		if res.Body != nil {
41371			res.Body.Close()
41372		}
41373		return nil, &googleapi.Error{
41374			Code:   res.StatusCode,
41375			Header: res.Header,
41376		}
41377	}
41378	if err != nil {
41379		return nil, err
41380	}
41381	defer googleapi.CloseBody(res)
41382	if err := googleapi.CheckResponse(res); err != nil {
41383		return nil, err
41384	}
41385	ret := &ReturnPolicyOnline{
41386		ServerResponse: googleapi.ServerResponse{
41387			Header:         res.Header,
41388			HTTPStatusCode: res.StatusCode,
41389		},
41390	}
41391	target := &ret
41392	if err := gensupport.DecodeResponse(target, res); err != nil {
41393		return nil, err
41394	}
41395	return ret, nil
41396	// {
41397	//   "description": "Gets an existing return policy.",
41398	//   "flatPath": "{merchantId}/returnpolicyonline/{returnPolicyId}",
41399	//   "httpMethod": "GET",
41400	//   "id": "content.returnpolicyonline.get",
41401	//   "parameterOrder": [
41402	//     "merchantId",
41403	//     "returnPolicyId"
41404	//   ],
41405	//   "parameters": {
41406	//     "merchantId": {
41407	//       "description": "Required. The id of the merchant for which to retrieve the return policy online object.",
41408	//       "format": "int64",
41409	//       "location": "path",
41410	//       "required": true,
41411	//       "type": "string"
41412	//     },
41413	//     "returnPolicyId": {
41414	//       "description": "Required. The id of the return policy to retrieve.",
41415	//       "location": "path",
41416	//       "required": true,
41417	//       "type": "string"
41418	//     }
41419	//   },
41420	//   "path": "{merchantId}/returnpolicyonline/{returnPolicyId}",
41421	//   "response": {
41422	//     "$ref": "ReturnPolicyOnline"
41423	//   },
41424	//   "scopes": [
41425	//     "https://www.googleapis.com/auth/content"
41426	//   ]
41427	// }
41428
41429}
41430
41431// method id "content.returnpolicyonline.list":
41432
41433type ReturnpolicyonlineListCall struct {
41434	s            *APIService
41435	merchantId   int64
41436	urlParams_   gensupport.URLParams
41437	ifNoneMatch_ string
41438	ctx_         context.Context
41439	header_      http.Header
41440}
41441
41442// List: Lists all existing return policies.
41443//
41444// - merchantId: The id of the merchant for which to retrieve the return
41445//   policy online object.
41446func (r *ReturnpolicyonlineService) List(merchantId int64) *ReturnpolicyonlineListCall {
41447	c := &ReturnpolicyonlineListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
41448	c.merchantId = merchantId
41449	return c
41450}
41451
41452// Fields allows partial responses to be retrieved. See
41453// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
41454// for more information.
41455func (c *ReturnpolicyonlineListCall) Fields(s ...googleapi.Field) *ReturnpolicyonlineListCall {
41456	c.urlParams_.Set("fields", googleapi.CombineFields(s))
41457	return c
41458}
41459
41460// IfNoneMatch sets the optional parameter which makes the operation
41461// fail if the object's ETag matches the given value. This is useful for
41462// getting updates only after the object has changed since the last
41463// request. Use googleapi.IsNotModified to check whether the response
41464// error from Do is the result of In-None-Match.
41465func (c *ReturnpolicyonlineListCall) IfNoneMatch(entityTag string) *ReturnpolicyonlineListCall {
41466	c.ifNoneMatch_ = entityTag
41467	return c
41468}
41469
41470// Context sets the context to be used in this call's Do method. Any
41471// pending HTTP request will be aborted if the provided context is
41472// canceled.
41473func (c *ReturnpolicyonlineListCall) Context(ctx context.Context) *ReturnpolicyonlineListCall {
41474	c.ctx_ = ctx
41475	return c
41476}
41477
41478// Header returns an http.Header that can be modified by the caller to
41479// add HTTP headers to the request.
41480func (c *ReturnpolicyonlineListCall) Header() http.Header {
41481	if c.header_ == nil {
41482		c.header_ = make(http.Header)
41483	}
41484	return c.header_
41485}
41486
41487func (c *ReturnpolicyonlineListCall) doRequest(alt string) (*http.Response, error) {
41488	reqHeaders := make(http.Header)
41489	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
41490	for k, v := range c.header_ {
41491		reqHeaders[k] = v
41492	}
41493	reqHeaders.Set("User-Agent", c.s.userAgent())
41494	if c.ifNoneMatch_ != "" {
41495		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
41496	}
41497	var body io.Reader = nil
41498	c.urlParams_.Set("alt", alt)
41499	c.urlParams_.Set("prettyPrint", "false")
41500	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicyonline")
41501	urls += "?" + c.urlParams_.Encode()
41502	req, err := http.NewRequest("GET", urls, body)
41503	if err != nil {
41504		return nil, err
41505	}
41506	req.Header = reqHeaders
41507	googleapi.Expand(req.URL, map[string]string{
41508		"merchantId": strconv.FormatInt(c.merchantId, 10),
41509	})
41510	return gensupport.SendRequest(c.ctx_, c.s.client, req)
41511}
41512
41513// Do executes the "content.returnpolicyonline.list" call.
41514// Exactly one of *ListReturnPolicyOnlineResponse or error will be
41515// non-nil. Any non-2xx status code is an error. Response headers are in
41516// either *ListReturnPolicyOnlineResponse.ServerResponse.Header or (if a
41517// response was returned at all) in error.(*googleapi.Error).Header. Use
41518// googleapi.IsNotModified to check whether the returned error was
41519// because http.StatusNotModified was returned.
41520func (c *ReturnpolicyonlineListCall) Do(opts ...googleapi.CallOption) (*ListReturnPolicyOnlineResponse, error) {
41521	gensupport.SetOptions(c.urlParams_, opts...)
41522	res, err := c.doRequest("json")
41523	if res != nil && res.StatusCode == http.StatusNotModified {
41524		if res.Body != nil {
41525			res.Body.Close()
41526		}
41527		return nil, &googleapi.Error{
41528			Code:   res.StatusCode,
41529			Header: res.Header,
41530		}
41531	}
41532	if err != nil {
41533		return nil, err
41534	}
41535	defer googleapi.CloseBody(res)
41536	if err := googleapi.CheckResponse(res); err != nil {
41537		return nil, err
41538	}
41539	ret := &ListReturnPolicyOnlineResponse{
41540		ServerResponse: googleapi.ServerResponse{
41541			Header:         res.Header,
41542			HTTPStatusCode: res.StatusCode,
41543		},
41544	}
41545	target := &ret
41546	if err := gensupport.DecodeResponse(target, res); err != nil {
41547		return nil, err
41548	}
41549	return ret, nil
41550	// {
41551	//   "description": "Lists all existing return policies.",
41552	//   "flatPath": "{merchantId}/returnpolicyonline",
41553	//   "httpMethod": "GET",
41554	//   "id": "content.returnpolicyonline.list",
41555	//   "parameterOrder": [
41556	//     "merchantId"
41557	//   ],
41558	//   "parameters": {
41559	//     "merchantId": {
41560	//       "description": "Required. The id of the merchant for which to retrieve the return policy online object.",
41561	//       "format": "int64",
41562	//       "location": "path",
41563	//       "required": true,
41564	//       "type": "string"
41565	//     }
41566	//   },
41567	//   "path": "{merchantId}/returnpolicyonline",
41568	//   "response": {
41569	//     "$ref": "ListReturnPolicyOnlineResponse"
41570	//   },
41571	//   "scopes": [
41572	//     "https://www.googleapis.com/auth/content"
41573	//   ]
41574	// }
41575
41576}
41577
41578// method id "content.returnpolicyonline.patch":
41579
41580type ReturnpolicyonlinePatchCall struct {
41581	s                  *APIService
41582	merchantId         int64
41583	returnPolicyId     string
41584	returnpolicyonline *ReturnPolicyOnline
41585	urlParams_         gensupport.URLParams
41586	ctx_               context.Context
41587	header_            http.Header
41588}
41589
41590// Patch: Updates an existing return policy.
41591//
41592// - merchantId: The id of the merchant for which to retrieve the return
41593//   policy online object.
41594// - returnPolicyId: The id of the return policy to update.
41595func (r *ReturnpolicyonlineService) Patch(merchantId int64, returnPolicyId string, returnpolicyonline *ReturnPolicyOnline) *ReturnpolicyonlinePatchCall {
41596	c := &ReturnpolicyonlinePatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
41597	c.merchantId = merchantId
41598	c.returnPolicyId = returnPolicyId
41599	c.returnpolicyonline = returnpolicyonline
41600	return c
41601}
41602
41603// Fields allows partial responses to be retrieved. See
41604// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
41605// for more information.
41606func (c *ReturnpolicyonlinePatchCall) Fields(s ...googleapi.Field) *ReturnpolicyonlinePatchCall {
41607	c.urlParams_.Set("fields", googleapi.CombineFields(s))
41608	return c
41609}
41610
41611// Context sets the context to be used in this call's Do method. Any
41612// pending HTTP request will be aborted if the provided context is
41613// canceled.
41614func (c *ReturnpolicyonlinePatchCall) Context(ctx context.Context) *ReturnpolicyonlinePatchCall {
41615	c.ctx_ = ctx
41616	return c
41617}
41618
41619// Header returns an http.Header that can be modified by the caller to
41620// add HTTP headers to the request.
41621func (c *ReturnpolicyonlinePatchCall) Header() http.Header {
41622	if c.header_ == nil {
41623		c.header_ = make(http.Header)
41624	}
41625	return c.header_
41626}
41627
41628func (c *ReturnpolicyonlinePatchCall) doRequest(alt string) (*http.Response, error) {
41629	reqHeaders := make(http.Header)
41630	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
41631	for k, v := range c.header_ {
41632		reqHeaders[k] = v
41633	}
41634	reqHeaders.Set("User-Agent", c.s.userAgent())
41635	var body io.Reader = nil
41636	body, err := googleapi.WithoutDataWrapper.JSONReader(c.returnpolicyonline)
41637	if err != nil {
41638		return nil, err
41639	}
41640	reqHeaders.Set("Content-Type", "application/json")
41641	c.urlParams_.Set("alt", alt)
41642	c.urlParams_.Set("prettyPrint", "false")
41643	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/returnpolicyonline/{returnPolicyId}")
41644	urls += "?" + c.urlParams_.Encode()
41645	req, err := http.NewRequest("PATCH", urls, body)
41646	if err != nil {
41647		return nil, err
41648	}
41649	req.Header = reqHeaders
41650	googleapi.Expand(req.URL, map[string]string{
41651		"merchantId":     strconv.FormatInt(c.merchantId, 10),
41652		"returnPolicyId": c.returnPolicyId,
41653	})
41654	return gensupport.SendRequest(c.ctx_, c.s.client, req)
41655}
41656
41657// Do executes the "content.returnpolicyonline.patch" call.
41658// Exactly one of *ReturnPolicyOnline or error will be non-nil. Any
41659// non-2xx status code is an error. Response headers are in either
41660// *ReturnPolicyOnline.ServerResponse.Header or (if a response was
41661// returned at all) in error.(*googleapi.Error).Header. Use
41662// googleapi.IsNotModified to check whether the returned error was
41663// because http.StatusNotModified was returned.
41664func (c *ReturnpolicyonlinePatchCall) Do(opts ...googleapi.CallOption) (*ReturnPolicyOnline, error) {
41665	gensupport.SetOptions(c.urlParams_, opts...)
41666	res, err := c.doRequest("json")
41667	if res != nil && res.StatusCode == http.StatusNotModified {
41668		if res.Body != nil {
41669			res.Body.Close()
41670		}
41671		return nil, &googleapi.Error{
41672			Code:   res.StatusCode,
41673			Header: res.Header,
41674		}
41675	}
41676	if err != nil {
41677		return nil, err
41678	}
41679	defer googleapi.CloseBody(res)
41680	if err := googleapi.CheckResponse(res); err != nil {
41681		return nil, err
41682	}
41683	ret := &ReturnPolicyOnline{
41684		ServerResponse: googleapi.ServerResponse{
41685			Header:         res.Header,
41686			HTTPStatusCode: res.StatusCode,
41687		},
41688	}
41689	target := &ret
41690	if err := gensupport.DecodeResponse(target, res); err != nil {
41691		return nil, err
41692	}
41693	return ret, nil
41694	// {
41695	//   "description": "Updates an existing return policy.",
41696	//   "flatPath": "{merchantId}/returnpolicyonline/{returnPolicyId}",
41697	//   "httpMethod": "PATCH",
41698	//   "id": "content.returnpolicyonline.patch",
41699	//   "parameterOrder": [
41700	//     "merchantId",
41701	//     "returnPolicyId"
41702	//   ],
41703	//   "parameters": {
41704	//     "merchantId": {
41705	//       "description": "Required. The id of the merchant for which to retrieve the return policy online object.",
41706	//       "format": "int64",
41707	//       "location": "path",
41708	//       "required": true,
41709	//       "type": "string"
41710	//     },
41711	//     "returnPolicyId": {
41712	//       "description": "Required. The id of the return policy to update.",
41713	//       "location": "path",
41714	//       "required": true,
41715	//       "type": "string"
41716	//     }
41717	//   },
41718	//   "path": "{merchantId}/returnpolicyonline/{returnPolicyId}",
41719	//   "request": {
41720	//     "$ref": "ReturnPolicyOnline"
41721	//   },
41722	//   "response": {
41723	//     "$ref": "ReturnPolicyOnline"
41724	//   },
41725	//   "scopes": [
41726	//     "https://www.googleapis.com/auth/content"
41727	//   ]
41728	// }
41729
41730}
41731
41732// method id "content.settlementreports.get":
41733
41734type SettlementreportsGetCall struct {
41735	s            *APIService
41736	merchantId   uint64
41737	settlementId string
41738	urlParams_   gensupport.URLParams
41739	ifNoneMatch_ string
41740	ctx_         context.Context
41741	header_      http.Header
41742}
41743
41744// Get: Retrieves a settlement report from your Merchant Center account.
41745//
41746// - merchantId: The Merchant Center account of the settlement report.
41747// - settlementId: The Google-provided ID of the settlement.
41748func (r *SettlementreportsService) Get(merchantId uint64, settlementId string) *SettlementreportsGetCall {
41749	c := &SettlementreportsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
41750	c.merchantId = merchantId
41751	c.settlementId = settlementId
41752	return c
41753}
41754
41755// Fields allows partial responses to be retrieved. See
41756// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
41757// for more information.
41758func (c *SettlementreportsGetCall) Fields(s ...googleapi.Field) *SettlementreportsGetCall {
41759	c.urlParams_.Set("fields", googleapi.CombineFields(s))
41760	return c
41761}
41762
41763// IfNoneMatch sets the optional parameter which makes the operation
41764// fail if the object's ETag matches the given value. This is useful for
41765// getting updates only after the object has changed since the last
41766// request. Use googleapi.IsNotModified to check whether the response
41767// error from Do is the result of In-None-Match.
41768func (c *SettlementreportsGetCall) IfNoneMatch(entityTag string) *SettlementreportsGetCall {
41769	c.ifNoneMatch_ = entityTag
41770	return c
41771}
41772
41773// Context sets the context to be used in this call's Do method. Any
41774// pending HTTP request will be aborted if the provided context is
41775// canceled.
41776func (c *SettlementreportsGetCall) Context(ctx context.Context) *SettlementreportsGetCall {
41777	c.ctx_ = ctx
41778	return c
41779}
41780
41781// Header returns an http.Header that can be modified by the caller to
41782// add HTTP headers to the request.
41783func (c *SettlementreportsGetCall) Header() http.Header {
41784	if c.header_ == nil {
41785		c.header_ = make(http.Header)
41786	}
41787	return c.header_
41788}
41789
41790func (c *SettlementreportsGetCall) doRequest(alt string) (*http.Response, error) {
41791	reqHeaders := make(http.Header)
41792	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
41793	for k, v := range c.header_ {
41794		reqHeaders[k] = v
41795	}
41796	reqHeaders.Set("User-Agent", c.s.userAgent())
41797	if c.ifNoneMatch_ != "" {
41798		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
41799	}
41800	var body io.Reader = nil
41801	c.urlParams_.Set("alt", alt)
41802	c.urlParams_.Set("prettyPrint", "false")
41803	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/settlementreports/{settlementId}")
41804	urls += "?" + c.urlParams_.Encode()
41805	req, err := http.NewRequest("GET", urls, body)
41806	if err != nil {
41807		return nil, err
41808	}
41809	req.Header = reqHeaders
41810	googleapi.Expand(req.URL, map[string]string{
41811		"merchantId":   strconv.FormatUint(c.merchantId, 10),
41812		"settlementId": c.settlementId,
41813	})
41814	return gensupport.SendRequest(c.ctx_, c.s.client, req)
41815}
41816
41817// Do executes the "content.settlementreports.get" call.
41818// Exactly one of *SettlementReport or error will be non-nil. Any
41819// non-2xx status code is an error. Response headers are in either
41820// *SettlementReport.ServerResponse.Header or (if a response was
41821// returned at all) in error.(*googleapi.Error).Header. Use
41822// googleapi.IsNotModified to check whether the returned error was
41823// because http.StatusNotModified was returned.
41824func (c *SettlementreportsGetCall) Do(opts ...googleapi.CallOption) (*SettlementReport, error) {
41825	gensupport.SetOptions(c.urlParams_, opts...)
41826	res, err := c.doRequest("json")
41827	if res != nil && res.StatusCode == http.StatusNotModified {
41828		if res.Body != nil {
41829			res.Body.Close()
41830		}
41831		return nil, &googleapi.Error{
41832			Code:   res.StatusCode,
41833			Header: res.Header,
41834		}
41835	}
41836	if err != nil {
41837		return nil, err
41838	}
41839	defer googleapi.CloseBody(res)
41840	if err := googleapi.CheckResponse(res); err != nil {
41841		return nil, err
41842	}
41843	ret := &SettlementReport{
41844		ServerResponse: googleapi.ServerResponse{
41845			Header:         res.Header,
41846			HTTPStatusCode: res.StatusCode,
41847		},
41848	}
41849	target := &ret
41850	if err := gensupport.DecodeResponse(target, res); err != nil {
41851		return nil, err
41852	}
41853	return ret, nil
41854	// {
41855	//   "description": "Retrieves a settlement report from your Merchant Center account.",
41856	//   "flatPath": "{merchantId}/settlementreports/{settlementId}",
41857	//   "httpMethod": "GET",
41858	//   "id": "content.settlementreports.get",
41859	//   "parameterOrder": [
41860	//     "merchantId",
41861	//     "settlementId"
41862	//   ],
41863	//   "parameters": {
41864	//     "merchantId": {
41865	//       "description": "The Merchant Center account of the settlement report.",
41866	//       "format": "uint64",
41867	//       "location": "path",
41868	//       "required": true,
41869	//       "type": "string"
41870	//     },
41871	//     "settlementId": {
41872	//       "description": "The Google-provided ID of the settlement.",
41873	//       "location": "path",
41874	//       "required": true,
41875	//       "type": "string"
41876	//     }
41877	//   },
41878	//   "path": "{merchantId}/settlementreports/{settlementId}",
41879	//   "response": {
41880	//     "$ref": "SettlementReport"
41881	//   },
41882	//   "scopes": [
41883	//     "https://www.googleapis.com/auth/content"
41884	//   ]
41885	// }
41886
41887}
41888
41889// method id "content.settlementreports.list":
41890
41891type SettlementreportsListCall struct {
41892	s            *APIService
41893	merchantId   uint64
41894	urlParams_   gensupport.URLParams
41895	ifNoneMatch_ string
41896	ctx_         context.Context
41897	header_      http.Header
41898}
41899
41900// List: Retrieves a list of settlement reports from your Merchant
41901// Center account.
41902//
41903// - merchantId: The Merchant Center account to list settlements for.
41904func (r *SettlementreportsService) List(merchantId uint64) *SettlementreportsListCall {
41905	c := &SettlementreportsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
41906	c.merchantId = merchantId
41907	return c
41908}
41909
41910// MaxResults sets the optional parameter "maxResults": The maximum
41911// number of settlements to return in the response, used for paging. The
41912// default value is 200 returns per page, and the maximum allowed value
41913// is 5000 returns per page.
41914func (c *SettlementreportsListCall) MaxResults(maxResults int64) *SettlementreportsListCall {
41915	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
41916	return c
41917}
41918
41919// PageToken sets the optional parameter "pageToken": The token returned
41920// by the previous request.
41921func (c *SettlementreportsListCall) PageToken(pageToken string) *SettlementreportsListCall {
41922	c.urlParams_.Set("pageToken", pageToken)
41923	return c
41924}
41925
41926// TransferEndDate sets the optional parameter "transferEndDate":
41927// Obtains settlements which have transactions before this date
41928// (inclusively), in ISO 8601 format.
41929func (c *SettlementreportsListCall) TransferEndDate(transferEndDate string) *SettlementreportsListCall {
41930	c.urlParams_.Set("transferEndDate", transferEndDate)
41931	return c
41932}
41933
41934// TransferStartDate sets the optional parameter "transferStartDate":
41935// Obtains settlements which have transactions after this date
41936// (inclusively), in ISO 8601 format.
41937func (c *SettlementreportsListCall) TransferStartDate(transferStartDate string) *SettlementreportsListCall {
41938	c.urlParams_.Set("transferStartDate", transferStartDate)
41939	return c
41940}
41941
41942// Fields allows partial responses to be retrieved. See
41943// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
41944// for more information.
41945func (c *SettlementreportsListCall) Fields(s ...googleapi.Field) *SettlementreportsListCall {
41946	c.urlParams_.Set("fields", googleapi.CombineFields(s))
41947	return c
41948}
41949
41950// IfNoneMatch sets the optional parameter which makes the operation
41951// fail if the object's ETag matches the given value. This is useful for
41952// getting updates only after the object has changed since the last
41953// request. Use googleapi.IsNotModified to check whether the response
41954// error from Do is the result of In-None-Match.
41955func (c *SettlementreportsListCall) IfNoneMatch(entityTag string) *SettlementreportsListCall {
41956	c.ifNoneMatch_ = entityTag
41957	return c
41958}
41959
41960// Context sets the context to be used in this call's Do method. Any
41961// pending HTTP request will be aborted if the provided context is
41962// canceled.
41963func (c *SettlementreportsListCall) Context(ctx context.Context) *SettlementreportsListCall {
41964	c.ctx_ = ctx
41965	return c
41966}
41967
41968// Header returns an http.Header that can be modified by the caller to
41969// add HTTP headers to the request.
41970func (c *SettlementreportsListCall) Header() http.Header {
41971	if c.header_ == nil {
41972		c.header_ = make(http.Header)
41973	}
41974	return c.header_
41975}
41976
41977func (c *SettlementreportsListCall) doRequest(alt string) (*http.Response, error) {
41978	reqHeaders := make(http.Header)
41979	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
41980	for k, v := range c.header_ {
41981		reqHeaders[k] = v
41982	}
41983	reqHeaders.Set("User-Agent", c.s.userAgent())
41984	if c.ifNoneMatch_ != "" {
41985		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
41986	}
41987	var body io.Reader = nil
41988	c.urlParams_.Set("alt", alt)
41989	c.urlParams_.Set("prettyPrint", "false")
41990	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/settlementreports")
41991	urls += "?" + c.urlParams_.Encode()
41992	req, err := http.NewRequest("GET", urls, body)
41993	if err != nil {
41994		return nil, err
41995	}
41996	req.Header = reqHeaders
41997	googleapi.Expand(req.URL, map[string]string{
41998		"merchantId": strconv.FormatUint(c.merchantId, 10),
41999	})
42000	return gensupport.SendRequest(c.ctx_, c.s.client, req)
42001}
42002
42003// Do executes the "content.settlementreports.list" call.
42004// Exactly one of *SettlementreportsListResponse or error will be
42005// non-nil. Any non-2xx status code is an error. Response headers are in
42006// either *SettlementreportsListResponse.ServerResponse.Header or (if a
42007// response was returned at all) in error.(*googleapi.Error).Header. Use
42008// googleapi.IsNotModified to check whether the returned error was
42009// because http.StatusNotModified was returned.
42010func (c *SettlementreportsListCall) Do(opts ...googleapi.CallOption) (*SettlementreportsListResponse, error) {
42011	gensupport.SetOptions(c.urlParams_, opts...)
42012	res, err := c.doRequest("json")
42013	if res != nil && res.StatusCode == http.StatusNotModified {
42014		if res.Body != nil {
42015			res.Body.Close()
42016		}
42017		return nil, &googleapi.Error{
42018			Code:   res.StatusCode,
42019			Header: res.Header,
42020		}
42021	}
42022	if err != nil {
42023		return nil, err
42024	}
42025	defer googleapi.CloseBody(res)
42026	if err := googleapi.CheckResponse(res); err != nil {
42027		return nil, err
42028	}
42029	ret := &SettlementreportsListResponse{
42030		ServerResponse: googleapi.ServerResponse{
42031			Header:         res.Header,
42032			HTTPStatusCode: res.StatusCode,
42033		},
42034	}
42035	target := &ret
42036	if err := gensupport.DecodeResponse(target, res); err != nil {
42037		return nil, err
42038	}
42039	return ret, nil
42040	// {
42041	//   "description": "Retrieves a list of settlement reports from your Merchant Center account.",
42042	//   "flatPath": "{merchantId}/settlementreports",
42043	//   "httpMethod": "GET",
42044	//   "id": "content.settlementreports.list",
42045	//   "parameterOrder": [
42046	//     "merchantId"
42047	//   ],
42048	//   "parameters": {
42049	//     "maxResults": {
42050	//       "description": "The maximum number of settlements to return in the response, used for paging. The default value is 200 returns per page, and the maximum allowed value is 5000 returns per page.",
42051	//       "format": "uint32",
42052	//       "location": "query",
42053	//       "type": "integer"
42054	//     },
42055	//     "merchantId": {
42056	//       "description": "The Merchant Center account to list settlements for.",
42057	//       "format": "uint64",
42058	//       "location": "path",
42059	//       "required": true,
42060	//       "type": "string"
42061	//     },
42062	//     "pageToken": {
42063	//       "description": "The token returned by the previous request.",
42064	//       "location": "query",
42065	//       "type": "string"
42066	//     },
42067	//     "transferEndDate": {
42068	//       "description": "Obtains settlements which have transactions before this date (inclusively), in ISO 8601 format.",
42069	//       "location": "query",
42070	//       "type": "string"
42071	//     },
42072	//     "transferStartDate": {
42073	//       "description": "Obtains settlements which have transactions after this date (inclusively), in ISO 8601 format.",
42074	//       "location": "query",
42075	//       "type": "string"
42076	//     }
42077	//   },
42078	//   "path": "{merchantId}/settlementreports",
42079	//   "response": {
42080	//     "$ref": "SettlementreportsListResponse"
42081	//   },
42082	//   "scopes": [
42083	//     "https://www.googleapis.com/auth/content"
42084	//   ]
42085	// }
42086
42087}
42088
42089// Pages invokes f for each page of results.
42090// A non-nil error returned from f will halt the iteration.
42091// The provided context supersedes any context provided to the Context method.
42092func (c *SettlementreportsListCall) Pages(ctx context.Context, f func(*SettlementreportsListResponse) error) error {
42093	c.ctx_ = ctx
42094	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
42095	for {
42096		x, err := c.Do()
42097		if err != nil {
42098			return err
42099		}
42100		if err := f(x); err != nil {
42101			return err
42102		}
42103		if x.NextPageToken == "" {
42104			return nil
42105		}
42106		c.PageToken(x.NextPageToken)
42107	}
42108}
42109
42110// method id "content.settlementtransactions.list":
42111
42112type SettlementtransactionsListCall struct {
42113	s            *APIService
42114	merchantId   uint64
42115	settlementId string
42116	urlParams_   gensupport.URLParams
42117	ifNoneMatch_ string
42118	ctx_         context.Context
42119	header_      http.Header
42120}
42121
42122// List: Retrieves a list of transactions for the settlement.
42123//
42124// - merchantId: The Merchant Center account to list transactions for.
42125// - settlementId: The Google-provided ID of the settlement.
42126func (r *SettlementtransactionsService) List(merchantId uint64, settlementId string) *SettlementtransactionsListCall {
42127	c := &SettlementtransactionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
42128	c.merchantId = merchantId
42129	c.settlementId = settlementId
42130	return c
42131}
42132
42133// MaxResults sets the optional parameter "maxResults": The maximum
42134// number of transactions to return in the response, used for paging.
42135// The default value is 200 transactions per page, and the maximum
42136// allowed value is 5000 transactions per page.
42137func (c *SettlementtransactionsListCall) MaxResults(maxResults int64) *SettlementtransactionsListCall {
42138	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
42139	return c
42140}
42141
42142// PageToken sets the optional parameter "pageToken": The token returned
42143// by the previous request.
42144func (c *SettlementtransactionsListCall) PageToken(pageToken string) *SettlementtransactionsListCall {
42145	c.urlParams_.Set("pageToken", pageToken)
42146	return c
42147}
42148
42149// TransactionIds sets the optional parameter "transactionIds": The list
42150// of transactions to return. If not set, all transactions will be
42151// returned.
42152func (c *SettlementtransactionsListCall) TransactionIds(transactionIds ...string) *SettlementtransactionsListCall {
42153	c.urlParams_.SetMulti("transactionIds", append([]string{}, transactionIds...))
42154	return c
42155}
42156
42157// Fields allows partial responses to be retrieved. See
42158// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
42159// for more information.
42160func (c *SettlementtransactionsListCall) Fields(s ...googleapi.Field) *SettlementtransactionsListCall {
42161	c.urlParams_.Set("fields", googleapi.CombineFields(s))
42162	return c
42163}
42164
42165// IfNoneMatch sets the optional parameter which makes the operation
42166// fail if the object's ETag matches the given value. This is useful for
42167// getting updates only after the object has changed since the last
42168// request. Use googleapi.IsNotModified to check whether the response
42169// error from Do is the result of In-None-Match.
42170func (c *SettlementtransactionsListCall) IfNoneMatch(entityTag string) *SettlementtransactionsListCall {
42171	c.ifNoneMatch_ = entityTag
42172	return c
42173}
42174
42175// Context sets the context to be used in this call's Do method. Any
42176// pending HTTP request will be aborted if the provided context is
42177// canceled.
42178func (c *SettlementtransactionsListCall) Context(ctx context.Context) *SettlementtransactionsListCall {
42179	c.ctx_ = ctx
42180	return c
42181}
42182
42183// Header returns an http.Header that can be modified by the caller to
42184// add HTTP headers to the request.
42185func (c *SettlementtransactionsListCall) Header() http.Header {
42186	if c.header_ == nil {
42187		c.header_ = make(http.Header)
42188	}
42189	return c.header_
42190}
42191
42192func (c *SettlementtransactionsListCall) doRequest(alt string) (*http.Response, error) {
42193	reqHeaders := make(http.Header)
42194	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
42195	for k, v := range c.header_ {
42196		reqHeaders[k] = v
42197	}
42198	reqHeaders.Set("User-Agent", c.s.userAgent())
42199	if c.ifNoneMatch_ != "" {
42200		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
42201	}
42202	var body io.Reader = nil
42203	c.urlParams_.Set("alt", alt)
42204	c.urlParams_.Set("prettyPrint", "false")
42205	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/settlementreports/{settlementId}/transactions")
42206	urls += "?" + c.urlParams_.Encode()
42207	req, err := http.NewRequest("GET", urls, body)
42208	if err != nil {
42209		return nil, err
42210	}
42211	req.Header = reqHeaders
42212	googleapi.Expand(req.URL, map[string]string{
42213		"merchantId":   strconv.FormatUint(c.merchantId, 10),
42214		"settlementId": c.settlementId,
42215	})
42216	return gensupport.SendRequest(c.ctx_, c.s.client, req)
42217}
42218
42219// Do executes the "content.settlementtransactions.list" call.
42220// Exactly one of *SettlementtransactionsListResponse or error will be
42221// non-nil. Any non-2xx status code is an error. Response headers are in
42222// either *SettlementtransactionsListResponse.ServerResponse.Header or
42223// (if a response was returned at all) in
42224// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
42225// whether the returned error was because http.StatusNotModified was
42226// returned.
42227func (c *SettlementtransactionsListCall) Do(opts ...googleapi.CallOption) (*SettlementtransactionsListResponse, error) {
42228	gensupport.SetOptions(c.urlParams_, opts...)
42229	res, err := c.doRequest("json")
42230	if res != nil && res.StatusCode == http.StatusNotModified {
42231		if res.Body != nil {
42232			res.Body.Close()
42233		}
42234		return nil, &googleapi.Error{
42235			Code:   res.StatusCode,
42236			Header: res.Header,
42237		}
42238	}
42239	if err != nil {
42240		return nil, err
42241	}
42242	defer googleapi.CloseBody(res)
42243	if err := googleapi.CheckResponse(res); err != nil {
42244		return nil, err
42245	}
42246	ret := &SettlementtransactionsListResponse{
42247		ServerResponse: googleapi.ServerResponse{
42248			Header:         res.Header,
42249			HTTPStatusCode: res.StatusCode,
42250		},
42251	}
42252	target := &ret
42253	if err := gensupport.DecodeResponse(target, res); err != nil {
42254		return nil, err
42255	}
42256	return ret, nil
42257	// {
42258	//   "description": "Retrieves a list of transactions for the settlement.",
42259	//   "flatPath": "{merchantId}/settlementreports/{settlementId}/transactions",
42260	//   "httpMethod": "GET",
42261	//   "id": "content.settlementtransactions.list",
42262	//   "parameterOrder": [
42263	//     "merchantId",
42264	//     "settlementId"
42265	//   ],
42266	//   "parameters": {
42267	//     "maxResults": {
42268	//       "description": "The maximum number of transactions to return in the response, used for paging. The default value is 200 transactions per page, and the maximum allowed value is 5000 transactions per page.",
42269	//       "format": "uint32",
42270	//       "location": "query",
42271	//       "type": "integer"
42272	//     },
42273	//     "merchantId": {
42274	//       "description": "The Merchant Center account to list transactions for.",
42275	//       "format": "uint64",
42276	//       "location": "path",
42277	//       "required": true,
42278	//       "type": "string"
42279	//     },
42280	//     "pageToken": {
42281	//       "description": "The token returned by the previous request.",
42282	//       "location": "query",
42283	//       "type": "string"
42284	//     },
42285	//     "settlementId": {
42286	//       "description": "The Google-provided ID of the settlement.",
42287	//       "location": "path",
42288	//       "required": true,
42289	//       "type": "string"
42290	//     },
42291	//     "transactionIds": {
42292	//       "description": "The list of transactions to return. If not set, all transactions will be returned.",
42293	//       "location": "query",
42294	//       "repeated": true,
42295	//       "type": "string"
42296	//     }
42297	//   },
42298	//   "path": "{merchantId}/settlementreports/{settlementId}/transactions",
42299	//   "response": {
42300	//     "$ref": "SettlementtransactionsListResponse"
42301	//   },
42302	//   "scopes": [
42303	//     "https://www.googleapis.com/auth/content"
42304	//   ]
42305	// }
42306
42307}
42308
42309// Pages invokes f for each page of results.
42310// A non-nil error returned from f will halt the iteration.
42311// The provided context supersedes any context provided to the Context method.
42312func (c *SettlementtransactionsListCall) Pages(ctx context.Context, f func(*SettlementtransactionsListResponse) error) error {
42313	c.ctx_ = ctx
42314	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
42315	for {
42316		x, err := c.Do()
42317		if err != nil {
42318			return err
42319		}
42320		if err := f(x); err != nil {
42321			return err
42322		}
42323		if x.NextPageToken == "" {
42324			return nil
42325		}
42326		c.PageToken(x.NextPageToken)
42327	}
42328}
42329
42330// method id "content.shippingsettings.custombatch":
42331
42332type ShippingsettingsCustombatchCall struct {
42333	s                                  *APIService
42334	shippingsettingscustombatchrequest *ShippingsettingsCustomBatchRequest
42335	urlParams_                         gensupport.URLParams
42336	ctx_                               context.Context
42337	header_                            http.Header
42338}
42339
42340// Custombatch: Retrieves and updates the shipping settings of multiple
42341// accounts in a single request.
42342func (r *ShippingsettingsService) Custombatch(shippingsettingscustombatchrequest *ShippingsettingsCustomBatchRequest) *ShippingsettingsCustombatchCall {
42343	c := &ShippingsettingsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
42344	c.shippingsettingscustombatchrequest = shippingsettingscustombatchrequest
42345	return c
42346}
42347
42348// Fields allows partial responses to be retrieved. See
42349// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
42350// for more information.
42351func (c *ShippingsettingsCustombatchCall) Fields(s ...googleapi.Field) *ShippingsettingsCustombatchCall {
42352	c.urlParams_.Set("fields", googleapi.CombineFields(s))
42353	return c
42354}
42355
42356// Context sets the context to be used in this call's Do method. Any
42357// pending HTTP request will be aborted if the provided context is
42358// canceled.
42359func (c *ShippingsettingsCustombatchCall) Context(ctx context.Context) *ShippingsettingsCustombatchCall {
42360	c.ctx_ = ctx
42361	return c
42362}
42363
42364// Header returns an http.Header that can be modified by the caller to
42365// add HTTP headers to the request.
42366func (c *ShippingsettingsCustombatchCall) Header() http.Header {
42367	if c.header_ == nil {
42368		c.header_ = make(http.Header)
42369	}
42370	return c.header_
42371}
42372
42373func (c *ShippingsettingsCustombatchCall) doRequest(alt string) (*http.Response, error) {
42374	reqHeaders := make(http.Header)
42375	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
42376	for k, v := range c.header_ {
42377		reqHeaders[k] = v
42378	}
42379	reqHeaders.Set("User-Agent", c.s.userAgent())
42380	var body io.Reader = nil
42381	body, err := googleapi.WithoutDataWrapper.JSONReader(c.shippingsettingscustombatchrequest)
42382	if err != nil {
42383		return nil, err
42384	}
42385	reqHeaders.Set("Content-Type", "application/json")
42386	c.urlParams_.Set("alt", alt)
42387	c.urlParams_.Set("prettyPrint", "false")
42388	urls := googleapi.ResolveRelative(c.s.BasePath, "shippingsettings/batch")
42389	urls += "?" + c.urlParams_.Encode()
42390	req, err := http.NewRequest("POST", urls, body)
42391	if err != nil {
42392		return nil, err
42393	}
42394	req.Header = reqHeaders
42395	return gensupport.SendRequest(c.ctx_, c.s.client, req)
42396}
42397
42398// Do executes the "content.shippingsettings.custombatch" call.
42399// Exactly one of *ShippingsettingsCustomBatchResponse or error will be
42400// non-nil. Any non-2xx status code is an error. Response headers are in
42401// either *ShippingsettingsCustomBatchResponse.ServerResponse.Header or
42402// (if a response was returned at all) in
42403// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
42404// whether the returned error was because http.StatusNotModified was
42405// returned.
42406func (c *ShippingsettingsCustombatchCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsCustomBatchResponse, error) {
42407	gensupport.SetOptions(c.urlParams_, opts...)
42408	res, err := c.doRequest("json")
42409	if res != nil && res.StatusCode == http.StatusNotModified {
42410		if res.Body != nil {
42411			res.Body.Close()
42412		}
42413		return nil, &googleapi.Error{
42414			Code:   res.StatusCode,
42415			Header: res.Header,
42416		}
42417	}
42418	if err != nil {
42419		return nil, err
42420	}
42421	defer googleapi.CloseBody(res)
42422	if err := googleapi.CheckResponse(res); err != nil {
42423		return nil, err
42424	}
42425	ret := &ShippingsettingsCustomBatchResponse{
42426		ServerResponse: googleapi.ServerResponse{
42427			Header:         res.Header,
42428			HTTPStatusCode: res.StatusCode,
42429		},
42430	}
42431	target := &ret
42432	if err := gensupport.DecodeResponse(target, res); err != nil {
42433		return nil, err
42434	}
42435	return ret, nil
42436	// {
42437	//   "description": "Retrieves and updates the shipping settings of multiple accounts in a single request.",
42438	//   "flatPath": "shippingsettings/batch",
42439	//   "httpMethod": "POST",
42440	//   "id": "content.shippingsettings.custombatch",
42441	//   "parameterOrder": [],
42442	//   "parameters": {},
42443	//   "path": "shippingsettings/batch",
42444	//   "request": {
42445	//     "$ref": "ShippingsettingsCustomBatchRequest"
42446	//   },
42447	//   "response": {
42448	//     "$ref": "ShippingsettingsCustomBatchResponse"
42449	//   },
42450	//   "scopes": [
42451	//     "https://www.googleapis.com/auth/content"
42452	//   ]
42453	// }
42454
42455}
42456
42457// method id "content.shippingsettings.get":
42458
42459type ShippingsettingsGetCall struct {
42460	s            *APIService
42461	merchantId   uint64
42462	accountId    uint64
42463	urlParams_   gensupport.URLParams
42464	ifNoneMatch_ string
42465	ctx_         context.Context
42466	header_      http.Header
42467}
42468
42469// Get: Retrieves the shipping settings of the account.
42470//
42471// - accountId: The ID of the account for which to get/update shipping
42472//   settings.
42473// - merchantId: The ID of the managing account. If this parameter is
42474//   not the same as accountId, then this account must be a multi-client
42475//   account and `accountId` must be the ID of a sub-account of this
42476//   account.
42477func (r *ShippingsettingsService) Get(merchantId uint64, accountId uint64) *ShippingsettingsGetCall {
42478	c := &ShippingsettingsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
42479	c.merchantId = merchantId
42480	c.accountId = accountId
42481	return c
42482}
42483
42484// Fields allows partial responses to be retrieved. See
42485// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
42486// for more information.
42487func (c *ShippingsettingsGetCall) Fields(s ...googleapi.Field) *ShippingsettingsGetCall {
42488	c.urlParams_.Set("fields", googleapi.CombineFields(s))
42489	return c
42490}
42491
42492// IfNoneMatch sets the optional parameter which makes the operation
42493// fail if the object's ETag matches the given value. This is useful for
42494// getting updates only after the object has changed since the last
42495// request. Use googleapi.IsNotModified to check whether the response
42496// error from Do is the result of In-None-Match.
42497func (c *ShippingsettingsGetCall) IfNoneMatch(entityTag string) *ShippingsettingsGetCall {
42498	c.ifNoneMatch_ = entityTag
42499	return c
42500}
42501
42502// Context sets the context to be used in this call's Do method. Any
42503// pending HTTP request will be aborted if the provided context is
42504// canceled.
42505func (c *ShippingsettingsGetCall) Context(ctx context.Context) *ShippingsettingsGetCall {
42506	c.ctx_ = ctx
42507	return c
42508}
42509
42510// Header returns an http.Header that can be modified by the caller to
42511// add HTTP headers to the request.
42512func (c *ShippingsettingsGetCall) Header() http.Header {
42513	if c.header_ == nil {
42514		c.header_ = make(http.Header)
42515	}
42516	return c.header_
42517}
42518
42519func (c *ShippingsettingsGetCall) doRequest(alt string) (*http.Response, error) {
42520	reqHeaders := make(http.Header)
42521	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
42522	for k, v := range c.header_ {
42523		reqHeaders[k] = v
42524	}
42525	reqHeaders.Set("User-Agent", c.s.userAgent())
42526	if c.ifNoneMatch_ != "" {
42527		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
42528	}
42529	var body io.Reader = nil
42530	c.urlParams_.Set("alt", alt)
42531	c.urlParams_.Set("prettyPrint", "false")
42532	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/shippingsettings/{accountId}")
42533	urls += "?" + c.urlParams_.Encode()
42534	req, err := http.NewRequest("GET", urls, body)
42535	if err != nil {
42536		return nil, err
42537	}
42538	req.Header = reqHeaders
42539	googleapi.Expand(req.URL, map[string]string{
42540		"merchantId": strconv.FormatUint(c.merchantId, 10),
42541		"accountId":  strconv.FormatUint(c.accountId, 10),
42542	})
42543	return gensupport.SendRequest(c.ctx_, c.s.client, req)
42544}
42545
42546// Do executes the "content.shippingsettings.get" call.
42547// Exactly one of *ShippingSettings or error will be non-nil. Any
42548// non-2xx status code is an error. Response headers are in either
42549// *ShippingSettings.ServerResponse.Header or (if a response was
42550// returned at all) in error.(*googleapi.Error).Header. Use
42551// googleapi.IsNotModified to check whether the returned error was
42552// because http.StatusNotModified was returned.
42553func (c *ShippingsettingsGetCall) Do(opts ...googleapi.CallOption) (*ShippingSettings, error) {
42554	gensupport.SetOptions(c.urlParams_, opts...)
42555	res, err := c.doRequest("json")
42556	if res != nil && res.StatusCode == http.StatusNotModified {
42557		if res.Body != nil {
42558			res.Body.Close()
42559		}
42560		return nil, &googleapi.Error{
42561			Code:   res.StatusCode,
42562			Header: res.Header,
42563		}
42564	}
42565	if err != nil {
42566		return nil, err
42567	}
42568	defer googleapi.CloseBody(res)
42569	if err := googleapi.CheckResponse(res); err != nil {
42570		return nil, err
42571	}
42572	ret := &ShippingSettings{
42573		ServerResponse: googleapi.ServerResponse{
42574			Header:         res.Header,
42575			HTTPStatusCode: res.StatusCode,
42576		},
42577	}
42578	target := &ret
42579	if err := gensupport.DecodeResponse(target, res); err != nil {
42580		return nil, err
42581	}
42582	return ret, nil
42583	// {
42584	//   "description": "Retrieves the shipping settings of the account.",
42585	//   "flatPath": "{merchantId}/shippingsettings/{accountId}",
42586	//   "httpMethod": "GET",
42587	//   "id": "content.shippingsettings.get",
42588	//   "parameterOrder": [
42589	//     "merchantId",
42590	//     "accountId"
42591	//   ],
42592	//   "parameters": {
42593	//     "accountId": {
42594	//       "description": "The ID of the account for which to get/update shipping settings.",
42595	//       "format": "uint64",
42596	//       "location": "path",
42597	//       "required": true,
42598	//       "type": "string"
42599	//     },
42600	//     "merchantId": {
42601	//       "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.",
42602	//       "format": "uint64",
42603	//       "location": "path",
42604	//       "required": true,
42605	//       "type": "string"
42606	//     }
42607	//   },
42608	//   "path": "{merchantId}/shippingsettings/{accountId}",
42609	//   "response": {
42610	//     "$ref": "ShippingSettings"
42611	//   },
42612	//   "scopes": [
42613	//     "https://www.googleapis.com/auth/content"
42614	//   ]
42615	// }
42616
42617}
42618
42619// method id "content.shippingsettings.getsupportedcarriers":
42620
42621type ShippingsettingsGetsupportedcarriersCall struct {
42622	s            *APIService
42623	merchantId   uint64
42624	urlParams_   gensupport.URLParams
42625	ifNoneMatch_ string
42626	ctx_         context.Context
42627	header_      http.Header
42628}
42629
42630// Getsupportedcarriers: Retrieves supported carriers and carrier
42631// services for an account.
42632//
42633// - merchantId: The ID of the account for which to retrieve the
42634//   supported carriers.
42635func (r *ShippingsettingsService) Getsupportedcarriers(merchantId uint64) *ShippingsettingsGetsupportedcarriersCall {
42636	c := &ShippingsettingsGetsupportedcarriersCall{s: r.s, urlParams_: make(gensupport.URLParams)}
42637	c.merchantId = merchantId
42638	return c
42639}
42640
42641// Fields allows partial responses to be retrieved. See
42642// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
42643// for more information.
42644func (c *ShippingsettingsGetsupportedcarriersCall) Fields(s ...googleapi.Field) *ShippingsettingsGetsupportedcarriersCall {
42645	c.urlParams_.Set("fields", googleapi.CombineFields(s))
42646	return c
42647}
42648
42649// IfNoneMatch sets the optional parameter which makes the operation
42650// fail if the object's ETag matches the given value. This is useful for
42651// getting updates only after the object has changed since the last
42652// request. Use googleapi.IsNotModified to check whether the response
42653// error from Do is the result of In-None-Match.
42654func (c *ShippingsettingsGetsupportedcarriersCall) IfNoneMatch(entityTag string) *ShippingsettingsGetsupportedcarriersCall {
42655	c.ifNoneMatch_ = entityTag
42656	return c
42657}
42658
42659// Context sets the context to be used in this call's Do method. Any
42660// pending HTTP request will be aborted if the provided context is
42661// canceled.
42662func (c *ShippingsettingsGetsupportedcarriersCall) Context(ctx context.Context) *ShippingsettingsGetsupportedcarriersCall {
42663	c.ctx_ = ctx
42664	return c
42665}
42666
42667// Header returns an http.Header that can be modified by the caller to
42668// add HTTP headers to the request.
42669func (c *ShippingsettingsGetsupportedcarriersCall) Header() http.Header {
42670	if c.header_ == nil {
42671		c.header_ = make(http.Header)
42672	}
42673	return c.header_
42674}
42675
42676func (c *ShippingsettingsGetsupportedcarriersCall) doRequest(alt string) (*http.Response, error) {
42677	reqHeaders := make(http.Header)
42678	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
42679	for k, v := range c.header_ {
42680		reqHeaders[k] = v
42681	}
42682	reqHeaders.Set("User-Agent", c.s.userAgent())
42683	if c.ifNoneMatch_ != "" {
42684		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
42685	}
42686	var body io.Reader = nil
42687	c.urlParams_.Set("alt", alt)
42688	c.urlParams_.Set("prettyPrint", "false")
42689	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/supportedCarriers")
42690	urls += "?" + c.urlParams_.Encode()
42691	req, err := http.NewRequest("GET", urls, body)
42692	if err != nil {
42693		return nil, err
42694	}
42695	req.Header = reqHeaders
42696	googleapi.Expand(req.URL, map[string]string{
42697		"merchantId": strconv.FormatUint(c.merchantId, 10),
42698	})
42699	return gensupport.SendRequest(c.ctx_, c.s.client, req)
42700}
42701
42702// Do executes the "content.shippingsettings.getsupportedcarriers" call.
42703// Exactly one of *ShippingsettingsGetSupportedCarriersResponse or error
42704// will be non-nil. Any non-2xx status code is an error. Response
42705// headers are in either
42706// *ShippingsettingsGetSupportedCarriersResponse.ServerResponse.Header
42707// or (if a response was returned at all) in
42708// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
42709// whether the returned error was because http.StatusNotModified was
42710// returned.
42711func (c *ShippingsettingsGetsupportedcarriersCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsGetSupportedCarriersResponse, error) {
42712	gensupport.SetOptions(c.urlParams_, opts...)
42713	res, err := c.doRequest("json")
42714	if res != nil && res.StatusCode == http.StatusNotModified {
42715		if res.Body != nil {
42716			res.Body.Close()
42717		}
42718		return nil, &googleapi.Error{
42719			Code:   res.StatusCode,
42720			Header: res.Header,
42721		}
42722	}
42723	if err != nil {
42724		return nil, err
42725	}
42726	defer googleapi.CloseBody(res)
42727	if err := googleapi.CheckResponse(res); err != nil {
42728		return nil, err
42729	}
42730	ret := &ShippingsettingsGetSupportedCarriersResponse{
42731		ServerResponse: googleapi.ServerResponse{
42732			Header:         res.Header,
42733			HTTPStatusCode: res.StatusCode,
42734		},
42735	}
42736	target := &ret
42737	if err := gensupport.DecodeResponse(target, res); err != nil {
42738		return nil, err
42739	}
42740	return ret, nil
42741	// {
42742	//   "description": "Retrieves supported carriers and carrier services for an account.",
42743	//   "flatPath": "{merchantId}/supportedCarriers",
42744	//   "httpMethod": "GET",
42745	//   "id": "content.shippingsettings.getsupportedcarriers",
42746	//   "parameterOrder": [
42747	//     "merchantId"
42748	//   ],
42749	//   "parameters": {
42750	//     "merchantId": {
42751	//       "description": "The ID of the account for which to retrieve the supported carriers.",
42752	//       "format": "uint64",
42753	//       "location": "path",
42754	//       "required": true,
42755	//       "type": "string"
42756	//     }
42757	//   },
42758	//   "path": "{merchantId}/supportedCarriers",
42759	//   "response": {
42760	//     "$ref": "ShippingsettingsGetSupportedCarriersResponse"
42761	//   },
42762	//   "scopes": [
42763	//     "https://www.googleapis.com/auth/content"
42764	//   ]
42765	// }
42766
42767}
42768
42769// method id "content.shippingsettings.getsupportedholidays":
42770
42771type ShippingsettingsGetsupportedholidaysCall struct {
42772	s            *APIService
42773	merchantId   uint64
42774	urlParams_   gensupport.URLParams
42775	ifNoneMatch_ string
42776	ctx_         context.Context
42777	header_      http.Header
42778}
42779
42780// Getsupportedholidays: Retrieves supported holidays for an account.
42781//
42782// - merchantId: The ID of the account for which to retrieve the
42783//   supported holidays.
42784func (r *ShippingsettingsService) Getsupportedholidays(merchantId uint64) *ShippingsettingsGetsupportedholidaysCall {
42785	c := &ShippingsettingsGetsupportedholidaysCall{s: r.s, urlParams_: make(gensupport.URLParams)}
42786	c.merchantId = merchantId
42787	return c
42788}
42789
42790// Fields allows partial responses to be retrieved. See
42791// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
42792// for more information.
42793func (c *ShippingsettingsGetsupportedholidaysCall) Fields(s ...googleapi.Field) *ShippingsettingsGetsupportedholidaysCall {
42794	c.urlParams_.Set("fields", googleapi.CombineFields(s))
42795	return c
42796}
42797
42798// IfNoneMatch sets the optional parameter which makes the operation
42799// fail if the object's ETag matches the given value. This is useful for
42800// getting updates only after the object has changed since the last
42801// request. Use googleapi.IsNotModified to check whether the response
42802// error from Do is the result of In-None-Match.
42803func (c *ShippingsettingsGetsupportedholidaysCall) IfNoneMatch(entityTag string) *ShippingsettingsGetsupportedholidaysCall {
42804	c.ifNoneMatch_ = entityTag
42805	return c
42806}
42807
42808// Context sets the context to be used in this call's Do method. Any
42809// pending HTTP request will be aborted if the provided context is
42810// canceled.
42811func (c *ShippingsettingsGetsupportedholidaysCall) Context(ctx context.Context) *ShippingsettingsGetsupportedholidaysCall {
42812	c.ctx_ = ctx
42813	return c
42814}
42815
42816// Header returns an http.Header that can be modified by the caller to
42817// add HTTP headers to the request.
42818func (c *ShippingsettingsGetsupportedholidaysCall) Header() http.Header {
42819	if c.header_ == nil {
42820		c.header_ = make(http.Header)
42821	}
42822	return c.header_
42823}
42824
42825func (c *ShippingsettingsGetsupportedholidaysCall) doRequest(alt string) (*http.Response, error) {
42826	reqHeaders := make(http.Header)
42827	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
42828	for k, v := range c.header_ {
42829		reqHeaders[k] = v
42830	}
42831	reqHeaders.Set("User-Agent", c.s.userAgent())
42832	if c.ifNoneMatch_ != "" {
42833		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
42834	}
42835	var body io.Reader = nil
42836	c.urlParams_.Set("alt", alt)
42837	c.urlParams_.Set("prettyPrint", "false")
42838	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/supportedHolidays")
42839	urls += "?" + c.urlParams_.Encode()
42840	req, err := http.NewRequest("GET", urls, body)
42841	if err != nil {
42842		return nil, err
42843	}
42844	req.Header = reqHeaders
42845	googleapi.Expand(req.URL, map[string]string{
42846		"merchantId": strconv.FormatUint(c.merchantId, 10),
42847	})
42848	return gensupport.SendRequest(c.ctx_, c.s.client, req)
42849}
42850
42851// Do executes the "content.shippingsettings.getsupportedholidays" call.
42852// Exactly one of *ShippingsettingsGetSupportedHolidaysResponse or error
42853// will be non-nil. Any non-2xx status code is an error. Response
42854// headers are in either
42855// *ShippingsettingsGetSupportedHolidaysResponse.ServerResponse.Header
42856// or (if a response was returned at all) in
42857// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
42858// whether the returned error was because http.StatusNotModified was
42859// returned.
42860func (c *ShippingsettingsGetsupportedholidaysCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsGetSupportedHolidaysResponse, error) {
42861	gensupport.SetOptions(c.urlParams_, opts...)
42862	res, err := c.doRequest("json")
42863	if res != nil && res.StatusCode == http.StatusNotModified {
42864		if res.Body != nil {
42865			res.Body.Close()
42866		}
42867		return nil, &googleapi.Error{
42868			Code:   res.StatusCode,
42869			Header: res.Header,
42870		}
42871	}
42872	if err != nil {
42873		return nil, err
42874	}
42875	defer googleapi.CloseBody(res)
42876	if err := googleapi.CheckResponse(res); err != nil {
42877		return nil, err
42878	}
42879	ret := &ShippingsettingsGetSupportedHolidaysResponse{
42880		ServerResponse: googleapi.ServerResponse{
42881			Header:         res.Header,
42882			HTTPStatusCode: res.StatusCode,
42883		},
42884	}
42885	target := &ret
42886	if err := gensupport.DecodeResponse(target, res); err != nil {
42887		return nil, err
42888	}
42889	return ret, nil
42890	// {
42891	//   "description": "Retrieves supported holidays for an account.",
42892	//   "flatPath": "{merchantId}/supportedHolidays",
42893	//   "httpMethod": "GET",
42894	//   "id": "content.shippingsettings.getsupportedholidays",
42895	//   "parameterOrder": [
42896	//     "merchantId"
42897	//   ],
42898	//   "parameters": {
42899	//     "merchantId": {
42900	//       "description": "The ID of the account for which to retrieve the supported holidays.",
42901	//       "format": "uint64",
42902	//       "location": "path",
42903	//       "required": true,
42904	//       "type": "string"
42905	//     }
42906	//   },
42907	//   "path": "{merchantId}/supportedHolidays",
42908	//   "response": {
42909	//     "$ref": "ShippingsettingsGetSupportedHolidaysResponse"
42910	//   },
42911	//   "scopes": [
42912	//     "https://www.googleapis.com/auth/content"
42913	//   ]
42914	// }
42915
42916}
42917
42918// method id "content.shippingsettings.getsupportedpickupservices":
42919
42920type ShippingsettingsGetsupportedpickupservicesCall struct {
42921	s            *APIService
42922	merchantId   uint64
42923	urlParams_   gensupport.URLParams
42924	ifNoneMatch_ string
42925	ctx_         context.Context
42926	header_      http.Header
42927}
42928
42929// Getsupportedpickupservices: Retrieves supported pickup services for
42930// an account.
42931//
42932// - merchantId: The ID of the account for which to retrieve the
42933//   supported pickup services.
42934func (r *ShippingsettingsService) Getsupportedpickupservices(merchantId uint64) *ShippingsettingsGetsupportedpickupservicesCall {
42935	c := &ShippingsettingsGetsupportedpickupservicesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
42936	c.merchantId = merchantId
42937	return c
42938}
42939
42940// Fields allows partial responses to be retrieved. See
42941// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
42942// for more information.
42943func (c *ShippingsettingsGetsupportedpickupservicesCall) Fields(s ...googleapi.Field) *ShippingsettingsGetsupportedpickupservicesCall {
42944	c.urlParams_.Set("fields", googleapi.CombineFields(s))
42945	return c
42946}
42947
42948// IfNoneMatch sets the optional parameter which makes the operation
42949// fail if the object's ETag matches the given value. This is useful for
42950// getting updates only after the object has changed since the last
42951// request. Use googleapi.IsNotModified to check whether the response
42952// error from Do is the result of In-None-Match.
42953func (c *ShippingsettingsGetsupportedpickupservicesCall) IfNoneMatch(entityTag string) *ShippingsettingsGetsupportedpickupservicesCall {
42954	c.ifNoneMatch_ = entityTag
42955	return c
42956}
42957
42958// Context sets the context to be used in this call's Do method. Any
42959// pending HTTP request will be aborted if the provided context is
42960// canceled.
42961func (c *ShippingsettingsGetsupportedpickupservicesCall) Context(ctx context.Context) *ShippingsettingsGetsupportedpickupservicesCall {
42962	c.ctx_ = ctx
42963	return c
42964}
42965
42966// Header returns an http.Header that can be modified by the caller to
42967// add HTTP headers to the request.
42968func (c *ShippingsettingsGetsupportedpickupservicesCall) Header() http.Header {
42969	if c.header_ == nil {
42970		c.header_ = make(http.Header)
42971	}
42972	return c.header_
42973}
42974
42975func (c *ShippingsettingsGetsupportedpickupservicesCall) doRequest(alt string) (*http.Response, error) {
42976	reqHeaders := make(http.Header)
42977	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
42978	for k, v := range c.header_ {
42979		reqHeaders[k] = v
42980	}
42981	reqHeaders.Set("User-Agent", c.s.userAgent())
42982	if c.ifNoneMatch_ != "" {
42983		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
42984	}
42985	var body io.Reader = nil
42986	c.urlParams_.Set("alt", alt)
42987	c.urlParams_.Set("prettyPrint", "false")
42988	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/supportedPickupServices")
42989	urls += "?" + c.urlParams_.Encode()
42990	req, err := http.NewRequest("GET", urls, body)
42991	if err != nil {
42992		return nil, err
42993	}
42994	req.Header = reqHeaders
42995	googleapi.Expand(req.URL, map[string]string{
42996		"merchantId": strconv.FormatUint(c.merchantId, 10),
42997	})
42998	return gensupport.SendRequest(c.ctx_, c.s.client, req)
42999}
43000
43001// Do executes the "content.shippingsettings.getsupportedpickupservices" call.
43002// Exactly one of *ShippingsettingsGetSupportedPickupServicesResponse or
43003// error will be non-nil. Any non-2xx status code is an error. Response
43004// headers are in either
43005// *ShippingsettingsGetSupportedPickupServicesResponse.ServerResponse.Hea
43006// der or (if a response was returned at all) in
43007// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
43008// whether the returned error was because http.StatusNotModified was
43009// returned.
43010func (c *ShippingsettingsGetsupportedpickupservicesCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsGetSupportedPickupServicesResponse, error) {
43011	gensupport.SetOptions(c.urlParams_, opts...)
43012	res, err := c.doRequest("json")
43013	if res != nil && res.StatusCode == http.StatusNotModified {
43014		if res.Body != nil {
43015			res.Body.Close()
43016		}
43017		return nil, &googleapi.Error{
43018			Code:   res.StatusCode,
43019			Header: res.Header,
43020		}
43021	}
43022	if err != nil {
43023		return nil, err
43024	}
43025	defer googleapi.CloseBody(res)
43026	if err := googleapi.CheckResponse(res); err != nil {
43027		return nil, err
43028	}
43029	ret := &ShippingsettingsGetSupportedPickupServicesResponse{
43030		ServerResponse: googleapi.ServerResponse{
43031			Header:         res.Header,
43032			HTTPStatusCode: res.StatusCode,
43033		},
43034	}
43035	target := &ret
43036	if err := gensupport.DecodeResponse(target, res); err != nil {
43037		return nil, err
43038	}
43039	return ret, nil
43040	// {
43041	//   "description": "Retrieves supported pickup services for an account.",
43042	//   "flatPath": "{merchantId}/supportedPickupServices",
43043	//   "httpMethod": "GET",
43044	//   "id": "content.shippingsettings.getsupportedpickupservices",
43045	//   "parameterOrder": [
43046	//     "merchantId"
43047	//   ],
43048	//   "parameters": {
43049	//     "merchantId": {
43050	//       "description": "The ID of the account for which to retrieve the supported pickup services.",
43051	//       "format": "uint64",
43052	//       "location": "path",
43053	//       "required": true,
43054	//       "type": "string"
43055	//     }
43056	//   },
43057	//   "path": "{merchantId}/supportedPickupServices",
43058	//   "response": {
43059	//     "$ref": "ShippingsettingsGetSupportedPickupServicesResponse"
43060	//   },
43061	//   "scopes": [
43062	//     "https://www.googleapis.com/auth/content"
43063	//   ]
43064	// }
43065
43066}
43067
43068// method id "content.shippingsettings.list":
43069
43070type ShippingsettingsListCall struct {
43071	s            *APIService
43072	merchantId   uint64
43073	urlParams_   gensupport.URLParams
43074	ifNoneMatch_ string
43075	ctx_         context.Context
43076	header_      http.Header
43077}
43078
43079// List: Lists the shipping settings of the sub-accounts in your
43080// Merchant Center account.
43081//
43082// - merchantId: The ID of the managing account. This must be a
43083//   multi-client account.
43084func (r *ShippingsettingsService) List(merchantId uint64) *ShippingsettingsListCall {
43085	c := &ShippingsettingsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
43086	c.merchantId = merchantId
43087	return c
43088}
43089
43090// MaxResults sets the optional parameter "maxResults": The maximum
43091// number of shipping settings to return in the response, used for
43092// paging.
43093func (c *ShippingsettingsListCall) MaxResults(maxResults int64) *ShippingsettingsListCall {
43094	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
43095	return c
43096}
43097
43098// PageToken sets the optional parameter "pageToken": The token returned
43099// by the previous request.
43100func (c *ShippingsettingsListCall) PageToken(pageToken string) *ShippingsettingsListCall {
43101	c.urlParams_.Set("pageToken", pageToken)
43102	return c
43103}
43104
43105// Fields allows partial responses to be retrieved. See
43106// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
43107// for more information.
43108func (c *ShippingsettingsListCall) Fields(s ...googleapi.Field) *ShippingsettingsListCall {
43109	c.urlParams_.Set("fields", googleapi.CombineFields(s))
43110	return c
43111}
43112
43113// IfNoneMatch sets the optional parameter which makes the operation
43114// fail if the object's ETag matches the given value. This is useful for
43115// getting updates only after the object has changed since the last
43116// request. Use googleapi.IsNotModified to check whether the response
43117// error from Do is the result of In-None-Match.
43118func (c *ShippingsettingsListCall) IfNoneMatch(entityTag string) *ShippingsettingsListCall {
43119	c.ifNoneMatch_ = entityTag
43120	return c
43121}
43122
43123// Context sets the context to be used in this call's Do method. Any
43124// pending HTTP request will be aborted if the provided context is
43125// canceled.
43126func (c *ShippingsettingsListCall) Context(ctx context.Context) *ShippingsettingsListCall {
43127	c.ctx_ = ctx
43128	return c
43129}
43130
43131// Header returns an http.Header that can be modified by the caller to
43132// add HTTP headers to the request.
43133func (c *ShippingsettingsListCall) Header() http.Header {
43134	if c.header_ == nil {
43135		c.header_ = make(http.Header)
43136	}
43137	return c.header_
43138}
43139
43140func (c *ShippingsettingsListCall) doRequest(alt string) (*http.Response, error) {
43141	reqHeaders := make(http.Header)
43142	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
43143	for k, v := range c.header_ {
43144		reqHeaders[k] = v
43145	}
43146	reqHeaders.Set("User-Agent", c.s.userAgent())
43147	if c.ifNoneMatch_ != "" {
43148		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
43149	}
43150	var body io.Reader = nil
43151	c.urlParams_.Set("alt", alt)
43152	c.urlParams_.Set("prettyPrint", "false")
43153	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/shippingsettings")
43154	urls += "?" + c.urlParams_.Encode()
43155	req, err := http.NewRequest("GET", urls, body)
43156	if err != nil {
43157		return nil, err
43158	}
43159	req.Header = reqHeaders
43160	googleapi.Expand(req.URL, map[string]string{
43161		"merchantId": strconv.FormatUint(c.merchantId, 10),
43162	})
43163	return gensupport.SendRequest(c.ctx_, c.s.client, req)
43164}
43165
43166// Do executes the "content.shippingsettings.list" call.
43167// Exactly one of *ShippingsettingsListResponse or error will be
43168// non-nil. Any non-2xx status code is an error. Response headers are in
43169// either *ShippingsettingsListResponse.ServerResponse.Header or (if a
43170// response was returned at all) in error.(*googleapi.Error).Header. Use
43171// googleapi.IsNotModified to check whether the returned error was
43172// because http.StatusNotModified was returned.
43173func (c *ShippingsettingsListCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsListResponse, error) {
43174	gensupport.SetOptions(c.urlParams_, opts...)
43175	res, err := c.doRequest("json")
43176	if res != nil && res.StatusCode == http.StatusNotModified {
43177		if res.Body != nil {
43178			res.Body.Close()
43179		}
43180		return nil, &googleapi.Error{
43181			Code:   res.StatusCode,
43182			Header: res.Header,
43183		}
43184	}
43185	if err != nil {
43186		return nil, err
43187	}
43188	defer googleapi.CloseBody(res)
43189	if err := googleapi.CheckResponse(res); err != nil {
43190		return nil, err
43191	}
43192	ret := &ShippingsettingsListResponse{
43193		ServerResponse: googleapi.ServerResponse{
43194			Header:         res.Header,
43195			HTTPStatusCode: res.StatusCode,
43196		},
43197	}
43198	target := &ret
43199	if err := gensupport.DecodeResponse(target, res); err != nil {
43200		return nil, err
43201	}
43202	return ret, nil
43203	// {
43204	//   "description": "Lists the shipping settings of the sub-accounts in your Merchant Center account.",
43205	//   "flatPath": "{merchantId}/shippingsettings",
43206	//   "httpMethod": "GET",
43207	//   "id": "content.shippingsettings.list",
43208	//   "parameterOrder": [
43209	//     "merchantId"
43210	//   ],
43211	//   "parameters": {
43212	//     "maxResults": {
43213	//       "description": "The maximum number of shipping settings to return in the response, used for paging.",
43214	//       "format": "uint32",
43215	//       "location": "query",
43216	//       "type": "integer"
43217	//     },
43218	//     "merchantId": {
43219	//       "description": "The ID of the managing account. This must be a multi-client account.",
43220	//       "format": "uint64",
43221	//       "location": "path",
43222	//       "required": true,
43223	//       "type": "string"
43224	//     },
43225	//     "pageToken": {
43226	//       "description": "The token returned by the previous request.",
43227	//       "location": "query",
43228	//       "type": "string"
43229	//     }
43230	//   },
43231	//   "path": "{merchantId}/shippingsettings",
43232	//   "response": {
43233	//     "$ref": "ShippingsettingsListResponse"
43234	//   },
43235	//   "scopes": [
43236	//     "https://www.googleapis.com/auth/content"
43237	//   ]
43238	// }
43239
43240}
43241
43242// Pages invokes f for each page of results.
43243// A non-nil error returned from f will halt the iteration.
43244// The provided context supersedes any context provided to the Context method.
43245func (c *ShippingsettingsListCall) Pages(ctx context.Context, f func(*ShippingsettingsListResponse) error) error {
43246	c.ctx_ = ctx
43247	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
43248	for {
43249		x, err := c.Do()
43250		if err != nil {
43251			return err
43252		}
43253		if err := f(x); err != nil {
43254			return err
43255		}
43256		if x.NextPageToken == "" {
43257			return nil
43258		}
43259		c.PageToken(x.NextPageToken)
43260	}
43261}
43262
43263// method id "content.shippingsettings.update":
43264
43265type ShippingsettingsUpdateCall struct {
43266	s                *APIService
43267	merchantId       uint64
43268	accountId        uint64
43269	shippingsettings *ShippingSettings
43270	urlParams_       gensupport.URLParams
43271	ctx_             context.Context
43272	header_          http.Header
43273}
43274
43275// Update: Updates the shipping settings of the account. Any fields that
43276// are not provided are deleted from the resource.
43277//
43278// - accountId: The ID of the account for which to get/update shipping
43279//   settings.
43280// - merchantId: The ID of the managing account. If this parameter is
43281//   not the same as accountId, then this account must be a multi-client
43282//   account and `accountId` must be the ID of a sub-account of this
43283//   account.
43284func (r *ShippingsettingsService) Update(merchantId uint64, accountId uint64, shippingsettings *ShippingSettings) *ShippingsettingsUpdateCall {
43285	c := &ShippingsettingsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
43286	c.merchantId = merchantId
43287	c.accountId = accountId
43288	c.shippingsettings = shippingsettings
43289	return c
43290}
43291
43292// Fields allows partial responses to be retrieved. See
43293// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
43294// for more information.
43295func (c *ShippingsettingsUpdateCall) Fields(s ...googleapi.Field) *ShippingsettingsUpdateCall {
43296	c.urlParams_.Set("fields", googleapi.CombineFields(s))
43297	return c
43298}
43299
43300// Context sets the context to be used in this call's Do method. Any
43301// pending HTTP request will be aborted if the provided context is
43302// canceled.
43303func (c *ShippingsettingsUpdateCall) Context(ctx context.Context) *ShippingsettingsUpdateCall {
43304	c.ctx_ = ctx
43305	return c
43306}
43307
43308// Header returns an http.Header that can be modified by the caller to
43309// add HTTP headers to the request.
43310func (c *ShippingsettingsUpdateCall) Header() http.Header {
43311	if c.header_ == nil {
43312		c.header_ = make(http.Header)
43313	}
43314	return c.header_
43315}
43316
43317func (c *ShippingsettingsUpdateCall) doRequest(alt string) (*http.Response, error) {
43318	reqHeaders := make(http.Header)
43319	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
43320	for k, v := range c.header_ {
43321		reqHeaders[k] = v
43322	}
43323	reqHeaders.Set("User-Agent", c.s.userAgent())
43324	var body io.Reader = nil
43325	body, err := googleapi.WithoutDataWrapper.JSONReader(c.shippingsettings)
43326	if err != nil {
43327		return nil, err
43328	}
43329	reqHeaders.Set("Content-Type", "application/json")
43330	c.urlParams_.Set("alt", alt)
43331	c.urlParams_.Set("prettyPrint", "false")
43332	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/shippingsettings/{accountId}")
43333	urls += "?" + c.urlParams_.Encode()
43334	req, err := http.NewRequest("PUT", urls, body)
43335	if err != nil {
43336		return nil, err
43337	}
43338	req.Header = reqHeaders
43339	googleapi.Expand(req.URL, map[string]string{
43340		"merchantId": strconv.FormatUint(c.merchantId, 10),
43341		"accountId":  strconv.FormatUint(c.accountId, 10),
43342	})
43343	return gensupport.SendRequest(c.ctx_, c.s.client, req)
43344}
43345
43346// Do executes the "content.shippingsettings.update" call.
43347// Exactly one of *ShippingSettings or error will be non-nil. Any
43348// non-2xx status code is an error. Response headers are in either
43349// *ShippingSettings.ServerResponse.Header or (if a response was
43350// returned at all) in error.(*googleapi.Error).Header. Use
43351// googleapi.IsNotModified to check whether the returned error was
43352// because http.StatusNotModified was returned.
43353func (c *ShippingsettingsUpdateCall) Do(opts ...googleapi.CallOption) (*ShippingSettings, error) {
43354	gensupport.SetOptions(c.urlParams_, opts...)
43355	res, err := c.doRequest("json")
43356	if res != nil && res.StatusCode == http.StatusNotModified {
43357		if res.Body != nil {
43358			res.Body.Close()
43359		}
43360		return nil, &googleapi.Error{
43361			Code:   res.StatusCode,
43362			Header: res.Header,
43363		}
43364	}
43365	if err != nil {
43366		return nil, err
43367	}
43368	defer googleapi.CloseBody(res)
43369	if err := googleapi.CheckResponse(res); err != nil {
43370		return nil, err
43371	}
43372	ret := &ShippingSettings{
43373		ServerResponse: googleapi.ServerResponse{
43374			Header:         res.Header,
43375			HTTPStatusCode: res.StatusCode,
43376		},
43377	}
43378	target := &ret
43379	if err := gensupport.DecodeResponse(target, res); err != nil {
43380		return nil, err
43381	}
43382	return ret, nil
43383	// {
43384	//   "description": "Updates the shipping settings of the account. Any fields that are not provided are deleted from the resource.",
43385	//   "flatPath": "{merchantId}/shippingsettings/{accountId}",
43386	//   "httpMethod": "PUT",
43387	//   "id": "content.shippingsettings.update",
43388	//   "parameterOrder": [
43389	//     "merchantId",
43390	//     "accountId"
43391	//   ],
43392	//   "parameters": {
43393	//     "accountId": {
43394	//       "description": "The ID of the account for which to get/update shipping settings.",
43395	//       "format": "uint64",
43396	//       "location": "path",
43397	//       "required": true,
43398	//       "type": "string"
43399	//     },
43400	//     "merchantId": {
43401	//       "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.",
43402	//       "format": "uint64",
43403	//       "location": "path",
43404	//       "required": true,
43405	//       "type": "string"
43406	//     }
43407	//   },
43408	//   "path": "{merchantId}/shippingsettings/{accountId}",
43409	//   "request": {
43410	//     "$ref": "ShippingSettings"
43411	//   },
43412	//   "response": {
43413	//     "$ref": "ShippingSettings"
43414	//   },
43415	//   "scopes": [
43416	//     "https://www.googleapis.com/auth/content"
43417	//   ]
43418	// }
43419
43420}
43421
43422// method id "content.shoppingadsprogram.get":
43423
43424type ShoppingadsprogramGetCall struct {
43425	s            *APIService
43426	merchantId   int64
43427	urlParams_   gensupport.URLParams
43428	ifNoneMatch_ string
43429	ctx_         context.Context
43430	header_      http.Header
43431}
43432
43433// Get: Retrieves the status and review eligibility for the Shopping Ads
43434// program.
43435//
43436// - merchantId: The ID of the account.
43437func (r *ShoppingadsprogramService) Get(merchantId int64) *ShoppingadsprogramGetCall {
43438	c := &ShoppingadsprogramGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
43439	c.merchantId = merchantId
43440	return c
43441}
43442
43443// Fields allows partial responses to be retrieved. See
43444// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
43445// for more information.
43446func (c *ShoppingadsprogramGetCall) Fields(s ...googleapi.Field) *ShoppingadsprogramGetCall {
43447	c.urlParams_.Set("fields", googleapi.CombineFields(s))
43448	return c
43449}
43450
43451// IfNoneMatch sets the optional parameter which makes the operation
43452// fail if the object's ETag matches the given value. This is useful for
43453// getting updates only after the object has changed since the last
43454// request. Use googleapi.IsNotModified to check whether the response
43455// error from Do is the result of In-None-Match.
43456func (c *ShoppingadsprogramGetCall) IfNoneMatch(entityTag string) *ShoppingadsprogramGetCall {
43457	c.ifNoneMatch_ = entityTag
43458	return c
43459}
43460
43461// Context sets the context to be used in this call's Do method. Any
43462// pending HTTP request will be aborted if the provided context is
43463// canceled.
43464func (c *ShoppingadsprogramGetCall) Context(ctx context.Context) *ShoppingadsprogramGetCall {
43465	c.ctx_ = ctx
43466	return c
43467}
43468
43469// Header returns an http.Header that can be modified by the caller to
43470// add HTTP headers to the request.
43471func (c *ShoppingadsprogramGetCall) Header() http.Header {
43472	if c.header_ == nil {
43473		c.header_ = make(http.Header)
43474	}
43475	return c.header_
43476}
43477
43478func (c *ShoppingadsprogramGetCall) doRequest(alt string) (*http.Response, error) {
43479	reqHeaders := make(http.Header)
43480	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
43481	for k, v := range c.header_ {
43482		reqHeaders[k] = v
43483	}
43484	reqHeaders.Set("User-Agent", c.s.userAgent())
43485	if c.ifNoneMatch_ != "" {
43486		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
43487	}
43488	var body io.Reader = nil
43489	c.urlParams_.Set("alt", alt)
43490	c.urlParams_.Set("prettyPrint", "false")
43491	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/shoppingadsprogram")
43492	urls += "?" + c.urlParams_.Encode()
43493	req, err := http.NewRequest("GET", urls, body)
43494	if err != nil {
43495		return nil, err
43496	}
43497	req.Header = reqHeaders
43498	googleapi.Expand(req.URL, map[string]string{
43499		"merchantId": strconv.FormatInt(c.merchantId, 10),
43500	})
43501	return gensupport.SendRequest(c.ctx_, c.s.client, req)
43502}
43503
43504// Do executes the "content.shoppingadsprogram.get" call.
43505// Exactly one of *ShoppingAdsProgramStatus or error will be non-nil.
43506// Any non-2xx status code is an error. Response headers are in either
43507// *ShoppingAdsProgramStatus.ServerResponse.Header or (if a response was
43508// returned at all) in error.(*googleapi.Error).Header. Use
43509// googleapi.IsNotModified to check whether the returned error was
43510// because http.StatusNotModified was returned.
43511func (c *ShoppingadsprogramGetCall) Do(opts ...googleapi.CallOption) (*ShoppingAdsProgramStatus, error) {
43512	gensupport.SetOptions(c.urlParams_, opts...)
43513	res, err := c.doRequest("json")
43514	if res != nil && res.StatusCode == http.StatusNotModified {
43515		if res.Body != nil {
43516			res.Body.Close()
43517		}
43518		return nil, &googleapi.Error{
43519			Code:   res.StatusCode,
43520			Header: res.Header,
43521		}
43522	}
43523	if err != nil {
43524		return nil, err
43525	}
43526	defer googleapi.CloseBody(res)
43527	if err := googleapi.CheckResponse(res); err != nil {
43528		return nil, err
43529	}
43530	ret := &ShoppingAdsProgramStatus{
43531		ServerResponse: googleapi.ServerResponse{
43532			Header:         res.Header,
43533			HTTPStatusCode: res.StatusCode,
43534		},
43535	}
43536	target := &ret
43537	if err := gensupport.DecodeResponse(target, res); err != nil {
43538		return nil, err
43539	}
43540	return ret, nil
43541	// {
43542	//   "description": "Retrieves the status and review eligibility for the Shopping Ads program.",
43543	//   "flatPath": "{merchantId}/shoppingadsprogram",
43544	//   "httpMethod": "GET",
43545	//   "id": "content.shoppingadsprogram.get",
43546	//   "parameterOrder": [
43547	//     "merchantId"
43548	//   ],
43549	//   "parameters": {
43550	//     "merchantId": {
43551	//       "description": "Required. The ID of the account.",
43552	//       "format": "int64",
43553	//       "location": "path",
43554	//       "required": true,
43555	//       "type": "string"
43556	//     }
43557	//   },
43558	//   "path": "{merchantId}/shoppingadsprogram",
43559	//   "response": {
43560	//     "$ref": "ShoppingAdsProgramStatus"
43561	//   },
43562	//   "scopes": [
43563	//     "https://www.googleapis.com/auth/content"
43564	//   ]
43565	// }
43566
43567}
43568
43569// method id "content.shoppingadsprogram.requestreview":
43570
43571type ShoppingadsprogramRequestreviewCall struct {
43572	s                               *APIService
43573	merchantId                      int64
43574	requestreviewshoppingadsrequest *RequestReviewShoppingAdsRequest
43575	urlParams_                      gensupport.URLParams
43576	ctx_                            context.Context
43577	header_                         http.Header
43578}
43579
43580// Requestreview: Requests a review for Shopping Ads program in the
43581// provided country.
43582//
43583// - merchantId: The ID of the account.
43584func (r *ShoppingadsprogramService) Requestreview(merchantId int64, requestreviewshoppingadsrequest *RequestReviewShoppingAdsRequest) *ShoppingadsprogramRequestreviewCall {
43585	c := &ShoppingadsprogramRequestreviewCall{s: r.s, urlParams_: make(gensupport.URLParams)}
43586	c.merchantId = merchantId
43587	c.requestreviewshoppingadsrequest = requestreviewshoppingadsrequest
43588	return c
43589}
43590
43591// Fields allows partial responses to be retrieved. See
43592// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
43593// for more information.
43594func (c *ShoppingadsprogramRequestreviewCall) Fields(s ...googleapi.Field) *ShoppingadsprogramRequestreviewCall {
43595	c.urlParams_.Set("fields", googleapi.CombineFields(s))
43596	return c
43597}
43598
43599// Context sets the context to be used in this call's Do method. Any
43600// pending HTTP request will be aborted if the provided context is
43601// canceled.
43602func (c *ShoppingadsprogramRequestreviewCall) Context(ctx context.Context) *ShoppingadsprogramRequestreviewCall {
43603	c.ctx_ = ctx
43604	return c
43605}
43606
43607// Header returns an http.Header that can be modified by the caller to
43608// add HTTP headers to the request.
43609func (c *ShoppingadsprogramRequestreviewCall) Header() http.Header {
43610	if c.header_ == nil {
43611		c.header_ = make(http.Header)
43612	}
43613	return c.header_
43614}
43615
43616func (c *ShoppingadsprogramRequestreviewCall) doRequest(alt string) (*http.Response, error) {
43617	reqHeaders := make(http.Header)
43618	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20211027")
43619	for k, v := range c.header_ {
43620		reqHeaders[k] = v
43621	}
43622	reqHeaders.Set("User-Agent", c.s.userAgent())
43623	var body io.Reader = nil
43624	body, err := googleapi.WithoutDataWrapper.JSONReader(c.requestreviewshoppingadsrequest)
43625	if err != nil {
43626		return nil, err
43627	}
43628	reqHeaders.Set("Content-Type", "application/json")
43629	c.urlParams_.Set("alt", alt)
43630	c.urlParams_.Set("prettyPrint", "false")
43631	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/shoppingadsprogram/requestreview")
43632	urls += "?" + c.urlParams_.Encode()
43633	req, err := http.NewRequest("POST", urls, body)
43634	if err != nil {
43635		return nil, err
43636	}
43637	req.Header = reqHeaders
43638	googleapi.Expand(req.URL, map[string]string{
43639		"merchantId": strconv.FormatInt(c.merchantId, 10),
43640	})
43641	return gensupport.SendRequest(c.ctx_, c.s.client, req)
43642}
43643
43644// Do executes the "content.shoppingadsprogram.requestreview" call.
43645func (c *ShoppingadsprogramRequestreviewCall) Do(opts ...googleapi.CallOption) error {
43646	gensupport.SetOptions(c.urlParams_, opts...)
43647	res, err := c.doRequest("json")
43648	if err != nil {
43649		return err
43650	}
43651	defer googleapi.CloseBody(res)
43652	if err := googleapi.CheckResponse(res); err != nil {
43653		return err
43654	}
43655	return nil
43656	// {
43657	//   "description": "Requests a review for Shopping Ads program in the provided country.",
43658	//   "flatPath": "{merchantId}/shoppingadsprogram/requestreview",
43659	//   "httpMethod": "POST",
43660	//   "id": "content.shoppingadsprogram.requestreview",
43661	//   "parameterOrder": [
43662	//     "merchantId"
43663	//   ],
43664	//   "parameters": {
43665	//     "merchantId": {
43666	//       "description": "Required. The ID of the account.",
43667	//       "format": "int64",
43668	//       "location": "path",
43669	//       "required": true,
43670	//       "type": "string"
43671	//     }
43672	//   },
43673	//   "path": "{merchantId}/shoppingadsprogram/requestreview",
43674	//   "request": {
43675	//     "$ref": "RequestReviewShoppingAdsRequest"
43676	//   },
43677	//   "scopes": [
43678	//     "https://www.googleapis.com/auth/content"
43679	//   ]
43680	// }
43681
43682}
43683