1// Copyright 2019 Google LLC.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5// Code generated file. DO NOT EDIT.
6
7// Package content provides access to the Content API for Shopping.
8//
9// For product documentation, see: https://developers.google.com/shopping-content
10//
11// Creating a client
12//
13// Usage example:
14//
15//   import "google.golang.org/api/content/v2"
16//   ...
17//   ctx := context.Background()
18//   contentService, err := content.NewService(ctx)
19//
20// In this example, Google Application Default Credentials are used for authentication.
21//
22// For information on how to create and obtain Application Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials.
23//
24// Other authentication options
25//
26// To use an API key for authentication (note: some APIs do not support API keys), use option.WithAPIKey:
27//
28//   contentService, err := content.NewService(ctx, option.WithAPIKey("AIza..."))
29//
30// To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow), use option.WithTokenSource:
31//
32//   config := &oauth2.Config{...}
33//   // ...
34//   token, err := config.Exchange(ctx, ...)
35//   contentService, err := content.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))
36//
37// See https://godoc.org/google.golang.org/api/option/ for details on options.
38package content // import "google.golang.org/api/content/v2"
39
40import (
41	"bytes"
42	"context"
43	"encoding/json"
44	"errors"
45	"fmt"
46	"io"
47	"net/http"
48	"net/url"
49	"strconv"
50	"strings"
51
52	gensupport "google.golang.org/api/gensupport"
53	googleapi "google.golang.org/api/googleapi"
54	option "google.golang.org/api/option"
55	htransport "google.golang.org/api/transport/http"
56)
57
58// Always reference these packages, just in case the auto-generated code
59// below doesn't.
60var _ = bytes.NewBuffer
61var _ = strconv.Itoa
62var _ = fmt.Sprintf
63var _ = json.NewDecoder
64var _ = io.Copy
65var _ = url.Parse
66var _ = gensupport.MarshalJSON
67var _ = googleapi.Version
68var _ = errors.New
69var _ = strings.Replace
70var _ = context.Canceled
71
72const apiId = "content:v2"
73const apiName = "content"
74const apiVersion = "v2"
75const basePath = "https://www.googleapis.com/content/v2/"
76
77// OAuth2 scopes used by this API.
78const (
79	// Manage your product listings and accounts for Google Shopping
80	ContentScope = "https://www.googleapis.com/auth/content"
81)
82
83// NewService creates a new APIService.
84func NewService(ctx context.Context, opts ...option.ClientOption) (*APIService, error) {
85	scopesOption := option.WithScopes(
86		"https://www.googleapis.com/auth/content",
87	)
88	// NOTE: prepend, so we don't override user-specified scopes.
89	opts = append([]option.ClientOption{scopesOption}, opts...)
90	client, endpoint, err := htransport.NewClient(ctx, opts...)
91	if err != nil {
92		return nil, err
93	}
94	s, err := New(client)
95	if err != nil {
96		return nil, err
97	}
98	if endpoint != "" {
99		s.BasePath = endpoint
100	}
101	return s, nil
102}
103
104// New creates a new APIService. It uses the provided http.Client for requests.
105//
106// Deprecated: please use NewService instead.
107// To provide a custom HTTP client, use option.WithHTTPClient.
108// If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead.
109func New(client *http.Client) (*APIService, error) {
110	if client == nil {
111		return nil, errors.New("client is nil")
112	}
113	s := &APIService{client: client, BasePath: basePath}
114	s.Accounts = NewAccountsService(s)
115	s.Accountstatuses = NewAccountstatusesService(s)
116	s.Accounttax = NewAccounttaxService(s)
117	s.Datafeeds = NewDatafeedsService(s)
118	s.Datafeedstatuses = NewDatafeedstatusesService(s)
119	s.Inventory = NewInventoryService(s)
120	s.Liasettings = NewLiasettingsService(s)
121	s.Orderinvoices = NewOrderinvoicesService(s)
122	s.Orderpayments = NewOrderpaymentsService(s)
123	s.Orderreports = NewOrderreportsService(s)
124	s.Orderreturns = NewOrderreturnsService(s)
125	s.Orders = NewOrdersService(s)
126	s.Pos = NewPosService(s)
127	s.Products = NewProductsService(s)
128	s.Productstatuses = NewProductstatusesService(s)
129	s.Shippingsettings = NewShippingsettingsService(s)
130	return s, nil
131}
132
133type APIService struct {
134	client    *http.Client
135	BasePath  string // API endpoint base URL
136	UserAgent string // optional additional User-Agent fragment
137
138	Accounts *AccountsService
139
140	Accountstatuses *AccountstatusesService
141
142	Accounttax *AccounttaxService
143
144	Datafeeds *DatafeedsService
145
146	Datafeedstatuses *DatafeedstatusesService
147
148	Inventory *InventoryService
149
150	Liasettings *LiasettingsService
151
152	Orderinvoices *OrderinvoicesService
153
154	Orderpayments *OrderpaymentsService
155
156	Orderreports *OrderreportsService
157
158	Orderreturns *OrderreturnsService
159
160	Orders *OrdersService
161
162	Pos *PosService
163
164	Products *ProductsService
165
166	Productstatuses *ProductstatusesService
167
168	Shippingsettings *ShippingsettingsService
169}
170
171func (s *APIService) userAgent() string {
172	if s.UserAgent == "" {
173		return googleapi.UserAgent
174	}
175	return googleapi.UserAgent + " " + s.UserAgent
176}
177
178func NewAccountsService(s *APIService) *AccountsService {
179	rs := &AccountsService{s: s}
180	return rs
181}
182
183type AccountsService struct {
184	s *APIService
185}
186
187func NewAccountstatusesService(s *APIService) *AccountstatusesService {
188	rs := &AccountstatusesService{s: s}
189	return rs
190}
191
192type AccountstatusesService struct {
193	s *APIService
194}
195
196func NewAccounttaxService(s *APIService) *AccounttaxService {
197	rs := &AccounttaxService{s: s}
198	return rs
199}
200
201type AccounttaxService struct {
202	s *APIService
203}
204
205func NewDatafeedsService(s *APIService) *DatafeedsService {
206	rs := &DatafeedsService{s: s}
207	return rs
208}
209
210type DatafeedsService struct {
211	s *APIService
212}
213
214func NewDatafeedstatusesService(s *APIService) *DatafeedstatusesService {
215	rs := &DatafeedstatusesService{s: s}
216	return rs
217}
218
219type DatafeedstatusesService struct {
220	s *APIService
221}
222
223func NewInventoryService(s *APIService) *InventoryService {
224	rs := &InventoryService{s: s}
225	return rs
226}
227
228type InventoryService struct {
229	s *APIService
230}
231
232func NewLiasettingsService(s *APIService) *LiasettingsService {
233	rs := &LiasettingsService{s: s}
234	return rs
235}
236
237type LiasettingsService struct {
238	s *APIService
239}
240
241func NewOrderinvoicesService(s *APIService) *OrderinvoicesService {
242	rs := &OrderinvoicesService{s: s}
243	return rs
244}
245
246type OrderinvoicesService struct {
247	s *APIService
248}
249
250func NewOrderpaymentsService(s *APIService) *OrderpaymentsService {
251	rs := &OrderpaymentsService{s: s}
252	return rs
253}
254
255type OrderpaymentsService struct {
256	s *APIService
257}
258
259func NewOrderreportsService(s *APIService) *OrderreportsService {
260	rs := &OrderreportsService{s: s}
261	return rs
262}
263
264type OrderreportsService struct {
265	s *APIService
266}
267
268func NewOrderreturnsService(s *APIService) *OrderreturnsService {
269	rs := &OrderreturnsService{s: s}
270	return rs
271}
272
273type OrderreturnsService struct {
274	s *APIService
275}
276
277func NewOrdersService(s *APIService) *OrdersService {
278	rs := &OrdersService{s: s}
279	return rs
280}
281
282type OrdersService struct {
283	s *APIService
284}
285
286func NewPosService(s *APIService) *PosService {
287	rs := &PosService{s: s}
288	return rs
289}
290
291type PosService struct {
292	s *APIService
293}
294
295func NewProductsService(s *APIService) *ProductsService {
296	rs := &ProductsService{s: s}
297	return rs
298}
299
300type ProductsService struct {
301	s *APIService
302}
303
304func NewProductstatusesService(s *APIService) *ProductstatusesService {
305	rs := &ProductstatusesService{s: s}
306	return rs
307}
308
309type ProductstatusesService struct {
310	s *APIService
311}
312
313func NewShippingsettingsService(s *APIService) *ShippingsettingsService {
314	rs := &ShippingsettingsService{s: s}
315	return rs
316}
317
318type ShippingsettingsService struct {
319	s *APIService
320}
321
322// Account: Account data. After the creation of a new account it may
323// take a few minutes before it is fully operational. The methods
324// delete, insert, patch, and update require the admin role.
325type Account struct {
326	// AdultContent: Indicates whether the merchant sells adult content.
327	AdultContent bool `json:"adultContent,omitempty"`
328
329	// AdwordsLinks: List of linked AdWords accounts that are active or
330	// pending approval. To create a new link request, add a new link with
331	// status active to the list. It will remain in a pending state until
332	// approved or rejected either in the AdWords interface or through the
333	// AdWords API. To delete an active link, or to cancel a link request,
334	// remove it from the list.
335	AdwordsLinks []*AccountAdwordsLink `json:"adwordsLinks,omitempty"`
336
337	// BusinessInformation: The business information of the account.
338	BusinessInformation *AccountBusinessInformation `json:"businessInformation,omitempty"`
339
340	// GoogleMyBusinessLink: The GMB account which is linked or in the
341	// process of being linked with the Merchant Center account.
342	GoogleMyBusinessLink *AccountGoogleMyBusinessLink `json:"googleMyBusinessLink,omitempty"`
343
344	// Id: Merchant Center account ID.
345	Id uint64 `json:"id,omitempty,string"`
346
347	// Kind: Identifies what kind of resource this is. Value: the fixed
348	// string "content#account".
349	Kind string `json:"kind,omitempty"`
350
351	// Name: Display name for the account.
352	Name string `json:"name,omitempty"`
353
354	// ReviewsUrl: [DEPRECATED] This field is never returned and will be
355	// ignored if provided.
356	ReviewsUrl string `json:"reviewsUrl,omitempty"`
357
358	// SellerId: Client-specific, locally-unique, internal ID for the child
359	// account.
360	SellerId string `json:"sellerId,omitempty"`
361
362	// Users: Users with access to the account. Every account (except for
363	// subaccounts) must have at least one admin user.
364	Users []*AccountUser `json:"users,omitempty"`
365
366	// WebsiteUrl: The merchant's website.
367	WebsiteUrl string `json:"websiteUrl,omitempty"`
368
369	// YoutubeChannelLinks: List of linked YouTube channels that are active
370	// or pending approval. To create a new link request, add a new link
371	// with status active to the list. It will remain in a pending state
372	// until approved or rejected in the YT Creator Studio interface. To
373	// delete an active link, or to cancel a link request, remove it from
374	// the list.
375	YoutubeChannelLinks []*AccountYouTubeChannelLink `json:"youtubeChannelLinks,omitempty"`
376
377	// ServerResponse contains the HTTP response code and headers from the
378	// server.
379	googleapi.ServerResponse `json:"-"`
380
381	// ForceSendFields is a list of field names (e.g. "AdultContent") to
382	// unconditionally include in API requests. By default, fields with
383	// empty values are omitted from API requests. However, any non-pointer,
384	// non-interface field appearing in ForceSendFields will be sent to the
385	// server regardless of whether the field is empty or not. This may be
386	// used to include empty fields in Patch requests.
387	ForceSendFields []string `json:"-"`
388
389	// NullFields is a list of field names (e.g. "AdultContent") to include
390	// in API requests with the JSON null value. By default, fields with
391	// empty values are omitted from API requests. However, any field with
392	// an empty value appearing in NullFields will be sent to the server as
393	// null. It is an error if a field in this list has a non-empty value.
394	// This may be used to include null fields in Patch requests.
395	NullFields []string `json:"-"`
396}
397
398func (s *Account) MarshalJSON() ([]byte, error) {
399	type NoMethod Account
400	raw := NoMethod(*s)
401	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
402}
403
404type AccountAddress struct {
405	// Country: CLDR country code (e.g. "US").
406	Country string `json:"country,omitempty"`
407
408	// Locality: City, town or commune. May also include dependent
409	// localities or sublocalities (e.g. neighborhoods or suburbs).
410	Locality string `json:"locality,omitempty"`
411
412	// PostalCode: Postal code or ZIP (e.g. "94043").
413	PostalCode string `json:"postalCode,omitempty"`
414
415	// Region: Top-level administrative subdivision of the country. For
416	// example, a state like California ("CA") or a province like Quebec
417	// ("QC").
418	Region string `json:"region,omitempty"`
419
420	// StreetAddress: Street-level part of the address.
421	StreetAddress string `json:"streetAddress,omitempty"`
422
423	// ForceSendFields is a list of field names (e.g. "Country") to
424	// unconditionally include in API requests. By default, fields with
425	// empty values are omitted from API requests. However, any non-pointer,
426	// non-interface field appearing in ForceSendFields will be sent to the
427	// server regardless of whether the field is empty or not. This may be
428	// used to include empty fields in Patch requests.
429	ForceSendFields []string `json:"-"`
430
431	// NullFields is a list of field names (e.g. "Country") to include in
432	// API requests with the JSON null value. By default, fields with empty
433	// values are omitted from API requests. However, any field with an
434	// empty value appearing in NullFields will be sent to the server as
435	// null. It is an error if a field in this list has a non-empty value.
436	// This may be used to include null fields in Patch requests.
437	NullFields []string `json:"-"`
438}
439
440func (s *AccountAddress) MarshalJSON() ([]byte, error) {
441	type NoMethod AccountAddress
442	raw := NoMethod(*s)
443	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
444}
445
446type AccountAdwordsLink struct {
447	// AdwordsId: Customer ID of the AdWords account.
448	AdwordsId uint64 `json:"adwordsId,omitempty,string"`
449
450	// Status: Status of the link between this Merchant Center account and
451	// the AdWords account. Upon retrieval, it represents the actual status
452	// of the link and can be either active if it was approved in Google
453	// AdWords or pending if it's pending approval. Upon insertion, it
454	// represents the intended status of the link. Re-uploading a link with
455	// status active when it's still pending or with status pending when
456	// it's already active will have no effect: the status will remain
457	// unchanged. Re-uploading a link with deprecated status inactive is
458	// equivalent to not submitting the link at all and will delete the link
459	// if it was active or cancel the link request if it was pending.
460	Status string `json:"status,omitempty"`
461
462	// ForceSendFields is a list of field names (e.g. "AdwordsId") to
463	// unconditionally include in API requests. By default, fields with
464	// empty values are omitted from API requests. However, any non-pointer,
465	// non-interface field appearing in ForceSendFields will be sent to the
466	// server regardless of whether the field is empty or not. This may be
467	// used to include empty fields in Patch requests.
468	ForceSendFields []string `json:"-"`
469
470	// NullFields is a list of field names (e.g. "AdwordsId") to include in
471	// API requests with the JSON null value. By default, fields with empty
472	// values are omitted from API requests. However, any field with an
473	// empty value appearing in NullFields will be sent to the server as
474	// null. It is an error if a field in this list has a non-empty value.
475	// This may be used to include null fields in Patch requests.
476	NullFields []string `json:"-"`
477}
478
479func (s *AccountAdwordsLink) MarshalJSON() ([]byte, error) {
480	type NoMethod AccountAdwordsLink
481	raw := NoMethod(*s)
482	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
483}
484
485type AccountBusinessInformation struct {
486	// Address: The address of the business.
487	Address *AccountAddress `json:"address,omitempty"`
488
489	// CustomerService: The customer service information of the business.
490	CustomerService *AccountCustomerService `json:"customerService,omitempty"`
491
492	// PhoneNumber: The phone number of the business.
493	PhoneNumber string `json:"phoneNumber,omitempty"`
494
495	// ForceSendFields is a list of field names (e.g. "Address") to
496	// unconditionally include in API requests. By default, fields with
497	// empty values are omitted from API requests. However, any non-pointer,
498	// non-interface field appearing in ForceSendFields will be sent to the
499	// server regardless of whether the field is empty or not. This may be
500	// used to include empty fields in Patch requests.
501	ForceSendFields []string `json:"-"`
502
503	// NullFields is a list of field names (e.g. "Address") to include in
504	// API requests with the JSON null value. By default, fields with empty
505	// values are omitted from API requests. However, any field with an
506	// empty value appearing in NullFields will be sent to the server as
507	// null. It is an error if a field in this list has a non-empty value.
508	// This may be used to include null fields in Patch requests.
509	NullFields []string `json:"-"`
510}
511
512func (s *AccountBusinessInformation) MarshalJSON() ([]byte, error) {
513	type NoMethod AccountBusinessInformation
514	raw := NoMethod(*s)
515	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
516}
517
518type AccountCustomerService struct {
519	// Email: Customer service email.
520	Email string `json:"email,omitempty"`
521
522	// PhoneNumber: Customer service phone number.
523	PhoneNumber string `json:"phoneNumber,omitempty"`
524
525	// Url: Customer service URL.
526	Url string `json:"url,omitempty"`
527
528	// ForceSendFields is a list of field names (e.g. "Email") to
529	// unconditionally include in API requests. By default, fields with
530	// empty values are omitted from API requests. However, any non-pointer,
531	// non-interface field appearing in ForceSendFields will be sent to the
532	// server regardless of whether the field is empty or not. This may be
533	// used to include empty fields in Patch requests.
534	ForceSendFields []string `json:"-"`
535
536	// NullFields is a list of field names (e.g. "Email") to include in API
537	// requests with the JSON null value. By default, fields with empty
538	// values are omitted from API requests. However, any field with an
539	// empty value appearing in NullFields will be sent to the server as
540	// null. It is an error if a field in this list has a non-empty value.
541	// This may be used to include null fields in Patch requests.
542	NullFields []string `json:"-"`
543}
544
545func (s *AccountCustomerService) MarshalJSON() ([]byte, error) {
546	type NoMethod AccountCustomerService
547	raw := NoMethod(*s)
548	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
549}
550
551type AccountGoogleMyBusinessLink struct {
552	// GmbEmail: The GMB email address of which a specific account within a
553	// GMB account. A sample account within a GMB account could be a
554	// business account with set of locations, managed under the GMB
555	// account.
556	GmbEmail string `json:"gmbEmail,omitempty"`
557
558	// Status: Status of the link between this Merchant Center account and
559	// the GMB account.
560	Status string `json:"status,omitempty"`
561
562	// ForceSendFields is a list of field names (e.g. "GmbEmail") to
563	// unconditionally include in API requests. By default, fields with
564	// empty values are omitted from API requests. However, any non-pointer,
565	// non-interface field appearing in ForceSendFields will be sent to the
566	// server regardless of whether the field is empty or not. This may be
567	// used to include empty fields in Patch requests.
568	ForceSendFields []string `json:"-"`
569
570	// NullFields is a list of field names (e.g. "GmbEmail") to include in
571	// API requests with the JSON null value. By default, fields with empty
572	// values are omitted from API requests. However, any field with an
573	// empty value appearing in NullFields will be sent to the server as
574	// null. It is an error if a field in this list has a non-empty value.
575	// This may be used to include null fields in Patch requests.
576	NullFields []string `json:"-"`
577}
578
579func (s *AccountGoogleMyBusinessLink) MarshalJSON() ([]byte, error) {
580	type NoMethod AccountGoogleMyBusinessLink
581	raw := NoMethod(*s)
582	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
583}
584
585type AccountIdentifier struct {
586	// AggregatorId: The aggregator ID, set for aggregators and subaccounts
587	// (in that case, it represents the aggregator of the subaccount).
588	AggregatorId uint64 `json:"aggregatorId,omitempty,string"`
589
590	// MerchantId: The merchant account ID, set for individual accounts and
591	// subaccounts.
592	MerchantId uint64 `json:"merchantId,omitempty,string"`
593
594	// ForceSendFields is a list of field names (e.g. "AggregatorId") to
595	// unconditionally include in API requests. By default, fields with
596	// empty values are omitted from API requests. However, any non-pointer,
597	// non-interface field appearing in ForceSendFields will be sent to the
598	// server regardless of whether the field is empty or not. This may be
599	// used to include empty fields in Patch requests.
600	ForceSendFields []string `json:"-"`
601
602	// NullFields is a list of field names (e.g. "AggregatorId") to include
603	// in API requests with the JSON null value. By default, fields with
604	// empty values are omitted from API requests. However, any field with
605	// an empty value appearing in NullFields will be sent to the server as
606	// null. It is an error if a field in this list has a non-empty value.
607	// This may be used to include null fields in Patch requests.
608	NullFields []string `json:"-"`
609}
610
611func (s *AccountIdentifier) MarshalJSON() ([]byte, error) {
612	type NoMethod AccountIdentifier
613	raw := NoMethod(*s)
614	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
615}
616
617// AccountStatus: The status of an account, i.e., information about its
618// products, which is computed offline and not returned immediately at
619// insertion time.
620type AccountStatus struct {
621	// AccountId: The ID of the account for which the status is reported.
622	AccountId string `json:"accountId,omitempty"`
623
624	// AccountLevelIssues: A list of account level issues.
625	AccountLevelIssues []*AccountStatusAccountLevelIssue `json:"accountLevelIssues,omitempty"`
626
627	// DataQualityIssues: DEPRECATED - never populated.
628	DataQualityIssues []*AccountStatusDataQualityIssue `json:"dataQualityIssues,omitempty"`
629
630	// Kind: Identifies what kind of resource this is. Value: the fixed
631	// string "content#accountStatus".
632	Kind string `json:"kind,omitempty"`
633
634	// Products: List of product-related data by channel, destination, and
635	// country. Data in this field may be delayed by up to 30 minutes.
636	Products []*AccountStatusProducts `json:"products,omitempty"`
637
638	// WebsiteClaimed: Whether the account's website is claimed or not.
639	WebsiteClaimed bool `json:"websiteClaimed,omitempty"`
640
641	// ServerResponse contains the HTTP response code and headers from the
642	// server.
643	googleapi.ServerResponse `json:"-"`
644
645	// ForceSendFields is a list of field names (e.g. "AccountId") to
646	// unconditionally include in API requests. By default, fields with
647	// empty values are omitted from API requests. However, any non-pointer,
648	// non-interface field appearing in ForceSendFields will be sent to the
649	// server regardless of whether the field is empty or not. This may be
650	// used to include empty fields in Patch requests.
651	ForceSendFields []string `json:"-"`
652
653	// NullFields is a list of field names (e.g. "AccountId") to include in
654	// API requests with the JSON null value. By default, fields with empty
655	// values are omitted from API requests. However, any field with an
656	// empty value appearing in NullFields will be sent to the server as
657	// null. It is an error if a field in this list has a non-empty value.
658	// This may be used to include null fields in Patch requests.
659	NullFields []string `json:"-"`
660}
661
662func (s *AccountStatus) MarshalJSON() ([]byte, error) {
663	type NoMethod AccountStatus
664	raw := NoMethod(*s)
665	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
666}
667
668type AccountStatusAccountLevelIssue struct {
669	// Country: Country for which this issue is reported.
670	Country string `json:"country,omitempty"`
671
672	// Destination: The destination the issue applies to.
673	Destination string `json:"destination,omitempty"`
674
675	// Detail: Additional details about the issue.
676	Detail string `json:"detail,omitempty"`
677
678	// Documentation: The URL of a web page to help resolving this issue.
679	Documentation string `json:"documentation,omitempty"`
680
681	// Id: Issue identifier.
682	Id string `json:"id,omitempty"`
683
684	// Severity: Severity of the issue.
685	Severity string `json:"severity,omitempty"`
686
687	// Title: Short description of the issue.
688	Title string `json:"title,omitempty"`
689
690	// ForceSendFields is a list of field names (e.g. "Country") to
691	// unconditionally include in API requests. By default, fields with
692	// empty values are omitted from API requests. However, any non-pointer,
693	// non-interface field appearing in ForceSendFields will be sent to the
694	// server regardless of whether the field is empty or not. This may be
695	// used to include empty fields in Patch requests.
696	ForceSendFields []string `json:"-"`
697
698	// NullFields is a list of field names (e.g. "Country") to include in
699	// API requests with the JSON null value. By default, fields with empty
700	// values are omitted from API requests. However, any field with an
701	// empty value appearing in NullFields will be sent to the server as
702	// null. It is an error if a field in this list has a non-empty value.
703	// This may be used to include null fields in Patch requests.
704	NullFields []string `json:"-"`
705}
706
707func (s *AccountStatusAccountLevelIssue) MarshalJSON() ([]byte, error) {
708	type NoMethod AccountStatusAccountLevelIssue
709	raw := NoMethod(*s)
710	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
711}
712
713type AccountStatusDataQualityIssue struct {
714	Country string `json:"country,omitempty"`
715
716	Destination string `json:"destination,omitempty"`
717
718	Detail string `json:"detail,omitempty"`
719
720	DisplayedValue string `json:"displayedValue,omitempty"`
721
722	ExampleItems []*AccountStatusExampleItem `json:"exampleItems,omitempty"`
723
724	Id string `json:"id,omitempty"`
725
726	LastChecked string `json:"lastChecked,omitempty"`
727
728	Location string `json:"location,omitempty"`
729
730	NumItems int64 `json:"numItems,omitempty"`
731
732	Severity string `json:"severity,omitempty"`
733
734	SubmittedValue string `json:"submittedValue,omitempty"`
735
736	// ForceSendFields is a list of field names (e.g. "Country") to
737	// unconditionally include in API requests. By default, fields with
738	// empty values are omitted from API requests. However, any non-pointer,
739	// non-interface field appearing in ForceSendFields will be sent to the
740	// server regardless of whether the field is empty or not. This may be
741	// used to include empty fields in Patch requests.
742	ForceSendFields []string `json:"-"`
743
744	// NullFields is a list of field names (e.g. "Country") to include in
745	// API requests with the JSON null value. By default, fields with empty
746	// values are omitted from API requests. However, any field with an
747	// empty value appearing in NullFields will be sent to the server as
748	// null. It is an error if a field in this list has a non-empty value.
749	// This may be used to include null fields in Patch requests.
750	NullFields []string `json:"-"`
751}
752
753func (s *AccountStatusDataQualityIssue) MarshalJSON() ([]byte, error) {
754	type NoMethod AccountStatusDataQualityIssue
755	raw := NoMethod(*s)
756	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
757}
758
759type AccountStatusExampleItem struct {
760	ItemId string `json:"itemId,omitempty"`
761
762	Link string `json:"link,omitempty"`
763
764	SubmittedValue string `json:"submittedValue,omitempty"`
765
766	Title string `json:"title,omitempty"`
767
768	ValueOnLandingPage string `json:"valueOnLandingPage,omitempty"`
769
770	// ForceSendFields is a list of field names (e.g. "ItemId") to
771	// unconditionally include in API requests. By default, fields with
772	// empty values are omitted from API requests. However, any non-pointer,
773	// non-interface field appearing in ForceSendFields will be sent to the
774	// server regardless of whether the field is empty or not. This may be
775	// used to include empty fields in Patch requests.
776	ForceSendFields []string `json:"-"`
777
778	// NullFields is a list of field names (e.g. "ItemId") to include in API
779	// requests with the JSON null value. By default, fields with empty
780	// values are omitted from API requests. However, any field with an
781	// empty value appearing in NullFields will be sent to the server as
782	// null. It is an error if a field in this list has a non-empty value.
783	// This may be used to include null fields in Patch requests.
784	NullFields []string `json:"-"`
785}
786
787func (s *AccountStatusExampleItem) MarshalJSON() ([]byte, error) {
788	type NoMethod AccountStatusExampleItem
789	raw := NoMethod(*s)
790	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
791}
792
793type AccountStatusItemLevelIssue struct {
794	// AttributeName: The attribute's name, if the issue is caused by a
795	// single attribute.
796	AttributeName string `json:"attributeName,omitempty"`
797
798	// Code: The error code of the issue.
799	Code string `json:"code,omitempty"`
800
801	// Description: A short issue description in English.
802	Description string `json:"description,omitempty"`
803
804	// Detail: A detailed issue description in English.
805	Detail string `json:"detail,omitempty"`
806
807	// Documentation: The URL of a web page to help with resolving this
808	// issue.
809	Documentation string `json:"documentation,omitempty"`
810
811	// NumItems: Number of items with this issue.
812	NumItems int64 `json:"numItems,omitempty,string"`
813
814	// Resolution: Whether the issue can be resolved by the merchant.
815	Resolution string `json:"resolution,omitempty"`
816
817	// Servability: How this issue affects serving of the offer.
818	Servability string `json:"servability,omitempty"`
819
820	// ForceSendFields is a list of field names (e.g. "AttributeName") to
821	// unconditionally include in API requests. By default, fields with
822	// empty values are omitted from API requests. However, any non-pointer,
823	// non-interface field appearing in ForceSendFields will be sent to the
824	// server regardless of whether the field is empty or not. This may be
825	// used to include empty fields in Patch requests.
826	ForceSendFields []string `json:"-"`
827
828	// NullFields is a list of field names (e.g. "AttributeName") to include
829	// in API requests with the JSON null value. By default, fields with
830	// empty values are omitted from API requests. However, any field with
831	// an empty value appearing in NullFields will be sent to the server as
832	// null. It is an error if a field in this list has a non-empty value.
833	// This may be used to include null fields in Patch requests.
834	NullFields []string `json:"-"`
835}
836
837func (s *AccountStatusItemLevelIssue) MarshalJSON() ([]byte, error) {
838	type NoMethod AccountStatusItemLevelIssue
839	raw := NoMethod(*s)
840	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
841}
842
843type AccountStatusProducts struct {
844	// Channel: The channel the data applies to.
845	Channel string `json:"channel,omitempty"`
846
847	// Country: The country the data applies to.
848	Country string `json:"country,omitempty"`
849
850	// Destination: The destination the data applies to.
851	Destination string `json:"destination,omitempty"`
852
853	// ItemLevelIssues: List of item-level issues.
854	ItemLevelIssues []*AccountStatusItemLevelIssue `json:"itemLevelIssues,omitempty"`
855
856	// Statistics: Aggregated product statistics.
857	Statistics *AccountStatusStatistics `json:"statistics,omitempty"`
858
859	// ForceSendFields is a list of field names (e.g. "Channel") to
860	// unconditionally include in API requests. By default, fields with
861	// empty values are omitted from API requests. However, any non-pointer,
862	// non-interface field appearing in ForceSendFields will be sent to the
863	// server regardless of whether the field is empty or not. This may be
864	// used to include empty fields in Patch requests.
865	ForceSendFields []string `json:"-"`
866
867	// NullFields is a list of field names (e.g. "Channel") to include in
868	// API requests with the JSON null value. By default, fields with empty
869	// values are omitted from API requests. However, any field with an
870	// empty value appearing in NullFields will be sent to the server as
871	// null. It is an error if a field in this list has a non-empty value.
872	// This may be used to include null fields in Patch requests.
873	NullFields []string `json:"-"`
874}
875
876func (s *AccountStatusProducts) MarshalJSON() ([]byte, error) {
877	type NoMethod AccountStatusProducts
878	raw := NoMethod(*s)
879	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
880}
881
882type AccountStatusStatistics struct {
883	// Active: Number of active offers.
884	Active int64 `json:"active,omitempty,string"`
885
886	// Disapproved: Number of disapproved offers.
887	Disapproved int64 `json:"disapproved,omitempty,string"`
888
889	// Expiring: Number of expiring offers.
890	Expiring int64 `json:"expiring,omitempty,string"`
891
892	// Pending: Number of pending offers.
893	Pending int64 `json:"pending,omitempty,string"`
894
895	// ForceSendFields is a list of field names (e.g. "Active") to
896	// unconditionally include in API requests. By default, fields with
897	// empty values are omitted from API requests. However, any non-pointer,
898	// non-interface field appearing in ForceSendFields will be sent to the
899	// server regardless of whether the field is empty or not. This may be
900	// used to include empty fields in Patch requests.
901	ForceSendFields []string `json:"-"`
902
903	// NullFields is a list of field names (e.g. "Active") to include in API
904	// requests with the JSON null value. By default, fields with empty
905	// values are omitted from API requests. However, any field with an
906	// empty value appearing in NullFields will be sent to the server as
907	// null. It is an error if a field in this list has a non-empty value.
908	// This may be used to include null fields in Patch requests.
909	NullFields []string `json:"-"`
910}
911
912func (s *AccountStatusStatistics) MarshalJSON() ([]byte, error) {
913	type NoMethod AccountStatusStatistics
914	raw := NoMethod(*s)
915	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
916}
917
918// AccountTax: The tax settings of a merchant account. All methods
919// require the admin role.
920type AccountTax struct {
921	// AccountId: The ID of the account to which these account tax settings
922	// belong.
923	AccountId uint64 `json:"accountId,omitempty,string"`
924
925	// Kind: Identifies what kind of resource this is. Value: the fixed
926	// string "content#accountTax".
927	Kind string `json:"kind,omitempty"`
928
929	// Rules: Tax rules. Updating the tax rules will enable US taxes (not
930	// reversible). Defining no rules is equivalent to not charging tax at
931	// all.
932	Rules []*AccountTaxTaxRule `json:"rules,omitempty"`
933
934	// ServerResponse contains the HTTP response code and headers from the
935	// server.
936	googleapi.ServerResponse `json:"-"`
937
938	// ForceSendFields is a list of field names (e.g. "AccountId") to
939	// unconditionally include in API requests. By default, fields with
940	// empty values are omitted from API requests. However, any non-pointer,
941	// non-interface field appearing in ForceSendFields will be sent to the
942	// server regardless of whether the field is empty or not. This may be
943	// used to include empty fields in Patch requests.
944	ForceSendFields []string `json:"-"`
945
946	// NullFields is a list of field names (e.g. "AccountId") to include in
947	// API requests with the JSON null value. By default, fields with empty
948	// values are omitted from API requests. However, any field with an
949	// empty value appearing in NullFields will be sent to the server as
950	// null. It is an error if a field in this list has a non-empty value.
951	// This may be used to include null fields in Patch requests.
952	NullFields []string `json:"-"`
953}
954
955func (s *AccountTax) MarshalJSON() ([]byte, error) {
956	type NoMethod AccountTax
957	raw := NoMethod(*s)
958	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
959}
960
961// AccountTaxTaxRule: Tax calculation rule to apply in a state or
962// province (USA only).
963type AccountTaxTaxRule struct {
964	// Country: Country code in which tax is applicable.
965	Country string `json:"country,omitempty"`
966
967	// LocationId: State (or province) is which the tax is applicable,
968	// described by its location ID (also called criteria ID).
969	LocationId uint64 `json:"locationId,omitempty,string"`
970
971	// RatePercent: Explicit tax rate in percent, represented as a floating
972	// point number without the percentage character. Must not be negative.
973	RatePercent string `json:"ratePercent,omitempty"`
974
975	// ShippingTaxed: If true, shipping charges are also taxed.
976	ShippingTaxed bool `json:"shippingTaxed,omitempty"`
977
978	// UseGlobalRate: Whether the tax rate is taken from a global tax table
979	// or specified explicitly.
980	UseGlobalRate bool `json:"useGlobalRate,omitempty"`
981
982	// ForceSendFields is a list of field names (e.g. "Country") to
983	// unconditionally include in API requests. By default, fields with
984	// empty values are omitted from API requests. However, any non-pointer,
985	// non-interface field appearing in ForceSendFields will be sent to the
986	// server regardless of whether the field is empty or not. This may be
987	// used to include empty fields in Patch requests.
988	ForceSendFields []string `json:"-"`
989
990	// NullFields is a list of field names (e.g. "Country") to include in
991	// API requests with the JSON null value. By default, fields with empty
992	// values are omitted from API requests. However, any field with an
993	// empty value appearing in NullFields will be sent to the server as
994	// null. It is an error if a field in this list has a non-empty value.
995	// This may be used to include null fields in Patch requests.
996	NullFields []string `json:"-"`
997}
998
999func (s *AccountTaxTaxRule) MarshalJSON() ([]byte, error) {
1000	type NoMethod AccountTaxTaxRule
1001	raw := NoMethod(*s)
1002	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1003}
1004
1005type AccountUser struct {
1006	// Admin: Whether user is an admin.
1007	Admin *bool `json:"admin,omitempty"`
1008
1009	// EmailAddress: User's email address.
1010	EmailAddress string `json:"emailAddress,omitempty"`
1011
1012	// OrderManager: Whether user is an order manager.
1013	OrderManager bool `json:"orderManager,omitempty"`
1014
1015	// PaymentsAnalyst: Whether user can access payment statements.
1016	PaymentsAnalyst bool `json:"paymentsAnalyst,omitempty"`
1017
1018	// PaymentsManager: Whether user can manage payment settings.
1019	PaymentsManager bool `json:"paymentsManager,omitempty"`
1020
1021	// ForceSendFields is a list of field names (e.g. "Admin") to
1022	// unconditionally include in API requests. By default, fields with
1023	// empty values are omitted from API requests. However, any non-pointer,
1024	// non-interface field appearing in ForceSendFields will be sent to the
1025	// server regardless of whether the field is empty or not. This may be
1026	// used to include empty fields in Patch requests.
1027	ForceSendFields []string `json:"-"`
1028
1029	// NullFields is a list of field names (e.g. "Admin") to include in API
1030	// requests with the JSON null value. By default, fields with empty
1031	// values are omitted from API requests. However, any field with an
1032	// empty value appearing in NullFields will be sent to the server as
1033	// null. It is an error if a field in this list has a non-empty value.
1034	// This may be used to include null fields in Patch requests.
1035	NullFields []string `json:"-"`
1036}
1037
1038func (s *AccountUser) MarshalJSON() ([]byte, error) {
1039	type NoMethod AccountUser
1040	raw := NoMethod(*s)
1041	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1042}
1043
1044type AccountYouTubeChannelLink struct {
1045	// ChannelId: Channel ID.
1046	ChannelId string `json:"channelId,omitempty"`
1047
1048	// Status: Status of the link between this Merchant Center account and
1049	// the YouTube channel. Upon retrieval, it represents the actual status
1050	// of the link and can be either active if it was approved in YT Creator
1051	// Studio or pending if it's pending approval. Upon insertion, it
1052	// represents the intended status of the link. Re-uploading a link with
1053	// status active when it's still pending or with status pending when
1054	// it's already active will have no effect: the status will remain
1055	// unchanged. Re-uploading a link with deprecated status inactive is
1056	// equivalent to not submitting the link at all and will delete the link
1057	// if it was active or cancel the link request if it was pending.
1058	Status string `json:"status,omitempty"`
1059
1060	// ForceSendFields is a list of field names (e.g. "ChannelId") to
1061	// unconditionally include in API requests. By default, fields with
1062	// empty values are omitted from API requests. However, any non-pointer,
1063	// non-interface field appearing in ForceSendFields will be sent to the
1064	// server regardless of whether the field is empty or not. This may be
1065	// used to include empty fields in Patch requests.
1066	ForceSendFields []string `json:"-"`
1067
1068	// NullFields is a list of field names (e.g. "ChannelId") to include in
1069	// API requests with the JSON null value. By default, fields with empty
1070	// values are omitted from API requests. However, any field with an
1071	// empty value appearing in NullFields will be sent to the server as
1072	// null. It is an error if a field in this list has a non-empty value.
1073	// This may be used to include null fields in Patch requests.
1074	NullFields []string `json:"-"`
1075}
1076
1077func (s *AccountYouTubeChannelLink) MarshalJSON() ([]byte, error) {
1078	type NoMethod AccountYouTubeChannelLink
1079	raw := NoMethod(*s)
1080	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1081}
1082
1083type AccountsAuthInfoResponse struct {
1084	// AccountIdentifiers: The account identifiers corresponding to the
1085	// authenticated user.
1086	// - For an individual account: only the merchant ID is defined
1087	// - For an aggregator: only the aggregator ID is defined
1088	// - For a subaccount of an MCA: both the merchant ID and the aggregator
1089	// ID are defined.
1090	AccountIdentifiers []*AccountIdentifier `json:"accountIdentifiers,omitempty"`
1091
1092	// Kind: Identifies what kind of resource this is. Value: the fixed
1093	// string "content#accountsAuthInfoResponse".
1094	Kind string `json:"kind,omitempty"`
1095
1096	// ServerResponse contains the HTTP response code and headers from the
1097	// server.
1098	googleapi.ServerResponse `json:"-"`
1099
1100	// ForceSendFields is a list of field names (e.g. "AccountIdentifiers")
1101	// to unconditionally include in API requests. By default, fields with
1102	// empty values are omitted from API requests. However, any non-pointer,
1103	// non-interface field appearing in ForceSendFields will be sent to the
1104	// server regardless of whether the field is empty or not. This may be
1105	// used to include empty fields in Patch requests.
1106	ForceSendFields []string `json:"-"`
1107
1108	// NullFields is a list of field names (e.g. "AccountIdentifiers") to
1109	// include in API requests with the JSON null value. By default, fields
1110	// with empty values are omitted from API requests. However, any field
1111	// with an empty value appearing in NullFields will be sent to the
1112	// server as null. It is an error if a field in this list has a
1113	// non-empty value. This may be used to include null fields in Patch
1114	// requests.
1115	NullFields []string `json:"-"`
1116}
1117
1118func (s *AccountsAuthInfoResponse) MarshalJSON() ([]byte, error) {
1119	type NoMethod AccountsAuthInfoResponse
1120	raw := NoMethod(*s)
1121	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1122}
1123
1124type AccountsClaimWebsiteResponse struct {
1125	// Kind: Identifies what kind of resource this is. Value: the fixed
1126	// string "content#accountsClaimWebsiteResponse".
1127	Kind string `json:"kind,omitempty"`
1128
1129	// ServerResponse contains the HTTP response code and headers from the
1130	// server.
1131	googleapi.ServerResponse `json:"-"`
1132
1133	// ForceSendFields is a list of field names (e.g. "Kind") to
1134	// unconditionally include in API requests. By default, fields with
1135	// empty values are omitted from API requests. However, any non-pointer,
1136	// non-interface field appearing in ForceSendFields will be sent to the
1137	// server regardless of whether the field is empty or not. This may be
1138	// used to include empty fields in Patch requests.
1139	ForceSendFields []string `json:"-"`
1140
1141	// NullFields is a list of field names (e.g. "Kind") to include in API
1142	// requests with the JSON null value. By default, fields with empty
1143	// values are omitted from API requests. However, any field with an
1144	// empty value appearing in NullFields will be sent to the server as
1145	// null. It is an error if a field in this list has a non-empty value.
1146	// This may be used to include null fields in Patch requests.
1147	NullFields []string `json:"-"`
1148}
1149
1150func (s *AccountsClaimWebsiteResponse) MarshalJSON() ([]byte, error) {
1151	type NoMethod AccountsClaimWebsiteResponse
1152	raw := NoMethod(*s)
1153	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1154}
1155
1156type AccountsCustomBatchRequest struct {
1157	// Entries: The request entries to be processed in the batch.
1158	Entries []*AccountsCustomBatchRequestEntry `json:"entries,omitempty"`
1159
1160	// ForceSendFields is a list of field names (e.g. "Entries") to
1161	// unconditionally include in API requests. By default, fields with
1162	// empty values are omitted from API requests. However, any non-pointer,
1163	// non-interface field appearing in ForceSendFields will be sent to the
1164	// server regardless of whether the field is empty or not. This may be
1165	// used to include empty fields in Patch requests.
1166	ForceSendFields []string `json:"-"`
1167
1168	// NullFields is a list of field names (e.g. "Entries") to include in
1169	// API requests with the JSON null value. By default, fields with empty
1170	// values are omitted from API requests. However, any field with an
1171	// empty value appearing in NullFields will be sent to the server as
1172	// null. It is an error if a field in this list has a non-empty value.
1173	// This may be used to include null fields in Patch requests.
1174	NullFields []string `json:"-"`
1175}
1176
1177func (s *AccountsCustomBatchRequest) MarshalJSON() ([]byte, error) {
1178	type NoMethod AccountsCustomBatchRequest
1179	raw := NoMethod(*s)
1180	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1181}
1182
1183// AccountsCustomBatchRequestEntry: A batch entry encoding a single
1184// non-batch accounts request.
1185type AccountsCustomBatchRequestEntry struct {
1186	// Account: The account to create or update. Only defined if the method
1187	// is insert or update.
1188	Account *Account `json:"account,omitempty"`
1189
1190	// AccountId: The ID of the targeted account. Only defined if the method
1191	// is not insert.
1192	AccountId uint64 `json:"accountId,omitempty,string"`
1193
1194	// BatchId: An entry ID, unique within the batch request.
1195	BatchId int64 `json:"batchId,omitempty"`
1196
1197	// Force: Whether the account should be deleted if the account has
1198	// offers. Only applicable if the method is delete.
1199	Force bool `json:"force,omitempty"`
1200
1201	// LinkRequest: Details about the link request.
1202	LinkRequest *AccountsCustomBatchRequestEntryLinkRequest `json:"linkRequest,omitempty"`
1203
1204	// MerchantId: The ID of the managing account.
1205	MerchantId uint64 `json:"merchantId,omitempty,string"`
1206
1207	// Method: The method of the batch entry.
1208	Method string `json:"method,omitempty"`
1209
1210	// Overwrite: Only applicable if the method is claimwebsite. Indicates
1211	// whether or not to take the claim from another account in case there
1212	// is a conflict.
1213	Overwrite bool `json:"overwrite,omitempty"`
1214
1215	// ForceSendFields is a list of field names (e.g. "Account") to
1216	// unconditionally include in API requests. By default, fields with
1217	// empty values are omitted from API requests. However, any non-pointer,
1218	// non-interface field appearing in ForceSendFields will be sent to the
1219	// server regardless of whether the field is empty or not. This may be
1220	// used to include empty fields in Patch requests.
1221	ForceSendFields []string `json:"-"`
1222
1223	// NullFields is a list of field names (e.g. "Account") to include in
1224	// API requests with the JSON null value. By default, fields with empty
1225	// values are omitted from API requests. However, any field with an
1226	// empty value appearing in NullFields will be sent to the server as
1227	// null. It is an error if a field in this list has a non-empty value.
1228	// This may be used to include null fields in Patch requests.
1229	NullFields []string `json:"-"`
1230}
1231
1232func (s *AccountsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
1233	type NoMethod AccountsCustomBatchRequestEntry
1234	raw := NoMethod(*s)
1235	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1236}
1237
1238type AccountsCustomBatchRequestEntryLinkRequest struct {
1239	// Action: Action to perform for this link. The "request" action is only
1240	// available to select merchants.
1241	Action string `json:"action,omitempty"`
1242
1243	// LinkType: Type of the link between the two accounts.
1244	LinkType string `json:"linkType,omitempty"`
1245
1246	// LinkedAccountId: The ID of the linked account.
1247	LinkedAccountId string `json:"linkedAccountId,omitempty"`
1248
1249	// ForceSendFields is a list of field names (e.g. "Action") to
1250	// unconditionally include in API requests. By default, fields with
1251	// empty values are omitted from API requests. However, any non-pointer,
1252	// non-interface field appearing in ForceSendFields will be sent to the
1253	// server regardless of whether the field is empty or not. This may be
1254	// used to include empty fields in Patch requests.
1255	ForceSendFields []string `json:"-"`
1256
1257	// NullFields is a list of field names (e.g. "Action") to include in API
1258	// requests with the JSON null value. By default, fields with empty
1259	// values are omitted from API requests. However, any field with an
1260	// empty value appearing in NullFields will be sent to the server as
1261	// null. It is an error if a field in this list has a non-empty value.
1262	// This may be used to include null fields in Patch requests.
1263	NullFields []string `json:"-"`
1264}
1265
1266func (s *AccountsCustomBatchRequestEntryLinkRequest) MarshalJSON() ([]byte, error) {
1267	type NoMethod AccountsCustomBatchRequestEntryLinkRequest
1268	raw := NoMethod(*s)
1269	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1270}
1271
1272type AccountsCustomBatchResponse struct {
1273	// Entries: The result of the execution of the batch requests.
1274	Entries []*AccountsCustomBatchResponseEntry `json:"entries,omitempty"`
1275
1276	// Kind: Identifies what kind of resource this is. Value: the fixed
1277	// string "content#accountsCustomBatchResponse".
1278	Kind string `json:"kind,omitempty"`
1279
1280	// ServerResponse contains the HTTP response code and headers from the
1281	// server.
1282	googleapi.ServerResponse `json:"-"`
1283
1284	// ForceSendFields is a list of field names (e.g. "Entries") to
1285	// unconditionally include in API requests. By default, fields with
1286	// empty values are omitted from API requests. However, any non-pointer,
1287	// non-interface field appearing in ForceSendFields will be sent to the
1288	// server regardless of whether the field is empty or not. This may be
1289	// used to include empty fields in Patch requests.
1290	ForceSendFields []string `json:"-"`
1291
1292	// NullFields is a list of field names (e.g. "Entries") to include in
1293	// API requests with the JSON null value. By default, fields with empty
1294	// values are omitted from API requests. However, any field with an
1295	// empty value appearing in NullFields will be sent to the server as
1296	// null. It is an error if a field in this list has a non-empty value.
1297	// This may be used to include null fields in Patch requests.
1298	NullFields []string `json:"-"`
1299}
1300
1301func (s *AccountsCustomBatchResponse) MarshalJSON() ([]byte, error) {
1302	type NoMethod AccountsCustomBatchResponse
1303	raw := NoMethod(*s)
1304	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1305}
1306
1307// AccountsCustomBatchResponseEntry: A batch entry encoding a single
1308// non-batch accounts response.
1309type AccountsCustomBatchResponseEntry struct {
1310	// Account: The retrieved, created, or updated account. Not defined if
1311	// the method was delete, claimwebsite or link.
1312	Account *Account `json:"account,omitempty"`
1313
1314	// BatchId: The ID of the request entry this entry responds to.
1315	BatchId int64 `json:"batchId,omitempty"`
1316
1317	// Errors: A list of errors defined if and only if the request failed.
1318	Errors *Errors `json:"errors,omitempty"`
1319
1320	// Kind: Identifies what kind of resource this is. Value: the fixed
1321	// string "content#accountsCustomBatchResponseEntry".
1322	Kind string `json:"kind,omitempty"`
1323
1324	// LinkStatus: Deprecated. This field is never set.
1325	LinkStatus string `json:"linkStatus,omitempty"`
1326
1327	// ForceSendFields is a list of field names (e.g. "Account") to
1328	// unconditionally include in API requests. By default, fields with
1329	// empty values are omitted from API requests. However, any non-pointer,
1330	// non-interface field appearing in ForceSendFields will be sent to the
1331	// server regardless of whether the field is empty or not. This may be
1332	// used to include empty fields in Patch requests.
1333	ForceSendFields []string `json:"-"`
1334
1335	// NullFields is a list of field names (e.g. "Account") to include in
1336	// API requests with the JSON null value. By default, fields with empty
1337	// values are omitted from API requests. However, any field with an
1338	// empty value appearing in NullFields will be sent to the server as
1339	// null. It is an error if a field in this list has a non-empty value.
1340	// This may be used to include null fields in Patch requests.
1341	NullFields []string `json:"-"`
1342}
1343
1344func (s *AccountsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
1345	type NoMethod AccountsCustomBatchResponseEntry
1346	raw := NoMethod(*s)
1347	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1348}
1349
1350type AccountsLinkRequest struct {
1351	// Action: Action to perform for this link. The "request" action is only
1352	// available to select merchants.
1353	Action string `json:"action,omitempty"`
1354
1355	// LinkType: Type of the link between the two accounts.
1356	LinkType string `json:"linkType,omitempty"`
1357
1358	// LinkedAccountId: The ID of the linked account.
1359	LinkedAccountId string `json:"linkedAccountId,omitempty"`
1360
1361	// ForceSendFields is a list of field names (e.g. "Action") to
1362	// unconditionally include in API requests. By default, fields with
1363	// empty values are omitted from API requests. However, any non-pointer,
1364	// non-interface field appearing in ForceSendFields will be sent to the
1365	// server regardless of whether the field is empty or not. This may be
1366	// used to include empty fields in Patch requests.
1367	ForceSendFields []string `json:"-"`
1368
1369	// NullFields is a list of field names (e.g. "Action") to include in API
1370	// requests with the JSON null value. By default, fields with empty
1371	// values are omitted from API requests. However, any field with an
1372	// empty value appearing in NullFields will be sent to the server as
1373	// null. It is an error if a field in this list has a non-empty value.
1374	// This may be used to include null fields in Patch requests.
1375	NullFields []string `json:"-"`
1376}
1377
1378func (s *AccountsLinkRequest) MarshalJSON() ([]byte, error) {
1379	type NoMethod AccountsLinkRequest
1380	raw := NoMethod(*s)
1381	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1382}
1383
1384type AccountsLinkResponse struct {
1385	// Kind: Identifies what kind of resource this is. Value: the fixed
1386	// string "content#accountsLinkResponse".
1387	Kind string `json:"kind,omitempty"`
1388
1389	// ServerResponse contains the HTTP response code and headers from the
1390	// server.
1391	googleapi.ServerResponse `json:"-"`
1392
1393	// ForceSendFields is a list of field names (e.g. "Kind") to
1394	// unconditionally include in API requests. By default, fields with
1395	// empty values are omitted from API requests. However, any non-pointer,
1396	// non-interface field appearing in ForceSendFields will be sent to the
1397	// server regardless of whether the field is empty or not. This may be
1398	// used to include empty fields in Patch requests.
1399	ForceSendFields []string `json:"-"`
1400
1401	// NullFields is a list of field names (e.g. "Kind") to include in API
1402	// requests with the JSON null value. By default, fields with empty
1403	// values are omitted from API requests. However, any field with an
1404	// empty value appearing in NullFields will be sent to the server as
1405	// null. It is an error if a field in this list has a non-empty value.
1406	// This may be used to include null fields in Patch requests.
1407	NullFields []string `json:"-"`
1408}
1409
1410func (s *AccountsLinkResponse) MarshalJSON() ([]byte, error) {
1411	type NoMethod AccountsLinkResponse
1412	raw := NoMethod(*s)
1413	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1414}
1415
1416type AccountsListResponse struct {
1417	// Kind: Identifies what kind of resource this is. Value: the fixed
1418	// string "content#accountsListResponse".
1419	Kind string `json:"kind,omitempty"`
1420
1421	// NextPageToken: The token for the retrieval of the next page of
1422	// accounts.
1423	NextPageToken string `json:"nextPageToken,omitempty"`
1424
1425	Resources []*Account `json:"resources,omitempty"`
1426
1427	// ServerResponse contains the HTTP response code and headers from the
1428	// server.
1429	googleapi.ServerResponse `json:"-"`
1430
1431	// ForceSendFields is a list of field names (e.g. "Kind") to
1432	// unconditionally include in API requests. By default, fields with
1433	// empty values are omitted from API requests. However, any non-pointer,
1434	// non-interface field appearing in ForceSendFields will be sent to the
1435	// server regardless of whether the field is empty or not. This may be
1436	// used to include empty fields in Patch requests.
1437	ForceSendFields []string `json:"-"`
1438
1439	// NullFields is a list of field names (e.g. "Kind") to include in API
1440	// requests with the JSON null value. By default, fields with empty
1441	// values are omitted from API requests. However, any field with an
1442	// empty value appearing in NullFields will be sent to the server as
1443	// null. It is an error if a field in this list has a non-empty value.
1444	// This may be used to include null fields in Patch requests.
1445	NullFields []string `json:"-"`
1446}
1447
1448func (s *AccountsListResponse) MarshalJSON() ([]byte, error) {
1449	type NoMethod AccountsListResponse
1450	raw := NoMethod(*s)
1451	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1452}
1453
1454type AccountstatusesCustomBatchRequest struct {
1455	// Entries: The request entries to be processed in the batch.
1456	Entries []*AccountstatusesCustomBatchRequestEntry `json:"entries,omitempty"`
1457
1458	// ForceSendFields is a list of field names (e.g. "Entries") to
1459	// unconditionally include in API requests. By default, fields with
1460	// empty values are omitted from API requests. However, any non-pointer,
1461	// non-interface field appearing in ForceSendFields will be sent to the
1462	// server regardless of whether the field is empty or not. This may be
1463	// used to include empty fields in Patch requests.
1464	ForceSendFields []string `json:"-"`
1465
1466	// NullFields is a list of field names (e.g. "Entries") to include in
1467	// API requests with the JSON null value. By default, fields with empty
1468	// values are omitted from API requests. However, any field with an
1469	// empty value appearing in NullFields will be sent to the server as
1470	// null. It is an error if a field in this list has a non-empty value.
1471	// This may be used to include null fields in Patch requests.
1472	NullFields []string `json:"-"`
1473}
1474
1475func (s *AccountstatusesCustomBatchRequest) MarshalJSON() ([]byte, error) {
1476	type NoMethod AccountstatusesCustomBatchRequest
1477	raw := NoMethod(*s)
1478	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1479}
1480
1481// AccountstatusesCustomBatchRequestEntry: A batch entry encoding a
1482// single non-batch accountstatuses request.
1483type AccountstatusesCustomBatchRequestEntry struct {
1484	// AccountId: The ID of the (sub-)account whose status to get.
1485	AccountId uint64 `json:"accountId,omitempty,string"`
1486
1487	// BatchId: An entry ID, unique within the batch request.
1488	BatchId int64 `json:"batchId,omitempty"`
1489
1490	// Destinations: If set, only issues for the specified destinations are
1491	// returned, otherwise only issues for the Shopping destination.
1492	Destinations []string `json:"destinations,omitempty"`
1493
1494	// MerchantId: The ID of the managing account.
1495	MerchantId uint64 `json:"merchantId,omitempty,string"`
1496
1497	// Method: The method (get).
1498	Method string `json:"method,omitempty"`
1499
1500	// ForceSendFields is a list of field names (e.g. "AccountId") to
1501	// unconditionally include in API requests. By default, fields with
1502	// empty values are omitted from API requests. However, any non-pointer,
1503	// non-interface field appearing in ForceSendFields will be sent to the
1504	// server regardless of whether the field is empty or not. This may be
1505	// used to include empty fields in Patch requests.
1506	ForceSendFields []string `json:"-"`
1507
1508	// NullFields is a list of field names (e.g. "AccountId") to include in
1509	// API requests with the JSON null value. By default, fields with empty
1510	// values are omitted from API requests. However, any field with an
1511	// empty value appearing in NullFields will be sent to the server as
1512	// null. It is an error if a field in this list has a non-empty value.
1513	// This may be used to include null fields in Patch requests.
1514	NullFields []string `json:"-"`
1515}
1516
1517func (s *AccountstatusesCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
1518	type NoMethod AccountstatusesCustomBatchRequestEntry
1519	raw := NoMethod(*s)
1520	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1521}
1522
1523type AccountstatusesCustomBatchResponse struct {
1524	// Entries: The result of the execution of the batch requests.
1525	Entries []*AccountstatusesCustomBatchResponseEntry `json:"entries,omitempty"`
1526
1527	// Kind: Identifies what kind of resource this is. Value: the fixed
1528	// string "content#accountstatusesCustomBatchResponse".
1529	Kind string `json:"kind,omitempty"`
1530
1531	// ServerResponse contains the HTTP response code and headers from the
1532	// server.
1533	googleapi.ServerResponse `json:"-"`
1534
1535	// ForceSendFields is a list of field names (e.g. "Entries") to
1536	// unconditionally include in API requests. By default, fields with
1537	// empty values are omitted from API requests. However, any non-pointer,
1538	// non-interface field appearing in ForceSendFields will be sent to the
1539	// server regardless of whether the field is empty or not. This may be
1540	// used to include empty fields in Patch requests.
1541	ForceSendFields []string `json:"-"`
1542
1543	// NullFields is a list of field names (e.g. "Entries") to include in
1544	// API requests with the JSON null value. By default, fields with empty
1545	// values are omitted from API requests. However, any field with an
1546	// empty value appearing in NullFields will be sent to the server as
1547	// null. It is an error if a field in this list has a non-empty value.
1548	// This may be used to include null fields in Patch requests.
1549	NullFields []string `json:"-"`
1550}
1551
1552func (s *AccountstatusesCustomBatchResponse) MarshalJSON() ([]byte, error) {
1553	type NoMethod AccountstatusesCustomBatchResponse
1554	raw := NoMethod(*s)
1555	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1556}
1557
1558// AccountstatusesCustomBatchResponseEntry: A batch entry encoding a
1559// single non-batch accountstatuses response.
1560type AccountstatusesCustomBatchResponseEntry struct {
1561	// AccountStatus: The requested account status. Defined if and only if
1562	// the request was successful.
1563	AccountStatus *AccountStatus `json:"accountStatus,omitempty"`
1564
1565	// BatchId: The ID of the request entry this entry responds to.
1566	BatchId int64 `json:"batchId,omitempty"`
1567
1568	// Errors: A list of errors defined if and only if the request failed.
1569	Errors *Errors `json:"errors,omitempty"`
1570
1571	// ForceSendFields is a list of field names (e.g. "AccountStatus") to
1572	// unconditionally include in API requests. By default, fields with
1573	// empty values are omitted from API requests. However, any non-pointer,
1574	// non-interface field appearing in ForceSendFields will be sent to the
1575	// server regardless of whether the field is empty or not. This may be
1576	// used to include empty fields in Patch requests.
1577	ForceSendFields []string `json:"-"`
1578
1579	// NullFields is a list of field names (e.g. "AccountStatus") to include
1580	// in API requests with the JSON null value. By default, fields with
1581	// empty values are omitted from API requests. However, any field with
1582	// an empty value appearing in NullFields will be sent to the server as
1583	// null. It is an error if a field in this list has a non-empty value.
1584	// This may be used to include null fields in Patch requests.
1585	NullFields []string `json:"-"`
1586}
1587
1588func (s *AccountstatusesCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
1589	type NoMethod AccountstatusesCustomBatchResponseEntry
1590	raw := NoMethod(*s)
1591	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1592}
1593
1594type AccountstatusesListResponse struct {
1595	// Kind: Identifies what kind of resource this is. Value: the fixed
1596	// string "content#accountstatusesListResponse".
1597	Kind string `json:"kind,omitempty"`
1598
1599	// NextPageToken: The token for the retrieval of the next page of
1600	// account statuses.
1601	NextPageToken string `json:"nextPageToken,omitempty"`
1602
1603	Resources []*AccountStatus `json:"resources,omitempty"`
1604
1605	// ServerResponse contains the HTTP response code and headers from the
1606	// server.
1607	googleapi.ServerResponse `json:"-"`
1608
1609	// ForceSendFields is a list of field names (e.g. "Kind") to
1610	// unconditionally include in API requests. By default, fields with
1611	// empty values are omitted from API requests. However, any non-pointer,
1612	// non-interface field appearing in ForceSendFields will be sent to the
1613	// server regardless of whether the field is empty or not. This may be
1614	// used to include empty fields in Patch requests.
1615	ForceSendFields []string `json:"-"`
1616
1617	// NullFields is a list of field names (e.g. "Kind") to include in API
1618	// requests with the JSON null value. By default, fields with empty
1619	// values are omitted from API requests. However, any field with an
1620	// empty value appearing in NullFields will be sent to the server as
1621	// null. It is an error if a field in this list has a non-empty value.
1622	// This may be used to include null fields in Patch requests.
1623	NullFields []string `json:"-"`
1624}
1625
1626func (s *AccountstatusesListResponse) MarshalJSON() ([]byte, error) {
1627	type NoMethod AccountstatusesListResponse
1628	raw := NoMethod(*s)
1629	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1630}
1631
1632type AccounttaxCustomBatchRequest struct {
1633	// Entries: The request entries to be processed in the batch.
1634	Entries []*AccounttaxCustomBatchRequestEntry `json:"entries,omitempty"`
1635
1636	// ForceSendFields is a list of field names (e.g. "Entries") to
1637	// unconditionally include in API requests. By default, fields with
1638	// empty values are omitted from API requests. However, any non-pointer,
1639	// non-interface field appearing in ForceSendFields will be sent to the
1640	// server regardless of whether the field is empty or not. This may be
1641	// used to include empty fields in Patch requests.
1642	ForceSendFields []string `json:"-"`
1643
1644	// NullFields is a list of field names (e.g. "Entries") to include in
1645	// API requests with the JSON null value. By default, fields with empty
1646	// values are omitted from API requests. However, any field with an
1647	// empty value appearing in NullFields will be sent to the server as
1648	// null. It is an error if a field in this list has a non-empty value.
1649	// This may be used to include null fields in Patch requests.
1650	NullFields []string `json:"-"`
1651}
1652
1653func (s *AccounttaxCustomBatchRequest) MarshalJSON() ([]byte, error) {
1654	type NoMethod AccounttaxCustomBatchRequest
1655	raw := NoMethod(*s)
1656	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1657}
1658
1659// AccounttaxCustomBatchRequestEntry: A batch entry encoding a single
1660// non-batch accounttax request.
1661type AccounttaxCustomBatchRequestEntry struct {
1662	// AccountId: The ID of the account for which to get/update account tax
1663	// settings.
1664	AccountId uint64 `json:"accountId,omitempty,string"`
1665
1666	// AccountTax: The account tax settings to update. Only defined if the
1667	// method is update.
1668	AccountTax *AccountTax `json:"accountTax,omitempty"`
1669
1670	// BatchId: An entry ID, unique within the batch request.
1671	BatchId int64 `json:"batchId,omitempty"`
1672
1673	// MerchantId: The ID of the managing account.
1674	MerchantId uint64 `json:"merchantId,omitempty,string"`
1675
1676	Method string `json:"method,omitempty"`
1677
1678	// ForceSendFields is a list of field names (e.g. "AccountId") to
1679	// unconditionally include in API requests. By default, fields with
1680	// empty values are omitted from API requests. However, any non-pointer,
1681	// non-interface field appearing in ForceSendFields will be sent to the
1682	// server regardless of whether the field is empty or not. This may be
1683	// used to include empty fields in Patch requests.
1684	ForceSendFields []string `json:"-"`
1685
1686	// NullFields is a list of field names (e.g. "AccountId") to include in
1687	// API requests with the JSON null value. By default, fields with empty
1688	// values are omitted from API requests. However, any field with an
1689	// empty value appearing in NullFields will be sent to the server as
1690	// null. It is an error if a field in this list has a non-empty value.
1691	// This may be used to include null fields in Patch requests.
1692	NullFields []string `json:"-"`
1693}
1694
1695func (s *AccounttaxCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
1696	type NoMethod AccounttaxCustomBatchRequestEntry
1697	raw := NoMethod(*s)
1698	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1699}
1700
1701type AccounttaxCustomBatchResponse struct {
1702	// Entries: The result of the execution of the batch requests.
1703	Entries []*AccounttaxCustomBatchResponseEntry `json:"entries,omitempty"`
1704
1705	// Kind: Identifies what kind of resource this is. Value: the fixed
1706	// string "content#accounttaxCustomBatchResponse".
1707	Kind string `json:"kind,omitempty"`
1708
1709	// ServerResponse contains the HTTP response code and headers from the
1710	// server.
1711	googleapi.ServerResponse `json:"-"`
1712
1713	// ForceSendFields is a list of field names (e.g. "Entries") to
1714	// unconditionally include in API requests. By default, fields with
1715	// empty values are omitted from API requests. However, any non-pointer,
1716	// non-interface field appearing in ForceSendFields will be sent to the
1717	// server regardless of whether the field is empty or not. This may be
1718	// used to include empty fields in Patch requests.
1719	ForceSendFields []string `json:"-"`
1720
1721	// NullFields is a list of field names (e.g. "Entries") to include in
1722	// API requests with the JSON null value. By default, fields with empty
1723	// values are omitted from API requests. However, any field with an
1724	// empty value appearing in NullFields will be sent to the server as
1725	// null. It is an error if a field in this list has a non-empty value.
1726	// This may be used to include null fields in Patch requests.
1727	NullFields []string `json:"-"`
1728}
1729
1730func (s *AccounttaxCustomBatchResponse) MarshalJSON() ([]byte, error) {
1731	type NoMethod AccounttaxCustomBatchResponse
1732	raw := NoMethod(*s)
1733	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1734}
1735
1736// AccounttaxCustomBatchResponseEntry: A batch entry encoding a single
1737// non-batch accounttax response.
1738type AccounttaxCustomBatchResponseEntry struct {
1739	// AccountTax: The retrieved or updated account tax settings.
1740	AccountTax *AccountTax `json:"accountTax,omitempty"`
1741
1742	// BatchId: The ID of the request entry this entry responds to.
1743	BatchId int64 `json:"batchId,omitempty"`
1744
1745	// Errors: A list of errors defined if and only if the request failed.
1746	Errors *Errors `json:"errors,omitempty"`
1747
1748	// Kind: Identifies what kind of resource this is. Value: the fixed
1749	// string "content#accounttaxCustomBatchResponseEntry".
1750	Kind string `json:"kind,omitempty"`
1751
1752	// ForceSendFields is a list of field names (e.g. "AccountTax") to
1753	// unconditionally include in API requests. By default, fields with
1754	// empty values are omitted from API requests. However, any non-pointer,
1755	// non-interface field appearing in ForceSendFields will be sent to the
1756	// server regardless of whether the field is empty or not. This may be
1757	// used to include empty fields in Patch requests.
1758	ForceSendFields []string `json:"-"`
1759
1760	// NullFields is a list of field names (e.g. "AccountTax") to include in
1761	// API requests with the JSON null value. By default, fields with empty
1762	// values are omitted from API requests. However, any field with an
1763	// empty value appearing in NullFields will be sent to the server as
1764	// null. It is an error if a field in this list has a non-empty value.
1765	// This may be used to include null fields in Patch requests.
1766	NullFields []string `json:"-"`
1767}
1768
1769func (s *AccounttaxCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
1770	type NoMethod AccounttaxCustomBatchResponseEntry
1771	raw := NoMethod(*s)
1772	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1773}
1774
1775type AccounttaxListResponse struct {
1776	// Kind: Identifies what kind of resource this is. Value: the fixed
1777	// string "content#accounttaxListResponse".
1778	Kind string `json:"kind,omitempty"`
1779
1780	// NextPageToken: The token for the retrieval of the next page of
1781	// account tax settings.
1782	NextPageToken string `json:"nextPageToken,omitempty"`
1783
1784	Resources []*AccountTax `json:"resources,omitempty"`
1785
1786	// ServerResponse contains the HTTP response code and headers from the
1787	// server.
1788	googleapi.ServerResponse `json:"-"`
1789
1790	// ForceSendFields is a list of field names (e.g. "Kind") to
1791	// unconditionally include in API requests. By default, fields with
1792	// empty values are omitted from API requests. However, any non-pointer,
1793	// non-interface field appearing in ForceSendFields will be sent to the
1794	// server regardless of whether the field is empty or not. This may be
1795	// used to include empty fields in Patch requests.
1796	ForceSendFields []string `json:"-"`
1797
1798	// NullFields is a list of field names (e.g. "Kind") to include in API
1799	// requests with the JSON null value. By default, fields with empty
1800	// values are omitted from API requests. However, any field with an
1801	// empty value appearing in NullFields will be sent to the server as
1802	// null. It is an error if a field in this list has a non-empty value.
1803	// This may be used to include null fields in Patch requests.
1804	NullFields []string `json:"-"`
1805}
1806
1807func (s *AccounttaxListResponse) MarshalJSON() ([]byte, error) {
1808	type NoMethod AccounttaxListResponse
1809	raw := NoMethod(*s)
1810	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1811}
1812
1813type Amount struct {
1814	// Pretax: [required] Value before taxes.
1815	Pretax *Price `json:"pretax,omitempty"`
1816
1817	// Tax: [required] Tax value.
1818	Tax *Price `json:"tax,omitempty"`
1819
1820	// ForceSendFields is a list of field names (e.g. "Pretax") to
1821	// unconditionally include in API requests. By default, fields with
1822	// empty values are omitted from API requests. However, any non-pointer,
1823	// non-interface field appearing in ForceSendFields will be sent to the
1824	// server regardless of whether the field is empty or not. This may be
1825	// used to include empty fields in Patch requests.
1826	ForceSendFields []string `json:"-"`
1827
1828	// NullFields is a list of field names (e.g. "Pretax") to include in API
1829	// requests with the JSON null value. By default, fields with empty
1830	// values are omitted from API requests. However, any field with an
1831	// empty value appearing in NullFields will be sent to the server as
1832	// null. It is an error if a field in this list has a non-empty value.
1833	// This may be used to include null fields in Patch requests.
1834	NullFields []string `json:"-"`
1835}
1836
1837func (s *Amount) MarshalJSON() ([]byte, error) {
1838	type NoMethod Amount
1839	raw := NoMethod(*s)
1840	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1841}
1842
1843type CarrierRate struct {
1844	// CarrierName: Carrier service, such as "UPS" or "Fedex". The list of
1845	// supported carriers can be retrieved via the getSupportedCarriers
1846	// method. Required.
1847	CarrierName string `json:"carrierName,omitempty"`
1848
1849	// CarrierService: Carrier service, such as "ground" or "2 days". The
1850	// list of supported services for a carrier can be retrieved via the
1851	// getSupportedCarriers method. Required.
1852	CarrierService string `json:"carrierService,omitempty"`
1853
1854	// FlatAdjustment: Additive shipping rate modifier. Can be negative. For
1855	// example { "value": "1", "currency" : "USD" } adds $1 to the rate, {
1856	// "value": "-3", "currency" : "USD" } removes $3 from the rate.
1857	// Optional.
1858	FlatAdjustment *Price `json:"flatAdjustment,omitempty"`
1859
1860	// Name: Name of the carrier rate. Must be unique per rate group.
1861	// Required.
1862	Name string `json:"name,omitempty"`
1863
1864	// OriginPostalCode: Shipping origin for this carrier rate. Required.
1865	OriginPostalCode string `json:"originPostalCode,omitempty"`
1866
1867	// PercentageAdjustment: Multiplicative shipping rate modifier as a
1868	// number in decimal notation. Can be negative. For example "5.4"
1869	// increases the rate by 5.4%, "-3" decreases the rate by 3%. Optional.
1870	PercentageAdjustment string `json:"percentageAdjustment,omitempty"`
1871
1872	// ForceSendFields is a list of field names (e.g. "CarrierName") to
1873	// unconditionally include in API requests. By default, fields with
1874	// empty values are omitted from API requests. However, any non-pointer,
1875	// non-interface field appearing in ForceSendFields will be sent to the
1876	// server regardless of whether the field is empty or not. This may be
1877	// used to include empty fields in Patch requests.
1878	ForceSendFields []string `json:"-"`
1879
1880	// NullFields is a list of field names (e.g. "CarrierName") to include
1881	// in API requests with the JSON null value. By default, fields with
1882	// empty values are omitted from API requests. However, any field with
1883	// an empty value appearing in NullFields will be sent to the server as
1884	// null. It is an error if a field in this list has a non-empty value.
1885	// This may be used to include null fields in Patch requests.
1886	NullFields []string `json:"-"`
1887}
1888
1889func (s *CarrierRate) MarshalJSON() ([]byte, error) {
1890	type NoMethod CarrierRate
1891	raw := NoMethod(*s)
1892	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1893}
1894
1895type CarriersCarrier struct {
1896	// Country: The CLDR country code of the carrier (e.g., "US"). Always
1897	// present.
1898	Country string `json:"country,omitempty"`
1899
1900	// Name: The name of the carrier (e.g., "UPS"). Always present.
1901	Name string `json:"name,omitempty"`
1902
1903	// Services: A list of supported services (e.g., "ground") for that
1904	// carrier. Contains at least one service.
1905	Services []string `json:"services,omitempty"`
1906
1907	// ForceSendFields is a list of field names (e.g. "Country") to
1908	// unconditionally include in API requests. By default, fields with
1909	// empty values are omitted from API requests. However, any non-pointer,
1910	// non-interface field appearing in ForceSendFields will be sent to the
1911	// server regardless of whether the field is empty or not. This may be
1912	// used to include empty fields in Patch requests.
1913	ForceSendFields []string `json:"-"`
1914
1915	// NullFields is a list of field names (e.g. "Country") to include in
1916	// API requests with the JSON null value. By default, fields with empty
1917	// values are omitted from API requests. However, any field with an
1918	// empty value appearing in NullFields will be sent to the server as
1919	// null. It is an error if a field in this list has a non-empty value.
1920	// This may be used to include null fields in Patch requests.
1921	NullFields []string `json:"-"`
1922}
1923
1924func (s *CarriersCarrier) MarshalJSON() ([]byte, error) {
1925	type NoMethod CarriersCarrier
1926	raw := NoMethod(*s)
1927	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1928}
1929
1930type CustomAttribute struct {
1931	// Name: The name of the attribute. Underscores will be replaced by
1932	// spaces upon insertion.
1933	Name string `json:"name,omitempty"`
1934
1935	// Type: The type of the attribute.
1936	Type string `json:"type,omitempty"`
1937
1938	// Unit: Free-form unit of the attribute. Unit can only be used for
1939	// values of type int, float, or price.
1940	Unit string `json:"unit,omitempty"`
1941
1942	// Value: The value of the attribute.
1943	Value string `json:"value,omitempty"`
1944
1945	// ForceSendFields is a list of field names (e.g. "Name") to
1946	// unconditionally include in API requests. By default, fields with
1947	// empty values are omitted from API requests. However, any non-pointer,
1948	// non-interface field appearing in ForceSendFields will be sent to the
1949	// server regardless of whether the field is empty or not. This may be
1950	// used to include empty fields in Patch requests.
1951	ForceSendFields []string `json:"-"`
1952
1953	// NullFields is a list of field names (e.g. "Name") to include in API
1954	// requests with the JSON null value. By default, fields with empty
1955	// values are omitted from API requests. However, any field with an
1956	// empty value appearing in NullFields will be sent to the server as
1957	// null. It is an error if a field in this list has a non-empty value.
1958	// This may be used to include null fields in Patch requests.
1959	NullFields []string `json:"-"`
1960}
1961
1962func (s *CustomAttribute) MarshalJSON() ([]byte, error) {
1963	type NoMethod CustomAttribute
1964	raw := NoMethod(*s)
1965	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1966}
1967
1968type CustomGroup struct {
1969	// Attributes: The sub-attributes.
1970	Attributes []*CustomAttribute `json:"attributes,omitempty"`
1971
1972	// Name: The name of the group. Underscores will be replaced by spaces
1973	// upon insertion.
1974	Name string `json:"name,omitempty"`
1975
1976	// ForceSendFields is a list of field names (e.g. "Attributes") to
1977	// unconditionally include in API requests. By default, fields with
1978	// empty values are omitted from API requests. However, any non-pointer,
1979	// non-interface field appearing in ForceSendFields will be sent to the
1980	// server regardless of whether the field is empty or not. This may be
1981	// used to include empty fields in Patch requests.
1982	ForceSendFields []string `json:"-"`
1983
1984	// NullFields is a list of field names (e.g. "Attributes") to include in
1985	// API requests with the JSON null value. By default, fields with empty
1986	// values are omitted from API requests. However, any field with an
1987	// empty value appearing in NullFields will be sent to the server as
1988	// null. It is an error if a field in this list has a non-empty value.
1989	// This may be used to include null fields in Patch requests.
1990	NullFields []string `json:"-"`
1991}
1992
1993func (s *CustomGroup) MarshalJSON() ([]byte, error) {
1994	type NoMethod CustomGroup
1995	raw := NoMethod(*s)
1996	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1997}
1998
1999type CustomerReturnReason struct {
2000	Description string `json:"description,omitempty"`
2001
2002	ReasonCode string `json:"reasonCode,omitempty"`
2003
2004	// ForceSendFields is a list of field names (e.g. "Description") to
2005	// unconditionally include in API requests. By default, fields with
2006	// empty values are omitted from API requests. However, any non-pointer,
2007	// non-interface field appearing in ForceSendFields will be sent to the
2008	// server regardless of whether the field is empty or not. This may be
2009	// used to include empty fields in Patch requests.
2010	ForceSendFields []string `json:"-"`
2011
2012	// NullFields is a list of field names (e.g. "Description") to include
2013	// in API requests with the JSON null value. By default, fields with
2014	// empty values are omitted from API requests. However, any field with
2015	// an empty value appearing in NullFields will be sent to the server as
2016	// null. It is an error if a field in this list has a non-empty value.
2017	// This may be used to include null fields in Patch requests.
2018	NullFields []string `json:"-"`
2019}
2020
2021func (s *CustomerReturnReason) MarshalJSON() ([]byte, error) {
2022	type NoMethod CustomerReturnReason
2023	raw := NoMethod(*s)
2024	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2025}
2026
2027type CutoffTime struct {
2028	// Hour: Hour of the cutoff time until which an order has to be placed
2029	// to be processed in the same day. Required.
2030	Hour int64 `json:"hour,omitempty"`
2031
2032	// Minute: Minute of the cutoff time until which an order has to be
2033	// placed to be processed in the same day. Required.
2034	Minute int64 `json:"minute,omitempty"`
2035
2036	// Timezone: Timezone identifier for the cutoff time. A list of
2037	// identifiers can be found in  the AdWords API documentation. E.g.
2038	// "Europe/Zurich". Required.
2039	Timezone string `json:"timezone,omitempty"`
2040
2041	// ForceSendFields is a list of field names (e.g. "Hour") to
2042	// unconditionally include in API requests. By default, fields with
2043	// empty values are omitted from API requests. However, any non-pointer,
2044	// non-interface field appearing in ForceSendFields will be sent to the
2045	// server regardless of whether the field is empty or not. This may be
2046	// used to include empty fields in Patch requests.
2047	ForceSendFields []string `json:"-"`
2048
2049	// NullFields is a list of field names (e.g. "Hour") to include in API
2050	// requests with the JSON null value. By default, fields with empty
2051	// values are omitted from API requests. However, any field with an
2052	// empty value appearing in NullFields will be sent to the server as
2053	// null. It is an error if a field in this list has a non-empty value.
2054	// This may be used to include null fields in Patch requests.
2055	NullFields []string `json:"-"`
2056}
2057
2058func (s *CutoffTime) MarshalJSON() ([]byte, error) {
2059	type NoMethod CutoffTime
2060	raw := NoMethod(*s)
2061	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2062}
2063
2064// Datafeed: Datafeed configuration data.
2065type Datafeed struct {
2066	// AttributeLanguage: The two-letter ISO 639-1 language in which the
2067	// attributes are defined in the data feed.
2068	AttributeLanguage string `json:"attributeLanguage,omitempty"`
2069
2070	// ContentLanguage: [DEPRECATED] Please use targets[].language instead.
2071	// The two-letter ISO 639-1 language of the items in the feed. Must be a
2072	// valid language for targetCountry.
2073	ContentLanguage string `json:"contentLanguage,omitempty"`
2074
2075	// ContentType: The type of data feed. For product inventory feeds, only
2076	// feeds for local stores, not online stores, are supported.
2077	ContentType string `json:"contentType,omitempty"`
2078
2079	// FetchSchedule: Fetch schedule for the feed file.
2080	FetchSchedule *DatafeedFetchSchedule `json:"fetchSchedule,omitempty"`
2081
2082	// FileName: The filename of the feed. All feeds must have a unique file
2083	// name.
2084	FileName string `json:"fileName,omitempty"`
2085
2086	// Format: Format of the feed file.
2087	Format *DatafeedFormat `json:"format,omitempty"`
2088
2089	// Id: The ID of the data feed.
2090	Id int64 `json:"id,omitempty,string"`
2091
2092	// IntendedDestinations: [DEPRECATED] Please use
2093	// targets[].includedDestinations instead. The list of intended
2094	// destinations (corresponds to checked check boxes in Merchant Center).
2095	IntendedDestinations []string `json:"intendedDestinations,omitempty"`
2096
2097	// Kind: Identifies what kind of resource this is. Value: the fixed
2098	// string "content#datafeed".
2099	Kind string `json:"kind,omitempty"`
2100
2101	// Name: A descriptive name of the data feed.
2102	Name string `json:"name,omitempty"`
2103
2104	// TargetCountry: [DEPRECATED] Please use targets[].country instead. The
2105	// country where the items in the feed will be included in the search
2106	// index, represented as a CLDR territory code.
2107	TargetCountry string `json:"targetCountry,omitempty"`
2108
2109	// Targets: The targets this feed should apply to (country, language,
2110	// destinations).
2111	Targets []*DatafeedTarget `json:"targets,omitempty"`
2112
2113	// ServerResponse contains the HTTP response code and headers from the
2114	// server.
2115	googleapi.ServerResponse `json:"-"`
2116
2117	// ForceSendFields is a list of field names (e.g. "AttributeLanguage")
2118	// to unconditionally include in API requests. By default, fields with
2119	// empty values are omitted from API requests. However, any non-pointer,
2120	// non-interface field appearing in ForceSendFields will be sent to the
2121	// server regardless of whether the field is empty or not. This may be
2122	// used to include empty fields in Patch requests.
2123	ForceSendFields []string `json:"-"`
2124
2125	// NullFields is a list of field names (e.g. "AttributeLanguage") to
2126	// include in API requests with the JSON null value. By default, fields
2127	// with empty values are omitted from API requests. However, any field
2128	// with an empty value appearing in NullFields will be sent to the
2129	// server as null. It is an error if a field in this list has a
2130	// non-empty value. This may be used to include null fields in Patch
2131	// requests.
2132	NullFields []string `json:"-"`
2133}
2134
2135func (s *Datafeed) MarshalJSON() ([]byte, error) {
2136	type NoMethod Datafeed
2137	raw := NoMethod(*s)
2138	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2139}
2140
2141// DatafeedFetchSchedule: The required fields vary based on the
2142// frequency of fetching. For a monthly fetch schedule, day_of_month and
2143// hour are required. For a weekly fetch schedule, weekday and hour are
2144// required. For a daily fetch schedule, only hour is required.
2145type DatafeedFetchSchedule struct {
2146	// DayOfMonth: The day of the month the feed file should be fetched
2147	// (1-31).
2148	DayOfMonth int64 `json:"dayOfMonth,omitempty"`
2149
2150	// FetchUrl: The URL where the feed file can be fetched. Google Merchant
2151	// Center will support automatic scheduled uploads using the HTTP,
2152	// HTTPS, FTP, or SFTP protocols, so the value will need to be a valid
2153	// link using one of those four protocols.
2154	FetchUrl string `json:"fetchUrl,omitempty"`
2155
2156	// Hour: The hour of the day the feed file should be fetched (0-23).
2157	Hour int64 `json:"hour,omitempty"`
2158
2159	// MinuteOfHour: The minute of the hour the feed file should be fetched
2160	// (0-59). Read-only.
2161	MinuteOfHour int64 `json:"minuteOfHour,omitempty"`
2162
2163	// Password: An optional password for fetch_url.
2164	Password string `json:"password,omitempty"`
2165
2166	// Paused: Whether the scheduled fetch is paused or not.
2167	Paused bool `json:"paused,omitempty"`
2168
2169	// TimeZone: Time zone used for schedule. UTC by default. E.g.,
2170	// "America/Los_Angeles".
2171	TimeZone string `json:"timeZone,omitempty"`
2172
2173	// Username: An optional user name for fetch_url.
2174	Username string `json:"username,omitempty"`
2175
2176	// Weekday: The day of the week the feed file should be fetched.
2177	Weekday string `json:"weekday,omitempty"`
2178
2179	// ForceSendFields is a list of field names (e.g. "DayOfMonth") to
2180	// unconditionally include in API requests. By default, fields with
2181	// empty values are omitted from API requests. However, any non-pointer,
2182	// non-interface field appearing in ForceSendFields will be sent to the
2183	// server regardless of whether the field is empty or not. This may be
2184	// used to include empty fields in Patch requests.
2185	ForceSendFields []string `json:"-"`
2186
2187	// NullFields is a list of field names (e.g. "DayOfMonth") to include in
2188	// API requests with the JSON null value. By default, fields with empty
2189	// values are omitted from API requests. However, any field with an
2190	// empty value appearing in NullFields will be sent to the server as
2191	// null. It is an error if a field in this list has a non-empty value.
2192	// This may be used to include null fields in Patch requests.
2193	NullFields []string `json:"-"`
2194}
2195
2196func (s *DatafeedFetchSchedule) MarshalJSON() ([]byte, error) {
2197	type NoMethod DatafeedFetchSchedule
2198	raw := NoMethod(*s)
2199	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2200}
2201
2202type DatafeedFormat struct {
2203	// ColumnDelimiter: Delimiter for the separation of values in a
2204	// delimiter-separated values feed. If not specified, the delimiter will
2205	// be auto-detected. Ignored for non-DSV data feeds.
2206	ColumnDelimiter string `json:"columnDelimiter,omitempty"`
2207
2208	// FileEncoding: Character encoding scheme of the data feed. If not
2209	// specified, the encoding will be auto-detected.
2210	FileEncoding string `json:"fileEncoding,omitempty"`
2211
2212	// QuotingMode: Specifies how double quotes are interpreted. If not
2213	// specified, the mode will be auto-detected. Ignored for non-DSV data
2214	// feeds.
2215	QuotingMode string `json:"quotingMode,omitempty"`
2216
2217	// ForceSendFields is a list of field names (e.g. "ColumnDelimiter") to
2218	// unconditionally include in API requests. By default, fields with
2219	// empty values are omitted from API requests. However, any non-pointer,
2220	// non-interface field appearing in ForceSendFields will be sent to the
2221	// server regardless of whether the field is empty or not. This may be
2222	// used to include empty fields in Patch requests.
2223	ForceSendFields []string `json:"-"`
2224
2225	// NullFields is a list of field names (e.g. "ColumnDelimiter") to
2226	// include in API requests with the JSON null value. By default, fields
2227	// with empty values are omitted from API requests. However, any field
2228	// with an empty value appearing in NullFields will be sent to the
2229	// server as null. It is an error if a field in this list has a
2230	// non-empty value. This may be used to include null fields in Patch
2231	// requests.
2232	NullFields []string `json:"-"`
2233}
2234
2235func (s *DatafeedFormat) MarshalJSON() ([]byte, error) {
2236	type NoMethod DatafeedFormat
2237	raw := NoMethod(*s)
2238	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2239}
2240
2241// DatafeedStatus: The status of a datafeed, i.e., the result of the
2242// last retrieval of the datafeed computed asynchronously when the feed
2243// processing is finished.
2244type DatafeedStatus struct {
2245	// Country: The country for which the status is reported, represented as
2246	// a  CLDR territory code.
2247	Country string `json:"country,omitempty"`
2248
2249	// DatafeedId: The ID of the feed for which the status is reported.
2250	DatafeedId uint64 `json:"datafeedId,omitempty,string"`
2251
2252	// Errors: The list of errors occurring in the feed.
2253	Errors []*DatafeedStatusError `json:"errors,omitempty"`
2254
2255	// ItemsTotal: The number of items in the feed that were processed.
2256	ItemsTotal uint64 `json:"itemsTotal,omitempty,string"`
2257
2258	// ItemsValid: The number of items in the feed that were valid.
2259	ItemsValid uint64 `json:"itemsValid,omitempty,string"`
2260
2261	// Kind: Identifies what kind of resource this is. Value: the fixed
2262	// string "content#datafeedStatus".
2263	Kind string `json:"kind,omitempty"`
2264
2265	// Language: The two-letter ISO 639-1 language for which the status is
2266	// reported.
2267	Language string `json:"language,omitempty"`
2268
2269	// LastUploadDate: The last date at which the feed was uploaded.
2270	LastUploadDate string `json:"lastUploadDate,omitempty"`
2271
2272	// ProcessingStatus: The processing status of the feed.
2273	ProcessingStatus string `json:"processingStatus,omitempty"`
2274
2275	// Warnings: The list of errors occurring in the feed.
2276	Warnings []*DatafeedStatusError `json:"warnings,omitempty"`
2277
2278	// ServerResponse contains the HTTP response code and headers from the
2279	// server.
2280	googleapi.ServerResponse `json:"-"`
2281
2282	// ForceSendFields is a list of field names (e.g. "Country") to
2283	// unconditionally include in API requests. By default, fields with
2284	// empty values are omitted from API requests. However, any non-pointer,
2285	// non-interface field appearing in ForceSendFields will be sent to the
2286	// server regardless of whether the field is empty or not. This may be
2287	// used to include empty fields in Patch requests.
2288	ForceSendFields []string `json:"-"`
2289
2290	// NullFields is a list of field names (e.g. "Country") to include in
2291	// API requests with the JSON null value. By default, fields with empty
2292	// values are omitted from API requests. However, any field with an
2293	// empty value appearing in NullFields will be sent to the server as
2294	// null. It is an error if a field in this list has a non-empty value.
2295	// This may be used to include null fields in Patch requests.
2296	NullFields []string `json:"-"`
2297}
2298
2299func (s *DatafeedStatus) MarshalJSON() ([]byte, error) {
2300	type NoMethod DatafeedStatus
2301	raw := NoMethod(*s)
2302	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2303}
2304
2305// DatafeedStatusError: An error occurring in the feed, like "invalid
2306// price".
2307type DatafeedStatusError struct {
2308	// Code: The code of the error, e.g., "validation/invalid_value".
2309	Code string `json:"code,omitempty"`
2310
2311	// Count: The number of occurrences of the error in the feed.
2312	Count uint64 `json:"count,omitempty,string"`
2313
2314	// Examples: A list of example occurrences of the error, grouped by
2315	// product.
2316	Examples []*DatafeedStatusExample `json:"examples,omitempty"`
2317
2318	// Message: The error message, e.g., "Invalid price".
2319	Message string `json:"message,omitempty"`
2320
2321	// ForceSendFields is a list of field names (e.g. "Code") to
2322	// unconditionally include in API requests. By default, fields with
2323	// empty values are omitted from API requests. However, any non-pointer,
2324	// non-interface field appearing in ForceSendFields will be sent to the
2325	// server regardless of whether the field is empty or not. This may be
2326	// used to include empty fields in Patch requests.
2327	ForceSendFields []string `json:"-"`
2328
2329	// NullFields is a list of field names (e.g. "Code") to include in API
2330	// requests with the JSON null value. By default, fields with empty
2331	// values are omitted from API requests. However, any field with an
2332	// empty value appearing in NullFields will be sent to the server as
2333	// null. It is an error if a field in this list has a non-empty value.
2334	// This may be used to include null fields in Patch requests.
2335	NullFields []string `json:"-"`
2336}
2337
2338func (s *DatafeedStatusError) MarshalJSON() ([]byte, error) {
2339	type NoMethod DatafeedStatusError
2340	raw := NoMethod(*s)
2341	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2342}
2343
2344// DatafeedStatusExample: An example occurrence for a particular error.
2345type DatafeedStatusExample struct {
2346	// ItemId: The ID of the example item.
2347	ItemId string `json:"itemId,omitempty"`
2348
2349	// LineNumber: Line number in the data feed where the example is found.
2350	LineNumber uint64 `json:"lineNumber,omitempty,string"`
2351
2352	// Value: The problematic value.
2353	Value string `json:"value,omitempty"`
2354
2355	// ForceSendFields is a list of field names (e.g. "ItemId") to
2356	// unconditionally include in API requests. By default, fields with
2357	// empty values are omitted from API requests. However, any non-pointer,
2358	// non-interface field appearing in ForceSendFields will be sent to the
2359	// server regardless of whether the field is empty or not. This may be
2360	// used to include empty fields in Patch requests.
2361	ForceSendFields []string `json:"-"`
2362
2363	// NullFields is a list of field names (e.g. "ItemId") to include in API
2364	// requests with the JSON null value. By default, fields with empty
2365	// values are omitted from API requests. However, any field with an
2366	// empty value appearing in NullFields will be sent to the server as
2367	// null. It is an error if a field in this list has a non-empty value.
2368	// This may be used to include null fields in Patch requests.
2369	NullFields []string `json:"-"`
2370}
2371
2372func (s *DatafeedStatusExample) MarshalJSON() ([]byte, error) {
2373	type NoMethod DatafeedStatusExample
2374	raw := NoMethod(*s)
2375	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2376}
2377
2378type DatafeedTarget struct {
2379	// Country: The country where the items in the feed will be included in
2380	// the search index, represented as a  CLDR territory code.
2381	Country string `json:"country,omitempty"`
2382
2383	// ExcludedDestinations: The list of destinations to exclude for this
2384	// target (corresponds to unchecked check boxes in Merchant Center).
2385	ExcludedDestinations []string `json:"excludedDestinations,omitempty"`
2386
2387	// IncludedDestinations: The list of destinations to include for this
2388	// target (corresponds to checked check boxes in Merchant Center).
2389	// Default destinations are always included unless provided in the
2390	// excluded_destination field.
2391	IncludedDestinations []string `json:"includedDestinations,omitempty"`
2392
2393	// Language: The two-letter ISO 639-1 language of the items in the feed.
2394	// Must be a valid language for targets[].country.
2395	Language string `json:"language,omitempty"`
2396
2397	// ForceSendFields is a list of field names (e.g. "Country") to
2398	// unconditionally include in API requests. By default, fields with
2399	// empty values are omitted from API requests. However, any non-pointer,
2400	// non-interface field appearing in ForceSendFields will be sent to the
2401	// server regardless of whether the field is empty or not. This may be
2402	// used to include empty fields in Patch requests.
2403	ForceSendFields []string `json:"-"`
2404
2405	// NullFields is a list of field names (e.g. "Country") to include in
2406	// API requests with the JSON null value. By default, fields with empty
2407	// values are omitted from API requests. However, any field with an
2408	// empty value appearing in NullFields will be sent to the server as
2409	// null. It is an error if a field in this list has a non-empty value.
2410	// This may be used to include null fields in Patch requests.
2411	NullFields []string `json:"-"`
2412}
2413
2414func (s *DatafeedTarget) MarshalJSON() ([]byte, error) {
2415	type NoMethod DatafeedTarget
2416	raw := NoMethod(*s)
2417	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2418}
2419
2420type DatafeedsCustomBatchRequest struct {
2421	// Entries: The request entries to be processed in the batch.
2422	Entries []*DatafeedsCustomBatchRequestEntry `json:"entries,omitempty"`
2423
2424	// ForceSendFields is a list of field names (e.g. "Entries") to
2425	// unconditionally include in API requests. By default, fields with
2426	// empty values are omitted from API requests. However, any non-pointer,
2427	// non-interface field appearing in ForceSendFields will be sent to the
2428	// server regardless of whether the field is empty or not. This may be
2429	// used to include empty fields in Patch requests.
2430	ForceSendFields []string `json:"-"`
2431
2432	// NullFields is a list of field names (e.g. "Entries") to include in
2433	// API requests with the JSON null value. By default, fields with empty
2434	// values are omitted from API requests. However, any field with an
2435	// empty value appearing in NullFields will be sent to the server as
2436	// null. It is an error if a field in this list has a non-empty value.
2437	// This may be used to include null fields in Patch requests.
2438	NullFields []string `json:"-"`
2439}
2440
2441func (s *DatafeedsCustomBatchRequest) MarshalJSON() ([]byte, error) {
2442	type NoMethod DatafeedsCustomBatchRequest
2443	raw := NoMethod(*s)
2444	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2445}
2446
2447// DatafeedsCustomBatchRequestEntry: A batch entry encoding a single
2448// non-batch datafeeds request.
2449type DatafeedsCustomBatchRequestEntry struct {
2450	// BatchId: An entry ID, unique within the batch request.
2451	BatchId int64 `json:"batchId,omitempty"`
2452
2453	// Datafeed: The data feed to insert.
2454	Datafeed *Datafeed `json:"datafeed,omitempty"`
2455
2456	// DatafeedId: The ID of the data feed to get, delete or fetch.
2457	DatafeedId uint64 `json:"datafeedId,omitempty,string"`
2458
2459	// MerchantId: The ID of the managing account.
2460	MerchantId uint64 `json:"merchantId,omitempty,string"`
2461
2462	Method string `json:"method,omitempty"`
2463
2464	// ForceSendFields is a list of field names (e.g. "BatchId") to
2465	// unconditionally include in API requests. By default, fields with
2466	// empty values are omitted from API requests. However, any non-pointer,
2467	// non-interface field appearing in ForceSendFields will be sent to the
2468	// server regardless of whether the field is empty or not. This may be
2469	// used to include empty fields in Patch requests.
2470	ForceSendFields []string `json:"-"`
2471
2472	// NullFields is a list of field names (e.g. "BatchId") to include in
2473	// API requests with the JSON null value. By default, fields with empty
2474	// values are omitted from API requests. However, any field with an
2475	// empty value appearing in NullFields will be sent to the server as
2476	// null. It is an error if a field in this list has a non-empty value.
2477	// This may be used to include null fields in Patch requests.
2478	NullFields []string `json:"-"`
2479}
2480
2481func (s *DatafeedsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
2482	type NoMethod DatafeedsCustomBatchRequestEntry
2483	raw := NoMethod(*s)
2484	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2485}
2486
2487type DatafeedsCustomBatchResponse struct {
2488	// Entries: The result of the execution of the batch requests.
2489	Entries []*DatafeedsCustomBatchResponseEntry `json:"entries,omitempty"`
2490
2491	// Kind: Identifies what kind of resource this is. Value: the fixed
2492	// string "content#datafeedsCustomBatchResponse".
2493	Kind string `json:"kind,omitempty"`
2494
2495	// ServerResponse contains the HTTP response code and headers from the
2496	// server.
2497	googleapi.ServerResponse `json:"-"`
2498
2499	// ForceSendFields is a list of field names (e.g. "Entries") to
2500	// unconditionally include in API requests. By default, fields with
2501	// empty values are omitted from API requests. However, any non-pointer,
2502	// non-interface field appearing in ForceSendFields will be sent to the
2503	// server regardless of whether the field is empty or not. This may be
2504	// used to include empty fields in Patch requests.
2505	ForceSendFields []string `json:"-"`
2506
2507	// NullFields is a list of field names (e.g. "Entries") to include in
2508	// API requests with the JSON null value. By default, fields with empty
2509	// values are omitted from API requests. However, any field with an
2510	// empty value appearing in NullFields will be sent to the server as
2511	// null. It is an error if a field in this list has a non-empty value.
2512	// This may be used to include null fields in Patch requests.
2513	NullFields []string `json:"-"`
2514}
2515
2516func (s *DatafeedsCustomBatchResponse) MarshalJSON() ([]byte, error) {
2517	type NoMethod DatafeedsCustomBatchResponse
2518	raw := NoMethod(*s)
2519	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2520}
2521
2522// DatafeedsCustomBatchResponseEntry: A batch entry encoding a single
2523// non-batch datafeeds response.
2524type DatafeedsCustomBatchResponseEntry struct {
2525	// BatchId: The ID of the request entry this entry responds to.
2526	BatchId int64 `json:"batchId,omitempty"`
2527
2528	// Datafeed: The requested data feed. Defined if and only if the request
2529	// was successful.
2530	Datafeed *Datafeed `json:"datafeed,omitempty"`
2531
2532	// Errors: A list of errors defined if and only if the request failed.
2533	Errors *Errors `json:"errors,omitempty"`
2534
2535	// ForceSendFields is a list of field names (e.g. "BatchId") to
2536	// unconditionally include in API requests. By default, fields with
2537	// empty values are omitted from API requests. However, any non-pointer,
2538	// non-interface field appearing in ForceSendFields will be sent to the
2539	// server regardless of whether the field is empty or not. This may be
2540	// used to include empty fields in Patch requests.
2541	ForceSendFields []string `json:"-"`
2542
2543	// NullFields is a list of field names (e.g. "BatchId") to include in
2544	// API requests with the JSON null value. By default, fields with empty
2545	// values are omitted from API requests. However, any field with an
2546	// empty value appearing in NullFields will be sent to the server as
2547	// null. It is an error if a field in this list has a non-empty value.
2548	// This may be used to include null fields in Patch requests.
2549	NullFields []string `json:"-"`
2550}
2551
2552func (s *DatafeedsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
2553	type NoMethod DatafeedsCustomBatchResponseEntry
2554	raw := NoMethod(*s)
2555	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2556}
2557
2558type DatafeedsFetchNowResponse struct {
2559	// Kind: Identifies what kind of resource this is. Value: the fixed
2560	// string "content#datafeedsFetchNowResponse".
2561	Kind string `json:"kind,omitempty"`
2562
2563	// ServerResponse contains the HTTP response code and headers from the
2564	// server.
2565	googleapi.ServerResponse `json:"-"`
2566
2567	// ForceSendFields is a list of field names (e.g. "Kind") to
2568	// unconditionally include in API requests. By default, fields with
2569	// empty values are omitted from API requests. However, any non-pointer,
2570	// non-interface field appearing in ForceSendFields will be sent to the
2571	// server regardless of whether the field is empty or not. This may be
2572	// used to include empty fields in Patch requests.
2573	ForceSendFields []string `json:"-"`
2574
2575	// NullFields is a list of field names (e.g. "Kind") to include in API
2576	// requests with the JSON null value. By default, fields with empty
2577	// values are omitted from API requests. However, any field with an
2578	// empty value appearing in NullFields will be sent to the server as
2579	// null. It is an error if a field in this list has a non-empty value.
2580	// This may be used to include null fields in Patch requests.
2581	NullFields []string `json:"-"`
2582}
2583
2584func (s *DatafeedsFetchNowResponse) MarshalJSON() ([]byte, error) {
2585	type NoMethod DatafeedsFetchNowResponse
2586	raw := NoMethod(*s)
2587	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2588}
2589
2590type DatafeedsListResponse struct {
2591	// Kind: Identifies what kind of resource this is. Value: the fixed
2592	// string "content#datafeedsListResponse".
2593	Kind string `json:"kind,omitempty"`
2594
2595	// NextPageToken: The token for the retrieval of the next page of
2596	// datafeeds.
2597	NextPageToken string `json:"nextPageToken,omitempty"`
2598
2599	Resources []*Datafeed `json:"resources,omitempty"`
2600
2601	// ServerResponse contains the HTTP response code and headers from the
2602	// server.
2603	googleapi.ServerResponse `json:"-"`
2604
2605	// ForceSendFields is a list of field names (e.g. "Kind") to
2606	// unconditionally include in API requests. By default, fields with
2607	// empty values are omitted from API requests. However, any non-pointer,
2608	// non-interface field appearing in ForceSendFields will be sent to the
2609	// server regardless of whether the field is empty or not. This may be
2610	// used to include empty fields in Patch requests.
2611	ForceSendFields []string `json:"-"`
2612
2613	// NullFields is a list of field names (e.g. "Kind") to include in API
2614	// requests with the JSON null value. By default, fields with empty
2615	// values are omitted from API requests. However, any field with an
2616	// empty value appearing in NullFields will be sent to the server as
2617	// null. It is an error if a field in this list has a non-empty value.
2618	// This may be used to include null fields in Patch requests.
2619	NullFields []string `json:"-"`
2620}
2621
2622func (s *DatafeedsListResponse) MarshalJSON() ([]byte, error) {
2623	type NoMethod DatafeedsListResponse
2624	raw := NoMethod(*s)
2625	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2626}
2627
2628type DatafeedstatusesCustomBatchRequest struct {
2629	// Entries: The request entries to be processed in the batch.
2630	Entries []*DatafeedstatusesCustomBatchRequestEntry `json:"entries,omitempty"`
2631
2632	// ForceSendFields is a list of field names (e.g. "Entries") to
2633	// unconditionally include in API requests. By default, fields with
2634	// empty values are omitted from API requests. However, any non-pointer,
2635	// non-interface field appearing in ForceSendFields will be sent to the
2636	// server regardless of whether the field is empty or not. This may be
2637	// used to include empty fields in Patch requests.
2638	ForceSendFields []string `json:"-"`
2639
2640	// NullFields is a list of field names (e.g. "Entries") to include in
2641	// API requests with the JSON null value. By default, fields with empty
2642	// values are omitted from API requests. However, any field with an
2643	// empty value appearing in NullFields will be sent to the server as
2644	// null. It is an error if a field in this list has a non-empty value.
2645	// This may be used to include null fields in Patch requests.
2646	NullFields []string `json:"-"`
2647}
2648
2649func (s *DatafeedstatusesCustomBatchRequest) MarshalJSON() ([]byte, error) {
2650	type NoMethod DatafeedstatusesCustomBatchRequest
2651	raw := NoMethod(*s)
2652	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2653}
2654
2655// DatafeedstatusesCustomBatchRequestEntry: A batch entry encoding a
2656// single non-batch datafeedstatuses request.
2657type DatafeedstatusesCustomBatchRequestEntry struct {
2658	// BatchId: An entry ID, unique within the batch request.
2659	BatchId int64 `json:"batchId,omitempty"`
2660
2661	// Country: The country for which to get the datafeed status. If this
2662	// parameter is provided then language must also be provided. Note that
2663	// for multi-target datafeeds this parameter is required.
2664	Country string `json:"country,omitempty"`
2665
2666	// DatafeedId: The ID of the data feed to get.
2667	DatafeedId uint64 `json:"datafeedId,omitempty,string"`
2668
2669	// Language: The language for which to get the datafeed status. If this
2670	// parameter is provided then country must also be provided. Note that
2671	// for multi-target datafeeds this parameter is required.
2672	Language string `json:"language,omitempty"`
2673
2674	// MerchantId: The ID of the managing account.
2675	MerchantId uint64 `json:"merchantId,omitempty,string"`
2676
2677	Method string `json:"method,omitempty"`
2678
2679	// ForceSendFields is a list of field names (e.g. "BatchId") to
2680	// unconditionally include in API requests. By default, fields with
2681	// empty values are omitted from API requests. However, any non-pointer,
2682	// non-interface field appearing in ForceSendFields will be sent to the
2683	// server regardless of whether the field is empty or not. This may be
2684	// used to include empty fields in Patch requests.
2685	ForceSendFields []string `json:"-"`
2686
2687	// NullFields is a list of field names (e.g. "BatchId") to include in
2688	// API requests with the JSON null value. By default, fields with empty
2689	// values are omitted from API requests. However, any field with an
2690	// empty value appearing in NullFields will be sent to the server as
2691	// null. It is an error if a field in this list has a non-empty value.
2692	// This may be used to include null fields in Patch requests.
2693	NullFields []string `json:"-"`
2694}
2695
2696func (s *DatafeedstatusesCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
2697	type NoMethod DatafeedstatusesCustomBatchRequestEntry
2698	raw := NoMethod(*s)
2699	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2700}
2701
2702type DatafeedstatusesCustomBatchResponse struct {
2703	// Entries: The result of the execution of the batch requests.
2704	Entries []*DatafeedstatusesCustomBatchResponseEntry `json:"entries,omitempty"`
2705
2706	// Kind: Identifies what kind of resource this is. Value: the fixed
2707	// string "content#datafeedstatusesCustomBatchResponse".
2708	Kind string `json:"kind,omitempty"`
2709
2710	// ServerResponse contains the HTTP response code and headers from the
2711	// server.
2712	googleapi.ServerResponse `json:"-"`
2713
2714	// ForceSendFields is a list of field names (e.g. "Entries") to
2715	// unconditionally include in API requests. By default, fields with
2716	// empty values are omitted from API requests. However, any non-pointer,
2717	// non-interface field appearing in ForceSendFields will be sent to the
2718	// server regardless of whether the field is empty or not. This may be
2719	// used to include empty fields in Patch requests.
2720	ForceSendFields []string `json:"-"`
2721
2722	// NullFields is a list of field names (e.g. "Entries") to include in
2723	// API requests with the JSON null value. By default, fields with empty
2724	// values are omitted from API requests. However, any field with an
2725	// empty value appearing in NullFields will be sent to the server as
2726	// null. It is an error if a field in this list has a non-empty value.
2727	// This may be used to include null fields in Patch requests.
2728	NullFields []string `json:"-"`
2729}
2730
2731func (s *DatafeedstatusesCustomBatchResponse) MarshalJSON() ([]byte, error) {
2732	type NoMethod DatafeedstatusesCustomBatchResponse
2733	raw := NoMethod(*s)
2734	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2735}
2736
2737// DatafeedstatusesCustomBatchResponseEntry: A batch entry encoding a
2738// single non-batch datafeedstatuses response.
2739type DatafeedstatusesCustomBatchResponseEntry struct {
2740	// BatchId: The ID of the request entry this entry responds to.
2741	BatchId int64 `json:"batchId,omitempty"`
2742
2743	// DatafeedStatus: The requested data feed status. Defined if and only
2744	// if the request was successful.
2745	DatafeedStatus *DatafeedStatus `json:"datafeedStatus,omitempty"`
2746
2747	// Errors: A list of errors defined if and only if the request failed.
2748	Errors *Errors `json:"errors,omitempty"`
2749
2750	// ForceSendFields is a list of field names (e.g. "BatchId") to
2751	// unconditionally include in API requests. By default, fields with
2752	// empty values are omitted from API requests. However, any non-pointer,
2753	// non-interface field appearing in ForceSendFields will be sent to the
2754	// server regardless of whether the field is empty or not. This may be
2755	// used to include empty fields in Patch requests.
2756	ForceSendFields []string `json:"-"`
2757
2758	// NullFields is a list of field names (e.g. "BatchId") to include in
2759	// API requests with the JSON null value. By default, fields with empty
2760	// values are omitted from API requests. However, any field with an
2761	// empty value appearing in NullFields will be sent to the server as
2762	// null. It is an error if a field in this list has a non-empty value.
2763	// This may be used to include null fields in Patch requests.
2764	NullFields []string `json:"-"`
2765}
2766
2767func (s *DatafeedstatusesCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
2768	type NoMethod DatafeedstatusesCustomBatchResponseEntry
2769	raw := NoMethod(*s)
2770	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2771}
2772
2773type DatafeedstatusesListResponse struct {
2774	// Kind: Identifies what kind of resource this is. Value: the fixed
2775	// string "content#datafeedstatusesListResponse".
2776	Kind string `json:"kind,omitempty"`
2777
2778	// NextPageToken: The token for the retrieval of the next page of
2779	// datafeed statuses.
2780	NextPageToken string `json:"nextPageToken,omitempty"`
2781
2782	Resources []*DatafeedStatus `json:"resources,omitempty"`
2783
2784	// ServerResponse contains the HTTP response code and headers from the
2785	// server.
2786	googleapi.ServerResponse `json:"-"`
2787
2788	// ForceSendFields is a list of field names (e.g. "Kind") to
2789	// unconditionally include in API requests. By default, fields with
2790	// empty values are omitted from API requests. However, any non-pointer,
2791	// non-interface field appearing in ForceSendFields will be sent to the
2792	// server regardless of whether the field is empty or not. This may be
2793	// used to include empty fields in Patch requests.
2794	ForceSendFields []string `json:"-"`
2795
2796	// NullFields is a list of field names (e.g. "Kind") to include in API
2797	// requests with the JSON null value. By default, fields with empty
2798	// values are omitted from API requests. However, any field with an
2799	// empty value appearing in NullFields will be sent to the server as
2800	// null. It is an error if a field in this list has a non-empty value.
2801	// This may be used to include null fields in Patch requests.
2802	NullFields []string `json:"-"`
2803}
2804
2805func (s *DatafeedstatusesListResponse) MarshalJSON() ([]byte, error) {
2806	type NoMethod DatafeedstatusesListResponse
2807	raw := NoMethod(*s)
2808	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2809}
2810
2811type DeliveryTime struct {
2812	// CutoffTime: Business days cutoff time definition. If not configured
2813	// the cutoff time will be defaulted to 8AM PST.
2814	CutoffTime *CutoffTime `json:"cutoffTime,omitempty"`
2815
2816	// HolidayCutoffs: Holiday cutoff definitions. If configured, they
2817	// specify order cutoff times for holiday-specific shipping.
2818	HolidayCutoffs []*HolidayCutoff `json:"holidayCutoffs,omitempty"`
2819
2820	// MaxHandlingTimeInDays: Maximum number of business days spent before
2821	// an order is shipped. 0 means same day shipped, 1 means next day
2822	// shipped. Must be greater than or equal to minHandlingTimeInDays.
2823	MaxHandlingTimeInDays int64 `json:"maxHandlingTimeInDays,omitempty"`
2824
2825	// MaxTransitTimeInDays: Maximum number of business days that is spent
2826	// in transit. 0 means same day delivery, 1 means next day delivery.
2827	// Must be greater than or equal to minTransitTimeInDays.
2828	MaxTransitTimeInDays int64 `json:"maxTransitTimeInDays,omitempty"`
2829
2830	// MinHandlingTimeInDays: Minimum number of business days spent before
2831	// an order is shipped. 0 means same day shipped, 1 means next day
2832	// shipped.
2833	MinHandlingTimeInDays int64 `json:"minHandlingTimeInDays,omitempty"`
2834
2835	// MinTransitTimeInDays: Minimum number of business days that is spent
2836	// in transit. 0 means same day delivery, 1 means next day delivery.
2837	// Either {min,max}transitTimeInDays or transitTimeTable must be set,
2838	// but not both.
2839	MinTransitTimeInDays int64 `json:"minTransitTimeInDays,omitempty"`
2840
2841	// TransitTimeTable: Transit time table, number of business days spent
2842	// in transit based on row and column dimensions. Either
2843	// {min,max}transitTimeInDays or transitTimeTable can be set, but not
2844	// both.
2845	TransitTimeTable *TransitTable `json:"transitTimeTable,omitempty"`
2846
2847	// ForceSendFields is a list of field names (e.g. "CutoffTime") to
2848	// unconditionally include in API requests. By default, fields with
2849	// empty values are omitted from API requests. However, any non-pointer,
2850	// non-interface field appearing in ForceSendFields will be sent to the
2851	// server regardless of whether the field is empty or not. This may be
2852	// used to include empty fields in Patch requests.
2853	ForceSendFields []string `json:"-"`
2854
2855	// NullFields is a list of field names (e.g. "CutoffTime") to include in
2856	// API requests with the JSON null value. By default, fields with empty
2857	// values are omitted from API requests. However, any field with an
2858	// empty value appearing in NullFields will be sent to the server as
2859	// null. It is an error if a field in this list has a non-empty value.
2860	// This may be used to include null fields in Patch requests.
2861	NullFields []string `json:"-"`
2862}
2863
2864func (s *DeliveryTime) MarshalJSON() ([]byte, error) {
2865	type NoMethod DeliveryTime
2866	raw := NoMethod(*s)
2867	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2868}
2869
2870// Error: An error returned by the API.
2871type Error struct {
2872	// Domain: The domain of the error.
2873	Domain string `json:"domain,omitempty"`
2874
2875	// Message: A description of the error.
2876	Message string `json:"message,omitempty"`
2877
2878	// Reason: The error code.
2879	Reason string `json:"reason,omitempty"`
2880
2881	// ForceSendFields is a list of field names (e.g. "Domain") to
2882	// unconditionally include in API requests. By default, fields with
2883	// empty values are omitted from API requests. However, any non-pointer,
2884	// non-interface field appearing in ForceSendFields will be sent to the
2885	// server regardless of whether the field is empty or not. This may be
2886	// used to include empty fields in Patch requests.
2887	ForceSendFields []string `json:"-"`
2888
2889	// NullFields is a list of field names (e.g. "Domain") to include in API
2890	// requests with the JSON null value. By default, fields with empty
2891	// values are omitted from API requests. However, any field with an
2892	// empty value appearing in NullFields will be sent to the server as
2893	// null. It is an error if a field in this list has a non-empty value.
2894	// This may be used to include null fields in Patch requests.
2895	NullFields []string `json:"-"`
2896}
2897
2898func (s *Error) MarshalJSON() ([]byte, error) {
2899	type NoMethod Error
2900	raw := NoMethod(*s)
2901	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2902}
2903
2904// Errors: A list of errors returned by a failed batch entry.
2905type Errors struct {
2906	// Code: The HTTP status of the first error in errors.
2907	Code int64 `json:"code,omitempty"`
2908
2909	// Errors: A list of errors.
2910	Errors []*Error `json:"errors,omitempty"`
2911
2912	// Message: The message of the first error in errors.
2913	Message string `json:"message,omitempty"`
2914
2915	// ForceSendFields is a list of field names (e.g. "Code") to
2916	// unconditionally include in API requests. By default, fields with
2917	// empty values are omitted from API requests. However, any non-pointer,
2918	// non-interface field appearing in ForceSendFields will be sent to the
2919	// server regardless of whether the field is empty or not. This may be
2920	// used to include empty fields in Patch requests.
2921	ForceSendFields []string `json:"-"`
2922
2923	// NullFields is a list of field names (e.g. "Code") to include in API
2924	// requests with the JSON null value. By default, fields with empty
2925	// values are omitted from API requests. However, any field with an
2926	// empty value appearing in NullFields will be sent to the server as
2927	// null. It is an error if a field in this list has a non-empty value.
2928	// This may be used to include null fields in Patch requests.
2929	NullFields []string `json:"-"`
2930}
2931
2932func (s *Errors) MarshalJSON() ([]byte, error) {
2933	type NoMethod Errors
2934	raw := NoMethod(*s)
2935	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2936}
2937
2938type GmbAccounts struct {
2939	// AccountId: The ID of the account.
2940	AccountId uint64 `json:"accountId,omitempty,string"`
2941
2942	// GmbAccounts: A list of GMB accounts which are available to the
2943	// merchant.
2944	GmbAccounts []*GmbAccountsGmbAccount `json:"gmbAccounts,omitempty"`
2945
2946	// ForceSendFields is a list of field names (e.g. "AccountId") to
2947	// unconditionally include in API requests. By default, fields with
2948	// empty values are omitted from API requests. However, any non-pointer,
2949	// non-interface field appearing in ForceSendFields will be sent to the
2950	// server regardless of whether the field is empty or not. This may be
2951	// used to include empty fields in Patch requests.
2952	ForceSendFields []string `json:"-"`
2953
2954	// NullFields is a list of field names (e.g. "AccountId") to include in
2955	// API requests with the JSON null value. By default, fields with empty
2956	// values are omitted from API requests. However, any field with an
2957	// 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 *GmbAccounts) MarshalJSON() ([]byte, error) {
2964	type NoMethod GmbAccounts
2965	raw := NoMethod(*s)
2966	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2967}
2968
2969type GmbAccountsGmbAccount struct {
2970	// Email: The email which identifies the GMB account.
2971	Email string `json:"email,omitempty"`
2972
2973	// ListingCount: Number of listings under this account.
2974	ListingCount uint64 `json:"listingCount,omitempty,string"`
2975
2976	// Name: The name of the GMB account.
2977	Name string `json:"name,omitempty"`
2978
2979	// Type: The type of the GMB account (User or Business).
2980	Type string `json:"type,omitempty"`
2981
2982	// ForceSendFields is a list of field names (e.g. "Email") to
2983	// unconditionally include in API requests. By default, fields with
2984	// empty values are omitted from API requests. However, any non-pointer,
2985	// non-interface field appearing in ForceSendFields will be sent to the
2986	// server regardless of whether the field is empty or not. This may be
2987	// used to include empty fields in Patch requests.
2988	ForceSendFields []string `json:"-"`
2989
2990	// NullFields is a list of field names (e.g. "Email") to include in API
2991	// requests with the JSON null value. By default, fields with empty
2992	// values are omitted from API requests. However, any field with an
2993	// empty value appearing in NullFields will be sent to the server as
2994	// null. It is an error if a field in this list has a non-empty value.
2995	// This may be used to include null fields in Patch requests.
2996	NullFields []string `json:"-"`
2997}
2998
2999func (s *GmbAccountsGmbAccount) MarshalJSON() ([]byte, error) {
3000	type NoMethod GmbAccountsGmbAccount
3001	raw := NoMethod(*s)
3002	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3003}
3004
3005// Headers: A non-empty list of row or column headers for a table.
3006// Exactly one of prices, weights, numItems, postalCodeGroupNames, or
3007// location must be set.
3008type Headers struct {
3009	// Locations: A list of location ID sets. Must be non-empty. Can only be
3010	// set if all other fields are not set.
3011	Locations []*LocationIdSet `json:"locations,omitempty"`
3012
3013	// NumberOfItems: A list of inclusive number of items upper bounds. The
3014	// last value can be "infinity". For example ["10", "50", "infinity"]
3015	// represents the headers "<= 10 items", " 50 items". Must be non-empty.
3016	// Can only be set if all other fields are not set.
3017	NumberOfItems []string `json:"numberOfItems,omitempty"`
3018
3019	// PostalCodeGroupNames: A list of postal group names. The last value
3020	// can be "all other locations". Example: ["zone 1", "zone 2", "all
3021	// other locations"]. The referred postal code groups must match the
3022	// delivery country of the service. Must be non-empty. Can only be set
3023	// if all other fields are not set.
3024	PostalCodeGroupNames []string `json:"postalCodeGroupNames,omitempty"`
3025
3026	// Prices: A list of inclusive order price upper bounds. The last
3027	// price's value can be "infinity". For example [{"value": "10",
3028	// "currency": "USD"}, {"value": "500", "currency": "USD"}, {"value":
3029	// "infinity", "currency": "USD"}] represents the headers "<= $10", "
3030	// $500". All prices within a service must have the same currency. Must
3031	// be non-empty. Can only be set if all other fields are not set.
3032	Prices []*Price `json:"prices,omitempty"`
3033
3034	// Weights: A list of inclusive order weight upper bounds. The last
3035	// weight's value can be "infinity". For example [{"value": "10",
3036	// "unit": "kg"}, {"value": "50", "unit": "kg"}, {"value": "infinity",
3037	// "unit": "kg"}] represents the headers "<= 10kg", " 50kg". All weights
3038	// within a service must have the same unit. Must be non-empty. Can only
3039	// be set if all other fields are not set.
3040	Weights []*Weight `json:"weights,omitempty"`
3041
3042	// ForceSendFields is a list of field names (e.g. "Locations") to
3043	// unconditionally include in API requests. By default, fields with
3044	// empty values are omitted from API requests. However, any non-pointer,
3045	// non-interface field appearing in ForceSendFields will be sent to the
3046	// server regardless of whether the field is empty or not. This may be
3047	// used to include empty fields in Patch requests.
3048	ForceSendFields []string `json:"-"`
3049
3050	// NullFields is a list of field names (e.g. "Locations") to include in
3051	// API requests with the JSON null value. By default, fields with empty
3052	// values are omitted from API requests. However, any field with an
3053	// empty value appearing in NullFields will be sent to the server as
3054	// null. It is an error if a field in this list has a non-empty value.
3055	// This may be used to include null fields in Patch requests.
3056	NullFields []string `json:"-"`
3057}
3058
3059func (s *Headers) MarshalJSON() ([]byte, error) {
3060	type NoMethod Headers
3061	raw := NoMethod(*s)
3062	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3063}
3064
3065type HolidayCutoff struct {
3066	// DeadlineDate: Date of the order deadline, in ISO 8601 format. E.g.
3067	// "2016-11-29" for 29th November 2016. Required.
3068	DeadlineDate string `json:"deadlineDate,omitempty"`
3069
3070	// DeadlineHour: Hour of the day on the deadline date until which the
3071	// order has to be placed to qualify for the delivery guarantee.
3072	// Possible values are: 0 (midnight), 1, ..., 12 (noon), 13, ..., 23.
3073	// Required.
3074	DeadlineHour int64 `json:"deadlineHour,omitempty"`
3075
3076	// DeadlineTimezone: Timezone identifier for the deadline hour. A list
3077	// of identifiers can be found in  the AdWords API documentation. E.g.
3078	// "Europe/Zurich". Required.
3079	DeadlineTimezone string `json:"deadlineTimezone,omitempty"`
3080
3081	// HolidayId: Unique identifier for the holiday. Required.
3082	HolidayId string `json:"holidayId,omitempty"`
3083
3084	// VisibleFromDate: Date on which the deadline will become visible to
3085	// consumers in ISO 8601 format. E.g. "2016-10-31" for 31st October
3086	// 2016. Required.
3087	VisibleFromDate string `json:"visibleFromDate,omitempty"`
3088
3089	// ForceSendFields is a list of field names (e.g. "DeadlineDate") to
3090	// unconditionally include in API requests. By default, fields with
3091	// empty values are omitted from API requests. However, any non-pointer,
3092	// non-interface field appearing in ForceSendFields will be sent to the
3093	// server regardless of whether the field is empty or not. This may be
3094	// used to include empty fields in Patch requests.
3095	ForceSendFields []string `json:"-"`
3096
3097	// NullFields is a list of field names (e.g. "DeadlineDate") to include
3098	// in API requests with the JSON null value. By default, fields with
3099	// empty values are omitted from API requests. However, any field with
3100	// an empty value appearing in NullFields will be sent to the server as
3101	// null. It is an error if a field in this list has a non-empty value.
3102	// This may be used to include null fields in Patch requests.
3103	NullFields []string `json:"-"`
3104}
3105
3106func (s *HolidayCutoff) MarshalJSON() ([]byte, error) {
3107	type NoMethod HolidayCutoff
3108	raw := NoMethod(*s)
3109	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3110}
3111
3112type HolidaysHoliday struct {
3113	// CountryCode: The CLDR territory code of the country in which the
3114	// holiday is available. E.g. "US", "DE", "GB". A holiday cutoff can
3115	// only be configured in a shipping settings service with matching
3116	// delivery country. Always present.
3117	CountryCode string `json:"countryCode,omitempty"`
3118
3119	// Date: Date of the holiday, in ISO 8601 format. E.g. "2016-12-25" for
3120	// Christmas 2016. Always present.
3121	Date string `json:"date,omitempty"`
3122
3123	// DeliveryGuaranteeDate: Date on which the order has to arrive at the
3124	// customer's, in ISO 8601 format. E.g. "2016-12-24" for 24th December
3125	// 2016. Always present.
3126	DeliveryGuaranteeDate string `json:"deliveryGuaranteeDate,omitempty"`
3127
3128	// DeliveryGuaranteeHour: Hour of the day in the delivery location's
3129	// timezone on the guaranteed delivery date by which the order has to
3130	// arrive at the customer's. Possible values are: 0 (midnight), 1, ...,
3131	// 12 (noon), 13, ..., 23. Always present.
3132	DeliveryGuaranteeHour uint64 `json:"deliveryGuaranteeHour,omitempty,string"`
3133
3134	// Id: Unique identifier for the holiday to be used when configuring
3135	// holiday cutoffs. Always present.
3136	Id string `json:"id,omitempty"`
3137
3138	// Type: The holiday type. Always present.
3139	Type string `json:"type,omitempty"`
3140
3141	// ForceSendFields is a list of field names (e.g. "CountryCode") to
3142	// unconditionally include in API requests. By default, fields with
3143	// empty values are omitted from API requests. However, any non-pointer,
3144	// non-interface field appearing in ForceSendFields will be sent to the
3145	// server regardless of whether the field is empty or not. This may be
3146	// used to include empty fields in Patch requests.
3147	ForceSendFields []string `json:"-"`
3148
3149	// NullFields is a list of field names (e.g. "CountryCode") to include
3150	// in API requests with the JSON null value. By default, fields with
3151	// empty values are omitted from API requests. However, any field with
3152	// an empty value appearing in NullFields will be sent to the server as
3153	// null. It is an error if a field in this list has a non-empty value.
3154	// This may be used to include null fields in Patch requests.
3155	NullFields []string `json:"-"`
3156}
3157
3158func (s *HolidaysHoliday) MarshalJSON() ([]byte, error) {
3159	type NoMethod HolidaysHoliday
3160	raw := NoMethod(*s)
3161	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3162}
3163
3164type Installment struct {
3165	// Amount: The amount the buyer has to pay per month.
3166	Amount *Price `json:"amount,omitempty"`
3167
3168	// Months: The number of installments the buyer has to pay.
3169	Months int64 `json:"months,omitempty,string"`
3170
3171	// ForceSendFields is a list of field names (e.g. "Amount") to
3172	// unconditionally include in API requests. By default, fields with
3173	// empty values are omitted from API requests. However, any non-pointer,
3174	// non-interface field appearing in ForceSendFields will be sent to the
3175	// server regardless of whether the field is empty or not. This may be
3176	// used to include empty fields in Patch requests.
3177	ForceSendFields []string `json:"-"`
3178
3179	// NullFields is a list of field names (e.g. "Amount") to include in API
3180	// requests with the JSON null value. By default, fields with empty
3181	// values are omitted from API requests. However, any field with an
3182	// empty value appearing in NullFields will be sent to the server as
3183	// null. It is an error if a field in this list has a non-empty value.
3184	// This may be used to include null fields in Patch requests.
3185	NullFields []string `json:"-"`
3186}
3187
3188func (s *Installment) MarshalJSON() ([]byte, error) {
3189	type NoMethod Installment
3190	raw := NoMethod(*s)
3191	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3192}
3193
3194type Inventory struct {
3195	// Availability: The availability of the product.
3196	Availability string `json:"availability,omitempty"`
3197
3198	// CustomLabel0: Custom label 0 for custom grouping of items in a
3199	// Shopping campaign. Only supported for online products.
3200	CustomLabel0 string `json:"customLabel0,omitempty"`
3201
3202	// CustomLabel1: Custom label 1 for custom grouping of items in a
3203	// Shopping campaign. Only supported for online products.
3204	CustomLabel1 string `json:"customLabel1,omitempty"`
3205
3206	// CustomLabel2: Custom label 2 for custom grouping of items in a
3207	// Shopping campaign. Only supported for online products.
3208	CustomLabel2 string `json:"customLabel2,omitempty"`
3209
3210	// CustomLabel3: Custom label 3 for custom grouping of items in a
3211	// Shopping campaign. Only supported for online products.
3212	CustomLabel3 string `json:"customLabel3,omitempty"`
3213
3214	// CustomLabel4: Custom label 3 for custom grouping of items in a
3215	// Shopping campaign. Only supported for online products.
3216	CustomLabel4 string `json:"customLabel4,omitempty"`
3217
3218	// Installment: Number and amount of installments to pay for an item.
3219	// Brazil only.
3220	Installment *Installment `json:"installment,omitempty"`
3221
3222	// InstoreProductLocation: The instore product location. Supported only
3223	// for local products.
3224	InstoreProductLocation string `json:"instoreProductLocation,omitempty"`
3225
3226	// Kind: Identifies what kind of resource this is. Value: the fixed
3227	// string "content#inventory".
3228	Kind string `json:"kind,omitempty"`
3229
3230	// LoyaltyPoints: Loyalty points that users receive after purchasing the
3231	// item. Japan only.
3232	LoyaltyPoints *LoyaltyPoints `json:"loyaltyPoints,omitempty"`
3233
3234	// Pickup: Store pickup information. Only supported for local inventory.
3235	// Not setting pickup means "don't update" while setting it to the empty
3236	// value ({} in JSON) means "delete". Otherwise, pickupMethod and
3237	// pickupSla must be set together, unless pickupMethod is "not
3238	// supported".
3239	Pickup *InventoryPickup `json:"pickup,omitempty"`
3240
3241	// Price: The price of the product.
3242	Price *Price `json:"price,omitempty"`
3243
3244	// Quantity: The quantity of the product. Must be equal to or greater
3245	// than zero. Supported only for local products.
3246	Quantity int64 `json:"quantity,omitempty"`
3247
3248	// SalePrice: The sale price of the product. Mandatory if
3249	// sale_price_effective_date is defined.
3250	SalePrice *Price `json:"salePrice,omitempty"`
3251
3252	// SalePriceEffectiveDate: A date range represented by a pair of ISO
3253	// 8601 dates separated by a space, comma, or slash. Both dates might be
3254	// specified as 'null' if undecided.
3255	SalePriceEffectiveDate string `json:"salePriceEffectiveDate,omitempty"`
3256
3257	// SellOnGoogleQuantity: The quantity of the product that is available
3258	// for selling on Google. Supported only for online products.
3259	SellOnGoogleQuantity int64 `json:"sellOnGoogleQuantity,omitempty"`
3260
3261	// ForceSendFields is a list of field names (e.g. "Availability") to
3262	// unconditionally include in API requests. By default, fields with
3263	// empty values are omitted from API requests. However, any non-pointer,
3264	// non-interface field appearing in ForceSendFields will be sent to the
3265	// server regardless of whether the field is empty or not. This may be
3266	// used to include empty fields in Patch requests.
3267	ForceSendFields []string `json:"-"`
3268
3269	// NullFields is a list of field names (e.g. "Availability") to include
3270	// in API requests with the JSON null value. By default, fields with
3271	// empty values are omitted from API requests. However, any field with
3272	// an empty value appearing in NullFields will be sent to the server as
3273	// null. It is an error if a field in this list has a non-empty value.
3274	// This may be used to include null fields in Patch requests.
3275	NullFields []string `json:"-"`
3276}
3277
3278func (s *Inventory) MarshalJSON() ([]byte, error) {
3279	type NoMethod Inventory
3280	raw := NoMethod(*s)
3281	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3282}
3283
3284type InventoryCustomBatchRequest struct {
3285	// Entries: The request entries to be processed in the batch.
3286	Entries []*InventoryCustomBatchRequestEntry `json:"entries,omitempty"`
3287
3288	// ForceSendFields is a list of field names (e.g. "Entries") to
3289	// unconditionally include in API requests. By default, fields with
3290	// empty values are omitted from API requests. However, any non-pointer,
3291	// non-interface field appearing in ForceSendFields will be sent to the
3292	// server regardless of whether the field is empty or not. This may be
3293	// used to include empty fields in Patch requests.
3294	ForceSendFields []string `json:"-"`
3295
3296	// NullFields is a list of field names (e.g. "Entries") to include in
3297	// API requests with the JSON null value. By default, fields with empty
3298	// values are omitted from API requests. However, any field with an
3299	// empty value appearing in NullFields will be sent to the server as
3300	// null. It is an error if a field in this list has a non-empty value.
3301	// This may be used to include null fields in Patch requests.
3302	NullFields []string `json:"-"`
3303}
3304
3305func (s *InventoryCustomBatchRequest) MarshalJSON() ([]byte, error) {
3306	type NoMethod InventoryCustomBatchRequest
3307	raw := NoMethod(*s)
3308	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3309}
3310
3311// InventoryCustomBatchRequestEntry: A batch entry encoding a single
3312// non-batch inventory request.
3313type InventoryCustomBatchRequestEntry struct {
3314	// BatchId: An entry ID, unique within the batch request.
3315	BatchId int64 `json:"batchId,omitempty"`
3316
3317	// Inventory: Price and availability of the product.
3318	Inventory *Inventory `json:"inventory,omitempty"`
3319
3320	// MerchantId: The ID of the managing account.
3321	MerchantId uint64 `json:"merchantId,omitempty,string"`
3322
3323	// ProductId: The ID of the product for which to update price and
3324	// availability.
3325	ProductId string `json:"productId,omitempty"`
3326
3327	// StoreCode: The code of the store for which to update price and
3328	// availability. Use online to update price and availability of an
3329	// online product.
3330	StoreCode string `json:"storeCode,omitempty"`
3331
3332	// ForceSendFields is a list of field names (e.g. "BatchId") to
3333	// unconditionally include in API requests. By default, fields with
3334	// empty values are omitted from API requests. However, any non-pointer,
3335	// non-interface field appearing in ForceSendFields will be sent to the
3336	// server regardless of whether the field is empty or not. This may be
3337	// used to include empty fields in Patch requests.
3338	ForceSendFields []string `json:"-"`
3339
3340	// NullFields is a list of field names (e.g. "BatchId") to include in
3341	// API requests with the JSON null value. By default, fields with empty
3342	// values are omitted from API requests. However, any field with an
3343	// empty value appearing in NullFields will be sent to the server as
3344	// null. It is an error if a field in this list has a non-empty value.
3345	// This may be used to include null fields in Patch requests.
3346	NullFields []string `json:"-"`
3347}
3348
3349func (s *InventoryCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
3350	type NoMethod InventoryCustomBatchRequestEntry
3351	raw := NoMethod(*s)
3352	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3353}
3354
3355type InventoryCustomBatchResponse struct {
3356	// Entries: The result of the execution of the batch requests.
3357	Entries []*InventoryCustomBatchResponseEntry `json:"entries,omitempty"`
3358
3359	// Kind: Identifies what kind of resource this is. Value: the fixed
3360	// string "content#inventoryCustomBatchResponse".
3361	Kind string `json:"kind,omitempty"`
3362
3363	// ServerResponse contains the HTTP response code and headers from the
3364	// server.
3365	googleapi.ServerResponse `json:"-"`
3366
3367	// ForceSendFields is a list of field names (e.g. "Entries") to
3368	// unconditionally include in API requests. By default, fields with
3369	// empty values are omitted from API requests. However, any non-pointer,
3370	// non-interface field appearing in ForceSendFields will be sent to the
3371	// server regardless of whether the field is empty or not. This may be
3372	// used to include empty fields in Patch requests.
3373	ForceSendFields []string `json:"-"`
3374
3375	// NullFields is a list of field names (e.g. "Entries") to include in
3376	// API requests with the JSON null value. By default, fields with empty
3377	// values are omitted from API requests. However, any field with an
3378	// empty value appearing in NullFields will be sent to the server as
3379	// null. It is an error if a field in this list has a non-empty value.
3380	// This may be used to include null fields in Patch requests.
3381	NullFields []string `json:"-"`
3382}
3383
3384func (s *InventoryCustomBatchResponse) MarshalJSON() ([]byte, error) {
3385	type NoMethod InventoryCustomBatchResponse
3386	raw := NoMethod(*s)
3387	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3388}
3389
3390// InventoryCustomBatchResponseEntry: A batch entry encoding a single
3391// non-batch inventory response.
3392type InventoryCustomBatchResponseEntry struct {
3393	// BatchId: The ID of the request entry this entry responds to.
3394	BatchId int64 `json:"batchId,omitempty"`
3395
3396	// Errors: A list of errors defined if and only if the request failed.
3397	Errors *Errors `json:"errors,omitempty"`
3398
3399	// Kind: Identifies what kind of resource this is. Value: the fixed
3400	// string "content#inventoryCustomBatchResponseEntry".
3401	Kind string `json:"kind,omitempty"`
3402
3403	// ForceSendFields is a list of field names (e.g. "BatchId") to
3404	// unconditionally include in API requests. By default, fields with
3405	// empty values are omitted from API requests. However, any non-pointer,
3406	// non-interface field appearing in ForceSendFields will be sent to the
3407	// server regardless of whether the field is empty or not. This may be
3408	// used to include empty fields in Patch requests.
3409	ForceSendFields []string `json:"-"`
3410
3411	// NullFields is a list of field names (e.g. "BatchId") to include in
3412	// API requests with the JSON null value. By default, fields with empty
3413	// values are omitted from API requests. However, any field with an
3414	// empty value appearing in NullFields will be sent to the server as
3415	// null. It is an error if a field in this list has a non-empty value.
3416	// This may be used to include null fields in Patch requests.
3417	NullFields []string `json:"-"`
3418}
3419
3420func (s *InventoryCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
3421	type NoMethod InventoryCustomBatchResponseEntry
3422	raw := NoMethod(*s)
3423	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3424}
3425
3426type InventoryPickup struct {
3427	// PickupMethod: Whether store pickup is available for this offer and
3428	// whether the pickup option should be shown as buy, reserve, or not
3429	// supported. Only supported for local inventory. Unless the value is
3430	// "not supported", must be submitted together with pickupSla.
3431	PickupMethod string `json:"pickupMethod,omitempty"`
3432
3433	// PickupSla: The expected date that an order will be ready for pickup,
3434	// relative to when the order is placed. Only supported for local
3435	// inventory. Must be submitted together with pickupMethod.
3436	PickupSla string `json:"pickupSla,omitempty"`
3437
3438	// ForceSendFields is a list of field names (e.g. "PickupMethod") to
3439	// unconditionally include in API requests. By default, fields with
3440	// empty values are omitted from API requests. However, any non-pointer,
3441	// non-interface field appearing in ForceSendFields will be sent to the
3442	// server regardless of whether the field is empty or not. This may be
3443	// used to include empty fields in Patch requests.
3444	ForceSendFields []string `json:"-"`
3445
3446	// NullFields is a list of field names (e.g. "PickupMethod") to include
3447	// in API requests with the JSON null value. By default, fields with
3448	// empty values are omitted from API requests. However, any field with
3449	// an empty value appearing in NullFields will be sent to the server as
3450	// null. It is an error if a field in this list has a non-empty value.
3451	// This may be used to include null fields in Patch requests.
3452	NullFields []string `json:"-"`
3453}
3454
3455func (s *InventoryPickup) MarshalJSON() ([]byte, error) {
3456	type NoMethod InventoryPickup
3457	raw := NoMethod(*s)
3458	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3459}
3460
3461type InventorySetRequest struct {
3462	// Availability: The availability of the product.
3463	Availability string `json:"availability,omitempty"`
3464
3465	// CustomLabel0: Custom label 0 for custom grouping of items in a
3466	// Shopping campaign. Only supported for online products.
3467	CustomLabel0 string `json:"customLabel0,omitempty"`
3468
3469	// CustomLabel1: Custom label 1 for custom grouping of items in a
3470	// Shopping campaign. Only supported for online products.
3471	CustomLabel1 string `json:"customLabel1,omitempty"`
3472
3473	// CustomLabel2: Custom label 2 for custom grouping of items in a
3474	// Shopping campaign. Only supported for online products.
3475	CustomLabel2 string `json:"customLabel2,omitempty"`
3476
3477	// CustomLabel3: Custom label 3 for custom grouping of items in a
3478	// Shopping campaign. Only supported for online products.
3479	CustomLabel3 string `json:"customLabel3,omitempty"`
3480
3481	// CustomLabel4: Custom label 3 for custom grouping of items in a
3482	// Shopping campaign. Only supported for online products.
3483	CustomLabel4 string `json:"customLabel4,omitempty"`
3484
3485	// Installment: Number and amount of installments to pay for an item.
3486	// Brazil only.
3487	Installment *Installment `json:"installment,omitempty"`
3488
3489	// InstoreProductLocation: The instore product location. Supported only
3490	// for local products.
3491	InstoreProductLocation string `json:"instoreProductLocation,omitempty"`
3492
3493	// LoyaltyPoints: Loyalty points that users receive after purchasing the
3494	// item. Japan only.
3495	LoyaltyPoints *LoyaltyPoints `json:"loyaltyPoints,omitempty"`
3496
3497	// Pickup: Store pickup information. Only supported for local inventory.
3498	// Not setting pickup means "don't update" while setting it to the empty
3499	// value ({} in JSON) means "delete". Otherwise, pickupMethod and
3500	// pickupSla must be set together, unless pickupMethod is "not
3501	// supported".
3502	Pickup *InventoryPickup `json:"pickup,omitempty"`
3503
3504	// Price: The price of the product.
3505	Price *Price `json:"price,omitempty"`
3506
3507	// Quantity: The quantity of the product. Must be equal to or greater
3508	// than zero. Supported only for local products.
3509	Quantity int64 `json:"quantity,omitempty"`
3510
3511	// SalePrice: The sale price of the product. Mandatory if
3512	// sale_price_effective_date is defined.
3513	SalePrice *Price `json:"salePrice,omitempty"`
3514
3515	// SalePriceEffectiveDate: A date range represented by a pair of ISO
3516	// 8601 dates separated by a space, comma, or slash. Both dates might be
3517	// specified as 'null' if undecided.
3518	SalePriceEffectiveDate string `json:"salePriceEffectiveDate,omitempty"`
3519
3520	// SellOnGoogleQuantity: The quantity of the product that is available
3521	// for selling on Google. Supported only for online products.
3522	SellOnGoogleQuantity int64 `json:"sellOnGoogleQuantity,omitempty"`
3523
3524	// ForceSendFields is a list of field names (e.g. "Availability") to
3525	// unconditionally include in API requests. By default, fields with
3526	// empty values are omitted from API requests. However, any non-pointer,
3527	// non-interface field appearing in ForceSendFields will be sent to the
3528	// server regardless of whether the field is empty or not. This may be
3529	// used to include empty fields in Patch requests.
3530	ForceSendFields []string `json:"-"`
3531
3532	// NullFields is a list of field names (e.g. "Availability") to include
3533	// in API requests with the JSON null value. By default, fields with
3534	// empty values are omitted from API requests. However, any field with
3535	// an empty value appearing in NullFields will be sent to the server as
3536	// null. It is an error if a field in this list has a non-empty value.
3537	// This may be used to include null fields in Patch requests.
3538	NullFields []string `json:"-"`
3539}
3540
3541func (s *InventorySetRequest) MarshalJSON() ([]byte, error) {
3542	type NoMethod InventorySetRequest
3543	raw := NoMethod(*s)
3544	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3545}
3546
3547type InventorySetResponse struct {
3548	// Kind: Identifies what kind of resource this is. Value: the fixed
3549	// string "content#inventorySetResponse".
3550	Kind string `json:"kind,omitempty"`
3551
3552	// ServerResponse contains the HTTP response code and headers from the
3553	// server.
3554	googleapi.ServerResponse `json:"-"`
3555
3556	// ForceSendFields is a list of field names (e.g. "Kind") to
3557	// unconditionally include in API requests. By default, fields with
3558	// empty values are omitted from API requests. However, any non-pointer,
3559	// non-interface field appearing in ForceSendFields will be sent to the
3560	// server regardless of whether the field is empty or not. This may be
3561	// used to include empty fields in Patch requests.
3562	ForceSendFields []string `json:"-"`
3563
3564	// NullFields is a list of field names (e.g. "Kind") to include in API
3565	// requests with the JSON null value. By default, fields with empty
3566	// values are omitted from API requests. However, any field with an
3567	// empty value appearing in NullFields will be sent to the server as
3568	// null. It is an error if a field in this list has a non-empty value.
3569	// This may be used to include null fields in Patch requests.
3570	NullFields []string `json:"-"`
3571}
3572
3573func (s *InventorySetResponse) MarshalJSON() ([]byte, error) {
3574	type NoMethod InventorySetResponse
3575	raw := NoMethod(*s)
3576	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3577}
3578
3579type InvoiceSummary struct {
3580	// AdditionalChargeSummaries: Summary of the total amounts of the
3581	// additional charges.
3582	AdditionalChargeSummaries []*InvoiceSummaryAdditionalChargeSummary `json:"additionalChargeSummaries,omitempty"`
3583
3584	// CustomerBalance: Deprecated.
3585	CustomerBalance *Amount `json:"customerBalance,omitempty"`
3586
3587	// GoogleBalance: Deprecated.
3588	GoogleBalance *Amount `json:"googleBalance,omitempty"`
3589
3590	// MerchantBalance: Deprecated.
3591	MerchantBalance *Amount `json:"merchantBalance,omitempty"`
3592
3593	// ProductTotal: [required] Total price for the product.
3594	ProductTotal *Amount `json:"productTotal,omitempty"`
3595
3596	// PromotionSummaries: Deprecated.
3597	PromotionSummaries []*Promotion `json:"promotionSummaries,omitempty"`
3598
3599	// ForceSendFields is a list of field names (e.g.
3600	// "AdditionalChargeSummaries") to unconditionally include in API
3601	// requests. By default, fields with empty values are omitted from API
3602	// requests. However, any non-pointer, non-interface field appearing in
3603	// ForceSendFields will be sent to the server regardless of whether the
3604	// field is empty or not. This may be used to include empty fields in
3605	// Patch requests.
3606	ForceSendFields []string `json:"-"`
3607
3608	// NullFields is a list of field names (e.g.
3609	// "AdditionalChargeSummaries") to include in API requests with the JSON
3610	// null value. By default, fields with empty values are omitted from API
3611	// requests. However, any field with an empty value appearing in
3612	// NullFields will be sent to the server as null. It is an error if a
3613	// field in this list has a non-empty value. This may be used to include
3614	// null fields in Patch requests.
3615	NullFields []string `json:"-"`
3616}
3617
3618func (s *InvoiceSummary) MarshalJSON() ([]byte, error) {
3619	type NoMethod InvoiceSummary
3620	raw := NoMethod(*s)
3621	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3622}
3623
3624type InvoiceSummaryAdditionalChargeSummary struct {
3625	// TotalAmount: [required] Total additional charge for this type.
3626	TotalAmount *Amount `json:"totalAmount,omitempty"`
3627
3628	// Type: [required] Type of the additional charge.
3629	Type string `json:"type,omitempty"`
3630
3631	// ForceSendFields is a list of field names (e.g. "TotalAmount") to
3632	// unconditionally include in API requests. By default, fields with
3633	// empty values are omitted from API requests. However, any non-pointer,
3634	// non-interface field appearing in ForceSendFields will be sent to the
3635	// server regardless of whether the field is empty or not. This may be
3636	// used to include empty fields in Patch requests.
3637	ForceSendFields []string `json:"-"`
3638
3639	// NullFields is a list of field names (e.g. "TotalAmount") to include
3640	// in API requests with the JSON null value. By default, fields with
3641	// empty values are omitted from API requests. However, any field with
3642	// an empty value appearing in NullFields will be sent to the server as
3643	// null. It is an error if a field in this list has a non-empty value.
3644	// This may be used to include null fields in Patch requests.
3645	NullFields []string `json:"-"`
3646}
3647
3648func (s *InvoiceSummaryAdditionalChargeSummary) MarshalJSON() ([]byte, error) {
3649	type NoMethod InvoiceSummaryAdditionalChargeSummary
3650	raw := NoMethod(*s)
3651	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3652}
3653
3654type LiaAboutPageSettings struct {
3655	// Status: The status of the verification process for the About page.
3656	Status string `json:"status,omitempty"`
3657
3658	// Url: The URL for the About page.
3659	Url string `json:"url,omitempty"`
3660
3661	// ForceSendFields is a list of field names (e.g. "Status") to
3662	// unconditionally include in API requests. By default, fields with
3663	// empty values are omitted from API requests. However, any non-pointer,
3664	// non-interface field appearing in ForceSendFields will be sent to the
3665	// server regardless of whether the field is empty or not. This may be
3666	// used to include empty fields in Patch requests.
3667	ForceSendFields []string `json:"-"`
3668
3669	// NullFields is a list of field names (e.g. "Status") to include in API
3670	// requests with the JSON null value. By default, fields with empty
3671	// values are omitted from API requests. However, any field with an
3672	// empty value appearing in NullFields will be sent to the server as
3673	// null. It is an error if a field in this list has a non-empty value.
3674	// This may be used to include null fields in Patch requests.
3675	NullFields []string `json:"-"`
3676}
3677
3678func (s *LiaAboutPageSettings) MarshalJSON() ([]byte, error) {
3679	type NoMethod LiaAboutPageSettings
3680	raw := NoMethod(*s)
3681	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3682}
3683
3684type LiaCountrySettings struct {
3685	// About: The settings for the About page.
3686	About *LiaAboutPageSettings `json:"about,omitempty"`
3687
3688	// Country: CLDR country code (e.g. "US").
3689	Country string `json:"country,omitempty"`
3690
3691	// HostedLocalStorefrontActive: The status of the "Merchant hosted local
3692	// storefront" feature.
3693	HostedLocalStorefrontActive bool `json:"hostedLocalStorefrontActive,omitempty"`
3694
3695	// Inventory: LIA inventory verification settings.
3696	Inventory *LiaInventorySettings `json:"inventory,omitempty"`
3697
3698	// OnDisplayToOrder: LIA "On Display To Order" settings.
3699	OnDisplayToOrder *LiaOnDisplayToOrderSettings `json:"onDisplayToOrder,omitempty"`
3700
3701	// PosDataProvider: The POS data provider linked with this country.
3702	PosDataProvider *LiaPosDataProvider `json:"posDataProvider,omitempty"`
3703
3704	// StorePickupActive: The status of the "Store pickup" feature.
3705	StorePickupActive bool `json:"storePickupActive,omitempty"`
3706
3707	// ForceSendFields is a list of field names (e.g. "About") to
3708	// unconditionally include in API requests. By default, fields with
3709	// empty values are omitted from API requests. However, any non-pointer,
3710	// non-interface field appearing in ForceSendFields will be sent to the
3711	// server regardless of whether the field is empty or not. This may be
3712	// used to include empty fields in Patch requests.
3713	ForceSendFields []string `json:"-"`
3714
3715	// NullFields is a list of field names (e.g. "About") to include in API
3716	// requests with the JSON null value. By default, fields with empty
3717	// values are omitted from API requests. However, any field with an
3718	// empty value appearing in NullFields will be sent to the server as
3719	// null. It is an error if a field in this list has a non-empty value.
3720	// This may be used to include null fields in Patch requests.
3721	NullFields []string `json:"-"`
3722}
3723
3724func (s *LiaCountrySettings) MarshalJSON() ([]byte, error) {
3725	type NoMethod LiaCountrySettings
3726	raw := NoMethod(*s)
3727	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3728}
3729
3730type LiaInventorySettings struct {
3731	// InventoryVerificationContactEmail: The email of the contact for the
3732	// inventory verification process.
3733	InventoryVerificationContactEmail string `json:"inventoryVerificationContactEmail,omitempty"`
3734
3735	// InventoryVerificationContactName: The name of the contact for the
3736	// inventory verification process.
3737	InventoryVerificationContactName string `json:"inventoryVerificationContactName,omitempty"`
3738
3739	// InventoryVerificationContactStatus: The status of the verification
3740	// contact.
3741	InventoryVerificationContactStatus string `json:"inventoryVerificationContactStatus,omitempty"`
3742
3743	// Status: The status of the inventory verification process.
3744	Status string `json:"status,omitempty"`
3745
3746	// ForceSendFields is a list of field names (e.g.
3747	// "InventoryVerificationContactEmail") to unconditionally include in
3748	// API requests. By default, fields with empty values are omitted from
3749	// API requests. However, any non-pointer, non-interface field appearing
3750	// in ForceSendFields will be sent to the server regardless of whether
3751	// the field is empty or not. This may be used to include empty fields
3752	// in Patch requests.
3753	ForceSendFields []string `json:"-"`
3754
3755	// NullFields is a list of field names (e.g.
3756	// "InventoryVerificationContactEmail") to include in API requests with
3757	// the JSON null value. By default, fields with empty values are omitted
3758	// from API requests. However, any field with an empty value appearing
3759	// in NullFields will be sent to the server as null. It is an error if a
3760	// field in this list has a non-empty value. This may be used to include
3761	// null fields in Patch requests.
3762	NullFields []string `json:"-"`
3763}
3764
3765func (s *LiaInventorySettings) MarshalJSON() ([]byte, error) {
3766	type NoMethod LiaInventorySettings
3767	raw := NoMethod(*s)
3768	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3769}
3770
3771type LiaOnDisplayToOrderSettings struct {
3772	// ShippingCostPolicyUrl: Shipping cost and policy URL.
3773	ShippingCostPolicyUrl string `json:"shippingCostPolicyUrl,omitempty"`
3774
3775	// Status: The status of the ?On display to order? feature.
3776	Status string `json:"status,omitempty"`
3777
3778	// ForceSendFields is a list of field names (e.g.
3779	// "ShippingCostPolicyUrl") to unconditionally include in API requests.
3780	// By default, fields with empty values are omitted from API requests.
3781	// However, any non-pointer, non-interface field appearing in
3782	// ForceSendFields will be sent to the server regardless of whether the
3783	// field is empty or not. This may be used to include empty fields in
3784	// Patch requests.
3785	ForceSendFields []string `json:"-"`
3786
3787	// NullFields is a list of field names (e.g. "ShippingCostPolicyUrl") to
3788	// include in API requests with the JSON null value. By default, fields
3789	// with empty values are omitted from API requests. However, any field
3790	// with an empty value appearing in NullFields will be sent to the
3791	// server as null. It is an error if a field in this list has a
3792	// non-empty value. This may be used to include null fields in Patch
3793	// requests.
3794	NullFields []string `json:"-"`
3795}
3796
3797func (s *LiaOnDisplayToOrderSettings) MarshalJSON() ([]byte, error) {
3798	type NoMethod LiaOnDisplayToOrderSettings
3799	raw := NoMethod(*s)
3800	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3801}
3802
3803type LiaPosDataProvider struct {
3804	// PosDataProviderId: The ID of the POS data provider.
3805	PosDataProviderId uint64 `json:"posDataProviderId,omitempty,string"`
3806
3807	// PosExternalAccountId: The account ID by which this merchant is known
3808	// to the POS data provider.
3809	PosExternalAccountId string `json:"posExternalAccountId,omitempty"`
3810
3811	// ForceSendFields is a list of field names (e.g. "PosDataProviderId")
3812	// to unconditionally include in API requests. By default, fields with
3813	// empty values are omitted from API requests. However, any non-pointer,
3814	// non-interface field appearing in ForceSendFields will be sent to the
3815	// server regardless of whether the field is empty or not. This may be
3816	// used to include empty fields in Patch requests.
3817	ForceSendFields []string `json:"-"`
3818
3819	// NullFields is a list of field names (e.g. "PosDataProviderId") to
3820	// include in API requests with the JSON null value. By default, fields
3821	// with empty values are omitted from API requests. However, any field
3822	// with an empty value appearing in NullFields will be sent to the
3823	// server as null. It is an error if a field in this list has a
3824	// non-empty value. This may be used to include null fields in Patch
3825	// requests.
3826	NullFields []string `json:"-"`
3827}
3828
3829func (s *LiaPosDataProvider) MarshalJSON() ([]byte, error) {
3830	type NoMethod LiaPosDataProvider
3831	raw := NoMethod(*s)
3832	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3833}
3834
3835// LiaSettings: Local Inventory ads (LIA) settings. All methods except
3836// listposdataproviders require the admin role.
3837type LiaSettings struct {
3838	// AccountId: The ID of the account to which these LIA settings belong.
3839	// Ignored upon update, always present in get request responses.
3840	AccountId uint64 `json:"accountId,omitempty,string"`
3841
3842	// CountrySettings: The LIA settings for each country.
3843	CountrySettings []*LiaCountrySettings `json:"countrySettings,omitempty"`
3844
3845	// Kind: Identifies what kind of resource this is. Value: the fixed
3846	// string "content#liaSettings".
3847	Kind string `json:"kind,omitempty"`
3848
3849	// ServerResponse contains the HTTP response code and headers from the
3850	// server.
3851	googleapi.ServerResponse `json:"-"`
3852
3853	// ForceSendFields is a list of field names (e.g. "AccountId") to
3854	// unconditionally include in API requests. By default, fields with
3855	// empty values are omitted from API requests. However, any non-pointer,
3856	// non-interface field appearing in ForceSendFields will be sent to the
3857	// server regardless of whether the field is empty or not. This may be
3858	// used to include empty fields in Patch requests.
3859	ForceSendFields []string `json:"-"`
3860
3861	// NullFields is a list of field names (e.g. "AccountId") to include in
3862	// API requests with the JSON null value. By default, fields with empty
3863	// values are omitted from API requests. However, any field with an
3864	// empty value appearing in NullFields will be sent to the server as
3865	// null. It is an error if a field in this list has a non-empty value.
3866	// This may be used to include null fields in Patch requests.
3867	NullFields []string `json:"-"`
3868}
3869
3870func (s *LiaSettings) MarshalJSON() ([]byte, error) {
3871	type NoMethod LiaSettings
3872	raw := NoMethod(*s)
3873	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3874}
3875
3876type LiasettingsCustomBatchRequest struct {
3877	// Entries: The request entries to be processed in the batch.
3878	Entries []*LiasettingsCustomBatchRequestEntry `json:"entries,omitempty"`
3879
3880	// ForceSendFields is a list of field names (e.g. "Entries") to
3881	// unconditionally include in API requests. By default, fields with
3882	// empty values are omitted from API requests. However, any non-pointer,
3883	// non-interface field appearing in ForceSendFields will be sent to the
3884	// server regardless of whether the field is empty or not. This may be
3885	// used to include empty fields in Patch requests.
3886	ForceSendFields []string `json:"-"`
3887
3888	// NullFields is a list of field names (e.g. "Entries") to include in
3889	// API requests with the JSON null value. By default, fields with empty
3890	// values are omitted from API requests. However, any field with an
3891	// empty value appearing in NullFields will be sent to the server as
3892	// null. It is an error if a field in this list has a non-empty value.
3893	// This may be used to include null fields in Patch requests.
3894	NullFields []string `json:"-"`
3895}
3896
3897func (s *LiasettingsCustomBatchRequest) MarshalJSON() ([]byte, error) {
3898	type NoMethod LiasettingsCustomBatchRequest
3899	raw := NoMethod(*s)
3900	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3901}
3902
3903type LiasettingsCustomBatchRequestEntry struct {
3904	// AccountId: The ID of the account for which to get/update account
3905	// shipping settings.
3906	AccountId uint64 `json:"accountId,omitempty,string"`
3907
3908	// BatchId: An entry ID, unique within the batch request.
3909	BatchId int64 `json:"batchId,omitempty"`
3910
3911	// ContactEmail: Inventory validation contact email. Required only for
3912	// SetInventoryValidationContact.
3913	ContactEmail string `json:"contactEmail,omitempty"`
3914
3915	// ContactName: Inventory validation contact name. Required only for
3916	// SetInventoryValidationContact.
3917	ContactName string `json:"contactName,omitempty"`
3918
3919	// Country: The country code. Required only for
3920	// RequestInventoryVerification.
3921	Country string `json:"country,omitempty"`
3922
3923	// GmbEmail: The GMB account. Required only for RequestGmbAccess.
3924	GmbEmail string `json:"gmbEmail,omitempty"`
3925
3926	// LiaSettings: The account Lia settings to update. Only defined if the
3927	// method is update.
3928	LiaSettings *LiaSettings `json:"liaSettings,omitempty"`
3929
3930	// MerchantId: The ID of the managing account.
3931	MerchantId uint64 `json:"merchantId,omitempty,string"`
3932
3933	Method string `json:"method,omitempty"`
3934
3935	// PosDataProviderId: The ID of POS data provider. Required only for
3936	// SetPosProvider.
3937	PosDataProviderId uint64 `json:"posDataProviderId,omitempty,string"`
3938
3939	// PosExternalAccountId: The account ID by which this merchant is known
3940	// to the POS provider.
3941	PosExternalAccountId string `json:"posExternalAccountId,omitempty"`
3942
3943	// ForceSendFields is a list of field names (e.g. "AccountId") to
3944	// unconditionally include in API requests. By default, fields with
3945	// empty values are omitted from API requests. However, any non-pointer,
3946	// non-interface field appearing in ForceSendFields will be sent to the
3947	// server regardless of whether the field is empty or not. This may be
3948	// used to include empty fields in Patch requests.
3949	ForceSendFields []string `json:"-"`
3950
3951	// NullFields is a list of field names (e.g. "AccountId") to include in
3952	// API requests with the JSON null value. By default, fields with empty
3953	// values are omitted from API requests. However, any field with an
3954	// empty value appearing in NullFields will be sent to the server as
3955	// null. It is an error if a field in this list has a non-empty value.
3956	// This may be used to include null fields in Patch requests.
3957	NullFields []string `json:"-"`
3958}
3959
3960func (s *LiasettingsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
3961	type NoMethod LiasettingsCustomBatchRequestEntry
3962	raw := NoMethod(*s)
3963	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3964}
3965
3966type LiasettingsCustomBatchResponse struct {
3967	// Entries: The result of the execution of the batch requests.
3968	Entries []*LiasettingsCustomBatchResponseEntry `json:"entries,omitempty"`
3969
3970	// Kind: Identifies what kind of resource this is. Value: the fixed
3971	// string "content#liasettingsCustomBatchResponse".
3972	Kind string `json:"kind,omitempty"`
3973
3974	// ServerResponse contains the HTTP response code and headers from the
3975	// server.
3976	googleapi.ServerResponse `json:"-"`
3977
3978	// ForceSendFields is a list of field names (e.g. "Entries") to
3979	// unconditionally include in API requests. By default, fields with
3980	// empty values are omitted from API requests. However, any non-pointer,
3981	// non-interface field appearing in ForceSendFields will be sent to the
3982	// server regardless of whether the field is empty or not. This may be
3983	// used to include empty fields in Patch requests.
3984	ForceSendFields []string `json:"-"`
3985
3986	// NullFields is a list of field names (e.g. "Entries") to include in
3987	// API requests with the JSON null value. By default, fields with empty
3988	// values are omitted from API requests. However, any field with an
3989	// empty value appearing in NullFields will be sent to the server as
3990	// null. It is an error if a field in this list has a non-empty value.
3991	// This may be used to include null fields in Patch requests.
3992	NullFields []string `json:"-"`
3993}
3994
3995func (s *LiasettingsCustomBatchResponse) MarshalJSON() ([]byte, error) {
3996	type NoMethod LiasettingsCustomBatchResponse
3997	raw := NoMethod(*s)
3998	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3999}
4000
4001type LiasettingsCustomBatchResponseEntry struct {
4002	// BatchId: The ID of the request entry to which this entry responds.
4003	BatchId int64 `json:"batchId,omitempty"`
4004
4005	// Errors: A list of errors defined if, and only if, the request failed.
4006	Errors *Errors `json:"errors,omitempty"`
4007
4008	// GmbAccounts: The the list of accessible GMB accounts.
4009	GmbAccounts *GmbAccounts `json:"gmbAccounts,omitempty"`
4010
4011	// Kind: Identifies what kind of resource this is. Value: the fixed
4012	// string "content#liasettingsCustomBatchResponseEntry".
4013	Kind string `json:"kind,omitempty"`
4014
4015	// LiaSettings: The retrieved or updated Lia settings.
4016	LiaSettings *LiaSettings `json:"liaSettings,omitempty"`
4017
4018	// PosDataProviders: The list of POS data providers.
4019	PosDataProviders []*PosDataProviders `json:"posDataProviders,omitempty"`
4020
4021	// ForceSendFields is a list of field names (e.g. "BatchId") to
4022	// unconditionally include in API requests. By default, fields with
4023	// empty values are omitted from API requests. However, any non-pointer,
4024	// non-interface field appearing in ForceSendFields will be sent to the
4025	// server regardless of whether the field is empty or not. This may be
4026	// used to include empty fields in Patch requests.
4027	ForceSendFields []string `json:"-"`
4028
4029	// NullFields is a list of field names (e.g. "BatchId") to include in
4030	// API requests with the JSON null value. By default, fields with empty
4031	// values are omitted from API requests. However, any field with an
4032	// empty value appearing in NullFields will be sent to the server as
4033	// null. It is an error if a field in this list has a non-empty value.
4034	// This may be used to include null fields in Patch requests.
4035	NullFields []string `json:"-"`
4036}
4037
4038func (s *LiasettingsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
4039	type NoMethod LiasettingsCustomBatchResponseEntry
4040	raw := NoMethod(*s)
4041	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4042}
4043
4044type LiasettingsGetAccessibleGmbAccountsResponse struct {
4045	// AccountId: The ID of the account.
4046	AccountId uint64 `json:"accountId,omitempty,string"`
4047
4048	// GmbAccounts: A list of GMB accounts which are available to the
4049	// merchant.
4050	GmbAccounts []*GmbAccountsGmbAccount `json:"gmbAccounts,omitempty"`
4051
4052	// Kind: Identifies what kind of resource this is. Value: the fixed
4053	// string "content#liasettingsGetAccessibleGmbAccountsResponse".
4054	Kind string `json:"kind,omitempty"`
4055
4056	// ServerResponse contains the HTTP response code and headers from the
4057	// server.
4058	googleapi.ServerResponse `json:"-"`
4059
4060	// ForceSendFields is a list of field names (e.g. "AccountId") to
4061	// unconditionally include in API requests. By default, fields with
4062	// empty values are omitted from API requests. However, any non-pointer,
4063	// non-interface field appearing in ForceSendFields will be sent to the
4064	// server regardless of whether the field is empty or not. This may be
4065	// used to include empty fields in Patch requests.
4066	ForceSendFields []string `json:"-"`
4067
4068	// NullFields is a list of field names (e.g. "AccountId") to include in
4069	// API requests with the JSON null value. By default, fields with empty
4070	// values are omitted from API requests. However, any field with an
4071	// empty value appearing in NullFields will be sent to the server as
4072	// null. It is an error if a field in this list has a non-empty value.
4073	// This may be used to include null fields in Patch requests.
4074	NullFields []string `json:"-"`
4075}
4076
4077func (s *LiasettingsGetAccessibleGmbAccountsResponse) MarshalJSON() ([]byte, error) {
4078	type NoMethod LiasettingsGetAccessibleGmbAccountsResponse
4079	raw := NoMethod(*s)
4080	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4081}
4082
4083type LiasettingsListPosDataProvidersResponse struct {
4084	// Kind: Identifies what kind of resource this is. Value: the fixed
4085	// string "content#liasettingsListPosDataProvidersResponse".
4086	Kind string `json:"kind,omitempty"`
4087
4088	// PosDataProviders: The list of POS data providers for each eligible
4089	// country
4090	PosDataProviders []*PosDataProviders `json:"posDataProviders,omitempty"`
4091
4092	// ServerResponse contains the HTTP response code and headers from the
4093	// server.
4094	googleapi.ServerResponse `json:"-"`
4095
4096	// ForceSendFields is a list of field names (e.g. "Kind") to
4097	// unconditionally include in API requests. By default, fields with
4098	// empty values are omitted from API requests. However, any non-pointer,
4099	// non-interface field appearing in ForceSendFields will be sent to the
4100	// server regardless of whether the field is empty or not. This may be
4101	// used to include empty fields in Patch requests.
4102	ForceSendFields []string `json:"-"`
4103
4104	// NullFields is a list of field names (e.g. "Kind") to include in API
4105	// requests with the JSON null value. By default, fields with empty
4106	// values are omitted from API requests. However, any field with an
4107	// empty value appearing in NullFields will be sent to the server as
4108	// null. It is an error if a field in this list has a non-empty value.
4109	// This may be used to include null fields in Patch requests.
4110	NullFields []string `json:"-"`
4111}
4112
4113func (s *LiasettingsListPosDataProvidersResponse) MarshalJSON() ([]byte, error) {
4114	type NoMethod LiasettingsListPosDataProvidersResponse
4115	raw := NoMethod(*s)
4116	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4117}
4118
4119type LiasettingsListResponse struct {
4120	// Kind: Identifies what kind of resource this is. Value: the fixed
4121	// string "content#liasettingsListResponse".
4122	Kind string `json:"kind,omitempty"`
4123
4124	// NextPageToken: The token for the retrieval of the next page of LIA
4125	// settings.
4126	NextPageToken string `json:"nextPageToken,omitempty"`
4127
4128	Resources []*LiaSettings `json:"resources,omitempty"`
4129
4130	// ServerResponse contains the HTTP response code and headers from the
4131	// server.
4132	googleapi.ServerResponse `json:"-"`
4133
4134	// ForceSendFields is a list of field names (e.g. "Kind") to
4135	// unconditionally include in API requests. By default, fields with
4136	// empty values are omitted from API requests. However, any non-pointer,
4137	// non-interface field appearing in ForceSendFields will be sent to the
4138	// server regardless of whether the field is empty or not. This may be
4139	// used to include empty fields in Patch requests.
4140	ForceSendFields []string `json:"-"`
4141
4142	// NullFields is a list of field names (e.g. "Kind") to include in API
4143	// requests with the JSON null value. By default, fields with empty
4144	// values are omitted from API requests. However, any field with an
4145	// empty value appearing in NullFields will be sent to the server as
4146	// null. It is an error if a field in this list has a non-empty value.
4147	// This may be used to include null fields in Patch requests.
4148	NullFields []string `json:"-"`
4149}
4150
4151func (s *LiasettingsListResponse) MarshalJSON() ([]byte, error) {
4152	type NoMethod LiasettingsListResponse
4153	raw := NoMethod(*s)
4154	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4155}
4156
4157type LiasettingsRequestGmbAccessResponse struct {
4158	// Kind: Identifies what kind of resource this is. Value: the fixed
4159	// string "content#liasettingsRequestGmbAccessResponse".
4160	Kind string `json:"kind,omitempty"`
4161
4162	// ServerResponse contains the HTTP response code and headers from the
4163	// server.
4164	googleapi.ServerResponse `json:"-"`
4165
4166	// ForceSendFields is a list of field names (e.g. "Kind") to
4167	// unconditionally include in API requests. By default, fields with
4168	// empty values are omitted from API requests. However, any non-pointer,
4169	// non-interface field appearing in ForceSendFields will be sent to the
4170	// server regardless of whether the field is empty or not. This may be
4171	// used to include empty fields in Patch requests.
4172	ForceSendFields []string `json:"-"`
4173
4174	// NullFields is a list of field names (e.g. "Kind") to include in API
4175	// requests with the JSON null value. By default, fields with empty
4176	// values are omitted from API requests. However, any field with an
4177	// empty value appearing in NullFields will be sent to the server as
4178	// null. It is an error if a field in this list has a non-empty value.
4179	// This may be used to include null fields in Patch requests.
4180	NullFields []string `json:"-"`
4181}
4182
4183func (s *LiasettingsRequestGmbAccessResponse) MarshalJSON() ([]byte, error) {
4184	type NoMethod LiasettingsRequestGmbAccessResponse
4185	raw := NoMethod(*s)
4186	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4187}
4188
4189type LiasettingsRequestInventoryVerificationResponse struct {
4190	// Kind: Identifies what kind of resource this is. Value: the fixed
4191	// string "content#liasettingsRequestInventoryVerificationResponse".
4192	Kind string `json:"kind,omitempty"`
4193
4194	// ServerResponse contains the HTTP response code and headers from the
4195	// server.
4196	googleapi.ServerResponse `json:"-"`
4197
4198	// ForceSendFields is a list of field names (e.g. "Kind") to
4199	// unconditionally include in API requests. By default, fields with
4200	// empty values are omitted from API requests. However, any non-pointer,
4201	// non-interface field appearing in ForceSendFields will be sent to the
4202	// server regardless of whether the field is empty or not. This may be
4203	// used to include empty fields in Patch requests.
4204	ForceSendFields []string `json:"-"`
4205
4206	// NullFields is a list of field names (e.g. "Kind") to include in API
4207	// requests with the JSON null value. By default, fields with empty
4208	// values are omitted from API requests. However, any field with an
4209	// empty value appearing in NullFields will be sent to the server as
4210	// null. It is an error if a field in this list has a non-empty value.
4211	// This may be used to include null fields in Patch requests.
4212	NullFields []string `json:"-"`
4213}
4214
4215func (s *LiasettingsRequestInventoryVerificationResponse) MarshalJSON() ([]byte, error) {
4216	type NoMethod LiasettingsRequestInventoryVerificationResponse
4217	raw := NoMethod(*s)
4218	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4219}
4220
4221type LiasettingsSetInventoryVerificationContactResponse struct {
4222	// Kind: Identifies what kind of resource this is. Value: the fixed
4223	// string "content#liasettingsSetInventoryVerificationContactResponse".
4224	Kind string `json:"kind,omitempty"`
4225
4226	// ServerResponse contains the HTTP response code and headers from the
4227	// server.
4228	googleapi.ServerResponse `json:"-"`
4229
4230	// ForceSendFields is a list of field names (e.g. "Kind") to
4231	// unconditionally include in API requests. By default, fields with
4232	// empty values are omitted from API requests. However, any non-pointer,
4233	// non-interface field appearing in ForceSendFields will be sent to the
4234	// server regardless of whether the field is empty or not. This may be
4235	// used to include empty fields in Patch requests.
4236	ForceSendFields []string `json:"-"`
4237
4238	// NullFields is a list of field names (e.g. "Kind") to include in API
4239	// requests with the JSON null value. By default, fields with empty
4240	// values are omitted from API requests. However, any field with an
4241	// empty value appearing in NullFields will be sent to the server as
4242	// null. It is an error if a field in this list has a non-empty value.
4243	// This may be used to include null fields in Patch requests.
4244	NullFields []string `json:"-"`
4245}
4246
4247func (s *LiasettingsSetInventoryVerificationContactResponse) MarshalJSON() ([]byte, error) {
4248	type NoMethod LiasettingsSetInventoryVerificationContactResponse
4249	raw := NoMethod(*s)
4250	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4251}
4252
4253type LiasettingsSetPosDataProviderResponse struct {
4254	// Kind: Identifies what kind of resource this is. Value: the fixed
4255	// string "content#liasettingsSetPosDataProviderResponse".
4256	Kind string `json:"kind,omitempty"`
4257
4258	// ServerResponse contains the HTTP response code and headers from the
4259	// server.
4260	googleapi.ServerResponse `json:"-"`
4261
4262	// ForceSendFields is a list of field names (e.g. "Kind") to
4263	// unconditionally include in API requests. By default, fields with
4264	// empty values are omitted from API requests. However, any non-pointer,
4265	// non-interface field appearing in ForceSendFields will be sent to the
4266	// server regardless of whether the field is empty or not. This may be
4267	// used to include empty fields in Patch requests.
4268	ForceSendFields []string `json:"-"`
4269
4270	// NullFields is a list of field names (e.g. "Kind") to include in API
4271	// requests with the JSON null value. By default, fields with empty
4272	// values are omitted from API requests. However, any field with an
4273	// empty value appearing in NullFields will be sent to the server as
4274	// null. It is an error if a field in this list has a non-empty value.
4275	// This may be used to include null fields in Patch requests.
4276	NullFields []string `json:"-"`
4277}
4278
4279func (s *LiasettingsSetPosDataProviderResponse) MarshalJSON() ([]byte, error) {
4280	type NoMethod LiasettingsSetPosDataProviderResponse
4281	raw := NoMethod(*s)
4282	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4283}
4284
4285type LocationIdSet struct {
4286	// LocationIds: A non-empty list of location IDs. They must all be of
4287	// the same location type (e.g., state).
4288	LocationIds []string `json:"locationIds,omitempty"`
4289
4290	// ForceSendFields is a list of field names (e.g. "LocationIds") to
4291	// unconditionally include in API requests. By default, fields with
4292	// empty values are omitted from API requests. However, any non-pointer,
4293	// non-interface field appearing in ForceSendFields will be sent to the
4294	// server regardless of whether the field is empty or not. This may be
4295	// used to include empty fields in Patch requests.
4296	ForceSendFields []string `json:"-"`
4297
4298	// NullFields is a list of field names (e.g. "LocationIds") to include
4299	// in API requests with the JSON null value. By default, fields with
4300	// empty values are omitted from API requests. However, any field with
4301	// an empty value appearing in NullFields will be sent to the server as
4302	// null. It is an error if a field in this list has a non-empty value.
4303	// This may be used to include null fields in Patch requests.
4304	NullFields []string `json:"-"`
4305}
4306
4307func (s *LocationIdSet) MarshalJSON() ([]byte, error) {
4308	type NoMethod LocationIdSet
4309	raw := NoMethod(*s)
4310	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4311}
4312
4313type LoyaltyPoints struct {
4314	// Name: Name of loyalty points program. It is recommended to limit the
4315	// name to 12 full-width characters or 24 Roman characters.
4316	Name string `json:"name,omitempty"`
4317
4318	// PointsValue: The retailer's loyalty points in absolute value.
4319	PointsValue int64 `json:"pointsValue,omitempty,string"`
4320
4321	// Ratio: The ratio of a point when converted to currency. Google
4322	// assumes currency based on Merchant Center settings. If ratio is left
4323	// out, it defaults to 1.0.
4324	Ratio float64 `json:"ratio,omitempty"`
4325
4326	// ForceSendFields is a list of field names (e.g. "Name") to
4327	// unconditionally include in API requests. By default, fields with
4328	// empty values are omitted from API requests. However, any non-pointer,
4329	// non-interface field appearing in ForceSendFields will be sent to the
4330	// server regardless of whether the field is empty or not. This may be
4331	// used to include empty fields in Patch requests.
4332	ForceSendFields []string `json:"-"`
4333
4334	// NullFields is a list of field names (e.g. "Name") to include in API
4335	// requests with the JSON null value. By default, fields with empty
4336	// values are omitted from API requests. However, any field with an
4337	// empty value appearing in NullFields will be sent to the server as
4338	// null. It is an error if a field in this list has a non-empty value.
4339	// This may be used to include null fields in Patch requests.
4340	NullFields []string `json:"-"`
4341}
4342
4343func (s *LoyaltyPoints) MarshalJSON() ([]byte, error) {
4344	type NoMethod LoyaltyPoints
4345	raw := NoMethod(*s)
4346	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4347}
4348
4349func (s *LoyaltyPoints) UnmarshalJSON(data []byte) error {
4350	type NoMethod LoyaltyPoints
4351	var s1 struct {
4352		Ratio gensupport.JSONFloat64 `json:"ratio"`
4353		*NoMethod
4354	}
4355	s1.NoMethod = (*NoMethod)(s)
4356	if err := json.Unmarshal(data, &s1); err != nil {
4357		return err
4358	}
4359	s.Ratio = float64(s1.Ratio)
4360	return nil
4361}
4362
4363type MerchantOrderReturn struct {
4364	CreationDate string `json:"creationDate,omitempty"`
4365
4366	MerchantOrderId string `json:"merchantOrderId,omitempty"`
4367
4368	OrderId string `json:"orderId,omitempty"`
4369
4370	OrderReturnId string `json:"orderReturnId,omitempty"`
4371
4372	ReturnItems []*MerchantOrderReturnItem `json:"returnItems,omitempty"`
4373
4374	ReturnShipments []*ReturnShipment `json:"returnShipments,omitempty"`
4375
4376	// ServerResponse contains the HTTP response code and headers from the
4377	// server.
4378	googleapi.ServerResponse `json:"-"`
4379
4380	// ForceSendFields is a list of field names (e.g. "CreationDate") to
4381	// unconditionally include in API requests. By default, fields with
4382	// empty values are omitted from API requests. However, any non-pointer,
4383	// non-interface field appearing in ForceSendFields will be sent to the
4384	// server regardless of whether the field is empty or not. This may be
4385	// used to include empty fields in Patch requests.
4386	ForceSendFields []string `json:"-"`
4387
4388	// NullFields is a list of field names (e.g. "CreationDate") to include
4389	// in API requests with the JSON null value. By default, fields with
4390	// empty values are omitted from API requests. However, any field with
4391	// an empty value appearing in NullFields will be sent to the server as
4392	// null. It is an error if a field in this list has a non-empty value.
4393	// This may be used to include null fields in Patch requests.
4394	NullFields []string `json:"-"`
4395}
4396
4397func (s *MerchantOrderReturn) MarshalJSON() ([]byte, error) {
4398	type NoMethod MerchantOrderReturn
4399	raw := NoMethod(*s)
4400	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4401}
4402
4403type MerchantOrderReturnItem struct {
4404	CustomerReturnReason *CustomerReturnReason `json:"customerReturnReason,omitempty"`
4405
4406	ItemId string `json:"itemId,omitempty"`
4407
4408	MerchantReturnReason *RefundReason `json:"merchantReturnReason,omitempty"`
4409
4410	Product *OrderLineItemProduct `json:"product,omitempty"`
4411
4412	ReturnShipmentIds []string `json:"returnShipmentIds,omitempty"`
4413
4414	State string `json:"state,omitempty"`
4415
4416	// ForceSendFields is a list of field names (e.g.
4417	// "CustomerReturnReason") to unconditionally include in API requests.
4418	// By default, fields with empty values are omitted from API requests.
4419	// However, any non-pointer, non-interface field appearing in
4420	// ForceSendFields will be sent to the server regardless of whether the
4421	// field is empty or not. This may be used to include empty fields in
4422	// Patch requests.
4423	ForceSendFields []string `json:"-"`
4424
4425	// NullFields is a list of field names (e.g. "CustomerReturnReason") to
4426	// include in API requests with the JSON null value. By default, fields
4427	// with empty values are omitted from API requests. However, any field
4428	// with an empty value appearing in NullFields will be sent to the
4429	// server as null. It is an error if a field in this list has a
4430	// non-empty value. This may be used to include null fields in Patch
4431	// requests.
4432	NullFields []string `json:"-"`
4433}
4434
4435func (s *MerchantOrderReturnItem) MarshalJSON() ([]byte, error) {
4436	type NoMethod MerchantOrderReturnItem
4437	raw := NoMethod(*s)
4438	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4439}
4440
4441// Order: Order. All methods require the order manager role.
4442type Order struct {
4443	// Acknowledged: Whether the order was acknowledged.
4444	Acknowledged bool `json:"acknowledged,omitempty"`
4445
4446	// ChannelType: Deprecated.
4447	ChannelType string `json:"channelType,omitempty"`
4448
4449	// Customer: The details of the customer who placed the order.
4450	Customer *OrderCustomer `json:"customer,omitempty"`
4451
4452	// DeliveryDetails: Delivery details for shipments.
4453	DeliveryDetails *OrderDeliveryDetails `json:"deliveryDetails,omitempty"`
4454
4455	// Id: The REST ID of the order. Globally unique.
4456	Id string `json:"id,omitempty"`
4457
4458	// Kind: Identifies what kind of resource this is. Value: the fixed
4459	// string "content#order".
4460	Kind string `json:"kind,omitempty"`
4461
4462	// LineItems: Line items that are ordered.
4463	LineItems []*OrderLineItem `json:"lineItems,omitempty"`
4464
4465	MerchantId uint64 `json:"merchantId,omitempty,string"`
4466
4467	// MerchantOrderId: Merchant-provided ID of the order.
4468	MerchantOrderId string `json:"merchantOrderId,omitempty"`
4469
4470	// NetAmount: The net amount for the order. For example, if an order was
4471	// originally for a grand total of $100 and a refund was issued for $20,
4472	// the net amount will be $80.
4473	NetAmount *Price `json:"netAmount,omitempty"`
4474
4475	// PaymentMethod: The details of the payment method.
4476	PaymentMethod *OrderPaymentMethod `json:"paymentMethod,omitempty"`
4477
4478	// PaymentStatus: The status of the payment.
4479	PaymentStatus string `json:"paymentStatus,omitempty"`
4480
4481	// PlacedDate: The date when the order was placed, in ISO 8601 format.
4482	PlacedDate string `json:"placedDate,omitempty"`
4483
4484	// Promotions: The details of the merchant provided promotions applied
4485	// to the order. More details about the program are here.
4486	Promotions []*OrderLegacyPromotion `json:"promotions,omitempty"`
4487
4488	// Refunds: Refunds for the order.
4489	Refunds []*OrderRefund `json:"refunds,omitempty"`
4490
4491	// Shipments: Shipments of the order.
4492	Shipments []*OrderShipment `json:"shipments,omitempty"`
4493
4494	// ShippingCost: The total cost of shipping for all items.
4495	ShippingCost *Price `json:"shippingCost,omitempty"`
4496
4497	// ShippingCostTax: The tax for the total shipping cost.
4498	ShippingCostTax *Price `json:"shippingCostTax,omitempty"`
4499
4500	// ShippingOption: Deprecated. Shipping details are provided with line
4501	// items instead.
4502	ShippingOption string `json:"shippingOption,omitempty"`
4503
4504	// Status: The status of the order.
4505	Status string `json:"status,omitempty"`
4506
4507	// TaxCollector: The party responsible for collecting and remitting
4508	// taxes.
4509	TaxCollector string `json:"taxCollector,omitempty"`
4510
4511	// ServerResponse contains the HTTP response code and headers from the
4512	// server.
4513	googleapi.ServerResponse `json:"-"`
4514
4515	// ForceSendFields is a list of field names (e.g. "Acknowledged") to
4516	// unconditionally include in API requests. By default, fields with
4517	// empty values are omitted from API requests. However, any non-pointer,
4518	// non-interface field appearing in ForceSendFields will be sent to the
4519	// server regardless of whether the field is empty or not. This may be
4520	// used to include empty fields in Patch requests.
4521	ForceSendFields []string `json:"-"`
4522
4523	// NullFields is a list of field names (e.g. "Acknowledged") to include
4524	// in API requests with the JSON null value. By default, fields with
4525	// empty values are omitted from API requests. However, any field with
4526	// an empty value appearing in NullFields will be sent to the server as
4527	// null. It is an error if a field in this list has a non-empty value.
4528	// This may be used to include null fields in Patch requests.
4529	NullFields []string `json:"-"`
4530}
4531
4532func (s *Order) MarshalJSON() ([]byte, error) {
4533	type NoMethod Order
4534	raw := NoMethod(*s)
4535	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4536}
4537
4538type OrderAddress struct {
4539	// Country: CLDR country code (e.g. "US").
4540	Country string `json:"country,omitempty"`
4541
4542	// FullAddress: Strings representing the lines of the printed label for
4543	// mailing the order, for example:
4544	// John Smith
4545	// 1600 Amphitheatre Parkway
4546	// Mountain View, CA, 94043
4547	// United States
4548	FullAddress []string `json:"fullAddress,omitempty"`
4549
4550	// IsPostOfficeBox: Whether the address is a post office box.
4551	IsPostOfficeBox bool `json:"isPostOfficeBox,omitempty"`
4552
4553	// Locality: City, town or commune. May also include dependent
4554	// localities or sublocalities (e.g. neighborhoods or suburbs).
4555	Locality string `json:"locality,omitempty"`
4556
4557	// PostalCode: Postal Code or ZIP (e.g. "94043").
4558	PostalCode string `json:"postalCode,omitempty"`
4559
4560	// RecipientName: Name of the recipient.
4561	RecipientName string `json:"recipientName,omitempty"`
4562
4563	// Region: Top-level administrative subdivision of the country. For
4564	// example, a state like California ("CA") or a province like Quebec
4565	// ("QC").
4566	Region string `json:"region,omitempty"`
4567
4568	// StreetAddress: Street-level part of the address.
4569	StreetAddress []string `json:"streetAddress,omitempty"`
4570
4571	// ForceSendFields is a list of field names (e.g. "Country") to
4572	// unconditionally include in API requests. By default, fields with
4573	// empty values are omitted from API requests. However, any non-pointer,
4574	// non-interface field appearing in ForceSendFields will be sent to the
4575	// server regardless of whether the field is empty or not. This may be
4576	// used to include empty fields in Patch requests.
4577	ForceSendFields []string `json:"-"`
4578
4579	// NullFields is a list of field names (e.g. "Country") to include in
4580	// API requests with the JSON null value. By default, fields with empty
4581	// values are omitted from API requests. However, any field with an
4582	// empty value appearing in NullFields will be sent to the server as
4583	// null. It is an error if a field in this list has a non-empty value.
4584	// This may be used to include null fields in Patch requests.
4585	NullFields []string `json:"-"`
4586}
4587
4588func (s *OrderAddress) MarshalJSON() ([]byte, error) {
4589	type NoMethod OrderAddress
4590	raw := NoMethod(*s)
4591	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4592}
4593
4594type OrderCancellation struct {
4595	// Actor: The actor that created the cancellation.
4596	Actor string `json:"actor,omitempty"`
4597
4598	// CreationDate: Date on which the cancellation has been created, in ISO
4599	// 8601 format.
4600	CreationDate string `json:"creationDate,omitempty"`
4601
4602	// Quantity: The quantity that was canceled.
4603	Quantity int64 `json:"quantity,omitempty"`
4604
4605	// Reason: The reason for the cancellation. Orders that are cancelled
4606	// with a noInventory reason will lead to the removal of the product
4607	// from Shopping Actions until you make an update to that product. This
4608	// will not affect your Shopping ads.
4609	Reason string `json:"reason,omitempty"`
4610
4611	// ReasonText: The explanation of the reason.
4612	ReasonText string `json:"reasonText,omitempty"`
4613
4614	// ForceSendFields is a list of field names (e.g. "Actor") to
4615	// unconditionally include in API requests. By default, fields with
4616	// empty values are omitted from API requests. However, any non-pointer,
4617	// non-interface field appearing in ForceSendFields will be sent to the
4618	// server regardless of whether the field is empty or not. This may be
4619	// used to include empty fields in Patch requests.
4620	ForceSendFields []string `json:"-"`
4621
4622	// NullFields is a list of field names (e.g. "Actor") to include in API
4623	// requests with the JSON null value. By default, fields with empty
4624	// values are omitted from API requests. However, any field with an
4625	// empty value appearing in NullFields will be sent to the server as
4626	// null. It is an error if a field in this list has a non-empty value.
4627	// This may be used to include null fields in Patch requests.
4628	NullFields []string `json:"-"`
4629}
4630
4631func (s *OrderCancellation) MarshalJSON() ([]byte, error) {
4632	type NoMethod OrderCancellation
4633	raw := NoMethod(*s)
4634	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4635}
4636
4637type OrderCustomer struct {
4638	// Email: Deprecated.
4639	Email string `json:"email,omitempty"`
4640
4641	// ExplicitMarketingPreference: Deprecated. Please use
4642	// marketingRightsInfo instead.
4643	ExplicitMarketingPreference bool `json:"explicitMarketingPreference,omitempty"`
4644
4645	// FullName: Full name of the customer.
4646	FullName string `json:"fullName,omitempty"`
4647
4648	// MarketingRightsInfo: Customer's marketing preferences. Contains the
4649	// marketing opt-in information that is current at the time that the
4650	// merchant call. User preference selections can change from one order
4651	// to the next so preferences must be checked with every order.
4652	MarketingRightsInfo *OrderCustomerMarketingRightsInfo `json:"marketingRightsInfo,omitempty"`
4653
4654	// ForceSendFields is a list of field names (e.g. "Email") to
4655	// unconditionally include in API requests. By default, fields with
4656	// empty values are omitted from API requests. However, any non-pointer,
4657	// non-interface field appearing in ForceSendFields will be sent to the
4658	// server regardless of whether the field is empty or not. This may be
4659	// used to include empty fields in Patch requests.
4660	ForceSendFields []string `json:"-"`
4661
4662	// NullFields is a list of field names (e.g. "Email") to include in API
4663	// requests with the JSON null value. By default, fields with empty
4664	// values are omitted from API requests. However, any field with an
4665	// empty value appearing in NullFields will be sent to the server as
4666	// null. It is an error if a field in this list has a non-empty value.
4667	// This may be used to include null fields in Patch requests.
4668	NullFields []string `json:"-"`
4669}
4670
4671func (s *OrderCustomer) MarshalJSON() ([]byte, error) {
4672	type NoMethod OrderCustomer
4673	raw := NoMethod(*s)
4674	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4675}
4676
4677type OrderCustomerMarketingRightsInfo struct {
4678	// ExplicitMarketingPreference: Last known customer selection regarding
4679	// marketing preferences. In certain cases this selection might not be
4680	// known, so this field would be empty. If a customer selected granted
4681	// in their most recent order, they can be subscribed to marketing
4682	// emails. Customers who have chosen denied must not be subscribed, or
4683	// must be unsubscribed if already opted-in.
4684	ExplicitMarketingPreference string `json:"explicitMarketingPreference,omitempty"`
4685
4686	// LastUpdatedTimestamp: Timestamp when last time marketing preference
4687	// was updated. Could be empty, if user wasn't offered a selection yet.
4688	LastUpdatedTimestamp string `json:"lastUpdatedTimestamp,omitempty"`
4689
4690	// MarketingEmailAddress: Email address that can be used for marketing
4691	// purposes. The field may be empty even if explicitMarketingPreference
4692	// is 'granted'. This happens when retrieving an old order from the
4693	// customer who deleted their account.
4694	MarketingEmailAddress string `json:"marketingEmailAddress,omitempty"`
4695
4696	// ForceSendFields is a list of field names (e.g.
4697	// "ExplicitMarketingPreference") to unconditionally include in API
4698	// requests. By default, fields with empty values are omitted from API
4699	// requests. However, any non-pointer, non-interface field appearing in
4700	// ForceSendFields will be sent to the server regardless of whether the
4701	// field is empty or not. This may be used to include empty fields in
4702	// Patch requests.
4703	ForceSendFields []string `json:"-"`
4704
4705	// NullFields is a list of field names (e.g.
4706	// "ExplicitMarketingPreference") to include in API requests with the
4707	// JSON null value. By default, fields with empty values are omitted
4708	// from API requests. However, any field with an empty value appearing
4709	// in NullFields will be sent to the server as null. It is an error if a
4710	// field in this list has a non-empty value. This may be used to include
4711	// null fields in Patch requests.
4712	NullFields []string `json:"-"`
4713}
4714
4715func (s *OrderCustomerMarketingRightsInfo) MarshalJSON() ([]byte, error) {
4716	type NoMethod OrderCustomerMarketingRightsInfo
4717	raw := NoMethod(*s)
4718	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4719}
4720
4721type OrderDeliveryDetails struct {
4722	// Address: The delivery address
4723	Address *OrderAddress `json:"address,omitempty"`
4724
4725	// PhoneNumber: The phone number of the person receiving the delivery.
4726	PhoneNumber string `json:"phoneNumber,omitempty"`
4727
4728	// ForceSendFields is a list of field names (e.g. "Address") to
4729	// unconditionally include in API requests. By default, fields with
4730	// empty values are omitted from API requests. However, any non-pointer,
4731	// non-interface field appearing in ForceSendFields will be sent to the
4732	// server regardless of whether the field is empty or not. This may be
4733	// used to include empty fields in Patch requests.
4734	ForceSendFields []string `json:"-"`
4735
4736	// NullFields is a list of field names (e.g. "Address") to include in
4737	// API requests with the JSON null value. By default, fields with empty
4738	// values are omitted from API requests. However, any field with an
4739	// empty value appearing in NullFields will be sent to the server as
4740	// null. It is an error if a field in this list has a non-empty value.
4741	// This may be used to include null fields in Patch requests.
4742	NullFields []string `json:"-"`
4743}
4744
4745func (s *OrderDeliveryDetails) MarshalJSON() ([]byte, error) {
4746	type NoMethod OrderDeliveryDetails
4747	raw := NoMethod(*s)
4748	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4749}
4750
4751type OrderLegacyPromotion struct {
4752	Benefits []*OrderLegacyPromotionBenefit `json:"benefits,omitempty"`
4753
4754	// EffectiveDates: The date and time frame when the promotion is active
4755	// and ready for validation review. Note that the promotion live time
4756	// may be delayed for a few hours due to the validation review.
4757	// Start date and end date are separated by a forward slash (/). The
4758	// start date is specified by the format (YYYY-MM-DD), followed by the
4759	// letter ?T?, the time of the day when the sale starts (in Greenwich
4760	// Mean Time, GMT), followed by an expression of the time zone for the
4761	// sale. The end date is in the same format.
4762	EffectiveDates string `json:"effectiveDates,omitempty"`
4763
4764	// GenericRedemptionCode: Optional. The text code that corresponds to
4765	// the promotion when applied on the retailer?s website.
4766	GenericRedemptionCode string `json:"genericRedemptionCode,omitempty"`
4767
4768	// Id: The unique ID of the promotion.
4769	Id string `json:"id,omitempty"`
4770
4771	// LongTitle: The full title of the promotion.
4772	LongTitle string `json:"longTitle,omitempty"`
4773
4774	// ProductApplicability: Whether the promotion is applicable to all
4775	// products or only specific products.
4776	ProductApplicability string `json:"productApplicability,omitempty"`
4777
4778	// RedemptionChannel: Indicates that the promotion is valid online.
4779	RedemptionChannel string `json:"redemptionChannel,omitempty"`
4780
4781	// ForceSendFields is a list of field names (e.g. "Benefits") to
4782	// unconditionally include in API requests. By default, fields with
4783	// empty values are omitted from API requests. However, any non-pointer,
4784	// non-interface field appearing in ForceSendFields will be sent to the
4785	// server regardless of whether the field is empty or not. This may be
4786	// used to include empty fields in Patch requests.
4787	ForceSendFields []string `json:"-"`
4788
4789	// NullFields is a list of field names (e.g. "Benefits") to include in
4790	// API requests with the JSON null value. By default, fields with empty
4791	// values are omitted from API requests. However, any field with an
4792	// empty value appearing in NullFields will be sent to the server as
4793	// null. It is an error if a field in this list has a non-empty value.
4794	// This may be used to include null fields in Patch requests.
4795	NullFields []string `json:"-"`
4796}
4797
4798func (s *OrderLegacyPromotion) MarshalJSON() ([]byte, error) {
4799	type NoMethod OrderLegacyPromotion
4800	raw := NoMethod(*s)
4801	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4802}
4803
4804type OrderLegacyPromotionBenefit struct {
4805	// Discount: The discount in the order price when the promotion is
4806	// applied.
4807	Discount *Price `json:"discount,omitempty"`
4808
4809	// OfferIds: The OfferId(s) that were purchased in this order and map to
4810	// this specific benefit of the promotion.
4811	OfferIds []string `json:"offerIds,omitempty"`
4812
4813	// SubType: Further describes the benefit of the promotion. Note that we
4814	// will expand on this enumeration as we support new promotion
4815	// sub-types.
4816	SubType string `json:"subType,omitempty"`
4817
4818	// TaxImpact: The impact on tax when the promotion is applied.
4819	TaxImpact *Price `json:"taxImpact,omitempty"`
4820
4821	// Type: Describes whether the promotion applies to products (e.g. 20%
4822	// off) or to shipping (e.g. Free Shipping).
4823	Type string `json:"type,omitempty"`
4824
4825	// ForceSendFields is a list of field names (e.g. "Discount") to
4826	// unconditionally include in API requests. By default, fields with
4827	// empty values are omitted from API requests. However, any non-pointer,
4828	// non-interface field appearing in ForceSendFields will be sent to the
4829	// server regardless of whether the field is empty or not. This may be
4830	// used to include empty fields in Patch requests.
4831	ForceSendFields []string `json:"-"`
4832
4833	// NullFields is a list of field names (e.g. "Discount") to include in
4834	// API requests with the JSON null value. By default, fields with empty
4835	// values are omitted from API requests. However, any field with an
4836	// empty value appearing in NullFields will be sent to the server as
4837	// null. It is an error if a field in this list has a non-empty value.
4838	// This may be used to include null fields in Patch requests.
4839	NullFields []string `json:"-"`
4840}
4841
4842func (s *OrderLegacyPromotionBenefit) MarshalJSON() ([]byte, error) {
4843	type NoMethod OrderLegacyPromotionBenefit
4844	raw := NoMethod(*s)
4845	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4846}
4847
4848type OrderLineItem struct {
4849	// Annotations: Annotations that are attached to the line item.
4850	Annotations []*OrderMerchantProvidedAnnotation `json:"annotations,omitempty"`
4851
4852	// Cancellations: Cancellations of the line item.
4853	Cancellations []*OrderCancellation `json:"cancellations,omitempty"`
4854
4855	// Id: The ID of the line item.
4856	Id string `json:"id,omitempty"`
4857
4858	// Price: Total price for the line item. For example, if two items for
4859	// $10 are purchased, the total price will be $20.
4860	Price *Price `json:"price,omitempty"`
4861
4862	// Product: Product data as seen by customer from the time of the order
4863	// placement. Note that certain attributes values (e.g. title or gtin)
4864	// might be reformatted and no longer match values submitted via product
4865	// feed.
4866	Product *OrderLineItemProduct `json:"product,omitempty"`
4867
4868	// QuantityCanceled: Number of items canceled.
4869	QuantityCanceled int64 `json:"quantityCanceled,omitempty"`
4870
4871	// QuantityDelivered: Number of items delivered.
4872	QuantityDelivered int64 `json:"quantityDelivered,omitempty"`
4873
4874	// QuantityOrdered: Number of items ordered.
4875	QuantityOrdered int64 `json:"quantityOrdered,omitempty"`
4876
4877	// QuantityPending: Number of items pending.
4878	QuantityPending int64 `json:"quantityPending,omitempty"`
4879
4880	// QuantityReturned: Number of items returned.
4881	QuantityReturned int64 `json:"quantityReturned,omitempty"`
4882
4883	// QuantityShipped: Number of items shipped.
4884	QuantityShipped int64 `json:"quantityShipped,omitempty"`
4885
4886	// ReturnInfo: Details of the return policy for the line item.
4887	ReturnInfo *OrderLineItemReturnInfo `json:"returnInfo,omitempty"`
4888
4889	// Returns: Returns of the line item.
4890	Returns []*OrderReturn `json:"returns,omitempty"`
4891
4892	// ShippingDetails: Details of the requested shipping for the line item.
4893	ShippingDetails *OrderLineItemShippingDetails `json:"shippingDetails,omitempty"`
4894
4895	// Tax: Total tax amount for the line item. For example, if two items
4896	// are purchased, and each have a cost tax of $2, the total tax amount
4897	// will be $4.
4898	Tax *Price `json:"tax,omitempty"`
4899
4900	// ForceSendFields is a list of field names (e.g. "Annotations") to
4901	// unconditionally include in API requests. By default, fields with
4902	// empty values are omitted from API requests. However, any non-pointer,
4903	// non-interface field appearing in ForceSendFields will be sent to the
4904	// server regardless of whether the field is empty or not. This may be
4905	// used to include empty fields in Patch requests.
4906	ForceSendFields []string `json:"-"`
4907
4908	// NullFields is a list of field names (e.g. "Annotations") to include
4909	// in API requests with the JSON null value. By default, fields with
4910	// empty values are omitted from API requests. However, any field with
4911	// an empty value appearing in NullFields will be sent to the server as
4912	// null. It is an error if a field in this list has a non-empty value.
4913	// This may be used to include null fields in Patch requests.
4914	NullFields []string `json:"-"`
4915}
4916
4917func (s *OrderLineItem) MarshalJSON() ([]byte, error) {
4918	type NoMethod OrderLineItem
4919	raw := NoMethod(*s)
4920	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4921}
4922
4923type OrderLineItemProduct struct {
4924	// Brand: Brand of the item.
4925	Brand string `json:"brand,omitempty"`
4926
4927	// Channel: The item's channel (online or local).
4928	Channel string `json:"channel,omitempty"`
4929
4930	// Condition: Condition or state of the item.
4931	Condition string `json:"condition,omitempty"`
4932
4933	// ContentLanguage: The two-letter ISO 639-1 language code for the item.
4934	ContentLanguage string `json:"contentLanguage,omitempty"`
4935
4936	// Fees: Associated fees at order creation time.
4937	Fees []*OrderLineItemProductFee `json:"fees,omitempty"`
4938
4939	// Gtin: Global Trade Item Number (GTIN) of the item.
4940	Gtin string `json:"gtin,omitempty"`
4941
4942	// Id: The REST ID of the product.
4943	Id string `json:"id,omitempty"`
4944
4945	// ImageLink: URL of an image of the item.
4946	ImageLink string `json:"imageLink,omitempty"`
4947
4948	// ItemGroupId: Shared identifier for all variants of the same product.
4949	ItemGroupId string `json:"itemGroupId,omitempty"`
4950
4951	// Mpn: Manufacturer Part Number (MPN) of the item.
4952	Mpn string `json:"mpn,omitempty"`
4953
4954	// OfferId: An identifier of the item.
4955	OfferId string `json:"offerId,omitempty"`
4956
4957	// Price: Price of the item.
4958	Price *Price `json:"price,omitempty"`
4959
4960	// ShownImage: URL to the cached image shown to the user when order was
4961	// placed.
4962	ShownImage string `json:"shownImage,omitempty"`
4963
4964	// TargetCountry: The CLDR territory code of the target country of the
4965	// product.
4966	TargetCountry string `json:"targetCountry,omitempty"`
4967
4968	// Title: The title of the product.
4969	Title string `json:"title,omitempty"`
4970
4971	// VariantAttributes: Variant attributes for the item. These are
4972	// dimensions of the product, such as color, gender, material, pattern,
4973	// and size. You can find a comprehensive list of variant attributes
4974	// here.
4975	VariantAttributes []*OrderLineItemProductVariantAttribute `json:"variantAttributes,omitempty"`
4976
4977	// ForceSendFields is a list of field names (e.g. "Brand") to
4978	// unconditionally include in API requests. By default, fields with
4979	// empty values are omitted from API requests. However, any non-pointer,
4980	// non-interface field appearing in ForceSendFields will be sent to the
4981	// server regardless of whether the field is empty or not. This may be
4982	// used to include empty fields in Patch requests.
4983	ForceSendFields []string `json:"-"`
4984
4985	// NullFields is a list of field names (e.g. "Brand") to include in API
4986	// requests with the JSON null value. By default, fields with empty
4987	// values are omitted from API requests. However, any field with an
4988	// empty value appearing in NullFields will be sent to the server as
4989	// null. It is an error if a field in this list has a non-empty value.
4990	// This may be used to include null fields in Patch requests.
4991	NullFields []string `json:"-"`
4992}
4993
4994func (s *OrderLineItemProduct) MarshalJSON() ([]byte, error) {
4995	type NoMethod OrderLineItemProduct
4996	raw := NoMethod(*s)
4997	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4998}
4999
5000type OrderLineItemProductFee struct {
5001	// Amount: Amount of the fee.
5002	Amount *Price `json:"amount,omitempty"`
5003
5004	// Name: Name of the fee.
5005	Name string `json:"name,omitempty"`
5006
5007	// ForceSendFields is a list of field names (e.g. "Amount") to
5008	// unconditionally include in API requests. By default, fields with
5009	// empty values are omitted from API requests. However, any non-pointer,
5010	// non-interface field appearing in ForceSendFields will be sent to the
5011	// server regardless of whether the field is empty or not. This may be
5012	// used to include empty fields in Patch requests.
5013	ForceSendFields []string `json:"-"`
5014
5015	// NullFields is a list of field names (e.g. "Amount") to include in API
5016	// requests with the JSON null value. By default, fields with empty
5017	// values are omitted from API requests. However, any field with an
5018	// empty value appearing in NullFields will be sent to the server as
5019	// null. It is an error if a field in this list has a non-empty value.
5020	// This may be used to include null fields in Patch requests.
5021	NullFields []string `json:"-"`
5022}
5023
5024func (s *OrderLineItemProductFee) MarshalJSON() ([]byte, error) {
5025	type NoMethod OrderLineItemProductFee
5026	raw := NoMethod(*s)
5027	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5028}
5029
5030type OrderLineItemProductVariantAttribute struct {
5031	// Dimension: The dimension of the variant.
5032	Dimension string `json:"dimension,omitempty"`
5033
5034	// Value: The value for the dimension.
5035	Value string `json:"value,omitempty"`
5036
5037	// ForceSendFields is a list of field names (e.g. "Dimension") to
5038	// unconditionally include in API requests. By default, fields with
5039	// empty values are omitted from API requests. However, any non-pointer,
5040	// non-interface field appearing in ForceSendFields will be sent to the
5041	// server regardless of whether the field is empty or not. This may be
5042	// used to include empty fields in Patch requests.
5043	ForceSendFields []string `json:"-"`
5044
5045	// NullFields is a list of field names (e.g. "Dimension") to include in
5046	// API requests with the JSON null value. By default, fields with empty
5047	// values are omitted from API requests. However, any field with an
5048	// empty value appearing in NullFields will be sent to the server as
5049	// null. It is an error if a field in this list has a non-empty value.
5050	// This may be used to include null fields in Patch requests.
5051	NullFields []string `json:"-"`
5052}
5053
5054func (s *OrderLineItemProductVariantAttribute) MarshalJSON() ([]byte, error) {
5055	type NoMethod OrderLineItemProductVariantAttribute
5056	raw := NoMethod(*s)
5057	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5058}
5059
5060type OrderLineItemReturnInfo struct {
5061	// DaysToReturn: How many days later the item can be returned.
5062	DaysToReturn int64 `json:"daysToReturn,omitempty"`
5063
5064	// IsReturnable: Whether the item is returnable.
5065	IsReturnable bool `json:"isReturnable,omitempty"`
5066
5067	// PolicyUrl: URL of the item return policy.
5068	PolicyUrl string `json:"policyUrl,omitempty"`
5069
5070	// ForceSendFields is a list of field names (e.g. "DaysToReturn") to
5071	// unconditionally include in API requests. By default, fields with
5072	// empty values are omitted from API requests. However, any non-pointer,
5073	// non-interface field appearing in ForceSendFields will be sent to the
5074	// server regardless of whether the field is empty or not. This may be
5075	// used to include empty fields in Patch requests.
5076	ForceSendFields []string `json:"-"`
5077
5078	// NullFields is a list of field names (e.g. "DaysToReturn") to include
5079	// in API requests with the JSON null value. By default, fields with
5080	// empty values are omitted from API requests. However, any field with
5081	// an empty value appearing in NullFields will be sent to the server as
5082	// null. It is an error if a field in this list has a non-empty value.
5083	// This may be used to include null fields in Patch requests.
5084	NullFields []string `json:"-"`
5085}
5086
5087func (s *OrderLineItemReturnInfo) MarshalJSON() ([]byte, error) {
5088	type NoMethod OrderLineItemReturnInfo
5089	raw := NoMethod(*s)
5090	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5091}
5092
5093type OrderLineItemShippingDetails struct {
5094	// DeliverByDate: The delivery by date, in ISO 8601 format.
5095	DeliverByDate string `json:"deliverByDate,omitempty"`
5096
5097	// Method: Details of the shipping method.
5098	Method *OrderLineItemShippingDetailsMethod `json:"method,omitempty"`
5099
5100	// ShipByDate: The ship by date, in ISO 8601 format.
5101	ShipByDate string `json:"shipByDate,omitempty"`
5102
5103	// ForceSendFields is a list of field names (e.g. "DeliverByDate") to
5104	// unconditionally include in API requests. By default, fields with
5105	// empty values are omitted from API requests. However, any non-pointer,
5106	// non-interface field appearing in ForceSendFields will be sent to the
5107	// server regardless of whether the field is empty or not. This may be
5108	// used to include empty fields in Patch requests.
5109	ForceSendFields []string `json:"-"`
5110
5111	// NullFields is a list of field names (e.g. "DeliverByDate") to include
5112	// in API requests with the JSON null value. By default, fields with
5113	// empty values are omitted from API requests. However, any field with
5114	// an empty value appearing in NullFields will be sent to the server as
5115	// null. It is an error if a field in this list has a non-empty value.
5116	// This may be used to include null fields in Patch requests.
5117	NullFields []string `json:"-"`
5118}
5119
5120func (s *OrderLineItemShippingDetails) MarshalJSON() ([]byte, error) {
5121	type NoMethod OrderLineItemShippingDetails
5122	raw := NoMethod(*s)
5123	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5124}
5125
5126type OrderLineItemShippingDetailsMethod struct {
5127	// Carrier: The carrier for the shipping. Optional. See
5128	// shipments[].carrier for a list of acceptable values.
5129	Carrier string `json:"carrier,omitempty"`
5130
5131	// MaxDaysInTransit: Maximum transit time.
5132	MaxDaysInTransit int64 `json:"maxDaysInTransit,omitempty"`
5133
5134	// MethodName: The name of the shipping method.
5135	MethodName string `json:"methodName,omitempty"`
5136
5137	// MinDaysInTransit: Minimum transit time.
5138	MinDaysInTransit int64 `json:"minDaysInTransit,omitempty"`
5139
5140	// ForceSendFields is a list of field names (e.g. "Carrier") to
5141	// unconditionally include in API requests. By default, fields with
5142	// empty values are omitted from API requests. However, any non-pointer,
5143	// non-interface field appearing in ForceSendFields will be sent to the
5144	// server regardless of whether the field is empty or not. This may be
5145	// used to include empty fields in Patch requests.
5146	ForceSendFields []string `json:"-"`
5147
5148	// NullFields is a list of field names (e.g. "Carrier") to include in
5149	// API requests with the JSON null value. By default, fields with empty
5150	// values are omitted from API requests. However, any field with an
5151	// empty value appearing in NullFields will be sent to the server as
5152	// null. It is an error if a field in this list has a non-empty value.
5153	// This may be used to include null fields in Patch requests.
5154	NullFields []string `json:"-"`
5155}
5156
5157func (s *OrderLineItemShippingDetailsMethod) MarshalJSON() ([]byte, error) {
5158	type NoMethod OrderLineItemShippingDetailsMethod
5159	raw := NoMethod(*s)
5160	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5161}
5162
5163type OrderMerchantProvidedAnnotation struct {
5164	// Key: Key for additional merchant provided (as key-value pairs)
5165	// annotation about the line item.
5166	Key string `json:"key,omitempty"`
5167
5168	// Value: Value for additional merchant provided (as key-value pairs)
5169	// annotation about the line item.
5170	Value string `json:"value,omitempty"`
5171
5172	// ForceSendFields is a list of field names (e.g. "Key") to
5173	// unconditionally include in API requests. By default, fields with
5174	// empty values are omitted from API requests. However, any non-pointer,
5175	// non-interface field appearing in ForceSendFields will be sent to the
5176	// server regardless of whether the field is empty or not. This may be
5177	// used to include empty fields in Patch requests.
5178	ForceSendFields []string `json:"-"`
5179
5180	// NullFields is a list of field names (e.g. "Key") to include in API
5181	// requests with the JSON null value. By default, fields with empty
5182	// values are omitted from API requests. However, any field with an
5183	// empty value appearing in NullFields will be sent to the server as
5184	// null. It is an error if a field in this list has a non-empty value.
5185	// This may be used to include null fields in Patch requests.
5186	NullFields []string `json:"-"`
5187}
5188
5189func (s *OrderMerchantProvidedAnnotation) MarshalJSON() ([]byte, error) {
5190	type NoMethod OrderMerchantProvidedAnnotation
5191	raw := NoMethod(*s)
5192	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5193}
5194
5195type OrderPaymentMethod struct {
5196	// BillingAddress: The billing address.
5197	BillingAddress *OrderAddress `json:"billingAddress,omitempty"`
5198
5199	// ExpirationMonth: The card expiration month (January = 1, February = 2
5200	// etc.).
5201	ExpirationMonth int64 `json:"expirationMonth,omitempty"`
5202
5203	// ExpirationYear: The card expiration year (4-digit, e.g. 2015).
5204	ExpirationYear int64 `json:"expirationYear,omitempty"`
5205
5206	// LastFourDigits: The last four digits of the card number.
5207	LastFourDigits string `json:"lastFourDigits,omitempty"`
5208
5209	// PhoneNumber: The billing phone number.
5210	PhoneNumber string `json:"phoneNumber,omitempty"`
5211
5212	// Type: The type of instrument.
5213	//
5214	// Acceptable values are:
5215	// - "AMEX"
5216	// - "DISCOVER"
5217	// - "JCB"
5218	// - "MASTERCARD"
5219	// - "UNIONPAY"
5220	// - "VISA"
5221	// - ""
5222	Type string `json:"type,omitempty"`
5223
5224	// ForceSendFields is a list of field names (e.g. "BillingAddress") to
5225	// unconditionally include in API requests. By default, fields with
5226	// empty values are omitted from API requests. However, any non-pointer,
5227	// non-interface field appearing in ForceSendFields will be sent to the
5228	// server regardless of whether the field is empty or not. This may be
5229	// used to include empty fields in Patch requests.
5230	ForceSendFields []string `json:"-"`
5231
5232	// NullFields is a list of field names (e.g. "BillingAddress") to
5233	// include in API requests with the JSON null value. By default, fields
5234	// with empty values are omitted from API requests. However, any field
5235	// with an empty value appearing in NullFields will be sent to the
5236	// server as null. It is an error if a field in this list has a
5237	// non-empty value. This may be used to include null fields in Patch
5238	// requests.
5239	NullFields []string `json:"-"`
5240}
5241
5242func (s *OrderPaymentMethod) MarshalJSON() ([]byte, error) {
5243	type NoMethod OrderPaymentMethod
5244	raw := NoMethod(*s)
5245	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5246}
5247
5248type OrderRefund struct {
5249	// Actor: The actor that created the refund.
5250	Actor string `json:"actor,omitempty"`
5251
5252	// Amount: The amount that is refunded.
5253	Amount *Price `json:"amount,omitempty"`
5254
5255	// CreationDate: Date on which the item has been created, in ISO 8601
5256	// format.
5257	CreationDate string `json:"creationDate,omitempty"`
5258
5259	// Reason: The reason for the refund.
5260	Reason string `json:"reason,omitempty"`
5261
5262	// ReasonText: The explanation of the reason.
5263	ReasonText string `json:"reasonText,omitempty"`
5264
5265	// ForceSendFields is a list of field names (e.g. "Actor") to
5266	// unconditionally include in API requests. By default, fields with
5267	// empty values are omitted from API requests. However, any non-pointer,
5268	// non-interface field appearing in ForceSendFields will be sent to the
5269	// server regardless of whether the field is empty or not. This may be
5270	// used to include empty fields in Patch requests.
5271	ForceSendFields []string `json:"-"`
5272
5273	// NullFields is a list of field names (e.g. "Actor") to include in API
5274	// requests with the JSON null value. By default, fields with empty
5275	// values are omitted from API requests. However, any field with an
5276	// empty value appearing in NullFields will be sent to the server as
5277	// null. It is an error if a field in this list has a non-empty value.
5278	// This may be used to include null fields in Patch requests.
5279	NullFields []string `json:"-"`
5280}
5281
5282func (s *OrderRefund) MarshalJSON() ([]byte, error) {
5283	type NoMethod OrderRefund
5284	raw := NoMethod(*s)
5285	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5286}
5287
5288// OrderReportDisbursement: Order disbursement. All methods require the
5289// payment analyst role.
5290type OrderReportDisbursement struct {
5291	// DisbursementAmount: The disbursement amount.
5292	DisbursementAmount *Price `json:"disbursementAmount,omitempty"`
5293
5294	// DisbursementCreationDate: The disbursement date, in ISO 8601 format.
5295	DisbursementCreationDate string `json:"disbursementCreationDate,omitempty"`
5296
5297	// DisbursementDate: The date the disbursement was initiated, in ISO
5298	// 8601 format.
5299	DisbursementDate string `json:"disbursementDate,omitempty"`
5300
5301	// DisbursementId: The ID of the disbursement.
5302	DisbursementId string `json:"disbursementId,omitempty"`
5303
5304	// MerchantId: The ID of the managing account.
5305	MerchantId uint64 `json:"merchantId,omitempty,string"`
5306
5307	// ForceSendFields is a list of field names (e.g. "DisbursementAmount")
5308	// to unconditionally include in API requests. By default, fields with
5309	// empty values are omitted from API requests. However, any non-pointer,
5310	// non-interface field appearing in ForceSendFields will be sent to the
5311	// server regardless of whether the field is empty or not. This may be
5312	// used to include empty fields in Patch requests.
5313	ForceSendFields []string `json:"-"`
5314
5315	// NullFields is a list of field names (e.g. "DisbursementAmount") to
5316	// include in API requests with the JSON null value. By default, fields
5317	// with empty values are omitted from API requests. However, any field
5318	// with an empty value appearing in NullFields will be sent to the
5319	// server as null. It is an error if a field in this list has a
5320	// non-empty value. This may be used to include null fields in Patch
5321	// requests.
5322	NullFields []string `json:"-"`
5323}
5324
5325func (s *OrderReportDisbursement) MarshalJSON() ([]byte, error) {
5326	type NoMethod OrderReportDisbursement
5327	raw := NoMethod(*s)
5328	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5329}
5330
5331type OrderReportTransaction struct {
5332	// DisbursementAmount: The disbursement amount.
5333	DisbursementAmount *Price `json:"disbursementAmount,omitempty"`
5334
5335	// DisbursementCreationDate: The date the disbursement was created, in
5336	// ISO 8601 format.
5337	DisbursementCreationDate string `json:"disbursementCreationDate,omitempty"`
5338
5339	// DisbursementDate: The date the disbursement was initiated, in ISO
5340	// 8601 format.
5341	DisbursementDate string `json:"disbursementDate,omitempty"`
5342
5343	// DisbursementId: The ID of the disbursement.
5344	DisbursementId string `json:"disbursementId,omitempty"`
5345
5346	// MerchantId: The ID of the managing account.
5347	MerchantId uint64 `json:"merchantId,omitempty,string"`
5348
5349	// MerchantOrderId: Merchant-provided ID of the order.
5350	MerchantOrderId string `json:"merchantOrderId,omitempty"`
5351
5352	// OrderId: The ID of the order.
5353	OrderId string `json:"orderId,omitempty"`
5354
5355	// ProductAmount: Total amount for the items.
5356	ProductAmount *Amount `json:"productAmount,omitempty"`
5357
5358	// ProductAmountWithRemittedTax: Total amount with remitted tax for the
5359	// items.
5360	ProductAmountWithRemittedTax *ProductAmount `json:"productAmountWithRemittedTax,omitempty"`
5361
5362	// TransactionDate: The date of the transaction, in ISO 8601 format.
5363	TransactionDate string `json:"transactionDate,omitempty"`
5364
5365	// ForceSendFields is a list of field names (e.g. "DisbursementAmount")
5366	// to unconditionally include in API requests. By default, fields with
5367	// empty values are omitted from API requests. However, any non-pointer,
5368	// non-interface field appearing in ForceSendFields will be sent to the
5369	// server regardless of whether the field is empty or not. This may be
5370	// used to include empty fields in Patch requests.
5371	ForceSendFields []string `json:"-"`
5372
5373	// NullFields is a list of field names (e.g. "DisbursementAmount") to
5374	// include in API requests with the JSON null value. By default, fields
5375	// with empty values are omitted from API requests. However, any field
5376	// with an empty value appearing in NullFields will be sent to the
5377	// server as null. It is an error if a field in this list has a
5378	// non-empty value. This may be used to include null fields in Patch
5379	// requests.
5380	NullFields []string `json:"-"`
5381}
5382
5383func (s *OrderReportTransaction) MarshalJSON() ([]byte, error) {
5384	type NoMethod OrderReportTransaction
5385	raw := NoMethod(*s)
5386	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5387}
5388
5389type OrderReturn struct {
5390	// Actor: The actor that created the refund.
5391	Actor string `json:"actor,omitempty"`
5392
5393	// CreationDate: Date on which the item has been created, in ISO 8601
5394	// format.
5395	CreationDate string `json:"creationDate,omitempty"`
5396
5397	// Quantity: Quantity that is returned.
5398	Quantity int64 `json:"quantity,omitempty"`
5399
5400	// Reason: The reason for the return.
5401	Reason string `json:"reason,omitempty"`
5402
5403	// ReasonText: The explanation of the reason.
5404	ReasonText string `json:"reasonText,omitempty"`
5405
5406	// ForceSendFields is a list of field names (e.g. "Actor") to
5407	// unconditionally include in API requests. By default, fields with
5408	// empty values are omitted from API requests. However, any non-pointer,
5409	// non-interface field appearing in ForceSendFields will be sent to the
5410	// server regardless of whether the field is empty or not. This may be
5411	// used to include empty fields in Patch requests.
5412	ForceSendFields []string `json:"-"`
5413
5414	// NullFields is a list of field names (e.g. "Actor") to include in API
5415	// requests with the JSON null value. By default, fields with empty
5416	// values are omitted from API requests. However, any field with an
5417	// empty value appearing in NullFields will be sent to the server as
5418	// null. It is an error if a field in this list has a non-empty value.
5419	// This may be used to include null fields in Patch requests.
5420	NullFields []string `json:"-"`
5421}
5422
5423func (s *OrderReturn) MarshalJSON() ([]byte, error) {
5424	type NoMethod OrderReturn
5425	raw := NoMethod(*s)
5426	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5427}
5428
5429type OrderShipment struct {
5430	// Carrier: The carrier handling the shipment.
5431	//
5432	// Acceptable values for US are:
5433	// - "gsx"
5434	// - "ups"
5435	// - "usps"
5436	// - "fedex"
5437	// - "dhl"
5438	// - "ecourier"
5439	// - "cxt"
5440	// - "google"
5441	// - "ontrac"
5442	// - "emsy"
5443	// - "ont"
5444	// - "deliv"
5445	// - "dynamex"
5446	// - "lasership"
5447	// - "mpx"
5448	// - "uds"
5449	// - "efw"
5450	//
5451	// Acceptable values for FR are:
5452	// - "colissimo"
5453	// - "chronopost"
5454	// - "gls"
5455	// - "dpd"
5456	// - "bpost"
5457	Carrier string `json:"carrier,omitempty"`
5458
5459	// CreationDate: Date on which the shipment has been created, in ISO
5460	// 8601 format.
5461	CreationDate string `json:"creationDate,omitempty"`
5462
5463	// DeliveryDate: Date on which the shipment has been delivered, in ISO
5464	// 8601 format. Present only if status is delivered
5465	DeliveryDate string `json:"deliveryDate,omitempty"`
5466
5467	// Id: The ID of the shipment.
5468	Id string `json:"id,omitempty"`
5469
5470	// LineItems: The line items that are shipped.
5471	LineItems []*OrderShipmentLineItemShipment `json:"lineItems,omitempty"`
5472
5473	// Status: The status of the shipment.
5474	Status string `json:"status,omitempty"`
5475
5476	// TrackingId: The tracking ID for the shipment.
5477	TrackingId string `json:"trackingId,omitempty"`
5478
5479	// ForceSendFields is a list of field names (e.g. "Carrier") to
5480	// unconditionally include in API requests. By default, fields with
5481	// empty values are omitted from API requests. However, any non-pointer,
5482	// non-interface field appearing in ForceSendFields will be sent to the
5483	// server regardless of whether the field is empty or not. This may be
5484	// used to include empty fields in Patch requests.
5485	ForceSendFields []string `json:"-"`
5486
5487	// NullFields is a list of field names (e.g. "Carrier") to include in
5488	// API requests with the JSON null value. By default, fields with empty
5489	// values are omitted from API requests. However, any field with an
5490	// empty value appearing in NullFields will be sent to the server as
5491	// null. It is an error if a field in this list has a non-empty value.
5492	// This may be used to include null fields in Patch requests.
5493	NullFields []string `json:"-"`
5494}
5495
5496func (s *OrderShipment) MarshalJSON() ([]byte, error) {
5497	type NoMethod OrderShipment
5498	raw := NoMethod(*s)
5499	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5500}
5501
5502type OrderShipmentLineItemShipment struct {
5503	// LineItemId: The ID of the line item that is shipped. Either
5504	// lineItemId or productId is required.
5505	LineItemId string `json:"lineItemId,omitempty"`
5506
5507	// ProductId: The ID of the product to ship. This is the REST ID used in
5508	// the products service. Either lineItemId or productId is required.
5509	ProductId string `json:"productId,omitempty"`
5510
5511	// Quantity: The quantity that is shipped.
5512	Quantity int64 `json:"quantity,omitempty"`
5513
5514	// ForceSendFields is a list of field names (e.g. "LineItemId") to
5515	// unconditionally include in API requests. By default, fields with
5516	// empty values are omitted from API requests. However, any non-pointer,
5517	// non-interface field appearing in ForceSendFields will be sent to the
5518	// server regardless of whether the field is empty or not. This may be
5519	// used to include empty fields in Patch requests.
5520	ForceSendFields []string `json:"-"`
5521
5522	// NullFields is a list of field names (e.g. "LineItemId") to include in
5523	// API requests with the JSON null value. By default, fields with empty
5524	// values are omitted from API requests. However, any field with an
5525	// empty value appearing in NullFields will be sent to the server as
5526	// null. It is an error if a field in this list has a non-empty value.
5527	// This may be used to include null fields in Patch requests.
5528	NullFields []string `json:"-"`
5529}
5530
5531func (s *OrderShipmentLineItemShipment) MarshalJSON() ([]byte, error) {
5532	type NoMethod OrderShipmentLineItemShipment
5533	raw := NoMethod(*s)
5534	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5535}
5536
5537type OrderinvoicesCreateChargeInvoiceRequest struct {
5538	// InvoiceId: [required] The ID of the invoice.
5539	InvoiceId string `json:"invoiceId,omitempty"`
5540
5541	// InvoiceSummary: [required] Invoice summary.
5542	InvoiceSummary *InvoiceSummary `json:"invoiceSummary,omitempty"`
5543
5544	// LineItemInvoices: [required] Invoice details per line item.
5545	LineItemInvoices []*ShipmentInvoiceLineItemInvoice `json:"lineItemInvoices,omitempty"`
5546
5547	// OperationId: [required] The ID of the operation, unique across all
5548	// operations for a given order.
5549	OperationId string `json:"operationId,omitempty"`
5550
5551	// ShipmentGroupId: [required] ID of the shipment group. It is assigned
5552	// by the merchant in the shipLineItems method and is used to group
5553	// multiple line items that have the same kind of shipping charges.
5554	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
5555
5556	// ForceSendFields is a list of field names (e.g. "InvoiceId") to
5557	// unconditionally include in API requests. By default, fields with
5558	// empty values are omitted from API requests. However, any non-pointer,
5559	// non-interface field appearing in ForceSendFields will be sent to the
5560	// server regardless of whether the field is empty or not. This may be
5561	// used to include empty fields in Patch requests.
5562	ForceSendFields []string `json:"-"`
5563
5564	// NullFields is a list of field names (e.g. "InvoiceId") to include in
5565	// API requests with the JSON null value. By default, fields with empty
5566	// values are omitted from API requests. However, any field with an
5567	// empty value appearing in NullFields will be sent to the server as
5568	// null. It is an error if a field in this list has a non-empty value.
5569	// This may be used to include null fields in Patch requests.
5570	NullFields []string `json:"-"`
5571}
5572
5573func (s *OrderinvoicesCreateChargeInvoiceRequest) MarshalJSON() ([]byte, error) {
5574	type NoMethod OrderinvoicesCreateChargeInvoiceRequest
5575	raw := NoMethod(*s)
5576	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5577}
5578
5579type OrderinvoicesCreateChargeInvoiceResponse struct {
5580	// ExecutionStatus: The status of the execution.
5581	ExecutionStatus string `json:"executionStatus,omitempty"`
5582
5583	// Kind: Identifies what kind of resource this is. Value: the fixed
5584	// string "content#orderinvoicesCreateChargeInvoiceResponse".
5585	Kind string `json:"kind,omitempty"`
5586
5587	// ServerResponse contains the HTTP response code and headers from the
5588	// server.
5589	googleapi.ServerResponse `json:"-"`
5590
5591	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
5592	// unconditionally include in API requests. By default, fields with
5593	// empty values are omitted from API requests. However, any non-pointer,
5594	// non-interface field appearing in ForceSendFields will be sent to the
5595	// server regardless of whether the field is empty or not. This may be
5596	// used to include empty fields in Patch requests.
5597	ForceSendFields []string `json:"-"`
5598
5599	// NullFields is a list of field names (e.g. "ExecutionStatus") to
5600	// include in API requests with the JSON null value. By default, fields
5601	// with empty values are omitted from API requests. However, any field
5602	// with an empty value appearing in NullFields will be sent to the
5603	// server as null. It is an error if a field in this list has a
5604	// non-empty value. This may be used to include null fields in Patch
5605	// requests.
5606	NullFields []string `json:"-"`
5607}
5608
5609func (s *OrderinvoicesCreateChargeInvoiceResponse) MarshalJSON() ([]byte, error) {
5610	type NoMethod OrderinvoicesCreateChargeInvoiceResponse
5611	raw := NoMethod(*s)
5612	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5613}
5614
5615type OrderinvoicesCreateRefundInvoiceRequest struct {
5616	// InvoiceId: [required] The ID of the invoice.
5617	InvoiceId string `json:"invoiceId,omitempty"`
5618
5619	// OperationId: [required] The ID of the operation, unique across all
5620	// operations for a given order.
5621	OperationId string `json:"operationId,omitempty"`
5622
5623	// RefundOnlyOption: Option to create a refund-only invoice. Exactly one
5624	// of refundOnlyOption or returnOption must be provided.
5625	RefundOnlyOption *OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceRefundOption `json:"refundOnlyOption,omitempty"`
5626
5627	// ReturnOption: Option to create an invoice for a refund and mark all
5628	// items within the invoice as returned. Exactly one of refundOnlyOption
5629	// or returnOption must be provided.
5630	ReturnOption *OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceReturnOption `json:"returnOption,omitempty"`
5631
5632	// ShipmentInvoices: Invoice details for different shipment groups.
5633	ShipmentInvoices []*ShipmentInvoice `json:"shipmentInvoices,omitempty"`
5634
5635	// ForceSendFields is a list of field names (e.g. "InvoiceId") to
5636	// unconditionally include in API requests. By default, fields with
5637	// empty values are omitted from API requests. However, any non-pointer,
5638	// non-interface field appearing in ForceSendFields will be sent to the
5639	// server regardless of whether the field is empty or not. This may be
5640	// used to include empty fields in Patch requests.
5641	ForceSendFields []string `json:"-"`
5642
5643	// NullFields is a list of field names (e.g. "InvoiceId") to include in
5644	// API requests with the JSON null value. By default, fields with empty
5645	// values are omitted from API requests. However, any field with an
5646	// empty value appearing in NullFields will be sent to the server as
5647	// null. It is an error if a field in this list has a non-empty value.
5648	// This may be used to include null fields in Patch requests.
5649	NullFields []string `json:"-"`
5650}
5651
5652func (s *OrderinvoicesCreateRefundInvoiceRequest) MarshalJSON() ([]byte, error) {
5653	type NoMethod OrderinvoicesCreateRefundInvoiceRequest
5654	raw := NoMethod(*s)
5655	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5656}
5657
5658type OrderinvoicesCreateRefundInvoiceResponse struct {
5659	// ExecutionStatus: The status of the execution.
5660	ExecutionStatus string `json:"executionStatus,omitempty"`
5661
5662	// Kind: Identifies what kind of resource this is. Value: the fixed
5663	// string "content#orderinvoicesCreateRefundInvoiceResponse".
5664	Kind string `json:"kind,omitempty"`
5665
5666	// ServerResponse contains the HTTP response code and headers from the
5667	// server.
5668	googleapi.ServerResponse `json:"-"`
5669
5670	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
5671	// unconditionally include in API requests. By default, fields with
5672	// empty values are omitted from API requests. However, any non-pointer,
5673	// non-interface field appearing in ForceSendFields will be sent to the
5674	// server regardless of whether the field is empty or not. This may be
5675	// used to include empty fields in Patch requests.
5676	ForceSendFields []string `json:"-"`
5677
5678	// NullFields is a list of field names (e.g. "ExecutionStatus") to
5679	// include in API requests with the JSON null value. By default, fields
5680	// with empty values are omitted from API requests. However, any field
5681	// with an empty value appearing in NullFields will be sent to the
5682	// server as null. It is an error if a field in this list has a
5683	// non-empty value. This may be used to include null fields in Patch
5684	// requests.
5685	NullFields []string `json:"-"`
5686}
5687
5688func (s *OrderinvoicesCreateRefundInvoiceResponse) MarshalJSON() ([]byte, error) {
5689	type NoMethod OrderinvoicesCreateRefundInvoiceResponse
5690	raw := NoMethod(*s)
5691	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5692}
5693
5694type OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceRefundOption struct {
5695	// Description: Optional description of the refund reason.
5696	Description string `json:"description,omitempty"`
5697
5698	// Reason: [required] Reason for the refund.
5699	Reason string `json:"reason,omitempty"`
5700
5701	// ForceSendFields is a list of field names (e.g. "Description") to
5702	// unconditionally include in API requests. By default, fields with
5703	// empty values are omitted from API requests. However, any non-pointer,
5704	// non-interface field appearing in ForceSendFields will be sent to the
5705	// server regardless of whether the field is empty or not. This may be
5706	// used to include empty fields in Patch requests.
5707	ForceSendFields []string `json:"-"`
5708
5709	// NullFields is a list of field names (e.g. "Description") to include
5710	// in API requests with the JSON null value. By default, fields with
5711	// empty values are omitted from API requests. However, any field with
5712	// an empty value appearing in NullFields will be sent to the server as
5713	// null. It is an error if a field in this list has a non-empty value.
5714	// This may be used to include null fields in Patch requests.
5715	NullFields []string `json:"-"`
5716}
5717
5718func (s *OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceRefundOption) MarshalJSON() ([]byte, error) {
5719	type NoMethod OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceRefundOption
5720	raw := NoMethod(*s)
5721	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5722}
5723
5724type OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceReturnOption struct {
5725	// Description: Optional description of the return reason.
5726	Description string `json:"description,omitempty"`
5727
5728	// Reason: [required] Reason for the return.
5729	Reason string `json:"reason,omitempty"`
5730
5731	// ForceSendFields is a list of field names (e.g. "Description") to
5732	// unconditionally include in API requests. By default, fields with
5733	// empty values are omitted from API requests. However, any non-pointer,
5734	// non-interface field appearing in ForceSendFields will be sent to the
5735	// server regardless of whether the field is empty or not. This may be
5736	// used to include empty fields in Patch requests.
5737	ForceSendFields []string `json:"-"`
5738
5739	// NullFields is a list of field names (e.g. "Description") to include
5740	// in API requests with the JSON null value. By default, fields with
5741	// empty values are omitted from API requests. However, any field with
5742	// an empty value appearing in NullFields will be sent to the server as
5743	// null. It is an error if a field in this list has a non-empty value.
5744	// This may be used to include null fields in Patch requests.
5745	NullFields []string `json:"-"`
5746}
5747
5748func (s *OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceReturnOption) MarshalJSON() ([]byte, error) {
5749	type NoMethod OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceReturnOption
5750	raw := NoMethod(*s)
5751	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5752}
5753
5754type OrderpaymentsNotifyAuthApprovedRequest struct {
5755	// AuthAmountPretax: Authorized amount for pre-tax charge on user's
5756	// credit card.
5757	AuthAmountPretax *Price `json:"authAmountPretax,omitempty"`
5758
5759	// AuthAmountTax: Authorized amount for tax charge on user's credit
5760	// card.
5761	AuthAmountTax *Price `json:"authAmountTax,omitempty"`
5762
5763	// ForceSendFields is a list of field names (e.g. "AuthAmountPretax") to
5764	// unconditionally include in API requests. By default, fields with
5765	// empty values are omitted from API requests. However, any non-pointer,
5766	// non-interface field appearing in ForceSendFields will be sent to the
5767	// server regardless of whether the field is empty or not. This may be
5768	// used to include empty fields in Patch requests.
5769	ForceSendFields []string `json:"-"`
5770
5771	// NullFields is a list of field names (e.g. "AuthAmountPretax") to
5772	// include in API requests with the JSON null value. By default, fields
5773	// with empty values are omitted from API requests. However, any field
5774	// with an empty value appearing in NullFields will be sent to the
5775	// server as null. It is an error if a field in this list has a
5776	// non-empty value. This may be used to include null fields in Patch
5777	// requests.
5778	NullFields []string `json:"-"`
5779}
5780
5781func (s *OrderpaymentsNotifyAuthApprovedRequest) MarshalJSON() ([]byte, error) {
5782	type NoMethod OrderpaymentsNotifyAuthApprovedRequest
5783	raw := NoMethod(*s)
5784	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5785}
5786
5787type OrderpaymentsNotifyAuthApprovedResponse struct {
5788	// ExecutionStatus: The status of the execution.
5789	ExecutionStatus string `json:"executionStatus,omitempty"`
5790
5791	// Kind: Identifies what kind of resource this is. Value: the fixed
5792	// string "content#orderpaymentsNotifyAuthApprovedResponse".
5793	Kind string `json:"kind,omitempty"`
5794
5795	// ServerResponse contains the HTTP response code and headers from the
5796	// server.
5797	googleapi.ServerResponse `json:"-"`
5798
5799	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
5800	// unconditionally include in API requests. By default, fields with
5801	// empty values are omitted from API requests. However, any non-pointer,
5802	// non-interface field appearing in ForceSendFields will be sent to the
5803	// server regardless of whether the field is empty or not. This may be
5804	// used to include empty fields in Patch requests.
5805	ForceSendFields []string `json:"-"`
5806
5807	// NullFields is a list of field names (e.g. "ExecutionStatus") to
5808	// include in API requests with the JSON null value. By default, fields
5809	// with empty values are omitted from API requests. However, any field
5810	// with an empty value appearing in NullFields will be sent to the
5811	// server as null. It is an error if a field in this list has a
5812	// non-empty value. This may be used to include null fields in Patch
5813	// requests.
5814	NullFields []string `json:"-"`
5815}
5816
5817func (s *OrderpaymentsNotifyAuthApprovedResponse) MarshalJSON() ([]byte, error) {
5818	type NoMethod OrderpaymentsNotifyAuthApprovedResponse
5819	raw := NoMethod(*s)
5820	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5821}
5822
5823type OrderpaymentsNotifyAuthDeclinedRequest struct {
5824	// DeclineReason: Reason why payment authorization was declined.
5825	DeclineReason string `json:"declineReason,omitempty"`
5826
5827	// ForceSendFields is a list of field names (e.g. "DeclineReason") to
5828	// unconditionally include in API requests. By default, fields with
5829	// empty values are omitted from API requests. However, any non-pointer,
5830	// non-interface field appearing in ForceSendFields will be sent to the
5831	// server regardless of whether the field is empty or not. This may be
5832	// used to include empty fields in Patch requests.
5833	ForceSendFields []string `json:"-"`
5834
5835	// NullFields is a list of field names (e.g. "DeclineReason") to include
5836	// in API requests with the JSON null value. By default, fields with
5837	// empty values are omitted from API requests. However, any field with
5838	// an empty value appearing in NullFields will be sent to the server as
5839	// null. It is an error if a field in this list has a non-empty value.
5840	// This may be used to include null fields in Patch requests.
5841	NullFields []string `json:"-"`
5842}
5843
5844func (s *OrderpaymentsNotifyAuthDeclinedRequest) MarshalJSON() ([]byte, error) {
5845	type NoMethod OrderpaymentsNotifyAuthDeclinedRequest
5846	raw := NoMethod(*s)
5847	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5848}
5849
5850type OrderpaymentsNotifyAuthDeclinedResponse struct {
5851	// ExecutionStatus: The status of the execution.
5852	ExecutionStatus string `json:"executionStatus,omitempty"`
5853
5854	// Kind: Identifies what kind of resource this is. Value: the fixed
5855	// string "content#orderpaymentsNotifyAuthDeclinedResponse".
5856	Kind string `json:"kind,omitempty"`
5857
5858	// ServerResponse contains the HTTP response code and headers from the
5859	// server.
5860	googleapi.ServerResponse `json:"-"`
5861
5862	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
5863	// unconditionally include in API requests. By default, fields with
5864	// empty values are omitted from API requests. However, any non-pointer,
5865	// non-interface field appearing in ForceSendFields will be sent to the
5866	// server regardless of whether the field is empty or not. This may be
5867	// used to include empty fields in Patch requests.
5868	ForceSendFields []string `json:"-"`
5869
5870	// NullFields is a list of field names (e.g. "ExecutionStatus") to
5871	// include in API requests with the JSON null value. By default, fields
5872	// with empty values are omitted from API requests. However, any field
5873	// with an empty value appearing in NullFields will be sent to the
5874	// server as null. It is an error if a field in this list has a
5875	// non-empty value. This may be used to include null fields in Patch
5876	// requests.
5877	NullFields []string `json:"-"`
5878}
5879
5880func (s *OrderpaymentsNotifyAuthDeclinedResponse) MarshalJSON() ([]byte, error) {
5881	type NoMethod OrderpaymentsNotifyAuthDeclinedResponse
5882	raw := NoMethod(*s)
5883	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5884}
5885
5886type OrderpaymentsNotifyChargeRequest struct {
5887	// ChargeState: Whether charge was successful.
5888	ChargeState string `json:"chargeState,omitempty"`
5889
5890	// InvoiceId: Deprecated. Please use invoiceIds instead.
5891	InvoiceId string `json:"invoiceId,omitempty"`
5892
5893	// InvoiceIds: Invoice IDs from the orderinvoices service that
5894	// correspond to the charge.
5895	InvoiceIds []string `json:"invoiceIds,omitempty"`
5896
5897	// ForceSendFields is a list of field names (e.g. "ChargeState") to
5898	// unconditionally include in API requests. By default, fields with
5899	// empty values are omitted from API requests. However, any non-pointer,
5900	// non-interface field appearing in ForceSendFields will be sent to the
5901	// server regardless of whether the field is empty or not. This may be
5902	// used to include empty fields in Patch requests.
5903	ForceSendFields []string `json:"-"`
5904
5905	// NullFields is a list of field names (e.g. "ChargeState") to include
5906	// in API requests with the JSON null value. By default, fields with
5907	// empty values are omitted from API requests. However, any field with
5908	// an empty value appearing in NullFields will be sent to the server as
5909	// null. It is an error if a field in this list has a non-empty value.
5910	// This may be used to include null fields in Patch requests.
5911	NullFields []string `json:"-"`
5912}
5913
5914func (s *OrderpaymentsNotifyChargeRequest) MarshalJSON() ([]byte, error) {
5915	type NoMethod OrderpaymentsNotifyChargeRequest
5916	raw := NoMethod(*s)
5917	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5918}
5919
5920type OrderpaymentsNotifyChargeResponse struct {
5921	// ExecutionStatus: The status of the execution.
5922	ExecutionStatus string `json:"executionStatus,omitempty"`
5923
5924	// Kind: Identifies what kind of resource this is. Value: the fixed
5925	// string "content#orderpaymentsNotifyChargeResponse".
5926	Kind string `json:"kind,omitempty"`
5927
5928	// ServerResponse contains the HTTP response code and headers from the
5929	// server.
5930	googleapi.ServerResponse `json:"-"`
5931
5932	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
5933	// unconditionally include in API requests. By default, fields with
5934	// empty values are omitted from API requests. However, any non-pointer,
5935	// non-interface field appearing in ForceSendFields will be sent to the
5936	// server regardless of whether the field is empty or not. This may be
5937	// used to include empty fields in Patch requests.
5938	ForceSendFields []string `json:"-"`
5939
5940	// NullFields is a list of field names (e.g. "ExecutionStatus") to
5941	// include in API requests with the JSON null value. By default, fields
5942	// with empty values are omitted from API requests. However, any field
5943	// with an empty value appearing in NullFields will be sent to the
5944	// server as null. It is an error if a field in this list has a
5945	// non-empty value. This may be used to include null fields in Patch
5946	// requests.
5947	NullFields []string `json:"-"`
5948}
5949
5950func (s *OrderpaymentsNotifyChargeResponse) MarshalJSON() ([]byte, error) {
5951	type NoMethod OrderpaymentsNotifyChargeResponse
5952	raw := NoMethod(*s)
5953	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5954}
5955
5956type OrderpaymentsNotifyRefundRequest struct {
5957	// InvoiceId: Deprecated. Please use invoiceIds instead.
5958	InvoiceId string `json:"invoiceId,omitempty"`
5959
5960	// InvoiceIds: Invoice IDs from the orderinvoices service that
5961	// correspond to the refund.
5962	InvoiceIds []string `json:"invoiceIds,omitempty"`
5963
5964	// RefundState: Whether refund was successful.
5965	RefundState string `json:"refundState,omitempty"`
5966
5967	// ForceSendFields is a list of field names (e.g. "InvoiceId") to
5968	// unconditionally include in API requests. By default, fields with
5969	// empty values are omitted from API requests. However, any non-pointer,
5970	// non-interface field appearing in ForceSendFields will be sent to the
5971	// server regardless of whether the field is empty or not. This may be
5972	// used to include empty fields in Patch requests.
5973	ForceSendFields []string `json:"-"`
5974
5975	// NullFields is a list of field names (e.g. "InvoiceId") to include in
5976	// API requests with the JSON null value. By default, fields with empty
5977	// values are omitted from API requests. However, any field with an
5978	// empty value appearing in NullFields will be sent to the server as
5979	// null. It is an error if a field in this list has a non-empty value.
5980	// This may be used to include null fields in Patch requests.
5981	NullFields []string `json:"-"`
5982}
5983
5984func (s *OrderpaymentsNotifyRefundRequest) MarshalJSON() ([]byte, error) {
5985	type NoMethod OrderpaymentsNotifyRefundRequest
5986	raw := NoMethod(*s)
5987	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5988}
5989
5990type OrderpaymentsNotifyRefundResponse struct {
5991	// ExecutionStatus: The status of the execution.
5992	ExecutionStatus string `json:"executionStatus,omitempty"`
5993
5994	// Kind: Identifies what kind of resource this is. Value: the fixed
5995	// string "content#orderpaymentsNotifyRefundResponse".
5996	Kind string `json:"kind,omitempty"`
5997
5998	// ServerResponse contains the HTTP response code and headers from the
5999	// server.
6000	googleapi.ServerResponse `json:"-"`
6001
6002	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
6003	// unconditionally include in API requests. By default, fields with
6004	// empty values are omitted from API requests. However, any non-pointer,
6005	// non-interface field appearing in ForceSendFields will be sent to the
6006	// server regardless of whether the field is empty or not. This may be
6007	// used to include empty fields in Patch requests.
6008	ForceSendFields []string `json:"-"`
6009
6010	// NullFields is a list of field names (e.g. "ExecutionStatus") to
6011	// include in API requests with the JSON null value. By default, fields
6012	// with empty values are omitted from API requests. However, any field
6013	// with an empty value appearing in NullFields will be sent to the
6014	// server as null. It is an error if a field in this list has a
6015	// non-empty value. This may be used to include null fields in Patch
6016	// requests.
6017	NullFields []string `json:"-"`
6018}
6019
6020func (s *OrderpaymentsNotifyRefundResponse) MarshalJSON() ([]byte, error) {
6021	type NoMethod OrderpaymentsNotifyRefundResponse
6022	raw := NoMethod(*s)
6023	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6024}
6025
6026type OrderreportsListDisbursementsResponse struct {
6027	// Disbursements: The list of disbursements.
6028	Disbursements []*OrderReportDisbursement `json:"disbursements,omitempty"`
6029
6030	// Kind: Identifies what kind of resource this is. Value: the fixed
6031	// string "content#orderreportsListDisbursementsResponse".
6032	Kind string `json:"kind,omitempty"`
6033
6034	// NextPageToken: The token for the retrieval of the next page of
6035	// disbursements.
6036	NextPageToken string `json:"nextPageToken,omitempty"`
6037
6038	// ServerResponse contains the HTTP response code and headers from the
6039	// server.
6040	googleapi.ServerResponse `json:"-"`
6041
6042	// ForceSendFields is a list of field names (e.g. "Disbursements") to
6043	// unconditionally include in API requests. By default, fields with
6044	// empty values are omitted from API requests. However, any non-pointer,
6045	// non-interface field appearing in ForceSendFields will be sent to the
6046	// server regardless of whether the field is empty or not. This may be
6047	// used to include empty fields in Patch requests.
6048	ForceSendFields []string `json:"-"`
6049
6050	// NullFields is a list of field names (e.g. "Disbursements") to include
6051	// in API requests with the JSON null value. By default, fields with
6052	// empty values are omitted from API requests. However, any field with
6053	// an empty value appearing in NullFields will be sent to the server as
6054	// null. It is an error if a field in this list has a non-empty value.
6055	// This may be used to include null fields in Patch requests.
6056	NullFields []string `json:"-"`
6057}
6058
6059func (s *OrderreportsListDisbursementsResponse) MarshalJSON() ([]byte, error) {
6060	type NoMethod OrderreportsListDisbursementsResponse
6061	raw := NoMethod(*s)
6062	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6063}
6064
6065type OrderreportsListTransactionsResponse struct {
6066	// Kind: Identifies what kind of resource this is. Value: the fixed
6067	// string "content#orderreportsListTransactionsResponse".
6068	Kind string `json:"kind,omitempty"`
6069
6070	// NextPageToken: The token for the retrieval of the next page of
6071	// transactions.
6072	NextPageToken string `json:"nextPageToken,omitempty"`
6073
6074	// Transactions: The list of transactions.
6075	Transactions []*OrderReportTransaction `json:"transactions,omitempty"`
6076
6077	// ServerResponse contains the HTTP response code and headers from the
6078	// server.
6079	googleapi.ServerResponse `json:"-"`
6080
6081	// ForceSendFields is a list of field names (e.g. "Kind") to
6082	// unconditionally include in API requests. By default, fields with
6083	// empty values are omitted from API requests. However, any non-pointer,
6084	// non-interface field appearing in ForceSendFields will be sent to the
6085	// server regardless of whether the field is empty or not. This may be
6086	// used to include empty fields in Patch requests.
6087	ForceSendFields []string `json:"-"`
6088
6089	// NullFields is a list of field names (e.g. "Kind") to include in API
6090	// requests with the JSON null value. By default, fields with empty
6091	// values are omitted from API requests. However, any field with an
6092	// empty value appearing in NullFields will be sent to the server as
6093	// null. It is an error if a field in this list has a non-empty value.
6094	// This may be used to include null fields in Patch requests.
6095	NullFields []string `json:"-"`
6096}
6097
6098func (s *OrderreportsListTransactionsResponse) MarshalJSON() ([]byte, error) {
6099	type NoMethod OrderreportsListTransactionsResponse
6100	raw := NoMethod(*s)
6101	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6102}
6103
6104type OrderreturnsListResponse struct {
6105	// Kind: Identifies what kind of resource this is. Value: the fixed
6106	// string "content#orderreturnsListResponse".
6107	Kind string `json:"kind,omitempty"`
6108
6109	// NextPageToken: The token for the retrieval of the next page of
6110	// returns.
6111	NextPageToken string `json:"nextPageToken,omitempty"`
6112
6113	Resources []*MerchantOrderReturn `json:"resources,omitempty"`
6114
6115	// ServerResponse contains the HTTP response code and headers from the
6116	// server.
6117	googleapi.ServerResponse `json:"-"`
6118
6119	// ForceSendFields is a list of field names (e.g. "Kind") to
6120	// unconditionally include in API requests. By default, fields with
6121	// empty values are omitted from API requests. However, any non-pointer,
6122	// non-interface field appearing in ForceSendFields will be sent to the
6123	// server regardless of whether the field is empty or not. This may be
6124	// used to include empty fields in Patch requests.
6125	ForceSendFields []string `json:"-"`
6126
6127	// NullFields is a list of field names (e.g. "Kind") to include in API
6128	// requests with the JSON null value. By default, fields with empty
6129	// values are omitted from API requests. However, any field with an
6130	// empty value appearing in NullFields will be sent to the server as
6131	// null. It is an error if a field in this list has a non-empty value.
6132	// This may be used to include null fields in Patch requests.
6133	NullFields []string `json:"-"`
6134}
6135
6136func (s *OrderreturnsListResponse) MarshalJSON() ([]byte, error) {
6137	type NoMethod OrderreturnsListResponse
6138	raw := NoMethod(*s)
6139	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6140}
6141
6142type OrdersAcknowledgeRequest struct {
6143	// OperationId: The ID of the operation. Unique across all operations
6144	// for a given order.
6145	OperationId string `json:"operationId,omitempty"`
6146
6147	// ForceSendFields is a list of field names (e.g. "OperationId") to
6148	// unconditionally include in API requests. By default, fields with
6149	// empty values are omitted from API requests. However, any non-pointer,
6150	// non-interface field appearing in ForceSendFields will be sent to the
6151	// server regardless of whether the field is empty or not. This may be
6152	// used to include empty fields in Patch requests.
6153	ForceSendFields []string `json:"-"`
6154
6155	// NullFields is a list of field names (e.g. "OperationId") to include
6156	// in API requests with the JSON null value. By default, fields with
6157	// empty values are omitted from API requests. However, any field with
6158	// an empty value appearing in NullFields will be sent to the server as
6159	// null. It is an error if a field in this list has a non-empty value.
6160	// This may be used to include null fields in Patch requests.
6161	NullFields []string `json:"-"`
6162}
6163
6164func (s *OrdersAcknowledgeRequest) MarshalJSON() ([]byte, error) {
6165	type NoMethod OrdersAcknowledgeRequest
6166	raw := NoMethod(*s)
6167	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6168}
6169
6170type OrdersAcknowledgeResponse struct {
6171	// ExecutionStatus: The status of the execution.
6172	ExecutionStatus string `json:"executionStatus,omitempty"`
6173
6174	// Kind: Identifies what kind of resource this is. Value: the fixed
6175	// string "content#ordersAcknowledgeResponse".
6176	Kind string `json:"kind,omitempty"`
6177
6178	// ServerResponse contains the HTTP response code and headers from the
6179	// server.
6180	googleapi.ServerResponse `json:"-"`
6181
6182	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
6183	// unconditionally include in API requests. By default, fields with
6184	// empty values are omitted from API requests. However, any non-pointer,
6185	// non-interface field appearing in ForceSendFields will be sent to the
6186	// server regardless of whether the field is empty or not. This may be
6187	// used to include empty fields in Patch requests.
6188	ForceSendFields []string `json:"-"`
6189
6190	// NullFields is a list of field names (e.g. "ExecutionStatus") 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 *OrdersAcknowledgeResponse) MarshalJSON() ([]byte, error) {
6201	type NoMethod OrdersAcknowledgeResponse
6202	raw := NoMethod(*s)
6203	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6204}
6205
6206type OrdersAdvanceTestOrderResponse struct {
6207	// Kind: Identifies what kind of resource this is. Value: the fixed
6208	// string "content#ordersAdvanceTestOrderResponse".
6209	Kind string `json:"kind,omitempty"`
6210
6211	// ServerResponse contains the HTTP response code and headers from the
6212	// server.
6213	googleapi.ServerResponse `json:"-"`
6214
6215	// ForceSendFields is a list of field names (e.g. "Kind") to
6216	// unconditionally include in API requests. By default, fields with
6217	// empty values are omitted from API requests. However, any non-pointer,
6218	// non-interface field appearing in ForceSendFields will be sent to the
6219	// server regardless of whether the field is empty or not. This may be
6220	// used to include empty fields in Patch requests.
6221	ForceSendFields []string `json:"-"`
6222
6223	// NullFields is a list of field names (e.g. "Kind") to include in API
6224	// requests with the JSON null value. By default, fields with empty
6225	// values are omitted from API requests. However, any field with an
6226	// empty value appearing in NullFields will be sent to the server as
6227	// null. It is an error if a field in this list has a non-empty value.
6228	// This may be used to include null fields in Patch requests.
6229	NullFields []string `json:"-"`
6230}
6231
6232func (s *OrdersAdvanceTestOrderResponse) MarshalJSON() ([]byte, error) {
6233	type NoMethod OrdersAdvanceTestOrderResponse
6234	raw := NoMethod(*s)
6235	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6236}
6237
6238type OrdersCancelLineItemRequest struct {
6239	// Amount: Deprecated. Please use amountPretax and amountTax instead.
6240	Amount *Price `json:"amount,omitempty"`
6241
6242	// AmountPretax: Amount to refund for the cancelation. Optional. If not
6243	// set, Google will calculate the default based on the price and tax of
6244	// the items involved. The amount must not be larger than the net amount
6245	// left on the order.
6246	AmountPretax *Price `json:"amountPretax,omitempty"`
6247
6248	// AmountTax: Tax amount that corresponds to cancellation amount in
6249	// amountPretax. Optional, but if filled, then amountPretax must be set.
6250	// Calculated automatically if not provided.
6251	AmountTax *Price `json:"amountTax,omitempty"`
6252
6253	// LineItemId: The ID of the line item to cancel. Either lineItemId or
6254	// productId is required.
6255	LineItemId string `json:"lineItemId,omitempty"`
6256
6257	// OperationId: The ID of the operation. Unique across all operations
6258	// for a given order.
6259	OperationId string `json:"operationId,omitempty"`
6260
6261	// ProductId: The ID of the product to cancel. This is the REST ID used
6262	// in the products service. Either lineItemId or productId is required.
6263	ProductId string `json:"productId,omitempty"`
6264
6265	// Quantity: The quantity to cancel.
6266	Quantity int64 `json:"quantity,omitempty"`
6267
6268	// Reason: The reason for the cancellation.
6269	Reason string `json:"reason,omitempty"`
6270
6271	// ReasonText: The explanation of the reason.
6272	ReasonText string `json:"reasonText,omitempty"`
6273
6274	// ForceSendFields is a list of field names (e.g. "Amount") to
6275	// unconditionally include in API requests. By default, fields with
6276	// empty values are omitted from API requests. However, any non-pointer,
6277	// non-interface field appearing in ForceSendFields will be sent to the
6278	// server regardless of whether the field is empty or not. This may be
6279	// used to include empty fields in Patch requests.
6280	ForceSendFields []string `json:"-"`
6281
6282	// NullFields is a list of field names (e.g. "Amount") to include in API
6283	// requests with the JSON null value. By default, fields with empty
6284	// values are omitted from API requests. However, any field with an
6285	// empty value appearing in NullFields will be sent to the server as
6286	// null. It is an error if a field in this list has a non-empty value.
6287	// This may be used to include null fields in Patch requests.
6288	NullFields []string `json:"-"`
6289}
6290
6291func (s *OrdersCancelLineItemRequest) MarshalJSON() ([]byte, error) {
6292	type NoMethod OrdersCancelLineItemRequest
6293	raw := NoMethod(*s)
6294	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6295}
6296
6297type OrdersCancelLineItemResponse struct {
6298	// ExecutionStatus: The status of the execution.
6299	ExecutionStatus string `json:"executionStatus,omitempty"`
6300
6301	// Kind: Identifies what kind of resource this is. Value: the fixed
6302	// string "content#ordersCancelLineItemResponse".
6303	Kind string `json:"kind,omitempty"`
6304
6305	// ServerResponse contains the HTTP response code and headers from the
6306	// server.
6307	googleapi.ServerResponse `json:"-"`
6308
6309	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
6310	// unconditionally include in API requests. By default, fields with
6311	// empty values are omitted from API requests. However, any non-pointer,
6312	// non-interface field appearing in ForceSendFields will be sent to the
6313	// server regardless of whether the field is empty or not. This may be
6314	// used to include empty fields in Patch requests.
6315	ForceSendFields []string `json:"-"`
6316
6317	// NullFields is a list of field names (e.g. "ExecutionStatus") to
6318	// include in API requests with the JSON null value. By default, fields
6319	// with empty values are omitted from API requests. However, any field
6320	// with an empty value appearing in NullFields will be sent to the
6321	// server as null. It is an error if a field in this list has a
6322	// non-empty value. This may be used to include null fields in Patch
6323	// requests.
6324	NullFields []string `json:"-"`
6325}
6326
6327func (s *OrdersCancelLineItemResponse) MarshalJSON() ([]byte, error) {
6328	type NoMethod OrdersCancelLineItemResponse
6329	raw := NoMethod(*s)
6330	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6331}
6332
6333type OrdersCancelRequest struct {
6334	// OperationId: The ID of the operation. Unique across all operations
6335	// for a given order.
6336	OperationId string `json:"operationId,omitempty"`
6337
6338	// Reason: The reason for the cancellation.
6339	Reason string `json:"reason,omitempty"`
6340
6341	// ReasonText: The explanation of the reason.
6342	ReasonText string `json:"reasonText,omitempty"`
6343
6344	// ForceSendFields is a list of field names (e.g. "OperationId") to
6345	// unconditionally include in API requests. By default, fields with
6346	// empty values are omitted from API requests. However, any non-pointer,
6347	// non-interface field appearing in ForceSendFields will be sent to the
6348	// server regardless of whether the field is empty or not. This may be
6349	// used to include empty fields in Patch requests.
6350	ForceSendFields []string `json:"-"`
6351
6352	// NullFields is a list of field names (e.g. "OperationId") to include
6353	// in API requests with the JSON null value. By default, fields with
6354	// empty values are omitted from API requests. However, any field with
6355	// an empty value appearing in NullFields will be sent to the server as
6356	// null. It is an error if a field in this list has a non-empty value.
6357	// This may be used to include null fields in Patch requests.
6358	NullFields []string `json:"-"`
6359}
6360
6361func (s *OrdersCancelRequest) MarshalJSON() ([]byte, error) {
6362	type NoMethod OrdersCancelRequest
6363	raw := NoMethod(*s)
6364	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6365}
6366
6367type OrdersCancelResponse struct {
6368	// ExecutionStatus: The status of the execution.
6369	ExecutionStatus string `json:"executionStatus,omitempty"`
6370
6371	// Kind: Identifies what kind of resource this is. Value: the fixed
6372	// string "content#ordersCancelResponse".
6373	Kind string `json:"kind,omitempty"`
6374
6375	// ServerResponse contains the HTTP response code and headers from the
6376	// server.
6377	googleapi.ServerResponse `json:"-"`
6378
6379	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
6380	// unconditionally include in API requests. By default, fields with
6381	// empty values are omitted from API requests. However, any non-pointer,
6382	// non-interface field appearing in ForceSendFields will be sent to the
6383	// server regardless of whether the field is empty or not. This may be
6384	// used to include empty fields in Patch requests.
6385	ForceSendFields []string `json:"-"`
6386
6387	// NullFields is a list of field names (e.g. "ExecutionStatus") to
6388	// include in API requests with the JSON null value. By default, fields
6389	// with empty values are omitted from API requests. However, any field
6390	// with an empty value appearing in NullFields will be sent to the
6391	// server as null. It is an error if a field in this list has a
6392	// non-empty value. This may be used to include null fields in Patch
6393	// requests.
6394	NullFields []string `json:"-"`
6395}
6396
6397func (s *OrdersCancelResponse) MarshalJSON() ([]byte, error) {
6398	type NoMethod OrdersCancelResponse
6399	raw := NoMethod(*s)
6400	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6401}
6402
6403type OrdersCancelTestOrderByCustomerRequest struct {
6404	// Reason: The reason for the cancellation.
6405	Reason string `json:"reason,omitempty"`
6406
6407	// ForceSendFields is a list of field names (e.g. "Reason") to
6408	// unconditionally include in API requests. By default, fields with
6409	// empty values are omitted from API requests. However, any non-pointer,
6410	// non-interface field appearing in ForceSendFields will be sent to the
6411	// server regardless of whether the field is empty or not. This may be
6412	// used to include empty fields in Patch requests.
6413	ForceSendFields []string `json:"-"`
6414
6415	// NullFields is a list of field names (e.g. "Reason") to include in API
6416	// requests with the JSON null value. By default, fields with empty
6417	// values are omitted from API requests. However, any field with an
6418	// empty value appearing in NullFields will be sent to the server as
6419	// null. It is an error if a field in this list has a non-empty value.
6420	// This may be used to include null fields in Patch requests.
6421	NullFields []string `json:"-"`
6422}
6423
6424func (s *OrdersCancelTestOrderByCustomerRequest) MarshalJSON() ([]byte, error) {
6425	type NoMethod OrdersCancelTestOrderByCustomerRequest
6426	raw := NoMethod(*s)
6427	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6428}
6429
6430type OrdersCancelTestOrderByCustomerResponse struct {
6431	// Kind: Identifies what kind of resource this is. Value: the fixed
6432	// string "content#ordersCancelTestOrderByCustomerResponse".
6433	Kind string `json:"kind,omitempty"`
6434
6435	// ServerResponse contains the HTTP response code and headers from the
6436	// server.
6437	googleapi.ServerResponse `json:"-"`
6438
6439	// ForceSendFields is a list of field names (e.g. "Kind") to
6440	// unconditionally include in API requests. By default, fields with
6441	// empty values are omitted from API requests. However, any non-pointer,
6442	// non-interface field appearing in ForceSendFields will be sent to the
6443	// server regardless of whether the field is empty or not. This may be
6444	// used to include empty fields in Patch requests.
6445	ForceSendFields []string `json:"-"`
6446
6447	// NullFields is a list of field names (e.g. "Kind") to include in API
6448	// requests with the JSON null value. By default, fields with empty
6449	// values are omitted from API requests. However, any field with an
6450	// empty value appearing in NullFields will be sent to the server as
6451	// null. It is an error if a field in this list has a non-empty value.
6452	// This may be used to include null fields in Patch requests.
6453	NullFields []string `json:"-"`
6454}
6455
6456func (s *OrdersCancelTestOrderByCustomerResponse) MarshalJSON() ([]byte, error) {
6457	type NoMethod OrdersCancelTestOrderByCustomerResponse
6458	raw := NoMethod(*s)
6459	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6460}
6461
6462type OrdersCreateTestOrderRequest struct {
6463	// Country: The  CLDR territory code of the country of the test order to
6464	// create. Affects the currency and addresses of orders created via
6465	// template_name, or the addresses of orders created via
6466	// test_order.
6467	//
6468	// Acceptable values are:
6469	// - "US"
6470	// - "FR"  Defaults to US.
6471	Country string `json:"country,omitempty"`
6472
6473	// TemplateName: The test order template to use. Specify as an
6474	// alternative to testOrder as a shortcut for retrieving a template and
6475	// then creating an order using that template.
6476	TemplateName string `json:"templateName,omitempty"`
6477
6478	// TestOrder: The test order to create.
6479	TestOrder *TestOrder `json:"testOrder,omitempty"`
6480
6481	// ForceSendFields is a list of field names (e.g. "Country") to
6482	// unconditionally include in API requests. By default, fields with
6483	// empty values are omitted from API requests. However, any non-pointer,
6484	// non-interface field appearing in ForceSendFields will be sent to the
6485	// server regardless of whether the field is empty or not. This may be
6486	// used to include empty fields in Patch requests.
6487	ForceSendFields []string `json:"-"`
6488
6489	// NullFields is a list of field names (e.g. "Country") to include in
6490	// API requests with the JSON null value. By default, fields with empty
6491	// values are omitted from API requests. However, any field with an
6492	// 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 *OrdersCreateTestOrderRequest) MarshalJSON() ([]byte, error) {
6499	type NoMethod OrdersCreateTestOrderRequest
6500	raw := NoMethod(*s)
6501	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6502}
6503
6504type OrdersCreateTestOrderResponse struct {
6505	// Kind: Identifies what kind of resource this is. Value: the fixed
6506	// string "content#ordersCreateTestOrderResponse".
6507	Kind string `json:"kind,omitempty"`
6508
6509	// OrderId: The ID of the newly created test order.
6510	OrderId string `json:"orderId,omitempty"`
6511
6512	// ServerResponse contains the HTTP response code and headers from the
6513	// server.
6514	googleapi.ServerResponse `json:"-"`
6515
6516	// ForceSendFields is a list of field names (e.g. "Kind") to
6517	// unconditionally include in API requests. By default, fields with
6518	// empty values are omitted from API requests. However, any non-pointer,
6519	// non-interface field appearing in ForceSendFields will be sent to the
6520	// server regardless of whether the field is empty or not. This may be
6521	// used to include empty fields in Patch requests.
6522	ForceSendFields []string `json:"-"`
6523
6524	// NullFields is a list of field names (e.g. "Kind") to include in API
6525	// requests with the JSON null value. By default, fields with empty
6526	// values are omitted from API requests. However, any field with an
6527	// empty value appearing in NullFields will be sent to the server as
6528	// null. It is an error if a field in this list has a non-empty value.
6529	// This may be used to include null fields in Patch requests.
6530	NullFields []string `json:"-"`
6531}
6532
6533func (s *OrdersCreateTestOrderResponse) MarshalJSON() ([]byte, error) {
6534	type NoMethod OrdersCreateTestOrderResponse
6535	raw := NoMethod(*s)
6536	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6537}
6538
6539type OrdersCreateTestReturnRequest struct {
6540	// Items: Returned items.
6541	Items []*OrdersCustomBatchRequestEntryCreateTestReturnReturnItem `json:"items,omitempty"`
6542
6543	// ForceSendFields is a list of field names (e.g. "Items") to
6544	// unconditionally include in API requests. By default, fields with
6545	// empty values are omitted from API requests. However, any non-pointer,
6546	// non-interface field appearing in ForceSendFields will be sent to the
6547	// server regardless of whether the field is empty or not. This may be
6548	// used to include empty fields in Patch requests.
6549	ForceSendFields []string `json:"-"`
6550
6551	// NullFields is a list of field names (e.g. "Items") to include in API
6552	// requests with the JSON null value. By default, fields with empty
6553	// values are omitted from API requests. However, any field with an
6554	// empty value appearing in NullFields will be sent to the server as
6555	// null. It is an error if a field in this list has a non-empty value.
6556	// This may be used to include null fields in Patch requests.
6557	NullFields []string `json:"-"`
6558}
6559
6560func (s *OrdersCreateTestReturnRequest) MarshalJSON() ([]byte, error) {
6561	type NoMethod OrdersCreateTestReturnRequest
6562	raw := NoMethod(*s)
6563	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6564}
6565
6566type OrdersCreateTestReturnResponse struct {
6567	// Kind: Identifies what kind of resource this is. Value: the fixed
6568	// string "content#ordersCreateTestReturnResponse".
6569	Kind string `json:"kind,omitempty"`
6570
6571	// ReturnId: The ID of the newly created test order return.
6572	ReturnId string `json:"returnId,omitempty"`
6573
6574	// ServerResponse contains the HTTP response code and headers from the
6575	// server.
6576	googleapi.ServerResponse `json:"-"`
6577
6578	// ForceSendFields is a list of field names (e.g. "Kind") to
6579	// unconditionally include in API requests. By default, fields with
6580	// empty values are omitted from API requests. However, any non-pointer,
6581	// non-interface field appearing in ForceSendFields will be sent to the
6582	// server regardless of whether the field is empty or not. This may be
6583	// used to include empty fields in Patch requests.
6584	ForceSendFields []string `json:"-"`
6585
6586	// NullFields is a list of field names (e.g. "Kind") to include in API
6587	// requests with the JSON null value. By default, fields with empty
6588	// values are omitted from API requests. However, any field with an
6589	// empty value appearing in NullFields will be sent to the server as
6590	// null. It is an error if a field in this list has a non-empty value.
6591	// This may be used to include null fields in Patch requests.
6592	NullFields []string `json:"-"`
6593}
6594
6595func (s *OrdersCreateTestReturnResponse) MarshalJSON() ([]byte, error) {
6596	type NoMethod OrdersCreateTestReturnResponse
6597	raw := NoMethod(*s)
6598	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6599}
6600
6601type OrdersCustomBatchRequest struct {
6602	// Entries: The request entries to be processed in the batch.
6603	Entries []*OrdersCustomBatchRequestEntry `json:"entries,omitempty"`
6604
6605	// ForceSendFields is a list of field names (e.g. "Entries") to
6606	// unconditionally include in API requests. By default, fields with
6607	// empty values are omitted from API requests. However, any non-pointer,
6608	// non-interface field appearing in ForceSendFields will be sent to the
6609	// server regardless of whether the field is empty or not. This may be
6610	// used to include empty fields in Patch requests.
6611	ForceSendFields []string `json:"-"`
6612
6613	// NullFields is a list of field names (e.g. "Entries") to include in
6614	// API requests with the JSON null value. By default, fields with empty
6615	// values are omitted from API requests. However, any field with an
6616	// empty value appearing in NullFields will be sent to the server as
6617	// null. It is an error if a field in this list has a non-empty value.
6618	// This may be used to include null fields in Patch requests.
6619	NullFields []string `json:"-"`
6620}
6621
6622func (s *OrdersCustomBatchRequest) MarshalJSON() ([]byte, error) {
6623	type NoMethod OrdersCustomBatchRequest
6624	raw := NoMethod(*s)
6625	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6626}
6627
6628type OrdersCustomBatchRequestEntry struct {
6629	// BatchId: An entry ID, unique within the batch request.
6630	BatchId int64 `json:"batchId,omitempty"`
6631
6632	// Cancel: Required for cancel method.
6633	Cancel *OrdersCustomBatchRequestEntryCancel `json:"cancel,omitempty"`
6634
6635	// CancelLineItem: Required for cancelLineItem method.
6636	CancelLineItem *OrdersCustomBatchRequestEntryCancelLineItem `json:"cancelLineItem,omitempty"`
6637
6638	// InStoreRefundLineItem: Required for inStoreReturnLineItem method.
6639	InStoreRefundLineItem *OrdersCustomBatchRequestEntryInStoreRefundLineItem `json:"inStoreRefundLineItem,omitempty"`
6640
6641	// MerchantId: The ID of the managing account.
6642	MerchantId uint64 `json:"merchantId,omitempty,string"`
6643
6644	// MerchantOrderId: The merchant order ID. Required for
6645	// updateMerchantOrderId and getByMerchantOrderId methods.
6646	MerchantOrderId string `json:"merchantOrderId,omitempty"`
6647
6648	// Method: The method to apply.
6649	Method string `json:"method,omitempty"`
6650
6651	// OperationId: The ID of the operation. Unique across all operations
6652	// for a given order. Required for all methods beside get and
6653	// getByMerchantOrderId.
6654	OperationId string `json:"operationId,omitempty"`
6655
6656	// OrderId: The ID of the order. Required for all methods beside
6657	// getByMerchantOrderId.
6658	OrderId string `json:"orderId,omitempty"`
6659
6660	// Refund: Required for refund method.
6661	Refund *OrdersCustomBatchRequestEntryRefund `json:"refund,omitempty"`
6662
6663	// RejectReturnLineItem: Required for rejectReturnLineItem method.
6664	RejectReturnLineItem *OrdersCustomBatchRequestEntryRejectReturnLineItem `json:"rejectReturnLineItem,omitempty"`
6665
6666	// ReturnLineItem: Required for returnLineItem method.
6667	ReturnLineItem *OrdersCustomBatchRequestEntryReturnLineItem `json:"returnLineItem,omitempty"`
6668
6669	// ReturnRefundLineItem: Required for returnRefundLineItem method.
6670	ReturnRefundLineItem *OrdersCustomBatchRequestEntryReturnRefundLineItem `json:"returnRefundLineItem,omitempty"`
6671
6672	// SetLineItemMetadata: Required for setLineItemMetadata method.
6673	SetLineItemMetadata *OrdersCustomBatchRequestEntrySetLineItemMetadata `json:"setLineItemMetadata,omitempty"`
6674
6675	// ShipLineItems: Required for shipLineItems method.
6676	ShipLineItems *OrdersCustomBatchRequestEntryShipLineItems `json:"shipLineItems,omitempty"`
6677
6678	// UpdateLineItemShippingDetails: Required for
6679	// updateLineItemShippingDate method.
6680	UpdateLineItemShippingDetails *OrdersCustomBatchRequestEntryUpdateLineItemShippingDetails `json:"updateLineItemShippingDetails,omitempty"`
6681
6682	// UpdateShipment: Required for updateShipment method.
6683	UpdateShipment *OrdersCustomBatchRequestEntryUpdateShipment `json:"updateShipment,omitempty"`
6684
6685	// ForceSendFields is a list of field names (e.g. "BatchId") to
6686	// unconditionally include in API requests. By default, fields with
6687	// empty values are omitted from API requests. However, any non-pointer,
6688	// non-interface field appearing in ForceSendFields will be sent to the
6689	// server regardless of whether the field is empty or not. This may be
6690	// used to include empty fields in Patch requests.
6691	ForceSendFields []string `json:"-"`
6692
6693	// NullFields is a list of field names (e.g. "BatchId") to include in
6694	// API requests with the JSON null value. By default, fields with empty
6695	// values are omitted from API requests. However, any field with an
6696	// empty value appearing in NullFields will be sent to the server as
6697	// null. It is an error if a field in this list has a non-empty value.
6698	// This may be used to include null fields in Patch requests.
6699	NullFields []string `json:"-"`
6700}
6701
6702func (s *OrdersCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
6703	type NoMethod OrdersCustomBatchRequestEntry
6704	raw := NoMethod(*s)
6705	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6706}
6707
6708type OrdersCustomBatchRequestEntryCancel struct {
6709	// Reason: The reason for the cancellation.
6710	Reason string `json:"reason,omitempty"`
6711
6712	// ReasonText: The explanation of the reason.
6713	ReasonText string `json:"reasonText,omitempty"`
6714
6715	// ForceSendFields is a list of field names (e.g. "Reason") to
6716	// unconditionally include in API requests. By default, fields with
6717	// empty values are omitted from API requests. However, any non-pointer,
6718	// non-interface field appearing in ForceSendFields will be sent to the
6719	// server regardless of whether the field is empty or not. This may be
6720	// used to include empty fields in Patch requests.
6721	ForceSendFields []string `json:"-"`
6722
6723	// NullFields is a list of field names (e.g. "Reason") to include in API
6724	// requests with the JSON null value. By default, fields with empty
6725	// values are omitted from API requests. However, any field with an
6726	// empty value appearing in NullFields will be sent to the server as
6727	// null. It is an error if a field in this list has a non-empty value.
6728	// This may be used to include null fields in Patch requests.
6729	NullFields []string `json:"-"`
6730}
6731
6732func (s *OrdersCustomBatchRequestEntryCancel) MarshalJSON() ([]byte, error) {
6733	type NoMethod OrdersCustomBatchRequestEntryCancel
6734	raw := NoMethod(*s)
6735	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6736}
6737
6738type OrdersCustomBatchRequestEntryCancelLineItem struct {
6739	// Amount: Deprecated. Please use amountPretax and amountTax instead.
6740	Amount *Price `json:"amount,omitempty"`
6741
6742	// AmountPretax: Amount to refund for the cancelation. Optional. If not
6743	// set, Google will calculate the default based on the price and tax of
6744	// the items involved. The amount must not be larger than the net amount
6745	// left on the order.
6746	AmountPretax *Price `json:"amountPretax,omitempty"`
6747
6748	// AmountTax: Tax amount that corresponds to cancellation amount in
6749	// amountPretax. Optional, but if filled, then amountPretax must be set.
6750	// Calculated automatically if not provided.
6751	AmountTax *Price `json:"amountTax,omitempty"`
6752
6753	// LineItemId: The ID of the line item to cancel. Either lineItemId or
6754	// productId is required.
6755	LineItemId string `json:"lineItemId,omitempty"`
6756
6757	// ProductId: The ID of the product to cancel. This is the REST ID used
6758	// in the products service. Either lineItemId or productId is required.
6759	ProductId string `json:"productId,omitempty"`
6760
6761	// Quantity: The quantity to cancel.
6762	Quantity int64 `json:"quantity,omitempty"`
6763
6764	// Reason: The reason for the cancellation.
6765	Reason string `json:"reason,omitempty"`
6766
6767	// ReasonText: The explanation of the reason.
6768	ReasonText string `json:"reasonText,omitempty"`
6769
6770	// ForceSendFields is a list of field names (e.g. "Amount") to
6771	// unconditionally include in API requests. By default, fields with
6772	// empty values are omitted from API requests. However, any non-pointer,
6773	// non-interface field appearing in ForceSendFields will be sent to the
6774	// server regardless of whether the field is empty or not. This may be
6775	// used to include empty fields in Patch requests.
6776	ForceSendFields []string `json:"-"`
6777
6778	// NullFields is a list of field names (e.g. "Amount") to include in API
6779	// requests with the JSON null value. By default, fields with empty
6780	// values are omitted from API requests. However, any field with an
6781	// empty value appearing in NullFields will be sent to the server as
6782	// null. It is an error if a field in this list has a non-empty value.
6783	// This may be used to include null fields in Patch requests.
6784	NullFields []string `json:"-"`
6785}
6786
6787func (s *OrdersCustomBatchRequestEntryCancelLineItem) MarshalJSON() ([]byte, error) {
6788	type NoMethod OrdersCustomBatchRequestEntryCancelLineItem
6789	raw := NoMethod(*s)
6790	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6791}
6792
6793type OrdersCustomBatchRequestEntryCreateTestReturnReturnItem struct {
6794	// LineItemId: The ID of the line item to return.
6795	LineItemId string `json:"lineItemId,omitempty"`
6796
6797	// Quantity: Quantity that is returned.
6798	Quantity int64 `json:"quantity,omitempty"`
6799
6800	// ForceSendFields is a list of field names (e.g. "LineItemId") to
6801	// unconditionally include in API requests. By default, fields with
6802	// empty values are omitted from API requests. However, any non-pointer,
6803	// non-interface field appearing in ForceSendFields will be sent to the
6804	// server regardless of whether the field is empty or not. This may be
6805	// used to include empty fields in Patch requests.
6806	ForceSendFields []string `json:"-"`
6807
6808	// NullFields is a list of field names (e.g. "LineItemId") to include in
6809	// API requests with the JSON null value. By default, fields with empty
6810	// values are omitted from API requests. However, any field with an
6811	// empty value appearing in NullFields will be sent to the server as
6812	// null. It is an error if a field in this list has a non-empty value.
6813	// This may be used to include null fields in Patch requests.
6814	NullFields []string `json:"-"`
6815}
6816
6817func (s *OrdersCustomBatchRequestEntryCreateTestReturnReturnItem) MarshalJSON() ([]byte, error) {
6818	type NoMethod OrdersCustomBatchRequestEntryCreateTestReturnReturnItem
6819	raw := NoMethod(*s)
6820	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6821}
6822
6823type OrdersCustomBatchRequestEntryInStoreRefundLineItem struct {
6824	// AmountPretax: The amount that is refunded. Required.
6825	AmountPretax *Price `json:"amountPretax,omitempty"`
6826
6827	// AmountTax: Tax amount that correspond to refund amount in
6828	// amountPretax. Required.
6829	AmountTax *Price `json:"amountTax,omitempty"`
6830
6831	// LineItemId: The ID of the line item to return. Either lineItemId or
6832	// productId is required.
6833	LineItemId string `json:"lineItemId,omitempty"`
6834
6835	// ProductId: The ID of the product to return. This is the REST ID used
6836	// in the products service. Either lineItemId or productId is required.
6837	ProductId string `json:"productId,omitempty"`
6838
6839	// Quantity: The quantity to return and refund.
6840	Quantity int64 `json:"quantity,omitempty"`
6841
6842	// Reason: The reason for the return.
6843	Reason string `json:"reason,omitempty"`
6844
6845	// ReasonText: The explanation of the reason.
6846	ReasonText string `json:"reasonText,omitempty"`
6847
6848	// ForceSendFields is a list of field names (e.g. "AmountPretax") to
6849	// unconditionally include in API requests. By default, fields with
6850	// empty values are omitted from API requests. However, any non-pointer,
6851	// non-interface field appearing in ForceSendFields will be sent to the
6852	// server regardless of whether the field is empty or not. This may be
6853	// used to include empty fields in Patch requests.
6854	ForceSendFields []string `json:"-"`
6855
6856	// NullFields is a list of field names (e.g. "AmountPretax") to include
6857	// in API requests with the JSON null value. By default, fields with
6858	// empty values are omitted from API requests. However, any field with
6859	// an empty value appearing in NullFields will be sent to the server as
6860	// null. It is an error if a field in this list has a non-empty value.
6861	// This may be used to include null fields in Patch requests.
6862	NullFields []string `json:"-"`
6863}
6864
6865func (s *OrdersCustomBatchRequestEntryInStoreRefundLineItem) MarshalJSON() ([]byte, error) {
6866	type NoMethod OrdersCustomBatchRequestEntryInStoreRefundLineItem
6867	raw := NoMethod(*s)
6868	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6869}
6870
6871type OrdersCustomBatchRequestEntryRefund struct {
6872	// Amount: Deprecated. Please use amountPretax and amountTax instead.
6873	Amount *Price `json:"amount,omitempty"`
6874
6875	// AmountPretax: The amount that is refunded. Either amount or
6876	// amountPretax should be filled.
6877	AmountPretax *Price `json:"amountPretax,omitempty"`
6878
6879	// AmountTax: Tax amount that corresponds to refund amount in
6880	// amountPretax. Optional, but if filled, amountPretax must be set.
6881	// Calculated automatically if not provided.
6882	AmountTax *Price `json:"amountTax,omitempty"`
6883
6884	// Reason: The reason for the refund.
6885	Reason string `json:"reason,omitempty"`
6886
6887	// ReasonText: The explanation of the reason.
6888	ReasonText string `json:"reasonText,omitempty"`
6889
6890	// ForceSendFields is a list of field names (e.g. "Amount") to
6891	// unconditionally include in API requests. By default, fields with
6892	// empty values are omitted from API requests. However, any non-pointer,
6893	// non-interface field appearing in ForceSendFields will be sent to the
6894	// server regardless of whether the field is empty or not. This may be
6895	// used to include empty fields in Patch requests.
6896	ForceSendFields []string `json:"-"`
6897
6898	// NullFields is a list of field names (e.g. "Amount") to include in API
6899	// requests with the JSON null value. By default, fields with empty
6900	// values are omitted from API requests. However, any field with an
6901	// empty value appearing in NullFields will be sent to the server as
6902	// null. It is an error if a field in this list has a non-empty value.
6903	// This may be used to include null fields in Patch requests.
6904	NullFields []string `json:"-"`
6905}
6906
6907func (s *OrdersCustomBatchRequestEntryRefund) MarshalJSON() ([]byte, error) {
6908	type NoMethod OrdersCustomBatchRequestEntryRefund
6909	raw := NoMethod(*s)
6910	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6911}
6912
6913type OrdersCustomBatchRequestEntryRejectReturnLineItem struct {
6914	// LineItemId: The ID of the line item to return. Either lineItemId or
6915	// productId is required.
6916	LineItemId string `json:"lineItemId,omitempty"`
6917
6918	// ProductId: The ID of the product to return. This is the REST ID used
6919	// in the products service. Either lineItemId or productId is required.
6920	ProductId string `json:"productId,omitempty"`
6921
6922	// Quantity: The quantity to return and refund.
6923	Quantity int64 `json:"quantity,omitempty"`
6924
6925	// Reason: The reason for the return.
6926	Reason string `json:"reason,omitempty"`
6927
6928	// ReasonText: The explanation of the reason.
6929	ReasonText string `json:"reasonText,omitempty"`
6930
6931	// ForceSendFields is a list of field names (e.g. "LineItemId") to
6932	// unconditionally include in API requests. By default, fields with
6933	// empty values are omitted from API requests. However, any non-pointer,
6934	// non-interface field appearing in ForceSendFields will be sent to the
6935	// server regardless of whether the field is empty or not. This may be
6936	// used to include empty fields in Patch requests.
6937	ForceSendFields []string `json:"-"`
6938
6939	// NullFields is a list of field names (e.g. "LineItemId") to include in
6940	// API requests with the JSON null value. By default, fields with empty
6941	// values are omitted from API requests. However, any field with an
6942	// empty value appearing in NullFields will be sent to the server as
6943	// null. It is an error if a field in this list has a non-empty value.
6944	// This may be used to include null fields in Patch requests.
6945	NullFields []string `json:"-"`
6946}
6947
6948func (s *OrdersCustomBatchRequestEntryRejectReturnLineItem) MarshalJSON() ([]byte, error) {
6949	type NoMethod OrdersCustomBatchRequestEntryRejectReturnLineItem
6950	raw := NoMethod(*s)
6951	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6952}
6953
6954type OrdersCustomBatchRequestEntryReturnLineItem struct {
6955	// LineItemId: The ID of the line item to return. Either lineItemId or
6956	// productId is required.
6957	LineItemId string `json:"lineItemId,omitempty"`
6958
6959	// ProductId: The ID of the product to return. This is the REST ID used
6960	// in the products service. Either lineItemId or productId is required.
6961	ProductId string `json:"productId,omitempty"`
6962
6963	// Quantity: The quantity to return.
6964	Quantity int64 `json:"quantity,omitempty"`
6965
6966	// Reason: The reason for the return.
6967	Reason string `json:"reason,omitempty"`
6968
6969	// ReasonText: The explanation of the reason.
6970	ReasonText string `json:"reasonText,omitempty"`
6971
6972	// ForceSendFields is a list of field names (e.g. "LineItemId") to
6973	// unconditionally include in API requests. By default, fields with
6974	// empty values are omitted from API requests. However, any non-pointer,
6975	// non-interface field appearing in ForceSendFields will be sent to the
6976	// server regardless of whether the field is empty or not. This may be
6977	// used to include empty fields in Patch requests.
6978	ForceSendFields []string `json:"-"`
6979
6980	// NullFields is a list of field names (e.g. "LineItemId") to include in
6981	// API requests with the JSON null value. By default, fields with empty
6982	// values are omitted from API requests. However, any field with an
6983	// empty value appearing in NullFields will be sent to the server as
6984	// null. It is an error if a field in this list has a non-empty value.
6985	// This may be used to include null fields in Patch requests.
6986	NullFields []string `json:"-"`
6987}
6988
6989func (s *OrdersCustomBatchRequestEntryReturnLineItem) MarshalJSON() ([]byte, error) {
6990	type NoMethod OrdersCustomBatchRequestEntryReturnLineItem
6991	raw := NoMethod(*s)
6992	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6993}
6994
6995type OrdersCustomBatchRequestEntryReturnRefundLineItem struct {
6996	// AmountPretax: The amount that is refunded. If omitted, refundless
6997	// return is assumed (same as calling returnLineItem method).
6998	AmountPretax *Price `json:"amountPretax,omitempty"`
6999
7000	// AmountTax: Tax amount that corresponds to refund amount in
7001	// amountPretax. Optional, but if filled, then amountPretax must be set.
7002	// Calculated automatically if not provided.
7003	AmountTax *Price `json:"amountTax,omitempty"`
7004
7005	// LineItemId: The ID of the line item to return. Either lineItemId or
7006	// productId is required.
7007	LineItemId string `json:"lineItemId,omitempty"`
7008
7009	// ProductId: The ID of the product to return. This is the REST ID used
7010	// in the products service. Either lineItemId or productId is required.
7011	ProductId string `json:"productId,omitempty"`
7012
7013	// Quantity: The quantity to return and refund.
7014	Quantity int64 `json:"quantity,omitempty"`
7015
7016	// Reason: The reason for the return.
7017	Reason string `json:"reason,omitempty"`
7018
7019	// ReasonText: The explanation of the reason.
7020	ReasonText string `json:"reasonText,omitempty"`
7021
7022	// ForceSendFields is a list of field names (e.g. "AmountPretax") to
7023	// unconditionally include in API requests. By default, fields with
7024	// empty values are omitted from API requests. However, any non-pointer,
7025	// non-interface field appearing in ForceSendFields will be sent to the
7026	// server regardless of whether the field is empty or not. This may be
7027	// used to include empty fields in Patch requests.
7028	ForceSendFields []string `json:"-"`
7029
7030	// NullFields is a list of field names (e.g. "AmountPretax") to include
7031	// in API requests with the JSON null value. By default, fields with
7032	// empty values are omitted from API requests. However, any field with
7033	// an empty value appearing in NullFields will be sent to the server as
7034	// null. It is an error if a field in this list has a non-empty value.
7035	// This may be used to include null fields in Patch requests.
7036	NullFields []string `json:"-"`
7037}
7038
7039func (s *OrdersCustomBatchRequestEntryReturnRefundLineItem) MarshalJSON() ([]byte, error) {
7040	type NoMethod OrdersCustomBatchRequestEntryReturnRefundLineItem
7041	raw := NoMethod(*s)
7042	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7043}
7044
7045type OrdersCustomBatchRequestEntrySetLineItemMetadata struct {
7046	Annotations []*OrderMerchantProvidedAnnotation `json:"annotations,omitempty"`
7047
7048	// LineItemId: The ID of the line item to set metadata. Either
7049	// lineItemId or productId is required.
7050	LineItemId string `json:"lineItemId,omitempty"`
7051
7052	// ProductId: The ID of the product to set metadata. This is the REST ID
7053	// used in the products service. Either lineItemId or productId is
7054	// required.
7055	ProductId string `json:"productId,omitempty"`
7056
7057	// ForceSendFields is a list of field names (e.g. "Annotations") to
7058	// unconditionally include in API requests. By default, fields with
7059	// empty values are omitted from API requests. However, any non-pointer,
7060	// non-interface field appearing in ForceSendFields will be sent to the
7061	// server regardless of whether the field is empty or not. This may be
7062	// used to include empty fields in Patch requests.
7063	ForceSendFields []string `json:"-"`
7064
7065	// NullFields is a list of field names (e.g. "Annotations") to include
7066	// in API requests with the JSON null value. By default, fields with
7067	// empty values are omitted from API requests. However, any field with
7068	// an empty value appearing in NullFields will be sent to the server as
7069	// null. It is an error if a field in this list has a non-empty value.
7070	// This may be used to include null fields in Patch requests.
7071	NullFields []string `json:"-"`
7072}
7073
7074func (s *OrdersCustomBatchRequestEntrySetLineItemMetadata) MarshalJSON() ([]byte, error) {
7075	type NoMethod OrdersCustomBatchRequestEntrySetLineItemMetadata
7076	raw := NoMethod(*s)
7077	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7078}
7079
7080type OrdersCustomBatchRequestEntryShipLineItems struct {
7081	// Carrier: Deprecated. Please use shipmentInfo instead. The carrier
7082	// handling the shipment. See shipments[].carrier in the  Orders
7083	// resource representation for a list of acceptable values.
7084	Carrier string `json:"carrier,omitempty"`
7085
7086	// LineItems: Line items to ship.
7087	LineItems []*OrderShipmentLineItemShipment `json:"lineItems,omitempty"`
7088
7089	// ShipmentGroupId: ID of the shipment group. Required for orders that
7090	// use the orderinvoices service.
7091	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
7092
7093	// ShipmentId: Deprecated. Please use shipmentInfo instead. The ID of
7094	// the shipment.
7095	ShipmentId string `json:"shipmentId,omitempty"`
7096
7097	// ShipmentInfos: Shipment information. This field is repeated because a
7098	// single line item can be shipped in several packages (and have several
7099	// tracking IDs).
7100	ShipmentInfos []*OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo `json:"shipmentInfos,omitempty"`
7101
7102	// TrackingId: Deprecated. Please use shipmentInfo instead. The tracking
7103	// ID for the shipment.
7104	TrackingId string `json:"trackingId,omitempty"`
7105
7106	// ForceSendFields is a list of field names (e.g. "Carrier") to
7107	// unconditionally include in API requests. By default, fields with
7108	// empty values are omitted from API requests. However, any non-pointer,
7109	// non-interface field appearing in ForceSendFields will be sent to the
7110	// server regardless of whether the field is empty or not. This may be
7111	// used to include empty fields in Patch requests.
7112	ForceSendFields []string `json:"-"`
7113
7114	// NullFields is a list of field names (e.g. "Carrier") to include in
7115	// API requests with the JSON null value. By default, fields with empty
7116	// values are omitted from API requests. However, any field with an
7117	// empty value appearing in NullFields will be sent to the server as
7118	// null. It is an error if a field in this list has a non-empty value.
7119	// This may be used to include null fields in Patch requests.
7120	NullFields []string `json:"-"`
7121}
7122
7123func (s *OrdersCustomBatchRequestEntryShipLineItems) MarshalJSON() ([]byte, error) {
7124	type NoMethod OrdersCustomBatchRequestEntryShipLineItems
7125	raw := NoMethod(*s)
7126	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7127}
7128
7129type OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo struct {
7130	// Carrier: The carrier handling the shipment. See shipments[].carrier
7131	// in the  Orders resource representation for a list of acceptable
7132	// values.
7133	Carrier string `json:"carrier,omitempty"`
7134
7135	// ShipmentId: The ID of the shipment. This is assigned by the merchant
7136	// and is unique to each shipment.
7137	ShipmentId string `json:"shipmentId,omitempty"`
7138
7139	// TrackingId: The tracking ID for the shipment.
7140	TrackingId string `json:"trackingId,omitempty"`
7141
7142	// ForceSendFields is a list of field names (e.g. "Carrier") to
7143	// unconditionally include in API requests. By default, fields with
7144	// empty values are omitted from API requests. However, any non-pointer,
7145	// non-interface field appearing in ForceSendFields will be sent to the
7146	// server regardless of whether the field is empty or not. This may be
7147	// used to include empty fields in Patch requests.
7148	ForceSendFields []string `json:"-"`
7149
7150	// NullFields is a list of field names (e.g. "Carrier") to include in
7151	// API requests with the JSON null value. By default, fields with empty
7152	// values are omitted from API requests. However, any field with an
7153	// empty value appearing in NullFields will be sent to the server as
7154	// null. It is an error if a field in this list has a non-empty value.
7155	// This may be used to include null fields in Patch requests.
7156	NullFields []string `json:"-"`
7157}
7158
7159func (s *OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo) MarshalJSON() ([]byte, error) {
7160	type NoMethod OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo
7161	raw := NoMethod(*s)
7162	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7163}
7164
7165type OrdersCustomBatchRequestEntryUpdateLineItemShippingDetails struct {
7166	// DeliverByDate: Updated delivery by date, in ISO 8601 format. If not
7167	// specified only ship by date is updated.
7168	//
7169	// Provided date should be within 1 year timeframe and can not be a date
7170	// in the past.
7171	DeliverByDate string `json:"deliverByDate,omitempty"`
7172
7173	// LineItemId: The ID of the line item to set metadata. Either
7174	// lineItemId or productId is required.
7175	LineItemId string `json:"lineItemId,omitempty"`
7176
7177	// ProductId: The ID of the product to set metadata. This is the REST ID
7178	// used in the products service. Either lineItemId or productId is
7179	// required.
7180	ProductId string `json:"productId,omitempty"`
7181
7182	// ShipByDate: Updated ship by date, in ISO 8601 format. If not
7183	// specified only deliver by date is updated.
7184	//
7185	// Provided date should be within 1 year timeframe and can not be a date
7186	// in the past.
7187	ShipByDate string `json:"shipByDate,omitempty"`
7188
7189	// ForceSendFields is a list of field names (e.g. "DeliverByDate") to
7190	// unconditionally include in API requests. By default, fields with
7191	// empty values are omitted from API requests. However, any non-pointer,
7192	// non-interface field appearing in ForceSendFields will be sent to the
7193	// server regardless of whether the field is empty or not. This may be
7194	// used to include empty fields in Patch requests.
7195	ForceSendFields []string `json:"-"`
7196
7197	// NullFields is a list of field names (e.g. "DeliverByDate") to include
7198	// in API requests with the JSON null value. By default, fields with
7199	// empty values are omitted from API requests. However, any field with
7200	// an empty value appearing in NullFields will be sent to the server as
7201	// null. It is an error if a field in this list has a non-empty value.
7202	// This may be used to include null fields in Patch requests.
7203	NullFields []string `json:"-"`
7204}
7205
7206func (s *OrdersCustomBatchRequestEntryUpdateLineItemShippingDetails) MarshalJSON() ([]byte, error) {
7207	type NoMethod OrdersCustomBatchRequestEntryUpdateLineItemShippingDetails
7208	raw := NoMethod(*s)
7209	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7210}
7211
7212type OrdersCustomBatchRequestEntryUpdateShipment struct {
7213	// Carrier: The carrier handling the shipment. Not updated if missing.
7214	// See shipments[].carrier in the  Orders resource representation for a
7215	// list of acceptable values.
7216	Carrier string `json:"carrier,omitempty"`
7217
7218	// DeliveryDate: Date on which the shipment has been delivered, in ISO
7219	// 8601 format. Optional and can be provided only if status is
7220	// delivered.
7221	DeliveryDate string `json:"deliveryDate,omitempty"`
7222
7223	// ShipmentId: The ID of the shipment.
7224	ShipmentId string `json:"shipmentId,omitempty"`
7225
7226	// Status: New status for the shipment. Not updated if missing.
7227	Status string `json:"status,omitempty"`
7228
7229	// TrackingId: The tracking ID for the shipment. Not updated if missing.
7230	TrackingId string `json:"trackingId,omitempty"`
7231
7232	// ForceSendFields is a list of field names (e.g. "Carrier") to
7233	// unconditionally include in API requests. By default, fields with
7234	// empty values are omitted from API requests. However, any non-pointer,
7235	// non-interface field appearing in ForceSendFields will be sent to the
7236	// server regardless of whether the field is empty or not. This may be
7237	// used to include empty fields in Patch requests.
7238	ForceSendFields []string `json:"-"`
7239
7240	// NullFields is a list of field names (e.g. "Carrier") to include in
7241	// API requests with the JSON null value. By default, fields with empty
7242	// values are omitted from API requests. However, any field with an
7243	// empty value appearing in NullFields will be sent to the server as
7244	// null. It is an error if a field in this list has a non-empty value.
7245	// This may be used to include null fields in Patch requests.
7246	NullFields []string `json:"-"`
7247}
7248
7249func (s *OrdersCustomBatchRequestEntryUpdateShipment) MarshalJSON() ([]byte, error) {
7250	type NoMethod OrdersCustomBatchRequestEntryUpdateShipment
7251	raw := NoMethod(*s)
7252	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7253}
7254
7255type OrdersCustomBatchResponse struct {
7256	// Entries: The result of the execution of the batch requests.
7257	Entries []*OrdersCustomBatchResponseEntry `json:"entries,omitempty"`
7258
7259	// Kind: Identifies what kind of resource this is. Value: the fixed
7260	// string "content#ordersCustomBatchResponse".
7261	Kind string `json:"kind,omitempty"`
7262
7263	// ServerResponse contains the HTTP response code and headers from the
7264	// server.
7265	googleapi.ServerResponse `json:"-"`
7266
7267	// ForceSendFields is a list of field names (e.g. "Entries") to
7268	// unconditionally include in API requests. By default, fields with
7269	// empty values are omitted from API requests. However, any non-pointer,
7270	// non-interface field appearing in ForceSendFields will be sent to the
7271	// server regardless of whether the field is empty or not. This may be
7272	// used to include empty fields in Patch requests.
7273	ForceSendFields []string `json:"-"`
7274
7275	// NullFields is a list of field names (e.g. "Entries") to include in
7276	// API requests with the JSON null value. By default, fields with empty
7277	// values are omitted from API requests. However, any field with an
7278	// empty value appearing in NullFields will be sent to the server as
7279	// null. It is an error if a field in this list has a non-empty value.
7280	// This may be used to include null fields in Patch requests.
7281	NullFields []string `json:"-"`
7282}
7283
7284func (s *OrdersCustomBatchResponse) MarshalJSON() ([]byte, error) {
7285	type NoMethod OrdersCustomBatchResponse
7286	raw := NoMethod(*s)
7287	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7288}
7289
7290type OrdersCustomBatchResponseEntry struct {
7291	// BatchId: The ID of the request entry this entry responds to.
7292	BatchId int64 `json:"batchId,omitempty"`
7293
7294	// Errors: A list of errors defined if and only if the request failed.
7295	Errors *Errors `json:"errors,omitempty"`
7296
7297	// ExecutionStatus: The status of the execution. Only defined if
7298	// - the request was successful; and
7299	// - the method is not get, getByMerchantOrderId, or one of the test
7300	// methods.
7301	ExecutionStatus string `json:"executionStatus,omitempty"`
7302
7303	// Kind: Identifies what kind of resource this is. Value: the fixed
7304	// string "content#ordersCustomBatchResponseEntry".
7305	Kind string `json:"kind,omitempty"`
7306
7307	// Order: The retrieved order. Only defined if the method is get and if
7308	// the request was successful.
7309	Order *Order `json:"order,omitempty"`
7310
7311	// ForceSendFields is a list of field names (e.g. "BatchId") to
7312	// unconditionally include in API requests. By default, fields with
7313	// empty values are omitted from API requests. However, any non-pointer,
7314	// non-interface field appearing in ForceSendFields will be sent to the
7315	// server regardless of whether the field is empty or not. This may be
7316	// used to include empty fields in Patch requests.
7317	ForceSendFields []string `json:"-"`
7318
7319	// NullFields is a list of field names (e.g. "BatchId") to include in
7320	// API requests with the JSON null value. By default, fields with empty
7321	// values are omitted from API requests. However, any field with an
7322	// empty value appearing in NullFields will be sent to the server as
7323	// null. It is an error if a field in this list has a non-empty value.
7324	// This may be used to include null fields in Patch requests.
7325	NullFields []string `json:"-"`
7326}
7327
7328func (s *OrdersCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
7329	type NoMethod OrdersCustomBatchResponseEntry
7330	raw := NoMethod(*s)
7331	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7332}
7333
7334type OrdersGetByMerchantOrderIdResponse struct {
7335	// Kind: Identifies what kind of resource this is. Value: the fixed
7336	// string "content#ordersGetByMerchantOrderIdResponse".
7337	Kind string `json:"kind,omitempty"`
7338
7339	// Order: The requested order.
7340	Order *Order `json:"order,omitempty"`
7341
7342	// ServerResponse contains the HTTP response code and headers from the
7343	// server.
7344	googleapi.ServerResponse `json:"-"`
7345
7346	// ForceSendFields is a list of field names (e.g. "Kind") to
7347	// unconditionally include in API requests. By default, fields with
7348	// empty values are omitted from API requests. However, any non-pointer,
7349	// non-interface field appearing in ForceSendFields will be sent to the
7350	// server regardless of whether the field is empty or not. This may be
7351	// used to include empty fields in Patch requests.
7352	ForceSendFields []string `json:"-"`
7353
7354	// NullFields is a list of field names (e.g. "Kind") to include in API
7355	// requests with the JSON null value. By default, fields with empty
7356	// values are omitted from API requests. However, any field with an
7357	// empty value appearing in NullFields will be sent to the server as
7358	// null. It is an error if a field in this list has a non-empty value.
7359	// This may be used to include null fields in Patch requests.
7360	NullFields []string `json:"-"`
7361}
7362
7363func (s *OrdersGetByMerchantOrderIdResponse) MarshalJSON() ([]byte, error) {
7364	type NoMethod OrdersGetByMerchantOrderIdResponse
7365	raw := NoMethod(*s)
7366	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7367}
7368
7369type OrdersGetTestOrderTemplateResponse struct {
7370	// Kind: Identifies what kind of resource this is. Value: the fixed
7371	// string "content#ordersGetTestOrderTemplateResponse".
7372	Kind string `json:"kind,omitempty"`
7373
7374	// Template: The requested test order template.
7375	Template *TestOrder `json:"template,omitempty"`
7376
7377	// ServerResponse contains the HTTP response code and headers from the
7378	// server.
7379	googleapi.ServerResponse `json:"-"`
7380
7381	// ForceSendFields is a list of field names (e.g. "Kind") to
7382	// unconditionally include in API requests. By default, fields with
7383	// empty values are omitted from API requests. However, any non-pointer,
7384	// non-interface field appearing in ForceSendFields will be sent to the
7385	// server regardless of whether the field is empty or not. This may be
7386	// used to include empty fields in Patch requests.
7387	ForceSendFields []string `json:"-"`
7388
7389	// NullFields is a list of field names (e.g. "Kind") to include in API
7390	// requests with the JSON null value. By default, fields with empty
7391	// values are omitted from API requests. However, any field with an
7392	// empty value appearing in NullFields will be sent to the server as
7393	// null. It is an error if a field in this list has a non-empty value.
7394	// This may be used to include null fields in Patch requests.
7395	NullFields []string `json:"-"`
7396}
7397
7398func (s *OrdersGetTestOrderTemplateResponse) MarshalJSON() ([]byte, error) {
7399	type NoMethod OrdersGetTestOrderTemplateResponse
7400	raw := NoMethod(*s)
7401	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7402}
7403
7404type OrdersInStoreRefundLineItemRequest struct {
7405	// AmountPretax: The amount that is refunded. Required.
7406	AmountPretax *Price `json:"amountPretax,omitempty"`
7407
7408	// AmountTax: Tax amount that correspond to refund amount in
7409	// amountPretax. Required.
7410	AmountTax *Price `json:"amountTax,omitempty"`
7411
7412	// LineItemId: The ID of the line item to return. Either lineItemId or
7413	// productId is required.
7414	LineItemId string `json:"lineItemId,omitempty"`
7415
7416	// OperationId: The ID of the operation. Unique across all operations
7417	// for a given order.
7418	OperationId string `json:"operationId,omitempty"`
7419
7420	// ProductId: The ID of the product to return. This is the REST ID used
7421	// in the products service. Either lineItemId or productId is required.
7422	ProductId string `json:"productId,omitempty"`
7423
7424	// Quantity: The quantity to return and refund.
7425	Quantity int64 `json:"quantity,omitempty"`
7426
7427	// Reason: The reason for the return.
7428	Reason string `json:"reason,omitempty"`
7429
7430	// ReasonText: The explanation of the reason.
7431	ReasonText string `json:"reasonText,omitempty"`
7432
7433	// ForceSendFields is a list of field names (e.g. "AmountPretax") to
7434	// unconditionally include in API requests. By default, fields with
7435	// empty values are omitted from API requests. However, any non-pointer,
7436	// non-interface field appearing in ForceSendFields will be sent to the
7437	// server regardless of whether the field is empty or not. This may be
7438	// used to include empty fields in Patch requests.
7439	ForceSendFields []string `json:"-"`
7440
7441	// NullFields is a list of field names (e.g. "AmountPretax") to include
7442	// in API requests with the JSON null value. By default, fields with
7443	// empty values are omitted from API requests. However, any field with
7444	// an empty value appearing in NullFields will be sent to the server as
7445	// null. It is an error if a field in this list has a non-empty value.
7446	// This may be used to include null fields in Patch requests.
7447	NullFields []string `json:"-"`
7448}
7449
7450func (s *OrdersInStoreRefundLineItemRequest) MarshalJSON() ([]byte, error) {
7451	type NoMethod OrdersInStoreRefundLineItemRequest
7452	raw := NoMethod(*s)
7453	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7454}
7455
7456type OrdersInStoreRefundLineItemResponse struct {
7457	// ExecutionStatus: The status of the execution.
7458	ExecutionStatus string `json:"executionStatus,omitempty"`
7459
7460	// Kind: Identifies what kind of resource this is. Value: the fixed
7461	// string "content#ordersInStoreRefundLineItemResponse".
7462	Kind string `json:"kind,omitempty"`
7463
7464	// ServerResponse contains the HTTP response code and headers from the
7465	// server.
7466	googleapi.ServerResponse `json:"-"`
7467
7468	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
7469	// unconditionally include in API requests. By default, fields with
7470	// empty values are omitted from API requests. However, any non-pointer,
7471	// non-interface field appearing in ForceSendFields will be sent to the
7472	// server regardless of whether the field is empty or not. This may be
7473	// used to include empty fields in Patch requests.
7474	ForceSendFields []string `json:"-"`
7475
7476	// NullFields is a list of field names (e.g. "ExecutionStatus") to
7477	// include in API requests with the JSON null value. By default, fields
7478	// with empty values are omitted from API requests. However, any field
7479	// with an empty value appearing in NullFields will be sent to the
7480	// server as null. It is an error if a field in this list has a
7481	// non-empty value. This may be used to include null fields in Patch
7482	// requests.
7483	NullFields []string `json:"-"`
7484}
7485
7486func (s *OrdersInStoreRefundLineItemResponse) MarshalJSON() ([]byte, error) {
7487	type NoMethod OrdersInStoreRefundLineItemResponse
7488	raw := NoMethod(*s)
7489	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7490}
7491
7492type OrdersListResponse struct {
7493	// Kind: Identifies what kind of resource this is. Value: the fixed
7494	// string "content#ordersListResponse".
7495	Kind string `json:"kind,omitempty"`
7496
7497	// NextPageToken: The token for the retrieval of the next page of
7498	// orders.
7499	NextPageToken string `json:"nextPageToken,omitempty"`
7500
7501	Resources []*Order `json:"resources,omitempty"`
7502
7503	// ServerResponse contains the HTTP response code and headers from the
7504	// server.
7505	googleapi.ServerResponse `json:"-"`
7506
7507	// ForceSendFields is a list of field names (e.g. "Kind") to
7508	// unconditionally include in API requests. By default, fields with
7509	// empty values are omitted from API requests. However, any non-pointer,
7510	// non-interface field appearing in ForceSendFields will be sent to the
7511	// server regardless of whether the field is empty or not. This may be
7512	// used to include empty fields in Patch requests.
7513	ForceSendFields []string `json:"-"`
7514
7515	// NullFields is a list of field names (e.g. "Kind") to include in API
7516	// requests with the JSON null value. By default, fields with empty
7517	// values are omitted from API requests. However, any field with an
7518	// empty value appearing in NullFields will be sent to the server as
7519	// null. It is an error if a field in this list has a non-empty value.
7520	// This may be used to include null fields in Patch requests.
7521	NullFields []string `json:"-"`
7522}
7523
7524func (s *OrdersListResponse) MarshalJSON() ([]byte, error) {
7525	type NoMethod OrdersListResponse
7526	raw := NoMethod(*s)
7527	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7528}
7529
7530type OrdersRefundRequest struct {
7531	// Amount: Deprecated. Please use amountPretax and amountTax instead.
7532	Amount *Price `json:"amount,omitempty"`
7533
7534	// AmountPretax: The amount that is refunded. Either amount or
7535	// amountPretax should be filled.
7536	AmountPretax *Price `json:"amountPretax,omitempty"`
7537
7538	// AmountTax: Tax amount that corresponds to refund amount in
7539	// amountPretax. Optional, but if filled, amountPretax must be set.
7540	// Calculated automatically if not provided.
7541	AmountTax *Price `json:"amountTax,omitempty"`
7542
7543	// OperationId: The ID of the operation. Unique across all operations
7544	// for a given order.
7545	OperationId string `json:"operationId,omitempty"`
7546
7547	// Reason: The reason for the refund.
7548	Reason string `json:"reason,omitempty"`
7549
7550	// ReasonText: The explanation of the reason.
7551	ReasonText string `json:"reasonText,omitempty"`
7552
7553	// ForceSendFields is a list of field names (e.g. "Amount") to
7554	// unconditionally include in API requests. By default, fields with
7555	// empty values are omitted from API requests. However, any non-pointer,
7556	// non-interface field appearing in ForceSendFields will be sent to the
7557	// server regardless of whether the field is empty or not. This may be
7558	// used to include empty fields in Patch requests.
7559	ForceSendFields []string `json:"-"`
7560
7561	// NullFields is a list of field names (e.g. "Amount") to include in API
7562	// requests with the JSON null value. By default, fields with empty
7563	// values are omitted from API requests. However, any field with an
7564	// empty value appearing in NullFields will be sent to the server as
7565	// null. It is an error if a field in this list has a non-empty value.
7566	// This may be used to include null fields in Patch requests.
7567	NullFields []string `json:"-"`
7568}
7569
7570func (s *OrdersRefundRequest) MarshalJSON() ([]byte, error) {
7571	type NoMethod OrdersRefundRequest
7572	raw := NoMethod(*s)
7573	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7574}
7575
7576type OrdersRefundResponse struct {
7577	// ExecutionStatus: The status of the execution.
7578	ExecutionStatus string `json:"executionStatus,omitempty"`
7579
7580	// Kind: Identifies what kind of resource this is. Value: the fixed
7581	// string "content#ordersRefundResponse".
7582	Kind string `json:"kind,omitempty"`
7583
7584	// ServerResponse contains the HTTP response code and headers from the
7585	// server.
7586	googleapi.ServerResponse `json:"-"`
7587
7588	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
7589	// unconditionally include in API requests. By default, fields with
7590	// empty values are omitted from API requests. However, any non-pointer,
7591	// non-interface field appearing in ForceSendFields will be sent to the
7592	// server regardless of whether the field is empty or not. This may be
7593	// used to include empty fields in Patch requests.
7594	ForceSendFields []string `json:"-"`
7595
7596	// NullFields is a list of field names (e.g. "ExecutionStatus") to
7597	// include in API requests with the JSON null value. By default, fields
7598	// with empty values are omitted from API requests. However, any field
7599	// with an empty value appearing in NullFields will be sent to the
7600	// server as null. It is an error if a field in this list has a
7601	// non-empty value. This may be used to include null fields in Patch
7602	// requests.
7603	NullFields []string `json:"-"`
7604}
7605
7606func (s *OrdersRefundResponse) MarshalJSON() ([]byte, error) {
7607	type NoMethod OrdersRefundResponse
7608	raw := NoMethod(*s)
7609	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7610}
7611
7612type OrdersRejectReturnLineItemRequest struct {
7613	// LineItemId: The ID of the line item to return. Either lineItemId or
7614	// productId is required.
7615	LineItemId string `json:"lineItemId,omitempty"`
7616
7617	// OperationId: The ID of the operation. Unique across all operations
7618	// for a given order.
7619	OperationId string `json:"operationId,omitempty"`
7620
7621	// ProductId: The ID of the product to return. This is the REST ID used
7622	// in the products service. Either lineItemId or productId is required.
7623	ProductId string `json:"productId,omitempty"`
7624
7625	// Quantity: The quantity to return and refund.
7626	Quantity int64 `json:"quantity,omitempty"`
7627
7628	// Reason: The reason for the return.
7629	Reason string `json:"reason,omitempty"`
7630
7631	// ReasonText: The explanation of the reason.
7632	ReasonText string `json:"reasonText,omitempty"`
7633
7634	// ForceSendFields is a list of field names (e.g. "LineItemId") to
7635	// unconditionally include in API requests. By default, fields with
7636	// empty values are omitted from API requests. However, any non-pointer,
7637	// non-interface field appearing in ForceSendFields will be sent to the
7638	// server regardless of whether the field is empty or not. This may be
7639	// used to include empty fields in Patch requests.
7640	ForceSendFields []string `json:"-"`
7641
7642	// NullFields is a list of field names (e.g. "LineItemId") to include in
7643	// API requests with the JSON null value. By default, fields with empty
7644	// values are omitted from API requests. However, any field with an
7645	// empty value appearing in NullFields will be sent to the server as
7646	// null. It is an error if a field in this list has a non-empty value.
7647	// This may be used to include null fields in Patch requests.
7648	NullFields []string `json:"-"`
7649}
7650
7651func (s *OrdersRejectReturnLineItemRequest) MarshalJSON() ([]byte, error) {
7652	type NoMethod OrdersRejectReturnLineItemRequest
7653	raw := NoMethod(*s)
7654	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7655}
7656
7657type OrdersRejectReturnLineItemResponse struct {
7658	// ExecutionStatus: The status of the execution.
7659	ExecutionStatus string `json:"executionStatus,omitempty"`
7660
7661	// Kind: Identifies what kind of resource this is. Value: the fixed
7662	// string "content#ordersRejectReturnLineItemResponse".
7663	Kind string `json:"kind,omitempty"`
7664
7665	// ServerResponse contains the HTTP response code and headers from the
7666	// server.
7667	googleapi.ServerResponse `json:"-"`
7668
7669	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
7670	// unconditionally include in API requests. By default, fields with
7671	// empty values are omitted from API requests. However, any non-pointer,
7672	// non-interface field appearing in ForceSendFields will be sent to the
7673	// server regardless of whether the field is empty or not. This may be
7674	// used to include empty fields in Patch requests.
7675	ForceSendFields []string `json:"-"`
7676
7677	// NullFields is a list of field names (e.g. "ExecutionStatus") to
7678	// include in API requests with the JSON null value. By default, fields
7679	// with empty values are omitted from API requests. However, any field
7680	// with an empty value appearing in NullFields will be sent to the
7681	// server as null. It is an error if a field in this list has a
7682	// non-empty value. This may be used to include null fields in Patch
7683	// requests.
7684	NullFields []string `json:"-"`
7685}
7686
7687func (s *OrdersRejectReturnLineItemResponse) MarshalJSON() ([]byte, error) {
7688	type NoMethod OrdersRejectReturnLineItemResponse
7689	raw := NoMethod(*s)
7690	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7691}
7692
7693type OrdersReturnLineItemRequest struct {
7694	// LineItemId: The ID of the line item to return. Either lineItemId or
7695	// productId is required.
7696	LineItemId string `json:"lineItemId,omitempty"`
7697
7698	// OperationId: The ID of the operation. Unique across all operations
7699	// for a given order.
7700	OperationId string `json:"operationId,omitempty"`
7701
7702	// ProductId: The ID of the product to return. This is the REST ID used
7703	// in the products service. Either lineItemId or productId is required.
7704	ProductId string `json:"productId,omitempty"`
7705
7706	// Quantity: The quantity to return.
7707	Quantity int64 `json:"quantity,omitempty"`
7708
7709	// Reason: The reason for the return.
7710	Reason string `json:"reason,omitempty"`
7711
7712	// ReasonText: The explanation of the reason.
7713	ReasonText string `json:"reasonText,omitempty"`
7714
7715	// ForceSendFields is a list of field names (e.g. "LineItemId") to
7716	// unconditionally include in API requests. By default, fields with
7717	// empty values are omitted from API requests. However, any non-pointer,
7718	// non-interface field appearing in ForceSendFields will be sent to the
7719	// server regardless of whether the field is empty or not. This may be
7720	// used to include empty fields in Patch requests.
7721	ForceSendFields []string `json:"-"`
7722
7723	// NullFields is a list of field names (e.g. "LineItemId") to include in
7724	// API requests with the JSON null value. By default, fields with empty
7725	// values are omitted from API requests. However, any field with an
7726	// empty value appearing in NullFields will be sent to the server as
7727	// null. It is an error if a field in this list has a non-empty value.
7728	// This may be used to include null fields in Patch requests.
7729	NullFields []string `json:"-"`
7730}
7731
7732func (s *OrdersReturnLineItemRequest) MarshalJSON() ([]byte, error) {
7733	type NoMethod OrdersReturnLineItemRequest
7734	raw := NoMethod(*s)
7735	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7736}
7737
7738type OrdersReturnLineItemResponse struct {
7739	// ExecutionStatus: The status of the execution.
7740	ExecutionStatus string `json:"executionStatus,omitempty"`
7741
7742	// Kind: Identifies what kind of resource this is. Value: the fixed
7743	// string "content#ordersReturnLineItemResponse".
7744	Kind string `json:"kind,omitempty"`
7745
7746	// ServerResponse contains the HTTP response code and headers from the
7747	// server.
7748	googleapi.ServerResponse `json:"-"`
7749
7750	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
7751	// unconditionally include in API requests. By default, fields with
7752	// empty values are omitted from API requests. However, any non-pointer,
7753	// non-interface field appearing in ForceSendFields will be sent to the
7754	// server regardless of whether the field is empty or not. This may be
7755	// used to include empty fields in Patch requests.
7756	ForceSendFields []string `json:"-"`
7757
7758	// NullFields is a list of field names (e.g. "ExecutionStatus") to
7759	// include in API requests with the JSON null value. By default, fields
7760	// with empty values are omitted from API requests. However, any field
7761	// with an empty value appearing in NullFields will be sent to the
7762	// server as null. It is an error if a field in this list has a
7763	// non-empty value. This may be used to include null fields in Patch
7764	// requests.
7765	NullFields []string `json:"-"`
7766}
7767
7768func (s *OrdersReturnLineItemResponse) MarshalJSON() ([]byte, error) {
7769	type NoMethod OrdersReturnLineItemResponse
7770	raw := NoMethod(*s)
7771	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7772}
7773
7774type OrdersReturnRefundLineItemRequest struct {
7775	// AmountPretax: The amount that is refunded. If omitted, refundless
7776	// return is assumed (same as calling returnLineItem method).
7777	AmountPretax *Price `json:"amountPretax,omitempty"`
7778
7779	// AmountTax: Tax amount that corresponds to refund amount in
7780	// amountPretax. Optional, but if filled, then amountPretax must be set.
7781	// Calculated automatically if not provided.
7782	AmountTax *Price `json:"amountTax,omitempty"`
7783
7784	// LineItemId: The ID of the line item to return. Either lineItemId or
7785	// productId is required.
7786	LineItemId string `json:"lineItemId,omitempty"`
7787
7788	// OperationId: The ID of the operation. Unique across all operations
7789	// for a given order.
7790	OperationId string `json:"operationId,omitempty"`
7791
7792	// ProductId: The ID of the product to return. This is the REST ID used
7793	// in the products service. Either lineItemId or productId is required.
7794	ProductId string `json:"productId,omitempty"`
7795
7796	// Quantity: The quantity to return and refund.
7797	Quantity int64 `json:"quantity,omitempty"`
7798
7799	// Reason: The reason for the return.
7800	Reason string `json:"reason,omitempty"`
7801
7802	// ReasonText: The explanation of the reason.
7803	ReasonText string `json:"reasonText,omitempty"`
7804
7805	// ForceSendFields is a list of field names (e.g. "AmountPretax") to
7806	// unconditionally include in API requests. By default, fields with
7807	// empty values are omitted from API requests. However, any non-pointer,
7808	// non-interface field appearing in ForceSendFields will be sent to the
7809	// server regardless of whether the field is empty or not. This may be
7810	// used to include empty fields in Patch requests.
7811	ForceSendFields []string `json:"-"`
7812
7813	// NullFields is a list of field names (e.g. "AmountPretax") to include
7814	// in API requests with the JSON null value. By default, fields with
7815	// empty values are omitted from API requests. However, any field with
7816	// an empty value appearing in NullFields will be sent to the server as
7817	// null. It is an error if a field in this list has a non-empty value.
7818	// This may be used to include null fields in Patch requests.
7819	NullFields []string `json:"-"`
7820}
7821
7822func (s *OrdersReturnRefundLineItemRequest) MarshalJSON() ([]byte, error) {
7823	type NoMethod OrdersReturnRefundLineItemRequest
7824	raw := NoMethod(*s)
7825	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7826}
7827
7828type OrdersReturnRefundLineItemResponse struct {
7829	// ExecutionStatus: The status of the execution.
7830	ExecutionStatus string `json:"executionStatus,omitempty"`
7831
7832	// Kind: Identifies what kind of resource this is. Value: the fixed
7833	// string "content#ordersReturnRefundLineItemResponse".
7834	Kind string `json:"kind,omitempty"`
7835
7836	// ServerResponse contains the HTTP response code and headers from the
7837	// server.
7838	googleapi.ServerResponse `json:"-"`
7839
7840	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
7841	// unconditionally include in API requests. By default, fields with
7842	// empty values are omitted from API requests. However, any non-pointer,
7843	// non-interface field appearing in ForceSendFields will be sent to the
7844	// server regardless of whether the field is empty or not. This may be
7845	// used to include empty fields in Patch requests.
7846	ForceSendFields []string `json:"-"`
7847
7848	// NullFields is a list of field names (e.g. "ExecutionStatus") to
7849	// include in API requests with the JSON null value. By default, fields
7850	// with empty values are omitted from API requests. However, any field
7851	// with an empty value appearing in NullFields will be sent to the
7852	// server as null. It is an error if a field in this list has a
7853	// non-empty value. This may be used to include null fields in Patch
7854	// requests.
7855	NullFields []string `json:"-"`
7856}
7857
7858func (s *OrdersReturnRefundLineItemResponse) MarshalJSON() ([]byte, error) {
7859	type NoMethod OrdersReturnRefundLineItemResponse
7860	raw := NoMethod(*s)
7861	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7862}
7863
7864type OrdersSetLineItemMetadataRequest struct {
7865	Annotations []*OrderMerchantProvidedAnnotation `json:"annotations,omitempty"`
7866
7867	// LineItemId: The ID of the line item to set metadata. Either
7868	// lineItemId or productId is required.
7869	LineItemId string `json:"lineItemId,omitempty"`
7870
7871	// OperationId: The ID of the operation. Unique across all operations
7872	// for a given order.
7873	OperationId string `json:"operationId,omitempty"`
7874
7875	// ProductId: The ID of the product to set metadata. This is the REST ID
7876	// used in the products service. Either lineItemId or productId is
7877	// required.
7878	ProductId string `json:"productId,omitempty"`
7879
7880	// ForceSendFields is a list of field names (e.g. "Annotations") to
7881	// unconditionally include in API requests. By default, fields with
7882	// empty values are omitted from API requests. However, any non-pointer,
7883	// non-interface field appearing in ForceSendFields will be sent to the
7884	// server regardless of whether the field is empty or not. This may be
7885	// used to include empty fields in Patch requests.
7886	ForceSendFields []string `json:"-"`
7887
7888	// NullFields is a list of field names (e.g. "Annotations") to include
7889	// in API requests with the JSON null value. By default, fields with
7890	// empty values are omitted from API requests. However, any field with
7891	// an empty value appearing in NullFields will be sent to the server as
7892	// null. It is an error if a field in this list has a non-empty value.
7893	// This may be used to include null fields in Patch requests.
7894	NullFields []string `json:"-"`
7895}
7896
7897func (s *OrdersSetLineItemMetadataRequest) MarshalJSON() ([]byte, error) {
7898	type NoMethod OrdersSetLineItemMetadataRequest
7899	raw := NoMethod(*s)
7900	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7901}
7902
7903type OrdersSetLineItemMetadataResponse struct {
7904	// ExecutionStatus: The status of the execution.
7905	ExecutionStatus string `json:"executionStatus,omitempty"`
7906
7907	// Kind: Identifies what kind of resource this is. Value: the fixed
7908	// string "content#ordersSetLineItemMetadataResponse".
7909	Kind string `json:"kind,omitempty"`
7910
7911	// ServerResponse contains the HTTP response code and headers from the
7912	// server.
7913	googleapi.ServerResponse `json:"-"`
7914
7915	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
7916	// unconditionally include in API requests. By default, fields with
7917	// empty values are omitted from API requests. However, any non-pointer,
7918	// non-interface field appearing in ForceSendFields will be sent to the
7919	// server regardless of whether the field is empty or not. This may be
7920	// used to include empty fields in Patch requests.
7921	ForceSendFields []string `json:"-"`
7922
7923	// NullFields is a list of field names (e.g. "ExecutionStatus") to
7924	// include in API requests with the JSON null value. By default, fields
7925	// with empty values are omitted from API requests. However, any field
7926	// with an empty value appearing in NullFields will be sent to the
7927	// server as null. It is an error if a field in this list has a
7928	// non-empty value. This may be used to include null fields in Patch
7929	// requests.
7930	NullFields []string `json:"-"`
7931}
7932
7933func (s *OrdersSetLineItemMetadataResponse) MarshalJSON() ([]byte, error) {
7934	type NoMethod OrdersSetLineItemMetadataResponse
7935	raw := NoMethod(*s)
7936	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7937}
7938
7939type OrdersShipLineItemsRequest struct {
7940	// Carrier: Deprecated. Please use shipmentInfo instead. The carrier
7941	// handling the shipment. See shipments[].carrier in the  Orders
7942	// resource representation for a list of acceptable values.
7943	Carrier string `json:"carrier,omitempty"`
7944
7945	// LineItems: Line items to ship.
7946	LineItems []*OrderShipmentLineItemShipment `json:"lineItems,omitempty"`
7947
7948	// OperationId: The ID of the operation. Unique across all operations
7949	// for a given order.
7950	OperationId string `json:"operationId,omitempty"`
7951
7952	// ShipmentGroupId: ID of the shipment group. Required for orders that
7953	// use the orderinvoices service.
7954	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
7955
7956	// ShipmentId: Deprecated. Please use shipmentInfo instead. The ID of
7957	// the shipment.
7958	ShipmentId string `json:"shipmentId,omitempty"`
7959
7960	// ShipmentInfos: Shipment information. This field is repeated because a
7961	// single line item can be shipped in several packages (and have several
7962	// tracking IDs).
7963	ShipmentInfos []*OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo `json:"shipmentInfos,omitempty"`
7964
7965	// TrackingId: Deprecated. Please use shipmentInfo instead. The tracking
7966	// ID for the shipment.
7967	TrackingId string `json:"trackingId,omitempty"`
7968
7969	// ForceSendFields is a list of field names (e.g. "Carrier") to
7970	// unconditionally include in API requests. By default, fields with
7971	// empty values are omitted from API requests. However, any non-pointer,
7972	// non-interface field appearing in ForceSendFields will be sent to the
7973	// server regardless of whether the field is empty or not. This may be
7974	// used to include empty fields in Patch requests.
7975	ForceSendFields []string `json:"-"`
7976
7977	// NullFields is a list of field names (e.g. "Carrier") to include in
7978	// API requests with the JSON null value. By default, fields with empty
7979	// values are omitted from API requests. However, any field with an
7980	// empty value appearing in NullFields will be sent to the server as
7981	// null. It is an error if a field in this list has a non-empty value.
7982	// This may be used to include null fields in Patch requests.
7983	NullFields []string `json:"-"`
7984}
7985
7986func (s *OrdersShipLineItemsRequest) MarshalJSON() ([]byte, error) {
7987	type NoMethod OrdersShipLineItemsRequest
7988	raw := NoMethod(*s)
7989	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7990}
7991
7992type OrdersShipLineItemsResponse struct {
7993	// ExecutionStatus: The status of the execution.
7994	ExecutionStatus string `json:"executionStatus,omitempty"`
7995
7996	// Kind: Identifies what kind of resource this is. Value: the fixed
7997	// string "content#ordersShipLineItemsResponse".
7998	Kind string `json:"kind,omitempty"`
7999
8000	// ServerResponse contains the HTTP response code and headers from the
8001	// server.
8002	googleapi.ServerResponse `json:"-"`
8003
8004	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8005	// unconditionally include in API requests. By default, fields with
8006	// empty values are omitted from API requests. However, any non-pointer,
8007	// non-interface field appearing in ForceSendFields will be sent to the
8008	// server regardless of whether the field is empty or not. This may be
8009	// used to include empty fields in Patch requests.
8010	ForceSendFields []string `json:"-"`
8011
8012	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8013	// include in API requests with the JSON null value. By default, fields
8014	// with empty values are omitted from API requests. However, any field
8015	// with an empty value appearing in NullFields will be sent to the
8016	// server as null. It is an error if a field in this list has a
8017	// non-empty value. This may be used to include null fields in Patch
8018	// requests.
8019	NullFields []string `json:"-"`
8020}
8021
8022func (s *OrdersShipLineItemsResponse) MarshalJSON() ([]byte, error) {
8023	type NoMethod OrdersShipLineItemsResponse
8024	raw := NoMethod(*s)
8025	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8026}
8027
8028type OrdersUpdateLineItemShippingDetailsRequest struct {
8029	// DeliverByDate: Updated delivery by date, in ISO 8601 format. If not
8030	// specified only ship by date is updated.
8031	//
8032	// Provided date should be within 1 year timeframe and can not be a date
8033	// in the past.
8034	DeliverByDate string `json:"deliverByDate,omitempty"`
8035
8036	// LineItemId: The ID of the line item to set metadata. Either
8037	// lineItemId or productId is required.
8038	LineItemId string `json:"lineItemId,omitempty"`
8039
8040	// OperationId: The ID of the operation. Unique across all operations
8041	// for a given order.
8042	OperationId string `json:"operationId,omitempty"`
8043
8044	// ProductId: The ID of the product to set metadata. This is the REST ID
8045	// used in the products service. Either lineItemId or productId is
8046	// required.
8047	ProductId string `json:"productId,omitempty"`
8048
8049	// ShipByDate: Updated ship by date, in ISO 8601 format. If not
8050	// specified only deliver by date is updated.
8051	//
8052	// Provided date should be within 1 year timeframe and can not be a date
8053	// in the past.
8054	ShipByDate string `json:"shipByDate,omitempty"`
8055
8056	// ForceSendFields is a list of field names (e.g. "DeliverByDate") to
8057	// unconditionally include in API requests. By default, fields with
8058	// empty values are omitted from API requests. However, any non-pointer,
8059	// non-interface field appearing in ForceSendFields will be sent to the
8060	// server regardless of whether the field is empty or not. This may be
8061	// used to include empty fields in Patch requests.
8062	ForceSendFields []string `json:"-"`
8063
8064	// NullFields is a list of field names (e.g. "DeliverByDate") to include
8065	// in API requests with the JSON null value. By default, fields with
8066	// empty values are omitted from API requests. However, any field with
8067	// an empty value appearing in NullFields will be sent to the server as
8068	// null. It is an error if a field in this list has a non-empty value.
8069	// This may be used to include null fields in Patch requests.
8070	NullFields []string `json:"-"`
8071}
8072
8073func (s *OrdersUpdateLineItemShippingDetailsRequest) MarshalJSON() ([]byte, error) {
8074	type NoMethod OrdersUpdateLineItemShippingDetailsRequest
8075	raw := NoMethod(*s)
8076	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8077}
8078
8079type OrdersUpdateLineItemShippingDetailsResponse struct {
8080	// ExecutionStatus: The status of the execution.
8081	ExecutionStatus string `json:"executionStatus,omitempty"`
8082
8083	// Kind: Identifies what kind of resource this is. Value: the fixed
8084	// string "content#ordersUpdateLineItemShippingDetailsResponse".
8085	Kind string `json:"kind,omitempty"`
8086
8087	// ServerResponse contains the HTTP response code and headers from the
8088	// server.
8089	googleapi.ServerResponse `json:"-"`
8090
8091	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8092	// unconditionally include in API requests. By default, fields with
8093	// empty values are omitted from API requests. However, any non-pointer,
8094	// non-interface field appearing in ForceSendFields will be sent to the
8095	// server regardless of whether the field is empty or not. This may be
8096	// used to include empty fields in Patch requests.
8097	ForceSendFields []string `json:"-"`
8098
8099	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8100	// include in API requests with the JSON null value. By default, fields
8101	// with empty values are omitted from API requests. However, any field
8102	// with an empty value appearing in NullFields will be sent to the
8103	// server as null. It is an error if a field in this list has a
8104	// non-empty value. This may be used to include null fields in Patch
8105	// requests.
8106	NullFields []string `json:"-"`
8107}
8108
8109func (s *OrdersUpdateLineItemShippingDetailsResponse) MarshalJSON() ([]byte, error) {
8110	type NoMethod OrdersUpdateLineItemShippingDetailsResponse
8111	raw := NoMethod(*s)
8112	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8113}
8114
8115type OrdersUpdateMerchantOrderIdRequest struct {
8116	// MerchantOrderId: The merchant order id to be assigned to the order.
8117	// Must be unique per merchant.
8118	MerchantOrderId string `json:"merchantOrderId,omitempty"`
8119
8120	// OperationId: The ID of the operation. Unique across all operations
8121	// for a given order.
8122	OperationId string `json:"operationId,omitempty"`
8123
8124	// ForceSendFields is a list of field names (e.g. "MerchantOrderId") to
8125	// unconditionally include in API requests. By default, fields with
8126	// empty values are omitted from API requests. However, any non-pointer,
8127	// non-interface field appearing in ForceSendFields will be sent to the
8128	// server regardless of whether the field is empty or not. This may be
8129	// used to include empty fields in Patch requests.
8130	ForceSendFields []string `json:"-"`
8131
8132	// NullFields is a list of field names (e.g. "MerchantOrderId") to
8133	// include in API requests with the JSON null value. By default, fields
8134	// with empty values are omitted from API requests. However, any field
8135	// with an empty value appearing in NullFields will be sent to the
8136	// server as null. It is an error if a field in this list has a
8137	// non-empty value. This may be used to include null fields in Patch
8138	// requests.
8139	NullFields []string `json:"-"`
8140}
8141
8142func (s *OrdersUpdateMerchantOrderIdRequest) MarshalJSON() ([]byte, error) {
8143	type NoMethod OrdersUpdateMerchantOrderIdRequest
8144	raw := NoMethod(*s)
8145	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8146}
8147
8148type OrdersUpdateMerchantOrderIdResponse struct {
8149	// ExecutionStatus: The status of the execution.
8150	ExecutionStatus string `json:"executionStatus,omitempty"`
8151
8152	// Kind: Identifies what kind of resource this is. Value: the fixed
8153	// string "content#ordersUpdateMerchantOrderIdResponse".
8154	Kind string `json:"kind,omitempty"`
8155
8156	// ServerResponse contains the HTTP response code and headers from the
8157	// server.
8158	googleapi.ServerResponse `json:"-"`
8159
8160	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8161	// unconditionally include in API requests. By default, fields with
8162	// empty values are omitted from API requests. However, any non-pointer,
8163	// non-interface field appearing in ForceSendFields will be sent to the
8164	// server regardless of whether the field is empty or not. This may be
8165	// used to include empty fields in Patch requests.
8166	ForceSendFields []string `json:"-"`
8167
8168	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8169	// include in API requests with the JSON null value. By default, fields
8170	// with empty values are omitted from API requests. However, any field
8171	// with an empty value appearing in NullFields will be sent to the
8172	// server as null. It is an error if a field in this list has a
8173	// non-empty value. This may be used to include null fields in Patch
8174	// requests.
8175	NullFields []string `json:"-"`
8176}
8177
8178func (s *OrdersUpdateMerchantOrderIdResponse) MarshalJSON() ([]byte, error) {
8179	type NoMethod OrdersUpdateMerchantOrderIdResponse
8180	raw := NoMethod(*s)
8181	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8182}
8183
8184type OrdersUpdateShipmentRequest struct {
8185	// Carrier: The carrier handling the shipment. Not updated if missing.
8186	// See shipments[].carrier in the  Orders resource representation for a
8187	// list of acceptable values.
8188	Carrier string `json:"carrier,omitempty"`
8189
8190	// DeliveryDate: Date on which the shipment has been delivered, in ISO
8191	// 8601 format. Optional and can be provided only if status is
8192	// delivered.
8193	DeliveryDate string `json:"deliveryDate,omitempty"`
8194
8195	// OperationId: The ID of the operation. Unique across all operations
8196	// for a given order.
8197	OperationId string `json:"operationId,omitempty"`
8198
8199	// ShipmentId: The ID of the shipment.
8200	ShipmentId string `json:"shipmentId,omitempty"`
8201
8202	// Status: New status for the shipment. Not updated if missing.
8203	Status string `json:"status,omitempty"`
8204
8205	// TrackingId: The tracking ID for the shipment. Not updated if missing.
8206	TrackingId string `json:"trackingId,omitempty"`
8207
8208	// ForceSendFields is a list of field names (e.g. "Carrier") to
8209	// unconditionally include in API requests. By default, fields with
8210	// empty values are omitted from API requests. However, any non-pointer,
8211	// non-interface field appearing in ForceSendFields will be sent to the
8212	// server regardless of whether the field is empty or not. This may be
8213	// used to include empty fields in Patch requests.
8214	ForceSendFields []string `json:"-"`
8215
8216	// NullFields is a list of field names (e.g. "Carrier") to include in
8217	// API requests with the JSON null value. By default, fields with empty
8218	// values are omitted from API requests. However, any field with an
8219	// empty value appearing in NullFields will be sent to the server as
8220	// null. It is an error if a field in this list has a non-empty value.
8221	// This may be used to include null fields in Patch requests.
8222	NullFields []string `json:"-"`
8223}
8224
8225func (s *OrdersUpdateShipmentRequest) MarshalJSON() ([]byte, error) {
8226	type NoMethod OrdersUpdateShipmentRequest
8227	raw := NoMethod(*s)
8228	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8229}
8230
8231type OrdersUpdateShipmentResponse struct {
8232	// ExecutionStatus: The status of the execution.
8233	ExecutionStatus string `json:"executionStatus,omitempty"`
8234
8235	// Kind: Identifies what kind of resource this is. Value: the fixed
8236	// string "content#ordersUpdateShipmentResponse".
8237	Kind string `json:"kind,omitempty"`
8238
8239	// ServerResponse contains the HTTP response code and headers from the
8240	// server.
8241	googleapi.ServerResponse `json:"-"`
8242
8243	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
8244	// unconditionally include in API requests. By default, fields with
8245	// empty values are omitted from API requests. However, any non-pointer,
8246	// non-interface field appearing in ForceSendFields will be sent to the
8247	// server regardless of whether the field is empty or not. This may be
8248	// used to include empty fields in Patch requests.
8249	ForceSendFields []string `json:"-"`
8250
8251	// NullFields is a list of field names (e.g. "ExecutionStatus") to
8252	// include in API requests with the JSON null value. By default, fields
8253	// with empty values are omitted from API requests. However, any field
8254	// with an empty value appearing in NullFields will be sent to the
8255	// server as null. It is an error if a field in this list has a
8256	// non-empty value. This may be used to include null fields in Patch
8257	// requests.
8258	NullFields []string `json:"-"`
8259}
8260
8261func (s *OrdersUpdateShipmentResponse) MarshalJSON() ([]byte, error) {
8262	type NoMethod OrdersUpdateShipmentResponse
8263	raw := NoMethod(*s)
8264	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8265}
8266
8267type PosCustomBatchRequest struct {
8268	// Entries: The request entries to be processed in the batch.
8269	Entries []*PosCustomBatchRequestEntry `json:"entries,omitempty"`
8270
8271	// ForceSendFields is a list of field names (e.g. "Entries") to
8272	// unconditionally include in API requests. By default, fields with
8273	// empty values are omitted from API requests. However, any non-pointer,
8274	// non-interface field appearing in ForceSendFields will be sent to the
8275	// server regardless of whether the field is empty or not. This may be
8276	// used to include empty fields in Patch requests.
8277	ForceSendFields []string `json:"-"`
8278
8279	// NullFields is a list of field names (e.g. "Entries") 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 *PosCustomBatchRequest) MarshalJSON() ([]byte, error) {
8289	type NoMethod PosCustomBatchRequest
8290	raw := NoMethod(*s)
8291	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8292}
8293
8294type PosCustomBatchRequestEntry struct {
8295	// BatchId: An entry ID, unique within the batch request.
8296	BatchId int64 `json:"batchId,omitempty"`
8297
8298	// Inventory: The inventory to submit. Set this only if the method is
8299	// inventory.
8300	Inventory *PosInventory `json:"inventory,omitempty"`
8301
8302	// MerchantId: The ID of the POS data provider.
8303	MerchantId uint64 `json:"merchantId,omitempty,string"`
8304
8305	Method string `json:"method,omitempty"`
8306
8307	// Sale: The sale information to submit. Set this only if the method is
8308	// sale.
8309	Sale *PosSale `json:"sale,omitempty"`
8310
8311	// Store: The store information to submit. Set this only if the method
8312	// is insert.
8313	Store *PosStore `json:"store,omitempty"`
8314
8315	// StoreCode: The store code. Set this only if the method is delete or
8316	// get.
8317	StoreCode string `json:"storeCode,omitempty"`
8318
8319	// TargetMerchantId: The ID of the account for which to get/submit data.
8320	TargetMerchantId uint64 `json:"targetMerchantId,omitempty,string"`
8321
8322	// ForceSendFields is a list of field names (e.g. "BatchId") to
8323	// unconditionally include in API requests. By default, fields with
8324	// empty values are omitted from API requests. However, any non-pointer,
8325	// non-interface field appearing in ForceSendFields will be sent to the
8326	// server regardless of whether the field is empty or not. This may be
8327	// used to include empty fields in Patch requests.
8328	ForceSendFields []string `json:"-"`
8329
8330	// NullFields is a list of field names (e.g. "BatchId") to include in
8331	// API requests with the JSON null value. By default, fields with empty
8332	// values are omitted from API requests. However, any field with an
8333	// empty value appearing in NullFields will be sent to the server as
8334	// null. It is an error if a field in this list has a non-empty value.
8335	// This may be used to include null fields in Patch requests.
8336	NullFields []string `json:"-"`
8337}
8338
8339func (s *PosCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
8340	type NoMethod PosCustomBatchRequestEntry
8341	raw := NoMethod(*s)
8342	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8343}
8344
8345type PosCustomBatchResponse struct {
8346	// Entries: The result of the execution of the batch requests.
8347	Entries []*PosCustomBatchResponseEntry `json:"entries,omitempty"`
8348
8349	// Kind: Identifies what kind of resource this is. Value: the fixed
8350	// string "content#posCustomBatchResponse".
8351	Kind string `json:"kind,omitempty"`
8352
8353	// ServerResponse contains the HTTP response code and headers from the
8354	// server.
8355	googleapi.ServerResponse `json:"-"`
8356
8357	// ForceSendFields is a list of field names (e.g. "Entries") to
8358	// unconditionally include in API requests. By default, fields with
8359	// empty values are omitted from API requests. However, any non-pointer,
8360	// non-interface field appearing in ForceSendFields will be sent to the
8361	// server regardless of whether the field is empty or not. This may be
8362	// used to include empty fields in Patch requests.
8363	ForceSendFields []string `json:"-"`
8364
8365	// NullFields is a list of field names (e.g. "Entries") to include in
8366	// API requests with the JSON null value. By default, fields with empty
8367	// values are omitted from API requests. However, any field with an
8368	// empty value appearing in NullFields will be sent to the server as
8369	// null. It is an error if a field in this list has a non-empty value.
8370	// This may be used to include null fields in Patch requests.
8371	NullFields []string `json:"-"`
8372}
8373
8374func (s *PosCustomBatchResponse) MarshalJSON() ([]byte, error) {
8375	type NoMethod PosCustomBatchResponse
8376	raw := NoMethod(*s)
8377	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8378}
8379
8380type PosCustomBatchResponseEntry struct {
8381	// BatchId: The ID of the request entry to which this entry responds.
8382	BatchId int64 `json:"batchId,omitempty"`
8383
8384	// Errors: A list of errors defined if, and only if, the request failed.
8385	Errors *Errors `json:"errors,omitempty"`
8386
8387	// Inventory: The updated inventory information.
8388	Inventory *PosInventory `json:"inventory,omitempty"`
8389
8390	// Kind: Identifies what kind of resource this is. Value: the fixed
8391	// string "content#posCustomBatchResponseEntry".
8392	Kind string `json:"kind,omitempty"`
8393
8394	// Sale: The updated sale information.
8395	Sale *PosSale `json:"sale,omitempty"`
8396
8397	// Store: The retrieved or updated store information.
8398	Store *PosStore `json:"store,omitempty"`
8399
8400	// ForceSendFields is a list of field names (e.g. "BatchId") to
8401	// unconditionally include in API requests. By default, fields with
8402	// empty values are omitted from API requests. However, any non-pointer,
8403	// non-interface field appearing in ForceSendFields will be sent to the
8404	// server regardless of whether the field is empty or not. This may be
8405	// used to include empty fields in Patch requests.
8406	ForceSendFields []string `json:"-"`
8407
8408	// NullFields is a list of field names (e.g. "BatchId") to include in
8409	// API requests with the JSON null value. By default, fields with empty
8410	// values are omitted from API requests. However, any field with an
8411	// empty value appearing in NullFields will be sent to the server as
8412	// null. It is an error if a field in this list has a non-empty value.
8413	// This may be used to include null fields in Patch requests.
8414	NullFields []string `json:"-"`
8415}
8416
8417func (s *PosCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
8418	type NoMethod PosCustomBatchResponseEntry
8419	raw := NoMethod(*s)
8420	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8421}
8422
8423type PosDataProviders struct {
8424	// Country: Country code.
8425	Country string `json:"country,omitempty"`
8426
8427	// PosDataProviders: A list of POS data providers.
8428	PosDataProviders []*PosDataProvidersPosDataProvider `json:"posDataProviders,omitempty"`
8429
8430	// ForceSendFields is a list of field names (e.g. "Country") to
8431	// unconditionally include in API requests. By default, fields with
8432	// empty values are omitted from API requests. However, any non-pointer,
8433	// non-interface field appearing in ForceSendFields will be sent to the
8434	// server regardless of whether the field is empty or not. This may be
8435	// used to include empty fields in Patch requests.
8436	ForceSendFields []string `json:"-"`
8437
8438	// NullFields is a list of field names (e.g. "Country") to include in
8439	// API requests with the JSON null value. By default, fields with empty
8440	// values are omitted from API requests. However, any field with an
8441	// empty value appearing in NullFields will be sent to the server as
8442	// null. It is an error if a field in this list has a non-empty value.
8443	// This may be used to include null fields in Patch requests.
8444	NullFields []string `json:"-"`
8445}
8446
8447func (s *PosDataProviders) MarshalJSON() ([]byte, error) {
8448	type NoMethod PosDataProviders
8449	raw := NoMethod(*s)
8450	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8451}
8452
8453type PosDataProvidersPosDataProvider struct {
8454	// DisplayName: The display name of Pos data Provider.
8455	DisplayName string `json:"displayName,omitempty"`
8456
8457	// FullName: The full name of this POS data Provider.
8458	FullName string `json:"fullName,omitempty"`
8459
8460	// ProviderId: The ID of the account.
8461	ProviderId uint64 `json:"providerId,omitempty,string"`
8462
8463	// ForceSendFields is a list of field names (e.g. "DisplayName") to
8464	// unconditionally include in API requests. By default, fields with
8465	// empty values are omitted from API requests. However, any non-pointer,
8466	// non-interface field appearing in ForceSendFields will be sent to the
8467	// server regardless of whether the field is empty or not. This may be
8468	// used to include empty fields in Patch requests.
8469	ForceSendFields []string `json:"-"`
8470
8471	// NullFields is a list of field names (e.g. "DisplayName") to include
8472	// in API requests with the JSON null value. By default, fields with
8473	// empty values are omitted from API requests. However, any field with
8474	// an empty value appearing in NullFields will be sent to the server as
8475	// null. It is an error if a field in this list has a non-empty value.
8476	// This may be used to include null fields in Patch requests.
8477	NullFields []string `json:"-"`
8478}
8479
8480func (s *PosDataProvidersPosDataProvider) MarshalJSON() ([]byte, error) {
8481	type NoMethod PosDataProvidersPosDataProvider
8482	raw := NoMethod(*s)
8483	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8484}
8485
8486// PosInventory: The absolute quantity of an item available at the given
8487// store.
8488type PosInventory struct {
8489	// ContentLanguage: The two-letter ISO 639-1 language code for the item.
8490	ContentLanguage string `json:"contentLanguage,omitempty"`
8491
8492	// Gtin: Global Trade Item Number.
8493	Gtin string `json:"gtin,omitempty"`
8494
8495	// ItemId: A unique identifier for the item.
8496	ItemId string `json:"itemId,omitempty"`
8497
8498	// Kind: Identifies what kind of resource this is. Value: the fixed
8499	// string "content#posInventory".
8500	Kind string `json:"kind,omitempty"`
8501
8502	// Price: The current price of the item.
8503	Price *Price `json:"price,omitempty"`
8504
8505	// Quantity: The available quantity of the item.
8506	Quantity int64 `json:"quantity,omitempty,string"`
8507
8508	// StoreCode: The identifier of the merchant's store. Either a storeCode
8509	// inserted via the API or the code of the store in Google My Business.
8510	StoreCode string `json:"storeCode,omitempty"`
8511
8512	// TargetCountry: The CLDR territory code for the item.
8513	TargetCountry string `json:"targetCountry,omitempty"`
8514
8515	// Timestamp: The inventory timestamp, in ISO 8601 format.
8516	Timestamp string `json:"timestamp,omitempty"`
8517
8518	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
8519	// unconditionally include in API requests. By default, fields with
8520	// empty values are omitted from API requests. However, any non-pointer,
8521	// non-interface field appearing in ForceSendFields will be sent to the
8522	// server regardless of whether the field is empty or not. This may be
8523	// used to include empty fields in Patch requests.
8524	ForceSendFields []string `json:"-"`
8525
8526	// NullFields is a list of field names (e.g. "ContentLanguage") to
8527	// include in API requests with the JSON null value. By default, fields
8528	// with empty values are omitted from API requests. However, any field
8529	// with an empty value appearing in NullFields will be sent to the
8530	// server as null. It is an error if a field in this list has a
8531	// non-empty value. This may be used to include null fields in Patch
8532	// requests.
8533	NullFields []string `json:"-"`
8534}
8535
8536func (s *PosInventory) MarshalJSON() ([]byte, error) {
8537	type NoMethod PosInventory
8538	raw := NoMethod(*s)
8539	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8540}
8541
8542type PosInventoryRequest struct {
8543	// ContentLanguage: The two-letter ISO 639-1 language code for the item.
8544	ContentLanguage string `json:"contentLanguage,omitempty"`
8545
8546	// Gtin: Global Trade Item Number.
8547	Gtin string `json:"gtin,omitempty"`
8548
8549	// ItemId: A unique identifier for the item.
8550	ItemId string `json:"itemId,omitempty"`
8551
8552	// Price: The current price of the item.
8553	Price *Price `json:"price,omitempty"`
8554
8555	// Quantity: The available quantity of the item.
8556	Quantity int64 `json:"quantity,omitempty,string"`
8557
8558	// StoreCode: The identifier of the merchant's store. Either a storeCode
8559	// inserted via the API or the code of the store in Google My Business.
8560	StoreCode string `json:"storeCode,omitempty"`
8561
8562	// TargetCountry: The CLDR territory code for the item.
8563	TargetCountry string `json:"targetCountry,omitempty"`
8564
8565	// Timestamp: The inventory timestamp, in ISO 8601 format.
8566	Timestamp string `json:"timestamp,omitempty"`
8567
8568	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
8569	// unconditionally include in API requests. By default, fields with
8570	// empty values are omitted from API requests. However, any non-pointer,
8571	// non-interface field appearing in ForceSendFields will be sent to the
8572	// server regardless of whether the field is empty or not. This may be
8573	// used to include empty fields in Patch requests.
8574	ForceSendFields []string `json:"-"`
8575
8576	// NullFields is a list of field names (e.g. "ContentLanguage") to
8577	// include in API requests with the JSON null value. By default, fields
8578	// with empty values are omitted from API requests. However, any field
8579	// with an empty value appearing in NullFields will be sent to the
8580	// server as null. It is an error if a field in this list has a
8581	// non-empty value. This may be used to include null fields in Patch
8582	// requests.
8583	NullFields []string `json:"-"`
8584}
8585
8586func (s *PosInventoryRequest) MarshalJSON() ([]byte, error) {
8587	type NoMethod PosInventoryRequest
8588	raw := NoMethod(*s)
8589	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8590}
8591
8592type PosInventoryResponse struct {
8593	// ContentLanguage: The two-letter ISO 639-1 language code for the item.
8594	ContentLanguage string `json:"contentLanguage,omitempty"`
8595
8596	// Gtin: Global Trade Item Number.
8597	Gtin string `json:"gtin,omitempty"`
8598
8599	// ItemId: A unique identifier for the item.
8600	ItemId string `json:"itemId,omitempty"`
8601
8602	// Kind: Identifies what kind of resource this is. Value: the fixed
8603	// string "content#posInventoryResponse".
8604	Kind string `json:"kind,omitempty"`
8605
8606	// Price: The current price of the item.
8607	Price *Price `json:"price,omitempty"`
8608
8609	// Quantity: The available quantity of the item.
8610	Quantity int64 `json:"quantity,omitempty,string"`
8611
8612	// StoreCode: The identifier of the merchant's store. Either a storeCode
8613	// inserted via the API or the code of the store in Google My Business.
8614	StoreCode string `json:"storeCode,omitempty"`
8615
8616	// TargetCountry: The CLDR territory code for the item.
8617	TargetCountry string `json:"targetCountry,omitempty"`
8618
8619	// Timestamp: The inventory timestamp, in ISO 8601 format.
8620	Timestamp string `json:"timestamp,omitempty"`
8621
8622	// ServerResponse contains the HTTP response code and headers from the
8623	// server.
8624	googleapi.ServerResponse `json:"-"`
8625
8626	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
8627	// unconditionally include in API requests. By default, fields with
8628	// empty values are omitted from API requests. However, any non-pointer,
8629	// non-interface field appearing in ForceSendFields will be sent to the
8630	// server regardless of whether the field is empty or not. This may be
8631	// used to include empty fields in Patch requests.
8632	ForceSendFields []string `json:"-"`
8633
8634	// NullFields is a list of field names (e.g. "ContentLanguage") to
8635	// include in API requests with the JSON null value. By default, fields
8636	// with empty values are omitted from API requests. However, any field
8637	// with an empty value appearing in NullFields will be sent to the
8638	// server as null. It is an error if a field in this list has a
8639	// non-empty value. This may be used to include null fields in Patch
8640	// requests.
8641	NullFields []string `json:"-"`
8642}
8643
8644func (s *PosInventoryResponse) MarshalJSON() ([]byte, error) {
8645	type NoMethod PosInventoryResponse
8646	raw := NoMethod(*s)
8647	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8648}
8649
8650type PosListResponse struct {
8651	// Kind: Identifies what kind of resource this is. Value: the fixed
8652	// string "content#posListResponse".
8653	Kind string `json:"kind,omitempty"`
8654
8655	Resources []*PosStore `json:"resources,omitempty"`
8656
8657	// ServerResponse contains the HTTP response code and headers from the
8658	// server.
8659	googleapi.ServerResponse `json:"-"`
8660
8661	// ForceSendFields is a list of field names (e.g. "Kind") to
8662	// unconditionally include in API requests. By default, fields with
8663	// empty values are omitted from API requests. However, any non-pointer,
8664	// non-interface field appearing in ForceSendFields will be sent to the
8665	// server regardless of whether the field is empty or not. This may be
8666	// used to include empty fields in Patch requests.
8667	ForceSendFields []string `json:"-"`
8668
8669	// NullFields is a list of field names (e.g. "Kind") to include in API
8670	// requests with the JSON null value. By default, fields with empty
8671	// values are omitted from API requests. However, any field with an
8672	// empty value appearing in NullFields will be sent to the server as
8673	// null. It is an error if a field in this list has a non-empty value.
8674	// This may be used to include null fields in Patch requests.
8675	NullFields []string `json:"-"`
8676}
8677
8678func (s *PosListResponse) MarshalJSON() ([]byte, error) {
8679	type NoMethod PosListResponse
8680	raw := NoMethod(*s)
8681	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8682}
8683
8684// PosSale: The change of the available quantity of an item at the given
8685// store.
8686type PosSale struct {
8687	// ContentLanguage: The two-letter ISO 639-1 language code for the item.
8688	ContentLanguage string `json:"contentLanguage,omitempty"`
8689
8690	// Gtin: Global Trade Item Number.
8691	Gtin string `json:"gtin,omitempty"`
8692
8693	// ItemId: A unique identifier for the item.
8694	ItemId string `json:"itemId,omitempty"`
8695
8696	// Kind: Identifies what kind of resource this is. Value: the fixed
8697	// string "content#posSale".
8698	Kind string `json:"kind,omitempty"`
8699
8700	// Price: The price of the item.
8701	Price *Price `json:"price,omitempty"`
8702
8703	// Quantity: The relative change of the available quantity. Negative for
8704	// items returned.
8705	Quantity int64 `json:"quantity,omitempty,string"`
8706
8707	// SaleId: A unique ID to group items from the same sale event.
8708	SaleId string `json:"saleId,omitempty"`
8709
8710	// StoreCode: The identifier of the merchant's store. Either a storeCode
8711	// inserted via the API or the code of the store in Google My Business.
8712	StoreCode string `json:"storeCode,omitempty"`
8713
8714	// TargetCountry: The CLDR territory code for the item.
8715	TargetCountry string `json:"targetCountry,omitempty"`
8716
8717	// Timestamp: The inventory timestamp, in ISO 8601 format.
8718	Timestamp string `json:"timestamp,omitempty"`
8719
8720	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
8721	// unconditionally include in API requests. By default, fields with
8722	// empty values are omitted from API requests. However, any non-pointer,
8723	// non-interface field appearing in ForceSendFields will be sent to the
8724	// server regardless of whether the field is empty or not. This may be
8725	// used to include empty fields in Patch requests.
8726	ForceSendFields []string `json:"-"`
8727
8728	// NullFields is a list of field names (e.g. "ContentLanguage") to
8729	// include in API requests with the JSON null value. By default, fields
8730	// with empty values are omitted from API requests. However, any field
8731	// with an empty value appearing in NullFields will be sent to the
8732	// server as null. It is an error if a field in this list has a
8733	// non-empty value. This may be used to include null fields in Patch
8734	// requests.
8735	NullFields []string `json:"-"`
8736}
8737
8738func (s *PosSale) MarshalJSON() ([]byte, error) {
8739	type NoMethod PosSale
8740	raw := NoMethod(*s)
8741	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8742}
8743
8744type PosSaleRequest struct {
8745	// ContentLanguage: The two-letter ISO 639-1 language code for the item.
8746	ContentLanguage string `json:"contentLanguage,omitempty"`
8747
8748	// Gtin: Global Trade Item Number.
8749	Gtin string `json:"gtin,omitempty"`
8750
8751	// ItemId: A unique identifier for the item.
8752	ItemId string `json:"itemId,omitempty"`
8753
8754	// Price: The price of the item.
8755	Price *Price `json:"price,omitempty"`
8756
8757	// Quantity: The relative change of the available quantity. Negative for
8758	// items returned.
8759	Quantity int64 `json:"quantity,omitempty,string"`
8760
8761	// SaleId: A unique ID to group items from the same sale event.
8762	SaleId string `json:"saleId,omitempty"`
8763
8764	// StoreCode: The identifier of the merchant's store. Either a storeCode
8765	// inserted via the API or the code of the store in Google My Business.
8766	StoreCode string `json:"storeCode,omitempty"`
8767
8768	// TargetCountry: The CLDR territory code for the item.
8769	TargetCountry string `json:"targetCountry,omitempty"`
8770
8771	// Timestamp: The inventory timestamp, in ISO 8601 format.
8772	Timestamp string `json:"timestamp,omitempty"`
8773
8774	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
8775	// unconditionally include in API requests. By default, fields with
8776	// empty values are omitted from API requests. However, any non-pointer,
8777	// non-interface field appearing in ForceSendFields will be sent to the
8778	// server regardless of whether the field is empty or not. This may be
8779	// used to include empty fields in Patch requests.
8780	ForceSendFields []string `json:"-"`
8781
8782	// NullFields is a list of field names (e.g. "ContentLanguage") to
8783	// include in API requests with the JSON null value. By default, fields
8784	// with empty values are omitted from API requests. However, any field
8785	// with an empty value appearing in NullFields will be sent to the
8786	// server as null. It is an error if a field in this list has a
8787	// non-empty value. This may be used to include null fields in Patch
8788	// requests.
8789	NullFields []string `json:"-"`
8790}
8791
8792func (s *PosSaleRequest) MarshalJSON() ([]byte, error) {
8793	type NoMethod PosSaleRequest
8794	raw := NoMethod(*s)
8795	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8796}
8797
8798type PosSaleResponse struct {
8799	// ContentLanguage: The two-letter ISO 639-1 language code for the item.
8800	ContentLanguage string `json:"contentLanguage,omitempty"`
8801
8802	// Gtin: Global Trade Item Number.
8803	Gtin string `json:"gtin,omitempty"`
8804
8805	// ItemId: A unique identifier for the item.
8806	ItemId string `json:"itemId,omitempty"`
8807
8808	// Kind: Identifies what kind of resource this is. Value: the fixed
8809	// string "content#posSaleResponse".
8810	Kind string `json:"kind,omitempty"`
8811
8812	// Price: The price of the item.
8813	Price *Price `json:"price,omitempty"`
8814
8815	// Quantity: The relative change of the available quantity. Negative for
8816	// items returned.
8817	Quantity int64 `json:"quantity,omitempty,string"`
8818
8819	// SaleId: A unique ID to group items from the same sale event.
8820	SaleId string `json:"saleId,omitempty"`
8821
8822	// StoreCode: The identifier of the merchant's store. Either a storeCode
8823	// inserted via the API or the code of the store in Google My Business.
8824	StoreCode string `json:"storeCode,omitempty"`
8825
8826	// TargetCountry: The CLDR territory code for the item.
8827	TargetCountry string `json:"targetCountry,omitempty"`
8828
8829	// Timestamp: The inventory timestamp, in ISO 8601 format.
8830	Timestamp string `json:"timestamp,omitempty"`
8831
8832	// ServerResponse contains the HTTP response code and headers from the
8833	// server.
8834	googleapi.ServerResponse `json:"-"`
8835
8836	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
8837	// unconditionally include in API requests. By default, fields with
8838	// empty values are omitted from API requests. However, any non-pointer,
8839	// non-interface field appearing in ForceSendFields will be sent to the
8840	// server regardless of whether the field is empty or not. This may be
8841	// used to include empty fields in Patch requests.
8842	ForceSendFields []string `json:"-"`
8843
8844	// NullFields is a list of field names (e.g. "ContentLanguage") to
8845	// include in API requests with the JSON null value. By default, fields
8846	// with empty values are omitted from API requests. However, any field
8847	// with an empty value appearing in NullFields will be sent to the
8848	// server as null. It is an error if a field in this list has a
8849	// non-empty value. This may be used to include null fields in Patch
8850	// requests.
8851	NullFields []string `json:"-"`
8852}
8853
8854func (s *PosSaleResponse) MarshalJSON() ([]byte, error) {
8855	type NoMethod PosSaleResponse
8856	raw := NoMethod(*s)
8857	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8858}
8859
8860// PosStore: Store resource.
8861type PosStore struct {
8862	// Kind: Identifies what kind of resource this is. Value: the fixed
8863	// string "content#posStore".
8864	Kind string `json:"kind,omitempty"`
8865
8866	// StoreAddress: The street address of the store.
8867	StoreAddress string `json:"storeAddress,omitempty"`
8868
8869	// StoreCode: A store identifier that is unique for the given merchant.
8870	StoreCode string `json:"storeCode,omitempty"`
8871
8872	// ServerResponse contains the HTTP response code and headers from the
8873	// server.
8874	googleapi.ServerResponse `json:"-"`
8875
8876	// ForceSendFields is a list of field names (e.g. "Kind") to
8877	// unconditionally include in API requests. By default, fields with
8878	// empty values are omitted from API requests. However, any non-pointer,
8879	// non-interface field appearing in ForceSendFields will be sent to the
8880	// server regardless of whether the field is empty or not. This may be
8881	// used to include empty fields in Patch requests.
8882	ForceSendFields []string `json:"-"`
8883
8884	// NullFields is a list of field names (e.g. "Kind") to include in API
8885	// requests with the JSON null value. By default, fields with empty
8886	// values are omitted from API requests. However, any field with an
8887	// empty value appearing in NullFields will be sent to the server as
8888	// null. It is an error if a field in this list has a non-empty value.
8889	// This may be used to include null fields in Patch requests.
8890	NullFields []string `json:"-"`
8891}
8892
8893func (s *PosStore) MarshalJSON() ([]byte, error) {
8894	type NoMethod PosStore
8895	raw := NoMethod(*s)
8896	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8897}
8898
8899type PostalCodeGroup struct {
8900	// Country: The CLDR territory code of the country the postal code group
8901	// applies to. Required.
8902	Country string `json:"country,omitempty"`
8903
8904	// Name: The name of the postal code group, referred to in headers.
8905	// Required.
8906	Name string `json:"name,omitempty"`
8907
8908	// PostalCodeRanges: A range of postal codes. Required.
8909	PostalCodeRanges []*PostalCodeRange `json:"postalCodeRanges,omitempty"`
8910
8911	// ForceSendFields is a list of field names (e.g. "Country") to
8912	// unconditionally include in API requests. By default, fields with
8913	// empty values are omitted from API requests. However, any non-pointer,
8914	// non-interface field appearing in ForceSendFields will be sent to the
8915	// server regardless of whether the field is empty or not. This may be
8916	// used to include empty fields in Patch requests.
8917	ForceSendFields []string `json:"-"`
8918
8919	// NullFields is a list of field names (e.g. "Country") to include in
8920	// API requests with the JSON null value. By default, fields with empty
8921	// values are omitted from API requests. However, any field with an
8922	// empty value appearing in NullFields will be sent to the server as
8923	// null. It is an error if a field in this list has a non-empty value.
8924	// This may be used to include null fields in Patch requests.
8925	NullFields []string `json:"-"`
8926}
8927
8928func (s *PostalCodeGroup) MarshalJSON() ([]byte, error) {
8929	type NoMethod PostalCodeGroup
8930	raw := NoMethod(*s)
8931	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8932}
8933
8934type PostalCodeRange struct {
8935	// PostalCodeRangeBegin: A postal code or a pattern of the form prefix*
8936	// denoting the inclusive lower bound of the range defining the area.
8937	// Examples values: "94108", "9410*", "9*". Required.
8938	PostalCodeRangeBegin string `json:"postalCodeRangeBegin,omitempty"`
8939
8940	// PostalCodeRangeEnd: A postal code or a pattern of the form prefix*
8941	// denoting the inclusive upper bound of the range defining the area. It
8942	// must have the same length as postalCodeRangeBegin: if
8943	// postalCodeRangeBegin is a postal code then postalCodeRangeEnd must be
8944	// a postal code too; if postalCodeRangeBegin is a pattern then
8945	// postalCodeRangeEnd must be a pattern with the same prefix length.
8946	// Optional: if not set, then the area is defined as being all the
8947	// postal codes matching postalCodeRangeBegin.
8948	PostalCodeRangeEnd string `json:"postalCodeRangeEnd,omitempty"`
8949
8950	// ForceSendFields is a list of field names (e.g.
8951	// "PostalCodeRangeBegin") to unconditionally include in API requests.
8952	// By default, fields with empty values are omitted from API requests.
8953	// However, any non-pointer, non-interface field appearing in
8954	// ForceSendFields will be sent to the server regardless of whether the
8955	// field is empty or not. This may be used to include empty fields in
8956	// Patch requests.
8957	ForceSendFields []string `json:"-"`
8958
8959	// NullFields is a list of field names (e.g. "PostalCodeRangeBegin") to
8960	// include in API requests with the JSON null value. By default, fields
8961	// with empty values are omitted from API requests. However, any field
8962	// with an empty value appearing in NullFields will be sent to the
8963	// server as null. It is an error if a field in this list has a
8964	// non-empty value. This may be used to include null fields in Patch
8965	// requests.
8966	NullFields []string `json:"-"`
8967}
8968
8969func (s *PostalCodeRange) MarshalJSON() ([]byte, error) {
8970	type NoMethod PostalCodeRange
8971	raw := NoMethod(*s)
8972	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8973}
8974
8975type Price struct {
8976	// Currency: The currency of the price.
8977	Currency string `json:"currency,omitempty"`
8978
8979	// Value: The price represented as a number.
8980	Value string `json:"value,omitempty"`
8981
8982	// ForceSendFields is a list of field names (e.g. "Currency") to
8983	// unconditionally include in API requests. By default, fields with
8984	// empty values are omitted from API requests. However, any non-pointer,
8985	// non-interface field appearing in ForceSendFields will be sent to the
8986	// server regardless of whether the field is empty or not. This may be
8987	// used to include empty fields in Patch requests.
8988	ForceSendFields []string `json:"-"`
8989
8990	// NullFields is a list of field names (e.g. "Currency") to include in
8991	// API requests with the JSON null value. By default, fields with empty
8992	// values are omitted from API requests. However, any field with an
8993	// empty value appearing in NullFields will be sent to the server as
8994	// null. It is an error if a field in this list has a non-empty value.
8995	// This may be used to include null fields in Patch requests.
8996	NullFields []string `json:"-"`
8997}
8998
8999func (s *Price) MarshalJSON() ([]byte, error) {
9000	type NoMethod Price
9001	raw := NoMethod(*s)
9002	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9003}
9004
9005// Product: Product data. After inserting, updating, or deleting a
9006// product, it may take several minutes before changes take effect.
9007type Product struct {
9008	// AdditionalImageLinks: Additional URLs of images of the item.
9009	AdditionalImageLinks []string `json:"additionalImageLinks,omitempty"`
9010
9011	// AdditionalProductTypes: Additional categories of the item (formatted
9012	// as in products data specification).
9013	AdditionalProductTypes []string `json:"additionalProductTypes,omitempty"`
9014
9015	// Adult: Set to true if the item is targeted towards adults.
9016	Adult bool `json:"adult,omitempty"`
9017
9018	// AdwordsGrouping: Used to group items in an arbitrary way. Only for
9019	// CPA%, discouraged otherwise.
9020	AdwordsGrouping string `json:"adwordsGrouping,omitempty"`
9021
9022	// AdwordsLabels: Similar to adwords_grouping, but only works on CPC.
9023	AdwordsLabels []string `json:"adwordsLabels,omitempty"`
9024
9025	// AdwordsRedirect: Allows advertisers to override the item URL when the
9026	// product is shown within the context of Product Ads.
9027	AdwordsRedirect string `json:"adwordsRedirect,omitempty"`
9028
9029	// AgeGroup: Target age group of the item.
9030	AgeGroup string `json:"ageGroup,omitempty"`
9031
9032	// Aspects: Deprecated. Do not use.
9033	Aspects []*ProductAspect `json:"aspects,omitempty"`
9034
9035	// Availability: Availability status of the item.
9036	Availability string `json:"availability,omitempty"`
9037
9038	// AvailabilityDate: The day a pre-ordered product becomes available for
9039	// delivery, in ISO 8601 format.
9040	AvailabilityDate string `json:"availabilityDate,omitempty"`
9041
9042	// Brand: Brand of the item.
9043	Brand string `json:"brand,omitempty"`
9044
9045	// Channel: The item's channel (online or local).
9046	Channel string `json:"channel,omitempty"`
9047
9048	// Color: Color of the item.
9049	Color string `json:"color,omitempty"`
9050
9051	// Condition: Condition or state of the item.
9052	Condition string `json:"condition,omitempty"`
9053
9054	// ContentLanguage: The two-letter ISO 639-1 language code for the item.
9055	ContentLanguage string `json:"contentLanguage,omitempty"`
9056
9057	// CostOfGoodsSold: Cost of goods sold. Used for gross profit reporting.
9058	CostOfGoodsSold *Price `json:"costOfGoodsSold,omitempty"`
9059
9060	// CustomAttributes: A list of custom (merchant-provided) attributes. It
9061	// can also be used for submitting any attribute of the feed
9062	// specification in its generic form (e.g., { "name": "size type",
9063	// "value": "regular" }). This is useful for submitting attributes not
9064	// explicitly exposed by the API.
9065	CustomAttributes []*CustomAttribute `json:"customAttributes,omitempty"`
9066
9067	// CustomGroups: A list of custom (merchant-provided) custom attribute
9068	// groups.
9069	CustomGroups []*CustomGroup `json:"customGroups,omitempty"`
9070
9071	// CustomLabel0: Custom label 0 for custom grouping of items in a
9072	// Shopping campaign.
9073	CustomLabel0 string `json:"customLabel0,omitempty"`
9074
9075	// CustomLabel1: Custom label 1 for custom grouping of items in a
9076	// Shopping campaign.
9077	CustomLabel1 string `json:"customLabel1,omitempty"`
9078
9079	// CustomLabel2: Custom label 2 for custom grouping of items in a
9080	// Shopping campaign.
9081	CustomLabel2 string `json:"customLabel2,omitempty"`
9082
9083	// CustomLabel3: Custom label 3 for custom grouping of items in a
9084	// Shopping campaign.
9085	CustomLabel3 string `json:"customLabel3,omitempty"`
9086
9087	// CustomLabel4: Custom label 4 for custom grouping of items in a
9088	// Shopping campaign.
9089	CustomLabel4 string `json:"customLabel4,omitempty"`
9090
9091	// Description: Description of the item.
9092	Description string `json:"description,omitempty"`
9093
9094	// Destinations: Specifies the intended destinations for the product.
9095	Destinations []*ProductDestination `json:"destinations,omitempty"`
9096
9097	// DisplayAdsId: An identifier for an item for dynamic remarketing
9098	// campaigns.
9099	DisplayAdsId string `json:"displayAdsId,omitempty"`
9100
9101	// DisplayAdsLink: URL directly to your item's landing page for dynamic
9102	// remarketing campaigns.
9103	DisplayAdsLink string `json:"displayAdsLink,omitempty"`
9104
9105	// DisplayAdsSimilarIds: Advertiser-specified recommendations.
9106	DisplayAdsSimilarIds []string `json:"displayAdsSimilarIds,omitempty"`
9107
9108	// DisplayAdsTitle: Title of an item for dynamic remarketing campaigns.
9109	DisplayAdsTitle string `json:"displayAdsTitle,omitempty"`
9110
9111	// DisplayAdsValue: Offer margin for dynamic remarketing campaigns.
9112	DisplayAdsValue float64 `json:"displayAdsValue,omitempty"`
9113
9114	// EnergyEfficiencyClass: The energy efficiency class as defined in EU
9115	// directive 2010/30/EU.
9116	EnergyEfficiencyClass string `json:"energyEfficiencyClass,omitempty"`
9117
9118	// ExpirationDate: Date on which the item should expire, as specified
9119	// upon insertion, in ISO 8601 format. The actual expiration date in
9120	// Google Shopping is exposed in productstatuses as googleExpirationDate
9121	// and might be earlier if expirationDate is too far in the future.
9122	ExpirationDate string `json:"expirationDate,omitempty"`
9123
9124	// Gender: Target gender of the item.
9125	Gender string `json:"gender,omitempty"`
9126
9127	// GoogleProductCategory: Google's category of the item (see Google
9128	// product taxonomy).
9129	GoogleProductCategory string `json:"googleProductCategory,omitempty"`
9130
9131	// Gtin: Global Trade Item Number (GTIN) of the item.
9132	Gtin string `json:"gtin,omitempty"`
9133
9134	// Id: The REST ID of the product. Content API methods that operate on
9135	// products take this as their productId parameter.
9136	// The REST ID for a product is of the form
9137	// channel:contentLanguage:targetCountry:offerId.
9138	Id string `json:"id,omitempty"`
9139
9140	// IdentifierExists: False when the item does not have unique product
9141	// identifiers appropriate to its category, such as GTIN, MPN, and
9142	// brand. Required according to the Unique Product Identifier Rules for
9143	// all target countries except for Canada.
9144	IdentifierExists bool `json:"identifierExists,omitempty"`
9145
9146	// ImageLink: URL of an image of the item.
9147	ImageLink string `json:"imageLink,omitempty"`
9148
9149	// Installment: Number and amount of installments to pay for an item.
9150	// Brazil only.
9151	Installment *Installment `json:"installment,omitempty"`
9152
9153	// IsBundle: Whether the item is a merchant-defined bundle. A bundle is
9154	// a custom grouping of different products sold by a merchant for a
9155	// single price.
9156	IsBundle bool `json:"isBundle,omitempty"`
9157
9158	// ItemGroupId: Shared identifier for all variants of the same product.
9159	ItemGroupId string `json:"itemGroupId,omitempty"`
9160
9161	// Kind: Identifies what kind of resource this is. Value: the fixed
9162	// string "content#product".
9163	Kind string `json:"kind,omitempty"`
9164
9165	// Link: URL directly linking to your item's page on your website.
9166	Link string `json:"link,omitempty"`
9167
9168	// LoyaltyPoints: Loyalty points that users receive after purchasing the
9169	// item. Japan only.
9170	LoyaltyPoints *LoyaltyPoints `json:"loyaltyPoints,omitempty"`
9171
9172	// Material: The material of which the item is made.
9173	Material string `json:"material,omitempty"`
9174
9175	// MaxEnergyEfficiencyClass: The energy efficiency class as defined in
9176	// EU directive 2010/30/EU.
9177	MaxEnergyEfficiencyClass string `json:"maxEnergyEfficiencyClass,omitempty"`
9178
9179	// MaxHandlingTime: Maximal product handling time (in business days).
9180	MaxHandlingTime int64 `json:"maxHandlingTime,omitempty,string"`
9181
9182	// MinEnergyEfficiencyClass: The energy efficiency class as defined in
9183	// EU directive 2010/30/EU.
9184	MinEnergyEfficiencyClass string `json:"minEnergyEfficiencyClass,omitempty"`
9185
9186	// MinHandlingTime: Minimal product handling time (in business days).
9187	MinHandlingTime int64 `json:"minHandlingTime,omitempty,string"`
9188
9189	// MobileLink: Link to a mobile-optimized version of the landing page.
9190	MobileLink string `json:"mobileLink,omitempty"`
9191
9192	// Mpn: Manufacturer Part Number (MPN) of the item.
9193	Mpn string `json:"mpn,omitempty"`
9194
9195	// Multipack: The number of identical products in a merchant-defined
9196	// multipack.
9197	Multipack int64 `json:"multipack,omitempty,string"`
9198
9199	// OfferId: A unique identifier for the item. Leading and trailing
9200	// whitespaces are stripped and multiple whitespaces are replaced by a
9201	// single whitespace upon submission. Only valid unicode characters are
9202	// accepted. See the products feed specification for details.
9203	// Note: Content API methods that operate on products take the REST ID
9204	// of the product, not this identifier.
9205	OfferId string `json:"offerId,omitempty"`
9206
9207	// OnlineOnly: Deprecated. Whether an item is available for purchase
9208	// only online.
9209	OnlineOnly bool `json:"onlineOnly,omitempty"`
9210
9211	// Pattern: The item's pattern (e.g. polka dots).
9212	Pattern string `json:"pattern,omitempty"`
9213
9214	// Price: Price of the item.
9215	Price *Price `json:"price,omitempty"`
9216
9217	// ProductType: Your category of the item (formatted as in products data
9218	// specification).
9219	ProductType string `json:"productType,omitempty"`
9220
9221	// PromotionIds: The unique ID of a promotion.
9222	PromotionIds []string `json:"promotionIds,omitempty"`
9223
9224	// SalePrice: Advertised sale price of the item.
9225	SalePrice *Price `json:"salePrice,omitempty"`
9226
9227	// SalePriceEffectiveDate: Date range during which the item is on sale
9228	// (see products data specification).
9229	SalePriceEffectiveDate string `json:"salePriceEffectiveDate,omitempty"`
9230
9231	// SellOnGoogleQuantity: The quantity of the product that is available
9232	// for selling on Google. Supported only for online products.
9233	SellOnGoogleQuantity int64 `json:"sellOnGoogleQuantity,omitempty,string"`
9234
9235	// Shipping: Shipping rules.
9236	Shipping []*ProductShipping `json:"shipping,omitempty"`
9237
9238	// ShippingHeight: Height of the item for shipping.
9239	ShippingHeight *ProductShippingDimension `json:"shippingHeight,omitempty"`
9240
9241	// ShippingLabel: The shipping label of the product, used to group
9242	// product in account-level shipping rules.
9243	ShippingLabel string `json:"shippingLabel,omitempty"`
9244
9245	// ShippingLength: Length of the item for shipping.
9246	ShippingLength *ProductShippingDimension `json:"shippingLength,omitempty"`
9247
9248	// ShippingWeight: Weight of the item for shipping.
9249	ShippingWeight *ProductShippingWeight `json:"shippingWeight,omitempty"`
9250
9251	// ShippingWidth: Width of the item for shipping.
9252	ShippingWidth *ProductShippingDimension `json:"shippingWidth,omitempty"`
9253
9254	// SizeSystem: System in which the size is specified. Recommended for
9255	// apparel items.
9256	SizeSystem string `json:"sizeSystem,omitempty"`
9257
9258	// SizeType: The cut of the item. Recommended for apparel items.
9259	SizeType string `json:"sizeType,omitempty"`
9260
9261	// Sizes: Size of the item.
9262	Sizes []string `json:"sizes,omitempty"`
9263
9264	// Source: The source of the offer, i.e., how the offer was created.
9265	Source string `json:"source,omitempty"`
9266
9267	// TargetCountry: The CLDR territory code for the item.
9268	TargetCountry string `json:"targetCountry,omitempty"`
9269
9270	// Taxes: Tax information.
9271	Taxes []*ProductTax `json:"taxes,omitempty"`
9272
9273	// Title: Title of the item.
9274	Title string `json:"title,omitempty"`
9275
9276	// UnitPricingBaseMeasure: The preference of the denominator of the unit
9277	// price.
9278	UnitPricingBaseMeasure *ProductUnitPricingBaseMeasure `json:"unitPricingBaseMeasure,omitempty"`
9279
9280	// UnitPricingMeasure: The measure and dimension of an item.
9281	UnitPricingMeasure *ProductUnitPricingMeasure `json:"unitPricingMeasure,omitempty"`
9282
9283	// ValidatedDestinations: Deprecated. The read-only list of intended
9284	// destinations which passed validation.
9285	ValidatedDestinations []string `json:"validatedDestinations,omitempty"`
9286
9287	// Warnings: Read-only warnings.
9288	Warnings []*Error `json:"warnings,omitempty"`
9289
9290	// ServerResponse contains the HTTP response code and headers from the
9291	// server.
9292	googleapi.ServerResponse `json:"-"`
9293
9294	// ForceSendFields is a list of field names (e.g.
9295	// "AdditionalImageLinks") to unconditionally include in API requests.
9296	// By default, fields with empty values are omitted from API requests.
9297	// However, any non-pointer, non-interface field appearing in
9298	// ForceSendFields will be sent to the server regardless of whether the
9299	// field is empty or not. This may be used to include empty fields in
9300	// Patch requests.
9301	ForceSendFields []string `json:"-"`
9302
9303	// NullFields is a list of field names (e.g. "AdditionalImageLinks") to
9304	// include in API requests with the JSON null value. By default, fields
9305	// with empty values are omitted from API requests. However, any field
9306	// with an empty value appearing in NullFields will be sent to the
9307	// server as null. It is an error if a field in this list has a
9308	// non-empty value. This may be used to include null fields in Patch
9309	// requests.
9310	NullFields []string `json:"-"`
9311}
9312
9313func (s *Product) MarshalJSON() ([]byte, error) {
9314	type NoMethod Product
9315	raw := NoMethod(*s)
9316	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9317}
9318
9319func (s *Product) UnmarshalJSON(data []byte) error {
9320	type NoMethod Product
9321	var s1 struct {
9322		DisplayAdsValue gensupport.JSONFloat64 `json:"displayAdsValue"`
9323		*NoMethod
9324	}
9325	s1.NoMethod = (*NoMethod)(s)
9326	if err := json.Unmarshal(data, &s1); err != nil {
9327		return err
9328	}
9329	s.DisplayAdsValue = float64(s1.DisplayAdsValue)
9330	return nil
9331}
9332
9333type ProductAmount struct {
9334	// PriceAmount: The pre-tax or post-tax price depending on the location
9335	// of the order.
9336	PriceAmount *Price `json:"priceAmount,omitempty"`
9337
9338	// RemittedTaxAmount: Remitted tax value.
9339	RemittedTaxAmount *Price `json:"remittedTaxAmount,omitempty"`
9340
9341	// TaxAmount: Tax value.
9342	TaxAmount *Price `json:"taxAmount,omitempty"`
9343
9344	// ForceSendFields is a list of field names (e.g. "PriceAmount") to
9345	// unconditionally include in API requests. By default, fields with
9346	// empty values are omitted from API requests. However, any non-pointer,
9347	// non-interface field appearing in ForceSendFields will be sent to the
9348	// server regardless of whether the field is empty or not. This may be
9349	// used to include empty fields in Patch requests.
9350	ForceSendFields []string `json:"-"`
9351
9352	// NullFields is a list of field names (e.g. "PriceAmount") to include
9353	// in API requests with the JSON null value. By default, fields with
9354	// empty values are omitted from API requests. However, any field with
9355	// an empty value appearing in NullFields will be sent to the server as
9356	// null. It is an error if a field in this list has a non-empty value.
9357	// This may be used to include null fields in Patch requests.
9358	NullFields []string `json:"-"`
9359}
9360
9361func (s *ProductAmount) MarshalJSON() ([]byte, error) {
9362	type NoMethod ProductAmount
9363	raw := NoMethod(*s)
9364	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9365}
9366
9367type ProductAspect struct {
9368	// AspectName: The name of the aspect.
9369	AspectName string `json:"aspectName,omitempty"`
9370
9371	// DestinationName: The name of the destination. Leave out to apply to
9372	// all destinations.
9373	DestinationName string `json:"destinationName,omitempty"`
9374
9375	// Intention: Whether the aspect is required, excluded or should be
9376	// validated.
9377	Intention string `json:"intention,omitempty"`
9378
9379	// ForceSendFields is a list of field names (e.g. "AspectName") to
9380	// unconditionally include in API requests. By default, fields with
9381	// empty values are omitted from API requests. However, any non-pointer,
9382	// non-interface field appearing in ForceSendFields will be sent to the
9383	// server regardless of whether the field is empty or not. This may be
9384	// used to include empty fields in Patch requests.
9385	ForceSendFields []string `json:"-"`
9386
9387	// NullFields is a list of field names (e.g. "AspectName") to include in
9388	// API requests with the JSON null value. By default, fields with empty
9389	// values are omitted from API requests. However, any field with an
9390	// empty value appearing in NullFields will be sent to the server as
9391	// null. It is an error if a field in this list has a non-empty value.
9392	// This may be used to include null fields in Patch requests.
9393	NullFields []string `json:"-"`
9394}
9395
9396func (s *ProductAspect) MarshalJSON() ([]byte, error) {
9397	type NoMethod ProductAspect
9398	raw := NoMethod(*s)
9399	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9400}
9401
9402type ProductDestination struct {
9403	// DestinationName: The name of the destination.
9404	DestinationName string `json:"destinationName,omitempty"`
9405
9406	// Intention: Whether the destination is required, excluded or should be
9407	// validated.
9408	Intention string `json:"intention,omitempty"`
9409
9410	// ForceSendFields is a list of field names (e.g. "DestinationName") to
9411	// unconditionally include in API requests. By default, fields with
9412	// empty values are omitted from API requests. However, any non-pointer,
9413	// non-interface field appearing in ForceSendFields will be sent to the
9414	// server regardless of whether the field is empty or not. This may be
9415	// used to include empty fields in Patch requests.
9416	ForceSendFields []string `json:"-"`
9417
9418	// NullFields is a list of field names (e.g. "DestinationName") to
9419	// include in API requests with the JSON null value. By default, fields
9420	// with empty values are omitted from API requests. However, any field
9421	// with an empty value appearing in NullFields will be sent to the
9422	// server as null. It is an error if a field in this list has a
9423	// non-empty value. This may be used to include null fields in Patch
9424	// requests.
9425	NullFields []string `json:"-"`
9426}
9427
9428func (s *ProductDestination) MarshalJSON() ([]byte, error) {
9429	type NoMethod ProductDestination
9430	raw := NoMethod(*s)
9431	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9432}
9433
9434type ProductShipping struct {
9435	// Country: The CLDR territory code of the country to which an item will
9436	// ship.
9437	Country string `json:"country,omitempty"`
9438
9439	// LocationGroupName: The location where the shipping is applicable,
9440	// represented by a location group name.
9441	LocationGroupName string `json:"locationGroupName,omitempty"`
9442
9443	// LocationId: The numeric ID of a location that the shipping rate
9444	// applies to as defined in the AdWords API.
9445	LocationId int64 `json:"locationId,omitempty,string"`
9446
9447	// PostalCode: The postal code range that the shipping rate applies to,
9448	// represented by a postal code, a postal code prefix followed by a *
9449	// wildcard, a range between two postal codes or two postal code
9450	// prefixes of equal length.
9451	PostalCode string `json:"postalCode,omitempty"`
9452
9453	// Price: Fixed shipping price, represented as a number.
9454	Price *Price `json:"price,omitempty"`
9455
9456	// Region: The geographic region to which a shipping rate applies.
9457	Region string `json:"region,omitempty"`
9458
9459	// Service: A free-form description of the service class or delivery
9460	// speed.
9461	Service string `json:"service,omitempty"`
9462
9463	// ForceSendFields is a list of field names (e.g. "Country") to
9464	// unconditionally include in API requests. By default, fields with
9465	// empty values are omitted from API requests. However, any non-pointer,
9466	// non-interface field appearing in ForceSendFields will be sent to the
9467	// server regardless of whether the field is empty or not. This may be
9468	// used to include empty fields in Patch requests.
9469	ForceSendFields []string `json:"-"`
9470
9471	// NullFields is a list of field names (e.g. "Country") to include in
9472	// API requests with the JSON null value. By default, fields with empty
9473	// values are omitted from API requests. However, any field with an
9474	// empty value appearing in NullFields will be sent to the server as
9475	// null. It is an error if a field in this list has a non-empty value.
9476	// This may be used to include null fields in Patch requests.
9477	NullFields []string `json:"-"`
9478}
9479
9480func (s *ProductShipping) MarshalJSON() ([]byte, error) {
9481	type NoMethod ProductShipping
9482	raw := NoMethod(*s)
9483	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9484}
9485
9486type ProductShippingDimension struct {
9487	// Unit: The unit of value.
9488	Unit string `json:"unit,omitempty"`
9489
9490	// Value: The dimension of the product used to calculate the shipping
9491	// cost of the item.
9492	Value float64 `json:"value,omitempty"`
9493
9494	// ForceSendFields is a list of field names (e.g. "Unit") to
9495	// unconditionally include in API requests. By default, fields with
9496	// empty values are omitted from API requests. However, any non-pointer,
9497	// non-interface field appearing in ForceSendFields will be sent to the
9498	// server regardless of whether the field is empty or not. This may be
9499	// used to include empty fields in Patch requests.
9500	ForceSendFields []string `json:"-"`
9501
9502	// NullFields is a list of field names (e.g. "Unit") to include in API
9503	// requests with the JSON null value. By default, fields with empty
9504	// values are omitted from API requests. However, any field with an
9505	// empty value appearing in NullFields will be sent to the server as
9506	// null. It is an error if a field in this list has a non-empty value.
9507	// This may be used to include null fields in Patch requests.
9508	NullFields []string `json:"-"`
9509}
9510
9511func (s *ProductShippingDimension) MarshalJSON() ([]byte, error) {
9512	type NoMethod ProductShippingDimension
9513	raw := NoMethod(*s)
9514	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9515}
9516
9517func (s *ProductShippingDimension) UnmarshalJSON(data []byte) error {
9518	type NoMethod ProductShippingDimension
9519	var s1 struct {
9520		Value gensupport.JSONFloat64 `json:"value"`
9521		*NoMethod
9522	}
9523	s1.NoMethod = (*NoMethod)(s)
9524	if err := json.Unmarshal(data, &s1); err != nil {
9525		return err
9526	}
9527	s.Value = float64(s1.Value)
9528	return nil
9529}
9530
9531type ProductShippingWeight struct {
9532	// Unit: The unit of value.
9533	Unit string `json:"unit,omitempty"`
9534
9535	// Value: The weight of the product used to calculate the shipping cost
9536	// of the item.
9537	Value float64 `json:"value,omitempty"`
9538
9539	// ForceSendFields is a list of field names (e.g. "Unit") to
9540	// unconditionally include in API requests. By default, fields with
9541	// empty values are omitted from API requests. However, any non-pointer,
9542	// non-interface field appearing in ForceSendFields will be sent to the
9543	// server regardless of whether the field is empty or not. This may be
9544	// used to include empty fields in Patch requests.
9545	ForceSendFields []string `json:"-"`
9546
9547	// NullFields is a list of field names (e.g. "Unit") to include in API
9548	// requests with the JSON null value. By default, fields with empty
9549	// values are omitted from API requests. However, any field with an
9550	// empty value appearing in NullFields will be sent to the server as
9551	// null. It is an error if a field in this list has a non-empty value.
9552	// This may be used to include null fields in Patch requests.
9553	NullFields []string `json:"-"`
9554}
9555
9556func (s *ProductShippingWeight) MarshalJSON() ([]byte, error) {
9557	type NoMethod ProductShippingWeight
9558	raw := NoMethod(*s)
9559	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9560}
9561
9562func (s *ProductShippingWeight) UnmarshalJSON(data []byte) error {
9563	type NoMethod ProductShippingWeight
9564	var s1 struct {
9565		Value gensupport.JSONFloat64 `json:"value"`
9566		*NoMethod
9567	}
9568	s1.NoMethod = (*NoMethod)(s)
9569	if err := json.Unmarshal(data, &s1); err != nil {
9570		return err
9571	}
9572	s.Value = float64(s1.Value)
9573	return nil
9574}
9575
9576// ProductStatus: The status of a product, i.e., information about a
9577// product computed asynchronously.
9578type ProductStatus struct {
9579	// CreationDate: Date on which the item has been created, in ISO 8601
9580	// format.
9581	CreationDate string `json:"creationDate,omitempty"`
9582
9583	// DataQualityIssues: DEPRECATED - never populated
9584	DataQualityIssues []*ProductStatusDataQualityIssue `json:"dataQualityIssues,omitempty"`
9585
9586	// DestinationStatuses: The intended destinations for the product.
9587	DestinationStatuses []*ProductStatusDestinationStatus `json:"destinationStatuses,omitempty"`
9588
9589	// GoogleExpirationDate: Date on which the item expires in Google
9590	// Shopping, in ISO 8601 format.
9591	GoogleExpirationDate string `json:"googleExpirationDate,omitempty"`
9592
9593	// ItemLevelIssues: A list of all issues associated with the product.
9594	ItemLevelIssues []*ProductStatusItemLevelIssue `json:"itemLevelIssues,omitempty"`
9595
9596	// Kind: Identifies what kind of resource this is. Value: the fixed
9597	// string "content#productStatus".
9598	Kind string `json:"kind,omitempty"`
9599
9600	// LastUpdateDate: Date on which the item has been last updated, in ISO
9601	// 8601 format.
9602	LastUpdateDate string `json:"lastUpdateDate,omitempty"`
9603
9604	// Link: The link to the product.
9605	Link string `json:"link,omitempty"`
9606
9607	// Product: Product data after applying all the join inputs.
9608	Product *Product `json:"product,omitempty"`
9609
9610	// ProductId: The ID of the product for which status is reported.
9611	ProductId string `json:"productId,omitempty"`
9612
9613	// Title: The title of the product.
9614	Title string `json:"title,omitempty"`
9615
9616	// ServerResponse contains the HTTP response code and headers from the
9617	// server.
9618	googleapi.ServerResponse `json:"-"`
9619
9620	// ForceSendFields is a list of field names (e.g. "CreationDate") to
9621	// unconditionally include in API requests. By default, fields with
9622	// empty values are omitted from API requests. However, any non-pointer,
9623	// non-interface field appearing in ForceSendFields will be sent to the
9624	// server regardless of whether the field is empty or not. This may be
9625	// used to include empty fields in Patch requests.
9626	ForceSendFields []string `json:"-"`
9627
9628	// NullFields is a list of field names (e.g. "CreationDate") to include
9629	// in API requests with the JSON null value. By default, fields with
9630	// empty values are omitted from API requests. However, any field with
9631	// an empty value appearing in NullFields will be sent to the server as
9632	// null. It is an error if a field in this list has a non-empty value.
9633	// This may be used to include null fields in Patch requests.
9634	NullFields []string `json:"-"`
9635}
9636
9637func (s *ProductStatus) MarshalJSON() ([]byte, error) {
9638	type NoMethod ProductStatus
9639	raw := NoMethod(*s)
9640	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9641}
9642
9643type ProductStatusDataQualityIssue struct {
9644	Destination string `json:"destination,omitempty"`
9645
9646	Detail string `json:"detail,omitempty"`
9647
9648	FetchStatus string `json:"fetchStatus,omitempty"`
9649
9650	Id string `json:"id,omitempty"`
9651
9652	Location string `json:"location,omitempty"`
9653
9654	Severity string `json:"severity,omitempty"`
9655
9656	Timestamp string `json:"timestamp,omitempty"`
9657
9658	ValueOnLandingPage string `json:"valueOnLandingPage,omitempty"`
9659
9660	ValueProvided string `json:"valueProvided,omitempty"`
9661
9662	// ForceSendFields is a list of field names (e.g. "Destination") to
9663	// unconditionally include in API requests. By default, fields with
9664	// empty values are omitted from API requests. However, any non-pointer,
9665	// non-interface field appearing in ForceSendFields will be sent to the
9666	// server regardless of whether the field is empty or not. This may be
9667	// used to include empty fields in Patch requests.
9668	ForceSendFields []string `json:"-"`
9669
9670	// NullFields is a list of field names (e.g. "Destination") to include
9671	// in API requests with the JSON null value. By default, fields with
9672	// empty values are omitted from API requests. However, any field with
9673	// an empty value appearing in NullFields will be sent to the server as
9674	// null. It is an error if a field in this list has a non-empty value.
9675	// This may be used to include null fields in Patch requests.
9676	NullFields []string `json:"-"`
9677}
9678
9679func (s *ProductStatusDataQualityIssue) MarshalJSON() ([]byte, error) {
9680	type NoMethod ProductStatusDataQualityIssue
9681	raw := NoMethod(*s)
9682	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9683}
9684
9685type ProductStatusDestinationStatus struct {
9686	// ApprovalPending: Whether the approval status might change due to
9687	// further processing.
9688	ApprovalPending bool `json:"approvalPending,omitempty"`
9689
9690	// ApprovalStatus: The destination's approval status.
9691	ApprovalStatus string `json:"approvalStatus,omitempty"`
9692
9693	// Destination: The name of the destination
9694	Destination string `json:"destination,omitempty"`
9695
9696	// Intention: Provided for backward compatibility only. Always set to
9697	// "required".
9698	Intention string `json:"intention,omitempty"`
9699
9700	// ForceSendFields is a list of field names (e.g. "ApprovalPending") to
9701	// unconditionally include in API requests. By default, fields with
9702	// empty values are omitted from API requests. However, any non-pointer,
9703	// non-interface field appearing in ForceSendFields will be sent to the
9704	// server regardless of whether the field is empty or not. This may be
9705	// used to include empty fields in Patch requests.
9706	ForceSendFields []string `json:"-"`
9707
9708	// NullFields is a list of field names (e.g. "ApprovalPending") to
9709	// include in API requests with the JSON null value. By default, fields
9710	// with empty values are omitted from API requests. However, any field
9711	// with an empty value appearing in NullFields will be sent to the
9712	// server as null. It is an error if a field in this list has a
9713	// non-empty value. This may be used to include null fields in Patch
9714	// requests.
9715	NullFields []string `json:"-"`
9716}
9717
9718func (s *ProductStatusDestinationStatus) MarshalJSON() ([]byte, error) {
9719	type NoMethod ProductStatusDestinationStatus
9720	raw := NoMethod(*s)
9721	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9722}
9723
9724type ProductStatusItemLevelIssue struct {
9725	// AttributeName: The attribute's name, if the issue is caused by a
9726	// single attribute.
9727	AttributeName string `json:"attributeName,omitempty"`
9728
9729	// Code: The error code of the issue.
9730	Code string `json:"code,omitempty"`
9731
9732	// Description: A short issue description in English.
9733	Description string `json:"description,omitempty"`
9734
9735	// Destination: The destination the issue applies to.
9736	Destination string `json:"destination,omitempty"`
9737
9738	// Detail: A detailed issue description in English.
9739	Detail string `json:"detail,omitempty"`
9740
9741	// Documentation: The URL of a web page to help with resolving this
9742	// issue.
9743	Documentation string `json:"documentation,omitempty"`
9744
9745	// Resolution: Whether the issue can be resolved by the merchant.
9746	Resolution string `json:"resolution,omitempty"`
9747
9748	// Servability: How this issue affects serving of the offer.
9749	Servability string `json:"servability,omitempty"`
9750
9751	// ForceSendFields is a list of field names (e.g. "AttributeName") to
9752	// unconditionally include in API requests. By default, fields with
9753	// empty values are omitted from API requests. However, any non-pointer,
9754	// non-interface field appearing in ForceSendFields will be sent to the
9755	// server regardless of whether the field is empty or not. This may be
9756	// used to include empty fields in Patch requests.
9757	ForceSendFields []string `json:"-"`
9758
9759	// NullFields is a list of field names (e.g. "AttributeName") to include
9760	// in API requests with the JSON null value. By default, fields with
9761	// empty values are omitted from API requests. However, any field with
9762	// an empty value appearing in NullFields will be sent to the server as
9763	// null. It is an error if a field in this list has a non-empty value.
9764	// This may be used to include null fields in Patch requests.
9765	NullFields []string `json:"-"`
9766}
9767
9768func (s *ProductStatusItemLevelIssue) MarshalJSON() ([]byte, error) {
9769	type NoMethod ProductStatusItemLevelIssue
9770	raw := NoMethod(*s)
9771	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9772}
9773
9774type ProductTax struct {
9775	// Country: The country within which the item is taxed, specified as a
9776	// CLDR territory code.
9777	Country string `json:"country,omitempty"`
9778
9779	// LocationId: The numeric ID of a location that the tax rate applies to
9780	// as defined in the AdWords API.
9781	LocationId int64 `json:"locationId,omitempty,string"`
9782
9783	// PostalCode: The postal code range that the tax rate applies to,
9784	// represented by a ZIP code, a ZIP code prefix using * wildcard, a
9785	// range between two ZIP codes or two ZIP code prefixes of equal length.
9786	// Examples: 94114, 94*, 94002-95460, 94*-95*.
9787	PostalCode string `json:"postalCode,omitempty"`
9788
9789	// Rate: The percentage of tax rate that applies to the item price.
9790	Rate float64 `json:"rate,omitempty"`
9791
9792	// Region: The geographic region to which the tax rate applies.
9793	Region string `json:"region,omitempty"`
9794
9795	// TaxShip: Set to true if tax is charged on shipping.
9796	TaxShip bool `json:"taxShip,omitempty"`
9797
9798	// ForceSendFields is a list of field names (e.g. "Country") to
9799	// unconditionally include in API requests. By default, fields with
9800	// empty values are omitted from API requests. However, any non-pointer,
9801	// non-interface field appearing in ForceSendFields will be sent to the
9802	// server regardless of whether the field is empty or not. This may be
9803	// used to include empty fields in Patch requests.
9804	ForceSendFields []string `json:"-"`
9805
9806	// NullFields is a list of field names (e.g. "Country") to include in
9807	// API requests with the JSON null value. By default, fields with empty
9808	// values are omitted from API requests. However, any field with an
9809	// empty value appearing in NullFields will be sent to the server as
9810	// null. It is an error if a field in this list has a non-empty value.
9811	// This may be used to include null fields in Patch requests.
9812	NullFields []string `json:"-"`
9813}
9814
9815func (s *ProductTax) MarshalJSON() ([]byte, error) {
9816	type NoMethod ProductTax
9817	raw := NoMethod(*s)
9818	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9819}
9820
9821func (s *ProductTax) UnmarshalJSON(data []byte) error {
9822	type NoMethod ProductTax
9823	var s1 struct {
9824		Rate gensupport.JSONFloat64 `json:"rate"`
9825		*NoMethod
9826	}
9827	s1.NoMethod = (*NoMethod)(s)
9828	if err := json.Unmarshal(data, &s1); err != nil {
9829		return err
9830	}
9831	s.Rate = float64(s1.Rate)
9832	return nil
9833}
9834
9835type ProductUnitPricingBaseMeasure struct {
9836	// Unit: The unit of the denominator.
9837	Unit string `json:"unit,omitempty"`
9838
9839	// Value: The denominator of the unit price.
9840	Value int64 `json:"value,omitempty,string"`
9841
9842	// ForceSendFields is a list of field names (e.g. "Unit") to
9843	// unconditionally include in API requests. By default, fields with
9844	// empty values are omitted from API requests. However, any non-pointer,
9845	// non-interface field appearing in ForceSendFields will be sent to the
9846	// server regardless of whether the field is empty or not. This may be
9847	// used to include empty fields in Patch requests.
9848	ForceSendFields []string `json:"-"`
9849
9850	// NullFields is a list of field names (e.g. "Unit") to include in API
9851	// requests with the JSON null value. By default, fields with empty
9852	// values are omitted from API requests. However, any field with an
9853	// empty value appearing in NullFields will be sent to the server as
9854	// null. It is an error if a field in this list has a non-empty value.
9855	// This may be used to include null fields in Patch requests.
9856	NullFields []string `json:"-"`
9857}
9858
9859func (s *ProductUnitPricingBaseMeasure) MarshalJSON() ([]byte, error) {
9860	type NoMethod ProductUnitPricingBaseMeasure
9861	raw := NoMethod(*s)
9862	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9863}
9864
9865type ProductUnitPricingMeasure struct {
9866	// Unit: The unit of the measure.
9867	Unit string `json:"unit,omitempty"`
9868
9869	// Value: The measure of an item.
9870	Value float64 `json:"value,omitempty"`
9871
9872	// ForceSendFields is a list of field names (e.g. "Unit") to
9873	// unconditionally include in API requests. By default, fields with
9874	// empty values are omitted from API requests. However, any non-pointer,
9875	// non-interface field appearing in ForceSendFields will be sent to the
9876	// server regardless of whether the field is empty or not. This may be
9877	// used to include empty fields in Patch requests.
9878	ForceSendFields []string `json:"-"`
9879
9880	// NullFields is a list of field names (e.g. "Unit") to include in API
9881	// requests with the JSON null value. By default, fields with empty
9882	// values are omitted from API requests. However, any field with an
9883	// empty value appearing in NullFields will be sent to the server as
9884	// null. It is an error if a field in this list has a non-empty value.
9885	// This may be used to include null fields in Patch requests.
9886	NullFields []string `json:"-"`
9887}
9888
9889func (s *ProductUnitPricingMeasure) MarshalJSON() ([]byte, error) {
9890	type NoMethod ProductUnitPricingMeasure
9891	raw := NoMethod(*s)
9892	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9893}
9894
9895func (s *ProductUnitPricingMeasure) UnmarshalJSON(data []byte) error {
9896	type NoMethod ProductUnitPricingMeasure
9897	var s1 struct {
9898		Value gensupport.JSONFloat64 `json:"value"`
9899		*NoMethod
9900	}
9901	s1.NoMethod = (*NoMethod)(s)
9902	if err := json.Unmarshal(data, &s1); err != nil {
9903		return err
9904	}
9905	s.Value = float64(s1.Value)
9906	return nil
9907}
9908
9909type ProductsCustomBatchRequest struct {
9910	// Entries: The request entries to be processed in the batch.
9911	Entries []*ProductsCustomBatchRequestEntry `json:"entries,omitempty"`
9912
9913	// ForceSendFields is a list of field names (e.g. "Entries") to
9914	// unconditionally include in API requests. By default, fields with
9915	// empty values are omitted from API requests. However, any non-pointer,
9916	// non-interface field appearing in ForceSendFields will be sent to the
9917	// server regardless of whether the field is empty or not. This may be
9918	// used to include empty fields in Patch requests.
9919	ForceSendFields []string `json:"-"`
9920
9921	// NullFields is a list of field names (e.g. "Entries") to include in
9922	// API requests with the JSON null value. By default, fields with empty
9923	// values are omitted from API requests. However, any field with an
9924	// empty value appearing in NullFields will be sent to the server as
9925	// null. It is an error if a field in this list has a non-empty value.
9926	// This may be used to include null fields in Patch requests.
9927	NullFields []string `json:"-"`
9928}
9929
9930func (s *ProductsCustomBatchRequest) MarshalJSON() ([]byte, error) {
9931	type NoMethod ProductsCustomBatchRequest
9932	raw := NoMethod(*s)
9933	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9934}
9935
9936// ProductsCustomBatchRequestEntry: A batch entry encoding a single
9937// non-batch products request.
9938type ProductsCustomBatchRequestEntry struct {
9939	// BatchId: An entry ID, unique within the batch request.
9940	BatchId int64 `json:"batchId,omitempty"`
9941
9942	// MerchantId: The ID of the managing account.
9943	MerchantId uint64 `json:"merchantId,omitempty,string"`
9944
9945	Method string `json:"method,omitempty"`
9946
9947	// Product: The product to insert. Only required if the method is
9948	// insert.
9949	Product *Product `json:"product,omitempty"`
9950
9951	// ProductId: The ID of the product to get or delete. Only defined if
9952	// the method is get or delete.
9953	ProductId string `json:"productId,omitempty"`
9954
9955	// ForceSendFields is a list of field names (e.g. "BatchId") to
9956	// unconditionally include in API requests. By default, fields with
9957	// empty values are omitted from API requests. However, any non-pointer,
9958	// non-interface field appearing in ForceSendFields will be sent to the
9959	// server regardless of whether the field is empty or not. This may be
9960	// used to include empty fields in Patch requests.
9961	ForceSendFields []string `json:"-"`
9962
9963	// NullFields is a list of field names (e.g. "BatchId") to include in
9964	// API requests with the JSON null value. By default, fields with empty
9965	// values are omitted from API requests. However, any field with an
9966	// empty value appearing in NullFields will be sent to the server as
9967	// null. It is an error if a field in this list has a non-empty value.
9968	// This may be used to include null fields in Patch requests.
9969	NullFields []string `json:"-"`
9970}
9971
9972func (s *ProductsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
9973	type NoMethod ProductsCustomBatchRequestEntry
9974	raw := NoMethod(*s)
9975	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9976}
9977
9978type ProductsCustomBatchResponse struct {
9979	// Entries: The result of the execution of the batch requests.
9980	Entries []*ProductsCustomBatchResponseEntry `json:"entries,omitempty"`
9981
9982	// Kind: Identifies what kind of resource this is. Value: the fixed
9983	// string "content#productsCustomBatchResponse".
9984	Kind string `json:"kind,omitempty"`
9985
9986	// ServerResponse contains the HTTP response code and headers from the
9987	// server.
9988	googleapi.ServerResponse `json:"-"`
9989
9990	// ForceSendFields is a list of field names (e.g. "Entries") to
9991	// unconditionally include in API requests. By default, fields with
9992	// empty values are omitted from API requests. However, any non-pointer,
9993	// non-interface field appearing in ForceSendFields will be sent to the
9994	// server regardless of whether the field is empty or not. This may be
9995	// used to include empty fields in Patch requests.
9996	ForceSendFields []string `json:"-"`
9997
9998	// NullFields is a list of field names (e.g. "Entries") to include in
9999	// API requests with the JSON null value. By default, fields with empty
10000	// values are omitted from API requests. However, any field with an
10001	// empty value appearing in NullFields will be sent to the server as
10002	// null. It is an error if a field in this list has a non-empty value.
10003	// This may be used to include null fields in Patch requests.
10004	NullFields []string `json:"-"`
10005}
10006
10007func (s *ProductsCustomBatchResponse) MarshalJSON() ([]byte, error) {
10008	type NoMethod ProductsCustomBatchResponse
10009	raw := NoMethod(*s)
10010	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10011}
10012
10013// ProductsCustomBatchResponseEntry: A batch entry encoding a single
10014// non-batch products response.
10015type ProductsCustomBatchResponseEntry struct {
10016	// BatchId: The ID of the request entry this entry responds to.
10017	BatchId int64 `json:"batchId,omitempty"`
10018
10019	// Errors: A list of errors defined if and only if the request failed.
10020	Errors *Errors `json:"errors,omitempty"`
10021
10022	// Kind: Identifies what kind of resource this is. Value: the fixed
10023	// string "content#productsCustomBatchResponseEntry".
10024	Kind string `json:"kind,omitempty"`
10025
10026	// Product: The inserted product. Only defined if the method is insert
10027	// and if the request was successful.
10028	Product *Product `json:"product,omitempty"`
10029
10030	// ForceSendFields is a list of field names (e.g. "BatchId") to
10031	// unconditionally include in API requests. By default, fields with
10032	// empty values are omitted from API requests. However, any non-pointer,
10033	// non-interface field appearing in ForceSendFields will be sent to the
10034	// server regardless of whether the field is empty or not. This may be
10035	// used to include empty fields in Patch requests.
10036	ForceSendFields []string `json:"-"`
10037
10038	// NullFields is a list of field names (e.g. "BatchId") to include in
10039	// API requests with the JSON null value. By default, fields with empty
10040	// values are omitted from API requests. However, any field with an
10041	// empty value appearing in NullFields will be sent to the server as
10042	// null. It is an error if a field in this list has a non-empty value.
10043	// This may be used to include null fields in Patch requests.
10044	NullFields []string `json:"-"`
10045}
10046
10047func (s *ProductsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
10048	type NoMethod ProductsCustomBatchResponseEntry
10049	raw := NoMethod(*s)
10050	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10051}
10052
10053type ProductsListResponse struct {
10054	// Kind: Identifies what kind of resource this is. Value: the fixed
10055	// string "content#productsListResponse".
10056	Kind string `json:"kind,omitempty"`
10057
10058	// NextPageToken: The token for the retrieval of the next page of
10059	// products.
10060	NextPageToken string `json:"nextPageToken,omitempty"`
10061
10062	Resources []*Product `json:"resources,omitempty"`
10063
10064	// ServerResponse contains the HTTP response code and headers from the
10065	// server.
10066	googleapi.ServerResponse `json:"-"`
10067
10068	// ForceSendFields is a list of field names (e.g. "Kind") to
10069	// unconditionally include in API requests. By default, fields with
10070	// empty values are omitted from API requests. However, any non-pointer,
10071	// non-interface field appearing in ForceSendFields will be sent to the
10072	// server regardless of whether the field is empty or not. This may be
10073	// used to include empty fields in Patch requests.
10074	ForceSendFields []string `json:"-"`
10075
10076	// NullFields is a list of field names (e.g. "Kind") to include in API
10077	// requests with the JSON null value. By default, fields with empty
10078	// values are omitted from API requests. However, any field with an
10079	// empty value appearing in NullFields will be sent to the server as
10080	// null. It is an error if a field in this list has a non-empty value.
10081	// This may be used to include null fields in Patch requests.
10082	NullFields []string `json:"-"`
10083}
10084
10085func (s *ProductsListResponse) MarshalJSON() ([]byte, error) {
10086	type NoMethod ProductsListResponse
10087	raw := NoMethod(*s)
10088	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10089}
10090
10091type ProductstatusesCustomBatchRequest struct {
10092	// Entries: The request entries to be processed in the batch.
10093	Entries []*ProductstatusesCustomBatchRequestEntry `json:"entries,omitempty"`
10094
10095	// ForceSendFields is a list of field names (e.g. "Entries") to
10096	// unconditionally include in API requests. By default, fields with
10097	// empty values are omitted from API requests. However, any non-pointer,
10098	// non-interface field appearing in ForceSendFields will be sent to the
10099	// server regardless of whether the field is empty or not. This may be
10100	// used to include empty fields in Patch requests.
10101	ForceSendFields []string `json:"-"`
10102
10103	// NullFields is a list of field names (e.g. "Entries") to include in
10104	// API requests with the JSON null value. By default, fields with empty
10105	// values are omitted from API requests. However, any field with an
10106	// empty value appearing in NullFields will be sent to the server as
10107	// null. It is an error if a field in this list has a non-empty value.
10108	// This may be used to include null fields in Patch requests.
10109	NullFields []string `json:"-"`
10110}
10111
10112func (s *ProductstatusesCustomBatchRequest) MarshalJSON() ([]byte, error) {
10113	type NoMethod ProductstatusesCustomBatchRequest
10114	raw := NoMethod(*s)
10115	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10116}
10117
10118// ProductstatusesCustomBatchRequestEntry: A batch entry encoding a
10119// single non-batch productstatuses request.
10120type ProductstatusesCustomBatchRequestEntry struct {
10121	// BatchId: An entry ID, unique within the batch request.
10122	BatchId int64 `json:"batchId,omitempty"`
10123
10124	// Destinations: If set, only issues for the specified destinations are
10125	// returned, otherwise only issues for the Shopping destination.
10126	Destinations []string `json:"destinations,omitempty"`
10127
10128	IncludeAttributes bool `json:"includeAttributes,omitempty"`
10129
10130	// MerchantId: The ID of the managing account.
10131	MerchantId uint64 `json:"merchantId,omitempty,string"`
10132
10133	Method string `json:"method,omitempty"`
10134
10135	// ProductId: The ID of the product whose status to get.
10136	ProductId string `json:"productId,omitempty"`
10137
10138	// ForceSendFields is a list of field names (e.g. "BatchId") to
10139	// unconditionally include in API requests. By default, fields with
10140	// empty values are omitted from API requests. However, any non-pointer,
10141	// non-interface field appearing in ForceSendFields will be sent to the
10142	// server regardless of whether the field is empty or not. This may be
10143	// used to include empty fields in Patch requests.
10144	ForceSendFields []string `json:"-"`
10145
10146	// NullFields is a list of field names (e.g. "BatchId") to include in
10147	// API requests with the JSON null value. By default, fields with empty
10148	// values are omitted from API requests. However, any field with an
10149	// empty value appearing in NullFields will be sent to the server as
10150	// null. It is an error if a field in this list has a non-empty value.
10151	// This may be used to include null fields in Patch requests.
10152	NullFields []string `json:"-"`
10153}
10154
10155func (s *ProductstatusesCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
10156	type NoMethod ProductstatusesCustomBatchRequestEntry
10157	raw := NoMethod(*s)
10158	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10159}
10160
10161type ProductstatusesCustomBatchResponse struct {
10162	// Entries: The result of the execution of the batch requests.
10163	Entries []*ProductstatusesCustomBatchResponseEntry `json:"entries,omitempty"`
10164
10165	// Kind: Identifies what kind of resource this is. Value: the fixed
10166	// string "content#productstatusesCustomBatchResponse".
10167	Kind string `json:"kind,omitempty"`
10168
10169	// ServerResponse contains the HTTP response code and headers from the
10170	// server.
10171	googleapi.ServerResponse `json:"-"`
10172
10173	// ForceSendFields is a list of field names (e.g. "Entries") to
10174	// unconditionally include in API requests. By default, fields with
10175	// empty values are omitted from API requests. However, any non-pointer,
10176	// non-interface field appearing in ForceSendFields will be sent to the
10177	// server regardless of whether the field is empty or not. This may be
10178	// used to include empty fields in Patch requests.
10179	ForceSendFields []string `json:"-"`
10180
10181	// NullFields is a list of field names (e.g. "Entries") to include in
10182	// API requests with the JSON null value. By default, fields with empty
10183	// values are omitted from API requests. However, any field with an
10184	// empty value appearing in NullFields will be sent to the server as
10185	// null. It is an error if a field in this list has a non-empty value.
10186	// This may be used to include null fields in Patch requests.
10187	NullFields []string `json:"-"`
10188}
10189
10190func (s *ProductstatusesCustomBatchResponse) MarshalJSON() ([]byte, error) {
10191	type NoMethod ProductstatusesCustomBatchResponse
10192	raw := NoMethod(*s)
10193	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10194}
10195
10196// ProductstatusesCustomBatchResponseEntry: A batch entry encoding a
10197// single non-batch productstatuses response.
10198type ProductstatusesCustomBatchResponseEntry struct {
10199	// BatchId: The ID of the request entry this entry responds to.
10200	BatchId int64 `json:"batchId,omitempty"`
10201
10202	// Errors: A list of errors, if the request failed.
10203	Errors *Errors `json:"errors,omitempty"`
10204
10205	// Kind: Identifies what kind of resource this is. Value: the fixed
10206	// string "content#productstatusesCustomBatchResponseEntry".
10207	Kind string `json:"kind,omitempty"`
10208
10209	// ProductStatus: The requested product status. Only defined if the
10210	// request was successful.
10211	ProductStatus *ProductStatus `json:"productStatus,omitempty"`
10212
10213	// ForceSendFields is a list of field names (e.g. "BatchId") to
10214	// unconditionally include in API requests. By default, fields with
10215	// empty values are omitted from API requests. However, any non-pointer,
10216	// non-interface field appearing in ForceSendFields will be sent to the
10217	// server regardless of whether the field is empty or not. This may be
10218	// used to include empty fields in Patch requests.
10219	ForceSendFields []string `json:"-"`
10220
10221	// NullFields is a list of field names (e.g. "BatchId") to include in
10222	// API requests with the JSON null value. By default, fields with empty
10223	// values are omitted from API requests. However, any field with an
10224	// empty value appearing in NullFields will be sent to the server as
10225	// null. It is an error if a field in this list has a non-empty value.
10226	// This may be used to include null fields in Patch requests.
10227	NullFields []string `json:"-"`
10228}
10229
10230func (s *ProductstatusesCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
10231	type NoMethod ProductstatusesCustomBatchResponseEntry
10232	raw := NoMethod(*s)
10233	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10234}
10235
10236type ProductstatusesListResponse struct {
10237	// Kind: Identifies what kind of resource this is. Value: the fixed
10238	// string "content#productstatusesListResponse".
10239	Kind string `json:"kind,omitempty"`
10240
10241	// NextPageToken: The token for the retrieval of the next page of
10242	// products statuses.
10243	NextPageToken string `json:"nextPageToken,omitempty"`
10244
10245	Resources []*ProductStatus `json:"resources,omitempty"`
10246
10247	// ServerResponse contains the HTTP response code and headers from the
10248	// server.
10249	googleapi.ServerResponse `json:"-"`
10250
10251	// ForceSendFields is a list of field names (e.g. "Kind") to
10252	// unconditionally include in API requests. By default, fields with
10253	// empty values are omitted from API requests. However, any non-pointer,
10254	// non-interface field appearing in ForceSendFields will be sent to the
10255	// server regardless of whether the field is empty or not. This may be
10256	// used to include empty fields in Patch requests.
10257	ForceSendFields []string `json:"-"`
10258
10259	// NullFields is a list of field names (e.g. "Kind") to include in API
10260	// requests with the JSON null value. By default, fields with empty
10261	// values are omitted from API requests. However, any field with an
10262	// empty value appearing in NullFields will be sent to the server as
10263	// null. It is an error if a field in this list has a non-empty value.
10264	// This may be used to include null fields in Patch requests.
10265	NullFields []string `json:"-"`
10266}
10267
10268func (s *ProductstatusesListResponse) MarshalJSON() ([]byte, error) {
10269	type NoMethod ProductstatusesListResponse
10270	raw := NoMethod(*s)
10271	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10272}
10273
10274type Promotion struct {
10275	// PromotionAmount: [required] Amount of the promotion. The values here
10276	// are the promotion applied to the unit price pretax and to the total
10277	// of the tax amounts.
10278	PromotionAmount *Amount `json:"promotionAmount,omitempty"`
10279
10280	// PromotionId: [required] ID of the promotion.
10281	PromotionId string `json:"promotionId,omitempty"`
10282
10283	// ForceSendFields is a list of field names (e.g. "PromotionAmount") to
10284	// unconditionally include in API requests. By default, fields with
10285	// empty values are omitted from API requests. However, any non-pointer,
10286	// non-interface field appearing in ForceSendFields will be sent to the
10287	// server regardless of whether the field is empty or not. This may be
10288	// used to include empty fields in Patch requests.
10289	ForceSendFields []string `json:"-"`
10290
10291	// NullFields is a list of field names (e.g. "PromotionAmount") to
10292	// include in API requests with the JSON null value. By default, fields
10293	// with empty values are omitted from API requests. However, any field
10294	// with an empty value appearing in NullFields will be sent to the
10295	// server as null. It is an error if a field in this list has a
10296	// non-empty value. This may be used to include null fields in Patch
10297	// requests.
10298	NullFields []string `json:"-"`
10299}
10300
10301func (s *Promotion) MarshalJSON() ([]byte, error) {
10302	type NoMethod Promotion
10303	raw := NoMethod(*s)
10304	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10305}
10306
10307type RateGroup struct {
10308	// ApplicableShippingLabels: A list of shipping labels defining the
10309	// products to which this rate group applies to. This is a disjunction:
10310	// only one of the labels has to match for the rate group to apply. May
10311	// only be empty for the last rate group of a service. Required.
10312	ApplicableShippingLabels []string `json:"applicableShippingLabels,omitempty"`
10313
10314	// CarrierRates: A list of carrier rates that can be referred to by
10315	// mainTable or singleValue.
10316	CarrierRates []*CarrierRate `json:"carrierRates,omitempty"`
10317
10318	// MainTable: A table defining the rate group, when singleValue is not
10319	// expressive enough. Can only be set if singleValue is not set.
10320	MainTable *Table `json:"mainTable,omitempty"`
10321
10322	// Name: Name of the rate group. Optional. If set has to be unique
10323	// within shipping service.
10324	Name string `json:"name,omitempty"`
10325
10326	// SingleValue: The value of the rate group (e.g. flat rate $10). Can
10327	// only be set if mainTable and subtables are not set.
10328	SingleValue *Value `json:"singleValue,omitempty"`
10329
10330	// Subtables: A list of subtables referred to by mainTable. Can only be
10331	// set if mainTable is set.
10332	Subtables []*Table `json:"subtables,omitempty"`
10333
10334	// ForceSendFields is a list of field names (e.g.
10335	// "ApplicableShippingLabels") to unconditionally include in API
10336	// requests. By default, fields with empty values are omitted from API
10337	// requests. However, any non-pointer, non-interface field appearing in
10338	// ForceSendFields will be sent to the server regardless of whether the
10339	// field is empty or not. This may be used to include empty fields in
10340	// Patch requests.
10341	ForceSendFields []string `json:"-"`
10342
10343	// NullFields is a list of field names (e.g. "ApplicableShippingLabels")
10344	// to include in API requests with the JSON null value. By default,
10345	// fields with empty values are omitted from API requests. However, any
10346	// field with an empty value appearing in NullFields will be sent to the
10347	// server as null. It is an error if a field in this list has a
10348	// non-empty value. This may be used to include null fields in Patch
10349	// requests.
10350	NullFields []string `json:"-"`
10351}
10352
10353func (s *RateGroup) MarshalJSON() ([]byte, error) {
10354	type NoMethod RateGroup
10355	raw := NoMethod(*s)
10356	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10357}
10358
10359type RefundReason struct {
10360	Description string `json:"description,omitempty"`
10361
10362	ReasonCode string `json:"reasonCode,omitempty"`
10363
10364	// ForceSendFields is a list of field names (e.g. "Description") to
10365	// unconditionally include in API requests. By default, fields with
10366	// empty values are omitted from API requests. However, any non-pointer,
10367	// non-interface field appearing in ForceSendFields will be sent to the
10368	// server regardless of whether the field is empty or not. This may be
10369	// used to include empty fields in Patch requests.
10370	ForceSendFields []string `json:"-"`
10371
10372	// NullFields is a list of field names (e.g. "Description") to include
10373	// in API requests with the JSON null value. By default, fields with
10374	// empty values are omitted from API requests. However, any field with
10375	// an empty value appearing in NullFields will be sent to the server as
10376	// null. It is an error if a field in this list has a non-empty value.
10377	// This may be used to include null fields in Patch requests.
10378	NullFields []string `json:"-"`
10379}
10380
10381func (s *RefundReason) MarshalJSON() ([]byte, error) {
10382	type NoMethod RefundReason
10383	raw := NoMethod(*s)
10384	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10385}
10386
10387type ReturnShipment struct {
10388	CreationDate string `json:"creationDate,omitempty"`
10389
10390	DeliveryDate string `json:"deliveryDate,omitempty"`
10391
10392	ReturnMethodType string `json:"returnMethodType,omitempty"`
10393
10394	ShipmentId string `json:"shipmentId,omitempty"`
10395
10396	ShipmentTrackingInfos []*ShipmentTrackingInfo `json:"shipmentTrackingInfos,omitempty"`
10397
10398	ShippingDate string `json:"shippingDate,omitempty"`
10399
10400	State string `json:"state,omitempty"`
10401
10402	// ForceSendFields is a list of field names (e.g. "CreationDate") to
10403	// unconditionally include in API requests. By default, fields with
10404	// empty values are omitted from API requests. However, any non-pointer,
10405	// non-interface field appearing in ForceSendFields will be sent to the
10406	// server regardless of whether the field is empty or not. This may be
10407	// used to include empty fields in Patch requests.
10408	ForceSendFields []string `json:"-"`
10409
10410	// NullFields is a list of field names (e.g. "CreationDate") to include
10411	// in API requests with the JSON null value. By default, fields with
10412	// empty values are omitted from API requests. However, any field with
10413	// an empty value appearing in NullFields will be sent to the server as
10414	// null. It is an error if a field in this list has a non-empty value.
10415	// This may be used to include null fields in Patch requests.
10416	NullFields []string `json:"-"`
10417}
10418
10419func (s *ReturnShipment) MarshalJSON() ([]byte, error) {
10420	type NoMethod ReturnShipment
10421	raw := NoMethod(*s)
10422	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10423}
10424
10425type Row struct {
10426	// Cells: The list of cells that constitute the row. Must have the same
10427	// length as columnHeaders for two-dimensional tables, a length of 1 for
10428	// one-dimensional tables. Required.
10429	Cells []*Value `json:"cells,omitempty"`
10430
10431	// ForceSendFields is a list of field names (e.g. "Cells") to
10432	// unconditionally include in API requests. By default, fields with
10433	// empty values are omitted from API requests. However, any non-pointer,
10434	// non-interface field appearing in ForceSendFields will be sent to the
10435	// server regardless of whether the field is empty or not. This may be
10436	// used to include empty fields in Patch requests.
10437	ForceSendFields []string `json:"-"`
10438
10439	// NullFields is a list of field names (e.g. "Cells") to include in API
10440	// requests with the JSON null value. By default, fields with empty
10441	// values are omitted from API requests. However, any field with an
10442	// empty value appearing in NullFields will be sent to the server as
10443	// null. It is an error if a field in this list has a non-empty value.
10444	// This may be used to include null fields in Patch requests.
10445	NullFields []string `json:"-"`
10446}
10447
10448func (s *Row) MarshalJSON() ([]byte, error) {
10449	type NoMethod Row
10450	raw := NoMethod(*s)
10451	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10452}
10453
10454type Service struct {
10455	// Active: A boolean exposing the active status of the shipping service.
10456	// Required.
10457	Active bool `json:"active,omitempty"`
10458
10459	// Currency: The CLDR code of the currency to which this service
10460	// applies. Must match that of the prices in rate groups.
10461	Currency string `json:"currency,omitempty"`
10462
10463	// DeliveryCountry: The CLDR territory code of the country to which the
10464	// service applies. Required.
10465	DeliveryCountry string `json:"deliveryCountry,omitempty"`
10466
10467	// DeliveryTime: Time spent in various aspects from order to the
10468	// delivery of the product. Required.
10469	DeliveryTime *DeliveryTime `json:"deliveryTime,omitempty"`
10470
10471	// Eligibility: Eligibility for this service.
10472	Eligibility string `json:"eligibility,omitempty"`
10473
10474	// MinimumOrderValue: Minimum order value for this service. If set,
10475	// indicates that customers will have to spend at least this amount. All
10476	// prices within a service must have the same currency.
10477	MinimumOrderValue *Price `json:"minimumOrderValue,omitempty"`
10478
10479	// Name: Free-form name of the service. Must be unique within target
10480	// account. Required.
10481	Name string `json:"name,omitempty"`
10482
10483	// RateGroups: Shipping rate group definitions. Only the last one is
10484	// allowed to have an empty applicableShippingLabels, which means
10485	// "everything else". The other applicableShippingLabels must not
10486	// overlap.
10487	RateGroups []*RateGroup `json:"rateGroups,omitempty"`
10488
10489	// ForceSendFields is a list of field names (e.g. "Active") to
10490	// unconditionally include in API requests. By default, fields with
10491	// empty values are omitted from API requests. However, any non-pointer,
10492	// non-interface field appearing in ForceSendFields will be sent to the
10493	// server regardless of whether the field is empty or not. This may be
10494	// used to include empty fields in Patch requests.
10495	ForceSendFields []string `json:"-"`
10496
10497	// NullFields is a list of field names (e.g. "Active") to include in API
10498	// requests with the JSON null value. By default, fields with empty
10499	// values are omitted from API requests. However, any field with an
10500	// empty value appearing in NullFields will be sent to the server as
10501	// null. It is an error if a field in this list has a non-empty value.
10502	// This may be used to include null fields in Patch requests.
10503	NullFields []string `json:"-"`
10504}
10505
10506func (s *Service) MarshalJSON() ([]byte, error) {
10507	type NoMethod Service
10508	raw := NoMethod(*s)
10509	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10510}
10511
10512type ShipmentInvoice struct {
10513	// InvoiceSummary: [required] Invoice summary.
10514	InvoiceSummary *InvoiceSummary `json:"invoiceSummary,omitempty"`
10515
10516	// LineItemInvoices: [required] Invoice details per line item.
10517	LineItemInvoices []*ShipmentInvoiceLineItemInvoice `json:"lineItemInvoices,omitempty"`
10518
10519	// ShipmentGroupId: [required] ID of the shipment group. It is assigned
10520	// by the merchant in the shipLineItems method and is used to group
10521	// multiple line items that have the same kind of shipping charges.
10522	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
10523
10524	// ForceSendFields is a list of field names (e.g. "InvoiceSummary") to
10525	// unconditionally include in API requests. By default, fields with
10526	// empty values are omitted from API requests. However, any non-pointer,
10527	// non-interface field appearing in ForceSendFields will be sent to the
10528	// server regardless of whether the field is empty or not. This may be
10529	// used to include empty fields in Patch requests.
10530	ForceSendFields []string `json:"-"`
10531
10532	// NullFields is a list of field names (e.g. "InvoiceSummary") to
10533	// include in API requests with the JSON null value. By default, fields
10534	// with empty values are omitted from API requests. However, any field
10535	// with an empty value appearing in NullFields will be sent to the
10536	// server as null. It is an error if a field in this list has a
10537	// non-empty value. This may be used to include null fields in Patch
10538	// requests.
10539	NullFields []string `json:"-"`
10540}
10541
10542func (s *ShipmentInvoice) MarshalJSON() ([]byte, error) {
10543	type NoMethod ShipmentInvoice
10544	raw := NoMethod(*s)
10545	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10546}
10547
10548type ShipmentInvoiceLineItemInvoice struct {
10549	// LineItemId: ID of the line item. Either lineItemId or productId must
10550	// be set.
10551	LineItemId string `json:"lineItemId,omitempty"`
10552
10553	// ProductId: ID of the product. This is the REST ID used in the
10554	// products service. Either lineItemId or productId must be set.
10555	ProductId string `json:"productId,omitempty"`
10556
10557	// ShipmentUnitIds: [required] The shipment unit ID is assigned by the
10558	// merchant and defines individual quantities within a line item. The
10559	// same ID can be assigned to units that are the same while units that
10560	// differ must be assigned a different ID (for example: free or
10561	// promotional units).
10562	ShipmentUnitIds []string `json:"shipmentUnitIds,omitempty"`
10563
10564	// UnitInvoice: [required] Invoice details for a single unit.
10565	UnitInvoice *UnitInvoice `json:"unitInvoice,omitempty"`
10566
10567	// ForceSendFields is a list of field names (e.g. "LineItemId") to
10568	// unconditionally include in API requests. By default, fields with
10569	// empty values are omitted from API requests. However, any non-pointer,
10570	// non-interface field appearing in ForceSendFields will be sent to the
10571	// server regardless of whether the field is empty or not. This may be
10572	// used to include empty fields in Patch requests.
10573	ForceSendFields []string `json:"-"`
10574
10575	// NullFields is a list of field names (e.g. "LineItemId") to include in
10576	// API requests with the JSON null value. By default, fields with empty
10577	// values are omitted from API requests. However, any field with an
10578	// empty value appearing in NullFields will be sent to the server as
10579	// null. It is an error if a field in this list has a non-empty value.
10580	// This may be used to include null fields in Patch requests.
10581	NullFields []string `json:"-"`
10582}
10583
10584func (s *ShipmentInvoiceLineItemInvoice) MarshalJSON() ([]byte, error) {
10585	type NoMethod ShipmentInvoiceLineItemInvoice
10586	raw := NoMethod(*s)
10587	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10588}
10589
10590type ShipmentTrackingInfo struct {
10591	Carrier string `json:"carrier,omitempty"`
10592
10593	TrackingNumber string `json:"trackingNumber,omitempty"`
10594
10595	// ForceSendFields is a list of field names (e.g. "Carrier") to
10596	// unconditionally include in API requests. By default, fields with
10597	// empty values are omitted from API requests. However, any non-pointer,
10598	// non-interface field appearing in ForceSendFields will be sent to the
10599	// server regardless of whether the field is empty or not. This may be
10600	// used to include empty fields in Patch requests.
10601	ForceSendFields []string `json:"-"`
10602
10603	// NullFields is a list of field names (e.g. "Carrier") to include in
10604	// API requests with the JSON null value. By default, fields with empty
10605	// values are omitted from API requests. However, any field with an
10606	// empty value appearing in NullFields will be sent to the server as
10607	// null. It is an error if a field in this list has a non-empty value.
10608	// This may be used to include null fields in Patch requests.
10609	NullFields []string `json:"-"`
10610}
10611
10612func (s *ShipmentTrackingInfo) MarshalJSON() ([]byte, error) {
10613	type NoMethod ShipmentTrackingInfo
10614	raw := NoMethod(*s)
10615	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10616}
10617
10618// ShippingSettings: The merchant account's shipping settings. All
10619// methods except getsupportedcarriers and getsupportedholidays require
10620// the admin role.
10621type ShippingSettings struct {
10622	// AccountId: The ID of the account to which these account shipping
10623	// settings belong. Ignored upon update, always present in get request
10624	// responses.
10625	AccountId uint64 `json:"accountId,omitempty,string"`
10626
10627	// PostalCodeGroups: A list of postal code groups that can be referred
10628	// to in services. Optional.
10629	PostalCodeGroups []*PostalCodeGroup `json:"postalCodeGroups,omitempty"`
10630
10631	// Services: The target account's list of services. Optional.
10632	Services []*Service `json:"services,omitempty"`
10633
10634	// ServerResponse contains the HTTP response code and headers from the
10635	// server.
10636	googleapi.ServerResponse `json:"-"`
10637
10638	// ForceSendFields is a list of field names (e.g. "AccountId") to
10639	// unconditionally include in API requests. By default, fields with
10640	// empty values are omitted from API requests. However, any non-pointer,
10641	// non-interface field appearing in ForceSendFields will be sent to the
10642	// server regardless of whether the field is empty or not. This may be
10643	// used to include empty fields in Patch requests.
10644	ForceSendFields []string `json:"-"`
10645
10646	// NullFields is a list of field names (e.g. "AccountId") to include in
10647	// API requests with the JSON null value. By default, fields with empty
10648	// values are omitted from API requests. However, any field with an
10649	// empty value appearing in NullFields will be sent to the server as
10650	// null. It is an error if a field in this list has a non-empty value.
10651	// This may be used to include null fields in Patch requests.
10652	NullFields []string `json:"-"`
10653}
10654
10655func (s *ShippingSettings) MarshalJSON() ([]byte, error) {
10656	type NoMethod ShippingSettings
10657	raw := NoMethod(*s)
10658	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10659}
10660
10661type ShippingsettingsCustomBatchRequest struct {
10662	// Entries: The request entries to be processed in the batch.
10663	Entries []*ShippingsettingsCustomBatchRequestEntry `json:"entries,omitempty"`
10664
10665	// ForceSendFields is a list of field names (e.g. "Entries") to
10666	// unconditionally include in API requests. By default, fields with
10667	// empty values are omitted from API requests. However, any non-pointer,
10668	// non-interface field appearing in ForceSendFields will be sent to the
10669	// server regardless of whether the field is empty or not. This may be
10670	// used to include empty fields in Patch requests.
10671	ForceSendFields []string `json:"-"`
10672
10673	// NullFields is a list of field names (e.g. "Entries") to include in
10674	// API requests with the JSON null value. By default, fields with empty
10675	// values are omitted from API requests. However, any field with an
10676	// empty value appearing in NullFields will be sent to the server as
10677	// null. It is an error if a field in this list has a non-empty value.
10678	// This may be used to include null fields in Patch requests.
10679	NullFields []string `json:"-"`
10680}
10681
10682func (s *ShippingsettingsCustomBatchRequest) MarshalJSON() ([]byte, error) {
10683	type NoMethod ShippingsettingsCustomBatchRequest
10684	raw := NoMethod(*s)
10685	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10686}
10687
10688// ShippingsettingsCustomBatchRequestEntry: A batch entry encoding a
10689// single non-batch shippingsettings request.
10690type ShippingsettingsCustomBatchRequestEntry struct {
10691	// AccountId: The ID of the account for which to get/update account
10692	// shipping settings.
10693	AccountId uint64 `json:"accountId,omitempty,string"`
10694
10695	// BatchId: An entry ID, unique within the batch request.
10696	BatchId int64 `json:"batchId,omitempty"`
10697
10698	// MerchantId: The ID of the managing account.
10699	MerchantId uint64 `json:"merchantId,omitempty,string"`
10700
10701	Method string `json:"method,omitempty"`
10702
10703	// ShippingSettings: The account shipping settings to update. Only
10704	// defined if the method is update.
10705	ShippingSettings *ShippingSettings `json:"shippingSettings,omitempty"`
10706
10707	// ForceSendFields is a list of field names (e.g. "AccountId") to
10708	// unconditionally include in API requests. By default, fields with
10709	// empty values are omitted from API requests. However, any non-pointer,
10710	// non-interface field appearing in ForceSendFields will be sent to the
10711	// server regardless of whether the field is empty or not. This may be
10712	// used to include empty fields in Patch requests.
10713	ForceSendFields []string `json:"-"`
10714
10715	// NullFields is a list of field names (e.g. "AccountId") to include in
10716	// API requests with the JSON null value. By default, fields with empty
10717	// values are omitted from API requests. However, any field with an
10718	// empty value appearing in NullFields will be sent to the server as
10719	// null. It is an error if a field in this list has a non-empty value.
10720	// This may be used to include null fields in Patch requests.
10721	NullFields []string `json:"-"`
10722}
10723
10724func (s *ShippingsettingsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
10725	type NoMethod ShippingsettingsCustomBatchRequestEntry
10726	raw := NoMethod(*s)
10727	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10728}
10729
10730type ShippingsettingsCustomBatchResponse struct {
10731	// Entries: The result of the execution of the batch requests.
10732	Entries []*ShippingsettingsCustomBatchResponseEntry `json:"entries,omitempty"`
10733
10734	// Kind: Identifies what kind of resource this is. Value: the fixed
10735	// string "content#shippingsettingsCustomBatchResponse".
10736	Kind string `json:"kind,omitempty"`
10737
10738	// ServerResponse contains the HTTP response code and headers from the
10739	// server.
10740	googleapi.ServerResponse `json:"-"`
10741
10742	// ForceSendFields is a list of field names (e.g. "Entries") to
10743	// unconditionally include in API requests. By default, fields with
10744	// empty values are omitted from API requests. However, any non-pointer,
10745	// non-interface field appearing in ForceSendFields will be sent to the
10746	// server regardless of whether the field is empty or not. This may be
10747	// used to include empty fields in Patch requests.
10748	ForceSendFields []string `json:"-"`
10749
10750	// NullFields is a list of field names (e.g. "Entries") to include in
10751	// API requests with the JSON null value. By default, fields with empty
10752	// values are omitted from API requests. However, any field with an
10753	// empty value appearing in NullFields will be sent to the server as
10754	// null. It is an error if a field in this list has a non-empty value.
10755	// This may be used to include null fields in Patch requests.
10756	NullFields []string `json:"-"`
10757}
10758
10759func (s *ShippingsettingsCustomBatchResponse) MarshalJSON() ([]byte, error) {
10760	type NoMethod ShippingsettingsCustomBatchResponse
10761	raw := NoMethod(*s)
10762	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10763}
10764
10765// ShippingsettingsCustomBatchResponseEntry: A batch entry encoding a
10766// single non-batch shipping settings response.
10767type ShippingsettingsCustomBatchResponseEntry struct {
10768	// BatchId: The ID of the request entry to which this entry responds.
10769	BatchId int64 `json:"batchId,omitempty"`
10770
10771	// Errors: A list of errors defined if, and only if, the request failed.
10772	Errors *Errors `json:"errors,omitempty"`
10773
10774	// Kind: Identifies what kind of resource this is. Value: the fixed
10775	// string "content#shippingsettingsCustomBatchResponseEntry".
10776	Kind string `json:"kind,omitempty"`
10777
10778	// ShippingSettings: The retrieved or updated account shipping settings.
10779	ShippingSettings *ShippingSettings `json:"shippingSettings,omitempty"`
10780
10781	// ForceSendFields is a list of field names (e.g. "BatchId") to
10782	// unconditionally include in API requests. By default, fields with
10783	// empty values are omitted from API requests. However, any non-pointer,
10784	// non-interface field appearing in ForceSendFields will be sent to the
10785	// server regardless of whether the field is empty or not. This may be
10786	// used to include empty fields in Patch requests.
10787	ForceSendFields []string `json:"-"`
10788
10789	// NullFields is a list of field names (e.g. "BatchId") to include in
10790	// API requests with the JSON null value. By default, fields with empty
10791	// values are omitted from API requests. However, any field with an
10792	// empty value appearing in NullFields will be sent to the server as
10793	// null. It is an error if a field in this list has a non-empty value.
10794	// This may be used to include null fields in Patch requests.
10795	NullFields []string `json:"-"`
10796}
10797
10798func (s *ShippingsettingsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
10799	type NoMethod ShippingsettingsCustomBatchResponseEntry
10800	raw := NoMethod(*s)
10801	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10802}
10803
10804type ShippingsettingsGetSupportedCarriersResponse struct {
10805	// Carriers: A list of supported carriers. May be empty.
10806	Carriers []*CarriersCarrier `json:"carriers,omitempty"`
10807
10808	// Kind: Identifies what kind of resource this is. Value: the fixed
10809	// string "content#shippingsettingsGetSupportedCarriersResponse".
10810	Kind string `json:"kind,omitempty"`
10811
10812	// ServerResponse contains the HTTP response code and headers from the
10813	// server.
10814	googleapi.ServerResponse `json:"-"`
10815
10816	// ForceSendFields is a list of field names (e.g. "Carriers") to
10817	// unconditionally include in API requests. By default, fields with
10818	// empty values are omitted from API requests. However, any non-pointer,
10819	// non-interface field appearing in ForceSendFields will be sent to the
10820	// server regardless of whether the field is empty or not. This may be
10821	// used to include empty fields in Patch requests.
10822	ForceSendFields []string `json:"-"`
10823
10824	// NullFields is a list of field names (e.g. "Carriers") to include in
10825	// API requests with the JSON null value. By default, fields with empty
10826	// values are omitted from API requests. However, any field with an
10827	// empty value appearing in NullFields will be sent to the server as
10828	// null. It is an error if a field in this list has a non-empty value.
10829	// This may be used to include null fields in Patch requests.
10830	NullFields []string `json:"-"`
10831}
10832
10833func (s *ShippingsettingsGetSupportedCarriersResponse) MarshalJSON() ([]byte, error) {
10834	type NoMethod ShippingsettingsGetSupportedCarriersResponse
10835	raw := NoMethod(*s)
10836	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10837}
10838
10839type ShippingsettingsGetSupportedHolidaysResponse struct {
10840	// Holidays: A list of holidays applicable for delivery guarantees. May
10841	// be empty.
10842	Holidays []*HolidaysHoliday `json:"holidays,omitempty"`
10843
10844	// Kind: Identifies what kind of resource this is. Value: the fixed
10845	// string "content#shippingsettingsGetSupportedHolidaysResponse".
10846	Kind string `json:"kind,omitempty"`
10847
10848	// ServerResponse contains the HTTP response code and headers from the
10849	// server.
10850	googleapi.ServerResponse `json:"-"`
10851
10852	// ForceSendFields is a list of field names (e.g. "Holidays") to
10853	// unconditionally include in API requests. By default, fields with
10854	// empty values are omitted from API requests. However, any non-pointer,
10855	// non-interface field appearing in ForceSendFields will be sent to the
10856	// server regardless of whether the field is empty or not. This may be
10857	// used to include empty fields in Patch requests.
10858	ForceSendFields []string `json:"-"`
10859
10860	// NullFields is a list of field names (e.g. "Holidays") to include in
10861	// API requests with the JSON null value. By default, fields with empty
10862	// values are omitted from API requests. However, any field with an
10863	// empty value appearing in NullFields will be sent to the server as
10864	// null. It is an error if a field in this list has a non-empty value.
10865	// This may be used to include null fields in Patch requests.
10866	NullFields []string `json:"-"`
10867}
10868
10869func (s *ShippingsettingsGetSupportedHolidaysResponse) MarshalJSON() ([]byte, error) {
10870	type NoMethod ShippingsettingsGetSupportedHolidaysResponse
10871	raw := NoMethod(*s)
10872	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10873}
10874
10875type ShippingsettingsListResponse struct {
10876	// Kind: Identifies what kind of resource this is. Value: the fixed
10877	// string "content#shippingsettingsListResponse".
10878	Kind string `json:"kind,omitempty"`
10879
10880	// NextPageToken: The token for the retrieval of the next page of
10881	// shipping settings.
10882	NextPageToken string `json:"nextPageToken,omitempty"`
10883
10884	Resources []*ShippingSettings `json:"resources,omitempty"`
10885
10886	// ServerResponse contains the HTTP response code and headers from the
10887	// server.
10888	googleapi.ServerResponse `json:"-"`
10889
10890	// ForceSendFields is a list of field names (e.g. "Kind") to
10891	// unconditionally include in API requests. By default, fields with
10892	// empty values are omitted from API requests. However, any non-pointer,
10893	// non-interface field appearing in ForceSendFields will be sent to the
10894	// server regardless of whether the field is empty or not. This may be
10895	// used to include empty fields in Patch requests.
10896	ForceSendFields []string `json:"-"`
10897
10898	// NullFields is a list of field names (e.g. "Kind") to include in API
10899	// requests with the JSON null value. By default, fields with empty
10900	// values are omitted from API requests. However, any field with an
10901	// empty value appearing in NullFields will be sent to the server as
10902	// null. It is an error if a field in this list has a non-empty value.
10903	// This may be used to include null fields in Patch requests.
10904	NullFields []string `json:"-"`
10905}
10906
10907func (s *ShippingsettingsListResponse) MarshalJSON() ([]byte, error) {
10908	type NoMethod ShippingsettingsListResponse
10909	raw := NoMethod(*s)
10910	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10911}
10912
10913type Table struct {
10914	// ColumnHeaders: Headers of the table's columns. Optional: if not set
10915	// then the table has only one dimension.
10916	ColumnHeaders *Headers `json:"columnHeaders,omitempty"`
10917
10918	// Name: Name of the table. Required for subtables, ignored for the main
10919	// table.
10920	Name string `json:"name,omitempty"`
10921
10922	// RowHeaders: Headers of the table's rows. Required.
10923	RowHeaders *Headers `json:"rowHeaders,omitempty"`
10924
10925	// Rows: The list of rows that constitute the table. Must have the same
10926	// length as rowHeaders. Required.
10927	Rows []*Row `json:"rows,omitempty"`
10928
10929	// ForceSendFields is a list of field names (e.g. "ColumnHeaders") to
10930	// unconditionally include in API requests. By default, fields with
10931	// empty values are omitted from API requests. However, any non-pointer,
10932	// non-interface field appearing in ForceSendFields will be sent to the
10933	// server regardless of whether the field is empty or not. This may be
10934	// used to include empty fields in Patch requests.
10935	ForceSendFields []string `json:"-"`
10936
10937	// NullFields is a list of field names (e.g. "ColumnHeaders") to include
10938	// in API requests with the JSON null value. By default, fields with
10939	// empty values are omitted from API requests. However, any field with
10940	// an empty value appearing in NullFields will be sent to the server as
10941	// null. It is an error if a field in this list has a non-empty value.
10942	// This may be used to include null fields in Patch requests.
10943	NullFields []string `json:"-"`
10944}
10945
10946func (s *Table) MarshalJSON() ([]byte, error) {
10947	type NoMethod Table
10948	raw := NoMethod(*s)
10949	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10950}
10951
10952type TestOrder struct {
10953	// Customer: The details of the customer who placed the order.
10954	Customer *TestOrderCustomer `json:"customer,omitempty"`
10955
10956	// EnableOrderinvoices: Whether the orderinvoices service should support
10957	// this order.
10958	EnableOrderinvoices bool `json:"enableOrderinvoices,omitempty"`
10959
10960	// Kind: Identifies what kind of resource this is. Value: the fixed
10961	// string "content#testOrder".
10962	Kind string `json:"kind,omitempty"`
10963
10964	// LineItems: Line items that are ordered. At least one line item must
10965	// be provided.
10966	LineItems []*TestOrderLineItem `json:"lineItems,omitempty"`
10967
10968	// NotificationMode: Determines if test order must be pulled by merchant
10969	// or pushed to merchant via push integration.
10970	NotificationMode string `json:"notificationMode,omitempty"`
10971
10972	// PaymentMethod: The details of the payment method.
10973	PaymentMethod *TestOrderPaymentMethod `json:"paymentMethod,omitempty"`
10974
10975	// PredefinedDeliveryAddress: Identifier of one of the predefined
10976	// delivery addresses for the delivery.
10977	PredefinedDeliveryAddress string `json:"predefinedDeliveryAddress,omitempty"`
10978
10979	// Promotions: Deprecated. Ignored if provided.
10980	Promotions []*OrderLegacyPromotion `json:"promotions,omitempty"`
10981
10982	// ShippingCost: The price of shipping for all items. Shipping tax is
10983	// automatically calculated for MFL orders. For non-MFL orders, tax
10984	// settings from Merchant Center are applied. Note that shipping is not
10985	// taxed in certain states.
10986	ShippingCost *Price `json:"shippingCost,omitempty"`
10987
10988	// ShippingCostTax: Deprecated. Ignored if provided.
10989	ShippingCostTax *Price `json:"shippingCostTax,omitempty"`
10990
10991	// ShippingOption: The requested shipping option.
10992	ShippingOption string `json:"shippingOption,omitempty"`
10993
10994	// ForceSendFields is a list of field names (e.g. "Customer") to
10995	// unconditionally include in API requests. By default, fields with
10996	// empty values are omitted from API requests. However, any non-pointer,
10997	// non-interface field appearing in ForceSendFields will be sent to the
10998	// server regardless of whether the field is empty or not. This may be
10999	// used to include empty fields in Patch requests.
11000	ForceSendFields []string `json:"-"`
11001
11002	// NullFields is a list of field names (e.g. "Customer") to include in
11003	// API requests with the JSON null value. By default, fields with empty
11004	// values are omitted from API requests. However, any field with an
11005	// empty value appearing in NullFields will be sent to the server as
11006	// null. It is an error if a field in this list has a non-empty value.
11007	// This may be used to include null fields in Patch requests.
11008	NullFields []string `json:"-"`
11009}
11010
11011func (s *TestOrder) MarshalJSON() ([]byte, error) {
11012	type NoMethod TestOrder
11013	raw := NoMethod(*s)
11014	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11015}
11016
11017type TestOrderCustomer struct {
11018	// Email: Email address of the customer.
11019	Email string `json:"email,omitempty"`
11020
11021	// ExplicitMarketingPreference: Deprecated. Please use
11022	// marketingRightsInfo instead.
11023	ExplicitMarketingPreference bool `json:"explicitMarketingPreference,omitempty"`
11024
11025	// FullName: Full name of the customer.
11026	FullName string `json:"fullName,omitempty"`
11027
11028	// MarketingRightsInfo: Customer's marketing preferences.
11029	MarketingRightsInfo *TestOrderCustomerMarketingRightsInfo `json:"marketingRightsInfo,omitempty"`
11030
11031	// ForceSendFields is a list of field names (e.g. "Email") to
11032	// unconditionally include in API requests. By default, fields with
11033	// empty values are omitted from API requests. However, any non-pointer,
11034	// non-interface field appearing in ForceSendFields will be sent to the
11035	// server regardless of whether the field is empty or not. This may be
11036	// used to include empty fields in Patch requests.
11037	ForceSendFields []string `json:"-"`
11038
11039	// NullFields is a list of field names (e.g. "Email") to include in API
11040	// requests with the JSON null value. By default, fields with empty
11041	// values are omitted from API requests. However, any field with an
11042	// empty value appearing in NullFields will be sent to the server as
11043	// null. It is an error if a field in this list has a non-empty value.
11044	// This may be used to include null fields in Patch requests.
11045	NullFields []string `json:"-"`
11046}
11047
11048func (s *TestOrderCustomer) MarshalJSON() ([]byte, error) {
11049	type NoMethod TestOrderCustomer
11050	raw := NoMethod(*s)
11051	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11052}
11053
11054type TestOrderCustomerMarketingRightsInfo struct {
11055	// ExplicitMarketingPreference: Last know user use selection regards
11056	// marketing preferences. In certain cases selection might not be known,
11057	// so this field would be empty.
11058	ExplicitMarketingPreference string `json:"explicitMarketingPreference,omitempty"`
11059
11060	// LastUpdatedTimestamp: Timestamp when last time marketing preference
11061	// was updated. Could be empty, if user wasn't offered a selection yet.
11062	LastUpdatedTimestamp string `json:"lastUpdatedTimestamp,omitempty"`
11063
11064	// ForceSendFields is a list of field names (e.g.
11065	// "ExplicitMarketingPreference") to unconditionally include in API
11066	// requests. By default, fields with empty values are omitted from API
11067	// requests. However, any non-pointer, non-interface field appearing in
11068	// ForceSendFields will be sent to the server regardless of whether the
11069	// field is empty or not. This may be used to include empty fields in
11070	// Patch requests.
11071	ForceSendFields []string `json:"-"`
11072
11073	// NullFields is a list of field names (e.g.
11074	// "ExplicitMarketingPreference") to include in API requests with the
11075	// JSON null value. By default, fields with empty values are omitted
11076	// from API requests. However, any field with an empty value appearing
11077	// in NullFields will be sent to the server as null. It is an error if a
11078	// field in this list has a non-empty value. This may be used to include
11079	// null fields in Patch requests.
11080	NullFields []string `json:"-"`
11081}
11082
11083func (s *TestOrderCustomerMarketingRightsInfo) MarshalJSON() ([]byte, error) {
11084	type NoMethod TestOrderCustomerMarketingRightsInfo
11085	raw := NoMethod(*s)
11086	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11087}
11088
11089type TestOrderLineItem struct {
11090	// Product: Product data from the time of the order placement.
11091	Product *TestOrderLineItemProduct `json:"product,omitempty"`
11092
11093	// QuantityOrdered: Number of items ordered.
11094	QuantityOrdered int64 `json:"quantityOrdered,omitempty"`
11095
11096	// ReturnInfo: Details of the return policy for the line item.
11097	ReturnInfo *OrderLineItemReturnInfo `json:"returnInfo,omitempty"`
11098
11099	// ShippingDetails: Details of the requested shipping for the line item.
11100	ShippingDetails *OrderLineItemShippingDetails `json:"shippingDetails,omitempty"`
11101
11102	// UnitTax: Deprecated. Ignored if provided.
11103	UnitTax *Price `json:"unitTax,omitempty"`
11104
11105	// ForceSendFields is a list of field names (e.g. "Product") to
11106	// unconditionally include in API requests. By default, fields with
11107	// empty values are omitted from API requests. However, any non-pointer,
11108	// non-interface field appearing in ForceSendFields will be sent to the
11109	// server regardless of whether the field is empty or not. This may be
11110	// used to include empty fields in Patch requests.
11111	ForceSendFields []string `json:"-"`
11112
11113	// NullFields is a list of field names (e.g. "Product") to include in
11114	// API requests with the JSON null value. By default, fields with empty
11115	// values are omitted from API requests. However, any field with an
11116	// empty value appearing in NullFields will be sent to the server as
11117	// null. It is an error if a field in this list has a non-empty value.
11118	// This may be used to include null fields in Patch requests.
11119	NullFields []string `json:"-"`
11120}
11121
11122func (s *TestOrderLineItem) MarshalJSON() ([]byte, error) {
11123	type NoMethod TestOrderLineItem
11124	raw := NoMethod(*s)
11125	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11126}
11127
11128type TestOrderLineItemProduct struct {
11129	// Brand: Brand of the item.
11130	Brand string `json:"brand,omitempty"`
11131
11132	// Channel: Deprecated.
11133	Channel string `json:"channel,omitempty"`
11134
11135	// Condition: Condition or state of the item.
11136	Condition string `json:"condition,omitempty"`
11137
11138	// ContentLanguage: The two-letter ISO 639-1 language code for the item.
11139	ContentLanguage string `json:"contentLanguage,omitempty"`
11140
11141	// Fees: Fees for the item. Optional.
11142	Fees []*OrderLineItemProductFee `json:"fees,omitempty"`
11143
11144	// Gtin: Global Trade Item Number (GTIN) of the item. Optional.
11145	Gtin string `json:"gtin,omitempty"`
11146
11147	// ImageLink: URL of an image of the item.
11148	ImageLink string `json:"imageLink,omitempty"`
11149
11150	// ItemGroupId: Shared identifier for all variants of the same product.
11151	// Optional.
11152	ItemGroupId string `json:"itemGroupId,omitempty"`
11153
11154	// Mpn: Manufacturer Part Number (MPN) of the item. Optional.
11155	Mpn string `json:"mpn,omitempty"`
11156
11157	// OfferId: An identifier of the item.
11158	OfferId string `json:"offerId,omitempty"`
11159
11160	// Price: The price for the product. Tax is automatically calculated for
11161	// MFL orders. For non-MFL orders, tax settings from Merchant Center are
11162	// applied.
11163	Price *Price `json:"price,omitempty"`
11164
11165	// TargetCountry: The CLDR territory code of the target country of the
11166	// product.
11167	TargetCountry string `json:"targetCountry,omitempty"`
11168
11169	// Title: The title of the product.
11170	Title string `json:"title,omitempty"`
11171
11172	// VariantAttributes: Variant attributes for the item. Optional.
11173	VariantAttributes []*OrderLineItemProductVariantAttribute `json:"variantAttributes,omitempty"`
11174
11175	// ForceSendFields is a list of field names (e.g. "Brand") to
11176	// unconditionally include in API requests. By default, fields with
11177	// empty values are omitted from API requests. However, any non-pointer,
11178	// non-interface field appearing in ForceSendFields will be sent to the
11179	// server regardless of whether the field is empty or not. This may be
11180	// used to include empty fields in Patch requests.
11181	ForceSendFields []string `json:"-"`
11182
11183	// NullFields is a list of field names (e.g. "Brand") to include in API
11184	// requests with the JSON null value. By default, fields with empty
11185	// values are omitted from API requests. However, any field with an
11186	// empty value appearing in NullFields will be sent to the server as
11187	// null. It is an error if a field in this list has a non-empty value.
11188	// This may be used to include null fields in Patch requests.
11189	NullFields []string `json:"-"`
11190}
11191
11192func (s *TestOrderLineItemProduct) MarshalJSON() ([]byte, error) {
11193	type NoMethod TestOrderLineItemProduct
11194	raw := NoMethod(*s)
11195	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11196}
11197
11198type TestOrderPaymentMethod struct {
11199	// ExpirationMonth: The card expiration month (January = 1, February = 2
11200	// etc.).
11201	ExpirationMonth int64 `json:"expirationMonth,omitempty"`
11202
11203	// ExpirationYear: The card expiration year (4-digit, e.g. 2015).
11204	ExpirationYear int64 `json:"expirationYear,omitempty"`
11205
11206	// LastFourDigits: The last four digits of the card number.
11207	LastFourDigits string `json:"lastFourDigits,omitempty"`
11208
11209	// PredefinedBillingAddress: The billing address.
11210	PredefinedBillingAddress string `json:"predefinedBillingAddress,omitempty"`
11211
11212	// Type: The type of instrument. Note that real orders might have
11213	// different values than the four values accepted by createTestOrder.
11214	Type string `json:"type,omitempty"`
11215
11216	// ForceSendFields is a list of field names (e.g. "ExpirationMonth") to
11217	// unconditionally include in API requests. By default, fields with
11218	// empty values are omitted from API requests. However, any non-pointer,
11219	// non-interface field appearing in ForceSendFields will be sent to the
11220	// server regardless of whether the field is empty or not. This may be
11221	// used to include empty fields in Patch requests.
11222	ForceSendFields []string `json:"-"`
11223
11224	// NullFields is a list of field names (e.g. "ExpirationMonth") to
11225	// include in API requests with the JSON null value. By default, fields
11226	// with empty values are omitted from API requests. However, any field
11227	// with an empty value appearing in NullFields will be sent to the
11228	// server as null. It is an error if a field in this list has a
11229	// non-empty value. This may be used to include null fields in Patch
11230	// requests.
11231	NullFields []string `json:"-"`
11232}
11233
11234func (s *TestOrderPaymentMethod) MarshalJSON() ([]byte, error) {
11235	type NoMethod TestOrderPaymentMethod
11236	raw := NoMethod(*s)
11237	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11238}
11239
11240type TransitTable struct {
11241	// PostalCodeGroupNames: A list of postal group names. The last value
11242	// can be "all other locations". Example: ["zone 1", "zone 2", "all
11243	// other locations"]. The referred postal code groups must match the
11244	// delivery country of the service.
11245	PostalCodeGroupNames []string `json:"postalCodeGroupNames,omitempty"`
11246
11247	Rows []*TransitTableTransitTimeRow `json:"rows,omitempty"`
11248
11249	// TransitTimeLabels: A list of transit time labels. The last value can
11250	// be "all other labels". Example: ["food", "electronics", "all other
11251	// labels"].
11252	TransitTimeLabels []string `json:"transitTimeLabels,omitempty"`
11253
11254	// ForceSendFields is a list of field names (e.g.
11255	// "PostalCodeGroupNames") to unconditionally include in API requests.
11256	// By default, fields with empty values are omitted from API requests.
11257	// However, any non-pointer, non-interface field appearing in
11258	// ForceSendFields will be sent to the server regardless of whether the
11259	// field is empty or not. This may be used to include empty fields in
11260	// Patch requests.
11261	ForceSendFields []string `json:"-"`
11262
11263	// NullFields is a list of field names (e.g. "PostalCodeGroupNames") to
11264	// include in API requests with the JSON null value. By default, fields
11265	// with empty values are omitted from API requests. However, any field
11266	// with an empty value appearing in NullFields will be sent to the
11267	// server as null. It is an error if a field in this list has a
11268	// non-empty value. This may be used to include null fields in Patch
11269	// requests.
11270	NullFields []string `json:"-"`
11271}
11272
11273func (s *TransitTable) MarshalJSON() ([]byte, error) {
11274	type NoMethod TransitTable
11275	raw := NoMethod(*s)
11276	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11277}
11278
11279type TransitTableTransitTimeRow struct {
11280	Values []*TransitTableTransitTimeRowTransitTimeValue `json:"values,omitempty"`
11281
11282	// ForceSendFields is a list of field names (e.g. "Values") to
11283	// unconditionally include in API requests. By default, fields with
11284	// empty values are omitted from API requests. However, any non-pointer,
11285	// non-interface field appearing in ForceSendFields will be sent to the
11286	// server regardless of whether the field is empty or not. This may be
11287	// used to include empty fields in Patch requests.
11288	ForceSendFields []string `json:"-"`
11289
11290	// NullFields is a list of field names (e.g. "Values") to include in API
11291	// requests with the JSON null value. By default, fields with empty
11292	// values are omitted from API requests. However, any field with an
11293	// empty value appearing in NullFields will be sent to the server as
11294	// null. It is an error if a field in this list has a non-empty value.
11295	// This may be used to include null fields in Patch requests.
11296	NullFields []string `json:"-"`
11297}
11298
11299func (s *TransitTableTransitTimeRow) MarshalJSON() ([]byte, error) {
11300	type NoMethod TransitTableTransitTimeRow
11301	raw := NoMethod(*s)
11302	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11303}
11304
11305type TransitTableTransitTimeRowTransitTimeValue struct {
11306	// MaxTransitTimeInDays: Must be greater than or equal to
11307	// minTransitTimeInDays.
11308	MaxTransitTimeInDays int64 `json:"maxTransitTimeInDays,omitempty"`
11309
11310	// MinTransitTimeInDays: Transit time range (min-max) in business days.
11311	// 0 means same day delivery, 1 means next day delivery.
11312	MinTransitTimeInDays int64 `json:"minTransitTimeInDays,omitempty"`
11313
11314	// ForceSendFields is a list of field names (e.g.
11315	// "MaxTransitTimeInDays") to unconditionally include in API requests.
11316	// By default, fields with empty values are omitted from API requests.
11317	// However, any non-pointer, non-interface field appearing in
11318	// ForceSendFields will be sent to the server regardless of whether the
11319	// field is empty or not. This may be used to include empty fields in
11320	// Patch requests.
11321	ForceSendFields []string `json:"-"`
11322
11323	// NullFields is a list of field names (e.g. "MaxTransitTimeInDays") to
11324	// include in API requests with the JSON null value. By default, fields
11325	// with empty values are omitted from API requests. However, any field
11326	// with an empty value appearing in NullFields will be sent to the
11327	// server as null. It is an error if a field in this list has a
11328	// non-empty value. This may be used to include null fields in Patch
11329	// requests.
11330	NullFields []string `json:"-"`
11331}
11332
11333func (s *TransitTableTransitTimeRowTransitTimeValue) MarshalJSON() ([]byte, error) {
11334	type NoMethod TransitTableTransitTimeRowTransitTimeValue
11335	raw := NoMethod(*s)
11336	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11337}
11338
11339type UnitInvoice struct {
11340	// AdditionalCharges: Additional charges for a unit, e.g. shipping
11341	// costs.
11342	AdditionalCharges []*UnitInvoiceAdditionalCharge `json:"additionalCharges,omitempty"`
11343
11344	// Promotions: Deprecated.
11345	Promotions []*Promotion `json:"promotions,omitempty"`
11346
11347	// UnitPricePretax: [required] Price of the unit, before applying taxes.
11348	UnitPricePretax *Price `json:"unitPricePretax,omitempty"`
11349
11350	// UnitPriceTaxes: Tax amounts to apply to the unit price.
11351	UnitPriceTaxes []*UnitInvoiceTaxLine `json:"unitPriceTaxes,omitempty"`
11352
11353	// ForceSendFields is a list of field names (e.g. "AdditionalCharges")
11354	// to unconditionally include in API requests. By default, fields with
11355	// empty values are omitted from API requests. However, any non-pointer,
11356	// non-interface field appearing in ForceSendFields will be sent to the
11357	// server regardless of whether the field is empty or not. This may be
11358	// used to include empty fields in Patch requests.
11359	ForceSendFields []string `json:"-"`
11360
11361	// NullFields is a list of field names (e.g. "AdditionalCharges") to
11362	// include in API requests with the JSON null value. By default, fields
11363	// with empty values are omitted from API requests. However, any field
11364	// with an empty value appearing in NullFields will be sent to the
11365	// server as null. It is an error if a field in this list has a
11366	// non-empty value. This may be used to include null fields in Patch
11367	// requests.
11368	NullFields []string `json:"-"`
11369}
11370
11371func (s *UnitInvoice) MarshalJSON() ([]byte, error) {
11372	type NoMethod UnitInvoice
11373	raw := NoMethod(*s)
11374	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11375}
11376
11377type UnitInvoiceAdditionalCharge struct {
11378	// AdditionalChargeAmount: [required] Amount of the additional charge.
11379	AdditionalChargeAmount *Amount `json:"additionalChargeAmount,omitempty"`
11380
11381	// AdditionalChargePromotions: Deprecated.
11382	AdditionalChargePromotions []*Promotion `json:"additionalChargePromotions,omitempty"`
11383
11384	// Type: [required] Type of the additional charge.
11385	Type string `json:"type,omitempty"`
11386
11387	// ForceSendFields is a list of field names (e.g.
11388	// "AdditionalChargeAmount") to unconditionally include in API requests.
11389	// By default, fields with empty values are omitted from API requests.
11390	// However, any non-pointer, non-interface field appearing in
11391	// ForceSendFields will be sent to the server regardless of whether the
11392	// field is empty or not. This may be used to include empty fields in
11393	// Patch requests.
11394	ForceSendFields []string `json:"-"`
11395
11396	// NullFields is a list of field names (e.g. "AdditionalChargeAmount")
11397	// to include in API requests with the JSON null value. By default,
11398	// fields with empty values are omitted from API requests. However, any
11399	// field with an empty value appearing in NullFields will be sent to the
11400	// server as null. It is an error if a field in this list has a
11401	// non-empty value. This may be used to include null fields in Patch
11402	// requests.
11403	NullFields []string `json:"-"`
11404}
11405
11406func (s *UnitInvoiceAdditionalCharge) MarshalJSON() ([]byte, error) {
11407	type NoMethod UnitInvoiceAdditionalCharge
11408	raw := NoMethod(*s)
11409	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11410}
11411
11412type UnitInvoiceTaxLine struct {
11413	// TaxAmount: [required] Tax amount for the tax type.
11414	TaxAmount *Price `json:"taxAmount,omitempty"`
11415
11416	// TaxName: Optional name of the tax type. This should only be provided
11417	// if taxType is otherFeeTax.
11418	TaxName string `json:"taxName,omitempty"`
11419
11420	// TaxType: [required] Type of the tax.
11421	TaxType string `json:"taxType,omitempty"`
11422
11423	// ForceSendFields is a list of field names (e.g. "TaxAmount") to
11424	// unconditionally include in API requests. By default, fields with
11425	// empty values are omitted from API requests. However, any non-pointer,
11426	// non-interface field appearing in ForceSendFields will be sent to the
11427	// server regardless of whether the field is empty or not. This may be
11428	// used to include empty fields in Patch requests.
11429	ForceSendFields []string `json:"-"`
11430
11431	// NullFields is a list of field names (e.g. "TaxAmount") to include in
11432	// API requests with the JSON null value. By default, fields with empty
11433	// values are omitted from API requests. However, any field with an
11434	// empty value appearing in NullFields will be sent to the server as
11435	// null. It is an error if a field in this list has a non-empty value.
11436	// This may be used to include null fields in Patch requests.
11437	NullFields []string `json:"-"`
11438}
11439
11440func (s *UnitInvoiceTaxLine) MarshalJSON() ([]byte, error) {
11441	type NoMethod UnitInvoiceTaxLine
11442	raw := NoMethod(*s)
11443	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11444}
11445
11446// Value: The single value of a rate group or the value of a rate group
11447// table's cell. Exactly one of noShipping, flatRate, pricePercentage,
11448// carrierRateName, subtableName must be set.
11449type Value struct {
11450	// CarrierRateName: The name of a carrier rate referring to a carrier
11451	// rate defined in the same rate group. Can only be set if all other
11452	// fields are not set.
11453	CarrierRateName string `json:"carrierRateName,omitempty"`
11454
11455	// FlatRate: A flat rate. Can only be set if all other fields are not
11456	// set.
11457	FlatRate *Price `json:"flatRate,omitempty"`
11458
11459	// NoShipping: If true, then the product can't ship. Must be true when
11460	// set, can only be set if all other fields are not set.
11461	NoShipping bool `json:"noShipping,omitempty"`
11462
11463	// PricePercentage: A percentage of the price represented as a number in
11464	// decimal notation (e.g., "5.4"). Can only be set if all other fields
11465	// are not set.
11466	PricePercentage string `json:"pricePercentage,omitempty"`
11467
11468	// SubtableName: The name of a subtable. Can only be set in table cells
11469	// (i.e., not for single values), and only if all other fields are not
11470	// set.
11471	SubtableName string `json:"subtableName,omitempty"`
11472
11473	// ForceSendFields is a list of field names (e.g. "CarrierRateName") to
11474	// unconditionally include in API requests. By default, fields with
11475	// empty values are omitted from API requests. However, any non-pointer,
11476	// non-interface field appearing in ForceSendFields will be sent to the
11477	// server regardless of whether the field is empty or not. This may be
11478	// used to include empty fields in Patch requests.
11479	ForceSendFields []string `json:"-"`
11480
11481	// NullFields is a list of field names (e.g. "CarrierRateName") to
11482	// include in API requests with the JSON null value. By default, fields
11483	// with empty values are omitted from API requests. However, any field
11484	// with an empty value appearing in NullFields will be sent to the
11485	// server as null. It is an error if a field in this list has a
11486	// non-empty value. This may be used to include null fields in Patch
11487	// requests.
11488	NullFields []string `json:"-"`
11489}
11490
11491func (s *Value) MarshalJSON() ([]byte, error) {
11492	type NoMethod Value
11493	raw := NoMethod(*s)
11494	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11495}
11496
11497type Weight struct {
11498	// Unit: The weight unit.
11499	Unit string `json:"unit,omitempty"`
11500
11501	// Value: The weight represented as a number.
11502	Value string `json:"value,omitempty"`
11503
11504	// ForceSendFields is a list of field names (e.g. "Unit") to
11505	// unconditionally include in API requests. By default, fields with
11506	// empty values are omitted from API requests. However, any non-pointer,
11507	// non-interface field appearing in ForceSendFields will be sent to the
11508	// server regardless of whether the field is empty or not. This may be
11509	// used to include empty fields in Patch requests.
11510	ForceSendFields []string `json:"-"`
11511
11512	// NullFields is a list of field names (e.g. "Unit") to include in API
11513	// requests with the JSON null value. By default, fields with empty
11514	// values are omitted from API requests. However, any field with an
11515	// empty value appearing in NullFields will be sent to the server as
11516	// null. It is an error if a field in this list has a non-empty value.
11517	// This may be used to include null fields in Patch requests.
11518	NullFields []string `json:"-"`
11519}
11520
11521func (s *Weight) MarshalJSON() ([]byte, error) {
11522	type NoMethod Weight
11523	raw := NoMethod(*s)
11524	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11525}
11526
11527// method id "content.accounts.authinfo":
11528
11529type AccountsAuthinfoCall struct {
11530	s            *APIService
11531	urlParams_   gensupport.URLParams
11532	ifNoneMatch_ string
11533	ctx_         context.Context
11534	header_      http.Header
11535}
11536
11537// Authinfo: Returns information about the authenticated user.
11538func (r *AccountsService) Authinfo() *AccountsAuthinfoCall {
11539	c := &AccountsAuthinfoCall{s: r.s, urlParams_: make(gensupport.URLParams)}
11540	return c
11541}
11542
11543// Fields allows partial responses to be retrieved. See
11544// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
11545// for more information.
11546func (c *AccountsAuthinfoCall) Fields(s ...googleapi.Field) *AccountsAuthinfoCall {
11547	c.urlParams_.Set("fields", googleapi.CombineFields(s))
11548	return c
11549}
11550
11551// IfNoneMatch sets the optional parameter which makes the operation
11552// fail if the object's ETag matches the given value. This is useful for
11553// getting updates only after the object has changed since the last
11554// request. Use googleapi.IsNotModified to check whether the response
11555// error from Do is the result of In-None-Match.
11556func (c *AccountsAuthinfoCall) IfNoneMatch(entityTag string) *AccountsAuthinfoCall {
11557	c.ifNoneMatch_ = entityTag
11558	return c
11559}
11560
11561// Context sets the context to be used in this call's Do method. Any
11562// pending HTTP request will be aborted if the provided context is
11563// canceled.
11564func (c *AccountsAuthinfoCall) Context(ctx context.Context) *AccountsAuthinfoCall {
11565	c.ctx_ = ctx
11566	return c
11567}
11568
11569// Header returns an http.Header that can be modified by the caller to
11570// add HTTP headers to the request.
11571func (c *AccountsAuthinfoCall) Header() http.Header {
11572	if c.header_ == nil {
11573		c.header_ = make(http.Header)
11574	}
11575	return c.header_
11576}
11577
11578func (c *AccountsAuthinfoCall) doRequest(alt string) (*http.Response, error) {
11579	reqHeaders := make(http.Header)
11580	for k, v := range c.header_ {
11581		reqHeaders[k] = v
11582	}
11583	reqHeaders.Set("User-Agent", c.s.userAgent())
11584	if c.ifNoneMatch_ != "" {
11585		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
11586	}
11587	var body io.Reader = nil
11588	c.urlParams_.Set("alt", alt)
11589	c.urlParams_.Set("prettyPrint", "false")
11590	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/authinfo")
11591	urls += "?" + c.urlParams_.Encode()
11592	req, err := http.NewRequest("GET", urls, body)
11593	if err != nil {
11594		return nil, err
11595	}
11596	req.Header = reqHeaders
11597	return gensupport.SendRequest(c.ctx_, c.s.client, req)
11598}
11599
11600// Do executes the "content.accounts.authinfo" call.
11601// Exactly one of *AccountsAuthInfoResponse or error will be non-nil.
11602// Any non-2xx status code is an error. Response headers are in either
11603// *AccountsAuthInfoResponse.ServerResponse.Header or (if a response was
11604// returned at all) in error.(*googleapi.Error).Header. Use
11605// googleapi.IsNotModified to check whether the returned error was
11606// because http.StatusNotModified was returned.
11607func (c *AccountsAuthinfoCall) Do(opts ...googleapi.CallOption) (*AccountsAuthInfoResponse, error) {
11608	gensupport.SetOptions(c.urlParams_, opts...)
11609	res, err := c.doRequest("json")
11610	if res != nil && res.StatusCode == http.StatusNotModified {
11611		if res.Body != nil {
11612			res.Body.Close()
11613		}
11614		return nil, &googleapi.Error{
11615			Code:   res.StatusCode,
11616			Header: res.Header,
11617		}
11618	}
11619	if err != nil {
11620		return nil, err
11621	}
11622	defer googleapi.CloseBody(res)
11623	if err := googleapi.CheckResponse(res); err != nil {
11624		return nil, err
11625	}
11626	ret := &AccountsAuthInfoResponse{
11627		ServerResponse: googleapi.ServerResponse{
11628			Header:         res.Header,
11629			HTTPStatusCode: res.StatusCode,
11630		},
11631	}
11632	target := &ret
11633	if err := gensupport.DecodeResponse(target, res); err != nil {
11634		return nil, err
11635	}
11636	return ret, nil
11637	// {
11638	//   "description": "Returns information about the authenticated user.",
11639	//   "httpMethod": "GET",
11640	//   "id": "content.accounts.authinfo",
11641	//   "path": "accounts/authinfo",
11642	//   "response": {
11643	//     "$ref": "AccountsAuthInfoResponse"
11644	//   },
11645	//   "scopes": [
11646	//     "https://www.googleapis.com/auth/content"
11647	//   ]
11648	// }
11649
11650}
11651
11652// method id "content.accounts.claimwebsite":
11653
11654type AccountsClaimwebsiteCall struct {
11655	s          *APIService
11656	merchantId uint64
11657	accountId  uint64
11658	urlParams_ gensupport.URLParams
11659	ctx_       context.Context
11660	header_    http.Header
11661}
11662
11663// Claimwebsite: Claims the website of a Merchant Center sub-account.
11664func (r *AccountsService) Claimwebsite(merchantId uint64, accountId uint64) *AccountsClaimwebsiteCall {
11665	c := &AccountsClaimwebsiteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
11666	c.merchantId = merchantId
11667	c.accountId = accountId
11668	return c
11669}
11670
11671// Overwrite sets the optional parameter "overwrite": Only available to
11672// selected merchants. When set to True, this flag removes any existing
11673// claim on the requested website by another account and replaces it
11674// with a claim from this account.
11675func (c *AccountsClaimwebsiteCall) Overwrite(overwrite bool) *AccountsClaimwebsiteCall {
11676	c.urlParams_.Set("overwrite", fmt.Sprint(overwrite))
11677	return c
11678}
11679
11680// Fields allows partial responses to be retrieved. See
11681// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
11682// for more information.
11683func (c *AccountsClaimwebsiteCall) Fields(s ...googleapi.Field) *AccountsClaimwebsiteCall {
11684	c.urlParams_.Set("fields", googleapi.CombineFields(s))
11685	return c
11686}
11687
11688// Context sets the context to be used in this call's Do method. Any
11689// pending HTTP request will be aborted if the provided context is
11690// canceled.
11691func (c *AccountsClaimwebsiteCall) Context(ctx context.Context) *AccountsClaimwebsiteCall {
11692	c.ctx_ = ctx
11693	return c
11694}
11695
11696// Header returns an http.Header that can be modified by the caller to
11697// add HTTP headers to the request.
11698func (c *AccountsClaimwebsiteCall) Header() http.Header {
11699	if c.header_ == nil {
11700		c.header_ = make(http.Header)
11701	}
11702	return c.header_
11703}
11704
11705func (c *AccountsClaimwebsiteCall) doRequest(alt string) (*http.Response, error) {
11706	reqHeaders := make(http.Header)
11707	for k, v := range c.header_ {
11708		reqHeaders[k] = v
11709	}
11710	reqHeaders.Set("User-Agent", c.s.userAgent())
11711	var body io.Reader = nil
11712	c.urlParams_.Set("alt", alt)
11713	c.urlParams_.Set("prettyPrint", "false")
11714	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}/claimwebsite")
11715	urls += "?" + c.urlParams_.Encode()
11716	req, err := http.NewRequest("POST", urls, body)
11717	if err != nil {
11718		return nil, err
11719	}
11720	req.Header = reqHeaders
11721	googleapi.Expand(req.URL, map[string]string{
11722		"merchantId": strconv.FormatUint(c.merchantId, 10),
11723		"accountId":  strconv.FormatUint(c.accountId, 10),
11724	})
11725	return gensupport.SendRequest(c.ctx_, c.s.client, req)
11726}
11727
11728// Do executes the "content.accounts.claimwebsite" call.
11729// Exactly one of *AccountsClaimWebsiteResponse or error will be
11730// non-nil. Any non-2xx status code is an error. Response headers are in
11731// either *AccountsClaimWebsiteResponse.ServerResponse.Header or (if a
11732// response was returned at all) in error.(*googleapi.Error).Header. Use
11733// googleapi.IsNotModified to check whether the returned error was
11734// because http.StatusNotModified was returned.
11735func (c *AccountsClaimwebsiteCall) Do(opts ...googleapi.CallOption) (*AccountsClaimWebsiteResponse, error) {
11736	gensupport.SetOptions(c.urlParams_, opts...)
11737	res, err := c.doRequest("json")
11738	if res != nil && res.StatusCode == http.StatusNotModified {
11739		if res.Body != nil {
11740			res.Body.Close()
11741		}
11742		return nil, &googleapi.Error{
11743			Code:   res.StatusCode,
11744			Header: res.Header,
11745		}
11746	}
11747	if err != nil {
11748		return nil, err
11749	}
11750	defer googleapi.CloseBody(res)
11751	if err := googleapi.CheckResponse(res); err != nil {
11752		return nil, err
11753	}
11754	ret := &AccountsClaimWebsiteResponse{
11755		ServerResponse: googleapi.ServerResponse{
11756			Header:         res.Header,
11757			HTTPStatusCode: res.StatusCode,
11758		},
11759	}
11760	target := &ret
11761	if err := gensupport.DecodeResponse(target, res); err != nil {
11762		return nil, err
11763	}
11764	return ret, nil
11765	// {
11766	//   "description": "Claims the website of a Merchant Center sub-account.",
11767	//   "httpMethod": "POST",
11768	//   "id": "content.accounts.claimwebsite",
11769	//   "parameterOrder": [
11770	//     "merchantId",
11771	//     "accountId"
11772	//   ],
11773	//   "parameters": {
11774	//     "accountId": {
11775	//       "description": "The ID of the account whose website is claimed.",
11776	//       "format": "uint64",
11777	//       "location": "path",
11778	//       "required": true,
11779	//       "type": "string"
11780	//     },
11781	//     "merchantId": {
11782	//       "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.",
11783	//       "format": "uint64",
11784	//       "location": "path",
11785	//       "required": true,
11786	//       "type": "string"
11787	//     },
11788	//     "overwrite": {
11789	//       "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.",
11790	//       "location": "query",
11791	//       "type": "boolean"
11792	//     }
11793	//   },
11794	//   "path": "{merchantId}/accounts/{accountId}/claimwebsite",
11795	//   "response": {
11796	//     "$ref": "AccountsClaimWebsiteResponse"
11797	//   },
11798	//   "scopes": [
11799	//     "https://www.googleapis.com/auth/content"
11800	//   ]
11801	// }
11802
11803}
11804
11805// method id "content.accounts.custombatch":
11806
11807type AccountsCustombatchCall struct {
11808	s                          *APIService
11809	accountscustombatchrequest *AccountsCustomBatchRequest
11810	urlParams_                 gensupport.URLParams
11811	ctx_                       context.Context
11812	header_                    http.Header
11813}
11814
11815// Custombatch: Retrieves, inserts, updates, and deletes multiple
11816// Merchant Center (sub-)accounts in a single request.
11817func (r *AccountsService) Custombatch(accountscustombatchrequest *AccountsCustomBatchRequest) *AccountsCustombatchCall {
11818	c := &AccountsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
11819	c.accountscustombatchrequest = accountscustombatchrequest
11820	return c
11821}
11822
11823// DryRun sets the optional parameter "dryRun": Flag to simulate a
11824// request like in a live environment. If set to true, dry-run mode
11825// checks the validity of the request and returns errors (if any).
11826func (c *AccountsCustombatchCall) DryRun(dryRun bool) *AccountsCustombatchCall {
11827	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
11828	return c
11829}
11830
11831// Fields allows partial responses to be retrieved. See
11832// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
11833// for more information.
11834func (c *AccountsCustombatchCall) Fields(s ...googleapi.Field) *AccountsCustombatchCall {
11835	c.urlParams_.Set("fields", googleapi.CombineFields(s))
11836	return c
11837}
11838
11839// Context sets the context to be used in this call's Do method. Any
11840// pending HTTP request will be aborted if the provided context is
11841// canceled.
11842func (c *AccountsCustombatchCall) Context(ctx context.Context) *AccountsCustombatchCall {
11843	c.ctx_ = ctx
11844	return c
11845}
11846
11847// Header returns an http.Header that can be modified by the caller to
11848// add HTTP headers to the request.
11849func (c *AccountsCustombatchCall) Header() http.Header {
11850	if c.header_ == nil {
11851		c.header_ = make(http.Header)
11852	}
11853	return c.header_
11854}
11855
11856func (c *AccountsCustombatchCall) doRequest(alt string) (*http.Response, error) {
11857	reqHeaders := make(http.Header)
11858	for k, v := range c.header_ {
11859		reqHeaders[k] = v
11860	}
11861	reqHeaders.Set("User-Agent", c.s.userAgent())
11862	var body io.Reader = nil
11863	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountscustombatchrequest)
11864	if err != nil {
11865		return nil, err
11866	}
11867	reqHeaders.Set("Content-Type", "application/json")
11868	c.urlParams_.Set("alt", alt)
11869	c.urlParams_.Set("prettyPrint", "false")
11870	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/batch")
11871	urls += "?" + c.urlParams_.Encode()
11872	req, err := http.NewRequest("POST", urls, body)
11873	if err != nil {
11874		return nil, err
11875	}
11876	req.Header = reqHeaders
11877	return gensupport.SendRequest(c.ctx_, c.s.client, req)
11878}
11879
11880// Do executes the "content.accounts.custombatch" call.
11881// Exactly one of *AccountsCustomBatchResponse or error will be non-nil.
11882// Any non-2xx status code is an error. Response headers are in either
11883// *AccountsCustomBatchResponse.ServerResponse.Header or (if a response
11884// was returned at all) in error.(*googleapi.Error).Header. Use
11885// googleapi.IsNotModified to check whether the returned error was
11886// because http.StatusNotModified was returned.
11887func (c *AccountsCustombatchCall) Do(opts ...googleapi.CallOption) (*AccountsCustomBatchResponse, error) {
11888	gensupport.SetOptions(c.urlParams_, opts...)
11889	res, err := c.doRequest("json")
11890	if res != nil && res.StatusCode == http.StatusNotModified {
11891		if res.Body != nil {
11892			res.Body.Close()
11893		}
11894		return nil, &googleapi.Error{
11895			Code:   res.StatusCode,
11896			Header: res.Header,
11897		}
11898	}
11899	if err != nil {
11900		return nil, err
11901	}
11902	defer googleapi.CloseBody(res)
11903	if err := googleapi.CheckResponse(res); err != nil {
11904		return nil, err
11905	}
11906	ret := &AccountsCustomBatchResponse{
11907		ServerResponse: googleapi.ServerResponse{
11908			Header:         res.Header,
11909			HTTPStatusCode: res.StatusCode,
11910		},
11911	}
11912	target := &ret
11913	if err := gensupport.DecodeResponse(target, res); err != nil {
11914		return nil, err
11915	}
11916	return ret, nil
11917	// {
11918	//   "description": "Retrieves, inserts, updates, and deletes multiple Merchant Center (sub-)accounts in a single request.",
11919	//   "httpMethod": "POST",
11920	//   "id": "content.accounts.custombatch",
11921	//   "parameters": {
11922	//     "dryRun": {
11923	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
11924	//       "location": "query",
11925	//       "type": "boolean"
11926	//     }
11927	//   },
11928	//   "path": "accounts/batch",
11929	//   "request": {
11930	//     "$ref": "AccountsCustomBatchRequest"
11931	//   },
11932	//   "response": {
11933	//     "$ref": "AccountsCustomBatchResponse"
11934	//   },
11935	//   "scopes": [
11936	//     "https://www.googleapis.com/auth/content"
11937	//   ]
11938	// }
11939
11940}
11941
11942// method id "content.accounts.delete":
11943
11944type AccountsDeleteCall struct {
11945	s          *APIService
11946	merchantId uint64
11947	accountId  uint64
11948	urlParams_ gensupport.URLParams
11949	ctx_       context.Context
11950	header_    http.Header
11951}
11952
11953// Delete: Deletes a Merchant Center sub-account.
11954func (r *AccountsService) Delete(merchantId uint64, accountId uint64) *AccountsDeleteCall {
11955	c := &AccountsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
11956	c.merchantId = merchantId
11957	c.accountId = accountId
11958	return c
11959}
11960
11961// DryRun sets the optional parameter "dryRun": Flag to simulate a
11962// request like in a live environment. If set to true, dry-run mode
11963// checks the validity of the request and returns errors (if any).
11964func (c *AccountsDeleteCall) DryRun(dryRun bool) *AccountsDeleteCall {
11965	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
11966	return c
11967}
11968
11969// Force sets the optional parameter "force": Flag to delete
11970// sub-accounts with products. The default value is false.
11971func (c *AccountsDeleteCall) Force(force bool) *AccountsDeleteCall {
11972	c.urlParams_.Set("force", fmt.Sprint(force))
11973	return c
11974}
11975
11976// Fields allows partial responses to be retrieved. See
11977// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
11978// for more information.
11979func (c *AccountsDeleteCall) Fields(s ...googleapi.Field) *AccountsDeleteCall {
11980	c.urlParams_.Set("fields", googleapi.CombineFields(s))
11981	return c
11982}
11983
11984// Context sets the context to be used in this call's Do method. Any
11985// pending HTTP request will be aborted if the provided context is
11986// canceled.
11987func (c *AccountsDeleteCall) Context(ctx context.Context) *AccountsDeleteCall {
11988	c.ctx_ = ctx
11989	return c
11990}
11991
11992// Header returns an http.Header that can be modified by the caller to
11993// add HTTP headers to the request.
11994func (c *AccountsDeleteCall) Header() http.Header {
11995	if c.header_ == nil {
11996		c.header_ = make(http.Header)
11997	}
11998	return c.header_
11999}
12000
12001func (c *AccountsDeleteCall) doRequest(alt string) (*http.Response, error) {
12002	reqHeaders := make(http.Header)
12003	for k, v := range c.header_ {
12004		reqHeaders[k] = v
12005	}
12006	reqHeaders.Set("User-Agent", c.s.userAgent())
12007	var body io.Reader = nil
12008	c.urlParams_.Set("alt", alt)
12009	c.urlParams_.Set("prettyPrint", "false")
12010	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}")
12011	urls += "?" + c.urlParams_.Encode()
12012	req, err := http.NewRequest("DELETE", urls, body)
12013	if err != nil {
12014		return nil, err
12015	}
12016	req.Header = reqHeaders
12017	googleapi.Expand(req.URL, map[string]string{
12018		"merchantId": strconv.FormatUint(c.merchantId, 10),
12019		"accountId":  strconv.FormatUint(c.accountId, 10),
12020	})
12021	return gensupport.SendRequest(c.ctx_, c.s.client, req)
12022}
12023
12024// Do executes the "content.accounts.delete" call.
12025func (c *AccountsDeleteCall) Do(opts ...googleapi.CallOption) error {
12026	gensupport.SetOptions(c.urlParams_, opts...)
12027	res, err := c.doRequest("json")
12028	if err != nil {
12029		return err
12030	}
12031	defer googleapi.CloseBody(res)
12032	if err := googleapi.CheckResponse(res); err != nil {
12033		return err
12034	}
12035	return nil
12036	// {
12037	//   "description": "Deletes a Merchant Center sub-account.",
12038	//   "httpMethod": "DELETE",
12039	//   "id": "content.accounts.delete",
12040	//   "parameterOrder": [
12041	//     "merchantId",
12042	//     "accountId"
12043	//   ],
12044	//   "parameters": {
12045	//     "accountId": {
12046	//       "description": "The ID of the account.",
12047	//       "format": "uint64",
12048	//       "location": "path",
12049	//       "required": true,
12050	//       "type": "string"
12051	//     },
12052	//     "dryRun": {
12053	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
12054	//       "location": "query",
12055	//       "type": "boolean"
12056	//     },
12057	//     "force": {
12058	//       "default": "false",
12059	//       "description": "Flag to delete sub-accounts with products. The default value is false.",
12060	//       "location": "query",
12061	//       "type": "boolean"
12062	//     },
12063	//     "merchantId": {
12064	//       "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.",
12065	//       "format": "uint64",
12066	//       "location": "path",
12067	//       "required": true,
12068	//       "type": "string"
12069	//     }
12070	//   },
12071	//   "path": "{merchantId}/accounts/{accountId}",
12072	//   "scopes": [
12073	//     "https://www.googleapis.com/auth/content"
12074	//   ]
12075	// }
12076
12077}
12078
12079// method id "content.accounts.get":
12080
12081type AccountsGetCall struct {
12082	s            *APIService
12083	merchantId   uint64
12084	accountId    uint64
12085	urlParams_   gensupport.URLParams
12086	ifNoneMatch_ string
12087	ctx_         context.Context
12088	header_      http.Header
12089}
12090
12091// Get: Retrieves a Merchant Center account.
12092func (r *AccountsService) Get(merchantId uint64, accountId uint64) *AccountsGetCall {
12093	c := &AccountsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
12094	c.merchantId = merchantId
12095	c.accountId = accountId
12096	return c
12097}
12098
12099// Fields allows partial responses to be retrieved. See
12100// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
12101// for more information.
12102func (c *AccountsGetCall) Fields(s ...googleapi.Field) *AccountsGetCall {
12103	c.urlParams_.Set("fields", googleapi.CombineFields(s))
12104	return c
12105}
12106
12107// IfNoneMatch sets the optional parameter which makes the operation
12108// fail if the object's ETag matches the given value. This is useful for
12109// getting updates only after the object has changed since the last
12110// request. Use googleapi.IsNotModified to check whether the response
12111// error from Do is the result of In-None-Match.
12112func (c *AccountsGetCall) IfNoneMatch(entityTag string) *AccountsGetCall {
12113	c.ifNoneMatch_ = entityTag
12114	return c
12115}
12116
12117// Context sets the context to be used in this call's Do method. Any
12118// pending HTTP request will be aborted if the provided context is
12119// canceled.
12120func (c *AccountsGetCall) Context(ctx context.Context) *AccountsGetCall {
12121	c.ctx_ = ctx
12122	return c
12123}
12124
12125// Header returns an http.Header that can be modified by the caller to
12126// add HTTP headers to the request.
12127func (c *AccountsGetCall) Header() http.Header {
12128	if c.header_ == nil {
12129		c.header_ = make(http.Header)
12130	}
12131	return c.header_
12132}
12133
12134func (c *AccountsGetCall) doRequest(alt string) (*http.Response, error) {
12135	reqHeaders := make(http.Header)
12136	for k, v := range c.header_ {
12137		reqHeaders[k] = v
12138	}
12139	reqHeaders.Set("User-Agent", c.s.userAgent())
12140	if c.ifNoneMatch_ != "" {
12141		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
12142	}
12143	var body io.Reader = nil
12144	c.urlParams_.Set("alt", alt)
12145	c.urlParams_.Set("prettyPrint", "false")
12146	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}")
12147	urls += "?" + c.urlParams_.Encode()
12148	req, err := http.NewRequest("GET", urls, body)
12149	if err != nil {
12150		return nil, err
12151	}
12152	req.Header = reqHeaders
12153	googleapi.Expand(req.URL, map[string]string{
12154		"merchantId": strconv.FormatUint(c.merchantId, 10),
12155		"accountId":  strconv.FormatUint(c.accountId, 10),
12156	})
12157	return gensupport.SendRequest(c.ctx_, c.s.client, req)
12158}
12159
12160// Do executes the "content.accounts.get" call.
12161// Exactly one of *Account or error will be non-nil. Any non-2xx status
12162// code is an error. Response headers are in either
12163// *Account.ServerResponse.Header or (if a response was returned at all)
12164// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
12165// check whether the returned error was because http.StatusNotModified
12166// was returned.
12167func (c *AccountsGetCall) Do(opts ...googleapi.CallOption) (*Account, error) {
12168	gensupport.SetOptions(c.urlParams_, opts...)
12169	res, err := c.doRequest("json")
12170	if res != nil && res.StatusCode == http.StatusNotModified {
12171		if res.Body != nil {
12172			res.Body.Close()
12173		}
12174		return nil, &googleapi.Error{
12175			Code:   res.StatusCode,
12176			Header: res.Header,
12177		}
12178	}
12179	if err != nil {
12180		return nil, err
12181	}
12182	defer googleapi.CloseBody(res)
12183	if err := googleapi.CheckResponse(res); err != nil {
12184		return nil, err
12185	}
12186	ret := &Account{
12187		ServerResponse: googleapi.ServerResponse{
12188			Header:         res.Header,
12189			HTTPStatusCode: res.StatusCode,
12190		},
12191	}
12192	target := &ret
12193	if err := gensupport.DecodeResponse(target, res); err != nil {
12194		return nil, err
12195	}
12196	return ret, nil
12197	// {
12198	//   "description": "Retrieves a Merchant Center account.",
12199	//   "httpMethod": "GET",
12200	//   "id": "content.accounts.get",
12201	//   "parameterOrder": [
12202	//     "merchantId",
12203	//     "accountId"
12204	//   ],
12205	//   "parameters": {
12206	//     "accountId": {
12207	//       "description": "The ID of the account.",
12208	//       "format": "uint64",
12209	//       "location": "path",
12210	//       "required": true,
12211	//       "type": "string"
12212	//     },
12213	//     "merchantId": {
12214	//       "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.",
12215	//       "format": "uint64",
12216	//       "location": "path",
12217	//       "required": true,
12218	//       "type": "string"
12219	//     }
12220	//   },
12221	//   "path": "{merchantId}/accounts/{accountId}",
12222	//   "response": {
12223	//     "$ref": "Account"
12224	//   },
12225	//   "scopes": [
12226	//     "https://www.googleapis.com/auth/content"
12227	//   ]
12228	// }
12229
12230}
12231
12232// method id "content.accounts.insert":
12233
12234type AccountsInsertCall struct {
12235	s          *APIService
12236	merchantId uint64
12237	account    *Account
12238	urlParams_ gensupport.URLParams
12239	ctx_       context.Context
12240	header_    http.Header
12241}
12242
12243// Insert: Creates a Merchant Center sub-account.
12244func (r *AccountsService) Insert(merchantId uint64, account *Account) *AccountsInsertCall {
12245	c := &AccountsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
12246	c.merchantId = merchantId
12247	c.account = account
12248	return c
12249}
12250
12251// DryRun sets the optional parameter "dryRun": Flag to simulate a
12252// request like in a live environment. If set to true, dry-run mode
12253// checks the validity of the request and returns errors (if any).
12254func (c *AccountsInsertCall) DryRun(dryRun bool) *AccountsInsertCall {
12255	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
12256	return c
12257}
12258
12259// Fields allows partial responses to be retrieved. See
12260// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
12261// for more information.
12262func (c *AccountsInsertCall) Fields(s ...googleapi.Field) *AccountsInsertCall {
12263	c.urlParams_.Set("fields", googleapi.CombineFields(s))
12264	return c
12265}
12266
12267// Context sets the context to be used in this call's Do method. Any
12268// pending HTTP request will be aborted if the provided context is
12269// canceled.
12270func (c *AccountsInsertCall) Context(ctx context.Context) *AccountsInsertCall {
12271	c.ctx_ = ctx
12272	return c
12273}
12274
12275// Header returns an http.Header that can be modified by the caller to
12276// add HTTP headers to the request.
12277func (c *AccountsInsertCall) Header() http.Header {
12278	if c.header_ == nil {
12279		c.header_ = make(http.Header)
12280	}
12281	return c.header_
12282}
12283
12284func (c *AccountsInsertCall) doRequest(alt string) (*http.Response, error) {
12285	reqHeaders := make(http.Header)
12286	for k, v := range c.header_ {
12287		reqHeaders[k] = v
12288	}
12289	reqHeaders.Set("User-Agent", c.s.userAgent())
12290	var body io.Reader = nil
12291	body, err := googleapi.WithoutDataWrapper.JSONReader(c.account)
12292	if err != nil {
12293		return nil, err
12294	}
12295	reqHeaders.Set("Content-Type", "application/json")
12296	c.urlParams_.Set("alt", alt)
12297	c.urlParams_.Set("prettyPrint", "false")
12298	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts")
12299	urls += "?" + c.urlParams_.Encode()
12300	req, err := http.NewRequest("POST", urls, body)
12301	if err != nil {
12302		return nil, err
12303	}
12304	req.Header = reqHeaders
12305	googleapi.Expand(req.URL, map[string]string{
12306		"merchantId": strconv.FormatUint(c.merchantId, 10),
12307	})
12308	return gensupport.SendRequest(c.ctx_, c.s.client, req)
12309}
12310
12311// Do executes the "content.accounts.insert" call.
12312// Exactly one of *Account or error will be non-nil. Any non-2xx status
12313// code is an error. Response headers are in either
12314// *Account.ServerResponse.Header or (if a response was returned at all)
12315// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
12316// check whether the returned error was because http.StatusNotModified
12317// was returned.
12318func (c *AccountsInsertCall) Do(opts ...googleapi.CallOption) (*Account, error) {
12319	gensupport.SetOptions(c.urlParams_, opts...)
12320	res, err := c.doRequest("json")
12321	if res != nil && res.StatusCode == http.StatusNotModified {
12322		if res.Body != nil {
12323			res.Body.Close()
12324		}
12325		return nil, &googleapi.Error{
12326			Code:   res.StatusCode,
12327			Header: res.Header,
12328		}
12329	}
12330	if err != nil {
12331		return nil, err
12332	}
12333	defer googleapi.CloseBody(res)
12334	if err := googleapi.CheckResponse(res); err != nil {
12335		return nil, err
12336	}
12337	ret := &Account{
12338		ServerResponse: googleapi.ServerResponse{
12339			Header:         res.Header,
12340			HTTPStatusCode: res.StatusCode,
12341		},
12342	}
12343	target := &ret
12344	if err := gensupport.DecodeResponse(target, res); err != nil {
12345		return nil, err
12346	}
12347	return ret, nil
12348	// {
12349	//   "description": "Creates a Merchant Center sub-account.",
12350	//   "httpMethod": "POST",
12351	//   "id": "content.accounts.insert",
12352	//   "parameterOrder": [
12353	//     "merchantId"
12354	//   ],
12355	//   "parameters": {
12356	//     "dryRun": {
12357	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
12358	//       "location": "query",
12359	//       "type": "boolean"
12360	//     },
12361	//     "merchantId": {
12362	//       "description": "The ID of the managing account. This must be a multi-client account.",
12363	//       "format": "uint64",
12364	//       "location": "path",
12365	//       "required": true,
12366	//       "type": "string"
12367	//     }
12368	//   },
12369	//   "path": "{merchantId}/accounts",
12370	//   "request": {
12371	//     "$ref": "Account"
12372	//   },
12373	//   "response": {
12374	//     "$ref": "Account"
12375	//   },
12376	//   "scopes": [
12377	//     "https://www.googleapis.com/auth/content"
12378	//   ]
12379	// }
12380
12381}
12382
12383// method id "content.accounts.link":
12384
12385type AccountsLinkCall struct {
12386	s                   *APIService
12387	merchantId          uint64
12388	accountId           uint64
12389	accountslinkrequest *AccountsLinkRequest
12390	urlParams_          gensupport.URLParams
12391	ctx_                context.Context
12392	header_             http.Header
12393}
12394
12395// Link: Performs an action on a link between two Merchant Center
12396// accounts, namely accountId and linkedAccountId.
12397func (r *AccountsService) Link(merchantId uint64, accountId uint64, accountslinkrequest *AccountsLinkRequest) *AccountsLinkCall {
12398	c := &AccountsLinkCall{s: r.s, urlParams_: make(gensupport.URLParams)}
12399	c.merchantId = merchantId
12400	c.accountId = accountId
12401	c.accountslinkrequest = accountslinkrequest
12402	return c
12403}
12404
12405// Fields allows partial responses to be retrieved. See
12406// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
12407// for more information.
12408func (c *AccountsLinkCall) Fields(s ...googleapi.Field) *AccountsLinkCall {
12409	c.urlParams_.Set("fields", googleapi.CombineFields(s))
12410	return c
12411}
12412
12413// Context sets the context to be used in this call's Do method. Any
12414// pending HTTP request will be aborted if the provided context is
12415// canceled.
12416func (c *AccountsLinkCall) Context(ctx context.Context) *AccountsLinkCall {
12417	c.ctx_ = ctx
12418	return c
12419}
12420
12421// Header returns an http.Header that can be modified by the caller to
12422// add HTTP headers to the request.
12423func (c *AccountsLinkCall) Header() http.Header {
12424	if c.header_ == nil {
12425		c.header_ = make(http.Header)
12426	}
12427	return c.header_
12428}
12429
12430func (c *AccountsLinkCall) doRequest(alt string) (*http.Response, error) {
12431	reqHeaders := make(http.Header)
12432	for k, v := range c.header_ {
12433		reqHeaders[k] = v
12434	}
12435	reqHeaders.Set("User-Agent", c.s.userAgent())
12436	var body io.Reader = nil
12437	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountslinkrequest)
12438	if err != nil {
12439		return nil, err
12440	}
12441	reqHeaders.Set("Content-Type", "application/json")
12442	c.urlParams_.Set("alt", alt)
12443	c.urlParams_.Set("prettyPrint", "false")
12444	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}/link")
12445	urls += "?" + c.urlParams_.Encode()
12446	req, err := http.NewRequest("POST", urls, body)
12447	if err != nil {
12448		return nil, err
12449	}
12450	req.Header = reqHeaders
12451	googleapi.Expand(req.URL, map[string]string{
12452		"merchantId": strconv.FormatUint(c.merchantId, 10),
12453		"accountId":  strconv.FormatUint(c.accountId, 10),
12454	})
12455	return gensupport.SendRequest(c.ctx_, c.s.client, req)
12456}
12457
12458// Do executes the "content.accounts.link" call.
12459// Exactly one of *AccountsLinkResponse or error will be non-nil. Any
12460// non-2xx status code is an error. Response headers are in either
12461// *AccountsLinkResponse.ServerResponse.Header or (if a response was
12462// returned at all) in error.(*googleapi.Error).Header. Use
12463// googleapi.IsNotModified to check whether the returned error was
12464// because http.StatusNotModified was returned.
12465func (c *AccountsLinkCall) Do(opts ...googleapi.CallOption) (*AccountsLinkResponse, error) {
12466	gensupport.SetOptions(c.urlParams_, opts...)
12467	res, err := c.doRequest("json")
12468	if res != nil && res.StatusCode == http.StatusNotModified {
12469		if res.Body != nil {
12470			res.Body.Close()
12471		}
12472		return nil, &googleapi.Error{
12473			Code:   res.StatusCode,
12474			Header: res.Header,
12475		}
12476	}
12477	if err != nil {
12478		return nil, err
12479	}
12480	defer googleapi.CloseBody(res)
12481	if err := googleapi.CheckResponse(res); err != nil {
12482		return nil, err
12483	}
12484	ret := &AccountsLinkResponse{
12485		ServerResponse: googleapi.ServerResponse{
12486			Header:         res.Header,
12487			HTTPStatusCode: res.StatusCode,
12488		},
12489	}
12490	target := &ret
12491	if err := gensupport.DecodeResponse(target, res); err != nil {
12492		return nil, err
12493	}
12494	return ret, nil
12495	// {
12496	//   "description": "Performs an action on a link between two Merchant Center accounts, namely accountId and linkedAccountId.",
12497	//   "httpMethod": "POST",
12498	//   "id": "content.accounts.link",
12499	//   "parameterOrder": [
12500	//     "merchantId",
12501	//     "accountId"
12502	//   ],
12503	//   "parameters": {
12504	//     "accountId": {
12505	//       "description": "The ID of the account that should be linked.",
12506	//       "format": "uint64",
12507	//       "location": "path",
12508	//       "required": true,
12509	//       "type": "string"
12510	//     },
12511	//     "merchantId": {
12512	//       "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.",
12513	//       "format": "uint64",
12514	//       "location": "path",
12515	//       "required": true,
12516	//       "type": "string"
12517	//     }
12518	//   },
12519	//   "path": "{merchantId}/accounts/{accountId}/link",
12520	//   "request": {
12521	//     "$ref": "AccountsLinkRequest"
12522	//   },
12523	//   "response": {
12524	//     "$ref": "AccountsLinkResponse"
12525	//   },
12526	//   "scopes": [
12527	//     "https://www.googleapis.com/auth/content"
12528	//   ]
12529	// }
12530
12531}
12532
12533// method id "content.accounts.list":
12534
12535type AccountsListCall struct {
12536	s            *APIService
12537	merchantId   uint64
12538	urlParams_   gensupport.URLParams
12539	ifNoneMatch_ string
12540	ctx_         context.Context
12541	header_      http.Header
12542}
12543
12544// List: Lists the sub-accounts in your Merchant Center account.
12545func (r *AccountsService) List(merchantId uint64) *AccountsListCall {
12546	c := &AccountsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
12547	c.merchantId = merchantId
12548	return c
12549}
12550
12551// MaxResults sets the optional parameter "maxResults": The maximum
12552// number of accounts to return in the response, used for paging.
12553func (c *AccountsListCall) MaxResults(maxResults int64) *AccountsListCall {
12554	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
12555	return c
12556}
12557
12558// PageToken sets the optional parameter "pageToken": The token returned
12559// by the previous request.
12560func (c *AccountsListCall) PageToken(pageToken string) *AccountsListCall {
12561	c.urlParams_.Set("pageToken", pageToken)
12562	return c
12563}
12564
12565// Fields allows partial responses to be retrieved. See
12566// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
12567// for more information.
12568func (c *AccountsListCall) Fields(s ...googleapi.Field) *AccountsListCall {
12569	c.urlParams_.Set("fields", googleapi.CombineFields(s))
12570	return c
12571}
12572
12573// IfNoneMatch sets the optional parameter which makes the operation
12574// fail if the object's ETag matches the given value. This is useful for
12575// getting updates only after the object has changed since the last
12576// request. Use googleapi.IsNotModified to check whether the response
12577// error from Do is the result of In-None-Match.
12578func (c *AccountsListCall) IfNoneMatch(entityTag string) *AccountsListCall {
12579	c.ifNoneMatch_ = entityTag
12580	return c
12581}
12582
12583// Context sets the context to be used in this call's Do method. Any
12584// pending HTTP request will be aborted if the provided context is
12585// canceled.
12586func (c *AccountsListCall) Context(ctx context.Context) *AccountsListCall {
12587	c.ctx_ = ctx
12588	return c
12589}
12590
12591// Header returns an http.Header that can be modified by the caller to
12592// add HTTP headers to the request.
12593func (c *AccountsListCall) Header() http.Header {
12594	if c.header_ == nil {
12595		c.header_ = make(http.Header)
12596	}
12597	return c.header_
12598}
12599
12600func (c *AccountsListCall) doRequest(alt string) (*http.Response, error) {
12601	reqHeaders := make(http.Header)
12602	for k, v := range c.header_ {
12603		reqHeaders[k] = v
12604	}
12605	reqHeaders.Set("User-Agent", c.s.userAgent())
12606	if c.ifNoneMatch_ != "" {
12607		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
12608	}
12609	var body io.Reader = nil
12610	c.urlParams_.Set("alt", alt)
12611	c.urlParams_.Set("prettyPrint", "false")
12612	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts")
12613	urls += "?" + c.urlParams_.Encode()
12614	req, err := http.NewRequest("GET", urls, body)
12615	if err != nil {
12616		return nil, err
12617	}
12618	req.Header = reqHeaders
12619	googleapi.Expand(req.URL, map[string]string{
12620		"merchantId": strconv.FormatUint(c.merchantId, 10),
12621	})
12622	return gensupport.SendRequest(c.ctx_, c.s.client, req)
12623}
12624
12625// Do executes the "content.accounts.list" call.
12626// Exactly one of *AccountsListResponse or error will be non-nil. Any
12627// non-2xx status code is an error. Response headers are in either
12628// *AccountsListResponse.ServerResponse.Header or (if a response was
12629// returned at all) in error.(*googleapi.Error).Header. Use
12630// googleapi.IsNotModified to check whether the returned error was
12631// because http.StatusNotModified was returned.
12632func (c *AccountsListCall) Do(opts ...googleapi.CallOption) (*AccountsListResponse, error) {
12633	gensupport.SetOptions(c.urlParams_, opts...)
12634	res, err := c.doRequest("json")
12635	if res != nil && res.StatusCode == http.StatusNotModified {
12636		if res.Body != nil {
12637			res.Body.Close()
12638		}
12639		return nil, &googleapi.Error{
12640			Code:   res.StatusCode,
12641			Header: res.Header,
12642		}
12643	}
12644	if err != nil {
12645		return nil, err
12646	}
12647	defer googleapi.CloseBody(res)
12648	if err := googleapi.CheckResponse(res); err != nil {
12649		return nil, err
12650	}
12651	ret := &AccountsListResponse{
12652		ServerResponse: googleapi.ServerResponse{
12653			Header:         res.Header,
12654			HTTPStatusCode: res.StatusCode,
12655		},
12656	}
12657	target := &ret
12658	if err := gensupport.DecodeResponse(target, res); err != nil {
12659		return nil, err
12660	}
12661	return ret, nil
12662	// {
12663	//   "description": "Lists the sub-accounts in your Merchant Center account.",
12664	//   "httpMethod": "GET",
12665	//   "id": "content.accounts.list",
12666	//   "parameterOrder": [
12667	//     "merchantId"
12668	//   ],
12669	//   "parameters": {
12670	//     "maxResults": {
12671	//       "description": "The maximum number of accounts to return in the response, used for paging.",
12672	//       "format": "uint32",
12673	//       "location": "query",
12674	//       "type": "integer"
12675	//     },
12676	//     "merchantId": {
12677	//       "description": "The ID of the managing account. This must be a multi-client account.",
12678	//       "format": "uint64",
12679	//       "location": "path",
12680	//       "required": true,
12681	//       "type": "string"
12682	//     },
12683	//     "pageToken": {
12684	//       "description": "The token returned by the previous request.",
12685	//       "location": "query",
12686	//       "type": "string"
12687	//     }
12688	//   },
12689	//   "path": "{merchantId}/accounts",
12690	//   "response": {
12691	//     "$ref": "AccountsListResponse"
12692	//   },
12693	//   "scopes": [
12694	//     "https://www.googleapis.com/auth/content"
12695	//   ]
12696	// }
12697
12698}
12699
12700// Pages invokes f for each page of results.
12701// A non-nil error returned from f will halt the iteration.
12702// The provided context supersedes any context provided to the Context method.
12703func (c *AccountsListCall) Pages(ctx context.Context, f func(*AccountsListResponse) error) error {
12704	c.ctx_ = ctx
12705	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
12706	for {
12707		x, err := c.Do()
12708		if err != nil {
12709			return err
12710		}
12711		if err := f(x); err != nil {
12712			return err
12713		}
12714		if x.NextPageToken == "" {
12715			return nil
12716		}
12717		c.PageToken(x.NextPageToken)
12718	}
12719}
12720
12721// method id "content.accounts.patch":
12722
12723type AccountsPatchCall struct {
12724	s          *APIService
12725	merchantId uint64
12726	accountId  uint64
12727	account    *Account
12728	urlParams_ gensupport.URLParams
12729	ctx_       context.Context
12730	header_    http.Header
12731}
12732
12733// Patch: Updates a Merchant Center account. This method supports patch
12734// semantics.
12735func (r *AccountsService) Patch(merchantId uint64, accountId uint64, account *Account) *AccountsPatchCall {
12736	c := &AccountsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
12737	c.merchantId = merchantId
12738	c.accountId = accountId
12739	c.account = account
12740	return c
12741}
12742
12743// DryRun sets the optional parameter "dryRun": Flag to simulate a
12744// request like in a live environment. If set to true, dry-run mode
12745// checks the validity of the request and returns errors (if any).
12746func (c *AccountsPatchCall) DryRun(dryRun bool) *AccountsPatchCall {
12747	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
12748	return c
12749}
12750
12751// Fields allows partial responses to be retrieved. See
12752// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
12753// for more information.
12754func (c *AccountsPatchCall) Fields(s ...googleapi.Field) *AccountsPatchCall {
12755	c.urlParams_.Set("fields", googleapi.CombineFields(s))
12756	return c
12757}
12758
12759// Context sets the context to be used in this call's Do method. Any
12760// pending HTTP request will be aborted if the provided context is
12761// canceled.
12762func (c *AccountsPatchCall) Context(ctx context.Context) *AccountsPatchCall {
12763	c.ctx_ = ctx
12764	return c
12765}
12766
12767// Header returns an http.Header that can be modified by the caller to
12768// add HTTP headers to the request.
12769func (c *AccountsPatchCall) Header() http.Header {
12770	if c.header_ == nil {
12771		c.header_ = make(http.Header)
12772	}
12773	return c.header_
12774}
12775
12776func (c *AccountsPatchCall) doRequest(alt string) (*http.Response, error) {
12777	reqHeaders := make(http.Header)
12778	for k, v := range c.header_ {
12779		reqHeaders[k] = v
12780	}
12781	reqHeaders.Set("User-Agent", c.s.userAgent())
12782	var body io.Reader = nil
12783	body, err := googleapi.WithoutDataWrapper.JSONReader(c.account)
12784	if err != nil {
12785		return nil, err
12786	}
12787	reqHeaders.Set("Content-Type", "application/json")
12788	c.urlParams_.Set("alt", alt)
12789	c.urlParams_.Set("prettyPrint", "false")
12790	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}")
12791	urls += "?" + c.urlParams_.Encode()
12792	req, err := http.NewRequest("PATCH", urls, body)
12793	if err != nil {
12794		return nil, err
12795	}
12796	req.Header = reqHeaders
12797	googleapi.Expand(req.URL, map[string]string{
12798		"merchantId": strconv.FormatUint(c.merchantId, 10),
12799		"accountId":  strconv.FormatUint(c.accountId, 10),
12800	})
12801	return gensupport.SendRequest(c.ctx_, c.s.client, req)
12802}
12803
12804// Do executes the "content.accounts.patch" call.
12805// Exactly one of *Account or error will be non-nil. Any non-2xx status
12806// code is an error. Response headers are in either
12807// *Account.ServerResponse.Header or (if a response was returned at all)
12808// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
12809// check whether the returned error was because http.StatusNotModified
12810// was returned.
12811func (c *AccountsPatchCall) Do(opts ...googleapi.CallOption) (*Account, error) {
12812	gensupport.SetOptions(c.urlParams_, opts...)
12813	res, err := c.doRequest("json")
12814	if res != nil && res.StatusCode == http.StatusNotModified {
12815		if res.Body != nil {
12816			res.Body.Close()
12817		}
12818		return nil, &googleapi.Error{
12819			Code:   res.StatusCode,
12820			Header: res.Header,
12821		}
12822	}
12823	if err != nil {
12824		return nil, err
12825	}
12826	defer googleapi.CloseBody(res)
12827	if err := googleapi.CheckResponse(res); err != nil {
12828		return nil, err
12829	}
12830	ret := &Account{
12831		ServerResponse: googleapi.ServerResponse{
12832			Header:         res.Header,
12833			HTTPStatusCode: res.StatusCode,
12834		},
12835	}
12836	target := &ret
12837	if err := gensupport.DecodeResponse(target, res); err != nil {
12838		return nil, err
12839	}
12840	return ret, nil
12841	// {
12842	//   "description": "Updates a Merchant Center account. This method supports patch semantics.",
12843	//   "httpMethod": "PATCH",
12844	//   "id": "content.accounts.patch",
12845	//   "parameterOrder": [
12846	//     "merchantId",
12847	//     "accountId"
12848	//   ],
12849	//   "parameters": {
12850	//     "accountId": {
12851	//       "description": "The ID of the account.",
12852	//       "format": "uint64",
12853	//       "location": "path",
12854	//       "required": true,
12855	//       "type": "string"
12856	//     },
12857	//     "dryRun": {
12858	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
12859	//       "location": "query",
12860	//       "type": "boolean"
12861	//     },
12862	//     "merchantId": {
12863	//       "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.",
12864	//       "format": "uint64",
12865	//       "location": "path",
12866	//       "required": true,
12867	//       "type": "string"
12868	//     }
12869	//   },
12870	//   "path": "{merchantId}/accounts/{accountId}",
12871	//   "request": {
12872	//     "$ref": "Account"
12873	//   },
12874	//   "response": {
12875	//     "$ref": "Account"
12876	//   },
12877	//   "scopes": [
12878	//     "https://www.googleapis.com/auth/content"
12879	//   ]
12880	// }
12881
12882}
12883
12884// method id "content.accounts.update":
12885
12886type AccountsUpdateCall struct {
12887	s          *APIService
12888	merchantId uint64
12889	accountId  uint64
12890	account    *Account
12891	urlParams_ gensupport.URLParams
12892	ctx_       context.Context
12893	header_    http.Header
12894}
12895
12896// Update: Updates a Merchant Center account.
12897func (r *AccountsService) Update(merchantId uint64, accountId uint64, account *Account) *AccountsUpdateCall {
12898	c := &AccountsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
12899	c.merchantId = merchantId
12900	c.accountId = accountId
12901	c.account = account
12902	return c
12903}
12904
12905// DryRun sets the optional parameter "dryRun": Flag to simulate a
12906// request like in a live environment. If set to true, dry-run mode
12907// checks the validity of the request and returns errors (if any).
12908func (c *AccountsUpdateCall) DryRun(dryRun bool) *AccountsUpdateCall {
12909	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
12910	return c
12911}
12912
12913// Fields allows partial responses to be retrieved. See
12914// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
12915// for more information.
12916func (c *AccountsUpdateCall) Fields(s ...googleapi.Field) *AccountsUpdateCall {
12917	c.urlParams_.Set("fields", googleapi.CombineFields(s))
12918	return c
12919}
12920
12921// Context sets the context to be used in this call's Do method. Any
12922// pending HTTP request will be aborted if the provided context is
12923// canceled.
12924func (c *AccountsUpdateCall) Context(ctx context.Context) *AccountsUpdateCall {
12925	c.ctx_ = ctx
12926	return c
12927}
12928
12929// Header returns an http.Header that can be modified by the caller to
12930// add HTTP headers to the request.
12931func (c *AccountsUpdateCall) Header() http.Header {
12932	if c.header_ == nil {
12933		c.header_ = make(http.Header)
12934	}
12935	return c.header_
12936}
12937
12938func (c *AccountsUpdateCall) doRequest(alt string) (*http.Response, error) {
12939	reqHeaders := make(http.Header)
12940	for k, v := range c.header_ {
12941		reqHeaders[k] = v
12942	}
12943	reqHeaders.Set("User-Agent", c.s.userAgent())
12944	var body io.Reader = nil
12945	body, err := googleapi.WithoutDataWrapper.JSONReader(c.account)
12946	if err != nil {
12947		return nil, err
12948	}
12949	reqHeaders.Set("Content-Type", "application/json")
12950	c.urlParams_.Set("alt", alt)
12951	c.urlParams_.Set("prettyPrint", "false")
12952	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}")
12953	urls += "?" + c.urlParams_.Encode()
12954	req, err := http.NewRequest("PUT", urls, body)
12955	if err != nil {
12956		return nil, err
12957	}
12958	req.Header = reqHeaders
12959	googleapi.Expand(req.URL, map[string]string{
12960		"merchantId": strconv.FormatUint(c.merchantId, 10),
12961		"accountId":  strconv.FormatUint(c.accountId, 10),
12962	})
12963	return gensupport.SendRequest(c.ctx_, c.s.client, req)
12964}
12965
12966// Do executes the "content.accounts.update" call.
12967// Exactly one of *Account or error will be non-nil. Any non-2xx status
12968// code is an error. Response headers are in either
12969// *Account.ServerResponse.Header or (if a response was returned at all)
12970// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
12971// check whether the returned error was because http.StatusNotModified
12972// was returned.
12973func (c *AccountsUpdateCall) Do(opts ...googleapi.CallOption) (*Account, error) {
12974	gensupport.SetOptions(c.urlParams_, opts...)
12975	res, err := c.doRequest("json")
12976	if res != nil && res.StatusCode == http.StatusNotModified {
12977		if res.Body != nil {
12978			res.Body.Close()
12979		}
12980		return nil, &googleapi.Error{
12981			Code:   res.StatusCode,
12982			Header: res.Header,
12983		}
12984	}
12985	if err != nil {
12986		return nil, err
12987	}
12988	defer googleapi.CloseBody(res)
12989	if err := googleapi.CheckResponse(res); err != nil {
12990		return nil, err
12991	}
12992	ret := &Account{
12993		ServerResponse: googleapi.ServerResponse{
12994			Header:         res.Header,
12995			HTTPStatusCode: res.StatusCode,
12996		},
12997	}
12998	target := &ret
12999	if err := gensupport.DecodeResponse(target, res); err != nil {
13000		return nil, err
13001	}
13002	return ret, nil
13003	// {
13004	//   "description": "Updates a Merchant Center account.",
13005	//   "httpMethod": "PUT",
13006	//   "id": "content.accounts.update",
13007	//   "parameterOrder": [
13008	//     "merchantId",
13009	//     "accountId"
13010	//   ],
13011	//   "parameters": {
13012	//     "accountId": {
13013	//       "description": "The ID of the account.",
13014	//       "format": "uint64",
13015	//       "location": "path",
13016	//       "required": true,
13017	//       "type": "string"
13018	//     },
13019	//     "dryRun": {
13020	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
13021	//       "location": "query",
13022	//       "type": "boolean"
13023	//     },
13024	//     "merchantId": {
13025	//       "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.",
13026	//       "format": "uint64",
13027	//       "location": "path",
13028	//       "required": true,
13029	//       "type": "string"
13030	//     }
13031	//   },
13032	//   "path": "{merchantId}/accounts/{accountId}",
13033	//   "request": {
13034	//     "$ref": "Account"
13035	//   },
13036	//   "response": {
13037	//     "$ref": "Account"
13038	//   },
13039	//   "scopes": [
13040	//     "https://www.googleapis.com/auth/content"
13041	//   ]
13042	// }
13043
13044}
13045
13046// method id "content.accountstatuses.custombatch":
13047
13048type AccountstatusesCustombatchCall struct {
13049	s                                 *APIService
13050	accountstatusescustombatchrequest *AccountstatusesCustomBatchRequest
13051	urlParams_                        gensupport.URLParams
13052	ctx_                              context.Context
13053	header_                           http.Header
13054}
13055
13056// Custombatch: Retrieves multiple Merchant Center account statuses in a
13057// single request.
13058func (r *AccountstatusesService) Custombatch(accountstatusescustombatchrequest *AccountstatusesCustomBatchRequest) *AccountstatusesCustombatchCall {
13059	c := &AccountstatusesCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
13060	c.accountstatusescustombatchrequest = accountstatusescustombatchrequest
13061	return c
13062}
13063
13064// Fields allows partial responses to be retrieved. See
13065// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
13066// for more information.
13067func (c *AccountstatusesCustombatchCall) Fields(s ...googleapi.Field) *AccountstatusesCustombatchCall {
13068	c.urlParams_.Set("fields", googleapi.CombineFields(s))
13069	return c
13070}
13071
13072// Context sets the context to be used in this call's Do method. Any
13073// pending HTTP request will be aborted if the provided context is
13074// canceled.
13075func (c *AccountstatusesCustombatchCall) Context(ctx context.Context) *AccountstatusesCustombatchCall {
13076	c.ctx_ = ctx
13077	return c
13078}
13079
13080// Header returns an http.Header that can be modified by the caller to
13081// add HTTP headers to the request.
13082func (c *AccountstatusesCustombatchCall) Header() http.Header {
13083	if c.header_ == nil {
13084		c.header_ = make(http.Header)
13085	}
13086	return c.header_
13087}
13088
13089func (c *AccountstatusesCustombatchCall) doRequest(alt string) (*http.Response, error) {
13090	reqHeaders := make(http.Header)
13091	for k, v := range c.header_ {
13092		reqHeaders[k] = v
13093	}
13094	reqHeaders.Set("User-Agent", c.s.userAgent())
13095	var body io.Reader = nil
13096	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountstatusescustombatchrequest)
13097	if err != nil {
13098		return nil, err
13099	}
13100	reqHeaders.Set("Content-Type", "application/json")
13101	c.urlParams_.Set("alt", alt)
13102	c.urlParams_.Set("prettyPrint", "false")
13103	urls := googleapi.ResolveRelative(c.s.BasePath, "accountstatuses/batch")
13104	urls += "?" + c.urlParams_.Encode()
13105	req, err := http.NewRequest("POST", urls, body)
13106	if err != nil {
13107		return nil, err
13108	}
13109	req.Header = reqHeaders
13110	return gensupport.SendRequest(c.ctx_, c.s.client, req)
13111}
13112
13113// Do executes the "content.accountstatuses.custombatch" call.
13114// Exactly one of *AccountstatusesCustomBatchResponse or error will be
13115// non-nil. Any non-2xx status code is an error. Response headers are in
13116// either *AccountstatusesCustomBatchResponse.ServerResponse.Header or
13117// (if a response was returned at all) in
13118// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
13119// whether the returned error was because http.StatusNotModified was
13120// returned.
13121func (c *AccountstatusesCustombatchCall) Do(opts ...googleapi.CallOption) (*AccountstatusesCustomBatchResponse, error) {
13122	gensupport.SetOptions(c.urlParams_, opts...)
13123	res, err := c.doRequest("json")
13124	if res != nil && res.StatusCode == http.StatusNotModified {
13125		if res.Body != nil {
13126			res.Body.Close()
13127		}
13128		return nil, &googleapi.Error{
13129			Code:   res.StatusCode,
13130			Header: res.Header,
13131		}
13132	}
13133	if err != nil {
13134		return nil, err
13135	}
13136	defer googleapi.CloseBody(res)
13137	if err := googleapi.CheckResponse(res); err != nil {
13138		return nil, err
13139	}
13140	ret := &AccountstatusesCustomBatchResponse{
13141		ServerResponse: googleapi.ServerResponse{
13142			Header:         res.Header,
13143			HTTPStatusCode: res.StatusCode,
13144		},
13145	}
13146	target := &ret
13147	if err := gensupport.DecodeResponse(target, res); err != nil {
13148		return nil, err
13149	}
13150	return ret, nil
13151	// {
13152	//   "description": "Retrieves multiple Merchant Center account statuses in a single request.",
13153	//   "httpMethod": "POST",
13154	//   "id": "content.accountstatuses.custombatch",
13155	//   "path": "accountstatuses/batch",
13156	//   "request": {
13157	//     "$ref": "AccountstatusesCustomBatchRequest"
13158	//   },
13159	//   "response": {
13160	//     "$ref": "AccountstatusesCustomBatchResponse"
13161	//   },
13162	//   "scopes": [
13163	//     "https://www.googleapis.com/auth/content"
13164	//   ]
13165	// }
13166
13167}
13168
13169// method id "content.accountstatuses.get":
13170
13171type AccountstatusesGetCall struct {
13172	s            *APIService
13173	merchantId   uint64
13174	accountId    uint64
13175	urlParams_   gensupport.URLParams
13176	ifNoneMatch_ string
13177	ctx_         context.Context
13178	header_      http.Header
13179}
13180
13181// Get: Retrieves the status of a Merchant Center account. No
13182// itemLevelIssues are returned for multi-client accounts.
13183func (r *AccountstatusesService) Get(merchantId uint64, accountId uint64) *AccountstatusesGetCall {
13184	c := &AccountstatusesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
13185	c.merchantId = merchantId
13186	c.accountId = accountId
13187	return c
13188}
13189
13190// Destinations sets the optional parameter "destinations": If set, only
13191// issues for the specified destinations are returned, otherwise only
13192// issues for the Shopping destination.
13193func (c *AccountstatusesGetCall) Destinations(destinations ...string) *AccountstatusesGetCall {
13194	c.urlParams_.SetMulti("destinations", append([]string{}, destinations...))
13195	return c
13196}
13197
13198// Fields allows partial responses to be retrieved. See
13199// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
13200// for more information.
13201func (c *AccountstatusesGetCall) Fields(s ...googleapi.Field) *AccountstatusesGetCall {
13202	c.urlParams_.Set("fields", googleapi.CombineFields(s))
13203	return c
13204}
13205
13206// IfNoneMatch sets the optional parameter which makes the operation
13207// fail if the object's ETag matches the given value. This is useful for
13208// getting updates only after the object has changed since the last
13209// request. Use googleapi.IsNotModified to check whether the response
13210// error from Do is the result of In-None-Match.
13211func (c *AccountstatusesGetCall) IfNoneMatch(entityTag string) *AccountstatusesGetCall {
13212	c.ifNoneMatch_ = entityTag
13213	return c
13214}
13215
13216// Context sets the context to be used in this call's Do method. Any
13217// pending HTTP request will be aborted if the provided context is
13218// canceled.
13219func (c *AccountstatusesGetCall) Context(ctx context.Context) *AccountstatusesGetCall {
13220	c.ctx_ = ctx
13221	return c
13222}
13223
13224// Header returns an http.Header that can be modified by the caller to
13225// add HTTP headers to the request.
13226func (c *AccountstatusesGetCall) Header() http.Header {
13227	if c.header_ == nil {
13228		c.header_ = make(http.Header)
13229	}
13230	return c.header_
13231}
13232
13233func (c *AccountstatusesGetCall) doRequest(alt string) (*http.Response, error) {
13234	reqHeaders := make(http.Header)
13235	for k, v := range c.header_ {
13236		reqHeaders[k] = v
13237	}
13238	reqHeaders.Set("User-Agent", c.s.userAgent())
13239	if c.ifNoneMatch_ != "" {
13240		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
13241	}
13242	var body io.Reader = nil
13243	c.urlParams_.Set("alt", alt)
13244	c.urlParams_.Set("prettyPrint", "false")
13245	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accountstatuses/{accountId}")
13246	urls += "?" + c.urlParams_.Encode()
13247	req, err := http.NewRequest("GET", urls, body)
13248	if err != nil {
13249		return nil, err
13250	}
13251	req.Header = reqHeaders
13252	googleapi.Expand(req.URL, map[string]string{
13253		"merchantId": strconv.FormatUint(c.merchantId, 10),
13254		"accountId":  strconv.FormatUint(c.accountId, 10),
13255	})
13256	return gensupport.SendRequest(c.ctx_, c.s.client, req)
13257}
13258
13259// Do executes the "content.accountstatuses.get" call.
13260// Exactly one of *AccountStatus or error will be non-nil. Any non-2xx
13261// status code is an error. Response headers are in either
13262// *AccountStatus.ServerResponse.Header or (if a response was returned
13263// at all) in error.(*googleapi.Error).Header. Use
13264// googleapi.IsNotModified to check whether the returned error was
13265// because http.StatusNotModified was returned.
13266func (c *AccountstatusesGetCall) Do(opts ...googleapi.CallOption) (*AccountStatus, error) {
13267	gensupport.SetOptions(c.urlParams_, opts...)
13268	res, err := c.doRequest("json")
13269	if res != nil && res.StatusCode == http.StatusNotModified {
13270		if res.Body != nil {
13271			res.Body.Close()
13272		}
13273		return nil, &googleapi.Error{
13274			Code:   res.StatusCode,
13275			Header: res.Header,
13276		}
13277	}
13278	if err != nil {
13279		return nil, err
13280	}
13281	defer googleapi.CloseBody(res)
13282	if err := googleapi.CheckResponse(res); err != nil {
13283		return nil, err
13284	}
13285	ret := &AccountStatus{
13286		ServerResponse: googleapi.ServerResponse{
13287			Header:         res.Header,
13288			HTTPStatusCode: res.StatusCode,
13289		},
13290	}
13291	target := &ret
13292	if err := gensupport.DecodeResponse(target, res); err != nil {
13293		return nil, err
13294	}
13295	return ret, nil
13296	// {
13297	//   "description": "Retrieves the status of a Merchant Center account. No itemLevelIssues are returned for multi-client accounts.",
13298	//   "httpMethod": "GET",
13299	//   "id": "content.accountstatuses.get",
13300	//   "parameterOrder": [
13301	//     "merchantId",
13302	//     "accountId"
13303	//   ],
13304	//   "parameters": {
13305	//     "accountId": {
13306	//       "description": "The ID of the account.",
13307	//       "format": "uint64",
13308	//       "location": "path",
13309	//       "required": true,
13310	//       "type": "string"
13311	//     },
13312	//     "destinations": {
13313	//       "description": "If set, only issues for the specified destinations are returned, otherwise only issues for the Shopping destination.",
13314	//       "location": "query",
13315	//       "repeated": true,
13316	//       "type": "string"
13317	//     },
13318	//     "merchantId": {
13319	//       "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.",
13320	//       "format": "uint64",
13321	//       "location": "path",
13322	//       "required": true,
13323	//       "type": "string"
13324	//     }
13325	//   },
13326	//   "path": "{merchantId}/accountstatuses/{accountId}",
13327	//   "response": {
13328	//     "$ref": "AccountStatus"
13329	//   },
13330	//   "scopes": [
13331	//     "https://www.googleapis.com/auth/content"
13332	//   ]
13333	// }
13334
13335}
13336
13337// method id "content.accountstatuses.list":
13338
13339type AccountstatusesListCall struct {
13340	s            *APIService
13341	merchantId   uint64
13342	urlParams_   gensupport.URLParams
13343	ifNoneMatch_ string
13344	ctx_         context.Context
13345	header_      http.Header
13346}
13347
13348// List: Lists the statuses of the sub-accounts in your Merchant Center
13349// account.
13350func (r *AccountstatusesService) List(merchantId uint64) *AccountstatusesListCall {
13351	c := &AccountstatusesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
13352	c.merchantId = merchantId
13353	return c
13354}
13355
13356// Destinations sets the optional parameter "destinations": If set, only
13357// issues for the specified destinations are returned, otherwise only
13358// issues for the Shopping destination.
13359func (c *AccountstatusesListCall) Destinations(destinations ...string) *AccountstatusesListCall {
13360	c.urlParams_.SetMulti("destinations", append([]string{}, destinations...))
13361	return c
13362}
13363
13364// MaxResults sets the optional parameter "maxResults": The maximum
13365// number of account statuses to return in the response, used for
13366// paging.
13367func (c *AccountstatusesListCall) MaxResults(maxResults int64) *AccountstatusesListCall {
13368	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
13369	return c
13370}
13371
13372// PageToken sets the optional parameter "pageToken": The token returned
13373// by the previous request.
13374func (c *AccountstatusesListCall) PageToken(pageToken string) *AccountstatusesListCall {
13375	c.urlParams_.Set("pageToken", pageToken)
13376	return c
13377}
13378
13379// Fields allows partial responses to be retrieved. See
13380// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
13381// for more information.
13382func (c *AccountstatusesListCall) Fields(s ...googleapi.Field) *AccountstatusesListCall {
13383	c.urlParams_.Set("fields", googleapi.CombineFields(s))
13384	return c
13385}
13386
13387// IfNoneMatch sets the optional parameter which makes the operation
13388// fail if the object's ETag matches the given value. This is useful for
13389// getting updates only after the object has changed since the last
13390// request. Use googleapi.IsNotModified to check whether the response
13391// error from Do is the result of In-None-Match.
13392func (c *AccountstatusesListCall) IfNoneMatch(entityTag string) *AccountstatusesListCall {
13393	c.ifNoneMatch_ = entityTag
13394	return c
13395}
13396
13397// Context sets the context to be used in this call's Do method. Any
13398// pending HTTP request will be aborted if the provided context is
13399// canceled.
13400func (c *AccountstatusesListCall) Context(ctx context.Context) *AccountstatusesListCall {
13401	c.ctx_ = ctx
13402	return c
13403}
13404
13405// Header returns an http.Header that can be modified by the caller to
13406// add HTTP headers to the request.
13407func (c *AccountstatusesListCall) Header() http.Header {
13408	if c.header_ == nil {
13409		c.header_ = make(http.Header)
13410	}
13411	return c.header_
13412}
13413
13414func (c *AccountstatusesListCall) doRequest(alt string) (*http.Response, error) {
13415	reqHeaders := make(http.Header)
13416	for k, v := range c.header_ {
13417		reqHeaders[k] = v
13418	}
13419	reqHeaders.Set("User-Agent", c.s.userAgent())
13420	if c.ifNoneMatch_ != "" {
13421		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
13422	}
13423	var body io.Reader = nil
13424	c.urlParams_.Set("alt", alt)
13425	c.urlParams_.Set("prettyPrint", "false")
13426	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accountstatuses")
13427	urls += "?" + c.urlParams_.Encode()
13428	req, err := http.NewRequest("GET", urls, body)
13429	if err != nil {
13430		return nil, err
13431	}
13432	req.Header = reqHeaders
13433	googleapi.Expand(req.URL, map[string]string{
13434		"merchantId": strconv.FormatUint(c.merchantId, 10),
13435	})
13436	return gensupport.SendRequest(c.ctx_, c.s.client, req)
13437}
13438
13439// Do executes the "content.accountstatuses.list" call.
13440// Exactly one of *AccountstatusesListResponse or error will be non-nil.
13441// Any non-2xx status code is an error. Response headers are in either
13442// *AccountstatusesListResponse.ServerResponse.Header or (if a response
13443// was returned at all) in error.(*googleapi.Error).Header. Use
13444// googleapi.IsNotModified to check whether the returned error was
13445// because http.StatusNotModified was returned.
13446func (c *AccountstatusesListCall) Do(opts ...googleapi.CallOption) (*AccountstatusesListResponse, error) {
13447	gensupport.SetOptions(c.urlParams_, opts...)
13448	res, err := c.doRequest("json")
13449	if res != nil && res.StatusCode == http.StatusNotModified {
13450		if res.Body != nil {
13451			res.Body.Close()
13452		}
13453		return nil, &googleapi.Error{
13454			Code:   res.StatusCode,
13455			Header: res.Header,
13456		}
13457	}
13458	if err != nil {
13459		return nil, err
13460	}
13461	defer googleapi.CloseBody(res)
13462	if err := googleapi.CheckResponse(res); err != nil {
13463		return nil, err
13464	}
13465	ret := &AccountstatusesListResponse{
13466		ServerResponse: googleapi.ServerResponse{
13467			Header:         res.Header,
13468			HTTPStatusCode: res.StatusCode,
13469		},
13470	}
13471	target := &ret
13472	if err := gensupport.DecodeResponse(target, res); err != nil {
13473		return nil, err
13474	}
13475	return ret, nil
13476	// {
13477	//   "description": "Lists the statuses of the sub-accounts in your Merchant Center account.",
13478	//   "httpMethod": "GET",
13479	//   "id": "content.accountstatuses.list",
13480	//   "parameterOrder": [
13481	//     "merchantId"
13482	//   ],
13483	//   "parameters": {
13484	//     "destinations": {
13485	//       "description": "If set, only issues for the specified destinations are returned, otherwise only issues for the Shopping destination.",
13486	//       "location": "query",
13487	//       "repeated": true,
13488	//       "type": "string"
13489	//     },
13490	//     "maxResults": {
13491	//       "description": "The maximum number of account statuses to return in the response, used for paging.",
13492	//       "format": "uint32",
13493	//       "location": "query",
13494	//       "type": "integer"
13495	//     },
13496	//     "merchantId": {
13497	//       "description": "The ID of the managing account. This must be a multi-client account.",
13498	//       "format": "uint64",
13499	//       "location": "path",
13500	//       "required": true,
13501	//       "type": "string"
13502	//     },
13503	//     "pageToken": {
13504	//       "description": "The token returned by the previous request.",
13505	//       "location": "query",
13506	//       "type": "string"
13507	//     }
13508	//   },
13509	//   "path": "{merchantId}/accountstatuses",
13510	//   "response": {
13511	//     "$ref": "AccountstatusesListResponse"
13512	//   },
13513	//   "scopes": [
13514	//     "https://www.googleapis.com/auth/content"
13515	//   ]
13516	// }
13517
13518}
13519
13520// Pages invokes f for each page of results.
13521// A non-nil error returned from f will halt the iteration.
13522// The provided context supersedes any context provided to the Context method.
13523func (c *AccountstatusesListCall) Pages(ctx context.Context, f func(*AccountstatusesListResponse) error) error {
13524	c.ctx_ = ctx
13525	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
13526	for {
13527		x, err := c.Do()
13528		if err != nil {
13529			return err
13530		}
13531		if err := f(x); err != nil {
13532			return err
13533		}
13534		if x.NextPageToken == "" {
13535			return nil
13536		}
13537		c.PageToken(x.NextPageToken)
13538	}
13539}
13540
13541// method id "content.accounttax.custombatch":
13542
13543type AccounttaxCustombatchCall struct {
13544	s                            *APIService
13545	accounttaxcustombatchrequest *AccounttaxCustomBatchRequest
13546	urlParams_                   gensupport.URLParams
13547	ctx_                         context.Context
13548	header_                      http.Header
13549}
13550
13551// Custombatch: Retrieves and updates tax settings of multiple accounts
13552// in a single request.
13553func (r *AccounttaxService) Custombatch(accounttaxcustombatchrequest *AccounttaxCustomBatchRequest) *AccounttaxCustombatchCall {
13554	c := &AccounttaxCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
13555	c.accounttaxcustombatchrequest = accounttaxcustombatchrequest
13556	return c
13557}
13558
13559// DryRun sets the optional parameter "dryRun": Flag to simulate a
13560// request like in a live environment. If set to true, dry-run mode
13561// checks the validity of the request and returns errors (if any).
13562func (c *AccounttaxCustombatchCall) DryRun(dryRun bool) *AccounttaxCustombatchCall {
13563	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
13564	return c
13565}
13566
13567// Fields allows partial responses to be retrieved. See
13568// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
13569// for more information.
13570func (c *AccounttaxCustombatchCall) Fields(s ...googleapi.Field) *AccounttaxCustombatchCall {
13571	c.urlParams_.Set("fields", googleapi.CombineFields(s))
13572	return c
13573}
13574
13575// Context sets the context to be used in this call's Do method. Any
13576// pending HTTP request will be aborted if the provided context is
13577// canceled.
13578func (c *AccounttaxCustombatchCall) Context(ctx context.Context) *AccounttaxCustombatchCall {
13579	c.ctx_ = ctx
13580	return c
13581}
13582
13583// Header returns an http.Header that can be modified by the caller to
13584// add HTTP headers to the request.
13585func (c *AccounttaxCustombatchCall) Header() http.Header {
13586	if c.header_ == nil {
13587		c.header_ = make(http.Header)
13588	}
13589	return c.header_
13590}
13591
13592func (c *AccounttaxCustombatchCall) doRequest(alt string) (*http.Response, error) {
13593	reqHeaders := make(http.Header)
13594	for k, v := range c.header_ {
13595		reqHeaders[k] = v
13596	}
13597	reqHeaders.Set("User-Agent", c.s.userAgent())
13598	var body io.Reader = nil
13599	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accounttaxcustombatchrequest)
13600	if err != nil {
13601		return nil, err
13602	}
13603	reqHeaders.Set("Content-Type", "application/json")
13604	c.urlParams_.Set("alt", alt)
13605	c.urlParams_.Set("prettyPrint", "false")
13606	urls := googleapi.ResolveRelative(c.s.BasePath, "accounttax/batch")
13607	urls += "?" + c.urlParams_.Encode()
13608	req, err := http.NewRequest("POST", urls, body)
13609	if err != nil {
13610		return nil, err
13611	}
13612	req.Header = reqHeaders
13613	return gensupport.SendRequest(c.ctx_, c.s.client, req)
13614}
13615
13616// Do executes the "content.accounttax.custombatch" call.
13617// Exactly one of *AccounttaxCustomBatchResponse or error will be
13618// non-nil. Any non-2xx status code is an error. Response headers are in
13619// either *AccounttaxCustomBatchResponse.ServerResponse.Header or (if a
13620// response was returned at all) in error.(*googleapi.Error).Header. Use
13621// googleapi.IsNotModified to check whether the returned error was
13622// because http.StatusNotModified was returned.
13623func (c *AccounttaxCustombatchCall) Do(opts ...googleapi.CallOption) (*AccounttaxCustomBatchResponse, error) {
13624	gensupport.SetOptions(c.urlParams_, opts...)
13625	res, err := c.doRequest("json")
13626	if res != nil && res.StatusCode == http.StatusNotModified {
13627		if res.Body != nil {
13628			res.Body.Close()
13629		}
13630		return nil, &googleapi.Error{
13631			Code:   res.StatusCode,
13632			Header: res.Header,
13633		}
13634	}
13635	if err != nil {
13636		return nil, err
13637	}
13638	defer googleapi.CloseBody(res)
13639	if err := googleapi.CheckResponse(res); err != nil {
13640		return nil, err
13641	}
13642	ret := &AccounttaxCustomBatchResponse{
13643		ServerResponse: googleapi.ServerResponse{
13644			Header:         res.Header,
13645			HTTPStatusCode: res.StatusCode,
13646		},
13647	}
13648	target := &ret
13649	if err := gensupport.DecodeResponse(target, res); err != nil {
13650		return nil, err
13651	}
13652	return ret, nil
13653	// {
13654	//   "description": "Retrieves and updates tax settings of multiple accounts in a single request.",
13655	//   "httpMethod": "POST",
13656	//   "id": "content.accounttax.custombatch",
13657	//   "parameters": {
13658	//     "dryRun": {
13659	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
13660	//       "location": "query",
13661	//       "type": "boolean"
13662	//     }
13663	//   },
13664	//   "path": "accounttax/batch",
13665	//   "request": {
13666	//     "$ref": "AccounttaxCustomBatchRequest"
13667	//   },
13668	//   "response": {
13669	//     "$ref": "AccounttaxCustomBatchResponse"
13670	//   },
13671	//   "scopes": [
13672	//     "https://www.googleapis.com/auth/content"
13673	//   ]
13674	// }
13675
13676}
13677
13678// method id "content.accounttax.get":
13679
13680type AccounttaxGetCall struct {
13681	s            *APIService
13682	merchantId   uint64
13683	accountId    uint64
13684	urlParams_   gensupport.URLParams
13685	ifNoneMatch_ string
13686	ctx_         context.Context
13687	header_      http.Header
13688}
13689
13690// Get: Retrieves the tax settings of the account.
13691func (r *AccounttaxService) Get(merchantId uint64, accountId uint64) *AccounttaxGetCall {
13692	c := &AccounttaxGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
13693	c.merchantId = merchantId
13694	c.accountId = accountId
13695	return c
13696}
13697
13698// Fields allows partial responses to be retrieved. See
13699// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
13700// for more information.
13701func (c *AccounttaxGetCall) Fields(s ...googleapi.Field) *AccounttaxGetCall {
13702	c.urlParams_.Set("fields", googleapi.CombineFields(s))
13703	return c
13704}
13705
13706// IfNoneMatch sets the optional parameter which makes the operation
13707// fail if the object's ETag matches the given value. This is useful for
13708// getting updates only after the object has changed since the last
13709// request. Use googleapi.IsNotModified to check whether the response
13710// error from Do is the result of In-None-Match.
13711func (c *AccounttaxGetCall) IfNoneMatch(entityTag string) *AccounttaxGetCall {
13712	c.ifNoneMatch_ = entityTag
13713	return c
13714}
13715
13716// Context sets the context to be used in this call's Do method. Any
13717// pending HTTP request will be aborted if the provided context is
13718// canceled.
13719func (c *AccounttaxGetCall) Context(ctx context.Context) *AccounttaxGetCall {
13720	c.ctx_ = ctx
13721	return c
13722}
13723
13724// Header returns an http.Header that can be modified by the caller to
13725// add HTTP headers to the request.
13726func (c *AccounttaxGetCall) Header() http.Header {
13727	if c.header_ == nil {
13728		c.header_ = make(http.Header)
13729	}
13730	return c.header_
13731}
13732
13733func (c *AccounttaxGetCall) doRequest(alt string) (*http.Response, error) {
13734	reqHeaders := make(http.Header)
13735	for k, v := range c.header_ {
13736		reqHeaders[k] = v
13737	}
13738	reqHeaders.Set("User-Agent", c.s.userAgent())
13739	if c.ifNoneMatch_ != "" {
13740		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
13741	}
13742	var body io.Reader = nil
13743	c.urlParams_.Set("alt", alt)
13744	c.urlParams_.Set("prettyPrint", "false")
13745	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounttax/{accountId}")
13746	urls += "?" + c.urlParams_.Encode()
13747	req, err := http.NewRequest("GET", urls, body)
13748	if err != nil {
13749		return nil, err
13750	}
13751	req.Header = reqHeaders
13752	googleapi.Expand(req.URL, map[string]string{
13753		"merchantId": strconv.FormatUint(c.merchantId, 10),
13754		"accountId":  strconv.FormatUint(c.accountId, 10),
13755	})
13756	return gensupport.SendRequest(c.ctx_, c.s.client, req)
13757}
13758
13759// Do executes the "content.accounttax.get" call.
13760// Exactly one of *AccountTax or error will be non-nil. Any non-2xx
13761// status code is an error. Response headers are in either
13762// *AccountTax.ServerResponse.Header or (if a response was returned at
13763// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
13764// to check whether the returned error was because
13765// http.StatusNotModified was returned.
13766func (c *AccounttaxGetCall) Do(opts ...googleapi.CallOption) (*AccountTax, error) {
13767	gensupport.SetOptions(c.urlParams_, opts...)
13768	res, err := c.doRequest("json")
13769	if res != nil && res.StatusCode == http.StatusNotModified {
13770		if res.Body != nil {
13771			res.Body.Close()
13772		}
13773		return nil, &googleapi.Error{
13774			Code:   res.StatusCode,
13775			Header: res.Header,
13776		}
13777	}
13778	if err != nil {
13779		return nil, err
13780	}
13781	defer googleapi.CloseBody(res)
13782	if err := googleapi.CheckResponse(res); err != nil {
13783		return nil, err
13784	}
13785	ret := &AccountTax{
13786		ServerResponse: googleapi.ServerResponse{
13787			Header:         res.Header,
13788			HTTPStatusCode: res.StatusCode,
13789		},
13790	}
13791	target := &ret
13792	if err := gensupport.DecodeResponse(target, res); err != nil {
13793		return nil, err
13794	}
13795	return ret, nil
13796	// {
13797	//   "description": "Retrieves the tax settings of the account.",
13798	//   "httpMethod": "GET",
13799	//   "id": "content.accounttax.get",
13800	//   "parameterOrder": [
13801	//     "merchantId",
13802	//     "accountId"
13803	//   ],
13804	//   "parameters": {
13805	//     "accountId": {
13806	//       "description": "The ID of the account for which to get/update account tax settings.",
13807	//       "format": "uint64",
13808	//       "location": "path",
13809	//       "required": true,
13810	//       "type": "string"
13811	//     },
13812	//     "merchantId": {
13813	//       "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.",
13814	//       "format": "uint64",
13815	//       "location": "path",
13816	//       "required": true,
13817	//       "type": "string"
13818	//     }
13819	//   },
13820	//   "path": "{merchantId}/accounttax/{accountId}",
13821	//   "response": {
13822	//     "$ref": "AccountTax"
13823	//   },
13824	//   "scopes": [
13825	//     "https://www.googleapis.com/auth/content"
13826	//   ]
13827	// }
13828
13829}
13830
13831// method id "content.accounttax.list":
13832
13833type AccounttaxListCall struct {
13834	s            *APIService
13835	merchantId   uint64
13836	urlParams_   gensupport.URLParams
13837	ifNoneMatch_ string
13838	ctx_         context.Context
13839	header_      http.Header
13840}
13841
13842// List: Lists the tax settings of the sub-accounts in your Merchant
13843// Center account.
13844func (r *AccounttaxService) List(merchantId uint64) *AccounttaxListCall {
13845	c := &AccounttaxListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
13846	c.merchantId = merchantId
13847	return c
13848}
13849
13850// MaxResults sets the optional parameter "maxResults": The maximum
13851// number of tax settings to return in the response, used for paging.
13852func (c *AccounttaxListCall) MaxResults(maxResults int64) *AccounttaxListCall {
13853	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
13854	return c
13855}
13856
13857// PageToken sets the optional parameter "pageToken": The token returned
13858// by the previous request.
13859func (c *AccounttaxListCall) PageToken(pageToken string) *AccounttaxListCall {
13860	c.urlParams_.Set("pageToken", pageToken)
13861	return c
13862}
13863
13864// Fields allows partial responses to be retrieved. See
13865// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
13866// for more information.
13867func (c *AccounttaxListCall) Fields(s ...googleapi.Field) *AccounttaxListCall {
13868	c.urlParams_.Set("fields", googleapi.CombineFields(s))
13869	return c
13870}
13871
13872// IfNoneMatch sets the optional parameter which makes the operation
13873// fail if the object's ETag matches the given value. This is useful for
13874// getting updates only after the object has changed since the last
13875// request. Use googleapi.IsNotModified to check whether the response
13876// error from Do is the result of In-None-Match.
13877func (c *AccounttaxListCall) IfNoneMatch(entityTag string) *AccounttaxListCall {
13878	c.ifNoneMatch_ = entityTag
13879	return c
13880}
13881
13882// Context sets the context to be used in this call's Do method. Any
13883// pending HTTP request will be aborted if the provided context is
13884// canceled.
13885func (c *AccounttaxListCall) Context(ctx context.Context) *AccounttaxListCall {
13886	c.ctx_ = ctx
13887	return c
13888}
13889
13890// Header returns an http.Header that can be modified by the caller to
13891// add HTTP headers to the request.
13892func (c *AccounttaxListCall) Header() http.Header {
13893	if c.header_ == nil {
13894		c.header_ = make(http.Header)
13895	}
13896	return c.header_
13897}
13898
13899func (c *AccounttaxListCall) doRequest(alt string) (*http.Response, error) {
13900	reqHeaders := make(http.Header)
13901	for k, v := range c.header_ {
13902		reqHeaders[k] = v
13903	}
13904	reqHeaders.Set("User-Agent", c.s.userAgent())
13905	if c.ifNoneMatch_ != "" {
13906		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
13907	}
13908	var body io.Reader = nil
13909	c.urlParams_.Set("alt", alt)
13910	c.urlParams_.Set("prettyPrint", "false")
13911	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounttax")
13912	urls += "?" + c.urlParams_.Encode()
13913	req, err := http.NewRequest("GET", urls, body)
13914	if err != nil {
13915		return nil, err
13916	}
13917	req.Header = reqHeaders
13918	googleapi.Expand(req.URL, map[string]string{
13919		"merchantId": strconv.FormatUint(c.merchantId, 10),
13920	})
13921	return gensupport.SendRequest(c.ctx_, c.s.client, req)
13922}
13923
13924// Do executes the "content.accounttax.list" call.
13925// Exactly one of *AccounttaxListResponse or error will be non-nil. Any
13926// non-2xx status code is an error. Response headers are in either
13927// *AccounttaxListResponse.ServerResponse.Header or (if a response was
13928// returned at all) in error.(*googleapi.Error).Header. Use
13929// googleapi.IsNotModified to check whether the returned error was
13930// because http.StatusNotModified was returned.
13931func (c *AccounttaxListCall) Do(opts ...googleapi.CallOption) (*AccounttaxListResponse, error) {
13932	gensupport.SetOptions(c.urlParams_, opts...)
13933	res, err := c.doRequest("json")
13934	if res != nil && res.StatusCode == http.StatusNotModified {
13935		if res.Body != nil {
13936			res.Body.Close()
13937		}
13938		return nil, &googleapi.Error{
13939			Code:   res.StatusCode,
13940			Header: res.Header,
13941		}
13942	}
13943	if err != nil {
13944		return nil, err
13945	}
13946	defer googleapi.CloseBody(res)
13947	if err := googleapi.CheckResponse(res); err != nil {
13948		return nil, err
13949	}
13950	ret := &AccounttaxListResponse{
13951		ServerResponse: googleapi.ServerResponse{
13952			Header:         res.Header,
13953			HTTPStatusCode: res.StatusCode,
13954		},
13955	}
13956	target := &ret
13957	if err := gensupport.DecodeResponse(target, res); err != nil {
13958		return nil, err
13959	}
13960	return ret, nil
13961	// {
13962	//   "description": "Lists the tax settings of the sub-accounts in your Merchant Center account.",
13963	//   "httpMethod": "GET",
13964	//   "id": "content.accounttax.list",
13965	//   "parameterOrder": [
13966	//     "merchantId"
13967	//   ],
13968	//   "parameters": {
13969	//     "maxResults": {
13970	//       "description": "The maximum number of tax settings to return in the response, used for paging.",
13971	//       "format": "uint32",
13972	//       "location": "query",
13973	//       "type": "integer"
13974	//     },
13975	//     "merchantId": {
13976	//       "description": "The ID of the managing account. This must be a multi-client account.",
13977	//       "format": "uint64",
13978	//       "location": "path",
13979	//       "required": true,
13980	//       "type": "string"
13981	//     },
13982	//     "pageToken": {
13983	//       "description": "The token returned by the previous request.",
13984	//       "location": "query",
13985	//       "type": "string"
13986	//     }
13987	//   },
13988	//   "path": "{merchantId}/accounttax",
13989	//   "response": {
13990	//     "$ref": "AccounttaxListResponse"
13991	//   },
13992	//   "scopes": [
13993	//     "https://www.googleapis.com/auth/content"
13994	//   ]
13995	// }
13996
13997}
13998
13999// Pages invokes f for each page of results.
14000// A non-nil error returned from f will halt the iteration.
14001// The provided context supersedes any context provided to the Context method.
14002func (c *AccounttaxListCall) Pages(ctx context.Context, f func(*AccounttaxListResponse) error) error {
14003	c.ctx_ = ctx
14004	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
14005	for {
14006		x, err := c.Do()
14007		if err != nil {
14008			return err
14009		}
14010		if err := f(x); err != nil {
14011			return err
14012		}
14013		if x.NextPageToken == "" {
14014			return nil
14015		}
14016		c.PageToken(x.NextPageToken)
14017	}
14018}
14019
14020// method id "content.accounttax.patch":
14021
14022type AccounttaxPatchCall struct {
14023	s          *APIService
14024	merchantId uint64
14025	accountId  uint64
14026	accounttax *AccountTax
14027	urlParams_ gensupport.URLParams
14028	ctx_       context.Context
14029	header_    http.Header
14030}
14031
14032// Patch: Updates the tax settings of the account. This method supports
14033// patch semantics.
14034func (r *AccounttaxService) Patch(merchantId uint64, accountId uint64, accounttax *AccountTax) *AccounttaxPatchCall {
14035	c := &AccounttaxPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
14036	c.merchantId = merchantId
14037	c.accountId = accountId
14038	c.accounttax = accounttax
14039	return c
14040}
14041
14042// DryRun sets the optional parameter "dryRun": Flag to simulate a
14043// request like in a live environment. If set to true, dry-run mode
14044// checks the validity of the request and returns errors (if any).
14045func (c *AccounttaxPatchCall) DryRun(dryRun bool) *AccounttaxPatchCall {
14046	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
14047	return c
14048}
14049
14050// Fields allows partial responses to be retrieved. See
14051// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
14052// for more information.
14053func (c *AccounttaxPatchCall) Fields(s ...googleapi.Field) *AccounttaxPatchCall {
14054	c.urlParams_.Set("fields", googleapi.CombineFields(s))
14055	return c
14056}
14057
14058// Context sets the context to be used in this call's Do method. Any
14059// pending HTTP request will be aborted if the provided context is
14060// canceled.
14061func (c *AccounttaxPatchCall) Context(ctx context.Context) *AccounttaxPatchCall {
14062	c.ctx_ = ctx
14063	return c
14064}
14065
14066// Header returns an http.Header that can be modified by the caller to
14067// add HTTP headers to the request.
14068func (c *AccounttaxPatchCall) Header() http.Header {
14069	if c.header_ == nil {
14070		c.header_ = make(http.Header)
14071	}
14072	return c.header_
14073}
14074
14075func (c *AccounttaxPatchCall) doRequest(alt string) (*http.Response, error) {
14076	reqHeaders := make(http.Header)
14077	for k, v := range c.header_ {
14078		reqHeaders[k] = v
14079	}
14080	reqHeaders.Set("User-Agent", c.s.userAgent())
14081	var body io.Reader = nil
14082	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accounttax)
14083	if err != nil {
14084		return nil, err
14085	}
14086	reqHeaders.Set("Content-Type", "application/json")
14087	c.urlParams_.Set("alt", alt)
14088	c.urlParams_.Set("prettyPrint", "false")
14089	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounttax/{accountId}")
14090	urls += "?" + c.urlParams_.Encode()
14091	req, err := http.NewRequest("PATCH", urls, body)
14092	if err != nil {
14093		return nil, err
14094	}
14095	req.Header = reqHeaders
14096	googleapi.Expand(req.URL, map[string]string{
14097		"merchantId": strconv.FormatUint(c.merchantId, 10),
14098		"accountId":  strconv.FormatUint(c.accountId, 10),
14099	})
14100	return gensupport.SendRequest(c.ctx_, c.s.client, req)
14101}
14102
14103// Do executes the "content.accounttax.patch" call.
14104// Exactly one of *AccountTax or error will be non-nil. Any non-2xx
14105// status code is an error. Response headers are in either
14106// *AccountTax.ServerResponse.Header or (if a response was returned at
14107// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
14108// to check whether the returned error was because
14109// http.StatusNotModified was returned.
14110func (c *AccounttaxPatchCall) Do(opts ...googleapi.CallOption) (*AccountTax, error) {
14111	gensupport.SetOptions(c.urlParams_, opts...)
14112	res, err := c.doRequest("json")
14113	if res != nil && res.StatusCode == http.StatusNotModified {
14114		if res.Body != nil {
14115			res.Body.Close()
14116		}
14117		return nil, &googleapi.Error{
14118			Code:   res.StatusCode,
14119			Header: res.Header,
14120		}
14121	}
14122	if err != nil {
14123		return nil, err
14124	}
14125	defer googleapi.CloseBody(res)
14126	if err := googleapi.CheckResponse(res); err != nil {
14127		return nil, err
14128	}
14129	ret := &AccountTax{
14130		ServerResponse: googleapi.ServerResponse{
14131			Header:         res.Header,
14132			HTTPStatusCode: res.StatusCode,
14133		},
14134	}
14135	target := &ret
14136	if err := gensupport.DecodeResponse(target, res); err != nil {
14137		return nil, err
14138	}
14139	return ret, nil
14140	// {
14141	//   "description": "Updates the tax settings of the account. This method supports patch semantics.",
14142	//   "httpMethod": "PATCH",
14143	//   "id": "content.accounttax.patch",
14144	//   "parameterOrder": [
14145	//     "merchantId",
14146	//     "accountId"
14147	//   ],
14148	//   "parameters": {
14149	//     "accountId": {
14150	//       "description": "The ID of the account for which to get/update account tax settings.",
14151	//       "format": "uint64",
14152	//       "location": "path",
14153	//       "required": true,
14154	//       "type": "string"
14155	//     },
14156	//     "dryRun": {
14157	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
14158	//       "location": "query",
14159	//       "type": "boolean"
14160	//     },
14161	//     "merchantId": {
14162	//       "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.",
14163	//       "format": "uint64",
14164	//       "location": "path",
14165	//       "required": true,
14166	//       "type": "string"
14167	//     }
14168	//   },
14169	//   "path": "{merchantId}/accounttax/{accountId}",
14170	//   "request": {
14171	//     "$ref": "AccountTax"
14172	//   },
14173	//   "response": {
14174	//     "$ref": "AccountTax"
14175	//   },
14176	//   "scopes": [
14177	//     "https://www.googleapis.com/auth/content"
14178	//   ]
14179	// }
14180
14181}
14182
14183// method id "content.accounttax.update":
14184
14185type AccounttaxUpdateCall struct {
14186	s          *APIService
14187	merchantId uint64
14188	accountId  uint64
14189	accounttax *AccountTax
14190	urlParams_ gensupport.URLParams
14191	ctx_       context.Context
14192	header_    http.Header
14193}
14194
14195// Update: Updates the tax settings of the account.
14196func (r *AccounttaxService) Update(merchantId uint64, accountId uint64, accounttax *AccountTax) *AccounttaxUpdateCall {
14197	c := &AccounttaxUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
14198	c.merchantId = merchantId
14199	c.accountId = accountId
14200	c.accounttax = accounttax
14201	return c
14202}
14203
14204// DryRun sets the optional parameter "dryRun": Flag to simulate a
14205// request like in a live environment. If set to true, dry-run mode
14206// checks the validity of the request and returns errors (if any).
14207func (c *AccounttaxUpdateCall) DryRun(dryRun bool) *AccounttaxUpdateCall {
14208	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
14209	return c
14210}
14211
14212// Fields allows partial responses to be retrieved. See
14213// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
14214// for more information.
14215func (c *AccounttaxUpdateCall) Fields(s ...googleapi.Field) *AccounttaxUpdateCall {
14216	c.urlParams_.Set("fields", googleapi.CombineFields(s))
14217	return c
14218}
14219
14220// Context sets the context to be used in this call's Do method. Any
14221// pending HTTP request will be aborted if the provided context is
14222// canceled.
14223func (c *AccounttaxUpdateCall) Context(ctx context.Context) *AccounttaxUpdateCall {
14224	c.ctx_ = ctx
14225	return c
14226}
14227
14228// Header returns an http.Header that can be modified by the caller to
14229// add HTTP headers to the request.
14230func (c *AccounttaxUpdateCall) Header() http.Header {
14231	if c.header_ == nil {
14232		c.header_ = make(http.Header)
14233	}
14234	return c.header_
14235}
14236
14237func (c *AccounttaxUpdateCall) doRequest(alt string) (*http.Response, error) {
14238	reqHeaders := make(http.Header)
14239	for k, v := range c.header_ {
14240		reqHeaders[k] = v
14241	}
14242	reqHeaders.Set("User-Agent", c.s.userAgent())
14243	var body io.Reader = nil
14244	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accounttax)
14245	if err != nil {
14246		return nil, err
14247	}
14248	reqHeaders.Set("Content-Type", "application/json")
14249	c.urlParams_.Set("alt", alt)
14250	c.urlParams_.Set("prettyPrint", "false")
14251	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounttax/{accountId}")
14252	urls += "?" + c.urlParams_.Encode()
14253	req, err := http.NewRequest("PUT", urls, body)
14254	if err != nil {
14255		return nil, err
14256	}
14257	req.Header = reqHeaders
14258	googleapi.Expand(req.URL, map[string]string{
14259		"merchantId": strconv.FormatUint(c.merchantId, 10),
14260		"accountId":  strconv.FormatUint(c.accountId, 10),
14261	})
14262	return gensupport.SendRequest(c.ctx_, c.s.client, req)
14263}
14264
14265// Do executes the "content.accounttax.update" call.
14266// Exactly one of *AccountTax or error will be non-nil. Any non-2xx
14267// status code is an error. Response headers are in either
14268// *AccountTax.ServerResponse.Header or (if a response was returned at
14269// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
14270// to check whether the returned error was because
14271// http.StatusNotModified was returned.
14272func (c *AccounttaxUpdateCall) Do(opts ...googleapi.CallOption) (*AccountTax, error) {
14273	gensupport.SetOptions(c.urlParams_, opts...)
14274	res, err := c.doRequest("json")
14275	if res != nil && res.StatusCode == http.StatusNotModified {
14276		if res.Body != nil {
14277			res.Body.Close()
14278		}
14279		return nil, &googleapi.Error{
14280			Code:   res.StatusCode,
14281			Header: res.Header,
14282		}
14283	}
14284	if err != nil {
14285		return nil, err
14286	}
14287	defer googleapi.CloseBody(res)
14288	if err := googleapi.CheckResponse(res); err != nil {
14289		return nil, err
14290	}
14291	ret := &AccountTax{
14292		ServerResponse: googleapi.ServerResponse{
14293			Header:         res.Header,
14294			HTTPStatusCode: res.StatusCode,
14295		},
14296	}
14297	target := &ret
14298	if err := gensupport.DecodeResponse(target, res); err != nil {
14299		return nil, err
14300	}
14301	return ret, nil
14302	// {
14303	//   "description": "Updates the tax settings of the account.",
14304	//   "httpMethod": "PUT",
14305	//   "id": "content.accounttax.update",
14306	//   "parameterOrder": [
14307	//     "merchantId",
14308	//     "accountId"
14309	//   ],
14310	//   "parameters": {
14311	//     "accountId": {
14312	//       "description": "The ID of the account for which to get/update account tax settings.",
14313	//       "format": "uint64",
14314	//       "location": "path",
14315	//       "required": true,
14316	//       "type": "string"
14317	//     },
14318	//     "dryRun": {
14319	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
14320	//       "location": "query",
14321	//       "type": "boolean"
14322	//     },
14323	//     "merchantId": {
14324	//       "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.",
14325	//       "format": "uint64",
14326	//       "location": "path",
14327	//       "required": true,
14328	//       "type": "string"
14329	//     }
14330	//   },
14331	//   "path": "{merchantId}/accounttax/{accountId}",
14332	//   "request": {
14333	//     "$ref": "AccountTax"
14334	//   },
14335	//   "response": {
14336	//     "$ref": "AccountTax"
14337	//   },
14338	//   "scopes": [
14339	//     "https://www.googleapis.com/auth/content"
14340	//   ]
14341	// }
14342
14343}
14344
14345// method id "content.datafeeds.custombatch":
14346
14347type DatafeedsCustombatchCall struct {
14348	s                           *APIService
14349	datafeedscustombatchrequest *DatafeedsCustomBatchRequest
14350	urlParams_                  gensupport.URLParams
14351	ctx_                        context.Context
14352	header_                     http.Header
14353}
14354
14355// Custombatch: Deletes, fetches, gets, inserts and updates multiple
14356// datafeeds in a single request.
14357func (r *DatafeedsService) Custombatch(datafeedscustombatchrequest *DatafeedsCustomBatchRequest) *DatafeedsCustombatchCall {
14358	c := &DatafeedsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
14359	c.datafeedscustombatchrequest = datafeedscustombatchrequest
14360	return c
14361}
14362
14363// DryRun sets the optional parameter "dryRun": Flag to simulate a
14364// request like in a live environment. If set to true, dry-run mode
14365// checks the validity of the request and returns errors (if any).
14366func (c *DatafeedsCustombatchCall) DryRun(dryRun bool) *DatafeedsCustombatchCall {
14367	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
14368	return c
14369}
14370
14371// Fields allows partial responses to be retrieved. See
14372// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
14373// for more information.
14374func (c *DatafeedsCustombatchCall) Fields(s ...googleapi.Field) *DatafeedsCustombatchCall {
14375	c.urlParams_.Set("fields", googleapi.CombineFields(s))
14376	return c
14377}
14378
14379// Context sets the context to be used in this call's Do method. Any
14380// pending HTTP request will be aborted if the provided context is
14381// canceled.
14382func (c *DatafeedsCustombatchCall) Context(ctx context.Context) *DatafeedsCustombatchCall {
14383	c.ctx_ = ctx
14384	return c
14385}
14386
14387// Header returns an http.Header that can be modified by the caller to
14388// add HTTP headers to the request.
14389func (c *DatafeedsCustombatchCall) Header() http.Header {
14390	if c.header_ == nil {
14391		c.header_ = make(http.Header)
14392	}
14393	return c.header_
14394}
14395
14396func (c *DatafeedsCustombatchCall) doRequest(alt string) (*http.Response, error) {
14397	reqHeaders := make(http.Header)
14398	for k, v := range c.header_ {
14399		reqHeaders[k] = v
14400	}
14401	reqHeaders.Set("User-Agent", c.s.userAgent())
14402	var body io.Reader = nil
14403	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeedscustombatchrequest)
14404	if err != nil {
14405		return nil, err
14406	}
14407	reqHeaders.Set("Content-Type", "application/json")
14408	c.urlParams_.Set("alt", alt)
14409	c.urlParams_.Set("prettyPrint", "false")
14410	urls := googleapi.ResolveRelative(c.s.BasePath, "datafeeds/batch")
14411	urls += "?" + c.urlParams_.Encode()
14412	req, err := http.NewRequest("POST", urls, body)
14413	if err != nil {
14414		return nil, err
14415	}
14416	req.Header = reqHeaders
14417	return gensupport.SendRequest(c.ctx_, c.s.client, req)
14418}
14419
14420// Do executes the "content.datafeeds.custombatch" call.
14421// Exactly one of *DatafeedsCustomBatchResponse or error will be
14422// non-nil. Any non-2xx status code is an error. Response headers are in
14423// either *DatafeedsCustomBatchResponse.ServerResponse.Header or (if a
14424// response was returned at all) in error.(*googleapi.Error).Header. Use
14425// googleapi.IsNotModified to check whether the returned error was
14426// because http.StatusNotModified was returned.
14427func (c *DatafeedsCustombatchCall) Do(opts ...googleapi.CallOption) (*DatafeedsCustomBatchResponse, error) {
14428	gensupport.SetOptions(c.urlParams_, opts...)
14429	res, err := c.doRequest("json")
14430	if res != nil && res.StatusCode == http.StatusNotModified {
14431		if res.Body != nil {
14432			res.Body.Close()
14433		}
14434		return nil, &googleapi.Error{
14435			Code:   res.StatusCode,
14436			Header: res.Header,
14437		}
14438	}
14439	if err != nil {
14440		return nil, err
14441	}
14442	defer googleapi.CloseBody(res)
14443	if err := googleapi.CheckResponse(res); err != nil {
14444		return nil, err
14445	}
14446	ret := &DatafeedsCustomBatchResponse{
14447		ServerResponse: googleapi.ServerResponse{
14448			Header:         res.Header,
14449			HTTPStatusCode: res.StatusCode,
14450		},
14451	}
14452	target := &ret
14453	if err := gensupport.DecodeResponse(target, res); err != nil {
14454		return nil, err
14455	}
14456	return ret, nil
14457	// {
14458	//   "description": "Deletes, fetches, gets, inserts and updates multiple datafeeds in a single request.",
14459	//   "httpMethod": "POST",
14460	//   "id": "content.datafeeds.custombatch",
14461	//   "parameters": {
14462	//     "dryRun": {
14463	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
14464	//       "location": "query",
14465	//       "type": "boolean"
14466	//     }
14467	//   },
14468	//   "path": "datafeeds/batch",
14469	//   "request": {
14470	//     "$ref": "DatafeedsCustomBatchRequest"
14471	//   },
14472	//   "response": {
14473	//     "$ref": "DatafeedsCustomBatchResponse"
14474	//   },
14475	//   "scopes": [
14476	//     "https://www.googleapis.com/auth/content"
14477	//   ]
14478	// }
14479
14480}
14481
14482// method id "content.datafeeds.delete":
14483
14484type DatafeedsDeleteCall struct {
14485	s          *APIService
14486	merchantId uint64
14487	datafeedId uint64
14488	urlParams_ gensupport.URLParams
14489	ctx_       context.Context
14490	header_    http.Header
14491}
14492
14493// Delete: Deletes a datafeed configuration from your Merchant Center
14494// account.
14495func (r *DatafeedsService) Delete(merchantId uint64, datafeedId uint64) *DatafeedsDeleteCall {
14496	c := &DatafeedsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
14497	c.merchantId = merchantId
14498	c.datafeedId = datafeedId
14499	return c
14500}
14501
14502// DryRun sets the optional parameter "dryRun": Flag to simulate a
14503// request like in a live environment. If set to true, dry-run mode
14504// checks the validity of the request and returns errors (if any).
14505func (c *DatafeedsDeleteCall) DryRun(dryRun bool) *DatafeedsDeleteCall {
14506	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
14507	return c
14508}
14509
14510// Fields allows partial responses to be retrieved. See
14511// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
14512// for more information.
14513func (c *DatafeedsDeleteCall) Fields(s ...googleapi.Field) *DatafeedsDeleteCall {
14514	c.urlParams_.Set("fields", googleapi.CombineFields(s))
14515	return c
14516}
14517
14518// Context sets the context to be used in this call's Do method. Any
14519// pending HTTP request will be aborted if the provided context is
14520// canceled.
14521func (c *DatafeedsDeleteCall) Context(ctx context.Context) *DatafeedsDeleteCall {
14522	c.ctx_ = ctx
14523	return c
14524}
14525
14526// Header returns an http.Header that can be modified by the caller to
14527// add HTTP headers to the request.
14528func (c *DatafeedsDeleteCall) Header() http.Header {
14529	if c.header_ == nil {
14530		c.header_ = make(http.Header)
14531	}
14532	return c.header_
14533}
14534
14535func (c *DatafeedsDeleteCall) doRequest(alt string) (*http.Response, error) {
14536	reqHeaders := make(http.Header)
14537	for k, v := range c.header_ {
14538		reqHeaders[k] = v
14539	}
14540	reqHeaders.Set("User-Agent", c.s.userAgent())
14541	var body io.Reader = nil
14542	c.urlParams_.Set("alt", alt)
14543	c.urlParams_.Set("prettyPrint", "false")
14544	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds/{datafeedId}")
14545	urls += "?" + c.urlParams_.Encode()
14546	req, err := http.NewRequest("DELETE", urls, body)
14547	if err != nil {
14548		return nil, err
14549	}
14550	req.Header = reqHeaders
14551	googleapi.Expand(req.URL, map[string]string{
14552		"merchantId": strconv.FormatUint(c.merchantId, 10),
14553		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
14554	})
14555	return gensupport.SendRequest(c.ctx_, c.s.client, req)
14556}
14557
14558// Do executes the "content.datafeeds.delete" call.
14559func (c *DatafeedsDeleteCall) Do(opts ...googleapi.CallOption) error {
14560	gensupport.SetOptions(c.urlParams_, opts...)
14561	res, err := c.doRequest("json")
14562	if err != nil {
14563		return err
14564	}
14565	defer googleapi.CloseBody(res)
14566	if err := googleapi.CheckResponse(res); err != nil {
14567		return err
14568	}
14569	return nil
14570	// {
14571	//   "description": "Deletes a datafeed configuration from your Merchant Center account.",
14572	//   "httpMethod": "DELETE",
14573	//   "id": "content.datafeeds.delete",
14574	//   "parameterOrder": [
14575	//     "merchantId",
14576	//     "datafeedId"
14577	//   ],
14578	//   "parameters": {
14579	//     "datafeedId": {
14580	//       "description": "The ID of the datafeed.",
14581	//       "format": "uint64",
14582	//       "location": "path",
14583	//       "required": true,
14584	//       "type": "string"
14585	//     },
14586	//     "dryRun": {
14587	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
14588	//       "location": "query",
14589	//       "type": "boolean"
14590	//     },
14591	//     "merchantId": {
14592	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
14593	//       "format": "uint64",
14594	//       "location": "path",
14595	//       "required": true,
14596	//       "type": "string"
14597	//     }
14598	//   },
14599	//   "path": "{merchantId}/datafeeds/{datafeedId}",
14600	//   "scopes": [
14601	//     "https://www.googleapis.com/auth/content"
14602	//   ]
14603	// }
14604
14605}
14606
14607// method id "content.datafeeds.fetchnow":
14608
14609type DatafeedsFetchnowCall struct {
14610	s          *APIService
14611	merchantId uint64
14612	datafeedId uint64
14613	urlParams_ gensupport.URLParams
14614	ctx_       context.Context
14615	header_    http.Header
14616}
14617
14618// Fetchnow: Invokes a fetch for the datafeed in your Merchant Center
14619// account.
14620func (r *DatafeedsService) Fetchnow(merchantId uint64, datafeedId uint64) *DatafeedsFetchnowCall {
14621	c := &DatafeedsFetchnowCall{s: r.s, urlParams_: make(gensupport.URLParams)}
14622	c.merchantId = merchantId
14623	c.datafeedId = datafeedId
14624	return c
14625}
14626
14627// DryRun sets the optional parameter "dryRun": Flag to simulate a
14628// request like in a live environment. If set to true, dry-run mode
14629// checks the validity of the request and returns errors (if any).
14630func (c *DatafeedsFetchnowCall) DryRun(dryRun bool) *DatafeedsFetchnowCall {
14631	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
14632	return c
14633}
14634
14635// Fields allows partial responses to be retrieved. See
14636// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
14637// for more information.
14638func (c *DatafeedsFetchnowCall) Fields(s ...googleapi.Field) *DatafeedsFetchnowCall {
14639	c.urlParams_.Set("fields", googleapi.CombineFields(s))
14640	return c
14641}
14642
14643// Context sets the context to be used in this call's Do method. Any
14644// pending HTTP request will be aborted if the provided context is
14645// canceled.
14646func (c *DatafeedsFetchnowCall) Context(ctx context.Context) *DatafeedsFetchnowCall {
14647	c.ctx_ = ctx
14648	return c
14649}
14650
14651// Header returns an http.Header that can be modified by the caller to
14652// add HTTP headers to the request.
14653func (c *DatafeedsFetchnowCall) Header() http.Header {
14654	if c.header_ == nil {
14655		c.header_ = make(http.Header)
14656	}
14657	return c.header_
14658}
14659
14660func (c *DatafeedsFetchnowCall) doRequest(alt string) (*http.Response, error) {
14661	reqHeaders := make(http.Header)
14662	for k, v := range c.header_ {
14663		reqHeaders[k] = v
14664	}
14665	reqHeaders.Set("User-Agent", c.s.userAgent())
14666	var body io.Reader = nil
14667	c.urlParams_.Set("alt", alt)
14668	c.urlParams_.Set("prettyPrint", "false")
14669	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds/{datafeedId}/fetchNow")
14670	urls += "?" + c.urlParams_.Encode()
14671	req, err := http.NewRequest("POST", urls, body)
14672	if err != nil {
14673		return nil, err
14674	}
14675	req.Header = reqHeaders
14676	googleapi.Expand(req.URL, map[string]string{
14677		"merchantId": strconv.FormatUint(c.merchantId, 10),
14678		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
14679	})
14680	return gensupport.SendRequest(c.ctx_, c.s.client, req)
14681}
14682
14683// Do executes the "content.datafeeds.fetchnow" call.
14684// Exactly one of *DatafeedsFetchNowResponse or error will be non-nil.
14685// Any non-2xx status code is an error. Response headers are in either
14686// *DatafeedsFetchNowResponse.ServerResponse.Header or (if a response
14687// was returned at all) in error.(*googleapi.Error).Header. Use
14688// googleapi.IsNotModified to check whether the returned error was
14689// because http.StatusNotModified was returned.
14690func (c *DatafeedsFetchnowCall) Do(opts ...googleapi.CallOption) (*DatafeedsFetchNowResponse, error) {
14691	gensupport.SetOptions(c.urlParams_, opts...)
14692	res, err := c.doRequest("json")
14693	if res != nil && res.StatusCode == http.StatusNotModified {
14694		if res.Body != nil {
14695			res.Body.Close()
14696		}
14697		return nil, &googleapi.Error{
14698			Code:   res.StatusCode,
14699			Header: res.Header,
14700		}
14701	}
14702	if err != nil {
14703		return nil, err
14704	}
14705	defer googleapi.CloseBody(res)
14706	if err := googleapi.CheckResponse(res); err != nil {
14707		return nil, err
14708	}
14709	ret := &DatafeedsFetchNowResponse{
14710		ServerResponse: googleapi.ServerResponse{
14711			Header:         res.Header,
14712			HTTPStatusCode: res.StatusCode,
14713		},
14714	}
14715	target := &ret
14716	if err := gensupport.DecodeResponse(target, res); err != nil {
14717		return nil, err
14718	}
14719	return ret, nil
14720	// {
14721	//   "description": "Invokes a fetch for the datafeed in your Merchant Center account.",
14722	//   "httpMethod": "POST",
14723	//   "id": "content.datafeeds.fetchnow",
14724	//   "parameterOrder": [
14725	//     "merchantId",
14726	//     "datafeedId"
14727	//   ],
14728	//   "parameters": {
14729	//     "datafeedId": {
14730	//       "description": "The ID of the datafeed to be fetched.",
14731	//       "format": "uint64",
14732	//       "location": "path",
14733	//       "required": true,
14734	//       "type": "string"
14735	//     },
14736	//     "dryRun": {
14737	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
14738	//       "location": "query",
14739	//       "type": "boolean"
14740	//     },
14741	//     "merchantId": {
14742	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
14743	//       "format": "uint64",
14744	//       "location": "path",
14745	//       "required": true,
14746	//       "type": "string"
14747	//     }
14748	//   },
14749	//   "path": "{merchantId}/datafeeds/{datafeedId}/fetchNow",
14750	//   "response": {
14751	//     "$ref": "DatafeedsFetchNowResponse"
14752	//   },
14753	//   "scopes": [
14754	//     "https://www.googleapis.com/auth/content"
14755	//   ]
14756	// }
14757
14758}
14759
14760// method id "content.datafeeds.get":
14761
14762type DatafeedsGetCall struct {
14763	s            *APIService
14764	merchantId   uint64
14765	datafeedId   uint64
14766	urlParams_   gensupport.URLParams
14767	ifNoneMatch_ string
14768	ctx_         context.Context
14769	header_      http.Header
14770}
14771
14772// Get: Retrieves a datafeed configuration from your Merchant Center
14773// account.
14774func (r *DatafeedsService) Get(merchantId uint64, datafeedId uint64) *DatafeedsGetCall {
14775	c := &DatafeedsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
14776	c.merchantId = merchantId
14777	c.datafeedId = datafeedId
14778	return c
14779}
14780
14781// Fields allows partial responses to be retrieved. See
14782// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
14783// for more information.
14784func (c *DatafeedsGetCall) Fields(s ...googleapi.Field) *DatafeedsGetCall {
14785	c.urlParams_.Set("fields", googleapi.CombineFields(s))
14786	return c
14787}
14788
14789// IfNoneMatch sets the optional parameter which makes the operation
14790// fail if the object's ETag matches the given value. This is useful for
14791// getting updates only after the object has changed since the last
14792// request. Use googleapi.IsNotModified to check whether the response
14793// error from Do is the result of In-None-Match.
14794func (c *DatafeedsGetCall) IfNoneMatch(entityTag string) *DatafeedsGetCall {
14795	c.ifNoneMatch_ = entityTag
14796	return c
14797}
14798
14799// Context sets the context to be used in this call's Do method. Any
14800// pending HTTP request will be aborted if the provided context is
14801// canceled.
14802func (c *DatafeedsGetCall) Context(ctx context.Context) *DatafeedsGetCall {
14803	c.ctx_ = ctx
14804	return c
14805}
14806
14807// Header returns an http.Header that can be modified by the caller to
14808// add HTTP headers to the request.
14809func (c *DatafeedsGetCall) Header() http.Header {
14810	if c.header_ == nil {
14811		c.header_ = make(http.Header)
14812	}
14813	return c.header_
14814}
14815
14816func (c *DatafeedsGetCall) doRequest(alt string) (*http.Response, error) {
14817	reqHeaders := make(http.Header)
14818	for k, v := range c.header_ {
14819		reqHeaders[k] = v
14820	}
14821	reqHeaders.Set("User-Agent", c.s.userAgent())
14822	if c.ifNoneMatch_ != "" {
14823		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
14824	}
14825	var body io.Reader = nil
14826	c.urlParams_.Set("alt", alt)
14827	c.urlParams_.Set("prettyPrint", "false")
14828	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds/{datafeedId}")
14829	urls += "?" + c.urlParams_.Encode()
14830	req, err := http.NewRequest("GET", urls, body)
14831	if err != nil {
14832		return nil, err
14833	}
14834	req.Header = reqHeaders
14835	googleapi.Expand(req.URL, map[string]string{
14836		"merchantId": strconv.FormatUint(c.merchantId, 10),
14837		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
14838	})
14839	return gensupport.SendRequest(c.ctx_, c.s.client, req)
14840}
14841
14842// Do executes the "content.datafeeds.get" call.
14843// Exactly one of *Datafeed or error will be non-nil. Any non-2xx status
14844// code is an error. Response headers are in either
14845// *Datafeed.ServerResponse.Header or (if a response was returned at
14846// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
14847// to check whether the returned error was because
14848// http.StatusNotModified was returned.
14849func (c *DatafeedsGetCall) Do(opts ...googleapi.CallOption) (*Datafeed, error) {
14850	gensupport.SetOptions(c.urlParams_, opts...)
14851	res, err := c.doRequest("json")
14852	if res != nil && res.StatusCode == http.StatusNotModified {
14853		if res.Body != nil {
14854			res.Body.Close()
14855		}
14856		return nil, &googleapi.Error{
14857			Code:   res.StatusCode,
14858			Header: res.Header,
14859		}
14860	}
14861	if err != nil {
14862		return nil, err
14863	}
14864	defer googleapi.CloseBody(res)
14865	if err := googleapi.CheckResponse(res); err != nil {
14866		return nil, err
14867	}
14868	ret := &Datafeed{
14869		ServerResponse: googleapi.ServerResponse{
14870			Header:         res.Header,
14871			HTTPStatusCode: res.StatusCode,
14872		},
14873	}
14874	target := &ret
14875	if err := gensupport.DecodeResponse(target, res); err != nil {
14876		return nil, err
14877	}
14878	return ret, nil
14879	// {
14880	//   "description": "Retrieves a datafeed configuration from your Merchant Center account.",
14881	//   "httpMethod": "GET",
14882	//   "id": "content.datafeeds.get",
14883	//   "parameterOrder": [
14884	//     "merchantId",
14885	//     "datafeedId"
14886	//   ],
14887	//   "parameters": {
14888	//     "datafeedId": {
14889	//       "description": "The ID of the datafeed.",
14890	//       "format": "uint64",
14891	//       "location": "path",
14892	//       "required": true,
14893	//       "type": "string"
14894	//     },
14895	//     "merchantId": {
14896	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
14897	//       "format": "uint64",
14898	//       "location": "path",
14899	//       "required": true,
14900	//       "type": "string"
14901	//     }
14902	//   },
14903	//   "path": "{merchantId}/datafeeds/{datafeedId}",
14904	//   "response": {
14905	//     "$ref": "Datafeed"
14906	//   },
14907	//   "scopes": [
14908	//     "https://www.googleapis.com/auth/content"
14909	//   ]
14910	// }
14911
14912}
14913
14914// method id "content.datafeeds.insert":
14915
14916type DatafeedsInsertCall struct {
14917	s          *APIService
14918	merchantId uint64
14919	datafeed   *Datafeed
14920	urlParams_ gensupport.URLParams
14921	ctx_       context.Context
14922	header_    http.Header
14923}
14924
14925// Insert: Registers a datafeed configuration with your Merchant Center
14926// account.
14927func (r *DatafeedsService) Insert(merchantId uint64, datafeed *Datafeed) *DatafeedsInsertCall {
14928	c := &DatafeedsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
14929	c.merchantId = merchantId
14930	c.datafeed = datafeed
14931	return c
14932}
14933
14934// DryRun sets the optional parameter "dryRun": Flag to simulate a
14935// request like in a live environment. If set to true, dry-run mode
14936// checks the validity of the request and returns errors (if any).
14937func (c *DatafeedsInsertCall) DryRun(dryRun bool) *DatafeedsInsertCall {
14938	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
14939	return c
14940}
14941
14942// Fields allows partial responses to be retrieved. See
14943// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
14944// for more information.
14945func (c *DatafeedsInsertCall) Fields(s ...googleapi.Field) *DatafeedsInsertCall {
14946	c.urlParams_.Set("fields", googleapi.CombineFields(s))
14947	return c
14948}
14949
14950// Context sets the context to be used in this call's Do method. Any
14951// pending HTTP request will be aborted if the provided context is
14952// canceled.
14953func (c *DatafeedsInsertCall) Context(ctx context.Context) *DatafeedsInsertCall {
14954	c.ctx_ = ctx
14955	return c
14956}
14957
14958// Header returns an http.Header that can be modified by the caller to
14959// add HTTP headers to the request.
14960func (c *DatafeedsInsertCall) Header() http.Header {
14961	if c.header_ == nil {
14962		c.header_ = make(http.Header)
14963	}
14964	return c.header_
14965}
14966
14967func (c *DatafeedsInsertCall) doRequest(alt string) (*http.Response, error) {
14968	reqHeaders := make(http.Header)
14969	for k, v := range c.header_ {
14970		reqHeaders[k] = v
14971	}
14972	reqHeaders.Set("User-Agent", c.s.userAgent())
14973	var body io.Reader = nil
14974	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeed)
14975	if err != nil {
14976		return nil, err
14977	}
14978	reqHeaders.Set("Content-Type", "application/json")
14979	c.urlParams_.Set("alt", alt)
14980	c.urlParams_.Set("prettyPrint", "false")
14981	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds")
14982	urls += "?" + c.urlParams_.Encode()
14983	req, err := http.NewRequest("POST", urls, body)
14984	if err != nil {
14985		return nil, err
14986	}
14987	req.Header = reqHeaders
14988	googleapi.Expand(req.URL, map[string]string{
14989		"merchantId": strconv.FormatUint(c.merchantId, 10),
14990	})
14991	return gensupport.SendRequest(c.ctx_, c.s.client, req)
14992}
14993
14994// Do executes the "content.datafeeds.insert" call.
14995// Exactly one of *Datafeed or error will be non-nil. Any non-2xx status
14996// code is an error. Response headers are in either
14997// *Datafeed.ServerResponse.Header or (if a response was returned at
14998// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
14999// to check whether the returned error was because
15000// http.StatusNotModified was returned.
15001func (c *DatafeedsInsertCall) Do(opts ...googleapi.CallOption) (*Datafeed, error) {
15002	gensupport.SetOptions(c.urlParams_, opts...)
15003	res, err := c.doRequest("json")
15004	if res != nil && res.StatusCode == http.StatusNotModified {
15005		if res.Body != nil {
15006			res.Body.Close()
15007		}
15008		return nil, &googleapi.Error{
15009			Code:   res.StatusCode,
15010			Header: res.Header,
15011		}
15012	}
15013	if err != nil {
15014		return nil, err
15015	}
15016	defer googleapi.CloseBody(res)
15017	if err := googleapi.CheckResponse(res); err != nil {
15018		return nil, err
15019	}
15020	ret := &Datafeed{
15021		ServerResponse: googleapi.ServerResponse{
15022			Header:         res.Header,
15023			HTTPStatusCode: res.StatusCode,
15024		},
15025	}
15026	target := &ret
15027	if err := gensupport.DecodeResponse(target, res); err != nil {
15028		return nil, err
15029	}
15030	return ret, nil
15031	// {
15032	//   "description": "Registers a datafeed configuration with your Merchant Center account.",
15033	//   "httpMethod": "POST",
15034	//   "id": "content.datafeeds.insert",
15035	//   "parameterOrder": [
15036	//     "merchantId"
15037	//   ],
15038	//   "parameters": {
15039	//     "dryRun": {
15040	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
15041	//       "location": "query",
15042	//       "type": "boolean"
15043	//     },
15044	//     "merchantId": {
15045	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
15046	//       "format": "uint64",
15047	//       "location": "path",
15048	//       "required": true,
15049	//       "type": "string"
15050	//     }
15051	//   },
15052	//   "path": "{merchantId}/datafeeds",
15053	//   "request": {
15054	//     "$ref": "Datafeed"
15055	//   },
15056	//   "response": {
15057	//     "$ref": "Datafeed"
15058	//   },
15059	//   "scopes": [
15060	//     "https://www.googleapis.com/auth/content"
15061	//   ]
15062	// }
15063
15064}
15065
15066// method id "content.datafeeds.list":
15067
15068type DatafeedsListCall struct {
15069	s            *APIService
15070	merchantId   uint64
15071	urlParams_   gensupport.URLParams
15072	ifNoneMatch_ string
15073	ctx_         context.Context
15074	header_      http.Header
15075}
15076
15077// List: Lists the configurations for datafeeds in your Merchant Center
15078// account.
15079func (r *DatafeedsService) List(merchantId uint64) *DatafeedsListCall {
15080	c := &DatafeedsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
15081	c.merchantId = merchantId
15082	return c
15083}
15084
15085// MaxResults sets the optional parameter "maxResults": The maximum
15086// number of products to return in the response, used for paging.
15087func (c *DatafeedsListCall) MaxResults(maxResults int64) *DatafeedsListCall {
15088	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
15089	return c
15090}
15091
15092// PageToken sets the optional parameter "pageToken": The token returned
15093// by the previous request.
15094func (c *DatafeedsListCall) PageToken(pageToken string) *DatafeedsListCall {
15095	c.urlParams_.Set("pageToken", pageToken)
15096	return c
15097}
15098
15099// Fields allows partial responses to be retrieved. See
15100// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
15101// for more information.
15102func (c *DatafeedsListCall) Fields(s ...googleapi.Field) *DatafeedsListCall {
15103	c.urlParams_.Set("fields", googleapi.CombineFields(s))
15104	return c
15105}
15106
15107// IfNoneMatch sets the optional parameter which makes the operation
15108// fail if the object's ETag matches the given value. This is useful for
15109// getting updates only after the object has changed since the last
15110// request. Use googleapi.IsNotModified to check whether the response
15111// error from Do is the result of In-None-Match.
15112func (c *DatafeedsListCall) IfNoneMatch(entityTag string) *DatafeedsListCall {
15113	c.ifNoneMatch_ = entityTag
15114	return c
15115}
15116
15117// Context sets the context to be used in this call's Do method. Any
15118// pending HTTP request will be aborted if the provided context is
15119// canceled.
15120func (c *DatafeedsListCall) Context(ctx context.Context) *DatafeedsListCall {
15121	c.ctx_ = ctx
15122	return c
15123}
15124
15125// Header returns an http.Header that can be modified by the caller to
15126// add HTTP headers to the request.
15127func (c *DatafeedsListCall) Header() http.Header {
15128	if c.header_ == nil {
15129		c.header_ = make(http.Header)
15130	}
15131	return c.header_
15132}
15133
15134func (c *DatafeedsListCall) doRequest(alt string) (*http.Response, error) {
15135	reqHeaders := make(http.Header)
15136	for k, v := range c.header_ {
15137		reqHeaders[k] = v
15138	}
15139	reqHeaders.Set("User-Agent", c.s.userAgent())
15140	if c.ifNoneMatch_ != "" {
15141		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
15142	}
15143	var body io.Reader = nil
15144	c.urlParams_.Set("alt", alt)
15145	c.urlParams_.Set("prettyPrint", "false")
15146	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds")
15147	urls += "?" + c.urlParams_.Encode()
15148	req, err := http.NewRequest("GET", urls, body)
15149	if err != nil {
15150		return nil, err
15151	}
15152	req.Header = reqHeaders
15153	googleapi.Expand(req.URL, map[string]string{
15154		"merchantId": strconv.FormatUint(c.merchantId, 10),
15155	})
15156	return gensupport.SendRequest(c.ctx_, c.s.client, req)
15157}
15158
15159// Do executes the "content.datafeeds.list" call.
15160// Exactly one of *DatafeedsListResponse or error will be non-nil. Any
15161// non-2xx status code is an error. Response headers are in either
15162// *DatafeedsListResponse.ServerResponse.Header or (if a response was
15163// returned at all) in error.(*googleapi.Error).Header. Use
15164// googleapi.IsNotModified to check whether the returned error was
15165// because http.StatusNotModified was returned.
15166func (c *DatafeedsListCall) Do(opts ...googleapi.CallOption) (*DatafeedsListResponse, error) {
15167	gensupport.SetOptions(c.urlParams_, opts...)
15168	res, err := c.doRequest("json")
15169	if res != nil && res.StatusCode == http.StatusNotModified {
15170		if res.Body != nil {
15171			res.Body.Close()
15172		}
15173		return nil, &googleapi.Error{
15174			Code:   res.StatusCode,
15175			Header: res.Header,
15176		}
15177	}
15178	if err != nil {
15179		return nil, err
15180	}
15181	defer googleapi.CloseBody(res)
15182	if err := googleapi.CheckResponse(res); err != nil {
15183		return nil, err
15184	}
15185	ret := &DatafeedsListResponse{
15186		ServerResponse: googleapi.ServerResponse{
15187			Header:         res.Header,
15188			HTTPStatusCode: res.StatusCode,
15189		},
15190	}
15191	target := &ret
15192	if err := gensupport.DecodeResponse(target, res); err != nil {
15193		return nil, err
15194	}
15195	return ret, nil
15196	// {
15197	//   "description": "Lists the configurations for datafeeds in your Merchant Center account.",
15198	//   "httpMethod": "GET",
15199	//   "id": "content.datafeeds.list",
15200	//   "parameterOrder": [
15201	//     "merchantId"
15202	//   ],
15203	//   "parameters": {
15204	//     "maxResults": {
15205	//       "description": "The maximum number of products to return in the response, used for paging.",
15206	//       "format": "uint32",
15207	//       "location": "query",
15208	//       "type": "integer"
15209	//     },
15210	//     "merchantId": {
15211	//       "description": "The ID of the account that manages the datafeeds. This account cannot be a multi-client account.",
15212	//       "format": "uint64",
15213	//       "location": "path",
15214	//       "required": true,
15215	//       "type": "string"
15216	//     },
15217	//     "pageToken": {
15218	//       "description": "The token returned by the previous request.",
15219	//       "location": "query",
15220	//       "type": "string"
15221	//     }
15222	//   },
15223	//   "path": "{merchantId}/datafeeds",
15224	//   "response": {
15225	//     "$ref": "DatafeedsListResponse"
15226	//   },
15227	//   "scopes": [
15228	//     "https://www.googleapis.com/auth/content"
15229	//   ]
15230	// }
15231
15232}
15233
15234// Pages invokes f for each page of results.
15235// A non-nil error returned from f will halt the iteration.
15236// The provided context supersedes any context provided to the Context method.
15237func (c *DatafeedsListCall) Pages(ctx context.Context, f func(*DatafeedsListResponse) error) error {
15238	c.ctx_ = ctx
15239	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
15240	for {
15241		x, err := c.Do()
15242		if err != nil {
15243			return err
15244		}
15245		if err := f(x); err != nil {
15246			return err
15247		}
15248		if x.NextPageToken == "" {
15249			return nil
15250		}
15251		c.PageToken(x.NextPageToken)
15252	}
15253}
15254
15255// method id "content.datafeeds.patch":
15256
15257type DatafeedsPatchCall struct {
15258	s          *APIService
15259	merchantId uint64
15260	datafeedId uint64
15261	datafeed   *Datafeed
15262	urlParams_ gensupport.URLParams
15263	ctx_       context.Context
15264	header_    http.Header
15265}
15266
15267// Patch: Updates a datafeed configuration of your Merchant Center
15268// account. This method supports patch semantics.
15269func (r *DatafeedsService) Patch(merchantId uint64, datafeedId uint64, datafeed *Datafeed) *DatafeedsPatchCall {
15270	c := &DatafeedsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
15271	c.merchantId = merchantId
15272	c.datafeedId = datafeedId
15273	c.datafeed = datafeed
15274	return c
15275}
15276
15277// DryRun sets the optional parameter "dryRun": Flag to simulate a
15278// request like in a live environment. If set to true, dry-run mode
15279// checks the validity of the request and returns errors (if any).
15280func (c *DatafeedsPatchCall) DryRun(dryRun bool) *DatafeedsPatchCall {
15281	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
15282	return c
15283}
15284
15285// Fields allows partial responses to be retrieved. See
15286// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
15287// for more information.
15288func (c *DatafeedsPatchCall) Fields(s ...googleapi.Field) *DatafeedsPatchCall {
15289	c.urlParams_.Set("fields", googleapi.CombineFields(s))
15290	return c
15291}
15292
15293// Context sets the context to be used in this call's Do method. Any
15294// pending HTTP request will be aborted if the provided context is
15295// canceled.
15296func (c *DatafeedsPatchCall) Context(ctx context.Context) *DatafeedsPatchCall {
15297	c.ctx_ = ctx
15298	return c
15299}
15300
15301// Header returns an http.Header that can be modified by the caller to
15302// add HTTP headers to the request.
15303func (c *DatafeedsPatchCall) Header() http.Header {
15304	if c.header_ == nil {
15305		c.header_ = make(http.Header)
15306	}
15307	return c.header_
15308}
15309
15310func (c *DatafeedsPatchCall) doRequest(alt string) (*http.Response, error) {
15311	reqHeaders := make(http.Header)
15312	for k, v := range c.header_ {
15313		reqHeaders[k] = v
15314	}
15315	reqHeaders.Set("User-Agent", c.s.userAgent())
15316	var body io.Reader = nil
15317	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeed)
15318	if err != nil {
15319		return nil, err
15320	}
15321	reqHeaders.Set("Content-Type", "application/json")
15322	c.urlParams_.Set("alt", alt)
15323	c.urlParams_.Set("prettyPrint", "false")
15324	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds/{datafeedId}")
15325	urls += "?" + c.urlParams_.Encode()
15326	req, err := http.NewRequest("PATCH", urls, body)
15327	if err != nil {
15328		return nil, err
15329	}
15330	req.Header = reqHeaders
15331	googleapi.Expand(req.URL, map[string]string{
15332		"merchantId": strconv.FormatUint(c.merchantId, 10),
15333		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
15334	})
15335	return gensupport.SendRequest(c.ctx_, c.s.client, req)
15336}
15337
15338// Do executes the "content.datafeeds.patch" call.
15339// Exactly one of *Datafeed or error will be non-nil. Any non-2xx status
15340// code is an error. Response headers are in either
15341// *Datafeed.ServerResponse.Header or (if a response was returned at
15342// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
15343// to check whether the returned error was because
15344// http.StatusNotModified was returned.
15345func (c *DatafeedsPatchCall) Do(opts ...googleapi.CallOption) (*Datafeed, error) {
15346	gensupport.SetOptions(c.urlParams_, opts...)
15347	res, err := c.doRequest("json")
15348	if res != nil && res.StatusCode == http.StatusNotModified {
15349		if res.Body != nil {
15350			res.Body.Close()
15351		}
15352		return nil, &googleapi.Error{
15353			Code:   res.StatusCode,
15354			Header: res.Header,
15355		}
15356	}
15357	if err != nil {
15358		return nil, err
15359	}
15360	defer googleapi.CloseBody(res)
15361	if err := googleapi.CheckResponse(res); err != nil {
15362		return nil, err
15363	}
15364	ret := &Datafeed{
15365		ServerResponse: googleapi.ServerResponse{
15366			Header:         res.Header,
15367			HTTPStatusCode: res.StatusCode,
15368		},
15369	}
15370	target := &ret
15371	if err := gensupport.DecodeResponse(target, res); err != nil {
15372		return nil, err
15373	}
15374	return ret, nil
15375	// {
15376	//   "description": "Updates a datafeed configuration of your Merchant Center account. This method supports patch semantics.",
15377	//   "httpMethod": "PATCH",
15378	//   "id": "content.datafeeds.patch",
15379	//   "parameterOrder": [
15380	//     "merchantId",
15381	//     "datafeedId"
15382	//   ],
15383	//   "parameters": {
15384	//     "datafeedId": {
15385	//       "description": "The ID of the datafeed.",
15386	//       "format": "uint64",
15387	//       "location": "path",
15388	//       "required": true,
15389	//       "type": "string"
15390	//     },
15391	//     "dryRun": {
15392	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
15393	//       "location": "query",
15394	//       "type": "boolean"
15395	//     },
15396	//     "merchantId": {
15397	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
15398	//       "format": "uint64",
15399	//       "location": "path",
15400	//       "required": true,
15401	//       "type": "string"
15402	//     }
15403	//   },
15404	//   "path": "{merchantId}/datafeeds/{datafeedId}",
15405	//   "request": {
15406	//     "$ref": "Datafeed"
15407	//   },
15408	//   "response": {
15409	//     "$ref": "Datafeed"
15410	//   },
15411	//   "scopes": [
15412	//     "https://www.googleapis.com/auth/content"
15413	//   ]
15414	// }
15415
15416}
15417
15418// method id "content.datafeeds.update":
15419
15420type DatafeedsUpdateCall struct {
15421	s          *APIService
15422	merchantId uint64
15423	datafeedId uint64
15424	datafeed   *Datafeed
15425	urlParams_ gensupport.URLParams
15426	ctx_       context.Context
15427	header_    http.Header
15428}
15429
15430// Update: Updates a datafeed configuration of your Merchant Center
15431// account.
15432func (r *DatafeedsService) Update(merchantId uint64, datafeedId uint64, datafeed *Datafeed) *DatafeedsUpdateCall {
15433	c := &DatafeedsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
15434	c.merchantId = merchantId
15435	c.datafeedId = datafeedId
15436	c.datafeed = datafeed
15437	return c
15438}
15439
15440// DryRun sets the optional parameter "dryRun": Flag to simulate a
15441// request like in a live environment. If set to true, dry-run mode
15442// checks the validity of the request and returns errors (if any).
15443func (c *DatafeedsUpdateCall) DryRun(dryRun bool) *DatafeedsUpdateCall {
15444	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
15445	return c
15446}
15447
15448// Fields allows partial responses to be retrieved. See
15449// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
15450// for more information.
15451func (c *DatafeedsUpdateCall) Fields(s ...googleapi.Field) *DatafeedsUpdateCall {
15452	c.urlParams_.Set("fields", googleapi.CombineFields(s))
15453	return c
15454}
15455
15456// Context sets the context to be used in this call's Do method. Any
15457// pending HTTP request will be aborted if the provided context is
15458// canceled.
15459func (c *DatafeedsUpdateCall) Context(ctx context.Context) *DatafeedsUpdateCall {
15460	c.ctx_ = ctx
15461	return c
15462}
15463
15464// Header returns an http.Header that can be modified by the caller to
15465// add HTTP headers to the request.
15466func (c *DatafeedsUpdateCall) Header() http.Header {
15467	if c.header_ == nil {
15468		c.header_ = make(http.Header)
15469	}
15470	return c.header_
15471}
15472
15473func (c *DatafeedsUpdateCall) doRequest(alt string) (*http.Response, error) {
15474	reqHeaders := make(http.Header)
15475	for k, v := range c.header_ {
15476		reqHeaders[k] = v
15477	}
15478	reqHeaders.Set("User-Agent", c.s.userAgent())
15479	var body io.Reader = nil
15480	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeed)
15481	if err != nil {
15482		return nil, err
15483	}
15484	reqHeaders.Set("Content-Type", "application/json")
15485	c.urlParams_.Set("alt", alt)
15486	c.urlParams_.Set("prettyPrint", "false")
15487	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds/{datafeedId}")
15488	urls += "?" + c.urlParams_.Encode()
15489	req, err := http.NewRequest("PUT", urls, body)
15490	if err != nil {
15491		return nil, err
15492	}
15493	req.Header = reqHeaders
15494	googleapi.Expand(req.URL, map[string]string{
15495		"merchantId": strconv.FormatUint(c.merchantId, 10),
15496		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
15497	})
15498	return gensupport.SendRequest(c.ctx_, c.s.client, req)
15499}
15500
15501// Do executes the "content.datafeeds.update" call.
15502// Exactly one of *Datafeed or error will be non-nil. Any non-2xx status
15503// code is an error. Response headers are in either
15504// *Datafeed.ServerResponse.Header or (if a response was returned at
15505// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
15506// to check whether the returned error was because
15507// http.StatusNotModified was returned.
15508func (c *DatafeedsUpdateCall) Do(opts ...googleapi.CallOption) (*Datafeed, error) {
15509	gensupport.SetOptions(c.urlParams_, opts...)
15510	res, err := c.doRequest("json")
15511	if res != nil && res.StatusCode == http.StatusNotModified {
15512		if res.Body != nil {
15513			res.Body.Close()
15514		}
15515		return nil, &googleapi.Error{
15516			Code:   res.StatusCode,
15517			Header: res.Header,
15518		}
15519	}
15520	if err != nil {
15521		return nil, err
15522	}
15523	defer googleapi.CloseBody(res)
15524	if err := googleapi.CheckResponse(res); err != nil {
15525		return nil, err
15526	}
15527	ret := &Datafeed{
15528		ServerResponse: googleapi.ServerResponse{
15529			Header:         res.Header,
15530			HTTPStatusCode: res.StatusCode,
15531		},
15532	}
15533	target := &ret
15534	if err := gensupport.DecodeResponse(target, res); err != nil {
15535		return nil, err
15536	}
15537	return ret, nil
15538	// {
15539	//   "description": "Updates a datafeed configuration of your Merchant Center account.",
15540	//   "httpMethod": "PUT",
15541	//   "id": "content.datafeeds.update",
15542	//   "parameterOrder": [
15543	//     "merchantId",
15544	//     "datafeedId"
15545	//   ],
15546	//   "parameters": {
15547	//     "datafeedId": {
15548	//       "description": "The ID of the datafeed.",
15549	//       "format": "uint64",
15550	//       "location": "path",
15551	//       "required": true,
15552	//       "type": "string"
15553	//     },
15554	//     "dryRun": {
15555	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
15556	//       "location": "query",
15557	//       "type": "boolean"
15558	//     },
15559	//     "merchantId": {
15560	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
15561	//       "format": "uint64",
15562	//       "location": "path",
15563	//       "required": true,
15564	//       "type": "string"
15565	//     }
15566	//   },
15567	//   "path": "{merchantId}/datafeeds/{datafeedId}",
15568	//   "request": {
15569	//     "$ref": "Datafeed"
15570	//   },
15571	//   "response": {
15572	//     "$ref": "Datafeed"
15573	//   },
15574	//   "scopes": [
15575	//     "https://www.googleapis.com/auth/content"
15576	//   ]
15577	// }
15578
15579}
15580
15581// method id "content.datafeedstatuses.custombatch":
15582
15583type DatafeedstatusesCustombatchCall struct {
15584	s                                  *APIService
15585	datafeedstatusescustombatchrequest *DatafeedstatusesCustomBatchRequest
15586	urlParams_                         gensupport.URLParams
15587	ctx_                               context.Context
15588	header_                            http.Header
15589}
15590
15591// Custombatch: Gets multiple Merchant Center datafeed statuses in a
15592// single request.
15593func (r *DatafeedstatusesService) Custombatch(datafeedstatusescustombatchrequest *DatafeedstatusesCustomBatchRequest) *DatafeedstatusesCustombatchCall {
15594	c := &DatafeedstatusesCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
15595	c.datafeedstatusescustombatchrequest = datafeedstatusescustombatchrequest
15596	return c
15597}
15598
15599// Fields allows partial responses to be retrieved. See
15600// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
15601// for more information.
15602func (c *DatafeedstatusesCustombatchCall) Fields(s ...googleapi.Field) *DatafeedstatusesCustombatchCall {
15603	c.urlParams_.Set("fields", googleapi.CombineFields(s))
15604	return c
15605}
15606
15607// Context sets the context to be used in this call's Do method. Any
15608// pending HTTP request will be aborted if the provided context is
15609// canceled.
15610func (c *DatafeedstatusesCustombatchCall) Context(ctx context.Context) *DatafeedstatusesCustombatchCall {
15611	c.ctx_ = ctx
15612	return c
15613}
15614
15615// Header returns an http.Header that can be modified by the caller to
15616// add HTTP headers to the request.
15617func (c *DatafeedstatusesCustombatchCall) Header() http.Header {
15618	if c.header_ == nil {
15619		c.header_ = make(http.Header)
15620	}
15621	return c.header_
15622}
15623
15624func (c *DatafeedstatusesCustombatchCall) doRequest(alt string) (*http.Response, error) {
15625	reqHeaders := make(http.Header)
15626	for k, v := range c.header_ {
15627		reqHeaders[k] = v
15628	}
15629	reqHeaders.Set("User-Agent", c.s.userAgent())
15630	var body io.Reader = nil
15631	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeedstatusescustombatchrequest)
15632	if err != nil {
15633		return nil, err
15634	}
15635	reqHeaders.Set("Content-Type", "application/json")
15636	c.urlParams_.Set("alt", alt)
15637	c.urlParams_.Set("prettyPrint", "false")
15638	urls := googleapi.ResolveRelative(c.s.BasePath, "datafeedstatuses/batch")
15639	urls += "?" + c.urlParams_.Encode()
15640	req, err := http.NewRequest("POST", urls, body)
15641	if err != nil {
15642		return nil, err
15643	}
15644	req.Header = reqHeaders
15645	return gensupport.SendRequest(c.ctx_, c.s.client, req)
15646}
15647
15648// Do executes the "content.datafeedstatuses.custombatch" call.
15649// Exactly one of *DatafeedstatusesCustomBatchResponse or error will be
15650// non-nil. Any non-2xx status code is an error. Response headers are in
15651// either *DatafeedstatusesCustomBatchResponse.ServerResponse.Header or
15652// (if a response was returned at all) in
15653// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
15654// whether the returned error was because http.StatusNotModified was
15655// returned.
15656func (c *DatafeedstatusesCustombatchCall) Do(opts ...googleapi.CallOption) (*DatafeedstatusesCustomBatchResponse, error) {
15657	gensupport.SetOptions(c.urlParams_, opts...)
15658	res, err := c.doRequest("json")
15659	if res != nil && res.StatusCode == http.StatusNotModified {
15660		if res.Body != nil {
15661			res.Body.Close()
15662		}
15663		return nil, &googleapi.Error{
15664			Code:   res.StatusCode,
15665			Header: res.Header,
15666		}
15667	}
15668	if err != nil {
15669		return nil, err
15670	}
15671	defer googleapi.CloseBody(res)
15672	if err := googleapi.CheckResponse(res); err != nil {
15673		return nil, err
15674	}
15675	ret := &DatafeedstatusesCustomBatchResponse{
15676		ServerResponse: googleapi.ServerResponse{
15677			Header:         res.Header,
15678			HTTPStatusCode: res.StatusCode,
15679		},
15680	}
15681	target := &ret
15682	if err := gensupport.DecodeResponse(target, res); err != nil {
15683		return nil, err
15684	}
15685	return ret, nil
15686	// {
15687	//   "description": "Gets multiple Merchant Center datafeed statuses in a single request.",
15688	//   "httpMethod": "POST",
15689	//   "id": "content.datafeedstatuses.custombatch",
15690	//   "path": "datafeedstatuses/batch",
15691	//   "request": {
15692	//     "$ref": "DatafeedstatusesCustomBatchRequest"
15693	//   },
15694	//   "response": {
15695	//     "$ref": "DatafeedstatusesCustomBatchResponse"
15696	//   },
15697	//   "scopes": [
15698	//     "https://www.googleapis.com/auth/content"
15699	//   ]
15700	// }
15701
15702}
15703
15704// method id "content.datafeedstatuses.get":
15705
15706type DatafeedstatusesGetCall struct {
15707	s            *APIService
15708	merchantId   uint64
15709	datafeedId   uint64
15710	urlParams_   gensupport.URLParams
15711	ifNoneMatch_ string
15712	ctx_         context.Context
15713	header_      http.Header
15714}
15715
15716// Get: Retrieves the status of a datafeed from your Merchant Center
15717// account.
15718func (r *DatafeedstatusesService) Get(merchantId uint64, datafeedId uint64) *DatafeedstatusesGetCall {
15719	c := &DatafeedstatusesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
15720	c.merchantId = merchantId
15721	c.datafeedId = datafeedId
15722	return c
15723}
15724
15725// Country sets the optional parameter "country": The country for which
15726// to get the datafeed status. If this parameter is provided then
15727// language must also be provided. Note that this parameter is required
15728// for feeds targeting multiple countries and languages, since a feed
15729// may have a different status for each target.
15730func (c *DatafeedstatusesGetCall) Country(country string) *DatafeedstatusesGetCall {
15731	c.urlParams_.Set("country", country)
15732	return c
15733}
15734
15735// Language sets the optional parameter "language": The language for
15736// which to get the datafeed status. If this parameter is provided then
15737// country must also be provided. Note that this parameter is required
15738// for feeds targeting multiple countries and languages, since a feed
15739// may have a different status for each target.
15740func (c *DatafeedstatusesGetCall) Language(language string) *DatafeedstatusesGetCall {
15741	c.urlParams_.Set("language", language)
15742	return c
15743}
15744
15745// Fields allows partial responses to be retrieved. See
15746// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
15747// for more information.
15748func (c *DatafeedstatusesGetCall) Fields(s ...googleapi.Field) *DatafeedstatusesGetCall {
15749	c.urlParams_.Set("fields", googleapi.CombineFields(s))
15750	return c
15751}
15752
15753// IfNoneMatch sets the optional parameter which makes the operation
15754// fail if the object's ETag matches the given value. This is useful for
15755// getting updates only after the object has changed since the last
15756// request. Use googleapi.IsNotModified to check whether the response
15757// error from Do is the result of In-None-Match.
15758func (c *DatafeedstatusesGetCall) IfNoneMatch(entityTag string) *DatafeedstatusesGetCall {
15759	c.ifNoneMatch_ = entityTag
15760	return c
15761}
15762
15763// Context sets the context to be used in this call's Do method. Any
15764// pending HTTP request will be aborted if the provided context is
15765// canceled.
15766func (c *DatafeedstatusesGetCall) Context(ctx context.Context) *DatafeedstatusesGetCall {
15767	c.ctx_ = ctx
15768	return c
15769}
15770
15771// Header returns an http.Header that can be modified by the caller to
15772// add HTTP headers to the request.
15773func (c *DatafeedstatusesGetCall) Header() http.Header {
15774	if c.header_ == nil {
15775		c.header_ = make(http.Header)
15776	}
15777	return c.header_
15778}
15779
15780func (c *DatafeedstatusesGetCall) doRequest(alt string) (*http.Response, error) {
15781	reqHeaders := make(http.Header)
15782	for k, v := range c.header_ {
15783		reqHeaders[k] = v
15784	}
15785	reqHeaders.Set("User-Agent", c.s.userAgent())
15786	if c.ifNoneMatch_ != "" {
15787		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
15788	}
15789	var body io.Reader = nil
15790	c.urlParams_.Set("alt", alt)
15791	c.urlParams_.Set("prettyPrint", "false")
15792	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeedstatuses/{datafeedId}")
15793	urls += "?" + c.urlParams_.Encode()
15794	req, err := http.NewRequest("GET", urls, body)
15795	if err != nil {
15796		return nil, err
15797	}
15798	req.Header = reqHeaders
15799	googleapi.Expand(req.URL, map[string]string{
15800		"merchantId": strconv.FormatUint(c.merchantId, 10),
15801		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
15802	})
15803	return gensupport.SendRequest(c.ctx_, c.s.client, req)
15804}
15805
15806// Do executes the "content.datafeedstatuses.get" call.
15807// Exactly one of *DatafeedStatus or error will be non-nil. Any non-2xx
15808// status code is an error. Response headers are in either
15809// *DatafeedStatus.ServerResponse.Header or (if a response was returned
15810// at all) in error.(*googleapi.Error).Header. Use
15811// googleapi.IsNotModified to check whether the returned error was
15812// because http.StatusNotModified was returned.
15813func (c *DatafeedstatusesGetCall) Do(opts ...googleapi.CallOption) (*DatafeedStatus, error) {
15814	gensupport.SetOptions(c.urlParams_, opts...)
15815	res, err := c.doRequest("json")
15816	if res != nil && res.StatusCode == http.StatusNotModified {
15817		if res.Body != nil {
15818			res.Body.Close()
15819		}
15820		return nil, &googleapi.Error{
15821			Code:   res.StatusCode,
15822			Header: res.Header,
15823		}
15824	}
15825	if err != nil {
15826		return nil, err
15827	}
15828	defer googleapi.CloseBody(res)
15829	if err := googleapi.CheckResponse(res); err != nil {
15830		return nil, err
15831	}
15832	ret := &DatafeedStatus{
15833		ServerResponse: googleapi.ServerResponse{
15834			Header:         res.Header,
15835			HTTPStatusCode: res.StatusCode,
15836		},
15837	}
15838	target := &ret
15839	if err := gensupport.DecodeResponse(target, res); err != nil {
15840		return nil, err
15841	}
15842	return ret, nil
15843	// {
15844	//   "description": "Retrieves the status of a datafeed from your Merchant Center account.",
15845	//   "httpMethod": "GET",
15846	//   "id": "content.datafeedstatuses.get",
15847	//   "parameterOrder": [
15848	//     "merchantId",
15849	//     "datafeedId"
15850	//   ],
15851	//   "parameters": {
15852	//     "country": {
15853	//       "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.",
15854	//       "location": "query",
15855	//       "type": "string"
15856	//     },
15857	//     "datafeedId": {
15858	//       "description": "The ID of the datafeed.",
15859	//       "format": "uint64",
15860	//       "location": "path",
15861	//       "required": true,
15862	//       "type": "string"
15863	//     },
15864	//     "language": {
15865	//       "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.",
15866	//       "location": "query",
15867	//       "type": "string"
15868	//     },
15869	//     "merchantId": {
15870	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
15871	//       "format": "uint64",
15872	//       "location": "path",
15873	//       "required": true,
15874	//       "type": "string"
15875	//     }
15876	//   },
15877	//   "path": "{merchantId}/datafeedstatuses/{datafeedId}",
15878	//   "response": {
15879	//     "$ref": "DatafeedStatus"
15880	//   },
15881	//   "scopes": [
15882	//     "https://www.googleapis.com/auth/content"
15883	//   ]
15884	// }
15885
15886}
15887
15888// method id "content.datafeedstatuses.list":
15889
15890type DatafeedstatusesListCall struct {
15891	s            *APIService
15892	merchantId   uint64
15893	urlParams_   gensupport.URLParams
15894	ifNoneMatch_ string
15895	ctx_         context.Context
15896	header_      http.Header
15897}
15898
15899// List: Lists the statuses of the datafeeds in your Merchant Center
15900// account.
15901func (r *DatafeedstatusesService) List(merchantId uint64) *DatafeedstatusesListCall {
15902	c := &DatafeedstatusesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
15903	c.merchantId = merchantId
15904	return c
15905}
15906
15907// MaxResults sets the optional parameter "maxResults": The maximum
15908// number of products to return in the response, used for paging.
15909func (c *DatafeedstatusesListCall) MaxResults(maxResults int64) *DatafeedstatusesListCall {
15910	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
15911	return c
15912}
15913
15914// PageToken sets the optional parameter "pageToken": The token returned
15915// by the previous request.
15916func (c *DatafeedstatusesListCall) PageToken(pageToken string) *DatafeedstatusesListCall {
15917	c.urlParams_.Set("pageToken", pageToken)
15918	return c
15919}
15920
15921// Fields allows partial responses to be retrieved. See
15922// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
15923// for more information.
15924func (c *DatafeedstatusesListCall) Fields(s ...googleapi.Field) *DatafeedstatusesListCall {
15925	c.urlParams_.Set("fields", googleapi.CombineFields(s))
15926	return c
15927}
15928
15929// IfNoneMatch sets the optional parameter which makes the operation
15930// fail if the object's ETag matches the given value. This is useful for
15931// getting updates only after the object has changed since the last
15932// request. Use googleapi.IsNotModified to check whether the response
15933// error from Do is the result of In-None-Match.
15934func (c *DatafeedstatusesListCall) IfNoneMatch(entityTag string) *DatafeedstatusesListCall {
15935	c.ifNoneMatch_ = entityTag
15936	return c
15937}
15938
15939// Context sets the context to be used in this call's Do method. Any
15940// pending HTTP request will be aborted if the provided context is
15941// canceled.
15942func (c *DatafeedstatusesListCall) Context(ctx context.Context) *DatafeedstatusesListCall {
15943	c.ctx_ = ctx
15944	return c
15945}
15946
15947// Header returns an http.Header that can be modified by the caller to
15948// add HTTP headers to the request.
15949func (c *DatafeedstatusesListCall) Header() http.Header {
15950	if c.header_ == nil {
15951		c.header_ = make(http.Header)
15952	}
15953	return c.header_
15954}
15955
15956func (c *DatafeedstatusesListCall) doRequest(alt string) (*http.Response, error) {
15957	reqHeaders := make(http.Header)
15958	for k, v := range c.header_ {
15959		reqHeaders[k] = v
15960	}
15961	reqHeaders.Set("User-Agent", c.s.userAgent())
15962	if c.ifNoneMatch_ != "" {
15963		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
15964	}
15965	var body io.Reader = nil
15966	c.urlParams_.Set("alt", alt)
15967	c.urlParams_.Set("prettyPrint", "false")
15968	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeedstatuses")
15969	urls += "?" + c.urlParams_.Encode()
15970	req, err := http.NewRequest("GET", urls, body)
15971	if err != nil {
15972		return nil, err
15973	}
15974	req.Header = reqHeaders
15975	googleapi.Expand(req.URL, map[string]string{
15976		"merchantId": strconv.FormatUint(c.merchantId, 10),
15977	})
15978	return gensupport.SendRequest(c.ctx_, c.s.client, req)
15979}
15980
15981// Do executes the "content.datafeedstatuses.list" call.
15982// Exactly one of *DatafeedstatusesListResponse or error will be
15983// non-nil. Any non-2xx status code is an error. Response headers are in
15984// either *DatafeedstatusesListResponse.ServerResponse.Header or (if a
15985// response was returned at all) in error.(*googleapi.Error).Header. Use
15986// googleapi.IsNotModified to check whether the returned error was
15987// because http.StatusNotModified was returned.
15988func (c *DatafeedstatusesListCall) Do(opts ...googleapi.CallOption) (*DatafeedstatusesListResponse, error) {
15989	gensupport.SetOptions(c.urlParams_, opts...)
15990	res, err := c.doRequest("json")
15991	if res != nil && res.StatusCode == http.StatusNotModified {
15992		if res.Body != nil {
15993			res.Body.Close()
15994		}
15995		return nil, &googleapi.Error{
15996			Code:   res.StatusCode,
15997			Header: res.Header,
15998		}
15999	}
16000	if err != nil {
16001		return nil, err
16002	}
16003	defer googleapi.CloseBody(res)
16004	if err := googleapi.CheckResponse(res); err != nil {
16005		return nil, err
16006	}
16007	ret := &DatafeedstatusesListResponse{
16008		ServerResponse: googleapi.ServerResponse{
16009			Header:         res.Header,
16010			HTTPStatusCode: res.StatusCode,
16011		},
16012	}
16013	target := &ret
16014	if err := gensupport.DecodeResponse(target, res); err != nil {
16015		return nil, err
16016	}
16017	return ret, nil
16018	// {
16019	//   "description": "Lists the statuses of the datafeeds in your Merchant Center account.",
16020	//   "httpMethod": "GET",
16021	//   "id": "content.datafeedstatuses.list",
16022	//   "parameterOrder": [
16023	//     "merchantId"
16024	//   ],
16025	//   "parameters": {
16026	//     "maxResults": {
16027	//       "description": "The maximum number of products to return in the response, used for paging.",
16028	//       "format": "uint32",
16029	//       "location": "query",
16030	//       "type": "integer"
16031	//     },
16032	//     "merchantId": {
16033	//       "description": "The ID of the account that manages the datafeeds. This account cannot be a multi-client account.",
16034	//       "format": "uint64",
16035	//       "location": "path",
16036	//       "required": true,
16037	//       "type": "string"
16038	//     },
16039	//     "pageToken": {
16040	//       "description": "The token returned by the previous request.",
16041	//       "location": "query",
16042	//       "type": "string"
16043	//     }
16044	//   },
16045	//   "path": "{merchantId}/datafeedstatuses",
16046	//   "response": {
16047	//     "$ref": "DatafeedstatusesListResponse"
16048	//   },
16049	//   "scopes": [
16050	//     "https://www.googleapis.com/auth/content"
16051	//   ]
16052	// }
16053
16054}
16055
16056// Pages invokes f for each page of results.
16057// A non-nil error returned from f will halt the iteration.
16058// The provided context supersedes any context provided to the Context method.
16059func (c *DatafeedstatusesListCall) Pages(ctx context.Context, f func(*DatafeedstatusesListResponse) error) error {
16060	c.ctx_ = ctx
16061	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
16062	for {
16063		x, err := c.Do()
16064		if err != nil {
16065			return err
16066		}
16067		if err := f(x); err != nil {
16068			return err
16069		}
16070		if x.NextPageToken == "" {
16071			return nil
16072		}
16073		c.PageToken(x.NextPageToken)
16074	}
16075}
16076
16077// method id "content.inventory.custombatch":
16078
16079type InventoryCustombatchCall struct {
16080	s                           *APIService
16081	inventorycustombatchrequest *InventoryCustomBatchRequest
16082	urlParams_                  gensupport.URLParams
16083	ctx_                        context.Context
16084	header_                     http.Header
16085}
16086
16087// Custombatch: Updates price and availability for multiple products or
16088// stores in a single request. This operation does not update the
16089// expiration date of the products.
16090func (r *InventoryService) Custombatch(inventorycustombatchrequest *InventoryCustomBatchRequest) *InventoryCustombatchCall {
16091	c := &InventoryCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16092	c.inventorycustombatchrequest = inventorycustombatchrequest
16093	return c
16094}
16095
16096// DryRun sets the optional parameter "dryRun": Flag to simulate a
16097// request like in a live environment. If set to true, dry-run mode
16098// checks the validity of the request and returns errors (if any).
16099func (c *InventoryCustombatchCall) DryRun(dryRun bool) *InventoryCustombatchCall {
16100	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
16101	return c
16102}
16103
16104// Fields allows partial responses to be retrieved. See
16105// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16106// for more information.
16107func (c *InventoryCustombatchCall) Fields(s ...googleapi.Field) *InventoryCustombatchCall {
16108	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16109	return c
16110}
16111
16112// Context sets the context to be used in this call's Do method. Any
16113// pending HTTP request will be aborted if the provided context is
16114// canceled.
16115func (c *InventoryCustombatchCall) Context(ctx context.Context) *InventoryCustombatchCall {
16116	c.ctx_ = ctx
16117	return c
16118}
16119
16120// Header returns an http.Header that can be modified by the caller to
16121// add HTTP headers to the request.
16122func (c *InventoryCustombatchCall) Header() http.Header {
16123	if c.header_ == nil {
16124		c.header_ = make(http.Header)
16125	}
16126	return c.header_
16127}
16128
16129func (c *InventoryCustombatchCall) doRequest(alt string) (*http.Response, error) {
16130	reqHeaders := make(http.Header)
16131	for k, v := range c.header_ {
16132		reqHeaders[k] = v
16133	}
16134	reqHeaders.Set("User-Agent", c.s.userAgent())
16135	var body io.Reader = nil
16136	body, err := googleapi.WithoutDataWrapper.JSONReader(c.inventorycustombatchrequest)
16137	if err != nil {
16138		return nil, err
16139	}
16140	reqHeaders.Set("Content-Type", "application/json")
16141	c.urlParams_.Set("alt", alt)
16142	c.urlParams_.Set("prettyPrint", "false")
16143	urls := googleapi.ResolveRelative(c.s.BasePath, "inventory/batch")
16144	urls += "?" + c.urlParams_.Encode()
16145	req, err := http.NewRequest("POST", urls, body)
16146	if err != nil {
16147		return nil, err
16148	}
16149	req.Header = reqHeaders
16150	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16151}
16152
16153// Do executes the "content.inventory.custombatch" call.
16154// Exactly one of *InventoryCustomBatchResponse or error will be
16155// non-nil. Any non-2xx status code is an error. Response headers are in
16156// either *InventoryCustomBatchResponse.ServerResponse.Header or (if a
16157// response was returned at all) in error.(*googleapi.Error).Header. Use
16158// googleapi.IsNotModified to check whether the returned error was
16159// because http.StatusNotModified was returned.
16160func (c *InventoryCustombatchCall) Do(opts ...googleapi.CallOption) (*InventoryCustomBatchResponse, error) {
16161	gensupport.SetOptions(c.urlParams_, opts...)
16162	res, err := c.doRequest("json")
16163	if res != nil && res.StatusCode == http.StatusNotModified {
16164		if res.Body != nil {
16165			res.Body.Close()
16166		}
16167		return nil, &googleapi.Error{
16168			Code:   res.StatusCode,
16169			Header: res.Header,
16170		}
16171	}
16172	if err != nil {
16173		return nil, err
16174	}
16175	defer googleapi.CloseBody(res)
16176	if err := googleapi.CheckResponse(res); err != nil {
16177		return nil, err
16178	}
16179	ret := &InventoryCustomBatchResponse{
16180		ServerResponse: googleapi.ServerResponse{
16181			Header:         res.Header,
16182			HTTPStatusCode: res.StatusCode,
16183		},
16184	}
16185	target := &ret
16186	if err := gensupport.DecodeResponse(target, res); err != nil {
16187		return nil, err
16188	}
16189	return ret, nil
16190	// {
16191	//   "description": "Updates price and availability for multiple products or stores in a single request. This operation does not update the expiration date of the products.",
16192	//   "httpMethod": "POST",
16193	//   "id": "content.inventory.custombatch",
16194	//   "parameters": {
16195	//     "dryRun": {
16196	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
16197	//       "location": "query",
16198	//       "type": "boolean"
16199	//     }
16200	//   },
16201	//   "path": "inventory/batch",
16202	//   "request": {
16203	//     "$ref": "InventoryCustomBatchRequest"
16204	//   },
16205	//   "response": {
16206	//     "$ref": "InventoryCustomBatchResponse"
16207	//   },
16208	//   "scopes": [
16209	//     "https://www.googleapis.com/auth/content"
16210	//   ]
16211	// }
16212
16213}
16214
16215// method id "content.inventory.set":
16216
16217type InventorySetCall struct {
16218	s                   *APIService
16219	merchantId          uint64
16220	storeCode           string
16221	productId           string
16222	inventorysetrequest *InventorySetRequest
16223	urlParams_          gensupport.URLParams
16224	ctx_                context.Context
16225	header_             http.Header
16226}
16227
16228// Set: Updates price and availability of a product in your Merchant
16229// Center account.
16230func (r *InventoryService) Set(merchantId uint64, storeCode string, productId string, inventorysetrequest *InventorySetRequest) *InventorySetCall {
16231	c := &InventorySetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16232	c.merchantId = merchantId
16233	c.storeCode = storeCode
16234	c.productId = productId
16235	c.inventorysetrequest = inventorysetrequest
16236	return c
16237}
16238
16239// DryRun sets the optional parameter "dryRun": Flag to simulate a
16240// request like in a live environment. If set to true, dry-run mode
16241// checks the validity of the request and returns errors (if any).
16242func (c *InventorySetCall) DryRun(dryRun bool) *InventorySetCall {
16243	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
16244	return c
16245}
16246
16247// Fields allows partial responses to be retrieved. See
16248// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16249// for more information.
16250func (c *InventorySetCall) Fields(s ...googleapi.Field) *InventorySetCall {
16251	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16252	return c
16253}
16254
16255// Context sets the context to be used in this call's Do method. Any
16256// pending HTTP request will be aborted if the provided context is
16257// canceled.
16258func (c *InventorySetCall) Context(ctx context.Context) *InventorySetCall {
16259	c.ctx_ = ctx
16260	return c
16261}
16262
16263// Header returns an http.Header that can be modified by the caller to
16264// add HTTP headers to the request.
16265func (c *InventorySetCall) Header() http.Header {
16266	if c.header_ == nil {
16267		c.header_ = make(http.Header)
16268	}
16269	return c.header_
16270}
16271
16272func (c *InventorySetCall) doRequest(alt string) (*http.Response, error) {
16273	reqHeaders := make(http.Header)
16274	for k, v := range c.header_ {
16275		reqHeaders[k] = v
16276	}
16277	reqHeaders.Set("User-Agent", c.s.userAgent())
16278	var body io.Reader = nil
16279	body, err := googleapi.WithoutDataWrapper.JSONReader(c.inventorysetrequest)
16280	if err != nil {
16281		return nil, err
16282	}
16283	reqHeaders.Set("Content-Type", "application/json")
16284	c.urlParams_.Set("alt", alt)
16285	c.urlParams_.Set("prettyPrint", "false")
16286	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/inventory/{storeCode}/products/{productId}")
16287	urls += "?" + c.urlParams_.Encode()
16288	req, err := http.NewRequest("POST", urls, body)
16289	if err != nil {
16290		return nil, err
16291	}
16292	req.Header = reqHeaders
16293	googleapi.Expand(req.URL, map[string]string{
16294		"merchantId": strconv.FormatUint(c.merchantId, 10),
16295		"storeCode":  c.storeCode,
16296		"productId":  c.productId,
16297	})
16298	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16299}
16300
16301// Do executes the "content.inventory.set" call.
16302// Exactly one of *InventorySetResponse or error will be non-nil. Any
16303// non-2xx status code is an error. Response headers are in either
16304// *InventorySetResponse.ServerResponse.Header or (if a response was
16305// returned at all) in error.(*googleapi.Error).Header. Use
16306// googleapi.IsNotModified to check whether the returned error was
16307// because http.StatusNotModified was returned.
16308func (c *InventorySetCall) Do(opts ...googleapi.CallOption) (*InventorySetResponse, error) {
16309	gensupport.SetOptions(c.urlParams_, opts...)
16310	res, err := c.doRequest("json")
16311	if res != nil && res.StatusCode == http.StatusNotModified {
16312		if res.Body != nil {
16313			res.Body.Close()
16314		}
16315		return nil, &googleapi.Error{
16316			Code:   res.StatusCode,
16317			Header: res.Header,
16318		}
16319	}
16320	if err != nil {
16321		return nil, err
16322	}
16323	defer googleapi.CloseBody(res)
16324	if err := googleapi.CheckResponse(res); err != nil {
16325		return nil, err
16326	}
16327	ret := &InventorySetResponse{
16328		ServerResponse: googleapi.ServerResponse{
16329			Header:         res.Header,
16330			HTTPStatusCode: res.StatusCode,
16331		},
16332	}
16333	target := &ret
16334	if err := gensupport.DecodeResponse(target, res); err != nil {
16335		return nil, err
16336	}
16337	return ret, nil
16338	// {
16339	//   "description": "Updates price and availability of a product in your Merchant Center account.",
16340	//   "httpMethod": "POST",
16341	//   "id": "content.inventory.set",
16342	//   "parameterOrder": [
16343	//     "merchantId",
16344	//     "storeCode",
16345	//     "productId"
16346	//   ],
16347	//   "parameters": {
16348	//     "dryRun": {
16349	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
16350	//       "location": "query",
16351	//       "type": "boolean"
16352	//     },
16353	//     "merchantId": {
16354	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
16355	//       "format": "uint64",
16356	//       "location": "path",
16357	//       "required": true,
16358	//       "type": "string"
16359	//     },
16360	//     "productId": {
16361	//       "description": "The REST ID of the product for which to update price and availability.",
16362	//       "location": "path",
16363	//       "required": true,
16364	//       "type": "string"
16365	//     },
16366	//     "storeCode": {
16367	//       "description": "The code of the store for which to update price and availability. Use online to update price and availability of an online product.",
16368	//       "location": "path",
16369	//       "required": true,
16370	//       "type": "string"
16371	//     }
16372	//   },
16373	//   "path": "{merchantId}/inventory/{storeCode}/products/{productId}",
16374	//   "request": {
16375	//     "$ref": "InventorySetRequest"
16376	//   },
16377	//   "response": {
16378	//     "$ref": "InventorySetResponse"
16379	//   },
16380	//   "scopes": [
16381	//     "https://www.googleapis.com/auth/content"
16382	//   ]
16383	// }
16384
16385}
16386
16387// method id "content.liasettings.custombatch":
16388
16389type LiasettingsCustombatchCall struct {
16390	s                             *APIService
16391	liasettingscustombatchrequest *LiasettingsCustomBatchRequest
16392	urlParams_                    gensupport.URLParams
16393	ctx_                          context.Context
16394	header_                       http.Header
16395}
16396
16397// Custombatch: Retrieves and/or updates the LIA settings of multiple
16398// accounts in a single request.
16399func (r *LiasettingsService) Custombatch(liasettingscustombatchrequest *LiasettingsCustomBatchRequest) *LiasettingsCustombatchCall {
16400	c := &LiasettingsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16401	c.liasettingscustombatchrequest = liasettingscustombatchrequest
16402	return c
16403}
16404
16405// DryRun sets the optional parameter "dryRun": Flag to simulate a
16406// request like in a live environment. If set to true, dry-run mode
16407// checks the validity of the request and returns errors (if any).
16408func (c *LiasettingsCustombatchCall) DryRun(dryRun bool) *LiasettingsCustombatchCall {
16409	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
16410	return c
16411}
16412
16413// Fields allows partial responses to be retrieved. See
16414// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16415// for more information.
16416func (c *LiasettingsCustombatchCall) Fields(s ...googleapi.Field) *LiasettingsCustombatchCall {
16417	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16418	return c
16419}
16420
16421// Context sets the context to be used in this call's Do method. Any
16422// pending HTTP request will be aborted if the provided context is
16423// canceled.
16424func (c *LiasettingsCustombatchCall) Context(ctx context.Context) *LiasettingsCustombatchCall {
16425	c.ctx_ = ctx
16426	return c
16427}
16428
16429// Header returns an http.Header that can be modified by the caller to
16430// add HTTP headers to the request.
16431func (c *LiasettingsCustombatchCall) Header() http.Header {
16432	if c.header_ == nil {
16433		c.header_ = make(http.Header)
16434	}
16435	return c.header_
16436}
16437
16438func (c *LiasettingsCustombatchCall) doRequest(alt string) (*http.Response, error) {
16439	reqHeaders := make(http.Header)
16440	for k, v := range c.header_ {
16441		reqHeaders[k] = v
16442	}
16443	reqHeaders.Set("User-Agent", c.s.userAgent())
16444	var body io.Reader = nil
16445	body, err := googleapi.WithoutDataWrapper.JSONReader(c.liasettingscustombatchrequest)
16446	if err != nil {
16447		return nil, err
16448	}
16449	reqHeaders.Set("Content-Type", "application/json")
16450	c.urlParams_.Set("alt", alt)
16451	c.urlParams_.Set("prettyPrint", "false")
16452	urls := googleapi.ResolveRelative(c.s.BasePath, "liasettings/batch")
16453	urls += "?" + c.urlParams_.Encode()
16454	req, err := http.NewRequest("POST", urls, body)
16455	if err != nil {
16456		return nil, err
16457	}
16458	req.Header = reqHeaders
16459	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16460}
16461
16462// Do executes the "content.liasettings.custombatch" call.
16463// Exactly one of *LiasettingsCustomBatchResponse or error will be
16464// non-nil. Any non-2xx status code is an error. Response headers are in
16465// either *LiasettingsCustomBatchResponse.ServerResponse.Header or (if a
16466// response was returned at all) in error.(*googleapi.Error).Header. Use
16467// googleapi.IsNotModified to check whether the returned error was
16468// because http.StatusNotModified was returned.
16469func (c *LiasettingsCustombatchCall) Do(opts ...googleapi.CallOption) (*LiasettingsCustomBatchResponse, error) {
16470	gensupport.SetOptions(c.urlParams_, opts...)
16471	res, err := c.doRequest("json")
16472	if res != nil && res.StatusCode == http.StatusNotModified {
16473		if res.Body != nil {
16474			res.Body.Close()
16475		}
16476		return nil, &googleapi.Error{
16477			Code:   res.StatusCode,
16478			Header: res.Header,
16479		}
16480	}
16481	if err != nil {
16482		return nil, err
16483	}
16484	defer googleapi.CloseBody(res)
16485	if err := googleapi.CheckResponse(res); err != nil {
16486		return nil, err
16487	}
16488	ret := &LiasettingsCustomBatchResponse{
16489		ServerResponse: googleapi.ServerResponse{
16490			Header:         res.Header,
16491			HTTPStatusCode: res.StatusCode,
16492		},
16493	}
16494	target := &ret
16495	if err := gensupport.DecodeResponse(target, res); err != nil {
16496		return nil, err
16497	}
16498	return ret, nil
16499	// {
16500	//   "description": "Retrieves and/or updates the LIA settings of multiple accounts in a single request.",
16501	//   "httpMethod": "POST",
16502	//   "id": "content.liasettings.custombatch",
16503	//   "parameters": {
16504	//     "dryRun": {
16505	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
16506	//       "location": "query",
16507	//       "type": "boolean"
16508	//     }
16509	//   },
16510	//   "path": "liasettings/batch",
16511	//   "request": {
16512	//     "$ref": "LiasettingsCustomBatchRequest"
16513	//   },
16514	//   "response": {
16515	//     "$ref": "LiasettingsCustomBatchResponse"
16516	//   },
16517	//   "scopes": [
16518	//     "https://www.googleapis.com/auth/content"
16519	//   ]
16520	// }
16521
16522}
16523
16524// method id "content.liasettings.get":
16525
16526type LiasettingsGetCall struct {
16527	s            *APIService
16528	merchantId   uint64
16529	accountId    uint64
16530	urlParams_   gensupport.URLParams
16531	ifNoneMatch_ string
16532	ctx_         context.Context
16533	header_      http.Header
16534}
16535
16536// Get: Retrieves the LIA settings of the account.
16537func (r *LiasettingsService) Get(merchantId uint64, accountId uint64) *LiasettingsGetCall {
16538	c := &LiasettingsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16539	c.merchantId = merchantId
16540	c.accountId = accountId
16541	return c
16542}
16543
16544// Fields allows partial responses to be retrieved. See
16545// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16546// for more information.
16547func (c *LiasettingsGetCall) Fields(s ...googleapi.Field) *LiasettingsGetCall {
16548	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16549	return c
16550}
16551
16552// IfNoneMatch sets the optional parameter which makes the operation
16553// fail if the object's ETag matches the given value. This is useful for
16554// getting updates only after the object has changed since the last
16555// request. Use googleapi.IsNotModified to check whether the response
16556// error from Do is the result of In-None-Match.
16557func (c *LiasettingsGetCall) IfNoneMatch(entityTag string) *LiasettingsGetCall {
16558	c.ifNoneMatch_ = entityTag
16559	return c
16560}
16561
16562// Context sets the context to be used in this call's Do method. Any
16563// pending HTTP request will be aborted if the provided context is
16564// canceled.
16565func (c *LiasettingsGetCall) Context(ctx context.Context) *LiasettingsGetCall {
16566	c.ctx_ = ctx
16567	return c
16568}
16569
16570// Header returns an http.Header that can be modified by the caller to
16571// add HTTP headers to the request.
16572func (c *LiasettingsGetCall) Header() http.Header {
16573	if c.header_ == nil {
16574		c.header_ = make(http.Header)
16575	}
16576	return c.header_
16577}
16578
16579func (c *LiasettingsGetCall) doRequest(alt string) (*http.Response, error) {
16580	reqHeaders := make(http.Header)
16581	for k, v := range c.header_ {
16582		reqHeaders[k] = v
16583	}
16584	reqHeaders.Set("User-Agent", c.s.userAgent())
16585	if c.ifNoneMatch_ != "" {
16586		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
16587	}
16588	var body io.Reader = nil
16589	c.urlParams_.Set("alt", alt)
16590	c.urlParams_.Set("prettyPrint", "false")
16591	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}")
16592	urls += "?" + c.urlParams_.Encode()
16593	req, err := http.NewRequest("GET", urls, body)
16594	if err != nil {
16595		return nil, err
16596	}
16597	req.Header = reqHeaders
16598	googleapi.Expand(req.URL, map[string]string{
16599		"merchantId": strconv.FormatUint(c.merchantId, 10),
16600		"accountId":  strconv.FormatUint(c.accountId, 10),
16601	})
16602	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16603}
16604
16605// Do executes the "content.liasettings.get" call.
16606// Exactly one of *LiaSettings or error will be non-nil. Any non-2xx
16607// status code is an error. Response headers are in either
16608// *LiaSettings.ServerResponse.Header or (if a response was returned at
16609// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
16610// to check whether the returned error was because
16611// http.StatusNotModified was returned.
16612func (c *LiasettingsGetCall) Do(opts ...googleapi.CallOption) (*LiaSettings, error) {
16613	gensupport.SetOptions(c.urlParams_, opts...)
16614	res, err := c.doRequest("json")
16615	if res != nil && res.StatusCode == http.StatusNotModified {
16616		if res.Body != nil {
16617			res.Body.Close()
16618		}
16619		return nil, &googleapi.Error{
16620			Code:   res.StatusCode,
16621			Header: res.Header,
16622		}
16623	}
16624	if err != nil {
16625		return nil, err
16626	}
16627	defer googleapi.CloseBody(res)
16628	if err := googleapi.CheckResponse(res); err != nil {
16629		return nil, err
16630	}
16631	ret := &LiaSettings{
16632		ServerResponse: googleapi.ServerResponse{
16633			Header:         res.Header,
16634			HTTPStatusCode: res.StatusCode,
16635		},
16636	}
16637	target := &ret
16638	if err := gensupport.DecodeResponse(target, res); err != nil {
16639		return nil, err
16640	}
16641	return ret, nil
16642	// {
16643	//   "description": "Retrieves the LIA settings of the account.",
16644	//   "httpMethod": "GET",
16645	//   "id": "content.liasettings.get",
16646	//   "parameterOrder": [
16647	//     "merchantId",
16648	//     "accountId"
16649	//   ],
16650	//   "parameters": {
16651	//     "accountId": {
16652	//       "description": "The ID of the account for which to get or update LIA settings.",
16653	//       "format": "uint64",
16654	//       "location": "path",
16655	//       "required": true,
16656	//       "type": "string"
16657	//     },
16658	//     "merchantId": {
16659	//       "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.",
16660	//       "format": "uint64",
16661	//       "location": "path",
16662	//       "required": true,
16663	//       "type": "string"
16664	//     }
16665	//   },
16666	//   "path": "{merchantId}/liasettings/{accountId}",
16667	//   "response": {
16668	//     "$ref": "LiaSettings"
16669	//   },
16670	//   "scopes": [
16671	//     "https://www.googleapis.com/auth/content"
16672	//   ]
16673	// }
16674
16675}
16676
16677// method id "content.liasettings.getaccessiblegmbaccounts":
16678
16679type LiasettingsGetaccessiblegmbaccountsCall struct {
16680	s            *APIService
16681	merchantId   uint64
16682	accountId    uint64
16683	urlParams_   gensupport.URLParams
16684	ifNoneMatch_ string
16685	ctx_         context.Context
16686	header_      http.Header
16687}
16688
16689// Getaccessiblegmbaccounts: Retrieves the list of accessible Google My
16690// Business accounts.
16691func (r *LiasettingsService) Getaccessiblegmbaccounts(merchantId uint64, accountId uint64) *LiasettingsGetaccessiblegmbaccountsCall {
16692	c := &LiasettingsGetaccessiblegmbaccountsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16693	c.merchantId = merchantId
16694	c.accountId = accountId
16695	return c
16696}
16697
16698// Fields allows partial responses to be retrieved. See
16699// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16700// for more information.
16701func (c *LiasettingsGetaccessiblegmbaccountsCall) Fields(s ...googleapi.Field) *LiasettingsGetaccessiblegmbaccountsCall {
16702	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16703	return c
16704}
16705
16706// IfNoneMatch sets the optional parameter which makes the operation
16707// fail if the object's ETag matches the given value. This is useful for
16708// getting updates only after the object has changed since the last
16709// request. Use googleapi.IsNotModified to check whether the response
16710// error from Do is the result of In-None-Match.
16711func (c *LiasettingsGetaccessiblegmbaccountsCall) IfNoneMatch(entityTag string) *LiasettingsGetaccessiblegmbaccountsCall {
16712	c.ifNoneMatch_ = entityTag
16713	return c
16714}
16715
16716// Context sets the context to be used in this call's Do method. Any
16717// pending HTTP request will be aborted if the provided context is
16718// canceled.
16719func (c *LiasettingsGetaccessiblegmbaccountsCall) Context(ctx context.Context) *LiasettingsGetaccessiblegmbaccountsCall {
16720	c.ctx_ = ctx
16721	return c
16722}
16723
16724// Header returns an http.Header that can be modified by the caller to
16725// add HTTP headers to the request.
16726func (c *LiasettingsGetaccessiblegmbaccountsCall) Header() http.Header {
16727	if c.header_ == nil {
16728		c.header_ = make(http.Header)
16729	}
16730	return c.header_
16731}
16732
16733func (c *LiasettingsGetaccessiblegmbaccountsCall) doRequest(alt string) (*http.Response, error) {
16734	reqHeaders := make(http.Header)
16735	for k, v := range c.header_ {
16736		reqHeaders[k] = v
16737	}
16738	reqHeaders.Set("User-Agent", c.s.userAgent())
16739	if c.ifNoneMatch_ != "" {
16740		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
16741	}
16742	var body io.Reader = nil
16743	c.urlParams_.Set("alt", alt)
16744	c.urlParams_.Set("prettyPrint", "false")
16745	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/accessiblegmbaccounts")
16746	urls += "?" + c.urlParams_.Encode()
16747	req, err := http.NewRequest("GET", urls, body)
16748	if err != nil {
16749		return nil, err
16750	}
16751	req.Header = reqHeaders
16752	googleapi.Expand(req.URL, map[string]string{
16753		"merchantId": strconv.FormatUint(c.merchantId, 10),
16754		"accountId":  strconv.FormatUint(c.accountId, 10),
16755	})
16756	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16757}
16758
16759// Do executes the "content.liasettings.getaccessiblegmbaccounts" call.
16760// Exactly one of *LiasettingsGetAccessibleGmbAccountsResponse or error
16761// will be non-nil. Any non-2xx status code is an error. Response
16762// headers are in either
16763// *LiasettingsGetAccessibleGmbAccountsResponse.ServerResponse.Header or
16764// (if a response was returned at all) in
16765// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
16766// whether the returned error was because http.StatusNotModified was
16767// returned.
16768func (c *LiasettingsGetaccessiblegmbaccountsCall) Do(opts ...googleapi.CallOption) (*LiasettingsGetAccessibleGmbAccountsResponse, error) {
16769	gensupport.SetOptions(c.urlParams_, opts...)
16770	res, err := c.doRequest("json")
16771	if res != nil && res.StatusCode == http.StatusNotModified {
16772		if res.Body != nil {
16773			res.Body.Close()
16774		}
16775		return nil, &googleapi.Error{
16776			Code:   res.StatusCode,
16777			Header: res.Header,
16778		}
16779	}
16780	if err != nil {
16781		return nil, err
16782	}
16783	defer googleapi.CloseBody(res)
16784	if err := googleapi.CheckResponse(res); err != nil {
16785		return nil, err
16786	}
16787	ret := &LiasettingsGetAccessibleGmbAccountsResponse{
16788		ServerResponse: googleapi.ServerResponse{
16789			Header:         res.Header,
16790			HTTPStatusCode: res.StatusCode,
16791		},
16792	}
16793	target := &ret
16794	if err := gensupport.DecodeResponse(target, res); err != nil {
16795		return nil, err
16796	}
16797	return ret, nil
16798	// {
16799	//   "description": "Retrieves the list of accessible Google My Business accounts.",
16800	//   "httpMethod": "GET",
16801	//   "id": "content.liasettings.getaccessiblegmbaccounts",
16802	//   "parameterOrder": [
16803	//     "merchantId",
16804	//     "accountId"
16805	//   ],
16806	//   "parameters": {
16807	//     "accountId": {
16808	//       "description": "The ID of the account for which to retrieve accessible Google My Business accounts.",
16809	//       "format": "uint64",
16810	//       "location": "path",
16811	//       "required": true,
16812	//       "type": "string"
16813	//     },
16814	//     "merchantId": {
16815	//       "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.",
16816	//       "format": "uint64",
16817	//       "location": "path",
16818	//       "required": true,
16819	//       "type": "string"
16820	//     }
16821	//   },
16822	//   "path": "{merchantId}/liasettings/{accountId}/accessiblegmbaccounts",
16823	//   "response": {
16824	//     "$ref": "LiasettingsGetAccessibleGmbAccountsResponse"
16825	//   },
16826	//   "scopes": [
16827	//     "https://www.googleapis.com/auth/content"
16828	//   ]
16829	// }
16830
16831}
16832
16833// method id "content.liasettings.list":
16834
16835type LiasettingsListCall struct {
16836	s            *APIService
16837	merchantId   uint64
16838	urlParams_   gensupport.URLParams
16839	ifNoneMatch_ string
16840	ctx_         context.Context
16841	header_      http.Header
16842}
16843
16844// List: Lists the LIA settings of the sub-accounts in your Merchant
16845// Center account.
16846func (r *LiasettingsService) List(merchantId uint64) *LiasettingsListCall {
16847	c := &LiasettingsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
16848	c.merchantId = merchantId
16849	return c
16850}
16851
16852// MaxResults sets the optional parameter "maxResults": The maximum
16853// number of LIA settings to return in the response, used for paging.
16854func (c *LiasettingsListCall) MaxResults(maxResults int64) *LiasettingsListCall {
16855	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
16856	return c
16857}
16858
16859// PageToken sets the optional parameter "pageToken": The token returned
16860// by the previous request.
16861func (c *LiasettingsListCall) PageToken(pageToken string) *LiasettingsListCall {
16862	c.urlParams_.Set("pageToken", pageToken)
16863	return c
16864}
16865
16866// Fields allows partial responses to be retrieved. See
16867// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
16868// for more information.
16869func (c *LiasettingsListCall) Fields(s ...googleapi.Field) *LiasettingsListCall {
16870	c.urlParams_.Set("fields", googleapi.CombineFields(s))
16871	return c
16872}
16873
16874// IfNoneMatch sets the optional parameter which makes the operation
16875// fail if the object's ETag matches the given value. This is useful for
16876// getting updates only after the object has changed since the last
16877// request. Use googleapi.IsNotModified to check whether the response
16878// error from Do is the result of In-None-Match.
16879func (c *LiasettingsListCall) IfNoneMatch(entityTag string) *LiasettingsListCall {
16880	c.ifNoneMatch_ = entityTag
16881	return c
16882}
16883
16884// Context sets the context to be used in this call's Do method. Any
16885// pending HTTP request will be aborted if the provided context is
16886// canceled.
16887func (c *LiasettingsListCall) Context(ctx context.Context) *LiasettingsListCall {
16888	c.ctx_ = ctx
16889	return c
16890}
16891
16892// Header returns an http.Header that can be modified by the caller to
16893// add HTTP headers to the request.
16894func (c *LiasettingsListCall) Header() http.Header {
16895	if c.header_ == nil {
16896		c.header_ = make(http.Header)
16897	}
16898	return c.header_
16899}
16900
16901func (c *LiasettingsListCall) doRequest(alt string) (*http.Response, error) {
16902	reqHeaders := make(http.Header)
16903	for k, v := range c.header_ {
16904		reqHeaders[k] = v
16905	}
16906	reqHeaders.Set("User-Agent", c.s.userAgent())
16907	if c.ifNoneMatch_ != "" {
16908		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
16909	}
16910	var body io.Reader = nil
16911	c.urlParams_.Set("alt", alt)
16912	c.urlParams_.Set("prettyPrint", "false")
16913	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings")
16914	urls += "?" + c.urlParams_.Encode()
16915	req, err := http.NewRequest("GET", urls, body)
16916	if err != nil {
16917		return nil, err
16918	}
16919	req.Header = reqHeaders
16920	googleapi.Expand(req.URL, map[string]string{
16921		"merchantId": strconv.FormatUint(c.merchantId, 10),
16922	})
16923	return gensupport.SendRequest(c.ctx_, c.s.client, req)
16924}
16925
16926// Do executes the "content.liasettings.list" call.
16927// Exactly one of *LiasettingsListResponse or error will be non-nil. Any
16928// non-2xx status code is an error. Response headers are in either
16929// *LiasettingsListResponse.ServerResponse.Header or (if a response was
16930// returned at all) in error.(*googleapi.Error).Header. Use
16931// googleapi.IsNotModified to check whether the returned error was
16932// because http.StatusNotModified was returned.
16933func (c *LiasettingsListCall) Do(opts ...googleapi.CallOption) (*LiasettingsListResponse, error) {
16934	gensupport.SetOptions(c.urlParams_, opts...)
16935	res, err := c.doRequest("json")
16936	if res != nil && res.StatusCode == http.StatusNotModified {
16937		if res.Body != nil {
16938			res.Body.Close()
16939		}
16940		return nil, &googleapi.Error{
16941			Code:   res.StatusCode,
16942			Header: res.Header,
16943		}
16944	}
16945	if err != nil {
16946		return nil, err
16947	}
16948	defer googleapi.CloseBody(res)
16949	if err := googleapi.CheckResponse(res); err != nil {
16950		return nil, err
16951	}
16952	ret := &LiasettingsListResponse{
16953		ServerResponse: googleapi.ServerResponse{
16954			Header:         res.Header,
16955			HTTPStatusCode: res.StatusCode,
16956		},
16957	}
16958	target := &ret
16959	if err := gensupport.DecodeResponse(target, res); err != nil {
16960		return nil, err
16961	}
16962	return ret, nil
16963	// {
16964	//   "description": "Lists the LIA settings of the sub-accounts in your Merchant Center account.",
16965	//   "httpMethod": "GET",
16966	//   "id": "content.liasettings.list",
16967	//   "parameterOrder": [
16968	//     "merchantId"
16969	//   ],
16970	//   "parameters": {
16971	//     "maxResults": {
16972	//       "description": "The maximum number of LIA settings to return in the response, used for paging.",
16973	//       "format": "uint32",
16974	//       "location": "query",
16975	//       "type": "integer"
16976	//     },
16977	//     "merchantId": {
16978	//       "description": "The ID of the managing account. This must be a multi-client account.",
16979	//       "format": "uint64",
16980	//       "location": "path",
16981	//       "required": true,
16982	//       "type": "string"
16983	//     },
16984	//     "pageToken": {
16985	//       "description": "The token returned by the previous request.",
16986	//       "location": "query",
16987	//       "type": "string"
16988	//     }
16989	//   },
16990	//   "path": "{merchantId}/liasettings",
16991	//   "response": {
16992	//     "$ref": "LiasettingsListResponse"
16993	//   },
16994	//   "scopes": [
16995	//     "https://www.googleapis.com/auth/content"
16996	//   ]
16997	// }
16998
16999}
17000
17001// Pages invokes f for each page of results.
17002// A non-nil error returned from f will halt the iteration.
17003// The provided context supersedes any context provided to the Context method.
17004func (c *LiasettingsListCall) Pages(ctx context.Context, f func(*LiasettingsListResponse) error) error {
17005	c.ctx_ = ctx
17006	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
17007	for {
17008		x, err := c.Do()
17009		if err != nil {
17010			return err
17011		}
17012		if err := f(x); err != nil {
17013			return err
17014		}
17015		if x.NextPageToken == "" {
17016			return nil
17017		}
17018		c.PageToken(x.NextPageToken)
17019	}
17020}
17021
17022// method id "content.liasettings.listposdataproviders":
17023
17024type LiasettingsListposdataprovidersCall struct {
17025	s            *APIService
17026	urlParams_   gensupport.URLParams
17027	ifNoneMatch_ string
17028	ctx_         context.Context
17029	header_      http.Header
17030}
17031
17032// Listposdataproviders: Retrieves the list of POS data providers that
17033// have active settings for the all eiligible countries.
17034func (r *LiasettingsService) Listposdataproviders() *LiasettingsListposdataprovidersCall {
17035	c := &LiasettingsListposdataprovidersCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17036	return c
17037}
17038
17039// Fields allows partial responses to be retrieved. See
17040// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17041// for more information.
17042func (c *LiasettingsListposdataprovidersCall) Fields(s ...googleapi.Field) *LiasettingsListposdataprovidersCall {
17043	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17044	return c
17045}
17046
17047// IfNoneMatch sets the optional parameter which makes the operation
17048// fail if the object's ETag matches the given value. This is useful for
17049// getting updates only after the object has changed since the last
17050// request. Use googleapi.IsNotModified to check whether the response
17051// error from Do is the result of In-None-Match.
17052func (c *LiasettingsListposdataprovidersCall) IfNoneMatch(entityTag string) *LiasettingsListposdataprovidersCall {
17053	c.ifNoneMatch_ = entityTag
17054	return c
17055}
17056
17057// Context sets the context to be used in this call's Do method. Any
17058// pending HTTP request will be aborted if the provided context is
17059// canceled.
17060func (c *LiasettingsListposdataprovidersCall) Context(ctx context.Context) *LiasettingsListposdataprovidersCall {
17061	c.ctx_ = ctx
17062	return c
17063}
17064
17065// Header returns an http.Header that can be modified by the caller to
17066// add HTTP headers to the request.
17067func (c *LiasettingsListposdataprovidersCall) Header() http.Header {
17068	if c.header_ == nil {
17069		c.header_ = make(http.Header)
17070	}
17071	return c.header_
17072}
17073
17074func (c *LiasettingsListposdataprovidersCall) doRequest(alt string) (*http.Response, error) {
17075	reqHeaders := make(http.Header)
17076	for k, v := range c.header_ {
17077		reqHeaders[k] = v
17078	}
17079	reqHeaders.Set("User-Agent", c.s.userAgent())
17080	if c.ifNoneMatch_ != "" {
17081		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
17082	}
17083	var body io.Reader = nil
17084	c.urlParams_.Set("alt", alt)
17085	c.urlParams_.Set("prettyPrint", "false")
17086	urls := googleapi.ResolveRelative(c.s.BasePath, "liasettings/posdataproviders")
17087	urls += "?" + c.urlParams_.Encode()
17088	req, err := http.NewRequest("GET", urls, body)
17089	if err != nil {
17090		return nil, err
17091	}
17092	req.Header = reqHeaders
17093	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17094}
17095
17096// Do executes the "content.liasettings.listposdataproviders" call.
17097// Exactly one of *LiasettingsListPosDataProvidersResponse or error will
17098// be non-nil. Any non-2xx status code is an error. Response headers are
17099// in either
17100// *LiasettingsListPosDataProvidersResponse.ServerResponse.Header or (if
17101// a response was returned at all) in error.(*googleapi.Error).Header.
17102// Use googleapi.IsNotModified to check whether the returned error was
17103// because http.StatusNotModified was returned.
17104func (c *LiasettingsListposdataprovidersCall) Do(opts ...googleapi.CallOption) (*LiasettingsListPosDataProvidersResponse, error) {
17105	gensupport.SetOptions(c.urlParams_, opts...)
17106	res, err := c.doRequest("json")
17107	if res != nil && res.StatusCode == http.StatusNotModified {
17108		if res.Body != nil {
17109			res.Body.Close()
17110		}
17111		return nil, &googleapi.Error{
17112			Code:   res.StatusCode,
17113			Header: res.Header,
17114		}
17115	}
17116	if err != nil {
17117		return nil, err
17118	}
17119	defer googleapi.CloseBody(res)
17120	if err := googleapi.CheckResponse(res); err != nil {
17121		return nil, err
17122	}
17123	ret := &LiasettingsListPosDataProvidersResponse{
17124		ServerResponse: googleapi.ServerResponse{
17125			Header:         res.Header,
17126			HTTPStatusCode: res.StatusCode,
17127		},
17128	}
17129	target := &ret
17130	if err := gensupport.DecodeResponse(target, res); err != nil {
17131		return nil, err
17132	}
17133	return ret, nil
17134	// {
17135	//   "description": "Retrieves the list of POS data providers that have active settings for the all eiligible countries.",
17136	//   "httpMethod": "GET",
17137	//   "id": "content.liasettings.listposdataproviders",
17138	//   "path": "liasettings/posdataproviders",
17139	//   "response": {
17140	//     "$ref": "LiasettingsListPosDataProvidersResponse"
17141	//   },
17142	//   "scopes": [
17143	//     "https://www.googleapis.com/auth/content"
17144	//   ]
17145	// }
17146
17147}
17148
17149// method id "content.liasettings.patch":
17150
17151type LiasettingsPatchCall struct {
17152	s           *APIService
17153	merchantId  uint64
17154	accountId   uint64
17155	liasettings *LiaSettings
17156	urlParams_  gensupport.URLParams
17157	ctx_        context.Context
17158	header_     http.Header
17159}
17160
17161// Patch: Updates the LIA settings of the account. This method supports
17162// patch semantics.
17163func (r *LiasettingsService) Patch(merchantId uint64, accountId uint64, liasettings *LiaSettings) *LiasettingsPatchCall {
17164	c := &LiasettingsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17165	c.merchantId = merchantId
17166	c.accountId = accountId
17167	c.liasettings = liasettings
17168	return c
17169}
17170
17171// DryRun sets the optional parameter "dryRun": Flag to simulate a
17172// request like in a live environment. If set to true, dry-run mode
17173// checks the validity of the request and returns errors (if any).
17174func (c *LiasettingsPatchCall) DryRun(dryRun bool) *LiasettingsPatchCall {
17175	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
17176	return c
17177}
17178
17179// Fields allows partial responses to be retrieved. See
17180// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17181// for more information.
17182func (c *LiasettingsPatchCall) Fields(s ...googleapi.Field) *LiasettingsPatchCall {
17183	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17184	return c
17185}
17186
17187// Context sets the context to be used in this call's Do method. Any
17188// pending HTTP request will be aborted if the provided context is
17189// canceled.
17190func (c *LiasettingsPatchCall) Context(ctx context.Context) *LiasettingsPatchCall {
17191	c.ctx_ = ctx
17192	return c
17193}
17194
17195// Header returns an http.Header that can be modified by the caller to
17196// add HTTP headers to the request.
17197func (c *LiasettingsPatchCall) Header() http.Header {
17198	if c.header_ == nil {
17199		c.header_ = make(http.Header)
17200	}
17201	return c.header_
17202}
17203
17204func (c *LiasettingsPatchCall) doRequest(alt string) (*http.Response, error) {
17205	reqHeaders := make(http.Header)
17206	for k, v := range c.header_ {
17207		reqHeaders[k] = v
17208	}
17209	reqHeaders.Set("User-Agent", c.s.userAgent())
17210	var body io.Reader = nil
17211	body, err := googleapi.WithoutDataWrapper.JSONReader(c.liasettings)
17212	if err != nil {
17213		return nil, err
17214	}
17215	reqHeaders.Set("Content-Type", "application/json")
17216	c.urlParams_.Set("alt", alt)
17217	c.urlParams_.Set("prettyPrint", "false")
17218	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}")
17219	urls += "?" + c.urlParams_.Encode()
17220	req, err := http.NewRequest("PATCH", urls, body)
17221	if err != nil {
17222		return nil, err
17223	}
17224	req.Header = reqHeaders
17225	googleapi.Expand(req.URL, map[string]string{
17226		"merchantId": strconv.FormatUint(c.merchantId, 10),
17227		"accountId":  strconv.FormatUint(c.accountId, 10),
17228	})
17229	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17230}
17231
17232// Do executes the "content.liasettings.patch" call.
17233// Exactly one of *LiaSettings or error will be non-nil. Any non-2xx
17234// status code is an error. Response headers are in either
17235// *LiaSettings.ServerResponse.Header or (if a response was returned at
17236// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
17237// to check whether the returned error was because
17238// http.StatusNotModified was returned.
17239func (c *LiasettingsPatchCall) Do(opts ...googleapi.CallOption) (*LiaSettings, error) {
17240	gensupport.SetOptions(c.urlParams_, opts...)
17241	res, err := c.doRequest("json")
17242	if res != nil && res.StatusCode == http.StatusNotModified {
17243		if res.Body != nil {
17244			res.Body.Close()
17245		}
17246		return nil, &googleapi.Error{
17247			Code:   res.StatusCode,
17248			Header: res.Header,
17249		}
17250	}
17251	if err != nil {
17252		return nil, err
17253	}
17254	defer googleapi.CloseBody(res)
17255	if err := googleapi.CheckResponse(res); err != nil {
17256		return nil, err
17257	}
17258	ret := &LiaSettings{
17259		ServerResponse: googleapi.ServerResponse{
17260			Header:         res.Header,
17261			HTTPStatusCode: res.StatusCode,
17262		},
17263	}
17264	target := &ret
17265	if err := gensupport.DecodeResponse(target, res); err != nil {
17266		return nil, err
17267	}
17268	return ret, nil
17269	// {
17270	//   "description": "Updates the LIA settings of the account. This method supports patch semantics.",
17271	//   "httpMethod": "PATCH",
17272	//   "id": "content.liasettings.patch",
17273	//   "parameterOrder": [
17274	//     "merchantId",
17275	//     "accountId"
17276	//   ],
17277	//   "parameters": {
17278	//     "accountId": {
17279	//       "description": "The ID of the account for which to get or update LIA settings.",
17280	//       "format": "uint64",
17281	//       "location": "path",
17282	//       "required": true,
17283	//       "type": "string"
17284	//     },
17285	//     "dryRun": {
17286	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
17287	//       "location": "query",
17288	//       "type": "boolean"
17289	//     },
17290	//     "merchantId": {
17291	//       "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.",
17292	//       "format": "uint64",
17293	//       "location": "path",
17294	//       "required": true,
17295	//       "type": "string"
17296	//     }
17297	//   },
17298	//   "path": "{merchantId}/liasettings/{accountId}",
17299	//   "request": {
17300	//     "$ref": "LiaSettings"
17301	//   },
17302	//   "response": {
17303	//     "$ref": "LiaSettings"
17304	//   },
17305	//   "scopes": [
17306	//     "https://www.googleapis.com/auth/content"
17307	//   ]
17308	// }
17309
17310}
17311
17312// method id "content.liasettings.requestgmbaccess":
17313
17314type LiasettingsRequestgmbaccessCall struct {
17315	s          *APIService
17316	merchantId uint64
17317	accountId  uint64
17318	urlParams_ gensupport.URLParams
17319	ctx_       context.Context
17320	header_    http.Header
17321}
17322
17323// Requestgmbaccess: Requests access to a specified Google My Business
17324// account.
17325func (r *LiasettingsService) Requestgmbaccess(merchantId uint64, accountId uint64, gmbEmail string) *LiasettingsRequestgmbaccessCall {
17326	c := &LiasettingsRequestgmbaccessCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17327	c.merchantId = merchantId
17328	c.accountId = accountId
17329	c.urlParams_.Set("gmbEmail", gmbEmail)
17330	return c
17331}
17332
17333// Fields allows partial responses to be retrieved. See
17334// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17335// for more information.
17336func (c *LiasettingsRequestgmbaccessCall) Fields(s ...googleapi.Field) *LiasettingsRequestgmbaccessCall {
17337	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17338	return c
17339}
17340
17341// Context sets the context to be used in this call's Do method. Any
17342// pending HTTP request will be aborted if the provided context is
17343// canceled.
17344func (c *LiasettingsRequestgmbaccessCall) Context(ctx context.Context) *LiasettingsRequestgmbaccessCall {
17345	c.ctx_ = ctx
17346	return c
17347}
17348
17349// Header returns an http.Header that can be modified by the caller to
17350// add HTTP headers to the request.
17351func (c *LiasettingsRequestgmbaccessCall) Header() http.Header {
17352	if c.header_ == nil {
17353		c.header_ = make(http.Header)
17354	}
17355	return c.header_
17356}
17357
17358func (c *LiasettingsRequestgmbaccessCall) doRequest(alt string) (*http.Response, error) {
17359	reqHeaders := make(http.Header)
17360	for k, v := range c.header_ {
17361		reqHeaders[k] = v
17362	}
17363	reqHeaders.Set("User-Agent", c.s.userAgent())
17364	var body io.Reader = nil
17365	c.urlParams_.Set("alt", alt)
17366	c.urlParams_.Set("prettyPrint", "false")
17367	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/requestgmbaccess")
17368	urls += "?" + c.urlParams_.Encode()
17369	req, err := http.NewRequest("POST", urls, body)
17370	if err != nil {
17371		return nil, err
17372	}
17373	req.Header = reqHeaders
17374	googleapi.Expand(req.URL, map[string]string{
17375		"merchantId": strconv.FormatUint(c.merchantId, 10),
17376		"accountId":  strconv.FormatUint(c.accountId, 10),
17377	})
17378	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17379}
17380
17381// Do executes the "content.liasettings.requestgmbaccess" call.
17382// Exactly one of *LiasettingsRequestGmbAccessResponse or error will be
17383// non-nil. Any non-2xx status code is an error. Response headers are in
17384// either *LiasettingsRequestGmbAccessResponse.ServerResponse.Header or
17385// (if a response was returned at all) in
17386// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
17387// whether the returned error was because http.StatusNotModified was
17388// returned.
17389func (c *LiasettingsRequestgmbaccessCall) Do(opts ...googleapi.CallOption) (*LiasettingsRequestGmbAccessResponse, error) {
17390	gensupport.SetOptions(c.urlParams_, opts...)
17391	res, err := c.doRequest("json")
17392	if res != nil && res.StatusCode == http.StatusNotModified {
17393		if res.Body != nil {
17394			res.Body.Close()
17395		}
17396		return nil, &googleapi.Error{
17397			Code:   res.StatusCode,
17398			Header: res.Header,
17399		}
17400	}
17401	if err != nil {
17402		return nil, err
17403	}
17404	defer googleapi.CloseBody(res)
17405	if err := googleapi.CheckResponse(res); err != nil {
17406		return nil, err
17407	}
17408	ret := &LiasettingsRequestGmbAccessResponse{
17409		ServerResponse: googleapi.ServerResponse{
17410			Header:         res.Header,
17411			HTTPStatusCode: res.StatusCode,
17412		},
17413	}
17414	target := &ret
17415	if err := gensupport.DecodeResponse(target, res); err != nil {
17416		return nil, err
17417	}
17418	return ret, nil
17419	// {
17420	//   "description": "Requests access to a specified Google My Business account.",
17421	//   "httpMethod": "POST",
17422	//   "id": "content.liasettings.requestgmbaccess",
17423	//   "parameterOrder": [
17424	//     "merchantId",
17425	//     "accountId",
17426	//     "gmbEmail"
17427	//   ],
17428	//   "parameters": {
17429	//     "accountId": {
17430	//       "description": "The ID of the account for which GMB access is requested.",
17431	//       "format": "uint64",
17432	//       "location": "path",
17433	//       "required": true,
17434	//       "type": "string"
17435	//     },
17436	//     "gmbEmail": {
17437	//       "description": "The email of the Google My Business account.",
17438	//       "location": "query",
17439	//       "required": true,
17440	//       "type": "string"
17441	//     },
17442	//     "merchantId": {
17443	//       "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.",
17444	//       "format": "uint64",
17445	//       "location": "path",
17446	//       "required": true,
17447	//       "type": "string"
17448	//     }
17449	//   },
17450	//   "path": "{merchantId}/liasettings/{accountId}/requestgmbaccess",
17451	//   "response": {
17452	//     "$ref": "LiasettingsRequestGmbAccessResponse"
17453	//   },
17454	//   "scopes": [
17455	//     "https://www.googleapis.com/auth/content"
17456	//   ]
17457	// }
17458
17459}
17460
17461// method id "content.liasettings.requestinventoryverification":
17462
17463type LiasettingsRequestinventoryverificationCall struct {
17464	s          *APIService
17465	merchantId uint64
17466	accountId  uint64
17467	country    string
17468	urlParams_ gensupport.URLParams
17469	ctx_       context.Context
17470	header_    http.Header
17471}
17472
17473// Requestinventoryverification: Requests inventory validation for the
17474// specified country.
17475func (r *LiasettingsService) Requestinventoryverification(merchantId uint64, accountId uint64, country string) *LiasettingsRequestinventoryverificationCall {
17476	c := &LiasettingsRequestinventoryverificationCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17477	c.merchantId = merchantId
17478	c.accountId = accountId
17479	c.country = country
17480	return c
17481}
17482
17483// Fields allows partial responses to be retrieved. See
17484// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17485// for more information.
17486func (c *LiasettingsRequestinventoryverificationCall) Fields(s ...googleapi.Field) *LiasettingsRequestinventoryverificationCall {
17487	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17488	return c
17489}
17490
17491// Context sets the context to be used in this call's Do method. Any
17492// pending HTTP request will be aborted if the provided context is
17493// canceled.
17494func (c *LiasettingsRequestinventoryverificationCall) Context(ctx context.Context) *LiasettingsRequestinventoryverificationCall {
17495	c.ctx_ = ctx
17496	return c
17497}
17498
17499// Header returns an http.Header that can be modified by the caller to
17500// add HTTP headers to the request.
17501func (c *LiasettingsRequestinventoryverificationCall) Header() http.Header {
17502	if c.header_ == nil {
17503		c.header_ = make(http.Header)
17504	}
17505	return c.header_
17506}
17507
17508func (c *LiasettingsRequestinventoryverificationCall) doRequest(alt string) (*http.Response, error) {
17509	reqHeaders := make(http.Header)
17510	for k, v := range c.header_ {
17511		reqHeaders[k] = v
17512	}
17513	reqHeaders.Set("User-Agent", c.s.userAgent())
17514	var body io.Reader = nil
17515	c.urlParams_.Set("alt", alt)
17516	c.urlParams_.Set("prettyPrint", "false")
17517	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/requestinventoryverification/{country}")
17518	urls += "?" + c.urlParams_.Encode()
17519	req, err := http.NewRequest("POST", urls, body)
17520	if err != nil {
17521		return nil, err
17522	}
17523	req.Header = reqHeaders
17524	googleapi.Expand(req.URL, map[string]string{
17525		"merchantId": strconv.FormatUint(c.merchantId, 10),
17526		"accountId":  strconv.FormatUint(c.accountId, 10),
17527		"country":    c.country,
17528	})
17529	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17530}
17531
17532// Do executes the "content.liasettings.requestinventoryverification" call.
17533// Exactly one of *LiasettingsRequestInventoryVerificationResponse or
17534// error will be non-nil. Any non-2xx status code is an error. Response
17535// headers are in either
17536// *LiasettingsRequestInventoryVerificationResponse.ServerResponse.Header
17537//  or (if a response was returned at all) in
17538// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
17539// whether the returned error was because http.StatusNotModified was
17540// returned.
17541func (c *LiasettingsRequestinventoryverificationCall) Do(opts ...googleapi.CallOption) (*LiasettingsRequestInventoryVerificationResponse, error) {
17542	gensupport.SetOptions(c.urlParams_, opts...)
17543	res, err := c.doRequest("json")
17544	if res != nil && res.StatusCode == http.StatusNotModified {
17545		if res.Body != nil {
17546			res.Body.Close()
17547		}
17548		return nil, &googleapi.Error{
17549			Code:   res.StatusCode,
17550			Header: res.Header,
17551		}
17552	}
17553	if err != nil {
17554		return nil, err
17555	}
17556	defer googleapi.CloseBody(res)
17557	if err := googleapi.CheckResponse(res); err != nil {
17558		return nil, err
17559	}
17560	ret := &LiasettingsRequestInventoryVerificationResponse{
17561		ServerResponse: googleapi.ServerResponse{
17562			Header:         res.Header,
17563			HTTPStatusCode: res.StatusCode,
17564		},
17565	}
17566	target := &ret
17567	if err := gensupport.DecodeResponse(target, res); err != nil {
17568		return nil, err
17569	}
17570	return ret, nil
17571	// {
17572	//   "description": "Requests inventory validation for the specified country.",
17573	//   "httpMethod": "POST",
17574	//   "id": "content.liasettings.requestinventoryverification",
17575	//   "parameterOrder": [
17576	//     "merchantId",
17577	//     "accountId",
17578	//     "country"
17579	//   ],
17580	//   "parameters": {
17581	//     "accountId": {
17582	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
17583	//       "format": "uint64",
17584	//       "location": "path",
17585	//       "required": true,
17586	//       "type": "string"
17587	//     },
17588	//     "country": {
17589	//       "description": "The country for which inventory validation is requested.",
17590	//       "location": "path",
17591	//       "required": true,
17592	//       "type": "string"
17593	//     },
17594	//     "merchantId": {
17595	//       "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.",
17596	//       "format": "uint64",
17597	//       "location": "path",
17598	//       "required": true,
17599	//       "type": "string"
17600	//     }
17601	//   },
17602	//   "path": "{merchantId}/liasettings/{accountId}/requestinventoryverification/{country}",
17603	//   "response": {
17604	//     "$ref": "LiasettingsRequestInventoryVerificationResponse"
17605	//   },
17606	//   "scopes": [
17607	//     "https://www.googleapis.com/auth/content"
17608	//   ]
17609	// }
17610
17611}
17612
17613// method id "content.liasettings.setinventoryverificationcontact":
17614
17615type LiasettingsSetinventoryverificationcontactCall struct {
17616	s          *APIService
17617	merchantId uint64
17618	accountId  uint64
17619	urlParams_ gensupport.URLParams
17620	ctx_       context.Context
17621	header_    http.Header
17622}
17623
17624// Setinventoryverificationcontact: Sets the inventory verification
17625// contract for the specified country.
17626func (r *LiasettingsService) Setinventoryverificationcontact(merchantId uint64, accountId uint64, contactEmail string, contactName string, country string, language string) *LiasettingsSetinventoryverificationcontactCall {
17627	c := &LiasettingsSetinventoryverificationcontactCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17628	c.merchantId = merchantId
17629	c.accountId = accountId
17630	c.urlParams_.Set("contactEmail", contactEmail)
17631	c.urlParams_.Set("contactName", contactName)
17632	c.urlParams_.Set("country", country)
17633	c.urlParams_.Set("language", language)
17634	return c
17635}
17636
17637// Fields allows partial responses to be retrieved. See
17638// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17639// for more information.
17640func (c *LiasettingsSetinventoryverificationcontactCall) Fields(s ...googleapi.Field) *LiasettingsSetinventoryverificationcontactCall {
17641	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17642	return c
17643}
17644
17645// Context sets the context to be used in this call's Do method. Any
17646// pending HTTP request will be aborted if the provided context is
17647// canceled.
17648func (c *LiasettingsSetinventoryverificationcontactCall) Context(ctx context.Context) *LiasettingsSetinventoryverificationcontactCall {
17649	c.ctx_ = ctx
17650	return c
17651}
17652
17653// Header returns an http.Header that can be modified by the caller to
17654// add HTTP headers to the request.
17655func (c *LiasettingsSetinventoryverificationcontactCall) Header() http.Header {
17656	if c.header_ == nil {
17657		c.header_ = make(http.Header)
17658	}
17659	return c.header_
17660}
17661
17662func (c *LiasettingsSetinventoryverificationcontactCall) doRequest(alt string) (*http.Response, error) {
17663	reqHeaders := make(http.Header)
17664	for k, v := range c.header_ {
17665		reqHeaders[k] = v
17666	}
17667	reqHeaders.Set("User-Agent", c.s.userAgent())
17668	var body io.Reader = nil
17669	c.urlParams_.Set("alt", alt)
17670	c.urlParams_.Set("prettyPrint", "false")
17671	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/setinventoryverificationcontact")
17672	urls += "?" + c.urlParams_.Encode()
17673	req, err := http.NewRequest("POST", urls, body)
17674	if err != nil {
17675		return nil, err
17676	}
17677	req.Header = reqHeaders
17678	googleapi.Expand(req.URL, map[string]string{
17679		"merchantId": strconv.FormatUint(c.merchantId, 10),
17680		"accountId":  strconv.FormatUint(c.accountId, 10),
17681	})
17682	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17683}
17684
17685// Do executes the "content.liasettings.setinventoryverificationcontact" call.
17686// Exactly one of *LiasettingsSetInventoryVerificationContactResponse or
17687// error will be non-nil. Any non-2xx status code is an error. Response
17688// headers are in either
17689// *LiasettingsSetInventoryVerificationContactResponse.ServerResponse.Hea
17690// der or (if a response was returned at all) in
17691// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
17692// whether the returned error was because http.StatusNotModified was
17693// returned.
17694func (c *LiasettingsSetinventoryverificationcontactCall) Do(opts ...googleapi.CallOption) (*LiasettingsSetInventoryVerificationContactResponse, error) {
17695	gensupport.SetOptions(c.urlParams_, opts...)
17696	res, err := c.doRequest("json")
17697	if res != nil && res.StatusCode == http.StatusNotModified {
17698		if res.Body != nil {
17699			res.Body.Close()
17700		}
17701		return nil, &googleapi.Error{
17702			Code:   res.StatusCode,
17703			Header: res.Header,
17704		}
17705	}
17706	if err != nil {
17707		return nil, err
17708	}
17709	defer googleapi.CloseBody(res)
17710	if err := googleapi.CheckResponse(res); err != nil {
17711		return nil, err
17712	}
17713	ret := &LiasettingsSetInventoryVerificationContactResponse{
17714		ServerResponse: googleapi.ServerResponse{
17715			Header:         res.Header,
17716			HTTPStatusCode: res.StatusCode,
17717		},
17718	}
17719	target := &ret
17720	if err := gensupport.DecodeResponse(target, res); err != nil {
17721		return nil, err
17722	}
17723	return ret, nil
17724	// {
17725	//   "description": "Sets the inventory verification contract for the specified country.",
17726	//   "httpMethod": "POST",
17727	//   "id": "content.liasettings.setinventoryverificationcontact",
17728	//   "parameterOrder": [
17729	//     "merchantId",
17730	//     "accountId",
17731	//     "contactEmail",
17732	//     "contactName",
17733	//     "country",
17734	//     "language"
17735	//   ],
17736	//   "parameters": {
17737	//     "accountId": {
17738	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
17739	//       "format": "uint64",
17740	//       "location": "path",
17741	//       "required": true,
17742	//       "type": "string"
17743	//     },
17744	//     "contactEmail": {
17745	//       "description": "The email of the inventory verification contact.",
17746	//       "location": "query",
17747	//       "required": true,
17748	//       "type": "string"
17749	//     },
17750	//     "contactName": {
17751	//       "description": "The name of the inventory verification contact.",
17752	//       "location": "query",
17753	//       "required": true,
17754	//       "type": "string"
17755	//     },
17756	//     "country": {
17757	//       "description": "The country for which inventory verification is requested.",
17758	//       "location": "query",
17759	//       "required": true,
17760	//       "type": "string"
17761	//     },
17762	//     "language": {
17763	//       "description": "The language for which inventory verification is requested.",
17764	//       "location": "query",
17765	//       "required": true,
17766	//       "type": "string"
17767	//     },
17768	//     "merchantId": {
17769	//       "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.",
17770	//       "format": "uint64",
17771	//       "location": "path",
17772	//       "required": true,
17773	//       "type": "string"
17774	//     }
17775	//   },
17776	//   "path": "{merchantId}/liasettings/{accountId}/setinventoryverificationcontact",
17777	//   "response": {
17778	//     "$ref": "LiasettingsSetInventoryVerificationContactResponse"
17779	//   },
17780	//   "scopes": [
17781	//     "https://www.googleapis.com/auth/content"
17782	//   ]
17783	// }
17784
17785}
17786
17787// method id "content.liasettings.setposdataprovider":
17788
17789type LiasettingsSetposdataproviderCall struct {
17790	s          *APIService
17791	merchantId uint64
17792	accountId  uint64
17793	urlParams_ gensupport.URLParams
17794	ctx_       context.Context
17795	header_    http.Header
17796}
17797
17798// Setposdataprovider: Sets the POS data provider for the specified
17799// country.
17800func (r *LiasettingsService) Setposdataprovider(merchantId uint64, accountId uint64, country string) *LiasettingsSetposdataproviderCall {
17801	c := &LiasettingsSetposdataproviderCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17802	c.merchantId = merchantId
17803	c.accountId = accountId
17804	c.urlParams_.Set("country", country)
17805	return c
17806}
17807
17808// PosDataProviderId sets the optional parameter "posDataProviderId":
17809// The ID of POS data provider.
17810func (c *LiasettingsSetposdataproviderCall) PosDataProviderId(posDataProviderId uint64) *LiasettingsSetposdataproviderCall {
17811	c.urlParams_.Set("posDataProviderId", fmt.Sprint(posDataProviderId))
17812	return c
17813}
17814
17815// PosExternalAccountId sets the optional parameter
17816// "posExternalAccountId": The account ID by which this merchant is
17817// known to the POS data provider.
17818func (c *LiasettingsSetposdataproviderCall) PosExternalAccountId(posExternalAccountId string) *LiasettingsSetposdataproviderCall {
17819	c.urlParams_.Set("posExternalAccountId", posExternalAccountId)
17820	return c
17821}
17822
17823// Fields allows partial responses to be retrieved. See
17824// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17825// for more information.
17826func (c *LiasettingsSetposdataproviderCall) Fields(s ...googleapi.Field) *LiasettingsSetposdataproviderCall {
17827	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17828	return c
17829}
17830
17831// Context sets the context to be used in this call's Do method. Any
17832// pending HTTP request will be aborted if the provided context is
17833// canceled.
17834func (c *LiasettingsSetposdataproviderCall) Context(ctx context.Context) *LiasettingsSetposdataproviderCall {
17835	c.ctx_ = ctx
17836	return c
17837}
17838
17839// Header returns an http.Header that can be modified by the caller to
17840// add HTTP headers to the request.
17841func (c *LiasettingsSetposdataproviderCall) Header() http.Header {
17842	if c.header_ == nil {
17843		c.header_ = make(http.Header)
17844	}
17845	return c.header_
17846}
17847
17848func (c *LiasettingsSetposdataproviderCall) doRequest(alt string) (*http.Response, error) {
17849	reqHeaders := make(http.Header)
17850	for k, v := range c.header_ {
17851		reqHeaders[k] = v
17852	}
17853	reqHeaders.Set("User-Agent", c.s.userAgent())
17854	var body io.Reader = nil
17855	c.urlParams_.Set("alt", alt)
17856	c.urlParams_.Set("prettyPrint", "false")
17857	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/setposdataprovider")
17858	urls += "?" + c.urlParams_.Encode()
17859	req, err := http.NewRequest("POST", urls, body)
17860	if err != nil {
17861		return nil, err
17862	}
17863	req.Header = reqHeaders
17864	googleapi.Expand(req.URL, map[string]string{
17865		"merchantId": strconv.FormatUint(c.merchantId, 10),
17866		"accountId":  strconv.FormatUint(c.accountId, 10),
17867	})
17868	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17869}
17870
17871// Do executes the "content.liasettings.setposdataprovider" call.
17872// Exactly one of *LiasettingsSetPosDataProviderResponse or error will
17873// be non-nil. Any non-2xx status code is an error. Response headers are
17874// in either
17875// *LiasettingsSetPosDataProviderResponse.ServerResponse.Header or (if a
17876// response was returned at all) in error.(*googleapi.Error).Header. Use
17877// googleapi.IsNotModified to check whether the returned error was
17878// because http.StatusNotModified was returned.
17879func (c *LiasettingsSetposdataproviderCall) Do(opts ...googleapi.CallOption) (*LiasettingsSetPosDataProviderResponse, error) {
17880	gensupport.SetOptions(c.urlParams_, opts...)
17881	res, err := c.doRequest("json")
17882	if res != nil && res.StatusCode == http.StatusNotModified {
17883		if res.Body != nil {
17884			res.Body.Close()
17885		}
17886		return nil, &googleapi.Error{
17887			Code:   res.StatusCode,
17888			Header: res.Header,
17889		}
17890	}
17891	if err != nil {
17892		return nil, err
17893	}
17894	defer googleapi.CloseBody(res)
17895	if err := googleapi.CheckResponse(res); err != nil {
17896		return nil, err
17897	}
17898	ret := &LiasettingsSetPosDataProviderResponse{
17899		ServerResponse: googleapi.ServerResponse{
17900			Header:         res.Header,
17901			HTTPStatusCode: res.StatusCode,
17902		},
17903	}
17904	target := &ret
17905	if err := gensupport.DecodeResponse(target, res); err != nil {
17906		return nil, err
17907	}
17908	return ret, nil
17909	// {
17910	//   "description": "Sets the POS data provider for the specified country.",
17911	//   "httpMethod": "POST",
17912	//   "id": "content.liasettings.setposdataprovider",
17913	//   "parameterOrder": [
17914	//     "merchantId",
17915	//     "accountId",
17916	//     "country"
17917	//   ],
17918	//   "parameters": {
17919	//     "accountId": {
17920	//       "description": "The ID of the account for which to retrieve accessible Google My Business accounts.",
17921	//       "format": "uint64",
17922	//       "location": "path",
17923	//       "required": true,
17924	//       "type": "string"
17925	//     },
17926	//     "country": {
17927	//       "description": "The country for which the POS data provider is selected.",
17928	//       "location": "query",
17929	//       "required": true,
17930	//       "type": "string"
17931	//     },
17932	//     "merchantId": {
17933	//       "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.",
17934	//       "format": "uint64",
17935	//       "location": "path",
17936	//       "required": true,
17937	//       "type": "string"
17938	//     },
17939	//     "posDataProviderId": {
17940	//       "description": "The ID of POS data provider.",
17941	//       "format": "uint64",
17942	//       "location": "query",
17943	//       "type": "string"
17944	//     },
17945	//     "posExternalAccountId": {
17946	//       "description": "The account ID by which this merchant is known to the POS data provider.",
17947	//       "location": "query",
17948	//       "type": "string"
17949	//     }
17950	//   },
17951	//   "path": "{merchantId}/liasettings/{accountId}/setposdataprovider",
17952	//   "response": {
17953	//     "$ref": "LiasettingsSetPosDataProviderResponse"
17954	//   },
17955	//   "scopes": [
17956	//     "https://www.googleapis.com/auth/content"
17957	//   ]
17958	// }
17959
17960}
17961
17962// method id "content.liasettings.update":
17963
17964type LiasettingsUpdateCall struct {
17965	s           *APIService
17966	merchantId  uint64
17967	accountId   uint64
17968	liasettings *LiaSettings
17969	urlParams_  gensupport.URLParams
17970	ctx_        context.Context
17971	header_     http.Header
17972}
17973
17974// Update: Updates the LIA settings of the account.
17975func (r *LiasettingsService) Update(merchantId uint64, accountId uint64, liasettings *LiaSettings) *LiasettingsUpdateCall {
17976	c := &LiasettingsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17977	c.merchantId = merchantId
17978	c.accountId = accountId
17979	c.liasettings = liasettings
17980	return c
17981}
17982
17983// DryRun sets the optional parameter "dryRun": Flag to simulate a
17984// request like in a live environment. If set to true, dry-run mode
17985// checks the validity of the request and returns errors (if any).
17986func (c *LiasettingsUpdateCall) DryRun(dryRun bool) *LiasettingsUpdateCall {
17987	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
17988	return c
17989}
17990
17991// Fields allows partial responses to be retrieved. See
17992// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17993// for more information.
17994func (c *LiasettingsUpdateCall) Fields(s ...googleapi.Field) *LiasettingsUpdateCall {
17995	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17996	return c
17997}
17998
17999// Context sets the context to be used in this call's Do method. Any
18000// pending HTTP request will be aborted if the provided context is
18001// canceled.
18002func (c *LiasettingsUpdateCall) Context(ctx context.Context) *LiasettingsUpdateCall {
18003	c.ctx_ = ctx
18004	return c
18005}
18006
18007// Header returns an http.Header that can be modified by the caller to
18008// add HTTP headers to the request.
18009func (c *LiasettingsUpdateCall) Header() http.Header {
18010	if c.header_ == nil {
18011		c.header_ = make(http.Header)
18012	}
18013	return c.header_
18014}
18015
18016func (c *LiasettingsUpdateCall) doRequest(alt string) (*http.Response, error) {
18017	reqHeaders := make(http.Header)
18018	for k, v := range c.header_ {
18019		reqHeaders[k] = v
18020	}
18021	reqHeaders.Set("User-Agent", c.s.userAgent())
18022	var body io.Reader = nil
18023	body, err := googleapi.WithoutDataWrapper.JSONReader(c.liasettings)
18024	if err != nil {
18025		return nil, err
18026	}
18027	reqHeaders.Set("Content-Type", "application/json")
18028	c.urlParams_.Set("alt", alt)
18029	c.urlParams_.Set("prettyPrint", "false")
18030	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}")
18031	urls += "?" + c.urlParams_.Encode()
18032	req, err := http.NewRequest("PUT", urls, body)
18033	if err != nil {
18034		return nil, err
18035	}
18036	req.Header = reqHeaders
18037	googleapi.Expand(req.URL, map[string]string{
18038		"merchantId": strconv.FormatUint(c.merchantId, 10),
18039		"accountId":  strconv.FormatUint(c.accountId, 10),
18040	})
18041	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18042}
18043
18044// Do executes the "content.liasettings.update" call.
18045// Exactly one of *LiaSettings or error will be non-nil. Any non-2xx
18046// status code is an error. Response headers are in either
18047// *LiaSettings.ServerResponse.Header or (if a response was returned at
18048// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
18049// to check whether the returned error was because
18050// http.StatusNotModified was returned.
18051func (c *LiasettingsUpdateCall) Do(opts ...googleapi.CallOption) (*LiaSettings, error) {
18052	gensupport.SetOptions(c.urlParams_, opts...)
18053	res, err := c.doRequest("json")
18054	if res != nil && res.StatusCode == http.StatusNotModified {
18055		if res.Body != nil {
18056			res.Body.Close()
18057		}
18058		return nil, &googleapi.Error{
18059			Code:   res.StatusCode,
18060			Header: res.Header,
18061		}
18062	}
18063	if err != nil {
18064		return nil, err
18065	}
18066	defer googleapi.CloseBody(res)
18067	if err := googleapi.CheckResponse(res); err != nil {
18068		return nil, err
18069	}
18070	ret := &LiaSettings{
18071		ServerResponse: googleapi.ServerResponse{
18072			Header:         res.Header,
18073			HTTPStatusCode: res.StatusCode,
18074		},
18075	}
18076	target := &ret
18077	if err := gensupport.DecodeResponse(target, res); err != nil {
18078		return nil, err
18079	}
18080	return ret, nil
18081	// {
18082	//   "description": "Updates the LIA settings of the account.",
18083	//   "httpMethod": "PUT",
18084	//   "id": "content.liasettings.update",
18085	//   "parameterOrder": [
18086	//     "merchantId",
18087	//     "accountId"
18088	//   ],
18089	//   "parameters": {
18090	//     "accountId": {
18091	//       "description": "The ID of the account for which to get or update LIA settings.",
18092	//       "format": "uint64",
18093	//       "location": "path",
18094	//       "required": true,
18095	//       "type": "string"
18096	//     },
18097	//     "dryRun": {
18098	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
18099	//       "location": "query",
18100	//       "type": "boolean"
18101	//     },
18102	//     "merchantId": {
18103	//       "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.",
18104	//       "format": "uint64",
18105	//       "location": "path",
18106	//       "required": true,
18107	//       "type": "string"
18108	//     }
18109	//   },
18110	//   "path": "{merchantId}/liasettings/{accountId}",
18111	//   "request": {
18112	//     "$ref": "LiaSettings"
18113	//   },
18114	//   "response": {
18115	//     "$ref": "LiaSettings"
18116	//   },
18117	//   "scopes": [
18118	//     "https://www.googleapis.com/auth/content"
18119	//   ]
18120	// }
18121
18122}
18123
18124// method id "content.orderinvoices.createchargeinvoice":
18125
18126type OrderinvoicesCreatechargeinvoiceCall struct {
18127	s                                       *APIService
18128	merchantId                              uint64
18129	orderId                                 string
18130	orderinvoicescreatechargeinvoicerequest *OrderinvoicesCreateChargeInvoiceRequest
18131	urlParams_                              gensupport.URLParams
18132	ctx_                                    context.Context
18133	header_                                 http.Header
18134}
18135
18136// Createchargeinvoice: Creates a charge invoice for a shipment group,
18137// and triggers a charge capture for orderinvoice enabled orders.
18138func (r *OrderinvoicesService) Createchargeinvoice(merchantId uint64, orderId string, orderinvoicescreatechargeinvoicerequest *OrderinvoicesCreateChargeInvoiceRequest) *OrderinvoicesCreatechargeinvoiceCall {
18139	c := &OrderinvoicesCreatechargeinvoiceCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18140	c.merchantId = merchantId
18141	c.orderId = orderId
18142	c.orderinvoicescreatechargeinvoicerequest = orderinvoicescreatechargeinvoicerequest
18143	return c
18144}
18145
18146// Fields allows partial responses to be retrieved. See
18147// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18148// for more information.
18149func (c *OrderinvoicesCreatechargeinvoiceCall) Fields(s ...googleapi.Field) *OrderinvoicesCreatechargeinvoiceCall {
18150	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18151	return c
18152}
18153
18154// Context sets the context to be used in this call's Do method. Any
18155// pending HTTP request will be aborted if the provided context is
18156// canceled.
18157func (c *OrderinvoicesCreatechargeinvoiceCall) Context(ctx context.Context) *OrderinvoicesCreatechargeinvoiceCall {
18158	c.ctx_ = ctx
18159	return c
18160}
18161
18162// Header returns an http.Header that can be modified by the caller to
18163// add HTTP headers to the request.
18164func (c *OrderinvoicesCreatechargeinvoiceCall) Header() http.Header {
18165	if c.header_ == nil {
18166		c.header_ = make(http.Header)
18167	}
18168	return c.header_
18169}
18170
18171func (c *OrderinvoicesCreatechargeinvoiceCall) doRequest(alt string) (*http.Response, error) {
18172	reqHeaders := make(http.Header)
18173	for k, v := range c.header_ {
18174		reqHeaders[k] = v
18175	}
18176	reqHeaders.Set("User-Agent", c.s.userAgent())
18177	var body io.Reader = nil
18178	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderinvoicescreatechargeinvoicerequest)
18179	if err != nil {
18180		return nil, err
18181	}
18182	reqHeaders.Set("Content-Type", "application/json")
18183	c.urlParams_.Set("alt", alt)
18184	c.urlParams_.Set("prettyPrint", "false")
18185	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderinvoices/{orderId}/createChargeInvoice")
18186	urls += "?" + c.urlParams_.Encode()
18187	req, err := http.NewRequest("POST", urls, body)
18188	if err != nil {
18189		return nil, err
18190	}
18191	req.Header = reqHeaders
18192	googleapi.Expand(req.URL, map[string]string{
18193		"merchantId": strconv.FormatUint(c.merchantId, 10),
18194		"orderId":    c.orderId,
18195	})
18196	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18197}
18198
18199// Do executes the "content.orderinvoices.createchargeinvoice" call.
18200// Exactly one of *OrderinvoicesCreateChargeInvoiceResponse or error
18201// will be non-nil. Any non-2xx status code is an error. Response
18202// headers are in either
18203// *OrderinvoicesCreateChargeInvoiceResponse.ServerResponse.Header or
18204// (if a response was returned at all) in
18205// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
18206// whether the returned error was because http.StatusNotModified was
18207// returned.
18208func (c *OrderinvoicesCreatechargeinvoiceCall) Do(opts ...googleapi.CallOption) (*OrderinvoicesCreateChargeInvoiceResponse, error) {
18209	gensupport.SetOptions(c.urlParams_, opts...)
18210	res, err := c.doRequest("json")
18211	if res != nil && res.StatusCode == http.StatusNotModified {
18212		if res.Body != nil {
18213			res.Body.Close()
18214		}
18215		return nil, &googleapi.Error{
18216			Code:   res.StatusCode,
18217			Header: res.Header,
18218		}
18219	}
18220	if err != nil {
18221		return nil, err
18222	}
18223	defer googleapi.CloseBody(res)
18224	if err := googleapi.CheckResponse(res); err != nil {
18225		return nil, err
18226	}
18227	ret := &OrderinvoicesCreateChargeInvoiceResponse{
18228		ServerResponse: googleapi.ServerResponse{
18229			Header:         res.Header,
18230			HTTPStatusCode: res.StatusCode,
18231		},
18232	}
18233	target := &ret
18234	if err := gensupport.DecodeResponse(target, res); err != nil {
18235		return nil, err
18236	}
18237	return ret, nil
18238	// {
18239	//   "description": "Creates a charge invoice for a shipment group, and triggers a charge capture for orderinvoice enabled orders.",
18240	//   "httpMethod": "POST",
18241	//   "id": "content.orderinvoices.createchargeinvoice",
18242	//   "parameterOrder": [
18243	//     "merchantId",
18244	//     "orderId"
18245	//   ],
18246	//   "parameters": {
18247	//     "merchantId": {
18248	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
18249	//       "format": "uint64",
18250	//       "location": "path",
18251	//       "required": true,
18252	//       "type": "string"
18253	//     },
18254	//     "orderId": {
18255	//       "description": "The ID of the order.",
18256	//       "location": "path",
18257	//       "required": true,
18258	//       "type": "string"
18259	//     }
18260	//   },
18261	//   "path": "{merchantId}/orderinvoices/{orderId}/createChargeInvoice",
18262	//   "request": {
18263	//     "$ref": "OrderinvoicesCreateChargeInvoiceRequest"
18264	//   },
18265	//   "response": {
18266	//     "$ref": "OrderinvoicesCreateChargeInvoiceResponse"
18267	//   },
18268	//   "scopes": [
18269	//     "https://www.googleapis.com/auth/content"
18270	//   ]
18271	// }
18272
18273}
18274
18275// method id "content.orderinvoices.createrefundinvoice":
18276
18277type OrderinvoicesCreaterefundinvoiceCall struct {
18278	s                                       *APIService
18279	merchantId                              uint64
18280	orderId                                 string
18281	orderinvoicescreaterefundinvoicerequest *OrderinvoicesCreateRefundInvoiceRequest
18282	urlParams_                              gensupport.URLParams
18283	ctx_                                    context.Context
18284	header_                                 http.Header
18285}
18286
18287// Createrefundinvoice: Creates a refund invoice for one or more
18288// shipment groups, and triggers a refund for orderinvoice enabled
18289// orders. This can only be used for line items that have previously
18290// been charged using createChargeInvoice. All amounts (except for the
18291// summary) are incremental with respect to the previous invoice.
18292func (r *OrderinvoicesService) Createrefundinvoice(merchantId uint64, orderId string, orderinvoicescreaterefundinvoicerequest *OrderinvoicesCreateRefundInvoiceRequest) *OrderinvoicesCreaterefundinvoiceCall {
18293	c := &OrderinvoicesCreaterefundinvoiceCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18294	c.merchantId = merchantId
18295	c.orderId = orderId
18296	c.orderinvoicescreaterefundinvoicerequest = orderinvoicescreaterefundinvoicerequest
18297	return c
18298}
18299
18300// Fields allows partial responses to be retrieved. See
18301// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18302// for more information.
18303func (c *OrderinvoicesCreaterefundinvoiceCall) Fields(s ...googleapi.Field) *OrderinvoicesCreaterefundinvoiceCall {
18304	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18305	return c
18306}
18307
18308// Context sets the context to be used in this call's Do method. Any
18309// pending HTTP request will be aborted if the provided context is
18310// canceled.
18311func (c *OrderinvoicesCreaterefundinvoiceCall) Context(ctx context.Context) *OrderinvoicesCreaterefundinvoiceCall {
18312	c.ctx_ = ctx
18313	return c
18314}
18315
18316// Header returns an http.Header that can be modified by the caller to
18317// add HTTP headers to the request.
18318func (c *OrderinvoicesCreaterefundinvoiceCall) Header() http.Header {
18319	if c.header_ == nil {
18320		c.header_ = make(http.Header)
18321	}
18322	return c.header_
18323}
18324
18325func (c *OrderinvoicesCreaterefundinvoiceCall) doRequest(alt string) (*http.Response, error) {
18326	reqHeaders := make(http.Header)
18327	for k, v := range c.header_ {
18328		reqHeaders[k] = v
18329	}
18330	reqHeaders.Set("User-Agent", c.s.userAgent())
18331	var body io.Reader = nil
18332	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderinvoicescreaterefundinvoicerequest)
18333	if err != nil {
18334		return nil, err
18335	}
18336	reqHeaders.Set("Content-Type", "application/json")
18337	c.urlParams_.Set("alt", alt)
18338	c.urlParams_.Set("prettyPrint", "false")
18339	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderinvoices/{orderId}/createRefundInvoice")
18340	urls += "?" + c.urlParams_.Encode()
18341	req, err := http.NewRequest("POST", urls, body)
18342	if err != nil {
18343		return nil, err
18344	}
18345	req.Header = reqHeaders
18346	googleapi.Expand(req.URL, map[string]string{
18347		"merchantId": strconv.FormatUint(c.merchantId, 10),
18348		"orderId":    c.orderId,
18349	})
18350	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18351}
18352
18353// Do executes the "content.orderinvoices.createrefundinvoice" call.
18354// Exactly one of *OrderinvoicesCreateRefundInvoiceResponse or error
18355// will be non-nil. Any non-2xx status code is an error. Response
18356// headers are in either
18357// *OrderinvoicesCreateRefundInvoiceResponse.ServerResponse.Header or
18358// (if a response was returned at all) in
18359// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
18360// whether the returned error was because http.StatusNotModified was
18361// returned.
18362func (c *OrderinvoicesCreaterefundinvoiceCall) Do(opts ...googleapi.CallOption) (*OrderinvoicesCreateRefundInvoiceResponse, error) {
18363	gensupport.SetOptions(c.urlParams_, opts...)
18364	res, err := c.doRequest("json")
18365	if res != nil && res.StatusCode == http.StatusNotModified {
18366		if res.Body != nil {
18367			res.Body.Close()
18368		}
18369		return nil, &googleapi.Error{
18370			Code:   res.StatusCode,
18371			Header: res.Header,
18372		}
18373	}
18374	if err != nil {
18375		return nil, err
18376	}
18377	defer googleapi.CloseBody(res)
18378	if err := googleapi.CheckResponse(res); err != nil {
18379		return nil, err
18380	}
18381	ret := &OrderinvoicesCreateRefundInvoiceResponse{
18382		ServerResponse: googleapi.ServerResponse{
18383			Header:         res.Header,
18384			HTTPStatusCode: res.StatusCode,
18385		},
18386	}
18387	target := &ret
18388	if err := gensupport.DecodeResponse(target, res); err != nil {
18389		return nil, err
18390	}
18391	return ret, nil
18392	// {
18393	//   "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.",
18394	//   "httpMethod": "POST",
18395	//   "id": "content.orderinvoices.createrefundinvoice",
18396	//   "parameterOrder": [
18397	//     "merchantId",
18398	//     "orderId"
18399	//   ],
18400	//   "parameters": {
18401	//     "merchantId": {
18402	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
18403	//       "format": "uint64",
18404	//       "location": "path",
18405	//       "required": true,
18406	//       "type": "string"
18407	//     },
18408	//     "orderId": {
18409	//       "description": "The ID of the order.",
18410	//       "location": "path",
18411	//       "required": true,
18412	//       "type": "string"
18413	//     }
18414	//   },
18415	//   "path": "{merchantId}/orderinvoices/{orderId}/createRefundInvoice",
18416	//   "request": {
18417	//     "$ref": "OrderinvoicesCreateRefundInvoiceRequest"
18418	//   },
18419	//   "response": {
18420	//     "$ref": "OrderinvoicesCreateRefundInvoiceResponse"
18421	//   },
18422	//   "scopes": [
18423	//     "https://www.googleapis.com/auth/content"
18424	//   ]
18425	// }
18426
18427}
18428
18429// method id "content.orderpayments.notifyauthapproved":
18430
18431type OrderpaymentsNotifyauthapprovedCall struct {
18432	s                                      *APIService
18433	merchantId                             uint64
18434	orderId                                string
18435	orderpaymentsnotifyauthapprovedrequest *OrderpaymentsNotifyAuthApprovedRequest
18436	urlParams_                             gensupport.URLParams
18437	ctx_                                   context.Context
18438	header_                                http.Header
18439}
18440
18441// Notifyauthapproved: Notify about successfully authorizing user's
18442// payment method for a given amount.
18443func (r *OrderpaymentsService) Notifyauthapproved(merchantId uint64, orderId string, orderpaymentsnotifyauthapprovedrequest *OrderpaymentsNotifyAuthApprovedRequest) *OrderpaymentsNotifyauthapprovedCall {
18444	c := &OrderpaymentsNotifyauthapprovedCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18445	c.merchantId = merchantId
18446	c.orderId = orderId
18447	c.orderpaymentsnotifyauthapprovedrequest = orderpaymentsnotifyauthapprovedrequest
18448	return c
18449}
18450
18451// Fields allows partial responses to be retrieved. See
18452// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18453// for more information.
18454func (c *OrderpaymentsNotifyauthapprovedCall) Fields(s ...googleapi.Field) *OrderpaymentsNotifyauthapprovedCall {
18455	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18456	return c
18457}
18458
18459// Context sets the context to be used in this call's Do method. Any
18460// pending HTTP request will be aborted if the provided context is
18461// canceled.
18462func (c *OrderpaymentsNotifyauthapprovedCall) Context(ctx context.Context) *OrderpaymentsNotifyauthapprovedCall {
18463	c.ctx_ = ctx
18464	return c
18465}
18466
18467// Header returns an http.Header that can be modified by the caller to
18468// add HTTP headers to the request.
18469func (c *OrderpaymentsNotifyauthapprovedCall) Header() http.Header {
18470	if c.header_ == nil {
18471		c.header_ = make(http.Header)
18472	}
18473	return c.header_
18474}
18475
18476func (c *OrderpaymentsNotifyauthapprovedCall) doRequest(alt string) (*http.Response, error) {
18477	reqHeaders := make(http.Header)
18478	for k, v := range c.header_ {
18479		reqHeaders[k] = v
18480	}
18481	reqHeaders.Set("User-Agent", c.s.userAgent())
18482	var body io.Reader = nil
18483	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderpaymentsnotifyauthapprovedrequest)
18484	if err != nil {
18485		return nil, err
18486	}
18487	reqHeaders.Set("Content-Type", "application/json")
18488	c.urlParams_.Set("alt", alt)
18489	c.urlParams_.Set("prettyPrint", "false")
18490	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderpayments/{orderId}/notifyAuthApproved")
18491	urls += "?" + c.urlParams_.Encode()
18492	req, err := http.NewRequest("POST", urls, body)
18493	if err != nil {
18494		return nil, err
18495	}
18496	req.Header = reqHeaders
18497	googleapi.Expand(req.URL, map[string]string{
18498		"merchantId": strconv.FormatUint(c.merchantId, 10),
18499		"orderId":    c.orderId,
18500	})
18501	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18502}
18503
18504// Do executes the "content.orderpayments.notifyauthapproved" call.
18505// Exactly one of *OrderpaymentsNotifyAuthApprovedResponse or error will
18506// be non-nil. Any non-2xx status code is an error. Response headers are
18507// in either
18508// *OrderpaymentsNotifyAuthApprovedResponse.ServerResponse.Header or (if
18509// a response was returned at all) in error.(*googleapi.Error).Header.
18510// Use googleapi.IsNotModified to check whether the returned error was
18511// because http.StatusNotModified was returned.
18512func (c *OrderpaymentsNotifyauthapprovedCall) Do(opts ...googleapi.CallOption) (*OrderpaymentsNotifyAuthApprovedResponse, error) {
18513	gensupport.SetOptions(c.urlParams_, opts...)
18514	res, err := c.doRequest("json")
18515	if res != nil && res.StatusCode == http.StatusNotModified {
18516		if res.Body != nil {
18517			res.Body.Close()
18518		}
18519		return nil, &googleapi.Error{
18520			Code:   res.StatusCode,
18521			Header: res.Header,
18522		}
18523	}
18524	if err != nil {
18525		return nil, err
18526	}
18527	defer googleapi.CloseBody(res)
18528	if err := googleapi.CheckResponse(res); err != nil {
18529		return nil, err
18530	}
18531	ret := &OrderpaymentsNotifyAuthApprovedResponse{
18532		ServerResponse: googleapi.ServerResponse{
18533			Header:         res.Header,
18534			HTTPStatusCode: res.StatusCode,
18535		},
18536	}
18537	target := &ret
18538	if err := gensupport.DecodeResponse(target, res); err != nil {
18539		return nil, err
18540	}
18541	return ret, nil
18542	// {
18543	//   "description": "Notify about successfully authorizing user's payment method for a given amount.",
18544	//   "httpMethod": "POST",
18545	//   "id": "content.orderpayments.notifyauthapproved",
18546	//   "parameterOrder": [
18547	//     "merchantId",
18548	//     "orderId"
18549	//   ],
18550	//   "parameters": {
18551	//     "merchantId": {
18552	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
18553	//       "format": "uint64",
18554	//       "location": "path",
18555	//       "required": true,
18556	//       "type": "string"
18557	//     },
18558	//     "orderId": {
18559	//       "description": "The ID of the order for for which payment authorization is happening.",
18560	//       "location": "path",
18561	//       "required": true,
18562	//       "type": "string"
18563	//     }
18564	//   },
18565	//   "path": "{merchantId}/orderpayments/{orderId}/notifyAuthApproved",
18566	//   "request": {
18567	//     "$ref": "OrderpaymentsNotifyAuthApprovedRequest"
18568	//   },
18569	//   "response": {
18570	//     "$ref": "OrderpaymentsNotifyAuthApprovedResponse"
18571	//   },
18572	//   "scopes": [
18573	//     "https://www.googleapis.com/auth/content"
18574	//   ]
18575	// }
18576
18577}
18578
18579// method id "content.orderpayments.notifyauthdeclined":
18580
18581type OrderpaymentsNotifyauthdeclinedCall struct {
18582	s                                      *APIService
18583	merchantId                             uint64
18584	orderId                                string
18585	orderpaymentsnotifyauthdeclinedrequest *OrderpaymentsNotifyAuthDeclinedRequest
18586	urlParams_                             gensupport.URLParams
18587	ctx_                                   context.Context
18588	header_                                http.Header
18589}
18590
18591// Notifyauthdeclined: Notify about failure to authorize user's payment
18592// method.
18593func (r *OrderpaymentsService) Notifyauthdeclined(merchantId uint64, orderId string, orderpaymentsnotifyauthdeclinedrequest *OrderpaymentsNotifyAuthDeclinedRequest) *OrderpaymentsNotifyauthdeclinedCall {
18594	c := &OrderpaymentsNotifyauthdeclinedCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18595	c.merchantId = merchantId
18596	c.orderId = orderId
18597	c.orderpaymentsnotifyauthdeclinedrequest = orderpaymentsnotifyauthdeclinedrequest
18598	return c
18599}
18600
18601// Fields allows partial responses to be retrieved. See
18602// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18603// for more information.
18604func (c *OrderpaymentsNotifyauthdeclinedCall) Fields(s ...googleapi.Field) *OrderpaymentsNotifyauthdeclinedCall {
18605	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18606	return c
18607}
18608
18609// Context sets the context to be used in this call's Do method. Any
18610// pending HTTP request will be aborted if the provided context is
18611// canceled.
18612func (c *OrderpaymentsNotifyauthdeclinedCall) Context(ctx context.Context) *OrderpaymentsNotifyauthdeclinedCall {
18613	c.ctx_ = ctx
18614	return c
18615}
18616
18617// Header returns an http.Header that can be modified by the caller to
18618// add HTTP headers to the request.
18619func (c *OrderpaymentsNotifyauthdeclinedCall) Header() http.Header {
18620	if c.header_ == nil {
18621		c.header_ = make(http.Header)
18622	}
18623	return c.header_
18624}
18625
18626func (c *OrderpaymentsNotifyauthdeclinedCall) doRequest(alt string) (*http.Response, error) {
18627	reqHeaders := make(http.Header)
18628	for k, v := range c.header_ {
18629		reqHeaders[k] = v
18630	}
18631	reqHeaders.Set("User-Agent", c.s.userAgent())
18632	var body io.Reader = nil
18633	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderpaymentsnotifyauthdeclinedrequest)
18634	if err != nil {
18635		return nil, err
18636	}
18637	reqHeaders.Set("Content-Type", "application/json")
18638	c.urlParams_.Set("alt", alt)
18639	c.urlParams_.Set("prettyPrint", "false")
18640	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderpayments/{orderId}/notifyAuthDeclined")
18641	urls += "?" + c.urlParams_.Encode()
18642	req, err := http.NewRequest("POST", urls, body)
18643	if err != nil {
18644		return nil, err
18645	}
18646	req.Header = reqHeaders
18647	googleapi.Expand(req.URL, map[string]string{
18648		"merchantId": strconv.FormatUint(c.merchantId, 10),
18649		"orderId":    c.orderId,
18650	})
18651	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18652}
18653
18654// Do executes the "content.orderpayments.notifyauthdeclined" call.
18655// Exactly one of *OrderpaymentsNotifyAuthDeclinedResponse or error will
18656// be non-nil. Any non-2xx status code is an error. Response headers are
18657// in either
18658// *OrderpaymentsNotifyAuthDeclinedResponse.ServerResponse.Header or (if
18659// a response was returned at all) in error.(*googleapi.Error).Header.
18660// Use googleapi.IsNotModified to check whether the returned error was
18661// because http.StatusNotModified was returned.
18662func (c *OrderpaymentsNotifyauthdeclinedCall) Do(opts ...googleapi.CallOption) (*OrderpaymentsNotifyAuthDeclinedResponse, error) {
18663	gensupport.SetOptions(c.urlParams_, opts...)
18664	res, err := c.doRequest("json")
18665	if res != nil && res.StatusCode == http.StatusNotModified {
18666		if res.Body != nil {
18667			res.Body.Close()
18668		}
18669		return nil, &googleapi.Error{
18670			Code:   res.StatusCode,
18671			Header: res.Header,
18672		}
18673	}
18674	if err != nil {
18675		return nil, err
18676	}
18677	defer googleapi.CloseBody(res)
18678	if err := googleapi.CheckResponse(res); err != nil {
18679		return nil, err
18680	}
18681	ret := &OrderpaymentsNotifyAuthDeclinedResponse{
18682		ServerResponse: googleapi.ServerResponse{
18683			Header:         res.Header,
18684			HTTPStatusCode: res.StatusCode,
18685		},
18686	}
18687	target := &ret
18688	if err := gensupport.DecodeResponse(target, res); err != nil {
18689		return nil, err
18690	}
18691	return ret, nil
18692	// {
18693	//   "description": "Notify about failure to authorize user's payment method.",
18694	//   "httpMethod": "POST",
18695	//   "id": "content.orderpayments.notifyauthdeclined",
18696	//   "parameterOrder": [
18697	//     "merchantId",
18698	//     "orderId"
18699	//   ],
18700	//   "parameters": {
18701	//     "merchantId": {
18702	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
18703	//       "format": "uint64",
18704	//       "location": "path",
18705	//       "required": true,
18706	//       "type": "string"
18707	//     },
18708	//     "orderId": {
18709	//       "description": "The ID of the order for which payment authorization was declined.",
18710	//       "location": "path",
18711	//       "required": true,
18712	//       "type": "string"
18713	//     }
18714	//   },
18715	//   "path": "{merchantId}/orderpayments/{orderId}/notifyAuthDeclined",
18716	//   "request": {
18717	//     "$ref": "OrderpaymentsNotifyAuthDeclinedRequest"
18718	//   },
18719	//   "response": {
18720	//     "$ref": "OrderpaymentsNotifyAuthDeclinedResponse"
18721	//   },
18722	//   "scopes": [
18723	//     "https://www.googleapis.com/auth/content"
18724	//   ]
18725	// }
18726
18727}
18728
18729// method id "content.orderpayments.notifycharge":
18730
18731type OrderpaymentsNotifychargeCall struct {
18732	s                                *APIService
18733	merchantId                       uint64
18734	orderId                          string
18735	orderpaymentsnotifychargerequest *OrderpaymentsNotifyChargeRequest
18736	urlParams_                       gensupport.URLParams
18737	ctx_                             context.Context
18738	header_                          http.Header
18739}
18740
18741// Notifycharge: Notify about charge on user's selected payments method.
18742func (r *OrderpaymentsService) Notifycharge(merchantId uint64, orderId string, orderpaymentsnotifychargerequest *OrderpaymentsNotifyChargeRequest) *OrderpaymentsNotifychargeCall {
18743	c := &OrderpaymentsNotifychargeCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18744	c.merchantId = merchantId
18745	c.orderId = orderId
18746	c.orderpaymentsnotifychargerequest = orderpaymentsnotifychargerequest
18747	return c
18748}
18749
18750// Fields allows partial responses to be retrieved. See
18751// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18752// for more information.
18753func (c *OrderpaymentsNotifychargeCall) Fields(s ...googleapi.Field) *OrderpaymentsNotifychargeCall {
18754	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18755	return c
18756}
18757
18758// Context sets the context to be used in this call's Do method. Any
18759// pending HTTP request will be aborted if the provided context is
18760// canceled.
18761func (c *OrderpaymentsNotifychargeCall) Context(ctx context.Context) *OrderpaymentsNotifychargeCall {
18762	c.ctx_ = ctx
18763	return c
18764}
18765
18766// Header returns an http.Header that can be modified by the caller to
18767// add HTTP headers to the request.
18768func (c *OrderpaymentsNotifychargeCall) Header() http.Header {
18769	if c.header_ == nil {
18770		c.header_ = make(http.Header)
18771	}
18772	return c.header_
18773}
18774
18775func (c *OrderpaymentsNotifychargeCall) doRequest(alt string) (*http.Response, error) {
18776	reqHeaders := make(http.Header)
18777	for k, v := range c.header_ {
18778		reqHeaders[k] = v
18779	}
18780	reqHeaders.Set("User-Agent", c.s.userAgent())
18781	var body io.Reader = nil
18782	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderpaymentsnotifychargerequest)
18783	if err != nil {
18784		return nil, err
18785	}
18786	reqHeaders.Set("Content-Type", "application/json")
18787	c.urlParams_.Set("alt", alt)
18788	c.urlParams_.Set("prettyPrint", "false")
18789	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderpayments/{orderId}/notifyCharge")
18790	urls += "?" + c.urlParams_.Encode()
18791	req, err := http.NewRequest("POST", urls, body)
18792	if err != nil {
18793		return nil, err
18794	}
18795	req.Header = reqHeaders
18796	googleapi.Expand(req.URL, map[string]string{
18797		"merchantId": strconv.FormatUint(c.merchantId, 10),
18798		"orderId":    c.orderId,
18799	})
18800	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18801}
18802
18803// Do executes the "content.orderpayments.notifycharge" call.
18804// Exactly one of *OrderpaymentsNotifyChargeResponse or error will be
18805// non-nil. Any non-2xx status code is an error. Response headers are in
18806// either *OrderpaymentsNotifyChargeResponse.ServerResponse.Header or
18807// (if a response was returned at all) in
18808// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
18809// whether the returned error was because http.StatusNotModified was
18810// returned.
18811func (c *OrderpaymentsNotifychargeCall) Do(opts ...googleapi.CallOption) (*OrderpaymentsNotifyChargeResponse, error) {
18812	gensupport.SetOptions(c.urlParams_, opts...)
18813	res, err := c.doRequest("json")
18814	if res != nil && res.StatusCode == http.StatusNotModified {
18815		if res.Body != nil {
18816			res.Body.Close()
18817		}
18818		return nil, &googleapi.Error{
18819			Code:   res.StatusCode,
18820			Header: res.Header,
18821		}
18822	}
18823	if err != nil {
18824		return nil, err
18825	}
18826	defer googleapi.CloseBody(res)
18827	if err := googleapi.CheckResponse(res); err != nil {
18828		return nil, err
18829	}
18830	ret := &OrderpaymentsNotifyChargeResponse{
18831		ServerResponse: googleapi.ServerResponse{
18832			Header:         res.Header,
18833			HTTPStatusCode: res.StatusCode,
18834		},
18835	}
18836	target := &ret
18837	if err := gensupport.DecodeResponse(target, res); err != nil {
18838		return nil, err
18839	}
18840	return ret, nil
18841	// {
18842	//   "description": "Notify about charge on user's selected payments method.",
18843	//   "httpMethod": "POST",
18844	//   "id": "content.orderpayments.notifycharge",
18845	//   "parameterOrder": [
18846	//     "merchantId",
18847	//     "orderId"
18848	//   ],
18849	//   "parameters": {
18850	//     "merchantId": {
18851	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
18852	//       "format": "uint64",
18853	//       "location": "path",
18854	//       "required": true,
18855	//       "type": "string"
18856	//     },
18857	//     "orderId": {
18858	//       "description": "The ID of the order for which charge is happening.",
18859	//       "location": "path",
18860	//       "required": true,
18861	//       "type": "string"
18862	//     }
18863	//   },
18864	//   "path": "{merchantId}/orderpayments/{orderId}/notifyCharge",
18865	//   "request": {
18866	//     "$ref": "OrderpaymentsNotifyChargeRequest"
18867	//   },
18868	//   "response": {
18869	//     "$ref": "OrderpaymentsNotifyChargeResponse"
18870	//   },
18871	//   "scopes": [
18872	//     "https://www.googleapis.com/auth/content"
18873	//   ]
18874	// }
18875
18876}
18877
18878// method id "content.orderpayments.notifyrefund":
18879
18880type OrderpaymentsNotifyrefundCall struct {
18881	s                                *APIService
18882	merchantId                       uint64
18883	orderId                          string
18884	orderpaymentsnotifyrefundrequest *OrderpaymentsNotifyRefundRequest
18885	urlParams_                       gensupport.URLParams
18886	ctx_                             context.Context
18887	header_                          http.Header
18888}
18889
18890// Notifyrefund: Notify about refund on user's selected payments method.
18891func (r *OrderpaymentsService) Notifyrefund(merchantId uint64, orderId string, orderpaymentsnotifyrefundrequest *OrderpaymentsNotifyRefundRequest) *OrderpaymentsNotifyrefundCall {
18892	c := &OrderpaymentsNotifyrefundCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18893	c.merchantId = merchantId
18894	c.orderId = orderId
18895	c.orderpaymentsnotifyrefundrequest = orderpaymentsnotifyrefundrequest
18896	return c
18897}
18898
18899// Fields allows partial responses to be retrieved. See
18900// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18901// for more information.
18902func (c *OrderpaymentsNotifyrefundCall) Fields(s ...googleapi.Field) *OrderpaymentsNotifyrefundCall {
18903	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18904	return c
18905}
18906
18907// Context sets the context to be used in this call's Do method. Any
18908// pending HTTP request will be aborted if the provided context is
18909// canceled.
18910func (c *OrderpaymentsNotifyrefundCall) Context(ctx context.Context) *OrderpaymentsNotifyrefundCall {
18911	c.ctx_ = ctx
18912	return c
18913}
18914
18915// Header returns an http.Header that can be modified by the caller to
18916// add HTTP headers to the request.
18917func (c *OrderpaymentsNotifyrefundCall) Header() http.Header {
18918	if c.header_ == nil {
18919		c.header_ = make(http.Header)
18920	}
18921	return c.header_
18922}
18923
18924func (c *OrderpaymentsNotifyrefundCall) doRequest(alt string) (*http.Response, error) {
18925	reqHeaders := make(http.Header)
18926	for k, v := range c.header_ {
18927		reqHeaders[k] = v
18928	}
18929	reqHeaders.Set("User-Agent", c.s.userAgent())
18930	var body io.Reader = nil
18931	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderpaymentsnotifyrefundrequest)
18932	if err != nil {
18933		return nil, err
18934	}
18935	reqHeaders.Set("Content-Type", "application/json")
18936	c.urlParams_.Set("alt", alt)
18937	c.urlParams_.Set("prettyPrint", "false")
18938	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderpayments/{orderId}/notifyRefund")
18939	urls += "?" + c.urlParams_.Encode()
18940	req, err := http.NewRequest("POST", urls, body)
18941	if err != nil {
18942		return nil, err
18943	}
18944	req.Header = reqHeaders
18945	googleapi.Expand(req.URL, map[string]string{
18946		"merchantId": strconv.FormatUint(c.merchantId, 10),
18947		"orderId":    c.orderId,
18948	})
18949	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18950}
18951
18952// Do executes the "content.orderpayments.notifyrefund" call.
18953// Exactly one of *OrderpaymentsNotifyRefundResponse or error will be
18954// non-nil. Any non-2xx status code is an error. Response headers are in
18955// either *OrderpaymentsNotifyRefundResponse.ServerResponse.Header or
18956// (if a response was returned at all) in
18957// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
18958// whether the returned error was because http.StatusNotModified was
18959// returned.
18960func (c *OrderpaymentsNotifyrefundCall) Do(opts ...googleapi.CallOption) (*OrderpaymentsNotifyRefundResponse, error) {
18961	gensupport.SetOptions(c.urlParams_, opts...)
18962	res, err := c.doRequest("json")
18963	if res != nil && res.StatusCode == http.StatusNotModified {
18964		if res.Body != nil {
18965			res.Body.Close()
18966		}
18967		return nil, &googleapi.Error{
18968			Code:   res.StatusCode,
18969			Header: res.Header,
18970		}
18971	}
18972	if err != nil {
18973		return nil, err
18974	}
18975	defer googleapi.CloseBody(res)
18976	if err := googleapi.CheckResponse(res); err != nil {
18977		return nil, err
18978	}
18979	ret := &OrderpaymentsNotifyRefundResponse{
18980		ServerResponse: googleapi.ServerResponse{
18981			Header:         res.Header,
18982			HTTPStatusCode: res.StatusCode,
18983		},
18984	}
18985	target := &ret
18986	if err := gensupport.DecodeResponse(target, res); err != nil {
18987		return nil, err
18988	}
18989	return ret, nil
18990	// {
18991	//   "description": "Notify about refund on user's selected payments method.",
18992	//   "httpMethod": "POST",
18993	//   "id": "content.orderpayments.notifyrefund",
18994	//   "parameterOrder": [
18995	//     "merchantId",
18996	//     "orderId"
18997	//   ],
18998	//   "parameters": {
18999	//     "merchantId": {
19000	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
19001	//       "format": "uint64",
19002	//       "location": "path",
19003	//       "required": true,
19004	//       "type": "string"
19005	//     },
19006	//     "orderId": {
19007	//       "description": "The ID of the order for which charge is happening.",
19008	//       "location": "path",
19009	//       "required": true,
19010	//       "type": "string"
19011	//     }
19012	//   },
19013	//   "path": "{merchantId}/orderpayments/{orderId}/notifyRefund",
19014	//   "request": {
19015	//     "$ref": "OrderpaymentsNotifyRefundRequest"
19016	//   },
19017	//   "response": {
19018	//     "$ref": "OrderpaymentsNotifyRefundResponse"
19019	//   },
19020	//   "scopes": [
19021	//     "https://www.googleapis.com/auth/content"
19022	//   ]
19023	// }
19024
19025}
19026
19027// method id "content.orderreports.listdisbursements":
19028
19029type OrderreportsListdisbursementsCall struct {
19030	s            *APIService
19031	merchantId   uint64
19032	urlParams_   gensupport.URLParams
19033	ifNoneMatch_ string
19034	ctx_         context.Context
19035	header_      http.Header
19036}
19037
19038// Listdisbursements: Retrieves a report for disbursements from your
19039// Merchant Center account.
19040func (r *OrderreportsService) Listdisbursements(merchantId uint64, disbursementStartDate string) *OrderreportsListdisbursementsCall {
19041	c := &OrderreportsListdisbursementsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19042	c.merchantId = merchantId
19043	c.urlParams_.Set("disbursementStartDate", disbursementStartDate)
19044	return c
19045}
19046
19047// DisbursementEndDate sets the optional parameter
19048// "disbursementEndDate": The last date which disbursements occurred. In
19049// ISO 8601 format. Default: current date.
19050func (c *OrderreportsListdisbursementsCall) DisbursementEndDate(disbursementEndDate string) *OrderreportsListdisbursementsCall {
19051	c.urlParams_.Set("disbursementEndDate", disbursementEndDate)
19052	return c
19053}
19054
19055// MaxResults sets the optional parameter "maxResults": The maximum
19056// number of disbursements to return in the response, used for paging.
19057func (c *OrderreportsListdisbursementsCall) MaxResults(maxResults int64) *OrderreportsListdisbursementsCall {
19058	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
19059	return c
19060}
19061
19062// PageToken sets the optional parameter "pageToken": The token returned
19063// by the previous request.
19064func (c *OrderreportsListdisbursementsCall) PageToken(pageToken string) *OrderreportsListdisbursementsCall {
19065	c.urlParams_.Set("pageToken", pageToken)
19066	return c
19067}
19068
19069// Fields allows partial responses to be retrieved. See
19070// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19071// for more information.
19072func (c *OrderreportsListdisbursementsCall) Fields(s ...googleapi.Field) *OrderreportsListdisbursementsCall {
19073	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19074	return c
19075}
19076
19077// IfNoneMatch sets the optional parameter which makes the operation
19078// fail if the object's ETag matches the given value. This is useful for
19079// getting updates only after the object has changed since the last
19080// request. Use googleapi.IsNotModified to check whether the response
19081// error from Do is the result of In-None-Match.
19082func (c *OrderreportsListdisbursementsCall) IfNoneMatch(entityTag string) *OrderreportsListdisbursementsCall {
19083	c.ifNoneMatch_ = entityTag
19084	return c
19085}
19086
19087// Context sets the context to be used in this call's Do method. Any
19088// pending HTTP request will be aborted if the provided context is
19089// canceled.
19090func (c *OrderreportsListdisbursementsCall) Context(ctx context.Context) *OrderreportsListdisbursementsCall {
19091	c.ctx_ = ctx
19092	return c
19093}
19094
19095// Header returns an http.Header that can be modified by the caller to
19096// add HTTP headers to the request.
19097func (c *OrderreportsListdisbursementsCall) Header() http.Header {
19098	if c.header_ == nil {
19099		c.header_ = make(http.Header)
19100	}
19101	return c.header_
19102}
19103
19104func (c *OrderreportsListdisbursementsCall) doRequest(alt string) (*http.Response, error) {
19105	reqHeaders := make(http.Header)
19106	for k, v := range c.header_ {
19107		reqHeaders[k] = v
19108	}
19109	reqHeaders.Set("User-Agent", c.s.userAgent())
19110	if c.ifNoneMatch_ != "" {
19111		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
19112	}
19113	var body io.Reader = nil
19114	c.urlParams_.Set("alt", alt)
19115	c.urlParams_.Set("prettyPrint", "false")
19116	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreports/disbursements")
19117	urls += "?" + c.urlParams_.Encode()
19118	req, err := http.NewRequest("GET", urls, body)
19119	if err != nil {
19120		return nil, err
19121	}
19122	req.Header = reqHeaders
19123	googleapi.Expand(req.URL, map[string]string{
19124		"merchantId": strconv.FormatUint(c.merchantId, 10),
19125	})
19126	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19127}
19128
19129// Do executes the "content.orderreports.listdisbursements" call.
19130// Exactly one of *OrderreportsListDisbursementsResponse or error will
19131// be non-nil. Any non-2xx status code is an error. Response headers are
19132// in either
19133// *OrderreportsListDisbursementsResponse.ServerResponse.Header or (if a
19134// response was returned at all) in error.(*googleapi.Error).Header. Use
19135// googleapi.IsNotModified to check whether the returned error was
19136// because http.StatusNotModified was returned.
19137func (c *OrderreportsListdisbursementsCall) Do(opts ...googleapi.CallOption) (*OrderreportsListDisbursementsResponse, error) {
19138	gensupport.SetOptions(c.urlParams_, opts...)
19139	res, err := c.doRequest("json")
19140	if res != nil && res.StatusCode == http.StatusNotModified {
19141		if res.Body != nil {
19142			res.Body.Close()
19143		}
19144		return nil, &googleapi.Error{
19145			Code:   res.StatusCode,
19146			Header: res.Header,
19147		}
19148	}
19149	if err != nil {
19150		return nil, err
19151	}
19152	defer googleapi.CloseBody(res)
19153	if err := googleapi.CheckResponse(res); err != nil {
19154		return nil, err
19155	}
19156	ret := &OrderreportsListDisbursementsResponse{
19157		ServerResponse: googleapi.ServerResponse{
19158			Header:         res.Header,
19159			HTTPStatusCode: res.StatusCode,
19160		},
19161	}
19162	target := &ret
19163	if err := gensupport.DecodeResponse(target, res); err != nil {
19164		return nil, err
19165	}
19166	return ret, nil
19167	// {
19168	//   "description": "Retrieves a report for disbursements from your Merchant Center account.",
19169	//   "httpMethod": "GET",
19170	//   "id": "content.orderreports.listdisbursements",
19171	//   "parameterOrder": [
19172	//     "merchantId",
19173	//     "disbursementStartDate"
19174	//   ],
19175	//   "parameters": {
19176	//     "disbursementEndDate": {
19177	//       "description": "The last date which disbursements occurred. In ISO 8601 format. Default: current date.",
19178	//       "location": "query",
19179	//       "type": "string"
19180	//     },
19181	//     "disbursementStartDate": {
19182	//       "description": "The first date which disbursements occurred. In ISO 8601 format.",
19183	//       "location": "query",
19184	//       "required": true,
19185	//       "type": "string"
19186	//     },
19187	//     "maxResults": {
19188	//       "description": "The maximum number of disbursements to return in the response, used for paging.",
19189	//       "format": "uint32",
19190	//       "location": "query",
19191	//       "type": "integer"
19192	//     },
19193	//     "merchantId": {
19194	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
19195	//       "format": "uint64",
19196	//       "location": "path",
19197	//       "required": true,
19198	//       "type": "string"
19199	//     },
19200	//     "pageToken": {
19201	//       "description": "The token returned by the previous request.",
19202	//       "location": "query",
19203	//       "type": "string"
19204	//     }
19205	//   },
19206	//   "path": "{merchantId}/orderreports/disbursements",
19207	//   "response": {
19208	//     "$ref": "OrderreportsListDisbursementsResponse"
19209	//   },
19210	//   "scopes": [
19211	//     "https://www.googleapis.com/auth/content"
19212	//   ]
19213	// }
19214
19215}
19216
19217// Pages invokes f for each page of results.
19218// A non-nil error returned from f will halt the iteration.
19219// The provided context supersedes any context provided to the Context method.
19220func (c *OrderreportsListdisbursementsCall) Pages(ctx context.Context, f func(*OrderreportsListDisbursementsResponse) error) error {
19221	c.ctx_ = ctx
19222	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
19223	for {
19224		x, err := c.Do()
19225		if err != nil {
19226			return err
19227		}
19228		if err := f(x); err != nil {
19229			return err
19230		}
19231		if x.NextPageToken == "" {
19232			return nil
19233		}
19234		c.PageToken(x.NextPageToken)
19235	}
19236}
19237
19238// method id "content.orderreports.listtransactions":
19239
19240type OrderreportsListtransactionsCall struct {
19241	s              *APIService
19242	merchantId     uint64
19243	disbursementId string
19244	urlParams_     gensupport.URLParams
19245	ifNoneMatch_   string
19246	ctx_           context.Context
19247	header_        http.Header
19248}
19249
19250// Listtransactions: Retrieves a list of transactions for a disbursement
19251// from your Merchant Center account.
19252func (r *OrderreportsService) Listtransactions(merchantId uint64, disbursementId string, transactionStartDate string) *OrderreportsListtransactionsCall {
19253	c := &OrderreportsListtransactionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19254	c.merchantId = merchantId
19255	c.disbursementId = disbursementId
19256	c.urlParams_.Set("transactionStartDate", transactionStartDate)
19257	return c
19258}
19259
19260// MaxResults sets the optional parameter "maxResults": The maximum
19261// number of disbursements to return in the response, used for paging.
19262func (c *OrderreportsListtransactionsCall) MaxResults(maxResults int64) *OrderreportsListtransactionsCall {
19263	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
19264	return c
19265}
19266
19267// PageToken sets the optional parameter "pageToken": The token returned
19268// by the previous request.
19269func (c *OrderreportsListtransactionsCall) PageToken(pageToken string) *OrderreportsListtransactionsCall {
19270	c.urlParams_.Set("pageToken", pageToken)
19271	return c
19272}
19273
19274// TransactionEndDate sets the optional parameter "transactionEndDate":
19275// The last date in which transaction occurred. In ISO 8601 format.
19276// Default: current date.
19277func (c *OrderreportsListtransactionsCall) TransactionEndDate(transactionEndDate string) *OrderreportsListtransactionsCall {
19278	c.urlParams_.Set("transactionEndDate", transactionEndDate)
19279	return c
19280}
19281
19282// Fields allows partial responses to be retrieved. See
19283// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19284// for more information.
19285func (c *OrderreportsListtransactionsCall) Fields(s ...googleapi.Field) *OrderreportsListtransactionsCall {
19286	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19287	return c
19288}
19289
19290// IfNoneMatch sets the optional parameter which makes the operation
19291// fail if the object's ETag matches the given value. This is useful for
19292// getting updates only after the object has changed since the last
19293// request. Use googleapi.IsNotModified to check whether the response
19294// error from Do is the result of In-None-Match.
19295func (c *OrderreportsListtransactionsCall) IfNoneMatch(entityTag string) *OrderreportsListtransactionsCall {
19296	c.ifNoneMatch_ = entityTag
19297	return c
19298}
19299
19300// Context sets the context to be used in this call's Do method. Any
19301// pending HTTP request will be aborted if the provided context is
19302// canceled.
19303func (c *OrderreportsListtransactionsCall) Context(ctx context.Context) *OrderreportsListtransactionsCall {
19304	c.ctx_ = ctx
19305	return c
19306}
19307
19308// Header returns an http.Header that can be modified by the caller to
19309// add HTTP headers to the request.
19310func (c *OrderreportsListtransactionsCall) Header() http.Header {
19311	if c.header_ == nil {
19312		c.header_ = make(http.Header)
19313	}
19314	return c.header_
19315}
19316
19317func (c *OrderreportsListtransactionsCall) doRequest(alt string) (*http.Response, error) {
19318	reqHeaders := make(http.Header)
19319	for k, v := range c.header_ {
19320		reqHeaders[k] = v
19321	}
19322	reqHeaders.Set("User-Agent", c.s.userAgent())
19323	if c.ifNoneMatch_ != "" {
19324		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
19325	}
19326	var body io.Reader = nil
19327	c.urlParams_.Set("alt", alt)
19328	c.urlParams_.Set("prettyPrint", "false")
19329	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreports/disbursements/{disbursementId}/transactions")
19330	urls += "?" + c.urlParams_.Encode()
19331	req, err := http.NewRequest("GET", urls, body)
19332	if err != nil {
19333		return nil, err
19334	}
19335	req.Header = reqHeaders
19336	googleapi.Expand(req.URL, map[string]string{
19337		"merchantId":     strconv.FormatUint(c.merchantId, 10),
19338		"disbursementId": c.disbursementId,
19339	})
19340	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19341}
19342
19343// Do executes the "content.orderreports.listtransactions" call.
19344// Exactly one of *OrderreportsListTransactionsResponse or error will be
19345// non-nil. Any non-2xx status code is an error. Response headers are in
19346// either *OrderreportsListTransactionsResponse.ServerResponse.Header or
19347// (if a response was returned at all) in
19348// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
19349// whether the returned error was because http.StatusNotModified was
19350// returned.
19351func (c *OrderreportsListtransactionsCall) Do(opts ...googleapi.CallOption) (*OrderreportsListTransactionsResponse, error) {
19352	gensupport.SetOptions(c.urlParams_, opts...)
19353	res, err := c.doRequest("json")
19354	if res != nil && res.StatusCode == http.StatusNotModified {
19355		if res.Body != nil {
19356			res.Body.Close()
19357		}
19358		return nil, &googleapi.Error{
19359			Code:   res.StatusCode,
19360			Header: res.Header,
19361		}
19362	}
19363	if err != nil {
19364		return nil, err
19365	}
19366	defer googleapi.CloseBody(res)
19367	if err := googleapi.CheckResponse(res); err != nil {
19368		return nil, err
19369	}
19370	ret := &OrderreportsListTransactionsResponse{
19371		ServerResponse: googleapi.ServerResponse{
19372			Header:         res.Header,
19373			HTTPStatusCode: res.StatusCode,
19374		},
19375	}
19376	target := &ret
19377	if err := gensupport.DecodeResponse(target, res); err != nil {
19378		return nil, err
19379	}
19380	return ret, nil
19381	// {
19382	//   "description": "Retrieves a list of transactions for a disbursement from your Merchant Center account.",
19383	//   "httpMethod": "GET",
19384	//   "id": "content.orderreports.listtransactions",
19385	//   "parameterOrder": [
19386	//     "merchantId",
19387	//     "disbursementId",
19388	//     "transactionStartDate"
19389	//   ],
19390	//   "parameters": {
19391	//     "disbursementId": {
19392	//       "description": "The Google-provided ID of the disbursement (found in Wallet).",
19393	//       "location": "path",
19394	//       "required": true,
19395	//       "type": "string"
19396	//     },
19397	//     "maxResults": {
19398	//       "description": "The maximum number of disbursements to return in the response, used for paging.",
19399	//       "format": "uint32",
19400	//       "location": "query",
19401	//       "type": "integer"
19402	//     },
19403	//     "merchantId": {
19404	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
19405	//       "format": "uint64",
19406	//       "location": "path",
19407	//       "required": true,
19408	//       "type": "string"
19409	//     },
19410	//     "pageToken": {
19411	//       "description": "The token returned by the previous request.",
19412	//       "location": "query",
19413	//       "type": "string"
19414	//     },
19415	//     "transactionEndDate": {
19416	//       "description": "The last date in which transaction occurred. In ISO 8601 format. Default: current date.",
19417	//       "location": "query",
19418	//       "type": "string"
19419	//     },
19420	//     "transactionStartDate": {
19421	//       "description": "The first date in which transaction occurred. In ISO 8601 format.",
19422	//       "location": "query",
19423	//       "required": true,
19424	//       "type": "string"
19425	//     }
19426	//   },
19427	//   "path": "{merchantId}/orderreports/disbursements/{disbursementId}/transactions",
19428	//   "response": {
19429	//     "$ref": "OrderreportsListTransactionsResponse"
19430	//   },
19431	//   "scopes": [
19432	//     "https://www.googleapis.com/auth/content"
19433	//   ]
19434	// }
19435
19436}
19437
19438// Pages invokes f for each page of results.
19439// A non-nil error returned from f will halt the iteration.
19440// The provided context supersedes any context provided to the Context method.
19441func (c *OrderreportsListtransactionsCall) Pages(ctx context.Context, f func(*OrderreportsListTransactionsResponse) error) error {
19442	c.ctx_ = ctx
19443	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
19444	for {
19445		x, err := c.Do()
19446		if err != nil {
19447			return err
19448		}
19449		if err := f(x); err != nil {
19450			return err
19451		}
19452		if x.NextPageToken == "" {
19453			return nil
19454		}
19455		c.PageToken(x.NextPageToken)
19456	}
19457}
19458
19459// method id "content.orderreturns.get":
19460
19461type OrderreturnsGetCall struct {
19462	s            *APIService
19463	merchantId   uint64
19464	returnId     string
19465	urlParams_   gensupport.URLParams
19466	ifNoneMatch_ string
19467	ctx_         context.Context
19468	header_      http.Header
19469}
19470
19471// Get: Retrieves an order return from your Merchant Center account.
19472func (r *OrderreturnsService) Get(merchantId uint64, returnId string) *OrderreturnsGetCall {
19473	c := &OrderreturnsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19474	c.merchantId = merchantId
19475	c.returnId = returnId
19476	return c
19477}
19478
19479// Fields allows partial responses to be retrieved. See
19480// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19481// for more information.
19482func (c *OrderreturnsGetCall) Fields(s ...googleapi.Field) *OrderreturnsGetCall {
19483	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19484	return c
19485}
19486
19487// IfNoneMatch sets the optional parameter which makes the operation
19488// fail if the object's ETag matches the given value. This is useful for
19489// getting updates only after the object has changed since the last
19490// request. Use googleapi.IsNotModified to check whether the response
19491// error from Do is the result of In-None-Match.
19492func (c *OrderreturnsGetCall) IfNoneMatch(entityTag string) *OrderreturnsGetCall {
19493	c.ifNoneMatch_ = entityTag
19494	return c
19495}
19496
19497// Context sets the context to be used in this call's Do method. Any
19498// pending HTTP request will be aborted if the provided context is
19499// canceled.
19500func (c *OrderreturnsGetCall) Context(ctx context.Context) *OrderreturnsGetCall {
19501	c.ctx_ = ctx
19502	return c
19503}
19504
19505// Header returns an http.Header that can be modified by the caller to
19506// add HTTP headers to the request.
19507func (c *OrderreturnsGetCall) Header() http.Header {
19508	if c.header_ == nil {
19509		c.header_ = make(http.Header)
19510	}
19511	return c.header_
19512}
19513
19514func (c *OrderreturnsGetCall) doRequest(alt string) (*http.Response, error) {
19515	reqHeaders := make(http.Header)
19516	for k, v := range c.header_ {
19517		reqHeaders[k] = v
19518	}
19519	reqHeaders.Set("User-Agent", c.s.userAgent())
19520	if c.ifNoneMatch_ != "" {
19521		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
19522	}
19523	var body io.Reader = nil
19524	c.urlParams_.Set("alt", alt)
19525	c.urlParams_.Set("prettyPrint", "false")
19526	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreturns/{returnId}")
19527	urls += "?" + c.urlParams_.Encode()
19528	req, err := http.NewRequest("GET", urls, body)
19529	if err != nil {
19530		return nil, err
19531	}
19532	req.Header = reqHeaders
19533	googleapi.Expand(req.URL, map[string]string{
19534		"merchantId": strconv.FormatUint(c.merchantId, 10),
19535		"returnId":   c.returnId,
19536	})
19537	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19538}
19539
19540// Do executes the "content.orderreturns.get" call.
19541// Exactly one of *MerchantOrderReturn or error will be non-nil. Any
19542// non-2xx status code is an error. Response headers are in either
19543// *MerchantOrderReturn.ServerResponse.Header or (if a response was
19544// returned at all) in error.(*googleapi.Error).Header. Use
19545// googleapi.IsNotModified to check whether the returned error was
19546// because http.StatusNotModified was returned.
19547func (c *OrderreturnsGetCall) Do(opts ...googleapi.CallOption) (*MerchantOrderReturn, error) {
19548	gensupport.SetOptions(c.urlParams_, opts...)
19549	res, err := c.doRequest("json")
19550	if res != nil && res.StatusCode == http.StatusNotModified {
19551		if res.Body != nil {
19552			res.Body.Close()
19553		}
19554		return nil, &googleapi.Error{
19555			Code:   res.StatusCode,
19556			Header: res.Header,
19557		}
19558	}
19559	if err != nil {
19560		return nil, err
19561	}
19562	defer googleapi.CloseBody(res)
19563	if err := googleapi.CheckResponse(res); err != nil {
19564		return nil, err
19565	}
19566	ret := &MerchantOrderReturn{
19567		ServerResponse: googleapi.ServerResponse{
19568			Header:         res.Header,
19569			HTTPStatusCode: res.StatusCode,
19570		},
19571	}
19572	target := &ret
19573	if err := gensupport.DecodeResponse(target, res); err != nil {
19574		return nil, err
19575	}
19576	return ret, nil
19577	// {
19578	//   "description": "Retrieves an order return from your Merchant Center account.",
19579	//   "httpMethod": "GET",
19580	//   "id": "content.orderreturns.get",
19581	//   "parameterOrder": [
19582	//     "merchantId",
19583	//     "returnId"
19584	//   ],
19585	//   "parameters": {
19586	//     "merchantId": {
19587	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
19588	//       "format": "uint64",
19589	//       "location": "path",
19590	//       "required": true,
19591	//       "type": "string"
19592	//     },
19593	//     "returnId": {
19594	//       "description": "Merchant order return ID generated by Google.",
19595	//       "location": "path",
19596	//       "required": true,
19597	//       "type": "string"
19598	//     }
19599	//   },
19600	//   "path": "{merchantId}/orderreturns/{returnId}",
19601	//   "response": {
19602	//     "$ref": "MerchantOrderReturn"
19603	//   },
19604	//   "scopes": [
19605	//     "https://www.googleapis.com/auth/content"
19606	//   ]
19607	// }
19608
19609}
19610
19611// method id "content.orderreturns.list":
19612
19613type OrderreturnsListCall struct {
19614	s            *APIService
19615	merchantId   uint64
19616	urlParams_   gensupport.URLParams
19617	ifNoneMatch_ string
19618	ctx_         context.Context
19619	header_      http.Header
19620}
19621
19622// List: Lists order returns in your Merchant Center account.
19623func (r *OrderreturnsService) List(merchantId uint64) *OrderreturnsListCall {
19624	c := &OrderreturnsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19625	c.merchantId = merchantId
19626	return c
19627}
19628
19629// CreatedEndDate sets the optional parameter "createdEndDate": Obtains
19630// order returns created before this date (inclusively), in ISO 8601
19631// format.
19632func (c *OrderreturnsListCall) CreatedEndDate(createdEndDate string) *OrderreturnsListCall {
19633	c.urlParams_.Set("createdEndDate", createdEndDate)
19634	return c
19635}
19636
19637// CreatedStartDate sets the optional parameter "createdStartDate":
19638// Obtains order returns created after this date (inclusively), in ISO
19639// 8601 format.
19640func (c *OrderreturnsListCall) CreatedStartDate(createdStartDate string) *OrderreturnsListCall {
19641	c.urlParams_.Set("createdStartDate", createdStartDate)
19642	return c
19643}
19644
19645// MaxResults sets the optional parameter "maxResults": The maximum
19646// number of order returns to return in the response, used for paging.
19647// The default value is 25 returns per page, and the maximum allowed
19648// value is 250 returns per page.
19649func (c *OrderreturnsListCall) MaxResults(maxResults int64) *OrderreturnsListCall {
19650	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
19651	return c
19652}
19653
19654// OrderBy sets the optional parameter "orderBy": Return the results in
19655// the specified order.
19656//
19657// Possible values:
19658//   "returnCreationTimeAsc"
19659//   "returnCreationTimeDesc"
19660func (c *OrderreturnsListCall) OrderBy(orderBy string) *OrderreturnsListCall {
19661	c.urlParams_.Set("orderBy", orderBy)
19662	return c
19663}
19664
19665// PageToken sets the optional parameter "pageToken": The token returned
19666// by the previous request.
19667func (c *OrderreturnsListCall) PageToken(pageToken string) *OrderreturnsListCall {
19668	c.urlParams_.Set("pageToken", pageToken)
19669	return c
19670}
19671
19672// Fields allows partial responses to be retrieved. See
19673// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19674// for more information.
19675func (c *OrderreturnsListCall) Fields(s ...googleapi.Field) *OrderreturnsListCall {
19676	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19677	return c
19678}
19679
19680// IfNoneMatch sets the optional parameter which makes the operation
19681// fail if the object's ETag matches the given value. This is useful for
19682// getting updates only after the object has changed since the last
19683// request. Use googleapi.IsNotModified to check whether the response
19684// error from Do is the result of In-None-Match.
19685func (c *OrderreturnsListCall) IfNoneMatch(entityTag string) *OrderreturnsListCall {
19686	c.ifNoneMatch_ = entityTag
19687	return c
19688}
19689
19690// Context sets the context to be used in this call's Do method. Any
19691// pending HTTP request will be aborted if the provided context is
19692// canceled.
19693func (c *OrderreturnsListCall) Context(ctx context.Context) *OrderreturnsListCall {
19694	c.ctx_ = ctx
19695	return c
19696}
19697
19698// Header returns an http.Header that can be modified by the caller to
19699// add HTTP headers to the request.
19700func (c *OrderreturnsListCall) Header() http.Header {
19701	if c.header_ == nil {
19702		c.header_ = make(http.Header)
19703	}
19704	return c.header_
19705}
19706
19707func (c *OrderreturnsListCall) doRequest(alt string) (*http.Response, error) {
19708	reqHeaders := make(http.Header)
19709	for k, v := range c.header_ {
19710		reqHeaders[k] = v
19711	}
19712	reqHeaders.Set("User-Agent", c.s.userAgent())
19713	if c.ifNoneMatch_ != "" {
19714		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
19715	}
19716	var body io.Reader = nil
19717	c.urlParams_.Set("alt", alt)
19718	c.urlParams_.Set("prettyPrint", "false")
19719	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreturns")
19720	urls += "?" + c.urlParams_.Encode()
19721	req, err := http.NewRequest("GET", urls, body)
19722	if err != nil {
19723		return nil, err
19724	}
19725	req.Header = reqHeaders
19726	googleapi.Expand(req.URL, map[string]string{
19727		"merchantId": strconv.FormatUint(c.merchantId, 10),
19728	})
19729	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19730}
19731
19732// Do executes the "content.orderreturns.list" call.
19733// Exactly one of *OrderreturnsListResponse or error will be non-nil.
19734// Any non-2xx status code is an error. Response headers are in either
19735// *OrderreturnsListResponse.ServerResponse.Header or (if a response was
19736// returned at all) in error.(*googleapi.Error).Header. Use
19737// googleapi.IsNotModified to check whether the returned error was
19738// because http.StatusNotModified was returned.
19739func (c *OrderreturnsListCall) Do(opts ...googleapi.CallOption) (*OrderreturnsListResponse, error) {
19740	gensupport.SetOptions(c.urlParams_, opts...)
19741	res, err := c.doRequest("json")
19742	if res != nil && res.StatusCode == http.StatusNotModified {
19743		if res.Body != nil {
19744			res.Body.Close()
19745		}
19746		return nil, &googleapi.Error{
19747			Code:   res.StatusCode,
19748			Header: res.Header,
19749		}
19750	}
19751	if err != nil {
19752		return nil, err
19753	}
19754	defer googleapi.CloseBody(res)
19755	if err := googleapi.CheckResponse(res); err != nil {
19756		return nil, err
19757	}
19758	ret := &OrderreturnsListResponse{
19759		ServerResponse: googleapi.ServerResponse{
19760			Header:         res.Header,
19761			HTTPStatusCode: res.StatusCode,
19762		},
19763	}
19764	target := &ret
19765	if err := gensupport.DecodeResponse(target, res); err != nil {
19766		return nil, err
19767	}
19768	return ret, nil
19769	// {
19770	//   "description": "Lists order returns in your Merchant Center account.",
19771	//   "httpMethod": "GET",
19772	//   "id": "content.orderreturns.list",
19773	//   "parameterOrder": [
19774	//     "merchantId"
19775	//   ],
19776	//   "parameters": {
19777	//     "createdEndDate": {
19778	//       "description": "Obtains order returns created before this date (inclusively), in ISO 8601 format.",
19779	//       "location": "query",
19780	//       "type": "string"
19781	//     },
19782	//     "createdStartDate": {
19783	//       "description": "Obtains order returns created after this date (inclusively), in ISO 8601 format.",
19784	//       "location": "query",
19785	//       "type": "string"
19786	//     },
19787	//     "maxResults": {
19788	//       "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.",
19789	//       "format": "uint32",
19790	//       "location": "query",
19791	//       "type": "integer"
19792	//     },
19793	//     "merchantId": {
19794	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
19795	//       "format": "uint64",
19796	//       "location": "path",
19797	//       "required": true,
19798	//       "type": "string"
19799	//     },
19800	//     "orderBy": {
19801	//       "description": "Return the results in the specified order.",
19802	//       "enum": [
19803	//         "returnCreationTimeAsc",
19804	//         "returnCreationTimeDesc"
19805	//       ],
19806	//       "enumDescriptions": [
19807	//         "",
19808	//         ""
19809	//       ],
19810	//       "location": "query",
19811	//       "type": "string"
19812	//     },
19813	//     "pageToken": {
19814	//       "description": "The token returned by the previous request.",
19815	//       "location": "query",
19816	//       "type": "string"
19817	//     }
19818	//   },
19819	//   "path": "{merchantId}/orderreturns",
19820	//   "response": {
19821	//     "$ref": "OrderreturnsListResponse"
19822	//   },
19823	//   "scopes": [
19824	//     "https://www.googleapis.com/auth/content"
19825	//   ]
19826	// }
19827
19828}
19829
19830// Pages invokes f for each page of results.
19831// A non-nil error returned from f will halt the iteration.
19832// The provided context supersedes any context provided to the Context method.
19833func (c *OrderreturnsListCall) Pages(ctx context.Context, f func(*OrderreturnsListResponse) error) error {
19834	c.ctx_ = ctx
19835	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
19836	for {
19837		x, err := c.Do()
19838		if err != nil {
19839			return err
19840		}
19841		if err := f(x); err != nil {
19842			return err
19843		}
19844		if x.NextPageToken == "" {
19845			return nil
19846		}
19847		c.PageToken(x.NextPageToken)
19848	}
19849}
19850
19851// method id "content.orders.acknowledge":
19852
19853type OrdersAcknowledgeCall struct {
19854	s                        *APIService
19855	merchantId               uint64
19856	orderId                  string
19857	ordersacknowledgerequest *OrdersAcknowledgeRequest
19858	urlParams_               gensupport.URLParams
19859	ctx_                     context.Context
19860	header_                  http.Header
19861}
19862
19863// Acknowledge: Marks an order as acknowledged.
19864func (r *OrdersService) Acknowledge(merchantId uint64, orderId string, ordersacknowledgerequest *OrdersAcknowledgeRequest) *OrdersAcknowledgeCall {
19865	c := &OrdersAcknowledgeCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19866	c.merchantId = merchantId
19867	c.orderId = orderId
19868	c.ordersacknowledgerequest = ordersacknowledgerequest
19869	return c
19870}
19871
19872// Fields allows partial responses to be retrieved. See
19873// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19874// for more information.
19875func (c *OrdersAcknowledgeCall) Fields(s ...googleapi.Field) *OrdersAcknowledgeCall {
19876	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19877	return c
19878}
19879
19880// Context sets the context to be used in this call's Do method. Any
19881// pending HTTP request will be aborted if the provided context is
19882// canceled.
19883func (c *OrdersAcknowledgeCall) Context(ctx context.Context) *OrdersAcknowledgeCall {
19884	c.ctx_ = ctx
19885	return c
19886}
19887
19888// Header returns an http.Header that can be modified by the caller to
19889// add HTTP headers to the request.
19890func (c *OrdersAcknowledgeCall) Header() http.Header {
19891	if c.header_ == nil {
19892		c.header_ = make(http.Header)
19893	}
19894	return c.header_
19895}
19896
19897func (c *OrdersAcknowledgeCall) doRequest(alt string) (*http.Response, error) {
19898	reqHeaders := make(http.Header)
19899	for k, v := range c.header_ {
19900		reqHeaders[k] = v
19901	}
19902	reqHeaders.Set("User-Agent", c.s.userAgent())
19903	var body io.Reader = nil
19904	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersacknowledgerequest)
19905	if err != nil {
19906		return nil, err
19907	}
19908	reqHeaders.Set("Content-Type", "application/json")
19909	c.urlParams_.Set("alt", alt)
19910	c.urlParams_.Set("prettyPrint", "false")
19911	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/acknowledge")
19912	urls += "?" + c.urlParams_.Encode()
19913	req, err := http.NewRequest("POST", urls, body)
19914	if err != nil {
19915		return nil, err
19916	}
19917	req.Header = reqHeaders
19918	googleapi.Expand(req.URL, map[string]string{
19919		"merchantId": strconv.FormatUint(c.merchantId, 10),
19920		"orderId":    c.orderId,
19921	})
19922	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19923}
19924
19925// Do executes the "content.orders.acknowledge" call.
19926// Exactly one of *OrdersAcknowledgeResponse or error will be non-nil.
19927// Any non-2xx status code is an error. Response headers are in either
19928// *OrdersAcknowledgeResponse.ServerResponse.Header or (if a response
19929// was returned at all) in error.(*googleapi.Error).Header. Use
19930// googleapi.IsNotModified to check whether the returned error was
19931// because http.StatusNotModified was returned.
19932func (c *OrdersAcknowledgeCall) Do(opts ...googleapi.CallOption) (*OrdersAcknowledgeResponse, error) {
19933	gensupport.SetOptions(c.urlParams_, opts...)
19934	res, err := c.doRequest("json")
19935	if res != nil && res.StatusCode == http.StatusNotModified {
19936		if res.Body != nil {
19937			res.Body.Close()
19938		}
19939		return nil, &googleapi.Error{
19940			Code:   res.StatusCode,
19941			Header: res.Header,
19942		}
19943	}
19944	if err != nil {
19945		return nil, err
19946	}
19947	defer googleapi.CloseBody(res)
19948	if err := googleapi.CheckResponse(res); err != nil {
19949		return nil, err
19950	}
19951	ret := &OrdersAcknowledgeResponse{
19952		ServerResponse: googleapi.ServerResponse{
19953			Header:         res.Header,
19954			HTTPStatusCode: res.StatusCode,
19955		},
19956	}
19957	target := &ret
19958	if err := gensupport.DecodeResponse(target, res); err != nil {
19959		return nil, err
19960	}
19961	return ret, nil
19962	// {
19963	//   "description": "Marks an order as acknowledged.",
19964	//   "httpMethod": "POST",
19965	//   "id": "content.orders.acknowledge",
19966	//   "parameterOrder": [
19967	//     "merchantId",
19968	//     "orderId"
19969	//   ],
19970	//   "parameters": {
19971	//     "merchantId": {
19972	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
19973	//       "format": "uint64",
19974	//       "location": "path",
19975	//       "required": true,
19976	//       "type": "string"
19977	//     },
19978	//     "orderId": {
19979	//       "description": "The ID of the order.",
19980	//       "location": "path",
19981	//       "required": true,
19982	//       "type": "string"
19983	//     }
19984	//   },
19985	//   "path": "{merchantId}/orders/{orderId}/acknowledge",
19986	//   "request": {
19987	//     "$ref": "OrdersAcknowledgeRequest"
19988	//   },
19989	//   "response": {
19990	//     "$ref": "OrdersAcknowledgeResponse"
19991	//   },
19992	//   "scopes": [
19993	//     "https://www.googleapis.com/auth/content"
19994	//   ]
19995	// }
19996
19997}
19998
19999// method id "content.orders.advancetestorder":
20000
20001type OrdersAdvancetestorderCall struct {
20002	s          *APIService
20003	merchantId uint64
20004	orderId    string
20005	urlParams_ gensupport.URLParams
20006	ctx_       context.Context
20007	header_    http.Header
20008}
20009
20010// Advancetestorder: Sandbox only. Moves a test order from state
20011// "inProgress" to state "pendingShipment".
20012func (r *OrdersService) Advancetestorder(merchantId uint64, orderId string) *OrdersAdvancetestorderCall {
20013	c := &OrdersAdvancetestorderCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20014	c.merchantId = merchantId
20015	c.orderId = orderId
20016	return c
20017}
20018
20019// Fields allows partial responses to be retrieved. See
20020// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20021// for more information.
20022func (c *OrdersAdvancetestorderCall) Fields(s ...googleapi.Field) *OrdersAdvancetestorderCall {
20023	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20024	return c
20025}
20026
20027// Context sets the context to be used in this call's Do method. Any
20028// pending HTTP request will be aborted if the provided context is
20029// canceled.
20030func (c *OrdersAdvancetestorderCall) Context(ctx context.Context) *OrdersAdvancetestorderCall {
20031	c.ctx_ = ctx
20032	return c
20033}
20034
20035// Header returns an http.Header that can be modified by the caller to
20036// add HTTP headers to the request.
20037func (c *OrdersAdvancetestorderCall) Header() http.Header {
20038	if c.header_ == nil {
20039		c.header_ = make(http.Header)
20040	}
20041	return c.header_
20042}
20043
20044func (c *OrdersAdvancetestorderCall) doRequest(alt string) (*http.Response, error) {
20045	reqHeaders := make(http.Header)
20046	for k, v := range c.header_ {
20047		reqHeaders[k] = v
20048	}
20049	reqHeaders.Set("User-Agent", c.s.userAgent())
20050	var body io.Reader = nil
20051	c.urlParams_.Set("alt", alt)
20052	c.urlParams_.Set("prettyPrint", "false")
20053	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/testorders/{orderId}/advance")
20054	urls += "?" + c.urlParams_.Encode()
20055	req, err := http.NewRequest("POST", urls, body)
20056	if err != nil {
20057		return nil, err
20058	}
20059	req.Header = reqHeaders
20060	googleapi.Expand(req.URL, map[string]string{
20061		"merchantId": strconv.FormatUint(c.merchantId, 10),
20062		"orderId":    c.orderId,
20063	})
20064	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20065}
20066
20067// Do executes the "content.orders.advancetestorder" call.
20068// Exactly one of *OrdersAdvanceTestOrderResponse or error will be
20069// non-nil. Any non-2xx status code is an error. Response headers are in
20070// either *OrdersAdvanceTestOrderResponse.ServerResponse.Header or (if a
20071// response was returned at all) in error.(*googleapi.Error).Header. Use
20072// googleapi.IsNotModified to check whether the returned error was
20073// because http.StatusNotModified was returned.
20074func (c *OrdersAdvancetestorderCall) Do(opts ...googleapi.CallOption) (*OrdersAdvanceTestOrderResponse, error) {
20075	gensupport.SetOptions(c.urlParams_, opts...)
20076	res, err := c.doRequest("json")
20077	if res != nil && res.StatusCode == http.StatusNotModified {
20078		if res.Body != nil {
20079			res.Body.Close()
20080		}
20081		return nil, &googleapi.Error{
20082			Code:   res.StatusCode,
20083			Header: res.Header,
20084		}
20085	}
20086	if err != nil {
20087		return nil, err
20088	}
20089	defer googleapi.CloseBody(res)
20090	if err := googleapi.CheckResponse(res); err != nil {
20091		return nil, err
20092	}
20093	ret := &OrdersAdvanceTestOrderResponse{
20094		ServerResponse: googleapi.ServerResponse{
20095			Header:         res.Header,
20096			HTTPStatusCode: res.StatusCode,
20097		},
20098	}
20099	target := &ret
20100	if err := gensupport.DecodeResponse(target, res); err != nil {
20101		return nil, err
20102	}
20103	return ret, nil
20104	// {
20105	//   "description": "Sandbox only. Moves a test order from state \"inProgress\" to state \"pendingShipment\".",
20106	//   "httpMethod": "POST",
20107	//   "id": "content.orders.advancetestorder",
20108	//   "parameterOrder": [
20109	//     "merchantId",
20110	//     "orderId"
20111	//   ],
20112	//   "parameters": {
20113	//     "merchantId": {
20114	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
20115	//       "format": "uint64",
20116	//       "location": "path",
20117	//       "required": true,
20118	//       "type": "string"
20119	//     },
20120	//     "orderId": {
20121	//       "description": "The ID of the test order to modify.",
20122	//       "location": "path",
20123	//       "required": true,
20124	//       "type": "string"
20125	//     }
20126	//   },
20127	//   "path": "{merchantId}/testorders/{orderId}/advance",
20128	//   "response": {
20129	//     "$ref": "OrdersAdvanceTestOrderResponse"
20130	//   },
20131	//   "scopes": [
20132	//     "https://www.googleapis.com/auth/content"
20133	//   ]
20134	// }
20135
20136}
20137
20138// method id "content.orders.cancel":
20139
20140type OrdersCancelCall struct {
20141	s                   *APIService
20142	merchantId          uint64
20143	orderId             string
20144	orderscancelrequest *OrdersCancelRequest
20145	urlParams_          gensupport.URLParams
20146	ctx_                context.Context
20147	header_             http.Header
20148}
20149
20150// Cancel: Cancels all line items in an order, making a full refund.
20151func (r *OrdersService) Cancel(merchantId uint64, orderId string, orderscancelrequest *OrdersCancelRequest) *OrdersCancelCall {
20152	c := &OrdersCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20153	c.merchantId = merchantId
20154	c.orderId = orderId
20155	c.orderscancelrequest = orderscancelrequest
20156	return c
20157}
20158
20159// Fields allows partial responses to be retrieved. See
20160// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20161// for more information.
20162func (c *OrdersCancelCall) Fields(s ...googleapi.Field) *OrdersCancelCall {
20163	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20164	return c
20165}
20166
20167// Context sets the context to be used in this call's Do method. Any
20168// pending HTTP request will be aborted if the provided context is
20169// canceled.
20170func (c *OrdersCancelCall) Context(ctx context.Context) *OrdersCancelCall {
20171	c.ctx_ = ctx
20172	return c
20173}
20174
20175// Header returns an http.Header that can be modified by the caller to
20176// add HTTP headers to the request.
20177func (c *OrdersCancelCall) Header() http.Header {
20178	if c.header_ == nil {
20179		c.header_ = make(http.Header)
20180	}
20181	return c.header_
20182}
20183
20184func (c *OrdersCancelCall) doRequest(alt string) (*http.Response, error) {
20185	reqHeaders := make(http.Header)
20186	for k, v := range c.header_ {
20187		reqHeaders[k] = v
20188	}
20189	reqHeaders.Set("User-Agent", c.s.userAgent())
20190	var body io.Reader = nil
20191	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscancelrequest)
20192	if err != nil {
20193		return nil, err
20194	}
20195	reqHeaders.Set("Content-Type", "application/json")
20196	c.urlParams_.Set("alt", alt)
20197	c.urlParams_.Set("prettyPrint", "false")
20198	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/cancel")
20199	urls += "?" + c.urlParams_.Encode()
20200	req, err := http.NewRequest("POST", urls, body)
20201	if err != nil {
20202		return nil, err
20203	}
20204	req.Header = reqHeaders
20205	googleapi.Expand(req.URL, map[string]string{
20206		"merchantId": strconv.FormatUint(c.merchantId, 10),
20207		"orderId":    c.orderId,
20208	})
20209	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20210}
20211
20212// Do executes the "content.orders.cancel" call.
20213// Exactly one of *OrdersCancelResponse or error will be non-nil. Any
20214// non-2xx status code is an error. Response headers are in either
20215// *OrdersCancelResponse.ServerResponse.Header or (if a response was
20216// returned at all) in error.(*googleapi.Error).Header. Use
20217// googleapi.IsNotModified to check whether the returned error was
20218// because http.StatusNotModified was returned.
20219func (c *OrdersCancelCall) Do(opts ...googleapi.CallOption) (*OrdersCancelResponse, error) {
20220	gensupport.SetOptions(c.urlParams_, opts...)
20221	res, err := c.doRequest("json")
20222	if res != nil && res.StatusCode == http.StatusNotModified {
20223		if res.Body != nil {
20224			res.Body.Close()
20225		}
20226		return nil, &googleapi.Error{
20227			Code:   res.StatusCode,
20228			Header: res.Header,
20229		}
20230	}
20231	if err != nil {
20232		return nil, err
20233	}
20234	defer googleapi.CloseBody(res)
20235	if err := googleapi.CheckResponse(res); err != nil {
20236		return nil, err
20237	}
20238	ret := &OrdersCancelResponse{
20239		ServerResponse: googleapi.ServerResponse{
20240			Header:         res.Header,
20241			HTTPStatusCode: res.StatusCode,
20242		},
20243	}
20244	target := &ret
20245	if err := gensupport.DecodeResponse(target, res); err != nil {
20246		return nil, err
20247	}
20248	return ret, nil
20249	// {
20250	//   "description": "Cancels all line items in an order, making a full refund.",
20251	//   "httpMethod": "POST",
20252	//   "id": "content.orders.cancel",
20253	//   "parameterOrder": [
20254	//     "merchantId",
20255	//     "orderId"
20256	//   ],
20257	//   "parameters": {
20258	//     "merchantId": {
20259	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
20260	//       "format": "uint64",
20261	//       "location": "path",
20262	//       "required": true,
20263	//       "type": "string"
20264	//     },
20265	//     "orderId": {
20266	//       "description": "The ID of the order to cancel.",
20267	//       "location": "path",
20268	//       "required": true,
20269	//       "type": "string"
20270	//     }
20271	//   },
20272	//   "path": "{merchantId}/orders/{orderId}/cancel",
20273	//   "request": {
20274	//     "$ref": "OrdersCancelRequest"
20275	//   },
20276	//   "response": {
20277	//     "$ref": "OrdersCancelResponse"
20278	//   },
20279	//   "scopes": [
20280	//     "https://www.googleapis.com/auth/content"
20281	//   ]
20282	// }
20283
20284}
20285
20286// method id "content.orders.cancellineitem":
20287
20288type OrdersCancellineitemCall struct {
20289	s                           *APIService
20290	merchantId                  uint64
20291	orderId                     string
20292	orderscancellineitemrequest *OrdersCancelLineItemRequest
20293	urlParams_                  gensupport.URLParams
20294	ctx_                        context.Context
20295	header_                     http.Header
20296}
20297
20298// Cancellineitem: Cancels a line item, making a full refund.
20299func (r *OrdersService) Cancellineitem(merchantId uint64, orderId string, orderscancellineitemrequest *OrdersCancelLineItemRequest) *OrdersCancellineitemCall {
20300	c := &OrdersCancellineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20301	c.merchantId = merchantId
20302	c.orderId = orderId
20303	c.orderscancellineitemrequest = orderscancellineitemrequest
20304	return c
20305}
20306
20307// Fields allows partial responses to be retrieved. See
20308// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20309// for more information.
20310func (c *OrdersCancellineitemCall) Fields(s ...googleapi.Field) *OrdersCancellineitemCall {
20311	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20312	return c
20313}
20314
20315// Context sets the context to be used in this call's Do method. Any
20316// pending HTTP request will be aborted if the provided context is
20317// canceled.
20318func (c *OrdersCancellineitemCall) Context(ctx context.Context) *OrdersCancellineitemCall {
20319	c.ctx_ = ctx
20320	return c
20321}
20322
20323// Header returns an http.Header that can be modified by the caller to
20324// add HTTP headers to the request.
20325func (c *OrdersCancellineitemCall) Header() http.Header {
20326	if c.header_ == nil {
20327		c.header_ = make(http.Header)
20328	}
20329	return c.header_
20330}
20331
20332func (c *OrdersCancellineitemCall) doRequest(alt string) (*http.Response, error) {
20333	reqHeaders := make(http.Header)
20334	for k, v := range c.header_ {
20335		reqHeaders[k] = v
20336	}
20337	reqHeaders.Set("User-Agent", c.s.userAgent())
20338	var body io.Reader = nil
20339	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscancellineitemrequest)
20340	if err != nil {
20341		return nil, err
20342	}
20343	reqHeaders.Set("Content-Type", "application/json")
20344	c.urlParams_.Set("alt", alt)
20345	c.urlParams_.Set("prettyPrint", "false")
20346	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/cancelLineItem")
20347	urls += "?" + c.urlParams_.Encode()
20348	req, err := http.NewRequest("POST", urls, body)
20349	if err != nil {
20350		return nil, err
20351	}
20352	req.Header = reqHeaders
20353	googleapi.Expand(req.URL, map[string]string{
20354		"merchantId": strconv.FormatUint(c.merchantId, 10),
20355		"orderId":    c.orderId,
20356	})
20357	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20358}
20359
20360// Do executes the "content.orders.cancellineitem" call.
20361// Exactly one of *OrdersCancelLineItemResponse or error will be
20362// non-nil. Any non-2xx status code is an error. Response headers are in
20363// either *OrdersCancelLineItemResponse.ServerResponse.Header or (if a
20364// response was returned at all) in error.(*googleapi.Error).Header. Use
20365// googleapi.IsNotModified to check whether the returned error was
20366// because http.StatusNotModified was returned.
20367func (c *OrdersCancellineitemCall) Do(opts ...googleapi.CallOption) (*OrdersCancelLineItemResponse, error) {
20368	gensupport.SetOptions(c.urlParams_, opts...)
20369	res, err := c.doRequest("json")
20370	if res != nil && res.StatusCode == http.StatusNotModified {
20371		if res.Body != nil {
20372			res.Body.Close()
20373		}
20374		return nil, &googleapi.Error{
20375			Code:   res.StatusCode,
20376			Header: res.Header,
20377		}
20378	}
20379	if err != nil {
20380		return nil, err
20381	}
20382	defer googleapi.CloseBody(res)
20383	if err := googleapi.CheckResponse(res); err != nil {
20384		return nil, err
20385	}
20386	ret := &OrdersCancelLineItemResponse{
20387		ServerResponse: googleapi.ServerResponse{
20388			Header:         res.Header,
20389			HTTPStatusCode: res.StatusCode,
20390		},
20391	}
20392	target := &ret
20393	if err := gensupport.DecodeResponse(target, res); err != nil {
20394		return nil, err
20395	}
20396	return ret, nil
20397	// {
20398	//   "description": "Cancels a line item, making a full refund.",
20399	//   "httpMethod": "POST",
20400	//   "id": "content.orders.cancellineitem",
20401	//   "parameterOrder": [
20402	//     "merchantId",
20403	//     "orderId"
20404	//   ],
20405	//   "parameters": {
20406	//     "merchantId": {
20407	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
20408	//       "format": "uint64",
20409	//       "location": "path",
20410	//       "required": true,
20411	//       "type": "string"
20412	//     },
20413	//     "orderId": {
20414	//       "description": "The ID of the order.",
20415	//       "location": "path",
20416	//       "required": true,
20417	//       "type": "string"
20418	//     }
20419	//   },
20420	//   "path": "{merchantId}/orders/{orderId}/cancelLineItem",
20421	//   "request": {
20422	//     "$ref": "OrdersCancelLineItemRequest"
20423	//   },
20424	//   "response": {
20425	//     "$ref": "OrdersCancelLineItemResponse"
20426	//   },
20427	//   "scopes": [
20428	//     "https://www.googleapis.com/auth/content"
20429	//   ]
20430	// }
20431
20432}
20433
20434// method id "content.orders.canceltestorderbycustomer":
20435
20436type OrdersCanceltestorderbycustomerCall struct {
20437	s                                      *APIService
20438	merchantId                             uint64
20439	orderId                                string
20440	orderscanceltestorderbycustomerrequest *OrdersCancelTestOrderByCustomerRequest
20441	urlParams_                             gensupport.URLParams
20442	ctx_                                   context.Context
20443	header_                                http.Header
20444}
20445
20446// Canceltestorderbycustomer: Sandbox only. Cancels a test order for
20447// customer-initiated cancellation.
20448func (r *OrdersService) Canceltestorderbycustomer(merchantId uint64, orderId string, orderscanceltestorderbycustomerrequest *OrdersCancelTestOrderByCustomerRequest) *OrdersCanceltestorderbycustomerCall {
20449	c := &OrdersCanceltestorderbycustomerCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20450	c.merchantId = merchantId
20451	c.orderId = orderId
20452	c.orderscanceltestorderbycustomerrequest = orderscanceltestorderbycustomerrequest
20453	return c
20454}
20455
20456// Fields allows partial responses to be retrieved. See
20457// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20458// for more information.
20459func (c *OrdersCanceltestorderbycustomerCall) Fields(s ...googleapi.Field) *OrdersCanceltestorderbycustomerCall {
20460	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20461	return c
20462}
20463
20464// Context sets the context to be used in this call's Do method. Any
20465// pending HTTP request will be aborted if the provided context is
20466// canceled.
20467func (c *OrdersCanceltestorderbycustomerCall) Context(ctx context.Context) *OrdersCanceltestorderbycustomerCall {
20468	c.ctx_ = ctx
20469	return c
20470}
20471
20472// Header returns an http.Header that can be modified by the caller to
20473// add HTTP headers to the request.
20474func (c *OrdersCanceltestorderbycustomerCall) Header() http.Header {
20475	if c.header_ == nil {
20476		c.header_ = make(http.Header)
20477	}
20478	return c.header_
20479}
20480
20481func (c *OrdersCanceltestorderbycustomerCall) doRequest(alt string) (*http.Response, error) {
20482	reqHeaders := make(http.Header)
20483	for k, v := range c.header_ {
20484		reqHeaders[k] = v
20485	}
20486	reqHeaders.Set("User-Agent", c.s.userAgent())
20487	var body io.Reader = nil
20488	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscanceltestorderbycustomerrequest)
20489	if err != nil {
20490		return nil, err
20491	}
20492	reqHeaders.Set("Content-Type", "application/json")
20493	c.urlParams_.Set("alt", alt)
20494	c.urlParams_.Set("prettyPrint", "false")
20495	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/testorders/{orderId}/cancelByCustomer")
20496	urls += "?" + c.urlParams_.Encode()
20497	req, err := http.NewRequest("POST", urls, body)
20498	if err != nil {
20499		return nil, err
20500	}
20501	req.Header = reqHeaders
20502	googleapi.Expand(req.URL, map[string]string{
20503		"merchantId": strconv.FormatUint(c.merchantId, 10),
20504		"orderId":    c.orderId,
20505	})
20506	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20507}
20508
20509// Do executes the "content.orders.canceltestorderbycustomer" call.
20510// Exactly one of *OrdersCancelTestOrderByCustomerResponse or error will
20511// be non-nil. Any non-2xx status code is an error. Response headers are
20512// in either
20513// *OrdersCancelTestOrderByCustomerResponse.ServerResponse.Header or (if
20514// a response was returned at all) in error.(*googleapi.Error).Header.
20515// Use googleapi.IsNotModified to check whether the returned error was
20516// because http.StatusNotModified was returned.
20517func (c *OrdersCanceltestorderbycustomerCall) Do(opts ...googleapi.CallOption) (*OrdersCancelTestOrderByCustomerResponse, error) {
20518	gensupport.SetOptions(c.urlParams_, opts...)
20519	res, err := c.doRequest("json")
20520	if res != nil && res.StatusCode == http.StatusNotModified {
20521		if res.Body != nil {
20522			res.Body.Close()
20523		}
20524		return nil, &googleapi.Error{
20525			Code:   res.StatusCode,
20526			Header: res.Header,
20527		}
20528	}
20529	if err != nil {
20530		return nil, err
20531	}
20532	defer googleapi.CloseBody(res)
20533	if err := googleapi.CheckResponse(res); err != nil {
20534		return nil, err
20535	}
20536	ret := &OrdersCancelTestOrderByCustomerResponse{
20537		ServerResponse: googleapi.ServerResponse{
20538			Header:         res.Header,
20539			HTTPStatusCode: res.StatusCode,
20540		},
20541	}
20542	target := &ret
20543	if err := gensupport.DecodeResponse(target, res); err != nil {
20544		return nil, err
20545	}
20546	return ret, nil
20547	// {
20548	//   "description": "Sandbox only. Cancels a test order for customer-initiated cancellation.",
20549	//   "httpMethod": "POST",
20550	//   "id": "content.orders.canceltestorderbycustomer",
20551	//   "parameterOrder": [
20552	//     "merchantId",
20553	//     "orderId"
20554	//   ],
20555	//   "parameters": {
20556	//     "merchantId": {
20557	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
20558	//       "format": "uint64",
20559	//       "location": "path",
20560	//       "required": true,
20561	//       "type": "string"
20562	//     },
20563	//     "orderId": {
20564	//       "description": "The ID of the test order to cancel.",
20565	//       "location": "path",
20566	//       "required": true,
20567	//       "type": "string"
20568	//     }
20569	//   },
20570	//   "path": "{merchantId}/testorders/{orderId}/cancelByCustomer",
20571	//   "request": {
20572	//     "$ref": "OrdersCancelTestOrderByCustomerRequest"
20573	//   },
20574	//   "response": {
20575	//     "$ref": "OrdersCancelTestOrderByCustomerResponse"
20576	//   },
20577	//   "scopes": [
20578	//     "https://www.googleapis.com/auth/content"
20579	//   ]
20580	// }
20581
20582}
20583
20584// method id "content.orders.createtestorder":
20585
20586type OrdersCreatetestorderCall struct {
20587	s                            *APIService
20588	merchantId                   uint64
20589	orderscreatetestorderrequest *OrdersCreateTestOrderRequest
20590	urlParams_                   gensupport.URLParams
20591	ctx_                         context.Context
20592	header_                      http.Header
20593}
20594
20595// Createtestorder: Sandbox only. Creates a test order.
20596func (r *OrdersService) Createtestorder(merchantId uint64, orderscreatetestorderrequest *OrdersCreateTestOrderRequest) *OrdersCreatetestorderCall {
20597	c := &OrdersCreatetestorderCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20598	c.merchantId = merchantId
20599	c.orderscreatetestorderrequest = orderscreatetestorderrequest
20600	return c
20601}
20602
20603// Fields allows partial responses to be retrieved. See
20604// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20605// for more information.
20606func (c *OrdersCreatetestorderCall) Fields(s ...googleapi.Field) *OrdersCreatetestorderCall {
20607	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20608	return c
20609}
20610
20611// Context sets the context to be used in this call's Do method. Any
20612// pending HTTP request will be aborted if the provided context is
20613// canceled.
20614func (c *OrdersCreatetestorderCall) Context(ctx context.Context) *OrdersCreatetestorderCall {
20615	c.ctx_ = ctx
20616	return c
20617}
20618
20619// Header returns an http.Header that can be modified by the caller to
20620// add HTTP headers to the request.
20621func (c *OrdersCreatetestorderCall) Header() http.Header {
20622	if c.header_ == nil {
20623		c.header_ = make(http.Header)
20624	}
20625	return c.header_
20626}
20627
20628func (c *OrdersCreatetestorderCall) doRequest(alt string) (*http.Response, error) {
20629	reqHeaders := make(http.Header)
20630	for k, v := range c.header_ {
20631		reqHeaders[k] = v
20632	}
20633	reqHeaders.Set("User-Agent", c.s.userAgent())
20634	var body io.Reader = nil
20635	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscreatetestorderrequest)
20636	if err != nil {
20637		return nil, err
20638	}
20639	reqHeaders.Set("Content-Type", "application/json")
20640	c.urlParams_.Set("alt", alt)
20641	c.urlParams_.Set("prettyPrint", "false")
20642	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/testorders")
20643	urls += "?" + c.urlParams_.Encode()
20644	req, err := http.NewRequest("POST", urls, body)
20645	if err != nil {
20646		return nil, err
20647	}
20648	req.Header = reqHeaders
20649	googleapi.Expand(req.URL, map[string]string{
20650		"merchantId": strconv.FormatUint(c.merchantId, 10),
20651	})
20652	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20653}
20654
20655// Do executes the "content.orders.createtestorder" call.
20656// Exactly one of *OrdersCreateTestOrderResponse or error will be
20657// non-nil. Any non-2xx status code is an error. Response headers are in
20658// either *OrdersCreateTestOrderResponse.ServerResponse.Header or (if a
20659// response was returned at all) in error.(*googleapi.Error).Header. Use
20660// googleapi.IsNotModified to check whether the returned error was
20661// because http.StatusNotModified was returned.
20662func (c *OrdersCreatetestorderCall) Do(opts ...googleapi.CallOption) (*OrdersCreateTestOrderResponse, error) {
20663	gensupport.SetOptions(c.urlParams_, opts...)
20664	res, err := c.doRequest("json")
20665	if res != nil && res.StatusCode == http.StatusNotModified {
20666		if res.Body != nil {
20667			res.Body.Close()
20668		}
20669		return nil, &googleapi.Error{
20670			Code:   res.StatusCode,
20671			Header: res.Header,
20672		}
20673	}
20674	if err != nil {
20675		return nil, err
20676	}
20677	defer googleapi.CloseBody(res)
20678	if err := googleapi.CheckResponse(res); err != nil {
20679		return nil, err
20680	}
20681	ret := &OrdersCreateTestOrderResponse{
20682		ServerResponse: googleapi.ServerResponse{
20683			Header:         res.Header,
20684			HTTPStatusCode: res.StatusCode,
20685		},
20686	}
20687	target := &ret
20688	if err := gensupport.DecodeResponse(target, res); err != nil {
20689		return nil, err
20690	}
20691	return ret, nil
20692	// {
20693	//   "description": "Sandbox only. Creates a test order.",
20694	//   "httpMethod": "POST",
20695	//   "id": "content.orders.createtestorder",
20696	//   "parameterOrder": [
20697	//     "merchantId"
20698	//   ],
20699	//   "parameters": {
20700	//     "merchantId": {
20701	//       "description": "The ID of the account that should manage the order. This cannot be a multi-client account.",
20702	//       "format": "uint64",
20703	//       "location": "path",
20704	//       "required": true,
20705	//       "type": "string"
20706	//     }
20707	//   },
20708	//   "path": "{merchantId}/testorders",
20709	//   "request": {
20710	//     "$ref": "OrdersCreateTestOrderRequest"
20711	//   },
20712	//   "response": {
20713	//     "$ref": "OrdersCreateTestOrderResponse"
20714	//   },
20715	//   "scopes": [
20716	//     "https://www.googleapis.com/auth/content"
20717	//   ]
20718	// }
20719
20720}
20721
20722// method id "content.orders.createtestreturn":
20723
20724type OrdersCreatetestreturnCall struct {
20725	s                             *APIService
20726	merchantId                    uint64
20727	orderId                       string
20728	orderscreatetestreturnrequest *OrdersCreateTestReturnRequest
20729	urlParams_                    gensupport.URLParams
20730	ctx_                          context.Context
20731	header_                       http.Header
20732}
20733
20734// Createtestreturn: Sandbox only. Creates a test return.
20735func (r *OrdersService) Createtestreturn(merchantId uint64, orderId string, orderscreatetestreturnrequest *OrdersCreateTestReturnRequest) *OrdersCreatetestreturnCall {
20736	c := &OrdersCreatetestreturnCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20737	c.merchantId = merchantId
20738	c.orderId = orderId
20739	c.orderscreatetestreturnrequest = orderscreatetestreturnrequest
20740	return c
20741}
20742
20743// Fields allows partial responses to be retrieved. See
20744// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20745// for more information.
20746func (c *OrdersCreatetestreturnCall) Fields(s ...googleapi.Field) *OrdersCreatetestreturnCall {
20747	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20748	return c
20749}
20750
20751// Context sets the context to be used in this call's Do method. Any
20752// pending HTTP request will be aborted if the provided context is
20753// canceled.
20754func (c *OrdersCreatetestreturnCall) Context(ctx context.Context) *OrdersCreatetestreturnCall {
20755	c.ctx_ = ctx
20756	return c
20757}
20758
20759// Header returns an http.Header that can be modified by the caller to
20760// add HTTP headers to the request.
20761func (c *OrdersCreatetestreturnCall) Header() http.Header {
20762	if c.header_ == nil {
20763		c.header_ = make(http.Header)
20764	}
20765	return c.header_
20766}
20767
20768func (c *OrdersCreatetestreturnCall) doRequest(alt string) (*http.Response, error) {
20769	reqHeaders := make(http.Header)
20770	for k, v := range c.header_ {
20771		reqHeaders[k] = v
20772	}
20773	reqHeaders.Set("User-Agent", c.s.userAgent())
20774	var body io.Reader = nil
20775	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscreatetestreturnrequest)
20776	if err != nil {
20777		return nil, err
20778	}
20779	reqHeaders.Set("Content-Type", "application/json")
20780	c.urlParams_.Set("alt", alt)
20781	c.urlParams_.Set("prettyPrint", "false")
20782	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/testreturn")
20783	urls += "?" + c.urlParams_.Encode()
20784	req, err := http.NewRequest("POST", urls, body)
20785	if err != nil {
20786		return nil, err
20787	}
20788	req.Header = reqHeaders
20789	googleapi.Expand(req.URL, map[string]string{
20790		"merchantId": strconv.FormatUint(c.merchantId, 10),
20791		"orderId":    c.orderId,
20792	})
20793	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20794}
20795
20796// Do executes the "content.orders.createtestreturn" call.
20797// Exactly one of *OrdersCreateTestReturnResponse or error will be
20798// non-nil. Any non-2xx status code is an error. Response headers are in
20799// either *OrdersCreateTestReturnResponse.ServerResponse.Header or (if a
20800// response was returned at all) in error.(*googleapi.Error).Header. Use
20801// googleapi.IsNotModified to check whether the returned error was
20802// because http.StatusNotModified was returned.
20803func (c *OrdersCreatetestreturnCall) Do(opts ...googleapi.CallOption) (*OrdersCreateTestReturnResponse, error) {
20804	gensupport.SetOptions(c.urlParams_, opts...)
20805	res, err := c.doRequest("json")
20806	if res != nil && res.StatusCode == http.StatusNotModified {
20807		if res.Body != nil {
20808			res.Body.Close()
20809		}
20810		return nil, &googleapi.Error{
20811			Code:   res.StatusCode,
20812			Header: res.Header,
20813		}
20814	}
20815	if err != nil {
20816		return nil, err
20817	}
20818	defer googleapi.CloseBody(res)
20819	if err := googleapi.CheckResponse(res); err != nil {
20820		return nil, err
20821	}
20822	ret := &OrdersCreateTestReturnResponse{
20823		ServerResponse: googleapi.ServerResponse{
20824			Header:         res.Header,
20825			HTTPStatusCode: res.StatusCode,
20826		},
20827	}
20828	target := &ret
20829	if err := gensupport.DecodeResponse(target, res); err != nil {
20830		return nil, err
20831	}
20832	return ret, nil
20833	// {
20834	//   "description": "Sandbox only. Creates a test return.",
20835	//   "httpMethod": "POST",
20836	//   "id": "content.orders.createtestreturn",
20837	//   "parameterOrder": [
20838	//     "merchantId",
20839	//     "orderId"
20840	//   ],
20841	//   "parameters": {
20842	//     "merchantId": {
20843	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
20844	//       "format": "uint64",
20845	//       "location": "path",
20846	//       "required": true,
20847	//       "type": "string"
20848	//     },
20849	//     "orderId": {
20850	//       "description": "The ID of the order.",
20851	//       "location": "path",
20852	//       "required": true,
20853	//       "type": "string"
20854	//     }
20855	//   },
20856	//   "path": "{merchantId}/orders/{orderId}/testreturn",
20857	//   "request": {
20858	//     "$ref": "OrdersCreateTestReturnRequest"
20859	//   },
20860	//   "response": {
20861	//     "$ref": "OrdersCreateTestReturnResponse"
20862	//   },
20863	//   "scopes": [
20864	//     "https://www.googleapis.com/auth/content"
20865	//   ]
20866	// }
20867
20868}
20869
20870// method id "content.orders.custombatch":
20871
20872type OrdersCustombatchCall struct {
20873	s                        *APIService
20874	orderscustombatchrequest *OrdersCustomBatchRequest
20875	urlParams_               gensupport.URLParams
20876	ctx_                     context.Context
20877	header_                  http.Header
20878}
20879
20880// Custombatch: Retrieves or modifies multiple orders in a single
20881// request.
20882func (r *OrdersService) Custombatch(orderscustombatchrequest *OrdersCustomBatchRequest) *OrdersCustombatchCall {
20883	c := &OrdersCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20884	c.orderscustombatchrequest = orderscustombatchrequest
20885	return c
20886}
20887
20888// Fields allows partial responses to be retrieved. See
20889// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20890// for more information.
20891func (c *OrdersCustombatchCall) Fields(s ...googleapi.Field) *OrdersCustombatchCall {
20892	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20893	return c
20894}
20895
20896// Context sets the context to be used in this call's Do method. Any
20897// pending HTTP request will be aborted if the provided context is
20898// canceled.
20899func (c *OrdersCustombatchCall) Context(ctx context.Context) *OrdersCustombatchCall {
20900	c.ctx_ = ctx
20901	return c
20902}
20903
20904// Header returns an http.Header that can be modified by the caller to
20905// add HTTP headers to the request.
20906func (c *OrdersCustombatchCall) Header() http.Header {
20907	if c.header_ == nil {
20908		c.header_ = make(http.Header)
20909	}
20910	return c.header_
20911}
20912
20913func (c *OrdersCustombatchCall) doRequest(alt string) (*http.Response, error) {
20914	reqHeaders := make(http.Header)
20915	for k, v := range c.header_ {
20916		reqHeaders[k] = v
20917	}
20918	reqHeaders.Set("User-Agent", c.s.userAgent())
20919	var body io.Reader = nil
20920	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscustombatchrequest)
20921	if err != nil {
20922		return nil, err
20923	}
20924	reqHeaders.Set("Content-Type", "application/json")
20925	c.urlParams_.Set("alt", alt)
20926	c.urlParams_.Set("prettyPrint", "false")
20927	urls := googleapi.ResolveRelative(c.s.BasePath, "orders/batch")
20928	urls += "?" + c.urlParams_.Encode()
20929	req, err := http.NewRequest("POST", urls, body)
20930	if err != nil {
20931		return nil, err
20932	}
20933	req.Header = reqHeaders
20934	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20935}
20936
20937// Do executes the "content.orders.custombatch" call.
20938// Exactly one of *OrdersCustomBatchResponse or error will be non-nil.
20939// Any non-2xx status code is an error. Response headers are in either
20940// *OrdersCustomBatchResponse.ServerResponse.Header or (if a response
20941// was returned at all) in error.(*googleapi.Error).Header. Use
20942// googleapi.IsNotModified to check whether the returned error was
20943// because http.StatusNotModified was returned.
20944func (c *OrdersCustombatchCall) Do(opts ...googleapi.CallOption) (*OrdersCustomBatchResponse, error) {
20945	gensupport.SetOptions(c.urlParams_, opts...)
20946	res, err := c.doRequest("json")
20947	if res != nil && res.StatusCode == http.StatusNotModified {
20948		if res.Body != nil {
20949			res.Body.Close()
20950		}
20951		return nil, &googleapi.Error{
20952			Code:   res.StatusCode,
20953			Header: res.Header,
20954		}
20955	}
20956	if err != nil {
20957		return nil, err
20958	}
20959	defer googleapi.CloseBody(res)
20960	if err := googleapi.CheckResponse(res); err != nil {
20961		return nil, err
20962	}
20963	ret := &OrdersCustomBatchResponse{
20964		ServerResponse: googleapi.ServerResponse{
20965			Header:         res.Header,
20966			HTTPStatusCode: res.StatusCode,
20967		},
20968	}
20969	target := &ret
20970	if err := gensupport.DecodeResponse(target, res); err != nil {
20971		return nil, err
20972	}
20973	return ret, nil
20974	// {
20975	//   "description": "Retrieves or modifies multiple orders in a single request.",
20976	//   "httpMethod": "POST",
20977	//   "id": "content.orders.custombatch",
20978	//   "path": "orders/batch",
20979	//   "request": {
20980	//     "$ref": "OrdersCustomBatchRequest"
20981	//   },
20982	//   "response": {
20983	//     "$ref": "OrdersCustomBatchResponse"
20984	//   },
20985	//   "scopes": [
20986	//     "https://www.googleapis.com/auth/content"
20987	//   ]
20988	// }
20989
20990}
20991
20992// method id "content.orders.get":
20993
20994type OrdersGetCall struct {
20995	s            *APIService
20996	merchantId   uint64
20997	orderId      string
20998	urlParams_   gensupport.URLParams
20999	ifNoneMatch_ string
21000	ctx_         context.Context
21001	header_      http.Header
21002}
21003
21004// Get: Retrieves an order from your Merchant Center account.
21005func (r *OrdersService) Get(merchantId uint64, orderId string) *OrdersGetCall {
21006	c := &OrdersGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21007	c.merchantId = merchantId
21008	c.orderId = orderId
21009	return c
21010}
21011
21012// Fields allows partial responses to be retrieved. See
21013// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21014// for more information.
21015func (c *OrdersGetCall) Fields(s ...googleapi.Field) *OrdersGetCall {
21016	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21017	return c
21018}
21019
21020// IfNoneMatch sets the optional parameter which makes the operation
21021// fail if the object's ETag matches the given value. This is useful for
21022// getting updates only after the object has changed since the last
21023// request. Use googleapi.IsNotModified to check whether the response
21024// error from Do is the result of In-None-Match.
21025func (c *OrdersGetCall) IfNoneMatch(entityTag string) *OrdersGetCall {
21026	c.ifNoneMatch_ = entityTag
21027	return c
21028}
21029
21030// Context sets the context to be used in this call's Do method. Any
21031// pending HTTP request will be aborted if the provided context is
21032// canceled.
21033func (c *OrdersGetCall) Context(ctx context.Context) *OrdersGetCall {
21034	c.ctx_ = ctx
21035	return c
21036}
21037
21038// Header returns an http.Header that can be modified by the caller to
21039// add HTTP headers to the request.
21040func (c *OrdersGetCall) Header() http.Header {
21041	if c.header_ == nil {
21042		c.header_ = make(http.Header)
21043	}
21044	return c.header_
21045}
21046
21047func (c *OrdersGetCall) doRequest(alt string) (*http.Response, error) {
21048	reqHeaders := make(http.Header)
21049	for k, v := range c.header_ {
21050		reqHeaders[k] = v
21051	}
21052	reqHeaders.Set("User-Agent", c.s.userAgent())
21053	if c.ifNoneMatch_ != "" {
21054		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
21055	}
21056	var body io.Reader = nil
21057	c.urlParams_.Set("alt", alt)
21058	c.urlParams_.Set("prettyPrint", "false")
21059	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}")
21060	urls += "?" + c.urlParams_.Encode()
21061	req, err := http.NewRequest("GET", urls, body)
21062	if err != nil {
21063		return nil, err
21064	}
21065	req.Header = reqHeaders
21066	googleapi.Expand(req.URL, map[string]string{
21067		"merchantId": strconv.FormatUint(c.merchantId, 10),
21068		"orderId":    c.orderId,
21069	})
21070	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21071}
21072
21073// Do executes the "content.orders.get" call.
21074// Exactly one of *Order or error will be non-nil. Any non-2xx status
21075// code is an error. Response headers are in either
21076// *Order.ServerResponse.Header or (if a response was returned at all)
21077// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
21078// check whether the returned error was because http.StatusNotModified
21079// was returned.
21080func (c *OrdersGetCall) Do(opts ...googleapi.CallOption) (*Order, error) {
21081	gensupport.SetOptions(c.urlParams_, opts...)
21082	res, err := c.doRequest("json")
21083	if res != nil && res.StatusCode == http.StatusNotModified {
21084		if res.Body != nil {
21085			res.Body.Close()
21086		}
21087		return nil, &googleapi.Error{
21088			Code:   res.StatusCode,
21089			Header: res.Header,
21090		}
21091	}
21092	if err != nil {
21093		return nil, err
21094	}
21095	defer googleapi.CloseBody(res)
21096	if err := googleapi.CheckResponse(res); err != nil {
21097		return nil, err
21098	}
21099	ret := &Order{
21100		ServerResponse: googleapi.ServerResponse{
21101			Header:         res.Header,
21102			HTTPStatusCode: res.StatusCode,
21103		},
21104	}
21105	target := &ret
21106	if err := gensupport.DecodeResponse(target, res); err != nil {
21107		return nil, err
21108	}
21109	return ret, nil
21110	// {
21111	//   "description": "Retrieves an order from your Merchant Center account.",
21112	//   "httpMethod": "GET",
21113	//   "id": "content.orders.get",
21114	//   "parameterOrder": [
21115	//     "merchantId",
21116	//     "orderId"
21117	//   ],
21118	//   "parameters": {
21119	//     "merchantId": {
21120	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
21121	//       "format": "uint64",
21122	//       "location": "path",
21123	//       "required": true,
21124	//       "type": "string"
21125	//     },
21126	//     "orderId": {
21127	//       "description": "The ID of the order.",
21128	//       "location": "path",
21129	//       "required": true,
21130	//       "type": "string"
21131	//     }
21132	//   },
21133	//   "path": "{merchantId}/orders/{orderId}",
21134	//   "response": {
21135	//     "$ref": "Order"
21136	//   },
21137	//   "scopes": [
21138	//     "https://www.googleapis.com/auth/content"
21139	//   ]
21140	// }
21141
21142}
21143
21144// method id "content.orders.getbymerchantorderid":
21145
21146type OrdersGetbymerchantorderidCall struct {
21147	s               *APIService
21148	merchantId      uint64
21149	merchantOrderId string
21150	urlParams_      gensupport.URLParams
21151	ifNoneMatch_    string
21152	ctx_            context.Context
21153	header_         http.Header
21154}
21155
21156// Getbymerchantorderid: Retrieves an order using merchant order ID.
21157func (r *OrdersService) Getbymerchantorderid(merchantId uint64, merchantOrderId string) *OrdersGetbymerchantorderidCall {
21158	c := &OrdersGetbymerchantorderidCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21159	c.merchantId = merchantId
21160	c.merchantOrderId = merchantOrderId
21161	return c
21162}
21163
21164// Fields allows partial responses to be retrieved. See
21165// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21166// for more information.
21167func (c *OrdersGetbymerchantorderidCall) Fields(s ...googleapi.Field) *OrdersGetbymerchantorderidCall {
21168	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21169	return c
21170}
21171
21172// IfNoneMatch sets the optional parameter which makes the operation
21173// fail if the object's ETag matches the given value. This is useful for
21174// getting updates only after the object has changed since the last
21175// request. Use googleapi.IsNotModified to check whether the response
21176// error from Do is the result of In-None-Match.
21177func (c *OrdersGetbymerchantorderidCall) IfNoneMatch(entityTag string) *OrdersGetbymerchantorderidCall {
21178	c.ifNoneMatch_ = entityTag
21179	return c
21180}
21181
21182// Context sets the context to be used in this call's Do method. Any
21183// pending HTTP request will be aborted if the provided context is
21184// canceled.
21185func (c *OrdersGetbymerchantorderidCall) Context(ctx context.Context) *OrdersGetbymerchantorderidCall {
21186	c.ctx_ = ctx
21187	return c
21188}
21189
21190// Header returns an http.Header that can be modified by the caller to
21191// add HTTP headers to the request.
21192func (c *OrdersGetbymerchantorderidCall) Header() http.Header {
21193	if c.header_ == nil {
21194		c.header_ = make(http.Header)
21195	}
21196	return c.header_
21197}
21198
21199func (c *OrdersGetbymerchantorderidCall) doRequest(alt string) (*http.Response, error) {
21200	reqHeaders := make(http.Header)
21201	for k, v := range c.header_ {
21202		reqHeaders[k] = v
21203	}
21204	reqHeaders.Set("User-Agent", c.s.userAgent())
21205	if c.ifNoneMatch_ != "" {
21206		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
21207	}
21208	var body io.Reader = nil
21209	c.urlParams_.Set("alt", alt)
21210	c.urlParams_.Set("prettyPrint", "false")
21211	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/ordersbymerchantid/{merchantOrderId}")
21212	urls += "?" + c.urlParams_.Encode()
21213	req, err := http.NewRequest("GET", urls, body)
21214	if err != nil {
21215		return nil, err
21216	}
21217	req.Header = reqHeaders
21218	googleapi.Expand(req.URL, map[string]string{
21219		"merchantId":      strconv.FormatUint(c.merchantId, 10),
21220		"merchantOrderId": c.merchantOrderId,
21221	})
21222	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21223}
21224
21225// Do executes the "content.orders.getbymerchantorderid" call.
21226// Exactly one of *OrdersGetByMerchantOrderIdResponse or error will be
21227// non-nil. Any non-2xx status code is an error. Response headers are in
21228// either *OrdersGetByMerchantOrderIdResponse.ServerResponse.Header or
21229// (if a response was returned at all) in
21230// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
21231// whether the returned error was because http.StatusNotModified was
21232// returned.
21233func (c *OrdersGetbymerchantorderidCall) Do(opts ...googleapi.CallOption) (*OrdersGetByMerchantOrderIdResponse, error) {
21234	gensupport.SetOptions(c.urlParams_, opts...)
21235	res, err := c.doRequest("json")
21236	if res != nil && res.StatusCode == http.StatusNotModified {
21237		if res.Body != nil {
21238			res.Body.Close()
21239		}
21240		return nil, &googleapi.Error{
21241			Code:   res.StatusCode,
21242			Header: res.Header,
21243		}
21244	}
21245	if err != nil {
21246		return nil, err
21247	}
21248	defer googleapi.CloseBody(res)
21249	if err := googleapi.CheckResponse(res); err != nil {
21250		return nil, err
21251	}
21252	ret := &OrdersGetByMerchantOrderIdResponse{
21253		ServerResponse: googleapi.ServerResponse{
21254			Header:         res.Header,
21255			HTTPStatusCode: res.StatusCode,
21256		},
21257	}
21258	target := &ret
21259	if err := gensupport.DecodeResponse(target, res); err != nil {
21260		return nil, err
21261	}
21262	return ret, nil
21263	// {
21264	//   "description": "Retrieves an order using merchant order ID.",
21265	//   "httpMethod": "GET",
21266	//   "id": "content.orders.getbymerchantorderid",
21267	//   "parameterOrder": [
21268	//     "merchantId",
21269	//     "merchantOrderId"
21270	//   ],
21271	//   "parameters": {
21272	//     "merchantId": {
21273	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
21274	//       "format": "uint64",
21275	//       "location": "path",
21276	//       "required": true,
21277	//       "type": "string"
21278	//     },
21279	//     "merchantOrderId": {
21280	//       "description": "The merchant order ID to be looked for.",
21281	//       "location": "path",
21282	//       "required": true,
21283	//       "type": "string"
21284	//     }
21285	//   },
21286	//   "path": "{merchantId}/ordersbymerchantid/{merchantOrderId}",
21287	//   "response": {
21288	//     "$ref": "OrdersGetByMerchantOrderIdResponse"
21289	//   },
21290	//   "scopes": [
21291	//     "https://www.googleapis.com/auth/content"
21292	//   ]
21293	// }
21294
21295}
21296
21297// method id "content.orders.gettestordertemplate":
21298
21299type OrdersGettestordertemplateCall struct {
21300	s            *APIService
21301	merchantId   uint64
21302	templateName string
21303	urlParams_   gensupport.URLParams
21304	ifNoneMatch_ string
21305	ctx_         context.Context
21306	header_      http.Header
21307}
21308
21309// Gettestordertemplate: Sandbox only. Retrieves an order template that
21310// can be used to quickly create a new order in sandbox.
21311func (r *OrdersService) Gettestordertemplate(merchantId uint64, templateName string) *OrdersGettestordertemplateCall {
21312	c := &OrdersGettestordertemplateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21313	c.merchantId = merchantId
21314	c.templateName = templateName
21315	return c
21316}
21317
21318// Country sets the optional parameter "country": The country of the
21319// template to retrieve. Defaults to US.
21320func (c *OrdersGettestordertemplateCall) Country(country string) *OrdersGettestordertemplateCall {
21321	c.urlParams_.Set("country", country)
21322	return c
21323}
21324
21325// Fields allows partial responses to be retrieved. See
21326// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21327// for more information.
21328func (c *OrdersGettestordertemplateCall) Fields(s ...googleapi.Field) *OrdersGettestordertemplateCall {
21329	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21330	return c
21331}
21332
21333// IfNoneMatch sets the optional parameter which makes the operation
21334// fail if the object's ETag matches the given value. This is useful for
21335// getting updates only after the object has changed since the last
21336// request. Use googleapi.IsNotModified to check whether the response
21337// error from Do is the result of In-None-Match.
21338func (c *OrdersGettestordertemplateCall) IfNoneMatch(entityTag string) *OrdersGettestordertemplateCall {
21339	c.ifNoneMatch_ = entityTag
21340	return c
21341}
21342
21343// Context sets the context to be used in this call's Do method. Any
21344// pending HTTP request will be aborted if the provided context is
21345// canceled.
21346func (c *OrdersGettestordertemplateCall) Context(ctx context.Context) *OrdersGettestordertemplateCall {
21347	c.ctx_ = ctx
21348	return c
21349}
21350
21351// Header returns an http.Header that can be modified by the caller to
21352// add HTTP headers to the request.
21353func (c *OrdersGettestordertemplateCall) Header() http.Header {
21354	if c.header_ == nil {
21355		c.header_ = make(http.Header)
21356	}
21357	return c.header_
21358}
21359
21360func (c *OrdersGettestordertemplateCall) doRequest(alt string) (*http.Response, error) {
21361	reqHeaders := make(http.Header)
21362	for k, v := range c.header_ {
21363		reqHeaders[k] = v
21364	}
21365	reqHeaders.Set("User-Agent", c.s.userAgent())
21366	if c.ifNoneMatch_ != "" {
21367		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
21368	}
21369	var body io.Reader = nil
21370	c.urlParams_.Set("alt", alt)
21371	c.urlParams_.Set("prettyPrint", "false")
21372	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/testordertemplates/{templateName}")
21373	urls += "?" + c.urlParams_.Encode()
21374	req, err := http.NewRequest("GET", urls, body)
21375	if err != nil {
21376		return nil, err
21377	}
21378	req.Header = reqHeaders
21379	googleapi.Expand(req.URL, map[string]string{
21380		"merchantId":   strconv.FormatUint(c.merchantId, 10),
21381		"templateName": c.templateName,
21382	})
21383	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21384}
21385
21386// Do executes the "content.orders.gettestordertemplate" call.
21387// Exactly one of *OrdersGetTestOrderTemplateResponse or error will be
21388// non-nil. Any non-2xx status code is an error. Response headers are in
21389// either *OrdersGetTestOrderTemplateResponse.ServerResponse.Header or
21390// (if a response was returned at all) in
21391// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
21392// whether the returned error was because http.StatusNotModified was
21393// returned.
21394func (c *OrdersGettestordertemplateCall) Do(opts ...googleapi.CallOption) (*OrdersGetTestOrderTemplateResponse, error) {
21395	gensupport.SetOptions(c.urlParams_, opts...)
21396	res, err := c.doRequest("json")
21397	if res != nil && res.StatusCode == http.StatusNotModified {
21398		if res.Body != nil {
21399			res.Body.Close()
21400		}
21401		return nil, &googleapi.Error{
21402			Code:   res.StatusCode,
21403			Header: res.Header,
21404		}
21405	}
21406	if err != nil {
21407		return nil, err
21408	}
21409	defer googleapi.CloseBody(res)
21410	if err := googleapi.CheckResponse(res); err != nil {
21411		return nil, err
21412	}
21413	ret := &OrdersGetTestOrderTemplateResponse{
21414		ServerResponse: googleapi.ServerResponse{
21415			Header:         res.Header,
21416			HTTPStatusCode: res.StatusCode,
21417		},
21418	}
21419	target := &ret
21420	if err := gensupport.DecodeResponse(target, res); err != nil {
21421		return nil, err
21422	}
21423	return ret, nil
21424	// {
21425	//   "description": "Sandbox only. Retrieves an order template that can be used to quickly create a new order in sandbox.",
21426	//   "httpMethod": "GET",
21427	//   "id": "content.orders.gettestordertemplate",
21428	//   "parameterOrder": [
21429	//     "merchantId",
21430	//     "templateName"
21431	//   ],
21432	//   "parameters": {
21433	//     "country": {
21434	//       "description": "The country of the template to retrieve. Defaults to US.",
21435	//       "location": "query",
21436	//       "type": "string"
21437	//     },
21438	//     "merchantId": {
21439	//       "description": "The ID of the account that should manage the order. This cannot be a multi-client account.",
21440	//       "format": "uint64",
21441	//       "location": "path",
21442	//       "required": true,
21443	//       "type": "string"
21444	//     },
21445	//     "templateName": {
21446	//       "description": "The name of the template to retrieve.",
21447	//       "enum": [
21448	//         "template1",
21449	//         "template1a",
21450	//         "template1b",
21451	//         "template2"
21452	//       ],
21453	//       "enumDescriptions": [
21454	//         "",
21455	//         "",
21456	//         "",
21457	//         ""
21458	//       ],
21459	//       "location": "path",
21460	//       "required": true,
21461	//       "type": "string"
21462	//     }
21463	//   },
21464	//   "path": "{merchantId}/testordertemplates/{templateName}",
21465	//   "response": {
21466	//     "$ref": "OrdersGetTestOrderTemplateResponse"
21467	//   },
21468	//   "scopes": [
21469	//     "https://www.googleapis.com/auth/content"
21470	//   ]
21471	// }
21472
21473}
21474
21475// method id "content.orders.instorerefundlineitem":
21476
21477type OrdersInstorerefundlineitemCall struct {
21478	s                                  *APIService
21479	merchantId                         uint64
21480	orderId                            string
21481	ordersinstorerefundlineitemrequest *OrdersInStoreRefundLineItemRequest
21482	urlParams_                         gensupport.URLParams
21483	ctx_                               context.Context
21484	header_                            http.Header
21485}
21486
21487// Instorerefundlineitem: Notifies that item return and refund was
21488// handled directly by merchant outside of Google payments processing
21489// (e.g. cash refund done in store).
21490// Note: We recommend calling the returnrefundlineitem method to refund
21491// in-store returns. We will issue the refund directly to the customer.
21492// This helps to prevent possible differences arising between merchant
21493// and Google transaction records. We also recommend having the point of
21494// sale system communicate with Google to ensure that customers do not
21495// receive a double refund by first refunding via Google then via an
21496// in-store return.
21497func (r *OrdersService) Instorerefundlineitem(merchantId uint64, orderId string, ordersinstorerefundlineitemrequest *OrdersInStoreRefundLineItemRequest) *OrdersInstorerefundlineitemCall {
21498	c := &OrdersInstorerefundlineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21499	c.merchantId = merchantId
21500	c.orderId = orderId
21501	c.ordersinstorerefundlineitemrequest = ordersinstorerefundlineitemrequest
21502	return c
21503}
21504
21505// Fields allows partial responses to be retrieved. See
21506// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21507// for more information.
21508func (c *OrdersInstorerefundlineitemCall) Fields(s ...googleapi.Field) *OrdersInstorerefundlineitemCall {
21509	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21510	return c
21511}
21512
21513// Context sets the context to be used in this call's Do method. Any
21514// pending HTTP request will be aborted if the provided context is
21515// canceled.
21516func (c *OrdersInstorerefundlineitemCall) Context(ctx context.Context) *OrdersInstorerefundlineitemCall {
21517	c.ctx_ = ctx
21518	return c
21519}
21520
21521// Header returns an http.Header that can be modified by the caller to
21522// add HTTP headers to the request.
21523func (c *OrdersInstorerefundlineitemCall) Header() http.Header {
21524	if c.header_ == nil {
21525		c.header_ = make(http.Header)
21526	}
21527	return c.header_
21528}
21529
21530func (c *OrdersInstorerefundlineitemCall) doRequest(alt string) (*http.Response, error) {
21531	reqHeaders := make(http.Header)
21532	for k, v := range c.header_ {
21533		reqHeaders[k] = v
21534	}
21535	reqHeaders.Set("User-Agent", c.s.userAgent())
21536	var body io.Reader = nil
21537	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersinstorerefundlineitemrequest)
21538	if err != nil {
21539		return nil, err
21540	}
21541	reqHeaders.Set("Content-Type", "application/json")
21542	c.urlParams_.Set("alt", alt)
21543	c.urlParams_.Set("prettyPrint", "false")
21544	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/inStoreRefundLineItem")
21545	urls += "?" + c.urlParams_.Encode()
21546	req, err := http.NewRequest("POST", urls, body)
21547	if err != nil {
21548		return nil, err
21549	}
21550	req.Header = reqHeaders
21551	googleapi.Expand(req.URL, map[string]string{
21552		"merchantId": strconv.FormatUint(c.merchantId, 10),
21553		"orderId":    c.orderId,
21554	})
21555	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21556}
21557
21558// Do executes the "content.orders.instorerefundlineitem" call.
21559// Exactly one of *OrdersInStoreRefundLineItemResponse or error will be
21560// non-nil. Any non-2xx status code is an error. Response headers are in
21561// either *OrdersInStoreRefundLineItemResponse.ServerResponse.Header or
21562// (if a response was returned at all) in
21563// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
21564// whether the returned error was because http.StatusNotModified was
21565// returned.
21566func (c *OrdersInstorerefundlineitemCall) Do(opts ...googleapi.CallOption) (*OrdersInStoreRefundLineItemResponse, error) {
21567	gensupport.SetOptions(c.urlParams_, opts...)
21568	res, err := c.doRequest("json")
21569	if res != nil && res.StatusCode == http.StatusNotModified {
21570		if res.Body != nil {
21571			res.Body.Close()
21572		}
21573		return nil, &googleapi.Error{
21574			Code:   res.StatusCode,
21575			Header: res.Header,
21576		}
21577	}
21578	if err != nil {
21579		return nil, err
21580	}
21581	defer googleapi.CloseBody(res)
21582	if err := googleapi.CheckResponse(res); err != nil {
21583		return nil, err
21584	}
21585	ret := &OrdersInStoreRefundLineItemResponse{
21586		ServerResponse: googleapi.ServerResponse{
21587			Header:         res.Header,
21588			HTTPStatusCode: res.StatusCode,
21589		},
21590	}
21591	target := &ret
21592	if err := gensupport.DecodeResponse(target, res); err != nil {
21593		return nil, err
21594	}
21595	return ret, nil
21596	// {
21597	//   "description": "Notifies that item return and refund was handled directly by merchant outside of Google payments processing (e.g. cash refund done in store).\nNote: We recommend calling the returnrefundlineitem method to refund in-store returns. We will issue the refund directly to the customer. This helps to prevent possible differences arising between merchant and Google transaction records. We also recommend having the point of sale system communicate with Google to ensure that customers do not receive a double refund by first refunding via Google then via an in-store return.",
21598	//   "httpMethod": "POST",
21599	//   "id": "content.orders.instorerefundlineitem",
21600	//   "parameterOrder": [
21601	//     "merchantId",
21602	//     "orderId"
21603	//   ],
21604	//   "parameters": {
21605	//     "merchantId": {
21606	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
21607	//       "format": "uint64",
21608	//       "location": "path",
21609	//       "required": true,
21610	//       "type": "string"
21611	//     },
21612	//     "orderId": {
21613	//       "description": "The ID of the order.",
21614	//       "location": "path",
21615	//       "required": true,
21616	//       "type": "string"
21617	//     }
21618	//   },
21619	//   "path": "{merchantId}/orders/{orderId}/inStoreRefundLineItem",
21620	//   "request": {
21621	//     "$ref": "OrdersInStoreRefundLineItemRequest"
21622	//   },
21623	//   "response": {
21624	//     "$ref": "OrdersInStoreRefundLineItemResponse"
21625	//   },
21626	//   "scopes": [
21627	//     "https://www.googleapis.com/auth/content"
21628	//   ]
21629	// }
21630
21631}
21632
21633// method id "content.orders.list":
21634
21635type OrdersListCall struct {
21636	s            *APIService
21637	merchantId   uint64
21638	urlParams_   gensupport.URLParams
21639	ifNoneMatch_ string
21640	ctx_         context.Context
21641	header_      http.Header
21642}
21643
21644// List: Lists the orders in your Merchant Center account.
21645func (r *OrdersService) List(merchantId uint64) *OrdersListCall {
21646	c := &OrdersListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21647	c.merchantId = merchantId
21648	return c
21649}
21650
21651// Acknowledged sets the optional parameter "acknowledged": Obtains
21652// orders that match the acknowledgement status. When set to true,
21653// obtains orders that have been acknowledged. When false, obtains
21654// orders that have not been acknowledged.
21655// We recommend using this filter set to false, in conjunction with the
21656// acknowledge call, such that only un-acknowledged orders are returned.
21657func (c *OrdersListCall) Acknowledged(acknowledged bool) *OrdersListCall {
21658	c.urlParams_.Set("acknowledged", fmt.Sprint(acknowledged))
21659	return c
21660}
21661
21662// MaxResults sets the optional parameter "maxResults": The maximum
21663// number of orders to return in the response, used for paging. The
21664// default value is 25 orders per page, and the maximum allowed value is
21665// 250 orders per page.
21666func (c *OrdersListCall) MaxResults(maxResults int64) *OrdersListCall {
21667	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
21668	return c
21669}
21670
21671// OrderBy sets the optional parameter "orderBy": Order results by
21672// placement date in descending or ascending order.
21673//
21674// Acceptable values are:
21675// - placedDateAsc
21676// - placedDateDesc
21677func (c *OrdersListCall) OrderBy(orderBy string) *OrdersListCall {
21678	c.urlParams_.Set("orderBy", orderBy)
21679	return c
21680}
21681
21682// PageToken sets the optional parameter "pageToken": The token returned
21683// by the previous request.
21684func (c *OrdersListCall) PageToken(pageToken string) *OrdersListCall {
21685	c.urlParams_.Set("pageToken", pageToken)
21686	return c
21687}
21688
21689// PlacedDateEnd sets the optional parameter "placedDateEnd": Obtains
21690// orders placed before this date (exclusively), in ISO 8601 format.
21691func (c *OrdersListCall) PlacedDateEnd(placedDateEnd string) *OrdersListCall {
21692	c.urlParams_.Set("placedDateEnd", placedDateEnd)
21693	return c
21694}
21695
21696// PlacedDateStart sets the optional parameter "placedDateStart":
21697// Obtains orders placed after this date (inclusively), in ISO 8601
21698// format.
21699func (c *OrdersListCall) PlacedDateStart(placedDateStart string) *OrdersListCall {
21700	c.urlParams_.Set("placedDateStart", placedDateStart)
21701	return c
21702}
21703
21704// Statuses sets the optional parameter "statuses": Obtains orders that
21705// match any of the specified statuses. Multiple values can be specified
21706// with comma separation. Additionally, please note that active is a
21707// shortcut for pendingShipment and partiallyShipped, and completed is a
21708// shortcut for shipped, partiallyDelivered, delivered,
21709// partiallyReturned, returned, and canceled.
21710//
21711// Possible values:
21712//   "active"
21713//   "canceled"
21714//   "completed"
21715//   "delivered"
21716//   "inProgress"
21717//   "partiallyDelivered"
21718//   "partiallyReturned"
21719//   "partiallyShipped"
21720//   "pendingShipment"
21721//   "returned"
21722//   "shipped"
21723func (c *OrdersListCall) Statuses(statuses ...string) *OrdersListCall {
21724	c.urlParams_.SetMulti("statuses", append([]string{}, statuses...))
21725	return c
21726}
21727
21728// Fields allows partial responses to be retrieved. See
21729// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21730// for more information.
21731func (c *OrdersListCall) Fields(s ...googleapi.Field) *OrdersListCall {
21732	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21733	return c
21734}
21735
21736// IfNoneMatch sets the optional parameter which makes the operation
21737// fail if the object's ETag matches the given value. This is useful for
21738// getting updates only after the object has changed since the last
21739// request. Use googleapi.IsNotModified to check whether the response
21740// error from Do is the result of In-None-Match.
21741func (c *OrdersListCall) IfNoneMatch(entityTag string) *OrdersListCall {
21742	c.ifNoneMatch_ = entityTag
21743	return c
21744}
21745
21746// Context sets the context to be used in this call's Do method. Any
21747// pending HTTP request will be aborted if the provided context is
21748// canceled.
21749func (c *OrdersListCall) Context(ctx context.Context) *OrdersListCall {
21750	c.ctx_ = ctx
21751	return c
21752}
21753
21754// Header returns an http.Header that can be modified by the caller to
21755// add HTTP headers to the request.
21756func (c *OrdersListCall) Header() http.Header {
21757	if c.header_ == nil {
21758		c.header_ = make(http.Header)
21759	}
21760	return c.header_
21761}
21762
21763func (c *OrdersListCall) doRequest(alt string) (*http.Response, error) {
21764	reqHeaders := make(http.Header)
21765	for k, v := range c.header_ {
21766		reqHeaders[k] = v
21767	}
21768	reqHeaders.Set("User-Agent", c.s.userAgent())
21769	if c.ifNoneMatch_ != "" {
21770		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
21771	}
21772	var body io.Reader = nil
21773	c.urlParams_.Set("alt", alt)
21774	c.urlParams_.Set("prettyPrint", "false")
21775	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders")
21776	urls += "?" + c.urlParams_.Encode()
21777	req, err := http.NewRequest("GET", urls, body)
21778	if err != nil {
21779		return nil, err
21780	}
21781	req.Header = reqHeaders
21782	googleapi.Expand(req.URL, map[string]string{
21783		"merchantId": strconv.FormatUint(c.merchantId, 10),
21784	})
21785	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21786}
21787
21788// Do executes the "content.orders.list" call.
21789// Exactly one of *OrdersListResponse or error will be non-nil. Any
21790// non-2xx status code is an error. Response headers are in either
21791// *OrdersListResponse.ServerResponse.Header or (if a response was
21792// returned at all) in error.(*googleapi.Error).Header. Use
21793// googleapi.IsNotModified to check whether the returned error was
21794// because http.StatusNotModified was returned.
21795func (c *OrdersListCall) Do(opts ...googleapi.CallOption) (*OrdersListResponse, error) {
21796	gensupport.SetOptions(c.urlParams_, opts...)
21797	res, err := c.doRequest("json")
21798	if res != nil && res.StatusCode == http.StatusNotModified {
21799		if res.Body != nil {
21800			res.Body.Close()
21801		}
21802		return nil, &googleapi.Error{
21803			Code:   res.StatusCode,
21804			Header: res.Header,
21805		}
21806	}
21807	if err != nil {
21808		return nil, err
21809	}
21810	defer googleapi.CloseBody(res)
21811	if err := googleapi.CheckResponse(res); err != nil {
21812		return nil, err
21813	}
21814	ret := &OrdersListResponse{
21815		ServerResponse: googleapi.ServerResponse{
21816			Header:         res.Header,
21817			HTTPStatusCode: res.StatusCode,
21818		},
21819	}
21820	target := &ret
21821	if err := gensupport.DecodeResponse(target, res); err != nil {
21822		return nil, err
21823	}
21824	return ret, nil
21825	// {
21826	//   "description": "Lists the orders in your Merchant Center account.",
21827	//   "httpMethod": "GET",
21828	//   "id": "content.orders.list",
21829	//   "parameterOrder": [
21830	//     "merchantId"
21831	//   ],
21832	//   "parameters": {
21833	//     "acknowledged": {
21834	//       "description": "Obtains orders that match the acknowledgement status. When set to true, obtains orders that have been acknowledged. When false, obtains orders that have not been acknowledged.\nWe recommend using this filter set to false, in conjunction with the acknowledge call, such that only un-acknowledged orders are returned.",
21835	//       "location": "query",
21836	//       "type": "boolean"
21837	//     },
21838	//     "maxResults": {
21839	//       "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.",
21840	//       "format": "uint32",
21841	//       "location": "query",
21842	//       "type": "integer"
21843	//     },
21844	//     "merchantId": {
21845	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
21846	//       "format": "uint64",
21847	//       "location": "path",
21848	//       "required": true,
21849	//       "type": "string"
21850	//     },
21851	//     "orderBy": {
21852	//       "description": "Order results by placement date in descending or ascending order.\n\nAcceptable values are:\n- placedDateAsc\n- placedDateDesc",
21853	//       "location": "query",
21854	//       "type": "string"
21855	//     },
21856	//     "pageToken": {
21857	//       "description": "The token returned by the previous request.",
21858	//       "location": "query",
21859	//       "type": "string"
21860	//     },
21861	//     "placedDateEnd": {
21862	//       "description": "Obtains orders placed before this date (exclusively), in ISO 8601 format.",
21863	//       "location": "query",
21864	//       "type": "string"
21865	//     },
21866	//     "placedDateStart": {
21867	//       "description": "Obtains orders placed after this date (inclusively), in ISO 8601 format.",
21868	//       "location": "query",
21869	//       "type": "string"
21870	//     },
21871	//     "statuses": {
21872	//       "description": "Obtains orders that match any of the specified statuses. Multiple values can be specified with comma separation. Additionally, please note that active is a shortcut for pendingShipment and partiallyShipped, and completed is a shortcut for shipped, partiallyDelivered, delivered, partiallyReturned, returned, and canceled.",
21873	//       "enum": [
21874	//         "active",
21875	//         "canceled",
21876	//         "completed",
21877	//         "delivered",
21878	//         "inProgress",
21879	//         "partiallyDelivered",
21880	//         "partiallyReturned",
21881	//         "partiallyShipped",
21882	//         "pendingShipment",
21883	//         "returned",
21884	//         "shipped"
21885	//       ],
21886	//       "enumDescriptions": [
21887	//         "",
21888	//         "",
21889	//         "",
21890	//         "",
21891	//         "",
21892	//         "",
21893	//         "",
21894	//         "",
21895	//         "",
21896	//         "",
21897	//         ""
21898	//       ],
21899	//       "location": "query",
21900	//       "repeated": true,
21901	//       "type": "string"
21902	//     }
21903	//   },
21904	//   "path": "{merchantId}/orders",
21905	//   "response": {
21906	//     "$ref": "OrdersListResponse"
21907	//   },
21908	//   "scopes": [
21909	//     "https://www.googleapis.com/auth/content"
21910	//   ]
21911	// }
21912
21913}
21914
21915// Pages invokes f for each page of results.
21916// A non-nil error returned from f will halt the iteration.
21917// The provided context supersedes any context provided to the Context method.
21918func (c *OrdersListCall) Pages(ctx context.Context, f func(*OrdersListResponse) error) error {
21919	c.ctx_ = ctx
21920	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
21921	for {
21922		x, err := c.Do()
21923		if err != nil {
21924			return err
21925		}
21926		if err := f(x); err != nil {
21927			return err
21928		}
21929		if x.NextPageToken == "" {
21930			return nil
21931		}
21932		c.PageToken(x.NextPageToken)
21933	}
21934}
21935
21936// method id "content.orders.refund":
21937
21938type OrdersRefundCall struct {
21939	s                   *APIService
21940	merchantId          uint64
21941	orderId             string
21942	ordersrefundrequest *OrdersRefundRequest
21943	urlParams_          gensupport.URLParams
21944	ctx_                context.Context
21945	header_             http.Header
21946}
21947
21948// Refund: Deprecated, please use returnRefundLineItem instead.
21949func (r *OrdersService) Refund(merchantId uint64, orderId string, ordersrefundrequest *OrdersRefundRequest) *OrdersRefundCall {
21950	c := &OrdersRefundCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21951	c.merchantId = merchantId
21952	c.orderId = orderId
21953	c.ordersrefundrequest = ordersrefundrequest
21954	return c
21955}
21956
21957// Fields allows partial responses to be retrieved. See
21958// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21959// for more information.
21960func (c *OrdersRefundCall) Fields(s ...googleapi.Field) *OrdersRefundCall {
21961	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21962	return c
21963}
21964
21965// Context sets the context to be used in this call's Do method. Any
21966// pending HTTP request will be aborted if the provided context is
21967// canceled.
21968func (c *OrdersRefundCall) Context(ctx context.Context) *OrdersRefundCall {
21969	c.ctx_ = ctx
21970	return c
21971}
21972
21973// Header returns an http.Header that can be modified by the caller to
21974// add HTTP headers to the request.
21975func (c *OrdersRefundCall) Header() http.Header {
21976	if c.header_ == nil {
21977		c.header_ = make(http.Header)
21978	}
21979	return c.header_
21980}
21981
21982func (c *OrdersRefundCall) doRequest(alt string) (*http.Response, error) {
21983	reqHeaders := make(http.Header)
21984	for k, v := range c.header_ {
21985		reqHeaders[k] = v
21986	}
21987	reqHeaders.Set("User-Agent", c.s.userAgent())
21988	var body io.Reader = nil
21989	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersrefundrequest)
21990	if err != nil {
21991		return nil, err
21992	}
21993	reqHeaders.Set("Content-Type", "application/json")
21994	c.urlParams_.Set("alt", alt)
21995	c.urlParams_.Set("prettyPrint", "false")
21996	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/refund")
21997	urls += "?" + c.urlParams_.Encode()
21998	req, err := http.NewRequest("POST", urls, body)
21999	if err != nil {
22000		return nil, err
22001	}
22002	req.Header = reqHeaders
22003	googleapi.Expand(req.URL, map[string]string{
22004		"merchantId": strconv.FormatUint(c.merchantId, 10),
22005		"orderId":    c.orderId,
22006	})
22007	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22008}
22009
22010// Do executes the "content.orders.refund" call.
22011// Exactly one of *OrdersRefundResponse or error will be non-nil. Any
22012// non-2xx status code is an error. Response headers are in either
22013// *OrdersRefundResponse.ServerResponse.Header or (if a response was
22014// returned at all) in error.(*googleapi.Error).Header. Use
22015// googleapi.IsNotModified to check whether the returned error was
22016// because http.StatusNotModified was returned.
22017func (c *OrdersRefundCall) Do(opts ...googleapi.CallOption) (*OrdersRefundResponse, error) {
22018	gensupport.SetOptions(c.urlParams_, opts...)
22019	res, err := c.doRequest("json")
22020	if res != nil && res.StatusCode == http.StatusNotModified {
22021		if res.Body != nil {
22022			res.Body.Close()
22023		}
22024		return nil, &googleapi.Error{
22025			Code:   res.StatusCode,
22026			Header: res.Header,
22027		}
22028	}
22029	if err != nil {
22030		return nil, err
22031	}
22032	defer googleapi.CloseBody(res)
22033	if err := googleapi.CheckResponse(res); err != nil {
22034		return nil, err
22035	}
22036	ret := &OrdersRefundResponse{
22037		ServerResponse: googleapi.ServerResponse{
22038			Header:         res.Header,
22039			HTTPStatusCode: res.StatusCode,
22040		},
22041	}
22042	target := &ret
22043	if err := gensupport.DecodeResponse(target, res); err != nil {
22044		return nil, err
22045	}
22046	return ret, nil
22047	// {
22048	//   "description": "Deprecated, please use returnRefundLineItem instead.",
22049	//   "httpMethod": "POST",
22050	//   "id": "content.orders.refund",
22051	//   "parameterOrder": [
22052	//     "merchantId",
22053	//     "orderId"
22054	//   ],
22055	//   "parameters": {
22056	//     "merchantId": {
22057	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
22058	//       "format": "uint64",
22059	//       "location": "path",
22060	//       "required": true,
22061	//       "type": "string"
22062	//     },
22063	//     "orderId": {
22064	//       "description": "The ID of the order to refund.",
22065	//       "location": "path",
22066	//       "required": true,
22067	//       "type": "string"
22068	//     }
22069	//   },
22070	//   "path": "{merchantId}/orders/{orderId}/refund",
22071	//   "request": {
22072	//     "$ref": "OrdersRefundRequest"
22073	//   },
22074	//   "response": {
22075	//     "$ref": "OrdersRefundResponse"
22076	//   },
22077	//   "scopes": [
22078	//     "https://www.googleapis.com/auth/content"
22079	//   ]
22080	// }
22081
22082}
22083
22084// method id "content.orders.rejectreturnlineitem":
22085
22086type OrdersRejectreturnlineitemCall struct {
22087	s                                 *APIService
22088	merchantId                        uint64
22089	orderId                           string
22090	ordersrejectreturnlineitemrequest *OrdersRejectReturnLineItemRequest
22091	urlParams_                        gensupport.URLParams
22092	ctx_                              context.Context
22093	header_                           http.Header
22094}
22095
22096// Rejectreturnlineitem: Rejects return on an line item.
22097func (r *OrdersService) Rejectreturnlineitem(merchantId uint64, orderId string, ordersrejectreturnlineitemrequest *OrdersRejectReturnLineItemRequest) *OrdersRejectreturnlineitemCall {
22098	c := &OrdersRejectreturnlineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22099	c.merchantId = merchantId
22100	c.orderId = orderId
22101	c.ordersrejectreturnlineitemrequest = ordersrejectreturnlineitemrequest
22102	return c
22103}
22104
22105// Fields allows partial responses to be retrieved. See
22106// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22107// for more information.
22108func (c *OrdersRejectreturnlineitemCall) Fields(s ...googleapi.Field) *OrdersRejectreturnlineitemCall {
22109	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22110	return c
22111}
22112
22113// Context sets the context to be used in this call's Do method. Any
22114// pending HTTP request will be aborted if the provided context is
22115// canceled.
22116func (c *OrdersRejectreturnlineitemCall) Context(ctx context.Context) *OrdersRejectreturnlineitemCall {
22117	c.ctx_ = ctx
22118	return c
22119}
22120
22121// Header returns an http.Header that can be modified by the caller to
22122// add HTTP headers to the request.
22123func (c *OrdersRejectreturnlineitemCall) Header() http.Header {
22124	if c.header_ == nil {
22125		c.header_ = make(http.Header)
22126	}
22127	return c.header_
22128}
22129
22130func (c *OrdersRejectreturnlineitemCall) doRequest(alt string) (*http.Response, error) {
22131	reqHeaders := make(http.Header)
22132	for k, v := range c.header_ {
22133		reqHeaders[k] = v
22134	}
22135	reqHeaders.Set("User-Agent", c.s.userAgent())
22136	var body io.Reader = nil
22137	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersrejectreturnlineitemrequest)
22138	if err != nil {
22139		return nil, err
22140	}
22141	reqHeaders.Set("Content-Type", "application/json")
22142	c.urlParams_.Set("alt", alt)
22143	c.urlParams_.Set("prettyPrint", "false")
22144	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/rejectReturnLineItem")
22145	urls += "?" + c.urlParams_.Encode()
22146	req, err := http.NewRequest("POST", urls, body)
22147	if err != nil {
22148		return nil, err
22149	}
22150	req.Header = reqHeaders
22151	googleapi.Expand(req.URL, map[string]string{
22152		"merchantId": strconv.FormatUint(c.merchantId, 10),
22153		"orderId":    c.orderId,
22154	})
22155	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22156}
22157
22158// Do executes the "content.orders.rejectreturnlineitem" call.
22159// Exactly one of *OrdersRejectReturnLineItemResponse or error will be
22160// non-nil. Any non-2xx status code is an error. Response headers are in
22161// either *OrdersRejectReturnLineItemResponse.ServerResponse.Header or
22162// (if a response was returned at all) in
22163// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
22164// whether the returned error was because http.StatusNotModified was
22165// returned.
22166func (c *OrdersRejectreturnlineitemCall) Do(opts ...googleapi.CallOption) (*OrdersRejectReturnLineItemResponse, error) {
22167	gensupport.SetOptions(c.urlParams_, opts...)
22168	res, err := c.doRequest("json")
22169	if res != nil && res.StatusCode == http.StatusNotModified {
22170		if res.Body != nil {
22171			res.Body.Close()
22172		}
22173		return nil, &googleapi.Error{
22174			Code:   res.StatusCode,
22175			Header: res.Header,
22176		}
22177	}
22178	if err != nil {
22179		return nil, err
22180	}
22181	defer googleapi.CloseBody(res)
22182	if err := googleapi.CheckResponse(res); err != nil {
22183		return nil, err
22184	}
22185	ret := &OrdersRejectReturnLineItemResponse{
22186		ServerResponse: googleapi.ServerResponse{
22187			Header:         res.Header,
22188			HTTPStatusCode: res.StatusCode,
22189		},
22190	}
22191	target := &ret
22192	if err := gensupport.DecodeResponse(target, res); err != nil {
22193		return nil, err
22194	}
22195	return ret, nil
22196	// {
22197	//   "description": "Rejects return on an line item.",
22198	//   "httpMethod": "POST",
22199	//   "id": "content.orders.rejectreturnlineitem",
22200	//   "parameterOrder": [
22201	//     "merchantId",
22202	//     "orderId"
22203	//   ],
22204	//   "parameters": {
22205	//     "merchantId": {
22206	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
22207	//       "format": "uint64",
22208	//       "location": "path",
22209	//       "required": true,
22210	//       "type": "string"
22211	//     },
22212	//     "orderId": {
22213	//       "description": "The ID of the order.",
22214	//       "location": "path",
22215	//       "required": true,
22216	//       "type": "string"
22217	//     }
22218	//   },
22219	//   "path": "{merchantId}/orders/{orderId}/rejectReturnLineItem",
22220	//   "request": {
22221	//     "$ref": "OrdersRejectReturnLineItemRequest"
22222	//   },
22223	//   "response": {
22224	//     "$ref": "OrdersRejectReturnLineItemResponse"
22225	//   },
22226	//   "scopes": [
22227	//     "https://www.googleapis.com/auth/content"
22228	//   ]
22229	// }
22230
22231}
22232
22233// method id "content.orders.returnlineitem":
22234
22235type OrdersReturnlineitemCall struct {
22236	s                           *APIService
22237	merchantId                  uint64
22238	orderId                     string
22239	ordersreturnlineitemrequest *OrdersReturnLineItemRequest
22240	urlParams_                  gensupport.URLParams
22241	ctx_                        context.Context
22242	header_                     http.Header
22243}
22244
22245// Returnlineitem: Returns a line item.
22246func (r *OrdersService) Returnlineitem(merchantId uint64, orderId string, ordersreturnlineitemrequest *OrdersReturnLineItemRequest) *OrdersReturnlineitemCall {
22247	c := &OrdersReturnlineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22248	c.merchantId = merchantId
22249	c.orderId = orderId
22250	c.ordersreturnlineitemrequest = ordersreturnlineitemrequest
22251	return c
22252}
22253
22254// Fields allows partial responses to be retrieved. See
22255// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22256// for more information.
22257func (c *OrdersReturnlineitemCall) Fields(s ...googleapi.Field) *OrdersReturnlineitemCall {
22258	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22259	return c
22260}
22261
22262// Context sets the context to be used in this call's Do method. Any
22263// pending HTTP request will be aborted if the provided context is
22264// canceled.
22265func (c *OrdersReturnlineitemCall) Context(ctx context.Context) *OrdersReturnlineitemCall {
22266	c.ctx_ = ctx
22267	return c
22268}
22269
22270// Header returns an http.Header that can be modified by the caller to
22271// add HTTP headers to the request.
22272func (c *OrdersReturnlineitemCall) Header() http.Header {
22273	if c.header_ == nil {
22274		c.header_ = make(http.Header)
22275	}
22276	return c.header_
22277}
22278
22279func (c *OrdersReturnlineitemCall) doRequest(alt string) (*http.Response, error) {
22280	reqHeaders := make(http.Header)
22281	for k, v := range c.header_ {
22282		reqHeaders[k] = v
22283	}
22284	reqHeaders.Set("User-Agent", c.s.userAgent())
22285	var body io.Reader = nil
22286	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersreturnlineitemrequest)
22287	if err != nil {
22288		return nil, err
22289	}
22290	reqHeaders.Set("Content-Type", "application/json")
22291	c.urlParams_.Set("alt", alt)
22292	c.urlParams_.Set("prettyPrint", "false")
22293	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/returnLineItem")
22294	urls += "?" + c.urlParams_.Encode()
22295	req, err := http.NewRequest("POST", urls, body)
22296	if err != nil {
22297		return nil, err
22298	}
22299	req.Header = reqHeaders
22300	googleapi.Expand(req.URL, map[string]string{
22301		"merchantId": strconv.FormatUint(c.merchantId, 10),
22302		"orderId":    c.orderId,
22303	})
22304	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22305}
22306
22307// Do executes the "content.orders.returnlineitem" call.
22308// Exactly one of *OrdersReturnLineItemResponse or error will be
22309// non-nil. Any non-2xx status code is an error. Response headers are in
22310// either *OrdersReturnLineItemResponse.ServerResponse.Header or (if a
22311// response was returned at all) in error.(*googleapi.Error).Header. Use
22312// googleapi.IsNotModified to check whether the returned error was
22313// because http.StatusNotModified was returned.
22314func (c *OrdersReturnlineitemCall) Do(opts ...googleapi.CallOption) (*OrdersReturnLineItemResponse, error) {
22315	gensupport.SetOptions(c.urlParams_, opts...)
22316	res, err := c.doRequest("json")
22317	if res != nil && res.StatusCode == http.StatusNotModified {
22318		if res.Body != nil {
22319			res.Body.Close()
22320		}
22321		return nil, &googleapi.Error{
22322			Code:   res.StatusCode,
22323			Header: res.Header,
22324		}
22325	}
22326	if err != nil {
22327		return nil, err
22328	}
22329	defer googleapi.CloseBody(res)
22330	if err := googleapi.CheckResponse(res); err != nil {
22331		return nil, err
22332	}
22333	ret := &OrdersReturnLineItemResponse{
22334		ServerResponse: googleapi.ServerResponse{
22335			Header:         res.Header,
22336			HTTPStatusCode: res.StatusCode,
22337		},
22338	}
22339	target := &ret
22340	if err := gensupport.DecodeResponse(target, res); err != nil {
22341		return nil, err
22342	}
22343	return ret, nil
22344	// {
22345	//   "description": "Returns a line item.",
22346	//   "httpMethod": "POST",
22347	//   "id": "content.orders.returnlineitem",
22348	//   "parameterOrder": [
22349	//     "merchantId",
22350	//     "orderId"
22351	//   ],
22352	//   "parameters": {
22353	//     "merchantId": {
22354	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
22355	//       "format": "uint64",
22356	//       "location": "path",
22357	//       "required": true,
22358	//       "type": "string"
22359	//     },
22360	//     "orderId": {
22361	//       "description": "The ID of the order.",
22362	//       "location": "path",
22363	//       "required": true,
22364	//       "type": "string"
22365	//     }
22366	//   },
22367	//   "path": "{merchantId}/orders/{orderId}/returnLineItem",
22368	//   "request": {
22369	//     "$ref": "OrdersReturnLineItemRequest"
22370	//   },
22371	//   "response": {
22372	//     "$ref": "OrdersReturnLineItemResponse"
22373	//   },
22374	//   "scopes": [
22375	//     "https://www.googleapis.com/auth/content"
22376	//   ]
22377	// }
22378
22379}
22380
22381// method id "content.orders.returnrefundlineitem":
22382
22383type OrdersReturnrefundlineitemCall struct {
22384	s                                 *APIService
22385	merchantId                        uint64
22386	orderId                           string
22387	ordersreturnrefundlineitemrequest *OrdersReturnRefundLineItemRequest
22388	urlParams_                        gensupport.URLParams
22389	ctx_                              context.Context
22390	header_                           http.Header
22391}
22392
22393// Returnrefundlineitem: Returns and refunds a line item. Note that this
22394// method can only be called on fully shipped orders.
22395func (r *OrdersService) Returnrefundlineitem(merchantId uint64, orderId string, ordersreturnrefundlineitemrequest *OrdersReturnRefundLineItemRequest) *OrdersReturnrefundlineitemCall {
22396	c := &OrdersReturnrefundlineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22397	c.merchantId = merchantId
22398	c.orderId = orderId
22399	c.ordersreturnrefundlineitemrequest = ordersreturnrefundlineitemrequest
22400	return c
22401}
22402
22403// Fields allows partial responses to be retrieved. See
22404// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22405// for more information.
22406func (c *OrdersReturnrefundlineitemCall) Fields(s ...googleapi.Field) *OrdersReturnrefundlineitemCall {
22407	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22408	return c
22409}
22410
22411// Context sets the context to be used in this call's Do method. Any
22412// pending HTTP request will be aborted if the provided context is
22413// canceled.
22414func (c *OrdersReturnrefundlineitemCall) Context(ctx context.Context) *OrdersReturnrefundlineitemCall {
22415	c.ctx_ = ctx
22416	return c
22417}
22418
22419// Header returns an http.Header that can be modified by the caller to
22420// add HTTP headers to the request.
22421func (c *OrdersReturnrefundlineitemCall) Header() http.Header {
22422	if c.header_ == nil {
22423		c.header_ = make(http.Header)
22424	}
22425	return c.header_
22426}
22427
22428func (c *OrdersReturnrefundlineitemCall) doRequest(alt string) (*http.Response, error) {
22429	reqHeaders := make(http.Header)
22430	for k, v := range c.header_ {
22431		reqHeaders[k] = v
22432	}
22433	reqHeaders.Set("User-Agent", c.s.userAgent())
22434	var body io.Reader = nil
22435	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersreturnrefundlineitemrequest)
22436	if err != nil {
22437		return nil, err
22438	}
22439	reqHeaders.Set("Content-Type", "application/json")
22440	c.urlParams_.Set("alt", alt)
22441	c.urlParams_.Set("prettyPrint", "false")
22442	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/returnRefundLineItem")
22443	urls += "?" + c.urlParams_.Encode()
22444	req, err := http.NewRequest("POST", urls, body)
22445	if err != nil {
22446		return nil, err
22447	}
22448	req.Header = reqHeaders
22449	googleapi.Expand(req.URL, map[string]string{
22450		"merchantId": strconv.FormatUint(c.merchantId, 10),
22451		"orderId":    c.orderId,
22452	})
22453	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22454}
22455
22456// Do executes the "content.orders.returnrefundlineitem" call.
22457// Exactly one of *OrdersReturnRefundLineItemResponse or error will be
22458// non-nil. Any non-2xx status code is an error. Response headers are in
22459// either *OrdersReturnRefundLineItemResponse.ServerResponse.Header or
22460// (if a response was returned at all) in
22461// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
22462// whether the returned error was because http.StatusNotModified was
22463// returned.
22464func (c *OrdersReturnrefundlineitemCall) Do(opts ...googleapi.CallOption) (*OrdersReturnRefundLineItemResponse, error) {
22465	gensupport.SetOptions(c.urlParams_, opts...)
22466	res, err := c.doRequest("json")
22467	if res != nil && res.StatusCode == http.StatusNotModified {
22468		if res.Body != nil {
22469			res.Body.Close()
22470		}
22471		return nil, &googleapi.Error{
22472			Code:   res.StatusCode,
22473			Header: res.Header,
22474		}
22475	}
22476	if err != nil {
22477		return nil, err
22478	}
22479	defer googleapi.CloseBody(res)
22480	if err := googleapi.CheckResponse(res); err != nil {
22481		return nil, err
22482	}
22483	ret := &OrdersReturnRefundLineItemResponse{
22484		ServerResponse: googleapi.ServerResponse{
22485			Header:         res.Header,
22486			HTTPStatusCode: res.StatusCode,
22487		},
22488	}
22489	target := &ret
22490	if err := gensupport.DecodeResponse(target, res); err != nil {
22491		return nil, err
22492	}
22493	return ret, nil
22494	// {
22495	//   "description": "Returns and refunds a line item. Note that this method can only be called on fully shipped orders.",
22496	//   "httpMethod": "POST",
22497	//   "id": "content.orders.returnrefundlineitem",
22498	//   "parameterOrder": [
22499	//     "merchantId",
22500	//     "orderId"
22501	//   ],
22502	//   "parameters": {
22503	//     "merchantId": {
22504	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
22505	//       "format": "uint64",
22506	//       "location": "path",
22507	//       "required": true,
22508	//       "type": "string"
22509	//     },
22510	//     "orderId": {
22511	//       "description": "The ID of the order.",
22512	//       "location": "path",
22513	//       "required": true,
22514	//       "type": "string"
22515	//     }
22516	//   },
22517	//   "path": "{merchantId}/orders/{orderId}/returnRefundLineItem",
22518	//   "request": {
22519	//     "$ref": "OrdersReturnRefundLineItemRequest"
22520	//   },
22521	//   "response": {
22522	//     "$ref": "OrdersReturnRefundLineItemResponse"
22523	//   },
22524	//   "scopes": [
22525	//     "https://www.googleapis.com/auth/content"
22526	//   ]
22527	// }
22528
22529}
22530
22531// method id "content.orders.setlineitemmetadata":
22532
22533type OrdersSetlineitemmetadataCall struct {
22534	s                                *APIService
22535	merchantId                       uint64
22536	orderId                          string
22537	orderssetlineitemmetadatarequest *OrdersSetLineItemMetadataRequest
22538	urlParams_                       gensupport.URLParams
22539	ctx_                             context.Context
22540	header_                          http.Header
22541}
22542
22543// Setlineitemmetadata: Sets (or overrides if it already exists)
22544// merchant provided annotations in the form of key-value pairs. A
22545// common use case would be to supply us with additional structured
22546// information about a line item that cannot be provided via other
22547// methods. Submitted key-value pairs can be retrieved as part of the
22548// orders resource.
22549func (r *OrdersService) Setlineitemmetadata(merchantId uint64, orderId string, orderssetlineitemmetadatarequest *OrdersSetLineItemMetadataRequest) *OrdersSetlineitemmetadataCall {
22550	c := &OrdersSetlineitemmetadataCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22551	c.merchantId = merchantId
22552	c.orderId = orderId
22553	c.orderssetlineitemmetadatarequest = orderssetlineitemmetadatarequest
22554	return c
22555}
22556
22557// Fields allows partial responses to be retrieved. See
22558// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22559// for more information.
22560func (c *OrdersSetlineitemmetadataCall) Fields(s ...googleapi.Field) *OrdersSetlineitemmetadataCall {
22561	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22562	return c
22563}
22564
22565// Context sets the context to be used in this call's Do method. Any
22566// pending HTTP request will be aborted if the provided context is
22567// canceled.
22568func (c *OrdersSetlineitemmetadataCall) Context(ctx context.Context) *OrdersSetlineitemmetadataCall {
22569	c.ctx_ = ctx
22570	return c
22571}
22572
22573// Header returns an http.Header that can be modified by the caller to
22574// add HTTP headers to the request.
22575func (c *OrdersSetlineitemmetadataCall) Header() http.Header {
22576	if c.header_ == nil {
22577		c.header_ = make(http.Header)
22578	}
22579	return c.header_
22580}
22581
22582func (c *OrdersSetlineitemmetadataCall) doRequest(alt string) (*http.Response, error) {
22583	reqHeaders := make(http.Header)
22584	for k, v := range c.header_ {
22585		reqHeaders[k] = v
22586	}
22587	reqHeaders.Set("User-Agent", c.s.userAgent())
22588	var body io.Reader = nil
22589	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderssetlineitemmetadatarequest)
22590	if err != nil {
22591		return nil, err
22592	}
22593	reqHeaders.Set("Content-Type", "application/json")
22594	c.urlParams_.Set("alt", alt)
22595	c.urlParams_.Set("prettyPrint", "false")
22596	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/setLineItemMetadata")
22597	urls += "?" + c.urlParams_.Encode()
22598	req, err := http.NewRequest("POST", urls, body)
22599	if err != nil {
22600		return nil, err
22601	}
22602	req.Header = reqHeaders
22603	googleapi.Expand(req.URL, map[string]string{
22604		"merchantId": strconv.FormatUint(c.merchantId, 10),
22605		"orderId":    c.orderId,
22606	})
22607	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22608}
22609
22610// Do executes the "content.orders.setlineitemmetadata" call.
22611// Exactly one of *OrdersSetLineItemMetadataResponse or error will be
22612// non-nil. Any non-2xx status code is an error. Response headers are in
22613// either *OrdersSetLineItemMetadataResponse.ServerResponse.Header or
22614// (if a response was returned at all) in
22615// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
22616// whether the returned error was because http.StatusNotModified was
22617// returned.
22618func (c *OrdersSetlineitemmetadataCall) Do(opts ...googleapi.CallOption) (*OrdersSetLineItemMetadataResponse, error) {
22619	gensupport.SetOptions(c.urlParams_, opts...)
22620	res, err := c.doRequest("json")
22621	if res != nil && res.StatusCode == http.StatusNotModified {
22622		if res.Body != nil {
22623			res.Body.Close()
22624		}
22625		return nil, &googleapi.Error{
22626			Code:   res.StatusCode,
22627			Header: res.Header,
22628		}
22629	}
22630	if err != nil {
22631		return nil, err
22632	}
22633	defer googleapi.CloseBody(res)
22634	if err := googleapi.CheckResponse(res); err != nil {
22635		return nil, err
22636	}
22637	ret := &OrdersSetLineItemMetadataResponse{
22638		ServerResponse: googleapi.ServerResponse{
22639			Header:         res.Header,
22640			HTTPStatusCode: res.StatusCode,
22641		},
22642	}
22643	target := &ret
22644	if err := gensupport.DecodeResponse(target, res); err != nil {
22645		return nil, err
22646	}
22647	return ret, nil
22648	// {
22649	//   "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.",
22650	//   "httpMethod": "POST",
22651	//   "id": "content.orders.setlineitemmetadata",
22652	//   "parameterOrder": [
22653	//     "merchantId",
22654	//     "orderId"
22655	//   ],
22656	//   "parameters": {
22657	//     "merchantId": {
22658	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
22659	//       "format": "uint64",
22660	//       "location": "path",
22661	//       "required": true,
22662	//       "type": "string"
22663	//     },
22664	//     "orderId": {
22665	//       "description": "The ID of the order.",
22666	//       "location": "path",
22667	//       "required": true,
22668	//       "type": "string"
22669	//     }
22670	//   },
22671	//   "path": "{merchantId}/orders/{orderId}/setLineItemMetadata",
22672	//   "request": {
22673	//     "$ref": "OrdersSetLineItemMetadataRequest"
22674	//   },
22675	//   "response": {
22676	//     "$ref": "OrdersSetLineItemMetadataResponse"
22677	//   },
22678	//   "scopes": [
22679	//     "https://www.googleapis.com/auth/content"
22680	//   ]
22681	// }
22682
22683}
22684
22685// method id "content.orders.shiplineitems":
22686
22687type OrdersShiplineitemsCall struct {
22688	s                          *APIService
22689	merchantId                 uint64
22690	orderId                    string
22691	ordersshiplineitemsrequest *OrdersShipLineItemsRequest
22692	urlParams_                 gensupport.URLParams
22693	ctx_                       context.Context
22694	header_                    http.Header
22695}
22696
22697// Shiplineitems: Marks line item(s) as shipped.
22698func (r *OrdersService) Shiplineitems(merchantId uint64, orderId string, ordersshiplineitemsrequest *OrdersShipLineItemsRequest) *OrdersShiplineitemsCall {
22699	c := &OrdersShiplineitemsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22700	c.merchantId = merchantId
22701	c.orderId = orderId
22702	c.ordersshiplineitemsrequest = ordersshiplineitemsrequest
22703	return c
22704}
22705
22706// Fields allows partial responses to be retrieved. See
22707// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22708// for more information.
22709func (c *OrdersShiplineitemsCall) Fields(s ...googleapi.Field) *OrdersShiplineitemsCall {
22710	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22711	return c
22712}
22713
22714// Context sets the context to be used in this call's Do method. Any
22715// pending HTTP request will be aborted if the provided context is
22716// canceled.
22717func (c *OrdersShiplineitemsCall) Context(ctx context.Context) *OrdersShiplineitemsCall {
22718	c.ctx_ = ctx
22719	return c
22720}
22721
22722// Header returns an http.Header that can be modified by the caller to
22723// add HTTP headers to the request.
22724func (c *OrdersShiplineitemsCall) Header() http.Header {
22725	if c.header_ == nil {
22726		c.header_ = make(http.Header)
22727	}
22728	return c.header_
22729}
22730
22731func (c *OrdersShiplineitemsCall) doRequest(alt string) (*http.Response, error) {
22732	reqHeaders := make(http.Header)
22733	for k, v := range c.header_ {
22734		reqHeaders[k] = v
22735	}
22736	reqHeaders.Set("User-Agent", c.s.userAgent())
22737	var body io.Reader = nil
22738	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersshiplineitemsrequest)
22739	if err != nil {
22740		return nil, err
22741	}
22742	reqHeaders.Set("Content-Type", "application/json")
22743	c.urlParams_.Set("alt", alt)
22744	c.urlParams_.Set("prettyPrint", "false")
22745	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/shipLineItems")
22746	urls += "?" + c.urlParams_.Encode()
22747	req, err := http.NewRequest("POST", urls, body)
22748	if err != nil {
22749		return nil, err
22750	}
22751	req.Header = reqHeaders
22752	googleapi.Expand(req.URL, map[string]string{
22753		"merchantId": strconv.FormatUint(c.merchantId, 10),
22754		"orderId":    c.orderId,
22755	})
22756	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22757}
22758
22759// Do executes the "content.orders.shiplineitems" call.
22760// Exactly one of *OrdersShipLineItemsResponse or error will be non-nil.
22761// Any non-2xx status code is an error. Response headers are in either
22762// *OrdersShipLineItemsResponse.ServerResponse.Header or (if a response
22763// was returned at all) in error.(*googleapi.Error).Header. Use
22764// googleapi.IsNotModified to check whether the returned error was
22765// because http.StatusNotModified was returned.
22766func (c *OrdersShiplineitemsCall) Do(opts ...googleapi.CallOption) (*OrdersShipLineItemsResponse, error) {
22767	gensupport.SetOptions(c.urlParams_, opts...)
22768	res, err := c.doRequest("json")
22769	if res != nil && res.StatusCode == http.StatusNotModified {
22770		if res.Body != nil {
22771			res.Body.Close()
22772		}
22773		return nil, &googleapi.Error{
22774			Code:   res.StatusCode,
22775			Header: res.Header,
22776		}
22777	}
22778	if err != nil {
22779		return nil, err
22780	}
22781	defer googleapi.CloseBody(res)
22782	if err := googleapi.CheckResponse(res); err != nil {
22783		return nil, err
22784	}
22785	ret := &OrdersShipLineItemsResponse{
22786		ServerResponse: googleapi.ServerResponse{
22787			Header:         res.Header,
22788			HTTPStatusCode: res.StatusCode,
22789		},
22790	}
22791	target := &ret
22792	if err := gensupport.DecodeResponse(target, res); err != nil {
22793		return nil, err
22794	}
22795	return ret, nil
22796	// {
22797	//   "description": "Marks line item(s) as shipped.",
22798	//   "httpMethod": "POST",
22799	//   "id": "content.orders.shiplineitems",
22800	//   "parameterOrder": [
22801	//     "merchantId",
22802	//     "orderId"
22803	//   ],
22804	//   "parameters": {
22805	//     "merchantId": {
22806	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
22807	//       "format": "uint64",
22808	//       "location": "path",
22809	//       "required": true,
22810	//       "type": "string"
22811	//     },
22812	//     "orderId": {
22813	//       "description": "The ID of the order.",
22814	//       "location": "path",
22815	//       "required": true,
22816	//       "type": "string"
22817	//     }
22818	//   },
22819	//   "path": "{merchantId}/orders/{orderId}/shipLineItems",
22820	//   "request": {
22821	//     "$ref": "OrdersShipLineItemsRequest"
22822	//   },
22823	//   "response": {
22824	//     "$ref": "OrdersShipLineItemsResponse"
22825	//   },
22826	//   "scopes": [
22827	//     "https://www.googleapis.com/auth/content"
22828	//   ]
22829	// }
22830
22831}
22832
22833// method id "content.orders.updatelineitemshippingdetails":
22834
22835type OrdersUpdatelineitemshippingdetailsCall struct {
22836	s                                          *APIService
22837	merchantId                                 uint64
22838	orderId                                    string
22839	ordersupdatelineitemshippingdetailsrequest *OrdersUpdateLineItemShippingDetailsRequest
22840	urlParams_                                 gensupport.URLParams
22841	ctx_                                       context.Context
22842	header_                                    http.Header
22843}
22844
22845// Updatelineitemshippingdetails: Updates ship by and delivery by dates
22846// for a line item.
22847func (r *OrdersService) Updatelineitemshippingdetails(merchantId uint64, orderId string, ordersupdatelineitemshippingdetailsrequest *OrdersUpdateLineItemShippingDetailsRequest) *OrdersUpdatelineitemshippingdetailsCall {
22848	c := &OrdersUpdatelineitemshippingdetailsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22849	c.merchantId = merchantId
22850	c.orderId = orderId
22851	c.ordersupdatelineitemshippingdetailsrequest = ordersupdatelineitemshippingdetailsrequest
22852	return c
22853}
22854
22855// Fields allows partial responses to be retrieved. See
22856// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22857// for more information.
22858func (c *OrdersUpdatelineitemshippingdetailsCall) Fields(s ...googleapi.Field) *OrdersUpdatelineitemshippingdetailsCall {
22859	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22860	return c
22861}
22862
22863// Context sets the context to be used in this call's Do method. Any
22864// pending HTTP request will be aborted if the provided context is
22865// canceled.
22866func (c *OrdersUpdatelineitemshippingdetailsCall) Context(ctx context.Context) *OrdersUpdatelineitemshippingdetailsCall {
22867	c.ctx_ = ctx
22868	return c
22869}
22870
22871// Header returns an http.Header that can be modified by the caller to
22872// add HTTP headers to the request.
22873func (c *OrdersUpdatelineitemshippingdetailsCall) Header() http.Header {
22874	if c.header_ == nil {
22875		c.header_ = make(http.Header)
22876	}
22877	return c.header_
22878}
22879
22880func (c *OrdersUpdatelineitemshippingdetailsCall) doRequest(alt string) (*http.Response, error) {
22881	reqHeaders := make(http.Header)
22882	for k, v := range c.header_ {
22883		reqHeaders[k] = v
22884	}
22885	reqHeaders.Set("User-Agent", c.s.userAgent())
22886	var body io.Reader = nil
22887	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersupdatelineitemshippingdetailsrequest)
22888	if err != nil {
22889		return nil, err
22890	}
22891	reqHeaders.Set("Content-Type", "application/json")
22892	c.urlParams_.Set("alt", alt)
22893	c.urlParams_.Set("prettyPrint", "false")
22894	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/updateLineItemShippingDetails")
22895	urls += "?" + c.urlParams_.Encode()
22896	req, err := http.NewRequest("POST", urls, body)
22897	if err != nil {
22898		return nil, err
22899	}
22900	req.Header = reqHeaders
22901	googleapi.Expand(req.URL, map[string]string{
22902		"merchantId": strconv.FormatUint(c.merchantId, 10),
22903		"orderId":    c.orderId,
22904	})
22905	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22906}
22907
22908// Do executes the "content.orders.updatelineitemshippingdetails" call.
22909// Exactly one of *OrdersUpdateLineItemShippingDetailsResponse or error
22910// will be non-nil. Any non-2xx status code is an error. Response
22911// headers are in either
22912// *OrdersUpdateLineItemShippingDetailsResponse.ServerResponse.Header or
22913// (if a response was returned at all) in
22914// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
22915// whether the returned error was because http.StatusNotModified was
22916// returned.
22917func (c *OrdersUpdatelineitemshippingdetailsCall) Do(opts ...googleapi.CallOption) (*OrdersUpdateLineItemShippingDetailsResponse, error) {
22918	gensupport.SetOptions(c.urlParams_, opts...)
22919	res, err := c.doRequest("json")
22920	if res != nil && res.StatusCode == http.StatusNotModified {
22921		if res.Body != nil {
22922			res.Body.Close()
22923		}
22924		return nil, &googleapi.Error{
22925			Code:   res.StatusCode,
22926			Header: res.Header,
22927		}
22928	}
22929	if err != nil {
22930		return nil, err
22931	}
22932	defer googleapi.CloseBody(res)
22933	if err := googleapi.CheckResponse(res); err != nil {
22934		return nil, err
22935	}
22936	ret := &OrdersUpdateLineItemShippingDetailsResponse{
22937		ServerResponse: googleapi.ServerResponse{
22938			Header:         res.Header,
22939			HTTPStatusCode: res.StatusCode,
22940		},
22941	}
22942	target := &ret
22943	if err := gensupport.DecodeResponse(target, res); err != nil {
22944		return nil, err
22945	}
22946	return ret, nil
22947	// {
22948	//   "description": "Updates ship by and delivery by dates for a line item.",
22949	//   "httpMethod": "POST",
22950	//   "id": "content.orders.updatelineitemshippingdetails",
22951	//   "parameterOrder": [
22952	//     "merchantId",
22953	//     "orderId"
22954	//   ],
22955	//   "parameters": {
22956	//     "merchantId": {
22957	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
22958	//       "format": "uint64",
22959	//       "location": "path",
22960	//       "required": true,
22961	//       "type": "string"
22962	//     },
22963	//     "orderId": {
22964	//       "description": "The ID of the order.",
22965	//       "location": "path",
22966	//       "required": true,
22967	//       "type": "string"
22968	//     }
22969	//   },
22970	//   "path": "{merchantId}/orders/{orderId}/updateLineItemShippingDetails",
22971	//   "request": {
22972	//     "$ref": "OrdersUpdateLineItemShippingDetailsRequest"
22973	//   },
22974	//   "response": {
22975	//     "$ref": "OrdersUpdateLineItemShippingDetailsResponse"
22976	//   },
22977	//   "scopes": [
22978	//     "https://www.googleapis.com/auth/content"
22979	//   ]
22980	// }
22981
22982}
22983
22984// method id "content.orders.updatemerchantorderid":
22985
22986type OrdersUpdatemerchantorderidCall struct {
22987	s                                  *APIService
22988	merchantId                         uint64
22989	orderId                            string
22990	ordersupdatemerchantorderidrequest *OrdersUpdateMerchantOrderIdRequest
22991	urlParams_                         gensupport.URLParams
22992	ctx_                               context.Context
22993	header_                            http.Header
22994}
22995
22996// Updatemerchantorderid: Updates the merchant order ID for a given
22997// order.
22998func (r *OrdersService) Updatemerchantorderid(merchantId uint64, orderId string, ordersupdatemerchantorderidrequest *OrdersUpdateMerchantOrderIdRequest) *OrdersUpdatemerchantorderidCall {
22999	c := &OrdersUpdatemerchantorderidCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23000	c.merchantId = merchantId
23001	c.orderId = orderId
23002	c.ordersupdatemerchantorderidrequest = ordersupdatemerchantorderidrequest
23003	return c
23004}
23005
23006// Fields allows partial responses to be retrieved. See
23007// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23008// for more information.
23009func (c *OrdersUpdatemerchantorderidCall) Fields(s ...googleapi.Field) *OrdersUpdatemerchantorderidCall {
23010	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23011	return c
23012}
23013
23014// Context sets the context to be used in this call's Do method. Any
23015// pending HTTP request will be aborted if the provided context is
23016// canceled.
23017func (c *OrdersUpdatemerchantorderidCall) Context(ctx context.Context) *OrdersUpdatemerchantorderidCall {
23018	c.ctx_ = ctx
23019	return c
23020}
23021
23022// Header returns an http.Header that can be modified by the caller to
23023// add HTTP headers to the request.
23024func (c *OrdersUpdatemerchantorderidCall) Header() http.Header {
23025	if c.header_ == nil {
23026		c.header_ = make(http.Header)
23027	}
23028	return c.header_
23029}
23030
23031func (c *OrdersUpdatemerchantorderidCall) doRequest(alt string) (*http.Response, error) {
23032	reqHeaders := make(http.Header)
23033	for k, v := range c.header_ {
23034		reqHeaders[k] = v
23035	}
23036	reqHeaders.Set("User-Agent", c.s.userAgent())
23037	var body io.Reader = nil
23038	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersupdatemerchantorderidrequest)
23039	if err != nil {
23040		return nil, err
23041	}
23042	reqHeaders.Set("Content-Type", "application/json")
23043	c.urlParams_.Set("alt", alt)
23044	c.urlParams_.Set("prettyPrint", "false")
23045	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/updateMerchantOrderId")
23046	urls += "?" + c.urlParams_.Encode()
23047	req, err := http.NewRequest("POST", urls, body)
23048	if err != nil {
23049		return nil, err
23050	}
23051	req.Header = reqHeaders
23052	googleapi.Expand(req.URL, map[string]string{
23053		"merchantId": strconv.FormatUint(c.merchantId, 10),
23054		"orderId":    c.orderId,
23055	})
23056	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23057}
23058
23059// Do executes the "content.orders.updatemerchantorderid" call.
23060// Exactly one of *OrdersUpdateMerchantOrderIdResponse or error will be
23061// non-nil. Any non-2xx status code is an error. Response headers are in
23062// either *OrdersUpdateMerchantOrderIdResponse.ServerResponse.Header or
23063// (if a response was returned at all) in
23064// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
23065// whether the returned error was because http.StatusNotModified was
23066// returned.
23067func (c *OrdersUpdatemerchantorderidCall) Do(opts ...googleapi.CallOption) (*OrdersUpdateMerchantOrderIdResponse, error) {
23068	gensupport.SetOptions(c.urlParams_, opts...)
23069	res, err := c.doRequest("json")
23070	if res != nil && res.StatusCode == http.StatusNotModified {
23071		if res.Body != nil {
23072			res.Body.Close()
23073		}
23074		return nil, &googleapi.Error{
23075			Code:   res.StatusCode,
23076			Header: res.Header,
23077		}
23078	}
23079	if err != nil {
23080		return nil, err
23081	}
23082	defer googleapi.CloseBody(res)
23083	if err := googleapi.CheckResponse(res); err != nil {
23084		return nil, err
23085	}
23086	ret := &OrdersUpdateMerchantOrderIdResponse{
23087		ServerResponse: googleapi.ServerResponse{
23088			Header:         res.Header,
23089			HTTPStatusCode: res.StatusCode,
23090		},
23091	}
23092	target := &ret
23093	if err := gensupport.DecodeResponse(target, res); err != nil {
23094		return nil, err
23095	}
23096	return ret, nil
23097	// {
23098	//   "description": "Updates the merchant order ID for a given order.",
23099	//   "httpMethod": "POST",
23100	//   "id": "content.orders.updatemerchantorderid",
23101	//   "parameterOrder": [
23102	//     "merchantId",
23103	//     "orderId"
23104	//   ],
23105	//   "parameters": {
23106	//     "merchantId": {
23107	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
23108	//       "format": "uint64",
23109	//       "location": "path",
23110	//       "required": true,
23111	//       "type": "string"
23112	//     },
23113	//     "orderId": {
23114	//       "description": "The ID of the order.",
23115	//       "location": "path",
23116	//       "required": true,
23117	//       "type": "string"
23118	//     }
23119	//   },
23120	//   "path": "{merchantId}/orders/{orderId}/updateMerchantOrderId",
23121	//   "request": {
23122	//     "$ref": "OrdersUpdateMerchantOrderIdRequest"
23123	//   },
23124	//   "response": {
23125	//     "$ref": "OrdersUpdateMerchantOrderIdResponse"
23126	//   },
23127	//   "scopes": [
23128	//     "https://www.googleapis.com/auth/content"
23129	//   ]
23130	// }
23131
23132}
23133
23134// method id "content.orders.updateshipment":
23135
23136type OrdersUpdateshipmentCall struct {
23137	s                           *APIService
23138	merchantId                  uint64
23139	orderId                     string
23140	ordersupdateshipmentrequest *OrdersUpdateShipmentRequest
23141	urlParams_                  gensupport.URLParams
23142	ctx_                        context.Context
23143	header_                     http.Header
23144}
23145
23146// Updateshipment: Updates a shipment's status, carrier, and/or tracking
23147// ID.
23148func (r *OrdersService) Updateshipment(merchantId uint64, orderId string, ordersupdateshipmentrequest *OrdersUpdateShipmentRequest) *OrdersUpdateshipmentCall {
23149	c := &OrdersUpdateshipmentCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23150	c.merchantId = merchantId
23151	c.orderId = orderId
23152	c.ordersupdateshipmentrequest = ordersupdateshipmentrequest
23153	return c
23154}
23155
23156// Fields allows partial responses to be retrieved. See
23157// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23158// for more information.
23159func (c *OrdersUpdateshipmentCall) Fields(s ...googleapi.Field) *OrdersUpdateshipmentCall {
23160	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23161	return c
23162}
23163
23164// Context sets the context to be used in this call's Do method. Any
23165// pending HTTP request will be aborted if the provided context is
23166// canceled.
23167func (c *OrdersUpdateshipmentCall) Context(ctx context.Context) *OrdersUpdateshipmentCall {
23168	c.ctx_ = ctx
23169	return c
23170}
23171
23172// Header returns an http.Header that can be modified by the caller to
23173// add HTTP headers to the request.
23174func (c *OrdersUpdateshipmentCall) Header() http.Header {
23175	if c.header_ == nil {
23176		c.header_ = make(http.Header)
23177	}
23178	return c.header_
23179}
23180
23181func (c *OrdersUpdateshipmentCall) doRequest(alt string) (*http.Response, error) {
23182	reqHeaders := make(http.Header)
23183	for k, v := range c.header_ {
23184		reqHeaders[k] = v
23185	}
23186	reqHeaders.Set("User-Agent", c.s.userAgent())
23187	var body io.Reader = nil
23188	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersupdateshipmentrequest)
23189	if err != nil {
23190		return nil, err
23191	}
23192	reqHeaders.Set("Content-Type", "application/json")
23193	c.urlParams_.Set("alt", alt)
23194	c.urlParams_.Set("prettyPrint", "false")
23195	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/updateShipment")
23196	urls += "?" + c.urlParams_.Encode()
23197	req, err := http.NewRequest("POST", urls, body)
23198	if err != nil {
23199		return nil, err
23200	}
23201	req.Header = reqHeaders
23202	googleapi.Expand(req.URL, map[string]string{
23203		"merchantId": strconv.FormatUint(c.merchantId, 10),
23204		"orderId":    c.orderId,
23205	})
23206	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23207}
23208
23209// Do executes the "content.orders.updateshipment" call.
23210// Exactly one of *OrdersUpdateShipmentResponse or error will be
23211// non-nil. Any non-2xx status code is an error. Response headers are in
23212// either *OrdersUpdateShipmentResponse.ServerResponse.Header or (if a
23213// response was returned at all) in error.(*googleapi.Error).Header. Use
23214// googleapi.IsNotModified to check whether the returned error was
23215// because http.StatusNotModified was returned.
23216func (c *OrdersUpdateshipmentCall) Do(opts ...googleapi.CallOption) (*OrdersUpdateShipmentResponse, error) {
23217	gensupport.SetOptions(c.urlParams_, opts...)
23218	res, err := c.doRequest("json")
23219	if res != nil && res.StatusCode == http.StatusNotModified {
23220		if res.Body != nil {
23221			res.Body.Close()
23222		}
23223		return nil, &googleapi.Error{
23224			Code:   res.StatusCode,
23225			Header: res.Header,
23226		}
23227	}
23228	if err != nil {
23229		return nil, err
23230	}
23231	defer googleapi.CloseBody(res)
23232	if err := googleapi.CheckResponse(res); err != nil {
23233		return nil, err
23234	}
23235	ret := &OrdersUpdateShipmentResponse{
23236		ServerResponse: googleapi.ServerResponse{
23237			Header:         res.Header,
23238			HTTPStatusCode: res.StatusCode,
23239		},
23240	}
23241	target := &ret
23242	if err := gensupport.DecodeResponse(target, res); err != nil {
23243		return nil, err
23244	}
23245	return ret, nil
23246	// {
23247	//   "description": "Updates a shipment's status, carrier, and/or tracking ID.",
23248	//   "httpMethod": "POST",
23249	//   "id": "content.orders.updateshipment",
23250	//   "parameterOrder": [
23251	//     "merchantId",
23252	//     "orderId"
23253	//   ],
23254	//   "parameters": {
23255	//     "merchantId": {
23256	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
23257	//       "format": "uint64",
23258	//       "location": "path",
23259	//       "required": true,
23260	//       "type": "string"
23261	//     },
23262	//     "orderId": {
23263	//       "description": "The ID of the order.",
23264	//       "location": "path",
23265	//       "required": true,
23266	//       "type": "string"
23267	//     }
23268	//   },
23269	//   "path": "{merchantId}/orders/{orderId}/updateShipment",
23270	//   "request": {
23271	//     "$ref": "OrdersUpdateShipmentRequest"
23272	//   },
23273	//   "response": {
23274	//     "$ref": "OrdersUpdateShipmentResponse"
23275	//   },
23276	//   "scopes": [
23277	//     "https://www.googleapis.com/auth/content"
23278	//   ]
23279	// }
23280
23281}
23282
23283// method id "content.pos.custombatch":
23284
23285type PosCustombatchCall struct {
23286	s                     *APIService
23287	poscustombatchrequest *PosCustomBatchRequest
23288	urlParams_            gensupport.URLParams
23289	ctx_                  context.Context
23290	header_               http.Header
23291}
23292
23293// Custombatch: Batches multiple POS-related calls in a single request.
23294func (r *PosService) Custombatch(poscustombatchrequest *PosCustomBatchRequest) *PosCustombatchCall {
23295	c := &PosCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23296	c.poscustombatchrequest = poscustombatchrequest
23297	return c
23298}
23299
23300// DryRun sets the optional parameter "dryRun": Flag to simulate a
23301// request like in a live environment. If set to true, dry-run mode
23302// checks the validity of the request and returns errors (if any).
23303func (c *PosCustombatchCall) DryRun(dryRun bool) *PosCustombatchCall {
23304	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
23305	return c
23306}
23307
23308// Fields allows partial responses to be retrieved. See
23309// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23310// for more information.
23311func (c *PosCustombatchCall) Fields(s ...googleapi.Field) *PosCustombatchCall {
23312	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23313	return c
23314}
23315
23316// Context sets the context to be used in this call's Do method. Any
23317// pending HTTP request will be aborted if the provided context is
23318// canceled.
23319func (c *PosCustombatchCall) Context(ctx context.Context) *PosCustombatchCall {
23320	c.ctx_ = ctx
23321	return c
23322}
23323
23324// Header returns an http.Header that can be modified by the caller to
23325// add HTTP headers to the request.
23326func (c *PosCustombatchCall) Header() http.Header {
23327	if c.header_ == nil {
23328		c.header_ = make(http.Header)
23329	}
23330	return c.header_
23331}
23332
23333func (c *PosCustombatchCall) doRequest(alt string) (*http.Response, error) {
23334	reqHeaders := make(http.Header)
23335	for k, v := range c.header_ {
23336		reqHeaders[k] = v
23337	}
23338	reqHeaders.Set("User-Agent", c.s.userAgent())
23339	var body io.Reader = nil
23340	body, err := googleapi.WithoutDataWrapper.JSONReader(c.poscustombatchrequest)
23341	if err != nil {
23342		return nil, err
23343	}
23344	reqHeaders.Set("Content-Type", "application/json")
23345	c.urlParams_.Set("alt", alt)
23346	c.urlParams_.Set("prettyPrint", "false")
23347	urls := googleapi.ResolveRelative(c.s.BasePath, "pos/batch")
23348	urls += "?" + c.urlParams_.Encode()
23349	req, err := http.NewRequest("POST", urls, body)
23350	if err != nil {
23351		return nil, err
23352	}
23353	req.Header = reqHeaders
23354	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23355}
23356
23357// Do executes the "content.pos.custombatch" call.
23358// Exactly one of *PosCustomBatchResponse or error will be non-nil. Any
23359// non-2xx status code is an error. Response headers are in either
23360// *PosCustomBatchResponse.ServerResponse.Header or (if a response was
23361// returned at all) in error.(*googleapi.Error).Header. Use
23362// googleapi.IsNotModified to check whether the returned error was
23363// because http.StatusNotModified was returned.
23364func (c *PosCustombatchCall) Do(opts ...googleapi.CallOption) (*PosCustomBatchResponse, error) {
23365	gensupport.SetOptions(c.urlParams_, opts...)
23366	res, err := c.doRequest("json")
23367	if res != nil && res.StatusCode == http.StatusNotModified {
23368		if res.Body != nil {
23369			res.Body.Close()
23370		}
23371		return nil, &googleapi.Error{
23372			Code:   res.StatusCode,
23373			Header: res.Header,
23374		}
23375	}
23376	if err != nil {
23377		return nil, err
23378	}
23379	defer googleapi.CloseBody(res)
23380	if err := googleapi.CheckResponse(res); err != nil {
23381		return nil, err
23382	}
23383	ret := &PosCustomBatchResponse{
23384		ServerResponse: googleapi.ServerResponse{
23385			Header:         res.Header,
23386			HTTPStatusCode: res.StatusCode,
23387		},
23388	}
23389	target := &ret
23390	if err := gensupport.DecodeResponse(target, res); err != nil {
23391		return nil, err
23392	}
23393	return ret, nil
23394	// {
23395	//   "description": "Batches multiple POS-related calls in a single request.",
23396	//   "httpMethod": "POST",
23397	//   "id": "content.pos.custombatch",
23398	//   "parameters": {
23399	//     "dryRun": {
23400	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
23401	//       "location": "query",
23402	//       "type": "boolean"
23403	//     }
23404	//   },
23405	//   "path": "pos/batch",
23406	//   "request": {
23407	//     "$ref": "PosCustomBatchRequest"
23408	//   },
23409	//   "response": {
23410	//     "$ref": "PosCustomBatchResponse"
23411	//   },
23412	//   "scopes": [
23413	//     "https://www.googleapis.com/auth/content"
23414	//   ]
23415	// }
23416
23417}
23418
23419// method id "content.pos.delete":
23420
23421type PosDeleteCall struct {
23422	s                *APIService
23423	merchantId       uint64
23424	targetMerchantId uint64
23425	storeCode        string
23426	urlParams_       gensupport.URLParams
23427	ctx_             context.Context
23428	header_          http.Header
23429}
23430
23431// Delete: Deletes a store for the given merchant.
23432func (r *PosService) Delete(merchantId uint64, targetMerchantId uint64, storeCode string) *PosDeleteCall {
23433	c := &PosDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23434	c.merchantId = merchantId
23435	c.targetMerchantId = targetMerchantId
23436	c.storeCode = storeCode
23437	return c
23438}
23439
23440// DryRun sets the optional parameter "dryRun": Flag to simulate a
23441// request like in a live environment. If set to true, dry-run mode
23442// checks the validity of the request and returns errors (if any).
23443func (c *PosDeleteCall) DryRun(dryRun bool) *PosDeleteCall {
23444	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
23445	return c
23446}
23447
23448// Fields allows partial responses to be retrieved. See
23449// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23450// for more information.
23451func (c *PosDeleteCall) Fields(s ...googleapi.Field) *PosDeleteCall {
23452	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23453	return c
23454}
23455
23456// Context sets the context to be used in this call's Do method. Any
23457// pending HTTP request will be aborted if the provided context is
23458// canceled.
23459func (c *PosDeleteCall) Context(ctx context.Context) *PosDeleteCall {
23460	c.ctx_ = ctx
23461	return c
23462}
23463
23464// Header returns an http.Header that can be modified by the caller to
23465// add HTTP headers to the request.
23466func (c *PosDeleteCall) Header() http.Header {
23467	if c.header_ == nil {
23468		c.header_ = make(http.Header)
23469	}
23470	return c.header_
23471}
23472
23473func (c *PosDeleteCall) doRequest(alt string) (*http.Response, error) {
23474	reqHeaders := make(http.Header)
23475	for k, v := range c.header_ {
23476		reqHeaders[k] = v
23477	}
23478	reqHeaders.Set("User-Agent", c.s.userAgent())
23479	var body io.Reader = nil
23480	c.urlParams_.Set("alt", alt)
23481	c.urlParams_.Set("prettyPrint", "false")
23482	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/store/{storeCode}")
23483	urls += "?" + c.urlParams_.Encode()
23484	req, err := http.NewRequest("DELETE", urls, body)
23485	if err != nil {
23486		return nil, err
23487	}
23488	req.Header = reqHeaders
23489	googleapi.Expand(req.URL, map[string]string{
23490		"merchantId":       strconv.FormatUint(c.merchantId, 10),
23491		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
23492		"storeCode":        c.storeCode,
23493	})
23494	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23495}
23496
23497// Do executes the "content.pos.delete" call.
23498func (c *PosDeleteCall) Do(opts ...googleapi.CallOption) error {
23499	gensupport.SetOptions(c.urlParams_, opts...)
23500	res, err := c.doRequest("json")
23501	if err != nil {
23502		return err
23503	}
23504	defer googleapi.CloseBody(res)
23505	if err := googleapi.CheckResponse(res); err != nil {
23506		return err
23507	}
23508	return nil
23509	// {
23510	//   "description": "Deletes a store for the given merchant.",
23511	//   "httpMethod": "DELETE",
23512	//   "id": "content.pos.delete",
23513	//   "parameterOrder": [
23514	//     "merchantId",
23515	//     "targetMerchantId",
23516	//     "storeCode"
23517	//   ],
23518	//   "parameters": {
23519	//     "dryRun": {
23520	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
23521	//       "location": "query",
23522	//       "type": "boolean"
23523	//     },
23524	//     "merchantId": {
23525	//       "description": "The ID of the POS or inventory data provider.",
23526	//       "format": "uint64",
23527	//       "location": "path",
23528	//       "required": true,
23529	//       "type": "string"
23530	//     },
23531	//     "storeCode": {
23532	//       "description": "A store code that is unique per merchant.",
23533	//       "location": "path",
23534	//       "required": true,
23535	//       "type": "string"
23536	//     },
23537	//     "targetMerchantId": {
23538	//       "description": "The ID of the target merchant.",
23539	//       "format": "uint64",
23540	//       "location": "path",
23541	//       "required": true,
23542	//       "type": "string"
23543	//     }
23544	//   },
23545	//   "path": "{merchantId}/pos/{targetMerchantId}/store/{storeCode}",
23546	//   "scopes": [
23547	//     "https://www.googleapis.com/auth/content"
23548	//   ]
23549	// }
23550
23551}
23552
23553// method id "content.pos.get":
23554
23555type PosGetCall struct {
23556	s                *APIService
23557	merchantId       uint64
23558	targetMerchantId uint64
23559	storeCode        string
23560	urlParams_       gensupport.URLParams
23561	ifNoneMatch_     string
23562	ctx_             context.Context
23563	header_          http.Header
23564}
23565
23566// Get: Retrieves information about the given store.
23567func (r *PosService) Get(merchantId uint64, targetMerchantId uint64, storeCode string) *PosGetCall {
23568	c := &PosGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23569	c.merchantId = merchantId
23570	c.targetMerchantId = targetMerchantId
23571	c.storeCode = storeCode
23572	return c
23573}
23574
23575// Fields allows partial responses to be retrieved. See
23576// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23577// for more information.
23578func (c *PosGetCall) Fields(s ...googleapi.Field) *PosGetCall {
23579	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23580	return c
23581}
23582
23583// IfNoneMatch sets the optional parameter which makes the operation
23584// fail if the object's ETag matches the given value. This is useful for
23585// getting updates only after the object has changed since the last
23586// request. Use googleapi.IsNotModified to check whether the response
23587// error from Do is the result of In-None-Match.
23588func (c *PosGetCall) IfNoneMatch(entityTag string) *PosGetCall {
23589	c.ifNoneMatch_ = entityTag
23590	return c
23591}
23592
23593// Context sets the context to be used in this call's Do method. Any
23594// pending HTTP request will be aborted if the provided context is
23595// canceled.
23596func (c *PosGetCall) Context(ctx context.Context) *PosGetCall {
23597	c.ctx_ = ctx
23598	return c
23599}
23600
23601// Header returns an http.Header that can be modified by the caller to
23602// add HTTP headers to the request.
23603func (c *PosGetCall) Header() http.Header {
23604	if c.header_ == nil {
23605		c.header_ = make(http.Header)
23606	}
23607	return c.header_
23608}
23609
23610func (c *PosGetCall) doRequest(alt string) (*http.Response, error) {
23611	reqHeaders := make(http.Header)
23612	for k, v := range c.header_ {
23613		reqHeaders[k] = v
23614	}
23615	reqHeaders.Set("User-Agent", c.s.userAgent())
23616	if c.ifNoneMatch_ != "" {
23617		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
23618	}
23619	var body io.Reader = nil
23620	c.urlParams_.Set("alt", alt)
23621	c.urlParams_.Set("prettyPrint", "false")
23622	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/store/{storeCode}")
23623	urls += "?" + c.urlParams_.Encode()
23624	req, err := http.NewRequest("GET", urls, body)
23625	if err != nil {
23626		return nil, err
23627	}
23628	req.Header = reqHeaders
23629	googleapi.Expand(req.URL, map[string]string{
23630		"merchantId":       strconv.FormatUint(c.merchantId, 10),
23631		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
23632		"storeCode":        c.storeCode,
23633	})
23634	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23635}
23636
23637// Do executes the "content.pos.get" call.
23638// Exactly one of *PosStore or error will be non-nil. Any non-2xx status
23639// code is an error. Response headers are in either
23640// *PosStore.ServerResponse.Header or (if a response was returned at
23641// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
23642// to check whether the returned error was because
23643// http.StatusNotModified was returned.
23644func (c *PosGetCall) Do(opts ...googleapi.CallOption) (*PosStore, error) {
23645	gensupport.SetOptions(c.urlParams_, opts...)
23646	res, err := c.doRequest("json")
23647	if res != nil && res.StatusCode == http.StatusNotModified {
23648		if res.Body != nil {
23649			res.Body.Close()
23650		}
23651		return nil, &googleapi.Error{
23652			Code:   res.StatusCode,
23653			Header: res.Header,
23654		}
23655	}
23656	if err != nil {
23657		return nil, err
23658	}
23659	defer googleapi.CloseBody(res)
23660	if err := googleapi.CheckResponse(res); err != nil {
23661		return nil, err
23662	}
23663	ret := &PosStore{
23664		ServerResponse: googleapi.ServerResponse{
23665			Header:         res.Header,
23666			HTTPStatusCode: res.StatusCode,
23667		},
23668	}
23669	target := &ret
23670	if err := gensupport.DecodeResponse(target, res); err != nil {
23671		return nil, err
23672	}
23673	return ret, nil
23674	// {
23675	//   "description": "Retrieves information about the given store.",
23676	//   "httpMethod": "GET",
23677	//   "id": "content.pos.get",
23678	//   "parameterOrder": [
23679	//     "merchantId",
23680	//     "targetMerchantId",
23681	//     "storeCode"
23682	//   ],
23683	//   "parameters": {
23684	//     "merchantId": {
23685	//       "description": "The ID of the POS or inventory data provider.",
23686	//       "format": "uint64",
23687	//       "location": "path",
23688	//       "required": true,
23689	//       "type": "string"
23690	//     },
23691	//     "storeCode": {
23692	//       "description": "A store code that is unique per merchant.",
23693	//       "location": "path",
23694	//       "required": true,
23695	//       "type": "string"
23696	//     },
23697	//     "targetMerchantId": {
23698	//       "description": "The ID of the target merchant.",
23699	//       "format": "uint64",
23700	//       "location": "path",
23701	//       "required": true,
23702	//       "type": "string"
23703	//     }
23704	//   },
23705	//   "path": "{merchantId}/pos/{targetMerchantId}/store/{storeCode}",
23706	//   "response": {
23707	//     "$ref": "PosStore"
23708	//   },
23709	//   "scopes": [
23710	//     "https://www.googleapis.com/auth/content"
23711	//   ]
23712	// }
23713
23714}
23715
23716// method id "content.pos.insert":
23717
23718type PosInsertCall struct {
23719	s                *APIService
23720	merchantId       uint64
23721	targetMerchantId uint64
23722	posstore         *PosStore
23723	urlParams_       gensupport.URLParams
23724	ctx_             context.Context
23725	header_          http.Header
23726}
23727
23728// Insert: Creates a store for the given merchant.
23729func (r *PosService) Insert(merchantId uint64, targetMerchantId uint64, posstore *PosStore) *PosInsertCall {
23730	c := &PosInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23731	c.merchantId = merchantId
23732	c.targetMerchantId = targetMerchantId
23733	c.posstore = posstore
23734	return c
23735}
23736
23737// DryRun sets the optional parameter "dryRun": Flag to simulate a
23738// request like in a live environment. If set to true, dry-run mode
23739// checks the validity of the request and returns errors (if any).
23740func (c *PosInsertCall) DryRun(dryRun bool) *PosInsertCall {
23741	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
23742	return c
23743}
23744
23745// Fields allows partial responses to be retrieved. See
23746// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23747// for more information.
23748func (c *PosInsertCall) Fields(s ...googleapi.Field) *PosInsertCall {
23749	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23750	return c
23751}
23752
23753// Context sets the context to be used in this call's Do method. Any
23754// pending HTTP request will be aborted if the provided context is
23755// canceled.
23756func (c *PosInsertCall) Context(ctx context.Context) *PosInsertCall {
23757	c.ctx_ = ctx
23758	return c
23759}
23760
23761// Header returns an http.Header that can be modified by the caller to
23762// add HTTP headers to the request.
23763func (c *PosInsertCall) Header() http.Header {
23764	if c.header_ == nil {
23765		c.header_ = make(http.Header)
23766	}
23767	return c.header_
23768}
23769
23770func (c *PosInsertCall) doRequest(alt string) (*http.Response, error) {
23771	reqHeaders := make(http.Header)
23772	for k, v := range c.header_ {
23773		reqHeaders[k] = v
23774	}
23775	reqHeaders.Set("User-Agent", c.s.userAgent())
23776	var body io.Reader = nil
23777	body, err := googleapi.WithoutDataWrapper.JSONReader(c.posstore)
23778	if err != nil {
23779		return nil, err
23780	}
23781	reqHeaders.Set("Content-Type", "application/json")
23782	c.urlParams_.Set("alt", alt)
23783	c.urlParams_.Set("prettyPrint", "false")
23784	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/store")
23785	urls += "?" + c.urlParams_.Encode()
23786	req, err := http.NewRequest("POST", urls, body)
23787	if err != nil {
23788		return nil, err
23789	}
23790	req.Header = reqHeaders
23791	googleapi.Expand(req.URL, map[string]string{
23792		"merchantId":       strconv.FormatUint(c.merchantId, 10),
23793		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
23794	})
23795	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23796}
23797
23798// Do executes the "content.pos.insert" call.
23799// Exactly one of *PosStore or error will be non-nil. Any non-2xx status
23800// code is an error. Response headers are in either
23801// *PosStore.ServerResponse.Header or (if a response was returned at
23802// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
23803// to check whether the returned error was because
23804// http.StatusNotModified was returned.
23805func (c *PosInsertCall) Do(opts ...googleapi.CallOption) (*PosStore, error) {
23806	gensupport.SetOptions(c.urlParams_, opts...)
23807	res, err := c.doRequest("json")
23808	if res != nil && res.StatusCode == http.StatusNotModified {
23809		if res.Body != nil {
23810			res.Body.Close()
23811		}
23812		return nil, &googleapi.Error{
23813			Code:   res.StatusCode,
23814			Header: res.Header,
23815		}
23816	}
23817	if err != nil {
23818		return nil, err
23819	}
23820	defer googleapi.CloseBody(res)
23821	if err := googleapi.CheckResponse(res); err != nil {
23822		return nil, err
23823	}
23824	ret := &PosStore{
23825		ServerResponse: googleapi.ServerResponse{
23826			Header:         res.Header,
23827			HTTPStatusCode: res.StatusCode,
23828		},
23829	}
23830	target := &ret
23831	if err := gensupport.DecodeResponse(target, res); err != nil {
23832		return nil, err
23833	}
23834	return ret, nil
23835	// {
23836	//   "description": "Creates a store for the given merchant.",
23837	//   "httpMethod": "POST",
23838	//   "id": "content.pos.insert",
23839	//   "parameterOrder": [
23840	//     "merchantId",
23841	//     "targetMerchantId"
23842	//   ],
23843	//   "parameters": {
23844	//     "dryRun": {
23845	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
23846	//       "location": "query",
23847	//       "type": "boolean"
23848	//     },
23849	//     "merchantId": {
23850	//       "description": "The ID of the POS or inventory data provider.",
23851	//       "format": "uint64",
23852	//       "location": "path",
23853	//       "required": true,
23854	//       "type": "string"
23855	//     },
23856	//     "targetMerchantId": {
23857	//       "description": "The ID of the target merchant.",
23858	//       "format": "uint64",
23859	//       "location": "path",
23860	//       "required": true,
23861	//       "type": "string"
23862	//     }
23863	//   },
23864	//   "path": "{merchantId}/pos/{targetMerchantId}/store",
23865	//   "request": {
23866	//     "$ref": "PosStore"
23867	//   },
23868	//   "response": {
23869	//     "$ref": "PosStore"
23870	//   },
23871	//   "scopes": [
23872	//     "https://www.googleapis.com/auth/content"
23873	//   ]
23874	// }
23875
23876}
23877
23878// method id "content.pos.inventory":
23879
23880type PosInventoryCall struct {
23881	s                   *APIService
23882	merchantId          uint64
23883	targetMerchantId    uint64
23884	posinventoryrequest *PosInventoryRequest
23885	urlParams_          gensupport.URLParams
23886	ctx_                context.Context
23887	header_             http.Header
23888}
23889
23890// Inventory: Submit inventory for the given merchant.
23891func (r *PosService) Inventory(merchantId uint64, targetMerchantId uint64, posinventoryrequest *PosInventoryRequest) *PosInventoryCall {
23892	c := &PosInventoryCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23893	c.merchantId = merchantId
23894	c.targetMerchantId = targetMerchantId
23895	c.posinventoryrequest = posinventoryrequest
23896	return c
23897}
23898
23899// DryRun sets the optional parameter "dryRun": Flag to simulate a
23900// request like in a live environment. If set to true, dry-run mode
23901// checks the validity of the request and returns errors (if any).
23902func (c *PosInventoryCall) DryRun(dryRun bool) *PosInventoryCall {
23903	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
23904	return c
23905}
23906
23907// Fields allows partial responses to be retrieved. See
23908// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23909// for more information.
23910func (c *PosInventoryCall) Fields(s ...googleapi.Field) *PosInventoryCall {
23911	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23912	return c
23913}
23914
23915// Context sets the context to be used in this call's Do method. Any
23916// pending HTTP request will be aborted if the provided context is
23917// canceled.
23918func (c *PosInventoryCall) Context(ctx context.Context) *PosInventoryCall {
23919	c.ctx_ = ctx
23920	return c
23921}
23922
23923// Header returns an http.Header that can be modified by the caller to
23924// add HTTP headers to the request.
23925func (c *PosInventoryCall) Header() http.Header {
23926	if c.header_ == nil {
23927		c.header_ = make(http.Header)
23928	}
23929	return c.header_
23930}
23931
23932func (c *PosInventoryCall) doRequest(alt string) (*http.Response, error) {
23933	reqHeaders := make(http.Header)
23934	for k, v := range c.header_ {
23935		reqHeaders[k] = v
23936	}
23937	reqHeaders.Set("User-Agent", c.s.userAgent())
23938	var body io.Reader = nil
23939	body, err := googleapi.WithoutDataWrapper.JSONReader(c.posinventoryrequest)
23940	if err != nil {
23941		return nil, err
23942	}
23943	reqHeaders.Set("Content-Type", "application/json")
23944	c.urlParams_.Set("alt", alt)
23945	c.urlParams_.Set("prettyPrint", "false")
23946	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/inventory")
23947	urls += "?" + c.urlParams_.Encode()
23948	req, err := http.NewRequest("POST", urls, body)
23949	if err != nil {
23950		return nil, err
23951	}
23952	req.Header = reqHeaders
23953	googleapi.Expand(req.URL, map[string]string{
23954		"merchantId":       strconv.FormatUint(c.merchantId, 10),
23955		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
23956	})
23957	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23958}
23959
23960// Do executes the "content.pos.inventory" call.
23961// Exactly one of *PosInventoryResponse or error will be non-nil. Any
23962// non-2xx status code is an error. Response headers are in either
23963// *PosInventoryResponse.ServerResponse.Header or (if a response was
23964// returned at all) in error.(*googleapi.Error).Header. Use
23965// googleapi.IsNotModified to check whether the returned error was
23966// because http.StatusNotModified was returned.
23967func (c *PosInventoryCall) Do(opts ...googleapi.CallOption) (*PosInventoryResponse, error) {
23968	gensupport.SetOptions(c.urlParams_, opts...)
23969	res, err := c.doRequest("json")
23970	if res != nil && res.StatusCode == http.StatusNotModified {
23971		if res.Body != nil {
23972			res.Body.Close()
23973		}
23974		return nil, &googleapi.Error{
23975			Code:   res.StatusCode,
23976			Header: res.Header,
23977		}
23978	}
23979	if err != nil {
23980		return nil, err
23981	}
23982	defer googleapi.CloseBody(res)
23983	if err := googleapi.CheckResponse(res); err != nil {
23984		return nil, err
23985	}
23986	ret := &PosInventoryResponse{
23987		ServerResponse: googleapi.ServerResponse{
23988			Header:         res.Header,
23989			HTTPStatusCode: res.StatusCode,
23990		},
23991	}
23992	target := &ret
23993	if err := gensupport.DecodeResponse(target, res); err != nil {
23994		return nil, err
23995	}
23996	return ret, nil
23997	// {
23998	//   "description": "Submit inventory for the given merchant.",
23999	//   "httpMethod": "POST",
24000	//   "id": "content.pos.inventory",
24001	//   "parameterOrder": [
24002	//     "merchantId",
24003	//     "targetMerchantId"
24004	//   ],
24005	//   "parameters": {
24006	//     "dryRun": {
24007	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
24008	//       "location": "query",
24009	//       "type": "boolean"
24010	//     },
24011	//     "merchantId": {
24012	//       "description": "The ID of the POS or inventory data provider.",
24013	//       "format": "uint64",
24014	//       "location": "path",
24015	//       "required": true,
24016	//       "type": "string"
24017	//     },
24018	//     "targetMerchantId": {
24019	//       "description": "The ID of the target merchant.",
24020	//       "format": "uint64",
24021	//       "location": "path",
24022	//       "required": true,
24023	//       "type": "string"
24024	//     }
24025	//   },
24026	//   "path": "{merchantId}/pos/{targetMerchantId}/inventory",
24027	//   "request": {
24028	//     "$ref": "PosInventoryRequest"
24029	//   },
24030	//   "response": {
24031	//     "$ref": "PosInventoryResponse"
24032	//   },
24033	//   "scopes": [
24034	//     "https://www.googleapis.com/auth/content"
24035	//   ]
24036	// }
24037
24038}
24039
24040// method id "content.pos.list":
24041
24042type PosListCall struct {
24043	s                *APIService
24044	merchantId       uint64
24045	targetMerchantId uint64
24046	urlParams_       gensupport.URLParams
24047	ifNoneMatch_     string
24048	ctx_             context.Context
24049	header_          http.Header
24050}
24051
24052// List: Lists the stores of the target merchant.
24053func (r *PosService) List(merchantId uint64, targetMerchantId uint64) *PosListCall {
24054	c := &PosListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24055	c.merchantId = merchantId
24056	c.targetMerchantId = targetMerchantId
24057	return c
24058}
24059
24060// Fields allows partial responses to be retrieved. See
24061// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24062// for more information.
24063func (c *PosListCall) Fields(s ...googleapi.Field) *PosListCall {
24064	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24065	return c
24066}
24067
24068// IfNoneMatch sets the optional parameter which makes the operation
24069// fail if the object's ETag matches the given value. This is useful for
24070// getting updates only after the object has changed since the last
24071// request. Use googleapi.IsNotModified to check whether the response
24072// error from Do is the result of In-None-Match.
24073func (c *PosListCall) IfNoneMatch(entityTag string) *PosListCall {
24074	c.ifNoneMatch_ = entityTag
24075	return c
24076}
24077
24078// Context sets the context to be used in this call's Do method. Any
24079// pending HTTP request will be aborted if the provided context is
24080// canceled.
24081func (c *PosListCall) Context(ctx context.Context) *PosListCall {
24082	c.ctx_ = ctx
24083	return c
24084}
24085
24086// Header returns an http.Header that can be modified by the caller to
24087// add HTTP headers to the request.
24088func (c *PosListCall) Header() http.Header {
24089	if c.header_ == nil {
24090		c.header_ = make(http.Header)
24091	}
24092	return c.header_
24093}
24094
24095func (c *PosListCall) doRequest(alt string) (*http.Response, error) {
24096	reqHeaders := make(http.Header)
24097	for k, v := range c.header_ {
24098		reqHeaders[k] = v
24099	}
24100	reqHeaders.Set("User-Agent", c.s.userAgent())
24101	if c.ifNoneMatch_ != "" {
24102		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
24103	}
24104	var body io.Reader = nil
24105	c.urlParams_.Set("alt", alt)
24106	c.urlParams_.Set("prettyPrint", "false")
24107	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/store")
24108	urls += "?" + c.urlParams_.Encode()
24109	req, err := http.NewRequest("GET", urls, body)
24110	if err != nil {
24111		return nil, err
24112	}
24113	req.Header = reqHeaders
24114	googleapi.Expand(req.URL, map[string]string{
24115		"merchantId":       strconv.FormatUint(c.merchantId, 10),
24116		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
24117	})
24118	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24119}
24120
24121// Do executes the "content.pos.list" call.
24122// Exactly one of *PosListResponse or error will be non-nil. Any non-2xx
24123// status code is an error. Response headers are in either
24124// *PosListResponse.ServerResponse.Header or (if a response was returned
24125// at all) in error.(*googleapi.Error).Header. Use
24126// googleapi.IsNotModified to check whether the returned error was
24127// because http.StatusNotModified was returned.
24128func (c *PosListCall) Do(opts ...googleapi.CallOption) (*PosListResponse, error) {
24129	gensupport.SetOptions(c.urlParams_, opts...)
24130	res, err := c.doRequest("json")
24131	if res != nil && res.StatusCode == http.StatusNotModified {
24132		if res.Body != nil {
24133			res.Body.Close()
24134		}
24135		return nil, &googleapi.Error{
24136			Code:   res.StatusCode,
24137			Header: res.Header,
24138		}
24139	}
24140	if err != nil {
24141		return nil, err
24142	}
24143	defer googleapi.CloseBody(res)
24144	if err := googleapi.CheckResponse(res); err != nil {
24145		return nil, err
24146	}
24147	ret := &PosListResponse{
24148		ServerResponse: googleapi.ServerResponse{
24149			Header:         res.Header,
24150			HTTPStatusCode: res.StatusCode,
24151		},
24152	}
24153	target := &ret
24154	if err := gensupport.DecodeResponse(target, res); err != nil {
24155		return nil, err
24156	}
24157	return ret, nil
24158	// {
24159	//   "description": "Lists the stores of the target merchant.",
24160	//   "httpMethod": "GET",
24161	//   "id": "content.pos.list",
24162	//   "parameterOrder": [
24163	//     "merchantId",
24164	//     "targetMerchantId"
24165	//   ],
24166	//   "parameters": {
24167	//     "merchantId": {
24168	//       "description": "The ID of the POS or inventory data provider.",
24169	//       "format": "uint64",
24170	//       "location": "path",
24171	//       "required": true,
24172	//       "type": "string"
24173	//     },
24174	//     "targetMerchantId": {
24175	//       "description": "The ID of the target merchant.",
24176	//       "format": "uint64",
24177	//       "location": "path",
24178	//       "required": true,
24179	//       "type": "string"
24180	//     }
24181	//   },
24182	//   "path": "{merchantId}/pos/{targetMerchantId}/store",
24183	//   "response": {
24184	//     "$ref": "PosListResponse"
24185	//   },
24186	//   "scopes": [
24187	//     "https://www.googleapis.com/auth/content"
24188	//   ]
24189	// }
24190
24191}
24192
24193// method id "content.pos.sale":
24194
24195type PosSaleCall struct {
24196	s                *APIService
24197	merchantId       uint64
24198	targetMerchantId uint64
24199	possalerequest   *PosSaleRequest
24200	urlParams_       gensupport.URLParams
24201	ctx_             context.Context
24202	header_          http.Header
24203}
24204
24205// Sale: Submit a sale event for the given merchant.
24206func (r *PosService) Sale(merchantId uint64, targetMerchantId uint64, possalerequest *PosSaleRequest) *PosSaleCall {
24207	c := &PosSaleCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24208	c.merchantId = merchantId
24209	c.targetMerchantId = targetMerchantId
24210	c.possalerequest = possalerequest
24211	return c
24212}
24213
24214// DryRun sets the optional parameter "dryRun": Flag to simulate a
24215// request like in a live environment. If set to true, dry-run mode
24216// checks the validity of the request and returns errors (if any).
24217func (c *PosSaleCall) DryRun(dryRun bool) *PosSaleCall {
24218	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
24219	return c
24220}
24221
24222// Fields allows partial responses to be retrieved. See
24223// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24224// for more information.
24225func (c *PosSaleCall) Fields(s ...googleapi.Field) *PosSaleCall {
24226	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24227	return c
24228}
24229
24230// Context sets the context to be used in this call's Do method. Any
24231// pending HTTP request will be aborted if the provided context is
24232// canceled.
24233func (c *PosSaleCall) Context(ctx context.Context) *PosSaleCall {
24234	c.ctx_ = ctx
24235	return c
24236}
24237
24238// Header returns an http.Header that can be modified by the caller to
24239// add HTTP headers to the request.
24240func (c *PosSaleCall) Header() http.Header {
24241	if c.header_ == nil {
24242		c.header_ = make(http.Header)
24243	}
24244	return c.header_
24245}
24246
24247func (c *PosSaleCall) doRequest(alt string) (*http.Response, error) {
24248	reqHeaders := make(http.Header)
24249	for k, v := range c.header_ {
24250		reqHeaders[k] = v
24251	}
24252	reqHeaders.Set("User-Agent", c.s.userAgent())
24253	var body io.Reader = nil
24254	body, err := googleapi.WithoutDataWrapper.JSONReader(c.possalerequest)
24255	if err != nil {
24256		return nil, err
24257	}
24258	reqHeaders.Set("Content-Type", "application/json")
24259	c.urlParams_.Set("alt", alt)
24260	c.urlParams_.Set("prettyPrint", "false")
24261	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/sale")
24262	urls += "?" + c.urlParams_.Encode()
24263	req, err := http.NewRequest("POST", urls, body)
24264	if err != nil {
24265		return nil, err
24266	}
24267	req.Header = reqHeaders
24268	googleapi.Expand(req.URL, map[string]string{
24269		"merchantId":       strconv.FormatUint(c.merchantId, 10),
24270		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
24271	})
24272	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24273}
24274
24275// Do executes the "content.pos.sale" call.
24276// Exactly one of *PosSaleResponse or error will be non-nil. Any non-2xx
24277// status code is an error. Response headers are in either
24278// *PosSaleResponse.ServerResponse.Header or (if a response was returned
24279// 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 *PosSaleCall) Do(opts ...googleapi.CallOption) (*PosSaleResponse, 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 := &PosSaleResponse{
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": "Submit a sale event for the given merchant.",
24314	//   "httpMethod": "POST",
24315	//   "id": "content.pos.sale",
24316	//   "parameterOrder": [
24317	//     "merchantId",
24318	//     "targetMerchantId"
24319	//   ],
24320	//   "parameters": {
24321	//     "dryRun": {
24322	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
24323	//       "location": "query",
24324	//       "type": "boolean"
24325	//     },
24326	//     "merchantId": {
24327	//       "description": "The ID of the POS or inventory data provider.",
24328	//       "format": "uint64",
24329	//       "location": "path",
24330	//       "required": true,
24331	//       "type": "string"
24332	//     },
24333	//     "targetMerchantId": {
24334	//       "description": "The ID of the target merchant.",
24335	//       "format": "uint64",
24336	//       "location": "path",
24337	//       "required": true,
24338	//       "type": "string"
24339	//     }
24340	//   },
24341	//   "path": "{merchantId}/pos/{targetMerchantId}/sale",
24342	//   "request": {
24343	//     "$ref": "PosSaleRequest"
24344	//   },
24345	//   "response": {
24346	//     "$ref": "PosSaleResponse"
24347	//   },
24348	//   "scopes": [
24349	//     "https://www.googleapis.com/auth/content"
24350	//   ]
24351	// }
24352
24353}
24354
24355// method id "content.products.custombatch":
24356
24357type ProductsCustombatchCall struct {
24358	s                          *APIService
24359	productscustombatchrequest *ProductsCustomBatchRequest
24360	urlParams_                 gensupport.URLParams
24361	ctx_                       context.Context
24362	header_                    http.Header
24363}
24364
24365// Custombatch: Retrieves, inserts, and deletes multiple products in a
24366// single request.
24367func (r *ProductsService) Custombatch(productscustombatchrequest *ProductsCustomBatchRequest) *ProductsCustombatchCall {
24368	c := &ProductsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24369	c.productscustombatchrequest = productscustombatchrequest
24370	return c
24371}
24372
24373// DryRun sets the optional parameter "dryRun": Flag to simulate a
24374// request like in a live environment. If set to true, dry-run mode
24375// checks the validity of the request and returns errors (if any).
24376func (c *ProductsCustombatchCall) DryRun(dryRun bool) *ProductsCustombatchCall {
24377	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
24378	return c
24379}
24380
24381// Fields allows partial responses to be retrieved. See
24382// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24383// for more information.
24384func (c *ProductsCustombatchCall) Fields(s ...googleapi.Field) *ProductsCustombatchCall {
24385	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24386	return c
24387}
24388
24389// Context sets the context to be used in this call's Do method. Any
24390// pending HTTP request will be aborted if the provided context is
24391// canceled.
24392func (c *ProductsCustombatchCall) Context(ctx context.Context) *ProductsCustombatchCall {
24393	c.ctx_ = ctx
24394	return c
24395}
24396
24397// Header returns an http.Header that can be modified by the caller to
24398// add HTTP headers to the request.
24399func (c *ProductsCustombatchCall) Header() http.Header {
24400	if c.header_ == nil {
24401		c.header_ = make(http.Header)
24402	}
24403	return c.header_
24404}
24405
24406func (c *ProductsCustombatchCall) doRequest(alt string) (*http.Response, error) {
24407	reqHeaders := make(http.Header)
24408	for k, v := range c.header_ {
24409		reqHeaders[k] = v
24410	}
24411	reqHeaders.Set("User-Agent", c.s.userAgent())
24412	var body io.Reader = nil
24413	body, err := googleapi.WithoutDataWrapper.JSONReader(c.productscustombatchrequest)
24414	if err != nil {
24415		return nil, err
24416	}
24417	reqHeaders.Set("Content-Type", "application/json")
24418	c.urlParams_.Set("alt", alt)
24419	c.urlParams_.Set("prettyPrint", "false")
24420	urls := googleapi.ResolveRelative(c.s.BasePath, "products/batch")
24421	urls += "?" + c.urlParams_.Encode()
24422	req, err := http.NewRequest("POST", urls, body)
24423	if err != nil {
24424		return nil, err
24425	}
24426	req.Header = reqHeaders
24427	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24428}
24429
24430// Do executes the "content.products.custombatch" call.
24431// Exactly one of *ProductsCustomBatchResponse or error will be non-nil.
24432// Any non-2xx status code is an error. Response headers are in either
24433// *ProductsCustomBatchResponse.ServerResponse.Header or (if a response
24434// was returned at all) in error.(*googleapi.Error).Header. Use
24435// googleapi.IsNotModified to check whether the returned error was
24436// because http.StatusNotModified was returned.
24437func (c *ProductsCustombatchCall) Do(opts ...googleapi.CallOption) (*ProductsCustomBatchResponse, error) {
24438	gensupport.SetOptions(c.urlParams_, opts...)
24439	res, err := c.doRequest("json")
24440	if res != nil && res.StatusCode == http.StatusNotModified {
24441		if res.Body != nil {
24442			res.Body.Close()
24443		}
24444		return nil, &googleapi.Error{
24445			Code:   res.StatusCode,
24446			Header: res.Header,
24447		}
24448	}
24449	if err != nil {
24450		return nil, err
24451	}
24452	defer googleapi.CloseBody(res)
24453	if err := googleapi.CheckResponse(res); err != nil {
24454		return nil, err
24455	}
24456	ret := &ProductsCustomBatchResponse{
24457		ServerResponse: googleapi.ServerResponse{
24458			Header:         res.Header,
24459			HTTPStatusCode: res.StatusCode,
24460		},
24461	}
24462	target := &ret
24463	if err := gensupport.DecodeResponse(target, res); err != nil {
24464		return nil, err
24465	}
24466	return ret, nil
24467	// {
24468	//   "description": "Retrieves, inserts, and deletes multiple products in a single request.",
24469	//   "httpMethod": "POST",
24470	//   "id": "content.products.custombatch",
24471	//   "parameters": {
24472	//     "dryRun": {
24473	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
24474	//       "location": "query",
24475	//       "type": "boolean"
24476	//     }
24477	//   },
24478	//   "path": "products/batch",
24479	//   "request": {
24480	//     "$ref": "ProductsCustomBatchRequest"
24481	//   },
24482	//   "response": {
24483	//     "$ref": "ProductsCustomBatchResponse"
24484	//   },
24485	//   "scopes": [
24486	//     "https://www.googleapis.com/auth/content"
24487	//   ]
24488	// }
24489
24490}
24491
24492// method id "content.products.delete":
24493
24494type ProductsDeleteCall struct {
24495	s          *APIService
24496	merchantId uint64
24497	productId  string
24498	urlParams_ gensupport.URLParams
24499	ctx_       context.Context
24500	header_    http.Header
24501}
24502
24503// Delete: Deletes a product from your Merchant Center account.
24504func (r *ProductsService) Delete(merchantId uint64, productId string) *ProductsDeleteCall {
24505	c := &ProductsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24506	c.merchantId = merchantId
24507	c.productId = productId
24508	return c
24509}
24510
24511// DryRun sets the optional parameter "dryRun": Flag to simulate a
24512// request like in a live environment. If set to true, dry-run mode
24513// checks the validity of the request and returns errors (if any).
24514func (c *ProductsDeleteCall) DryRun(dryRun bool) *ProductsDeleteCall {
24515	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
24516	return c
24517}
24518
24519// Fields allows partial responses to be retrieved. See
24520// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24521// for more information.
24522func (c *ProductsDeleteCall) Fields(s ...googleapi.Field) *ProductsDeleteCall {
24523	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24524	return c
24525}
24526
24527// Context sets the context to be used in this call's Do method. Any
24528// pending HTTP request will be aborted if the provided context is
24529// canceled.
24530func (c *ProductsDeleteCall) Context(ctx context.Context) *ProductsDeleteCall {
24531	c.ctx_ = ctx
24532	return c
24533}
24534
24535// Header returns an http.Header that can be modified by the caller to
24536// add HTTP headers to the request.
24537func (c *ProductsDeleteCall) Header() http.Header {
24538	if c.header_ == nil {
24539		c.header_ = make(http.Header)
24540	}
24541	return c.header_
24542}
24543
24544func (c *ProductsDeleteCall) doRequest(alt string) (*http.Response, error) {
24545	reqHeaders := make(http.Header)
24546	for k, v := range c.header_ {
24547		reqHeaders[k] = v
24548	}
24549	reqHeaders.Set("User-Agent", c.s.userAgent())
24550	var body io.Reader = nil
24551	c.urlParams_.Set("alt", alt)
24552	c.urlParams_.Set("prettyPrint", "false")
24553	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products/{productId}")
24554	urls += "?" + c.urlParams_.Encode()
24555	req, err := http.NewRequest("DELETE", urls, body)
24556	if err != nil {
24557		return nil, err
24558	}
24559	req.Header = reqHeaders
24560	googleapi.Expand(req.URL, map[string]string{
24561		"merchantId": strconv.FormatUint(c.merchantId, 10),
24562		"productId":  c.productId,
24563	})
24564	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24565}
24566
24567// Do executes the "content.products.delete" call.
24568func (c *ProductsDeleteCall) Do(opts ...googleapi.CallOption) error {
24569	gensupport.SetOptions(c.urlParams_, opts...)
24570	res, err := c.doRequest("json")
24571	if err != nil {
24572		return err
24573	}
24574	defer googleapi.CloseBody(res)
24575	if err := googleapi.CheckResponse(res); err != nil {
24576		return err
24577	}
24578	return nil
24579	// {
24580	//   "description": "Deletes a product from your Merchant Center account.",
24581	//   "httpMethod": "DELETE",
24582	//   "id": "content.products.delete",
24583	//   "parameterOrder": [
24584	//     "merchantId",
24585	//     "productId"
24586	//   ],
24587	//   "parameters": {
24588	//     "dryRun": {
24589	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
24590	//       "location": "query",
24591	//       "type": "boolean"
24592	//     },
24593	//     "merchantId": {
24594	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
24595	//       "format": "uint64",
24596	//       "location": "path",
24597	//       "required": true,
24598	//       "type": "string"
24599	//     },
24600	//     "productId": {
24601	//       "description": "The REST ID of the product.",
24602	//       "location": "path",
24603	//       "required": true,
24604	//       "type": "string"
24605	//     }
24606	//   },
24607	//   "path": "{merchantId}/products/{productId}",
24608	//   "scopes": [
24609	//     "https://www.googleapis.com/auth/content"
24610	//   ]
24611	// }
24612
24613}
24614
24615// method id "content.products.get":
24616
24617type ProductsGetCall struct {
24618	s            *APIService
24619	merchantId   uint64
24620	productId    string
24621	urlParams_   gensupport.URLParams
24622	ifNoneMatch_ string
24623	ctx_         context.Context
24624	header_      http.Header
24625}
24626
24627// Get: Retrieves a product from your Merchant Center account.
24628func (r *ProductsService) Get(merchantId uint64, productId string) *ProductsGetCall {
24629	c := &ProductsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24630	c.merchantId = merchantId
24631	c.productId = productId
24632	return c
24633}
24634
24635// Fields allows partial responses to be retrieved. See
24636// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24637// for more information.
24638func (c *ProductsGetCall) Fields(s ...googleapi.Field) *ProductsGetCall {
24639	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24640	return c
24641}
24642
24643// IfNoneMatch sets the optional parameter which makes the operation
24644// fail if the object's ETag matches the given value. This is useful for
24645// getting updates only after the object has changed since the last
24646// request. Use googleapi.IsNotModified to check whether the response
24647// error from Do is the result of In-None-Match.
24648func (c *ProductsGetCall) IfNoneMatch(entityTag string) *ProductsGetCall {
24649	c.ifNoneMatch_ = entityTag
24650	return c
24651}
24652
24653// Context sets the context to be used in this call's Do method. Any
24654// pending HTTP request will be aborted if the provided context is
24655// canceled.
24656func (c *ProductsGetCall) Context(ctx context.Context) *ProductsGetCall {
24657	c.ctx_ = ctx
24658	return c
24659}
24660
24661// Header returns an http.Header that can be modified by the caller to
24662// add HTTP headers to the request.
24663func (c *ProductsGetCall) Header() http.Header {
24664	if c.header_ == nil {
24665		c.header_ = make(http.Header)
24666	}
24667	return c.header_
24668}
24669
24670func (c *ProductsGetCall) doRequest(alt string) (*http.Response, error) {
24671	reqHeaders := make(http.Header)
24672	for k, v := range c.header_ {
24673		reqHeaders[k] = v
24674	}
24675	reqHeaders.Set("User-Agent", c.s.userAgent())
24676	if c.ifNoneMatch_ != "" {
24677		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
24678	}
24679	var body io.Reader = nil
24680	c.urlParams_.Set("alt", alt)
24681	c.urlParams_.Set("prettyPrint", "false")
24682	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products/{productId}")
24683	urls += "?" + c.urlParams_.Encode()
24684	req, err := http.NewRequest("GET", urls, body)
24685	if err != nil {
24686		return nil, err
24687	}
24688	req.Header = reqHeaders
24689	googleapi.Expand(req.URL, map[string]string{
24690		"merchantId": strconv.FormatUint(c.merchantId, 10),
24691		"productId":  c.productId,
24692	})
24693	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24694}
24695
24696// Do executes the "content.products.get" call.
24697// Exactly one of *Product or error will be non-nil. Any non-2xx status
24698// code is an error. Response headers are in either
24699// *Product.ServerResponse.Header or (if a response was returned at all)
24700// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
24701// check whether the returned error was because http.StatusNotModified
24702// was returned.
24703func (c *ProductsGetCall) Do(opts ...googleapi.CallOption) (*Product, error) {
24704	gensupport.SetOptions(c.urlParams_, opts...)
24705	res, err := c.doRequest("json")
24706	if res != nil && res.StatusCode == http.StatusNotModified {
24707		if res.Body != nil {
24708			res.Body.Close()
24709		}
24710		return nil, &googleapi.Error{
24711			Code:   res.StatusCode,
24712			Header: res.Header,
24713		}
24714	}
24715	if err != nil {
24716		return nil, err
24717	}
24718	defer googleapi.CloseBody(res)
24719	if err := googleapi.CheckResponse(res); err != nil {
24720		return nil, err
24721	}
24722	ret := &Product{
24723		ServerResponse: googleapi.ServerResponse{
24724			Header:         res.Header,
24725			HTTPStatusCode: res.StatusCode,
24726		},
24727	}
24728	target := &ret
24729	if err := gensupport.DecodeResponse(target, res); err != nil {
24730		return nil, err
24731	}
24732	return ret, nil
24733	// {
24734	//   "description": "Retrieves a product from your Merchant Center account.",
24735	//   "httpMethod": "GET",
24736	//   "id": "content.products.get",
24737	//   "parameterOrder": [
24738	//     "merchantId",
24739	//     "productId"
24740	//   ],
24741	//   "parameters": {
24742	//     "merchantId": {
24743	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
24744	//       "format": "uint64",
24745	//       "location": "path",
24746	//       "required": true,
24747	//       "type": "string"
24748	//     },
24749	//     "productId": {
24750	//       "description": "The REST ID of the product.",
24751	//       "location": "path",
24752	//       "required": true,
24753	//       "type": "string"
24754	//     }
24755	//   },
24756	//   "path": "{merchantId}/products/{productId}",
24757	//   "response": {
24758	//     "$ref": "Product"
24759	//   },
24760	//   "scopes": [
24761	//     "https://www.googleapis.com/auth/content"
24762	//   ]
24763	// }
24764
24765}
24766
24767// method id "content.products.insert":
24768
24769type ProductsInsertCall struct {
24770	s          *APIService
24771	merchantId uint64
24772	product    *Product
24773	urlParams_ gensupport.URLParams
24774	ctx_       context.Context
24775	header_    http.Header
24776}
24777
24778// Insert: Uploads a product to your Merchant Center account. If an item
24779// with the same channel, contentLanguage, offerId, and targetCountry
24780// already exists, this method updates that entry.
24781func (r *ProductsService) Insert(merchantId uint64, product *Product) *ProductsInsertCall {
24782	c := &ProductsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24783	c.merchantId = merchantId
24784	c.product = product
24785	return c
24786}
24787
24788// DryRun sets the optional parameter "dryRun": Flag to simulate a
24789// request like in a live environment. If set to true, dry-run mode
24790// checks the validity of the request and returns errors (if any).
24791func (c *ProductsInsertCall) DryRun(dryRun bool) *ProductsInsertCall {
24792	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
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 *ProductsInsertCall) Fields(s ...googleapi.Field) *ProductsInsertCall {
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 *ProductsInsertCall) Context(ctx context.Context) *ProductsInsertCall {
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 *ProductsInsertCall) Header() http.Header {
24815	if c.header_ == nil {
24816		c.header_ = make(http.Header)
24817	}
24818	return c.header_
24819}
24820
24821func (c *ProductsInsertCall) doRequest(alt string) (*http.Response, error) {
24822	reqHeaders := make(http.Header)
24823	for k, v := range c.header_ {
24824		reqHeaders[k] = v
24825	}
24826	reqHeaders.Set("User-Agent", c.s.userAgent())
24827	var body io.Reader = nil
24828	body, err := googleapi.WithoutDataWrapper.JSONReader(c.product)
24829	if err != nil {
24830		return nil, err
24831	}
24832	reqHeaders.Set("Content-Type", "application/json")
24833	c.urlParams_.Set("alt", alt)
24834	c.urlParams_.Set("prettyPrint", "false")
24835	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products")
24836	urls += "?" + c.urlParams_.Encode()
24837	req, err := http.NewRequest("POST", urls, body)
24838	if err != nil {
24839		return nil, err
24840	}
24841	req.Header = reqHeaders
24842	googleapi.Expand(req.URL, map[string]string{
24843		"merchantId": strconv.FormatUint(c.merchantId, 10),
24844	})
24845	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24846}
24847
24848// Do executes the "content.products.insert" call.
24849// Exactly one of *Product or error will be non-nil. Any non-2xx status
24850// code is an error. Response headers are in either
24851// *Product.ServerResponse.Header or (if a response was returned at all)
24852// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
24853// check whether the returned error was because http.StatusNotModified
24854// was returned.
24855func (c *ProductsInsertCall) Do(opts ...googleapi.CallOption) (*Product, error) {
24856	gensupport.SetOptions(c.urlParams_, opts...)
24857	res, err := c.doRequest("json")
24858	if res != nil && res.StatusCode == http.StatusNotModified {
24859		if res.Body != nil {
24860			res.Body.Close()
24861		}
24862		return nil, &googleapi.Error{
24863			Code:   res.StatusCode,
24864			Header: res.Header,
24865		}
24866	}
24867	if err != nil {
24868		return nil, err
24869	}
24870	defer googleapi.CloseBody(res)
24871	if err := googleapi.CheckResponse(res); err != nil {
24872		return nil, err
24873	}
24874	ret := &Product{
24875		ServerResponse: googleapi.ServerResponse{
24876			Header:         res.Header,
24877			HTTPStatusCode: res.StatusCode,
24878		},
24879	}
24880	target := &ret
24881	if err := gensupport.DecodeResponse(target, res); err != nil {
24882		return nil, err
24883	}
24884	return ret, nil
24885	// {
24886	//   "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.",
24887	//   "httpMethod": "POST",
24888	//   "id": "content.products.insert",
24889	//   "parameterOrder": [
24890	//     "merchantId"
24891	//   ],
24892	//   "parameters": {
24893	//     "dryRun": {
24894	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
24895	//       "location": "query",
24896	//       "type": "boolean"
24897	//     },
24898	//     "merchantId": {
24899	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
24900	//       "format": "uint64",
24901	//       "location": "path",
24902	//       "required": true,
24903	//       "type": "string"
24904	//     }
24905	//   },
24906	//   "path": "{merchantId}/products",
24907	//   "request": {
24908	//     "$ref": "Product"
24909	//   },
24910	//   "response": {
24911	//     "$ref": "Product"
24912	//   },
24913	//   "scopes": [
24914	//     "https://www.googleapis.com/auth/content"
24915	//   ]
24916	// }
24917
24918}
24919
24920// method id "content.products.list":
24921
24922type ProductsListCall struct {
24923	s            *APIService
24924	merchantId   uint64
24925	urlParams_   gensupport.URLParams
24926	ifNoneMatch_ string
24927	ctx_         context.Context
24928	header_      http.Header
24929}
24930
24931// List: Lists the products in your Merchant Center account.
24932func (r *ProductsService) List(merchantId uint64) *ProductsListCall {
24933	c := &ProductsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24934	c.merchantId = merchantId
24935	return c
24936}
24937
24938// IncludeInvalidInsertedItems sets the optional parameter
24939// "includeInvalidInsertedItems": Flag to include the invalid inserted
24940// items in the result of the list request. By default the invalid items
24941// are not shown (the default value is false).
24942func (c *ProductsListCall) IncludeInvalidInsertedItems(includeInvalidInsertedItems bool) *ProductsListCall {
24943	c.urlParams_.Set("includeInvalidInsertedItems", fmt.Sprint(includeInvalidInsertedItems))
24944	return c
24945}
24946
24947// MaxResults sets the optional parameter "maxResults": The maximum
24948// number of products to return in the response, used for paging.
24949func (c *ProductsListCall) MaxResults(maxResults int64) *ProductsListCall {
24950	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
24951	return c
24952}
24953
24954// PageToken sets the optional parameter "pageToken": The token returned
24955// by the previous request.
24956func (c *ProductsListCall) PageToken(pageToken string) *ProductsListCall {
24957	c.urlParams_.Set("pageToken", pageToken)
24958	return c
24959}
24960
24961// Fields allows partial responses to be retrieved. See
24962// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24963// for more information.
24964func (c *ProductsListCall) Fields(s ...googleapi.Field) *ProductsListCall {
24965	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24966	return c
24967}
24968
24969// IfNoneMatch sets the optional parameter which makes the operation
24970// fail if the object's ETag matches the given value. This is useful for
24971// getting updates only after the object has changed since the last
24972// request. Use googleapi.IsNotModified to check whether the response
24973// error from Do is the result of In-None-Match.
24974func (c *ProductsListCall) IfNoneMatch(entityTag string) *ProductsListCall {
24975	c.ifNoneMatch_ = entityTag
24976	return c
24977}
24978
24979// Context sets the context to be used in this call's Do method. Any
24980// pending HTTP request will be aborted if the provided context is
24981// canceled.
24982func (c *ProductsListCall) Context(ctx context.Context) *ProductsListCall {
24983	c.ctx_ = ctx
24984	return c
24985}
24986
24987// Header returns an http.Header that can be modified by the caller to
24988// add HTTP headers to the request.
24989func (c *ProductsListCall) Header() http.Header {
24990	if c.header_ == nil {
24991		c.header_ = make(http.Header)
24992	}
24993	return c.header_
24994}
24995
24996func (c *ProductsListCall) doRequest(alt string) (*http.Response, error) {
24997	reqHeaders := make(http.Header)
24998	for k, v := range c.header_ {
24999		reqHeaders[k] = v
25000	}
25001	reqHeaders.Set("User-Agent", c.s.userAgent())
25002	if c.ifNoneMatch_ != "" {
25003		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
25004	}
25005	var body io.Reader = nil
25006	c.urlParams_.Set("alt", alt)
25007	c.urlParams_.Set("prettyPrint", "false")
25008	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products")
25009	urls += "?" + c.urlParams_.Encode()
25010	req, err := http.NewRequest("GET", urls, body)
25011	if err != nil {
25012		return nil, err
25013	}
25014	req.Header = reqHeaders
25015	googleapi.Expand(req.URL, map[string]string{
25016		"merchantId": strconv.FormatUint(c.merchantId, 10),
25017	})
25018	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25019}
25020
25021// Do executes the "content.products.list" call.
25022// Exactly one of *ProductsListResponse or error will be non-nil. Any
25023// non-2xx status code is an error. Response headers are in either
25024// *ProductsListResponse.ServerResponse.Header or (if a response was
25025// returned at all) in error.(*googleapi.Error).Header. Use
25026// googleapi.IsNotModified to check whether the returned error was
25027// because http.StatusNotModified was returned.
25028func (c *ProductsListCall) Do(opts ...googleapi.CallOption) (*ProductsListResponse, error) {
25029	gensupport.SetOptions(c.urlParams_, opts...)
25030	res, err := c.doRequest("json")
25031	if res != nil && res.StatusCode == http.StatusNotModified {
25032		if res.Body != nil {
25033			res.Body.Close()
25034		}
25035		return nil, &googleapi.Error{
25036			Code:   res.StatusCode,
25037			Header: res.Header,
25038		}
25039	}
25040	if err != nil {
25041		return nil, err
25042	}
25043	defer googleapi.CloseBody(res)
25044	if err := googleapi.CheckResponse(res); err != nil {
25045		return nil, err
25046	}
25047	ret := &ProductsListResponse{
25048		ServerResponse: googleapi.ServerResponse{
25049			Header:         res.Header,
25050			HTTPStatusCode: res.StatusCode,
25051		},
25052	}
25053	target := &ret
25054	if err := gensupport.DecodeResponse(target, res); err != nil {
25055		return nil, err
25056	}
25057	return ret, nil
25058	// {
25059	//   "description": "Lists the products in your Merchant Center account.",
25060	//   "httpMethod": "GET",
25061	//   "id": "content.products.list",
25062	//   "parameterOrder": [
25063	//     "merchantId"
25064	//   ],
25065	//   "parameters": {
25066	//     "includeInvalidInsertedItems": {
25067	//       "description": "Flag to include the invalid inserted items in the result of the list request. By default the invalid items are not shown (the default value is false).",
25068	//       "location": "query",
25069	//       "type": "boolean"
25070	//     },
25071	//     "maxResults": {
25072	//       "description": "The maximum number of products to return in the response, used for paging.",
25073	//       "format": "uint32",
25074	//       "location": "query",
25075	//       "type": "integer"
25076	//     },
25077	//     "merchantId": {
25078	//       "description": "The ID of the account that contains the products. This account cannot be a multi-client account.",
25079	//       "format": "uint64",
25080	//       "location": "path",
25081	//       "required": true,
25082	//       "type": "string"
25083	//     },
25084	//     "pageToken": {
25085	//       "description": "The token returned by the previous request.",
25086	//       "location": "query",
25087	//       "type": "string"
25088	//     }
25089	//   },
25090	//   "path": "{merchantId}/products",
25091	//   "response": {
25092	//     "$ref": "ProductsListResponse"
25093	//   },
25094	//   "scopes": [
25095	//     "https://www.googleapis.com/auth/content"
25096	//   ]
25097	// }
25098
25099}
25100
25101// Pages invokes f for each page of results.
25102// A non-nil error returned from f will halt the iteration.
25103// The provided context supersedes any context provided to the Context method.
25104func (c *ProductsListCall) Pages(ctx context.Context, f func(*ProductsListResponse) error) error {
25105	c.ctx_ = ctx
25106	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
25107	for {
25108		x, err := c.Do()
25109		if err != nil {
25110			return err
25111		}
25112		if err := f(x); err != nil {
25113			return err
25114		}
25115		if x.NextPageToken == "" {
25116			return nil
25117		}
25118		c.PageToken(x.NextPageToken)
25119	}
25120}
25121
25122// method id "content.productstatuses.custombatch":
25123
25124type ProductstatusesCustombatchCall struct {
25125	s                                 *APIService
25126	productstatusescustombatchrequest *ProductstatusesCustomBatchRequest
25127	urlParams_                        gensupport.URLParams
25128	ctx_                              context.Context
25129	header_                           http.Header
25130}
25131
25132// Custombatch: Gets the statuses of multiple products in a single
25133// request.
25134func (r *ProductstatusesService) Custombatch(productstatusescustombatchrequest *ProductstatusesCustomBatchRequest) *ProductstatusesCustombatchCall {
25135	c := &ProductstatusesCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25136	c.productstatusescustombatchrequest = productstatusescustombatchrequest
25137	return c
25138}
25139
25140// IncludeAttributes sets the optional parameter "includeAttributes":
25141// Flag to include full product data in the results of this request. The
25142// default value is false.
25143func (c *ProductstatusesCustombatchCall) IncludeAttributes(includeAttributes bool) *ProductstatusesCustombatchCall {
25144	c.urlParams_.Set("includeAttributes", fmt.Sprint(includeAttributes))
25145	return c
25146}
25147
25148// Fields allows partial responses to be retrieved. See
25149// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25150// for more information.
25151func (c *ProductstatusesCustombatchCall) Fields(s ...googleapi.Field) *ProductstatusesCustombatchCall {
25152	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25153	return c
25154}
25155
25156// Context sets the context to be used in this call's Do method. Any
25157// pending HTTP request will be aborted if the provided context is
25158// canceled.
25159func (c *ProductstatusesCustombatchCall) Context(ctx context.Context) *ProductstatusesCustombatchCall {
25160	c.ctx_ = ctx
25161	return c
25162}
25163
25164// Header returns an http.Header that can be modified by the caller to
25165// add HTTP headers to the request.
25166func (c *ProductstatusesCustombatchCall) Header() http.Header {
25167	if c.header_ == nil {
25168		c.header_ = make(http.Header)
25169	}
25170	return c.header_
25171}
25172
25173func (c *ProductstatusesCustombatchCall) doRequest(alt string) (*http.Response, error) {
25174	reqHeaders := make(http.Header)
25175	for k, v := range c.header_ {
25176		reqHeaders[k] = v
25177	}
25178	reqHeaders.Set("User-Agent", c.s.userAgent())
25179	var body io.Reader = nil
25180	body, err := googleapi.WithoutDataWrapper.JSONReader(c.productstatusescustombatchrequest)
25181	if err != nil {
25182		return nil, err
25183	}
25184	reqHeaders.Set("Content-Type", "application/json")
25185	c.urlParams_.Set("alt", alt)
25186	c.urlParams_.Set("prettyPrint", "false")
25187	urls := googleapi.ResolveRelative(c.s.BasePath, "productstatuses/batch")
25188	urls += "?" + c.urlParams_.Encode()
25189	req, err := http.NewRequest("POST", urls, body)
25190	if err != nil {
25191		return nil, err
25192	}
25193	req.Header = reqHeaders
25194	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25195}
25196
25197// Do executes the "content.productstatuses.custombatch" call.
25198// Exactly one of *ProductstatusesCustomBatchResponse or error will be
25199// non-nil. Any non-2xx status code is an error. Response headers are in
25200// either *ProductstatusesCustomBatchResponse.ServerResponse.Header or
25201// (if a response was returned at all) in
25202// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
25203// whether the returned error was because http.StatusNotModified was
25204// returned.
25205func (c *ProductstatusesCustombatchCall) Do(opts ...googleapi.CallOption) (*ProductstatusesCustomBatchResponse, error) {
25206	gensupport.SetOptions(c.urlParams_, opts...)
25207	res, err := c.doRequest("json")
25208	if res != nil && res.StatusCode == http.StatusNotModified {
25209		if res.Body != nil {
25210			res.Body.Close()
25211		}
25212		return nil, &googleapi.Error{
25213			Code:   res.StatusCode,
25214			Header: res.Header,
25215		}
25216	}
25217	if err != nil {
25218		return nil, err
25219	}
25220	defer googleapi.CloseBody(res)
25221	if err := googleapi.CheckResponse(res); err != nil {
25222		return nil, err
25223	}
25224	ret := &ProductstatusesCustomBatchResponse{
25225		ServerResponse: googleapi.ServerResponse{
25226			Header:         res.Header,
25227			HTTPStatusCode: res.StatusCode,
25228		},
25229	}
25230	target := &ret
25231	if err := gensupport.DecodeResponse(target, res); err != nil {
25232		return nil, err
25233	}
25234	return ret, nil
25235	// {
25236	//   "description": "Gets the statuses of multiple products in a single request.",
25237	//   "httpMethod": "POST",
25238	//   "id": "content.productstatuses.custombatch",
25239	//   "parameters": {
25240	//     "includeAttributes": {
25241	//       "description": "Flag to include full product data in the results of this request. The default value is false.",
25242	//       "location": "query",
25243	//       "type": "boolean"
25244	//     }
25245	//   },
25246	//   "path": "productstatuses/batch",
25247	//   "request": {
25248	//     "$ref": "ProductstatusesCustomBatchRequest"
25249	//   },
25250	//   "response": {
25251	//     "$ref": "ProductstatusesCustomBatchResponse"
25252	//   },
25253	//   "scopes": [
25254	//     "https://www.googleapis.com/auth/content"
25255	//   ]
25256	// }
25257
25258}
25259
25260// method id "content.productstatuses.get":
25261
25262type ProductstatusesGetCall struct {
25263	s            *APIService
25264	merchantId   uint64
25265	productId    string
25266	urlParams_   gensupport.URLParams
25267	ifNoneMatch_ string
25268	ctx_         context.Context
25269	header_      http.Header
25270}
25271
25272// Get: Gets the status of a product from your Merchant Center account.
25273func (r *ProductstatusesService) Get(merchantId uint64, productId string) *ProductstatusesGetCall {
25274	c := &ProductstatusesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25275	c.merchantId = merchantId
25276	c.productId = productId
25277	return c
25278}
25279
25280// Destinations sets the optional parameter "destinations": If set, only
25281// issues for the specified destinations are returned, otherwise only
25282// issues for the Shopping destination.
25283func (c *ProductstatusesGetCall) Destinations(destinations ...string) *ProductstatusesGetCall {
25284	c.urlParams_.SetMulti("destinations", append([]string{}, destinations...))
25285	return c
25286}
25287
25288// IncludeAttributes sets the optional parameter "includeAttributes":
25289// Flag to include full product data in the result of this get request.
25290// The default value is false.
25291func (c *ProductstatusesGetCall) IncludeAttributes(includeAttributes bool) *ProductstatusesGetCall {
25292	c.urlParams_.Set("includeAttributes", fmt.Sprint(includeAttributes))
25293	return c
25294}
25295
25296// Fields allows partial responses to be retrieved. See
25297// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25298// for more information.
25299func (c *ProductstatusesGetCall) Fields(s ...googleapi.Field) *ProductstatusesGetCall {
25300	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25301	return c
25302}
25303
25304// IfNoneMatch sets the optional parameter which makes the operation
25305// fail if the object's ETag matches the given value. This is useful for
25306// getting updates only after the object has changed since the last
25307// request. Use googleapi.IsNotModified to check whether the response
25308// error from Do is the result of In-None-Match.
25309func (c *ProductstatusesGetCall) IfNoneMatch(entityTag string) *ProductstatusesGetCall {
25310	c.ifNoneMatch_ = entityTag
25311	return c
25312}
25313
25314// Context sets the context to be used in this call's Do method. Any
25315// pending HTTP request will be aborted if the provided context is
25316// canceled.
25317func (c *ProductstatusesGetCall) Context(ctx context.Context) *ProductstatusesGetCall {
25318	c.ctx_ = ctx
25319	return c
25320}
25321
25322// Header returns an http.Header that can be modified by the caller to
25323// add HTTP headers to the request.
25324func (c *ProductstatusesGetCall) Header() http.Header {
25325	if c.header_ == nil {
25326		c.header_ = make(http.Header)
25327	}
25328	return c.header_
25329}
25330
25331func (c *ProductstatusesGetCall) doRequest(alt string) (*http.Response, error) {
25332	reqHeaders := make(http.Header)
25333	for k, v := range c.header_ {
25334		reqHeaders[k] = v
25335	}
25336	reqHeaders.Set("User-Agent", c.s.userAgent())
25337	if c.ifNoneMatch_ != "" {
25338		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
25339	}
25340	var body io.Reader = nil
25341	c.urlParams_.Set("alt", alt)
25342	c.urlParams_.Set("prettyPrint", "false")
25343	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/productstatuses/{productId}")
25344	urls += "?" + c.urlParams_.Encode()
25345	req, err := http.NewRequest("GET", urls, body)
25346	if err != nil {
25347		return nil, err
25348	}
25349	req.Header = reqHeaders
25350	googleapi.Expand(req.URL, map[string]string{
25351		"merchantId": strconv.FormatUint(c.merchantId, 10),
25352		"productId":  c.productId,
25353	})
25354	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25355}
25356
25357// Do executes the "content.productstatuses.get" call.
25358// Exactly one of *ProductStatus or error will be non-nil. Any non-2xx
25359// status code is an error. Response headers are in either
25360// *ProductStatus.ServerResponse.Header or (if a response was returned
25361// at all) in error.(*googleapi.Error).Header. Use
25362// googleapi.IsNotModified to check whether the returned error was
25363// because http.StatusNotModified was returned.
25364func (c *ProductstatusesGetCall) Do(opts ...googleapi.CallOption) (*ProductStatus, error) {
25365	gensupport.SetOptions(c.urlParams_, opts...)
25366	res, err := c.doRequest("json")
25367	if res != nil && res.StatusCode == http.StatusNotModified {
25368		if res.Body != nil {
25369			res.Body.Close()
25370		}
25371		return nil, &googleapi.Error{
25372			Code:   res.StatusCode,
25373			Header: res.Header,
25374		}
25375	}
25376	if err != nil {
25377		return nil, err
25378	}
25379	defer googleapi.CloseBody(res)
25380	if err := googleapi.CheckResponse(res); err != nil {
25381		return nil, err
25382	}
25383	ret := &ProductStatus{
25384		ServerResponse: googleapi.ServerResponse{
25385			Header:         res.Header,
25386			HTTPStatusCode: res.StatusCode,
25387		},
25388	}
25389	target := &ret
25390	if err := gensupport.DecodeResponse(target, res); err != nil {
25391		return nil, err
25392	}
25393	return ret, nil
25394	// {
25395	//   "description": "Gets the status of a product from your Merchant Center account.",
25396	//   "httpMethod": "GET",
25397	//   "id": "content.productstatuses.get",
25398	//   "parameterOrder": [
25399	//     "merchantId",
25400	//     "productId"
25401	//   ],
25402	//   "parameters": {
25403	//     "destinations": {
25404	//       "description": "If set, only issues for the specified destinations are returned, otherwise only issues for the Shopping destination.",
25405	//       "location": "query",
25406	//       "repeated": true,
25407	//       "type": "string"
25408	//     },
25409	//     "includeAttributes": {
25410	//       "description": "Flag to include full product data in the result of this get request. The default value is false.",
25411	//       "location": "query",
25412	//       "type": "boolean"
25413	//     },
25414	//     "merchantId": {
25415	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
25416	//       "format": "uint64",
25417	//       "location": "path",
25418	//       "required": true,
25419	//       "type": "string"
25420	//     },
25421	//     "productId": {
25422	//       "description": "The REST ID of the product.",
25423	//       "location": "path",
25424	//       "required": true,
25425	//       "type": "string"
25426	//     }
25427	//   },
25428	//   "path": "{merchantId}/productstatuses/{productId}",
25429	//   "response": {
25430	//     "$ref": "ProductStatus"
25431	//   },
25432	//   "scopes": [
25433	//     "https://www.googleapis.com/auth/content"
25434	//   ]
25435	// }
25436
25437}
25438
25439// method id "content.productstatuses.list":
25440
25441type ProductstatusesListCall struct {
25442	s            *APIService
25443	merchantId   uint64
25444	urlParams_   gensupport.URLParams
25445	ifNoneMatch_ string
25446	ctx_         context.Context
25447	header_      http.Header
25448}
25449
25450// List: Lists the statuses of the products in your Merchant Center
25451// account.
25452func (r *ProductstatusesService) List(merchantId uint64) *ProductstatusesListCall {
25453	c := &ProductstatusesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25454	c.merchantId = merchantId
25455	return c
25456}
25457
25458// Destinations sets the optional parameter "destinations": If set, only
25459// issues for the specified destinations are returned, otherwise only
25460// issues for the Shopping destination.
25461func (c *ProductstatusesListCall) Destinations(destinations ...string) *ProductstatusesListCall {
25462	c.urlParams_.SetMulti("destinations", append([]string{}, destinations...))
25463	return c
25464}
25465
25466// IncludeAttributes sets the optional parameter "includeAttributes":
25467// Flag to include full product data in the results of the list request.
25468// The default value is false.
25469func (c *ProductstatusesListCall) IncludeAttributes(includeAttributes bool) *ProductstatusesListCall {
25470	c.urlParams_.Set("includeAttributes", fmt.Sprint(includeAttributes))
25471	return c
25472}
25473
25474// IncludeInvalidInsertedItems sets the optional parameter
25475// "includeInvalidInsertedItems": Flag to include the invalid inserted
25476// items in the result of the list request. By default the invalid items
25477// are not shown (the default value is false).
25478func (c *ProductstatusesListCall) IncludeInvalidInsertedItems(includeInvalidInsertedItems bool) *ProductstatusesListCall {
25479	c.urlParams_.Set("includeInvalidInsertedItems", fmt.Sprint(includeInvalidInsertedItems))
25480	return c
25481}
25482
25483// MaxResults sets the optional parameter "maxResults": The maximum
25484// number of product statuses to return in the response, used for
25485// paging.
25486func (c *ProductstatusesListCall) MaxResults(maxResults int64) *ProductstatusesListCall {
25487	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
25488	return c
25489}
25490
25491// PageToken sets the optional parameter "pageToken": The token returned
25492// by the previous request.
25493func (c *ProductstatusesListCall) PageToken(pageToken string) *ProductstatusesListCall {
25494	c.urlParams_.Set("pageToken", pageToken)
25495	return c
25496}
25497
25498// Fields allows partial responses to be retrieved. See
25499// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25500// for more information.
25501func (c *ProductstatusesListCall) Fields(s ...googleapi.Field) *ProductstatusesListCall {
25502	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25503	return c
25504}
25505
25506// IfNoneMatch sets the optional parameter which makes the operation
25507// fail if the object's ETag matches the given value. This is useful for
25508// getting updates only after the object has changed since the last
25509// request. Use googleapi.IsNotModified to check whether the response
25510// error from Do is the result of In-None-Match.
25511func (c *ProductstatusesListCall) IfNoneMatch(entityTag string) *ProductstatusesListCall {
25512	c.ifNoneMatch_ = entityTag
25513	return c
25514}
25515
25516// Context sets the context to be used in this call's Do method. Any
25517// pending HTTP request will be aborted if the provided context is
25518// canceled.
25519func (c *ProductstatusesListCall) Context(ctx context.Context) *ProductstatusesListCall {
25520	c.ctx_ = ctx
25521	return c
25522}
25523
25524// Header returns an http.Header that can be modified by the caller to
25525// add HTTP headers to the request.
25526func (c *ProductstatusesListCall) Header() http.Header {
25527	if c.header_ == nil {
25528		c.header_ = make(http.Header)
25529	}
25530	return c.header_
25531}
25532
25533func (c *ProductstatusesListCall) doRequest(alt string) (*http.Response, error) {
25534	reqHeaders := make(http.Header)
25535	for k, v := range c.header_ {
25536		reqHeaders[k] = v
25537	}
25538	reqHeaders.Set("User-Agent", c.s.userAgent())
25539	if c.ifNoneMatch_ != "" {
25540		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
25541	}
25542	var body io.Reader = nil
25543	c.urlParams_.Set("alt", alt)
25544	c.urlParams_.Set("prettyPrint", "false")
25545	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/productstatuses")
25546	urls += "?" + c.urlParams_.Encode()
25547	req, err := http.NewRequest("GET", urls, body)
25548	if err != nil {
25549		return nil, err
25550	}
25551	req.Header = reqHeaders
25552	googleapi.Expand(req.URL, map[string]string{
25553		"merchantId": strconv.FormatUint(c.merchantId, 10),
25554	})
25555	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25556}
25557
25558// Do executes the "content.productstatuses.list" call.
25559// Exactly one of *ProductstatusesListResponse or error will be non-nil.
25560// Any non-2xx status code is an error. Response headers are in either
25561// *ProductstatusesListResponse.ServerResponse.Header or (if a response
25562// was returned at all) in error.(*googleapi.Error).Header. Use
25563// googleapi.IsNotModified to check whether the returned error was
25564// because http.StatusNotModified was returned.
25565func (c *ProductstatusesListCall) Do(opts ...googleapi.CallOption) (*ProductstatusesListResponse, error) {
25566	gensupport.SetOptions(c.urlParams_, opts...)
25567	res, err := c.doRequest("json")
25568	if res != nil && res.StatusCode == http.StatusNotModified {
25569		if res.Body != nil {
25570			res.Body.Close()
25571		}
25572		return nil, &googleapi.Error{
25573			Code:   res.StatusCode,
25574			Header: res.Header,
25575		}
25576	}
25577	if err != nil {
25578		return nil, err
25579	}
25580	defer googleapi.CloseBody(res)
25581	if err := googleapi.CheckResponse(res); err != nil {
25582		return nil, err
25583	}
25584	ret := &ProductstatusesListResponse{
25585		ServerResponse: googleapi.ServerResponse{
25586			Header:         res.Header,
25587			HTTPStatusCode: res.StatusCode,
25588		},
25589	}
25590	target := &ret
25591	if err := gensupport.DecodeResponse(target, res); err != nil {
25592		return nil, err
25593	}
25594	return ret, nil
25595	// {
25596	//   "description": "Lists the statuses of the products in your Merchant Center account.",
25597	//   "httpMethod": "GET",
25598	//   "id": "content.productstatuses.list",
25599	//   "parameterOrder": [
25600	//     "merchantId"
25601	//   ],
25602	//   "parameters": {
25603	//     "destinations": {
25604	//       "description": "If set, only issues for the specified destinations are returned, otherwise only issues for the Shopping destination.",
25605	//       "location": "query",
25606	//       "repeated": true,
25607	//       "type": "string"
25608	//     },
25609	//     "includeAttributes": {
25610	//       "description": "Flag to include full product data in the results of the list request. The default value is false.",
25611	//       "location": "query",
25612	//       "type": "boolean"
25613	//     },
25614	//     "includeInvalidInsertedItems": {
25615	//       "description": "Flag to include the invalid inserted items in the result of the list request. By default the invalid items are not shown (the default value is false).",
25616	//       "location": "query",
25617	//       "type": "boolean"
25618	//     },
25619	//     "maxResults": {
25620	//       "description": "The maximum number of product statuses to return in the response, used for paging.",
25621	//       "format": "uint32",
25622	//       "location": "query",
25623	//       "type": "integer"
25624	//     },
25625	//     "merchantId": {
25626	//       "description": "The ID of the account that contains the products. This account cannot be a multi-client account.",
25627	//       "format": "uint64",
25628	//       "location": "path",
25629	//       "required": true,
25630	//       "type": "string"
25631	//     },
25632	//     "pageToken": {
25633	//       "description": "The token returned by the previous request.",
25634	//       "location": "query",
25635	//       "type": "string"
25636	//     }
25637	//   },
25638	//   "path": "{merchantId}/productstatuses",
25639	//   "response": {
25640	//     "$ref": "ProductstatusesListResponse"
25641	//   },
25642	//   "scopes": [
25643	//     "https://www.googleapis.com/auth/content"
25644	//   ]
25645	// }
25646
25647}
25648
25649// Pages invokes f for each page of results.
25650// A non-nil error returned from f will halt the iteration.
25651// The provided context supersedes any context provided to the Context method.
25652func (c *ProductstatusesListCall) Pages(ctx context.Context, f func(*ProductstatusesListResponse) error) error {
25653	c.ctx_ = ctx
25654	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
25655	for {
25656		x, err := c.Do()
25657		if err != nil {
25658			return err
25659		}
25660		if err := f(x); err != nil {
25661			return err
25662		}
25663		if x.NextPageToken == "" {
25664			return nil
25665		}
25666		c.PageToken(x.NextPageToken)
25667	}
25668}
25669
25670// method id "content.shippingsettings.custombatch":
25671
25672type ShippingsettingsCustombatchCall struct {
25673	s                                  *APIService
25674	shippingsettingscustombatchrequest *ShippingsettingsCustomBatchRequest
25675	urlParams_                         gensupport.URLParams
25676	ctx_                               context.Context
25677	header_                            http.Header
25678}
25679
25680// Custombatch: Retrieves and updates the shipping settings of multiple
25681// accounts in a single request.
25682func (r *ShippingsettingsService) Custombatch(shippingsettingscustombatchrequest *ShippingsettingsCustomBatchRequest) *ShippingsettingsCustombatchCall {
25683	c := &ShippingsettingsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25684	c.shippingsettingscustombatchrequest = shippingsettingscustombatchrequest
25685	return c
25686}
25687
25688// DryRun sets the optional parameter "dryRun": Flag to simulate a
25689// request like in a live environment. If set to true, dry-run mode
25690// checks the validity of the request and returns errors (if any).
25691func (c *ShippingsettingsCustombatchCall) DryRun(dryRun bool) *ShippingsettingsCustombatchCall {
25692	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
25693	return c
25694}
25695
25696// Fields allows partial responses to be retrieved. See
25697// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25698// for more information.
25699func (c *ShippingsettingsCustombatchCall) Fields(s ...googleapi.Field) *ShippingsettingsCustombatchCall {
25700	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25701	return c
25702}
25703
25704// Context sets the context to be used in this call's Do method. Any
25705// pending HTTP request will be aborted if the provided context is
25706// canceled.
25707func (c *ShippingsettingsCustombatchCall) Context(ctx context.Context) *ShippingsettingsCustombatchCall {
25708	c.ctx_ = ctx
25709	return c
25710}
25711
25712// Header returns an http.Header that can be modified by the caller to
25713// add HTTP headers to the request.
25714func (c *ShippingsettingsCustombatchCall) Header() http.Header {
25715	if c.header_ == nil {
25716		c.header_ = make(http.Header)
25717	}
25718	return c.header_
25719}
25720
25721func (c *ShippingsettingsCustombatchCall) doRequest(alt string) (*http.Response, error) {
25722	reqHeaders := make(http.Header)
25723	for k, v := range c.header_ {
25724		reqHeaders[k] = v
25725	}
25726	reqHeaders.Set("User-Agent", c.s.userAgent())
25727	var body io.Reader = nil
25728	body, err := googleapi.WithoutDataWrapper.JSONReader(c.shippingsettingscustombatchrequest)
25729	if err != nil {
25730		return nil, err
25731	}
25732	reqHeaders.Set("Content-Type", "application/json")
25733	c.urlParams_.Set("alt", alt)
25734	c.urlParams_.Set("prettyPrint", "false")
25735	urls := googleapi.ResolveRelative(c.s.BasePath, "shippingsettings/batch")
25736	urls += "?" + c.urlParams_.Encode()
25737	req, err := http.NewRequest("POST", urls, body)
25738	if err != nil {
25739		return nil, err
25740	}
25741	req.Header = reqHeaders
25742	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25743}
25744
25745// Do executes the "content.shippingsettings.custombatch" call.
25746// Exactly one of *ShippingsettingsCustomBatchResponse or error will be
25747// non-nil. Any non-2xx status code is an error. Response headers are in
25748// either *ShippingsettingsCustomBatchResponse.ServerResponse.Header or
25749// (if a response was returned at all) in
25750// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
25751// whether the returned error was because http.StatusNotModified was
25752// returned.
25753func (c *ShippingsettingsCustombatchCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsCustomBatchResponse, error) {
25754	gensupport.SetOptions(c.urlParams_, opts...)
25755	res, err := c.doRequest("json")
25756	if res != nil && res.StatusCode == http.StatusNotModified {
25757		if res.Body != nil {
25758			res.Body.Close()
25759		}
25760		return nil, &googleapi.Error{
25761			Code:   res.StatusCode,
25762			Header: res.Header,
25763		}
25764	}
25765	if err != nil {
25766		return nil, err
25767	}
25768	defer googleapi.CloseBody(res)
25769	if err := googleapi.CheckResponse(res); err != nil {
25770		return nil, err
25771	}
25772	ret := &ShippingsettingsCustomBatchResponse{
25773		ServerResponse: googleapi.ServerResponse{
25774			Header:         res.Header,
25775			HTTPStatusCode: res.StatusCode,
25776		},
25777	}
25778	target := &ret
25779	if err := gensupport.DecodeResponse(target, res); err != nil {
25780		return nil, err
25781	}
25782	return ret, nil
25783	// {
25784	//   "description": "Retrieves and updates the shipping settings of multiple accounts in a single request.",
25785	//   "httpMethod": "POST",
25786	//   "id": "content.shippingsettings.custombatch",
25787	//   "parameters": {
25788	//     "dryRun": {
25789	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
25790	//       "location": "query",
25791	//       "type": "boolean"
25792	//     }
25793	//   },
25794	//   "path": "shippingsettings/batch",
25795	//   "request": {
25796	//     "$ref": "ShippingsettingsCustomBatchRequest"
25797	//   },
25798	//   "response": {
25799	//     "$ref": "ShippingsettingsCustomBatchResponse"
25800	//   },
25801	//   "scopes": [
25802	//     "https://www.googleapis.com/auth/content"
25803	//   ]
25804	// }
25805
25806}
25807
25808// method id "content.shippingsettings.get":
25809
25810type ShippingsettingsGetCall struct {
25811	s            *APIService
25812	merchantId   uint64
25813	accountId    uint64
25814	urlParams_   gensupport.URLParams
25815	ifNoneMatch_ string
25816	ctx_         context.Context
25817	header_      http.Header
25818}
25819
25820// Get: Retrieves the shipping settings of the account.
25821func (r *ShippingsettingsService) Get(merchantId uint64, accountId uint64) *ShippingsettingsGetCall {
25822	c := &ShippingsettingsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25823	c.merchantId = merchantId
25824	c.accountId = accountId
25825	return c
25826}
25827
25828// Fields allows partial responses to be retrieved. See
25829// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25830// for more information.
25831func (c *ShippingsettingsGetCall) Fields(s ...googleapi.Field) *ShippingsettingsGetCall {
25832	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25833	return c
25834}
25835
25836// IfNoneMatch sets the optional parameter which makes the operation
25837// fail if the object's ETag matches the given value. This is useful for
25838// getting updates only after the object has changed since the last
25839// request. Use googleapi.IsNotModified to check whether the response
25840// error from Do is the result of In-None-Match.
25841func (c *ShippingsettingsGetCall) IfNoneMatch(entityTag string) *ShippingsettingsGetCall {
25842	c.ifNoneMatch_ = entityTag
25843	return c
25844}
25845
25846// Context sets the context to be used in this call's Do method. Any
25847// pending HTTP request will be aborted if the provided context is
25848// canceled.
25849func (c *ShippingsettingsGetCall) Context(ctx context.Context) *ShippingsettingsGetCall {
25850	c.ctx_ = ctx
25851	return c
25852}
25853
25854// Header returns an http.Header that can be modified by the caller to
25855// add HTTP headers to the request.
25856func (c *ShippingsettingsGetCall) Header() http.Header {
25857	if c.header_ == nil {
25858		c.header_ = make(http.Header)
25859	}
25860	return c.header_
25861}
25862
25863func (c *ShippingsettingsGetCall) doRequest(alt string) (*http.Response, error) {
25864	reqHeaders := make(http.Header)
25865	for k, v := range c.header_ {
25866		reqHeaders[k] = v
25867	}
25868	reqHeaders.Set("User-Agent", c.s.userAgent())
25869	if c.ifNoneMatch_ != "" {
25870		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
25871	}
25872	var body io.Reader = nil
25873	c.urlParams_.Set("alt", alt)
25874	c.urlParams_.Set("prettyPrint", "false")
25875	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/shippingsettings/{accountId}")
25876	urls += "?" + c.urlParams_.Encode()
25877	req, err := http.NewRequest("GET", urls, body)
25878	if err != nil {
25879		return nil, err
25880	}
25881	req.Header = reqHeaders
25882	googleapi.Expand(req.URL, map[string]string{
25883		"merchantId": strconv.FormatUint(c.merchantId, 10),
25884		"accountId":  strconv.FormatUint(c.accountId, 10),
25885	})
25886	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25887}
25888
25889// Do executes the "content.shippingsettings.get" call.
25890// Exactly one of *ShippingSettings or error will be non-nil. Any
25891// non-2xx status code is an error. Response headers are in either
25892// *ShippingSettings.ServerResponse.Header or (if a response was
25893// returned at all) in error.(*googleapi.Error).Header. Use
25894// googleapi.IsNotModified to check whether the returned error was
25895// because http.StatusNotModified was returned.
25896func (c *ShippingsettingsGetCall) Do(opts ...googleapi.CallOption) (*ShippingSettings, error) {
25897	gensupport.SetOptions(c.urlParams_, opts...)
25898	res, err := c.doRequest("json")
25899	if res != nil && res.StatusCode == http.StatusNotModified {
25900		if res.Body != nil {
25901			res.Body.Close()
25902		}
25903		return nil, &googleapi.Error{
25904			Code:   res.StatusCode,
25905			Header: res.Header,
25906		}
25907	}
25908	if err != nil {
25909		return nil, err
25910	}
25911	defer googleapi.CloseBody(res)
25912	if err := googleapi.CheckResponse(res); err != nil {
25913		return nil, err
25914	}
25915	ret := &ShippingSettings{
25916		ServerResponse: googleapi.ServerResponse{
25917			Header:         res.Header,
25918			HTTPStatusCode: res.StatusCode,
25919		},
25920	}
25921	target := &ret
25922	if err := gensupport.DecodeResponse(target, res); err != nil {
25923		return nil, err
25924	}
25925	return ret, nil
25926	// {
25927	//   "description": "Retrieves the shipping settings of the account.",
25928	//   "httpMethod": "GET",
25929	//   "id": "content.shippingsettings.get",
25930	//   "parameterOrder": [
25931	//     "merchantId",
25932	//     "accountId"
25933	//   ],
25934	//   "parameters": {
25935	//     "accountId": {
25936	//       "description": "The ID of the account for which to get/update shipping settings.",
25937	//       "format": "uint64",
25938	//       "location": "path",
25939	//       "required": true,
25940	//       "type": "string"
25941	//     },
25942	//     "merchantId": {
25943	//       "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.",
25944	//       "format": "uint64",
25945	//       "location": "path",
25946	//       "required": true,
25947	//       "type": "string"
25948	//     }
25949	//   },
25950	//   "path": "{merchantId}/shippingsettings/{accountId}",
25951	//   "response": {
25952	//     "$ref": "ShippingSettings"
25953	//   },
25954	//   "scopes": [
25955	//     "https://www.googleapis.com/auth/content"
25956	//   ]
25957	// }
25958
25959}
25960
25961// method id "content.shippingsettings.getsupportedcarriers":
25962
25963type ShippingsettingsGetsupportedcarriersCall struct {
25964	s            *APIService
25965	merchantId   uint64
25966	urlParams_   gensupport.URLParams
25967	ifNoneMatch_ string
25968	ctx_         context.Context
25969	header_      http.Header
25970}
25971
25972// Getsupportedcarriers: Retrieves supported carriers and carrier
25973// services for an account.
25974func (r *ShippingsettingsService) Getsupportedcarriers(merchantId uint64) *ShippingsettingsGetsupportedcarriersCall {
25975	c := &ShippingsettingsGetsupportedcarriersCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25976	c.merchantId = merchantId
25977	return c
25978}
25979
25980// Fields allows partial responses to be retrieved. See
25981// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25982// for more information.
25983func (c *ShippingsettingsGetsupportedcarriersCall) Fields(s ...googleapi.Field) *ShippingsettingsGetsupportedcarriersCall {
25984	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25985	return c
25986}
25987
25988// IfNoneMatch sets the optional parameter which makes the operation
25989// fail if the object's ETag matches the given value. This is useful for
25990// getting updates only after the object has changed since the last
25991// request. Use googleapi.IsNotModified to check whether the response
25992// error from Do is the result of In-None-Match.
25993func (c *ShippingsettingsGetsupportedcarriersCall) IfNoneMatch(entityTag string) *ShippingsettingsGetsupportedcarriersCall {
25994	c.ifNoneMatch_ = entityTag
25995	return c
25996}
25997
25998// Context sets the context to be used in this call's Do method. Any
25999// pending HTTP request will be aborted if the provided context is
26000// canceled.
26001func (c *ShippingsettingsGetsupportedcarriersCall) Context(ctx context.Context) *ShippingsettingsGetsupportedcarriersCall {
26002	c.ctx_ = ctx
26003	return c
26004}
26005
26006// Header returns an http.Header that can be modified by the caller to
26007// add HTTP headers to the request.
26008func (c *ShippingsettingsGetsupportedcarriersCall) Header() http.Header {
26009	if c.header_ == nil {
26010		c.header_ = make(http.Header)
26011	}
26012	return c.header_
26013}
26014
26015func (c *ShippingsettingsGetsupportedcarriersCall) doRequest(alt string) (*http.Response, error) {
26016	reqHeaders := make(http.Header)
26017	for k, v := range c.header_ {
26018		reqHeaders[k] = v
26019	}
26020	reqHeaders.Set("User-Agent", c.s.userAgent())
26021	if c.ifNoneMatch_ != "" {
26022		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
26023	}
26024	var body io.Reader = nil
26025	c.urlParams_.Set("alt", alt)
26026	c.urlParams_.Set("prettyPrint", "false")
26027	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/supportedCarriers")
26028	urls += "?" + c.urlParams_.Encode()
26029	req, err := http.NewRequest("GET", urls, body)
26030	if err != nil {
26031		return nil, err
26032	}
26033	req.Header = reqHeaders
26034	googleapi.Expand(req.URL, map[string]string{
26035		"merchantId": strconv.FormatUint(c.merchantId, 10),
26036	})
26037	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26038}
26039
26040// Do executes the "content.shippingsettings.getsupportedcarriers" call.
26041// Exactly one of *ShippingsettingsGetSupportedCarriersResponse or error
26042// will be non-nil. Any non-2xx status code is an error. Response
26043// headers are in either
26044// *ShippingsettingsGetSupportedCarriersResponse.ServerResponse.Header
26045// or (if a response was returned at all) in
26046// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
26047// whether the returned error was because http.StatusNotModified was
26048// returned.
26049func (c *ShippingsettingsGetsupportedcarriersCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsGetSupportedCarriersResponse, error) {
26050	gensupport.SetOptions(c.urlParams_, opts...)
26051	res, err := c.doRequest("json")
26052	if res != nil && res.StatusCode == http.StatusNotModified {
26053		if res.Body != nil {
26054			res.Body.Close()
26055		}
26056		return nil, &googleapi.Error{
26057			Code:   res.StatusCode,
26058			Header: res.Header,
26059		}
26060	}
26061	if err != nil {
26062		return nil, err
26063	}
26064	defer googleapi.CloseBody(res)
26065	if err := googleapi.CheckResponse(res); err != nil {
26066		return nil, err
26067	}
26068	ret := &ShippingsettingsGetSupportedCarriersResponse{
26069		ServerResponse: googleapi.ServerResponse{
26070			Header:         res.Header,
26071			HTTPStatusCode: res.StatusCode,
26072		},
26073	}
26074	target := &ret
26075	if err := gensupport.DecodeResponse(target, res); err != nil {
26076		return nil, err
26077	}
26078	return ret, nil
26079	// {
26080	//   "description": "Retrieves supported carriers and carrier services for an account.",
26081	//   "httpMethod": "GET",
26082	//   "id": "content.shippingsettings.getsupportedcarriers",
26083	//   "parameterOrder": [
26084	//     "merchantId"
26085	//   ],
26086	//   "parameters": {
26087	//     "merchantId": {
26088	//       "description": "The ID of the account for which to retrieve the supported carriers.",
26089	//       "format": "uint64",
26090	//       "location": "path",
26091	//       "required": true,
26092	//       "type": "string"
26093	//     }
26094	//   },
26095	//   "path": "{merchantId}/supportedCarriers",
26096	//   "response": {
26097	//     "$ref": "ShippingsettingsGetSupportedCarriersResponse"
26098	//   },
26099	//   "scopes": [
26100	//     "https://www.googleapis.com/auth/content"
26101	//   ]
26102	// }
26103
26104}
26105
26106// method id "content.shippingsettings.getsupportedholidays":
26107
26108type ShippingsettingsGetsupportedholidaysCall struct {
26109	s            *APIService
26110	merchantId   uint64
26111	urlParams_   gensupport.URLParams
26112	ifNoneMatch_ string
26113	ctx_         context.Context
26114	header_      http.Header
26115}
26116
26117// Getsupportedholidays: Retrieves supported holidays for an account.
26118func (r *ShippingsettingsService) Getsupportedholidays(merchantId uint64) *ShippingsettingsGetsupportedholidaysCall {
26119	c := &ShippingsettingsGetsupportedholidaysCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26120	c.merchantId = merchantId
26121	return c
26122}
26123
26124// Fields allows partial responses to be retrieved. See
26125// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26126// for more information.
26127func (c *ShippingsettingsGetsupportedholidaysCall) Fields(s ...googleapi.Field) *ShippingsettingsGetsupportedholidaysCall {
26128	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26129	return c
26130}
26131
26132// IfNoneMatch sets the optional parameter which makes the operation
26133// fail if the object's ETag matches the given value. This is useful for
26134// getting updates only after the object has changed since the last
26135// request. Use googleapi.IsNotModified to check whether the response
26136// error from Do is the result of In-None-Match.
26137func (c *ShippingsettingsGetsupportedholidaysCall) IfNoneMatch(entityTag string) *ShippingsettingsGetsupportedholidaysCall {
26138	c.ifNoneMatch_ = entityTag
26139	return c
26140}
26141
26142// Context sets the context to be used in this call's Do method. Any
26143// pending HTTP request will be aborted if the provided context is
26144// canceled.
26145func (c *ShippingsettingsGetsupportedholidaysCall) Context(ctx context.Context) *ShippingsettingsGetsupportedholidaysCall {
26146	c.ctx_ = ctx
26147	return c
26148}
26149
26150// Header returns an http.Header that can be modified by the caller to
26151// add HTTP headers to the request.
26152func (c *ShippingsettingsGetsupportedholidaysCall) Header() http.Header {
26153	if c.header_ == nil {
26154		c.header_ = make(http.Header)
26155	}
26156	return c.header_
26157}
26158
26159func (c *ShippingsettingsGetsupportedholidaysCall) doRequest(alt string) (*http.Response, error) {
26160	reqHeaders := make(http.Header)
26161	for k, v := range c.header_ {
26162		reqHeaders[k] = v
26163	}
26164	reqHeaders.Set("User-Agent", c.s.userAgent())
26165	if c.ifNoneMatch_ != "" {
26166		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
26167	}
26168	var body io.Reader = nil
26169	c.urlParams_.Set("alt", alt)
26170	c.urlParams_.Set("prettyPrint", "false")
26171	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/supportedHolidays")
26172	urls += "?" + c.urlParams_.Encode()
26173	req, err := http.NewRequest("GET", urls, body)
26174	if err != nil {
26175		return nil, err
26176	}
26177	req.Header = reqHeaders
26178	googleapi.Expand(req.URL, map[string]string{
26179		"merchantId": strconv.FormatUint(c.merchantId, 10),
26180	})
26181	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26182}
26183
26184// Do executes the "content.shippingsettings.getsupportedholidays" call.
26185// Exactly one of *ShippingsettingsGetSupportedHolidaysResponse or error
26186// will be non-nil. Any non-2xx status code is an error. Response
26187// headers are in either
26188// *ShippingsettingsGetSupportedHolidaysResponse.ServerResponse.Header
26189// or (if a response was returned at all) in
26190// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
26191// whether the returned error was because http.StatusNotModified was
26192// returned.
26193func (c *ShippingsettingsGetsupportedholidaysCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsGetSupportedHolidaysResponse, error) {
26194	gensupport.SetOptions(c.urlParams_, opts...)
26195	res, err := c.doRequest("json")
26196	if res != nil && res.StatusCode == http.StatusNotModified {
26197		if res.Body != nil {
26198			res.Body.Close()
26199		}
26200		return nil, &googleapi.Error{
26201			Code:   res.StatusCode,
26202			Header: res.Header,
26203		}
26204	}
26205	if err != nil {
26206		return nil, err
26207	}
26208	defer googleapi.CloseBody(res)
26209	if err := googleapi.CheckResponse(res); err != nil {
26210		return nil, err
26211	}
26212	ret := &ShippingsettingsGetSupportedHolidaysResponse{
26213		ServerResponse: googleapi.ServerResponse{
26214			Header:         res.Header,
26215			HTTPStatusCode: res.StatusCode,
26216		},
26217	}
26218	target := &ret
26219	if err := gensupport.DecodeResponse(target, res); err != nil {
26220		return nil, err
26221	}
26222	return ret, nil
26223	// {
26224	//   "description": "Retrieves supported holidays for an account.",
26225	//   "httpMethod": "GET",
26226	//   "id": "content.shippingsettings.getsupportedholidays",
26227	//   "parameterOrder": [
26228	//     "merchantId"
26229	//   ],
26230	//   "parameters": {
26231	//     "merchantId": {
26232	//       "description": "The ID of the account for which to retrieve the supported holidays.",
26233	//       "format": "uint64",
26234	//       "location": "path",
26235	//       "required": true,
26236	//       "type": "string"
26237	//     }
26238	//   },
26239	//   "path": "{merchantId}/supportedHolidays",
26240	//   "response": {
26241	//     "$ref": "ShippingsettingsGetSupportedHolidaysResponse"
26242	//   },
26243	//   "scopes": [
26244	//     "https://www.googleapis.com/auth/content"
26245	//   ]
26246	// }
26247
26248}
26249
26250// method id "content.shippingsettings.list":
26251
26252type ShippingsettingsListCall struct {
26253	s            *APIService
26254	merchantId   uint64
26255	urlParams_   gensupport.URLParams
26256	ifNoneMatch_ string
26257	ctx_         context.Context
26258	header_      http.Header
26259}
26260
26261// List: Lists the shipping settings of the sub-accounts in your
26262// Merchant Center account.
26263func (r *ShippingsettingsService) List(merchantId uint64) *ShippingsettingsListCall {
26264	c := &ShippingsettingsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26265	c.merchantId = merchantId
26266	return c
26267}
26268
26269// MaxResults sets the optional parameter "maxResults": The maximum
26270// number of shipping settings to return in the response, used for
26271// paging.
26272func (c *ShippingsettingsListCall) MaxResults(maxResults int64) *ShippingsettingsListCall {
26273	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
26274	return c
26275}
26276
26277// PageToken sets the optional parameter "pageToken": The token returned
26278// by the previous request.
26279func (c *ShippingsettingsListCall) PageToken(pageToken string) *ShippingsettingsListCall {
26280	c.urlParams_.Set("pageToken", pageToken)
26281	return c
26282}
26283
26284// Fields allows partial responses to be retrieved. See
26285// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26286// for more information.
26287func (c *ShippingsettingsListCall) Fields(s ...googleapi.Field) *ShippingsettingsListCall {
26288	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26289	return c
26290}
26291
26292// IfNoneMatch sets the optional parameter which makes the operation
26293// fail if the object's ETag matches the given value. This is useful for
26294// getting updates only after the object has changed since the last
26295// request. Use googleapi.IsNotModified to check whether the response
26296// error from Do is the result of In-None-Match.
26297func (c *ShippingsettingsListCall) IfNoneMatch(entityTag string) *ShippingsettingsListCall {
26298	c.ifNoneMatch_ = entityTag
26299	return c
26300}
26301
26302// Context sets the context to be used in this call's Do method. Any
26303// pending HTTP request will be aborted if the provided context is
26304// canceled.
26305func (c *ShippingsettingsListCall) Context(ctx context.Context) *ShippingsettingsListCall {
26306	c.ctx_ = ctx
26307	return c
26308}
26309
26310// Header returns an http.Header that can be modified by the caller to
26311// add HTTP headers to the request.
26312func (c *ShippingsettingsListCall) Header() http.Header {
26313	if c.header_ == nil {
26314		c.header_ = make(http.Header)
26315	}
26316	return c.header_
26317}
26318
26319func (c *ShippingsettingsListCall) doRequest(alt string) (*http.Response, error) {
26320	reqHeaders := make(http.Header)
26321	for k, v := range c.header_ {
26322		reqHeaders[k] = v
26323	}
26324	reqHeaders.Set("User-Agent", c.s.userAgent())
26325	if c.ifNoneMatch_ != "" {
26326		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
26327	}
26328	var body io.Reader = nil
26329	c.urlParams_.Set("alt", alt)
26330	c.urlParams_.Set("prettyPrint", "false")
26331	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/shippingsettings")
26332	urls += "?" + c.urlParams_.Encode()
26333	req, err := http.NewRequest("GET", urls, body)
26334	if err != nil {
26335		return nil, err
26336	}
26337	req.Header = reqHeaders
26338	googleapi.Expand(req.URL, map[string]string{
26339		"merchantId": strconv.FormatUint(c.merchantId, 10),
26340	})
26341	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26342}
26343
26344// Do executes the "content.shippingsettings.list" call.
26345// Exactly one of *ShippingsettingsListResponse or error will be
26346// non-nil. Any non-2xx status code is an error. Response headers are in
26347// either *ShippingsettingsListResponse.ServerResponse.Header or (if a
26348// response was returned at all) in error.(*googleapi.Error).Header. Use
26349// googleapi.IsNotModified to check whether the returned error was
26350// because http.StatusNotModified was returned.
26351func (c *ShippingsettingsListCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsListResponse, error) {
26352	gensupport.SetOptions(c.urlParams_, opts...)
26353	res, err := c.doRequest("json")
26354	if res != nil && res.StatusCode == http.StatusNotModified {
26355		if res.Body != nil {
26356			res.Body.Close()
26357		}
26358		return nil, &googleapi.Error{
26359			Code:   res.StatusCode,
26360			Header: res.Header,
26361		}
26362	}
26363	if err != nil {
26364		return nil, err
26365	}
26366	defer googleapi.CloseBody(res)
26367	if err := googleapi.CheckResponse(res); err != nil {
26368		return nil, err
26369	}
26370	ret := &ShippingsettingsListResponse{
26371		ServerResponse: googleapi.ServerResponse{
26372			Header:         res.Header,
26373			HTTPStatusCode: res.StatusCode,
26374		},
26375	}
26376	target := &ret
26377	if err := gensupport.DecodeResponse(target, res); err != nil {
26378		return nil, err
26379	}
26380	return ret, nil
26381	// {
26382	//   "description": "Lists the shipping settings of the sub-accounts in your Merchant Center account.",
26383	//   "httpMethod": "GET",
26384	//   "id": "content.shippingsettings.list",
26385	//   "parameterOrder": [
26386	//     "merchantId"
26387	//   ],
26388	//   "parameters": {
26389	//     "maxResults": {
26390	//       "description": "The maximum number of shipping settings to return in the response, used for paging.",
26391	//       "format": "uint32",
26392	//       "location": "query",
26393	//       "type": "integer"
26394	//     },
26395	//     "merchantId": {
26396	//       "description": "The ID of the managing account. This must be a multi-client account.",
26397	//       "format": "uint64",
26398	//       "location": "path",
26399	//       "required": true,
26400	//       "type": "string"
26401	//     },
26402	//     "pageToken": {
26403	//       "description": "The token returned by the previous request.",
26404	//       "location": "query",
26405	//       "type": "string"
26406	//     }
26407	//   },
26408	//   "path": "{merchantId}/shippingsettings",
26409	//   "response": {
26410	//     "$ref": "ShippingsettingsListResponse"
26411	//   },
26412	//   "scopes": [
26413	//     "https://www.googleapis.com/auth/content"
26414	//   ]
26415	// }
26416
26417}
26418
26419// Pages invokes f for each page of results.
26420// A non-nil error returned from f will halt the iteration.
26421// The provided context supersedes any context provided to the Context method.
26422func (c *ShippingsettingsListCall) Pages(ctx context.Context, f func(*ShippingsettingsListResponse) error) error {
26423	c.ctx_ = ctx
26424	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
26425	for {
26426		x, err := c.Do()
26427		if err != nil {
26428			return err
26429		}
26430		if err := f(x); err != nil {
26431			return err
26432		}
26433		if x.NextPageToken == "" {
26434			return nil
26435		}
26436		c.PageToken(x.NextPageToken)
26437	}
26438}
26439
26440// method id "content.shippingsettings.patch":
26441
26442type ShippingsettingsPatchCall struct {
26443	s                *APIService
26444	merchantId       uint64
26445	accountId        uint64
26446	shippingsettings *ShippingSettings
26447	urlParams_       gensupport.URLParams
26448	ctx_             context.Context
26449	header_          http.Header
26450}
26451
26452// Patch: Updates the shipping settings of the account. This method
26453// supports patch semantics.
26454func (r *ShippingsettingsService) Patch(merchantId uint64, accountId uint64, shippingsettings *ShippingSettings) *ShippingsettingsPatchCall {
26455	c := &ShippingsettingsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26456	c.merchantId = merchantId
26457	c.accountId = accountId
26458	c.shippingsettings = shippingsettings
26459	return c
26460}
26461
26462// DryRun sets the optional parameter "dryRun": Flag to simulate a
26463// request like in a live environment. If set to true, dry-run mode
26464// checks the validity of the request and returns errors (if any).
26465func (c *ShippingsettingsPatchCall) DryRun(dryRun bool) *ShippingsettingsPatchCall {
26466	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
26467	return c
26468}
26469
26470// Fields allows partial responses to be retrieved. See
26471// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26472// for more information.
26473func (c *ShippingsettingsPatchCall) Fields(s ...googleapi.Field) *ShippingsettingsPatchCall {
26474	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26475	return c
26476}
26477
26478// Context sets the context to be used in this call's Do method. Any
26479// pending HTTP request will be aborted if the provided context is
26480// canceled.
26481func (c *ShippingsettingsPatchCall) Context(ctx context.Context) *ShippingsettingsPatchCall {
26482	c.ctx_ = ctx
26483	return c
26484}
26485
26486// Header returns an http.Header that can be modified by the caller to
26487// add HTTP headers to the request.
26488func (c *ShippingsettingsPatchCall) Header() http.Header {
26489	if c.header_ == nil {
26490		c.header_ = make(http.Header)
26491	}
26492	return c.header_
26493}
26494
26495func (c *ShippingsettingsPatchCall) doRequest(alt string) (*http.Response, error) {
26496	reqHeaders := make(http.Header)
26497	for k, v := range c.header_ {
26498		reqHeaders[k] = v
26499	}
26500	reqHeaders.Set("User-Agent", c.s.userAgent())
26501	var body io.Reader = nil
26502	body, err := googleapi.WithoutDataWrapper.JSONReader(c.shippingsettings)
26503	if err != nil {
26504		return nil, err
26505	}
26506	reqHeaders.Set("Content-Type", "application/json")
26507	c.urlParams_.Set("alt", alt)
26508	c.urlParams_.Set("prettyPrint", "false")
26509	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/shippingsettings/{accountId}")
26510	urls += "?" + c.urlParams_.Encode()
26511	req, err := http.NewRequest("PATCH", urls, body)
26512	if err != nil {
26513		return nil, err
26514	}
26515	req.Header = reqHeaders
26516	googleapi.Expand(req.URL, map[string]string{
26517		"merchantId": strconv.FormatUint(c.merchantId, 10),
26518		"accountId":  strconv.FormatUint(c.accountId, 10),
26519	})
26520	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26521}
26522
26523// Do executes the "content.shippingsettings.patch" call.
26524// Exactly one of *ShippingSettings or error will be non-nil. Any
26525// non-2xx status code is an error. Response headers are in either
26526// *ShippingSettings.ServerResponse.Header or (if a response was
26527// returned at all) in error.(*googleapi.Error).Header. Use
26528// googleapi.IsNotModified to check whether the returned error was
26529// because http.StatusNotModified was returned.
26530func (c *ShippingsettingsPatchCall) Do(opts ...googleapi.CallOption) (*ShippingSettings, error) {
26531	gensupport.SetOptions(c.urlParams_, opts...)
26532	res, err := c.doRequest("json")
26533	if res != nil && res.StatusCode == http.StatusNotModified {
26534		if res.Body != nil {
26535			res.Body.Close()
26536		}
26537		return nil, &googleapi.Error{
26538			Code:   res.StatusCode,
26539			Header: res.Header,
26540		}
26541	}
26542	if err != nil {
26543		return nil, err
26544	}
26545	defer googleapi.CloseBody(res)
26546	if err := googleapi.CheckResponse(res); err != nil {
26547		return nil, err
26548	}
26549	ret := &ShippingSettings{
26550		ServerResponse: googleapi.ServerResponse{
26551			Header:         res.Header,
26552			HTTPStatusCode: res.StatusCode,
26553		},
26554	}
26555	target := &ret
26556	if err := gensupport.DecodeResponse(target, res); err != nil {
26557		return nil, err
26558	}
26559	return ret, nil
26560	// {
26561	//   "description": "Updates the shipping settings of the account. This method supports patch semantics.",
26562	//   "httpMethod": "PATCH",
26563	//   "id": "content.shippingsettings.patch",
26564	//   "parameterOrder": [
26565	//     "merchantId",
26566	//     "accountId"
26567	//   ],
26568	//   "parameters": {
26569	//     "accountId": {
26570	//       "description": "The ID of the account for which to get/update shipping settings.",
26571	//       "format": "uint64",
26572	//       "location": "path",
26573	//       "required": true,
26574	//       "type": "string"
26575	//     },
26576	//     "dryRun": {
26577	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
26578	//       "location": "query",
26579	//       "type": "boolean"
26580	//     },
26581	//     "merchantId": {
26582	//       "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.",
26583	//       "format": "uint64",
26584	//       "location": "path",
26585	//       "required": true,
26586	//       "type": "string"
26587	//     }
26588	//   },
26589	//   "path": "{merchantId}/shippingsettings/{accountId}",
26590	//   "request": {
26591	//     "$ref": "ShippingSettings"
26592	//   },
26593	//   "response": {
26594	//     "$ref": "ShippingSettings"
26595	//   },
26596	//   "scopes": [
26597	//     "https://www.googleapis.com/auth/content"
26598	//   ]
26599	// }
26600
26601}
26602
26603// method id "content.shippingsettings.update":
26604
26605type ShippingsettingsUpdateCall struct {
26606	s                *APIService
26607	merchantId       uint64
26608	accountId        uint64
26609	shippingsettings *ShippingSettings
26610	urlParams_       gensupport.URLParams
26611	ctx_             context.Context
26612	header_          http.Header
26613}
26614
26615// Update: Updates the shipping settings of the account.
26616func (r *ShippingsettingsService) Update(merchantId uint64, accountId uint64, shippingsettings *ShippingSettings) *ShippingsettingsUpdateCall {
26617	c := &ShippingsettingsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26618	c.merchantId = merchantId
26619	c.accountId = accountId
26620	c.shippingsettings = shippingsettings
26621	return c
26622}
26623
26624// DryRun sets the optional parameter "dryRun": Flag to simulate a
26625// request like in a live environment. If set to true, dry-run mode
26626// checks the validity of the request and returns errors (if any).
26627func (c *ShippingsettingsUpdateCall) DryRun(dryRun bool) *ShippingsettingsUpdateCall {
26628	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
26629	return c
26630}
26631
26632// Fields allows partial responses to be retrieved. See
26633// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26634// for more information.
26635func (c *ShippingsettingsUpdateCall) Fields(s ...googleapi.Field) *ShippingsettingsUpdateCall {
26636	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26637	return c
26638}
26639
26640// Context sets the context to be used in this call's Do method. Any
26641// pending HTTP request will be aborted if the provided context is
26642// canceled.
26643func (c *ShippingsettingsUpdateCall) Context(ctx context.Context) *ShippingsettingsUpdateCall {
26644	c.ctx_ = ctx
26645	return c
26646}
26647
26648// Header returns an http.Header that can be modified by the caller to
26649// add HTTP headers to the request.
26650func (c *ShippingsettingsUpdateCall) Header() http.Header {
26651	if c.header_ == nil {
26652		c.header_ = make(http.Header)
26653	}
26654	return c.header_
26655}
26656
26657func (c *ShippingsettingsUpdateCall) doRequest(alt string) (*http.Response, error) {
26658	reqHeaders := make(http.Header)
26659	for k, v := range c.header_ {
26660		reqHeaders[k] = v
26661	}
26662	reqHeaders.Set("User-Agent", c.s.userAgent())
26663	var body io.Reader = nil
26664	body, err := googleapi.WithoutDataWrapper.JSONReader(c.shippingsettings)
26665	if err != nil {
26666		return nil, err
26667	}
26668	reqHeaders.Set("Content-Type", "application/json")
26669	c.urlParams_.Set("alt", alt)
26670	c.urlParams_.Set("prettyPrint", "false")
26671	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/shippingsettings/{accountId}")
26672	urls += "?" + c.urlParams_.Encode()
26673	req, err := http.NewRequest("PUT", urls, body)
26674	if err != nil {
26675		return nil, err
26676	}
26677	req.Header = reqHeaders
26678	googleapi.Expand(req.URL, map[string]string{
26679		"merchantId": strconv.FormatUint(c.merchantId, 10),
26680		"accountId":  strconv.FormatUint(c.accountId, 10),
26681	})
26682	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26683}
26684
26685// Do executes the "content.shippingsettings.update" call.
26686// Exactly one of *ShippingSettings or error will be non-nil. Any
26687// non-2xx status code is an error. Response headers are in either
26688// *ShippingSettings.ServerResponse.Header or (if a response was
26689// returned at all) in error.(*googleapi.Error).Header. Use
26690// googleapi.IsNotModified to check whether the returned error was
26691// because http.StatusNotModified was returned.
26692func (c *ShippingsettingsUpdateCall) Do(opts ...googleapi.CallOption) (*ShippingSettings, error) {
26693	gensupport.SetOptions(c.urlParams_, opts...)
26694	res, err := c.doRequest("json")
26695	if res != nil && res.StatusCode == http.StatusNotModified {
26696		if res.Body != nil {
26697			res.Body.Close()
26698		}
26699		return nil, &googleapi.Error{
26700			Code:   res.StatusCode,
26701			Header: res.Header,
26702		}
26703	}
26704	if err != nil {
26705		return nil, err
26706	}
26707	defer googleapi.CloseBody(res)
26708	if err := googleapi.CheckResponse(res); err != nil {
26709		return nil, err
26710	}
26711	ret := &ShippingSettings{
26712		ServerResponse: googleapi.ServerResponse{
26713			Header:         res.Header,
26714			HTTPStatusCode: res.StatusCode,
26715		},
26716	}
26717	target := &ret
26718	if err := gensupport.DecodeResponse(target, res); err != nil {
26719		return nil, err
26720	}
26721	return ret, nil
26722	// {
26723	//   "description": "Updates the shipping settings of the account.",
26724	//   "httpMethod": "PUT",
26725	//   "id": "content.shippingsettings.update",
26726	//   "parameterOrder": [
26727	//     "merchantId",
26728	//     "accountId"
26729	//   ],
26730	//   "parameters": {
26731	//     "accountId": {
26732	//       "description": "The ID of the account for which to get/update shipping settings.",
26733	//       "format": "uint64",
26734	//       "location": "path",
26735	//       "required": true,
26736	//       "type": "string"
26737	//     },
26738	//     "dryRun": {
26739	//       "description": "Flag to simulate a request like in a live environment. If set to true, dry-run mode checks the validity of the request and returns errors (if any).",
26740	//       "location": "query",
26741	//       "type": "boolean"
26742	//     },
26743	//     "merchantId": {
26744	//       "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.",
26745	//       "format": "uint64",
26746	//       "location": "path",
26747	//       "required": true,
26748	//       "type": "string"
26749	//     }
26750	//   },
26751	//   "path": "{merchantId}/shippingsettings/{accountId}",
26752	//   "request": {
26753	//     "$ref": "ShippingSettings"
26754	//   },
26755	//   "response": {
26756	//     "$ref": "ShippingSettings"
26757	//   },
26758	//   "scopes": [
26759	//     "https://www.googleapis.com/auth/content"
26760	//   ]
26761	// }
26762
26763}
26764