...

Source file src/google.golang.org/api/content/v2/content-gen.go

Documentation: google.golang.org/api/content/v2

     1  // Copyright 2022 Google LLC.
     2  // Use of this source code is governed by a BSD-style
     3  // license that can be found in the LICENSE file.
     4  
     5  // Code generated file. DO NOT EDIT.
     6  
     7  // Package content provides access to the Content API for Shopping.
     8  //
     9  // For product documentation, see: https://developers.google.com/shopping-content/v2/
    10  //
    11  // # Creating a client
    12  //
    13  // Usage example:
    14  //
    15  //	import "google.golang.org/api/content/v2"
    16  //	...
    17  //	ctx := context.Background()
    18  //	contentService, err := content.NewService(ctx)
    19  //
    20  // In this example, Google Application Default Credentials are used for authentication.
    21  //
    22  // For information on how to create and obtain Application Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials.
    23  //
    24  // # Other authentication options
    25  //
    26  // To use an API key for authentication (note: some APIs do not support API keys), use option.WithAPIKey:
    27  //
    28  //	contentService, err := content.NewService(ctx, option.WithAPIKey("AIza..."))
    29  //
    30  // To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow), use option.WithTokenSource:
    31  //
    32  //	config := &oauth2.Config{...}
    33  //	// ...
    34  //	token, err := config.Exchange(ctx, ...)
    35  //	contentService, err := content.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))
    36  //
    37  // See https://godoc.org/google.golang.org/api/option/ for details on options.
    38  package content // import "google.golang.org/api/content/v2"
    39  
    40  import (
    41  	"bytes"
    42  	"context"
    43  	"encoding/json"
    44  	"errors"
    45  	"fmt"
    46  	"io"
    47  	"net/http"
    48  	"net/url"
    49  	"strconv"
    50  	"strings"
    51  
    52  	googleapi "google.golang.org/api/googleapi"
    53  	internal "google.golang.org/api/internal"
    54  	gensupport "google.golang.org/api/internal/gensupport"
    55  	option "google.golang.org/api/option"
    56  	internaloption "google.golang.org/api/option/internaloption"
    57  	htransport "google.golang.org/api/transport/http"
    58  )
    59  
    60  // Always reference these packages, just in case the auto-generated code
    61  // below doesn't.
    62  var _ = bytes.NewBuffer
    63  var _ = strconv.Itoa
    64  var _ = fmt.Sprintf
    65  var _ = json.NewDecoder
    66  var _ = io.Copy
    67  var _ = url.Parse
    68  var _ = gensupport.MarshalJSON
    69  var _ = googleapi.Version
    70  var _ = errors.New
    71  var _ = strings.Replace
    72  var _ = context.Canceled
    73  var _ = internaloption.WithDefaultEndpoint
    74  
    75  const apiId = "content:v2"
    76  const apiName = "content"
    77  const apiVersion = "v2"
    78  const basePath = "https://shoppingcontent.googleapis.com/content/v2/"
    79  const mtlsBasePath = "https://shoppingcontent.mtls.googleapis.com/content/v2/"
    80  
    81  // OAuth2 scopes used by this API.
    82  const (
    83  	// Manage your product listings and accounts for Google Shopping
    84  	ContentScope = "https://www.googleapis.com/auth/content"
    85  )
    86  
    87  // NewService creates a new APIService.
    88  func NewService(ctx context.Context, opts ...option.ClientOption) (*APIService, error) {
    89  	scopesOption := internaloption.WithDefaultScopes(
    90  		"https://www.googleapis.com/auth/content",
    91  	)
    92  	// NOTE: prepend, so we don't override user-specified scopes.
    93  	opts = append([]option.ClientOption{scopesOption}, opts...)
    94  	opts = append(opts, internaloption.WithDefaultEndpoint(basePath))
    95  	opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath))
    96  	client, endpoint, err := htransport.NewClient(ctx, opts...)
    97  	if err != nil {
    98  		return nil, err
    99  	}
   100  	s, err := New(client)
   101  	if err != nil {
   102  		return nil, err
   103  	}
   104  	if endpoint != "" {
   105  		s.BasePath = endpoint
   106  	}
   107  	return s, nil
   108  }
   109  
   110  // New creates a new APIService. It uses the provided http.Client for requests.
   111  //
   112  // Deprecated: please use NewService instead.
   113  // To provide a custom HTTP client, use option.WithHTTPClient.
   114  // If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead.
   115  func New(client *http.Client) (*APIService, error) {
   116  	if client == nil {
   117  		return nil, errors.New("client is nil")
   118  	}
   119  	s := &APIService{client: client, BasePath: basePath}
   120  	s.Accounts = NewAccountsService(s)
   121  	s.Accountstatuses = NewAccountstatusesService(s)
   122  	s.Accounttax = NewAccounttaxService(s)
   123  	s.Datafeeds = NewDatafeedsService(s)
   124  	s.Datafeedstatuses = NewDatafeedstatusesService(s)
   125  	s.Liasettings = NewLiasettingsService(s)
   126  	s.Orderinvoices = NewOrderinvoicesService(s)
   127  	s.Orderreports = NewOrderreportsService(s)
   128  	s.Orderreturns = NewOrderreturnsService(s)
   129  	s.Orders = NewOrdersService(s)
   130  	s.Pos = NewPosService(s)
   131  	s.Products = NewProductsService(s)
   132  	s.Productstatuses = NewProductstatusesService(s)
   133  	s.Shippingsettings = NewShippingsettingsService(s)
   134  	return s, nil
   135  }
   136  
   137  type APIService struct {
   138  	client    *http.Client
   139  	BasePath  string // API endpoint base URL
   140  	UserAgent string // optional additional User-Agent fragment
   141  
   142  	Accounts *AccountsService
   143  
   144  	Accountstatuses *AccountstatusesService
   145  
   146  	Accounttax *AccounttaxService
   147  
   148  	Datafeeds *DatafeedsService
   149  
   150  	Datafeedstatuses *DatafeedstatusesService
   151  
   152  	Liasettings *LiasettingsService
   153  
   154  	Orderinvoices *OrderinvoicesService
   155  
   156  	Orderreports *OrderreportsService
   157  
   158  	Orderreturns *OrderreturnsService
   159  
   160  	Orders *OrdersService
   161  
   162  	Pos *PosService
   163  
   164  	Products *ProductsService
   165  
   166  	Productstatuses *ProductstatusesService
   167  
   168  	Shippingsettings *ShippingsettingsService
   169  }
   170  
   171  func (s *APIService) userAgent() string {
   172  	if s.UserAgent == "" {
   173  		return googleapi.UserAgent
   174  	}
   175  	return googleapi.UserAgent + " " + s.UserAgent
   176  }
   177  
   178  func NewAccountsService(s *APIService) *AccountsService {
   179  	rs := &AccountsService{s: s}
   180  	return rs
   181  }
   182  
   183  type AccountsService struct {
   184  	s *APIService
   185  }
   186  
   187  func NewAccountstatusesService(s *APIService) *AccountstatusesService {
   188  	rs := &AccountstatusesService{s: s}
   189  	return rs
   190  }
   191  
   192  type AccountstatusesService struct {
   193  	s *APIService
   194  }
   195  
   196  func NewAccounttaxService(s *APIService) *AccounttaxService {
   197  	rs := &AccounttaxService{s: s}
   198  	return rs
   199  }
   200  
   201  type AccounttaxService struct {
   202  	s *APIService
   203  }
   204  
   205  func NewDatafeedsService(s *APIService) *DatafeedsService {
   206  	rs := &DatafeedsService{s: s}
   207  	return rs
   208  }
   209  
   210  type DatafeedsService struct {
   211  	s *APIService
   212  }
   213  
   214  func NewDatafeedstatusesService(s *APIService) *DatafeedstatusesService {
   215  	rs := &DatafeedstatusesService{s: s}
   216  	return rs
   217  }
   218  
   219  type DatafeedstatusesService struct {
   220  	s *APIService
   221  }
   222  
   223  func NewLiasettingsService(s *APIService) *LiasettingsService {
   224  	rs := &LiasettingsService{s: s}
   225  	return rs
   226  }
   227  
   228  type LiasettingsService struct {
   229  	s *APIService
   230  }
   231  
   232  func NewOrderinvoicesService(s *APIService) *OrderinvoicesService {
   233  	rs := &OrderinvoicesService{s: s}
   234  	return rs
   235  }
   236  
   237  type OrderinvoicesService struct {
   238  	s *APIService
   239  }
   240  
   241  func NewOrderreportsService(s *APIService) *OrderreportsService {
   242  	rs := &OrderreportsService{s: s}
   243  	return rs
   244  }
   245  
   246  type OrderreportsService struct {
   247  	s *APIService
   248  }
   249  
   250  func NewOrderreturnsService(s *APIService) *OrderreturnsService {
   251  	rs := &OrderreturnsService{s: s}
   252  	return rs
   253  }
   254  
   255  type OrderreturnsService struct {
   256  	s *APIService
   257  }
   258  
   259  func NewOrdersService(s *APIService) *OrdersService {
   260  	rs := &OrdersService{s: s}
   261  	return rs
   262  }
   263  
   264  type OrdersService struct {
   265  	s *APIService
   266  }
   267  
   268  func NewPosService(s *APIService) *PosService {
   269  	rs := &PosService{s: s}
   270  	return rs
   271  }
   272  
   273  type PosService struct {
   274  	s *APIService
   275  }
   276  
   277  func NewProductsService(s *APIService) *ProductsService {
   278  	rs := &ProductsService{s: s}
   279  	return rs
   280  }
   281  
   282  type ProductsService struct {
   283  	s *APIService
   284  }
   285  
   286  func NewProductstatusesService(s *APIService) *ProductstatusesService {
   287  	rs := &ProductstatusesService{s: s}
   288  	return rs
   289  }
   290  
   291  type ProductstatusesService struct {
   292  	s *APIService
   293  }
   294  
   295  func NewShippingsettingsService(s *APIService) *ShippingsettingsService {
   296  	rs := &ShippingsettingsService{s: s}
   297  	return rs
   298  }
   299  
   300  type ShippingsettingsService struct {
   301  	s *APIService
   302  }
   303  
   304  // Account: Account data. After the creation of a new account it may
   305  // take a few minutes before it is fully operational. The methods
   306  // delete, insert, and update require the admin role.
   307  type Account struct {
   308  	// AdultContent: Indicates whether the merchant sells adult content.
   309  	AdultContent bool `json:"adultContent,omitempty"`
   310  
   311  	// AdwordsLinks: List of linked AdWords accounts that are active or
   312  	// pending approval. To create a new link request, add a new link with
   313  	// status `active` to the list. It will remain in a `pending` state
   314  	// until approved or rejected either in the AdWords interface or through
   315  	// the AdWords API. To delete an active link, or to cancel a link
   316  	// request, remove it from the list.
   317  	AdwordsLinks []*AccountAdwordsLink `json:"adwordsLinks,omitempty"`
   318  
   319  	// BusinessInformation: The business information of the account.
   320  	BusinessInformation *AccountBusinessInformation `json:"businessInformation,omitempty"`
   321  
   322  	// GoogleMyBusinessLink: The GMB account which is linked or in the
   323  	// process of being linked with the Merchant Center account.
   324  	GoogleMyBusinessLink *AccountGoogleMyBusinessLink `json:"googleMyBusinessLink,omitempty"`
   325  
   326  	// Id: Required for update. Merchant Center account ID.
   327  	Id uint64 `json:"id,omitempty,string"`
   328  
   329  	// Kind: Identifies what kind of resource this is. Value: the fixed
   330  	// string "content#account"
   331  	Kind string `json:"kind,omitempty"`
   332  
   333  	// Name: Required. Display name for the account.
   334  	Name string `json:"name,omitempty"`
   335  
   336  	// ReviewsUrl: [DEPRECATED] This field is never returned and will be
   337  	// ignored if provided.
   338  	ReviewsUrl string `json:"reviewsUrl,omitempty"`
   339  
   340  	// SellerId: Client-specific, locally-unique, internal ID for the child
   341  	// account.
   342  	SellerId string `json:"sellerId,omitempty"`
   343  
   344  	// Users: Users with access to the account. Every account (except for
   345  	// subaccounts) must have at least one admin user.
   346  	Users []*AccountUser `json:"users,omitempty"`
   347  
   348  	// WebsiteUrl: The merchant's website.
   349  	WebsiteUrl string `json:"websiteUrl,omitempty"`
   350  
   351  	// YoutubeChannelLinks: List of linked YouTube channels that are active
   352  	// or pending approval. To create a new link request, add a new link
   353  	// with status `active` to the list. It will remain in a `pending` state
   354  	// until approved or rejected in the YT Creator Studio interface. To
   355  	// delete an active link, or to cancel a link request, remove it from
   356  	// the list.
   357  	YoutubeChannelLinks []*AccountYouTubeChannelLink `json:"youtubeChannelLinks,omitempty"`
   358  
   359  	// ServerResponse contains the HTTP response code and headers from the
   360  	// server.
   361  	googleapi.ServerResponse `json:"-"`
   362  
   363  	// ForceSendFields is a list of field names (e.g. "AdultContent") to
   364  	// unconditionally include in API requests. By default, fields with
   365  	// empty or default values are omitted from API requests. However, any
   366  	// non-pointer, non-interface field appearing in ForceSendFields will be
   367  	// sent to the server regardless of whether the field is empty or not.
   368  	// This may be used to include empty fields in Patch requests.
   369  	ForceSendFields []string `json:"-"`
   370  
   371  	// NullFields is a list of field names (e.g. "AdultContent") to include
   372  	// in API requests with the JSON null value. By default, fields with
   373  	// empty values are omitted from API requests. However, any field with
   374  	// an empty value appearing in NullFields will be sent to the server as
   375  	// null. It is an error if a field in this list has a non-empty value.
   376  	// This may be used to include null fields in Patch requests.
   377  	NullFields []string `json:"-"`
   378  }
   379  
   380  func (s *Account) MarshalJSON() ([]byte, error) {
   381  	type NoMethod Account
   382  	raw := NoMethod(*s)
   383  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   384  }
   385  
   386  type AccountAddress struct {
   387  	// Country: CLDR country code (e.g. "US"). This value cannot be set for
   388  	// a sub-account of an MCA. All MCA sub-accounts inherit the country of
   389  	// their parent MCA.
   390  	Country string `json:"country,omitempty"`
   391  
   392  	// Locality: City, town or commune. May also include dependent
   393  	// localities or sublocalities (e.g. neighborhoods or suburbs).
   394  	Locality string `json:"locality,omitempty"`
   395  
   396  	// PostalCode: Postal code or ZIP (e.g. "94043").
   397  	PostalCode string `json:"postalCode,omitempty"`
   398  
   399  	// Region: Top-level administrative subdivision of the country. For
   400  	// example, a state like California ("CA") or a province like Quebec
   401  	// ("QC").
   402  	Region string `json:"region,omitempty"`
   403  
   404  	// StreetAddress: Street-level part of the address.
   405  	StreetAddress string `json:"streetAddress,omitempty"`
   406  
   407  	// ForceSendFields is a list of field names (e.g. "Country") to
   408  	// unconditionally include in API requests. By default, fields with
   409  	// empty or default values are omitted from API requests. However, any
   410  	// non-pointer, non-interface field appearing in ForceSendFields will be
   411  	// sent to the server regardless of whether the field is empty or not.
   412  	// This may be used to include empty fields in Patch requests.
   413  	ForceSendFields []string `json:"-"`
   414  
   415  	// NullFields is a list of field names (e.g. "Country") to include in
   416  	// API requests with the JSON null value. By default, fields with empty
   417  	// values are omitted from API requests. However, any field with an
   418  	// empty value appearing in NullFields will be sent to the server as
   419  	// null. It is an error if a field in this list has a non-empty value.
   420  	// This may be used to include null fields in Patch requests.
   421  	NullFields []string `json:"-"`
   422  }
   423  
   424  func (s *AccountAddress) MarshalJSON() ([]byte, error) {
   425  	type NoMethod AccountAddress
   426  	raw := NoMethod(*s)
   427  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   428  }
   429  
   430  type AccountAdwordsLink struct {
   431  	// AdwordsId: Customer ID of the AdWords account.
   432  	AdwordsId uint64 `json:"adwordsId,omitempty,string"`
   433  
   434  	// Status: Status of the link between this Merchant Center account and
   435  	// the AdWords account. Upon retrieval, it represents the actual status
   436  	// of the link and can be either `active` if it was approved in Google
   437  	// AdWords or `pending` if it's pending approval. Upon insertion, it
   438  	// represents the *intended* status of the link. Re-uploading a link
   439  	// with status `active` when it's still pending or with status `pending`
   440  	// when it's already active will have no effect: the status will remain
   441  	// unchanged. Re-uploading a link with deprecated status `inactive` is
   442  	// equivalent to not submitting the link at all and will delete the link
   443  	// if it was active or cancel the link request if it was pending.
   444  	// Acceptable values are: - "active" - "pending"
   445  	Status string `json:"status,omitempty"`
   446  
   447  	// ForceSendFields is a list of field names (e.g. "AdwordsId") to
   448  	// unconditionally include in API requests. By default, fields with
   449  	// empty or default values are omitted from API requests. However, any
   450  	// non-pointer, non-interface field appearing in ForceSendFields will be
   451  	// sent to the server regardless of whether the field is empty or not.
   452  	// This may be used to include empty fields in Patch requests.
   453  	ForceSendFields []string `json:"-"`
   454  
   455  	// NullFields is a list of field names (e.g. "AdwordsId") to include in
   456  	// API requests with the JSON null value. By default, fields with empty
   457  	// values are omitted from API requests. However, any field with an
   458  	// empty value appearing in NullFields will be sent to the server as
   459  	// null. It is an error if a field in this list has a non-empty value.
   460  	// This may be used to include null fields in Patch requests.
   461  	NullFields []string `json:"-"`
   462  }
   463  
   464  func (s *AccountAdwordsLink) MarshalJSON() ([]byte, error) {
   465  	type NoMethod AccountAdwordsLink
   466  	raw := NoMethod(*s)
   467  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   468  }
   469  
   470  type AccountBusinessInformation struct {
   471  	// Address: The address of the business.
   472  	Address *AccountAddress `json:"address,omitempty"`
   473  
   474  	// CustomerService: The customer service information of the business.
   475  	CustomerService *AccountCustomerService `json:"customerService,omitempty"`
   476  
   477  	// KoreanBusinessRegistrationNumber: The 10-digit Korean business
   478  	// registration number
   479  	// (https://support.google.com/merchants/answer/9037766) separated with
   480  	// dashes in the format: XXX-XX-XXXXX. This field will only be updated
   481  	// if explicitly set.
   482  	KoreanBusinessRegistrationNumber string `json:"koreanBusinessRegistrationNumber,omitempty"`
   483  
   484  	// PhoneNumber: The phone number of the business.
   485  	PhoneNumber string `json:"phoneNumber,omitempty"`
   486  
   487  	// ForceSendFields is a list of field names (e.g. "Address") to
   488  	// unconditionally include in API requests. By default, fields with
   489  	// empty or default values are omitted from API requests. However, any
   490  	// non-pointer, non-interface field appearing in ForceSendFields will be
   491  	// sent to the server regardless of whether the field is empty or not.
   492  	// This may be used to include empty fields in Patch requests.
   493  	ForceSendFields []string `json:"-"`
   494  
   495  	// NullFields is a list of field names (e.g. "Address") to include in
   496  	// API requests with the JSON null value. By default, fields with empty
   497  	// values are omitted from API requests. However, any field with an
   498  	// empty value appearing in NullFields will be sent to the server as
   499  	// null. It is an error if a field in this list has a non-empty value.
   500  	// This may be used to include null fields in Patch requests.
   501  	NullFields []string `json:"-"`
   502  }
   503  
   504  func (s *AccountBusinessInformation) MarshalJSON() ([]byte, error) {
   505  	type NoMethod AccountBusinessInformation
   506  	raw := NoMethod(*s)
   507  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   508  }
   509  
   510  type AccountCustomerService struct {
   511  	// Email: Customer service email.
   512  	Email string `json:"email,omitempty"`
   513  
   514  	// PhoneNumber: Customer service phone number.
   515  	PhoneNumber string `json:"phoneNumber,omitempty"`
   516  
   517  	// Url: Customer service URL.
   518  	Url string `json:"url,omitempty"`
   519  
   520  	// ForceSendFields is a list of field names (e.g. "Email") to
   521  	// unconditionally include in API requests. By default, fields with
   522  	// empty or default values are omitted from API requests. However, any
   523  	// non-pointer, non-interface field appearing in ForceSendFields will be
   524  	// sent to the server regardless of whether the field is empty or not.
   525  	// This may be used to include empty fields in Patch requests.
   526  	ForceSendFields []string `json:"-"`
   527  
   528  	// NullFields is a list of field names (e.g. "Email") to include in API
   529  	// requests with the JSON null value. By default, fields with empty
   530  	// values are omitted from API requests. However, any field with an
   531  	// empty value appearing in NullFields will be sent to the server as
   532  	// null. It is an error if a field in this list has a non-empty value.
   533  	// This may be used to include null fields in Patch requests.
   534  	NullFields []string `json:"-"`
   535  }
   536  
   537  func (s *AccountCustomerService) MarshalJSON() ([]byte, error) {
   538  	type NoMethod AccountCustomerService
   539  	raw := NoMethod(*s)
   540  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   541  }
   542  
   543  type AccountGoogleMyBusinessLink struct {
   544  	// GmbEmail: The GMB email address of which a specific account within a
   545  	// GMB account. A sample account within a GMB account could be a
   546  	// business account with set of locations, managed under the GMB
   547  	// account.
   548  	GmbEmail string `json:"gmbEmail,omitempty"`
   549  
   550  	// Status: Status of the link between this Merchant Center account and
   551  	// the GMB account. Acceptable values are: - "active" - "pending"
   552  	Status string `json:"status,omitempty"`
   553  
   554  	// ForceSendFields is a list of field names (e.g. "GmbEmail") to
   555  	// unconditionally include in API requests. By default, fields with
   556  	// empty or default values are omitted from API requests. However, any
   557  	// non-pointer, non-interface field appearing in ForceSendFields will be
   558  	// sent to the server regardless of whether the field is empty or not.
   559  	// This may be used to include empty fields in Patch requests.
   560  	ForceSendFields []string `json:"-"`
   561  
   562  	// NullFields is a list of field names (e.g. "GmbEmail") to include in
   563  	// API requests with the JSON null value. By default, fields with empty
   564  	// values are omitted from API requests. However, any field with an
   565  	// empty value appearing in NullFields will be sent to the server as
   566  	// null. It is an error if a field in this list has a non-empty value.
   567  	// This may be used to include null fields in Patch requests.
   568  	NullFields []string `json:"-"`
   569  }
   570  
   571  func (s *AccountGoogleMyBusinessLink) MarshalJSON() ([]byte, error) {
   572  	type NoMethod AccountGoogleMyBusinessLink
   573  	raw := NoMethod(*s)
   574  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   575  }
   576  
   577  type AccountIdentifier struct {
   578  	// AggregatorId: The aggregator ID, set for aggregators and subaccounts
   579  	// (in that case, it represents the aggregator of the subaccount).
   580  	AggregatorId uint64 `json:"aggregatorId,omitempty,string"`
   581  
   582  	// MerchantId: The merchant account ID, set for individual accounts and
   583  	// subaccounts.
   584  	MerchantId uint64 `json:"merchantId,omitempty,string"`
   585  
   586  	// ForceSendFields is a list of field names (e.g. "AggregatorId") to
   587  	// unconditionally include in API requests. By default, fields with
   588  	// empty or default values are omitted from API requests. However, any
   589  	// non-pointer, non-interface field appearing in ForceSendFields will be
   590  	// sent to the server regardless of whether the field is empty or not.
   591  	// This may be used to include empty fields in Patch requests.
   592  	ForceSendFields []string `json:"-"`
   593  
   594  	// NullFields is a list of field names (e.g. "AggregatorId") to include
   595  	// in API requests with the JSON null value. By default, fields with
   596  	// empty values are omitted from API requests. However, any field with
   597  	// an empty value appearing in NullFields will be sent to the server as
   598  	// null. It is an error if a field in this list has a non-empty value.
   599  	// This may be used to include null fields in Patch requests.
   600  	NullFields []string `json:"-"`
   601  }
   602  
   603  func (s *AccountIdentifier) MarshalJSON() ([]byte, error) {
   604  	type NoMethod AccountIdentifier
   605  	raw := NoMethod(*s)
   606  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   607  }
   608  
   609  // AccountStatus: The status of an account, i.e., information about its
   610  // products, which is computed offline and not returned immediately at
   611  // insertion time.
   612  type AccountStatus struct {
   613  	// AccountId: The ID of the account for which the status is reported.
   614  	AccountId string `json:"accountId,omitempty"`
   615  
   616  	// AccountLevelIssues: A list of account level issues.
   617  	AccountLevelIssues []*AccountStatusAccountLevelIssue `json:"accountLevelIssues,omitempty"`
   618  
   619  	// DataQualityIssues: DEPRECATED - never populated.
   620  	DataQualityIssues []*AccountStatusDataQualityIssue `json:"dataQualityIssues,omitempty"`
   621  
   622  	// Kind: Identifies what kind of resource this is. Value: the fixed
   623  	// string "content#accountStatus"
   624  	Kind string `json:"kind,omitempty"`
   625  
   626  	// Products: List of product-related data by channel, destination, and
   627  	// country. Data in this field may be delayed by up to 30 minutes.
   628  	Products []*AccountStatusProducts `json:"products,omitempty"`
   629  
   630  	// WebsiteClaimed: Whether the account's website is claimed or not.
   631  	WebsiteClaimed bool `json:"websiteClaimed,omitempty"`
   632  
   633  	// ServerResponse contains the HTTP response code and headers from the
   634  	// server.
   635  	googleapi.ServerResponse `json:"-"`
   636  
   637  	// ForceSendFields is a list of field names (e.g. "AccountId") to
   638  	// unconditionally include in API requests. By default, fields with
   639  	// empty or default values are omitted from API requests. However, any
   640  	// non-pointer, non-interface field appearing in ForceSendFields will be
   641  	// sent to the server regardless of whether the field is empty or not.
   642  	// This may be used to include empty fields in Patch requests.
   643  	ForceSendFields []string `json:"-"`
   644  
   645  	// NullFields is a list of field names (e.g. "AccountId") to include in
   646  	// API requests with the JSON null value. By default, fields with empty
   647  	// values are omitted from API requests. However, any field with an
   648  	// empty value appearing in NullFields will be sent to the server as
   649  	// null. It is an error if a field in this list has a non-empty value.
   650  	// This may be used to include null fields in Patch requests.
   651  	NullFields []string `json:"-"`
   652  }
   653  
   654  func (s *AccountStatus) MarshalJSON() ([]byte, error) {
   655  	type NoMethod AccountStatus
   656  	raw := NoMethod(*s)
   657  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   658  }
   659  
   660  type AccountStatusAccountLevelIssue struct {
   661  	// Country: Country for which this issue is reported.
   662  	Country string `json:"country,omitempty"`
   663  
   664  	// Destination: The destination the issue applies to. If this field is
   665  	// empty then the issue applies to all available destinations.
   666  	Destination string `json:"destination,omitempty"`
   667  
   668  	// Detail: Additional details about the issue.
   669  	Detail string `json:"detail,omitempty"`
   670  
   671  	// Documentation: The URL of a web page to help resolving this issue.
   672  	Documentation string `json:"documentation,omitempty"`
   673  
   674  	// Id: Issue identifier.
   675  	Id string `json:"id,omitempty"`
   676  
   677  	// Severity: Severity of the issue. Acceptable values are: -
   678  	// "critical" - "error" - "suggestion"
   679  	Severity string `json:"severity,omitempty"`
   680  
   681  	// Title: Short description of the issue.
   682  	Title string `json:"title,omitempty"`
   683  
   684  	// ForceSendFields is a list of field names (e.g. "Country") to
   685  	// unconditionally include in API requests. By default, fields with
   686  	// empty or default values are omitted from API requests. However, any
   687  	// non-pointer, non-interface field appearing in ForceSendFields will be
   688  	// sent to the server regardless of whether the field is empty or not.
   689  	// This may be used to include empty fields in Patch requests.
   690  	ForceSendFields []string `json:"-"`
   691  
   692  	// NullFields is a list of field names (e.g. "Country") to include in
   693  	// API requests with the JSON null value. By default, fields with empty
   694  	// values are omitted from API requests. However, any field with an
   695  	// empty value appearing in NullFields will be sent to the server as
   696  	// null. It is an error if a field in this list has a non-empty value.
   697  	// This may be used to include null fields in Patch requests.
   698  	NullFields []string `json:"-"`
   699  }
   700  
   701  func (s *AccountStatusAccountLevelIssue) MarshalJSON() ([]byte, error) {
   702  	type NoMethod AccountStatusAccountLevelIssue
   703  	raw := NoMethod(*s)
   704  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   705  }
   706  
   707  type AccountStatusDataQualityIssue struct {
   708  	Country string `json:"country,omitempty"`
   709  
   710  	Destination string `json:"destination,omitempty"`
   711  
   712  	Detail string `json:"detail,omitempty"`
   713  
   714  	DisplayedValue string `json:"displayedValue,omitempty"`
   715  
   716  	ExampleItems []*AccountStatusExampleItem `json:"exampleItems,omitempty"`
   717  
   718  	Id string `json:"id,omitempty"`
   719  
   720  	LastChecked string `json:"lastChecked,omitempty"`
   721  
   722  	Location string `json:"location,omitempty"`
   723  
   724  	NumItems int64 `json:"numItems,omitempty"`
   725  
   726  	// Severity:  Acceptable values are: - "critical" - "error" -
   727  	// "suggestion"
   728  	Severity string `json:"severity,omitempty"`
   729  
   730  	SubmittedValue string `json:"submittedValue,omitempty"`
   731  
   732  	// ForceSendFields is a list of field names (e.g. "Country") to
   733  	// unconditionally include in API requests. By default, fields with
   734  	// empty or default values are omitted from API requests. However, any
   735  	// non-pointer, non-interface field appearing in ForceSendFields will be
   736  	// sent to the server regardless of whether the field is empty or not.
   737  	// This may be used to include empty fields in Patch requests.
   738  	ForceSendFields []string `json:"-"`
   739  
   740  	// NullFields is a list of field names (e.g. "Country") to include in
   741  	// API requests with the JSON null value. By default, fields with empty
   742  	// values are omitted from API requests. However, any field with an
   743  	// empty value appearing in NullFields will be sent to the server as
   744  	// null. It is an error if a field in this list has a non-empty value.
   745  	// This may be used to include null fields in Patch requests.
   746  	NullFields []string `json:"-"`
   747  }
   748  
   749  func (s *AccountStatusDataQualityIssue) MarshalJSON() ([]byte, error) {
   750  	type NoMethod AccountStatusDataQualityIssue
   751  	raw := NoMethod(*s)
   752  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   753  }
   754  
   755  type AccountStatusExampleItem struct {
   756  	ItemId string `json:"itemId,omitempty"`
   757  
   758  	Link string `json:"link,omitempty"`
   759  
   760  	SubmittedValue string `json:"submittedValue,omitempty"`
   761  
   762  	Title string `json:"title,omitempty"`
   763  
   764  	ValueOnLandingPage string `json:"valueOnLandingPage,omitempty"`
   765  
   766  	// ForceSendFields is a list of field names (e.g. "ItemId") to
   767  	// unconditionally include in API requests. By default, fields with
   768  	// empty or default values are omitted from API requests. However, any
   769  	// non-pointer, non-interface field appearing in ForceSendFields will be
   770  	// sent to the server regardless of whether the field is empty or not.
   771  	// This may be used to include empty fields in Patch requests.
   772  	ForceSendFields []string `json:"-"`
   773  
   774  	// NullFields is a list of field names (e.g. "ItemId") to include in API
   775  	// requests with the JSON null value. By default, fields with empty
   776  	// values are omitted from API requests. However, any field with an
   777  	// empty value appearing in NullFields will be sent to the server as
   778  	// null. It is an error if a field in this list has a non-empty value.
   779  	// This may be used to include null fields in Patch requests.
   780  	NullFields []string `json:"-"`
   781  }
   782  
   783  func (s *AccountStatusExampleItem) MarshalJSON() ([]byte, error) {
   784  	type NoMethod AccountStatusExampleItem
   785  	raw := NoMethod(*s)
   786  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   787  }
   788  
   789  type AccountStatusItemLevelIssue struct {
   790  	// AttributeName: The attribute's name, if the issue is caused by a
   791  	// single attribute.
   792  	AttributeName string `json:"attributeName,omitempty"`
   793  
   794  	// Code: The error code of the issue.
   795  	Code string `json:"code,omitempty"`
   796  
   797  	// Description: A short issue description in English.
   798  	Description string `json:"description,omitempty"`
   799  
   800  	// Detail: A detailed issue description in English.
   801  	Detail string `json:"detail,omitempty"`
   802  
   803  	// Documentation: The URL of a web page to help with resolving this
   804  	// issue.
   805  	Documentation string `json:"documentation,omitempty"`
   806  
   807  	// NumItems: Number of items with this issue.
   808  	NumItems int64 `json:"numItems,omitempty,string"`
   809  
   810  	// Resolution: Whether the issue can be resolved by the merchant.
   811  	Resolution string `json:"resolution,omitempty"`
   812  
   813  	// Servability: How this issue affects serving of the offer.
   814  	Servability string `json:"servability,omitempty"`
   815  
   816  	// ForceSendFields is a list of field names (e.g. "AttributeName") to
   817  	// unconditionally include in API requests. By default, fields with
   818  	// empty or default values are omitted from API requests. However, any
   819  	// non-pointer, non-interface field appearing in ForceSendFields will be
   820  	// sent to the server regardless of whether the field is empty or not.
   821  	// This may be used to include empty fields in Patch requests.
   822  	ForceSendFields []string `json:"-"`
   823  
   824  	// NullFields is a list of field names (e.g. "AttributeName") to include
   825  	// in API requests with the JSON null value. By default, fields with
   826  	// empty values are omitted from API requests. However, any field with
   827  	// an empty value appearing in NullFields will be sent to the server as
   828  	// null. It is an error if a field in this list has a non-empty value.
   829  	// This may be used to include null fields in Patch requests.
   830  	NullFields []string `json:"-"`
   831  }
   832  
   833  func (s *AccountStatusItemLevelIssue) MarshalJSON() ([]byte, error) {
   834  	type NoMethod AccountStatusItemLevelIssue
   835  	raw := NoMethod(*s)
   836  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   837  }
   838  
   839  type AccountStatusProducts struct {
   840  	// Channel: The channel the data applies to. Acceptable values are: -
   841  	// "local" - "online"
   842  	Channel string `json:"channel,omitempty"`
   843  
   844  	// Country: The country the data applies to.
   845  	Country string `json:"country,omitempty"`
   846  
   847  	// Destination: The destination the data applies to.
   848  	Destination string `json:"destination,omitempty"`
   849  
   850  	// ItemLevelIssues: List of item-level issues.
   851  	ItemLevelIssues []*AccountStatusItemLevelIssue `json:"itemLevelIssues,omitempty"`
   852  
   853  	// Statistics: Aggregated product statistics.
   854  	Statistics *AccountStatusStatistics `json:"statistics,omitempty"`
   855  
   856  	// ForceSendFields is a list of field names (e.g. "Channel") to
   857  	// unconditionally include in API requests. By default, fields with
   858  	// empty or default values are omitted from API requests. However, any
   859  	// non-pointer, non-interface field appearing in ForceSendFields will be
   860  	// sent to the server regardless of whether the field is empty or not.
   861  	// This may be used to include empty fields in Patch requests.
   862  	ForceSendFields []string `json:"-"`
   863  
   864  	// NullFields is a list of field names (e.g. "Channel") to include in
   865  	// API requests with the JSON null value. By default, fields with empty
   866  	// values are omitted from API requests. However, any field with an
   867  	// empty value appearing in NullFields will be sent to the server as
   868  	// null. It is an error if a field in this list has a non-empty value.
   869  	// This may be used to include null fields in Patch requests.
   870  	NullFields []string `json:"-"`
   871  }
   872  
   873  func (s *AccountStatusProducts) MarshalJSON() ([]byte, error) {
   874  	type NoMethod AccountStatusProducts
   875  	raw := NoMethod(*s)
   876  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   877  }
   878  
   879  type AccountStatusStatistics struct {
   880  	// Active: Number of active offers.
   881  	Active int64 `json:"active,omitempty,string"`
   882  
   883  	// Disapproved: Number of disapproved offers.
   884  	Disapproved int64 `json:"disapproved,omitempty,string"`
   885  
   886  	// Expiring: Number of expiring offers.
   887  	Expiring int64 `json:"expiring,omitempty,string"`
   888  
   889  	// Pending: Number of pending offers.
   890  	Pending int64 `json:"pending,omitempty,string"`
   891  
   892  	// ForceSendFields is a list of field names (e.g. "Active") to
   893  	// unconditionally include in API requests. By default, fields with
   894  	// empty or default values are omitted from API requests. However, any
   895  	// non-pointer, non-interface field appearing in ForceSendFields will be
   896  	// sent to the server regardless of whether the field is empty or not.
   897  	// This may be used to include empty fields in Patch requests.
   898  	ForceSendFields []string `json:"-"`
   899  
   900  	// NullFields is a list of field names (e.g. "Active") to include in API
   901  	// requests with the JSON null value. By default, fields with empty
   902  	// values are omitted from API requests. However, any field with an
   903  	// empty value appearing in NullFields will be sent to the server as
   904  	// null. It is an error if a field in this list has a non-empty value.
   905  	// This may be used to include null fields in Patch requests.
   906  	NullFields []string `json:"-"`
   907  }
   908  
   909  func (s *AccountStatusStatistics) MarshalJSON() ([]byte, error) {
   910  	type NoMethod AccountStatusStatistics
   911  	raw := NoMethod(*s)
   912  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   913  }
   914  
   915  // AccountTax: The tax settings of a merchant account. All methods
   916  // require the admin role.
   917  type AccountTax struct {
   918  	// AccountId: Required. The ID of the account to which these account tax
   919  	// settings belong.
   920  	AccountId uint64 `json:"accountId,omitempty,string"`
   921  
   922  	// Kind: Identifies what kind of resource this is. Value: the fixed
   923  	// string "content#accountTax".
   924  	Kind string `json:"kind,omitempty"`
   925  
   926  	// Rules: Tax rules. Updating the tax rules will enable US taxes (not
   927  	// reversible). Defining no rules is equivalent to not charging tax at
   928  	// all.
   929  	Rules []*AccountTaxTaxRule `json:"rules,omitempty"`
   930  
   931  	// ServerResponse contains the HTTP response code and headers from the
   932  	// server.
   933  	googleapi.ServerResponse `json:"-"`
   934  
   935  	// ForceSendFields is a list of field names (e.g. "AccountId") to
   936  	// unconditionally include in API requests. By default, fields with
   937  	// empty or default values are omitted from API requests. However, any
   938  	// non-pointer, non-interface field appearing in ForceSendFields will be
   939  	// sent to the server regardless of whether the field is empty or not.
   940  	// This may be used to include empty fields in Patch requests.
   941  	ForceSendFields []string `json:"-"`
   942  
   943  	// NullFields is a list of field names (e.g. "AccountId") to include in
   944  	// API requests with the JSON null value. By default, fields with empty
   945  	// values are omitted from API requests. However, any field with an
   946  	// empty value appearing in NullFields will be sent to the server as
   947  	// null. It is an error if a field in this list has a non-empty value.
   948  	// This may be used to include null fields in Patch requests.
   949  	NullFields []string `json:"-"`
   950  }
   951  
   952  func (s *AccountTax) MarshalJSON() ([]byte, error) {
   953  	type NoMethod AccountTax
   954  	raw := NoMethod(*s)
   955  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
   956  }
   957  
   958  // AccountTaxTaxRule: Tax calculation rule to apply in a state or
   959  // province (USA only).
   960  type AccountTaxTaxRule struct {
   961  	// Country: Country code in which tax is applicable.
   962  	Country string `json:"country,omitempty"`
   963  
   964  	// LocationId: Required. State (or province) is which the tax is
   965  	// applicable, described by its location ID (also called criteria ID).
   966  	LocationId uint64 `json:"locationId,omitempty,string"`
   967  
   968  	// RatePercent: Explicit tax rate in percent, represented as a floating
   969  	// point number without the percentage character. Must not be negative.
   970  	RatePercent string `json:"ratePercent,omitempty"`
   971  
   972  	// ShippingTaxed: If true, shipping charges are also taxed.
   973  	ShippingTaxed bool `json:"shippingTaxed,omitempty"`
   974  
   975  	// UseGlobalRate: Whether the tax rate is taken from a global tax table
   976  	// or specified explicitly.
   977  	UseGlobalRate bool `json:"useGlobalRate,omitempty"`
   978  
   979  	// ForceSendFields is a list of field names (e.g. "Country") to
   980  	// unconditionally include in API requests. By default, fields with
   981  	// empty or default values are omitted from API requests. However, any
   982  	// non-pointer, non-interface field appearing in ForceSendFields will be
   983  	// sent to the server regardless of whether the field is empty or not.
   984  	// This may be used to include empty fields in Patch requests.
   985  	ForceSendFields []string `json:"-"`
   986  
   987  	// NullFields is a list of field names (e.g. "Country") to include in
   988  	// API requests with the JSON null value. By default, fields with empty
   989  	// values are omitted from API requests. However, any field with an
   990  	// empty value appearing in NullFields will be sent to the server as
   991  	// null. It is an error if a field in this list has a non-empty value.
   992  	// This may be used to include null fields in Patch requests.
   993  	NullFields []string `json:"-"`
   994  }
   995  
   996  func (s *AccountTaxTaxRule) MarshalJSON() ([]byte, error) {
   997  	type NoMethod AccountTaxTaxRule
   998  	raw := NoMethod(*s)
   999  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1000  }
  1001  
  1002  type AccountUser struct {
  1003  	// Admin: Whether user is an admin.
  1004  	Admin *bool `json:"admin,omitempty"`
  1005  
  1006  	// EmailAddress: User's email address.
  1007  	EmailAddress string `json:"emailAddress,omitempty"`
  1008  
  1009  	// OrderManager: Whether user is an order manager.
  1010  	OrderManager bool `json:"orderManager,omitempty"`
  1011  
  1012  	// PaymentsAnalyst: Whether user can access payment statements.
  1013  	PaymentsAnalyst bool `json:"paymentsAnalyst,omitempty"`
  1014  
  1015  	// PaymentsManager: Whether user can manage payment settings.
  1016  	PaymentsManager bool `json:"paymentsManager,omitempty"`
  1017  
  1018  	// ForceSendFields is a list of field names (e.g. "Admin") to
  1019  	// unconditionally include in API requests. By default, fields with
  1020  	// empty or default values are omitted from API requests. However, any
  1021  	// non-pointer, non-interface field appearing in ForceSendFields will be
  1022  	// sent to the server regardless of whether the field is empty or not.
  1023  	// This may be used to include empty fields in Patch requests.
  1024  	ForceSendFields []string `json:"-"`
  1025  
  1026  	// NullFields is a list of field names (e.g. "Admin") to include in API
  1027  	// requests with the JSON null value. By default, fields with empty
  1028  	// values are omitted from API requests. However, any field with an
  1029  	// empty value appearing in NullFields will be sent to the server as
  1030  	// null. It is an error if a field in this list has a non-empty value.
  1031  	// This may be used to include null fields in Patch requests.
  1032  	NullFields []string `json:"-"`
  1033  }
  1034  
  1035  func (s *AccountUser) MarshalJSON() ([]byte, error) {
  1036  	type NoMethod AccountUser
  1037  	raw := NoMethod(*s)
  1038  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1039  }
  1040  
  1041  type AccountYouTubeChannelLink struct {
  1042  	// ChannelId: Channel ID.
  1043  	ChannelId string `json:"channelId,omitempty"`
  1044  
  1045  	// Status: Status of the link between this Merchant Center account and
  1046  	// the YouTube channel. Upon retrieval, it represents the actual status
  1047  	// of the link and can be either `active` if it was approved in YT
  1048  	// Creator Studio or `pending` if it's pending approval. Upon insertion,
  1049  	// it represents the *intended* status of the link. Re-uploading a link
  1050  	// with status `active` when it's still pending or with status `pending`
  1051  	// when it's already active will have no effect: the status will remain
  1052  	// unchanged. Re-uploading a link with deprecated status `inactive` is
  1053  	// equivalent to not submitting the link at all and will delete the link
  1054  	// if it was active or cancel the link request if it was pending.
  1055  	Status string `json:"status,omitempty"`
  1056  
  1057  	// ForceSendFields is a list of field names (e.g. "ChannelId") to
  1058  	// unconditionally include in API requests. By default, fields with
  1059  	// empty or default values are omitted from API requests. However, any
  1060  	// non-pointer, non-interface field appearing in ForceSendFields will be
  1061  	// sent to the server regardless of whether the field is empty or not.
  1062  	// This may be used to include empty fields in Patch requests.
  1063  	ForceSendFields []string `json:"-"`
  1064  
  1065  	// NullFields is a list of field names (e.g. "ChannelId") to include in
  1066  	// API requests with the JSON null value. By default, fields with empty
  1067  	// values are omitted from API requests. However, any field with an
  1068  	// empty value appearing in NullFields will be sent to the server as
  1069  	// null. It is an error if a field in this list has a non-empty value.
  1070  	// This may be used to include null fields in Patch requests.
  1071  	NullFields []string `json:"-"`
  1072  }
  1073  
  1074  func (s *AccountYouTubeChannelLink) MarshalJSON() ([]byte, error) {
  1075  	type NoMethod AccountYouTubeChannelLink
  1076  	raw := NoMethod(*s)
  1077  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1078  }
  1079  
  1080  type AccountsAuthInfoResponse struct {
  1081  	// AccountIdentifiers: The account identifiers corresponding to the
  1082  	// authenticated user. - For an individual account: only the merchant ID
  1083  	// is defined - For an aggregator: only the aggregator ID is defined -
  1084  	// For a subaccount of an MCA: both the merchant ID and the aggregator
  1085  	// ID are defined.
  1086  	AccountIdentifiers []*AccountIdentifier `json:"accountIdentifiers,omitempty"`
  1087  
  1088  	// Kind: Identifies what kind of resource this is. Value: the fixed
  1089  	// string "content#accountsAuthInfoResponse".
  1090  	Kind string `json:"kind,omitempty"`
  1091  
  1092  	// ServerResponse contains the HTTP response code and headers from the
  1093  	// server.
  1094  	googleapi.ServerResponse `json:"-"`
  1095  
  1096  	// ForceSendFields is a list of field names (e.g. "AccountIdentifiers")
  1097  	// to unconditionally include in API requests. By default, fields with
  1098  	// empty or default values are omitted from API requests. However, any
  1099  	// non-pointer, non-interface field appearing in ForceSendFields will be
  1100  	// sent to the server regardless of whether the field is empty or not.
  1101  	// This may be used to include empty fields in Patch requests.
  1102  	ForceSendFields []string `json:"-"`
  1103  
  1104  	// NullFields is a list of field names (e.g. "AccountIdentifiers") to
  1105  	// include in API requests with the JSON null value. By default, fields
  1106  	// with empty values are omitted from API requests. However, any field
  1107  	// with an empty value appearing in NullFields will be sent to the
  1108  	// server as null. It is an error if a field in this list has a
  1109  	// non-empty value. This may be used to include null fields in Patch
  1110  	// requests.
  1111  	NullFields []string `json:"-"`
  1112  }
  1113  
  1114  func (s *AccountsAuthInfoResponse) MarshalJSON() ([]byte, error) {
  1115  	type NoMethod AccountsAuthInfoResponse
  1116  	raw := NoMethod(*s)
  1117  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1118  }
  1119  
  1120  type AccountsClaimWebsiteResponse struct {
  1121  	// Kind: Identifies what kind of resource this is. Value: the fixed
  1122  	// string "content#accountsClaimWebsiteResponse".
  1123  	Kind string `json:"kind,omitempty"`
  1124  
  1125  	// ServerResponse contains the HTTP response code and headers from the
  1126  	// server.
  1127  	googleapi.ServerResponse `json:"-"`
  1128  
  1129  	// ForceSendFields is a list of field names (e.g. "Kind") to
  1130  	// unconditionally include in API requests. By default, fields with
  1131  	// empty or default values are omitted from API requests. However, any
  1132  	// non-pointer, non-interface field appearing in ForceSendFields will be
  1133  	// sent to the server regardless of whether the field is empty or not.
  1134  	// This may be used to include empty fields in Patch requests.
  1135  	ForceSendFields []string `json:"-"`
  1136  
  1137  	// NullFields is a list of field names (e.g. "Kind") to include in API
  1138  	// requests with the JSON null value. By default, fields with empty
  1139  	// values are omitted from API requests. However, any field with an
  1140  	// empty value appearing in NullFields will be sent to the server as
  1141  	// null. It is an error if a field in this list has a non-empty value.
  1142  	// This may be used to include null fields in Patch requests.
  1143  	NullFields []string `json:"-"`
  1144  }
  1145  
  1146  func (s *AccountsClaimWebsiteResponse) MarshalJSON() ([]byte, error) {
  1147  	type NoMethod AccountsClaimWebsiteResponse
  1148  	raw := NoMethod(*s)
  1149  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1150  }
  1151  
  1152  type AccountsCustomBatchRequest struct {
  1153  	// Entries: The request entries to be processed in the batch.
  1154  	Entries []*AccountsCustomBatchRequestEntry `json:"entries,omitempty"`
  1155  
  1156  	// ForceSendFields is a list of field names (e.g. "Entries") to
  1157  	// unconditionally include in API requests. By default, fields with
  1158  	// empty or default values are omitted from API requests. However, any
  1159  	// non-pointer, non-interface field appearing in ForceSendFields will be
  1160  	// sent to the server regardless of whether the field is empty or not.
  1161  	// This may be used to include empty fields in Patch requests.
  1162  	ForceSendFields []string `json:"-"`
  1163  
  1164  	// NullFields is a list of field names (e.g. "Entries") to include in
  1165  	// API requests with the JSON null value. By default, fields with empty
  1166  	// values are omitted from API requests. However, any field with an
  1167  	// empty value appearing in NullFields will be sent to the server as
  1168  	// null. It is an error if a field in this list has a non-empty value.
  1169  	// This may be used to include null fields in Patch requests.
  1170  	NullFields []string `json:"-"`
  1171  }
  1172  
  1173  func (s *AccountsCustomBatchRequest) MarshalJSON() ([]byte, error) {
  1174  	type NoMethod AccountsCustomBatchRequest
  1175  	raw := NoMethod(*s)
  1176  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1177  }
  1178  
  1179  // AccountsCustomBatchRequestEntry: A batch entry encoding a single
  1180  // non-batch accounts request.
  1181  type AccountsCustomBatchRequestEntry struct {
  1182  	// Account: The account to create or update. Only defined if the method
  1183  	// is `insert` or `update`.
  1184  	Account *Account `json:"account,omitempty"`
  1185  
  1186  	// AccountId: The ID of the targeted account. Only defined if the method
  1187  	// is not `insert`.
  1188  	AccountId uint64 `json:"accountId,omitempty,string"`
  1189  
  1190  	// BatchId: An entry ID, unique within the batch request.
  1191  	BatchId int64 `json:"batchId,omitempty"`
  1192  
  1193  	// Force: Whether the account should be deleted if the account has
  1194  	// offers. Only applicable if the method is `delete`.
  1195  	Force bool `json:"force,omitempty"`
  1196  
  1197  	// LabelIds: Label IDs for the 'updatelabels' request.
  1198  	LabelIds googleapi.Uint64s `json:"labelIds,omitempty"`
  1199  
  1200  	// LinkRequest: Details about the `link` request.
  1201  	LinkRequest *AccountsCustomBatchRequestEntryLinkRequest `json:"linkRequest,omitempty"`
  1202  
  1203  	// MerchantId: The ID of the managing account.
  1204  	MerchantId uint64 `json:"merchantId,omitempty,string"`
  1205  
  1206  	// Method: The method of the batch entry. Acceptable values are: -
  1207  	// "claimWebsite" - "delete" - "get" - "insert" - "link" -
  1208  	// "update"
  1209  	Method string `json:"method,omitempty"`
  1210  
  1211  	// Overwrite: Only applicable if the method is `claimwebsite`. Indicates
  1212  	// whether or not to take the claim from another account in case there
  1213  	// is a conflict.
  1214  	Overwrite bool `json:"overwrite,omitempty"`
  1215  
  1216  	// ForceSendFields is a list of field names (e.g. "Account") to
  1217  	// unconditionally include in API requests. By default, fields with
  1218  	// empty or default values are omitted from API requests. However, any
  1219  	// non-pointer, non-interface field appearing in ForceSendFields will be
  1220  	// sent to the server regardless of whether the field is empty or not.
  1221  	// This may be used to include empty fields in Patch requests.
  1222  	ForceSendFields []string `json:"-"`
  1223  
  1224  	// NullFields is a list of field names (e.g. "Account") to include in
  1225  	// API requests with the JSON null value. By default, fields with empty
  1226  	// values are omitted from API requests. However, any field with an
  1227  	// empty value appearing in NullFields will be sent to the server as
  1228  	// null. It is an error if a field in this list has a non-empty value.
  1229  	// This may be used to include null fields in Patch requests.
  1230  	NullFields []string `json:"-"`
  1231  }
  1232  
  1233  func (s *AccountsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
  1234  	type NoMethod AccountsCustomBatchRequestEntry
  1235  	raw := NoMethod(*s)
  1236  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1237  }
  1238  
  1239  type AccountsCustomBatchRequestEntryLinkRequest struct {
  1240  	// Action: Action to perform for this link. The "request" action is
  1241  	// only available to select merchants. Acceptable values are: -
  1242  	// "approve" - "remove" - "request"
  1243  	Action string `json:"action,omitempty"`
  1244  
  1245  	// LinkType: Type of the link between the two accounts. Acceptable
  1246  	// values are: - "channelPartner" - "eCommercePlatform"
  1247  	LinkType string `json:"linkType,omitempty"`
  1248  
  1249  	// LinkedAccountId: The ID of the linked account.
  1250  	LinkedAccountId string `json:"linkedAccountId,omitempty"`
  1251  
  1252  	// ForceSendFields is a list of field names (e.g. "Action") to
  1253  	// unconditionally include in API requests. By default, fields with
  1254  	// empty or default values are omitted from API requests. However, any
  1255  	// non-pointer, non-interface field appearing in ForceSendFields will be
  1256  	// sent to the server regardless of whether the field is empty or not.
  1257  	// This may be used to include empty fields in Patch requests.
  1258  	ForceSendFields []string `json:"-"`
  1259  
  1260  	// NullFields is a list of field names (e.g. "Action") to include in API
  1261  	// requests with the JSON null value. By default, fields with empty
  1262  	// values are omitted from API requests. However, any field with an
  1263  	// empty value appearing in NullFields will be sent to the server as
  1264  	// null. It is an error if a field in this list has a non-empty value.
  1265  	// This may be used to include null fields in Patch requests.
  1266  	NullFields []string `json:"-"`
  1267  }
  1268  
  1269  func (s *AccountsCustomBatchRequestEntryLinkRequest) MarshalJSON() ([]byte, error) {
  1270  	type NoMethod AccountsCustomBatchRequestEntryLinkRequest
  1271  	raw := NoMethod(*s)
  1272  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1273  }
  1274  
  1275  type AccountsCustomBatchResponse struct {
  1276  	// Entries: The result of the execution of the batch requests.
  1277  	Entries []*AccountsCustomBatchResponseEntry `json:"entries,omitempty"`
  1278  
  1279  	// Kind: Identifies what kind of resource this is. Value: the fixed
  1280  	// string "content#accountsCustomBatchResponse".
  1281  	Kind string `json:"kind,omitempty"`
  1282  
  1283  	// ServerResponse contains the HTTP response code and headers from the
  1284  	// server.
  1285  	googleapi.ServerResponse `json:"-"`
  1286  
  1287  	// ForceSendFields is a list of field names (e.g. "Entries") to
  1288  	// unconditionally include in API requests. By default, fields with
  1289  	// empty or default values are omitted from API requests. However, any
  1290  	// non-pointer, non-interface field appearing in ForceSendFields will be
  1291  	// sent to the server regardless of whether the field is empty or not.
  1292  	// This may be used to include empty fields in Patch requests.
  1293  	ForceSendFields []string `json:"-"`
  1294  
  1295  	// NullFields is a list of field names (e.g. "Entries") to include in
  1296  	// API requests with the JSON null value. By default, fields with empty
  1297  	// values are omitted from API requests. However, any field with an
  1298  	// empty value appearing in NullFields will be sent to the server as
  1299  	// null. It is an error if a field in this list has a non-empty value.
  1300  	// This may be used to include null fields in Patch requests.
  1301  	NullFields []string `json:"-"`
  1302  }
  1303  
  1304  func (s *AccountsCustomBatchResponse) MarshalJSON() ([]byte, error) {
  1305  	type NoMethod AccountsCustomBatchResponse
  1306  	raw := NoMethod(*s)
  1307  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1308  }
  1309  
  1310  // AccountsCustomBatchResponseEntry: A batch entry encoding a single
  1311  // non-batch accounts response.
  1312  type AccountsCustomBatchResponseEntry struct {
  1313  	// Account: The retrieved, created, or updated account. Not defined if
  1314  	// the method was `delete`, `claimwebsite` or `link`.
  1315  	Account *Account `json:"account,omitempty"`
  1316  
  1317  	// BatchId: The ID of the request entry this entry responds to.
  1318  	BatchId int64 `json:"batchId,omitempty"`
  1319  
  1320  	// Errors: A list of errors defined if and only if the request failed.
  1321  	Errors *Errors `json:"errors,omitempty"`
  1322  
  1323  	// Kind: Identifies what kind of resource this is. Value: the fixed
  1324  	// string "content#accountsCustomBatchResponseEntry"
  1325  	Kind string `json:"kind,omitempty"`
  1326  
  1327  	// LinkStatus: Deprecated. This field is never set. Acceptable values
  1328  	// are: - "active" - "inactive" - "pending"
  1329  	LinkStatus string `json:"linkStatus,omitempty"`
  1330  
  1331  	// ForceSendFields is a list of field names (e.g. "Account") to
  1332  	// unconditionally include in API requests. By default, fields with
  1333  	// empty or default values are omitted from API requests. However, any
  1334  	// non-pointer, non-interface field appearing in ForceSendFields will be
  1335  	// sent to the server regardless of whether the field is empty or not.
  1336  	// This may be used to include empty fields in Patch requests.
  1337  	ForceSendFields []string `json:"-"`
  1338  
  1339  	// NullFields is a list of field names (e.g. "Account") to include in
  1340  	// API requests with the JSON null value. By default, fields with empty
  1341  	// values are omitted from API requests. However, any field with an
  1342  	// empty value appearing in NullFields will be sent to the server as
  1343  	// null. It is an error if a field in this list has a non-empty value.
  1344  	// This may be used to include null fields in Patch requests.
  1345  	NullFields []string `json:"-"`
  1346  }
  1347  
  1348  func (s *AccountsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
  1349  	type NoMethod AccountsCustomBatchResponseEntry
  1350  	raw := NoMethod(*s)
  1351  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1352  }
  1353  
  1354  type AccountsLinkRequest struct {
  1355  	// Action: Action to perform for this link. The "request" action is
  1356  	// only available to select merchants. Acceptable values are: -
  1357  	// "approve" - "remove" - "request"
  1358  	Action string `json:"action,omitempty"`
  1359  
  1360  	// LinkType: Type of the link between the two accounts. Acceptable
  1361  	// values are: - "channelPartner" - "eCommercePlatform"
  1362  	LinkType string `json:"linkType,omitempty"`
  1363  
  1364  	// LinkedAccountId: The ID of the linked account.
  1365  	LinkedAccountId string `json:"linkedAccountId,omitempty"`
  1366  
  1367  	// ForceSendFields is a list of field names (e.g. "Action") to
  1368  	// unconditionally include in API requests. By default, fields with
  1369  	// empty or default values are omitted from API requests. However, any
  1370  	// non-pointer, non-interface field appearing in ForceSendFields will be
  1371  	// sent to the server regardless of whether the field is empty or not.
  1372  	// This may be used to include empty fields in Patch requests.
  1373  	ForceSendFields []string `json:"-"`
  1374  
  1375  	// NullFields is a list of field names (e.g. "Action") to include in API
  1376  	// requests with the JSON null value. By default, fields with empty
  1377  	// values are omitted from API requests. However, any field with an
  1378  	// empty value appearing in NullFields will be sent to the server as
  1379  	// null. It is an error if a field in this list has a non-empty value.
  1380  	// This may be used to include null fields in Patch requests.
  1381  	NullFields []string `json:"-"`
  1382  }
  1383  
  1384  func (s *AccountsLinkRequest) MarshalJSON() ([]byte, error) {
  1385  	type NoMethod AccountsLinkRequest
  1386  	raw := NoMethod(*s)
  1387  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1388  }
  1389  
  1390  type AccountsLinkResponse struct {
  1391  	// Kind: Identifies what kind of resource this is. Value: the fixed
  1392  	// string "content#accountsLinkResponse".
  1393  	Kind string `json:"kind,omitempty"`
  1394  
  1395  	// ServerResponse contains the HTTP response code and headers from the
  1396  	// server.
  1397  	googleapi.ServerResponse `json:"-"`
  1398  
  1399  	// ForceSendFields is a list of field names (e.g. "Kind") to
  1400  	// unconditionally include in API requests. By default, fields with
  1401  	// empty or default values are omitted from API requests. However, any
  1402  	// non-pointer, non-interface field appearing in ForceSendFields will be
  1403  	// sent to the server regardless of whether the field is empty or not.
  1404  	// This may be used to include empty fields in Patch requests.
  1405  	ForceSendFields []string `json:"-"`
  1406  
  1407  	// NullFields is a list of field names (e.g. "Kind") to include in API
  1408  	// requests with the JSON null value. By default, fields with empty
  1409  	// values are omitted from API requests. However, any field with an
  1410  	// empty value appearing in NullFields will be sent to the server as
  1411  	// null. It is an error if a field in this list has a non-empty value.
  1412  	// This may be used to include null fields in Patch requests.
  1413  	NullFields []string `json:"-"`
  1414  }
  1415  
  1416  func (s *AccountsLinkResponse) MarshalJSON() ([]byte, error) {
  1417  	type NoMethod AccountsLinkResponse
  1418  	raw := NoMethod(*s)
  1419  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1420  }
  1421  
  1422  type AccountsListResponse struct {
  1423  	// Kind: Identifies what kind of resource this is. Value: the fixed
  1424  	// string "content#accountsListResponse".
  1425  	Kind string `json:"kind,omitempty"`
  1426  
  1427  	// NextPageToken: The token for the retrieval of the next page of
  1428  	// accounts.
  1429  	NextPageToken string `json:"nextPageToken,omitempty"`
  1430  
  1431  	Resources []*Account `json:"resources,omitempty"`
  1432  
  1433  	// ServerResponse contains the HTTP response code and headers from the
  1434  	// server.
  1435  	googleapi.ServerResponse `json:"-"`
  1436  
  1437  	// ForceSendFields is a list of field names (e.g. "Kind") to
  1438  	// unconditionally include in API requests. By default, fields with
  1439  	// empty or default values are omitted from API requests. However, any
  1440  	// non-pointer, non-interface field appearing in ForceSendFields will be
  1441  	// sent to the server regardless of whether the field is empty or not.
  1442  	// This may be used to include empty fields in Patch requests.
  1443  	ForceSendFields []string `json:"-"`
  1444  
  1445  	// NullFields is a list of field names (e.g. "Kind") to include in API
  1446  	// requests with the JSON null value. By default, fields with empty
  1447  	// values are omitted from API requests. However, any field with an
  1448  	// empty value appearing in NullFields will be sent to the server as
  1449  	// null. It is an error if a field in this list has a non-empty value.
  1450  	// This may be used to include null fields in Patch requests.
  1451  	NullFields []string `json:"-"`
  1452  }
  1453  
  1454  func (s *AccountsListResponse) MarshalJSON() ([]byte, error) {
  1455  	type NoMethod AccountsListResponse
  1456  	raw := NoMethod(*s)
  1457  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1458  }
  1459  
  1460  type AccountstatusesCustomBatchRequest struct {
  1461  	// Entries: The request entries to be processed in the batch.
  1462  	Entries []*AccountstatusesCustomBatchRequestEntry `json:"entries,omitempty"`
  1463  
  1464  	// ForceSendFields is a list of field names (e.g. "Entries") to
  1465  	// unconditionally include in API requests. By default, fields with
  1466  	// empty or default values are omitted from API requests. However, any
  1467  	// non-pointer, non-interface field appearing in ForceSendFields will be
  1468  	// sent to the server regardless of whether the field is empty or not.
  1469  	// This may be used to include empty fields in Patch requests.
  1470  	ForceSendFields []string `json:"-"`
  1471  
  1472  	// NullFields is a list of field names (e.g. "Entries") to include in
  1473  	// API requests with the JSON null value. By default, fields with empty
  1474  	// values are omitted from API requests. However, any field with an
  1475  	// empty value appearing in NullFields will be sent to the server as
  1476  	// null. It is an error if a field in this list has a non-empty value.
  1477  	// This may be used to include null fields in Patch requests.
  1478  	NullFields []string `json:"-"`
  1479  }
  1480  
  1481  func (s *AccountstatusesCustomBatchRequest) MarshalJSON() ([]byte, error) {
  1482  	type NoMethod AccountstatusesCustomBatchRequest
  1483  	raw := NoMethod(*s)
  1484  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1485  }
  1486  
  1487  // AccountstatusesCustomBatchRequestEntry: A batch entry encoding a
  1488  // single non-batch accountstatuses request.
  1489  type AccountstatusesCustomBatchRequestEntry struct {
  1490  	// AccountId: The ID of the (sub-)account whose status to get.
  1491  	AccountId uint64 `json:"accountId,omitempty,string"`
  1492  
  1493  	// BatchId: An entry ID, unique within the batch request.
  1494  	BatchId int64 `json:"batchId,omitempty"`
  1495  
  1496  	// Destinations: If set, only issues for the specified destinations are
  1497  	// returned, otherwise only issues for the Shopping destination.
  1498  	Destinations []string `json:"destinations,omitempty"`
  1499  
  1500  	// MerchantId: The ID of the managing account.
  1501  	MerchantId uint64 `json:"merchantId,omitempty,string"`
  1502  
  1503  	// Method: The method of the batch entry. Acceptable values are: -
  1504  	// "get"
  1505  	Method string `json:"method,omitempty"`
  1506  
  1507  	// ForceSendFields is a list of field names (e.g. "AccountId") to
  1508  	// unconditionally include in API requests. By default, fields with
  1509  	// empty or default values are omitted from API requests. However, any
  1510  	// non-pointer, non-interface field appearing in ForceSendFields will be
  1511  	// sent to the server regardless of whether the field is empty or not.
  1512  	// This may be used to include empty fields in Patch requests.
  1513  	ForceSendFields []string `json:"-"`
  1514  
  1515  	// NullFields is a list of field names (e.g. "AccountId") to include in
  1516  	// API requests with the JSON null value. By default, fields with empty
  1517  	// values are omitted from API requests. However, any field with an
  1518  	// empty value appearing in NullFields will be sent to the server as
  1519  	// null. It is an error if a field in this list has a non-empty value.
  1520  	// This may be used to include null fields in Patch requests.
  1521  	NullFields []string `json:"-"`
  1522  }
  1523  
  1524  func (s *AccountstatusesCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
  1525  	type NoMethod AccountstatusesCustomBatchRequestEntry
  1526  	raw := NoMethod(*s)
  1527  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1528  }
  1529  
  1530  type AccountstatusesCustomBatchResponse struct {
  1531  	// Entries: The result of the execution of the batch requests.
  1532  	Entries []*AccountstatusesCustomBatchResponseEntry `json:"entries,omitempty"`
  1533  
  1534  	// Kind: Identifies what kind of resource this is. Value: the fixed
  1535  	// string "content#accountstatusesCustomBatchResponse".
  1536  	Kind string `json:"kind,omitempty"`
  1537  
  1538  	// ServerResponse contains the HTTP response code and headers from the
  1539  	// server.
  1540  	googleapi.ServerResponse `json:"-"`
  1541  
  1542  	// ForceSendFields is a list of field names (e.g. "Entries") to
  1543  	// unconditionally include in API requests. By default, fields with
  1544  	// empty or default values are omitted from API requests. However, any
  1545  	// non-pointer, non-interface field appearing in ForceSendFields will be
  1546  	// sent to the server regardless of whether the field is empty or not.
  1547  	// This may be used to include empty fields in Patch requests.
  1548  	ForceSendFields []string `json:"-"`
  1549  
  1550  	// NullFields is a list of field names (e.g. "Entries") to include in
  1551  	// API requests with the JSON null value. By default, fields with empty
  1552  	// values are omitted from API requests. However, any field with an
  1553  	// empty value appearing in NullFields will be sent to the server as
  1554  	// null. It is an error if a field in this list has a non-empty value.
  1555  	// This may be used to include null fields in Patch requests.
  1556  	NullFields []string `json:"-"`
  1557  }
  1558  
  1559  func (s *AccountstatusesCustomBatchResponse) MarshalJSON() ([]byte, error) {
  1560  	type NoMethod AccountstatusesCustomBatchResponse
  1561  	raw := NoMethod(*s)
  1562  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1563  }
  1564  
  1565  // AccountstatusesCustomBatchResponseEntry: A batch entry encoding a
  1566  // single non-batch accountstatuses response.
  1567  type AccountstatusesCustomBatchResponseEntry struct {
  1568  	// AccountStatus: The requested account status. Defined if and only if
  1569  	// the request was successful.
  1570  	AccountStatus *AccountStatus `json:"accountStatus,omitempty"`
  1571  
  1572  	// BatchId: The ID of the request entry this entry responds to.
  1573  	BatchId int64 `json:"batchId,omitempty"`
  1574  
  1575  	// Errors: A list of errors defined if and only if the request failed.
  1576  	Errors *Errors `json:"errors,omitempty"`
  1577  
  1578  	// ForceSendFields is a list of field names (e.g. "AccountStatus") to
  1579  	// unconditionally include in API requests. By default, fields with
  1580  	// empty or default values are omitted from API requests. However, any
  1581  	// non-pointer, non-interface field appearing in ForceSendFields will be
  1582  	// sent to the server regardless of whether the field is empty or not.
  1583  	// This may be used to include empty fields in Patch requests.
  1584  	ForceSendFields []string `json:"-"`
  1585  
  1586  	// NullFields is a list of field names (e.g. "AccountStatus") to include
  1587  	// in API requests with the JSON null value. By default, fields with
  1588  	// empty values are omitted from API requests. However, any field with
  1589  	// an empty value appearing in NullFields will be sent to the server as
  1590  	// null. It is an error if a field in this list has a non-empty value.
  1591  	// This may be used to include null fields in Patch requests.
  1592  	NullFields []string `json:"-"`
  1593  }
  1594  
  1595  func (s *AccountstatusesCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
  1596  	type NoMethod AccountstatusesCustomBatchResponseEntry
  1597  	raw := NoMethod(*s)
  1598  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1599  }
  1600  
  1601  type AccountstatusesListResponse struct {
  1602  	// Kind: Identifies what kind of resource this is. Value: the fixed
  1603  	// string "content#accountstatusesListResponse".
  1604  	Kind string `json:"kind,omitempty"`
  1605  
  1606  	// NextPageToken: The token for the retrieval of the next page of
  1607  	// account statuses.
  1608  	NextPageToken string `json:"nextPageToken,omitempty"`
  1609  
  1610  	Resources []*AccountStatus `json:"resources,omitempty"`
  1611  
  1612  	// ServerResponse contains the HTTP response code and headers from the
  1613  	// server.
  1614  	googleapi.ServerResponse `json:"-"`
  1615  
  1616  	// ForceSendFields is a list of field names (e.g. "Kind") to
  1617  	// unconditionally include in API requests. By default, fields with
  1618  	// empty or default values are omitted from API requests. However, any
  1619  	// non-pointer, non-interface field appearing in ForceSendFields will be
  1620  	// sent to the server regardless of whether the field is empty or not.
  1621  	// This may be used to include empty fields in Patch requests.
  1622  	ForceSendFields []string `json:"-"`
  1623  
  1624  	// NullFields is a list of field names (e.g. "Kind") to include in API
  1625  	// requests with the JSON null value. By default, fields with empty
  1626  	// values are omitted from API requests. However, any field with an
  1627  	// empty value appearing in NullFields will be sent to the server as
  1628  	// null. It is an error if a field in this list has a non-empty value.
  1629  	// This may be used to include null fields in Patch requests.
  1630  	NullFields []string `json:"-"`
  1631  }
  1632  
  1633  func (s *AccountstatusesListResponse) MarshalJSON() ([]byte, error) {
  1634  	type NoMethod AccountstatusesListResponse
  1635  	raw := NoMethod(*s)
  1636  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1637  }
  1638  
  1639  type AccounttaxCustomBatchRequest struct {
  1640  	// Entries: The request entries to be processed in the batch.
  1641  	Entries []*AccounttaxCustomBatchRequestEntry `json:"entries,omitempty"`
  1642  
  1643  	// ForceSendFields is a list of field names (e.g. "Entries") to
  1644  	// unconditionally include in API requests. By default, fields with
  1645  	// empty or default values are omitted from API requests. However, any
  1646  	// non-pointer, non-interface field appearing in ForceSendFields will be
  1647  	// sent to the server regardless of whether the field is empty or not.
  1648  	// This may be used to include empty fields in Patch requests.
  1649  	ForceSendFields []string `json:"-"`
  1650  
  1651  	// NullFields is a list of field names (e.g. "Entries") to include in
  1652  	// API requests with the JSON null value. By default, fields with empty
  1653  	// values are omitted from API requests. However, any field with an
  1654  	// empty value appearing in NullFields will be sent to the server as
  1655  	// null. It is an error if a field in this list has a non-empty value.
  1656  	// This may be used to include null fields in Patch requests.
  1657  	NullFields []string `json:"-"`
  1658  }
  1659  
  1660  func (s *AccounttaxCustomBatchRequest) MarshalJSON() ([]byte, error) {
  1661  	type NoMethod AccounttaxCustomBatchRequest
  1662  	raw := NoMethod(*s)
  1663  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1664  }
  1665  
  1666  // AccounttaxCustomBatchRequestEntry: A batch entry encoding a single
  1667  // non-batch accounttax request.
  1668  type AccounttaxCustomBatchRequestEntry struct {
  1669  	// AccountId: The ID of the account for which to get/update account tax
  1670  	// settings.
  1671  	AccountId uint64 `json:"accountId,omitempty,string"`
  1672  
  1673  	// AccountTax: The account tax settings to update. Only defined if the
  1674  	// method is `update`.
  1675  	AccountTax *AccountTax `json:"accountTax,omitempty"`
  1676  
  1677  	// BatchId: An entry ID, unique within the batch request.
  1678  	BatchId int64 `json:"batchId,omitempty"`
  1679  
  1680  	// MerchantId: The ID of the managing account.
  1681  	MerchantId uint64 `json:"merchantId,omitempty,string"`
  1682  
  1683  	// Method: The method of the batch entry. Acceptable values are: -
  1684  	// "get" - "update"
  1685  	Method string `json:"method,omitempty"`
  1686  
  1687  	// ForceSendFields is a list of field names (e.g. "AccountId") to
  1688  	// unconditionally include in API requests. By default, fields with
  1689  	// empty or default values are omitted from API requests. However, any
  1690  	// non-pointer, non-interface field appearing in ForceSendFields will be
  1691  	// sent to the server regardless of whether the field is empty or not.
  1692  	// This may be used to include empty fields in Patch requests.
  1693  	ForceSendFields []string `json:"-"`
  1694  
  1695  	// NullFields is a list of field names (e.g. "AccountId") to include in
  1696  	// API requests with the JSON null value. By default, fields with empty
  1697  	// values are omitted from API requests. However, any field with an
  1698  	// empty value appearing in NullFields will be sent to the server as
  1699  	// null. It is an error if a field in this list has a non-empty value.
  1700  	// This may be used to include null fields in Patch requests.
  1701  	NullFields []string `json:"-"`
  1702  }
  1703  
  1704  func (s *AccounttaxCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
  1705  	type NoMethod AccounttaxCustomBatchRequestEntry
  1706  	raw := NoMethod(*s)
  1707  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1708  }
  1709  
  1710  type AccounttaxCustomBatchResponse struct {
  1711  	// Entries: The result of the execution of the batch requests.
  1712  	Entries []*AccounttaxCustomBatchResponseEntry `json:"entries,omitempty"`
  1713  
  1714  	// Kind: Identifies what kind of resource this is. Value: the fixed
  1715  	// string "content#accounttaxCustomBatchResponse".
  1716  	Kind string `json:"kind,omitempty"`
  1717  
  1718  	// ServerResponse contains the HTTP response code and headers from the
  1719  	// server.
  1720  	googleapi.ServerResponse `json:"-"`
  1721  
  1722  	// ForceSendFields is a list of field names (e.g. "Entries") to
  1723  	// unconditionally include in API requests. By default, fields with
  1724  	// empty or default values are omitted from API requests. However, any
  1725  	// non-pointer, non-interface field appearing in ForceSendFields will be
  1726  	// sent to the server regardless of whether the field is empty or not.
  1727  	// This may be used to include empty fields in Patch requests.
  1728  	ForceSendFields []string `json:"-"`
  1729  
  1730  	// NullFields is a list of field names (e.g. "Entries") to include in
  1731  	// API requests with the JSON null value. By default, fields with empty
  1732  	// values are omitted from API requests. However, any field with an
  1733  	// empty value appearing in NullFields will be sent to the server as
  1734  	// null. It is an error if a field in this list has a non-empty value.
  1735  	// This may be used to include null fields in Patch requests.
  1736  	NullFields []string `json:"-"`
  1737  }
  1738  
  1739  func (s *AccounttaxCustomBatchResponse) MarshalJSON() ([]byte, error) {
  1740  	type NoMethod AccounttaxCustomBatchResponse
  1741  	raw := NoMethod(*s)
  1742  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1743  }
  1744  
  1745  // AccounttaxCustomBatchResponseEntry: A batch entry encoding a single
  1746  // non-batch accounttax response.
  1747  type AccounttaxCustomBatchResponseEntry struct {
  1748  	// AccountTax: The retrieved or updated account tax settings.
  1749  	AccountTax *AccountTax `json:"accountTax,omitempty"`
  1750  
  1751  	// BatchId: The ID of the request entry this entry responds to.
  1752  	BatchId int64 `json:"batchId,omitempty"`
  1753  
  1754  	// Errors: A list of errors defined if and only if the request failed.
  1755  	Errors *Errors `json:"errors,omitempty"`
  1756  
  1757  	// Kind: Identifies what kind of resource this is. Value: the fixed
  1758  	// string "content#accounttaxCustomBatchResponseEntry"
  1759  	Kind string `json:"kind,omitempty"`
  1760  
  1761  	// ForceSendFields is a list of field names (e.g. "AccountTax") to
  1762  	// unconditionally include in API requests. By default, fields with
  1763  	// empty or default values are omitted from API requests. However, any
  1764  	// non-pointer, non-interface field appearing in ForceSendFields will be
  1765  	// sent to the server regardless of whether the field is empty or not.
  1766  	// This may be used to include empty fields in Patch requests.
  1767  	ForceSendFields []string `json:"-"`
  1768  
  1769  	// NullFields is a list of field names (e.g. "AccountTax") to include in
  1770  	// API requests with the JSON null value. By default, fields with empty
  1771  	// values are omitted from API requests. However, any field with an
  1772  	// empty value appearing in NullFields will be sent to the server as
  1773  	// null. It is an error if a field in this list has a non-empty value.
  1774  	// This may be used to include null fields in Patch requests.
  1775  	NullFields []string `json:"-"`
  1776  }
  1777  
  1778  func (s *AccounttaxCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
  1779  	type NoMethod AccounttaxCustomBatchResponseEntry
  1780  	raw := NoMethod(*s)
  1781  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1782  }
  1783  
  1784  type AccounttaxListResponse struct {
  1785  	// Kind: Identifies what kind of resource this is. Value: the fixed
  1786  	// string "content#accounttaxListResponse".
  1787  	Kind string `json:"kind,omitempty"`
  1788  
  1789  	// NextPageToken: The token for the retrieval of the next page of
  1790  	// account tax settings.
  1791  	NextPageToken string `json:"nextPageToken,omitempty"`
  1792  
  1793  	Resources []*AccountTax `json:"resources,omitempty"`
  1794  
  1795  	// ServerResponse contains the HTTP response code and headers from the
  1796  	// server.
  1797  	googleapi.ServerResponse `json:"-"`
  1798  
  1799  	// ForceSendFields is a list of field names (e.g. "Kind") to
  1800  	// unconditionally include in API requests. By default, fields with
  1801  	// empty or default values are omitted from API requests. However, any
  1802  	// non-pointer, non-interface field appearing in ForceSendFields will be
  1803  	// sent to the server regardless of whether the field is empty or not.
  1804  	// This may be used to include empty fields in Patch requests.
  1805  	ForceSendFields []string `json:"-"`
  1806  
  1807  	// NullFields is a list of field names (e.g. "Kind") to include in API
  1808  	// requests with the JSON null value. By default, fields with empty
  1809  	// values are omitted from API requests. However, any field with an
  1810  	// empty value appearing in NullFields will be sent to the server as
  1811  	// null. It is an error if a field in this list has a non-empty value.
  1812  	// This may be used to include null fields in Patch requests.
  1813  	NullFields []string `json:"-"`
  1814  }
  1815  
  1816  func (s *AccounttaxListResponse) MarshalJSON() ([]byte, error) {
  1817  	type NoMethod AccounttaxListResponse
  1818  	raw := NoMethod(*s)
  1819  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1820  }
  1821  
  1822  type Address struct {
  1823  	// AdministrativeArea: Required. Top-level administrative subdivision of
  1824  	// the country. For example, a state like California ("CA") or a
  1825  	// province like Quebec ("QC").
  1826  	AdministrativeArea string `json:"administrativeArea,omitempty"`
  1827  
  1828  	// City: Required. City, town or commune. May also include dependent
  1829  	// localities or sublocalities (e.g. neighborhoods or suburbs).
  1830  	City string `json:"city,omitempty"`
  1831  
  1832  	// Country: Required. CLDR country code
  1833  	// (http://www.unicode.org/repos/cldr/tags/latest/common/main/en.xml)(e.g.
  1834  	// "US").
  1835  	Country string `json:"country,omitempty"`
  1836  
  1837  	// PostalCode: Required. Postal code or ZIP (e.g. "94043"). Required.
  1838  	PostalCode string `json:"postalCode,omitempty"`
  1839  
  1840  	// StreetAddress: Street-level part of the address.
  1841  	StreetAddress string `json:"streetAddress,omitempty"`
  1842  
  1843  	// ForceSendFields is a list of field names (e.g. "AdministrativeArea")
  1844  	// to unconditionally include in API requests. By default, fields with
  1845  	// empty or default values are omitted from API requests. However, any
  1846  	// non-pointer, non-interface field appearing in ForceSendFields will be
  1847  	// sent to the server regardless of whether the field is empty or not.
  1848  	// This may be used to include empty fields in Patch requests.
  1849  	ForceSendFields []string `json:"-"`
  1850  
  1851  	// NullFields is a list of field names (e.g. "AdministrativeArea") to
  1852  	// include in API requests with the JSON null value. By default, fields
  1853  	// with empty values are omitted from API requests. However, any field
  1854  	// with an empty value appearing in NullFields will be sent to the
  1855  	// server as null. It is an error if a field in this list has a
  1856  	// non-empty value. This may be used to include null fields in Patch
  1857  	// requests.
  1858  	NullFields []string `json:"-"`
  1859  }
  1860  
  1861  func (s *Address) MarshalJSON() ([]byte, error) {
  1862  	type NoMethod Address
  1863  	raw := NoMethod(*s)
  1864  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1865  }
  1866  
  1867  type Amount struct {
  1868  	// Pretax: [required] Value before taxes.
  1869  	Pretax *Price `json:"pretax,omitempty"`
  1870  
  1871  	// Tax: [required] Tax value.
  1872  	Tax *Price `json:"tax,omitempty"`
  1873  
  1874  	// ForceSendFields is a list of field names (e.g. "Pretax") to
  1875  	// unconditionally include in API requests. By default, fields with
  1876  	// empty or default values are omitted from API requests. However, any
  1877  	// non-pointer, non-interface field appearing in ForceSendFields will be
  1878  	// sent to the server regardless of whether the field is empty or not.
  1879  	// This may be used to include empty fields in Patch requests.
  1880  	ForceSendFields []string `json:"-"`
  1881  
  1882  	// NullFields is a list of field names (e.g. "Pretax") to include in API
  1883  	// requests with the JSON null value. By default, fields with empty
  1884  	// values are omitted from API requests. However, any field with an
  1885  	// empty value appearing in NullFields will be sent to the server as
  1886  	// null. It is an error if a field in this list has a non-empty value.
  1887  	// This may be used to include null fields in Patch requests.
  1888  	NullFields []string `json:"-"`
  1889  }
  1890  
  1891  func (s *Amount) MarshalJSON() ([]byte, error) {
  1892  	type NoMethod Amount
  1893  	raw := NoMethod(*s)
  1894  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1895  }
  1896  
  1897  type BusinessDayConfig struct {
  1898  	// BusinessDays: Regular business days, such as '"monday"'. May not be
  1899  	// empty.
  1900  	BusinessDays []string `json:"businessDays,omitempty"`
  1901  
  1902  	// ForceSendFields is a list of field names (e.g. "BusinessDays") to
  1903  	// unconditionally include in API requests. By default, fields with
  1904  	// empty or default values are omitted from API requests. However, any
  1905  	// non-pointer, non-interface field appearing in ForceSendFields will be
  1906  	// sent to the server regardless of whether the field is empty or not.
  1907  	// This may be used to include empty fields in Patch requests.
  1908  	ForceSendFields []string `json:"-"`
  1909  
  1910  	// NullFields is a list of field names (e.g. "BusinessDays") to include
  1911  	// in API requests with the JSON null value. By default, fields with
  1912  	// empty values are omitted from API requests. However, any field with
  1913  	// an empty value appearing in NullFields will be sent to the server as
  1914  	// null. It is an error if a field in this list has a non-empty value.
  1915  	// This may be used to include null fields in Patch requests.
  1916  	NullFields []string `json:"-"`
  1917  }
  1918  
  1919  func (s *BusinessDayConfig) MarshalJSON() ([]byte, error) {
  1920  	type NoMethod BusinessDayConfig
  1921  	raw := NoMethod(*s)
  1922  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1923  }
  1924  
  1925  type CarrierRate struct {
  1926  	// CarrierName: Carrier service, such as "UPS" or "Fedex". The list
  1927  	// of supported carriers can be retrieved via the `getSupportedCarriers`
  1928  	// method. Required.
  1929  	CarrierName string `json:"carrierName,omitempty"`
  1930  
  1931  	// CarrierService: Carrier service, such as "ground" or "2 days".
  1932  	// The list of supported services for a carrier can be retrieved via the
  1933  	// `getSupportedCarriers` method. Required.
  1934  	CarrierService string `json:"carrierService,omitempty"`
  1935  
  1936  	// FlatAdjustment: Additive shipping rate modifier. Can be negative. For
  1937  	// example `{ "value": "1", "currency" : "USD" }` adds $1 to the rate,
  1938  	// `{ "value": "-3", "currency" : "USD" }` removes $3 from the rate.
  1939  	// Optional.
  1940  	FlatAdjustment *Price `json:"flatAdjustment,omitempty"`
  1941  
  1942  	// Name: Name of the carrier rate. Must be unique per rate group.
  1943  	// Required.
  1944  	Name string `json:"name,omitempty"`
  1945  
  1946  	// OriginPostalCode: Shipping origin for this carrier rate. Required.
  1947  	OriginPostalCode string `json:"originPostalCode,omitempty"`
  1948  
  1949  	// PercentageAdjustment: Multiplicative shipping rate modifier as a
  1950  	// number in decimal notation. Can be negative. For example "5.4"
  1951  	// increases the rate by 5.4%, "-3" decreases the rate by 3%.
  1952  	// Optional.
  1953  	PercentageAdjustment string `json:"percentageAdjustment,omitempty"`
  1954  
  1955  	// ForceSendFields is a list of field names (e.g. "CarrierName") to
  1956  	// unconditionally include in API requests. By default, fields with
  1957  	// empty or default values are omitted from API requests. However, any
  1958  	// non-pointer, non-interface field appearing in ForceSendFields will be
  1959  	// sent to the server regardless of whether the field is empty or not.
  1960  	// This may be used to include empty fields in Patch requests.
  1961  	ForceSendFields []string `json:"-"`
  1962  
  1963  	// NullFields is a list of field names (e.g. "CarrierName") to include
  1964  	// in API requests with the JSON null value. By default, fields with
  1965  	// empty values are omitted from API requests. However, any field with
  1966  	// an empty value appearing in NullFields will be sent to the server as
  1967  	// null. It is an error if a field in this list has a non-empty value.
  1968  	// This may be used to include null fields in Patch requests.
  1969  	NullFields []string `json:"-"`
  1970  }
  1971  
  1972  func (s *CarrierRate) MarshalJSON() ([]byte, error) {
  1973  	type NoMethod CarrierRate
  1974  	raw := NoMethod(*s)
  1975  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  1976  }
  1977  
  1978  type CarriersCarrier struct {
  1979  	// Country: The CLDR country code of the carrier (e.g., "US"). Always
  1980  	// present.
  1981  	Country string `json:"country,omitempty"`
  1982  
  1983  	// EddServices: A list of services supported for EDD (Estimated Delivery
  1984  	// Date) calculation. This is the list of valid values for
  1985  	// WarehouseBasedDeliveryTime.carrierService.
  1986  	EddServices []string `json:"eddServices,omitempty"`
  1987  
  1988  	// Name: The name of the carrier (e.g., "UPS"). Always present.
  1989  	Name string `json:"name,omitempty"`
  1990  
  1991  	// Services: A list of supported services (e.g., "ground") for that
  1992  	// carrier. Contains at least one service. This is the list of valid
  1993  	// values for CarrierRate.carrierService.
  1994  	Services []string `json:"services,omitempty"`
  1995  
  1996  	// ForceSendFields is a list of field names (e.g. "Country") to
  1997  	// unconditionally include in API requests. By default, fields with
  1998  	// empty or default values are omitted from API requests. However, any
  1999  	// non-pointer, non-interface field appearing in ForceSendFields will be
  2000  	// sent to the server regardless of whether the field is empty or not.
  2001  	// This may be used to include empty fields in Patch requests.
  2002  	ForceSendFields []string `json:"-"`
  2003  
  2004  	// NullFields is a list of field names (e.g. "Country") to include in
  2005  	// API requests with the JSON null value. By default, fields with empty
  2006  	// values are omitted from API requests. However, any field with an
  2007  	// empty value appearing in NullFields will be sent to the server as
  2008  	// null. It is an error if a field in this list has a non-empty value.
  2009  	// This may be used to include null fields in Patch requests.
  2010  	NullFields []string `json:"-"`
  2011  }
  2012  
  2013  func (s *CarriersCarrier) MarshalJSON() ([]byte, error) {
  2014  	type NoMethod CarriersCarrier
  2015  	raw := NoMethod(*s)
  2016  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2017  }
  2018  
  2019  type CustomAttribute struct {
  2020  	// Name: The name of the attribute. Underscores will be replaced by
  2021  	// spaces upon insertion.
  2022  	Name string `json:"name,omitempty"`
  2023  
  2024  	// Type: The type of the attribute. Acceptable values are: - "boolean"
  2025  	// - "datetimerange" - "float" - "group" - "int" - "price" -
  2026  	// "text" - "time" - "url"
  2027  	Type string `json:"type,omitempty"`
  2028  
  2029  	// Unit: Free-form unit of the attribute. Unit can only be used for
  2030  	// values of type int, float, or price.
  2031  	Unit string `json:"unit,omitempty"`
  2032  
  2033  	// Value: The value of the attribute.
  2034  	Value string `json:"value,omitempty"`
  2035  
  2036  	// ForceSendFields is a list of field names (e.g. "Name") to
  2037  	// unconditionally include in API requests. By default, fields with
  2038  	// empty or default values are omitted from API requests. However, any
  2039  	// non-pointer, non-interface field appearing in ForceSendFields will be
  2040  	// sent to the server regardless of whether the field is empty or not.
  2041  	// This may be used to include empty fields in Patch requests.
  2042  	ForceSendFields []string `json:"-"`
  2043  
  2044  	// NullFields is a list of field names (e.g. "Name") to include in API
  2045  	// requests with the JSON null value. By default, fields with empty
  2046  	// values are omitted from API requests. However, any field with an
  2047  	// empty value appearing in NullFields will be sent to the server as
  2048  	// null. It is an error if a field in this list has a non-empty value.
  2049  	// This may be used to include null fields in Patch requests.
  2050  	NullFields []string `json:"-"`
  2051  }
  2052  
  2053  func (s *CustomAttribute) MarshalJSON() ([]byte, error) {
  2054  	type NoMethod CustomAttribute
  2055  	raw := NoMethod(*s)
  2056  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2057  }
  2058  
  2059  type CustomGroup struct {
  2060  	// Attributes: The sub-attributes.
  2061  	Attributes []*CustomAttribute `json:"attributes,omitempty"`
  2062  
  2063  	// Name: The name of the group. Underscores will be replaced by spaces
  2064  	// upon insertion.
  2065  	Name string `json:"name,omitempty"`
  2066  
  2067  	// ForceSendFields is a list of field names (e.g. "Attributes") to
  2068  	// unconditionally include in API requests. By default, fields with
  2069  	// empty or default values are omitted from API requests. However, any
  2070  	// non-pointer, non-interface field appearing in ForceSendFields will be
  2071  	// sent to the server regardless of whether the field is empty or not.
  2072  	// This may be used to include empty fields in Patch requests.
  2073  	ForceSendFields []string `json:"-"`
  2074  
  2075  	// NullFields is a list of field names (e.g. "Attributes") to include in
  2076  	// API requests with the JSON null value. By default, fields with empty
  2077  	// values are omitted from API requests. However, any field with an
  2078  	// empty value appearing in NullFields will be sent to the server as
  2079  	// null. It is an error if a field in this list has a non-empty value.
  2080  	// This may be used to include null fields in Patch requests.
  2081  	NullFields []string `json:"-"`
  2082  }
  2083  
  2084  func (s *CustomGroup) MarshalJSON() ([]byte, error) {
  2085  	type NoMethod CustomGroup
  2086  	raw := NoMethod(*s)
  2087  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2088  }
  2089  
  2090  type CustomerReturnReason struct {
  2091  	// Description: Description of the reason.
  2092  	Description string `json:"description,omitempty"`
  2093  
  2094  	// ReasonCode: Code of the return reason. Acceptable values are: -
  2095  	// "betterPriceFound" - "changedMind" - "damagedOrDefectiveItem" -
  2096  	// "didNotMatchDescription" - "doesNotFit" - "expiredItem" -
  2097  	// "incorrectItemReceived" - "noLongerNeeded" - "notSpecified" -
  2098  	// "orderedWrongItem" - "other" - "qualityNotExpected" -
  2099  	// "receivedTooLate" - "undeliverable"
  2100  	ReasonCode string `json:"reasonCode,omitempty"`
  2101  
  2102  	// ForceSendFields is a list of field names (e.g. "Description") to
  2103  	// unconditionally include in API requests. By default, fields with
  2104  	// empty or default values are omitted from API requests. However, any
  2105  	// non-pointer, non-interface field appearing in ForceSendFields will be
  2106  	// sent to the server regardless of whether the field is empty or not.
  2107  	// This may be used to include empty fields in Patch requests.
  2108  	ForceSendFields []string `json:"-"`
  2109  
  2110  	// NullFields is a list of field names (e.g. "Description") to include
  2111  	// in API requests with the JSON null value. By default, fields with
  2112  	// empty values are omitted from API requests. However, any field with
  2113  	// an empty value appearing in NullFields will be sent to the server as
  2114  	// null. It is an error if a field in this list has a non-empty value.
  2115  	// This may be used to include null fields in Patch requests.
  2116  	NullFields []string `json:"-"`
  2117  }
  2118  
  2119  func (s *CustomerReturnReason) MarshalJSON() ([]byte, error) {
  2120  	type NoMethod CustomerReturnReason
  2121  	raw := NoMethod(*s)
  2122  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2123  }
  2124  
  2125  type CutoffTime struct {
  2126  	// Hour: Hour of the cutoff time until which an order has to be placed
  2127  	// to be processed in the same day. Required.
  2128  	Hour int64 `json:"hour,omitempty"`
  2129  
  2130  	// Minute: Minute of the cutoff time until which an order has to be
  2131  	// placed to be processed in the same day. Required.
  2132  	Minute int64 `json:"minute,omitempty"`
  2133  
  2134  	// Timezone: Timezone identifier for the cutoff time. A list of
  2135  	// identifiers can be found in the AdWords API documentation. E.g.
  2136  	// "Europe/Zurich". Required.
  2137  	Timezone string `json:"timezone,omitempty"`
  2138  
  2139  	// ForceSendFields is a list of field names (e.g. "Hour") to
  2140  	// unconditionally include in API requests. By default, fields with
  2141  	// empty or default values are omitted from API requests. However, any
  2142  	// non-pointer, non-interface field appearing in ForceSendFields will be
  2143  	// sent to the server regardless of whether the field is empty or not.
  2144  	// This may be used to include empty fields in Patch requests.
  2145  	ForceSendFields []string `json:"-"`
  2146  
  2147  	// NullFields is a list of field names (e.g. "Hour") to include in API
  2148  	// requests with the JSON null value. By default, fields with empty
  2149  	// values are omitted from API requests. However, any field with an
  2150  	// empty value appearing in NullFields will be sent to the server as
  2151  	// null. It is an error if a field in this list has a non-empty value.
  2152  	// This may be used to include null fields in Patch requests.
  2153  	NullFields []string `json:"-"`
  2154  }
  2155  
  2156  func (s *CutoffTime) MarshalJSON() ([]byte, error) {
  2157  	type NoMethod CutoffTime
  2158  	raw := NoMethod(*s)
  2159  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2160  }
  2161  
  2162  // Datafeed: Datafeed configuration data.
  2163  type Datafeed struct {
  2164  	// AttributeLanguage: The two-letter ISO 639-1 language in which the
  2165  	// attributes are defined in the data feed.
  2166  	AttributeLanguage string `json:"attributeLanguage,omitempty"`
  2167  
  2168  	// ContentLanguage: [DEPRECATED] Please use targets[].language instead.
  2169  	// The two-letter ISO 639-1 language of the items in the feed. Must be a
  2170  	// valid language for `targetCountry`.
  2171  	ContentLanguage string `json:"contentLanguage,omitempty"`
  2172  
  2173  	// ContentType: Required. The type of data feed. For product inventory
  2174  	// feeds, only feeds for local stores, not online stores, are supported.
  2175  	// Acceptable values are: - "local products" - "product inventory" -
  2176  	// "products"
  2177  	ContentType string `json:"contentType,omitempty"`
  2178  
  2179  	// FetchSchedule: Fetch schedule for the feed file.
  2180  	FetchSchedule *DatafeedFetchSchedule `json:"fetchSchedule,omitempty"`
  2181  
  2182  	// FileName: Required. The filename of the feed. All feeds must have a
  2183  	// unique file name.
  2184  	FileName string `json:"fileName,omitempty"`
  2185  
  2186  	// Format: Format of the feed file.
  2187  	Format *DatafeedFormat `json:"format,omitempty"`
  2188  
  2189  	// Id: Required for update. The ID of the data feed.
  2190  	Id int64 `json:"id,omitempty,string"`
  2191  
  2192  	// IntendedDestinations: [DEPRECATED] Please use
  2193  	// targets[].includedDestinations instead. The list of intended
  2194  	// destinations (corresponds to checked check boxes in Merchant Center).
  2195  	IntendedDestinations []string `json:"intendedDestinations,omitempty"`
  2196  
  2197  	// Kind: Identifies what kind of resource this is. Value: the fixed
  2198  	// string "content#datafeed"
  2199  	Kind string `json:"kind,omitempty"`
  2200  
  2201  	// Name: Required for insert. A descriptive name of the data feed.
  2202  	Name string `json:"name,omitempty"`
  2203  
  2204  	// TargetCountry: [DEPRECATED] Please use targets[].country instead. The
  2205  	// country where the items in the feed will be included in the search
  2206  	// index, represented as a CLDR territory code.
  2207  	TargetCountry string `json:"targetCountry,omitempty"`
  2208  
  2209  	// Targets: The targets this feed should apply to (country, language,
  2210  	// destinations).
  2211  	Targets []*DatafeedTarget `json:"targets,omitempty"`
  2212  
  2213  	// ServerResponse contains the HTTP response code and headers from the
  2214  	// server.
  2215  	googleapi.ServerResponse `json:"-"`
  2216  
  2217  	// ForceSendFields is a list of field names (e.g. "AttributeLanguage")
  2218  	// to unconditionally include in API requests. By default, fields with
  2219  	// empty or default values are omitted from API requests. However, any
  2220  	// non-pointer, non-interface field appearing in ForceSendFields will be
  2221  	// sent to the server regardless of whether the field is empty or not.
  2222  	// This may be used to include empty fields in Patch requests.
  2223  	ForceSendFields []string `json:"-"`
  2224  
  2225  	// NullFields is a list of field names (e.g. "AttributeLanguage") 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  
  2235  func (s *Datafeed) MarshalJSON() ([]byte, error) {
  2236  	type NoMethod Datafeed
  2237  	raw := NoMethod(*s)
  2238  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2239  }
  2240  
  2241  // DatafeedFetchSchedule: The required fields vary based on the
  2242  // frequency of fetching. For a monthly fetch schedule, day_of_month and
  2243  // hour are required. For a weekly fetch schedule, weekday and hour are
  2244  // required. For a daily fetch schedule, only hour is required.
  2245  type DatafeedFetchSchedule struct {
  2246  	// DayOfMonth: The day of the month the feed file should be fetched
  2247  	// (1-31).
  2248  	DayOfMonth int64 `json:"dayOfMonth,omitempty"`
  2249  
  2250  	// FetchUrl: The URL where the feed file can be fetched. Google Merchant
  2251  	// Center will support automatic scheduled uploads using the HTTP,
  2252  	// HTTPS, FTP, or SFTP protocols, so the value will need to be a valid
  2253  	// link using one of those four protocols.
  2254  	FetchUrl string `json:"fetchUrl,omitempty"`
  2255  
  2256  	// Hour: The hour of the day the feed file should be fetched (0-23).
  2257  	Hour int64 `json:"hour,omitempty"`
  2258  
  2259  	// MinuteOfHour: The minute of the hour the feed file should be fetched
  2260  	// (0-59). Read-only.
  2261  	MinuteOfHour int64 `json:"minuteOfHour,omitempty"`
  2262  
  2263  	// Password: An optional password for fetch_url.
  2264  	Password string `json:"password,omitempty"`
  2265  
  2266  	// Paused: Whether the scheduled fetch is paused or not.
  2267  	Paused bool `json:"paused,omitempty"`
  2268  
  2269  	// TimeZone: Time zone used for schedule. UTC by default. E.g.,
  2270  	// "America/Los_Angeles".
  2271  	TimeZone string `json:"timeZone,omitempty"`
  2272  
  2273  	// Username: An optional user name for fetch_url.
  2274  	Username string `json:"username,omitempty"`
  2275  
  2276  	// Weekday: The day of the week the feed file should be fetched.
  2277  	// Acceptable values are: - "monday" - "tuesday" - "wednesday" -
  2278  	// "thursday" - "friday" - "saturday" - "sunday"
  2279  	Weekday string `json:"weekday,omitempty"`
  2280  
  2281  	// ForceSendFields is a list of field names (e.g. "DayOfMonth") to
  2282  	// unconditionally include in API requests. By default, fields with
  2283  	// empty or default values are omitted from API requests. However, any
  2284  	// non-pointer, non-interface field appearing in ForceSendFields will be
  2285  	// sent to the server regardless of whether the field is empty or not.
  2286  	// This may be used to include empty fields in Patch requests.
  2287  	ForceSendFields []string `json:"-"`
  2288  
  2289  	// NullFields is a list of field names (e.g. "DayOfMonth") to include in
  2290  	// API requests with the JSON null value. By default, fields with empty
  2291  	// values are omitted from API requests. However, any field with an
  2292  	// empty value appearing in NullFields will be sent to the server as
  2293  	// null. It is an error if a field in this list has a non-empty value.
  2294  	// This may be used to include null fields in Patch requests.
  2295  	NullFields []string `json:"-"`
  2296  }
  2297  
  2298  func (s *DatafeedFetchSchedule) MarshalJSON() ([]byte, error) {
  2299  	type NoMethod DatafeedFetchSchedule
  2300  	raw := NoMethod(*s)
  2301  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2302  }
  2303  
  2304  type DatafeedFormat struct {
  2305  	// ColumnDelimiter: Delimiter for the separation of values in a
  2306  	// delimiter-separated values feed. If not specified, the delimiter will
  2307  	// be auto-detected. Ignored for non-DSV data feeds. Acceptable values
  2308  	// are: - "pipe" - "tab" - "tilde"
  2309  	ColumnDelimiter string `json:"columnDelimiter,omitempty"`
  2310  
  2311  	// FileEncoding: Character encoding scheme of the data feed. If not
  2312  	// specified, the encoding will be auto-detected. Acceptable values are:
  2313  	// - "latin-1" - "utf-16be" - "utf-16le" - "utf-8" -
  2314  	// "windows-1252"
  2315  	FileEncoding string `json:"fileEncoding,omitempty"`
  2316  
  2317  	// QuotingMode: Specifies how double quotes are interpreted. If not
  2318  	// specified, the mode will be auto-detected. Ignored for non-DSV data
  2319  	// feeds. Acceptable values are: - "normal character" - "value
  2320  	// quoting"
  2321  	QuotingMode string `json:"quotingMode,omitempty"`
  2322  
  2323  	// ForceSendFields is a list of field names (e.g. "ColumnDelimiter") to
  2324  	// unconditionally include in API requests. By default, fields with
  2325  	// empty or default values are omitted from API requests. However, any
  2326  	// non-pointer, non-interface field appearing in ForceSendFields will be
  2327  	// sent to the server regardless of whether the field is empty or not.
  2328  	// This may be used to include empty fields in Patch requests.
  2329  	ForceSendFields []string `json:"-"`
  2330  
  2331  	// NullFields is a list of field names (e.g. "ColumnDelimiter") to
  2332  	// include in API requests with the JSON null value. By default, fields
  2333  	// with empty values are omitted from API requests. However, any field
  2334  	// with an empty value appearing in NullFields will be sent to the
  2335  	// server as null. It is an error if a field in this list has a
  2336  	// non-empty value. This may be used to include null fields in Patch
  2337  	// requests.
  2338  	NullFields []string `json:"-"`
  2339  }
  2340  
  2341  func (s *DatafeedFormat) MarshalJSON() ([]byte, error) {
  2342  	type NoMethod DatafeedFormat
  2343  	raw := NoMethod(*s)
  2344  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2345  }
  2346  
  2347  // DatafeedStatus: The status of a datafeed, i.e., the result of the
  2348  // last retrieval of the datafeed computed asynchronously when the feed
  2349  // processing is finished.
  2350  type DatafeedStatus struct {
  2351  	// Country: The country for which the status is reported, represented as
  2352  	// a CLDR territory code.
  2353  	Country string `json:"country,omitempty"`
  2354  
  2355  	// DatafeedId: The ID of the feed for which the status is reported.
  2356  	DatafeedId uint64 `json:"datafeedId,omitempty,string"`
  2357  
  2358  	// Errors: The list of errors occurring in the feed.
  2359  	Errors []*DatafeedStatusError `json:"errors,omitempty"`
  2360  
  2361  	// ItemsTotal: The number of items in the feed that were processed.
  2362  	ItemsTotal uint64 `json:"itemsTotal,omitempty,string"`
  2363  
  2364  	// ItemsValid: The number of items in the feed that were valid.
  2365  	ItemsValid uint64 `json:"itemsValid,omitempty,string"`
  2366  
  2367  	// Kind: Identifies what kind of resource this is. Value: the fixed
  2368  	// string "content#datafeedStatus"
  2369  	Kind string `json:"kind,omitempty"`
  2370  
  2371  	// Language: The two-letter ISO 639-1 language for which the status is
  2372  	// reported.
  2373  	Language string `json:"language,omitempty"`
  2374  
  2375  	// LastUploadDate: The last date at which the feed was uploaded.
  2376  	LastUploadDate string `json:"lastUploadDate,omitempty"`
  2377  
  2378  	// ProcessingStatus: The processing status of the feed. Acceptable
  2379  	// values are: - ""failure": The feed could not be processed or all
  2380  	// items had errors." - "in progress": The feed is being processed. -
  2381  	// "none": The feed has not yet been processed. For example, a feed
  2382  	// that has never been uploaded will have this processing status. -
  2383  	// "success": The feed was processed successfully, though some items
  2384  	// might have had errors.
  2385  	ProcessingStatus string `json:"processingStatus,omitempty"`
  2386  
  2387  	// Warnings: The list of errors occurring in the feed.
  2388  	Warnings []*DatafeedStatusError `json:"warnings,omitempty"`
  2389  
  2390  	// ServerResponse contains the HTTP response code and headers from the
  2391  	// server.
  2392  	googleapi.ServerResponse `json:"-"`
  2393  
  2394  	// ForceSendFields is a list of field names (e.g. "Country") to
  2395  	// unconditionally include in API requests. By default, fields with
  2396  	// empty or default values are omitted from API requests. However, any
  2397  	// non-pointer, non-interface field appearing in ForceSendFields will be
  2398  	// sent to the server regardless of whether the field is empty or not.
  2399  	// This may be used to include empty fields in Patch requests.
  2400  	ForceSendFields []string `json:"-"`
  2401  
  2402  	// NullFields is a list of field names (e.g. "Country") to include in
  2403  	// API requests with the JSON null value. By default, fields with empty
  2404  	// values are omitted from API requests. However, any field with an
  2405  	// empty value appearing in NullFields will be sent to the server as
  2406  	// null. It is an error if a field in this list has a non-empty value.
  2407  	// This may be used to include null fields in Patch requests.
  2408  	NullFields []string `json:"-"`
  2409  }
  2410  
  2411  func (s *DatafeedStatus) MarshalJSON() ([]byte, error) {
  2412  	type NoMethod DatafeedStatus
  2413  	raw := NoMethod(*s)
  2414  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2415  }
  2416  
  2417  // DatafeedStatusError: An error occurring in the feed, like "invalid
  2418  // price".
  2419  type DatafeedStatusError struct {
  2420  	// Code: The code of the error, e.g., "validation/invalid_value".
  2421  	Code string `json:"code,omitempty"`
  2422  
  2423  	// Count: The number of occurrences of the error in the feed.
  2424  	Count uint64 `json:"count,omitempty,string"`
  2425  
  2426  	// Examples: A list of example occurrences of the error, grouped by
  2427  	// product.
  2428  	Examples []*DatafeedStatusExample `json:"examples,omitempty"`
  2429  
  2430  	// Message: The error message, e.g., "Invalid price".
  2431  	Message string `json:"message,omitempty"`
  2432  
  2433  	// ForceSendFields is a list of field names (e.g. "Code") to
  2434  	// unconditionally include in API requests. By default, fields with
  2435  	// empty or default values are omitted from API requests. However, any
  2436  	// non-pointer, non-interface field appearing in ForceSendFields will be
  2437  	// sent to the server regardless of whether the field is empty or not.
  2438  	// This may be used to include empty fields in Patch requests.
  2439  	ForceSendFields []string `json:"-"`
  2440  
  2441  	// NullFields is a list of field names (e.g. "Code") to include in API
  2442  	// requests with the JSON null value. By default, fields with empty
  2443  	// values are omitted from API requests. However, any field with an
  2444  	// empty value appearing in NullFields will be sent to the server as
  2445  	// null. It is an error if a field in this list has a non-empty value.
  2446  	// This may be used to include null fields in Patch requests.
  2447  	NullFields []string `json:"-"`
  2448  }
  2449  
  2450  func (s *DatafeedStatusError) MarshalJSON() ([]byte, error) {
  2451  	type NoMethod DatafeedStatusError
  2452  	raw := NoMethod(*s)
  2453  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2454  }
  2455  
  2456  // DatafeedStatusExample: An example occurrence for a particular error.
  2457  type DatafeedStatusExample struct {
  2458  	// ItemId: The ID of the example item.
  2459  	ItemId string `json:"itemId,omitempty"`
  2460  
  2461  	// LineNumber: Line number in the data feed where the example is found.
  2462  	LineNumber uint64 `json:"lineNumber,omitempty,string"`
  2463  
  2464  	// Value: The problematic value.
  2465  	Value string `json:"value,omitempty"`
  2466  
  2467  	// ForceSendFields is a list of field names (e.g. "ItemId") to
  2468  	// unconditionally include in API requests. By default, fields with
  2469  	// empty or default values are omitted from API requests. However, any
  2470  	// non-pointer, non-interface field appearing in ForceSendFields will be
  2471  	// sent to the server regardless of whether the field is empty or not.
  2472  	// This may be used to include empty fields in Patch requests.
  2473  	ForceSendFields []string `json:"-"`
  2474  
  2475  	// NullFields is a list of field names (e.g. "ItemId") to include in API
  2476  	// requests with the JSON null value. By default, fields with empty
  2477  	// values are omitted from API requests. However, any field with an
  2478  	// empty value appearing in NullFields will be sent to the server as
  2479  	// null. It is an error if a field in this list has a non-empty value.
  2480  	// This may be used to include null fields in Patch requests.
  2481  	NullFields []string `json:"-"`
  2482  }
  2483  
  2484  func (s *DatafeedStatusExample) MarshalJSON() ([]byte, error) {
  2485  	type NoMethod DatafeedStatusExample
  2486  	raw := NoMethod(*s)
  2487  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2488  }
  2489  
  2490  type DatafeedTarget struct {
  2491  	// Country: The country where the items in the feed will be included in
  2492  	// the search index, represented as a CLDR territory code.
  2493  	Country string `json:"country,omitempty"`
  2494  
  2495  	// ExcludedDestinations: The list of destinations to exclude for this
  2496  	// target (corresponds to unchecked check boxes in Merchant Center).
  2497  	ExcludedDestinations []string `json:"excludedDestinations,omitempty"`
  2498  
  2499  	// IncludedDestinations: The list of destinations to include for this
  2500  	// target (corresponds to checked check boxes in Merchant Center).
  2501  	// Default destinations are always included unless provided in
  2502  	// `excludedDestinations`. List of supported destinations (if available
  2503  	// to the account): - DisplayAds - Shopping - ShoppingActions -
  2504  	// SurfacesAcrossGoogle
  2505  	IncludedDestinations []string `json:"includedDestinations,omitempty"`
  2506  
  2507  	// Language: The two-letter ISO 639-1 language of the items in the feed.
  2508  	// Must be a valid language for `targets[].country`.
  2509  	Language string `json:"language,omitempty"`
  2510  
  2511  	// ForceSendFields is a list of field names (e.g. "Country") to
  2512  	// unconditionally include in API requests. By default, fields with
  2513  	// empty or default values are omitted from API requests. However, any
  2514  	// non-pointer, non-interface field appearing in ForceSendFields will be
  2515  	// sent to the server regardless of whether the field is empty or not.
  2516  	// This may be used to include empty fields in Patch requests.
  2517  	ForceSendFields []string `json:"-"`
  2518  
  2519  	// NullFields is a list of field names (e.g. "Country") to include in
  2520  	// API requests with the JSON null value. By default, fields with empty
  2521  	// values are omitted from API requests. However, any field with an
  2522  	// empty value appearing in NullFields will be sent to the server as
  2523  	// null. It is an error if a field in this list has a non-empty value.
  2524  	// This may be used to include null fields in Patch requests.
  2525  	NullFields []string `json:"-"`
  2526  }
  2527  
  2528  func (s *DatafeedTarget) MarshalJSON() ([]byte, error) {
  2529  	type NoMethod DatafeedTarget
  2530  	raw := NoMethod(*s)
  2531  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2532  }
  2533  
  2534  type DatafeedsCustomBatchRequest struct {
  2535  	// Entries: The request entries to be processed in the batch.
  2536  	Entries []*DatafeedsCustomBatchRequestEntry `json:"entries,omitempty"`
  2537  
  2538  	// ForceSendFields is a list of field names (e.g. "Entries") to
  2539  	// unconditionally include in API requests. By default, fields with
  2540  	// empty or default values are omitted from API requests. However, any
  2541  	// non-pointer, non-interface field appearing in ForceSendFields will be
  2542  	// sent to the server regardless of whether the field is empty or not.
  2543  	// This may be used to include empty fields in Patch requests.
  2544  	ForceSendFields []string `json:"-"`
  2545  
  2546  	// NullFields is a list of field names (e.g. "Entries") to include in
  2547  	// API requests with the JSON null value. By default, fields with empty
  2548  	// values are omitted from API requests. However, any field with an
  2549  	// empty value appearing in NullFields will be sent to the server as
  2550  	// null. It is an error if a field in this list has a non-empty value.
  2551  	// This may be used to include null fields in Patch requests.
  2552  	NullFields []string `json:"-"`
  2553  }
  2554  
  2555  func (s *DatafeedsCustomBatchRequest) MarshalJSON() ([]byte, error) {
  2556  	type NoMethod DatafeedsCustomBatchRequest
  2557  	raw := NoMethod(*s)
  2558  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2559  }
  2560  
  2561  // DatafeedsCustomBatchRequestEntry: A batch entry encoding a single
  2562  // non-batch datafeeds request.
  2563  type DatafeedsCustomBatchRequestEntry struct {
  2564  	// BatchId: An entry ID, unique within the batch request.
  2565  	BatchId int64 `json:"batchId,omitempty"`
  2566  
  2567  	// Datafeed: The data feed to insert.
  2568  	Datafeed *Datafeed `json:"datafeed,omitempty"`
  2569  
  2570  	// DatafeedId: The ID of the data feed to get, delete or fetch.
  2571  	DatafeedId uint64 `json:"datafeedId,omitempty,string"`
  2572  
  2573  	// MerchantId: The ID of the managing account.
  2574  	MerchantId uint64 `json:"merchantId,omitempty,string"`
  2575  
  2576  	// Method: The method of the batch entry. Acceptable values are: -
  2577  	// "delete" - "fetchNow" - "get" - "insert" - "update"
  2578  	Method string `json:"method,omitempty"`
  2579  
  2580  	// ForceSendFields is a list of field names (e.g. "BatchId") to
  2581  	// unconditionally include in API requests. By default, fields with
  2582  	// empty or default values are omitted from API requests. However, any
  2583  	// non-pointer, non-interface field appearing in ForceSendFields will be
  2584  	// sent to the server regardless of whether the field is empty or not.
  2585  	// This may be used to include empty fields in Patch requests.
  2586  	ForceSendFields []string `json:"-"`
  2587  
  2588  	// NullFields is a list of field names (e.g. "BatchId") to include in
  2589  	// API requests with the JSON null value. By default, fields with empty
  2590  	// values are omitted from API requests. However, any field with an
  2591  	// empty value appearing in NullFields will be sent to the server as
  2592  	// null. It is an error if a field in this list has a non-empty value.
  2593  	// This may be used to include null fields in Patch requests.
  2594  	NullFields []string `json:"-"`
  2595  }
  2596  
  2597  func (s *DatafeedsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
  2598  	type NoMethod DatafeedsCustomBatchRequestEntry
  2599  	raw := NoMethod(*s)
  2600  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2601  }
  2602  
  2603  type DatafeedsCustomBatchResponse struct {
  2604  	// Entries: The result of the execution of the batch requests.
  2605  	Entries []*DatafeedsCustomBatchResponseEntry `json:"entries,omitempty"`
  2606  
  2607  	// Kind: Identifies what kind of resource this is. Value: the fixed
  2608  	// string "content#datafeedsCustomBatchResponse".
  2609  	Kind string `json:"kind,omitempty"`
  2610  
  2611  	// ServerResponse contains the HTTP response code and headers from the
  2612  	// server.
  2613  	googleapi.ServerResponse `json:"-"`
  2614  
  2615  	// ForceSendFields is a list of field names (e.g. "Entries") to
  2616  	// unconditionally include in API requests. By default, fields with
  2617  	// empty or default values are omitted from API requests. However, any
  2618  	// non-pointer, non-interface field appearing in ForceSendFields will be
  2619  	// sent to the server regardless of whether the field is empty or not.
  2620  	// This may be used to include empty fields in Patch requests.
  2621  	ForceSendFields []string `json:"-"`
  2622  
  2623  	// NullFields is a list of field names (e.g. "Entries") to include in
  2624  	// API requests with the JSON null value. By default, fields with empty
  2625  	// values are omitted from API requests. However, any field with an
  2626  	// empty value appearing in NullFields will be sent to the server as
  2627  	// null. It is an error if a field in this list has a non-empty value.
  2628  	// This may be used to include null fields in Patch requests.
  2629  	NullFields []string `json:"-"`
  2630  }
  2631  
  2632  func (s *DatafeedsCustomBatchResponse) MarshalJSON() ([]byte, error) {
  2633  	type NoMethod DatafeedsCustomBatchResponse
  2634  	raw := NoMethod(*s)
  2635  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2636  }
  2637  
  2638  // DatafeedsCustomBatchResponseEntry: A batch entry encoding a single
  2639  // non-batch datafeeds response.
  2640  type DatafeedsCustomBatchResponseEntry struct {
  2641  	// BatchId: The ID of the request entry this entry responds to.
  2642  	BatchId int64 `json:"batchId,omitempty"`
  2643  
  2644  	// Datafeed: The requested data feed. Defined if and only if the request
  2645  	// was successful.
  2646  	Datafeed *Datafeed `json:"datafeed,omitempty"`
  2647  
  2648  	// Errors: A list of errors defined if and only if the request failed.
  2649  	Errors *Errors `json:"errors,omitempty"`
  2650  
  2651  	// ForceSendFields is a list of field names (e.g. "BatchId") to
  2652  	// unconditionally include in API requests. By default, fields with
  2653  	// empty or default values are omitted from API requests. However, any
  2654  	// non-pointer, non-interface field appearing in ForceSendFields will be
  2655  	// sent to the server regardless of whether the field is empty or not.
  2656  	// This may be used to include empty fields in Patch requests.
  2657  	ForceSendFields []string `json:"-"`
  2658  
  2659  	// NullFields is a list of field names (e.g. "BatchId") to include in
  2660  	// API requests with the JSON null value. By default, fields with empty
  2661  	// values are omitted from API requests. However, any field with an
  2662  	// empty value appearing in NullFields will be sent to the server as
  2663  	// null. It is an error if a field in this list has a non-empty value.
  2664  	// This may be used to include null fields in Patch requests.
  2665  	NullFields []string `json:"-"`
  2666  }
  2667  
  2668  func (s *DatafeedsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
  2669  	type NoMethod DatafeedsCustomBatchResponseEntry
  2670  	raw := NoMethod(*s)
  2671  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2672  }
  2673  
  2674  type DatafeedsFetchNowResponse struct {
  2675  	// Kind: Identifies what kind of resource this is. Value: the fixed
  2676  	// string "content#datafeedsFetchNowResponse".
  2677  	Kind string `json:"kind,omitempty"`
  2678  
  2679  	// ServerResponse contains the HTTP response code and headers from the
  2680  	// server.
  2681  	googleapi.ServerResponse `json:"-"`
  2682  
  2683  	// ForceSendFields is a list of field names (e.g. "Kind") to
  2684  	// unconditionally include in API requests. By default, fields with
  2685  	// empty or default values are omitted from API requests. However, any
  2686  	// non-pointer, non-interface field appearing in ForceSendFields will be
  2687  	// sent to the server regardless of whether the field is empty or not.
  2688  	// This may be used to include empty fields in Patch requests.
  2689  	ForceSendFields []string `json:"-"`
  2690  
  2691  	// NullFields is a list of field names (e.g. "Kind") to include in API
  2692  	// requests with the JSON null value. By default, fields with empty
  2693  	// values are omitted from API requests. However, any field with an
  2694  	// empty value appearing in NullFields will be sent to the server as
  2695  	// null. It is an error if a field in this list has a non-empty value.
  2696  	// This may be used to include null fields in Patch requests.
  2697  	NullFields []string `json:"-"`
  2698  }
  2699  
  2700  func (s *DatafeedsFetchNowResponse) MarshalJSON() ([]byte, error) {
  2701  	type NoMethod DatafeedsFetchNowResponse
  2702  	raw := NoMethod(*s)
  2703  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2704  }
  2705  
  2706  type DatafeedsListResponse struct {
  2707  	// Kind: Identifies what kind of resource this is. Value: the fixed
  2708  	// string "content#datafeedsListResponse".
  2709  	Kind string `json:"kind,omitempty"`
  2710  
  2711  	// NextPageToken: The token for the retrieval of the next page of
  2712  	// datafeeds.
  2713  	NextPageToken string `json:"nextPageToken,omitempty"`
  2714  
  2715  	Resources []*Datafeed `json:"resources,omitempty"`
  2716  
  2717  	// ServerResponse contains the HTTP response code and headers from the
  2718  	// server.
  2719  	googleapi.ServerResponse `json:"-"`
  2720  
  2721  	// ForceSendFields is a list of field names (e.g. "Kind") to
  2722  	// unconditionally include in API requests. By default, fields with
  2723  	// empty or default values are omitted from API requests. However, any
  2724  	// non-pointer, non-interface field appearing in ForceSendFields will be
  2725  	// sent to the server regardless of whether the field is empty or not.
  2726  	// This may be used to include empty fields in Patch requests.
  2727  	ForceSendFields []string `json:"-"`
  2728  
  2729  	// NullFields is a list of field names (e.g. "Kind") to include in API
  2730  	// requests with the JSON null value. By default, fields with empty
  2731  	// values are omitted from API requests. However, any field with an
  2732  	// empty value appearing in NullFields will be sent to the server as
  2733  	// null. It is an error if a field in this list has a non-empty value.
  2734  	// This may be used to include null fields in Patch requests.
  2735  	NullFields []string `json:"-"`
  2736  }
  2737  
  2738  func (s *DatafeedsListResponse) MarshalJSON() ([]byte, error) {
  2739  	type NoMethod DatafeedsListResponse
  2740  	raw := NoMethod(*s)
  2741  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2742  }
  2743  
  2744  type DatafeedstatusesCustomBatchRequest struct {
  2745  	// Entries: The request entries to be processed in the batch.
  2746  	Entries []*DatafeedstatusesCustomBatchRequestEntry `json:"entries,omitempty"`
  2747  
  2748  	// ForceSendFields is a list of field names (e.g. "Entries") to
  2749  	// unconditionally include in API requests. By default, fields with
  2750  	// empty or default values are omitted from API requests. However, any
  2751  	// non-pointer, non-interface field appearing in ForceSendFields will be
  2752  	// sent to the server regardless of whether the field is empty or not.
  2753  	// This may be used to include empty fields in Patch requests.
  2754  	ForceSendFields []string `json:"-"`
  2755  
  2756  	// NullFields is a list of field names (e.g. "Entries") to include in
  2757  	// API requests with the JSON null value. By default, fields with empty
  2758  	// values are omitted from API requests. However, any field with an
  2759  	// empty value appearing in NullFields will be sent to the server as
  2760  	// null. It is an error if a field in this list has a non-empty value.
  2761  	// This may be used to include null fields in Patch requests.
  2762  	NullFields []string `json:"-"`
  2763  }
  2764  
  2765  func (s *DatafeedstatusesCustomBatchRequest) MarshalJSON() ([]byte, error) {
  2766  	type NoMethod DatafeedstatusesCustomBatchRequest
  2767  	raw := NoMethod(*s)
  2768  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2769  }
  2770  
  2771  // DatafeedstatusesCustomBatchRequestEntry: A batch entry encoding a
  2772  // single non-batch datafeedstatuses request.
  2773  type DatafeedstatusesCustomBatchRequestEntry struct {
  2774  	// BatchId: An entry ID, unique within the batch request.
  2775  	BatchId int64 `json:"batchId,omitempty"`
  2776  
  2777  	// Country: The country for which to get the datafeed status. If this
  2778  	// parameter is provided then language must also be provided. Note that
  2779  	// for multi-target datafeeds this parameter is required.
  2780  	Country string `json:"country,omitempty"`
  2781  
  2782  	// DatafeedId: The ID of the data feed to get.
  2783  	DatafeedId uint64 `json:"datafeedId,omitempty,string"`
  2784  
  2785  	// Language: The language for which to get the datafeed status. If this
  2786  	// parameter is provided then country must also be provided. Note that
  2787  	// for multi-target datafeeds this parameter is required.
  2788  	Language string `json:"language,omitempty"`
  2789  
  2790  	// MerchantId: The ID of the managing account.
  2791  	MerchantId uint64 `json:"merchantId,omitempty,string"`
  2792  
  2793  	// Method: The method of the batch entry. Acceptable values are: -
  2794  	// "get"
  2795  	Method string `json:"method,omitempty"`
  2796  
  2797  	// ForceSendFields is a list of field names (e.g. "BatchId") to
  2798  	// unconditionally include in API requests. By default, fields with
  2799  	// empty or default values are omitted from API requests. However, any
  2800  	// non-pointer, non-interface field appearing in ForceSendFields will be
  2801  	// sent to the server regardless of whether the field is empty or not.
  2802  	// This may be used to include empty fields in Patch requests.
  2803  	ForceSendFields []string `json:"-"`
  2804  
  2805  	// NullFields is a list of field names (e.g. "BatchId") to include in
  2806  	// API requests with the JSON null value. By default, fields with empty
  2807  	// values are omitted from API requests. However, any field with an
  2808  	// empty value appearing in NullFields will be sent to the server as
  2809  	// null. It is an error if a field in this list has a non-empty value.
  2810  	// This may be used to include null fields in Patch requests.
  2811  	NullFields []string `json:"-"`
  2812  }
  2813  
  2814  func (s *DatafeedstatusesCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
  2815  	type NoMethod DatafeedstatusesCustomBatchRequestEntry
  2816  	raw := NoMethod(*s)
  2817  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2818  }
  2819  
  2820  type DatafeedstatusesCustomBatchResponse struct {
  2821  	// Entries: The result of the execution of the batch requests.
  2822  	Entries []*DatafeedstatusesCustomBatchResponseEntry `json:"entries,omitempty"`
  2823  
  2824  	// Kind: Identifies what kind of resource this is. Value: the fixed
  2825  	// string "content#datafeedstatusesCustomBatchResponse".
  2826  	Kind string `json:"kind,omitempty"`
  2827  
  2828  	// ServerResponse contains the HTTP response code and headers from the
  2829  	// server.
  2830  	googleapi.ServerResponse `json:"-"`
  2831  
  2832  	// ForceSendFields is a list of field names (e.g. "Entries") to
  2833  	// unconditionally include in API requests. By default, fields with
  2834  	// empty or default values are omitted from API requests. However, any
  2835  	// non-pointer, non-interface field appearing in ForceSendFields will be
  2836  	// sent to the server regardless of whether the field is empty or not.
  2837  	// This may be used to include empty fields in Patch requests.
  2838  	ForceSendFields []string `json:"-"`
  2839  
  2840  	// NullFields is a list of field names (e.g. "Entries") to include in
  2841  	// API requests with the JSON null value. By default, fields with empty
  2842  	// values are omitted from API requests. However, any field with an
  2843  	// empty value appearing in NullFields will be sent to the server as
  2844  	// null. It is an error if a field in this list has a non-empty value.
  2845  	// This may be used to include null fields in Patch requests.
  2846  	NullFields []string `json:"-"`
  2847  }
  2848  
  2849  func (s *DatafeedstatusesCustomBatchResponse) MarshalJSON() ([]byte, error) {
  2850  	type NoMethod DatafeedstatusesCustomBatchResponse
  2851  	raw := NoMethod(*s)
  2852  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2853  }
  2854  
  2855  // DatafeedstatusesCustomBatchResponseEntry: A batch entry encoding a
  2856  // single non-batch datafeedstatuses response.
  2857  type DatafeedstatusesCustomBatchResponseEntry struct {
  2858  	// BatchId: The ID of the request entry this entry responds to.
  2859  	BatchId int64 `json:"batchId,omitempty"`
  2860  
  2861  	// DatafeedStatus: The requested data feed status. Defined if and only
  2862  	// if the request was successful.
  2863  	DatafeedStatus *DatafeedStatus `json:"datafeedStatus,omitempty"`
  2864  
  2865  	// Errors: A list of errors defined if and only if the request failed.
  2866  	Errors *Errors `json:"errors,omitempty"`
  2867  
  2868  	// ForceSendFields is a list of field names (e.g. "BatchId") to
  2869  	// unconditionally include in API requests. By default, fields with
  2870  	// empty or default values are omitted from API requests. However, any
  2871  	// non-pointer, non-interface field appearing in ForceSendFields will be
  2872  	// sent to the server regardless of whether the field is empty or not.
  2873  	// This may be used to include empty fields in Patch requests.
  2874  	ForceSendFields []string `json:"-"`
  2875  
  2876  	// NullFields is a list of field names (e.g. "BatchId") to include in
  2877  	// API requests with the JSON null value. By default, fields with empty
  2878  	// values are omitted from API requests. However, any field with an
  2879  	// empty value appearing in NullFields will be sent to the server as
  2880  	// null. It is an error if a field in this list has a non-empty value.
  2881  	// This may be used to include null fields in Patch requests.
  2882  	NullFields []string `json:"-"`
  2883  }
  2884  
  2885  func (s *DatafeedstatusesCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
  2886  	type NoMethod DatafeedstatusesCustomBatchResponseEntry
  2887  	raw := NoMethod(*s)
  2888  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2889  }
  2890  
  2891  type DatafeedstatusesListResponse struct {
  2892  	// Kind: Identifies what kind of resource this is. Value: the fixed
  2893  	// string "content#datafeedstatusesListResponse".
  2894  	Kind string `json:"kind,omitempty"`
  2895  
  2896  	// NextPageToken: The token for the retrieval of the next page of
  2897  	// datafeed statuses.
  2898  	NextPageToken string `json:"nextPageToken,omitempty"`
  2899  
  2900  	Resources []*DatafeedStatus `json:"resources,omitempty"`
  2901  
  2902  	// ServerResponse contains the HTTP response code and headers from the
  2903  	// server.
  2904  	googleapi.ServerResponse `json:"-"`
  2905  
  2906  	// ForceSendFields is a list of field names (e.g. "Kind") to
  2907  	// unconditionally include in API requests. By default, fields with
  2908  	// empty or default values are omitted from API requests. However, any
  2909  	// non-pointer, non-interface field appearing in ForceSendFields will be
  2910  	// sent to the server regardless of whether the field is empty or not.
  2911  	// This may be used to include empty fields in Patch requests.
  2912  	ForceSendFields []string `json:"-"`
  2913  
  2914  	// NullFields is a list of field names (e.g. "Kind") to include in API
  2915  	// requests with the JSON null value. By default, fields with empty
  2916  	// values are omitted from API requests. However, any field with an
  2917  	// empty value appearing in NullFields will be sent to the server as
  2918  	// null. It is an error if a field in this list has a non-empty value.
  2919  	// This may be used to include null fields in Patch requests.
  2920  	NullFields []string `json:"-"`
  2921  }
  2922  
  2923  func (s *DatafeedstatusesListResponse) MarshalJSON() ([]byte, error) {
  2924  	type NoMethod DatafeedstatusesListResponse
  2925  	raw := NoMethod(*s)
  2926  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  2927  }
  2928  
  2929  type DeliveryTime struct {
  2930  	// CutoffTime: Business days cutoff time definition. If not configured
  2931  	// the cutoff time will be defaulted to 8AM PST.
  2932  	CutoffTime *CutoffTime `json:"cutoffTime,omitempty"`
  2933  
  2934  	// HandlingBusinessDayConfig: The business days during which orders can
  2935  	// be handled. If not provided, Monday to Friday business days will be
  2936  	// assumed.
  2937  	HandlingBusinessDayConfig *BusinessDayConfig `json:"handlingBusinessDayConfig,omitempty"`
  2938  
  2939  	// HolidayCutoffs: Holiday cutoff definitions. If configured, they
  2940  	// specify order cutoff times for holiday-specific shipping.
  2941  	HolidayCutoffs []*HolidayCutoff `json:"holidayCutoffs,omitempty"`
  2942  
  2943  	// MaxHandlingTimeInDays: Maximum number of business days spent before
  2944  	// an order is shipped. 0 means same day shipped, 1 means next day
  2945  	// shipped. Must be greater than or equal to `minHandlingTimeInDays`.
  2946  	MaxHandlingTimeInDays int64 `json:"maxHandlingTimeInDays,omitempty"`
  2947  
  2948  	// MaxTransitTimeInDays: Maximum number of business days that is spent
  2949  	// in transit. 0 means same day delivery, 1 means next day delivery.
  2950  	// Must be greater than or equal to `minTransitTimeInDays`.
  2951  	MaxTransitTimeInDays int64 `json:"maxTransitTimeInDays,omitempty"`
  2952  
  2953  	// MinHandlingTimeInDays: Minimum number of business days spent before
  2954  	// an order is shipped. 0 means same day shipped, 1 means next day
  2955  	// shipped.
  2956  	MinHandlingTimeInDays int64 `json:"minHandlingTimeInDays,omitempty"`
  2957  
  2958  	// MinTransitTimeInDays: Minimum number of business days that is spent
  2959  	// in transit. 0 means same day delivery, 1 means next day delivery.
  2960  	// Either `{min,max}TransitTimeInDays` or `transitTimeTable` must be
  2961  	// set, but not both.
  2962  	MinTransitTimeInDays int64 `json:"minTransitTimeInDays,omitempty"`
  2963  
  2964  	// TransitBusinessDayConfig: The business days during which orders can
  2965  	// be in-transit. If not provided, Monday to Friday business days will
  2966  	// be assumed.
  2967  	TransitBusinessDayConfig *BusinessDayConfig `json:"transitBusinessDayConfig,omitempty"`
  2968  
  2969  	// TransitTimeTable: Transit time table, number of business days spent
  2970  	// in transit based on row and column dimensions. Either
  2971  	// `{min,max}TransitTimeInDays` or `transitTimeTable` can be set, but
  2972  	// not both.
  2973  	TransitTimeTable *TransitTable `json:"transitTimeTable,omitempty"`
  2974  
  2975  	// WarehouseBasedDeliveryTimes: Indicates that the delivery time should
  2976  	// be calculated per warehouse (shipping origin location) based on the
  2977  	// settings of the selected carrier. When set, no other transit time
  2978  	// related field in DeliveryTime should be set.
  2979  	WarehouseBasedDeliveryTimes []*WarehouseBasedDeliveryTime `json:"warehouseBasedDeliveryTimes,omitempty"`
  2980  
  2981  	// ForceSendFields is a list of field names (e.g. "CutoffTime") to
  2982  	// unconditionally include in API requests. By default, fields with
  2983  	// empty or default values are omitted from API requests. However, any
  2984  	// non-pointer, non-interface field appearing in ForceSendFields will be
  2985  	// sent to the server regardless of whether the field is empty or not.
  2986  	// This may be used to include empty fields in Patch requests.
  2987  	ForceSendFields []string `json:"-"`
  2988  
  2989  	// NullFields is a list of field names (e.g. "CutoffTime") to include in
  2990  	// API requests with the JSON null value. By default, fields with empty
  2991  	// values are omitted from API requests. However, any field with an
  2992  	// empty value appearing in NullFields will be sent to the server as
  2993  	// null. It is an error if a field in this list has a non-empty value.
  2994  	// This may be used to include null fields in Patch requests.
  2995  	NullFields []string `json:"-"`
  2996  }
  2997  
  2998  func (s *DeliveryTime) MarshalJSON() ([]byte, error) {
  2999  	type NoMethod DeliveryTime
  3000  	raw := NoMethod(*s)
  3001  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3002  }
  3003  
  3004  // Error: An error returned by the API.
  3005  type Error struct {
  3006  	// Domain: The domain of the error.
  3007  	Domain string `json:"domain,omitempty"`
  3008  
  3009  	// Message: A description of the error.
  3010  	Message string `json:"message,omitempty"`
  3011  
  3012  	// Reason: The error code.
  3013  	Reason string `json:"reason,omitempty"`
  3014  
  3015  	// ForceSendFields is a list of field names (e.g. "Domain") to
  3016  	// unconditionally include in API requests. By default, fields with
  3017  	// empty or default values are omitted from API requests. However, any
  3018  	// non-pointer, non-interface field appearing in ForceSendFields will be
  3019  	// sent to the server regardless of whether the field is empty or not.
  3020  	// This may be used to include empty fields in Patch requests.
  3021  	ForceSendFields []string `json:"-"`
  3022  
  3023  	// NullFields is a list of field names (e.g. "Domain") to include in API
  3024  	// requests with the JSON null value. By default, fields with empty
  3025  	// values are omitted from API requests. However, any field with an
  3026  	// empty value appearing in NullFields will be sent to the server as
  3027  	// null. It is an error if a field in this list has a non-empty value.
  3028  	// This may be used to include null fields in Patch requests.
  3029  	NullFields []string `json:"-"`
  3030  }
  3031  
  3032  func (s *Error) MarshalJSON() ([]byte, error) {
  3033  	type NoMethod Error
  3034  	raw := NoMethod(*s)
  3035  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3036  }
  3037  
  3038  // Errors: A list of errors returned by a failed batch entry.
  3039  type Errors struct {
  3040  	// Code: The HTTP status of the first error in `errors`.
  3041  	Code int64 `json:"code,omitempty"`
  3042  
  3043  	// Errors: A list of errors.
  3044  	Errors []*Error `json:"errors,omitempty"`
  3045  
  3046  	// Message: The message of the first error in `errors`.
  3047  	Message string `json:"message,omitempty"`
  3048  
  3049  	// ForceSendFields is a list of field names (e.g. "Code") to
  3050  	// unconditionally include in API requests. By default, fields with
  3051  	// empty or default values are omitted from API requests. However, any
  3052  	// non-pointer, non-interface field appearing in ForceSendFields will be
  3053  	// sent to the server regardless of whether the field is empty or not.
  3054  	// This may be used to include empty fields in Patch requests.
  3055  	ForceSendFields []string `json:"-"`
  3056  
  3057  	// NullFields is a list of field names (e.g. "Code") to include in API
  3058  	// requests with the JSON null value. By default, fields with empty
  3059  	// values are omitted from API requests. However, any field with an
  3060  	// empty value appearing in NullFields will be sent to the server as
  3061  	// null. It is an error if a field in this list has a non-empty value.
  3062  	// This may be used to include null fields in Patch requests.
  3063  	NullFields []string `json:"-"`
  3064  }
  3065  
  3066  func (s *Errors) MarshalJSON() ([]byte, error) {
  3067  	type NoMethod Errors
  3068  	raw := NoMethod(*s)
  3069  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3070  }
  3071  
  3072  type GmbAccounts struct {
  3073  	// AccountId: The ID of the Merchant Center account.
  3074  	AccountId uint64 `json:"accountId,omitempty,string"`
  3075  
  3076  	// GmbAccounts: A list of GMB accounts which are available to the
  3077  	// merchant.
  3078  	GmbAccounts []*GmbAccountsGmbAccount `json:"gmbAccounts,omitempty"`
  3079  
  3080  	// ForceSendFields is a list of field names (e.g. "AccountId") to
  3081  	// unconditionally include in API requests. By default, fields with
  3082  	// empty or default values are omitted from API requests. However, any
  3083  	// non-pointer, non-interface field appearing in ForceSendFields will be
  3084  	// sent to the server regardless of whether the field is empty or not.
  3085  	// This may be used to include empty fields in Patch requests.
  3086  	ForceSendFields []string `json:"-"`
  3087  
  3088  	// NullFields is a list of field names (e.g. "AccountId") to include in
  3089  	// API requests with the JSON null value. By default, fields with empty
  3090  	// values are omitted from API requests. However, any field with an
  3091  	// empty value appearing in NullFields will be sent to the server as
  3092  	// null. It is an error if a field in this list has a non-empty value.
  3093  	// This may be used to include null fields in Patch requests.
  3094  	NullFields []string `json:"-"`
  3095  }
  3096  
  3097  func (s *GmbAccounts) MarshalJSON() ([]byte, error) {
  3098  	type NoMethod GmbAccounts
  3099  	raw := NoMethod(*s)
  3100  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3101  }
  3102  
  3103  type GmbAccountsGmbAccount struct {
  3104  	// Email: The email which identifies the GMB account.
  3105  	Email string `json:"email,omitempty"`
  3106  
  3107  	// ListingCount: Number of listings under this account.
  3108  	ListingCount uint64 `json:"listingCount,omitempty,string"`
  3109  
  3110  	// Name: The name of the GMB account.
  3111  	Name string `json:"name,omitempty"`
  3112  
  3113  	// Type: The type of the GMB account (User or Business).
  3114  	Type string `json:"type,omitempty"`
  3115  
  3116  	// ForceSendFields is a list of field names (e.g. "Email") to
  3117  	// unconditionally include in API requests. By default, fields with
  3118  	// empty or default values are omitted from API requests. However, any
  3119  	// non-pointer, non-interface field appearing in ForceSendFields will be
  3120  	// sent to the server regardless of whether the field is empty or not.
  3121  	// This may be used to include empty fields in Patch requests.
  3122  	ForceSendFields []string `json:"-"`
  3123  
  3124  	// NullFields is a list of field names (e.g. "Email") to include in API
  3125  	// requests with the JSON null value. By default, fields with empty
  3126  	// values are omitted from API requests. However, any field with an
  3127  	// empty value appearing in NullFields will be sent to the server as
  3128  	// null. It is an error if a field in this list has a non-empty value.
  3129  	// This may be used to include null fields in Patch requests.
  3130  	NullFields []string `json:"-"`
  3131  }
  3132  
  3133  func (s *GmbAccountsGmbAccount) MarshalJSON() ([]byte, error) {
  3134  	type NoMethod GmbAccountsGmbAccount
  3135  	raw := NoMethod(*s)
  3136  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3137  }
  3138  
  3139  // Headers: A non-empty list of row or column headers for a table.
  3140  // Exactly one of `prices`, `weights`, `numItems`,
  3141  // `postalCodeGroupNames`, or `location` must be set.
  3142  type Headers struct {
  3143  	// Locations: A list of location ID sets. Must be non-empty. Can only be
  3144  	// set if all other fields are not set.
  3145  	Locations []*LocationIdSet `json:"locations,omitempty"`
  3146  
  3147  	// NumberOfItems: A list of inclusive number of items upper bounds. The
  3148  	// last value can be "infinity". For example `["10", "50",
  3149  	// "infinity"]` represents the headers "<= 10 items", "<= 50 items", and
  3150  	// "> 50 items". Must be non-empty. Can only be set if all other fields
  3151  	// are not set.
  3152  	NumberOfItems []string `json:"numberOfItems,omitempty"`
  3153  
  3154  	// PostalCodeGroupNames: A list of postal group names. The last value
  3155  	// can be "all other locations". Example: `["zone 1", "zone 2", "all
  3156  	// other locations"]`. The referred postal code groups must match the
  3157  	// delivery country of the service. Must be non-empty. Can only be set
  3158  	// if all other fields are not set.
  3159  	PostalCodeGroupNames []string `json:"postalCodeGroupNames,omitempty"`
  3160  
  3161  	// Prices: A list of inclusive order price upper bounds. The last
  3162  	// price's value can be "infinity". For example `[{"value": "10",
  3163  	// "currency": "USD"}, {"value": "500", "currency": "USD"}, {"value":
  3164  	// "infinity", "currency": "USD"}]` represents the headers "<= $10", "<=
  3165  	// $500", and "> $500". All prices within a service must have the same
  3166  	// currency. Must be non-empty. Can only be set if all other fields are
  3167  	// not set.
  3168  	Prices []*Price `json:"prices,omitempty"`
  3169  
  3170  	// Weights: A list of inclusive order weight upper bounds. The last
  3171  	// weight's value can be "infinity". For example `[{"value": "10",
  3172  	// "unit": "kg"}, {"value": "50", "unit": "kg"}, {"value": "infinity",
  3173  	// "unit": "kg"}]` represents the headers "<= 10kg", "<= 50kg", and ">
  3174  	// 50kg". All weights within a service must have the same unit. Must be
  3175  	// non-empty. Can only be set if all other fields are not set.
  3176  	Weights []*Weight `json:"weights,omitempty"`
  3177  
  3178  	// ForceSendFields is a list of field names (e.g. "Locations") to
  3179  	// unconditionally include in API requests. By default, fields with
  3180  	// empty or default values are omitted from API requests. However, any
  3181  	// non-pointer, non-interface field appearing in ForceSendFields will be
  3182  	// sent to the server regardless of whether the field is empty or not.
  3183  	// This may be used to include empty fields in Patch requests.
  3184  	ForceSendFields []string `json:"-"`
  3185  
  3186  	// NullFields is a list of field names (e.g. "Locations") to include in
  3187  	// API requests with the JSON null value. By default, fields with empty
  3188  	// values are omitted from API requests. However, any field with an
  3189  	// empty value appearing in NullFields will be sent to the server as
  3190  	// null. It is an error if a field in this list has a non-empty value.
  3191  	// This may be used to include null fields in Patch requests.
  3192  	NullFields []string `json:"-"`
  3193  }
  3194  
  3195  func (s *Headers) MarshalJSON() ([]byte, error) {
  3196  	type NoMethod Headers
  3197  	raw := NoMethod(*s)
  3198  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3199  }
  3200  
  3201  type HolidayCutoff struct {
  3202  	// DeadlineDate: Date of the order deadline, in ISO 8601 format. E.g.
  3203  	// "2016-11-29" for 29th November 2016. Required.
  3204  	DeadlineDate string `json:"deadlineDate,omitempty"`
  3205  
  3206  	// DeadlineHour: Hour of the day on the deadline date until which the
  3207  	// order has to be placed to qualify for the delivery guarantee.
  3208  	// Possible values are: 0 (midnight), 1, ..., 12 (noon), 13, ..., 23.
  3209  	// Required.
  3210  	DeadlineHour int64 `json:"deadlineHour,omitempty"`
  3211  
  3212  	// DeadlineTimezone: Timezone identifier for the deadline hour. A list
  3213  	// of identifiers can be found in the AdWords API documentation. E.g.
  3214  	// "Europe/Zurich". Required.
  3215  	DeadlineTimezone string `json:"deadlineTimezone,omitempty"`
  3216  
  3217  	// HolidayId: Unique identifier for the holiday. Required.
  3218  	HolidayId string `json:"holidayId,omitempty"`
  3219  
  3220  	// VisibleFromDate: Date on which the deadline will become visible to
  3221  	// consumers in ISO 8601 format. E.g. "2016-10-31" for 31st October
  3222  	// 2016. Required.
  3223  	VisibleFromDate string `json:"visibleFromDate,omitempty"`
  3224  
  3225  	// ForceSendFields is a list of field names (e.g. "DeadlineDate") to
  3226  	// unconditionally include in API requests. By default, fields with
  3227  	// empty or default values are omitted from API requests. However, any
  3228  	// non-pointer, non-interface field appearing in ForceSendFields will be
  3229  	// sent to the server regardless of whether the field is empty or not.
  3230  	// This may be used to include empty fields in Patch requests.
  3231  	ForceSendFields []string `json:"-"`
  3232  
  3233  	// NullFields is a list of field names (e.g. "DeadlineDate") to include
  3234  	// in API requests with the JSON null value. By default, fields with
  3235  	// empty values are omitted from API requests. However, any field with
  3236  	// an empty value appearing in NullFields will be sent to the server as
  3237  	// null. It is an error if a field in this list has a non-empty value.
  3238  	// This may be used to include null fields in Patch requests.
  3239  	NullFields []string `json:"-"`
  3240  }
  3241  
  3242  func (s *HolidayCutoff) MarshalJSON() ([]byte, error) {
  3243  	type NoMethod HolidayCutoff
  3244  	raw := NoMethod(*s)
  3245  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3246  }
  3247  
  3248  type HolidaysHoliday struct {
  3249  	// CountryCode: The CLDR territory code of the country in which the
  3250  	// holiday is available. E.g. "US", "DE", "GB". A holiday cutoff can
  3251  	// only be configured in a shipping settings service with matching
  3252  	// delivery country. Always present.
  3253  	CountryCode string `json:"countryCode,omitempty"`
  3254  
  3255  	// Date: Date of the holiday, in ISO 8601 format. E.g. "2016-12-25" for
  3256  	// Christmas 2016. Always present.
  3257  	Date string `json:"date,omitempty"`
  3258  
  3259  	// DeliveryGuaranteeDate: Date on which the order has to arrive at the
  3260  	// customer's, in ISO 8601 format. E.g. "2016-12-24" for 24th December
  3261  	// 2016. Always present.
  3262  	DeliveryGuaranteeDate string `json:"deliveryGuaranteeDate,omitempty"`
  3263  
  3264  	// DeliveryGuaranteeHour: Hour of the day in the delivery location's
  3265  	// timezone on the guaranteed delivery date by which the order has to
  3266  	// arrive at the customer's. Possible values are: 0 (midnight), 1, ...,
  3267  	// 12 (noon), 13, ..., 23. Always present.
  3268  	DeliveryGuaranteeHour uint64 `json:"deliveryGuaranteeHour,omitempty,string"`
  3269  
  3270  	// Id: Unique identifier for the holiday to be used when configuring
  3271  	// holiday cutoffs. Always present.
  3272  	Id string `json:"id,omitempty"`
  3273  
  3274  	// Type: The holiday type. Always present. Acceptable values are: -
  3275  	// "Christmas" - "Easter" - "Father's Day" - "Halloween" -
  3276  	// "Independence Day (USA)" - "Mother's Day" - "Thanksgiving" -
  3277  	// "Valentine's Day"
  3278  	Type string `json:"type,omitempty"`
  3279  
  3280  	// ForceSendFields is a list of field names (e.g. "CountryCode") to
  3281  	// unconditionally include in API requests. By default, fields with
  3282  	// empty or default values are omitted from API requests. However, any
  3283  	// non-pointer, non-interface field appearing in ForceSendFields will be
  3284  	// sent to the server regardless of whether the field is empty or not.
  3285  	// This may be used to include empty fields in Patch requests.
  3286  	ForceSendFields []string `json:"-"`
  3287  
  3288  	// NullFields is a list of field names (e.g. "CountryCode") to include
  3289  	// in API requests with the JSON null value. By default, fields with
  3290  	// empty values are omitted from API requests. However, any field with
  3291  	// an empty value appearing in NullFields will be sent to the server as
  3292  	// null. It is an error if a field in this list has a non-empty value.
  3293  	// This may be used to include null fields in Patch requests.
  3294  	NullFields []string `json:"-"`
  3295  }
  3296  
  3297  func (s *HolidaysHoliday) MarshalJSON() ([]byte, error) {
  3298  	type NoMethod HolidaysHoliday
  3299  	raw := NoMethod(*s)
  3300  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3301  }
  3302  
  3303  type Installment struct {
  3304  	// Amount: The amount the buyer has to pay per month.
  3305  	Amount *Price `json:"amount,omitempty"`
  3306  
  3307  	// Months: The number of installments the buyer has to pay.
  3308  	Months int64 `json:"months,omitempty,string"`
  3309  
  3310  	// ForceSendFields is a list of field names (e.g. "Amount") to
  3311  	// unconditionally include in API requests. By default, fields with
  3312  	// empty or default values are omitted from API requests. However, any
  3313  	// non-pointer, non-interface field appearing in ForceSendFields will be
  3314  	// sent to the server regardless of whether the field is empty or not.
  3315  	// This may be used to include empty fields in Patch requests.
  3316  	ForceSendFields []string `json:"-"`
  3317  
  3318  	// NullFields is a list of field names (e.g. "Amount") to include in API
  3319  	// requests with the JSON null value. By default, fields with empty
  3320  	// values are omitted from API requests. However, any field with an
  3321  	// empty value appearing in NullFields will be sent to the server as
  3322  	// null. It is an error if a field in this list has a non-empty value.
  3323  	// This may be used to include null fields in Patch requests.
  3324  	NullFields []string `json:"-"`
  3325  }
  3326  
  3327  func (s *Installment) MarshalJSON() ([]byte, error) {
  3328  	type NoMethod Installment
  3329  	raw := NoMethod(*s)
  3330  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3331  }
  3332  
  3333  type InvoiceSummary struct {
  3334  	// AdditionalChargeSummaries: Summary of the total amounts of the
  3335  	// additional charges.
  3336  	AdditionalChargeSummaries []*InvoiceSummaryAdditionalChargeSummary `json:"additionalChargeSummaries,omitempty"`
  3337  
  3338  	// CustomerBalance: Deprecated.
  3339  	CustomerBalance *Amount `json:"customerBalance,omitempty"`
  3340  
  3341  	// GoogleBalance: Deprecated.
  3342  	GoogleBalance *Amount `json:"googleBalance,omitempty"`
  3343  
  3344  	// MerchantBalance: Deprecated.
  3345  	MerchantBalance *Amount `json:"merchantBalance,omitempty"`
  3346  
  3347  	// ProductTotal: [required] Total price for the product.
  3348  	ProductTotal *Amount `json:"productTotal,omitempty"`
  3349  
  3350  	// PromotionSummaries: Deprecated.
  3351  	PromotionSummaries []*Promotion `json:"promotionSummaries,omitempty"`
  3352  
  3353  	// ForceSendFields is a list of field names (e.g.
  3354  	// "AdditionalChargeSummaries") to unconditionally include in API
  3355  	// requests. By default, fields with empty or default values are omitted
  3356  	// from API requests. However, any non-pointer, non-interface field
  3357  	// appearing in ForceSendFields will be sent to the server regardless of
  3358  	// whether the field is empty or not. This may be used to include empty
  3359  	// fields in Patch requests.
  3360  	ForceSendFields []string `json:"-"`
  3361  
  3362  	// NullFields is a list of field names (e.g.
  3363  	// "AdditionalChargeSummaries") to include in API requests with the JSON
  3364  	// null value. By default, fields with empty values are omitted from API
  3365  	// requests. However, any field with an empty value appearing in
  3366  	// NullFields will be sent to the server as null. It is an error if a
  3367  	// field in this list has a non-empty value. This may be used to include
  3368  	// null fields in Patch requests.
  3369  	NullFields []string `json:"-"`
  3370  }
  3371  
  3372  func (s *InvoiceSummary) MarshalJSON() ([]byte, error) {
  3373  	type NoMethod InvoiceSummary
  3374  	raw := NoMethod(*s)
  3375  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3376  }
  3377  
  3378  type InvoiceSummaryAdditionalChargeSummary struct {
  3379  	// TotalAmount: [required] Total additional charge for this type.
  3380  	TotalAmount *Amount `json:"totalAmount,omitempty"`
  3381  
  3382  	// Type: [required] Type of the additional charge. Acceptable values
  3383  	// are: - "shipping"
  3384  	Type string `json:"type,omitempty"`
  3385  
  3386  	// ForceSendFields is a list of field names (e.g. "TotalAmount") to
  3387  	// unconditionally include in API requests. By default, fields with
  3388  	// empty or default values are omitted from API requests. However, any
  3389  	// non-pointer, non-interface field appearing in ForceSendFields will be
  3390  	// sent to the server regardless of whether the field is empty or not.
  3391  	// This may be used to include empty fields in Patch requests.
  3392  	ForceSendFields []string `json:"-"`
  3393  
  3394  	// NullFields is a list of field names (e.g. "TotalAmount") to include
  3395  	// in API requests with the JSON null value. By default, fields with
  3396  	// empty values are omitted from API requests. However, any field with
  3397  	// an empty value appearing in NullFields will be sent to the server as
  3398  	// null. It is an error if a field in this list has a non-empty value.
  3399  	// This may be used to include null fields in Patch requests.
  3400  	NullFields []string `json:"-"`
  3401  }
  3402  
  3403  func (s *InvoiceSummaryAdditionalChargeSummary) MarshalJSON() ([]byte, error) {
  3404  	type NoMethod InvoiceSummaryAdditionalChargeSummary
  3405  	raw := NoMethod(*s)
  3406  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3407  }
  3408  
  3409  type LiaAboutPageSettings struct {
  3410  	// Status: The status of the verification process for the About page.
  3411  	// Acceptable values are: - "active" - "inactive" - "pending"
  3412  	Status string `json:"status,omitempty"`
  3413  
  3414  	// Url: The URL for the About page.
  3415  	Url string `json:"url,omitempty"`
  3416  
  3417  	// ForceSendFields is a list of field names (e.g. "Status") to
  3418  	// unconditionally include in API requests. By default, fields with
  3419  	// empty or default values are omitted from API requests. However, any
  3420  	// non-pointer, non-interface field appearing in ForceSendFields will be
  3421  	// sent to the server regardless of whether the field is empty or not.
  3422  	// This may be used to include empty fields in Patch requests.
  3423  	ForceSendFields []string `json:"-"`
  3424  
  3425  	// NullFields is a list of field names (e.g. "Status") to include in API
  3426  	// requests with the JSON null value. By default, fields with empty
  3427  	// values are omitted from API requests. However, any field with an
  3428  	// empty value appearing in NullFields will be sent to the server as
  3429  	// null. It is an error if a field in this list has a non-empty value.
  3430  	// This may be used to include null fields in Patch requests.
  3431  	NullFields []string `json:"-"`
  3432  }
  3433  
  3434  func (s *LiaAboutPageSettings) MarshalJSON() ([]byte, error) {
  3435  	type NoMethod LiaAboutPageSettings
  3436  	raw := NoMethod(*s)
  3437  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3438  }
  3439  
  3440  type LiaCountrySettings struct {
  3441  	// About: The settings for the About page.
  3442  	About *LiaAboutPageSettings `json:"about,omitempty"`
  3443  
  3444  	// Country: Required. CLDR country code (e.g. "US").
  3445  	Country string `json:"country,omitempty"`
  3446  
  3447  	// HostedLocalStorefrontActive: The status of the "Merchant hosted local
  3448  	// storefront" feature.
  3449  	HostedLocalStorefrontActive bool `json:"hostedLocalStorefrontActive,omitempty"`
  3450  
  3451  	// Inventory: LIA inventory verification settings.
  3452  	Inventory *LiaInventorySettings `json:"inventory,omitempty"`
  3453  
  3454  	// OnDisplayToOrder: LIA "On Display To Order" settings.
  3455  	OnDisplayToOrder *LiaOnDisplayToOrderSettings `json:"onDisplayToOrder,omitempty"`
  3456  
  3457  	// PosDataProvider: The POS data provider linked with this country.
  3458  	PosDataProvider *LiaPosDataProvider `json:"posDataProvider,omitempty"`
  3459  
  3460  	// StorePickupActive: The status of the "Store pickup" feature.
  3461  	StorePickupActive bool `json:"storePickupActive,omitempty"`
  3462  
  3463  	// ForceSendFields is a list of field names (e.g. "About") to
  3464  	// unconditionally include in API requests. By default, fields with
  3465  	// empty or default values are omitted from API requests. However, any
  3466  	// non-pointer, non-interface field appearing in ForceSendFields will be
  3467  	// sent to the server regardless of whether the field is empty or not.
  3468  	// This may be used to include empty fields in Patch requests.
  3469  	ForceSendFields []string `json:"-"`
  3470  
  3471  	// NullFields is a list of field names (e.g. "About") to include in API
  3472  	// requests with the JSON null value. By default, fields with empty
  3473  	// values are omitted from API requests. However, any field with an
  3474  	// empty value appearing in NullFields will be sent to the server as
  3475  	// null. It is an error if a field in this list has a non-empty value.
  3476  	// This may be used to include null fields in Patch requests.
  3477  	NullFields []string `json:"-"`
  3478  }
  3479  
  3480  func (s *LiaCountrySettings) MarshalJSON() ([]byte, error) {
  3481  	type NoMethod LiaCountrySettings
  3482  	raw := NoMethod(*s)
  3483  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3484  }
  3485  
  3486  type LiaInventorySettings struct {
  3487  	// InventoryVerificationContactEmail: The email of the contact for the
  3488  	// inventory verification process.
  3489  	InventoryVerificationContactEmail string `json:"inventoryVerificationContactEmail,omitempty"`
  3490  
  3491  	// InventoryVerificationContactName: The name of the contact for the
  3492  	// inventory verification process.
  3493  	InventoryVerificationContactName string `json:"inventoryVerificationContactName,omitempty"`
  3494  
  3495  	// InventoryVerificationContactStatus: The status of the verification
  3496  	// contact. Acceptable values are: - "active" - "inactive" -
  3497  	// "pending"
  3498  	InventoryVerificationContactStatus string `json:"inventoryVerificationContactStatus,omitempty"`
  3499  
  3500  	// Status: The status of the inventory verification process. Acceptable
  3501  	// values are: - "active" - "inactive" - "pending"
  3502  	Status string `json:"status,omitempty"`
  3503  
  3504  	// ForceSendFields is a list of field names (e.g.
  3505  	// "InventoryVerificationContactEmail") to unconditionally include in
  3506  	// API requests. By default, fields with empty or default values are
  3507  	// omitted from API requests. However, any non-pointer, non-interface
  3508  	// field appearing in ForceSendFields will be sent to the server
  3509  	// regardless of whether the field is empty or not. This may be used to
  3510  	// include empty fields in Patch requests.
  3511  	ForceSendFields []string `json:"-"`
  3512  
  3513  	// NullFields is a list of field names (e.g.
  3514  	// "InventoryVerificationContactEmail") to include in API requests with
  3515  	// the JSON null value. By default, fields with empty values are omitted
  3516  	// from API requests. However, any field with an empty value appearing
  3517  	// in NullFields will be sent to the server as null. It is an error if a
  3518  	// field in this list has a non-empty value. This may be used to include
  3519  	// null fields in Patch requests.
  3520  	NullFields []string `json:"-"`
  3521  }
  3522  
  3523  func (s *LiaInventorySettings) MarshalJSON() ([]byte, error) {
  3524  	type NoMethod LiaInventorySettings
  3525  	raw := NoMethod(*s)
  3526  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3527  }
  3528  
  3529  type LiaOnDisplayToOrderSettings struct {
  3530  	// ShippingCostPolicyUrl: Shipping cost and policy URL.
  3531  	ShippingCostPolicyUrl string `json:"shippingCostPolicyUrl,omitempty"`
  3532  
  3533  	// Status: The status of the ?On display to order? feature. Acceptable
  3534  	// values are: - "active" - "inactive" - "pending"
  3535  	Status string `json:"status,omitempty"`
  3536  
  3537  	// ForceSendFields is a list of field names (e.g.
  3538  	// "ShippingCostPolicyUrl") to unconditionally include in API requests.
  3539  	// By default, fields with empty or default values are omitted from API
  3540  	// requests. However, any non-pointer, non-interface field appearing in
  3541  	// ForceSendFields will be sent to the server regardless of whether the
  3542  	// field is empty or not. This may be used to include empty fields in
  3543  	// Patch requests.
  3544  	ForceSendFields []string `json:"-"`
  3545  
  3546  	// NullFields is a list of field names (e.g. "ShippingCostPolicyUrl") to
  3547  	// include in API requests with the JSON null value. By default, fields
  3548  	// with empty values are omitted from API requests. However, any field
  3549  	// with an empty value appearing in NullFields will be sent to the
  3550  	// server as null. It is an error if a field in this list has a
  3551  	// non-empty value. This may be used to include null fields in Patch
  3552  	// requests.
  3553  	NullFields []string `json:"-"`
  3554  }
  3555  
  3556  func (s *LiaOnDisplayToOrderSettings) MarshalJSON() ([]byte, error) {
  3557  	type NoMethod LiaOnDisplayToOrderSettings
  3558  	raw := NoMethod(*s)
  3559  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3560  }
  3561  
  3562  type LiaPosDataProvider struct {
  3563  	// PosDataProviderId: The ID of the POS data provider.
  3564  	PosDataProviderId uint64 `json:"posDataProviderId,omitempty,string"`
  3565  
  3566  	// PosExternalAccountId: The account ID by which this merchant is known
  3567  	// to the POS data provider.
  3568  	PosExternalAccountId string `json:"posExternalAccountId,omitempty"`
  3569  
  3570  	// ForceSendFields is a list of field names (e.g. "PosDataProviderId")
  3571  	// to unconditionally include in API requests. By default, fields with
  3572  	// empty or default values are omitted from API requests. However, any
  3573  	// non-pointer, non-interface field appearing in ForceSendFields will be
  3574  	// sent to the server regardless of whether the field is empty or not.
  3575  	// This may be used to include empty fields in Patch requests.
  3576  	ForceSendFields []string `json:"-"`
  3577  
  3578  	// NullFields is a list of field names (e.g. "PosDataProviderId") to
  3579  	// include in API requests with the JSON null value. By default, fields
  3580  	// with empty values are omitted from API requests. However, any field
  3581  	// with an empty value appearing in NullFields will be sent to the
  3582  	// server as null. It is an error if a field in this list has a
  3583  	// non-empty value. This may be used to include null fields in Patch
  3584  	// requests.
  3585  	NullFields []string `json:"-"`
  3586  }
  3587  
  3588  func (s *LiaPosDataProvider) MarshalJSON() ([]byte, error) {
  3589  	type NoMethod LiaPosDataProvider
  3590  	raw := NoMethod(*s)
  3591  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3592  }
  3593  
  3594  // LiaSettings: Local Inventory ads (LIA) settings. All methods except
  3595  // listposdataproviders require the admin role.
  3596  type LiaSettings struct {
  3597  	// AccountId: The ID of the account to which these LIA settings belong.
  3598  	// Ignored upon update, always present in get request responses.
  3599  	AccountId uint64 `json:"accountId,omitempty,string"`
  3600  
  3601  	// CountrySettings: The LIA settings for each country.
  3602  	CountrySettings []*LiaCountrySettings `json:"countrySettings,omitempty"`
  3603  
  3604  	// Kind: Identifies what kind of resource this is. Value: the fixed
  3605  	// string "content#liaSettings"
  3606  	Kind string `json:"kind,omitempty"`
  3607  
  3608  	// ServerResponse contains the HTTP response code and headers from the
  3609  	// server.
  3610  	googleapi.ServerResponse `json:"-"`
  3611  
  3612  	// ForceSendFields is a list of field names (e.g. "AccountId") to
  3613  	// unconditionally include in API requests. By default, fields with
  3614  	// empty or default values are omitted from API requests. However, any
  3615  	// non-pointer, non-interface field appearing in ForceSendFields will be
  3616  	// sent to the server regardless of whether the field is empty or not.
  3617  	// This may be used to include empty fields in Patch requests.
  3618  	ForceSendFields []string `json:"-"`
  3619  
  3620  	// NullFields is a list of field names (e.g. "AccountId") to include in
  3621  	// API requests with the JSON null value. By default, fields with empty
  3622  	// values are omitted from API requests. However, any field with an
  3623  	// empty value appearing in NullFields will be sent to the server as
  3624  	// null. It is an error if a field in this list has a non-empty value.
  3625  	// This may be used to include null fields in Patch requests.
  3626  	NullFields []string `json:"-"`
  3627  }
  3628  
  3629  func (s *LiaSettings) MarshalJSON() ([]byte, error) {
  3630  	type NoMethod LiaSettings
  3631  	raw := NoMethod(*s)
  3632  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3633  }
  3634  
  3635  type LiasettingsCustomBatchRequest struct {
  3636  	// Entries: The request entries to be processed in the batch.
  3637  	Entries []*LiasettingsCustomBatchRequestEntry `json:"entries,omitempty"`
  3638  
  3639  	// ForceSendFields is a list of field names (e.g. "Entries") to
  3640  	// unconditionally include in API requests. By default, fields with
  3641  	// empty or default values are omitted from API requests. However, any
  3642  	// non-pointer, non-interface field appearing in ForceSendFields will be
  3643  	// sent to the server regardless of whether the field is empty or not.
  3644  	// This may be used to include empty fields in Patch requests.
  3645  	ForceSendFields []string `json:"-"`
  3646  
  3647  	// NullFields is a list of field names (e.g. "Entries") to include in
  3648  	// API requests with the JSON null value. By default, fields with empty
  3649  	// values are omitted from API requests. However, any field with an
  3650  	// empty value appearing in NullFields will be sent to the server as
  3651  	// null. It is an error if a field in this list has a non-empty value.
  3652  	// This may be used to include null fields in Patch requests.
  3653  	NullFields []string `json:"-"`
  3654  }
  3655  
  3656  func (s *LiasettingsCustomBatchRequest) MarshalJSON() ([]byte, error) {
  3657  	type NoMethod LiasettingsCustomBatchRequest
  3658  	raw := NoMethod(*s)
  3659  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3660  }
  3661  
  3662  type LiasettingsCustomBatchRequestEntry struct {
  3663  	// AccountId: The ID of the account for which to get/update account LIA
  3664  	// settings.
  3665  	AccountId uint64 `json:"accountId,omitempty,string"`
  3666  
  3667  	// BatchId: An entry ID, unique within the batch request.
  3668  	BatchId int64 `json:"batchId,omitempty"`
  3669  
  3670  	// ContactEmail: Inventory validation contact email. Required only for
  3671  	// SetInventoryValidationContact.
  3672  	ContactEmail string `json:"contactEmail,omitempty"`
  3673  
  3674  	// ContactName: Inventory validation contact name. Required only for
  3675  	// SetInventoryValidationContact.
  3676  	ContactName string `json:"contactName,omitempty"`
  3677  
  3678  	// Country: The country code. Required only for
  3679  	// RequestInventoryVerification.
  3680  	Country string `json:"country,omitempty"`
  3681  
  3682  	// GmbEmail: The GMB account. Required only for RequestGmbAccess.
  3683  	GmbEmail string `json:"gmbEmail,omitempty"`
  3684  
  3685  	// LiaSettings: The account Lia settings to update. Only defined if the
  3686  	// method is `update`.
  3687  	LiaSettings *LiaSettings `json:"liaSettings,omitempty"`
  3688  
  3689  	// MerchantId: The ID of the managing account.
  3690  	MerchantId uint64 `json:"merchantId,omitempty,string"`
  3691  
  3692  	// Method: The method of the batch entry. Acceptable values are: -
  3693  	// "get" - "getAccessibleGmbAccounts" - "requestGmbAccess" -
  3694  	// "requestInventoryVerification" -
  3695  	// "setInventoryVerificationContact" - "update"
  3696  	Method string `json:"method,omitempty"`
  3697  
  3698  	// PosDataProviderId: The ID of POS data provider. Required only for
  3699  	// SetPosProvider.
  3700  	PosDataProviderId uint64 `json:"posDataProviderId,omitempty,string"`
  3701  
  3702  	// PosExternalAccountId: The account ID by which this merchant is known
  3703  	// to the POS provider.
  3704  	PosExternalAccountId string `json:"posExternalAccountId,omitempty"`
  3705  
  3706  	// ForceSendFields is a list of field names (e.g. "AccountId") to
  3707  	// unconditionally include in API requests. By default, fields with
  3708  	// empty or default values are omitted from API requests. However, any
  3709  	// non-pointer, non-interface field appearing in ForceSendFields will be
  3710  	// sent to the server regardless of whether the field is empty or not.
  3711  	// This may be used to include empty fields in Patch requests.
  3712  	ForceSendFields []string `json:"-"`
  3713  
  3714  	// NullFields is a list of field names (e.g. "AccountId") to include in
  3715  	// API requests with the JSON null value. By default, fields with empty
  3716  	// values are omitted from API requests. However, any field with an
  3717  	// empty value appearing in NullFields will be sent to the server as
  3718  	// null. It is an error if a field in this list has a non-empty value.
  3719  	// This may be used to include null fields in Patch requests.
  3720  	NullFields []string `json:"-"`
  3721  }
  3722  
  3723  func (s *LiasettingsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
  3724  	type NoMethod LiasettingsCustomBatchRequestEntry
  3725  	raw := NoMethod(*s)
  3726  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3727  }
  3728  
  3729  type LiasettingsCustomBatchResponse struct {
  3730  	// Entries: The result of the execution of the batch requests.
  3731  	Entries []*LiasettingsCustomBatchResponseEntry `json:"entries,omitempty"`
  3732  
  3733  	// Kind: Identifies what kind of resource this is. Value: the fixed
  3734  	// string "content#liasettingsCustomBatchResponse".
  3735  	Kind string `json:"kind,omitempty"`
  3736  
  3737  	// ServerResponse contains the HTTP response code and headers from the
  3738  	// server.
  3739  	googleapi.ServerResponse `json:"-"`
  3740  
  3741  	// ForceSendFields is a list of field names (e.g. "Entries") to
  3742  	// unconditionally include in API requests. By default, fields with
  3743  	// empty or default values are omitted from API requests. However, any
  3744  	// non-pointer, non-interface field appearing in ForceSendFields will be
  3745  	// sent to the server regardless of whether the field is empty or not.
  3746  	// This may be used to include empty fields in Patch requests.
  3747  	ForceSendFields []string `json:"-"`
  3748  
  3749  	// NullFields is a list of field names (e.g. "Entries") to include in
  3750  	// API requests with the JSON null value. By default, fields with empty
  3751  	// values are omitted from API requests. However, any field with an
  3752  	// empty value appearing in NullFields will be sent to the server as
  3753  	// null. It is an error if a field in this list has a non-empty value.
  3754  	// This may be used to include null fields in Patch requests.
  3755  	NullFields []string `json:"-"`
  3756  }
  3757  
  3758  func (s *LiasettingsCustomBatchResponse) MarshalJSON() ([]byte, error) {
  3759  	type NoMethod LiasettingsCustomBatchResponse
  3760  	raw := NoMethod(*s)
  3761  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3762  }
  3763  
  3764  type LiasettingsCustomBatchResponseEntry struct {
  3765  	// BatchId: The ID of the request entry to which this entry responds.
  3766  	BatchId int64 `json:"batchId,omitempty"`
  3767  
  3768  	// Errors: A list of errors defined if, and only if, the request failed.
  3769  	Errors *Errors `json:"errors,omitempty"`
  3770  
  3771  	// GmbAccounts: The list of accessible GMB accounts.
  3772  	GmbAccounts *GmbAccounts `json:"gmbAccounts,omitempty"`
  3773  
  3774  	// Kind: Identifies what kind of resource this is. Value: the fixed
  3775  	// string "content#liasettingsCustomBatchResponseEntry"
  3776  	Kind string `json:"kind,omitempty"`
  3777  
  3778  	// LiaSettings: The retrieved or updated Lia settings.
  3779  	LiaSettings *LiaSettings `json:"liaSettings,omitempty"`
  3780  
  3781  	// PosDataProviders: The list of POS data providers.
  3782  	PosDataProviders []*PosDataProviders `json:"posDataProviders,omitempty"`
  3783  
  3784  	// ForceSendFields is a list of field names (e.g. "BatchId") to
  3785  	// unconditionally include in API requests. By default, fields with
  3786  	// empty or default values are omitted from API requests. However, any
  3787  	// non-pointer, non-interface field appearing in ForceSendFields will be
  3788  	// sent to the server regardless of whether the field is empty or not.
  3789  	// This may be used to include empty fields in Patch requests.
  3790  	ForceSendFields []string `json:"-"`
  3791  
  3792  	// NullFields is a list of field names (e.g. "BatchId") to include in
  3793  	// API requests with the JSON null value. By default, fields with empty
  3794  	// values are omitted from API requests. However, any field with an
  3795  	// empty value appearing in NullFields will be sent to the server as
  3796  	// null. It is an error if a field in this list has a non-empty value.
  3797  	// This may be used to include null fields in Patch requests.
  3798  	NullFields []string `json:"-"`
  3799  }
  3800  
  3801  func (s *LiasettingsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
  3802  	type NoMethod LiasettingsCustomBatchResponseEntry
  3803  	raw := NoMethod(*s)
  3804  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3805  }
  3806  
  3807  type LiasettingsGetAccessibleGmbAccountsResponse struct {
  3808  	// AccountId: The ID of the Merchant Center account.
  3809  	AccountId uint64 `json:"accountId,omitempty,string"`
  3810  
  3811  	// GmbAccounts: A list of GMB accounts which are available to the
  3812  	// merchant.
  3813  	GmbAccounts []*GmbAccountsGmbAccount `json:"gmbAccounts,omitempty"`
  3814  
  3815  	// Kind: Identifies what kind of resource this is. Value: the fixed
  3816  	// string "content#liasettingsGetAccessibleGmbAccountsResponse".
  3817  	Kind string `json:"kind,omitempty"`
  3818  
  3819  	// ServerResponse contains the HTTP response code and headers from the
  3820  	// server.
  3821  	googleapi.ServerResponse `json:"-"`
  3822  
  3823  	// ForceSendFields is a list of field names (e.g. "AccountId") to
  3824  	// unconditionally include in API requests. By default, fields with
  3825  	// empty or default values are omitted from API requests. However, any
  3826  	// non-pointer, non-interface field appearing in ForceSendFields will be
  3827  	// sent to the server regardless of whether the field is empty or not.
  3828  	// This may be used to include empty fields in Patch requests.
  3829  	ForceSendFields []string `json:"-"`
  3830  
  3831  	// NullFields is a list of field names (e.g. "AccountId") to include in
  3832  	// API requests with the JSON null value. By default, fields with empty
  3833  	// values are omitted from API requests. However, any field with an
  3834  	// empty value appearing in NullFields will be sent to the server as
  3835  	// null. It is an error if a field in this list has a non-empty value.
  3836  	// This may be used to include null fields in Patch requests.
  3837  	NullFields []string `json:"-"`
  3838  }
  3839  
  3840  func (s *LiasettingsGetAccessibleGmbAccountsResponse) MarshalJSON() ([]byte, error) {
  3841  	type NoMethod LiasettingsGetAccessibleGmbAccountsResponse
  3842  	raw := NoMethod(*s)
  3843  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3844  }
  3845  
  3846  type LiasettingsListPosDataProvidersResponse struct {
  3847  	// Kind: Identifies what kind of resource this is. Value: the fixed
  3848  	// string "content#liasettingsListPosDataProvidersResponse".
  3849  	Kind string `json:"kind,omitempty"`
  3850  
  3851  	// PosDataProviders: The list of POS data providers for each eligible
  3852  	// country
  3853  	PosDataProviders []*PosDataProviders `json:"posDataProviders,omitempty"`
  3854  
  3855  	// ServerResponse contains the HTTP response code and headers from the
  3856  	// server.
  3857  	googleapi.ServerResponse `json:"-"`
  3858  
  3859  	// ForceSendFields is a list of field names (e.g. "Kind") to
  3860  	// unconditionally include in API requests. By default, fields with
  3861  	// empty or default values are omitted from API requests. However, any
  3862  	// non-pointer, non-interface field appearing in ForceSendFields will be
  3863  	// sent to the server regardless of whether the field is empty or not.
  3864  	// This may be used to include empty fields in Patch requests.
  3865  	ForceSendFields []string `json:"-"`
  3866  
  3867  	// NullFields is a list of field names (e.g. "Kind") to include in API
  3868  	// requests with the JSON null value. By default, fields with empty
  3869  	// values are omitted from API requests. However, any field with an
  3870  	// empty value appearing in NullFields will be sent to the server as
  3871  	// null. It is an error if a field in this list has a non-empty value.
  3872  	// This may be used to include null fields in Patch requests.
  3873  	NullFields []string `json:"-"`
  3874  }
  3875  
  3876  func (s *LiasettingsListPosDataProvidersResponse) MarshalJSON() ([]byte, error) {
  3877  	type NoMethod LiasettingsListPosDataProvidersResponse
  3878  	raw := NoMethod(*s)
  3879  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3880  }
  3881  
  3882  type LiasettingsListResponse struct {
  3883  	// Kind: Identifies what kind of resource this is. Value: the fixed
  3884  	// string "content#liasettingsListResponse".
  3885  	Kind string `json:"kind,omitempty"`
  3886  
  3887  	// NextPageToken: The token for the retrieval of the next page of LIA
  3888  	// settings.
  3889  	NextPageToken string `json:"nextPageToken,omitempty"`
  3890  
  3891  	Resources []*LiaSettings `json:"resources,omitempty"`
  3892  
  3893  	// ServerResponse contains the HTTP response code and headers from the
  3894  	// server.
  3895  	googleapi.ServerResponse `json:"-"`
  3896  
  3897  	// ForceSendFields is a list of field names (e.g. "Kind") to
  3898  	// unconditionally include in API requests. By default, fields with
  3899  	// empty or default values are omitted from API requests. However, any
  3900  	// non-pointer, non-interface field appearing in ForceSendFields will be
  3901  	// sent to the server regardless of whether the field is empty or not.
  3902  	// This may be used to include empty fields in Patch requests.
  3903  	ForceSendFields []string `json:"-"`
  3904  
  3905  	// NullFields is a list of field names (e.g. "Kind") to include in API
  3906  	// requests with the JSON null value. By default, fields with empty
  3907  	// values are omitted from API requests. However, any field with an
  3908  	// empty value appearing in NullFields will be sent to the server as
  3909  	// null. It is an error if a field in this list has a non-empty value.
  3910  	// This may be used to include null fields in Patch requests.
  3911  	NullFields []string `json:"-"`
  3912  }
  3913  
  3914  func (s *LiasettingsListResponse) MarshalJSON() ([]byte, error) {
  3915  	type NoMethod LiasettingsListResponse
  3916  	raw := NoMethod(*s)
  3917  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3918  }
  3919  
  3920  type LiasettingsRequestGmbAccessResponse struct {
  3921  	// Kind: Identifies what kind of resource this is. Value: the fixed
  3922  	// string "content#liasettingsRequestGmbAccessResponse".
  3923  	Kind string `json:"kind,omitempty"`
  3924  
  3925  	// ServerResponse contains the HTTP response code and headers from the
  3926  	// server.
  3927  	googleapi.ServerResponse `json:"-"`
  3928  
  3929  	// ForceSendFields is a list of field names (e.g. "Kind") to
  3930  	// unconditionally include in API requests. By default, fields with
  3931  	// empty or default values are omitted from API requests. However, any
  3932  	// non-pointer, non-interface field appearing in ForceSendFields will be
  3933  	// sent to the server regardless of whether the field is empty or not.
  3934  	// This may be used to include empty fields in Patch requests.
  3935  	ForceSendFields []string `json:"-"`
  3936  
  3937  	// NullFields is a list of field names (e.g. "Kind") to include in API
  3938  	// requests with the JSON null value. By default, fields with empty
  3939  	// values are omitted from API requests. However, any field with an
  3940  	// empty value appearing in NullFields will be sent to the server as
  3941  	// null. It is an error if a field in this list has a non-empty value.
  3942  	// This may be used to include null fields in Patch requests.
  3943  	NullFields []string `json:"-"`
  3944  }
  3945  
  3946  func (s *LiasettingsRequestGmbAccessResponse) MarshalJSON() ([]byte, error) {
  3947  	type NoMethod LiasettingsRequestGmbAccessResponse
  3948  	raw := NoMethod(*s)
  3949  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3950  }
  3951  
  3952  type LiasettingsRequestInventoryVerificationResponse struct {
  3953  	// Kind: Identifies what kind of resource this is. Value: the fixed
  3954  	// string "content#liasettingsRequestInventoryVerificationResponse".
  3955  	Kind string `json:"kind,omitempty"`
  3956  
  3957  	// ServerResponse contains the HTTP response code and headers from the
  3958  	// server.
  3959  	googleapi.ServerResponse `json:"-"`
  3960  
  3961  	// ForceSendFields is a list of field names (e.g. "Kind") to
  3962  	// unconditionally include in API requests. By default, fields with
  3963  	// empty or default values are omitted from API requests. However, any
  3964  	// non-pointer, non-interface field appearing in ForceSendFields will be
  3965  	// sent to the server regardless of whether the field is empty or not.
  3966  	// This may be used to include empty fields in Patch requests.
  3967  	ForceSendFields []string `json:"-"`
  3968  
  3969  	// NullFields is a list of field names (e.g. "Kind") to include in API
  3970  	// requests with the JSON null value. By default, fields with empty
  3971  	// values are omitted from API requests. However, any field with an
  3972  	// empty value appearing in NullFields will be sent to the server as
  3973  	// null. It is an error if a field in this list has a non-empty value.
  3974  	// This may be used to include null fields in Patch requests.
  3975  	NullFields []string `json:"-"`
  3976  }
  3977  
  3978  func (s *LiasettingsRequestInventoryVerificationResponse) MarshalJSON() ([]byte, error) {
  3979  	type NoMethod LiasettingsRequestInventoryVerificationResponse
  3980  	raw := NoMethod(*s)
  3981  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  3982  }
  3983  
  3984  type LiasettingsSetInventoryVerificationContactResponse struct {
  3985  	// Kind: Identifies what kind of resource this is. Value: the fixed
  3986  	// string "content#liasettingsSetInventoryVerificationContactResponse".
  3987  	Kind string `json:"kind,omitempty"`
  3988  
  3989  	// ServerResponse contains the HTTP response code and headers from the
  3990  	// server.
  3991  	googleapi.ServerResponse `json:"-"`
  3992  
  3993  	// ForceSendFields is a list of field names (e.g. "Kind") to
  3994  	// unconditionally include in API requests. By default, fields with
  3995  	// empty or default values are omitted from API requests. However, any
  3996  	// non-pointer, non-interface field appearing in ForceSendFields will be
  3997  	// sent to the server regardless of whether the field is empty or not.
  3998  	// This may be used to include empty fields in Patch requests.
  3999  	ForceSendFields []string `json:"-"`
  4000  
  4001  	// NullFields is a list of field names (e.g. "Kind") to include in API
  4002  	// requests with the JSON null value. By default, fields with empty
  4003  	// values are omitted from API requests. However, any field with an
  4004  	// empty value appearing in NullFields will be sent to the server as
  4005  	// null. It is an error if a field in this list has a non-empty value.
  4006  	// This may be used to include null fields in Patch requests.
  4007  	NullFields []string `json:"-"`
  4008  }
  4009  
  4010  func (s *LiasettingsSetInventoryVerificationContactResponse) MarshalJSON() ([]byte, error) {
  4011  	type NoMethod LiasettingsSetInventoryVerificationContactResponse
  4012  	raw := NoMethod(*s)
  4013  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4014  }
  4015  
  4016  type LiasettingsSetPosDataProviderResponse struct {
  4017  	// Kind: Identifies what kind of resource this is. Value: the fixed
  4018  	// string "content#liasettingsSetPosDataProviderResponse".
  4019  	Kind string `json:"kind,omitempty"`
  4020  
  4021  	// ServerResponse contains the HTTP response code and headers from the
  4022  	// server.
  4023  	googleapi.ServerResponse `json:"-"`
  4024  
  4025  	// ForceSendFields is a list of field names (e.g. "Kind") to
  4026  	// unconditionally include in API requests. By default, fields with
  4027  	// empty or default values are omitted from API requests. However, any
  4028  	// non-pointer, non-interface field appearing in ForceSendFields will be
  4029  	// sent to the server regardless of whether the field is empty or not.
  4030  	// This may be used to include empty fields in Patch requests.
  4031  	ForceSendFields []string `json:"-"`
  4032  
  4033  	// NullFields is a list of field names (e.g. "Kind") to include in API
  4034  	// requests with the JSON null value. By default, fields with empty
  4035  	// values are omitted from API requests. However, any field with an
  4036  	// empty value appearing in NullFields will be sent to the server as
  4037  	// null. It is an error if a field in this list has a non-empty value.
  4038  	// This may be used to include null fields in Patch requests.
  4039  	NullFields []string `json:"-"`
  4040  }
  4041  
  4042  func (s *LiasettingsSetPosDataProviderResponse) MarshalJSON() ([]byte, error) {
  4043  	type NoMethod LiasettingsSetPosDataProviderResponse
  4044  	raw := NoMethod(*s)
  4045  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4046  }
  4047  
  4048  type LocationIdSet struct {
  4049  	// LocationIds: A non-empty list of location IDs. They must all be of
  4050  	// the same location type (e.g., state).
  4051  	LocationIds []string `json:"locationIds,omitempty"`
  4052  
  4053  	// ForceSendFields is a list of field names (e.g. "LocationIds") to
  4054  	// unconditionally include in API requests. By default, fields with
  4055  	// empty or default values are omitted from API requests. However, any
  4056  	// non-pointer, non-interface field appearing in ForceSendFields will be
  4057  	// sent to the server regardless of whether the field is empty or not.
  4058  	// This may be used to include empty fields in Patch requests.
  4059  	ForceSendFields []string `json:"-"`
  4060  
  4061  	// NullFields is a list of field names (e.g. "LocationIds") to include
  4062  	// in API requests with the JSON null value. By default, fields with
  4063  	// empty values are omitted from API requests. However, any field with
  4064  	// an empty value appearing in NullFields will be sent to the server as
  4065  	// null. It is an error if a field in this list has a non-empty value.
  4066  	// This may be used to include null fields in Patch requests.
  4067  	NullFields []string `json:"-"`
  4068  }
  4069  
  4070  func (s *LocationIdSet) MarshalJSON() ([]byte, error) {
  4071  	type NoMethod LocationIdSet
  4072  	raw := NoMethod(*s)
  4073  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4074  }
  4075  
  4076  type LoyaltyPoints struct {
  4077  	// Name: Name of loyalty points program. It is recommended to limit the
  4078  	// name to 12 full-width characters or 24 Roman characters.
  4079  	Name string `json:"name,omitempty"`
  4080  
  4081  	// PointsValue: The retailer's loyalty points in absolute value.
  4082  	PointsValue int64 `json:"pointsValue,omitempty,string"`
  4083  
  4084  	// Ratio: The ratio of a point when converted to currency. Google
  4085  	// assumes currency based on Merchant Center settings. If ratio is left
  4086  	// out, it defaults to 1.0.
  4087  	Ratio float64 `json:"ratio,omitempty"`
  4088  
  4089  	// ForceSendFields is a list of field names (e.g. "Name") to
  4090  	// unconditionally include in API requests. By default, fields with
  4091  	// empty or default values are omitted from API requests. However, any
  4092  	// non-pointer, non-interface field appearing in ForceSendFields will be
  4093  	// sent to the server regardless of whether the field is empty or not.
  4094  	// This may be used to include empty fields in Patch requests.
  4095  	ForceSendFields []string `json:"-"`
  4096  
  4097  	// NullFields is a list of field names (e.g. "Name") to include in API
  4098  	// requests with the JSON null value. By default, fields with empty
  4099  	// values are omitted from API requests. However, any field with an
  4100  	// empty value appearing in NullFields will be sent to the server as
  4101  	// null. It is an error if a field in this list has a non-empty value.
  4102  	// This may be used to include null fields in Patch requests.
  4103  	NullFields []string `json:"-"`
  4104  }
  4105  
  4106  func (s *LoyaltyPoints) MarshalJSON() ([]byte, error) {
  4107  	type NoMethod LoyaltyPoints
  4108  	raw := NoMethod(*s)
  4109  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4110  }
  4111  
  4112  func (s *LoyaltyPoints) UnmarshalJSON(data []byte) error {
  4113  	type NoMethod LoyaltyPoints
  4114  	var s1 struct {
  4115  		Ratio gensupport.JSONFloat64 `json:"ratio"`
  4116  		*NoMethod
  4117  	}
  4118  	s1.NoMethod = (*NoMethod)(s)
  4119  	if err := json.Unmarshal(data, &s1); err != nil {
  4120  		return err
  4121  	}
  4122  	s.Ratio = float64(s1.Ratio)
  4123  	return nil
  4124  }
  4125  
  4126  // MerchantOrderReturn: Order return. Production access (all methods)
  4127  // requires the order manager role. Sandbox access does not.
  4128  type MerchantOrderReturn struct {
  4129  	// CreationDate: The date of creation of the return, in ISO 8601 format.
  4130  	CreationDate string `json:"creationDate,omitempty"`
  4131  
  4132  	// MerchantOrderId: Merchant defined order ID.
  4133  	MerchantOrderId string `json:"merchantOrderId,omitempty"`
  4134  
  4135  	// OrderId: Google order ID.
  4136  	OrderId string `json:"orderId,omitempty"`
  4137  
  4138  	// OrderReturnId: Order return ID generated by Google.
  4139  	OrderReturnId string `json:"orderReturnId,omitempty"`
  4140  
  4141  	// ReturnItems: Items of the return.
  4142  	ReturnItems []*MerchantOrderReturnItem `json:"returnItems,omitempty"`
  4143  
  4144  	// ReturnShipments: Shipments of the return.
  4145  	ReturnShipments []*ReturnShipment `json:"returnShipments,omitempty"`
  4146  
  4147  	// ServerResponse contains the HTTP response code and headers from the
  4148  	// server.
  4149  	googleapi.ServerResponse `json:"-"`
  4150  
  4151  	// ForceSendFields is a list of field names (e.g. "CreationDate") to
  4152  	// unconditionally include in API requests. By default, fields with
  4153  	// empty or default values are omitted from API requests. However, any
  4154  	// non-pointer, non-interface field appearing in ForceSendFields will be
  4155  	// sent to the server regardless of whether the field is empty or not.
  4156  	// This may be used to include empty fields in Patch requests.
  4157  	ForceSendFields []string `json:"-"`
  4158  
  4159  	// NullFields is a list of field names (e.g. "CreationDate") to include
  4160  	// in API requests with the JSON null value. By default, fields with
  4161  	// empty values are omitted from API requests. However, any field with
  4162  	// an empty value appearing in NullFields will be sent to the server as
  4163  	// null. It is an error if a field in this list has a non-empty value.
  4164  	// This may be used to include null fields in Patch requests.
  4165  	NullFields []string `json:"-"`
  4166  }
  4167  
  4168  func (s *MerchantOrderReturn) MarshalJSON() ([]byte, error) {
  4169  	type NoMethod MerchantOrderReturn
  4170  	raw := NoMethod(*s)
  4171  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4172  }
  4173  
  4174  type MerchantOrderReturnItem struct {
  4175  	// CustomerReturnReason: The reason that the customer chooses to return
  4176  	// an item.
  4177  	CustomerReturnReason *CustomerReturnReason `json:"customerReturnReason,omitempty"`
  4178  
  4179  	// ItemId: Product level item ID. If the returned items are of the same
  4180  	// product, they will have the same ID.
  4181  	ItemId string `json:"itemId,omitempty"`
  4182  
  4183  	// MerchantReturnReason: The reason that merchant chooses to accept a
  4184  	// return item.
  4185  	MerchantReturnReason *RefundReason `json:"merchantReturnReason,omitempty"`
  4186  
  4187  	// Product: Product data from the time of the order placement.
  4188  	Product *OrderLineItemProduct `json:"product,omitempty"`
  4189  
  4190  	// ReturnShipmentIds: IDs of the return shipments that this return item
  4191  	// belongs to.
  4192  	ReturnShipmentIds []string `json:"returnShipmentIds,omitempty"`
  4193  
  4194  	// State: State of the item. Acceptable values are: - "canceled" -
  4195  	// "new" - "received" - "refunded" - "rejected"
  4196  	State string `json:"state,omitempty"`
  4197  
  4198  	// ForceSendFields is a list of field names (e.g.
  4199  	// "CustomerReturnReason") to unconditionally include in API requests.
  4200  	// By default, fields with empty or default values are omitted from API
  4201  	// requests. However, any non-pointer, non-interface field appearing in
  4202  	// ForceSendFields will be sent to the server regardless of whether the
  4203  	// field is empty or not. This may be used to include empty fields in
  4204  	// Patch requests.
  4205  	ForceSendFields []string `json:"-"`
  4206  
  4207  	// NullFields is a list of field names (e.g. "CustomerReturnReason") to
  4208  	// include in API requests with the JSON null value. By default, fields
  4209  	// with empty values are omitted from API requests. However, any field
  4210  	// with an empty value appearing in NullFields will be sent to the
  4211  	// server as null. It is an error if a field in this list has a
  4212  	// non-empty value. This may be used to include null fields in Patch
  4213  	// requests.
  4214  	NullFields []string `json:"-"`
  4215  }
  4216  
  4217  func (s *MerchantOrderReturnItem) MarshalJSON() ([]byte, error) {
  4218  	type NoMethod MerchantOrderReturnItem
  4219  	raw := NoMethod(*s)
  4220  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4221  }
  4222  
  4223  type MinimumOrderValueTable struct {
  4224  	StoreCodeSetWithMovs []*MinimumOrderValueTableStoreCodeSetWithMov `json:"storeCodeSetWithMovs,omitempty"`
  4225  
  4226  	// ForceSendFields is a list of field names (e.g.
  4227  	// "StoreCodeSetWithMovs") to unconditionally include in API requests.
  4228  	// By default, fields with empty or default values are omitted from API
  4229  	// requests. However, any non-pointer, non-interface field appearing in
  4230  	// ForceSendFields will be sent to the server regardless of whether the
  4231  	// field is empty or not. This may be used to include empty fields in
  4232  	// Patch requests.
  4233  	ForceSendFields []string `json:"-"`
  4234  
  4235  	// NullFields is a list of field names (e.g. "StoreCodeSetWithMovs") to
  4236  	// include in API requests with the JSON null value. By default, fields
  4237  	// with empty values are omitted from API requests. However, any field
  4238  	// with an empty value appearing in NullFields will be sent to the
  4239  	// server as null. It is an error if a field in this list has a
  4240  	// non-empty value. This may be used to include null fields in Patch
  4241  	// requests.
  4242  	NullFields []string `json:"-"`
  4243  }
  4244  
  4245  func (s *MinimumOrderValueTable) MarshalJSON() ([]byte, error) {
  4246  	type NoMethod MinimumOrderValueTable
  4247  	raw := NoMethod(*s)
  4248  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4249  }
  4250  
  4251  // MinimumOrderValueTableStoreCodeSetWithMov: A list of store code sets
  4252  // sharing the same minimum order value. At least two sets are required
  4253  // and the last one must be empty, which signifies 'MOV for all other
  4254  // stores'. Each store code can only appear once across all the sets.
  4255  // All prices within a service must have the same currency.
  4256  type MinimumOrderValueTableStoreCodeSetWithMov struct {
  4257  	// StoreCodes: A list of unique store codes or empty for the catch all.
  4258  	StoreCodes []string `json:"storeCodes,omitempty"`
  4259  
  4260  	// Value: The minimum order value for the given stores.
  4261  	Value *Price `json:"value,omitempty"`
  4262  
  4263  	// ForceSendFields is a list of field names (e.g. "StoreCodes") to
  4264  	// unconditionally include in API requests. By default, fields with
  4265  	// empty or default values are omitted from API requests. However, any
  4266  	// non-pointer, non-interface field appearing in ForceSendFields will be
  4267  	// sent to the server regardless of whether the field is empty or not.
  4268  	// This may be used to include empty fields in Patch requests.
  4269  	ForceSendFields []string `json:"-"`
  4270  
  4271  	// NullFields is a list of field names (e.g. "StoreCodes") to include in
  4272  	// API requests with the JSON null value. By default, fields with empty
  4273  	// values are omitted from API requests. However, any field with an
  4274  	// empty value appearing in NullFields will be sent to the server as
  4275  	// null. It is an error if a field in this list has a non-empty value.
  4276  	// This may be used to include null fields in Patch requests.
  4277  	NullFields []string `json:"-"`
  4278  }
  4279  
  4280  func (s *MinimumOrderValueTableStoreCodeSetWithMov) MarshalJSON() ([]byte, error) {
  4281  	type NoMethod MinimumOrderValueTableStoreCodeSetWithMov
  4282  	raw := NoMethod(*s)
  4283  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4284  }
  4285  
  4286  // Order: Order. Production access (all methods) requires the order
  4287  // manager role. Sandbox access does not.
  4288  type Order struct {
  4289  	// Acknowledged: Whether the order was acknowledged.
  4290  	Acknowledged bool `json:"acknowledged,omitempty"`
  4291  
  4292  	// ChannelType: Deprecated. Acceptable values are: - "googleExpress" -
  4293  	// "purchasesOnGoogle"
  4294  	ChannelType string `json:"channelType,omitempty"`
  4295  
  4296  	// Customer: The details of the customer who placed the order.
  4297  	Customer *OrderCustomer `json:"customer,omitempty"`
  4298  
  4299  	// DeliveryDetails: Delivery details for shipments of type `delivery`.
  4300  	DeliveryDetails *OrderDeliveryDetails `json:"deliveryDetails,omitempty"`
  4301  
  4302  	// Id: The REST ID of the order. Globally unique.
  4303  	Id string `json:"id,omitempty"`
  4304  
  4305  	// Kind: Identifies what kind of resource this is. Value: the fixed
  4306  	// string "content#order"
  4307  	Kind string `json:"kind,omitempty"`
  4308  
  4309  	// LineItems: Line items that are ordered.
  4310  	LineItems []*OrderLineItem `json:"lineItems,omitempty"`
  4311  
  4312  	MerchantId uint64 `json:"merchantId,omitempty,string"`
  4313  
  4314  	// MerchantOrderId: Merchant-provided ID of the order.
  4315  	MerchantOrderId string `json:"merchantOrderId,omitempty"`
  4316  
  4317  	// NetAmount: The net amount for the order. For example, if an order was
  4318  	// originally for a grand total of $100 and a refund was issued for $20,
  4319  	// the net amount will be $80.
  4320  	NetAmount *Price `json:"netAmount,omitempty"`
  4321  
  4322  	// PaymentMethod: The details of the payment method.
  4323  	PaymentMethod *OrderPaymentMethod `json:"paymentMethod,omitempty"`
  4324  
  4325  	// PaymentStatus: The status of the payment. Acceptable values are: -
  4326  	// "paymentCaptured" - "paymentRejected" - "paymentSecured" -
  4327  	// "pendingAuthorization"
  4328  	PaymentStatus string `json:"paymentStatus,omitempty"`
  4329  
  4330  	// PickupDetails: Pickup details for shipments of type `pickup`.
  4331  	PickupDetails *OrderPickupDetails `json:"pickupDetails,omitempty"`
  4332  
  4333  	// PlacedDate: The date when the order was placed, in ISO 8601 format.
  4334  	PlacedDate string `json:"placedDate,omitempty"`
  4335  
  4336  	// Promotions: The details of the merchant provided promotions applied
  4337  	// to the order. To determine which promotions apply to which products,
  4338  	// check the `Promotions[].Benefits[].OfferIds` field against the
  4339  	// `LineItems[].Product.OfferId` field for each promotion. If a
  4340  	// promotion is applied to more than 1 `offerId`, divide the discount
  4341  	// value by the number of affected offers to determine how much discount
  4342  	// to apply to each `offerId`. Examples: 1. To calculate the line item
  4343  	// level discount for a single specific item: For each promotion,
  4344  	// subtract the `Promotions[].Benefits[].Discount.value` amount from the
  4345  	// `LineItems[].Price.value`. 2. To calculate the line item level
  4346  	// discount for multiple quantity of a specific item: For each
  4347  	// promotion, divide the `Promotions[].Benefits[].Discount.value` by the
  4348  	// quantity of products and substract it from
  4349  	// `LineItems[].Product.Price.value` for each quantity item. Only 1
  4350  	// promotion can be applied to an offerId in a given order. To refund an
  4351  	// item which had a promotion applied to it, make sure to refund the
  4352  	// amount after first subtracting the promotion discount from the item
  4353  	// price. More details about the program are here.
  4354  	Promotions []*OrderLegacyPromotion `json:"promotions,omitempty"`
  4355  
  4356  	// Refunds: Refunds for the order.
  4357  	Refunds []*OrderRefund `json:"refunds,omitempty"`
  4358  
  4359  	// Shipments: Shipments of the order.
  4360  	Shipments []*OrderShipment `json:"shipments,omitempty"`
  4361  
  4362  	// ShippingCost: The total cost of shipping for all items.
  4363  	ShippingCost *Price `json:"shippingCost,omitempty"`
  4364  
  4365  	// ShippingCostTax: The tax for the total shipping cost.
  4366  	ShippingCostTax *Price `json:"shippingCostTax,omitempty"`
  4367  
  4368  	// ShippingOption: Deprecated. Shipping details are provided with line
  4369  	// items instead. Acceptable values are: - "economy" - "expedited" -
  4370  	// "oneDay" - "sameDay" - "standard" - "twoDay"
  4371  	ShippingOption string `json:"shippingOption,omitempty"`
  4372  
  4373  	// Status: The status of the order. Acceptable values are: -
  4374  	// "canceled" - "delivered" - "inProgress" -
  4375  	// "partiallyDelivered" - "partiallyReturned" - "partiallyShipped"
  4376  	// - "pendingShipment" - "returned" - "shipped"
  4377  	Status string `json:"status,omitempty"`
  4378  
  4379  	// TaxCollector: The party responsible for collecting and remitting
  4380  	// taxes. Acceptable values are: - "marketplaceFacilitator" -
  4381  	// "merchant"
  4382  	TaxCollector string `json:"taxCollector,omitempty"`
  4383  
  4384  	// ServerResponse contains the HTTP response code and headers from the
  4385  	// server.
  4386  	googleapi.ServerResponse `json:"-"`
  4387  
  4388  	// ForceSendFields is a list of field names (e.g. "Acknowledged") to
  4389  	// unconditionally include in API requests. By default, fields with
  4390  	// empty or default values are omitted from API requests. However, any
  4391  	// non-pointer, non-interface field appearing in ForceSendFields will be
  4392  	// sent to the server regardless of whether the field is empty or not.
  4393  	// This may be used to include empty fields in Patch requests.
  4394  	ForceSendFields []string `json:"-"`
  4395  
  4396  	// NullFields is a list of field names (e.g. "Acknowledged") to include
  4397  	// in API requests with the JSON null value. By default, fields with
  4398  	// empty values are omitted from API requests. However, any field with
  4399  	// an empty value appearing in NullFields will be sent to the server as
  4400  	// null. It is an error if a field in this list has a non-empty value.
  4401  	// This may be used to include null fields in Patch requests.
  4402  	NullFields []string `json:"-"`
  4403  }
  4404  
  4405  func (s *Order) MarshalJSON() ([]byte, error) {
  4406  	type NoMethod Order
  4407  	raw := NoMethod(*s)
  4408  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4409  }
  4410  
  4411  type OrderAddress struct {
  4412  	// Country: CLDR country code (e.g. "US").
  4413  	Country string `json:"country,omitempty"`
  4414  
  4415  	// FullAddress: Strings representing the lines of the printed label for
  4416  	// mailing the order, for example: John Smith 1600 Amphitheatre Parkway
  4417  	// Mountain View, CA, 94043 United States
  4418  	FullAddress []string `json:"fullAddress,omitempty"`
  4419  
  4420  	// IsPostOfficeBox: Whether the address is a post office box.
  4421  	IsPostOfficeBox bool `json:"isPostOfficeBox,omitempty"`
  4422  
  4423  	// Locality: City, town or commune. May also include dependent
  4424  	// localities or sublocalities (e.g. neighborhoods or suburbs).
  4425  	Locality string `json:"locality,omitempty"`
  4426  
  4427  	// PostalCode: Postal Code or ZIP (e.g. "94043").
  4428  	PostalCode string `json:"postalCode,omitempty"`
  4429  
  4430  	// RecipientName: Name of the recipient.
  4431  	RecipientName string `json:"recipientName,omitempty"`
  4432  
  4433  	// Region: Top-level administrative subdivision of the country. For
  4434  	// example, a state like California ("CA") or a province like Quebec
  4435  	// ("QC").
  4436  	Region string `json:"region,omitempty"`
  4437  
  4438  	// StreetAddress: Street-level part of the address.
  4439  	StreetAddress []string `json:"streetAddress,omitempty"`
  4440  
  4441  	// ForceSendFields is a list of field names (e.g. "Country") to
  4442  	// unconditionally include in API requests. By default, fields with
  4443  	// empty or default values are omitted from API requests. However, any
  4444  	// non-pointer, non-interface field appearing in ForceSendFields will be
  4445  	// sent to the server regardless of whether the field is empty or not.
  4446  	// This may be used to include empty fields in Patch requests.
  4447  	ForceSendFields []string `json:"-"`
  4448  
  4449  	// NullFields is a list of field names (e.g. "Country") to include in
  4450  	// API requests with the JSON null value. By default, fields with empty
  4451  	// values are omitted from API requests. However, any field with an
  4452  	// empty value appearing in NullFields will be sent to the server as
  4453  	// null. It is an error if a field in this list has a non-empty value.
  4454  	// This may be used to include null fields in Patch requests.
  4455  	NullFields []string `json:"-"`
  4456  }
  4457  
  4458  func (s *OrderAddress) MarshalJSON() ([]byte, error) {
  4459  	type NoMethod OrderAddress
  4460  	raw := NoMethod(*s)
  4461  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4462  }
  4463  
  4464  type OrderCancellation struct {
  4465  	// Actor: The actor that created the cancellation. Acceptable values
  4466  	// are: - "customer" - "googleBot" - "googleCustomerService" -
  4467  	// "googlePayments" - "googleSabre" - "merchant"
  4468  	Actor string `json:"actor,omitempty"`
  4469  
  4470  	// CreationDate: Date on which the cancellation has been created, in ISO
  4471  	// 8601 format.
  4472  	CreationDate string `json:"creationDate,omitempty"`
  4473  
  4474  	// Quantity: The quantity that was canceled.
  4475  	Quantity int64 `json:"quantity,omitempty"`
  4476  
  4477  	// Reason: The reason for the cancellation. Orders that are canceled
  4478  	// with a noInventory reason will lead to the removal of the product
  4479  	// from Buy on Google until you make an update to that product. This
  4480  	// will not affect your Shopping ads. Acceptable values are: -
  4481  	// "autoPostInternal" - "autoPostInvalidBillingAddress" -
  4482  	// "autoPostNoInventory" - "autoPostPriceError" -
  4483  	// "autoPostUndeliverableShippingAddress" - "couponAbuse" -
  4484  	// "customerCanceled" - "customerInitiatedCancel" -
  4485  	// "customerSupportRequested" - "failToPushOrderGoogleError" -
  4486  	// "failToPushOrderMerchantError" -
  4487  	// "failToPushOrderMerchantFulfillmentError" -
  4488  	// "failToPushOrderToMerchant" -
  4489  	// "failToPushOrderToMerchantOutOfStock" - "invalidCoupon" -
  4490  	// "malformedShippingAddress" - "merchantDidNotShipOnTime" -
  4491  	// "noInventory" - "orderTimeout" - "other" - "paymentAbuse" -
  4492  	// "paymentDeclined" - "priceError" - "returnRefundAbuse" -
  4493  	// "shippingPriceError" - "taxError" -
  4494  	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress"
  4495  	Reason string `json:"reason,omitempty"`
  4496  
  4497  	// ReasonText: The explanation of the reason.
  4498  	ReasonText string `json:"reasonText,omitempty"`
  4499  
  4500  	// ForceSendFields is a list of field names (e.g. "Actor") to
  4501  	// unconditionally include in API requests. By default, fields with
  4502  	// empty or default values are omitted from API requests. However, any
  4503  	// non-pointer, non-interface field appearing in ForceSendFields will be
  4504  	// sent to the server regardless of whether the field is empty or not.
  4505  	// This may be used to include empty fields in Patch requests.
  4506  	ForceSendFields []string `json:"-"`
  4507  
  4508  	// NullFields is a list of field names (e.g. "Actor") to include in API
  4509  	// requests with the JSON null value. By default, fields with empty
  4510  	// values are omitted from API requests. However, any field with an
  4511  	// empty value appearing in NullFields will be sent to the server as
  4512  	// null. It is an error if a field in this list has a non-empty value.
  4513  	// This may be used to include null fields in Patch requests.
  4514  	NullFields []string `json:"-"`
  4515  }
  4516  
  4517  func (s *OrderCancellation) MarshalJSON() ([]byte, error) {
  4518  	type NoMethod OrderCancellation
  4519  	raw := NoMethod(*s)
  4520  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4521  }
  4522  
  4523  type OrderCustomer struct {
  4524  	// Email: Deprecated.
  4525  	Email string `json:"email,omitempty"`
  4526  
  4527  	// ExplicitMarketingPreference: Deprecated. Please use
  4528  	// marketingRightsInfo instead.
  4529  	ExplicitMarketingPreference bool `json:"explicitMarketingPreference,omitempty"`
  4530  
  4531  	// FullName: Full name of the customer.
  4532  	FullName string `json:"fullName,omitempty"`
  4533  
  4534  	// InvoiceReceivingEmail: Email address for the merchant to send
  4535  	// value-added tax or invoice documentation of the order. Only the last
  4536  	// document sent is made available to the customer. For more
  4537  	// information, see About automated VAT invoicing for Buy on Google.
  4538  	InvoiceReceivingEmail string `json:"invoiceReceivingEmail,omitempty"`
  4539  
  4540  	// MarketingRightsInfo: Customer's marketing preferences. Contains the
  4541  	// marketing opt-in information that is current at the time that the
  4542  	// merchant call. User preference selections can change from one order
  4543  	// to the next so preferences must be checked with every order.
  4544  	MarketingRightsInfo *OrderCustomerMarketingRightsInfo `json:"marketingRightsInfo,omitempty"`
  4545  
  4546  	// ForceSendFields is a list of field names (e.g. "Email") to
  4547  	// unconditionally include in API requests. By default, fields with
  4548  	// empty or default values are omitted from API requests. However, any
  4549  	// non-pointer, non-interface field appearing in ForceSendFields will be
  4550  	// sent to the server regardless of whether the field is empty or not.
  4551  	// This may be used to include empty fields in Patch requests.
  4552  	ForceSendFields []string `json:"-"`
  4553  
  4554  	// NullFields is a list of field names (e.g. "Email") to include in API
  4555  	// requests with the JSON null value. By default, fields with empty
  4556  	// values are omitted from API requests. However, any field with an
  4557  	// empty value appearing in NullFields will be sent to the server as
  4558  	// null. It is an error if a field in this list has a non-empty value.
  4559  	// This may be used to include null fields in Patch requests.
  4560  	NullFields []string `json:"-"`
  4561  }
  4562  
  4563  func (s *OrderCustomer) MarshalJSON() ([]byte, error) {
  4564  	type NoMethod OrderCustomer
  4565  	raw := NoMethod(*s)
  4566  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4567  }
  4568  
  4569  type OrderCustomerMarketingRightsInfo struct {
  4570  	// ExplicitMarketingPreference: Last known customer selection regarding
  4571  	// marketing preferences. In certain cases this selection might not be
  4572  	// known, so this field would be empty. If a customer selected `granted`
  4573  	// in their most recent order, they can be subscribed to marketing
  4574  	// emails. Customers who have chosen `denied` must not be subscribed, or
  4575  	// must be unsubscribed if already opted-in. Acceptable values are: -
  4576  	// "denied" - "granted"
  4577  	ExplicitMarketingPreference string `json:"explicitMarketingPreference,omitempty"`
  4578  
  4579  	// LastUpdatedTimestamp: Timestamp when last time marketing preference
  4580  	// was updated. Could be empty, if user wasn't offered a selection yet.
  4581  	LastUpdatedTimestamp string `json:"lastUpdatedTimestamp,omitempty"`
  4582  
  4583  	// MarketingEmailAddress: Email address that can be used for marketing
  4584  	// purposes. The field may be empty even if
  4585  	// `explicitMarketingPreference` is 'granted'. This happens when
  4586  	// retrieving an old order from the customer who deleted their account.
  4587  	MarketingEmailAddress string `json:"marketingEmailAddress,omitempty"`
  4588  
  4589  	// ForceSendFields is a list of field names (e.g.
  4590  	// "ExplicitMarketingPreference") to unconditionally include in API
  4591  	// requests. By default, fields with empty or default values are omitted
  4592  	// from API requests. However, any non-pointer, non-interface field
  4593  	// appearing in ForceSendFields will be sent to the server regardless of
  4594  	// whether the field is empty or not. This may be used to include empty
  4595  	// fields in Patch requests.
  4596  	ForceSendFields []string `json:"-"`
  4597  
  4598  	// NullFields is a list of field names (e.g.
  4599  	// "ExplicitMarketingPreference") to include in API requests with the
  4600  	// JSON null value. By default, fields with empty values are omitted
  4601  	// from API requests. However, any field with an empty value appearing
  4602  	// in NullFields will be sent to the server as null. It is an error if a
  4603  	// field in this list has a non-empty value. This may be used to include
  4604  	// null fields in Patch requests.
  4605  	NullFields []string `json:"-"`
  4606  }
  4607  
  4608  func (s *OrderCustomerMarketingRightsInfo) MarshalJSON() ([]byte, error) {
  4609  	type NoMethod OrderCustomerMarketingRightsInfo
  4610  	raw := NoMethod(*s)
  4611  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4612  }
  4613  
  4614  type OrderDeliveryDetails struct {
  4615  	// Address: The delivery address
  4616  	Address *OrderAddress `json:"address,omitempty"`
  4617  
  4618  	// PhoneNumber: The phone number of the person receiving the delivery.
  4619  	PhoneNumber string `json:"phoneNumber,omitempty"`
  4620  
  4621  	// ForceSendFields is a list of field names (e.g. "Address") to
  4622  	// unconditionally include in API requests. By default, fields with
  4623  	// empty or default values are omitted from API requests. However, any
  4624  	// non-pointer, non-interface field appearing in ForceSendFields will be
  4625  	// sent to the server regardless of whether the field is empty or not.
  4626  	// This may be used to include empty fields in Patch requests.
  4627  	ForceSendFields []string `json:"-"`
  4628  
  4629  	// NullFields is a list of field names (e.g. "Address") to include in
  4630  	// API requests with the JSON null value. By default, fields with empty
  4631  	// values are omitted from API requests. However, any field with an
  4632  	// empty value appearing in NullFields will be sent to the server as
  4633  	// null. It is an error if a field in this list has a non-empty value.
  4634  	// This may be used to include null fields in Patch requests.
  4635  	NullFields []string `json:"-"`
  4636  }
  4637  
  4638  func (s *OrderDeliveryDetails) MarshalJSON() ([]byte, error) {
  4639  	type NoMethod OrderDeliveryDetails
  4640  	raw := NoMethod(*s)
  4641  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4642  }
  4643  
  4644  type OrderLegacyPromotion struct {
  4645  	Benefits []*OrderLegacyPromotionBenefit `json:"benefits,omitempty"`
  4646  
  4647  	// EffectiveDates: The date and time frame when the promotion is active
  4648  	// and ready for validation review. Note that the promotion live time
  4649  	// may be delayed for a few hours due to the validation review. Start
  4650  	// date and end date are separated by a forward slash (/). The start
  4651  	// date is specified by the format (YYYY-MM-DD), followed by the letter
  4652  	// ?T?, the time of the day when the sale starts (in Greenwich Mean
  4653  	// Time, GMT), followed by an expression of the time zone for the sale.
  4654  	// The end date is in the same format.
  4655  	EffectiveDates string `json:"effectiveDates,omitempty"`
  4656  
  4657  	// GenericRedemptionCode: Optional. The text code that corresponds to
  4658  	// the promotion when applied on the retailer?s website.
  4659  	GenericRedemptionCode string `json:"genericRedemptionCode,omitempty"`
  4660  
  4661  	// Id: The unique ID of the promotion.
  4662  	Id string `json:"id,omitempty"`
  4663  
  4664  	// LongTitle: The full title of the promotion.
  4665  	LongTitle string `json:"longTitle,omitempty"`
  4666  
  4667  	// ProductApplicability: Whether the promotion is applicable to all
  4668  	// products or only specific products. Acceptable values are: -
  4669  	// "allProducts" - "specificProducts"
  4670  	ProductApplicability string `json:"productApplicability,omitempty"`
  4671  
  4672  	// RedemptionChannel: Indicates that the promotion is valid online.
  4673  	// Acceptable values are: - "online"
  4674  	RedemptionChannel string `json:"redemptionChannel,omitempty"`
  4675  
  4676  	// ForceSendFields is a list of field names (e.g. "Benefits") to
  4677  	// unconditionally include in API requests. By default, fields with
  4678  	// empty or default values are omitted from API requests. However, any
  4679  	// non-pointer, non-interface field appearing in ForceSendFields will be
  4680  	// sent to the server regardless of whether the field is empty or not.
  4681  	// This may be used to include empty fields in Patch requests.
  4682  	ForceSendFields []string `json:"-"`
  4683  
  4684  	// NullFields is a list of field names (e.g. "Benefits") to include in
  4685  	// API requests with the JSON null value. By default, fields with empty
  4686  	// values are omitted from API requests. However, any field with an
  4687  	// empty value appearing in NullFields will be sent to the server as
  4688  	// null. It is an error if a field in this list has a non-empty value.
  4689  	// This may be used to include null fields in Patch requests.
  4690  	NullFields []string `json:"-"`
  4691  }
  4692  
  4693  func (s *OrderLegacyPromotion) MarshalJSON() ([]byte, error) {
  4694  	type NoMethod OrderLegacyPromotion
  4695  	raw := NoMethod(*s)
  4696  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4697  }
  4698  
  4699  type OrderLegacyPromotionBenefit struct {
  4700  	// Discount: The discount in the order price when the promotion is
  4701  	// applied.
  4702  	Discount *Price `json:"discount,omitempty"`
  4703  
  4704  	// OfferIds: The OfferId(s) that were purchased in this order and map to
  4705  	// this specific benefit of the promotion.
  4706  	OfferIds []string `json:"offerIds,omitempty"`
  4707  
  4708  	// SubType: Further describes the benefit of the promotion. Note that we
  4709  	// will expand on this enumeration as we support new promotion
  4710  	// sub-types. Acceptable values are: - "buyMGetMoneyOff" -
  4711  	// "buyMGetNMoneyOff" - "buyMGetNPercentOff" - "buyMGetPercentOff"
  4712  	// - "freeGift" - "freeGiftWithItemId" - "freeGiftWithValue" -
  4713  	// "freeOvernightShipping" - "freeShipping" - "freeTwoDayShipping"
  4714  	// - "moneyOff" - "percentageOff" - "rewardPoints" - "salePrice"
  4715  	SubType string `json:"subType,omitempty"`
  4716  
  4717  	// TaxImpact: The impact on tax when the promotion is applied.
  4718  	TaxImpact *Price `json:"taxImpact,omitempty"`
  4719  
  4720  	// Type: Describes whether the promotion applies to products (e.g. 20%
  4721  	// off) or to shipping (e.g. Free Shipping). Acceptable values are: -
  4722  	// "product" - "shipping"
  4723  	Type string `json:"type,omitempty"`
  4724  
  4725  	// ForceSendFields is a list of field names (e.g. "Discount") to
  4726  	// unconditionally include in API requests. By default, fields with
  4727  	// empty or default values are omitted from API requests. However, any
  4728  	// non-pointer, non-interface field appearing in ForceSendFields will be
  4729  	// sent to the server regardless of whether the field is empty or not.
  4730  	// This may be used to include empty fields in Patch requests.
  4731  	ForceSendFields []string `json:"-"`
  4732  
  4733  	// NullFields is a list of field names (e.g. "Discount") to include in
  4734  	// API requests with the JSON null value. By default, fields with empty
  4735  	// values are omitted from API requests. However, any field with an
  4736  	// empty value appearing in NullFields will be sent to the server as
  4737  	// null. It is an error if a field in this list has a non-empty value.
  4738  	// This may be used to include null fields in Patch requests.
  4739  	NullFields []string `json:"-"`
  4740  }
  4741  
  4742  func (s *OrderLegacyPromotionBenefit) MarshalJSON() ([]byte, error) {
  4743  	type NoMethod OrderLegacyPromotionBenefit
  4744  	raw := NoMethod(*s)
  4745  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4746  }
  4747  
  4748  type OrderLineItem struct {
  4749  	// Annotations: Annotations that are attached to the line item.
  4750  	Annotations []*OrderMerchantProvidedAnnotation `json:"annotations,omitempty"`
  4751  
  4752  	// Cancellations: Cancellations of the line item.
  4753  	Cancellations []*OrderCancellation `json:"cancellations,omitempty"`
  4754  
  4755  	// Id: The ID of the line item.
  4756  	Id string `json:"id,omitempty"`
  4757  
  4758  	// Price: Total price for the line item. For example, if two items for
  4759  	// $10 are purchased, the total price will be $20.
  4760  	Price *Price `json:"price,omitempty"`
  4761  
  4762  	// Product: Product data as seen by customer from the time of the order
  4763  	// placement. Note that certain attributes values (e.g. title or gtin)
  4764  	// might be reformatted and no longer match values submitted via product
  4765  	// feed.
  4766  	Product *OrderLineItemProduct `json:"product,omitempty"`
  4767  
  4768  	// QuantityCanceled: Number of items canceled.
  4769  	QuantityCanceled int64 `json:"quantityCanceled,omitempty"`
  4770  
  4771  	// QuantityDelivered: Number of items delivered.
  4772  	QuantityDelivered int64 `json:"quantityDelivered,omitempty"`
  4773  
  4774  	// QuantityOrdered: Number of items ordered.
  4775  	QuantityOrdered int64 `json:"quantityOrdered,omitempty"`
  4776  
  4777  	// QuantityPending: Number of items pending.
  4778  	QuantityPending int64 `json:"quantityPending,omitempty"`
  4779  
  4780  	// QuantityReadyForPickup: Number of items ready for pickup.
  4781  	QuantityReadyForPickup int64 `json:"quantityReadyForPickup,omitempty"`
  4782  
  4783  	// QuantityReturned: Number of items returned.
  4784  	QuantityReturned int64 `json:"quantityReturned,omitempty"`
  4785  
  4786  	// QuantityShipped: Number of items shipped.
  4787  	QuantityShipped int64 `json:"quantityShipped,omitempty"`
  4788  
  4789  	// ReturnInfo: Details of the return policy for the line item.
  4790  	ReturnInfo *OrderLineItemReturnInfo `json:"returnInfo,omitempty"`
  4791  
  4792  	// Returns: Returns of the line item.
  4793  	Returns []*OrderReturn `json:"returns,omitempty"`
  4794  
  4795  	// ShippingDetails: Details of the requested shipping for the line item.
  4796  	ShippingDetails *OrderLineItemShippingDetails `json:"shippingDetails,omitempty"`
  4797  
  4798  	// Tax: Total tax amount for the line item. For example, if two items
  4799  	// are purchased, and each have a cost tax of $2, the total tax amount
  4800  	// will be $4.
  4801  	Tax *Price `json:"tax,omitempty"`
  4802  
  4803  	// ForceSendFields is a list of field names (e.g. "Annotations") to
  4804  	// unconditionally include in API requests. By default, fields with
  4805  	// empty or default values are omitted from API requests. However, any
  4806  	// non-pointer, non-interface field appearing in ForceSendFields will be
  4807  	// sent to the server regardless of whether the field is empty or not.
  4808  	// This may be used to include empty fields in Patch requests.
  4809  	ForceSendFields []string `json:"-"`
  4810  
  4811  	// NullFields is a list of field names (e.g. "Annotations") to include
  4812  	// in API requests with the JSON null value. By default, fields with
  4813  	// empty values are omitted from API requests. However, any field with
  4814  	// an empty value appearing in NullFields will be sent to the server as
  4815  	// null. It is an error if a field in this list has a non-empty value.
  4816  	// This may be used to include null fields in Patch requests.
  4817  	NullFields []string `json:"-"`
  4818  }
  4819  
  4820  func (s *OrderLineItem) MarshalJSON() ([]byte, error) {
  4821  	type NoMethod OrderLineItem
  4822  	raw := NoMethod(*s)
  4823  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4824  }
  4825  
  4826  type OrderLineItemProduct struct {
  4827  	// Brand: Brand of the item.
  4828  	Brand string `json:"brand,omitempty"`
  4829  
  4830  	// Channel: The item's channel (online or local). Acceptable values are:
  4831  	// - "local" - "online"
  4832  	Channel string `json:"channel,omitempty"`
  4833  
  4834  	// Condition: Condition or state of the item. Acceptable values are: -
  4835  	// "new" - "refurbished" - "used"
  4836  	Condition string `json:"condition,omitempty"`
  4837  
  4838  	// ContentLanguage: The two-letter ISO 639-1 language code for the item.
  4839  	ContentLanguage string `json:"contentLanguage,omitempty"`
  4840  
  4841  	// Fees: Associated fees at order creation time.
  4842  	Fees []*OrderLineItemProductFee `json:"fees,omitempty"`
  4843  
  4844  	// Gtin: Global Trade Item Number (GTIN) of the item.
  4845  	Gtin string `json:"gtin,omitempty"`
  4846  
  4847  	// Id: The REST ID of the product.
  4848  	Id string `json:"id,omitempty"`
  4849  
  4850  	// ImageLink: URL of an image of the item.
  4851  	ImageLink string `json:"imageLink,omitempty"`
  4852  
  4853  	// ItemGroupId: Shared identifier for all variants of the same product.
  4854  	ItemGroupId string `json:"itemGroupId,omitempty"`
  4855  
  4856  	// Mpn: Manufacturer Part Number (MPN) of the item.
  4857  	Mpn string `json:"mpn,omitempty"`
  4858  
  4859  	// OfferId: An identifier of the item.
  4860  	OfferId string `json:"offerId,omitempty"`
  4861  
  4862  	// Price: Price of the item.
  4863  	Price *Price `json:"price,omitempty"`
  4864  
  4865  	// ShownImage: URL to the cached image shown to the user when order was
  4866  	// placed.
  4867  	ShownImage string `json:"shownImage,omitempty"`
  4868  
  4869  	// TargetCountry: The CLDR territory // code of the target country of
  4870  	// the product.
  4871  	TargetCountry string `json:"targetCountry,omitempty"`
  4872  
  4873  	// Title: The title of the product.
  4874  	Title string `json:"title,omitempty"`
  4875  
  4876  	// VariantAttributes: Variant attributes for the item. These are
  4877  	// dimensions of the product, such as color, gender, material, pattern,
  4878  	// and size. You can find a comprehensive list of variant attributes
  4879  	// here.
  4880  	VariantAttributes []*OrderLineItemProductVariantAttribute `json:"variantAttributes,omitempty"`
  4881  
  4882  	// ForceSendFields is a list of field names (e.g. "Brand") to
  4883  	// unconditionally include in API requests. By default, fields with
  4884  	// empty or default values are omitted from API requests. However, any
  4885  	// non-pointer, non-interface field appearing in ForceSendFields will be
  4886  	// sent to the server regardless of whether the field is empty or not.
  4887  	// This may be used to include empty fields in Patch requests.
  4888  	ForceSendFields []string `json:"-"`
  4889  
  4890  	// NullFields is a list of field names (e.g. "Brand") to include in API
  4891  	// requests with the JSON null value. By default, fields with empty
  4892  	// values are omitted from API requests. However, any field with an
  4893  	// empty value appearing in NullFields will be sent to the server as
  4894  	// null. It is an error if a field in this list has a non-empty value.
  4895  	// This may be used to include null fields in Patch requests.
  4896  	NullFields []string `json:"-"`
  4897  }
  4898  
  4899  func (s *OrderLineItemProduct) MarshalJSON() ([]byte, error) {
  4900  	type NoMethod OrderLineItemProduct
  4901  	raw := NoMethod(*s)
  4902  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4903  }
  4904  
  4905  type OrderLineItemProductFee struct {
  4906  	// Amount: Amount of the fee.
  4907  	Amount *Price `json:"amount,omitempty"`
  4908  
  4909  	// Name: Name of the fee.
  4910  	Name string `json:"name,omitempty"`
  4911  
  4912  	// ForceSendFields is a list of field names (e.g. "Amount") to
  4913  	// unconditionally include in API requests. By default, fields with
  4914  	// empty or default values are omitted from API requests. However, any
  4915  	// non-pointer, non-interface field appearing in ForceSendFields will be
  4916  	// sent to the server regardless of whether the field is empty or not.
  4917  	// This may be used to include empty fields in Patch requests.
  4918  	ForceSendFields []string `json:"-"`
  4919  
  4920  	// NullFields is a list of field names (e.g. "Amount") to include in API
  4921  	// requests with the JSON null value. By default, fields with empty
  4922  	// values are omitted from API requests. However, any field with an
  4923  	// empty value appearing in NullFields will be sent to the server as
  4924  	// null. It is an error if a field in this list has a non-empty value.
  4925  	// This may be used to include null fields in Patch requests.
  4926  	NullFields []string `json:"-"`
  4927  }
  4928  
  4929  func (s *OrderLineItemProductFee) MarshalJSON() ([]byte, error) {
  4930  	type NoMethod OrderLineItemProductFee
  4931  	raw := NoMethod(*s)
  4932  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4933  }
  4934  
  4935  type OrderLineItemProductVariantAttribute struct {
  4936  	// Dimension: The dimension of the variant.
  4937  	Dimension string `json:"dimension,omitempty"`
  4938  
  4939  	// Value: The value for the dimension.
  4940  	Value string `json:"value,omitempty"`
  4941  
  4942  	// ForceSendFields is a list of field names (e.g. "Dimension") to
  4943  	// unconditionally include in API requests. By default, fields with
  4944  	// empty or default values are omitted from API requests. However, any
  4945  	// non-pointer, non-interface field appearing in ForceSendFields will be
  4946  	// sent to the server regardless of whether the field is empty or not.
  4947  	// This may be used to include empty fields in Patch requests.
  4948  	ForceSendFields []string `json:"-"`
  4949  
  4950  	// NullFields is a list of field names (e.g. "Dimension") to include in
  4951  	// API requests with the JSON null value. By default, fields with empty
  4952  	// values are omitted from API requests. However, any field with an
  4953  	// empty value appearing in NullFields will be sent to the server as
  4954  	// null. It is an error if a field in this list has a non-empty value.
  4955  	// This may be used to include null fields in Patch requests.
  4956  	NullFields []string `json:"-"`
  4957  }
  4958  
  4959  func (s *OrderLineItemProductVariantAttribute) MarshalJSON() ([]byte, error) {
  4960  	type NoMethod OrderLineItemProductVariantAttribute
  4961  	raw := NoMethod(*s)
  4962  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4963  }
  4964  
  4965  type OrderLineItemReturnInfo struct {
  4966  	// DaysToReturn: Required. How many days later the item can be returned.
  4967  	DaysToReturn int64 `json:"daysToReturn,omitempty"`
  4968  
  4969  	// IsReturnable: Required. Whether the item is returnable.
  4970  	IsReturnable bool `json:"isReturnable,omitempty"`
  4971  
  4972  	// PolicyUrl: Required. URL of the item return policy.
  4973  	PolicyUrl string `json:"policyUrl,omitempty"`
  4974  
  4975  	// ForceSendFields is a list of field names (e.g. "DaysToReturn") to
  4976  	// unconditionally include in API requests. By default, fields with
  4977  	// empty or default values are omitted from API requests. However, any
  4978  	// non-pointer, non-interface field appearing in ForceSendFields will be
  4979  	// sent to the server regardless of whether the field is empty or not.
  4980  	// This may be used to include empty fields in Patch requests.
  4981  	ForceSendFields []string `json:"-"`
  4982  
  4983  	// NullFields is a list of field names (e.g. "DaysToReturn") to include
  4984  	// in API requests with the JSON null value. By default, fields with
  4985  	// empty values are omitted from API requests. However, any field with
  4986  	// an empty value appearing in NullFields will be sent to the server as
  4987  	// null. It is an error if a field in this list has a non-empty value.
  4988  	// This may be used to include null fields in Patch requests.
  4989  	NullFields []string `json:"-"`
  4990  }
  4991  
  4992  func (s *OrderLineItemReturnInfo) MarshalJSON() ([]byte, error) {
  4993  	type NoMethod OrderLineItemReturnInfo
  4994  	raw := NoMethod(*s)
  4995  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  4996  }
  4997  
  4998  type OrderLineItemShippingDetails struct {
  4999  	// DeliverByDate: Required. The delivery by date, in ISO 8601 format.
  5000  	DeliverByDate string `json:"deliverByDate,omitempty"`
  5001  
  5002  	// Method: Required. Details of the shipping method.
  5003  	Method *OrderLineItemShippingDetailsMethod `json:"method,omitempty"`
  5004  
  5005  	// ShipByDate: Required. The ship by date, in ISO 8601 format.
  5006  	ShipByDate string `json:"shipByDate,omitempty"`
  5007  
  5008  	// Type: Type of shipment. Indicates whether `deliveryDetails` or
  5009  	// `pickupDetails` is applicable for this shipment. Acceptable values
  5010  	// are: - "delivery" - "pickup"
  5011  	Type string `json:"type,omitempty"`
  5012  
  5013  	// ForceSendFields is a list of field names (e.g. "DeliverByDate") to
  5014  	// unconditionally include in API requests. By default, fields with
  5015  	// empty or default values are omitted from API requests. However, any
  5016  	// non-pointer, non-interface field appearing in ForceSendFields will be
  5017  	// sent to the server regardless of whether the field is empty or not.
  5018  	// This may be used to include empty fields in Patch requests.
  5019  	ForceSendFields []string `json:"-"`
  5020  
  5021  	// NullFields is a list of field names (e.g. "DeliverByDate") to include
  5022  	// in API requests with the JSON null value. By default, fields with
  5023  	// empty values are omitted from API requests. However, any field with
  5024  	// an empty value appearing in NullFields will be sent to the server as
  5025  	// null. It is an error if a field in this list has a non-empty value.
  5026  	// This may be used to include null fields in Patch requests.
  5027  	NullFields []string `json:"-"`
  5028  }
  5029  
  5030  func (s *OrderLineItemShippingDetails) MarshalJSON() ([]byte, error) {
  5031  	type NoMethod OrderLineItemShippingDetails
  5032  	raw := NoMethod(*s)
  5033  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5034  }
  5035  
  5036  type OrderLineItemShippingDetailsMethod struct {
  5037  	// Carrier: The carrier for the shipping. Optional. See
  5038  	// `shipments[].carrier` for a list of acceptable values.
  5039  	Carrier string `json:"carrier,omitempty"`
  5040  
  5041  	// MaxDaysInTransit: Required. Maximum transit time.
  5042  	MaxDaysInTransit int64 `json:"maxDaysInTransit,omitempty"`
  5043  
  5044  	// MethodName: Required. The name of the shipping method.
  5045  	MethodName string `json:"methodName,omitempty"`
  5046  
  5047  	// MinDaysInTransit: Required. Minimum transit time.
  5048  	MinDaysInTransit int64 `json:"minDaysInTransit,omitempty"`
  5049  
  5050  	// ForceSendFields is a list of field names (e.g. "Carrier") to
  5051  	// unconditionally include in API requests. By default, fields with
  5052  	// empty or default values are omitted from API requests. However, any
  5053  	// non-pointer, non-interface field appearing in ForceSendFields will be
  5054  	// sent to the server regardless of whether the field is empty or not.
  5055  	// This may be used to include empty fields in Patch requests.
  5056  	ForceSendFields []string `json:"-"`
  5057  
  5058  	// NullFields is a list of field names (e.g. "Carrier") to include in
  5059  	// API requests with the JSON null value. By default, fields with empty
  5060  	// values are omitted from API requests. However, any field with an
  5061  	// empty value appearing in NullFields will be sent to the server as
  5062  	// null. It is an error if a field in this list has a non-empty value.
  5063  	// This may be used to include null fields in Patch requests.
  5064  	NullFields []string `json:"-"`
  5065  }
  5066  
  5067  func (s *OrderLineItemShippingDetailsMethod) MarshalJSON() ([]byte, error) {
  5068  	type NoMethod OrderLineItemShippingDetailsMethod
  5069  	raw := NoMethod(*s)
  5070  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5071  }
  5072  
  5073  type OrderMerchantProvidedAnnotation struct {
  5074  	// Key: Key for additional merchant provided (as key-value pairs)
  5075  	// annotation about the line item.
  5076  	Key string `json:"key,omitempty"`
  5077  
  5078  	// Value: Value for additional merchant provided (as key-value pairs)
  5079  	// annotation about the line item.
  5080  	Value string `json:"value,omitempty"`
  5081  
  5082  	// ForceSendFields is a list of field names (e.g. "Key") to
  5083  	// unconditionally include in API requests. By default, fields with
  5084  	// empty or default values are omitted from API requests. However, any
  5085  	// non-pointer, non-interface field appearing in ForceSendFields will be
  5086  	// sent to the server regardless of whether the field is empty or not.
  5087  	// This may be used to include empty fields in Patch requests.
  5088  	ForceSendFields []string `json:"-"`
  5089  
  5090  	// NullFields is a list of field names (e.g. "Key") to include in API
  5091  	// requests with the JSON null value. By default, fields with empty
  5092  	// values are omitted from API requests. However, any field with an
  5093  	// empty value appearing in NullFields will be sent to the server as
  5094  	// null. It is an error if a field in this list has a non-empty value.
  5095  	// This may be used to include null fields in Patch requests.
  5096  	NullFields []string `json:"-"`
  5097  }
  5098  
  5099  func (s *OrderMerchantProvidedAnnotation) MarshalJSON() ([]byte, error) {
  5100  	type NoMethod OrderMerchantProvidedAnnotation
  5101  	raw := NoMethod(*s)
  5102  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5103  }
  5104  
  5105  type OrderPaymentMethod struct {
  5106  	// BillingAddress: The billing address.
  5107  	BillingAddress *OrderAddress `json:"billingAddress,omitempty"`
  5108  
  5109  	// ExpirationMonth: The card expiration month (January = 1, February = 2
  5110  	// etc.).
  5111  	ExpirationMonth int64 `json:"expirationMonth,omitempty"`
  5112  
  5113  	// ExpirationYear: The card expiration year (4-digit, e.g. 2015).
  5114  	ExpirationYear int64 `json:"expirationYear,omitempty"`
  5115  
  5116  	// LastFourDigits: The last four digits of the card number.
  5117  	LastFourDigits string `json:"lastFourDigits,omitempty"`
  5118  
  5119  	// PhoneNumber: The billing phone number.
  5120  	PhoneNumber string `json:"phoneNumber,omitempty"`
  5121  
  5122  	// Type: The type of instrument. Acceptable values are: - "AMEX" -
  5123  	// "DISCOVER" - "JCB" - "MASTERCARD" - "UNIONPAY" - "VISA" -
  5124  	// ""
  5125  	Type string `json:"type,omitempty"`
  5126  
  5127  	// ForceSendFields is a list of field names (e.g. "BillingAddress") to
  5128  	// unconditionally include in API requests. By default, fields with
  5129  	// empty or default values are omitted from API requests. However, any
  5130  	// non-pointer, non-interface field appearing in ForceSendFields will be
  5131  	// sent to the server regardless of whether the field is empty or not.
  5132  	// This may be used to include empty fields in Patch requests.
  5133  	ForceSendFields []string `json:"-"`
  5134  
  5135  	// NullFields is a list of field names (e.g. "BillingAddress") to
  5136  	// include in API requests with the JSON null value. By default, fields
  5137  	// with empty values are omitted from API requests. However, any field
  5138  	// with an empty value appearing in NullFields will be sent to the
  5139  	// server as null. It is an error if a field in this list has a
  5140  	// non-empty value. This may be used to include null fields in Patch
  5141  	// requests.
  5142  	NullFields []string `json:"-"`
  5143  }
  5144  
  5145  func (s *OrderPaymentMethod) MarshalJSON() ([]byte, error) {
  5146  	type NoMethod OrderPaymentMethod
  5147  	raw := NoMethod(*s)
  5148  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5149  }
  5150  
  5151  type OrderPickupDetails struct {
  5152  	// Address: Address of the pickup location where the shipment should be
  5153  	// sent. Note that `recipientName` in the address is the name of the
  5154  	// business at the pickup location.
  5155  	Address *OrderAddress `json:"address,omitempty"`
  5156  
  5157  	// Collectors: Collectors authorized to pick up shipment from the pickup
  5158  	// location.
  5159  	Collectors []*OrderPickupDetailsCollector `json:"collectors,omitempty"`
  5160  
  5161  	// LocationId: ID of the pickup location.
  5162  	LocationId string `json:"locationId,omitempty"`
  5163  
  5164  	// ForceSendFields is a list of field names (e.g. "Address") to
  5165  	// unconditionally include in API requests. By default, fields with
  5166  	// empty or default values are omitted from API requests. However, any
  5167  	// non-pointer, non-interface field appearing in ForceSendFields will be
  5168  	// sent to the server regardless of whether the field is empty or not.
  5169  	// This may be used to include empty fields in Patch requests.
  5170  	ForceSendFields []string `json:"-"`
  5171  
  5172  	// NullFields is a list of field names (e.g. "Address") to include in
  5173  	// API requests with the JSON null value. By default, fields with empty
  5174  	// values are omitted from API requests. However, any field with an
  5175  	// empty value appearing in NullFields will be sent to the server as
  5176  	// null. It is an error if a field in this list has a non-empty value.
  5177  	// This may be used to include null fields in Patch requests.
  5178  	NullFields []string `json:"-"`
  5179  }
  5180  
  5181  func (s *OrderPickupDetails) MarshalJSON() ([]byte, error) {
  5182  	type NoMethod OrderPickupDetails
  5183  	raw := NoMethod(*s)
  5184  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5185  }
  5186  
  5187  type OrderPickupDetailsCollector struct {
  5188  	// Name: Name of the person picking up the shipment.
  5189  	Name string `json:"name,omitempty"`
  5190  
  5191  	// PhoneNumber: Phone number of the person picking up the shipment.
  5192  	PhoneNumber string `json:"phoneNumber,omitempty"`
  5193  
  5194  	// ForceSendFields is a list of field names (e.g. "Name") to
  5195  	// unconditionally include in API requests. By default, fields with
  5196  	// empty or default values are omitted from API requests. However, any
  5197  	// non-pointer, non-interface field appearing in ForceSendFields will be
  5198  	// sent to the server regardless of whether the field is empty or not.
  5199  	// This may be used to include empty fields in Patch requests.
  5200  	ForceSendFields []string `json:"-"`
  5201  
  5202  	// NullFields is a list of field names (e.g. "Name") to include in API
  5203  	// requests with the JSON null value. By default, fields with empty
  5204  	// values are omitted from API requests. However, any field with an
  5205  	// empty value appearing in NullFields will be sent to the server as
  5206  	// null. It is an error if a field in this list has a non-empty value.
  5207  	// This may be used to include null fields in Patch requests.
  5208  	NullFields []string `json:"-"`
  5209  }
  5210  
  5211  func (s *OrderPickupDetailsCollector) MarshalJSON() ([]byte, error) {
  5212  	type NoMethod OrderPickupDetailsCollector
  5213  	raw := NoMethod(*s)
  5214  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5215  }
  5216  
  5217  type OrderRefund struct {
  5218  	// Actor: The actor that created the refund. Acceptable values are: -
  5219  	// "customer" - "googleBot" - "googleCustomerService" -
  5220  	// "googlePayments" - "googleSabre" - "merchant"
  5221  	Actor string `json:"actor,omitempty"`
  5222  
  5223  	// Amount: The amount that is refunded.
  5224  	Amount *Price `json:"amount,omitempty"`
  5225  
  5226  	// CreationDate: Date on which the item has been created, in ISO 8601
  5227  	// format.
  5228  	CreationDate string `json:"creationDate,omitempty"`
  5229  
  5230  	// Reason: The reason for the refund. Acceptable values are: -
  5231  	// "adjustment" - "autoPostInternal" -
  5232  	// "autoPostInvalidBillingAddress" - "autoPostNoInventory" -
  5233  	// "autoPostPriceError" - "autoPostUndeliverableShippingAddress" -
  5234  	// "couponAbuse" - "courtesyAdjustment" - "customerCanceled" -
  5235  	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
  5236  	// - "customerSupportRequested" - "deliveredLateByCarrier" -
  5237  	// "deliveredTooLate" - "expiredItem" -
  5238  	// "failToPushOrderGoogleError" - "failToPushOrderMerchantError" -
  5239  	// "failToPushOrderMerchantFulfillmentError" -
  5240  	// "failToPushOrderToMerchant" -
  5241  	// "failToPushOrderToMerchantOutOfStock" - "feeAdjustment" -
  5242  	// "invalidCoupon" - "lateShipmentCredit" -
  5243  	// "malformedShippingAddress" - "merchantDidNotShipOnTime" -
  5244  	// "noInventory" - "orderTimeout" - "other" - "paymentAbuse" -
  5245  	// "paymentDeclined" - "priceAdjustment" - "priceError" -
  5246  	// "productArrivedDamaged" - "productNotAsDescribed" -
  5247  	// "promoReallocation" - "qualityNotAsExpected" -
  5248  	// "returnRefundAbuse" - "shippingCostAdjustment" -
  5249  	// "shippingPriceError" - "taxAdjustment" - "taxError" -
  5250  	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
  5251  	// "wrongProductShipped"
  5252  	Reason string `json:"reason,omitempty"`
  5253  
  5254  	// ReasonText: The explanation of the reason.
  5255  	ReasonText string `json:"reasonText,omitempty"`
  5256  
  5257  	// ForceSendFields is a list of field names (e.g. "Actor") to
  5258  	// unconditionally include in API requests. By default, fields with
  5259  	// empty or default values are omitted from API requests. However, any
  5260  	// non-pointer, non-interface field appearing in ForceSendFields will be
  5261  	// sent to the server regardless of whether the field is empty or not.
  5262  	// This may be used to include empty fields in Patch requests.
  5263  	ForceSendFields []string `json:"-"`
  5264  
  5265  	// NullFields is a list of field names (e.g. "Actor") to include in API
  5266  	// requests with the JSON null value. By default, fields with empty
  5267  	// values are omitted from API requests. However, any field with an
  5268  	// empty value appearing in NullFields will be sent to the server as
  5269  	// null. It is an error if a field in this list has a non-empty value.
  5270  	// This may be used to include null fields in Patch requests.
  5271  	NullFields []string `json:"-"`
  5272  }
  5273  
  5274  func (s *OrderRefund) MarshalJSON() ([]byte, error) {
  5275  	type NoMethod OrderRefund
  5276  	raw := NoMethod(*s)
  5277  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5278  }
  5279  
  5280  // OrderReportDisbursement: Order disbursement. All methods require the
  5281  // payment analyst role.
  5282  type OrderReportDisbursement struct {
  5283  	// DisbursementAmount: The disbursement amount.
  5284  	DisbursementAmount *Price `json:"disbursementAmount,omitempty"`
  5285  
  5286  	// DisbursementCreationDate: The disbursement date, in ISO 8601 format.
  5287  	DisbursementCreationDate string `json:"disbursementCreationDate,omitempty"`
  5288  
  5289  	// DisbursementDate: The date the disbursement was initiated, in ISO
  5290  	// 8601 format.
  5291  	DisbursementDate string `json:"disbursementDate,omitempty"`
  5292  
  5293  	// DisbursementId: The ID of the disbursement.
  5294  	DisbursementId string `json:"disbursementId,omitempty"`
  5295  
  5296  	// MerchantId: The ID of the managing account.
  5297  	MerchantId uint64 `json:"merchantId,omitempty,string"`
  5298  
  5299  	// ForceSendFields is a list of field names (e.g. "DisbursementAmount")
  5300  	// to unconditionally include in API requests. By default, fields with
  5301  	// empty or default values are omitted from API requests. However, any
  5302  	// non-pointer, non-interface field appearing in ForceSendFields will be
  5303  	// sent to the server regardless of whether the field is empty or not.
  5304  	// This may be used to include empty fields in Patch requests.
  5305  	ForceSendFields []string `json:"-"`
  5306  
  5307  	// NullFields is a list of field names (e.g. "DisbursementAmount") to
  5308  	// include in API requests with the JSON null value. By default, fields
  5309  	// with empty values are omitted from API requests. However, any field
  5310  	// with an empty value appearing in NullFields will be sent to the
  5311  	// server as null. It is an error if a field in this list has a
  5312  	// non-empty value. This may be used to include null fields in Patch
  5313  	// requests.
  5314  	NullFields []string `json:"-"`
  5315  }
  5316  
  5317  func (s *OrderReportDisbursement) MarshalJSON() ([]byte, error) {
  5318  	type NoMethod OrderReportDisbursement
  5319  	raw := NoMethod(*s)
  5320  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5321  }
  5322  
  5323  type OrderReportTransaction struct {
  5324  	// DisbursementAmount: The disbursement amount.
  5325  	DisbursementAmount *Price `json:"disbursementAmount,omitempty"`
  5326  
  5327  	// DisbursementCreationDate: The date the disbursement was created, in
  5328  	// ISO 8601 format.
  5329  	DisbursementCreationDate string `json:"disbursementCreationDate,omitempty"`
  5330  
  5331  	// DisbursementDate: The date the disbursement was initiated, in ISO
  5332  	// 8601 format.
  5333  	DisbursementDate string `json:"disbursementDate,omitempty"`
  5334  
  5335  	// DisbursementId: The ID of the disbursement.
  5336  	DisbursementId string `json:"disbursementId,omitempty"`
  5337  
  5338  	// MerchantId: The ID of the managing account.
  5339  	MerchantId uint64 `json:"merchantId,omitempty,string"`
  5340  
  5341  	// MerchantOrderId: Merchant-provided ID of the order.
  5342  	MerchantOrderId string `json:"merchantOrderId,omitempty"`
  5343  
  5344  	// OrderId: The ID of the order.
  5345  	OrderId string `json:"orderId,omitempty"`
  5346  
  5347  	// ProductAmount: Total amount for the items.
  5348  	ProductAmount *Amount `json:"productAmount,omitempty"`
  5349  
  5350  	// ProductAmountWithRemittedTax: Total amount with remitted tax for the
  5351  	// items.
  5352  	ProductAmountWithRemittedTax *ProductAmount `json:"productAmountWithRemittedTax,omitempty"`
  5353  
  5354  	// TransactionDate: The date of the transaction, in ISO 8601 format.
  5355  	TransactionDate string `json:"transactionDate,omitempty"`
  5356  
  5357  	// ForceSendFields is a list of field names (e.g. "DisbursementAmount")
  5358  	// to unconditionally include in API requests. By default, fields with
  5359  	// empty or default values are omitted from API requests. However, any
  5360  	// non-pointer, non-interface field appearing in ForceSendFields will be
  5361  	// sent to the server regardless of whether the field is empty or not.
  5362  	// This may be used to include empty fields in Patch requests.
  5363  	ForceSendFields []string `json:"-"`
  5364  
  5365  	// NullFields is a list of field names (e.g. "DisbursementAmount") to
  5366  	// include in API requests with the JSON null value. By default, fields
  5367  	// with empty values are omitted from API requests. However, any field
  5368  	// with an empty value appearing in NullFields will be sent to the
  5369  	// server as null. It is an error if a field in this list has a
  5370  	// non-empty value. This may be used to include null fields in Patch
  5371  	// requests.
  5372  	NullFields []string `json:"-"`
  5373  }
  5374  
  5375  func (s *OrderReportTransaction) MarshalJSON() ([]byte, error) {
  5376  	type NoMethod OrderReportTransaction
  5377  	raw := NoMethod(*s)
  5378  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5379  }
  5380  
  5381  type OrderReturn struct {
  5382  	// Actor: The actor that created the refund. Acceptable values are: -
  5383  	// "customer" - "googleBot" - "googleCustomerService" -
  5384  	// "googlePayments" - "googleSabre" - "merchant"
  5385  	Actor string `json:"actor,omitempty"`
  5386  
  5387  	// CreationDate: Date on which the item has been created, in ISO 8601
  5388  	// format.
  5389  	CreationDate string `json:"creationDate,omitempty"`
  5390  
  5391  	// Quantity: Quantity that is returned.
  5392  	Quantity int64 `json:"quantity,omitempty"`
  5393  
  5394  	// Reason: The reason for the return. Acceptable values are: -
  5395  	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
  5396  	// - "deliveredTooLate" - "expiredItem" - "invalidCoupon" -
  5397  	// "malformedShippingAddress" - "other" - "productArrivedDamaged"
  5398  	// - "productNotAsDescribed" - "qualityNotAsExpected" -
  5399  	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
  5400  	// "wrongProductShipped"
  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 or default values are omitted from API requests. However, any
  5409  	// non-pointer, non-interface field appearing in ForceSendFields will be
  5410  	// sent to the server regardless of whether the field is empty or not.
  5411  	// This may be 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  
  5423  func (s *OrderReturn) MarshalJSON() ([]byte, error) {
  5424  	type NoMethod OrderReturn
  5425  	raw := NoMethod(*s)
  5426  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5427  }
  5428  
  5429  type OrderShipment struct {
  5430  	// Carrier: The carrier handling the shipment. For supported carriers,
  5431  	// Google includes the carrier name and tracking URL in emails to
  5432  	// customers. For select supported carriers, Google also automatically
  5433  	// updates the shipment status based on the provided shipment ID.
  5434  	// *Note:* You can also use unsupported carriers, but emails to
  5435  	// customers will not include the carrier name or tracking URL, and
  5436  	// there will be no automatic order status updates. Supported carriers
  5437  	// for US are: - "ups" (United Parcel Service) *automatic status
  5438  	// updates* - "usps" (United States Postal Service) *automatic status
  5439  	// updates* - "fedex" (FedEx) *automatic status updates * - "dhl"
  5440  	// (DHL eCommerce) *automatic status updates* (US only) - "ontrac"
  5441  	// (OnTrac) *automatic status updates * - "dhl express" (DHL Express)
  5442  	// - "deliv" (Deliv) - "dynamex" (TForce) - "lasership"
  5443  	// (LaserShip) - "mpx" (Military Parcel Xpress) - "uds" (United
  5444  	// Delivery Service) - "efw" (Estes Forwarding Worldwide) - "jd
  5445  	// logistics" (JD Logistics) - "yunexpress" (YunExpress) - "china
  5446  	// post" (China Post) - "china ems" (China Post Express Mail Service)
  5447  	// - "singapore post" (Singapore Post) - "pos malaysia" (Pos
  5448  	// Malaysia) - "postnl" (PostNL) - "ptt" (PTT Turkish Post) -
  5449  	// "eub" (ePacket) - "chukou1" (Chukou1 Logistics) - "bestex"
  5450  	// (Best Express) - "canada post" (Canada Post) - "purolator"
  5451  	// (Purolator) - "canpar" (Canpar) - "india post" (India Post) -
  5452  	// "blue dart" (Blue Dart) - "delhivery" (Delhivery) - "dtdc"
  5453  	// (DTDC) - "tpc india" (TPC India) Supported carriers for FR are: -
  5454  	// "la poste" (La Poste) *automatic status updates * - "colissimo"
  5455  	// (Colissimo by La Poste) *automatic status updates* - "ups" (United
  5456  	// Parcel Service) *automatic status updates * - "chronopost"
  5457  	// (Chronopost by La Poste) - "gls" (General Logistics Systems France)
  5458  	// - "dpd" (DPD Group by GeoPost) - "bpost" (Belgian Post Group) -
  5459  	// "colis prive" (Colis Privé) - "boxtal" (Boxtal) - "geodis"
  5460  	// (GEODIS) - "tnt" (TNT) - "db schenker" (DB Schenker) - "aramex"
  5461  	// (Aramex)
  5462  	Carrier string `json:"carrier,omitempty"`
  5463  
  5464  	// CreationDate: Date on which the shipment has been created, in ISO
  5465  	// 8601 format.
  5466  	CreationDate string `json:"creationDate,omitempty"`
  5467  
  5468  	// DeliveryDate: Date on which the shipment has been delivered, in ISO
  5469  	// 8601 format. Present only if `status` is `delivered`
  5470  	DeliveryDate string `json:"deliveryDate,omitempty"`
  5471  
  5472  	// Id: The ID of the shipment.
  5473  	Id string `json:"id,omitempty"`
  5474  
  5475  	// LineItems: The line items that are shipped.
  5476  	LineItems []*OrderShipmentLineItemShipment `json:"lineItems,omitempty"`
  5477  
  5478  	// ScheduledDeliveryDetails: Delivery details of the shipment if
  5479  	// scheduling is needed.
  5480  	ScheduledDeliveryDetails *OrderShipmentScheduledDeliveryDetails `json:"scheduledDeliveryDetails,omitempty"`
  5481  
  5482  	// Status: The status of the shipment. Acceptable values are: -
  5483  	// "delivered" - "readyForPickup" - "shipped" - "undeliverable"
  5484  	Status string `json:"status,omitempty"`
  5485  
  5486  	// TrackingId: The tracking ID for the shipment.
  5487  	TrackingId string `json:"trackingId,omitempty"`
  5488  
  5489  	// ForceSendFields is a list of field names (e.g. "Carrier") to
  5490  	// unconditionally include in API requests. By default, fields with
  5491  	// empty or default values are omitted from API requests. However, any
  5492  	// non-pointer, non-interface field appearing in ForceSendFields will be
  5493  	// sent to the server regardless of whether the field is empty or not.
  5494  	// This may be used to include empty fields in Patch requests.
  5495  	ForceSendFields []string `json:"-"`
  5496  
  5497  	// NullFields is a list of field names (e.g. "Carrier") to include in
  5498  	// API requests with the JSON null value. By default, fields with empty
  5499  	// values are omitted from API requests. However, any field with an
  5500  	// empty value appearing in NullFields will be sent to the server as
  5501  	// null. It is an error if a field in this list has a non-empty value.
  5502  	// This may be used to include null fields in Patch requests.
  5503  	NullFields []string `json:"-"`
  5504  }
  5505  
  5506  func (s *OrderShipment) MarshalJSON() ([]byte, error) {
  5507  	type NoMethod OrderShipment
  5508  	raw := NoMethod(*s)
  5509  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5510  }
  5511  
  5512  type OrderShipmentLineItemShipment struct {
  5513  	// LineItemId: The ID of the line item that is shipped. This value is
  5514  	// assigned by Google when an order is created. Either lineItemId or
  5515  	// productId is required.
  5516  	LineItemId string `json:"lineItemId,omitempty"`
  5517  
  5518  	// ProductId: The ID of the product to ship. This is the REST ID used in
  5519  	// the products service. Either lineItemId or productId is required.
  5520  	ProductId string `json:"productId,omitempty"`
  5521  
  5522  	// Quantity: The quantity that is shipped.
  5523  	Quantity int64 `json:"quantity,omitempty"`
  5524  
  5525  	// ForceSendFields is a list of field names (e.g. "LineItemId") to
  5526  	// unconditionally include in API requests. By default, fields with
  5527  	// empty or default values are omitted from API requests. However, any
  5528  	// non-pointer, non-interface field appearing in ForceSendFields will be
  5529  	// sent to the server regardless of whether the field is empty or not.
  5530  	// This may be used to include empty fields in Patch requests.
  5531  	ForceSendFields []string `json:"-"`
  5532  
  5533  	// NullFields is a list of field names (e.g. "LineItemId") to include in
  5534  	// API requests with the JSON null value. By default, fields with empty
  5535  	// values are omitted from API requests. However, any field with an
  5536  	// empty value appearing in NullFields will be sent to the server as
  5537  	// null. It is an error if a field in this list has a non-empty value.
  5538  	// This may be used to include null fields in Patch requests.
  5539  	NullFields []string `json:"-"`
  5540  }
  5541  
  5542  func (s *OrderShipmentLineItemShipment) MarshalJSON() ([]byte, error) {
  5543  	type NoMethod OrderShipmentLineItemShipment
  5544  	raw := NoMethod(*s)
  5545  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5546  }
  5547  
  5548  type OrderShipmentScheduledDeliveryDetails struct {
  5549  	// CarrierPhoneNumber: The phone number of the carrier fulfilling the
  5550  	// delivery. The phone number is formatted as the international notation
  5551  	// in ITU-T Recommendation E.123 (e.g., "+41 44 668 1800").
  5552  	CarrierPhoneNumber string `json:"carrierPhoneNumber,omitempty"`
  5553  
  5554  	// ScheduledDate: The date a shipment is scheduled for delivery, in ISO
  5555  	// 8601 format.
  5556  	ScheduledDate string `json:"scheduledDate,omitempty"`
  5557  
  5558  	// ForceSendFields is a list of field names (e.g. "CarrierPhoneNumber")
  5559  	// to unconditionally include in API requests. By default, fields with
  5560  	// empty or default values are omitted from API requests. However, any
  5561  	// non-pointer, non-interface field appearing in ForceSendFields will be
  5562  	// sent to the server regardless of whether the field is empty or not.
  5563  	// This may be used to include empty fields in Patch requests.
  5564  	ForceSendFields []string `json:"-"`
  5565  
  5566  	// NullFields is a list of field names (e.g. "CarrierPhoneNumber") to
  5567  	// include in API requests with the JSON null value. By default, fields
  5568  	// with empty values are omitted from API requests. However, any field
  5569  	// with an empty value appearing in NullFields will be sent to the
  5570  	// server as null. It is an error if a field in this list has a
  5571  	// non-empty value. This may be used to include null fields in Patch
  5572  	// requests.
  5573  	NullFields []string `json:"-"`
  5574  }
  5575  
  5576  func (s *OrderShipmentScheduledDeliveryDetails) MarshalJSON() ([]byte, error) {
  5577  	type NoMethod OrderShipmentScheduledDeliveryDetails
  5578  	raw := NoMethod(*s)
  5579  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5580  }
  5581  
  5582  type OrderinvoicesCreateChargeInvoiceRequest struct {
  5583  	// InvoiceId: [required] The ID of the invoice.
  5584  	InvoiceId string `json:"invoiceId,omitempty"`
  5585  
  5586  	// InvoiceSummary: [required] Invoice summary.
  5587  	InvoiceSummary *InvoiceSummary `json:"invoiceSummary,omitempty"`
  5588  
  5589  	// LineItemInvoices: [required] Invoice details per line item.
  5590  	LineItemInvoices []*ShipmentInvoiceLineItemInvoice `json:"lineItemInvoices,omitempty"`
  5591  
  5592  	// OperationId: [required] The ID of the operation, unique across all
  5593  	// operations for a given order.
  5594  	OperationId string `json:"operationId,omitempty"`
  5595  
  5596  	// ShipmentGroupId: [required] ID of the shipment group. It is assigned
  5597  	// by the merchant in the `shipLineItems` method and is used to group
  5598  	// multiple line items that have the same kind of shipping charges.
  5599  	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
  5600  
  5601  	// ForceSendFields is a list of field names (e.g. "InvoiceId") to
  5602  	// unconditionally include in API requests. By default, fields with
  5603  	// empty or default values are omitted from API requests. However, any
  5604  	// non-pointer, non-interface field appearing in ForceSendFields will be
  5605  	// sent to the server regardless of whether the field is empty or not.
  5606  	// This may be used to include empty fields in Patch requests.
  5607  	ForceSendFields []string `json:"-"`
  5608  
  5609  	// NullFields is a list of field names (e.g. "InvoiceId") to include in
  5610  	// API requests with the JSON null value. By default, fields with empty
  5611  	// values are omitted from API requests. However, any field with an
  5612  	// empty value appearing in NullFields will be sent to the server as
  5613  	// null. It is an error if a field in this list has a non-empty value.
  5614  	// This may be used to include null fields in Patch requests.
  5615  	NullFields []string `json:"-"`
  5616  }
  5617  
  5618  func (s *OrderinvoicesCreateChargeInvoiceRequest) MarshalJSON() ([]byte, error) {
  5619  	type NoMethod OrderinvoicesCreateChargeInvoiceRequest
  5620  	raw := NoMethod(*s)
  5621  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5622  }
  5623  
  5624  type OrderinvoicesCreateChargeInvoiceResponse struct {
  5625  	// ExecutionStatus: The status of the execution. Acceptable values are:
  5626  	// - "duplicate" - "executed"
  5627  	ExecutionStatus string `json:"executionStatus,omitempty"`
  5628  
  5629  	// Kind: Identifies what kind of resource this is. Value: the fixed
  5630  	// string "content#orderinvoicesCreateChargeInvoiceResponse".
  5631  	Kind string `json:"kind,omitempty"`
  5632  
  5633  	// ServerResponse contains the HTTP response code and headers from the
  5634  	// server.
  5635  	googleapi.ServerResponse `json:"-"`
  5636  
  5637  	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
  5638  	// unconditionally include in API requests. By default, fields with
  5639  	// empty or default values are omitted from API requests. However, any
  5640  	// non-pointer, non-interface field appearing in ForceSendFields will be
  5641  	// sent to the server regardless of whether the field is empty or not.
  5642  	// This may be used to include empty fields in Patch requests.
  5643  	ForceSendFields []string `json:"-"`
  5644  
  5645  	// NullFields is a list of field names (e.g. "ExecutionStatus") to
  5646  	// include in API requests with the JSON null value. By default, fields
  5647  	// with empty values are omitted from API requests. However, any field
  5648  	// with an empty value appearing in NullFields will be sent to the
  5649  	// server as null. It is an error if a field in this list has a
  5650  	// non-empty value. This may be used to include null fields in Patch
  5651  	// requests.
  5652  	NullFields []string `json:"-"`
  5653  }
  5654  
  5655  func (s *OrderinvoicesCreateChargeInvoiceResponse) MarshalJSON() ([]byte, error) {
  5656  	type NoMethod OrderinvoicesCreateChargeInvoiceResponse
  5657  	raw := NoMethod(*s)
  5658  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5659  }
  5660  
  5661  type OrderinvoicesCreateRefundInvoiceRequest struct {
  5662  	// InvoiceId: [required] The ID of the invoice.
  5663  	InvoiceId string `json:"invoiceId,omitempty"`
  5664  
  5665  	// OperationId: [required] The ID of the operation, unique across all
  5666  	// operations for a given order.
  5667  	OperationId string `json:"operationId,omitempty"`
  5668  
  5669  	// RefundOnlyOption: Option to create a refund-only invoice. Exactly one
  5670  	// of `refundOnlyOption` or `returnOption` must be provided.
  5671  	RefundOnlyOption *OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceRefundOption `json:"refundOnlyOption,omitempty"`
  5672  
  5673  	// ReturnOption: Option to create an invoice for a refund and mark all
  5674  	// items within the invoice as returned. Exactly one of
  5675  	// `refundOnlyOption` or `returnOption` must be provided.
  5676  	ReturnOption *OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceReturnOption `json:"returnOption,omitempty"`
  5677  
  5678  	// ShipmentInvoices: Invoice details for different shipment groups.
  5679  	ShipmentInvoices []*ShipmentInvoice `json:"shipmentInvoices,omitempty"`
  5680  
  5681  	// ForceSendFields is a list of field names (e.g. "InvoiceId") to
  5682  	// unconditionally include in API requests. By default, fields with
  5683  	// empty or default values are omitted from API requests. However, any
  5684  	// non-pointer, non-interface field appearing in ForceSendFields will be
  5685  	// sent to the server regardless of whether the field is empty or not.
  5686  	// This may be used to include empty fields in Patch requests.
  5687  	ForceSendFields []string `json:"-"`
  5688  
  5689  	// NullFields is a list of field names (e.g. "InvoiceId") to include in
  5690  	// API requests with the JSON null value. By default, fields with empty
  5691  	// values are omitted from API requests. However, any field with an
  5692  	// empty value appearing in NullFields will be sent to the server as
  5693  	// null. It is an error if a field in this list has a non-empty value.
  5694  	// This may be used to include null fields in Patch requests.
  5695  	NullFields []string `json:"-"`
  5696  }
  5697  
  5698  func (s *OrderinvoicesCreateRefundInvoiceRequest) MarshalJSON() ([]byte, error) {
  5699  	type NoMethod OrderinvoicesCreateRefundInvoiceRequest
  5700  	raw := NoMethod(*s)
  5701  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5702  }
  5703  
  5704  type OrderinvoicesCreateRefundInvoiceResponse struct {
  5705  	// ExecutionStatus: The status of the execution. Acceptable values are:
  5706  	// - "duplicate" - "executed"
  5707  	ExecutionStatus string `json:"executionStatus,omitempty"`
  5708  
  5709  	// Kind: Identifies what kind of resource this is. Value: the fixed
  5710  	// string "content#orderinvoicesCreateRefundInvoiceResponse".
  5711  	Kind string `json:"kind,omitempty"`
  5712  
  5713  	// ServerResponse contains the HTTP response code and headers from the
  5714  	// server.
  5715  	googleapi.ServerResponse `json:"-"`
  5716  
  5717  	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
  5718  	// unconditionally include in API requests. By default, fields with
  5719  	// empty or default values are omitted from API requests. However, any
  5720  	// non-pointer, non-interface field appearing in ForceSendFields will be
  5721  	// sent to the server regardless of whether the field is empty or not.
  5722  	// This may be used to include empty fields in Patch requests.
  5723  	ForceSendFields []string `json:"-"`
  5724  
  5725  	// NullFields is a list of field names (e.g. "ExecutionStatus") to
  5726  	// include in API requests with the JSON null value. By default, fields
  5727  	// with empty values are omitted from API requests. However, any field
  5728  	// with an empty value appearing in NullFields will be sent to the
  5729  	// server as null. It is an error if a field in this list has a
  5730  	// non-empty value. This may be used to include null fields in Patch
  5731  	// requests.
  5732  	NullFields []string `json:"-"`
  5733  }
  5734  
  5735  func (s *OrderinvoicesCreateRefundInvoiceResponse) MarshalJSON() ([]byte, error) {
  5736  	type NoMethod OrderinvoicesCreateRefundInvoiceResponse
  5737  	raw := NoMethod(*s)
  5738  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5739  }
  5740  
  5741  type OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceRefundOption struct {
  5742  	// Description: Optional description of the refund reason.
  5743  	Description string `json:"description,omitempty"`
  5744  
  5745  	// Reason: [required] Reason for the refund. Acceptable values are: -
  5746  	// "adjustment" - "autoPostInternal" -
  5747  	// "autoPostInvalidBillingAddress" - "autoPostNoInventory" -
  5748  	// "autoPostPriceError" - "autoPostUndeliverableShippingAddress" -
  5749  	// "couponAbuse" - "courtesyAdjustment" - "customerCanceled" -
  5750  	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
  5751  	// - "customerSupportRequested" - "deliveredLateByCarrier" -
  5752  	// "deliveredTooLate" - "expiredItem" -
  5753  	// "failToPushOrderGoogleError" - "failToPushOrderMerchantError" -
  5754  	// "failToPushOrderMerchantFulfillmentError" -
  5755  	// "failToPushOrderToMerchant" -
  5756  	// "failToPushOrderToMerchantOutOfStock" - "feeAdjustment" -
  5757  	// "invalidCoupon" - "lateShipmentCredit" -
  5758  	// "malformedShippingAddress" - "merchantDidNotShipOnTime" -
  5759  	// "noInventory" - "orderTimeout" - "other" - "paymentAbuse" -
  5760  	// "paymentDeclined" - "priceAdjustment" - "priceError" -
  5761  	// "productArrivedDamaged" - "productNotAsDescribed" -
  5762  	// "promoReallocation" - "qualityNotAsExpected" -
  5763  	// "returnRefundAbuse" - "shippingCostAdjustment" -
  5764  	// "shippingPriceError" - "taxAdjustment" - "taxError" -
  5765  	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
  5766  	// "wrongProductShipped"
  5767  	Reason string `json:"reason,omitempty"`
  5768  
  5769  	// ForceSendFields is a list of field names (e.g. "Description") to
  5770  	// unconditionally include in API requests. By default, fields with
  5771  	// empty or default values are omitted from API requests. However, any
  5772  	// non-pointer, non-interface field appearing in ForceSendFields will be
  5773  	// sent to the server regardless of whether the field is empty or not.
  5774  	// This may be used to include empty fields in Patch requests.
  5775  	ForceSendFields []string `json:"-"`
  5776  
  5777  	// NullFields is a list of field names (e.g. "Description") to include
  5778  	// in API requests with the JSON null value. By default, fields with
  5779  	// empty values are omitted from API requests. However, any field with
  5780  	// an empty value appearing in NullFields will be sent to the server as
  5781  	// null. It is an error if a field in this list has a non-empty value.
  5782  	// This may be used to include null fields in Patch requests.
  5783  	NullFields []string `json:"-"`
  5784  }
  5785  
  5786  func (s *OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceRefundOption) MarshalJSON() ([]byte, error) {
  5787  	type NoMethod OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceRefundOption
  5788  	raw := NoMethod(*s)
  5789  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5790  }
  5791  
  5792  type OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceReturnOption struct {
  5793  	// Description: Optional description of the return reason.
  5794  	Description string `json:"description,omitempty"`
  5795  
  5796  	// Reason: [required] Reason for the return. Acceptable values are: -
  5797  	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
  5798  	// - "deliveredTooLate" - "expiredItem" - "invalidCoupon" -
  5799  	// "malformedShippingAddress" - "other" - "productArrivedDamaged"
  5800  	// - "productNotAsDescribed" - "qualityNotAsExpected" -
  5801  	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
  5802  	// "wrongProductShipped"
  5803  	Reason string `json:"reason,omitempty"`
  5804  
  5805  	// ForceSendFields is a list of field names (e.g. "Description") to
  5806  	// unconditionally include in API requests. By default, fields with
  5807  	// empty or default values are omitted from API requests. However, any
  5808  	// non-pointer, non-interface field appearing in ForceSendFields will be
  5809  	// sent to the server regardless of whether the field is empty or not.
  5810  	// This may be used to include empty fields in Patch requests.
  5811  	ForceSendFields []string `json:"-"`
  5812  
  5813  	// NullFields is a list of field names (e.g. "Description") to include
  5814  	// in API requests with the JSON null value. By default, fields with
  5815  	// empty values are omitted from API requests. However, any field with
  5816  	// an empty value appearing in NullFields will be sent to the server as
  5817  	// null. It is an error if a field in this list has a non-empty value.
  5818  	// This may be used to include null fields in Patch requests.
  5819  	NullFields []string `json:"-"`
  5820  }
  5821  
  5822  func (s *OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceReturnOption) MarshalJSON() ([]byte, error) {
  5823  	type NoMethod OrderinvoicesCustomBatchRequestEntryCreateRefundInvoiceReturnOption
  5824  	raw := NoMethod(*s)
  5825  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5826  }
  5827  
  5828  type OrderreportsListDisbursementsResponse struct {
  5829  	// Disbursements: The list of disbursements.
  5830  	Disbursements []*OrderReportDisbursement `json:"disbursements,omitempty"`
  5831  
  5832  	// Kind: Identifies what kind of resource this is. Value: the fixed
  5833  	// string "content#orderreportsListDisbursementsResponse".
  5834  	Kind string `json:"kind,omitempty"`
  5835  
  5836  	// NextPageToken: The token for the retrieval of the next page of
  5837  	// disbursements.
  5838  	NextPageToken string `json:"nextPageToken,omitempty"`
  5839  
  5840  	// ServerResponse contains the HTTP response code and headers from the
  5841  	// server.
  5842  	googleapi.ServerResponse `json:"-"`
  5843  
  5844  	// ForceSendFields is a list of field names (e.g. "Disbursements") to
  5845  	// unconditionally include in API requests. By default, fields with
  5846  	// empty or default values are omitted from API requests. However, any
  5847  	// non-pointer, non-interface field appearing in ForceSendFields will be
  5848  	// sent to the server regardless of whether the field is empty or not.
  5849  	// This may be used to include empty fields in Patch requests.
  5850  	ForceSendFields []string `json:"-"`
  5851  
  5852  	// NullFields is a list of field names (e.g. "Disbursements") to include
  5853  	// in API requests with the JSON null value. By default, fields with
  5854  	// empty values are omitted from API requests. However, any field with
  5855  	// an empty value appearing in NullFields will be sent to the server as
  5856  	// null. It is an error if a field in this list has a non-empty value.
  5857  	// This may be used to include null fields in Patch requests.
  5858  	NullFields []string `json:"-"`
  5859  }
  5860  
  5861  func (s *OrderreportsListDisbursementsResponse) MarshalJSON() ([]byte, error) {
  5862  	type NoMethod OrderreportsListDisbursementsResponse
  5863  	raw := NoMethod(*s)
  5864  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5865  }
  5866  
  5867  type OrderreportsListTransactionsResponse struct {
  5868  	// Kind: Identifies what kind of resource this is. Value: the fixed
  5869  	// string "content#orderreportsListTransactionsResponse".
  5870  	Kind string `json:"kind,omitempty"`
  5871  
  5872  	// NextPageToken: The token for the retrieval of the next page of
  5873  	// transactions.
  5874  	NextPageToken string `json:"nextPageToken,omitempty"`
  5875  
  5876  	// Transactions: The list of transactions.
  5877  	Transactions []*OrderReportTransaction `json:"transactions,omitempty"`
  5878  
  5879  	// ServerResponse contains the HTTP response code and headers from the
  5880  	// server.
  5881  	googleapi.ServerResponse `json:"-"`
  5882  
  5883  	// ForceSendFields is a list of field names (e.g. "Kind") to
  5884  	// unconditionally include in API requests. By default, fields with
  5885  	// empty or default values are omitted from API requests. However, any
  5886  	// non-pointer, non-interface field appearing in ForceSendFields will be
  5887  	// sent to the server regardless of whether the field is empty or not.
  5888  	// This may be used to include empty fields in Patch requests.
  5889  	ForceSendFields []string `json:"-"`
  5890  
  5891  	// NullFields is a list of field names (e.g. "Kind") to include in API
  5892  	// requests with the JSON null value. By default, fields with empty
  5893  	// values are omitted from API requests. However, any field with an
  5894  	// empty value appearing in NullFields will be sent to the server as
  5895  	// null. It is an error if a field in this list has a non-empty value.
  5896  	// This may be used to include null fields in Patch requests.
  5897  	NullFields []string `json:"-"`
  5898  }
  5899  
  5900  func (s *OrderreportsListTransactionsResponse) MarshalJSON() ([]byte, error) {
  5901  	type NoMethod OrderreportsListTransactionsResponse
  5902  	raw := NoMethod(*s)
  5903  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5904  }
  5905  
  5906  type OrderreturnsListResponse struct {
  5907  	// Kind: Identifies what kind of resource this is. Value: the fixed
  5908  	// string "content#orderreturnsListResponse".
  5909  	Kind string `json:"kind,omitempty"`
  5910  
  5911  	// NextPageToken: The token for the retrieval of the next page of
  5912  	// returns.
  5913  	NextPageToken string `json:"nextPageToken,omitempty"`
  5914  
  5915  	Resources []*MerchantOrderReturn `json:"resources,omitempty"`
  5916  
  5917  	// ServerResponse contains the HTTP response code and headers from the
  5918  	// server.
  5919  	googleapi.ServerResponse `json:"-"`
  5920  
  5921  	// ForceSendFields is a list of field names (e.g. "Kind") to
  5922  	// unconditionally include in API requests. By default, fields with
  5923  	// empty or default values are omitted from API requests. However, any
  5924  	// non-pointer, non-interface field appearing in ForceSendFields will be
  5925  	// sent to the server regardless of whether the field is empty or not.
  5926  	// This may be used to include empty fields in Patch requests.
  5927  	ForceSendFields []string `json:"-"`
  5928  
  5929  	// NullFields is a list of field names (e.g. "Kind") to include in API
  5930  	// requests with the JSON null value. By default, fields with empty
  5931  	// values are omitted from API requests. However, any field with an
  5932  	// empty value appearing in NullFields will be sent to the server as
  5933  	// null. It is an error if a field in this list has a non-empty value.
  5934  	// This may be used to include null fields in Patch requests.
  5935  	NullFields []string `json:"-"`
  5936  }
  5937  
  5938  func (s *OrderreturnsListResponse) MarshalJSON() ([]byte, error) {
  5939  	type NoMethod OrderreturnsListResponse
  5940  	raw := NoMethod(*s)
  5941  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5942  }
  5943  
  5944  type OrdersAcknowledgeRequest struct {
  5945  	// OperationId: The ID of the operation. Unique across all operations
  5946  	// for a given order.
  5947  	OperationId string `json:"operationId,omitempty"`
  5948  
  5949  	// ForceSendFields is a list of field names (e.g. "OperationId") to
  5950  	// unconditionally include in API requests. By default, fields with
  5951  	// empty or default values are omitted from API requests. However, any
  5952  	// non-pointer, non-interface field appearing in ForceSendFields will be
  5953  	// sent to the server regardless of whether the field is empty or not.
  5954  	// This may be used to include empty fields in Patch requests.
  5955  	ForceSendFields []string `json:"-"`
  5956  
  5957  	// NullFields is a list of field names (e.g. "OperationId") to include
  5958  	// in API requests with the JSON null value. By default, fields with
  5959  	// empty values are omitted from API requests. However, any field with
  5960  	// an empty value appearing in NullFields will be sent to the server as
  5961  	// null. It is an error if a field in this list has a non-empty value.
  5962  	// This may be used to include null fields in Patch requests.
  5963  	NullFields []string `json:"-"`
  5964  }
  5965  
  5966  func (s *OrdersAcknowledgeRequest) MarshalJSON() ([]byte, error) {
  5967  	type NoMethod OrdersAcknowledgeRequest
  5968  	raw := NoMethod(*s)
  5969  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  5970  }
  5971  
  5972  type OrdersAcknowledgeResponse struct {
  5973  	// ExecutionStatus: The status of the execution. Acceptable values are:
  5974  	// - "duplicate" - "executed"
  5975  	ExecutionStatus string `json:"executionStatus,omitempty"`
  5976  
  5977  	// Kind: Identifies what kind of resource this is. Value: the fixed
  5978  	// string "content#ordersAcknowledgeResponse".
  5979  	Kind string `json:"kind,omitempty"`
  5980  
  5981  	// ServerResponse contains the HTTP response code and headers from the
  5982  	// server.
  5983  	googleapi.ServerResponse `json:"-"`
  5984  
  5985  	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
  5986  	// unconditionally include in API requests. By default, fields with
  5987  	// empty or default values are omitted from API requests. However, any
  5988  	// non-pointer, non-interface field appearing in ForceSendFields will be
  5989  	// sent to the server regardless of whether the field is empty or not.
  5990  	// This may be used to include empty fields in Patch requests.
  5991  	ForceSendFields []string `json:"-"`
  5992  
  5993  	// NullFields is a list of field names (e.g. "ExecutionStatus") to
  5994  	// include in API requests with the JSON null value. By default, fields
  5995  	// with empty values are omitted from API requests. However, any field
  5996  	// with an empty value appearing in NullFields will be sent to the
  5997  	// server as null. It is an error if a field in this list has a
  5998  	// non-empty value. This may be used to include null fields in Patch
  5999  	// requests.
  6000  	NullFields []string `json:"-"`
  6001  }
  6002  
  6003  func (s *OrdersAcknowledgeResponse) MarshalJSON() ([]byte, error) {
  6004  	type NoMethod OrdersAcknowledgeResponse
  6005  	raw := NoMethod(*s)
  6006  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6007  }
  6008  
  6009  type OrdersAdvanceTestOrderResponse struct {
  6010  	// Kind: Identifies what kind of resource this is. Value: the fixed
  6011  	// string "content#ordersAdvanceTestOrderResponse".
  6012  	Kind string `json:"kind,omitempty"`
  6013  
  6014  	// ServerResponse contains the HTTP response code and headers from the
  6015  	// server.
  6016  	googleapi.ServerResponse `json:"-"`
  6017  
  6018  	// ForceSendFields is a list of field names (e.g. "Kind") to
  6019  	// unconditionally include in API requests. By default, fields with
  6020  	// empty or default values are omitted from API requests. However, any
  6021  	// non-pointer, non-interface field appearing in ForceSendFields will be
  6022  	// sent to the server regardless of whether the field is empty or not.
  6023  	// This may be used to include empty fields in Patch requests.
  6024  	ForceSendFields []string `json:"-"`
  6025  
  6026  	// NullFields is a list of field names (e.g. "Kind") to include in API
  6027  	// requests with the JSON null value. By default, fields with empty
  6028  	// values are omitted from API requests. However, any field with an
  6029  	// empty value appearing in NullFields will be sent to the server as
  6030  	// null. It is an error if a field in this list has a non-empty value.
  6031  	// This may be used to include null fields in Patch requests.
  6032  	NullFields []string `json:"-"`
  6033  }
  6034  
  6035  func (s *OrdersAdvanceTestOrderResponse) MarshalJSON() ([]byte, error) {
  6036  	type NoMethod OrdersAdvanceTestOrderResponse
  6037  	raw := NoMethod(*s)
  6038  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6039  }
  6040  
  6041  type OrdersCancelLineItemRequest struct {
  6042  	// Amount: Deprecated. Please use amountPretax and amountTax instead.
  6043  	Amount *Price `json:"amount,omitempty"`
  6044  
  6045  	// AmountPretax: Amount to refund for the cancelation. Optional. If not
  6046  	// set, Google will calculate the default based on the price and tax of
  6047  	// the items involved. The amount must not be larger than the net amount
  6048  	// left on the order.
  6049  	AmountPretax *Price `json:"amountPretax,omitempty"`
  6050  
  6051  	// AmountTax: Tax amount that corresponds to cancellation amount in
  6052  	// amountPretax. Optional, but if filled, then amountPretax must be set.
  6053  	// Calculated automatically if not provided.
  6054  	AmountTax *Price `json:"amountTax,omitempty"`
  6055  
  6056  	// LineItemId: The ID of the line item to cancel. Either lineItemId or
  6057  	// productId is required.
  6058  	LineItemId string `json:"lineItemId,omitempty"`
  6059  
  6060  	// OperationId: The ID of the operation. Unique across all operations
  6061  	// for a given order.
  6062  	OperationId string `json:"operationId,omitempty"`
  6063  
  6064  	// ProductId: The ID of the product to cancel. This is the REST ID used
  6065  	// in the products service. Either lineItemId or productId is required.
  6066  	ProductId string `json:"productId,omitempty"`
  6067  
  6068  	// Quantity: The quantity to cancel.
  6069  	Quantity int64 `json:"quantity,omitempty"`
  6070  
  6071  	// Reason: The reason for the cancellation. Acceptable values are: -
  6072  	// "customerInitiatedCancel" - "invalidCoupon" -
  6073  	// "malformedShippingAddress" - "noInventory" - "other" -
  6074  	// "priceError" - "shippingPriceError" - "taxError" -
  6075  	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress"
  6076  	Reason string `json:"reason,omitempty"`
  6077  
  6078  	// ReasonText: The explanation of the reason.
  6079  	ReasonText string `json:"reasonText,omitempty"`
  6080  
  6081  	// ForceSendFields is a list of field names (e.g. "Amount") to
  6082  	// unconditionally include in API requests. By default, fields with
  6083  	// empty or default values are omitted from API requests. However, any
  6084  	// non-pointer, non-interface field appearing in ForceSendFields will be
  6085  	// sent to the server regardless of whether the field is empty or not.
  6086  	// This may be used to include empty fields in Patch requests.
  6087  	ForceSendFields []string `json:"-"`
  6088  
  6089  	// NullFields is a list of field names (e.g. "Amount") 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  
  6098  func (s *OrdersCancelLineItemRequest) MarshalJSON() ([]byte, error) {
  6099  	type NoMethod OrdersCancelLineItemRequest
  6100  	raw := NoMethod(*s)
  6101  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6102  }
  6103  
  6104  type OrdersCancelLineItemResponse struct {
  6105  	// ExecutionStatus: The status of the execution. Acceptable values are:
  6106  	// - "duplicate" - "executed"
  6107  	ExecutionStatus string `json:"executionStatus,omitempty"`
  6108  
  6109  	// Kind: Identifies what kind of resource this is. Value: the fixed
  6110  	// string "content#ordersCancelLineItemResponse".
  6111  	Kind string `json:"kind,omitempty"`
  6112  
  6113  	// ServerResponse contains the HTTP response code and headers from the
  6114  	// server.
  6115  	googleapi.ServerResponse `json:"-"`
  6116  
  6117  	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
  6118  	// unconditionally include in API requests. By default, fields with
  6119  	// empty or default values are omitted from API requests. However, any
  6120  	// non-pointer, non-interface field appearing in ForceSendFields will be
  6121  	// sent to the server regardless of whether the field is empty or not.
  6122  	// This may be used to include empty fields in Patch requests.
  6123  	ForceSendFields []string `json:"-"`
  6124  
  6125  	// NullFields is a list of field names (e.g. "ExecutionStatus") to
  6126  	// include in API requests with the JSON null value. By default, fields
  6127  	// with empty values are omitted from API requests. However, any field
  6128  	// with an empty value appearing in NullFields will be sent to the
  6129  	// server as null. It is an error if a field in this list has a
  6130  	// non-empty value. This may be used to include null fields in Patch
  6131  	// requests.
  6132  	NullFields []string `json:"-"`
  6133  }
  6134  
  6135  func (s *OrdersCancelLineItemResponse) MarshalJSON() ([]byte, error) {
  6136  	type NoMethod OrdersCancelLineItemResponse
  6137  	raw := NoMethod(*s)
  6138  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6139  }
  6140  
  6141  type OrdersCancelRequest struct {
  6142  	// OperationId: The ID of the operation. Unique across all operations
  6143  	// for a given order.
  6144  	OperationId string `json:"operationId,omitempty"`
  6145  
  6146  	// Reason: The reason for the cancellation. Acceptable values are: -
  6147  	// "customerInitiatedCancel" - "invalidCoupon" -
  6148  	// "malformedShippingAddress" - "noInventory" - "other" -
  6149  	// "priceError" - "shippingPriceError" - "taxError" -
  6150  	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress"
  6151  	Reason string `json:"reason,omitempty"`
  6152  
  6153  	// ReasonText: The explanation of the reason.
  6154  	ReasonText string `json:"reasonText,omitempty"`
  6155  
  6156  	// ForceSendFields is a list of field names (e.g. "OperationId") to
  6157  	// unconditionally include in API requests. By default, fields with
  6158  	// empty or default values are omitted from API requests. However, any
  6159  	// non-pointer, non-interface field appearing in ForceSendFields will be
  6160  	// sent to the server regardless of whether the field is empty or not.
  6161  	// This may be used to include empty fields in Patch requests.
  6162  	ForceSendFields []string `json:"-"`
  6163  
  6164  	// NullFields is a list of field names (e.g. "OperationId") to include
  6165  	// in API requests with the JSON null value. By default, fields with
  6166  	// empty values are omitted from API requests. However, any field with
  6167  	// an empty value appearing in NullFields will be sent to the server as
  6168  	// null. It is an error if a field in this list has a non-empty value.
  6169  	// This may be used to include null fields in Patch requests.
  6170  	NullFields []string `json:"-"`
  6171  }
  6172  
  6173  func (s *OrdersCancelRequest) MarshalJSON() ([]byte, error) {
  6174  	type NoMethod OrdersCancelRequest
  6175  	raw := NoMethod(*s)
  6176  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6177  }
  6178  
  6179  type OrdersCancelResponse struct {
  6180  	// ExecutionStatus: The status of the execution. Acceptable values are:
  6181  	// - "duplicate" - "executed"
  6182  	ExecutionStatus string `json:"executionStatus,omitempty"`
  6183  
  6184  	// Kind: Identifies what kind of resource this is. Value: the fixed
  6185  	// string "content#ordersCancelResponse".
  6186  	Kind string `json:"kind,omitempty"`
  6187  
  6188  	// ServerResponse contains the HTTP response code and headers from the
  6189  	// server.
  6190  	googleapi.ServerResponse `json:"-"`
  6191  
  6192  	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
  6193  	// unconditionally include in API requests. By default, fields with
  6194  	// empty or default values are omitted from API requests. However, any
  6195  	// non-pointer, non-interface field appearing in ForceSendFields will be
  6196  	// sent to the server regardless of whether the field is empty or not.
  6197  	// This may be used to include empty fields in Patch requests.
  6198  	ForceSendFields []string `json:"-"`
  6199  
  6200  	// NullFields is a list of field names (e.g. "ExecutionStatus") to
  6201  	// include in API requests with the JSON null value. By default, fields
  6202  	// with empty values are omitted from API requests. However, any field
  6203  	// with an empty value appearing in NullFields will be sent to the
  6204  	// server as null. It is an error if a field in this list has a
  6205  	// non-empty value. This may be used to include null fields in Patch
  6206  	// requests.
  6207  	NullFields []string `json:"-"`
  6208  }
  6209  
  6210  func (s *OrdersCancelResponse) MarshalJSON() ([]byte, error) {
  6211  	type NoMethod OrdersCancelResponse
  6212  	raw := NoMethod(*s)
  6213  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6214  }
  6215  
  6216  type OrdersCancelTestOrderByCustomerRequest struct {
  6217  	// Reason: The reason for the cancellation. Acceptable values are: -
  6218  	// "changedMind" - "orderedWrongItem" - "other"
  6219  	Reason string `json:"reason,omitempty"`
  6220  
  6221  	// ForceSendFields is a list of field names (e.g. "Reason") to
  6222  	// unconditionally include in API requests. By default, fields with
  6223  	// empty or default values are omitted from API requests. However, any
  6224  	// non-pointer, non-interface field appearing in ForceSendFields will be
  6225  	// sent to the server regardless of whether the field is empty or not.
  6226  	// This may be used to include empty fields in Patch requests.
  6227  	ForceSendFields []string `json:"-"`
  6228  
  6229  	// NullFields is a list of field names (e.g. "Reason") to include in API
  6230  	// requests with the JSON null value. By default, fields with empty
  6231  	// values are omitted from API requests. However, any field with an
  6232  	// empty value appearing in NullFields will be sent to the server as
  6233  	// null. It is an error if a field in this list has a non-empty value.
  6234  	// This may be used to include null fields in Patch requests.
  6235  	NullFields []string `json:"-"`
  6236  }
  6237  
  6238  func (s *OrdersCancelTestOrderByCustomerRequest) MarshalJSON() ([]byte, error) {
  6239  	type NoMethod OrdersCancelTestOrderByCustomerRequest
  6240  	raw := NoMethod(*s)
  6241  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6242  }
  6243  
  6244  type OrdersCancelTestOrderByCustomerResponse struct {
  6245  	// Kind: Identifies what kind of resource this is. Value: the fixed
  6246  	// string "content#ordersCancelTestOrderByCustomerResponse".
  6247  	Kind string `json:"kind,omitempty"`
  6248  
  6249  	// ServerResponse contains the HTTP response code and headers from the
  6250  	// server.
  6251  	googleapi.ServerResponse `json:"-"`
  6252  
  6253  	// ForceSendFields is a list of field names (e.g. "Kind") to
  6254  	// unconditionally include in API requests. By default, fields with
  6255  	// empty or default values are omitted from API requests. However, any
  6256  	// non-pointer, non-interface field appearing in ForceSendFields will be
  6257  	// sent to the server regardless of whether the field is empty or not.
  6258  	// This may be used to include empty fields in Patch requests.
  6259  	ForceSendFields []string `json:"-"`
  6260  
  6261  	// NullFields is a list of field names (e.g. "Kind") to include in API
  6262  	// requests with the JSON null value. By default, fields with empty
  6263  	// values are omitted from API requests. However, any field with an
  6264  	// empty value appearing in NullFields will be sent to the server as
  6265  	// null. It is an error if a field in this list has a non-empty value.
  6266  	// This may be used to include null fields in Patch requests.
  6267  	NullFields []string `json:"-"`
  6268  }
  6269  
  6270  func (s *OrdersCancelTestOrderByCustomerResponse) MarshalJSON() ([]byte, error) {
  6271  	type NoMethod OrdersCancelTestOrderByCustomerResponse
  6272  	raw := NoMethod(*s)
  6273  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6274  }
  6275  
  6276  type OrdersCreateTestOrderRequest struct {
  6277  	// Country: The CLDR territory code of the country of the test order to
  6278  	// create. Affects the currency and addresses of orders created via
  6279  	// `template_name`, or the addresses of orders created via `test_order`.
  6280  	// Acceptable values are: - "US" - "FR" Defaults to `US`.
  6281  	Country string `json:"country,omitempty"`
  6282  
  6283  	// TemplateName: The test order template to use. Specify as an
  6284  	// alternative to `testOrder` as a shortcut for retrieving a template
  6285  	// and then creating an order using that template. Acceptable values
  6286  	// are: - "template1" - "template1a" - "template1b" -
  6287  	// "template2" - "template3"
  6288  	TemplateName string `json:"templateName,omitempty"`
  6289  
  6290  	// TestOrder: The test order to create.
  6291  	TestOrder *TestOrder `json:"testOrder,omitempty"`
  6292  
  6293  	// ForceSendFields is a list of field names (e.g. "Country") to
  6294  	// unconditionally include in API requests. By default, fields with
  6295  	// empty or default values are omitted from API requests. However, any
  6296  	// non-pointer, non-interface field appearing in ForceSendFields will be
  6297  	// sent to the server regardless of whether the field is empty or not.
  6298  	// This may be used to include empty fields in Patch requests.
  6299  	ForceSendFields []string `json:"-"`
  6300  
  6301  	// NullFields is a list of field names (e.g. "Country") to include in
  6302  	// API requests with the JSON null value. By default, fields with empty
  6303  	// values are omitted from API requests. However, any field with an
  6304  	// empty value appearing in NullFields will be sent to the server as
  6305  	// null. It is an error if a field in this list has a non-empty value.
  6306  	// This may be used to include null fields in Patch requests.
  6307  	NullFields []string `json:"-"`
  6308  }
  6309  
  6310  func (s *OrdersCreateTestOrderRequest) MarshalJSON() ([]byte, error) {
  6311  	type NoMethod OrdersCreateTestOrderRequest
  6312  	raw := NoMethod(*s)
  6313  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6314  }
  6315  
  6316  type OrdersCreateTestOrderResponse struct {
  6317  	// Kind: Identifies what kind of resource this is. Value: the fixed
  6318  	// string "content#ordersCreateTestOrderResponse".
  6319  	Kind string `json:"kind,omitempty"`
  6320  
  6321  	// OrderId: The ID of the newly created test order.
  6322  	OrderId string `json:"orderId,omitempty"`
  6323  
  6324  	// ServerResponse contains the HTTP response code and headers from the
  6325  	// server.
  6326  	googleapi.ServerResponse `json:"-"`
  6327  
  6328  	// ForceSendFields is a list of field names (e.g. "Kind") to
  6329  	// unconditionally include in API requests. By default, fields with
  6330  	// empty or default values are omitted from API requests. However, any
  6331  	// non-pointer, non-interface field appearing in ForceSendFields will be
  6332  	// sent to the server regardless of whether the field is empty or not.
  6333  	// This may be used to include empty fields in Patch requests.
  6334  	ForceSendFields []string `json:"-"`
  6335  
  6336  	// NullFields is a list of field names (e.g. "Kind") to include in API
  6337  	// requests with the JSON null value. By default, fields with empty
  6338  	// values are omitted from API requests. However, any field with an
  6339  	// empty value appearing in NullFields will be sent to the server as
  6340  	// null. It is an error if a field in this list has a non-empty value.
  6341  	// This may be used to include null fields in Patch requests.
  6342  	NullFields []string `json:"-"`
  6343  }
  6344  
  6345  func (s *OrdersCreateTestOrderResponse) MarshalJSON() ([]byte, error) {
  6346  	type NoMethod OrdersCreateTestOrderResponse
  6347  	raw := NoMethod(*s)
  6348  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6349  }
  6350  
  6351  type OrdersCreateTestReturnRequest struct {
  6352  	// Items: Returned items.
  6353  	Items []*OrdersCustomBatchRequestEntryCreateTestReturnReturnItem `json:"items,omitempty"`
  6354  
  6355  	// ForceSendFields is a list of field names (e.g. "Items") to
  6356  	// unconditionally include in API requests. By default, fields with
  6357  	// empty or default values are omitted from API requests. However, any
  6358  	// non-pointer, non-interface field appearing in ForceSendFields will be
  6359  	// sent to the server regardless of whether the field is empty or not.
  6360  	// This may be used to include empty fields in Patch requests.
  6361  	ForceSendFields []string `json:"-"`
  6362  
  6363  	// NullFields is a list of field names (e.g. "Items") to include in API
  6364  	// requests with the JSON null value. By default, fields with empty
  6365  	// values are omitted from API requests. However, any field with an
  6366  	// empty value appearing in NullFields will be sent to the server as
  6367  	// null. It is an error if a field in this list has a non-empty value.
  6368  	// This may be used to include null fields in Patch requests.
  6369  	NullFields []string `json:"-"`
  6370  }
  6371  
  6372  func (s *OrdersCreateTestReturnRequest) MarshalJSON() ([]byte, error) {
  6373  	type NoMethod OrdersCreateTestReturnRequest
  6374  	raw := NoMethod(*s)
  6375  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6376  }
  6377  
  6378  type OrdersCreateTestReturnResponse struct {
  6379  	// Kind: Identifies what kind of resource this is. Value: the fixed
  6380  	// string "content#ordersCreateTestReturnResponse".
  6381  	Kind string `json:"kind,omitempty"`
  6382  
  6383  	// ReturnId: The ID of the newly created test order return.
  6384  	ReturnId string `json:"returnId,omitempty"`
  6385  
  6386  	// ServerResponse contains the HTTP response code and headers from the
  6387  	// server.
  6388  	googleapi.ServerResponse `json:"-"`
  6389  
  6390  	// ForceSendFields is a list of field names (e.g. "Kind") to
  6391  	// unconditionally include in API requests. By default, fields with
  6392  	// empty or default values are omitted from API requests. However, any
  6393  	// non-pointer, non-interface field appearing in ForceSendFields will be
  6394  	// sent to the server regardless of whether the field is empty or not.
  6395  	// This may be used to include empty fields in Patch requests.
  6396  	ForceSendFields []string `json:"-"`
  6397  
  6398  	// NullFields is a list of field names (e.g. "Kind") to include in API
  6399  	// requests with the JSON null value. By default, fields with empty
  6400  	// values are omitted from API requests. However, any field with an
  6401  	// empty value appearing in NullFields will be sent to the server as
  6402  	// null. It is an error if a field in this list has a non-empty value.
  6403  	// This may be used to include null fields in Patch requests.
  6404  	NullFields []string `json:"-"`
  6405  }
  6406  
  6407  func (s *OrdersCreateTestReturnResponse) MarshalJSON() ([]byte, error) {
  6408  	type NoMethod OrdersCreateTestReturnResponse
  6409  	raw := NoMethod(*s)
  6410  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6411  }
  6412  
  6413  type OrdersCustomBatchRequest struct {
  6414  	// Entries: The request entries to be processed in the batch.
  6415  	Entries []*OrdersCustomBatchRequestEntry `json:"entries,omitempty"`
  6416  
  6417  	// ForceSendFields is a list of field names (e.g. "Entries") to
  6418  	// unconditionally include in API requests. By default, fields with
  6419  	// empty or default values are omitted from API requests. However, any
  6420  	// non-pointer, non-interface field appearing in ForceSendFields will be
  6421  	// sent to the server regardless of whether the field is empty or not.
  6422  	// This may be used to include empty fields in Patch requests.
  6423  	ForceSendFields []string `json:"-"`
  6424  
  6425  	// NullFields is a list of field names (e.g. "Entries") to include in
  6426  	// API requests with the JSON null value. By default, fields with empty
  6427  	// values are omitted from API requests. However, any field with an
  6428  	// empty value appearing in NullFields will be sent to the server as
  6429  	// null. It is an error if a field in this list has a non-empty value.
  6430  	// This may be used to include null fields in Patch requests.
  6431  	NullFields []string `json:"-"`
  6432  }
  6433  
  6434  func (s *OrdersCustomBatchRequest) MarshalJSON() ([]byte, error) {
  6435  	type NoMethod OrdersCustomBatchRequest
  6436  	raw := NoMethod(*s)
  6437  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6438  }
  6439  
  6440  type OrdersCustomBatchRequestEntry struct {
  6441  	// BatchId: An entry ID, unique within the batch request.
  6442  	BatchId int64 `json:"batchId,omitempty"`
  6443  
  6444  	// Cancel: Required for `cancel` method.
  6445  	Cancel *OrdersCustomBatchRequestEntryCancel `json:"cancel,omitempty"`
  6446  
  6447  	// CancelLineItem: Required for `cancelLineItem` method.
  6448  	CancelLineItem *OrdersCustomBatchRequestEntryCancelLineItem `json:"cancelLineItem,omitempty"`
  6449  
  6450  	// InStoreRefundLineItem: Required for `inStoreReturnLineItem` method.
  6451  	InStoreRefundLineItem *OrdersCustomBatchRequestEntryInStoreRefundLineItem `json:"inStoreRefundLineItem,omitempty"`
  6452  
  6453  	// MerchantId: The ID of the managing account.
  6454  	MerchantId uint64 `json:"merchantId,omitempty,string"`
  6455  
  6456  	// MerchantOrderId: The merchant order ID. Required for
  6457  	// `updateMerchantOrderId` and `getByMerchantOrderId` methods.
  6458  	MerchantOrderId string `json:"merchantOrderId,omitempty"`
  6459  
  6460  	// Method: The method of the batch entry. Acceptable values are: -
  6461  	// "acknowledge" - "cancel" - "cancelLineItem" - "get" -
  6462  	// "getByMerchantOrderId" - "inStoreRefundLineItem" - "refund" -
  6463  	// "rejectReturnLineItem" - "returnLineItem" -
  6464  	// "returnRefundLineItem" - "setLineItemMetadata" -
  6465  	// "shipLineItems" - "updateLineItemShippingDetails" -
  6466  	// "updateMerchantOrderId" - "updateShipment"
  6467  	Method string `json:"method,omitempty"`
  6468  
  6469  	// OperationId: The ID of the operation. Unique across all operations
  6470  	// for a given order. Required for all methods beside `get` and
  6471  	// `getByMerchantOrderId`.
  6472  	OperationId string `json:"operationId,omitempty"`
  6473  
  6474  	// OrderId: The ID of the order. Required for all methods beside
  6475  	// `getByMerchantOrderId`.
  6476  	OrderId string `json:"orderId,omitempty"`
  6477  
  6478  	// Refund: Required for `refund` method.
  6479  	Refund *OrdersCustomBatchRequestEntryRefund `json:"refund,omitempty"`
  6480  
  6481  	// RejectReturnLineItem: Required for `rejectReturnLineItem` method.
  6482  	RejectReturnLineItem *OrdersCustomBatchRequestEntryRejectReturnLineItem `json:"rejectReturnLineItem,omitempty"`
  6483  
  6484  	// ReturnLineItem: Required for `returnLineItem` method.
  6485  	ReturnLineItem *OrdersCustomBatchRequestEntryReturnLineItem `json:"returnLineItem,omitempty"`
  6486  
  6487  	// ReturnRefundLineItem: Required for `returnRefundLineItem` method.
  6488  	ReturnRefundLineItem *OrdersCustomBatchRequestEntryReturnRefundLineItem `json:"returnRefundLineItem,omitempty"`
  6489  
  6490  	// SetLineItemMetadata: Required for `setLineItemMetadata` method.
  6491  	SetLineItemMetadata *OrdersCustomBatchRequestEntrySetLineItemMetadata `json:"setLineItemMetadata,omitempty"`
  6492  
  6493  	// ShipLineItems: Required for `shipLineItems` method.
  6494  	ShipLineItems *OrdersCustomBatchRequestEntryShipLineItems `json:"shipLineItems,omitempty"`
  6495  
  6496  	// UpdateLineItemShippingDetails: Required for
  6497  	// `updateLineItemShippingDate` method.
  6498  	UpdateLineItemShippingDetails *OrdersCustomBatchRequestEntryUpdateLineItemShippingDetails `json:"updateLineItemShippingDetails,omitempty"`
  6499  
  6500  	// UpdateShipment: Required for `updateShipment` method.
  6501  	UpdateShipment *OrdersCustomBatchRequestEntryUpdateShipment `json:"updateShipment,omitempty"`
  6502  
  6503  	// ForceSendFields is a list of field names (e.g. "BatchId") to
  6504  	// unconditionally include in API requests. By default, fields with
  6505  	// empty or default values are omitted from API requests. However, any
  6506  	// non-pointer, non-interface field appearing in ForceSendFields will be
  6507  	// sent to the server regardless of whether the field is empty or not.
  6508  	// This may be used to include empty fields in Patch requests.
  6509  	ForceSendFields []string `json:"-"`
  6510  
  6511  	// NullFields is a list of field names (e.g. "BatchId") to include in
  6512  	// API requests with the JSON null value. By default, fields with empty
  6513  	// values are omitted from API requests. However, any field with an
  6514  	// empty value appearing in NullFields will be sent to the server as
  6515  	// null. It is an error if a field in this list has a non-empty value.
  6516  	// This may be used to include null fields in Patch requests.
  6517  	NullFields []string `json:"-"`
  6518  }
  6519  
  6520  func (s *OrdersCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
  6521  	type NoMethod OrdersCustomBatchRequestEntry
  6522  	raw := NoMethod(*s)
  6523  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6524  }
  6525  
  6526  type OrdersCustomBatchRequestEntryCancel struct {
  6527  	// Reason: The reason for the cancellation. Acceptable values are: -
  6528  	// "customerInitiatedCancel" - "invalidCoupon" -
  6529  	// "malformedShippingAddress" - "noInventory" - "other" -
  6530  	// "priceError" - "shippingPriceError" - "taxError" -
  6531  	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress"
  6532  	Reason string `json:"reason,omitempty"`
  6533  
  6534  	// ReasonText: The explanation of the reason.
  6535  	ReasonText string `json:"reasonText,omitempty"`
  6536  
  6537  	// ForceSendFields is a list of field names (e.g. "Reason") to
  6538  	// unconditionally include in API requests. By default, fields with
  6539  	// empty or default values are omitted from API requests. However, any
  6540  	// non-pointer, non-interface field appearing in ForceSendFields will be
  6541  	// sent to the server regardless of whether the field is empty or not.
  6542  	// This may be used to include empty fields in Patch requests.
  6543  	ForceSendFields []string `json:"-"`
  6544  
  6545  	// NullFields is a list of field names (e.g. "Reason") to include in API
  6546  	// requests with the JSON null value. By default, fields with empty
  6547  	// values are omitted from API requests. However, any field with an
  6548  	// empty value appearing in NullFields will be sent to the server as
  6549  	// null. It is an error if a field in this list has a non-empty value.
  6550  	// This may be used to include null fields in Patch requests.
  6551  	NullFields []string `json:"-"`
  6552  }
  6553  
  6554  func (s *OrdersCustomBatchRequestEntryCancel) MarshalJSON() ([]byte, error) {
  6555  	type NoMethod OrdersCustomBatchRequestEntryCancel
  6556  	raw := NoMethod(*s)
  6557  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6558  }
  6559  
  6560  type OrdersCustomBatchRequestEntryCancelLineItem struct {
  6561  	// Amount: Deprecated. Please use amountPretax and amountTax instead.
  6562  	Amount *Price `json:"amount,omitempty"`
  6563  
  6564  	// AmountPretax: Amount to refund for the cancelation. Optional. If not
  6565  	// set, Google will calculate the default based on the price and tax of
  6566  	// the items involved. The amount must not be larger than the net amount
  6567  	// left on the order.
  6568  	AmountPretax *Price `json:"amountPretax,omitempty"`
  6569  
  6570  	// AmountTax: Tax amount that corresponds to cancellation amount in
  6571  	// amountPretax. Optional, but if filled, then amountPretax must be set.
  6572  	// Calculated automatically if not provided.
  6573  	AmountTax *Price `json:"amountTax,omitempty"`
  6574  
  6575  	// LineItemId: The ID of the line item to cancel. Either lineItemId or
  6576  	// productId is required.
  6577  	LineItemId string `json:"lineItemId,omitempty"`
  6578  
  6579  	// ProductId: The ID of the product to cancel. This is the REST ID used
  6580  	// in the products service. Either lineItemId or productId is required.
  6581  	ProductId string `json:"productId,omitempty"`
  6582  
  6583  	// Quantity: The quantity to cancel.
  6584  	Quantity int64 `json:"quantity,omitempty"`
  6585  
  6586  	// Reason: The reason for the cancellation. Acceptable values are: -
  6587  	// "customerInitiatedCancel" - "invalidCoupon" -
  6588  	// "malformedShippingAddress" - "noInventory" - "other" -
  6589  	// "priceError" - "shippingPriceError" - "taxError" -
  6590  	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress"
  6591  	Reason string `json:"reason,omitempty"`
  6592  
  6593  	// ReasonText: The explanation of the reason.
  6594  	ReasonText string `json:"reasonText,omitempty"`
  6595  
  6596  	// ForceSendFields is a list of field names (e.g. "Amount") to
  6597  	// unconditionally include in API requests. By default, fields with
  6598  	// empty or default values are omitted from API requests. However, any
  6599  	// non-pointer, non-interface field appearing in ForceSendFields will be
  6600  	// sent to the server regardless of whether the field is empty or not.
  6601  	// This may be used to include empty fields in Patch requests.
  6602  	ForceSendFields []string `json:"-"`
  6603  
  6604  	// NullFields is a list of field names (e.g. "Amount") to include in API
  6605  	// requests with the JSON null value. By default, fields with empty
  6606  	// values are omitted from API requests. However, any field with an
  6607  	// empty value appearing in NullFields will be sent to the server as
  6608  	// null. It is an error if a field in this list has a non-empty value.
  6609  	// This may be used to include null fields in Patch requests.
  6610  	NullFields []string `json:"-"`
  6611  }
  6612  
  6613  func (s *OrdersCustomBatchRequestEntryCancelLineItem) MarshalJSON() ([]byte, error) {
  6614  	type NoMethod OrdersCustomBatchRequestEntryCancelLineItem
  6615  	raw := NoMethod(*s)
  6616  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6617  }
  6618  
  6619  type OrdersCustomBatchRequestEntryCreateTestReturnReturnItem struct {
  6620  	// LineItemId: The ID of the line item to return.
  6621  	LineItemId string `json:"lineItemId,omitempty"`
  6622  
  6623  	// Quantity: Quantity that is returned.
  6624  	Quantity int64 `json:"quantity,omitempty"`
  6625  
  6626  	// ForceSendFields is a list of field names (e.g. "LineItemId") to
  6627  	// unconditionally include in API requests. By default, fields with
  6628  	// empty or default values are omitted from API requests. However, any
  6629  	// non-pointer, non-interface field appearing in ForceSendFields will be
  6630  	// sent to the server regardless of whether the field is empty or not.
  6631  	// This may be used to include empty fields in Patch requests.
  6632  	ForceSendFields []string `json:"-"`
  6633  
  6634  	// NullFields is a list of field names (e.g. "LineItemId") to include in
  6635  	// API requests with the JSON null value. By default, fields with empty
  6636  	// values are omitted from API requests. However, any field with an
  6637  	// empty value appearing in NullFields will be sent to the server as
  6638  	// null. It is an error if a field in this list has a non-empty value.
  6639  	// This may be used to include null fields in Patch requests.
  6640  	NullFields []string `json:"-"`
  6641  }
  6642  
  6643  func (s *OrdersCustomBatchRequestEntryCreateTestReturnReturnItem) MarshalJSON() ([]byte, error) {
  6644  	type NoMethod OrdersCustomBatchRequestEntryCreateTestReturnReturnItem
  6645  	raw := NoMethod(*s)
  6646  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6647  }
  6648  
  6649  type OrdersCustomBatchRequestEntryInStoreRefundLineItem struct {
  6650  	// AmountPretax: The amount that is refunded. Required.
  6651  	AmountPretax *Price `json:"amountPretax,omitempty"`
  6652  
  6653  	// AmountTax: Tax amount that correspond to refund amount in
  6654  	// amountPretax. Required.
  6655  	AmountTax *Price `json:"amountTax,omitempty"`
  6656  
  6657  	// LineItemId: The ID of the line item to return. Either lineItemId or
  6658  	// productId is required.
  6659  	LineItemId string `json:"lineItemId,omitempty"`
  6660  
  6661  	// ProductId: The ID of the product to return. This is the REST ID used
  6662  	// in the products service. Either lineItemId or productId is required.
  6663  	ProductId string `json:"productId,omitempty"`
  6664  
  6665  	// Quantity: The quantity to return and refund.
  6666  	Quantity int64 `json:"quantity,omitempty"`
  6667  
  6668  	// Reason: The reason for the return. Acceptable values are: -
  6669  	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
  6670  	// - "deliveredTooLate" - "expiredItem" - "invalidCoupon" -
  6671  	// "malformedShippingAddress" - "other" - "productArrivedDamaged"
  6672  	// - "productNotAsDescribed" - "qualityNotAsExpected" -
  6673  	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
  6674  	// "wrongProductShipped"
  6675  	Reason string `json:"reason,omitempty"`
  6676  
  6677  	// ReasonText: The explanation of the reason.
  6678  	ReasonText string `json:"reasonText,omitempty"`
  6679  
  6680  	// ForceSendFields is a list of field names (e.g. "AmountPretax") to
  6681  	// unconditionally include in API requests. By default, fields with
  6682  	// empty or default values are omitted from API requests. However, any
  6683  	// non-pointer, non-interface field appearing in ForceSendFields will be
  6684  	// sent to the server regardless of whether the field is empty or not.
  6685  	// This may be used to include empty fields in Patch requests.
  6686  	ForceSendFields []string `json:"-"`
  6687  
  6688  	// NullFields is a list of field names (e.g. "AmountPretax") to include
  6689  	// in API requests with the JSON null value. By default, fields with
  6690  	// empty values are omitted from API requests. However, any field with
  6691  	// an empty value appearing in NullFields will be sent to the server as
  6692  	// null. It is an error if a field in this list has a non-empty value.
  6693  	// This may be used to include null fields in Patch requests.
  6694  	NullFields []string `json:"-"`
  6695  }
  6696  
  6697  func (s *OrdersCustomBatchRequestEntryInStoreRefundLineItem) MarshalJSON() ([]byte, error) {
  6698  	type NoMethod OrdersCustomBatchRequestEntryInStoreRefundLineItem
  6699  	raw := NoMethod(*s)
  6700  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6701  }
  6702  
  6703  type OrdersCustomBatchRequestEntryRefund struct {
  6704  	// Amount: Deprecated. Please use amountPretax and amountTax instead.
  6705  	Amount *Price `json:"amount,omitempty"`
  6706  
  6707  	// AmountPretax: The amount that is refunded. Either amount or
  6708  	// amountPretax should be filled.
  6709  	AmountPretax *Price `json:"amountPretax,omitempty"`
  6710  
  6711  	// AmountTax: Tax amount that corresponds to refund amount in
  6712  	// amountPretax. Optional, but if filled, amountPretax must be set.
  6713  	// Calculated automatically if not provided.
  6714  	AmountTax *Price `json:"amountTax,omitempty"`
  6715  
  6716  	// Reason: The reason for the refund. Acceptable values are: -
  6717  	// "adjustment" - "courtesyAdjustment" - "customerCanceled" -
  6718  	// "customerDiscretionaryReturn" - "deliveredLateByCarrier" -
  6719  	// "feeAdjustment" - "lateShipmentCredit" - "noInventory" -
  6720  	// "other" - "priceError" - "productArrivedDamaged" -
  6721  	// "productNotAsDescribed" - "shippingCostAdjustment" -
  6722  	// "taxAdjustment" - "undeliverableShippingAddress" -
  6723  	// "wrongProductShipped"
  6724  	Reason string `json:"reason,omitempty"`
  6725  
  6726  	// ReasonText: The explanation of the reason.
  6727  	ReasonText string `json:"reasonText,omitempty"`
  6728  
  6729  	// ForceSendFields is a list of field names (e.g. "Amount") to
  6730  	// unconditionally include in API requests. By default, fields with
  6731  	// empty or default values are omitted from API requests. However, any
  6732  	// non-pointer, non-interface field appearing in ForceSendFields will be
  6733  	// sent to the server regardless of whether the field is empty or not.
  6734  	// This may be used to include empty fields in Patch requests.
  6735  	ForceSendFields []string `json:"-"`
  6736  
  6737  	// NullFields is a list of field names (e.g. "Amount") to include in API
  6738  	// requests with the JSON null value. By default, fields with empty
  6739  	// values are omitted from API requests. However, any field with an
  6740  	// empty value appearing in NullFields will be sent to the server as
  6741  	// null. It is an error if a field in this list has a non-empty value.
  6742  	// This may be used to include null fields in Patch requests.
  6743  	NullFields []string `json:"-"`
  6744  }
  6745  
  6746  func (s *OrdersCustomBatchRequestEntryRefund) MarshalJSON() ([]byte, error) {
  6747  	type NoMethod OrdersCustomBatchRequestEntryRefund
  6748  	raw := NoMethod(*s)
  6749  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6750  }
  6751  
  6752  type OrdersCustomBatchRequestEntryRejectReturnLineItem struct {
  6753  	// LineItemId: The ID of the line item to return. Either lineItemId or
  6754  	// productId is required.
  6755  	LineItemId string `json:"lineItemId,omitempty"`
  6756  
  6757  	// ProductId: The ID of the product to return. 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 return and refund.
  6762  	Quantity int64 `json:"quantity,omitempty"`
  6763  
  6764  	// Reason: The reason for the return. Acceptable values are: -
  6765  	// "damagedOrUsed" - "missingComponent" - "notEligible" -
  6766  	// "other" - "outOfReturnWindow"
  6767  	Reason string `json:"reason,omitempty"`
  6768  
  6769  	// ReasonText: The explanation of the reason.
  6770  	ReasonText string `json:"reasonText,omitempty"`
  6771  
  6772  	// ForceSendFields is a list of field names (e.g. "LineItemId") to
  6773  	// unconditionally include in API requests. By default, fields with
  6774  	// empty or default values are omitted from API requests. However, any
  6775  	// non-pointer, non-interface field appearing in ForceSendFields will be
  6776  	// sent to the server regardless of whether the field is empty or not.
  6777  	// This may be used to include empty fields in Patch requests.
  6778  	ForceSendFields []string `json:"-"`
  6779  
  6780  	// NullFields is a list of field names (e.g. "LineItemId") to include in
  6781  	// API requests with the JSON null value. By default, fields with empty
  6782  	// values are omitted from API requests. However, any field with an
  6783  	// empty value appearing in NullFields will be sent to the server as
  6784  	// null. It is an error if a field in this list has a non-empty value.
  6785  	// This may be used to include null fields in Patch requests.
  6786  	NullFields []string `json:"-"`
  6787  }
  6788  
  6789  func (s *OrdersCustomBatchRequestEntryRejectReturnLineItem) MarshalJSON() ([]byte, error) {
  6790  	type NoMethod OrdersCustomBatchRequestEntryRejectReturnLineItem
  6791  	raw := NoMethod(*s)
  6792  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6793  }
  6794  
  6795  type OrdersCustomBatchRequestEntryReturnLineItem struct {
  6796  	// LineItemId: The ID of the line item to return. Either lineItemId or
  6797  	// productId is required.
  6798  	LineItemId string `json:"lineItemId,omitempty"`
  6799  
  6800  	// ProductId: The ID of the product to return. This is the REST ID used
  6801  	// in the products service. Either lineItemId or productId is required.
  6802  	ProductId string `json:"productId,omitempty"`
  6803  
  6804  	// Quantity: The quantity to return.
  6805  	Quantity int64 `json:"quantity,omitempty"`
  6806  
  6807  	// Reason: The reason for the return. Acceptable values are: -
  6808  	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
  6809  	// - "deliveredTooLate" - "expiredItem" - "invalidCoupon" -
  6810  	// "malformedShippingAddress" - "other" - "productArrivedDamaged"
  6811  	// - "productNotAsDescribed" - "qualityNotAsExpected" -
  6812  	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
  6813  	// "wrongProductShipped"
  6814  	Reason string `json:"reason,omitempty"`
  6815  
  6816  	// ReasonText: The explanation of the reason.
  6817  	ReasonText string `json:"reasonText,omitempty"`
  6818  
  6819  	// ForceSendFields is a list of field names (e.g. "LineItemId") to
  6820  	// unconditionally include in API requests. By default, fields with
  6821  	// empty or default values are omitted from API requests. However, any
  6822  	// non-pointer, non-interface field appearing in ForceSendFields will be
  6823  	// sent to the server regardless of whether the field is empty or not.
  6824  	// This may be used to include empty fields in Patch requests.
  6825  	ForceSendFields []string `json:"-"`
  6826  
  6827  	// NullFields is a list of field names (e.g. "LineItemId") to include in
  6828  	// API requests with the JSON null value. By default, fields with empty
  6829  	// values are omitted from API requests. However, any field with an
  6830  	// empty value appearing in NullFields will be sent to the server as
  6831  	// null. It is an error if a field in this list has a non-empty value.
  6832  	// This may be used to include null fields in Patch requests.
  6833  	NullFields []string `json:"-"`
  6834  }
  6835  
  6836  func (s *OrdersCustomBatchRequestEntryReturnLineItem) MarshalJSON() ([]byte, error) {
  6837  	type NoMethod OrdersCustomBatchRequestEntryReturnLineItem
  6838  	raw := NoMethod(*s)
  6839  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6840  }
  6841  
  6842  type OrdersCustomBatchRequestEntryReturnRefundLineItem struct {
  6843  	// AmountPretax: The amount that is refunded. If omitted, refundless
  6844  	// return is assumed (same as calling returnLineItem method).
  6845  	AmountPretax *Price `json:"amountPretax,omitempty"`
  6846  
  6847  	// AmountTax: Tax amount that corresponds to refund amount in
  6848  	// amountPretax. Optional, but if filled, then amountPretax must be set.
  6849  	// Calculated automatically if not provided.
  6850  	AmountTax *Price `json:"amountTax,omitempty"`
  6851  
  6852  	// LineItemId: The ID of the line item to return. Either lineItemId or
  6853  	// productId is required.
  6854  	LineItemId string `json:"lineItemId,omitempty"`
  6855  
  6856  	// ProductId: The ID of the product to return. This is the REST ID used
  6857  	// in the products service. Either lineItemId or productId is required.
  6858  	ProductId string `json:"productId,omitempty"`
  6859  
  6860  	// Quantity: The quantity to return and refund.
  6861  	Quantity int64 `json:"quantity,omitempty"`
  6862  
  6863  	// Reason: The reason for the return. Acceptable values are: -
  6864  	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
  6865  	// - "deliveredTooLate" - "expiredItem" - "invalidCoupon" -
  6866  	// "malformedShippingAddress" - "other" - "productArrivedDamaged"
  6867  	// - "productNotAsDescribed" - "qualityNotAsExpected" -
  6868  	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
  6869  	// "wrongProductShipped"
  6870  	Reason string `json:"reason,omitempty"`
  6871  
  6872  	// ReasonText: The explanation of the reason.
  6873  	ReasonText string `json:"reasonText,omitempty"`
  6874  
  6875  	// ForceSendFields is a list of field names (e.g. "AmountPretax") to
  6876  	// unconditionally include in API requests. By default, fields with
  6877  	// empty or default values are omitted from API requests. However, any
  6878  	// non-pointer, non-interface field appearing in ForceSendFields will be
  6879  	// sent to the server regardless of whether the field is empty or not.
  6880  	// This may be used to include empty fields in Patch requests.
  6881  	ForceSendFields []string `json:"-"`
  6882  
  6883  	// NullFields is a list of field names (e.g. "AmountPretax") to include
  6884  	// in API requests with the JSON null value. By default, fields with
  6885  	// empty values are omitted from API requests. However, any field with
  6886  	// an empty value appearing in NullFields will be sent to the server as
  6887  	// null. It is an error if a field in this list has a non-empty value.
  6888  	// This may be used to include null fields in Patch requests.
  6889  	NullFields []string `json:"-"`
  6890  }
  6891  
  6892  func (s *OrdersCustomBatchRequestEntryReturnRefundLineItem) MarshalJSON() ([]byte, error) {
  6893  	type NoMethod OrdersCustomBatchRequestEntryReturnRefundLineItem
  6894  	raw := NoMethod(*s)
  6895  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6896  }
  6897  
  6898  type OrdersCustomBatchRequestEntrySetLineItemMetadata struct {
  6899  	Annotations []*OrderMerchantProvidedAnnotation `json:"annotations,omitempty"`
  6900  
  6901  	// LineItemId: The ID of the line item to set metadata. Either
  6902  	// lineItemId or productId is required.
  6903  	LineItemId string `json:"lineItemId,omitempty"`
  6904  
  6905  	// ProductId: The ID of the product to set metadata. This is the REST ID
  6906  	// used in the products service. Either lineItemId or productId is
  6907  	// required.
  6908  	ProductId string `json:"productId,omitempty"`
  6909  
  6910  	// ForceSendFields is a list of field names (e.g. "Annotations") to
  6911  	// unconditionally include in API requests. By default, fields with
  6912  	// empty or default values are omitted from API requests. However, any
  6913  	// non-pointer, non-interface field appearing in ForceSendFields will be
  6914  	// sent to the server regardless of whether the field is empty or not.
  6915  	// This may be used to include empty fields in Patch requests.
  6916  	ForceSendFields []string `json:"-"`
  6917  
  6918  	// NullFields is a list of field names (e.g. "Annotations") to include
  6919  	// in API requests with the JSON null value. By default, fields with
  6920  	// empty values are omitted from API requests. However, any field with
  6921  	// an empty value appearing in NullFields will be sent to the server as
  6922  	// null. It is an error if a field in this list has a non-empty value.
  6923  	// This may be used to include null fields in Patch requests.
  6924  	NullFields []string `json:"-"`
  6925  }
  6926  
  6927  func (s *OrdersCustomBatchRequestEntrySetLineItemMetadata) MarshalJSON() ([]byte, error) {
  6928  	type NoMethod OrdersCustomBatchRequestEntrySetLineItemMetadata
  6929  	raw := NoMethod(*s)
  6930  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6931  }
  6932  
  6933  type OrdersCustomBatchRequestEntryShipLineItems struct {
  6934  	// Carrier: Deprecated. Please use shipmentInfo instead. The carrier
  6935  	// handling the shipment. See `shipments[].carrier` in the Orders
  6936  	// resource representation for a list of acceptable values.
  6937  	Carrier string `json:"carrier,omitempty"`
  6938  
  6939  	// LineItems: Line items to ship.
  6940  	LineItems []*OrderShipmentLineItemShipment `json:"lineItems,omitempty"`
  6941  
  6942  	// ShipmentGroupId: ID of the shipment group. Required for orders that
  6943  	// use the orderinvoices service.
  6944  	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
  6945  
  6946  	// ShipmentId: Deprecated. Please use shipmentInfo instead. The ID of
  6947  	// the shipment.
  6948  	ShipmentId string `json:"shipmentId,omitempty"`
  6949  
  6950  	// ShipmentInfos: Shipment information. This field is repeated because a
  6951  	// single line item can be shipped in several packages (and have several
  6952  	// tracking IDs).
  6953  	ShipmentInfos []*OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo `json:"shipmentInfos,omitempty"`
  6954  
  6955  	// TrackingId: Deprecated. Please use shipmentInfo instead. The tracking
  6956  	// ID for the shipment.
  6957  	TrackingId string `json:"trackingId,omitempty"`
  6958  
  6959  	// ForceSendFields is a list of field names (e.g. "Carrier") to
  6960  	// unconditionally include in API requests. By default, fields with
  6961  	// empty or default values are omitted from API requests. However, any
  6962  	// non-pointer, non-interface field appearing in ForceSendFields will be
  6963  	// sent to the server regardless of whether the field is empty or not.
  6964  	// This may be used to include empty fields in Patch requests.
  6965  	ForceSendFields []string `json:"-"`
  6966  
  6967  	// NullFields is a list of field names (e.g. "Carrier") to include in
  6968  	// API requests with the JSON null value. By default, fields with empty
  6969  	// values are omitted from API requests. However, any field with an
  6970  	// empty value appearing in NullFields will be sent to the server as
  6971  	// null. It is an error if a field in this list has a non-empty value.
  6972  	// This may be used to include null fields in Patch requests.
  6973  	NullFields []string `json:"-"`
  6974  }
  6975  
  6976  func (s *OrdersCustomBatchRequestEntryShipLineItems) MarshalJSON() ([]byte, error) {
  6977  	type NoMethod OrdersCustomBatchRequestEntryShipLineItems
  6978  	raw := NoMethod(*s)
  6979  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  6980  }
  6981  
  6982  type OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo struct {
  6983  	// Carrier: The carrier handling the shipment. See `shipments[].carrier`
  6984  	// in the Orders resource representation for a list of acceptable
  6985  	// values.
  6986  	Carrier string `json:"carrier,omitempty"`
  6987  
  6988  	// ShipmentId: Required. The ID of the shipment. This is assigned by the
  6989  	// merchant and is unique to each shipment.
  6990  	ShipmentId string `json:"shipmentId,omitempty"`
  6991  
  6992  	// TrackingId: The tracking ID for the shipment.
  6993  	TrackingId string `json:"trackingId,omitempty"`
  6994  
  6995  	// ForceSendFields is a list of field names (e.g. "Carrier") to
  6996  	// unconditionally include in API requests. By default, fields with
  6997  	// empty or default values are omitted from API requests. However, any
  6998  	// non-pointer, non-interface field appearing in ForceSendFields will be
  6999  	// sent to the server regardless of whether the field is empty or not.
  7000  	// This may be used to include empty fields in Patch requests.
  7001  	ForceSendFields []string `json:"-"`
  7002  
  7003  	// NullFields is a list of field names (e.g. "Carrier") to include in
  7004  	// API requests with the JSON null value. By default, fields with empty
  7005  	// values are omitted from API requests. However, any field with an
  7006  	// empty value appearing in NullFields will be sent to the server as
  7007  	// null. It is an error if a field in this list has a non-empty value.
  7008  	// This may be used to include null fields in Patch requests.
  7009  	NullFields []string `json:"-"`
  7010  }
  7011  
  7012  func (s *OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo) MarshalJSON() ([]byte, error) {
  7013  	type NoMethod OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo
  7014  	raw := NoMethod(*s)
  7015  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  7016  }
  7017  
  7018  type OrdersCustomBatchRequestEntryUpdateLineItemShippingDetails struct {
  7019  	// DeliverByDate: Updated delivery by date, in ISO 8601 format. If not
  7020  	// specified only ship by date is updated. Provided date should be
  7021  	// within 1 year timeframe and can not be a date in the past.
  7022  	DeliverByDate string `json:"deliverByDate,omitempty"`
  7023  
  7024  	// LineItemId: The ID of the line item to set metadata. Either
  7025  	// lineItemId or productId is required.
  7026  	LineItemId string `json:"lineItemId,omitempty"`
  7027  
  7028  	// ProductId: The ID of the product to set metadata. This is the REST ID
  7029  	// used in the products service. Either lineItemId or productId is
  7030  	// required.
  7031  	ProductId string `json:"productId,omitempty"`
  7032  
  7033  	// ShipByDate: Updated ship by date, in ISO 8601 format. If not
  7034  	// specified only deliver by date is updated. Provided date should be
  7035  	// within 1 year timeframe and can not be a date in the past.
  7036  	ShipByDate string `json:"shipByDate,omitempty"`
  7037  
  7038  	// ForceSendFields is a list of field names (e.g. "DeliverByDate") to
  7039  	// unconditionally include in API requests. By default, fields with
  7040  	// empty or default values are omitted from API requests. However, any
  7041  	// non-pointer, non-interface field appearing in ForceSendFields will be
  7042  	// sent to the server regardless of whether the field is empty or not.
  7043  	// This may be used to include empty fields in Patch requests.
  7044  	ForceSendFields []string `json:"-"`
  7045  
  7046  	// NullFields is a list of field names (e.g. "DeliverByDate") to include
  7047  	// in API requests with the JSON null value. By default, fields with
  7048  	// empty values are omitted from API requests. However, any field with
  7049  	// an empty value appearing in NullFields will be sent to the server as
  7050  	// null. It is an error if a field in this list has a non-empty value.
  7051  	// This may be used to include null fields in Patch requests.
  7052  	NullFields []string `json:"-"`
  7053  }
  7054  
  7055  func (s *OrdersCustomBatchRequestEntryUpdateLineItemShippingDetails) MarshalJSON() ([]byte, error) {
  7056  	type NoMethod OrdersCustomBatchRequestEntryUpdateLineItemShippingDetails
  7057  	raw := NoMethod(*s)
  7058  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  7059  }
  7060  
  7061  type OrdersCustomBatchRequestEntryUpdateShipment struct {
  7062  	// Carrier: The carrier handling the shipment. Not updated if missing.
  7063  	// See `shipments[].carrier` in the Orders resource representation for a
  7064  	// list of acceptable values.
  7065  	Carrier string `json:"carrier,omitempty"`
  7066  
  7067  	// DeliveryDate: Date on which the shipment has been delivered, in ISO
  7068  	// 8601 format. Optional and can be provided only if `status` is
  7069  	// `delivered`.
  7070  	DeliveryDate string `json:"deliveryDate,omitempty"`
  7071  
  7072  	// ShipmentId: The ID of the shipment.
  7073  	ShipmentId string `json:"shipmentId,omitempty"`
  7074  
  7075  	// Status: New status for the shipment. Not updated if missing.
  7076  	// Acceptable values are: - "delivered" - "undeliverable" -
  7077  	// "readyForPickup"
  7078  	Status string `json:"status,omitempty"`
  7079  
  7080  	// TrackingId: The tracking ID for the shipment. Not updated if missing.
  7081  	TrackingId string `json:"trackingId,omitempty"`
  7082  
  7083  	// ForceSendFields is a list of field names (e.g. "Carrier") to
  7084  	// unconditionally include in API requests. By default, fields with
  7085  	// empty or default values are omitted from API requests. However, any
  7086  	// non-pointer, non-interface field appearing in ForceSendFields will be
  7087  	// sent to the server regardless of whether the field is empty or not.
  7088  	// This may be used to include empty fields in Patch requests.
  7089  	ForceSendFields []string `json:"-"`
  7090  
  7091  	// NullFields is a list of field names (e.g. "Carrier") to include in
  7092  	// API requests with the JSON null value. By default, fields with empty
  7093  	// values are omitted from API requests. However, any field with an
  7094  	// empty value appearing in NullFields will be sent to the server as
  7095  	// null. It is an error if a field in this list has a non-empty value.
  7096  	// This may be used to include null fields in Patch requests.
  7097  	NullFields []string `json:"-"`
  7098  }
  7099  
  7100  func (s *OrdersCustomBatchRequestEntryUpdateShipment) MarshalJSON() ([]byte, error) {
  7101  	type NoMethod OrdersCustomBatchRequestEntryUpdateShipment
  7102  	raw := NoMethod(*s)
  7103  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  7104  }
  7105  
  7106  type OrdersCustomBatchResponse struct {
  7107  	// Entries: The result of the execution of the batch requests.
  7108  	Entries []*OrdersCustomBatchResponseEntry `json:"entries,omitempty"`
  7109  
  7110  	// Kind: Identifies what kind of resource this is. Value: the fixed
  7111  	// string "content#ordersCustomBatchResponse".
  7112  	Kind string `json:"kind,omitempty"`
  7113  
  7114  	// ServerResponse contains the HTTP response code and headers from the
  7115  	// server.
  7116  	googleapi.ServerResponse `json:"-"`
  7117  
  7118  	// ForceSendFields is a list of field names (e.g. "Entries") to
  7119  	// unconditionally include in API requests. By default, fields with
  7120  	// empty or default values are omitted from API requests. However, any
  7121  	// non-pointer, non-interface field appearing in ForceSendFields will be
  7122  	// sent to the server regardless of whether the field is empty or not.
  7123  	// This may be used to include empty fields in Patch requests.
  7124  	ForceSendFields []string `json:"-"`
  7125  
  7126  	// NullFields is a list of field names (e.g. "Entries") to include in
  7127  	// API requests with the JSON null value. By default, fields with empty
  7128  	// values are omitted from API requests. However, any field with an
  7129  	// empty value appearing in NullFields will be sent to the server as
  7130  	// null. It is an error if a field in this list has a non-empty value.
  7131  	// This may be used to include null fields in Patch requests.
  7132  	NullFields []string `json:"-"`
  7133  }
  7134  
  7135  func (s *OrdersCustomBatchResponse) MarshalJSON() ([]byte, error) {
  7136  	type NoMethod OrdersCustomBatchResponse
  7137  	raw := NoMethod(*s)
  7138  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  7139  }
  7140  
  7141  type OrdersCustomBatchResponseEntry struct {
  7142  	// BatchId: The ID of the request entry this entry responds to.
  7143  	BatchId int64 `json:"batchId,omitempty"`
  7144  
  7145  	// Errors: A list of errors defined if and only if the request failed.
  7146  	Errors *Errors `json:"errors,omitempty"`
  7147  
  7148  	// ExecutionStatus: The status of the execution. Only defined if 1. the
  7149  	// request was successful; and 2. the method is not `get`,
  7150  	// `getByMerchantOrderId`, or one of the test methods. Acceptable values
  7151  	// are: - "duplicate" - "executed"
  7152  	ExecutionStatus string `json:"executionStatus,omitempty"`
  7153  
  7154  	// Kind: Identifies what kind of resource this is. Value: the fixed
  7155  	// string "content#ordersCustomBatchResponseEntry"
  7156  	Kind string `json:"kind,omitempty"`
  7157  
  7158  	// Order: The retrieved order. Only defined if the method is `get` and
  7159  	// if the request was successful.
  7160  	Order *Order `json:"order,omitempty"`
  7161  
  7162  	// ForceSendFields is a list of field names (e.g. "BatchId") to
  7163  	// unconditionally include in API requests. By default, fields with
  7164  	// empty or default values are omitted from API requests. However, any
  7165  	// non-pointer, non-interface field appearing in ForceSendFields will be
  7166  	// sent to the server regardless of whether the field is empty or not.
  7167  	// This may be used to include empty fields in Patch requests.
  7168  	ForceSendFields []string `json:"-"`
  7169  
  7170  	// NullFields is a list of field names (e.g. "BatchId") to include in
  7171  	// API requests with the JSON null value. By default, fields with empty
  7172  	// values are omitted from API requests. However, any field with an
  7173  	// empty value appearing in NullFields will be sent to the server as
  7174  	// null. It is an error if a field in this list has a non-empty value.
  7175  	// This may be used to include null fields in Patch requests.
  7176  	NullFields []string `json:"-"`
  7177  }
  7178  
  7179  func (s *OrdersCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
  7180  	type NoMethod OrdersCustomBatchResponseEntry
  7181  	raw := NoMethod(*s)
  7182  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  7183  }
  7184  
  7185  type OrdersGetByMerchantOrderIdResponse struct {
  7186  	// Kind: Identifies what kind of resource this is. Value: the fixed
  7187  	// string "content#ordersGetByMerchantOrderIdResponse".
  7188  	Kind string `json:"kind,omitempty"`
  7189  
  7190  	// Order: The requested order.
  7191  	Order *Order `json:"order,omitempty"`
  7192  
  7193  	// ServerResponse contains the HTTP response code and headers from the
  7194  	// server.
  7195  	googleapi.ServerResponse `json:"-"`
  7196  
  7197  	// ForceSendFields is a list of field names (e.g. "Kind") to
  7198  	// unconditionally include in API requests. By default, fields with
  7199  	// empty or default values are omitted from API requests. However, any
  7200  	// non-pointer, non-interface field appearing in ForceSendFields will be
  7201  	// sent to the server regardless of whether the field is empty or not.
  7202  	// This may be used to include empty fields in Patch requests.
  7203  	ForceSendFields []string `json:"-"`
  7204  
  7205  	// NullFields is a list of field names (e.g. "Kind") to include in API
  7206  	// requests with the JSON null value. By default, fields with empty
  7207  	// values are omitted from API requests. However, any field with an
  7208  	// empty value appearing in NullFields will be sent to the server as
  7209  	// null. It is an error if a field in this list has a non-empty value.
  7210  	// This may be used to include null fields in Patch requests.
  7211  	NullFields []string `json:"-"`
  7212  }
  7213  
  7214  func (s *OrdersGetByMerchantOrderIdResponse) MarshalJSON() ([]byte, error) {
  7215  	type NoMethod OrdersGetByMerchantOrderIdResponse
  7216  	raw := NoMethod(*s)
  7217  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  7218  }
  7219  
  7220  type OrdersGetTestOrderTemplateResponse struct {
  7221  	// Kind: Identifies what kind of resource this is. Value: the fixed
  7222  	// string "content#ordersGetTestOrderTemplateResponse".
  7223  	Kind string `json:"kind,omitempty"`
  7224  
  7225  	// Template: The requested test order template.
  7226  	Template *TestOrder `json:"template,omitempty"`
  7227  
  7228  	// ServerResponse contains the HTTP response code and headers from the
  7229  	// server.
  7230  	googleapi.ServerResponse `json:"-"`
  7231  
  7232  	// ForceSendFields is a list of field names (e.g. "Kind") to
  7233  	// unconditionally include in API requests. By default, fields with
  7234  	// empty or default values are omitted from API requests. However, any
  7235  	// non-pointer, non-interface field appearing in ForceSendFields will be
  7236  	// sent to the server regardless of whether the field is empty or not.
  7237  	// This may be used to include empty fields in Patch requests.
  7238  	ForceSendFields []string `json:"-"`
  7239  
  7240  	// NullFields is a list of field names (e.g. "Kind") to include in API
  7241  	// 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  
  7249  func (s *OrdersGetTestOrderTemplateResponse) MarshalJSON() ([]byte, error) {
  7250  	type NoMethod OrdersGetTestOrderTemplateResponse
  7251  	raw := NoMethod(*s)
  7252  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  7253  }
  7254  
  7255  type OrdersInStoreRefundLineItemRequest struct {
  7256  	// AmountPretax: The amount that is refunded. Required.
  7257  	AmountPretax *Price `json:"amountPretax,omitempty"`
  7258  
  7259  	// AmountTax: Tax amount that correspond to refund amount in
  7260  	// amountPretax. Required.
  7261  	AmountTax *Price `json:"amountTax,omitempty"`
  7262  
  7263  	// LineItemId: The ID of the line item to return. Either lineItemId or
  7264  	// productId is required.
  7265  	LineItemId string `json:"lineItemId,omitempty"`
  7266  
  7267  	// OperationId: The ID of the operation. Unique across all operations
  7268  	// for a given order.
  7269  	OperationId string `json:"operationId,omitempty"`
  7270  
  7271  	// ProductId: The ID of the product to return. This is the REST ID used
  7272  	// in the products service. Either lineItemId or productId is required.
  7273  	ProductId string `json:"productId,omitempty"`
  7274  
  7275  	// Quantity: The quantity to return and refund.
  7276  	Quantity int64 `json:"quantity,omitempty"`
  7277  
  7278  	// Reason: The reason for the return. Acceptable values are: -
  7279  	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
  7280  	// - "deliveredTooLate" - "expiredItem" - "invalidCoupon" -
  7281  	// "malformedShippingAddress" - "other" - "productArrivedDamaged"
  7282  	// - "productNotAsDescribed" - "qualityNotAsExpected" -
  7283  	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
  7284  	// "wrongProductShipped"
  7285  	Reason string `json:"reason,omitempty"`
  7286  
  7287  	// ReasonText: The explanation of the reason.
  7288  	ReasonText string `json:"reasonText,omitempty"`
  7289  
  7290  	// ForceSendFields is a list of field names (e.g. "AmountPretax") to
  7291  	// unconditionally include in API requests. By default, fields with
  7292  	// empty or default values are omitted from API requests. However, any
  7293  	// non-pointer, non-interface field appearing in ForceSendFields will be
  7294  	// sent to the server regardless of whether the field is empty or not.
  7295  	// This may be used to include empty fields in Patch requests.
  7296  	ForceSendFields []string `json:"-"`
  7297  
  7298  	// NullFields is a list of field names (e.g. "AmountPretax") to include
  7299  	// in API requests with the JSON null value. By default, fields with
  7300  	// empty values are omitted from API requests. However, any field with
  7301  	// an empty value appearing in NullFields will be sent to the server as
  7302  	// null. It is an error if a field in this list has a non-empty value.
  7303  	// This may be used to include null fields in Patch requests.
  7304  	NullFields []string `json:"-"`
  7305  }
  7306  
  7307  func (s *OrdersInStoreRefundLineItemRequest) MarshalJSON() ([]byte, error) {
  7308  	type NoMethod OrdersInStoreRefundLineItemRequest
  7309  	raw := NoMethod(*s)
  7310  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  7311  }
  7312  
  7313  type OrdersInStoreRefundLineItemResponse struct {
  7314  	// ExecutionStatus: The status of the execution. Acceptable values are:
  7315  	// - "duplicate" - "executed"
  7316  	ExecutionStatus string `json:"executionStatus,omitempty"`
  7317  
  7318  	// Kind: Identifies what kind of resource this is. Value: the fixed
  7319  	// string "content#ordersInStoreRefundLineItemResponse".
  7320  	Kind string `json:"kind,omitempty"`
  7321  
  7322  	// ServerResponse contains the HTTP response code and headers from the
  7323  	// server.
  7324  	googleapi.ServerResponse `json:"-"`
  7325  
  7326  	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
  7327  	// unconditionally include in API requests. By default, fields with
  7328  	// empty or default values are omitted from API requests. However, any
  7329  	// non-pointer, non-interface field appearing in ForceSendFields will be
  7330  	// sent to the server regardless of whether the field is empty or not.
  7331  	// This may be used to include empty fields in Patch requests.
  7332  	ForceSendFields []string `json:"-"`
  7333  
  7334  	// NullFields is a list of field names (e.g. "ExecutionStatus") to
  7335  	// include in API requests with the JSON null value. By default, fields
  7336  	// with empty values are omitted from API requests. However, any field
  7337  	// with an empty value appearing in NullFields will be sent to the
  7338  	// server as null. It is an error if a field in this list has a
  7339  	// non-empty value. This may be used to include null fields in Patch
  7340  	// requests.
  7341  	NullFields []string `json:"-"`
  7342  }
  7343  
  7344  func (s *OrdersInStoreRefundLineItemResponse) MarshalJSON() ([]byte, error) {
  7345  	type NoMethod OrdersInStoreRefundLineItemResponse
  7346  	raw := NoMethod(*s)
  7347  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  7348  }
  7349  
  7350  type OrdersListResponse struct {
  7351  	// Kind: Identifies what kind of resource this is. Value: the fixed
  7352  	// string "content#ordersListResponse".
  7353  	Kind string `json:"kind,omitempty"`
  7354  
  7355  	// NextPageToken: The token for the retrieval of the next page of
  7356  	// orders.
  7357  	NextPageToken string `json:"nextPageToken,omitempty"`
  7358  
  7359  	Resources []*Order `json:"resources,omitempty"`
  7360  
  7361  	// ServerResponse contains the HTTP response code and headers from the
  7362  	// server.
  7363  	googleapi.ServerResponse `json:"-"`
  7364  
  7365  	// ForceSendFields is a list of field names (e.g. "Kind") to
  7366  	// unconditionally include in API requests. By default, fields with
  7367  	// empty or default values are omitted from API requests. However, any
  7368  	// non-pointer, non-interface field appearing in ForceSendFields will be
  7369  	// sent to the server regardless of whether the field is empty or not.
  7370  	// This may be used to include empty fields in Patch requests.
  7371  	ForceSendFields []string `json:"-"`
  7372  
  7373  	// NullFields is a list of field names (e.g. "Kind") to include in API
  7374  	// requests with the JSON null value. By default, fields with empty
  7375  	// values are omitted from API requests. However, any field with an
  7376  	// empty value appearing in NullFields will be sent to the server as
  7377  	// null. It is an error if a field in this list has a non-empty value.
  7378  	// This may be used to include null fields in Patch requests.
  7379  	NullFields []string `json:"-"`
  7380  }
  7381  
  7382  func (s *OrdersListResponse) MarshalJSON() ([]byte, error) {
  7383  	type NoMethod OrdersListResponse
  7384  	raw := NoMethod(*s)
  7385  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  7386  }
  7387  
  7388  type OrdersRefundRequest struct {
  7389  	// Amount: Deprecated. Please use amountPretax and amountTax instead.
  7390  	Amount *Price `json:"amount,omitempty"`
  7391  
  7392  	// AmountPretax: The amount that is refunded. Either amount or
  7393  	// amountPretax should be filled.
  7394  	AmountPretax *Price `json:"amountPretax,omitempty"`
  7395  
  7396  	// AmountTax: Tax amount that corresponds to refund amount in
  7397  	// amountPretax. Optional, but if filled, amountPretax must be set.
  7398  	// Calculated automatically if not provided.
  7399  	AmountTax *Price `json:"amountTax,omitempty"`
  7400  
  7401  	// OperationId: The ID of the operation. Unique across all operations
  7402  	// for a given order.
  7403  	OperationId string `json:"operationId,omitempty"`
  7404  
  7405  	// Reason: The reason for the refund. Acceptable values are: -
  7406  	// "adjustment" - "courtesyAdjustment" - "customerCanceled" -
  7407  	// "customerDiscretionaryReturn" - "deliveredLateByCarrier" -
  7408  	// "feeAdjustment" - "lateShipmentCredit" - "noInventory" -
  7409  	// "other" - "priceError" - "productArrivedDamaged" -
  7410  	// "productNotAsDescribed" - "shippingCostAdjustment" -
  7411  	// "taxAdjustment" - "undeliverableShippingAddress" -
  7412  	// "wrongProductShipped"
  7413  	Reason string `json:"reason,omitempty"`
  7414  
  7415  	// ReasonText: The explanation of the reason.
  7416  	ReasonText string `json:"reasonText,omitempty"`
  7417  
  7418  	// ForceSendFields is a list of field names (e.g. "Amount") to
  7419  	// unconditionally include in API requests. By default, fields with
  7420  	// empty or default values are omitted from API requests. However, any
  7421  	// non-pointer, non-interface field appearing in ForceSendFields will be
  7422  	// sent to the server regardless of whether the field is empty or not.
  7423  	// This may be used to include empty fields in Patch requests.
  7424  	ForceSendFields []string `json:"-"`
  7425  
  7426  	// NullFields is a list of field names (e.g. "Amount") to include in API
  7427  	// requests with the JSON null value. By default, fields with empty
  7428  	// values are omitted from API requests. However, any field with an
  7429  	// empty value appearing in NullFields will be sent to the server as
  7430  	// null. It is an error if a field in this list has a non-empty value.
  7431  	// This may be used to include null fields in Patch requests.
  7432  	NullFields []string `json:"-"`
  7433  }
  7434  
  7435  func (s *OrdersRefundRequest) MarshalJSON() ([]byte, error) {
  7436  	type NoMethod OrdersRefundRequest
  7437  	raw := NoMethod(*s)
  7438  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  7439  }
  7440  
  7441  type OrdersRefundResponse struct {
  7442  	// ExecutionStatus: The status of the execution. Acceptable values are:
  7443  	// - "duplicate" - "executed"
  7444  	ExecutionStatus string `json:"executionStatus,omitempty"`
  7445  
  7446  	// Kind: Identifies what kind of resource this is. Value: the fixed
  7447  	// string "content#ordersRefundResponse".
  7448  	Kind string `json:"kind,omitempty"`
  7449  
  7450  	// ServerResponse contains the HTTP response code and headers from the
  7451  	// server.
  7452  	googleapi.ServerResponse `json:"-"`
  7453  
  7454  	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
  7455  	// unconditionally include in API requests. By default, fields with
  7456  	// empty or default values are omitted from API requests. However, any
  7457  	// non-pointer, non-interface field appearing in ForceSendFields will be
  7458  	// sent to the server regardless of whether the field is empty or not.
  7459  	// This may be used to include empty fields in Patch requests.
  7460  	ForceSendFields []string `json:"-"`
  7461  
  7462  	// NullFields is a list of field names (e.g. "ExecutionStatus") to
  7463  	// include in API requests with the JSON null value. By default, fields
  7464  	// with empty values are omitted from API requests. However, any field
  7465  	// with an empty value appearing in NullFields will be sent to the
  7466  	// server as null. It is an error if a field in this list has a
  7467  	// non-empty value. This may be used to include null fields in Patch
  7468  	// requests.
  7469  	NullFields []string `json:"-"`
  7470  }
  7471  
  7472  func (s *OrdersRefundResponse) MarshalJSON() ([]byte, error) {
  7473  	type NoMethod OrdersRefundResponse
  7474  	raw := NoMethod(*s)
  7475  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  7476  }
  7477  
  7478  type OrdersRejectReturnLineItemRequest struct {
  7479  	// LineItemId: The ID of the line item to return. Either lineItemId or
  7480  	// productId is required.
  7481  	LineItemId string `json:"lineItemId,omitempty"`
  7482  
  7483  	// OperationId: The ID of the operation. Unique across all operations
  7484  	// for a given order.
  7485  	OperationId string `json:"operationId,omitempty"`
  7486  
  7487  	// ProductId: The ID of the product to return. This is the REST ID used
  7488  	// in the products service. Either lineItemId or productId is required.
  7489  	ProductId string `json:"productId,omitempty"`
  7490  
  7491  	// Quantity: The quantity to return and refund.
  7492  	Quantity int64 `json:"quantity,omitempty"`
  7493  
  7494  	// Reason: The reason for the return. Acceptable values are: -
  7495  	// "damagedOrUsed" - "missingComponent" - "notEligible" -
  7496  	// "other" - "outOfReturnWindow"
  7497  	Reason string `json:"reason,omitempty"`
  7498  
  7499  	// ReasonText: The explanation of the reason.
  7500  	ReasonText string `json:"reasonText,omitempty"`
  7501  
  7502  	// ForceSendFields is a list of field names (e.g. "LineItemId") to
  7503  	// unconditionally include in API requests. By default, fields with
  7504  	// empty or default values are omitted from API requests. However, any
  7505  	// non-pointer, non-interface field appearing in ForceSendFields will be
  7506  	// sent to the server regardless of whether the field is empty or not.
  7507  	// This may be used to include empty fields in Patch requests.
  7508  	ForceSendFields []string `json:"-"`
  7509  
  7510  	// NullFields is a list of field names (e.g. "LineItemId") to include in
  7511  	// API requests with the JSON null value. By default, fields with empty
  7512  	// values are omitted from API requests. However, any field with an
  7513  	// empty value appearing in NullFields will be sent to the server as
  7514  	// null. It is an error if a field in this list has a non-empty value.
  7515  	// This may be used to include null fields in Patch requests.
  7516  	NullFields []string `json:"-"`
  7517  }
  7518  
  7519  func (s *OrdersRejectReturnLineItemRequest) MarshalJSON() ([]byte, error) {
  7520  	type NoMethod OrdersRejectReturnLineItemRequest
  7521  	raw := NoMethod(*s)
  7522  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  7523  }
  7524  
  7525  type OrdersRejectReturnLineItemResponse struct {
  7526  	// ExecutionStatus: The status of the execution. Acceptable values are:
  7527  	// - "duplicate" - "executed"
  7528  	ExecutionStatus string `json:"executionStatus,omitempty"`
  7529  
  7530  	// Kind: Identifies what kind of resource this is. Value: the fixed
  7531  	// string "content#ordersRejectReturnLineItemResponse".
  7532  	Kind string `json:"kind,omitempty"`
  7533  
  7534  	// ServerResponse contains the HTTP response code and headers from the
  7535  	// server.
  7536  	googleapi.ServerResponse `json:"-"`
  7537  
  7538  	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
  7539  	// unconditionally include in API requests. By default, fields with
  7540  	// empty or default values are omitted from API requests. However, any
  7541  	// non-pointer, non-interface field appearing in ForceSendFields will be
  7542  	// sent to the server regardless of whether the field is empty or not.
  7543  	// This may be used to include empty fields in Patch requests.
  7544  	ForceSendFields []string `json:"-"`
  7545  
  7546  	// NullFields is a list of field names (e.g. "ExecutionStatus") to
  7547  	// include in API requests with the JSON null value. By default, fields
  7548  	// with empty values are omitted from API requests. However, any field
  7549  	// with an empty value appearing in NullFields will be sent to the
  7550  	// server as null. It is an error if a field in this list has a
  7551  	// non-empty value. This may be used to include null fields in Patch
  7552  	// requests.
  7553  	NullFields []string `json:"-"`
  7554  }
  7555  
  7556  func (s *OrdersRejectReturnLineItemResponse) MarshalJSON() ([]byte, error) {
  7557  	type NoMethod OrdersRejectReturnLineItemResponse
  7558  	raw := NoMethod(*s)
  7559  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  7560  }
  7561  
  7562  type OrdersReturnLineItemRequest struct {
  7563  	// LineItemId: The ID of the line item to return. Either lineItemId or
  7564  	// productId is required.
  7565  	LineItemId string `json:"lineItemId,omitempty"`
  7566  
  7567  	// OperationId: The ID of the operation. Unique across all operations
  7568  	// for a given order.
  7569  	OperationId string `json:"operationId,omitempty"`
  7570  
  7571  	// ProductId: The ID of the product to return. This is the REST ID used
  7572  	// in the products service. Either lineItemId or productId is required.
  7573  	ProductId string `json:"productId,omitempty"`
  7574  
  7575  	// Quantity: The quantity to return.
  7576  	Quantity int64 `json:"quantity,omitempty"`
  7577  
  7578  	// Reason: The reason for the return. Acceptable values are: -
  7579  	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
  7580  	// - "deliveredTooLate" - "expiredItem" - "invalidCoupon" -
  7581  	// "malformedShippingAddress" - "other" - "productArrivedDamaged"
  7582  	// - "productNotAsDescribed" - "qualityNotAsExpected" -
  7583  	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
  7584  	// "wrongProductShipped"
  7585  	Reason string `json:"reason,omitempty"`
  7586  
  7587  	// ReasonText: The explanation of the reason.
  7588  	ReasonText string `json:"reasonText,omitempty"`
  7589  
  7590  	// ForceSendFields is a list of field names (e.g. "LineItemId") to
  7591  	// unconditionally include in API requests. By default, fields with
  7592  	// empty or default values are omitted from API requests. However, any
  7593  	// non-pointer, non-interface field appearing in ForceSendFields will be
  7594  	// sent to the server regardless of whether the field is empty or not.
  7595  	// This may be used to include empty fields in Patch requests.
  7596  	ForceSendFields []string `json:"-"`
  7597  
  7598  	// NullFields is a list of field names (e.g. "LineItemId") to include in
  7599  	// API requests with the JSON null value. By default, fields with empty
  7600  	// values are omitted from API requests. However, any field with an
  7601  	// empty value appearing in NullFields will be sent to the server as
  7602  	// null. It is an error if a field in this list has a non-empty value.
  7603  	// This may be used to include null fields in Patch requests.
  7604  	NullFields []string `json:"-"`
  7605  }
  7606  
  7607  func (s *OrdersReturnLineItemRequest) MarshalJSON() ([]byte, error) {
  7608  	type NoMethod OrdersReturnLineItemRequest
  7609  	raw := NoMethod(*s)
  7610  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  7611  }
  7612  
  7613  type OrdersReturnLineItemResponse struct {
  7614  	// ExecutionStatus: The status of the execution. Acceptable values are:
  7615  	// - "duplicate" - "executed"
  7616  	ExecutionStatus string `json:"executionStatus,omitempty"`
  7617  
  7618  	// Kind: Identifies what kind of resource this is. Value: the fixed
  7619  	// string "content#ordersReturnLineItemResponse".
  7620  	Kind string `json:"kind,omitempty"`
  7621  
  7622  	// ServerResponse contains the HTTP response code and headers from the
  7623  	// server.
  7624  	googleapi.ServerResponse `json:"-"`
  7625  
  7626  	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
  7627  	// unconditionally include in API requests. By default, fields with
  7628  	// empty or default values are omitted from API requests. However, any
  7629  	// non-pointer, non-interface field appearing in ForceSendFields will be
  7630  	// sent to the server regardless of whether the field is empty or not.
  7631  	// This may be used to include empty fields in Patch requests.
  7632  	ForceSendFields []string `json:"-"`
  7633  
  7634  	// NullFields is a list of field names (e.g. "ExecutionStatus") to
  7635  	// include in API requests with the JSON null value. By default, fields
  7636  	// with empty values are omitted from API requests. However, any field
  7637  	// with an empty value appearing in NullFields will be sent to the
  7638  	// server as null. It is an error if a field in this list has a
  7639  	// non-empty value. This may be used to include null fields in Patch
  7640  	// requests.
  7641  	NullFields []string `json:"-"`
  7642  }
  7643  
  7644  func (s *OrdersReturnLineItemResponse) MarshalJSON() ([]byte, error) {
  7645  	type NoMethod OrdersReturnLineItemResponse
  7646  	raw := NoMethod(*s)
  7647  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  7648  }
  7649  
  7650  type OrdersReturnRefundLineItemRequest struct {
  7651  	// AmountPretax: The amount that is refunded. If omitted, refundless
  7652  	// return is assumed (same as calling returnLineItem method).
  7653  	AmountPretax *Price `json:"amountPretax,omitempty"`
  7654  
  7655  	// AmountTax: Tax amount that corresponds to refund amount in
  7656  	// amountPretax. Optional, but if filled, then amountPretax must be set.
  7657  	// Calculated automatically if not provided.
  7658  	AmountTax *Price `json:"amountTax,omitempty"`
  7659  
  7660  	// LineItemId: The ID of the line item to return. Either lineItemId or
  7661  	// productId is required.
  7662  	LineItemId string `json:"lineItemId,omitempty"`
  7663  
  7664  	// OperationId: The ID of the operation. Unique across all operations
  7665  	// for a given order.
  7666  	OperationId string `json:"operationId,omitempty"`
  7667  
  7668  	// ProductId: The ID of the product to return. This is the REST ID used
  7669  	// in the products service. Either lineItemId or productId is required.
  7670  	ProductId string `json:"productId,omitempty"`
  7671  
  7672  	// Quantity: The quantity to return and refund. Quantity is required.
  7673  	Quantity int64 `json:"quantity,omitempty"`
  7674  
  7675  	// Reason: The reason for the return. Acceptable values are: -
  7676  	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
  7677  	// - "deliveredTooLate" - "expiredItem" - "invalidCoupon" -
  7678  	// "malformedShippingAddress" - "other" - "productArrivedDamaged"
  7679  	// - "productNotAsDescribed" - "qualityNotAsExpected" -
  7680  	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
  7681  	// "wrongProductShipped"
  7682  	Reason string `json:"reason,omitempty"`
  7683  
  7684  	// ReasonText: The explanation of the reason.
  7685  	ReasonText string `json:"reasonText,omitempty"`
  7686  
  7687  	// ForceSendFields is a list of field names (e.g. "AmountPretax") to
  7688  	// unconditionally include in API requests. By default, fields with
  7689  	// empty or default values are omitted from API requests. However, any
  7690  	// non-pointer, non-interface field appearing in ForceSendFields will be
  7691  	// sent to the server regardless of whether the field is empty or not.
  7692  	// This may be used to include empty fields in Patch requests.
  7693  	ForceSendFields []string `json:"-"`
  7694  
  7695  	// NullFields is a list of field names (e.g. "AmountPretax") to include
  7696  	// in API requests with the JSON null value. By default, fields with
  7697  	// empty values are omitted from API requests. However, any field with
  7698  	// an empty value appearing in NullFields will be sent to the server as
  7699  	// null. It is an error if a field in this list has a non-empty value.
  7700  	// This may be used to include null fields in Patch requests.
  7701  	NullFields []string `json:"-"`
  7702  }
  7703  
  7704  func (s *OrdersReturnRefundLineItemRequest) MarshalJSON() ([]byte, error) {
  7705  	type NoMethod OrdersReturnRefundLineItemRequest
  7706  	raw := NoMethod(*s)
  7707  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  7708  }
  7709  
  7710  type OrdersReturnRefundLineItemResponse struct {
  7711  	// ExecutionStatus: The status of the execution. Acceptable values are:
  7712  	// - "duplicate" - "executed"
  7713  	ExecutionStatus string `json:"executionStatus,omitempty"`
  7714  
  7715  	// Kind: Identifies what kind of resource this is. Value: the fixed
  7716  	// string "content#ordersReturnRefundLineItemResponse".
  7717  	Kind string `json:"kind,omitempty"`
  7718  
  7719  	// ServerResponse contains the HTTP response code and headers from the
  7720  	// server.
  7721  	googleapi.ServerResponse `json:"-"`
  7722  
  7723  	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
  7724  	// unconditionally include in API requests. By default, fields with
  7725  	// empty or default values are omitted from API requests. However, any
  7726  	// non-pointer, non-interface field appearing in ForceSendFields will be
  7727  	// sent to the server regardless of whether the field is empty or not.
  7728  	// This may be used to include empty fields in Patch requests.
  7729  	ForceSendFields []string `json:"-"`
  7730  
  7731  	// NullFields is a list of field names (e.g. "ExecutionStatus") to
  7732  	// include in API requests with the JSON null value. By default, fields
  7733  	// with empty values are omitted from API requests. However, any field
  7734  	// with an empty value appearing in NullFields will be sent to the
  7735  	// server as null. It is an error if a field in this list has a
  7736  	// non-empty value. This may be used to include null fields in Patch
  7737  	// requests.
  7738  	NullFields []string `json:"-"`
  7739  }
  7740  
  7741  func (s *OrdersReturnRefundLineItemResponse) MarshalJSON() ([]byte, error) {
  7742  	type NoMethod OrdersReturnRefundLineItemResponse
  7743  	raw := NoMethod(*s)
  7744  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  7745  }
  7746  
  7747  type OrdersSetLineItemMetadataRequest struct {
  7748  	Annotations []*OrderMerchantProvidedAnnotation `json:"annotations,omitempty"`
  7749  
  7750  	// LineItemId: The ID of the line item to set metadata. Either
  7751  	// lineItemId or productId is required.
  7752  	LineItemId string `json:"lineItemId,omitempty"`
  7753  
  7754  	// OperationId: The ID of the operation. Unique across all operations
  7755  	// for a given order.
  7756  	OperationId string `json:"operationId,omitempty"`
  7757  
  7758  	// ProductId: The ID of the product to set metadata. This is the REST ID
  7759  	// used in the products service. Either lineItemId or productId is
  7760  	// required.
  7761  	ProductId string `json:"productId,omitempty"`
  7762  
  7763  	// ForceSendFields is a list of field names (e.g. "Annotations") to
  7764  	// unconditionally include in API requests. By default, fields with
  7765  	// empty or default values are omitted from API requests. However, any
  7766  	// non-pointer, non-interface field appearing in ForceSendFields will be
  7767  	// sent to the server regardless of whether the field is empty or not.
  7768  	// This may be used to include empty fields in Patch requests.
  7769  	ForceSendFields []string `json:"-"`
  7770  
  7771  	// NullFields is a list of field names (e.g. "Annotations") to include
  7772  	// in API requests with the JSON null value. By default, fields with
  7773  	// empty values are omitted from API requests. However, any field with
  7774  	// an empty value appearing in NullFields will be sent to the server as
  7775  	// null. It is an error if a field in this list has a non-empty value.
  7776  	// This may be used to include null fields in Patch requests.
  7777  	NullFields []string `json:"-"`
  7778  }
  7779  
  7780  func (s *OrdersSetLineItemMetadataRequest) MarshalJSON() ([]byte, error) {
  7781  	type NoMethod OrdersSetLineItemMetadataRequest
  7782  	raw := NoMethod(*s)
  7783  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  7784  }
  7785  
  7786  type OrdersSetLineItemMetadataResponse struct {
  7787  	// ExecutionStatus: The status of the execution. Acceptable values are:
  7788  	// - "duplicate" - "executed"
  7789  	ExecutionStatus string `json:"executionStatus,omitempty"`
  7790  
  7791  	// Kind: Identifies what kind of resource this is. Value: the fixed
  7792  	// string "content#ordersSetLineItemMetadataResponse".
  7793  	Kind string `json:"kind,omitempty"`
  7794  
  7795  	// ServerResponse contains the HTTP response code and headers from the
  7796  	// server.
  7797  	googleapi.ServerResponse `json:"-"`
  7798  
  7799  	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
  7800  	// unconditionally include in API requests. By default, fields with
  7801  	// empty or default values are omitted from API requests. However, any
  7802  	// non-pointer, non-interface field appearing in ForceSendFields will be
  7803  	// sent to the server regardless of whether the field is empty or not.
  7804  	// This may be used to include empty fields in Patch requests.
  7805  	ForceSendFields []string `json:"-"`
  7806  
  7807  	// NullFields is a list of field names (e.g. "ExecutionStatus") to
  7808  	// include in API requests with the JSON null value. By default, fields
  7809  	// with empty values are omitted from API requests. However, any field
  7810  	// with an empty value appearing in NullFields will be sent to the
  7811  	// server as null. It is an error if a field in this list has a
  7812  	// non-empty value. This may be used to include null fields in Patch
  7813  	// requests.
  7814  	NullFields []string `json:"-"`
  7815  }
  7816  
  7817  func (s *OrdersSetLineItemMetadataResponse) MarshalJSON() ([]byte, error) {
  7818  	type NoMethod OrdersSetLineItemMetadataResponse
  7819  	raw := NoMethod(*s)
  7820  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  7821  }
  7822  
  7823  type OrdersShipLineItemsRequest struct {
  7824  	// Carrier: Deprecated. Please use shipmentInfo instead. The carrier
  7825  	// handling the shipment. See `shipments[].carrier` in the Orders
  7826  	// resource representation for a list of acceptable values.
  7827  	Carrier string `json:"carrier,omitempty"`
  7828  
  7829  	// LineItems: Line items to ship.
  7830  	LineItems []*OrderShipmentLineItemShipment `json:"lineItems,omitempty"`
  7831  
  7832  	// OperationId: The ID of the operation. Unique across all operations
  7833  	// for a given order.
  7834  	OperationId string `json:"operationId,omitempty"`
  7835  
  7836  	// ShipmentGroupId: ID of the shipment group. Required for orders that
  7837  	// use the orderinvoices service.
  7838  	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
  7839  
  7840  	// ShipmentId: Deprecated. Please use shipmentInfo instead. The ID of
  7841  	// the shipment.
  7842  	ShipmentId string `json:"shipmentId,omitempty"`
  7843  
  7844  	// ShipmentInfos: Shipment information. This field is repeated because a
  7845  	// single line item can be shipped in several packages (and have several
  7846  	// tracking IDs).
  7847  	ShipmentInfos []*OrdersCustomBatchRequestEntryShipLineItemsShipmentInfo `json:"shipmentInfos,omitempty"`
  7848  
  7849  	// TrackingId: Deprecated. Please use shipmentInfo instead. The tracking
  7850  	// ID for the shipment.
  7851  	TrackingId string `json:"trackingId,omitempty"`
  7852  
  7853  	// ForceSendFields is a list of field names (e.g. "Carrier") to
  7854  	// unconditionally include in API requests. By default, fields with
  7855  	// empty or default values are omitted from API requests. However, any
  7856  	// non-pointer, non-interface field appearing in ForceSendFields will be
  7857  	// sent to the server regardless of whether the field is empty or not.
  7858  	// This may be used to include empty fields in Patch requests.
  7859  	ForceSendFields []string `json:"-"`
  7860  
  7861  	// NullFields is a list of field names (e.g. "Carrier") to include in
  7862  	// API requests with the JSON null value. By default, fields with empty
  7863  	// values are omitted from API requests. However, any field with an
  7864  	// empty value appearing in NullFields will be sent to the server as
  7865  	// null. It is an error if a field in this list has a non-empty value.
  7866  	// This may be used to include null fields in Patch requests.
  7867  	NullFields []string `json:"-"`
  7868  }
  7869  
  7870  func (s *OrdersShipLineItemsRequest) MarshalJSON() ([]byte, error) {
  7871  	type NoMethod OrdersShipLineItemsRequest
  7872  	raw := NoMethod(*s)
  7873  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  7874  }
  7875  
  7876  type OrdersShipLineItemsResponse struct {
  7877  	// ExecutionStatus: The status of the execution. Acceptable values are:
  7878  	// - "duplicate" - "executed"
  7879  	ExecutionStatus string `json:"executionStatus,omitempty"`
  7880  
  7881  	// Kind: Identifies what kind of resource this is. Value: the fixed
  7882  	// string "content#ordersShipLineItemsResponse".
  7883  	Kind string `json:"kind,omitempty"`
  7884  
  7885  	// ServerResponse contains the HTTP response code and headers from the
  7886  	// server.
  7887  	googleapi.ServerResponse `json:"-"`
  7888  
  7889  	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
  7890  	// unconditionally include in API requests. By default, fields with
  7891  	// empty or default values are omitted from API requests. However, any
  7892  	// non-pointer, non-interface field appearing in ForceSendFields will be
  7893  	// sent to the server regardless of whether the field is empty or not.
  7894  	// This may be used to include empty fields in Patch requests.
  7895  	ForceSendFields []string `json:"-"`
  7896  
  7897  	// NullFields is a list of field names (e.g. "ExecutionStatus") to
  7898  	// include in API requests with the JSON null value. By default, fields
  7899  	// with empty values are omitted from API requests. However, any field
  7900  	// with an empty value appearing in NullFields will be sent to the
  7901  	// server as null. It is an error if a field in this list has a
  7902  	// non-empty value. This may be used to include null fields in Patch
  7903  	// requests.
  7904  	NullFields []string `json:"-"`
  7905  }
  7906  
  7907  func (s *OrdersShipLineItemsResponse) MarshalJSON() ([]byte, error) {
  7908  	type NoMethod OrdersShipLineItemsResponse
  7909  	raw := NoMethod(*s)
  7910  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  7911  }
  7912  
  7913  type OrdersUpdateLineItemShippingDetailsRequest struct {
  7914  	// DeliverByDate: Updated delivery by date, in ISO 8601 format. If not
  7915  	// specified only ship by date is updated. Provided date should be
  7916  	// within 1 year timeframe and can not be a date in the past.
  7917  	DeliverByDate string `json:"deliverByDate,omitempty"`
  7918  
  7919  	// LineItemId: The ID of the line item to set metadata. Either
  7920  	// lineItemId or productId is required.
  7921  	LineItemId string `json:"lineItemId,omitempty"`
  7922  
  7923  	// OperationId: The ID of the operation. Unique across all operations
  7924  	// for a given order.
  7925  	OperationId string `json:"operationId,omitempty"`
  7926  
  7927  	// ProductId: The ID of the product to set metadata. This is the REST ID
  7928  	// used in the products service. Either lineItemId or productId is
  7929  	// required.
  7930  	ProductId string `json:"productId,omitempty"`
  7931  
  7932  	// ShipByDate: Updated ship by date, in ISO 8601 format. If not
  7933  	// specified only deliver by date is updated. Provided date should be
  7934  	// within 1 year timeframe and can not be a date in the past.
  7935  	ShipByDate string `json:"shipByDate,omitempty"`
  7936  
  7937  	// ForceSendFields is a list of field names (e.g. "DeliverByDate") to
  7938  	// unconditionally include in API requests. By default, fields with
  7939  	// empty or default values are omitted from API requests. However, any
  7940  	// non-pointer, non-interface field appearing in ForceSendFields will be
  7941  	// sent to the server regardless of whether the field is empty or not.
  7942  	// This may be used to include empty fields in Patch requests.
  7943  	ForceSendFields []string `json:"-"`
  7944  
  7945  	// NullFields is a list of field names (e.g. "DeliverByDate") to include
  7946  	// in API requests with the JSON null value. By default, fields with
  7947  	// empty values are omitted from API requests. However, any field with
  7948  	// an empty value appearing in NullFields will be sent to the server as
  7949  	// null. It is an error if a field in this list has a non-empty value.
  7950  	// This may be used to include null fields in Patch requests.
  7951  	NullFields []string `json:"-"`
  7952  }
  7953  
  7954  func (s *OrdersUpdateLineItemShippingDetailsRequest) MarshalJSON() ([]byte, error) {
  7955  	type NoMethod OrdersUpdateLineItemShippingDetailsRequest
  7956  	raw := NoMethod(*s)
  7957  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  7958  }
  7959  
  7960  type OrdersUpdateLineItemShippingDetailsResponse struct {
  7961  	// ExecutionStatus: The status of the execution. Acceptable values are:
  7962  	// - "duplicate" - "executed"
  7963  	ExecutionStatus string `json:"executionStatus,omitempty"`
  7964  
  7965  	// Kind: Identifies what kind of resource this is. Value: the fixed
  7966  	// string "content#ordersUpdateLineItemShippingDetailsResponse".
  7967  	Kind string `json:"kind,omitempty"`
  7968  
  7969  	// ServerResponse contains the HTTP response code and headers from the
  7970  	// server.
  7971  	googleapi.ServerResponse `json:"-"`
  7972  
  7973  	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
  7974  	// unconditionally include in API requests. By default, fields with
  7975  	// empty or default values are omitted from API requests. However, any
  7976  	// non-pointer, non-interface field appearing in ForceSendFields will be
  7977  	// sent to the server regardless of whether the field is empty or not.
  7978  	// This may be used to include empty fields in Patch requests.
  7979  	ForceSendFields []string `json:"-"`
  7980  
  7981  	// NullFields is a list of field names (e.g. "ExecutionStatus") to
  7982  	// include in API requests with the JSON null value. By default, fields
  7983  	// with empty values are omitted from API requests. However, any field
  7984  	// with an empty value appearing in NullFields will be sent to the
  7985  	// server as null. It is an error if a field in this list has a
  7986  	// non-empty value. This may be used to include null fields in Patch
  7987  	// requests.
  7988  	NullFields []string `json:"-"`
  7989  }
  7990  
  7991  func (s *OrdersUpdateLineItemShippingDetailsResponse) MarshalJSON() ([]byte, error) {
  7992  	type NoMethod OrdersUpdateLineItemShippingDetailsResponse
  7993  	raw := NoMethod(*s)
  7994  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  7995  }
  7996  
  7997  type OrdersUpdateMerchantOrderIdRequest struct {
  7998  	// MerchantOrderId: The merchant order id to be assigned to the order.
  7999  	// Must be unique per merchant.
  8000  	MerchantOrderId string `json:"merchantOrderId,omitempty"`
  8001  
  8002  	// OperationId: The ID of the operation. Unique across all operations
  8003  	// for a given order.
  8004  	OperationId string `json:"operationId,omitempty"`
  8005  
  8006  	// ForceSendFields is a list of field names (e.g. "MerchantOrderId") to
  8007  	// unconditionally include in API requests. By default, fields with
  8008  	// empty or default values are omitted from API requests. However, any
  8009  	// non-pointer, non-interface field appearing in ForceSendFields will be
  8010  	// sent to the server regardless of whether the field is empty or not.
  8011  	// This may be used to include empty fields in Patch requests.
  8012  	ForceSendFields []string `json:"-"`
  8013  
  8014  	// NullFields is a list of field names (e.g. "MerchantOrderId") to
  8015  	// include in API requests with the JSON null value. By default, fields
  8016  	// with empty values are omitted from API requests. However, any field
  8017  	// with an empty value appearing in NullFields will be sent to the
  8018  	// server as null. It is an error if a field in this list has a
  8019  	// non-empty value. This may be used to include null fields in Patch
  8020  	// requests.
  8021  	NullFields []string `json:"-"`
  8022  }
  8023  
  8024  func (s *OrdersUpdateMerchantOrderIdRequest) MarshalJSON() ([]byte, error) {
  8025  	type NoMethod OrdersUpdateMerchantOrderIdRequest
  8026  	raw := NoMethod(*s)
  8027  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  8028  }
  8029  
  8030  type OrdersUpdateMerchantOrderIdResponse struct {
  8031  	// ExecutionStatus: The status of the execution. Acceptable values are:
  8032  	// - "duplicate" - "executed"
  8033  	ExecutionStatus string `json:"executionStatus,omitempty"`
  8034  
  8035  	// Kind: Identifies what kind of resource this is. Value: the fixed
  8036  	// string "content#ordersUpdateMerchantOrderIdResponse".
  8037  	Kind string `json:"kind,omitempty"`
  8038  
  8039  	// ServerResponse contains the HTTP response code and headers from the
  8040  	// server.
  8041  	googleapi.ServerResponse `json:"-"`
  8042  
  8043  	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
  8044  	// unconditionally include in API requests. By default, fields with
  8045  	// empty or default values are omitted from API requests. However, any
  8046  	// non-pointer, non-interface field appearing in ForceSendFields will be
  8047  	// sent to the server regardless of whether the field is empty or not.
  8048  	// This may be used to include empty fields in Patch requests.
  8049  	ForceSendFields []string `json:"-"`
  8050  
  8051  	// NullFields is a list of field names (e.g. "ExecutionStatus") to
  8052  	// include in API requests with the JSON null value. By default, fields
  8053  	// with empty values are omitted from API requests. However, any field
  8054  	// with an empty value appearing in NullFields will be sent to the
  8055  	// server as null. It is an error if a field in this list has a
  8056  	// non-empty value. This may be used to include null fields in Patch
  8057  	// requests.
  8058  	NullFields []string `json:"-"`
  8059  }
  8060  
  8061  func (s *OrdersUpdateMerchantOrderIdResponse) MarshalJSON() ([]byte, error) {
  8062  	type NoMethod OrdersUpdateMerchantOrderIdResponse
  8063  	raw := NoMethod(*s)
  8064  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  8065  }
  8066  
  8067  type OrdersUpdateShipmentRequest struct {
  8068  	// Carrier: The carrier handling the shipment. Not updated if missing.
  8069  	// See `shipments[].carrier` in the Orders resource representation for a
  8070  	// list of acceptable values.
  8071  	Carrier string `json:"carrier,omitempty"`
  8072  
  8073  	// DeliveryDate: Date on which the shipment has been delivered, in ISO
  8074  	// 8601 format. Optional and can be provided only if `status` is
  8075  	// `delivered`.
  8076  	DeliveryDate string `json:"deliveryDate,omitempty"`
  8077  
  8078  	// OperationId: The ID of the operation. Unique across all operations
  8079  	// for a given order.
  8080  	OperationId string `json:"operationId,omitempty"`
  8081  
  8082  	// ShipmentId: The ID of the shipment.
  8083  	ShipmentId string `json:"shipmentId,omitempty"`
  8084  
  8085  	// Status: New status for the shipment. Not updated if missing.
  8086  	// Acceptable values are: - "delivered" - "undeliverable" -
  8087  	// "readyForPickup"
  8088  	Status string `json:"status,omitempty"`
  8089  
  8090  	// TrackingId: The tracking ID for the shipment. Not updated if missing.
  8091  	TrackingId string `json:"trackingId,omitempty"`
  8092  
  8093  	// ForceSendFields is a list of field names (e.g. "Carrier") to
  8094  	// unconditionally include in API requests. By default, fields with
  8095  	// empty or default values are omitted from API requests. However, any
  8096  	// non-pointer, non-interface field appearing in ForceSendFields will be
  8097  	// sent to the server regardless of whether the field is empty or not.
  8098  	// This may be used to include empty fields in Patch requests.
  8099  	ForceSendFields []string `json:"-"`
  8100  
  8101  	// NullFields is a list of field names (e.g. "Carrier") to include in
  8102  	// API requests with the JSON null value. By default, fields with empty
  8103  	// values are omitted from API requests. However, any field with an
  8104  	// empty value appearing in NullFields will be sent to the server as
  8105  	// null. It is an error if a field in this list has a non-empty value.
  8106  	// This may be used to include null fields in Patch requests.
  8107  	NullFields []string `json:"-"`
  8108  }
  8109  
  8110  func (s *OrdersUpdateShipmentRequest) MarshalJSON() ([]byte, error) {
  8111  	type NoMethod OrdersUpdateShipmentRequest
  8112  	raw := NoMethod(*s)
  8113  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  8114  }
  8115  
  8116  type OrdersUpdateShipmentResponse struct {
  8117  	// ExecutionStatus: The status of the execution. Acceptable values are:
  8118  	// - "duplicate" - "executed"
  8119  	ExecutionStatus string `json:"executionStatus,omitempty"`
  8120  
  8121  	// Kind: Identifies what kind of resource this is. Value: the fixed
  8122  	// string "content#ordersUpdateShipmentResponse".
  8123  	Kind string `json:"kind,omitempty"`
  8124  
  8125  	// ServerResponse contains the HTTP response code and headers from the
  8126  	// server.
  8127  	googleapi.ServerResponse `json:"-"`
  8128  
  8129  	// ForceSendFields is a list of field names (e.g. "ExecutionStatus") to
  8130  	// unconditionally include in API requests. By default, fields with
  8131  	// empty or default values are omitted from API requests. However, any
  8132  	// non-pointer, non-interface field appearing in ForceSendFields will be
  8133  	// sent to the server regardless of whether the field is empty or not.
  8134  	// This may be used to include empty fields in Patch requests.
  8135  	ForceSendFields []string `json:"-"`
  8136  
  8137  	// NullFields is a list of field names (e.g. "ExecutionStatus") to
  8138  	// include in API requests with the JSON null value. By default, fields
  8139  	// with empty values are omitted from API requests. However, any field
  8140  	// with an empty value appearing in NullFields will be sent to the
  8141  	// server as null. It is an error if a field in this list has a
  8142  	// non-empty value. This may be used to include null fields in Patch
  8143  	// requests.
  8144  	NullFields []string `json:"-"`
  8145  }
  8146  
  8147  func (s *OrdersUpdateShipmentResponse) MarshalJSON() ([]byte, error) {
  8148  	type NoMethod OrdersUpdateShipmentResponse
  8149  	raw := NoMethod(*s)
  8150  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  8151  }
  8152  
  8153  type PickupCarrierService struct {
  8154  	// CarrierName: The name of the pickup carrier (e.g., "UPS").
  8155  	// Required.
  8156  	CarrierName string `json:"carrierName,omitempty"`
  8157  
  8158  	// ServiceName: The name of the pickup service (e.g., "Access point").
  8159  	// Required.
  8160  	ServiceName string `json:"serviceName,omitempty"`
  8161  
  8162  	// ForceSendFields is a list of field names (e.g. "CarrierName") to
  8163  	// unconditionally include in API requests. By default, fields with
  8164  	// empty or default values are omitted from API requests. However, any
  8165  	// non-pointer, non-interface field appearing in ForceSendFields will be
  8166  	// sent to the server regardless of whether the field is empty or not.
  8167  	// This may be used to include empty fields in Patch requests.
  8168  	ForceSendFields []string `json:"-"`
  8169  
  8170  	// NullFields is a list of field names (e.g. "CarrierName") to include
  8171  	// in API requests with the JSON null value. By default, fields with
  8172  	// empty values are omitted from API requests. However, any field with
  8173  	// an empty value appearing in NullFields will be sent to the server as
  8174  	// null. It is an error if a field in this list has a non-empty value.
  8175  	// This may be used to include null fields in Patch requests.
  8176  	NullFields []string `json:"-"`
  8177  }
  8178  
  8179  func (s *PickupCarrierService) MarshalJSON() ([]byte, error) {
  8180  	type NoMethod PickupCarrierService
  8181  	raw := NoMethod(*s)
  8182  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  8183  }
  8184  
  8185  type PickupServicesPickupService struct {
  8186  	// CarrierName: The name of the carrier (e.g., "UPS"). Always present.
  8187  	CarrierName string `json:"carrierName,omitempty"`
  8188  
  8189  	// Country: The CLDR country code of the carrier (e.g., "US"). Always
  8190  	// present.
  8191  	Country string `json:"country,omitempty"`
  8192  
  8193  	// ServiceName: The name of the pickup service (e.g., "Access point").
  8194  	// Always present.
  8195  	ServiceName string `json:"serviceName,omitempty"`
  8196  
  8197  	// ForceSendFields is a list of field names (e.g. "CarrierName") to
  8198  	// unconditionally include in API requests. By default, fields with
  8199  	// empty or default values are omitted from API requests. However, any
  8200  	// non-pointer, non-interface field appearing in ForceSendFields will be
  8201  	// sent to the server regardless of whether the field is empty or not.
  8202  	// This may be used to include empty fields in Patch requests.
  8203  	ForceSendFields []string `json:"-"`
  8204  
  8205  	// NullFields is a list of field names (e.g. "CarrierName") to include
  8206  	// in API requests with the JSON null value. By default, fields with
  8207  	// empty values are omitted from API requests. However, any field with
  8208  	// an empty value appearing in NullFields will be sent to the server as
  8209  	// null. It is an error if a field in this list has a non-empty value.
  8210  	// This may be used to include null fields in Patch requests.
  8211  	NullFields []string `json:"-"`
  8212  }
  8213  
  8214  func (s *PickupServicesPickupService) MarshalJSON() ([]byte, error) {
  8215  	type NoMethod PickupServicesPickupService
  8216  	raw := NoMethod(*s)
  8217  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  8218  }
  8219  
  8220  type PosCustomBatchRequest struct {
  8221  	// Entries: The request entries to be processed in the batch.
  8222  	Entries []*PosCustomBatchRequestEntry `json:"entries,omitempty"`
  8223  
  8224  	// ForceSendFields is a list of field names (e.g. "Entries") to
  8225  	// unconditionally include in API requests. By default, fields with
  8226  	// empty or default values are omitted from API requests. However, any
  8227  	// non-pointer, non-interface field appearing in ForceSendFields will be
  8228  	// sent to the server regardless of whether the field is empty or not.
  8229  	// This may be used to include empty fields in Patch requests.
  8230  	ForceSendFields []string `json:"-"`
  8231  
  8232  	// NullFields is a list of field names (e.g. "Entries") to include in
  8233  	// API requests with the JSON null value. By default, fields with empty
  8234  	// values are omitted from API requests. However, any field with an
  8235  	// empty value appearing in NullFields will be sent to the server as
  8236  	// null. It is an error if a field in this list has a non-empty value.
  8237  	// This may be used to include null fields in Patch requests.
  8238  	NullFields []string `json:"-"`
  8239  }
  8240  
  8241  func (s *PosCustomBatchRequest) MarshalJSON() ([]byte, error) {
  8242  	type NoMethod PosCustomBatchRequest
  8243  	raw := NoMethod(*s)
  8244  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  8245  }
  8246  
  8247  type PosCustomBatchRequestEntry struct {
  8248  	// BatchId: An entry ID, unique within the batch request.
  8249  	BatchId int64 `json:"batchId,omitempty"`
  8250  
  8251  	// Inventory: The inventory to submit. This should be set only if the
  8252  	// method is `inventory`.
  8253  	Inventory *PosInventory `json:"inventory,omitempty"`
  8254  
  8255  	// MerchantId: The ID of the POS data provider.
  8256  	MerchantId uint64 `json:"merchantId,omitempty,string"`
  8257  
  8258  	// Method: The method of the batch entry. Acceptable values are: -
  8259  	// "delete" - "get" - "insert" - "inventory" - "sale"
  8260  	Method string `json:"method,omitempty"`
  8261  
  8262  	// Sale: The sale information to submit. This should be set only if the
  8263  	// method is `sale`.
  8264  	Sale *PosSale `json:"sale,omitempty"`
  8265  
  8266  	// Store: The store information to submit. This should be set only if
  8267  	// the method is `insert`.
  8268  	Store *PosStore `json:"store,omitempty"`
  8269  
  8270  	// StoreCode: The store code. This should be set only if the method is
  8271  	// `delete` or `get`.
  8272  	StoreCode string `json:"storeCode,omitempty"`
  8273  
  8274  	// TargetMerchantId: The ID of the account for which to get/submit data.
  8275  	TargetMerchantId uint64 `json:"targetMerchantId,omitempty,string"`
  8276  
  8277  	// ForceSendFields is a list of field names (e.g. "BatchId") to
  8278  	// unconditionally include in API requests. By default, fields with
  8279  	// empty or default values are omitted from API requests. However, any
  8280  	// non-pointer, non-interface field appearing in ForceSendFields will be
  8281  	// sent to the server regardless of whether the field is empty or not.
  8282  	// This may be used to include empty fields in Patch requests.
  8283  	ForceSendFields []string `json:"-"`
  8284  
  8285  	// NullFields is a list of field names (e.g. "BatchId") to include in
  8286  	// API requests with the JSON null value. By default, fields with empty
  8287  	// values are omitted from API requests. However, any field with an
  8288  	// empty value appearing in NullFields will be sent to the server as
  8289  	// null. It is an error if a field in this list has a non-empty value.
  8290  	// This may be used to include null fields in Patch requests.
  8291  	NullFields []string `json:"-"`
  8292  }
  8293  
  8294  func (s *PosCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
  8295  	type NoMethod PosCustomBatchRequestEntry
  8296  	raw := NoMethod(*s)
  8297  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  8298  }
  8299  
  8300  type PosCustomBatchResponse struct {
  8301  	// Entries: The result of the execution of the batch requests.
  8302  	Entries []*PosCustomBatchResponseEntry `json:"entries,omitempty"`
  8303  
  8304  	// Kind: Identifies what kind of resource this is. Value: the fixed
  8305  	// string "content#posCustomBatchResponse".
  8306  	Kind string `json:"kind,omitempty"`
  8307  
  8308  	// ServerResponse contains the HTTP response code and headers from the
  8309  	// server.
  8310  	googleapi.ServerResponse `json:"-"`
  8311  
  8312  	// ForceSendFields is a list of field names (e.g. "Entries") to
  8313  	// unconditionally include in API requests. By default, fields with
  8314  	// empty or default values are omitted from API requests. However, any
  8315  	// non-pointer, non-interface field appearing in ForceSendFields will be
  8316  	// sent to the server regardless of whether the field is empty or not.
  8317  	// This may be used to include empty fields in Patch requests.
  8318  	ForceSendFields []string `json:"-"`
  8319  
  8320  	// NullFields is a list of field names (e.g. "Entries") to include in
  8321  	// API requests with the JSON null value. By default, fields with empty
  8322  	// values are omitted from API requests. However, any field with an
  8323  	// empty value appearing in NullFields will be sent to the server as
  8324  	// null. It is an error if a field in this list has a non-empty value.
  8325  	// This may be used to include null fields in Patch requests.
  8326  	NullFields []string `json:"-"`
  8327  }
  8328  
  8329  func (s *PosCustomBatchResponse) MarshalJSON() ([]byte, error) {
  8330  	type NoMethod PosCustomBatchResponse
  8331  	raw := NoMethod(*s)
  8332  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  8333  }
  8334  
  8335  type PosCustomBatchResponseEntry struct {
  8336  	// BatchId: The ID of the request entry to which this entry responds.
  8337  	BatchId int64 `json:"batchId,omitempty"`
  8338  
  8339  	// Errors: A list of errors defined if, and only if, the request failed.
  8340  	Errors *Errors `json:"errors,omitempty"`
  8341  
  8342  	// Inventory: The updated inventory information.
  8343  	Inventory *PosInventory `json:"inventory,omitempty"`
  8344  
  8345  	// Kind: Identifies what kind of resource this is. Value: the fixed
  8346  	// string "content#posCustomBatchResponseEntry"
  8347  	Kind string `json:"kind,omitempty"`
  8348  
  8349  	// Sale: The updated sale information.
  8350  	Sale *PosSale `json:"sale,omitempty"`
  8351  
  8352  	// Store: The retrieved or updated store information.
  8353  	Store *PosStore `json:"store,omitempty"`
  8354  
  8355  	// ForceSendFields is a list of field names (e.g. "BatchId") to
  8356  	// unconditionally include in API requests. By default, fields with
  8357  	// empty or default values are omitted from API requests. However, any
  8358  	// non-pointer, non-interface field appearing in ForceSendFields will be
  8359  	// sent to the server regardless of whether the field is empty or not.
  8360  	// This may be used to include empty fields in Patch requests.
  8361  	ForceSendFields []string `json:"-"`
  8362  
  8363  	// NullFields is a list of field names (e.g. "BatchId") to include in
  8364  	// API requests with the JSON null value. By default, fields with empty
  8365  	// values are omitted from API requests. However, any field with an
  8366  	// empty value appearing in NullFields will be sent to the server as
  8367  	// null. It is an error if a field in this list has a non-empty value.
  8368  	// This may be used to include null fields in Patch requests.
  8369  	NullFields []string `json:"-"`
  8370  }
  8371  
  8372  func (s *PosCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
  8373  	type NoMethod PosCustomBatchResponseEntry
  8374  	raw := NoMethod(*s)
  8375  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  8376  }
  8377  
  8378  type PosDataProviders struct {
  8379  	// Country: Country code.
  8380  	Country string `json:"country,omitempty"`
  8381  
  8382  	// PosDataProviders: A list of POS data providers.
  8383  	PosDataProviders []*PosDataProvidersPosDataProvider `json:"posDataProviders,omitempty"`
  8384  
  8385  	// ForceSendFields is a list of field names (e.g. "Country") to
  8386  	// unconditionally include in API requests. By default, fields with
  8387  	// empty or default values are omitted from API requests. However, any
  8388  	// non-pointer, non-interface field appearing in ForceSendFields will be
  8389  	// sent to the server regardless of whether the field is empty or not.
  8390  	// This may be used to include empty fields in Patch requests.
  8391  	ForceSendFields []string `json:"-"`
  8392  
  8393  	// NullFields is a list of field names (e.g. "Country") to include in
  8394  	// API requests with the JSON null value. By default, fields with empty
  8395  	// values are omitted from API requests. However, any field with an
  8396  	// empty value appearing in NullFields will be sent to the server as
  8397  	// null. It is an error if a field in this list has a non-empty value.
  8398  	// This may be used to include null fields in Patch requests.
  8399  	NullFields []string `json:"-"`
  8400  }
  8401  
  8402  func (s *PosDataProviders) MarshalJSON() ([]byte, error) {
  8403  	type NoMethod PosDataProviders
  8404  	raw := NoMethod(*s)
  8405  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  8406  }
  8407  
  8408  type PosDataProvidersPosDataProvider struct {
  8409  	// DisplayName: The display name of Pos data Provider.
  8410  	DisplayName string `json:"displayName,omitempty"`
  8411  
  8412  	// FullName: The full name of this POS data Provider.
  8413  	FullName string `json:"fullName,omitempty"`
  8414  
  8415  	// ProviderId: The ID of the account.
  8416  	ProviderId uint64 `json:"providerId,omitempty,string"`
  8417  
  8418  	// ForceSendFields is a list of field names (e.g. "DisplayName") to
  8419  	// unconditionally include in API requests. By default, fields with
  8420  	// empty or default values are omitted from API requests. However, any
  8421  	// non-pointer, non-interface field appearing in ForceSendFields will be
  8422  	// sent to the server regardless of whether the field is empty or not.
  8423  	// This may be used to include empty fields in Patch requests.
  8424  	ForceSendFields []string `json:"-"`
  8425  
  8426  	// NullFields is a list of field names (e.g. "DisplayName") to include
  8427  	// in API requests with the JSON null value. By default, fields with
  8428  	// empty values are omitted from API requests. However, any field with
  8429  	// an empty value appearing in NullFields will be sent to the server as
  8430  	// null. It is an error if a field in this list has a non-empty value.
  8431  	// This may be used to include null fields in Patch requests.
  8432  	NullFields []string `json:"-"`
  8433  }
  8434  
  8435  func (s *PosDataProvidersPosDataProvider) MarshalJSON() ([]byte, error) {
  8436  	type NoMethod PosDataProvidersPosDataProvider
  8437  	raw := NoMethod(*s)
  8438  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  8439  }
  8440  
  8441  // PosInventory: The absolute quantity of an item available at the given
  8442  // store.
  8443  type PosInventory struct {
  8444  	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
  8445  	// the item.
  8446  	ContentLanguage string `json:"contentLanguage,omitempty"`
  8447  
  8448  	// Gtin: Global Trade Item Number.
  8449  	Gtin string `json:"gtin,omitempty"`
  8450  
  8451  	// ItemId: Required. A unique identifier for the item.
  8452  	ItemId string `json:"itemId,omitempty"`
  8453  
  8454  	// Kind: Identifies what kind of resource this is. Value: the fixed
  8455  	// string "content#posInventory"
  8456  	Kind string `json:"kind,omitempty"`
  8457  
  8458  	// Price: Required. The current price of the item.
  8459  	Price *Price `json:"price,omitempty"`
  8460  
  8461  	// Quantity: Required. The available quantity of the item.
  8462  	Quantity int64 `json:"quantity,omitempty,string"`
  8463  
  8464  	// StoreCode: Required. The identifier of the merchant's store. Either a
  8465  	// `storeCode` inserted via the API or the code of the store in Google
  8466  	// My Business.
  8467  	StoreCode string `json:"storeCode,omitempty"`
  8468  
  8469  	// TargetCountry: Required. The CLDR territory code for the item.
  8470  	TargetCountry string `json:"targetCountry,omitempty"`
  8471  
  8472  	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
  8473  	Timestamp string `json:"timestamp,omitempty"`
  8474  
  8475  	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
  8476  	// unconditionally include in API requests. By default, fields with
  8477  	// empty or default values are omitted from API requests. However, any
  8478  	// non-pointer, non-interface field appearing in ForceSendFields will be
  8479  	// sent to the server regardless of whether the field is empty or not.
  8480  	// This may be used to include empty fields in Patch requests.
  8481  	ForceSendFields []string `json:"-"`
  8482  
  8483  	// NullFields is a list of field names (e.g. "ContentLanguage") to
  8484  	// include in API requests with the JSON null value. By default, fields
  8485  	// with empty values are omitted from API requests. However, any field
  8486  	// with an empty value appearing in NullFields will be sent to the
  8487  	// server as null. It is an error if a field in this list has a
  8488  	// non-empty value. This may be used to include null fields in Patch
  8489  	// requests.
  8490  	NullFields []string `json:"-"`
  8491  }
  8492  
  8493  func (s *PosInventory) MarshalJSON() ([]byte, error) {
  8494  	type NoMethod PosInventory
  8495  	raw := NoMethod(*s)
  8496  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  8497  }
  8498  
  8499  type PosInventoryRequest struct {
  8500  	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
  8501  	// the item.
  8502  	ContentLanguage string `json:"contentLanguage,omitempty"`
  8503  
  8504  	// Gtin: Global Trade Item Number.
  8505  	Gtin string `json:"gtin,omitempty"`
  8506  
  8507  	// ItemId: Required. A unique identifier for the item.
  8508  	ItemId string `json:"itemId,omitempty"`
  8509  
  8510  	// Price: Required. The current price of the item.
  8511  	Price *Price `json:"price,omitempty"`
  8512  
  8513  	// Quantity: Required. The available quantity of the item.
  8514  	Quantity int64 `json:"quantity,omitempty,string"`
  8515  
  8516  	// StoreCode: Required. The identifier of the merchant's store. Either a
  8517  	// `storeCode` inserted via the API or the code of the store in Google
  8518  	// My Business.
  8519  	StoreCode string `json:"storeCode,omitempty"`
  8520  
  8521  	// TargetCountry: Required. The CLDR territory code for the item.
  8522  	TargetCountry string `json:"targetCountry,omitempty"`
  8523  
  8524  	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
  8525  	Timestamp string `json:"timestamp,omitempty"`
  8526  
  8527  	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
  8528  	// unconditionally include in API requests. By default, fields with
  8529  	// empty or default values are omitted from API requests. However, any
  8530  	// non-pointer, non-interface field appearing in ForceSendFields will be
  8531  	// sent to the server regardless of whether the field is empty or not.
  8532  	// This may be used to include empty fields in Patch requests.
  8533  	ForceSendFields []string `json:"-"`
  8534  
  8535  	// NullFields is a list of field names (e.g. "ContentLanguage") to
  8536  	// include in API requests with the JSON null value. By default, fields
  8537  	// with empty values are omitted from API requests. However, any field
  8538  	// with an empty value appearing in NullFields will be sent to the
  8539  	// server as null. It is an error if a field in this list has a
  8540  	// non-empty value. This may be used to include null fields in Patch
  8541  	// requests.
  8542  	NullFields []string `json:"-"`
  8543  }
  8544  
  8545  func (s *PosInventoryRequest) MarshalJSON() ([]byte, error) {
  8546  	type NoMethod PosInventoryRequest
  8547  	raw := NoMethod(*s)
  8548  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  8549  }
  8550  
  8551  type PosInventoryResponse struct {
  8552  	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
  8553  	// the item.
  8554  	ContentLanguage string `json:"contentLanguage,omitempty"`
  8555  
  8556  	// Gtin: Global Trade Item Number.
  8557  	Gtin string `json:"gtin,omitempty"`
  8558  
  8559  	// ItemId: Required. A unique identifier for the item.
  8560  	ItemId string `json:"itemId,omitempty"`
  8561  
  8562  	// Kind: Identifies what kind of resource this is. Value: the fixed
  8563  	// string "content#posInventoryResponse".
  8564  	Kind string `json:"kind,omitempty"`
  8565  
  8566  	// Price: Required. The current price of the item.
  8567  	Price *Price `json:"price,omitempty"`
  8568  
  8569  	// Quantity: Required. The available quantity of the item.
  8570  	Quantity int64 `json:"quantity,omitempty,string"`
  8571  
  8572  	// StoreCode: Required. The identifier of the merchant's store. Either a
  8573  	// `storeCode` inserted via the API or the code of the store in Google
  8574  	// My Business.
  8575  	StoreCode string `json:"storeCode,omitempty"`
  8576  
  8577  	// TargetCountry: Required. The CLDR territory code for the item.
  8578  	TargetCountry string `json:"targetCountry,omitempty"`
  8579  
  8580  	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
  8581  	Timestamp string `json:"timestamp,omitempty"`
  8582  
  8583  	// ServerResponse contains the HTTP response code and headers from the
  8584  	// server.
  8585  	googleapi.ServerResponse `json:"-"`
  8586  
  8587  	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
  8588  	// unconditionally include in API requests. By default, fields with
  8589  	// empty or default values are omitted from API requests. However, any
  8590  	// non-pointer, non-interface field appearing in ForceSendFields will be
  8591  	// sent to the server regardless of whether the field is empty or not.
  8592  	// This may be used to include empty fields in Patch requests.
  8593  	ForceSendFields []string `json:"-"`
  8594  
  8595  	// NullFields is a list of field names (e.g. "ContentLanguage") to
  8596  	// include in API requests with the JSON null value. By default, fields
  8597  	// with empty values are omitted from API requests. However, any field
  8598  	// with an empty value appearing in NullFields will be sent to the
  8599  	// server as null. It is an error if a field in this list has a
  8600  	// non-empty value. This may be used to include null fields in Patch
  8601  	// requests.
  8602  	NullFields []string `json:"-"`
  8603  }
  8604  
  8605  func (s *PosInventoryResponse) MarshalJSON() ([]byte, error) {
  8606  	type NoMethod PosInventoryResponse
  8607  	raw := NoMethod(*s)
  8608  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  8609  }
  8610  
  8611  type PosListResponse struct {
  8612  	// Kind: Identifies what kind of resource this is. Value: the fixed
  8613  	// string "content#posListResponse".
  8614  	Kind string `json:"kind,omitempty"`
  8615  
  8616  	Resources []*PosStore `json:"resources,omitempty"`
  8617  
  8618  	// ServerResponse contains the HTTP response code and headers from the
  8619  	// server.
  8620  	googleapi.ServerResponse `json:"-"`
  8621  
  8622  	// ForceSendFields is a list of field names (e.g. "Kind") to
  8623  	// unconditionally include in API requests. By default, fields with
  8624  	// empty or default values are omitted from API requests. However, any
  8625  	// non-pointer, non-interface field appearing in ForceSendFields will be
  8626  	// sent to the server regardless of whether the field is empty or not.
  8627  	// This may be used to include empty fields in Patch requests.
  8628  	ForceSendFields []string `json:"-"`
  8629  
  8630  	// NullFields is a list of field names (e.g. "Kind") to include in API
  8631  	// requests with the JSON null value. By default, fields with empty
  8632  	// values are omitted from API requests. However, any field with an
  8633  	// empty value appearing in NullFields will be sent to the server as
  8634  	// null. It is an error if a field in this list has a non-empty value.
  8635  	// This may be used to include null fields in Patch requests.
  8636  	NullFields []string `json:"-"`
  8637  }
  8638  
  8639  func (s *PosListResponse) MarshalJSON() ([]byte, error) {
  8640  	type NoMethod PosListResponse
  8641  	raw := NoMethod(*s)
  8642  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  8643  }
  8644  
  8645  // PosSale: The change of the available quantity of an item at the given
  8646  // store.
  8647  type PosSale struct {
  8648  	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
  8649  	// the item.
  8650  	ContentLanguage string `json:"contentLanguage,omitempty"`
  8651  
  8652  	// Gtin: Global Trade Item Number.
  8653  	Gtin string `json:"gtin,omitempty"`
  8654  
  8655  	// ItemId: Required. A unique identifier for the item.
  8656  	ItemId string `json:"itemId,omitempty"`
  8657  
  8658  	// Kind: Identifies what kind of resource this is. Value: the fixed
  8659  	// string "content#posSale"
  8660  	Kind string `json:"kind,omitempty"`
  8661  
  8662  	// Price: Required. The price of the item.
  8663  	Price *Price `json:"price,omitempty"`
  8664  
  8665  	// Quantity: Required. The relative change of the available quantity.
  8666  	// Negative for items returned.
  8667  	Quantity int64 `json:"quantity,omitempty,string"`
  8668  
  8669  	// SaleId: A unique ID to group items from the same sale event.
  8670  	SaleId string `json:"saleId,omitempty"`
  8671  
  8672  	// StoreCode: Required. The identifier of the merchant's store. Either a
  8673  	// `storeCode` inserted via the API or the code of the store in Google
  8674  	// My Business.
  8675  	StoreCode string `json:"storeCode,omitempty"`
  8676  
  8677  	// TargetCountry: Required. The CLDR territory code for the item.
  8678  	TargetCountry string `json:"targetCountry,omitempty"`
  8679  
  8680  	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
  8681  	Timestamp string `json:"timestamp,omitempty"`
  8682  
  8683  	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
  8684  	// unconditionally include in API requests. By default, fields with
  8685  	// empty or default values are omitted from API requests. However, any
  8686  	// non-pointer, non-interface field appearing in ForceSendFields will be
  8687  	// sent to the server regardless of whether the field is empty or not.
  8688  	// This may be used to include empty fields in Patch requests.
  8689  	ForceSendFields []string `json:"-"`
  8690  
  8691  	// NullFields is a list of field names (e.g. "ContentLanguage") to
  8692  	// include in API requests with the JSON null value. By default, fields
  8693  	// with empty values are omitted from API requests. However, any field
  8694  	// with an empty value appearing in NullFields will be sent to the
  8695  	// server as null. It is an error if a field in this list has a
  8696  	// non-empty value. This may be used to include null fields in Patch
  8697  	// requests.
  8698  	NullFields []string `json:"-"`
  8699  }
  8700  
  8701  func (s *PosSale) MarshalJSON() ([]byte, error) {
  8702  	type NoMethod PosSale
  8703  	raw := NoMethod(*s)
  8704  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  8705  }
  8706  
  8707  type PosSaleRequest struct {
  8708  	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
  8709  	// the item.
  8710  	ContentLanguage string `json:"contentLanguage,omitempty"`
  8711  
  8712  	// Gtin: Global Trade Item Number.
  8713  	Gtin string `json:"gtin,omitempty"`
  8714  
  8715  	// ItemId: Required. A unique identifier for the item.
  8716  	ItemId string `json:"itemId,omitempty"`
  8717  
  8718  	// Price: Required. The price of the item.
  8719  	Price *Price `json:"price,omitempty"`
  8720  
  8721  	// Quantity: Required. The relative change of the available quantity.
  8722  	// Negative for items returned.
  8723  	Quantity int64 `json:"quantity,omitempty,string"`
  8724  
  8725  	// SaleId: A unique ID to group items from the same sale event.
  8726  	SaleId string `json:"saleId,omitempty"`
  8727  
  8728  	// StoreCode: Required. The identifier of the merchant's store. Either a
  8729  	// `storeCode` inserted via the API or the code of the store in Google
  8730  	// My Business.
  8731  	StoreCode string `json:"storeCode,omitempty"`
  8732  
  8733  	// TargetCountry: Required. The CLDR territory code for the item.
  8734  	TargetCountry string `json:"targetCountry,omitempty"`
  8735  
  8736  	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
  8737  	Timestamp string `json:"timestamp,omitempty"`
  8738  
  8739  	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
  8740  	// unconditionally include in API requests. By default, fields with
  8741  	// empty or default values are omitted from API requests. However, any
  8742  	// non-pointer, non-interface field appearing in ForceSendFields will be
  8743  	// sent to the server regardless of whether the field is empty or not.
  8744  	// This may be used to include empty fields in Patch requests.
  8745  	ForceSendFields []string `json:"-"`
  8746  
  8747  	// NullFields is a list of field names (e.g. "ContentLanguage") to
  8748  	// include in API requests with the JSON null value. By default, fields
  8749  	// with empty values are omitted from API requests. However, any field
  8750  	// with an empty value appearing in NullFields will be sent to the
  8751  	// server as null. It is an error if a field in this list has a
  8752  	// non-empty value. This may be used to include null fields in Patch
  8753  	// requests.
  8754  	NullFields []string `json:"-"`
  8755  }
  8756  
  8757  func (s *PosSaleRequest) MarshalJSON() ([]byte, error) {
  8758  	type NoMethod PosSaleRequest
  8759  	raw := NoMethod(*s)
  8760  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  8761  }
  8762  
  8763  type PosSaleResponse struct {
  8764  	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
  8765  	// the item.
  8766  	ContentLanguage string `json:"contentLanguage,omitempty"`
  8767  
  8768  	// Gtin: Global Trade Item Number.
  8769  	Gtin string `json:"gtin,omitempty"`
  8770  
  8771  	// ItemId: Required. A unique identifier for the item.
  8772  	ItemId string `json:"itemId,omitempty"`
  8773  
  8774  	// Kind: Identifies what kind of resource this is. Value: the fixed
  8775  	// string "content#posSaleResponse".
  8776  	Kind string `json:"kind,omitempty"`
  8777  
  8778  	// Price: Required. The price of the item.
  8779  	Price *Price `json:"price,omitempty"`
  8780  
  8781  	// Quantity: Required. The relative change of the available quantity.
  8782  	// Negative for items returned.
  8783  	Quantity int64 `json:"quantity,omitempty,string"`
  8784  
  8785  	// SaleId: A unique ID to group items from the same sale event.
  8786  	SaleId string `json:"saleId,omitempty"`
  8787  
  8788  	// StoreCode: Required. The identifier of the merchant's store. Either a
  8789  	// `storeCode` inserted via the API or the code of the store in Google
  8790  	// My Business.
  8791  	StoreCode string `json:"storeCode,omitempty"`
  8792  
  8793  	// TargetCountry: Required. The CLDR territory code for the item.
  8794  	TargetCountry string `json:"targetCountry,omitempty"`
  8795  
  8796  	// Timestamp: Required. The inventory timestamp, in ISO 8601 format.
  8797  	Timestamp string `json:"timestamp,omitempty"`
  8798  
  8799  	// ServerResponse contains the HTTP response code and headers from the
  8800  	// server.
  8801  	googleapi.ServerResponse `json:"-"`
  8802  
  8803  	// ForceSendFields is a list of field names (e.g. "ContentLanguage") to
  8804  	// unconditionally include in API requests. By default, fields with
  8805  	// empty or default values are omitted from API requests. However, any
  8806  	// non-pointer, non-interface field appearing in ForceSendFields will be
  8807  	// sent to the server regardless of whether the field is empty or not.
  8808  	// This may be used to include empty fields in Patch requests.
  8809  	ForceSendFields []string `json:"-"`
  8810  
  8811  	// NullFields is a list of field names (e.g. "ContentLanguage") to
  8812  	// include in API requests with the JSON null value. By default, fields
  8813  	// with empty values are omitted from API requests. However, any field
  8814  	// with an empty value appearing in NullFields will be sent to the
  8815  	// server as null. It is an error if a field in this list has a
  8816  	// non-empty value. This may be used to include null fields in Patch
  8817  	// requests.
  8818  	NullFields []string `json:"-"`
  8819  }
  8820  
  8821  func (s *PosSaleResponse) MarshalJSON() ([]byte, error) {
  8822  	type NoMethod PosSaleResponse
  8823  	raw := NoMethod(*s)
  8824  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  8825  }
  8826  
  8827  // PosStore: Store resource.
  8828  type PosStore struct {
  8829  	// GcidCategory: The business type of the store.
  8830  	GcidCategory []string `json:"gcidCategory,omitempty"`
  8831  
  8832  	// Kind: Identifies what kind of resource this is. Value: the fixed
  8833  	// string "content#posStore"
  8834  	Kind string `json:"kind,omitempty"`
  8835  
  8836  	// PhoneNumber: The store phone number.
  8837  	PhoneNumber string `json:"phoneNumber,omitempty"`
  8838  
  8839  	// PlaceId: The Google Place Id of the store location.
  8840  	PlaceId string `json:"placeId,omitempty"`
  8841  
  8842  	// StoreAddress: Required. The street address of the store.
  8843  	StoreAddress string `json:"storeAddress,omitempty"`
  8844  
  8845  	// StoreCode: Required. A store identifier that is unique for the given
  8846  	// merchant.
  8847  	StoreCode string `json:"storeCode,omitempty"`
  8848  
  8849  	// StoreName: The merchant or store name.
  8850  	StoreName string `json:"storeName,omitempty"`
  8851  
  8852  	// WebsiteUrl: The website url for the store or merchant.
  8853  	WebsiteUrl string `json:"websiteUrl,omitempty"`
  8854  
  8855  	// ServerResponse contains the HTTP response code and headers from the
  8856  	// server.
  8857  	googleapi.ServerResponse `json:"-"`
  8858  
  8859  	// ForceSendFields is a list of field names (e.g. "GcidCategory") to
  8860  	// unconditionally include in API requests. By default, fields with
  8861  	// empty or default values are omitted from API requests. However, any
  8862  	// non-pointer, non-interface field appearing in ForceSendFields will be
  8863  	// sent to the server regardless of whether the field is empty or not.
  8864  	// This may be used to include empty fields in Patch requests.
  8865  	ForceSendFields []string `json:"-"`
  8866  
  8867  	// NullFields is a list of field names (e.g. "GcidCategory") to include
  8868  	// in API requests with the JSON null value. By default, fields with
  8869  	// empty values are omitted from API requests. However, any field with
  8870  	// an empty value appearing in NullFields will be sent to the server as
  8871  	// null. It is an error if a field in this list has a non-empty value.
  8872  	// This may be used to include null fields in Patch requests.
  8873  	NullFields []string `json:"-"`
  8874  }
  8875  
  8876  func (s *PosStore) MarshalJSON() ([]byte, error) {
  8877  	type NoMethod PosStore
  8878  	raw := NoMethod(*s)
  8879  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  8880  }
  8881  
  8882  type PostalCodeGroup struct {
  8883  	// Country: The CLDR territory code of the country the postal code group
  8884  	// applies to. Required.
  8885  	Country string `json:"country,omitempty"`
  8886  
  8887  	// Name: The name of the postal code group, referred to in headers.
  8888  	// Required.
  8889  	Name string `json:"name,omitempty"`
  8890  
  8891  	// PostalCodeRanges: A range of postal codes. Required.
  8892  	PostalCodeRanges []*PostalCodeRange `json:"postalCodeRanges,omitempty"`
  8893  
  8894  	// ForceSendFields is a list of field names (e.g. "Country") to
  8895  	// unconditionally include in API requests. By default, fields with
  8896  	// empty or default values are omitted from API requests. However, any
  8897  	// non-pointer, non-interface field appearing in ForceSendFields will be
  8898  	// sent to the server regardless of whether the field is empty or not.
  8899  	// This may be used to include empty fields in Patch requests.
  8900  	ForceSendFields []string `json:"-"`
  8901  
  8902  	// NullFields is a list of field names (e.g. "Country") to include in
  8903  	// API requests with the JSON null value. By default, fields with empty
  8904  	// values are omitted from API requests. However, any field with an
  8905  	// empty value appearing in NullFields will be sent to the server as
  8906  	// null. It is an error if a field in this list has a non-empty value.
  8907  	// This may be used to include null fields in Patch requests.
  8908  	NullFields []string `json:"-"`
  8909  }
  8910  
  8911  func (s *PostalCodeGroup) MarshalJSON() ([]byte, error) {
  8912  	type NoMethod PostalCodeGroup
  8913  	raw := NoMethod(*s)
  8914  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  8915  }
  8916  
  8917  type PostalCodeRange struct {
  8918  	// PostalCodeRangeBegin: A postal code or a pattern of the form
  8919  	// `prefix*` denoting the inclusive lower bound of the range defining
  8920  	// the area. Examples values: "94108", "9410*", "9*". Required.
  8921  	PostalCodeRangeBegin string `json:"postalCodeRangeBegin,omitempty"`
  8922  
  8923  	// PostalCodeRangeEnd: A postal code or a pattern of the form `prefix*`
  8924  	// denoting the inclusive upper bound of the range defining the area. It
  8925  	// must have the same length as `postalCodeRangeBegin`: if
  8926  	// `postalCodeRangeBegin` is a postal code then `postalCodeRangeEnd`
  8927  	// must be a postal code too; if `postalCodeRangeBegin` is a pattern
  8928  	// then `postalCodeRangeEnd` must be a pattern with the same prefix
  8929  	// length. Optional: if not set, then the area is defined as being all
  8930  	// the postal codes matching `postalCodeRangeBegin`.
  8931  	PostalCodeRangeEnd string `json:"postalCodeRangeEnd,omitempty"`
  8932  
  8933  	// ForceSendFields is a list of field names (e.g.
  8934  	// "PostalCodeRangeBegin") to unconditionally include in API requests.
  8935  	// By default, fields with empty or default values are omitted from API
  8936  	// requests. However, any non-pointer, non-interface field appearing in
  8937  	// ForceSendFields will be sent to the server regardless of whether the
  8938  	// field is empty or not. This may be used to include empty fields in
  8939  	// Patch requests.
  8940  	ForceSendFields []string `json:"-"`
  8941  
  8942  	// NullFields is a list of field names (e.g. "PostalCodeRangeBegin") to
  8943  	// include in API requests with the JSON null value. By default, fields
  8944  	// with empty values are omitted from API requests. However, any field
  8945  	// with an empty value appearing in NullFields will be sent to the
  8946  	// server as null. It is an error if a field in this list has a
  8947  	// non-empty value. This may be used to include null fields in Patch
  8948  	// requests.
  8949  	NullFields []string `json:"-"`
  8950  }
  8951  
  8952  func (s *PostalCodeRange) MarshalJSON() ([]byte, error) {
  8953  	type NoMethod PostalCodeRange
  8954  	raw := NoMethod(*s)
  8955  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  8956  }
  8957  
  8958  type Price struct {
  8959  	// Currency: The currency of the price.
  8960  	Currency string `json:"currency,omitempty"`
  8961  
  8962  	// Value: The price represented as a number.
  8963  	Value string `json:"value,omitempty"`
  8964  
  8965  	// ForceSendFields is a list of field names (e.g. "Currency") to
  8966  	// unconditionally include in API requests. By default, fields with
  8967  	// empty or default values are omitted from API requests. However, any
  8968  	// non-pointer, non-interface field appearing in ForceSendFields will be
  8969  	// sent to the server regardless of whether the field is empty or not.
  8970  	// This may be used to include empty fields in Patch requests.
  8971  	ForceSendFields []string `json:"-"`
  8972  
  8973  	// NullFields is a list of field names (e.g. "Currency") to include in
  8974  	// API requests with the JSON null value. By default, fields with empty
  8975  	// values are omitted from API requests. However, any field with an
  8976  	// empty value appearing in NullFields will be sent to the server as
  8977  	// null. It is an error if a field in this list has a non-empty value.
  8978  	// This may be used to include null fields in Patch requests.
  8979  	NullFields []string `json:"-"`
  8980  }
  8981  
  8982  func (s *Price) MarshalJSON() ([]byte, error) {
  8983  	type NoMethod Price
  8984  	raw := NoMethod(*s)
  8985  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  8986  }
  8987  
  8988  // Product:  Required product attributes are primarily defined by the
  8989  // products data specification. See the Products Data Specification Help
  8990  // Center article for information. Product data. After inserting,
  8991  // updating, or deleting a product, it may take several minutes before
  8992  // changes take effect.
  8993  type Product struct {
  8994  	// AdditionalImageLinks: Additional URLs of images of the item.
  8995  	AdditionalImageLinks []string `json:"additionalImageLinks,omitempty"`
  8996  
  8997  	// AdditionalProductTypes: Additional categories of the item (formatted
  8998  	// as in products data specification).
  8999  	AdditionalProductTypes []string `json:"additionalProductTypes,omitempty"`
  9000  
  9001  	// Adult: Should be set to true if the item is targeted towards adults.
  9002  	Adult bool `json:"adult,omitempty"`
  9003  
  9004  	// AdwordsGrouping: Used to group items in an arbitrary way. Only for
  9005  	// CPA%, discouraged otherwise.
  9006  	AdwordsGrouping string `json:"adwordsGrouping,omitempty"`
  9007  
  9008  	// AdwordsLabels: Similar to adwords_grouping, but only works on CPC.
  9009  	AdwordsLabels []string `json:"adwordsLabels,omitempty"`
  9010  
  9011  	// AdwordsRedirect: Allows advertisers to override the item URL when the
  9012  	// product is shown within the context of Product Ads.
  9013  	AdwordsRedirect string `json:"adwordsRedirect,omitempty"`
  9014  
  9015  	// AgeGroup: Target age group of the item. Acceptable values are: -
  9016  	// "adult" - "infant" - "kids" - "newborn" - "toddler" -
  9017  	// "youngAdult"
  9018  	AgeGroup string `json:"ageGroup,omitempty"`
  9019  
  9020  	// Aspects: Deprecated. Do not use.
  9021  	Aspects []*ProductAspect `json:"aspects,omitempty"`
  9022  
  9023  	// Availability: Availability status of the item. Acceptable values are:
  9024  	// - "in stock" - "out of stock" - "preorder"
  9025  	Availability string `json:"availability,omitempty"`
  9026  
  9027  	// AvailabilityDate: The day a pre-ordered product becomes available for
  9028  	// delivery, in ISO 8601 format.
  9029  	AvailabilityDate string `json:"availabilityDate,omitempty"`
  9030  
  9031  	// Brand: Brand of the item.
  9032  	Brand string `json:"brand,omitempty"`
  9033  
  9034  	// CanonicalLink: URL for the canonical version of your item's landing
  9035  	// page.
  9036  	CanonicalLink string `json:"canonicalLink,omitempty"`
  9037  
  9038  	// Channel: Required. The item's channel (online or local). Acceptable
  9039  	// values are: - "local" - "online"
  9040  	Channel string `json:"channel,omitempty"`
  9041  
  9042  	// Color: Color of the item.
  9043  	Color string `json:"color,omitempty"`
  9044  
  9045  	// Condition: Condition or state of the item. Acceptable values are: -
  9046  	// "new" - "refurbished" - "used"
  9047  	Condition string `json:"condition,omitempty"`
  9048  
  9049  	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
  9050  	// the item.
  9051  	ContentLanguage string `json:"contentLanguage,omitempty"`
  9052  
  9053  	// CostOfGoodsSold: Cost of goods sold. Used for gross profit reporting.
  9054  	CostOfGoodsSold *Price `json:"costOfGoodsSold,omitempty"`
  9055  
  9056  	// CustomAttributes: A list of custom (merchant-provided) attributes. It
  9057  	// can also be used for submitting any attribute of the feed
  9058  	// specification in its generic form (e.g., `{ "name": "size type",
  9059  	// "value": "regular" }`). This is useful for submitting attributes not
  9060  	// explicitly exposed by the API, such as additional attributes used for
  9061  	// Buy on Google (formerly known as Shopping Actions).
  9062  	CustomAttributes []*CustomAttribute `json:"customAttributes,omitempty"`
  9063  
  9064  	// CustomGroups: A list of custom (merchant-provided) custom attribute
  9065  	// groups.
  9066  	CustomGroups []*CustomGroup `json:"customGroups,omitempty"`
  9067  
  9068  	// CustomLabel0: Custom label 0 for custom grouping of items in a
  9069  	// Shopping campaign.
  9070  	CustomLabel0 string `json:"customLabel0,omitempty"`
  9071  
  9072  	// CustomLabel1: Custom label 1 for custom grouping of items in a
  9073  	// Shopping campaign.
  9074  	CustomLabel1 string `json:"customLabel1,omitempty"`
  9075  
  9076  	// CustomLabel2: Custom label 2 for custom grouping of items in a
  9077  	// Shopping campaign.
  9078  	CustomLabel2 string `json:"customLabel2,omitempty"`
  9079  
  9080  	// CustomLabel3: Custom label 3 for custom grouping of items in a
  9081  	// Shopping campaign.
  9082  	CustomLabel3 string `json:"customLabel3,omitempty"`
  9083  
  9084  	// CustomLabel4: Custom label 4 for custom grouping of items in a
  9085  	// Shopping campaign.
  9086  	CustomLabel4 string `json:"customLabel4,omitempty"`
  9087  
  9088  	// Description: Description of the item.
  9089  	Description string `json:"description,omitempty"`
  9090  
  9091  	// Destinations: Specifies the intended destinations for the product.
  9092  	Destinations []*ProductDestination `json:"destinations,omitempty"`
  9093  
  9094  	// DisplayAdsId: An identifier for an item for dynamic remarketing
  9095  	// campaigns.
  9096  	DisplayAdsId string `json:"displayAdsId,omitempty"`
  9097  
  9098  	// DisplayAdsLink: URL directly to your item's landing page for dynamic
  9099  	// remarketing campaigns.
  9100  	DisplayAdsLink string `json:"displayAdsLink,omitempty"`
  9101  
  9102  	// DisplayAdsSimilarIds: Advertiser-specified recommendations.
  9103  	DisplayAdsSimilarIds []string `json:"displayAdsSimilarIds,omitempty"`
  9104  
  9105  	// DisplayAdsTitle: Title of an item for dynamic remarketing campaigns.
  9106  	DisplayAdsTitle string `json:"displayAdsTitle,omitempty"`
  9107  
  9108  	// DisplayAdsValue: Offer margin for dynamic remarketing campaigns.
  9109  	DisplayAdsValue float64 `json:"displayAdsValue,omitempty"`
  9110  
  9111  	// EnergyEfficiencyClass: The energy efficiency class as defined in EU
  9112  	// directive 2010/30/EU. Acceptable values are: - "A" - "A+" -
  9113  	// "A++" - "A+++" - "B" - "C" - "D" - "E" - "F" - "G"
  9114  	EnergyEfficiencyClass string `json:"energyEfficiencyClass,omitempty"`
  9115  
  9116  	// ExpirationDate: Date on which the item should expire, as specified
  9117  	// upon insertion, in ISO 8601 format. The actual expiration date in
  9118  	// Google Shopping is exposed in `productstatuses` as
  9119  	// `googleExpirationDate` and might be earlier if `expirationDate` is
  9120  	// too far in the future.
  9121  	ExpirationDate string `json:"expirationDate,omitempty"`
  9122  
  9123  	// Gender: Target gender of the item. Acceptable values are: -
  9124  	// "female" - "male" - "unisex"
  9125  	Gender string `json:"gender,omitempty"`
  9126  
  9127  	// GoogleProductCategory: Google's category of the item (see Google
  9128  	// product taxonomy
  9129  	// (https://support.google.com/merchants/answer/1705911)). When querying
  9130  	// products, this field will contain the user provided value. There is
  9131  	// currently no way to get back the auto assigned google product
  9132  	// categories through the API.
  9133  	GoogleProductCategory string `json:"googleProductCategory,omitempty"`
  9134  
  9135  	// Gtin: Global Trade Item Number (GTIN) of the item.
  9136  	Gtin string `json:"gtin,omitempty"`
  9137  
  9138  	// Id: The REST ID of the product. Content API methods that operate on
  9139  	// products take this as their `productId` parameter. The REST ID for a
  9140  	// product is of the form channel:contentLanguage: targetCountry:
  9141  	// offerId.
  9142  	Id string `json:"id,omitempty"`
  9143  
  9144  	// IdentifierExists: False when the item does not have unique product
  9145  	// identifiers appropriate to its category, such as GTIN, MPN, and
  9146  	// brand. Required according to the Unique Product Identifier Rules for
  9147  	// all target countries except for Canada.
  9148  	IdentifierExists bool `json:"identifierExists,omitempty"`
  9149  
  9150  	// ImageLink: URL of an image of the item.
  9151  	ImageLink string `json:"imageLink,omitempty"`
  9152  
  9153  	// Installment: Number and amount of installments to pay for an item.
  9154  	Installment *Installment `json:"installment,omitempty"`
  9155  
  9156  	// IsBundle: Whether the item is a merchant-defined bundle. A bundle is
  9157  	// a custom grouping of different products sold by a merchant for a
  9158  	// single price.
  9159  	IsBundle bool `json:"isBundle,omitempty"`
  9160  
  9161  	// ItemGroupId: Shared identifier for all variants of the same product.
  9162  	ItemGroupId string `json:"itemGroupId,omitempty"`
  9163  
  9164  	// Kind: Identifies what kind of resource this is. Value: the fixed
  9165  	// string "content#product"
  9166  	Kind string `json:"kind,omitempty"`
  9167  
  9168  	// Link: URL directly linking to your item's page on your website.
  9169  	Link string `json:"link,omitempty"`
  9170  
  9171  	// LoyaltyPoints: Loyalty points that users receive after purchasing the
  9172  	// item. Japan only.
  9173  	LoyaltyPoints *LoyaltyPoints `json:"loyaltyPoints,omitempty"`
  9174  
  9175  	// Material: The material of which the item is made.
  9176  	Material string `json:"material,omitempty"`
  9177  
  9178  	// MaxEnergyEfficiencyClass: The energy efficiency class as defined in
  9179  	// EU directive 2010/30/EU. Acceptable values are: - "A" - "A+" -
  9180  	// "A++" - "A+++" - "B" - "C" - "D" - "E" - "F" - "G"
  9181  	MaxEnergyEfficiencyClass string `json:"maxEnergyEfficiencyClass,omitempty"`
  9182  
  9183  	// MaxHandlingTime: Maximal product handling time (in business days).
  9184  	MaxHandlingTime int64 `json:"maxHandlingTime,omitempty,string"`
  9185  
  9186  	// MinEnergyEfficiencyClass: The energy efficiency class as defined in
  9187  	// EU directive 2010/30/EU. Acceptable values are: - "A" - "A+" -
  9188  	// "A++" - "A+++" - "B" - "C" - "D" - "E" - "F" - "G"
  9189  	MinEnergyEfficiencyClass string `json:"minEnergyEfficiencyClass,omitempty"`
  9190  
  9191  	// MinHandlingTime: Minimal product handling time (in business days).
  9192  	MinHandlingTime int64 `json:"minHandlingTime,omitempty,string"`
  9193  
  9194  	// MobileLink: URL for the mobile-optimized version of your item's
  9195  	// landing page.
  9196  	MobileLink string `json:"mobileLink,omitempty"`
  9197  
  9198  	// Mpn: Manufacturer Part Number (MPN) of the item.
  9199  	Mpn string `json:"mpn,omitempty"`
  9200  
  9201  	// Multipack: The number of identical products in a merchant-defined
  9202  	// multipack.
  9203  	Multipack int64 `json:"multipack,omitempty,string"`
  9204  
  9205  	// OfferId: Required. A unique identifier for the item. Leading and
  9206  	// trailing whitespaces are stripped and multiple whitespaces are
  9207  	// replaced by a single whitespace upon submission. Only valid unicode
  9208  	// characters are accepted. See the products feed specification for
  9209  	// details. *Note:* Content API methods that operate on products take
  9210  	// the REST ID of the product, *not* this identifier.
  9211  	OfferId string `json:"offerId,omitempty"`
  9212  
  9213  	// OnlineOnly: Deprecated.
  9214  	OnlineOnly bool `json:"onlineOnly,omitempty"`
  9215  
  9216  	// Pattern: The item's pattern (e.g. polka dots).
  9217  	Pattern string `json:"pattern,omitempty"`
  9218  
  9219  	// Price: Price of the item.
  9220  	Price *Price `json:"price,omitempty"`
  9221  
  9222  	// ProductType: Your category of the item (formatted as in products data
  9223  	// specification).
  9224  	ProductType string `json:"productType,omitempty"`
  9225  
  9226  	// PromotionIds: The unique ID of a promotion.
  9227  	PromotionIds []string `json:"promotionIds,omitempty"`
  9228  
  9229  	// SalePrice: Advertised sale price of the item.
  9230  	SalePrice *Price `json:"salePrice,omitempty"`
  9231  
  9232  	// SalePriceEffectiveDate: Date range during which the item is on sale
  9233  	// (see products data specification ).
  9234  	SalePriceEffectiveDate string `json:"salePriceEffectiveDate,omitempty"`
  9235  
  9236  	// SellOnGoogleQuantity: The quantity of the product that is available
  9237  	// for selling on Google. Supported only for online products.
  9238  	SellOnGoogleQuantity int64 `json:"sellOnGoogleQuantity,omitempty,string"`
  9239  
  9240  	// Shipping: Shipping rules.
  9241  	Shipping []*ProductShipping `json:"shipping,omitempty"`
  9242  
  9243  	// ShippingHeight: Height of the item for shipping.
  9244  	ShippingHeight *ProductShippingDimension `json:"shippingHeight,omitempty"`
  9245  
  9246  	// ShippingLabel: The shipping label of the product, used to group
  9247  	// product in account-level shipping rules.
  9248  	ShippingLabel string `json:"shippingLabel,omitempty"`
  9249  
  9250  	// ShippingLength: Length of the item for shipping.
  9251  	ShippingLength *ProductShippingDimension `json:"shippingLength,omitempty"`
  9252  
  9253  	// ShippingWeight: Weight of the item for shipping.
  9254  	ShippingWeight *ProductShippingWeight `json:"shippingWeight,omitempty"`
  9255  
  9256  	// ShippingWidth: Width of the item for shipping.
  9257  	ShippingWidth *ProductShippingDimension `json:"shippingWidth,omitempty"`
  9258  
  9259  	// SizeSystem: System in which the size is specified. Recommended for
  9260  	// apparel items. Acceptable values are: - "AU" - "BR" - "CN" -
  9261  	// "DE" - "EU" - "FR" - "IT" - "JP" - "MEX" - "UK" -
  9262  	// "US"
  9263  	SizeSystem string `json:"sizeSystem,omitempty"`
  9264  
  9265  	// SizeType: The cut of the item. Recommended for apparel items.
  9266  	// Acceptable values are: - "big and tall" - "maternity" -
  9267  	// "oversize" - "petite" - "plus" - "regular"
  9268  	SizeType string `json:"sizeType,omitempty"`
  9269  
  9270  	// Sizes: Size of the item. Only one value is allowed. For variants with
  9271  	// different sizes, insert a separate product for each size with the
  9272  	// same `itemGroupId` value (see size definition).
  9273  	Sizes []string `json:"sizes,omitempty"`
  9274  
  9275  	// Source: The source of the offer, i.e., how the offer was created.
  9276  	// Acceptable values are: - "api" - "crawl" - "feed"
  9277  	Source string `json:"source,omitempty"`
  9278  
  9279  	// TargetCountry: Required. The CLDR territory code for the item.
  9280  	TargetCountry string `json:"targetCountry,omitempty"`
  9281  
  9282  	// Taxes: Tax information.
  9283  	Taxes []*ProductTax `json:"taxes,omitempty"`
  9284  
  9285  	// Title: Title of the item.
  9286  	Title string `json:"title,omitempty"`
  9287  
  9288  	// UnitPricingBaseMeasure: The preference of the denominator of the unit
  9289  	// price.
  9290  	UnitPricingBaseMeasure *ProductUnitPricingBaseMeasure `json:"unitPricingBaseMeasure,omitempty"`
  9291  
  9292  	// UnitPricingMeasure: The measure and dimension of an item.
  9293  	UnitPricingMeasure *ProductUnitPricingMeasure `json:"unitPricingMeasure,omitempty"`
  9294  
  9295  	// ValidatedDestinations: Deprecated. The read-only list of intended
  9296  	// destinations which passed validation.
  9297  	ValidatedDestinations []string `json:"validatedDestinations,omitempty"`
  9298  
  9299  	// Warnings: Read-only warnings.
  9300  	Warnings []*Error `json:"warnings,omitempty"`
  9301  
  9302  	// ServerResponse contains the HTTP response code and headers from the
  9303  	// server.
  9304  	googleapi.ServerResponse `json:"-"`
  9305  
  9306  	// ForceSendFields is a list of field names (e.g.
  9307  	// "AdditionalImageLinks") to unconditionally include in API requests.
  9308  	// By default, fields with empty or default values are omitted from API
  9309  	// requests. However, any non-pointer, non-interface field appearing in
  9310  	// ForceSendFields will be sent to the server regardless of whether the
  9311  	// field is empty or not. This may be used to include empty fields in
  9312  	// Patch requests.
  9313  	ForceSendFields []string `json:"-"`
  9314  
  9315  	// NullFields is a list of field names (e.g. "AdditionalImageLinks") to
  9316  	// include in API requests with the JSON null value. By default, fields
  9317  	// with empty values are omitted from API requests. However, any field
  9318  	// with an empty value appearing in NullFields will be sent to the
  9319  	// server as null. It is an error if a field in this list has a
  9320  	// non-empty value. This may be used to include null fields in Patch
  9321  	// requests.
  9322  	NullFields []string `json:"-"`
  9323  }
  9324  
  9325  func (s *Product) MarshalJSON() ([]byte, error) {
  9326  	type NoMethod Product
  9327  	raw := NoMethod(*s)
  9328  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  9329  }
  9330  
  9331  func (s *Product) UnmarshalJSON(data []byte) error {
  9332  	type NoMethod Product
  9333  	var s1 struct {
  9334  		DisplayAdsValue gensupport.JSONFloat64 `json:"displayAdsValue"`
  9335  		*NoMethod
  9336  	}
  9337  	s1.NoMethod = (*NoMethod)(s)
  9338  	if err := json.Unmarshal(data, &s1); err != nil {
  9339  		return err
  9340  	}
  9341  	s.DisplayAdsValue = float64(s1.DisplayAdsValue)
  9342  	return nil
  9343  }
  9344  
  9345  type ProductAmount struct {
  9346  	// PriceAmount: The pre-tax or post-tax price depending on the location
  9347  	// of the order.
  9348  	PriceAmount *Price `json:"priceAmount,omitempty"`
  9349  
  9350  	// RemittedTaxAmount: Remitted tax value.
  9351  	RemittedTaxAmount *Price `json:"remittedTaxAmount,omitempty"`
  9352  
  9353  	// TaxAmount: Tax value.
  9354  	TaxAmount *Price `json:"taxAmount,omitempty"`
  9355  
  9356  	// ForceSendFields is a list of field names (e.g. "PriceAmount") to
  9357  	// unconditionally include in API requests. By default, fields with
  9358  	// empty or default values are omitted from API requests. However, any
  9359  	// non-pointer, non-interface field appearing in ForceSendFields will be
  9360  	// sent to the server regardless of whether the field is empty or not.
  9361  	// This may be used to include empty fields in Patch requests.
  9362  	ForceSendFields []string `json:"-"`
  9363  
  9364  	// NullFields is a list of field names (e.g. "PriceAmount") to include
  9365  	// in API requests with the JSON null value. By default, fields with
  9366  	// empty values are omitted from API requests. However, any field with
  9367  	// an empty value appearing in NullFields will be sent to the server as
  9368  	// null. It is an error if a field in this list has a non-empty value.
  9369  	// This may be used to include null fields in Patch requests.
  9370  	NullFields []string `json:"-"`
  9371  }
  9372  
  9373  func (s *ProductAmount) MarshalJSON() ([]byte, error) {
  9374  	type NoMethod ProductAmount
  9375  	raw := NoMethod(*s)
  9376  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  9377  }
  9378  
  9379  type ProductAspect struct {
  9380  	// AspectName: Deprecated.
  9381  	AspectName string `json:"aspectName,omitempty"`
  9382  
  9383  	// DestinationName: Deprecated.
  9384  	DestinationName string `json:"destinationName,omitempty"`
  9385  
  9386  	// Intention: Deprecated.
  9387  	Intention string `json:"intention,omitempty"`
  9388  
  9389  	// ForceSendFields is a list of field names (e.g. "AspectName") to
  9390  	// unconditionally include in API requests. By default, fields with
  9391  	// empty or default values are omitted from API requests. However, any
  9392  	// non-pointer, non-interface field appearing in ForceSendFields will be
  9393  	// sent to the server regardless of whether the field is empty or not.
  9394  	// This may be used to include empty fields in Patch requests.
  9395  	ForceSendFields []string `json:"-"`
  9396  
  9397  	// NullFields is a list of field names (e.g. "AspectName") to include in
  9398  	// API requests with the JSON null value. By default, fields with empty
  9399  	// values are omitted from API requests. However, any field with an
  9400  	// empty value appearing in NullFields will be sent to the server as
  9401  	// null. It is an error if a field in this list has a non-empty value.
  9402  	// This may be used to include null fields in Patch requests.
  9403  	NullFields []string `json:"-"`
  9404  }
  9405  
  9406  func (s *ProductAspect) MarshalJSON() ([]byte, error) {
  9407  	type NoMethod ProductAspect
  9408  	raw := NoMethod(*s)
  9409  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  9410  }
  9411  
  9412  type ProductDestination struct {
  9413  	// DestinationName: The name of the destination.
  9414  	DestinationName string `json:"destinationName,omitempty"`
  9415  
  9416  	// Intention: Whether the destination is required, excluded or should be
  9417  	// validated. Acceptable values are: - "default" - "excluded" -
  9418  	// "optional" - "required"
  9419  	Intention string `json:"intention,omitempty"`
  9420  
  9421  	// ForceSendFields is a list of field names (e.g. "DestinationName") to
  9422  	// unconditionally include in API requests. By default, fields with
  9423  	// empty or default values are omitted from API requests. However, any
  9424  	// non-pointer, non-interface field appearing in ForceSendFields will be
  9425  	// sent to the server regardless of whether the field is empty or not.
  9426  	// This may be used to include empty fields in Patch requests.
  9427  	ForceSendFields []string `json:"-"`
  9428  
  9429  	// NullFields is a list of field names (e.g. "DestinationName") to
  9430  	// include in API requests with the JSON null value. By default, fields
  9431  	// with empty values are omitted from API requests. However, any field
  9432  	// with an empty value appearing in NullFields will be sent to the
  9433  	// server as null. It is an error if a field in this list has a
  9434  	// non-empty value. This may be used to include null fields in Patch
  9435  	// requests.
  9436  	NullFields []string `json:"-"`
  9437  }
  9438  
  9439  func (s *ProductDestination) MarshalJSON() ([]byte, error) {
  9440  	type NoMethod ProductDestination
  9441  	raw := NoMethod(*s)
  9442  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  9443  }
  9444  
  9445  type ProductShipping struct {
  9446  	// Country: The CLDR territory code of the country to which an item will
  9447  	// ship.
  9448  	Country string `json:"country,omitempty"`
  9449  
  9450  	// LocationGroupName: The location where the shipping is applicable,
  9451  	// represented by a location group name.
  9452  	LocationGroupName string `json:"locationGroupName,omitempty"`
  9453  
  9454  	// LocationId: The numeric ID of a location that the shipping rate
  9455  	// applies to as defined in the AdWords API.
  9456  	LocationId int64 `json:"locationId,omitempty,string"`
  9457  
  9458  	// PostalCode: The postal code range that the shipping rate applies to,
  9459  	// represented by a postal code, a postal code prefix followed by a *
  9460  	// wildcard, a range between two postal codes or two postal code
  9461  	// prefixes of equal length.
  9462  	PostalCode string `json:"postalCode,omitempty"`
  9463  
  9464  	// Price: Fixed shipping price, represented as a number.
  9465  	Price *Price `json:"price,omitempty"`
  9466  
  9467  	// Region: The geographic region to which a shipping rate applies.
  9468  	Region string `json:"region,omitempty"`
  9469  
  9470  	// Service: A free-form description of the service class or delivery
  9471  	// speed.
  9472  	Service string `json:"service,omitempty"`
  9473  
  9474  	// ForceSendFields is a list of field names (e.g. "Country") to
  9475  	// unconditionally include in API requests. By default, fields with
  9476  	// empty or default values are omitted from API requests. However, any
  9477  	// non-pointer, non-interface field appearing in ForceSendFields will be
  9478  	// sent to the server regardless of whether the field is empty or not.
  9479  	// This may be used to include empty fields in Patch requests.
  9480  	ForceSendFields []string `json:"-"`
  9481  
  9482  	// NullFields is a list of field names (e.g. "Country") to include in
  9483  	// API requests with the JSON null value. By default, fields with empty
  9484  	// values are omitted from API requests. However, any field with an
  9485  	// empty value appearing in NullFields will be sent to the server as
  9486  	// null. It is an error if a field in this list has a non-empty value.
  9487  	// This may be used to include null fields in Patch requests.
  9488  	NullFields []string `json:"-"`
  9489  }
  9490  
  9491  func (s *ProductShipping) MarshalJSON() ([]byte, error) {
  9492  	type NoMethod ProductShipping
  9493  	raw := NoMethod(*s)
  9494  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  9495  }
  9496  
  9497  type ProductShippingDimension struct {
  9498  	// Unit: The unit of value.
  9499  	Unit string `json:"unit,omitempty"`
  9500  
  9501  	// Value: The dimension of the product used to calculate the shipping
  9502  	// cost of the item.
  9503  	Value float64 `json:"value,omitempty"`
  9504  
  9505  	// ForceSendFields is a list of field names (e.g. "Unit") to
  9506  	// unconditionally include in API requests. By default, fields with
  9507  	// empty or default values are omitted from API requests. However, any
  9508  	// non-pointer, non-interface field appearing in ForceSendFields will be
  9509  	// sent to the server regardless of whether the field is empty or not.
  9510  	// This may be used to include empty fields in Patch requests.
  9511  	ForceSendFields []string `json:"-"`
  9512  
  9513  	// NullFields is a list of field names (e.g. "Unit") to include in API
  9514  	// requests with the JSON null value. By default, fields with empty
  9515  	// values are omitted from API requests. However, any field with an
  9516  	// empty value appearing in NullFields will be sent to the server as
  9517  	// null. It is an error if a field in this list has a non-empty value.
  9518  	// This may be used to include null fields in Patch requests.
  9519  	NullFields []string `json:"-"`
  9520  }
  9521  
  9522  func (s *ProductShippingDimension) MarshalJSON() ([]byte, error) {
  9523  	type NoMethod ProductShippingDimension
  9524  	raw := NoMethod(*s)
  9525  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  9526  }
  9527  
  9528  func (s *ProductShippingDimension) UnmarshalJSON(data []byte) error {
  9529  	type NoMethod ProductShippingDimension
  9530  	var s1 struct {
  9531  		Value gensupport.JSONFloat64 `json:"value"`
  9532  		*NoMethod
  9533  	}
  9534  	s1.NoMethod = (*NoMethod)(s)
  9535  	if err := json.Unmarshal(data, &s1); err != nil {
  9536  		return err
  9537  	}
  9538  	s.Value = float64(s1.Value)
  9539  	return nil
  9540  }
  9541  
  9542  type ProductShippingWeight struct {
  9543  	// Unit: The unit of value.
  9544  	Unit string `json:"unit,omitempty"`
  9545  
  9546  	// Value: The weight of the product used to calculate the shipping cost
  9547  	// of the item.
  9548  	Value float64 `json:"value,omitempty"`
  9549  
  9550  	// ForceSendFields is a list of field names (e.g. "Unit") to
  9551  	// unconditionally include in API requests. By default, fields with
  9552  	// empty or default values are omitted from API requests. However, any
  9553  	// non-pointer, non-interface field appearing in ForceSendFields will be
  9554  	// sent to the server regardless of whether the field is empty or not.
  9555  	// This may be used to include empty fields in Patch requests.
  9556  	ForceSendFields []string `json:"-"`
  9557  
  9558  	// NullFields is a list of field names (e.g. "Unit") to include in API
  9559  	// requests with the JSON null value. By default, fields with empty
  9560  	// values are omitted from API requests. However, any field with an
  9561  	// empty value appearing in NullFields will be sent to the server as
  9562  	// null. It is an error if a field in this list has a non-empty value.
  9563  	// This may be used to include null fields in Patch requests.
  9564  	NullFields []string `json:"-"`
  9565  }
  9566  
  9567  func (s *ProductShippingWeight) MarshalJSON() ([]byte, error) {
  9568  	type NoMethod ProductShippingWeight
  9569  	raw := NoMethod(*s)
  9570  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  9571  }
  9572  
  9573  func (s *ProductShippingWeight) UnmarshalJSON(data []byte) error {
  9574  	type NoMethod ProductShippingWeight
  9575  	var s1 struct {
  9576  		Value gensupport.JSONFloat64 `json:"value"`
  9577  		*NoMethod
  9578  	}
  9579  	s1.NoMethod = (*NoMethod)(s)
  9580  	if err := json.Unmarshal(data, &s1); err != nil {
  9581  		return err
  9582  	}
  9583  	s.Value = float64(s1.Value)
  9584  	return nil
  9585  }
  9586  
  9587  // ProductStatus: The status of a product, i.e., information about a
  9588  // product computed asynchronously.
  9589  type ProductStatus struct {
  9590  	// CreationDate: Date on which the item has been created, in ISO 8601
  9591  	// format.
  9592  	CreationDate string `json:"creationDate,omitempty"`
  9593  
  9594  	// DataQualityIssues: DEPRECATED - never populated
  9595  	DataQualityIssues []*ProductStatusDataQualityIssue `json:"dataQualityIssues,omitempty"`
  9596  
  9597  	// DestinationStatuses: The intended destinations for the product.
  9598  	DestinationStatuses []*ProductStatusDestinationStatus `json:"destinationStatuses,omitempty"`
  9599  
  9600  	// GoogleExpirationDate: Date on which the item expires in Google
  9601  	// Shopping, in ISO 8601 format.
  9602  	GoogleExpirationDate string `json:"googleExpirationDate,omitempty"`
  9603  
  9604  	// ItemLevelIssues: A list of all issues associated with the product.
  9605  	ItemLevelIssues []*ProductStatusItemLevelIssue `json:"itemLevelIssues,omitempty"`
  9606  
  9607  	// Kind: Identifies what kind of resource this is. Value: the fixed
  9608  	// string "content#productStatus"
  9609  	Kind string `json:"kind,omitempty"`
  9610  
  9611  	// LastUpdateDate: Date on which the item has been last updated, in ISO
  9612  	// 8601 format.
  9613  	LastUpdateDate string `json:"lastUpdateDate,omitempty"`
  9614  
  9615  	// Link: The link to the product.
  9616  	Link string `json:"link,omitempty"`
  9617  
  9618  	// Product: Product data after applying all the join inputs.
  9619  	Product *Product `json:"product,omitempty"`
  9620  
  9621  	// ProductId: The ID of the product for which status is reported.
  9622  	ProductId string `json:"productId,omitempty"`
  9623  
  9624  	// Title: The title of the product.
  9625  	Title string `json:"title,omitempty"`
  9626  
  9627  	// ServerResponse contains the HTTP response code and headers from the
  9628  	// server.
  9629  	googleapi.ServerResponse `json:"-"`
  9630  
  9631  	// ForceSendFields is a list of field names (e.g. "CreationDate") to
  9632  	// unconditionally include in API requests. By default, fields with
  9633  	// empty or default values are omitted from API requests. However, any
  9634  	// non-pointer, non-interface field appearing in ForceSendFields will be
  9635  	// sent to the server regardless of whether the field is empty or not.
  9636  	// This may be used to include empty fields in Patch requests.
  9637  	ForceSendFields []string `json:"-"`
  9638  
  9639  	// NullFields is a list of field names (e.g. "CreationDate") to include
  9640  	// in API requests with the JSON null value. By default, fields with
  9641  	// empty values are omitted from API requests. However, any field with
  9642  	// an empty value appearing in NullFields will be sent to the server as
  9643  	// null. It is an error if a field in this list has a non-empty value.
  9644  	// This may be used to include null fields in Patch requests.
  9645  	NullFields []string `json:"-"`
  9646  }
  9647  
  9648  func (s *ProductStatus) MarshalJSON() ([]byte, error) {
  9649  	type NoMethod ProductStatus
  9650  	raw := NoMethod(*s)
  9651  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  9652  }
  9653  
  9654  type ProductStatusDataQualityIssue struct {
  9655  	Destination string `json:"destination,omitempty"`
  9656  
  9657  	Detail string `json:"detail,omitempty"`
  9658  
  9659  	FetchStatus string `json:"fetchStatus,omitempty"`
  9660  
  9661  	Id string `json:"id,omitempty"`
  9662  
  9663  	Location string `json:"location,omitempty"`
  9664  
  9665  	Severity string `json:"severity,omitempty"`
  9666  
  9667  	Timestamp string `json:"timestamp,omitempty"`
  9668  
  9669  	ValueOnLandingPage string `json:"valueOnLandingPage,omitempty"`
  9670  
  9671  	ValueProvided string `json:"valueProvided,omitempty"`
  9672  
  9673  	// ForceSendFields is a list of field names (e.g. "Destination") to
  9674  	// unconditionally include in API requests. By default, fields with
  9675  	// empty or default values are omitted from API requests. However, any
  9676  	// non-pointer, non-interface field appearing in ForceSendFields will be
  9677  	// sent to the server regardless of whether the field is empty or not.
  9678  	// This may be used to include empty fields in Patch requests.
  9679  	ForceSendFields []string `json:"-"`
  9680  
  9681  	// NullFields is a list of field names (e.g. "Destination") to include
  9682  	// in API requests with the JSON null value. By default, fields with
  9683  	// empty values are omitted from API requests. However, any field with
  9684  	// an empty value appearing in NullFields will be sent to the server as
  9685  	// null. It is an error if a field in this list has a non-empty value.
  9686  	// This may be used to include null fields in Patch requests.
  9687  	NullFields []string `json:"-"`
  9688  }
  9689  
  9690  func (s *ProductStatusDataQualityIssue) MarshalJSON() ([]byte, error) {
  9691  	type NoMethod ProductStatusDataQualityIssue
  9692  	raw := NoMethod(*s)
  9693  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  9694  }
  9695  
  9696  type ProductStatusDestinationStatus struct {
  9697  	// ApprovalPending: Whether the approval status might change due to
  9698  	// further processing.
  9699  	ApprovalPending bool `json:"approvalPending,omitempty"`
  9700  
  9701  	// ApprovalStatus: The destination's approval status. Acceptable values
  9702  	// are: - "approved" - "disapproved"
  9703  	ApprovalStatus string `json:"approvalStatus,omitempty"`
  9704  
  9705  	// Destination: The name of the destination
  9706  	Destination string `json:"destination,omitempty"`
  9707  
  9708  	// Intention: Provided for backward compatibility only. Always set to
  9709  	// "required". Acceptable values are: - "default" - "excluded" -
  9710  	// "optional" - "required"
  9711  	Intention string `json:"intention,omitempty"`
  9712  
  9713  	// ForceSendFields is a list of field names (e.g. "ApprovalPending") to
  9714  	// unconditionally include in API requests. By default, fields with
  9715  	// empty or default values are omitted from API requests. However, any
  9716  	// non-pointer, non-interface field appearing in ForceSendFields will be
  9717  	// sent to the server regardless of whether the field is empty or not.
  9718  	// This may be used to include empty fields in Patch requests.
  9719  	ForceSendFields []string `json:"-"`
  9720  
  9721  	// NullFields is a list of field names (e.g. "ApprovalPending") to
  9722  	// include in API requests with the JSON null value. By default, fields
  9723  	// with empty values are omitted from API requests. However, any field
  9724  	// with an empty value appearing in NullFields will be sent to the
  9725  	// server as null. It is an error if a field in this list has a
  9726  	// non-empty value. This may be used to include null fields in Patch
  9727  	// requests.
  9728  	NullFields []string `json:"-"`
  9729  }
  9730  
  9731  func (s *ProductStatusDestinationStatus) MarshalJSON() ([]byte, error) {
  9732  	type NoMethod ProductStatusDestinationStatus
  9733  	raw := NoMethod(*s)
  9734  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  9735  }
  9736  
  9737  type ProductStatusItemLevelIssue struct {
  9738  	// AttributeName: The attribute's name, if the issue is caused by a
  9739  	// single attribute.
  9740  	AttributeName string `json:"attributeName,omitempty"`
  9741  
  9742  	// Code: The error code of the issue.
  9743  	Code string `json:"code,omitempty"`
  9744  
  9745  	// Description: A short issue description in English.
  9746  	Description string `json:"description,omitempty"`
  9747  
  9748  	// Destination: The destination the issue applies to.
  9749  	Destination string `json:"destination,omitempty"`
  9750  
  9751  	// Detail: A detailed issue description in English.
  9752  	Detail string `json:"detail,omitempty"`
  9753  
  9754  	// Documentation: The URL of a web page to help with resolving this
  9755  	// issue.
  9756  	Documentation string `json:"documentation,omitempty"`
  9757  
  9758  	// Resolution: Whether the issue can be resolved by the merchant.
  9759  	Resolution string `json:"resolution,omitempty"`
  9760  
  9761  	// Servability: How this issue affects serving of the offer.
  9762  	Servability string `json:"servability,omitempty"`
  9763  
  9764  	// ForceSendFields is a list of field names (e.g. "AttributeName") to
  9765  	// unconditionally include in API requests. By default, fields with
  9766  	// empty or default values are omitted from API requests. However, any
  9767  	// non-pointer, non-interface field appearing in ForceSendFields will be
  9768  	// sent to the server regardless of whether the field is empty or not.
  9769  	// This may be used to include empty fields in Patch requests.
  9770  	ForceSendFields []string `json:"-"`
  9771  
  9772  	// NullFields is a list of field names (e.g. "AttributeName") to include
  9773  	// in API requests with the JSON null value. By default, fields with
  9774  	// empty values are omitted from API requests. However, any field with
  9775  	// an empty value appearing in NullFields will be sent to the server as
  9776  	// null. It is an error if a field in this list has a non-empty value.
  9777  	// This may be used to include null fields in Patch requests.
  9778  	NullFields []string `json:"-"`
  9779  }
  9780  
  9781  func (s *ProductStatusItemLevelIssue) MarshalJSON() ([]byte, error) {
  9782  	type NoMethod ProductStatusItemLevelIssue
  9783  	raw := NoMethod(*s)
  9784  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  9785  }
  9786  
  9787  type ProductTax struct {
  9788  	// Country: The country within which the item is taxed, specified as a
  9789  	// CLDR territory code.
  9790  	Country string `json:"country,omitempty"`
  9791  
  9792  	// LocationId: The numeric ID of a location that the tax rate applies to
  9793  	// as defined in the AdWords API.
  9794  	LocationId int64 `json:"locationId,omitempty,string"`
  9795  
  9796  	// PostalCode: The postal code range that the tax rate applies to,
  9797  	// represented by a ZIP code, a ZIP code prefix using * wildcard, a
  9798  	// range between two ZIP codes or two ZIP code prefixes of equal length.
  9799  	// Examples: 94114, 94*, 94002-95460, 94*-95*.
  9800  	PostalCode string `json:"postalCode,omitempty"`
  9801  
  9802  	// Rate: The percentage of tax rate that applies to the item price.
  9803  	Rate float64 `json:"rate,omitempty"`
  9804  
  9805  	// Region: The geographic region to which the tax rate applies.
  9806  	Region string `json:"region,omitempty"`
  9807  
  9808  	// TaxShip: Should be set to true if tax is charged on shipping.
  9809  	TaxShip bool `json:"taxShip,omitempty"`
  9810  
  9811  	// ForceSendFields is a list of field names (e.g. "Country") to
  9812  	// unconditionally include in API requests. By default, fields with
  9813  	// empty or default values are omitted from API requests. However, any
  9814  	// non-pointer, non-interface field appearing in ForceSendFields will be
  9815  	// sent to the server regardless of whether the field is empty or not.
  9816  	// This may be used to include empty fields in Patch requests.
  9817  	ForceSendFields []string `json:"-"`
  9818  
  9819  	// NullFields is a list of field names (e.g. "Country") to include in
  9820  	// API requests with the JSON null value. By default, fields with empty
  9821  	// values are omitted from API requests. However, any field with an
  9822  	// empty value appearing in NullFields will be sent to the server as
  9823  	// null. It is an error if a field in this list has a non-empty value.
  9824  	// This may be used to include null fields in Patch requests.
  9825  	NullFields []string `json:"-"`
  9826  }
  9827  
  9828  func (s *ProductTax) MarshalJSON() ([]byte, error) {
  9829  	type NoMethod ProductTax
  9830  	raw := NoMethod(*s)
  9831  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  9832  }
  9833  
  9834  func (s *ProductTax) UnmarshalJSON(data []byte) error {
  9835  	type NoMethod ProductTax
  9836  	var s1 struct {
  9837  		Rate gensupport.JSONFloat64 `json:"rate"`
  9838  		*NoMethod
  9839  	}
  9840  	s1.NoMethod = (*NoMethod)(s)
  9841  	if err := json.Unmarshal(data, &s1); err != nil {
  9842  		return err
  9843  	}
  9844  	s.Rate = float64(s1.Rate)
  9845  	return nil
  9846  }
  9847  
  9848  type ProductUnitPricingBaseMeasure struct {
  9849  	// Unit: The unit of the denominator.
  9850  	Unit string `json:"unit,omitempty"`
  9851  
  9852  	// Value: The denominator of the unit price.
  9853  	Value int64 `json:"value,omitempty,string"`
  9854  
  9855  	// ForceSendFields is a list of field names (e.g. "Unit") to
  9856  	// unconditionally include in API requests. By default, fields with
  9857  	// empty or default values are omitted from API requests. However, any
  9858  	// non-pointer, non-interface field appearing in ForceSendFields will be
  9859  	// sent to the server regardless of whether the field is empty or not.
  9860  	// This may be used to include empty fields in Patch requests.
  9861  	ForceSendFields []string `json:"-"`
  9862  
  9863  	// NullFields is a list of field names (e.g. "Unit") to include in API
  9864  	// requests with the JSON null value. By default, fields with empty
  9865  	// values are omitted from API requests. However, any field with an
  9866  	// empty value appearing in NullFields will be sent to the server as
  9867  	// null. It is an error if a field in this list has a non-empty value.
  9868  	// This may be used to include null fields in Patch requests.
  9869  	NullFields []string `json:"-"`
  9870  }
  9871  
  9872  func (s *ProductUnitPricingBaseMeasure) MarshalJSON() ([]byte, error) {
  9873  	type NoMethod ProductUnitPricingBaseMeasure
  9874  	raw := NoMethod(*s)
  9875  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  9876  }
  9877  
  9878  type ProductUnitPricingMeasure struct {
  9879  	// Unit: The unit of the measure.
  9880  	Unit string `json:"unit,omitempty"`
  9881  
  9882  	// Value: The measure of an item.
  9883  	Value float64 `json:"value,omitempty"`
  9884  
  9885  	// ForceSendFields is a list of field names (e.g. "Unit") to
  9886  	// unconditionally include in API requests. By default, fields with
  9887  	// empty or default values are omitted from API requests. However, any
  9888  	// non-pointer, non-interface field appearing in ForceSendFields will be
  9889  	// sent to the server regardless of whether the field is empty or not.
  9890  	// This may be used to include empty fields in Patch requests.
  9891  	ForceSendFields []string `json:"-"`
  9892  
  9893  	// NullFields is a list of field names (e.g. "Unit") to include in API
  9894  	// requests with the JSON null value. By default, fields with empty
  9895  	// values are omitted from API requests. However, any field with an
  9896  	// empty value appearing in NullFields will be sent to the server as
  9897  	// null. It is an error if a field in this list has a non-empty value.
  9898  	// This may be used to include null fields in Patch requests.
  9899  	NullFields []string `json:"-"`
  9900  }
  9901  
  9902  func (s *ProductUnitPricingMeasure) MarshalJSON() ([]byte, error) {
  9903  	type NoMethod ProductUnitPricingMeasure
  9904  	raw := NoMethod(*s)
  9905  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  9906  }
  9907  
  9908  func (s *ProductUnitPricingMeasure) UnmarshalJSON(data []byte) error {
  9909  	type NoMethod ProductUnitPricingMeasure
  9910  	var s1 struct {
  9911  		Value gensupport.JSONFloat64 `json:"value"`
  9912  		*NoMethod
  9913  	}
  9914  	s1.NoMethod = (*NoMethod)(s)
  9915  	if err := json.Unmarshal(data, &s1); err != nil {
  9916  		return err
  9917  	}
  9918  	s.Value = float64(s1.Value)
  9919  	return nil
  9920  }
  9921  
  9922  type ProductsCustomBatchRequest struct {
  9923  	// Entries: The request entries to be processed in the batch.
  9924  	Entries []*ProductsCustomBatchRequestEntry `json:"entries,omitempty"`
  9925  
  9926  	// ForceSendFields is a list of field names (e.g. "Entries") to
  9927  	// unconditionally include in API requests. By default, fields with
  9928  	// empty or default values are omitted from API requests. However, any
  9929  	// non-pointer, non-interface field appearing in ForceSendFields will be
  9930  	// sent to the server regardless of whether the field is empty or not.
  9931  	// This may be used to include empty fields in Patch requests.
  9932  	ForceSendFields []string `json:"-"`
  9933  
  9934  	// NullFields is a list of field names (e.g. "Entries") to include in
  9935  	// API requests with the JSON null value. By default, fields with empty
  9936  	// values are omitted from API requests. However, any field with an
  9937  	// empty value appearing in NullFields will be sent to the server as
  9938  	// null. It is an error if a field in this list has a non-empty value.
  9939  	// This may be used to include null fields in Patch requests.
  9940  	NullFields []string `json:"-"`
  9941  }
  9942  
  9943  func (s *ProductsCustomBatchRequest) MarshalJSON() ([]byte, error) {
  9944  	type NoMethod ProductsCustomBatchRequest
  9945  	raw := NoMethod(*s)
  9946  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  9947  }
  9948  
  9949  // ProductsCustomBatchRequestEntry: A batch entry encoding a single
  9950  // non-batch products request.
  9951  type ProductsCustomBatchRequestEntry struct {
  9952  	// BatchId: An entry ID, unique within the batch request.
  9953  	BatchId int64 `json:"batchId,omitempty"`
  9954  
  9955  	// MerchantId: The ID of the managing account.
  9956  	MerchantId uint64 `json:"merchantId,omitempty,string"`
  9957  
  9958  	// Method: The method of the batch entry. Acceptable values are: -
  9959  	// "delete" - "get" - "insert"
  9960  	Method string `json:"method,omitempty"`
  9961  
  9962  	// Product: The product to insert. Only required if the method is
  9963  	// `insert`.
  9964  	Product *Product `json:"product,omitempty"`
  9965  
  9966  	// ProductId: The ID of the product to get or delete. Only defined if
  9967  	// the method is `get` or `delete`.
  9968  	ProductId string `json:"productId,omitempty"`
  9969  
  9970  	// ForceSendFields is a list of field names (e.g. "BatchId") to
  9971  	// unconditionally include in API requests. By default, fields with
  9972  	// empty or default values are omitted from API requests. However, any
  9973  	// non-pointer, non-interface field appearing in ForceSendFields will be
  9974  	// sent to the server regardless of whether the field is empty or not.
  9975  	// This may be used to include empty fields in Patch requests.
  9976  	ForceSendFields []string `json:"-"`
  9977  
  9978  	// NullFields is a list of field names (e.g. "BatchId") to include in
  9979  	// API requests with the JSON null value. By default, fields with empty
  9980  	// values are omitted from API requests. However, any field with an
  9981  	// empty value appearing in NullFields will be sent to the server as
  9982  	// null. It is an error if a field in this list has a non-empty value.
  9983  	// This may be used to include null fields in Patch requests.
  9984  	NullFields []string `json:"-"`
  9985  }
  9986  
  9987  func (s *ProductsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
  9988  	type NoMethod ProductsCustomBatchRequestEntry
  9989  	raw := NoMethod(*s)
  9990  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
  9991  }
  9992  
  9993  type ProductsCustomBatchResponse struct {
  9994  	// Entries: The result of the execution of the batch requests.
  9995  	Entries []*ProductsCustomBatchResponseEntry `json:"entries,omitempty"`
  9996  
  9997  	// Kind: Identifies what kind of resource this is. Value: the fixed
  9998  	// string "content#productsCustomBatchResponse".
  9999  	Kind string `json:"kind,omitempty"`
 10000  
 10001  	// ServerResponse contains the HTTP response code and headers from the
 10002  	// server.
 10003  	googleapi.ServerResponse `json:"-"`
 10004  
 10005  	// ForceSendFields is a list of field names (e.g. "Entries") to
 10006  	// unconditionally include in API requests. By default, fields with
 10007  	// empty or default values are omitted from API requests. However, any
 10008  	// non-pointer, non-interface field appearing in ForceSendFields will be
 10009  	// sent to the server regardless of whether the field is empty or not.
 10010  	// This may be used to include empty fields in Patch requests.
 10011  	ForceSendFields []string `json:"-"`
 10012  
 10013  	// NullFields is a list of field names (e.g. "Entries") to include in
 10014  	// API requests with the JSON null value. By default, fields with empty
 10015  	// values are omitted from API requests. However, any field with an
 10016  	// empty value appearing in NullFields will be sent to the server as
 10017  	// null. It is an error if a field in this list has a non-empty value.
 10018  	// This may be used to include null fields in Patch requests.
 10019  	NullFields []string `json:"-"`
 10020  }
 10021  
 10022  func (s *ProductsCustomBatchResponse) MarshalJSON() ([]byte, error) {
 10023  	type NoMethod ProductsCustomBatchResponse
 10024  	raw := NoMethod(*s)
 10025  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 10026  }
 10027  
 10028  // ProductsCustomBatchResponseEntry: A batch entry encoding a single
 10029  // non-batch products response.
 10030  type ProductsCustomBatchResponseEntry struct {
 10031  	// BatchId: The ID of the request entry this entry responds to.
 10032  	BatchId int64 `json:"batchId,omitempty"`
 10033  
 10034  	// Errors: A list of errors defined if and only if the request failed.
 10035  	Errors *Errors `json:"errors,omitempty"`
 10036  
 10037  	// Kind: Identifies what kind of resource this is. Value: the fixed
 10038  	// string "content#productsCustomBatchResponseEntry"
 10039  	Kind string `json:"kind,omitempty"`
 10040  
 10041  	// Product: The inserted product. Only defined if the method is `insert`
 10042  	// and if the request was successful.
 10043  	Product *Product `json:"product,omitempty"`
 10044  
 10045  	// ForceSendFields is a list of field names (e.g. "BatchId") to
 10046  	// unconditionally include in API requests. By default, fields with
 10047  	// empty or default values are omitted from API requests. However, any
 10048  	// non-pointer, non-interface field appearing in ForceSendFields will be
 10049  	// sent to the server regardless of whether the field is empty or not.
 10050  	// This may be used to include empty fields in Patch requests.
 10051  	ForceSendFields []string `json:"-"`
 10052  
 10053  	// NullFields is a list of field names (e.g. "BatchId") to include in
 10054  	// API requests with the JSON null value. By default, fields with empty
 10055  	// values are omitted from API requests. However, any field with an
 10056  	// empty value appearing in NullFields will be sent to the server as
 10057  	// null. It is an error if a field in this list has a non-empty value.
 10058  	// This may be used to include null fields in Patch requests.
 10059  	NullFields []string `json:"-"`
 10060  }
 10061  
 10062  func (s *ProductsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
 10063  	type NoMethod ProductsCustomBatchResponseEntry
 10064  	raw := NoMethod(*s)
 10065  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 10066  }
 10067  
 10068  type ProductsListResponse struct {
 10069  	// Kind: Identifies what kind of resource this is. Value: the fixed
 10070  	// string "content#productsListResponse".
 10071  	Kind string `json:"kind,omitempty"`
 10072  
 10073  	// NextPageToken: The token for the retrieval of the next page of
 10074  	// products.
 10075  	NextPageToken string `json:"nextPageToken,omitempty"`
 10076  
 10077  	Resources []*Product `json:"resources,omitempty"`
 10078  
 10079  	// ServerResponse contains the HTTP response code and headers from the
 10080  	// server.
 10081  	googleapi.ServerResponse `json:"-"`
 10082  
 10083  	// ForceSendFields is a list of field names (e.g. "Kind") to
 10084  	// unconditionally include in API requests. By default, fields with
 10085  	// empty or default values are omitted from API requests. However, any
 10086  	// non-pointer, non-interface field appearing in ForceSendFields will be
 10087  	// sent to the server regardless of whether the field is empty or not.
 10088  	// This may be used to include empty fields in Patch requests.
 10089  	ForceSendFields []string `json:"-"`
 10090  
 10091  	// NullFields is a list of field names (e.g. "Kind") to include in API
 10092  	// requests with the JSON null value. By default, fields with empty
 10093  	// values are omitted from API requests. However, any field with an
 10094  	// empty value appearing in NullFields will be sent to the server as
 10095  	// null. It is an error if a field in this list has a non-empty value.
 10096  	// This may be used to include null fields in Patch requests.
 10097  	NullFields []string `json:"-"`
 10098  }
 10099  
 10100  func (s *ProductsListResponse) MarshalJSON() ([]byte, error) {
 10101  	type NoMethod ProductsListResponse
 10102  	raw := NoMethod(*s)
 10103  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 10104  }
 10105  
 10106  type ProductstatusesCustomBatchRequest struct {
 10107  	// Entries: The request entries to be processed in the batch.
 10108  	Entries []*ProductstatusesCustomBatchRequestEntry `json:"entries,omitempty"`
 10109  
 10110  	// ForceSendFields is a list of field names (e.g. "Entries") to
 10111  	// unconditionally include in API requests. By default, fields with
 10112  	// empty or default values are omitted from API requests. However, any
 10113  	// non-pointer, non-interface field appearing in ForceSendFields will be
 10114  	// sent to the server regardless of whether the field is empty or not.
 10115  	// This may be used to include empty fields in Patch requests.
 10116  	ForceSendFields []string `json:"-"`
 10117  
 10118  	// NullFields is a list of field names (e.g. "Entries") to include in
 10119  	// API requests with the JSON null value. By default, fields with empty
 10120  	// values are omitted from API requests. However, any field with an
 10121  	// empty value appearing in NullFields will be sent to the server as
 10122  	// null. It is an error if a field in this list has a non-empty value.
 10123  	// This may be used to include null fields in Patch requests.
 10124  	NullFields []string `json:"-"`
 10125  }
 10126  
 10127  func (s *ProductstatusesCustomBatchRequest) MarshalJSON() ([]byte, error) {
 10128  	type NoMethod ProductstatusesCustomBatchRequest
 10129  	raw := NoMethod(*s)
 10130  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 10131  }
 10132  
 10133  // ProductstatusesCustomBatchRequestEntry: A batch entry encoding a
 10134  // single non-batch productstatuses request.
 10135  type ProductstatusesCustomBatchRequestEntry struct {
 10136  	// BatchId: An entry ID, unique within the batch request.
 10137  	BatchId int64 `json:"batchId,omitempty"`
 10138  
 10139  	// Destinations: If set, only issues for the specified destinations are
 10140  	// returned, otherwise only issues for the Shopping destination.
 10141  	Destinations []string `json:"destinations,omitempty"`
 10142  
 10143  	IncludeAttributes bool `json:"includeAttributes,omitempty"`
 10144  
 10145  	// MerchantId: The ID of the managing account.
 10146  	MerchantId uint64 `json:"merchantId,omitempty,string"`
 10147  
 10148  	// Method: The method of the batch entry. Acceptable values are: -
 10149  	// "get"
 10150  	Method string `json:"method,omitempty"`
 10151  
 10152  	// ProductId: The ID of the product whose status to get.
 10153  	ProductId string `json:"productId,omitempty"`
 10154  
 10155  	// ForceSendFields is a list of field names (e.g. "BatchId") to
 10156  	// unconditionally include in API requests. By default, fields with
 10157  	// empty or default values are omitted from API requests. However, any
 10158  	// non-pointer, non-interface field appearing in ForceSendFields will be
 10159  	// sent to the server regardless of whether the field is empty or not.
 10160  	// This may be used to include empty fields in Patch requests.
 10161  	ForceSendFields []string `json:"-"`
 10162  
 10163  	// NullFields is a list of field names (e.g. "BatchId") to include in
 10164  	// API requests with the JSON null value. By default, fields with empty
 10165  	// values are omitted from API requests. However, any field with an
 10166  	// empty value appearing in NullFields will be sent to the server as
 10167  	// null. It is an error if a field in this list has a non-empty value.
 10168  	// This may be used to include null fields in Patch requests.
 10169  	NullFields []string `json:"-"`
 10170  }
 10171  
 10172  func (s *ProductstatusesCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
 10173  	type NoMethod ProductstatusesCustomBatchRequestEntry
 10174  	raw := NoMethod(*s)
 10175  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 10176  }
 10177  
 10178  type ProductstatusesCustomBatchResponse struct {
 10179  	// Entries: The result of the execution of the batch requests.
 10180  	Entries []*ProductstatusesCustomBatchResponseEntry `json:"entries,omitempty"`
 10181  
 10182  	// Kind: Identifies what kind of resource this is. Value: the fixed
 10183  	// string "content#productstatusesCustomBatchResponse".
 10184  	Kind string `json:"kind,omitempty"`
 10185  
 10186  	// ServerResponse contains the HTTP response code and headers from the
 10187  	// server.
 10188  	googleapi.ServerResponse `json:"-"`
 10189  
 10190  	// ForceSendFields is a list of field names (e.g. "Entries") to
 10191  	// unconditionally include in API requests. By default, fields with
 10192  	// empty or default values are omitted from API requests. However, any
 10193  	// non-pointer, non-interface field appearing in ForceSendFields will be
 10194  	// sent to the server regardless of whether the field is empty or not.
 10195  	// This may be used to include empty fields in Patch requests.
 10196  	ForceSendFields []string `json:"-"`
 10197  
 10198  	// NullFields is a list of field names (e.g. "Entries") to include in
 10199  	// API requests with the JSON null value. By default, fields with empty
 10200  	// values are omitted from API requests. However, any field with an
 10201  	// empty value appearing in NullFields will be sent to the server as
 10202  	// null. It is an error if a field in this list has a non-empty value.
 10203  	// This may be used to include null fields in Patch requests.
 10204  	NullFields []string `json:"-"`
 10205  }
 10206  
 10207  func (s *ProductstatusesCustomBatchResponse) MarshalJSON() ([]byte, error) {
 10208  	type NoMethod ProductstatusesCustomBatchResponse
 10209  	raw := NoMethod(*s)
 10210  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 10211  }
 10212  
 10213  // ProductstatusesCustomBatchResponseEntry: A batch entry encoding a
 10214  // single non-batch productstatuses response.
 10215  type ProductstatusesCustomBatchResponseEntry struct {
 10216  	// BatchId: The ID of the request entry this entry responds to.
 10217  	BatchId int64 `json:"batchId,omitempty"`
 10218  
 10219  	// Errors: A list of errors, if the request failed.
 10220  	Errors *Errors `json:"errors,omitempty"`
 10221  
 10222  	// Kind: Identifies what kind of resource this is. Value: the fixed
 10223  	// string "content#productstatusesCustomBatchResponseEntry"
 10224  	Kind string `json:"kind,omitempty"`
 10225  
 10226  	// ProductStatus: The requested product status. Only defined if the
 10227  	// request was successful.
 10228  	ProductStatus *ProductStatus `json:"productStatus,omitempty"`
 10229  
 10230  	// ForceSendFields is a list of field names (e.g. "BatchId") to
 10231  	// unconditionally include in API requests. By default, fields with
 10232  	// empty or default values are omitted from API requests. However, any
 10233  	// non-pointer, non-interface field appearing in ForceSendFields will be
 10234  	// sent to the server regardless of whether the field is empty or not.
 10235  	// This may be used to include empty fields in Patch requests.
 10236  	ForceSendFields []string `json:"-"`
 10237  
 10238  	// NullFields is a list of field names (e.g. "BatchId") to include in
 10239  	// API requests with the JSON null value. By default, fields with empty
 10240  	// values are omitted from API requests. However, any field with an
 10241  	// empty value appearing in NullFields will be sent to the server as
 10242  	// null. It is an error if a field in this list has a non-empty value.
 10243  	// This may be used to include null fields in Patch requests.
 10244  	NullFields []string `json:"-"`
 10245  }
 10246  
 10247  func (s *ProductstatusesCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
 10248  	type NoMethod ProductstatusesCustomBatchResponseEntry
 10249  	raw := NoMethod(*s)
 10250  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 10251  }
 10252  
 10253  type ProductstatusesListResponse struct {
 10254  	// Kind: Identifies what kind of resource this is. Value: the fixed
 10255  	// string "content#productstatusesListResponse".
 10256  	Kind string `json:"kind,omitempty"`
 10257  
 10258  	// NextPageToken: The token for the retrieval of the next page of
 10259  	// products statuses.
 10260  	NextPageToken string `json:"nextPageToken,omitempty"`
 10261  
 10262  	Resources []*ProductStatus `json:"resources,omitempty"`
 10263  
 10264  	// ServerResponse contains the HTTP response code and headers from the
 10265  	// server.
 10266  	googleapi.ServerResponse `json:"-"`
 10267  
 10268  	// ForceSendFields is a list of field names (e.g. "Kind") to
 10269  	// unconditionally include in API requests. By default, fields with
 10270  	// empty or default values are omitted from API requests. However, any
 10271  	// non-pointer, non-interface field appearing in ForceSendFields will be
 10272  	// sent to the server regardless of whether the field is empty or not.
 10273  	// This may be used to include empty fields in Patch requests.
 10274  	ForceSendFields []string `json:"-"`
 10275  
 10276  	// NullFields is a list of field names (e.g. "Kind") to include in API
 10277  	// requests with the JSON null value. By default, fields with empty
 10278  	// values are omitted from API requests. However, any field with an
 10279  	// empty value appearing in NullFields will be sent to the server as
 10280  	// null. It is an error if a field in this list has a non-empty value.
 10281  	// This may be used to include null fields in Patch requests.
 10282  	NullFields []string `json:"-"`
 10283  }
 10284  
 10285  func (s *ProductstatusesListResponse) MarshalJSON() ([]byte, error) {
 10286  	type NoMethod ProductstatusesListResponse
 10287  	raw := NoMethod(*s)
 10288  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 10289  }
 10290  
 10291  type Promotion struct {
 10292  	// PromotionAmount: [required] Amount of the promotion. The values here
 10293  	// are the promotion applied to the unit price pretax and to the total
 10294  	// of the tax amounts.
 10295  	PromotionAmount *Amount `json:"promotionAmount,omitempty"`
 10296  
 10297  	// PromotionId: [required] ID of the promotion.
 10298  	PromotionId string `json:"promotionId,omitempty"`
 10299  
 10300  	// ForceSendFields is a list of field names (e.g. "PromotionAmount") to
 10301  	// unconditionally include in API requests. By default, fields with
 10302  	// empty or default values are omitted from API requests. However, any
 10303  	// non-pointer, non-interface field appearing in ForceSendFields will be
 10304  	// sent to the server regardless of whether the field is empty or not.
 10305  	// This may be used to include empty fields in Patch requests.
 10306  	ForceSendFields []string `json:"-"`
 10307  
 10308  	// NullFields is a list of field names (e.g. "PromotionAmount") to
 10309  	// include in API requests with the JSON null value. By default, fields
 10310  	// with empty values are omitted from API requests. However, any field
 10311  	// with an empty value appearing in NullFields will be sent to the
 10312  	// server as null. It is an error if a field in this list has a
 10313  	// non-empty value. This may be used to include null fields in Patch
 10314  	// requests.
 10315  	NullFields []string `json:"-"`
 10316  }
 10317  
 10318  func (s *Promotion) MarshalJSON() ([]byte, error) {
 10319  	type NoMethod Promotion
 10320  	raw := NoMethod(*s)
 10321  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 10322  }
 10323  
 10324  type RateGroup struct {
 10325  	// ApplicableShippingLabels: A list of shipping labels defining the
 10326  	// products to which this rate group applies to. This is a disjunction:
 10327  	// only one of the labels has to match for the rate group to apply. May
 10328  	// only be empty for the last rate group of a service. Required.
 10329  	ApplicableShippingLabels []string `json:"applicableShippingLabels,omitempty"`
 10330  
 10331  	// CarrierRates: A list of carrier rates that can be referred to by
 10332  	// `mainTable` or `singleValue`.
 10333  	CarrierRates []*CarrierRate `json:"carrierRates,omitempty"`
 10334  
 10335  	// MainTable: A table defining the rate group, when `singleValue` is not
 10336  	// expressive enough. Can only be set if `singleValue` is not set.
 10337  	MainTable *Table `json:"mainTable,omitempty"`
 10338  
 10339  	// Name: Name of the rate group. Optional. If set has to be unique
 10340  	// within shipping service.
 10341  	Name string `json:"name,omitempty"`
 10342  
 10343  	// SingleValue: The value of the rate group (e.g. flat rate $10). Can
 10344  	// only be set if `mainTable` and `subtables` are not set.
 10345  	SingleValue *Value `json:"singleValue,omitempty"`
 10346  
 10347  	// Subtables: A list of subtables referred to by `mainTable`. Can only
 10348  	// be set if `mainTable` is set.
 10349  	Subtables []*Table `json:"subtables,omitempty"`
 10350  
 10351  	// ForceSendFields is a list of field names (e.g.
 10352  	// "ApplicableShippingLabels") to unconditionally include in API
 10353  	// requests. By default, fields with empty or default values are omitted
 10354  	// from API requests. However, any non-pointer, non-interface field
 10355  	// appearing in ForceSendFields will be sent to the server regardless of
 10356  	// whether the field is empty or not. This may be used to include empty
 10357  	// fields in Patch requests.
 10358  	ForceSendFields []string `json:"-"`
 10359  
 10360  	// NullFields is a list of field names (e.g. "ApplicableShippingLabels")
 10361  	// to include in API requests with the JSON null value. By default,
 10362  	// fields with empty values are omitted from API requests. However, any
 10363  	// field with an empty value appearing in NullFields will be sent to the
 10364  	// server as null. It is an error if a field in this list has a
 10365  	// non-empty value. This may be used to include null fields in Patch
 10366  	// requests.
 10367  	NullFields []string `json:"-"`
 10368  }
 10369  
 10370  func (s *RateGroup) MarshalJSON() ([]byte, error) {
 10371  	type NoMethod RateGroup
 10372  	raw := NoMethod(*s)
 10373  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 10374  }
 10375  
 10376  type RefundReason struct {
 10377  	// Description: Description of the reason.
 10378  	Description string `json:"description,omitempty"`
 10379  
 10380  	// ReasonCode: Code of the refund reason. Acceptable values are: -
 10381  	// "adjustment" - "autoPostInternal" -
 10382  	// "autoPostInvalidBillingAddress" - "autoPostNoInventory" -
 10383  	// "autoPostPriceError" - "autoPostUndeliverableShippingAddress" -
 10384  	// "couponAbuse" - "courtesyAdjustment" - "customerCanceled" -
 10385  	// "customerDiscretionaryReturn" - "customerInitiatedMerchantCancel"
 10386  	// - "customerSupportRequested" - "deliveredLateByCarrier" -
 10387  	// "deliveredTooLate" - "expiredItem" -
 10388  	// "failToPushOrderGoogleError" - "failToPushOrderMerchantError" -
 10389  	// "failToPushOrderMerchantFulfillmentError" -
 10390  	// "failToPushOrderToMerchant" -
 10391  	// "failToPushOrderToMerchantOutOfStock" - "feeAdjustment" -
 10392  	// "invalidCoupon" - "lateShipmentCredit" -
 10393  	// "malformedShippingAddress" - "merchantDidNotShipOnTime" -
 10394  	// "noInventory" - "orderTimeout" - "other" - "paymentAbuse" -
 10395  	// "paymentDeclined" - "priceAdjustment" - "priceError" -
 10396  	// "productArrivedDamaged" - "productNotAsDescribed" -
 10397  	// "promoReallocation" - "qualityNotAsExpected" -
 10398  	// "returnRefundAbuse" - "shippingCostAdjustment" -
 10399  	// "shippingPriceError" - "taxAdjustment" - "taxError" -
 10400  	// "undeliverableShippingAddress" - "unsupportedPoBoxAddress" -
 10401  	// "wrongProductShipped"
 10402  	ReasonCode string `json:"reasonCode,omitempty"`
 10403  
 10404  	// ForceSendFields is a list of field names (e.g. "Description") to
 10405  	// unconditionally include in API requests. By default, fields with
 10406  	// empty or default values are omitted from API requests. However, any
 10407  	// non-pointer, non-interface field appearing in ForceSendFields will be
 10408  	// sent to the server regardless of whether the field is empty or not.
 10409  	// This may be used to include empty fields in Patch requests.
 10410  	ForceSendFields []string `json:"-"`
 10411  
 10412  	// NullFields is a list of field names (e.g. "Description") to include
 10413  	// in API requests with the JSON null value. By default, fields with
 10414  	// empty values are omitted from API requests. However, any field with
 10415  	// an empty value appearing in NullFields will be sent to the server as
 10416  	// null. It is an error if a field in this list has a non-empty value.
 10417  	// This may be used to include null fields in Patch requests.
 10418  	NullFields []string `json:"-"`
 10419  }
 10420  
 10421  func (s *RefundReason) MarshalJSON() ([]byte, error) {
 10422  	type NoMethod RefundReason
 10423  	raw := NoMethod(*s)
 10424  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 10425  }
 10426  
 10427  type ReturnShipment struct {
 10428  	// CreationDate: The date of creation of the shipment, in ISO 8601
 10429  	// format.
 10430  	CreationDate string `json:"creationDate,omitempty"`
 10431  
 10432  	// DeliveryDate: The date of delivery of the shipment, in ISO 8601
 10433  	// format.
 10434  	DeliveryDate string `json:"deliveryDate,omitempty"`
 10435  
 10436  	// ReturnMethodType: Type of the return method. Acceptable values are: -
 10437  	// "byMail" - "contactCustomerSupport" - "returnless"
 10438  	ReturnMethodType string `json:"returnMethodType,omitempty"`
 10439  
 10440  	// ShipmentId: Shipment ID generated by Google.
 10441  	ShipmentId string `json:"shipmentId,omitempty"`
 10442  
 10443  	// ShipmentTrackingInfos: Tracking information of the shipment. One
 10444  	// return shipment might be handled by several shipping carriers
 10445  	// sequentially.
 10446  	ShipmentTrackingInfos []*ShipmentTrackingInfo `json:"shipmentTrackingInfos,omitempty"`
 10447  
 10448  	// ShippingDate: The date of shipping of the shipment, in ISO 8601
 10449  	// format.
 10450  	ShippingDate string `json:"shippingDate,omitempty"`
 10451  
 10452  	// State: State of the shipment. Acceptable values are: - "completed"
 10453  	// - "new" - "shipped" - "undeliverable" - "pending"
 10454  	State string `json:"state,omitempty"`
 10455  
 10456  	// ForceSendFields is a list of field names (e.g. "CreationDate") to
 10457  	// unconditionally include in API requests. By default, fields with
 10458  	// empty or default values are omitted from API requests. However, any
 10459  	// non-pointer, non-interface field appearing in ForceSendFields will be
 10460  	// sent to the server regardless of whether the field is empty or not.
 10461  	// This may be used to include empty fields in Patch requests.
 10462  	ForceSendFields []string `json:"-"`
 10463  
 10464  	// NullFields is a list of field names (e.g. "CreationDate") to include
 10465  	// in API requests with the JSON null value. By default, fields with
 10466  	// empty values are omitted from API requests. However, any field with
 10467  	// an empty value appearing in NullFields will be sent to the server as
 10468  	// null. It is an error if a field in this list has a non-empty value.
 10469  	// This may be used to include null fields in Patch requests.
 10470  	NullFields []string `json:"-"`
 10471  }
 10472  
 10473  func (s *ReturnShipment) MarshalJSON() ([]byte, error) {
 10474  	type NoMethod ReturnShipment
 10475  	raw := NoMethod(*s)
 10476  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 10477  }
 10478  
 10479  type Row struct {
 10480  	// Cells: The list of cells that constitute the row. Must have the same
 10481  	// length as `columnHeaders` for two-dimensional tables, a length of 1
 10482  	// for one-dimensional tables. Required.
 10483  	Cells []*Value `json:"cells,omitempty"`
 10484  
 10485  	// ForceSendFields is a list of field names (e.g. "Cells") to
 10486  	// unconditionally include in API requests. By default, fields with
 10487  	// empty or default values are omitted from API requests. However, any
 10488  	// non-pointer, non-interface field appearing in ForceSendFields will be
 10489  	// sent to the server regardless of whether the field is empty or not.
 10490  	// This may be used to include empty fields in Patch requests.
 10491  	ForceSendFields []string `json:"-"`
 10492  
 10493  	// NullFields is a list of field names (e.g. "Cells") to include in API
 10494  	// requests with the JSON null value. By default, fields with empty
 10495  	// values are omitted from API requests. However, any field with an
 10496  	// empty value appearing in NullFields will be sent to the server as
 10497  	// null. It is an error if a field in this list has a non-empty value.
 10498  	// This may be used to include null fields in Patch requests.
 10499  	NullFields []string `json:"-"`
 10500  }
 10501  
 10502  func (s *Row) MarshalJSON() ([]byte, error) {
 10503  	type NoMethod Row
 10504  	raw := NoMethod(*s)
 10505  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 10506  }
 10507  
 10508  type Service struct {
 10509  	// Active: A boolean exposing the active status of the shipping service.
 10510  	// Required.
 10511  	Active bool `json:"active,omitempty"`
 10512  
 10513  	// Currency: The CLDR code of the currency to which this service
 10514  	// applies. Must match that of the prices in rate groups.
 10515  	Currency string `json:"currency,omitempty"`
 10516  
 10517  	// DeliveryCountry: The CLDR territory code of the country to which the
 10518  	// service applies. Required.
 10519  	DeliveryCountry string `json:"deliveryCountry,omitempty"`
 10520  
 10521  	// DeliveryTime: Time spent in various aspects from order to the
 10522  	// delivery of the product. Required.
 10523  	DeliveryTime *DeliveryTime `json:"deliveryTime,omitempty"`
 10524  
 10525  	// Eligibility: Eligibility for this service. Acceptable values are: -
 10526  	// "All scenarios" - "All scenarios except Shopping Actions" -
 10527  	// "Shopping Actions"
 10528  	Eligibility string `json:"eligibility,omitempty"`
 10529  
 10530  	// MinimumOrderValue: Minimum order value for this service. If set,
 10531  	// indicates that customers will have to spend at least this amount. All
 10532  	// prices within a service must have the same currency. Cannot be set
 10533  	// together with minimum_order_value_table.
 10534  	MinimumOrderValue *Price `json:"minimumOrderValue,omitempty"`
 10535  
 10536  	// MinimumOrderValueTable: Table of per store minimum order values for
 10537  	// the pickup fulfillment type. Cannot be set together with
 10538  	// minimum_order_value.
 10539  	MinimumOrderValueTable *MinimumOrderValueTable `json:"minimumOrderValueTable,omitempty"`
 10540  
 10541  	// Name: Free-form name of the service. Must be unique within target
 10542  	// account. Required.
 10543  	Name string `json:"name,omitempty"`
 10544  
 10545  	// PickupService: The carrier-service pair delivering items to
 10546  	// collection points. The list of supported pickup services can be
 10547  	// retrieved via the `getSupportedPickupServices` method. Required if
 10548  	// and only if the service delivery type is `pickup`.
 10549  	PickupService *PickupCarrierService `json:"pickupService,omitempty"`
 10550  
 10551  	// RateGroups: Shipping rate group definitions. Only the last one is
 10552  	// allowed to have an empty `applicableShippingLabels`, which means
 10553  	// "everything else". The other `applicableShippingLabels` must not
 10554  	// overlap.
 10555  	RateGroups []*RateGroup `json:"rateGroups,omitempty"`
 10556  
 10557  	// ShipmentType: Type of locations this service ships orders to.
 10558  	// Acceptable values are: - "delivery" - "pickup"
 10559  	ShipmentType string `json:"shipmentType,omitempty"`
 10560  
 10561  	// ForceSendFields is a list of field names (e.g. "Active") to
 10562  	// unconditionally include in API requests. By default, fields with
 10563  	// empty or default values are omitted from API requests. However, any
 10564  	// non-pointer, non-interface field appearing in ForceSendFields will be
 10565  	// sent to the server regardless of whether the field is empty or not.
 10566  	// This may be used to include empty fields in Patch requests.
 10567  	ForceSendFields []string `json:"-"`
 10568  
 10569  	// NullFields is a list of field names (e.g. "Active") to include in API
 10570  	// requests with the JSON null value. By default, fields with empty
 10571  	// values are omitted from API requests. However, any field with an
 10572  	// empty value appearing in NullFields will be sent to the server as
 10573  	// null. It is an error if a field in this list has a non-empty value.
 10574  	// This may be used to include null fields in Patch requests.
 10575  	NullFields []string `json:"-"`
 10576  }
 10577  
 10578  func (s *Service) MarshalJSON() ([]byte, error) {
 10579  	type NoMethod Service
 10580  	raw := NoMethod(*s)
 10581  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 10582  }
 10583  
 10584  type ShipmentInvoice struct {
 10585  	// InvoiceSummary: [required] Invoice summary.
 10586  	InvoiceSummary *InvoiceSummary `json:"invoiceSummary,omitempty"`
 10587  
 10588  	// LineItemInvoices: [required] Invoice details per line item.
 10589  	LineItemInvoices []*ShipmentInvoiceLineItemInvoice `json:"lineItemInvoices,omitempty"`
 10590  
 10591  	// ShipmentGroupId: [required] ID of the shipment group. It is assigned
 10592  	// by the merchant in the `shipLineItems` method and is used to group
 10593  	// multiple line items that have the same kind of shipping charges.
 10594  	ShipmentGroupId string `json:"shipmentGroupId,omitempty"`
 10595  
 10596  	// ForceSendFields is a list of field names (e.g. "InvoiceSummary") to
 10597  	// unconditionally include in API requests. By default, fields with
 10598  	// empty or default values are omitted from API requests. However, any
 10599  	// non-pointer, non-interface field appearing in ForceSendFields will be
 10600  	// sent to the server regardless of whether the field is empty or not.
 10601  	// This may be used to include empty fields in Patch requests.
 10602  	ForceSendFields []string `json:"-"`
 10603  
 10604  	// NullFields is a list of field names (e.g. "InvoiceSummary") to
 10605  	// include in API requests with the JSON null value. By default, fields
 10606  	// with empty values are omitted from API requests. However, any field
 10607  	// with an empty value appearing in NullFields will be sent to the
 10608  	// server as null. It is an error if a field in this list has a
 10609  	// non-empty value. This may be used to include null fields in Patch
 10610  	// requests.
 10611  	NullFields []string `json:"-"`
 10612  }
 10613  
 10614  func (s *ShipmentInvoice) MarshalJSON() ([]byte, error) {
 10615  	type NoMethod ShipmentInvoice
 10616  	raw := NoMethod(*s)
 10617  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 10618  }
 10619  
 10620  type ShipmentInvoiceLineItemInvoice struct {
 10621  	// LineItemId: ID of the line item. Either lineItemId or productId must
 10622  	// be set.
 10623  	LineItemId string `json:"lineItemId,omitempty"`
 10624  
 10625  	// ProductId: ID of the product. This is the REST ID used in the
 10626  	// products service. Either lineItemId or productId must be set.
 10627  	ProductId string `json:"productId,omitempty"`
 10628  
 10629  	// ShipmentUnitIds: [required] The shipment unit ID is assigned by the
 10630  	// merchant and defines individual quantities within a line item. The
 10631  	// same ID can be assigned to units that are the same while units that
 10632  	// differ must be assigned a different ID (for example: free or
 10633  	// promotional units).
 10634  	ShipmentUnitIds []string `json:"shipmentUnitIds,omitempty"`
 10635  
 10636  	// UnitInvoice: [required] Invoice details for a single unit.
 10637  	UnitInvoice *UnitInvoice `json:"unitInvoice,omitempty"`
 10638  
 10639  	// ForceSendFields is a list of field names (e.g. "LineItemId") to
 10640  	// unconditionally include in API requests. By default, fields with
 10641  	// empty or default values are omitted from API requests. However, any
 10642  	// non-pointer, non-interface field appearing in ForceSendFields will be
 10643  	// sent to the server regardless of whether the field is empty or not.
 10644  	// This may be used to include empty fields in Patch requests.
 10645  	ForceSendFields []string `json:"-"`
 10646  
 10647  	// NullFields is a list of field names (e.g. "LineItemId") to include in
 10648  	// API requests with the JSON null value. By default, fields with empty
 10649  	// values are omitted from API requests. However, any field with an
 10650  	// empty value appearing in NullFields will be sent to the server as
 10651  	// null. It is an error if a field in this list has a non-empty value.
 10652  	// This may be used to include null fields in Patch requests.
 10653  	NullFields []string `json:"-"`
 10654  }
 10655  
 10656  func (s *ShipmentInvoiceLineItemInvoice) MarshalJSON() ([]byte, error) {
 10657  	type NoMethod ShipmentInvoiceLineItemInvoice
 10658  	raw := NoMethod(*s)
 10659  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 10660  }
 10661  
 10662  type ShipmentTrackingInfo struct {
 10663  	// Carrier: The shipping carrier that handles the package. Acceptable
 10664  	// values are: - "boxtal" - "bpost" - "chronopost" -
 10665  	// "colisPrive" - "colissimo" - "cxt" - "deliv" - "dhl" -
 10666  	// "dpd" - "dynamex" - "eCourier" - "easypost" - "efw" -
 10667  	// "fedex" - "fedexSmartpost" - "geodis" - "gls" -
 10668  	// "googleCourier" - "gsx" - "jdLogistics" - "laPoste" -
 10669  	// "lasership" - "manual" - "mpx" - "onTrac" - "other" -
 10670  	// "tnt" - "uds" - "ups" - "usps"
 10671  	Carrier string `json:"carrier,omitempty"`
 10672  
 10673  	// TrackingNumber: The tracking number for the package.
 10674  	TrackingNumber string `json:"trackingNumber,omitempty"`
 10675  
 10676  	// ForceSendFields is a list of field names (e.g. "Carrier") to
 10677  	// unconditionally include in API requests. By default, fields with
 10678  	// empty or default values are omitted from API requests. However, any
 10679  	// non-pointer, non-interface field appearing in ForceSendFields will be
 10680  	// sent to the server regardless of whether the field is empty or not.
 10681  	// This may be used to include empty fields in Patch requests.
 10682  	ForceSendFields []string `json:"-"`
 10683  
 10684  	// NullFields is a list of field names (e.g. "Carrier") to include in
 10685  	// API requests with the JSON null value. By default, fields with empty
 10686  	// values are omitted from API requests. However, any field with an
 10687  	// empty value appearing in NullFields will be sent to the server as
 10688  	// null. It is an error if a field in this list has a non-empty value.
 10689  	// This may be used to include null fields in Patch requests.
 10690  	NullFields []string `json:"-"`
 10691  }
 10692  
 10693  func (s *ShipmentTrackingInfo) MarshalJSON() ([]byte, error) {
 10694  	type NoMethod ShipmentTrackingInfo
 10695  	raw := NoMethod(*s)
 10696  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 10697  }
 10698  
 10699  // ShippingSettings: The merchant account's shipping settings. All
 10700  // methods except getsupportedcarriers and getsupportedholidays require
 10701  // the admin role.
 10702  type ShippingSettings struct {
 10703  	// AccountId: The ID of the account to which these account shipping
 10704  	// settings belong. Ignored upon update, always present in get request
 10705  	// responses.
 10706  	AccountId uint64 `json:"accountId,omitempty,string"`
 10707  
 10708  	// PostalCodeGroups: A list of postal code groups that can be referred
 10709  	// to in `services`. Optional.
 10710  	PostalCodeGroups []*PostalCodeGroup `json:"postalCodeGroups,omitempty"`
 10711  
 10712  	// Services: The target account's list of services. Optional.
 10713  	Services []*Service `json:"services,omitempty"`
 10714  
 10715  	// Warehouses: Optional. A list of warehouses which can be referred to
 10716  	// in `services`.
 10717  	Warehouses []*Warehouse `json:"warehouses,omitempty"`
 10718  
 10719  	// ServerResponse contains the HTTP response code and headers from the
 10720  	// server.
 10721  	googleapi.ServerResponse `json:"-"`
 10722  
 10723  	// ForceSendFields is a list of field names (e.g. "AccountId") to
 10724  	// unconditionally include in API requests. By default, fields with
 10725  	// empty or default values are omitted from API requests. However, any
 10726  	// non-pointer, non-interface field appearing in ForceSendFields will be
 10727  	// sent to the server regardless of whether the field is empty or not.
 10728  	// This may be used to include empty fields in Patch requests.
 10729  	ForceSendFields []string `json:"-"`
 10730  
 10731  	// NullFields is a list of field names (e.g. "AccountId") to include in
 10732  	// API requests with the JSON null value. By default, fields with empty
 10733  	// values are omitted from API requests. However, any field with an
 10734  	// empty value appearing in NullFields will be sent to the server as
 10735  	// null. It is an error if a field in this list has a non-empty value.
 10736  	// This may be used to include null fields in Patch requests.
 10737  	NullFields []string `json:"-"`
 10738  }
 10739  
 10740  func (s *ShippingSettings) MarshalJSON() ([]byte, error) {
 10741  	type NoMethod ShippingSettings
 10742  	raw := NoMethod(*s)
 10743  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 10744  }
 10745  
 10746  type ShippingsettingsCustomBatchRequest struct {
 10747  	// Entries: The request entries to be processed in the batch.
 10748  	Entries []*ShippingsettingsCustomBatchRequestEntry `json:"entries,omitempty"`
 10749  
 10750  	// ForceSendFields is a list of field names (e.g. "Entries") to
 10751  	// unconditionally include in API requests. By default, fields with
 10752  	// empty or default values are omitted from API requests. However, any
 10753  	// non-pointer, non-interface field appearing in ForceSendFields will be
 10754  	// sent to the server regardless of whether the field is empty or not.
 10755  	// This may be used to include empty fields in Patch requests.
 10756  	ForceSendFields []string `json:"-"`
 10757  
 10758  	// NullFields is a list of field names (e.g. "Entries") to include in
 10759  	// API requests with the JSON null value. By default, fields with empty
 10760  	// values are omitted from API requests. However, any field with an
 10761  	// empty value appearing in NullFields will be sent to the server as
 10762  	// null. It is an error if a field in this list has a non-empty value.
 10763  	// This may be used to include null fields in Patch requests.
 10764  	NullFields []string `json:"-"`
 10765  }
 10766  
 10767  func (s *ShippingsettingsCustomBatchRequest) MarshalJSON() ([]byte, error) {
 10768  	type NoMethod ShippingsettingsCustomBatchRequest
 10769  	raw := NoMethod(*s)
 10770  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 10771  }
 10772  
 10773  // ShippingsettingsCustomBatchRequestEntry: A batch entry encoding a
 10774  // single non-batch shippingsettings request.
 10775  type ShippingsettingsCustomBatchRequestEntry struct {
 10776  	// AccountId: The ID of the account for which to get/update account
 10777  	// shipping settings.
 10778  	AccountId uint64 `json:"accountId,omitempty,string"`
 10779  
 10780  	// BatchId: An entry ID, unique within the batch request.
 10781  	BatchId int64 `json:"batchId,omitempty"`
 10782  
 10783  	// MerchantId: The ID of the managing account.
 10784  	MerchantId uint64 `json:"merchantId,omitempty,string"`
 10785  
 10786  	// Method: The method of the batch entry. Acceptable values are: -
 10787  	// "get" - "update"
 10788  	Method string `json:"method,omitempty"`
 10789  
 10790  	// ShippingSettings: The account shipping settings to update. Only
 10791  	// defined if the method is `update`.
 10792  	ShippingSettings *ShippingSettings `json:"shippingSettings,omitempty"`
 10793  
 10794  	// ForceSendFields is a list of field names (e.g. "AccountId") to
 10795  	// unconditionally include in API requests. By default, fields with
 10796  	// empty or default values are omitted from API requests. However, any
 10797  	// non-pointer, non-interface field appearing in ForceSendFields will be
 10798  	// sent to the server regardless of whether the field is empty or not.
 10799  	// This may be used to include empty fields in Patch requests.
 10800  	ForceSendFields []string `json:"-"`
 10801  
 10802  	// NullFields is a list of field names (e.g. "AccountId") to include in
 10803  	// API requests with the JSON null value. By default, fields with empty
 10804  	// values are omitted from API requests. However, any field with an
 10805  	// empty value appearing in NullFields will be sent to the server as
 10806  	// null. It is an error if a field in this list has a non-empty value.
 10807  	// This may be used to include null fields in Patch requests.
 10808  	NullFields []string `json:"-"`
 10809  }
 10810  
 10811  func (s *ShippingsettingsCustomBatchRequestEntry) MarshalJSON() ([]byte, error) {
 10812  	type NoMethod ShippingsettingsCustomBatchRequestEntry
 10813  	raw := NoMethod(*s)
 10814  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 10815  }
 10816  
 10817  type ShippingsettingsCustomBatchResponse struct {
 10818  	// Entries: The result of the execution of the batch requests.
 10819  	Entries []*ShippingsettingsCustomBatchResponseEntry `json:"entries,omitempty"`
 10820  
 10821  	// Kind: Identifies what kind of resource this is. Value: the fixed
 10822  	// string "content#shippingsettingsCustomBatchResponse".
 10823  	Kind string `json:"kind,omitempty"`
 10824  
 10825  	// ServerResponse contains the HTTP response code and headers from the
 10826  	// server.
 10827  	googleapi.ServerResponse `json:"-"`
 10828  
 10829  	// ForceSendFields is a list of field names (e.g. "Entries") to
 10830  	// unconditionally include in API requests. By default, fields with
 10831  	// empty or default values are omitted from API requests. However, any
 10832  	// non-pointer, non-interface field appearing in ForceSendFields will be
 10833  	// sent to the server regardless of whether the field is empty or not.
 10834  	// This may be used to include empty fields in Patch requests.
 10835  	ForceSendFields []string `json:"-"`
 10836  
 10837  	// NullFields is a list of field names (e.g. "Entries") to include in
 10838  	// API requests with the JSON null value. By default, fields with empty
 10839  	// values are omitted from API requests. However, any field with an
 10840  	// empty value appearing in NullFields will be sent to the server as
 10841  	// null. It is an error if a field in this list has a non-empty value.
 10842  	// This may be used to include null fields in Patch requests.
 10843  	NullFields []string `json:"-"`
 10844  }
 10845  
 10846  func (s *ShippingsettingsCustomBatchResponse) MarshalJSON() ([]byte, error) {
 10847  	type NoMethod ShippingsettingsCustomBatchResponse
 10848  	raw := NoMethod(*s)
 10849  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 10850  }
 10851  
 10852  // ShippingsettingsCustomBatchResponseEntry: A batch entry encoding a
 10853  // single non-batch shipping settings response.
 10854  type ShippingsettingsCustomBatchResponseEntry struct {
 10855  	// BatchId: The ID of the request entry to which this entry responds.
 10856  	BatchId int64 `json:"batchId,omitempty"`
 10857  
 10858  	// Errors: A list of errors defined if, and only if, the request failed.
 10859  	Errors *Errors `json:"errors,omitempty"`
 10860  
 10861  	// Kind: Identifies what kind of resource this is. Value: the fixed
 10862  	// string "content#shippingsettingsCustomBatchResponseEntry"
 10863  	Kind string `json:"kind,omitempty"`
 10864  
 10865  	// ShippingSettings: The retrieved or updated account shipping settings.
 10866  	ShippingSettings *ShippingSettings `json:"shippingSettings,omitempty"`
 10867  
 10868  	// ForceSendFields is a list of field names (e.g. "BatchId") to
 10869  	// unconditionally include in API requests. By default, fields with
 10870  	// empty or default values are omitted from API requests. However, any
 10871  	// non-pointer, non-interface field appearing in ForceSendFields will be
 10872  	// sent to the server regardless of whether the field is empty or not.
 10873  	// This may be used to include empty fields in Patch requests.
 10874  	ForceSendFields []string `json:"-"`
 10875  
 10876  	// NullFields is a list of field names (e.g. "BatchId") to include in
 10877  	// API requests with the JSON null value. By default, fields with empty
 10878  	// values are omitted from API requests. However, any field with an
 10879  	// empty value appearing in NullFields will be sent to the server as
 10880  	// null. It is an error if a field in this list has a non-empty value.
 10881  	// This may be used to include null fields in Patch requests.
 10882  	NullFields []string `json:"-"`
 10883  }
 10884  
 10885  func (s *ShippingsettingsCustomBatchResponseEntry) MarshalJSON() ([]byte, error) {
 10886  	type NoMethod ShippingsettingsCustomBatchResponseEntry
 10887  	raw := NoMethod(*s)
 10888  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 10889  }
 10890  
 10891  type ShippingsettingsGetSupportedCarriersResponse struct {
 10892  	// Carriers: A list of supported carriers. May be empty.
 10893  	Carriers []*CarriersCarrier `json:"carriers,omitempty"`
 10894  
 10895  	// Kind: Identifies what kind of resource this is. Value: the fixed
 10896  	// string "content#shippingsettingsGetSupportedCarriersResponse".
 10897  	Kind string `json:"kind,omitempty"`
 10898  
 10899  	// ServerResponse contains the HTTP response code and headers from the
 10900  	// server.
 10901  	googleapi.ServerResponse `json:"-"`
 10902  
 10903  	// ForceSendFields is a list of field names (e.g. "Carriers") to
 10904  	// unconditionally include in API requests. By default, fields with
 10905  	// empty or default values are omitted from API requests. However, any
 10906  	// non-pointer, non-interface field appearing in ForceSendFields will be
 10907  	// sent to the server regardless of whether the field is empty or not.
 10908  	// This may be used to include empty fields in Patch requests.
 10909  	ForceSendFields []string `json:"-"`
 10910  
 10911  	// NullFields is a list of field names (e.g. "Carriers") to include in
 10912  	// API requests with the JSON null value. By default, fields with empty
 10913  	// values are omitted from API requests. However, any field with an
 10914  	// empty value appearing in NullFields will be sent to the server as
 10915  	// null. It is an error if a field in this list has a non-empty value.
 10916  	// This may be used to include null fields in Patch requests.
 10917  	NullFields []string `json:"-"`
 10918  }
 10919  
 10920  func (s *ShippingsettingsGetSupportedCarriersResponse) MarshalJSON() ([]byte, error) {
 10921  	type NoMethod ShippingsettingsGetSupportedCarriersResponse
 10922  	raw := NoMethod(*s)
 10923  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 10924  }
 10925  
 10926  type ShippingsettingsGetSupportedHolidaysResponse struct {
 10927  	// Holidays: A list of holidays applicable for delivery guarantees. May
 10928  	// be empty.
 10929  	Holidays []*HolidaysHoliday `json:"holidays,omitempty"`
 10930  
 10931  	// Kind: Identifies what kind of resource this is. Value: the fixed
 10932  	// string "content#shippingsettingsGetSupportedHolidaysResponse".
 10933  	Kind string `json:"kind,omitempty"`
 10934  
 10935  	// ServerResponse contains the HTTP response code and headers from the
 10936  	// server.
 10937  	googleapi.ServerResponse `json:"-"`
 10938  
 10939  	// ForceSendFields is a list of field names (e.g. "Holidays") to
 10940  	// unconditionally include in API requests. By default, fields with
 10941  	// empty or default values are omitted from API requests. However, any
 10942  	// non-pointer, non-interface field appearing in ForceSendFields will be
 10943  	// sent to the server regardless of whether the field is empty or not.
 10944  	// This may be used to include empty fields in Patch requests.
 10945  	ForceSendFields []string `json:"-"`
 10946  
 10947  	// NullFields is a list of field names (e.g. "Holidays") to include in
 10948  	// API requests with the JSON null value. By default, fields with empty
 10949  	// values are omitted from API requests. However, any field with an
 10950  	// empty value appearing in NullFields will be sent to the server as
 10951  	// null. It is an error if a field in this list has a non-empty value.
 10952  	// This may be used to include null fields in Patch requests.
 10953  	NullFields []string `json:"-"`
 10954  }
 10955  
 10956  func (s *ShippingsettingsGetSupportedHolidaysResponse) MarshalJSON() ([]byte, error) {
 10957  	type NoMethod ShippingsettingsGetSupportedHolidaysResponse
 10958  	raw := NoMethod(*s)
 10959  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 10960  }
 10961  
 10962  type ShippingsettingsGetSupportedPickupServicesResponse struct {
 10963  	// Kind: Identifies what kind of resource this is. Value: the fixed
 10964  	// string "content#shippingsettingsGetSupportedPickupServicesResponse".
 10965  	Kind string `json:"kind,omitempty"`
 10966  
 10967  	// PickupServices: A list of supported pickup services. May be empty.
 10968  	PickupServices []*PickupServicesPickupService `json:"pickupServices,omitempty"`
 10969  
 10970  	// ServerResponse contains the HTTP response code and headers from the
 10971  	// server.
 10972  	googleapi.ServerResponse `json:"-"`
 10973  
 10974  	// ForceSendFields is a list of field names (e.g. "Kind") to
 10975  	// unconditionally include in API requests. By default, fields with
 10976  	// empty or default values are omitted from API requests. However, any
 10977  	// non-pointer, non-interface field appearing in ForceSendFields will be
 10978  	// sent to the server regardless of whether the field is empty or not.
 10979  	// This may be used to include empty fields in Patch requests.
 10980  	ForceSendFields []string `json:"-"`
 10981  
 10982  	// NullFields is a list of field names (e.g. "Kind") to include in API
 10983  	// requests with the JSON null value. By default, fields with empty
 10984  	// values are omitted from API requests. However, any field with an
 10985  	// empty value appearing in NullFields will be sent to the server as
 10986  	// null. It is an error if a field in this list has a non-empty value.
 10987  	// This may be used to include null fields in Patch requests.
 10988  	NullFields []string `json:"-"`
 10989  }
 10990  
 10991  func (s *ShippingsettingsGetSupportedPickupServicesResponse) MarshalJSON() ([]byte, error) {
 10992  	type NoMethod ShippingsettingsGetSupportedPickupServicesResponse
 10993  	raw := NoMethod(*s)
 10994  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 10995  }
 10996  
 10997  type ShippingsettingsListResponse struct {
 10998  	// Kind: Identifies what kind of resource this is. Value: the fixed
 10999  	// string "content#shippingsettingsListResponse".
 11000  	Kind string `json:"kind,omitempty"`
 11001  
 11002  	// NextPageToken: The token for the retrieval of the next page of
 11003  	// shipping settings.
 11004  	NextPageToken string `json:"nextPageToken,omitempty"`
 11005  
 11006  	Resources []*ShippingSettings `json:"resources,omitempty"`
 11007  
 11008  	// ServerResponse contains the HTTP response code and headers from the
 11009  	// server.
 11010  	googleapi.ServerResponse `json:"-"`
 11011  
 11012  	// ForceSendFields is a list of field names (e.g. "Kind") to
 11013  	// unconditionally include in API requests. By default, fields with
 11014  	// empty or default values are omitted from API requests. However, any
 11015  	// non-pointer, non-interface field appearing in ForceSendFields will be
 11016  	// sent to the server regardless of whether the field is empty or not.
 11017  	// This may be used to include empty fields in Patch requests.
 11018  	ForceSendFields []string `json:"-"`
 11019  
 11020  	// NullFields is a list of field names (e.g. "Kind") to include in API
 11021  	// requests with the JSON null value. By default, fields with empty
 11022  	// values are omitted from API requests. However, any field with an
 11023  	// empty value appearing in NullFields will be sent to the server as
 11024  	// null. It is an error if a field in this list has a non-empty value.
 11025  	// This may be used to include null fields in Patch requests.
 11026  	NullFields []string `json:"-"`
 11027  }
 11028  
 11029  func (s *ShippingsettingsListResponse) MarshalJSON() ([]byte, error) {
 11030  	type NoMethod ShippingsettingsListResponse
 11031  	raw := NoMethod(*s)
 11032  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 11033  }
 11034  
 11035  type Table struct {
 11036  	// ColumnHeaders: Headers of the table's columns. Optional: if not set
 11037  	// then the table has only one dimension.
 11038  	ColumnHeaders *Headers `json:"columnHeaders,omitempty"`
 11039  
 11040  	// Name: Name of the table. Required for subtables, ignored for the main
 11041  	// table.
 11042  	Name string `json:"name,omitempty"`
 11043  
 11044  	// RowHeaders: Headers of the table's rows. Required.
 11045  	RowHeaders *Headers `json:"rowHeaders,omitempty"`
 11046  
 11047  	// Rows: The list of rows that constitute the table. Must have the same
 11048  	// length as `rowHeaders`. Required.
 11049  	Rows []*Row `json:"rows,omitempty"`
 11050  
 11051  	// ForceSendFields is a list of field names (e.g. "ColumnHeaders") to
 11052  	// unconditionally include in API requests. By default, fields with
 11053  	// empty or default values are omitted from API requests. However, any
 11054  	// non-pointer, non-interface field appearing in ForceSendFields will be
 11055  	// sent to the server regardless of whether the field is empty or not.
 11056  	// This may be used to include empty fields in Patch requests.
 11057  	ForceSendFields []string `json:"-"`
 11058  
 11059  	// NullFields is a list of field names (e.g. "ColumnHeaders") to include
 11060  	// in API requests with the JSON null value. By default, fields with
 11061  	// empty values are omitted from API requests. However, any field with
 11062  	// an empty value appearing in NullFields will be sent to the server as
 11063  	// null. It is an error if a field in this list has a non-empty value.
 11064  	// This may be used to include null fields in Patch requests.
 11065  	NullFields []string `json:"-"`
 11066  }
 11067  
 11068  func (s *Table) MarshalJSON() ([]byte, error) {
 11069  	type NoMethod Table
 11070  	raw := NoMethod(*s)
 11071  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 11072  }
 11073  
 11074  type TestOrder struct {
 11075  	// Customer: Required. The details of the customer who placed the order.
 11076  	Customer *TestOrderCustomer `json:"customer,omitempty"`
 11077  
 11078  	// EnableOrderinvoices: Whether the orderinvoices service should support
 11079  	// this order.
 11080  	EnableOrderinvoices bool `json:"enableOrderinvoices,omitempty"`
 11081  
 11082  	// Kind: Identifies what kind of resource this is. Value: the fixed
 11083  	// string "content#testOrder"
 11084  	Kind string `json:"kind,omitempty"`
 11085  
 11086  	// LineItems: Required. Line items that are ordered. At least one line
 11087  	// item must be provided.
 11088  	LineItems []*TestOrderLineItem `json:"lineItems,omitempty"`
 11089  
 11090  	// NotificationMode: Restricted. Do not use.
 11091  	NotificationMode string `json:"notificationMode,omitempty"`
 11092  
 11093  	// PaymentMethod: The details of the payment method.
 11094  	PaymentMethod *TestOrderPaymentMethod `json:"paymentMethod,omitempty"`
 11095  
 11096  	// PredefinedDeliveryAddress: Required. Identifier of one of the
 11097  	// predefined delivery addresses for the delivery. Acceptable values
 11098  	// are: - "dwight" - "jim" - "pam"
 11099  	PredefinedDeliveryAddress string `json:"predefinedDeliveryAddress,omitempty"`
 11100  
 11101  	// PredefinedPickupDetails: Identifier of one of the predefined pickup
 11102  	// details. Required for orders containing line items with shipping type
 11103  	// `pickup`. Acceptable values are: - "dwight" - "jim" - "pam"
 11104  	PredefinedPickupDetails string `json:"predefinedPickupDetails,omitempty"`
 11105  
 11106  	// Promotions: Deprecated. Ignored if provided.
 11107  	Promotions []*OrderLegacyPromotion `json:"promotions,omitempty"`
 11108  
 11109  	// ShippingCost: Required. The price of shipping for all items. Shipping
 11110  	// tax is automatically calculated for orders where marketplace
 11111  	// facilitator tax laws are applicable. Otherwise, tax settings from
 11112  	// Merchant Center are applied. Note that shipping is not taxed in
 11113  	// certain states.
 11114  	ShippingCost *Price `json:"shippingCost,omitempty"`
 11115  
 11116  	// ShippingCostTax: Deprecated. Ignored if provided.
 11117  	ShippingCostTax *Price `json:"shippingCostTax,omitempty"`
 11118  
 11119  	// ShippingOption: Required. The requested shipping option. Acceptable
 11120  	// values are: - "economy" - "expedited" - "oneDay" - "sameDay"
 11121  	// - "standard" - "twoDay"
 11122  	ShippingOption string `json:"shippingOption,omitempty"`
 11123  
 11124  	// ForceSendFields is a list of field names (e.g. "Customer") to
 11125  	// unconditionally include in API requests. By default, fields with
 11126  	// empty or default values are omitted from API requests. However, any
 11127  	// non-pointer, non-interface field appearing in ForceSendFields will be
 11128  	// sent to the server regardless of whether the field is empty or not.
 11129  	// This may be used to include empty fields in Patch requests.
 11130  	ForceSendFields []string `json:"-"`
 11131  
 11132  	// NullFields is a list of field names (e.g. "Customer") to include in
 11133  	// API requests with the JSON null value. By default, fields with empty
 11134  	// values are omitted from API requests. However, any field with an
 11135  	// empty value appearing in NullFields will be sent to the server as
 11136  	// null. It is an error if a field in this list has a non-empty value.
 11137  	// This may be used to include null fields in Patch requests.
 11138  	NullFields []string `json:"-"`
 11139  }
 11140  
 11141  func (s *TestOrder) MarshalJSON() ([]byte, error) {
 11142  	type NoMethod TestOrder
 11143  	raw := NoMethod(*s)
 11144  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 11145  }
 11146  
 11147  type TestOrderCustomer struct {
 11148  	// Email: Required. Email address of the customer. Acceptable values
 11149  	// are: - "pog.dwight.schrute@gmail.com" -
 11150  	// "pog.jim.halpert@gmail.com" - "penpog.pam.beesly@gmail.comding"
 11151  	Email string `json:"email,omitempty"`
 11152  
 11153  	// ExplicitMarketingPreference: Deprecated. Please use
 11154  	// marketingRightsInfo instead.
 11155  	ExplicitMarketingPreference bool `json:"explicitMarketingPreference,omitempty"`
 11156  
 11157  	// FullName: Full name of the customer.
 11158  	FullName string `json:"fullName,omitempty"`
 11159  
 11160  	// MarketingRightsInfo: Customer's marketing preferences.
 11161  	MarketingRightsInfo *TestOrderCustomerMarketingRightsInfo `json:"marketingRightsInfo,omitempty"`
 11162  
 11163  	// ForceSendFields is a list of field names (e.g. "Email") to
 11164  	// unconditionally include in API requests. By default, fields with
 11165  	// empty or default values are omitted from API requests. However, any
 11166  	// non-pointer, non-interface field appearing in ForceSendFields will be
 11167  	// sent to the server regardless of whether the field is empty or not.
 11168  	// This may be used to include empty fields in Patch requests.
 11169  	ForceSendFields []string `json:"-"`
 11170  
 11171  	// NullFields is a list of field names (e.g. "Email") to include in API
 11172  	// requests with the JSON null value. By default, fields with empty
 11173  	// values are omitted from API requests. However, any field with an
 11174  	// empty value appearing in NullFields will be sent to the server as
 11175  	// null. It is an error if a field in this list has a non-empty value.
 11176  	// This may be used to include null fields in Patch requests.
 11177  	NullFields []string `json:"-"`
 11178  }
 11179  
 11180  func (s *TestOrderCustomer) MarshalJSON() ([]byte, error) {
 11181  	type NoMethod TestOrderCustomer
 11182  	raw := NoMethod(*s)
 11183  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 11184  }
 11185  
 11186  type TestOrderCustomerMarketingRightsInfo struct {
 11187  	// ExplicitMarketingPreference: Last know user use selection regards
 11188  	// marketing preferences. In certain cases selection might not be known,
 11189  	// so this field would be empty. Acceptable values are: - "denied" -
 11190  	// "granted"
 11191  	ExplicitMarketingPreference string `json:"explicitMarketingPreference,omitempty"`
 11192  
 11193  	// LastUpdatedTimestamp: Timestamp when last time marketing preference
 11194  	// was updated. Could be empty, if user wasn't offered a selection yet.
 11195  	LastUpdatedTimestamp string `json:"lastUpdatedTimestamp,omitempty"`
 11196  
 11197  	// ForceSendFields is a list of field names (e.g.
 11198  	// "ExplicitMarketingPreference") to unconditionally include in API
 11199  	// requests. By default, fields with empty or default values are omitted
 11200  	// from API requests. However, any non-pointer, non-interface field
 11201  	// appearing in ForceSendFields will be sent to the server regardless of
 11202  	// whether the field is empty or not. This may be used to include empty
 11203  	// fields in Patch requests.
 11204  	ForceSendFields []string `json:"-"`
 11205  
 11206  	// NullFields is a list of field names (e.g.
 11207  	// "ExplicitMarketingPreference") to include in API requests with the
 11208  	// JSON null value. By default, fields with empty values are omitted
 11209  	// from API requests. However, any field with an empty value appearing
 11210  	// in NullFields will be sent to the server as null. It is an error if a
 11211  	// field in this list has a non-empty value. This may be used to include
 11212  	// null fields in Patch requests.
 11213  	NullFields []string `json:"-"`
 11214  }
 11215  
 11216  func (s *TestOrderCustomerMarketingRightsInfo) MarshalJSON() ([]byte, error) {
 11217  	type NoMethod TestOrderCustomerMarketingRightsInfo
 11218  	raw := NoMethod(*s)
 11219  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 11220  }
 11221  
 11222  type TestOrderLineItem struct {
 11223  	// Product: Required. Product data from the time of the order placement.
 11224  	Product *TestOrderLineItemProduct `json:"product,omitempty"`
 11225  
 11226  	// QuantityOrdered: Required. Number of items ordered.
 11227  	QuantityOrdered int64 `json:"quantityOrdered,omitempty"`
 11228  
 11229  	// ReturnInfo: Required. Details of the return policy for the line item.
 11230  	ReturnInfo *OrderLineItemReturnInfo `json:"returnInfo,omitempty"`
 11231  
 11232  	// ShippingDetails: Required. Details of the requested shipping for the
 11233  	// line item.
 11234  	ShippingDetails *OrderLineItemShippingDetails `json:"shippingDetails,omitempty"`
 11235  
 11236  	// UnitTax: Deprecated. Ignored if provided.
 11237  	UnitTax *Price `json:"unitTax,omitempty"`
 11238  
 11239  	// ForceSendFields is a list of field names (e.g. "Product") to
 11240  	// unconditionally include in API requests. By default, fields with
 11241  	// empty or default values are omitted from API requests. However, any
 11242  	// non-pointer, non-interface field appearing in ForceSendFields will be
 11243  	// sent to the server regardless of whether the field is empty or not.
 11244  	// This may be used to include empty fields in Patch requests.
 11245  	ForceSendFields []string `json:"-"`
 11246  
 11247  	// NullFields is a list of field names (e.g. "Product") to include in
 11248  	// API requests with the JSON null value. By default, fields with empty
 11249  	// values are omitted from API requests. However, any field with an
 11250  	// empty value appearing in NullFields will be sent to the server as
 11251  	// null. It is an error if a field in this list has a non-empty value.
 11252  	// This may be used to include null fields in Patch requests.
 11253  	NullFields []string `json:"-"`
 11254  }
 11255  
 11256  func (s *TestOrderLineItem) MarshalJSON() ([]byte, error) {
 11257  	type NoMethod TestOrderLineItem
 11258  	raw := NoMethod(*s)
 11259  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 11260  }
 11261  
 11262  type TestOrderLineItemProduct struct {
 11263  	// Brand: Required. Brand of the item.
 11264  	Brand string `json:"brand,omitempty"`
 11265  
 11266  	// Channel: Deprecated. Acceptable values are: - "online"
 11267  	Channel string `json:"channel,omitempty"`
 11268  
 11269  	// Condition: Required. Condition or state of the item. Acceptable
 11270  	// values are: - "new"
 11271  	Condition string `json:"condition,omitempty"`
 11272  
 11273  	// ContentLanguage: Required. The two-letter ISO 639-1 language code for
 11274  	// the item. Acceptable values are: - "en" - "fr"
 11275  	ContentLanguage string `json:"contentLanguage,omitempty"`
 11276  
 11277  	// Fees: Fees for the item. Optional.
 11278  	Fees []*OrderLineItemProductFee `json:"fees,omitempty"`
 11279  
 11280  	// Gtin: Global Trade Item Number (GTIN) of the item. Optional.
 11281  	Gtin string `json:"gtin,omitempty"`
 11282  
 11283  	// ImageLink: Required. URL of an image of the item.
 11284  	ImageLink string `json:"imageLink,omitempty"`
 11285  
 11286  	// ItemGroupId: Shared identifier for all variants of the same product.
 11287  	// Optional.
 11288  	ItemGroupId string `json:"itemGroupId,omitempty"`
 11289  
 11290  	// Mpn: Manufacturer Part Number (MPN) of the item. Optional.
 11291  	Mpn string `json:"mpn,omitempty"`
 11292  
 11293  	// OfferId: Required. An identifier of the item.
 11294  	OfferId string `json:"offerId,omitempty"`
 11295  
 11296  	// Price: Required. The price for the product. Tax is automatically
 11297  	// calculated for orders where marketplace facilitator tax laws are
 11298  	// applicable. Otherwise, tax settings from Merchant Center are applied.
 11299  	Price *Price `json:"price,omitempty"`
 11300  
 11301  	// TargetCountry: Required. The CLDR territory // code of the target
 11302  	// country of the product.
 11303  	TargetCountry string `json:"targetCountry,omitempty"`
 11304  
 11305  	// Title: Required. The title of the product.
 11306  	Title string `json:"title,omitempty"`
 11307  
 11308  	// VariantAttributes: Variant attributes for the item. Optional.
 11309  	VariantAttributes []*OrderLineItemProductVariantAttribute `json:"variantAttributes,omitempty"`
 11310  
 11311  	// ForceSendFields is a list of field names (e.g. "Brand") to
 11312  	// unconditionally include in API requests. By default, fields with
 11313  	// empty or default values are omitted from API requests. However, any
 11314  	// non-pointer, non-interface field appearing in ForceSendFields will be
 11315  	// sent to the server regardless of whether the field is empty or not.
 11316  	// This may be used to include empty fields in Patch requests.
 11317  	ForceSendFields []string `json:"-"`
 11318  
 11319  	// NullFields is a list of field names (e.g. "Brand") to include in API
 11320  	// requests with the JSON null value. By default, fields with empty
 11321  	// values are omitted from API requests. However, any field with an
 11322  	// empty value appearing in NullFields will be sent to the server as
 11323  	// null. It is an error if a field in this list has a non-empty value.
 11324  	// This may be used to include null fields in Patch requests.
 11325  	NullFields []string `json:"-"`
 11326  }
 11327  
 11328  func (s *TestOrderLineItemProduct) MarshalJSON() ([]byte, error) {
 11329  	type NoMethod TestOrderLineItemProduct
 11330  	raw := NoMethod(*s)
 11331  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 11332  }
 11333  
 11334  type TestOrderPaymentMethod struct {
 11335  	// ExpirationMonth: The card expiration month (January = 1, February = 2
 11336  	// etc.).
 11337  	ExpirationMonth int64 `json:"expirationMonth,omitempty"`
 11338  
 11339  	// ExpirationYear: The card expiration year (4-digit, e.g. 2015).
 11340  	ExpirationYear int64 `json:"expirationYear,omitempty"`
 11341  
 11342  	// LastFourDigits: The last four digits of the card number.
 11343  	LastFourDigits string `json:"lastFourDigits,omitempty"`
 11344  
 11345  	// PredefinedBillingAddress: The billing address. Acceptable values are:
 11346  	// - "dwight" - "jim" - "pam"
 11347  	PredefinedBillingAddress string `json:"predefinedBillingAddress,omitempty"`
 11348  
 11349  	// Type: The type of instrument. Note that real orders might have
 11350  	// different values than the four values accepted by `createTestOrder`.
 11351  	// Acceptable values are: - "AMEX" - "DISCOVER" - "MASTERCARD" -
 11352  	// "VISA"
 11353  	Type string `json:"type,omitempty"`
 11354  
 11355  	// ForceSendFields is a list of field names (e.g. "ExpirationMonth") to
 11356  	// unconditionally include in API requests. By default, fields with
 11357  	// empty or default values are omitted from API requests. However, any
 11358  	// non-pointer, non-interface field appearing in ForceSendFields will be
 11359  	// sent to the server regardless of whether the field is empty or not.
 11360  	// This may be used to include empty fields in Patch requests.
 11361  	ForceSendFields []string `json:"-"`
 11362  
 11363  	// NullFields is a list of field names (e.g. "ExpirationMonth") to
 11364  	// include in API requests with the JSON null value. By default, fields
 11365  	// with empty values are omitted from API requests. However, any field
 11366  	// with an empty value appearing in NullFields will be sent to the
 11367  	// server as null. It is an error if a field in this list has a
 11368  	// non-empty value. This may be used to include null fields in Patch
 11369  	// requests.
 11370  	NullFields []string `json:"-"`
 11371  }
 11372  
 11373  func (s *TestOrderPaymentMethod) MarshalJSON() ([]byte, error) {
 11374  	type NoMethod TestOrderPaymentMethod
 11375  	raw := NoMethod(*s)
 11376  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 11377  }
 11378  
 11379  type TransitTable struct {
 11380  	// PostalCodeGroupNames: A list of postal group names. The last value
 11381  	// can be "all other locations". Example: `["zone 1", "zone 2", "all
 11382  	// other locations"]`. The referred postal code groups must match the
 11383  	// delivery country of the service.
 11384  	PostalCodeGroupNames []string `json:"postalCodeGroupNames,omitempty"`
 11385  
 11386  	Rows []*TransitTableTransitTimeRow `json:"rows,omitempty"`
 11387  
 11388  	// TransitTimeLabels: A list of transit time labels. The last value can
 11389  	// be "all other labels". Example: `["food", "electronics", "all other
 11390  	// labels"]`.
 11391  	TransitTimeLabels []string `json:"transitTimeLabels,omitempty"`
 11392  
 11393  	// ForceSendFields is a list of field names (e.g.
 11394  	// "PostalCodeGroupNames") to unconditionally include in API requests.
 11395  	// By default, fields with empty or default values are omitted from API
 11396  	// requests. However, any non-pointer, non-interface field appearing in
 11397  	// ForceSendFields will be sent to the server regardless of whether the
 11398  	// field is empty or not. This may be used to include empty fields in
 11399  	// Patch requests.
 11400  	ForceSendFields []string `json:"-"`
 11401  
 11402  	// NullFields is a list of field names (e.g. "PostalCodeGroupNames") to
 11403  	// include in API requests with the JSON null value. By default, fields
 11404  	// with empty values are omitted from API requests. However, any field
 11405  	// with an empty value appearing in NullFields will be sent to the
 11406  	// server as null. It is an error if a field in this list has a
 11407  	// non-empty value. This may be used to include null fields in Patch
 11408  	// requests.
 11409  	NullFields []string `json:"-"`
 11410  }
 11411  
 11412  func (s *TransitTable) MarshalJSON() ([]byte, error) {
 11413  	type NoMethod TransitTable
 11414  	raw := NoMethod(*s)
 11415  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 11416  }
 11417  
 11418  type TransitTableTransitTimeRow struct {
 11419  	Values []*TransitTableTransitTimeRowTransitTimeValue `json:"values,omitempty"`
 11420  
 11421  	// ForceSendFields is a list of field names (e.g. "Values") to
 11422  	// unconditionally include in API requests. By default, fields with
 11423  	// empty or default values are omitted from API requests. However, any
 11424  	// non-pointer, non-interface field appearing in ForceSendFields will be
 11425  	// sent to the server regardless of whether the field is empty or not.
 11426  	// This may be used to include empty fields in Patch requests.
 11427  	ForceSendFields []string `json:"-"`
 11428  
 11429  	// NullFields is a list of field names (e.g. "Values") to include in API
 11430  	// requests with the JSON null value. By default, fields with empty
 11431  	// values are omitted from API requests. However, any field with an
 11432  	// empty value appearing in NullFields will be sent to the server as
 11433  	// null. It is an error if a field in this list has a non-empty value.
 11434  	// This may be used to include null fields in Patch requests.
 11435  	NullFields []string `json:"-"`
 11436  }
 11437  
 11438  func (s *TransitTableTransitTimeRow) MarshalJSON() ([]byte, error) {
 11439  	type NoMethod TransitTableTransitTimeRow
 11440  	raw := NoMethod(*s)
 11441  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 11442  }
 11443  
 11444  type TransitTableTransitTimeRowTransitTimeValue struct {
 11445  	// MaxTransitTimeInDays: Must be greater than or equal to
 11446  	// `minTransitTimeInDays`.
 11447  	MaxTransitTimeInDays int64 `json:"maxTransitTimeInDays,omitempty"`
 11448  
 11449  	// MinTransitTimeInDays: Transit time range (min-max) in business days.
 11450  	// 0 means same day delivery, 1 means next day delivery.
 11451  	MinTransitTimeInDays int64 `json:"minTransitTimeInDays,omitempty"`
 11452  
 11453  	// ForceSendFields is a list of field names (e.g.
 11454  	// "MaxTransitTimeInDays") to unconditionally include in API requests.
 11455  	// By default, fields with empty or default values are omitted from API
 11456  	// requests. However, any non-pointer, non-interface field appearing in
 11457  	// ForceSendFields will be sent to the server regardless of whether the
 11458  	// field is empty or not. This may be used to include empty fields in
 11459  	// Patch requests.
 11460  	ForceSendFields []string `json:"-"`
 11461  
 11462  	// NullFields is a list of field names (e.g. "MaxTransitTimeInDays") to
 11463  	// include in API requests with the JSON null value. By default, fields
 11464  	// with empty values are omitted from API requests. However, any field
 11465  	// with an empty value appearing in NullFields will be sent to the
 11466  	// server as null. It is an error if a field in this list has a
 11467  	// non-empty value. This may be used to include null fields in Patch
 11468  	// requests.
 11469  	NullFields []string `json:"-"`
 11470  }
 11471  
 11472  func (s *TransitTableTransitTimeRowTransitTimeValue) MarshalJSON() ([]byte, error) {
 11473  	type NoMethod TransitTableTransitTimeRowTransitTimeValue
 11474  	raw := NoMethod(*s)
 11475  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 11476  }
 11477  
 11478  type UnitInvoice struct {
 11479  	// AdditionalCharges: Additional charges for a unit, e.g. shipping
 11480  	// costs.
 11481  	AdditionalCharges []*UnitInvoiceAdditionalCharge `json:"additionalCharges,omitempty"`
 11482  
 11483  	// Promotions: Deprecated.
 11484  	Promotions []*Promotion `json:"promotions,omitempty"`
 11485  
 11486  	// UnitPricePretax: [required] Price of the unit, before applying taxes.
 11487  	UnitPricePretax *Price `json:"unitPricePretax,omitempty"`
 11488  
 11489  	// UnitPriceTaxes: Tax amounts to apply to the unit price.
 11490  	UnitPriceTaxes []*UnitInvoiceTaxLine `json:"unitPriceTaxes,omitempty"`
 11491  
 11492  	// ForceSendFields is a list of field names (e.g. "AdditionalCharges")
 11493  	// to unconditionally include in API requests. By default, fields with
 11494  	// empty or default values are omitted from API requests. However, any
 11495  	// non-pointer, non-interface field appearing in ForceSendFields will be
 11496  	// sent to the server regardless of whether the field is empty or not.
 11497  	// This may be used to include empty fields in Patch requests.
 11498  	ForceSendFields []string `json:"-"`
 11499  
 11500  	// NullFields is a list of field names (e.g. "AdditionalCharges") to
 11501  	// include in API requests with the JSON null value. By default, fields
 11502  	// with empty values are omitted from API requests. However, any field
 11503  	// with an empty value appearing in NullFields will be sent to the
 11504  	// server as null. It is an error if a field in this list has a
 11505  	// non-empty value. This may be used to include null fields in Patch
 11506  	// requests.
 11507  	NullFields []string `json:"-"`
 11508  }
 11509  
 11510  func (s *UnitInvoice) MarshalJSON() ([]byte, error) {
 11511  	type NoMethod UnitInvoice
 11512  	raw := NoMethod(*s)
 11513  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 11514  }
 11515  
 11516  type UnitInvoiceAdditionalCharge struct {
 11517  	// AdditionalChargeAmount: [required] Amount of the additional charge.
 11518  	AdditionalChargeAmount *Amount `json:"additionalChargeAmount,omitempty"`
 11519  
 11520  	// AdditionalChargePromotions: Deprecated.
 11521  	AdditionalChargePromotions []*Promotion `json:"additionalChargePromotions,omitempty"`
 11522  
 11523  	// Type: [required] Type of the additional charge. Acceptable values
 11524  	// are: - "shipping"
 11525  	Type string `json:"type,omitempty"`
 11526  
 11527  	// ForceSendFields is a list of field names (e.g.
 11528  	// "AdditionalChargeAmount") to unconditionally include in API requests.
 11529  	// By default, fields with empty or default values are omitted from API
 11530  	// requests. However, any non-pointer, non-interface field appearing in
 11531  	// ForceSendFields will be sent to the server regardless of whether the
 11532  	// field is empty or not. This may be used to include empty fields in
 11533  	// Patch requests.
 11534  	ForceSendFields []string `json:"-"`
 11535  
 11536  	// NullFields is a list of field names (e.g. "AdditionalChargeAmount")
 11537  	// to include in API requests with the JSON null value. By default,
 11538  	// fields with empty values are omitted from API requests. However, any
 11539  	// field with an empty value appearing in NullFields will be sent to the
 11540  	// server as null. It is an error if a field in this list has a
 11541  	// non-empty value. This may be used to include null fields in Patch
 11542  	// requests.
 11543  	NullFields []string `json:"-"`
 11544  }
 11545  
 11546  func (s *UnitInvoiceAdditionalCharge) MarshalJSON() ([]byte, error) {
 11547  	type NoMethod UnitInvoiceAdditionalCharge
 11548  	raw := NoMethod(*s)
 11549  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 11550  }
 11551  
 11552  type UnitInvoiceTaxLine struct {
 11553  	// TaxAmount: [required] Tax amount for the tax type.
 11554  	TaxAmount *Price `json:"taxAmount,omitempty"`
 11555  
 11556  	// TaxName: Optional name of the tax type. This should only be provided
 11557  	// if `taxType` is `otherFeeTax`.
 11558  	TaxName string `json:"taxName,omitempty"`
 11559  
 11560  	// TaxType: [required] Type of the tax. Acceptable values are: -
 11561  	// "otherFee" - "otherFeeTax" - "sales"
 11562  	TaxType string `json:"taxType,omitempty"`
 11563  
 11564  	// ForceSendFields is a list of field names (e.g. "TaxAmount") to
 11565  	// unconditionally include in API requests. By default, fields with
 11566  	// empty or default values are omitted from API requests. However, any
 11567  	// non-pointer, non-interface field appearing in ForceSendFields will be
 11568  	// sent to the server regardless of whether the field is empty or not.
 11569  	// This may be used to include empty fields in Patch requests.
 11570  	ForceSendFields []string `json:"-"`
 11571  
 11572  	// NullFields is a list of field names (e.g. "TaxAmount") to include in
 11573  	// API requests with the JSON null value. By default, fields with empty
 11574  	// values are omitted from API requests. However, any field with an
 11575  	// empty value appearing in NullFields will be sent to the server as
 11576  	// null. It is an error if a field in this list has a non-empty value.
 11577  	// This may be used to include null fields in Patch requests.
 11578  	NullFields []string `json:"-"`
 11579  }
 11580  
 11581  func (s *UnitInvoiceTaxLine) MarshalJSON() ([]byte, error) {
 11582  	type NoMethod UnitInvoiceTaxLine
 11583  	raw := NoMethod(*s)
 11584  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 11585  }
 11586  
 11587  // Value: The single value of a rate group or the value of a rate group
 11588  // table's cell. Exactly one of `noShipping`, `flatRate`,
 11589  // `pricePercentage`, `carrierRateName`, `subtableName` must be set.
 11590  type Value struct {
 11591  	// CarrierRateName: The name of a carrier rate referring to a carrier
 11592  	// rate defined in the same rate group. Can only be set if all other
 11593  	// fields are not set.
 11594  	CarrierRateName string `json:"carrierRateName,omitempty"`
 11595  
 11596  	// FlatRate: A flat rate. Can only be set if all other fields are not
 11597  	// set.
 11598  	FlatRate *Price `json:"flatRate,omitempty"`
 11599  
 11600  	// NoShipping: If true, then the product can't ship. Must be true when
 11601  	// set, can only be set if all other fields are not set.
 11602  	NoShipping bool `json:"noShipping,omitempty"`
 11603  
 11604  	// PricePercentage: A percentage of the price represented as a number in
 11605  	// decimal notation (e.g., "5.4"). Can only be set if all other fields
 11606  	// are not set.
 11607  	PricePercentage string `json:"pricePercentage,omitempty"`
 11608  
 11609  	// SubtableName: The name of a subtable. Can only be set in table cells
 11610  	// (i.e., not for single values), and only if all other fields are not
 11611  	// set.
 11612  	SubtableName string `json:"subtableName,omitempty"`
 11613  
 11614  	// ForceSendFields is a list of field names (e.g. "CarrierRateName") to
 11615  	// unconditionally include in API requests. By default, fields with
 11616  	// empty or default values are omitted from API requests. However, any
 11617  	// non-pointer, non-interface field appearing in ForceSendFields will be
 11618  	// sent to the server regardless of whether the field is empty or not.
 11619  	// This may be used to include empty fields in Patch requests.
 11620  	ForceSendFields []string `json:"-"`
 11621  
 11622  	// NullFields is a list of field names (e.g. "CarrierRateName") to
 11623  	// include in API requests with the JSON null value. By default, fields
 11624  	// with empty values are omitted from API requests. However, any field
 11625  	// with an empty value appearing in NullFields will be sent to the
 11626  	// server as null. It is an error if a field in this list has a
 11627  	// non-empty value. This may be used to include null fields in Patch
 11628  	// requests.
 11629  	NullFields []string `json:"-"`
 11630  }
 11631  
 11632  func (s *Value) MarshalJSON() ([]byte, error) {
 11633  	type NoMethod Value
 11634  	raw := NoMethod(*s)
 11635  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 11636  }
 11637  
 11638  // Warehouse: A fulfillment warehouse, which stores and handles
 11639  // inventory.
 11640  type Warehouse struct {
 11641  	// BusinessDayConfig: Business days of the warehouse. If not set, will
 11642  	// be Monday to Friday by default.
 11643  	BusinessDayConfig *BusinessDayConfig `json:"businessDayConfig,omitempty"`
 11644  
 11645  	// CutoffTime: Required. The latest time of day that an order can be
 11646  	// accepted and begin processing. Later orders will be processed in the
 11647  	// next day. The time is based on the warehouse postal code.
 11648  	CutoffTime *WarehouseCutoffTime `json:"cutoffTime,omitempty"`
 11649  
 11650  	// HandlingDays: Required. The number of days it takes for this
 11651  	// warehouse to pack up and ship an item. This is on the warehouse
 11652  	// level, but can be overridden on the offer level based on the
 11653  	// attributes of an item.
 11654  	HandlingDays int64 `json:"handlingDays,omitempty,string"`
 11655  
 11656  	// Name: Required. The name of the warehouse. Must be unique within
 11657  	// account.
 11658  	Name string `json:"name,omitempty"`
 11659  
 11660  	// ShippingAddress: Required. Shipping address of the warehouse.
 11661  	ShippingAddress *Address `json:"shippingAddress,omitempty"`
 11662  
 11663  	// ForceSendFields is a list of field names (e.g. "BusinessDayConfig")
 11664  	// to unconditionally include in API requests. By default, fields with
 11665  	// empty or default values are omitted from API requests. However, any
 11666  	// non-pointer, non-interface field appearing in ForceSendFields will be
 11667  	// sent to the server regardless of whether the field is empty or not.
 11668  	// This may be used to include empty fields in Patch requests.
 11669  	ForceSendFields []string `json:"-"`
 11670  
 11671  	// NullFields is a list of field names (e.g. "BusinessDayConfig") to
 11672  	// include in API requests with the JSON null value. By default, fields
 11673  	// with empty values are omitted from API requests. However, any field
 11674  	// with an empty value appearing in NullFields will be sent to the
 11675  	// server as null. It is an error if a field in this list has a
 11676  	// non-empty value. This may be used to include null fields in Patch
 11677  	// requests.
 11678  	NullFields []string `json:"-"`
 11679  }
 11680  
 11681  func (s *Warehouse) MarshalJSON() ([]byte, error) {
 11682  	type NoMethod Warehouse
 11683  	raw := NoMethod(*s)
 11684  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 11685  }
 11686  
 11687  type WarehouseBasedDeliveryTime struct {
 11688  	// Carrier: Required. Carrier, such as "UPS" or "Fedex". The list of
 11689  	// supported carriers can be retrieved via the `listSupportedCarriers`
 11690  	// method.
 11691  	Carrier string `json:"carrier,omitempty"`
 11692  
 11693  	// CarrierService: Required. Carrier service, such as "ground" or "2
 11694  	// days". The list of supported services for a carrier can be retrieved
 11695  	// via the `listSupportedCarriers` method. The name of the service must
 11696  	// be in the eddSupportedServices list.
 11697  	CarrierService string `json:"carrierService,omitempty"`
 11698  
 11699  	// OriginAdministrativeArea: Shipping origin's state.
 11700  	OriginAdministrativeArea string `json:"originAdministrativeArea,omitempty"`
 11701  
 11702  	// OriginCity: Shipping origin's city.
 11703  	OriginCity string `json:"originCity,omitempty"`
 11704  
 11705  	// OriginCountry: Shipping origin's country represented as a CLDR
 11706  	// territory code
 11707  	// (http://www.unicode.org/repos/cldr/tags/latest/common/main/en.xml).
 11708  	OriginCountry string `json:"originCountry,omitempty"`
 11709  
 11710  	// OriginPostalCode: Shipping origin.
 11711  	OriginPostalCode string `json:"originPostalCode,omitempty"`
 11712  
 11713  	// OriginStreetAddress: Shipping origin's street address
 11714  	OriginStreetAddress string `json:"originStreetAddress,omitempty"`
 11715  
 11716  	// WarehouseName: The name of the warehouse. Warehouse name need to be
 11717  	// matched with name. If warehouseName is set, the below fields will be
 11718  	// ignored. The warehouse info will be read from warehouse.
 11719  	WarehouseName string `json:"warehouseName,omitempty"`
 11720  
 11721  	// ForceSendFields is a list of field names (e.g. "Carrier") to
 11722  	// unconditionally include in API requests. By default, fields with
 11723  	// empty or default values are omitted from API requests. However, any
 11724  	// non-pointer, non-interface field appearing in ForceSendFields will be
 11725  	// sent to the server regardless of whether the field is empty or not.
 11726  	// This may be used to include empty fields in Patch requests.
 11727  	ForceSendFields []string `json:"-"`
 11728  
 11729  	// NullFields is a list of field names (e.g. "Carrier") to include in
 11730  	// API requests with the JSON null value. By default, fields with empty
 11731  	// values are omitted from API requests. However, any field with an
 11732  	// empty value appearing in NullFields will be sent to the server as
 11733  	// null. It is an error if a field in this list has a non-empty value.
 11734  	// This may be used to include null fields in Patch requests.
 11735  	NullFields []string `json:"-"`
 11736  }
 11737  
 11738  func (s *WarehouseBasedDeliveryTime) MarshalJSON() ([]byte, error) {
 11739  	type NoMethod WarehouseBasedDeliveryTime
 11740  	raw := NoMethod(*s)
 11741  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 11742  }
 11743  
 11744  type WarehouseCutoffTime struct {
 11745  	// Hour: Required. Hour (24-hour clock) of the cutoff time until which
 11746  	// an order has to be placed to be processed in the same day by the
 11747  	// warehouse. Hour is based on the timezone of warehouse.
 11748  	Hour int64 `json:"hour,omitempty"`
 11749  
 11750  	// Minute: Required. Minute of the cutoff time until which an order has
 11751  	// to be placed to be processed in the same day by the warehouse. Minute
 11752  	// is based on the timezone of warehouse.
 11753  	Minute int64 `json:"minute,omitempty"`
 11754  
 11755  	// ForceSendFields is a list of field names (e.g. "Hour") to
 11756  	// unconditionally include in API requests. By default, fields with
 11757  	// empty or default values are omitted from API requests. However, any
 11758  	// non-pointer, non-interface field appearing in ForceSendFields will be
 11759  	// sent to the server regardless of whether the field is empty or not.
 11760  	// This may be used to include empty fields in Patch requests.
 11761  	ForceSendFields []string `json:"-"`
 11762  
 11763  	// NullFields is a list of field names (e.g. "Hour") to include in API
 11764  	// requests with the JSON null value. By default, fields with empty
 11765  	// values are omitted from API requests. However, any field with an
 11766  	// empty value appearing in NullFields will be sent to the server as
 11767  	// null. It is an error if a field in this list has a non-empty value.
 11768  	// This may be used to include null fields in Patch requests.
 11769  	NullFields []string `json:"-"`
 11770  }
 11771  
 11772  func (s *WarehouseCutoffTime) MarshalJSON() ([]byte, error) {
 11773  	type NoMethod WarehouseCutoffTime
 11774  	raw := NoMethod(*s)
 11775  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 11776  }
 11777  
 11778  type Weight struct {
 11779  	// Unit: Required. The weight unit. Acceptable values are: - "kg" -
 11780  	// "lb"
 11781  	Unit string `json:"unit,omitempty"`
 11782  
 11783  	// Value: Required. The weight represented as a number. The weight can
 11784  	// have a maximum precision of four decimal places.
 11785  	Value string `json:"value,omitempty"`
 11786  
 11787  	// ForceSendFields is a list of field names (e.g. "Unit") to
 11788  	// unconditionally include in API requests. By default, fields with
 11789  	// empty or default values are omitted from API requests. However, any
 11790  	// non-pointer, non-interface field appearing in ForceSendFields will be
 11791  	// sent to the server regardless of whether the field is empty or not.
 11792  	// This may be used to include empty fields in Patch requests.
 11793  	ForceSendFields []string `json:"-"`
 11794  
 11795  	// NullFields is a list of field names (e.g. "Unit") to include in API
 11796  	// requests with the JSON null value. By default, fields with empty
 11797  	// values are omitted from API requests. However, any field with an
 11798  	// empty value appearing in NullFields will be sent to the server as
 11799  	// null. It is an error if a field in this list has a non-empty value.
 11800  	// This may be used to include null fields in Patch requests.
 11801  	NullFields []string `json:"-"`
 11802  }
 11803  
 11804  func (s *Weight) MarshalJSON() ([]byte, error) {
 11805  	type NoMethod Weight
 11806  	raw := NoMethod(*s)
 11807  	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
 11808  }
 11809  
 11810  // method id "content.accounts.authinfo":
 11811  
 11812  type AccountsAuthinfoCall struct {
 11813  	s            *APIService
 11814  	urlParams_   gensupport.URLParams
 11815  	ifNoneMatch_ string
 11816  	ctx_         context.Context
 11817  	header_      http.Header
 11818  }
 11819  
 11820  // Authinfo: Returns information about the authenticated user.
 11821  func (r *AccountsService) Authinfo() *AccountsAuthinfoCall {
 11822  	c := &AccountsAuthinfoCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11823  	return c
 11824  }
 11825  
 11826  // Fields allows partial responses to be retrieved. See
 11827  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 11828  // for more information.
 11829  func (c *AccountsAuthinfoCall) Fields(s ...googleapi.Field) *AccountsAuthinfoCall {
 11830  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11831  	return c
 11832  }
 11833  
 11834  // IfNoneMatch sets the optional parameter which makes the operation
 11835  // fail if the object's ETag matches the given value. This is useful for
 11836  // getting updates only after the object has changed since the last
 11837  // request. Use googleapi.IsNotModified to check whether the response
 11838  // error from Do is the result of In-None-Match.
 11839  func (c *AccountsAuthinfoCall) IfNoneMatch(entityTag string) *AccountsAuthinfoCall {
 11840  	c.ifNoneMatch_ = entityTag
 11841  	return c
 11842  }
 11843  
 11844  // Context sets the context to be used in this call's Do method. Any
 11845  // pending HTTP request will be aborted if the provided context is
 11846  // canceled.
 11847  func (c *AccountsAuthinfoCall) Context(ctx context.Context) *AccountsAuthinfoCall {
 11848  	c.ctx_ = ctx
 11849  	return c
 11850  }
 11851  
 11852  // Header returns an http.Header that can be modified by the caller to
 11853  // add HTTP headers to the request.
 11854  func (c *AccountsAuthinfoCall) Header() http.Header {
 11855  	if c.header_ == nil {
 11856  		c.header_ = make(http.Header)
 11857  	}
 11858  	return c.header_
 11859  }
 11860  
 11861  func (c *AccountsAuthinfoCall) doRequest(alt string) (*http.Response, error) {
 11862  	reqHeaders := make(http.Header)
 11863  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 11864  	for k, v := range c.header_ {
 11865  		reqHeaders[k] = v
 11866  	}
 11867  	reqHeaders.Set("User-Agent", c.s.userAgent())
 11868  	if c.ifNoneMatch_ != "" {
 11869  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 11870  	}
 11871  	var body io.Reader = nil
 11872  	c.urlParams_.Set("alt", alt)
 11873  	c.urlParams_.Set("prettyPrint", "false")
 11874  	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/authinfo")
 11875  	urls += "?" + c.urlParams_.Encode()
 11876  	req, err := http.NewRequest("GET", urls, body)
 11877  	if err != nil {
 11878  		return nil, err
 11879  	}
 11880  	req.Header = reqHeaders
 11881  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11882  }
 11883  
 11884  // Do executes the "content.accounts.authinfo" call.
 11885  // Exactly one of *AccountsAuthInfoResponse or error will be non-nil.
 11886  // Any non-2xx status code is an error. Response headers are in either
 11887  // *AccountsAuthInfoResponse.ServerResponse.Header or (if a response was
 11888  // returned at all) in error.(*googleapi.Error).Header. Use
 11889  // googleapi.IsNotModified to check whether the returned error was
 11890  // because http.StatusNotModified was returned.
 11891  func (c *AccountsAuthinfoCall) Do(opts ...googleapi.CallOption) (*AccountsAuthInfoResponse, error) {
 11892  	gensupport.SetOptions(c.urlParams_, opts...)
 11893  	res, err := c.doRequest("json")
 11894  	if res != nil && res.StatusCode == http.StatusNotModified {
 11895  		if res.Body != nil {
 11896  			res.Body.Close()
 11897  		}
 11898  		return nil, &googleapi.Error{
 11899  			Code:   res.StatusCode,
 11900  			Header: res.Header,
 11901  		}
 11902  	}
 11903  	if err != nil {
 11904  		return nil, err
 11905  	}
 11906  	defer googleapi.CloseBody(res)
 11907  	if err := googleapi.CheckResponse(res); err != nil {
 11908  		return nil, err
 11909  	}
 11910  	ret := &AccountsAuthInfoResponse{
 11911  		ServerResponse: googleapi.ServerResponse{
 11912  			Header:         res.Header,
 11913  			HTTPStatusCode: res.StatusCode,
 11914  		},
 11915  	}
 11916  	target := &ret
 11917  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11918  		return nil, err
 11919  	}
 11920  	return ret, nil
 11921  	// {
 11922  	//   "description": "Returns information about the authenticated user.",
 11923  	//   "flatPath": "accounts/authinfo",
 11924  	//   "httpMethod": "GET",
 11925  	//   "id": "content.accounts.authinfo",
 11926  	//   "parameterOrder": [],
 11927  	//   "parameters": {},
 11928  	//   "path": "accounts/authinfo",
 11929  	//   "response": {
 11930  	//     "$ref": "AccountsAuthInfoResponse"
 11931  	//   },
 11932  	//   "scopes": [
 11933  	//     "https://www.googleapis.com/auth/content"
 11934  	//   ]
 11935  	// }
 11936  
 11937  }
 11938  
 11939  // method id "content.accounts.claimwebsite":
 11940  
 11941  type AccountsClaimwebsiteCall struct {
 11942  	s          *APIService
 11943  	merchantId uint64
 11944  	accountId  uint64
 11945  	urlParams_ gensupport.URLParams
 11946  	ctx_       context.Context
 11947  	header_    http.Header
 11948  }
 11949  
 11950  // Claimwebsite: Claims the website of a Merchant Center sub-account.
 11951  //
 11952  //   - accountId: The ID of the account whose website is claimed.
 11953  //   - merchantId: The ID of the managing account. If this parameter is
 11954  //     not the same as accountId, then this account must be a multi-client
 11955  //     account and `accountId` must be the ID of a sub-account of this
 11956  //     account.
 11957  func (r *AccountsService) Claimwebsite(merchantId uint64, accountId uint64) *AccountsClaimwebsiteCall {
 11958  	c := &AccountsClaimwebsiteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11959  	c.merchantId = merchantId
 11960  	c.accountId = accountId
 11961  	return c
 11962  }
 11963  
 11964  // Overwrite sets the optional parameter "overwrite": Only available to
 11965  // selected merchants. When set to `True`, this flag removes any
 11966  // existing claim on the requested website by another account and
 11967  // replaces it with a claim from this account.
 11968  func (c *AccountsClaimwebsiteCall) Overwrite(overwrite bool) *AccountsClaimwebsiteCall {
 11969  	c.urlParams_.Set("overwrite", fmt.Sprint(overwrite))
 11970  	return c
 11971  }
 11972  
 11973  // Fields allows partial responses to be retrieved. See
 11974  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 11975  // for more information.
 11976  func (c *AccountsClaimwebsiteCall) Fields(s ...googleapi.Field) *AccountsClaimwebsiteCall {
 11977  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11978  	return c
 11979  }
 11980  
 11981  // Context sets the context to be used in this call's Do method. Any
 11982  // pending HTTP request will be aborted if the provided context is
 11983  // canceled.
 11984  func (c *AccountsClaimwebsiteCall) Context(ctx context.Context) *AccountsClaimwebsiteCall {
 11985  	c.ctx_ = ctx
 11986  	return c
 11987  }
 11988  
 11989  // Header returns an http.Header that can be modified by the caller to
 11990  // add HTTP headers to the request.
 11991  func (c *AccountsClaimwebsiteCall) Header() http.Header {
 11992  	if c.header_ == nil {
 11993  		c.header_ = make(http.Header)
 11994  	}
 11995  	return c.header_
 11996  }
 11997  
 11998  func (c *AccountsClaimwebsiteCall) doRequest(alt string) (*http.Response, error) {
 11999  	reqHeaders := make(http.Header)
 12000  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 12001  	for k, v := range c.header_ {
 12002  		reqHeaders[k] = v
 12003  	}
 12004  	reqHeaders.Set("User-Agent", c.s.userAgent())
 12005  	var body io.Reader = nil
 12006  	c.urlParams_.Set("alt", alt)
 12007  	c.urlParams_.Set("prettyPrint", "false")
 12008  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}/claimwebsite")
 12009  	urls += "?" + c.urlParams_.Encode()
 12010  	req, err := http.NewRequest("POST", urls, body)
 12011  	if err != nil {
 12012  		return nil, err
 12013  	}
 12014  	req.Header = reqHeaders
 12015  	googleapi.Expand(req.URL, map[string]string{
 12016  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 12017  		"accountId":  strconv.FormatUint(c.accountId, 10),
 12018  	})
 12019  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12020  }
 12021  
 12022  // Do executes the "content.accounts.claimwebsite" call.
 12023  // Exactly one of *AccountsClaimWebsiteResponse or error will be
 12024  // non-nil. Any non-2xx status code is an error. Response headers are in
 12025  // either *AccountsClaimWebsiteResponse.ServerResponse.Header or (if a
 12026  // response was returned at all) in error.(*googleapi.Error).Header. Use
 12027  // googleapi.IsNotModified to check whether the returned error was
 12028  // because http.StatusNotModified was returned.
 12029  func (c *AccountsClaimwebsiteCall) Do(opts ...googleapi.CallOption) (*AccountsClaimWebsiteResponse, error) {
 12030  	gensupport.SetOptions(c.urlParams_, opts...)
 12031  	res, err := c.doRequest("json")
 12032  	if res != nil && res.StatusCode == http.StatusNotModified {
 12033  		if res.Body != nil {
 12034  			res.Body.Close()
 12035  		}
 12036  		return nil, &googleapi.Error{
 12037  			Code:   res.StatusCode,
 12038  			Header: res.Header,
 12039  		}
 12040  	}
 12041  	if err != nil {
 12042  		return nil, err
 12043  	}
 12044  	defer googleapi.CloseBody(res)
 12045  	if err := googleapi.CheckResponse(res); err != nil {
 12046  		return nil, err
 12047  	}
 12048  	ret := &AccountsClaimWebsiteResponse{
 12049  		ServerResponse: googleapi.ServerResponse{
 12050  			Header:         res.Header,
 12051  			HTTPStatusCode: res.StatusCode,
 12052  		},
 12053  	}
 12054  	target := &ret
 12055  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12056  		return nil, err
 12057  	}
 12058  	return ret, nil
 12059  	// {
 12060  	//   "description": "Claims the website of a Merchant Center sub-account.",
 12061  	//   "flatPath": "{merchantId}/accounts/{accountId}/claimwebsite",
 12062  	//   "httpMethod": "POST",
 12063  	//   "id": "content.accounts.claimwebsite",
 12064  	//   "parameterOrder": [
 12065  	//     "merchantId",
 12066  	//     "accountId"
 12067  	//   ],
 12068  	//   "parameters": {
 12069  	//     "accountId": {
 12070  	//       "description": "The ID of the account whose website is claimed.",
 12071  	//       "format": "uint64",
 12072  	//       "location": "path",
 12073  	//       "required": true,
 12074  	//       "type": "string"
 12075  	//     },
 12076  	//     "merchantId": {
 12077  	//       "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.",
 12078  	//       "format": "uint64",
 12079  	//       "location": "path",
 12080  	//       "required": true,
 12081  	//       "type": "string"
 12082  	//     },
 12083  	//     "overwrite": {
 12084  	//       "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.",
 12085  	//       "location": "query",
 12086  	//       "type": "boolean"
 12087  	//     }
 12088  	//   },
 12089  	//   "path": "{merchantId}/accounts/{accountId}/claimwebsite",
 12090  	//   "response": {
 12091  	//     "$ref": "AccountsClaimWebsiteResponse"
 12092  	//   },
 12093  	//   "scopes": [
 12094  	//     "https://www.googleapis.com/auth/content"
 12095  	//   ]
 12096  	// }
 12097  
 12098  }
 12099  
 12100  // method id "content.accounts.custombatch":
 12101  
 12102  type AccountsCustombatchCall struct {
 12103  	s                          *APIService
 12104  	accountscustombatchrequest *AccountsCustomBatchRequest
 12105  	urlParams_                 gensupport.URLParams
 12106  	ctx_                       context.Context
 12107  	header_                    http.Header
 12108  }
 12109  
 12110  // Custombatch: Retrieves, inserts, updates, and deletes multiple
 12111  // Merchant Center (sub-)accounts in a single request.
 12112  func (r *AccountsService) Custombatch(accountscustombatchrequest *AccountsCustomBatchRequest) *AccountsCustombatchCall {
 12113  	c := &AccountsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12114  	c.accountscustombatchrequest = accountscustombatchrequest
 12115  	return c
 12116  }
 12117  
 12118  // DryRun sets the optional parameter "dryRun": Flag to simulate a
 12119  // request like in a live environment. If set to true, dry-run mode
 12120  // checks the validity of the request and returns errors (if any).
 12121  func (c *AccountsCustombatchCall) DryRun(dryRun bool) *AccountsCustombatchCall {
 12122  	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
 12123  	return c
 12124  }
 12125  
 12126  // Fields allows partial responses to be retrieved. See
 12127  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 12128  // for more information.
 12129  func (c *AccountsCustombatchCall) Fields(s ...googleapi.Field) *AccountsCustombatchCall {
 12130  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12131  	return c
 12132  }
 12133  
 12134  // Context sets the context to be used in this call's Do method. Any
 12135  // pending HTTP request will be aborted if the provided context is
 12136  // canceled.
 12137  func (c *AccountsCustombatchCall) Context(ctx context.Context) *AccountsCustombatchCall {
 12138  	c.ctx_ = ctx
 12139  	return c
 12140  }
 12141  
 12142  // Header returns an http.Header that can be modified by the caller to
 12143  // add HTTP headers to the request.
 12144  func (c *AccountsCustombatchCall) Header() http.Header {
 12145  	if c.header_ == nil {
 12146  		c.header_ = make(http.Header)
 12147  	}
 12148  	return c.header_
 12149  }
 12150  
 12151  func (c *AccountsCustombatchCall) doRequest(alt string) (*http.Response, error) {
 12152  	reqHeaders := make(http.Header)
 12153  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 12154  	for k, v := range c.header_ {
 12155  		reqHeaders[k] = v
 12156  	}
 12157  	reqHeaders.Set("User-Agent", c.s.userAgent())
 12158  	var body io.Reader = nil
 12159  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountscustombatchrequest)
 12160  	if err != nil {
 12161  		return nil, err
 12162  	}
 12163  	reqHeaders.Set("Content-Type", "application/json")
 12164  	c.urlParams_.Set("alt", alt)
 12165  	c.urlParams_.Set("prettyPrint", "false")
 12166  	urls := googleapi.ResolveRelative(c.s.BasePath, "accounts/batch")
 12167  	urls += "?" + c.urlParams_.Encode()
 12168  	req, err := http.NewRequest("POST", urls, body)
 12169  	if err != nil {
 12170  		return nil, err
 12171  	}
 12172  	req.Header = reqHeaders
 12173  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12174  }
 12175  
 12176  // Do executes the "content.accounts.custombatch" call.
 12177  // Exactly one of *AccountsCustomBatchResponse or error will be non-nil.
 12178  // Any non-2xx status code is an error. Response headers are in either
 12179  // *AccountsCustomBatchResponse.ServerResponse.Header or (if a response
 12180  // was returned at all) in error.(*googleapi.Error).Header. Use
 12181  // googleapi.IsNotModified to check whether the returned error was
 12182  // because http.StatusNotModified was returned.
 12183  func (c *AccountsCustombatchCall) Do(opts ...googleapi.CallOption) (*AccountsCustomBatchResponse, error) {
 12184  	gensupport.SetOptions(c.urlParams_, opts...)
 12185  	res, err := c.doRequest("json")
 12186  	if res != nil && res.StatusCode == http.StatusNotModified {
 12187  		if res.Body != nil {
 12188  			res.Body.Close()
 12189  		}
 12190  		return nil, &googleapi.Error{
 12191  			Code:   res.StatusCode,
 12192  			Header: res.Header,
 12193  		}
 12194  	}
 12195  	if err != nil {
 12196  		return nil, err
 12197  	}
 12198  	defer googleapi.CloseBody(res)
 12199  	if err := googleapi.CheckResponse(res); err != nil {
 12200  		return nil, err
 12201  	}
 12202  	ret := &AccountsCustomBatchResponse{
 12203  		ServerResponse: googleapi.ServerResponse{
 12204  			Header:         res.Header,
 12205  			HTTPStatusCode: res.StatusCode,
 12206  		},
 12207  	}
 12208  	target := &ret
 12209  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12210  		return nil, err
 12211  	}
 12212  	return ret, nil
 12213  	// {
 12214  	//   "description": "Retrieves, inserts, updates, and deletes multiple Merchant Center (sub-)accounts in a single request.",
 12215  	//   "flatPath": "accounts/batch",
 12216  	//   "httpMethod": "POST",
 12217  	//   "id": "content.accounts.custombatch",
 12218  	//   "parameterOrder": [],
 12219  	//   "parameters": {
 12220  	//     "dryRun": {
 12221  	//       "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).",
 12222  	//       "location": "query",
 12223  	//       "type": "boolean"
 12224  	//     }
 12225  	//   },
 12226  	//   "path": "accounts/batch",
 12227  	//   "request": {
 12228  	//     "$ref": "AccountsCustomBatchRequest"
 12229  	//   },
 12230  	//   "response": {
 12231  	//     "$ref": "AccountsCustomBatchResponse"
 12232  	//   },
 12233  	//   "scopes": [
 12234  	//     "https://www.googleapis.com/auth/content"
 12235  	//   ]
 12236  	// }
 12237  
 12238  }
 12239  
 12240  // method id "content.accounts.delete":
 12241  
 12242  type AccountsDeleteCall struct {
 12243  	s          *APIService
 12244  	merchantId uint64
 12245  	accountId  uint64
 12246  	urlParams_ gensupport.URLParams
 12247  	ctx_       context.Context
 12248  	header_    http.Header
 12249  }
 12250  
 12251  // Delete: Deletes a Merchant Center sub-account.
 12252  //
 12253  //   - accountId: The ID of the account.
 12254  //   - merchantId: The ID of the managing account. This must be a
 12255  //     multi-client account, and accountId must be the ID of a sub-account
 12256  //     of this account.
 12257  func (r *AccountsService) Delete(merchantId uint64, accountId uint64) *AccountsDeleteCall {
 12258  	c := &AccountsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12259  	c.merchantId = merchantId
 12260  	c.accountId = accountId
 12261  	return c
 12262  }
 12263  
 12264  // DryRun sets the optional parameter "dryRun": Flag to simulate a
 12265  // request like in a live environment. If set to true, dry-run mode
 12266  // checks the validity of the request and returns errors (if any).
 12267  func (c *AccountsDeleteCall) DryRun(dryRun bool) *AccountsDeleteCall {
 12268  	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
 12269  	return c
 12270  }
 12271  
 12272  // Force sets the optional parameter "force": Flag to delete
 12273  // sub-accounts with products. The default value is false.
 12274  func (c *AccountsDeleteCall) Force(force bool) *AccountsDeleteCall {
 12275  	c.urlParams_.Set("force", fmt.Sprint(force))
 12276  	return c
 12277  }
 12278  
 12279  // Fields allows partial responses to be retrieved. See
 12280  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 12281  // for more information.
 12282  func (c *AccountsDeleteCall) Fields(s ...googleapi.Field) *AccountsDeleteCall {
 12283  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12284  	return c
 12285  }
 12286  
 12287  // Context sets the context to be used in this call's Do method. Any
 12288  // pending HTTP request will be aborted if the provided context is
 12289  // canceled.
 12290  func (c *AccountsDeleteCall) Context(ctx context.Context) *AccountsDeleteCall {
 12291  	c.ctx_ = ctx
 12292  	return c
 12293  }
 12294  
 12295  // Header returns an http.Header that can be modified by the caller to
 12296  // add HTTP headers to the request.
 12297  func (c *AccountsDeleteCall) Header() http.Header {
 12298  	if c.header_ == nil {
 12299  		c.header_ = make(http.Header)
 12300  	}
 12301  	return c.header_
 12302  }
 12303  
 12304  func (c *AccountsDeleteCall) doRequest(alt string) (*http.Response, error) {
 12305  	reqHeaders := make(http.Header)
 12306  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 12307  	for k, v := range c.header_ {
 12308  		reqHeaders[k] = v
 12309  	}
 12310  	reqHeaders.Set("User-Agent", c.s.userAgent())
 12311  	var body io.Reader = nil
 12312  	c.urlParams_.Set("alt", alt)
 12313  	c.urlParams_.Set("prettyPrint", "false")
 12314  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}")
 12315  	urls += "?" + c.urlParams_.Encode()
 12316  	req, err := http.NewRequest("DELETE", urls, body)
 12317  	if err != nil {
 12318  		return nil, err
 12319  	}
 12320  	req.Header = reqHeaders
 12321  	googleapi.Expand(req.URL, map[string]string{
 12322  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 12323  		"accountId":  strconv.FormatUint(c.accountId, 10),
 12324  	})
 12325  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12326  }
 12327  
 12328  // Do executes the "content.accounts.delete" call.
 12329  func (c *AccountsDeleteCall) Do(opts ...googleapi.CallOption) error {
 12330  	gensupport.SetOptions(c.urlParams_, opts...)
 12331  	res, err := c.doRequest("json")
 12332  	if err != nil {
 12333  		return err
 12334  	}
 12335  	defer googleapi.CloseBody(res)
 12336  	if err := googleapi.CheckResponse(res); err != nil {
 12337  		return err
 12338  	}
 12339  	return nil
 12340  	// {
 12341  	//   "description": "Deletes a Merchant Center sub-account.",
 12342  	//   "flatPath": "{merchantId}/accounts/{accountId}",
 12343  	//   "httpMethod": "DELETE",
 12344  	//   "id": "content.accounts.delete",
 12345  	//   "parameterOrder": [
 12346  	//     "merchantId",
 12347  	//     "accountId"
 12348  	//   ],
 12349  	//   "parameters": {
 12350  	//     "accountId": {
 12351  	//       "description": "The ID of the account.",
 12352  	//       "format": "uint64",
 12353  	//       "location": "path",
 12354  	//       "required": true,
 12355  	//       "type": "string"
 12356  	//     },
 12357  	//     "dryRun": {
 12358  	//       "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).",
 12359  	//       "location": "query",
 12360  	//       "type": "boolean"
 12361  	//     },
 12362  	//     "force": {
 12363  	//       "default": "false",
 12364  	//       "description": "Flag to delete sub-accounts with products. The default value is false.",
 12365  	//       "location": "query",
 12366  	//       "type": "boolean"
 12367  	//     },
 12368  	//     "merchantId": {
 12369  	//       "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.",
 12370  	//       "format": "uint64",
 12371  	//       "location": "path",
 12372  	//       "required": true,
 12373  	//       "type": "string"
 12374  	//     }
 12375  	//   },
 12376  	//   "path": "{merchantId}/accounts/{accountId}",
 12377  	//   "scopes": [
 12378  	//     "https://www.googleapis.com/auth/content"
 12379  	//   ]
 12380  	// }
 12381  
 12382  }
 12383  
 12384  // method id "content.accounts.get":
 12385  
 12386  type AccountsGetCall struct {
 12387  	s            *APIService
 12388  	merchantId   uint64
 12389  	accountId    uint64
 12390  	urlParams_   gensupport.URLParams
 12391  	ifNoneMatch_ string
 12392  	ctx_         context.Context
 12393  	header_      http.Header
 12394  }
 12395  
 12396  // Get: Retrieves a Merchant Center account.
 12397  //
 12398  //   - accountId: The ID of the account.
 12399  //   - merchantId: The ID of the managing account. If this parameter is
 12400  //     not the same as accountId, then this account must be a multi-client
 12401  //     account and `accountId` must be the ID of a sub-account of this
 12402  //     account.
 12403  func (r *AccountsService) Get(merchantId uint64, accountId uint64) *AccountsGetCall {
 12404  	c := &AccountsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12405  	c.merchantId = merchantId
 12406  	c.accountId = accountId
 12407  	return c
 12408  }
 12409  
 12410  // Fields allows partial responses to be retrieved. See
 12411  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 12412  // for more information.
 12413  func (c *AccountsGetCall) Fields(s ...googleapi.Field) *AccountsGetCall {
 12414  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12415  	return c
 12416  }
 12417  
 12418  // IfNoneMatch sets the optional parameter which makes the operation
 12419  // fail if the object's ETag matches the given value. This is useful for
 12420  // getting updates only after the object has changed since the last
 12421  // request. Use googleapi.IsNotModified to check whether the response
 12422  // error from Do is the result of In-None-Match.
 12423  func (c *AccountsGetCall) IfNoneMatch(entityTag string) *AccountsGetCall {
 12424  	c.ifNoneMatch_ = entityTag
 12425  	return c
 12426  }
 12427  
 12428  // Context sets the context to be used in this call's Do method. Any
 12429  // pending HTTP request will be aborted if the provided context is
 12430  // canceled.
 12431  func (c *AccountsGetCall) Context(ctx context.Context) *AccountsGetCall {
 12432  	c.ctx_ = ctx
 12433  	return c
 12434  }
 12435  
 12436  // Header returns an http.Header that can be modified by the caller to
 12437  // add HTTP headers to the request.
 12438  func (c *AccountsGetCall) Header() http.Header {
 12439  	if c.header_ == nil {
 12440  		c.header_ = make(http.Header)
 12441  	}
 12442  	return c.header_
 12443  }
 12444  
 12445  func (c *AccountsGetCall) doRequest(alt string) (*http.Response, error) {
 12446  	reqHeaders := make(http.Header)
 12447  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 12448  	for k, v := range c.header_ {
 12449  		reqHeaders[k] = v
 12450  	}
 12451  	reqHeaders.Set("User-Agent", c.s.userAgent())
 12452  	if c.ifNoneMatch_ != "" {
 12453  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 12454  	}
 12455  	var body io.Reader = nil
 12456  	c.urlParams_.Set("alt", alt)
 12457  	c.urlParams_.Set("prettyPrint", "false")
 12458  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}")
 12459  	urls += "?" + c.urlParams_.Encode()
 12460  	req, err := http.NewRequest("GET", urls, body)
 12461  	if err != nil {
 12462  		return nil, err
 12463  	}
 12464  	req.Header = reqHeaders
 12465  	googleapi.Expand(req.URL, map[string]string{
 12466  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 12467  		"accountId":  strconv.FormatUint(c.accountId, 10),
 12468  	})
 12469  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12470  }
 12471  
 12472  // Do executes the "content.accounts.get" call.
 12473  // Exactly one of *Account or error will be non-nil. Any non-2xx status
 12474  // code is an error. Response headers are in either
 12475  // *Account.ServerResponse.Header or (if a response was returned at all)
 12476  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 12477  // check whether the returned error was because http.StatusNotModified
 12478  // was returned.
 12479  func (c *AccountsGetCall) Do(opts ...googleapi.CallOption) (*Account, error) {
 12480  	gensupport.SetOptions(c.urlParams_, opts...)
 12481  	res, err := c.doRequest("json")
 12482  	if res != nil && res.StatusCode == http.StatusNotModified {
 12483  		if res.Body != nil {
 12484  			res.Body.Close()
 12485  		}
 12486  		return nil, &googleapi.Error{
 12487  			Code:   res.StatusCode,
 12488  			Header: res.Header,
 12489  		}
 12490  	}
 12491  	if err != nil {
 12492  		return nil, err
 12493  	}
 12494  	defer googleapi.CloseBody(res)
 12495  	if err := googleapi.CheckResponse(res); err != nil {
 12496  		return nil, err
 12497  	}
 12498  	ret := &Account{
 12499  		ServerResponse: googleapi.ServerResponse{
 12500  			Header:         res.Header,
 12501  			HTTPStatusCode: res.StatusCode,
 12502  		},
 12503  	}
 12504  	target := &ret
 12505  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12506  		return nil, err
 12507  	}
 12508  	return ret, nil
 12509  	// {
 12510  	//   "description": "Retrieves a Merchant Center account.",
 12511  	//   "flatPath": "{merchantId}/accounts/{accountId}",
 12512  	//   "httpMethod": "GET",
 12513  	//   "id": "content.accounts.get",
 12514  	//   "parameterOrder": [
 12515  	//     "merchantId",
 12516  	//     "accountId"
 12517  	//   ],
 12518  	//   "parameters": {
 12519  	//     "accountId": {
 12520  	//       "description": "The ID of the account.",
 12521  	//       "format": "uint64",
 12522  	//       "location": "path",
 12523  	//       "required": true,
 12524  	//       "type": "string"
 12525  	//     },
 12526  	//     "merchantId": {
 12527  	//       "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.",
 12528  	//       "format": "uint64",
 12529  	//       "location": "path",
 12530  	//       "required": true,
 12531  	//       "type": "string"
 12532  	//     }
 12533  	//   },
 12534  	//   "path": "{merchantId}/accounts/{accountId}",
 12535  	//   "response": {
 12536  	//     "$ref": "Account"
 12537  	//   },
 12538  	//   "scopes": [
 12539  	//     "https://www.googleapis.com/auth/content"
 12540  	//   ]
 12541  	// }
 12542  
 12543  }
 12544  
 12545  // method id "content.accounts.insert":
 12546  
 12547  type AccountsInsertCall struct {
 12548  	s          *APIService
 12549  	merchantId uint64
 12550  	account    *Account
 12551  	urlParams_ gensupport.URLParams
 12552  	ctx_       context.Context
 12553  	header_    http.Header
 12554  }
 12555  
 12556  // Insert: Creates a Merchant Center sub-account.
 12557  //
 12558  //   - merchantId: The ID of the managing account. This must be a
 12559  //     multi-client account.
 12560  func (r *AccountsService) Insert(merchantId uint64, account *Account) *AccountsInsertCall {
 12561  	c := &AccountsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12562  	c.merchantId = merchantId
 12563  	c.account = account
 12564  	return c
 12565  }
 12566  
 12567  // DryRun sets the optional parameter "dryRun": Flag to simulate a
 12568  // request like in a live environment. If set to true, dry-run mode
 12569  // checks the validity of the request and returns errors (if any).
 12570  func (c *AccountsInsertCall) DryRun(dryRun bool) *AccountsInsertCall {
 12571  	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
 12572  	return c
 12573  }
 12574  
 12575  // Fields allows partial responses to be retrieved. See
 12576  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 12577  // for more information.
 12578  func (c *AccountsInsertCall) Fields(s ...googleapi.Field) *AccountsInsertCall {
 12579  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 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.
 12586  func (c *AccountsInsertCall) Context(ctx context.Context) *AccountsInsertCall {
 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.
 12593  func (c *AccountsInsertCall) Header() http.Header {
 12594  	if c.header_ == nil {
 12595  		c.header_ = make(http.Header)
 12596  	}
 12597  	return c.header_
 12598  }
 12599  
 12600  func (c *AccountsInsertCall) doRequest(alt string) (*http.Response, error) {
 12601  	reqHeaders := make(http.Header)
 12602  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 12603  	for k, v := range c.header_ {
 12604  		reqHeaders[k] = v
 12605  	}
 12606  	reqHeaders.Set("User-Agent", c.s.userAgent())
 12607  	var body io.Reader = nil
 12608  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.account)
 12609  	if err != nil {
 12610  		return nil, err
 12611  	}
 12612  	reqHeaders.Set("Content-Type", "application/json")
 12613  	c.urlParams_.Set("alt", alt)
 12614  	c.urlParams_.Set("prettyPrint", "false")
 12615  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts")
 12616  	urls += "?" + c.urlParams_.Encode()
 12617  	req, err := http.NewRequest("POST", urls, body)
 12618  	if err != nil {
 12619  		return nil, err
 12620  	}
 12621  	req.Header = reqHeaders
 12622  	googleapi.Expand(req.URL, map[string]string{
 12623  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 12624  	})
 12625  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12626  }
 12627  
 12628  // Do executes the "content.accounts.insert" call.
 12629  // Exactly one of *Account or error will be non-nil. Any non-2xx status
 12630  // code is an error. Response headers are in either
 12631  // *Account.ServerResponse.Header or (if a response was returned at all)
 12632  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 12633  // check whether the returned error was because http.StatusNotModified
 12634  // was returned.
 12635  func (c *AccountsInsertCall) Do(opts ...googleapi.CallOption) (*Account, error) {
 12636  	gensupport.SetOptions(c.urlParams_, opts...)
 12637  	res, err := c.doRequest("json")
 12638  	if res != nil && res.StatusCode == http.StatusNotModified {
 12639  		if res.Body != nil {
 12640  			res.Body.Close()
 12641  		}
 12642  		return nil, &googleapi.Error{
 12643  			Code:   res.StatusCode,
 12644  			Header: res.Header,
 12645  		}
 12646  	}
 12647  	if err != nil {
 12648  		return nil, err
 12649  	}
 12650  	defer googleapi.CloseBody(res)
 12651  	if err := googleapi.CheckResponse(res); err != nil {
 12652  		return nil, err
 12653  	}
 12654  	ret := &Account{
 12655  		ServerResponse: googleapi.ServerResponse{
 12656  			Header:         res.Header,
 12657  			HTTPStatusCode: res.StatusCode,
 12658  		},
 12659  	}
 12660  	target := &ret
 12661  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12662  		return nil, err
 12663  	}
 12664  	return ret, nil
 12665  	// {
 12666  	//   "description": "Creates a Merchant Center sub-account.",
 12667  	//   "flatPath": "{merchantId}/accounts",
 12668  	//   "httpMethod": "POST",
 12669  	//   "id": "content.accounts.insert",
 12670  	//   "parameterOrder": [
 12671  	//     "merchantId"
 12672  	//   ],
 12673  	//   "parameters": {
 12674  	//     "dryRun": {
 12675  	//       "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).",
 12676  	//       "location": "query",
 12677  	//       "type": "boolean"
 12678  	//     },
 12679  	//     "merchantId": {
 12680  	//       "description": "The ID of the managing account. This must be a multi-client account.",
 12681  	//       "format": "uint64",
 12682  	//       "location": "path",
 12683  	//       "required": true,
 12684  	//       "type": "string"
 12685  	//     }
 12686  	//   },
 12687  	//   "path": "{merchantId}/accounts",
 12688  	//   "request": {
 12689  	//     "$ref": "Account"
 12690  	//   },
 12691  	//   "response": {
 12692  	//     "$ref": "Account"
 12693  	//   },
 12694  	//   "scopes": [
 12695  	//     "https://www.googleapis.com/auth/content"
 12696  	//   ]
 12697  	// }
 12698  
 12699  }
 12700  
 12701  // method id "content.accounts.link":
 12702  
 12703  type AccountsLinkCall struct {
 12704  	s                   *APIService
 12705  	merchantId          uint64
 12706  	accountId           uint64
 12707  	accountslinkrequest *AccountsLinkRequest
 12708  	urlParams_          gensupport.URLParams
 12709  	ctx_                context.Context
 12710  	header_             http.Header
 12711  }
 12712  
 12713  // Link: Performs an action on a link between two Merchant Center
 12714  // accounts, namely accountId and linkedAccountId.
 12715  //
 12716  //   - accountId: The ID of the account that should be linked.
 12717  //   - merchantId: The ID of the managing account. If this parameter is
 12718  //     not the same as accountId, then this account must be a multi-client
 12719  //     account and `accountId` must be the ID of a sub-account of this
 12720  //     account.
 12721  func (r *AccountsService) Link(merchantId uint64, accountId uint64, accountslinkrequest *AccountsLinkRequest) *AccountsLinkCall {
 12722  	c := &AccountsLinkCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12723  	c.merchantId = merchantId
 12724  	c.accountId = accountId
 12725  	c.accountslinkrequest = accountslinkrequest
 12726  	return c
 12727  }
 12728  
 12729  // Fields allows partial responses to be retrieved. See
 12730  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 12731  // for more information.
 12732  func (c *AccountsLinkCall) Fields(s ...googleapi.Field) *AccountsLinkCall {
 12733  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12734  	return c
 12735  }
 12736  
 12737  // Context sets the context to be used in this call's Do method. Any
 12738  // pending HTTP request will be aborted if the provided context is
 12739  // canceled.
 12740  func (c *AccountsLinkCall) Context(ctx context.Context) *AccountsLinkCall {
 12741  	c.ctx_ = ctx
 12742  	return c
 12743  }
 12744  
 12745  // Header returns an http.Header that can be modified by the caller to
 12746  // add HTTP headers to the request.
 12747  func (c *AccountsLinkCall) Header() http.Header {
 12748  	if c.header_ == nil {
 12749  		c.header_ = make(http.Header)
 12750  	}
 12751  	return c.header_
 12752  }
 12753  
 12754  func (c *AccountsLinkCall) doRequest(alt string) (*http.Response, error) {
 12755  	reqHeaders := make(http.Header)
 12756  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 12757  	for k, v := range c.header_ {
 12758  		reqHeaders[k] = v
 12759  	}
 12760  	reqHeaders.Set("User-Agent", c.s.userAgent())
 12761  	var body io.Reader = nil
 12762  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountslinkrequest)
 12763  	if err != nil {
 12764  		return nil, err
 12765  	}
 12766  	reqHeaders.Set("Content-Type", "application/json")
 12767  	c.urlParams_.Set("alt", alt)
 12768  	c.urlParams_.Set("prettyPrint", "false")
 12769  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}/link")
 12770  	urls += "?" + c.urlParams_.Encode()
 12771  	req, err := http.NewRequest("POST", urls, body)
 12772  	if err != nil {
 12773  		return nil, err
 12774  	}
 12775  	req.Header = reqHeaders
 12776  	googleapi.Expand(req.URL, map[string]string{
 12777  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 12778  		"accountId":  strconv.FormatUint(c.accountId, 10),
 12779  	})
 12780  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12781  }
 12782  
 12783  // Do executes the "content.accounts.link" call.
 12784  // Exactly one of *AccountsLinkResponse or error will be non-nil. Any
 12785  // non-2xx status code is an error. Response headers are in either
 12786  // *AccountsLinkResponse.ServerResponse.Header or (if a response was
 12787  // returned at all) in error.(*googleapi.Error).Header. Use
 12788  // googleapi.IsNotModified to check whether the returned error was
 12789  // because http.StatusNotModified was returned.
 12790  func (c *AccountsLinkCall) Do(opts ...googleapi.CallOption) (*AccountsLinkResponse, error) {
 12791  	gensupport.SetOptions(c.urlParams_, opts...)
 12792  	res, err := c.doRequest("json")
 12793  	if res != nil && res.StatusCode == http.StatusNotModified {
 12794  		if res.Body != nil {
 12795  			res.Body.Close()
 12796  		}
 12797  		return nil, &googleapi.Error{
 12798  			Code:   res.StatusCode,
 12799  			Header: res.Header,
 12800  		}
 12801  	}
 12802  	if err != nil {
 12803  		return nil, err
 12804  	}
 12805  	defer googleapi.CloseBody(res)
 12806  	if err := googleapi.CheckResponse(res); err != nil {
 12807  		return nil, err
 12808  	}
 12809  	ret := &AccountsLinkResponse{
 12810  		ServerResponse: googleapi.ServerResponse{
 12811  			Header:         res.Header,
 12812  			HTTPStatusCode: res.StatusCode,
 12813  		},
 12814  	}
 12815  	target := &ret
 12816  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12817  		return nil, err
 12818  	}
 12819  	return ret, nil
 12820  	// {
 12821  	//   "description": "Performs an action on a link between two Merchant Center accounts, namely accountId and linkedAccountId.",
 12822  	//   "flatPath": "{merchantId}/accounts/{accountId}/link",
 12823  	//   "httpMethod": "POST",
 12824  	//   "id": "content.accounts.link",
 12825  	//   "parameterOrder": [
 12826  	//     "merchantId",
 12827  	//     "accountId"
 12828  	//   ],
 12829  	//   "parameters": {
 12830  	//     "accountId": {
 12831  	//       "description": "The ID of the account that should be linked.",
 12832  	//       "format": "uint64",
 12833  	//       "location": "path",
 12834  	//       "required": true,
 12835  	//       "type": "string"
 12836  	//     },
 12837  	//     "merchantId": {
 12838  	//       "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.",
 12839  	//       "format": "uint64",
 12840  	//       "location": "path",
 12841  	//       "required": true,
 12842  	//       "type": "string"
 12843  	//     }
 12844  	//   },
 12845  	//   "path": "{merchantId}/accounts/{accountId}/link",
 12846  	//   "request": {
 12847  	//     "$ref": "AccountsLinkRequest"
 12848  	//   },
 12849  	//   "response": {
 12850  	//     "$ref": "AccountsLinkResponse"
 12851  	//   },
 12852  	//   "scopes": [
 12853  	//     "https://www.googleapis.com/auth/content"
 12854  	//   ]
 12855  	// }
 12856  
 12857  }
 12858  
 12859  // method id "content.accounts.list":
 12860  
 12861  type AccountsListCall struct {
 12862  	s            *APIService
 12863  	merchantId   uint64
 12864  	urlParams_   gensupport.URLParams
 12865  	ifNoneMatch_ string
 12866  	ctx_         context.Context
 12867  	header_      http.Header
 12868  }
 12869  
 12870  // List: Lists the sub-accounts in your Merchant Center account.
 12871  //
 12872  //   - merchantId: The ID of the managing account. This must be a
 12873  //     multi-client account.
 12874  func (r *AccountsService) List(merchantId uint64) *AccountsListCall {
 12875  	c := &AccountsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12876  	c.merchantId = merchantId
 12877  	return c
 12878  }
 12879  
 12880  // MaxResults sets the optional parameter "maxResults": The maximum
 12881  // number of accounts to return in the response, used for paging.
 12882  func (c *AccountsListCall) MaxResults(maxResults int64) *AccountsListCall {
 12883  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 12884  	return c
 12885  }
 12886  
 12887  // PageToken sets the optional parameter "pageToken": The token returned
 12888  // by the previous request.
 12889  func (c *AccountsListCall) PageToken(pageToken string) *AccountsListCall {
 12890  	c.urlParams_.Set("pageToken", pageToken)
 12891  	return c
 12892  }
 12893  
 12894  // Fields allows partial responses to be retrieved. See
 12895  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 12896  // for more information.
 12897  func (c *AccountsListCall) Fields(s ...googleapi.Field) *AccountsListCall {
 12898  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12899  	return c
 12900  }
 12901  
 12902  // IfNoneMatch sets the optional parameter which makes the operation
 12903  // fail if the object's ETag matches the given value. This is useful for
 12904  // getting updates only after the object has changed since the last
 12905  // request. Use googleapi.IsNotModified to check whether the response
 12906  // error from Do is the result of In-None-Match.
 12907  func (c *AccountsListCall) IfNoneMatch(entityTag string) *AccountsListCall {
 12908  	c.ifNoneMatch_ = entityTag
 12909  	return c
 12910  }
 12911  
 12912  // Context sets the context to be used in this call's Do method. Any
 12913  // pending HTTP request will be aborted if the provided context is
 12914  // canceled.
 12915  func (c *AccountsListCall) Context(ctx context.Context) *AccountsListCall {
 12916  	c.ctx_ = ctx
 12917  	return c
 12918  }
 12919  
 12920  // Header returns an http.Header that can be modified by the caller to
 12921  // add HTTP headers to the request.
 12922  func (c *AccountsListCall) Header() http.Header {
 12923  	if c.header_ == nil {
 12924  		c.header_ = make(http.Header)
 12925  	}
 12926  	return c.header_
 12927  }
 12928  
 12929  func (c *AccountsListCall) doRequest(alt string) (*http.Response, error) {
 12930  	reqHeaders := make(http.Header)
 12931  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 12932  	for k, v := range c.header_ {
 12933  		reqHeaders[k] = v
 12934  	}
 12935  	reqHeaders.Set("User-Agent", c.s.userAgent())
 12936  	if c.ifNoneMatch_ != "" {
 12937  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 12938  	}
 12939  	var body io.Reader = nil
 12940  	c.urlParams_.Set("alt", alt)
 12941  	c.urlParams_.Set("prettyPrint", "false")
 12942  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts")
 12943  	urls += "?" + c.urlParams_.Encode()
 12944  	req, err := http.NewRequest("GET", urls, body)
 12945  	if err != nil {
 12946  		return nil, err
 12947  	}
 12948  	req.Header = reqHeaders
 12949  	googleapi.Expand(req.URL, map[string]string{
 12950  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 12951  	})
 12952  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12953  }
 12954  
 12955  // Do executes the "content.accounts.list" call.
 12956  // Exactly one of *AccountsListResponse or error will be non-nil. Any
 12957  // non-2xx status code is an error. Response headers are in either
 12958  // *AccountsListResponse.ServerResponse.Header or (if a response was
 12959  // returned at all) in error.(*googleapi.Error).Header. Use
 12960  // googleapi.IsNotModified to check whether the returned error was
 12961  // because http.StatusNotModified was returned.
 12962  func (c *AccountsListCall) Do(opts ...googleapi.CallOption) (*AccountsListResponse, error) {
 12963  	gensupport.SetOptions(c.urlParams_, opts...)
 12964  	res, err := c.doRequest("json")
 12965  	if res != nil && res.StatusCode == http.StatusNotModified {
 12966  		if res.Body != nil {
 12967  			res.Body.Close()
 12968  		}
 12969  		return nil, &googleapi.Error{
 12970  			Code:   res.StatusCode,
 12971  			Header: res.Header,
 12972  		}
 12973  	}
 12974  	if err != nil {
 12975  		return nil, err
 12976  	}
 12977  	defer googleapi.CloseBody(res)
 12978  	if err := googleapi.CheckResponse(res); err != nil {
 12979  		return nil, err
 12980  	}
 12981  	ret := &AccountsListResponse{
 12982  		ServerResponse: googleapi.ServerResponse{
 12983  			Header:         res.Header,
 12984  			HTTPStatusCode: res.StatusCode,
 12985  		},
 12986  	}
 12987  	target := &ret
 12988  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12989  		return nil, err
 12990  	}
 12991  	return ret, nil
 12992  	// {
 12993  	//   "description": "Lists the sub-accounts in your Merchant Center account.",
 12994  	//   "flatPath": "{merchantId}/accounts",
 12995  	//   "httpMethod": "GET",
 12996  	//   "id": "content.accounts.list",
 12997  	//   "parameterOrder": [
 12998  	//     "merchantId"
 12999  	//   ],
 13000  	//   "parameters": {
 13001  	//     "maxResults": {
 13002  	//       "description": "The maximum number of accounts to return in the response, used for paging.",
 13003  	//       "format": "uint32",
 13004  	//       "location": "query",
 13005  	//       "type": "integer"
 13006  	//     },
 13007  	//     "merchantId": {
 13008  	//       "description": "The ID of the managing account. This must be a multi-client account.",
 13009  	//       "format": "uint64",
 13010  	//       "location": "path",
 13011  	//       "required": true,
 13012  	//       "type": "string"
 13013  	//     },
 13014  	//     "pageToken": {
 13015  	//       "description": "The token returned by the previous request.",
 13016  	//       "location": "query",
 13017  	//       "type": "string"
 13018  	//     }
 13019  	//   },
 13020  	//   "path": "{merchantId}/accounts",
 13021  	//   "response": {
 13022  	//     "$ref": "AccountsListResponse"
 13023  	//   },
 13024  	//   "scopes": [
 13025  	//     "https://www.googleapis.com/auth/content"
 13026  	//   ]
 13027  	// }
 13028  
 13029  }
 13030  
 13031  // Pages invokes f for each page of results.
 13032  // A non-nil error returned from f will halt the iteration.
 13033  // The provided context supersedes any context provided to the Context method.
 13034  func (c *AccountsListCall) Pages(ctx context.Context, f func(*AccountsListResponse) error) error {
 13035  	c.ctx_ = ctx
 13036  	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
 13037  	for {
 13038  		x, err := c.Do()
 13039  		if err != nil {
 13040  			return err
 13041  		}
 13042  		if err := f(x); err != nil {
 13043  			return err
 13044  		}
 13045  		if x.NextPageToken == "" {
 13046  			return nil
 13047  		}
 13048  		c.PageToken(x.NextPageToken)
 13049  	}
 13050  }
 13051  
 13052  // method id "content.accounts.update":
 13053  
 13054  type AccountsUpdateCall struct {
 13055  	s          *APIService
 13056  	merchantId uint64
 13057  	accountId  uint64
 13058  	account    *Account
 13059  	urlParams_ gensupport.URLParams
 13060  	ctx_       context.Context
 13061  	header_    http.Header
 13062  }
 13063  
 13064  // Update: Updates a Merchant Center account. Any fields that are not
 13065  // provided are deleted from the resource.
 13066  //
 13067  //   - accountId: The ID of the account.
 13068  //   - merchantId: The ID of the managing account. If this parameter is
 13069  //     not the same as accountId, then this account must be a multi-client
 13070  //     account and `accountId` must be the ID of a sub-account of this
 13071  //     account.
 13072  func (r *AccountsService) Update(merchantId uint64, accountId uint64, account *Account) *AccountsUpdateCall {
 13073  	c := &AccountsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13074  	c.merchantId = merchantId
 13075  	c.accountId = accountId
 13076  	c.account = account
 13077  	return c
 13078  }
 13079  
 13080  // DryRun sets the optional parameter "dryRun": Flag to simulate a
 13081  // request like in a live environment. If set to true, dry-run mode
 13082  // checks the validity of the request and returns errors (if any).
 13083  func (c *AccountsUpdateCall) DryRun(dryRun bool) *AccountsUpdateCall {
 13084  	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
 13085  	return c
 13086  }
 13087  
 13088  // Fields allows partial responses to be retrieved. See
 13089  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 13090  // for more information.
 13091  func (c *AccountsUpdateCall) Fields(s ...googleapi.Field) *AccountsUpdateCall {
 13092  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13093  	return c
 13094  }
 13095  
 13096  // Context sets the context to be used in this call's Do method. Any
 13097  // pending HTTP request will be aborted if the provided context is
 13098  // canceled.
 13099  func (c *AccountsUpdateCall) Context(ctx context.Context) *AccountsUpdateCall {
 13100  	c.ctx_ = ctx
 13101  	return c
 13102  }
 13103  
 13104  // Header returns an http.Header that can be modified by the caller to
 13105  // add HTTP headers to the request.
 13106  func (c *AccountsUpdateCall) Header() http.Header {
 13107  	if c.header_ == nil {
 13108  		c.header_ = make(http.Header)
 13109  	}
 13110  	return c.header_
 13111  }
 13112  
 13113  func (c *AccountsUpdateCall) doRequest(alt string) (*http.Response, error) {
 13114  	reqHeaders := make(http.Header)
 13115  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 13116  	for k, v := range c.header_ {
 13117  		reqHeaders[k] = v
 13118  	}
 13119  	reqHeaders.Set("User-Agent", c.s.userAgent())
 13120  	var body io.Reader = nil
 13121  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.account)
 13122  	if err != nil {
 13123  		return nil, err
 13124  	}
 13125  	reqHeaders.Set("Content-Type", "application/json")
 13126  	c.urlParams_.Set("alt", alt)
 13127  	c.urlParams_.Set("prettyPrint", "false")
 13128  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounts/{accountId}")
 13129  	urls += "?" + c.urlParams_.Encode()
 13130  	req, err := http.NewRequest("PUT", urls, body)
 13131  	if err != nil {
 13132  		return nil, err
 13133  	}
 13134  	req.Header = reqHeaders
 13135  	googleapi.Expand(req.URL, map[string]string{
 13136  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 13137  		"accountId":  strconv.FormatUint(c.accountId, 10),
 13138  	})
 13139  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13140  }
 13141  
 13142  // Do executes the "content.accounts.update" call.
 13143  // Exactly one of *Account or error will be non-nil. Any non-2xx status
 13144  // code is an error. Response headers are in either
 13145  // *Account.ServerResponse.Header or (if a response was returned at all)
 13146  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 13147  // check whether the returned error was because http.StatusNotModified
 13148  // was returned.
 13149  func (c *AccountsUpdateCall) Do(opts ...googleapi.CallOption) (*Account, error) {
 13150  	gensupport.SetOptions(c.urlParams_, opts...)
 13151  	res, err := c.doRequest("json")
 13152  	if res != nil && res.StatusCode == http.StatusNotModified {
 13153  		if res.Body != nil {
 13154  			res.Body.Close()
 13155  		}
 13156  		return nil, &googleapi.Error{
 13157  			Code:   res.StatusCode,
 13158  			Header: res.Header,
 13159  		}
 13160  	}
 13161  	if err != nil {
 13162  		return nil, err
 13163  	}
 13164  	defer googleapi.CloseBody(res)
 13165  	if err := googleapi.CheckResponse(res); err != nil {
 13166  		return nil, err
 13167  	}
 13168  	ret := &Account{
 13169  		ServerResponse: googleapi.ServerResponse{
 13170  			Header:         res.Header,
 13171  			HTTPStatusCode: res.StatusCode,
 13172  		},
 13173  	}
 13174  	target := &ret
 13175  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13176  		return nil, err
 13177  	}
 13178  	return ret, nil
 13179  	// {
 13180  	//   "description": "Updates a Merchant Center account. Any fields that are not provided are deleted from the resource.",
 13181  	//   "flatPath": "{merchantId}/accounts/{accountId}",
 13182  	//   "httpMethod": "PUT",
 13183  	//   "id": "content.accounts.update",
 13184  	//   "parameterOrder": [
 13185  	//     "merchantId",
 13186  	//     "accountId"
 13187  	//   ],
 13188  	//   "parameters": {
 13189  	//     "accountId": {
 13190  	//       "description": "The ID of the account.",
 13191  	//       "format": "uint64",
 13192  	//       "location": "path",
 13193  	//       "required": true,
 13194  	//       "type": "string"
 13195  	//     },
 13196  	//     "dryRun": {
 13197  	//       "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).",
 13198  	//       "location": "query",
 13199  	//       "type": "boolean"
 13200  	//     },
 13201  	//     "merchantId": {
 13202  	//       "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.",
 13203  	//       "format": "uint64",
 13204  	//       "location": "path",
 13205  	//       "required": true,
 13206  	//       "type": "string"
 13207  	//     }
 13208  	//   },
 13209  	//   "path": "{merchantId}/accounts/{accountId}",
 13210  	//   "request": {
 13211  	//     "$ref": "Account"
 13212  	//   },
 13213  	//   "response": {
 13214  	//     "$ref": "Account"
 13215  	//   },
 13216  	//   "scopes": [
 13217  	//     "https://www.googleapis.com/auth/content"
 13218  	//   ]
 13219  	// }
 13220  
 13221  }
 13222  
 13223  // method id "content.accountstatuses.custombatch":
 13224  
 13225  type AccountstatusesCustombatchCall struct {
 13226  	s                                 *APIService
 13227  	accountstatusescustombatchrequest *AccountstatusesCustomBatchRequest
 13228  	urlParams_                        gensupport.URLParams
 13229  	ctx_                              context.Context
 13230  	header_                           http.Header
 13231  }
 13232  
 13233  // Custombatch: Retrieves multiple Merchant Center account statuses in a
 13234  // single request.
 13235  func (r *AccountstatusesService) Custombatch(accountstatusescustombatchrequest *AccountstatusesCustomBatchRequest) *AccountstatusesCustombatchCall {
 13236  	c := &AccountstatusesCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13237  	c.accountstatusescustombatchrequest = accountstatusescustombatchrequest
 13238  	return c
 13239  }
 13240  
 13241  // Fields allows partial responses to be retrieved. See
 13242  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 13243  // for more information.
 13244  func (c *AccountstatusesCustombatchCall) Fields(s ...googleapi.Field) *AccountstatusesCustombatchCall {
 13245  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13246  	return c
 13247  }
 13248  
 13249  // Context sets the context to be used in this call's Do method. Any
 13250  // pending HTTP request will be aborted if the provided context is
 13251  // canceled.
 13252  func (c *AccountstatusesCustombatchCall) Context(ctx context.Context) *AccountstatusesCustombatchCall {
 13253  	c.ctx_ = ctx
 13254  	return c
 13255  }
 13256  
 13257  // Header returns an http.Header that can be modified by the caller to
 13258  // add HTTP headers to the request.
 13259  func (c *AccountstatusesCustombatchCall) Header() http.Header {
 13260  	if c.header_ == nil {
 13261  		c.header_ = make(http.Header)
 13262  	}
 13263  	return c.header_
 13264  }
 13265  
 13266  func (c *AccountstatusesCustombatchCall) doRequest(alt string) (*http.Response, error) {
 13267  	reqHeaders := make(http.Header)
 13268  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 13269  	for k, v := range c.header_ {
 13270  		reqHeaders[k] = v
 13271  	}
 13272  	reqHeaders.Set("User-Agent", c.s.userAgent())
 13273  	var body io.Reader = nil
 13274  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountstatusescustombatchrequest)
 13275  	if err != nil {
 13276  		return nil, err
 13277  	}
 13278  	reqHeaders.Set("Content-Type", "application/json")
 13279  	c.urlParams_.Set("alt", alt)
 13280  	c.urlParams_.Set("prettyPrint", "false")
 13281  	urls := googleapi.ResolveRelative(c.s.BasePath, "accountstatuses/batch")
 13282  	urls += "?" + c.urlParams_.Encode()
 13283  	req, err := http.NewRequest("POST", urls, body)
 13284  	if err != nil {
 13285  		return nil, err
 13286  	}
 13287  	req.Header = reqHeaders
 13288  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13289  }
 13290  
 13291  // Do executes the "content.accountstatuses.custombatch" call.
 13292  // Exactly one of *AccountstatusesCustomBatchResponse or error will be
 13293  // non-nil. Any non-2xx status code is an error. Response headers are in
 13294  // either *AccountstatusesCustomBatchResponse.ServerResponse.Header or
 13295  // (if a response was returned at all) in
 13296  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 13297  // whether the returned error was because http.StatusNotModified was
 13298  // returned.
 13299  func (c *AccountstatusesCustombatchCall) Do(opts ...googleapi.CallOption) (*AccountstatusesCustomBatchResponse, error) {
 13300  	gensupport.SetOptions(c.urlParams_, opts...)
 13301  	res, err := c.doRequest("json")
 13302  	if res != nil && res.StatusCode == http.StatusNotModified {
 13303  		if res.Body != nil {
 13304  			res.Body.Close()
 13305  		}
 13306  		return nil, &googleapi.Error{
 13307  			Code:   res.StatusCode,
 13308  			Header: res.Header,
 13309  		}
 13310  	}
 13311  	if err != nil {
 13312  		return nil, err
 13313  	}
 13314  	defer googleapi.CloseBody(res)
 13315  	if err := googleapi.CheckResponse(res); err != nil {
 13316  		return nil, err
 13317  	}
 13318  	ret := &AccountstatusesCustomBatchResponse{
 13319  		ServerResponse: googleapi.ServerResponse{
 13320  			Header:         res.Header,
 13321  			HTTPStatusCode: res.StatusCode,
 13322  		},
 13323  	}
 13324  	target := &ret
 13325  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13326  		return nil, err
 13327  	}
 13328  	return ret, nil
 13329  	// {
 13330  	//   "description": "Retrieves multiple Merchant Center account statuses in a single request.",
 13331  	//   "flatPath": "accountstatuses/batch",
 13332  	//   "httpMethod": "POST",
 13333  	//   "id": "content.accountstatuses.custombatch",
 13334  	//   "parameterOrder": [],
 13335  	//   "parameters": {},
 13336  	//   "path": "accountstatuses/batch",
 13337  	//   "request": {
 13338  	//     "$ref": "AccountstatusesCustomBatchRequest"
 13339  	//   },
 13340  	//   "response": {
 13341  	//     "$ref": "AccountstatusesCustomBatchResponse"
 13342  	//   },
 13343  	//   "scopes": [
 13344  	//     "https://www.googleapis.com/auth/content"
 13345  	//   ]
 13346  	// }
 13347  
 13348  }
 13349  
 13350  // method id "content.accountstatuses.get":
 13351  
 13352  type AccountstatusesGetCall struct {
 13353  	s            *APIService
 13354  	merchantId   uint64
 13355  	accountId    uint64
 13356  	urlParams_   gensupport.URLParams
 13357  	ifNoneMatch_ string
 13358  	ctx_         context.Context
 13359  	header_      http.Header
 13360  }
 13361  
 13362  // Get: Retrieves the status of a Merchant Center account. No
 13363  // itemLevelIssues are returned for multi-client accounts.
 13364  //
 13365  //   - accountId: The ID of the account.
 13366  //   - merchantId: The ID of the managing account. If this parameter is
 13367  //     not the same as accountId, then this account must be a multi-client
 13368  //     account and `accountId` must be the ID of a sub-account of this
 13369  //     account.
 13370  func (r *AccountstatusesService) Get(merchantId uint64, accountId uint64) *AccountstatusesGetCall {
 13371  	c := &AccountstatusesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13372  	c.merchantId = merchantId
 13373  	c.accountId = accountId
 13374  	return c
 13375  }
 13376  
 13377  // Destinations sets the optional parameter "destinations": If set, only
 13378  // issues for the specified destinations are returned, otherwise only
 13379  // issues for the Shopping destination.
 13380  func (c *AccountstatusesGetCall) Destinations(destinations ...string) *AccountstatusesGetCall {
 13381  	c.urlParams_.SetMulti("destinations", append([]string{}, destinations...))
 13382  	return c
 13383  }
 13384  
 13385  // Fields allows partial responses to be retrieved. See
 13386  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 13387  // for more information.
 13388  func (c *AccountstatusesGetCall) Fields(s ...googleapi.Field) *AccountstatusesGetCall {
 13389  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13390  	return c
 13391  }
 13392  
 13393  // IfNoneMatch sets the optional parameter which makes the operation
 13394  // fail if the object's ETag matches the given value. This is useful for
 13395  // getting updates only after the object has changed since the last
 13396  // request. Use googleapi.IsNotModified to check whether the response
 13397  // error from Do is the result of In-None-Match.
 13398  func (c *AccountstatusesGetCall) IfNoneMatch(entityTag string) *AccountstatusesGetCall {
 13399  	c.ifNoneMatch_ = entityTag
 13400  	return c
 13401  }
 13402  
 13403  // Context sets the context to be used in this call's Do method. Any
 13404  // pending HTTP request will be aborted if the provided context is
 13405  // canceled.
 13406  func (c *AccountstatusesGetCall) Context(ctx context.Context) *AccountstatusesGetCall {
 13407  	c.ctx_ = ctx
 13408  	return c
 13409  }
 13410  
 13411  // Header returns an http.Header that can be modified by the caller to
 13412  // add HTTP headers to the request.
 13413  func (c *AccountstatusesGetCall) Header() http.Header {
 13414  	if c.header_ == nil {
 13415  		c.header_ = make(http.Header)
 13416  	}
 13417  	return c.header_
 13418  }
 13419  
 13420  func (c *AccountstatusesGetCall) doRequest(alt string) (*http.Response, error) {
 13421  	reqHeaders := make(http.Header)
 13422  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 13423  	for k, v := range c.header_ {
 13424  		reqHeaders[k] = v
 13425  	}
 13426  	reqHeaders.Set("User-Agent", c.s.userAgent())
 13427  	if c.ifNoneMatch_ != "" {
 13428  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 13429  	}
 13430  	var body io.Reader = nil
 13431  	c.urlParams_.Set("alt", alt)
 13432  	c.urlParams_.Set("prettyPrint", "false")
 13433  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accountstatuses/{accountId}")
 13434  	urls += "?" + c.urlParams_.Encode()
 13435  	req, err := http.NewRequest("GET", urls, body)
 13436  	if err != nil {
 13437  		return nil, err
 13438  	}
 13439  	req.Header = reqHeaders
 13440  	googleapi.Expand(req.URL, map[string]string{
 13441  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 13442  		"accountId":  strconv.FormatUint(c.accountId, 10),
 13443  	})
 13444  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13445  }
 13446  
 13447  // Do executes the "content.accountstatuses.get" call.
 13448  // Exactly one of *AccountStatus or error will be non-nil. Any non-2xx
 13449  // status code is an error. Response headers are in either
 13450  // *AccountStatus.ServerResponse.Header or (if a response was returned
 13451  // at all) in error.(*googleapi.Error).Header. Use
 13452  // googleapi.IsNotModified to check whether the returned error was
 13453  // because http.StatusNotModified was returned.
 13454  func (c *AccountstatusesGetCall) Do(opts ...googleapi.CallOption) (*AccountStatus, error) {
 13455  	gensupport.SetOptions(c.urlParams_, opts...)
 13456  	res, err := c.doRequest("json")
 13457  	if res != nil && res.StatusCode == http.StatusNotModified {
 13458  		if res.Body != nil {
 13459  			res.Body.Close()
 13460  		}
 13461  		return nil, &googleapi.Error{
 13462  			Code:   res.StatusCode,
 13463  			Header: res.Header,
 13464  		}
 13465  	}
 13466  	if err != nil {
 13467  		return nil, err
 13468  	}
 13469  	defer googleapi.CloseBody(res)
 13470  	if err := googleapi.CheckResponse(res); err != nil {
 13471  		return nil, err
 13472  	}
 13473  	ret := &AccountStatus{
 13474  		ServerResponse: googleapi.ServerResponse{
 13475  			Header:         res.Header,
 13476  			HTTPStatusCode: res.StatusCode,
 13477  		},
 13478  	}
 13479  	target := &ret
 13480  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13481  		return nil, err
 13482  	}
 13483  	return ret, nil
 13484  	// {
 13485  	//   "description": "Retrieves the status of a Merchant Center account. No itemLevelIssues are returned for multi-client accounts.",
 13486  	//   "flatPath": "{merchantId}/accountstatuses/{accountId}",
 13487  	//   "httpMethod": "GET",
 13488  	//   "id": "content.accountstatuses.get",
 13489  	//   "parameterOrder": [
 13490  	//     "merchantId",
 13491  	//     "accountId"
 13492  	//   ],
 13493  	//   "parameters": {
 13494  	//     "accountId": {
 13495  	//       "description": "The ID of the account.",
 13496  	//       "format": "uint64",
 13497  	//       "location": "path",
 13498  	//       "required": true,
 13499  	//       "type": "string"
 13500  	//     },
 13501  	//     "destinations": {
 13502  	//       "description": "If set, only issues for the specified destinations are returned, otherwise only issues for the Shopping destination.",
 13503  	//       "location": "query",
 13504  	//       "repeated": true,
 13505  	//       "type": "string"
 13506  	//     },
 13507  	//     "merchantId": {
 13508  	//       "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.",
 13509  	//       "format": "uint64",
 13510  	//       "location": "path",
 13511  	//       "required": true,
 13512  	//       "type": "string"
 13513  	//     }
 13514  	//   },
 13515  	//   "path": "{merchantId}/accountstatuses/{accountId}",
 13516  	//   "response": {
 13517  	//     "$ref": "AccountStatus"
 13518  	//   },
 13519  	//   "scopes": [
 13520  	//     "https://www.googleapis.com/auth/content"
 13521  	//   ]
 13522  	// }
 13523  
 13524  }
 13525  
 13526  // method id "content.accountstatuses.list":
 13527  
 13528  type AccountstatusesListCall struct {
 13529  	s            *APIService
 13530  	merchantId   uint64
 13531  	urlParams_   gensupport.URLParams
 13532  	ifNoneMatch_ string
 13533  	ctx_         context.Context
 13534  	header_      http.Header
 13535  }
 13536  
 13537  // List: Lists the statuses of the sub-accounts in your Merchant Center
 13538  // account.
 13539  //
 13540  //   - merchantId: The ID of the managing account. This must be a
 13541  //     multi-client account.
 13542  func (r *AccountstatusesService) List(merchantId uint64) *AccountstatusesListCall {
 13543  	c := &AccountstatusesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13544  	c.merchantId = merchantId
 13545  	return c
 13546  }
 13547  
 13548  // Destinations sets the optional parameter "destinations": If set, only
 13549  // issues for the specified destinations are returned, otherwise only
 13550  // issues for the Shopping destination.
 13551  func (c *AccountstatusesListCall) Destinations(destinations ...string) *AccountstatusesListCall {
 13552  	c.urlParams_.SetMulti("destinations", append([]string{}, destinations...))
 13553  	return c
 13554  }
 13555  
 13556  // MaxResults sets the optional parameter "maxResults": The maximum
 13557  // number of account statuses to return in the response, used for
 13558  // paging.
 13559  func (c *AccountstatusesListCall) MaxResults(maxResults int64) *AccountstatusesListCall {
 13560  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 13561  	return c
 13562  }
 13563  
 13564  // PageToken sets the optional parameter "pageToken": The token returned
 13565  // by the previous request.
 13566  func (c *AccountstatusesListCall) PageToken(pageToken string) *AccountstatusesListCall {
 13567  	c.urlParams_.Set("pageToken", pageToken)
 13568  	return c
 13569  }
 13570  
 13571  // Fields allows partial responses to be retrieved. See
 13572  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 13573  // for more information.
 13574  func (c *AccountstatusesListCall) Fields(s ...googleapi.Field) *AccountstatusesListCall {
 13575  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13576  	return c
 13577  }
 13578  
 13579  // IfNoneMatch sets the optional parameter which makes the operation
 13580  // fail if the object's ETag matches the given value. This is useful for
 13581  // getting updates only after the object has changed since the last
 13582  // request. Use googleapi.IsNotModified to check whether the response
 13583  // error from Do is the result of In-None-Match.
 13584  func (c *AccountstatusesListCall) IfNoneMatch(entityTag string) *AccountstatusesListCall {
 13585  	c.ifNoneMatch_ = entityTag
 13586  	return c
 13587  }
 13588  
 13589  // Context sets the context to be used in this call's Do method. Any
 13590  // pending HTTP request will be aborted if the provided context is
 13591  // canceled.
 13592  func (c *AccountstatusesListCall) Context(ctx context.Context) *AccountstatusesListCall {
 13593  	c.ctx_ = ctx
 13594  	return c
 13595  }
 13596  
 13597  // Header returns an http.Header that can be modified by the caller to
 13598  // add HTTP headers to the request.
 13599  func (c *AccountstatusesListCall) Header() http.Header {
 13600  	if c.header_ == nil {
 13601  		c.header_ = make(http.Header)
 13602  	}
 13603  	return c.header_
 13604  }
 13605  
 13606  func (c *AccountstatusesListCall) doRequest(alt string) (*http.Response, error) {
 13607  	reqHeaders := make(http.Header)
 13608  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 13609  	for k, v := range c.header_ {
 13610  		reqHeaders[k] = v
 13611  	}
 13612  	reqHeaders.Set("User-Agent", c.s.userAgent())
 13613  	if c.ifNoneMatch_ != "" {
 13614  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 13615  	}
 13616  	var body io.Reader = nil
 13617  	c.urlParams_.Set("alt", alt)
 13618  	c.urlParams_.Set("prettyPrint", "false")
 13619  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accountstatuses")
 13620  	urls += "?" + c.urlParams_.Encode()
 13621  	req, err := http.NewRequest("GET", urls, body)
 13622  	if err != nil {
 13623  		return nil, err
 13624  	}
 13625  	req.Header = reqHeaders
 13626  	googleapi.Expand(req.URL, map[string]string{
 13627  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 13628  	})
 13629  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13630  }
 13631  
 13632  // Do executes the "content.accountstatuses.list" call.
 13633  // Exactly one of *AccountstatusesListResponse or error will be non-nil.
 13634  // Any non-2xx status code is an error. Response headers are in either
 13635  // *AccountstatusesListResponse.ServerResponse.Header or (if a response
 13636  // was returned at all) in error.(*googleapi.Error).Header. Use
 13637  // googleapi.IsNotModified to check whether the returned error was
 13638  // because http.StatusNotModified was returned.
 13639  func (c *AccountstatusesListCall) Do(opts ...googleapi.CallOption) (*AccountstatusesListResponse, error) {
 13640  	gensupport.SetOptions(c.urlParams_, opts...)
 13641  	res, err := c.doRequest("json")
 13642  	if res != nil && res.StatusCode == http.StatusNotModified {
 13643  		if res.Body != nil {
 13644  			res.Body.Close()
 13645  		}
 13646  		return nil, &googleapi.Error{
 13647  			Code:   res.StatusCode,
 13648  			Header: res.Header,
 13649  		}
 13650  	}
 13651  	if err != nil {
 13652  		return nil, err
 13653  	}
 13654  	defer googleapi.CloseBody(res)
 13655  	if err := googleapi.CheckResponse(res); err != nil {
 13656  		return nil, err
 13657  	}
 13658  	ret := &AccountstatusesListResponse{
 13659  		ServerResponse: googleapi.ServerResponse{
 13660  			Header:         res.Header,
 13661  			HTTPStatusCode: res.StatusCode,
 13662  		},
 13663  	}
 13664  	target := &ret
 13665  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13666  		return nil, err
 13667  	}
 13668  	return ret, nil
 13669  	// {
 13670  	//   "description": "Lists the statuses of the sub-accounts in your Merchant Center account.",
 13671  	//   "flatPath": "{merchantId}/accountstatuses",
 13672  	//   "httpMethod": "GET",
 13673  	//   "id": "content.accountstatuses.list",
 13674  	//   "parameterOrder": [
 13675  	//     "merchantId"
 13676  	//   ],
 13677  	//   "parameters": {
 13678  	//     "destinations": {
 13679  	//       "description": "If set, only issues for the specified destinations are returned, otherwise only issues for the Shopping destination.",
 13680  	//       "location": "query",
 13681  	//       "repeated": true,
 13682  	//       "type": "string"
 13683  	//     },
 13684  	//     "maxResults": {
 13685  	//       "description": "The maximum number of account statuses to return in the response, used for paging.",
 13686  	//       "format": "uint32",
 13687  	//       "location": "query",
 13688  	//       "type": "integer"
 13689  	//     },
 13690  	//     "merchantId": {
 13691  	//       "description": "The ID of the managing account. This must be a multi-client account.",
 13692  	//       "format": "uint64",
 13693  	//       "location": "path",
 13694  	//       "required": true,
 13695  	//       "type": "string"
 13696  	//     },
 13697  	//     "pageToken": {
 13698  	//       "description": "The token returned by the previous request.",
 13699  	//       "location": "query",
 13700  	//       "type": "string"
 13701  	//     }
 13702  	//   },
 13703  	//   "path": "{merchantId}/accountstatuses",
 13704  	//   "response": {
 13705  	//     "$ref": "AccountstatusesListResponse"
 13706  	//   },
 13707  	//   "scopes": [
 13708  	//     "https://www.googleapis.com/auth/content"
 13709  	//   ]
 13710  	// }
 13711  
 13712  }
 13713  
 13714  // Pages invokes f for each page of results.
 13715  // A non-nil error returned from f will halt the iteration.
 13716  // The provided context supersedes any context provided to the Context method.
 13717  func (c *AccountstatusesListCall) Pages(ctx context.Context, f func(*AccountstatusesListResponse) error) error {
 13718  	c.ctx_ = ctx
 13719  	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
 13720  	for {
 13721  		x, err := c.Do()
 13722  		if err != nil {
 13723  			return err
 13724  		}
 13725  		if err := f(x); err != nil {
 13726  			return err
 13727  		}
 13728  		if x.NextPageToken == "" {
 13729  			return nil
 13730  		}
 13731  		c.PageToken(x.NextPageToken)
 13732  	}
 13733  }
 13734  
 13735  // method id "content.accounttax.custombatch":
 13736  
 13737  type AccounttaxCustombatchCall struct {
 13738  	s                            *APIService
 13739  	accounttaxcustombatchrequest *AccounttaxCustomBatchRequest
 13740  	urlParams_                   gensupport.URLParams
 13741  	ctx_                         context.Context
 13742  	header_                      http.Header
 13743  }
 13744  
 13745  // Custombatch: Retrieves and updates tax settings of multiple accounts
 13746  // in a single request.
 13747  func (r *AccounttaxService) Custombatch(accounttaxcustombatchrequest *AccounttaxCustomBatchRequest) *AccounttaxCustombatchCall {
 13748  	c := &AccounttaxCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13749  	c.accounttaxcustombatchrequest = accounttaxcustombatchrequest
 13750  	return c
 13751  }
 13752  
 13753  // DryRun sets the optional parameter "dryRun": Flag to simulate a
 13754  // request like in a live environment. If set to true, dry-run mode
 13755  // checks the validity of the request and returns errors (if any).
 13756  func (c *AccounttaxCustombatchCall) DryRun(dryRun bool) *AccounttaxCustombatchCall {
 13757  	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
 13758  	return c
 13759  }
 13760  
 13761  // Fields allows partial responses to be retrieved. See
 13762  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 13763  // for more information.
 13764  func (c *AccounttaxCustombatchCall) Fields(s ...googleapi.Field) *AccounttaxCustombatchCall {
 13765  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13766  	return c
 13767  }
 13768  
 13769  // Context sets the context to be used in this call's Do method. Any
 13770  // pending HTTP request will be aborted if the provided context is
 13771  // canceled.
 13772  func (c *AccounttaxCustombatchCall) Context(ctx context.Context) *AccounttaxCustombatchCall {
 13773  	c.ctx_ = ctx
 13774  	return c
 13775  }
 13776  
 13777  // Header returns an http.Header that can be modified by the caller to
 13778  // add HTTP headers to the request.
 13779  func (c *AccounttaxCustombatchCall) Header() http.Header {
 13780  	if c.header_ == nil {
 13781  		c.header_ = make(http.Header)
 13782  	}
 13783  	return c.header_
 13784  }
 13785  
 13786  func (c *AccounttaxCustombatchCall) doRequest(alt string) (*http.Response, error) {
 13787  	reqHeaders := make(http.Header)
 13788  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 13789  	for k, v := range c.header_ {
 13790  		reqHeaders[k] = v
 13791  	}
 13792  	reqHeaders.Set("User-Agent", c.s.userAgent())
 13793  	var body io.Reader = nil
 13794  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accounttaxcustombatchrequest)
 13795  	if err != nil {
 13796  		return nil, err
 13797  	}
 13798  	reqHeaders.Set("Content-Type", "application/json")
 13799  	c.urlParams_.Set("alt", alt)
 13800  	c.urlParams_.Set("prettyPrint", "false")
 13801  	urls := googleapi.ResolveRelative(c.s.BasePath, "accounttax/batch")
 13802  	urls += "?" + c.urlParams_.Encode()
 13803  	req, err := http.NewRequest("POST", urls, body)
 13804  	if err != nil {
 13805  		return nil, err
 13806  	}
 13807  	req.Header = reqHeaders
 13808  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13809  }
 13810  
 13811  // Do executes the "content.accounttax.custombatch" call.
 13812  // Exactly one of *AccounttaxCustomBatchResponse or error will be
 13813  // non-nil. Any non-2xx status code is an error. Response headers are in
 13814  // either *AccounttaxCustomBatchResponse.ServerResponse.Header or (if a
 13815  // response was returned at all) in error.(*googleapi.Error).Header. Use
 13816  // googleapi.IsNotModified to check whether the returned error was
 13817  // because http.StatusNotModified was returned.
 13818  func (c *AccounttaxCustombatchCall) Do(opts ...googleapi.CallOption) (*AccounttaxCustomBatchResponse, error) {
 13819  	gensupport.SetOptions(c.urlParams_, opts...)
 13820  	res, err := c.doRequest("json")
 13821  	if res != nil && res.StatusCode == http.StatusNotModified {
 13822  		if res.Body != nil {
 13823  			res.Body.Close()
 13824  		}
 13825  		return nil, &googleapi.Error{
 13826  			Code:   res.StatusCode,
 13827  			Header: res.Header,
 13828  		}
 13829  	}
 13830  	if err != nil {
 13831  		return nil, err
 13832  	}
 13833  	defer googleapi.CloseBody(res)
 13834  	if err := googleapi.CheckResponse(res); err != nil {
 13835  		return nil, err
 13836  	}
 13837  	ret := &AccounttaxCustomBatchResponse{
 13838  		ServerResponse: googleapi.ServerResponse{
 13839  			Header:         res.Header,
 13840  			HTTPStatusCode: res.StatusCode,
 13841  		},
 13842  	}
 13843  	target := &ret
 13844  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13845  		return nil, err
 13846  	}
 13847  	return ret, nil
 13848  	// {
 13849  	//   "description": "Retrieves and updates tax settings of multiple accounts in a single request.",
 13850  	//   "flatPath": "accounttax/batch",
 13851  	//   "httpMethod": "POST",
 13852  	//   "id": "content.accounttax.custombatch",
 13853  	//   "parameterOrder": [],
 13854  	//   "parameters": {
 13855  	//     "dryRun": {
 13856  	//       "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).",
 13857  	//       "location": "query",
 13858  	//       "type": "boolean"
 13859  	//     }
 13860  	//   },
 13861  	//   "path": "accounttax/batch",
 13862  	//   "request": {
 13863  	//     "$ref": "AccounttaxCustomBatchRequest"
 13864  	//   },
 13865  	//   "response": {
 13866  	//     "$ref": "AccounttaxCustomBatchResponse"
 13867  	//   },
 13868  	//   "scopes": [
 13869  	//     "https://www.googleapis.com/auth/content"
 13870  	//   ]
 13871  	// }
 13872  
 13873  }
 13874  
 13875  // method id "content.accounttax.get":
 13876  
 13877  type AccounttaxGetCall struct {
 13878  	s            *APIService
 13879  	merchantId   uint64
 13880  	accountId    uint64
 13881  	urlParams_   gensupport.URLParams
 13882  	ifNoneMatch_ string
 13883  	ctx_         context.Context
 13884  	header_      http.Header
 13885  }
 13886  
 13887  // Get: Retrieves the tax settings of the account.
 13888  //
 13889  //   - accountId: The ID of the account for which to get/update account
 13890  //     tax settings.
 13891  //   - merchantId: The ID of the managing account. If this parameter is
 13892  //     not the same as accountId, then this account must be a multi-client
 13893  //     account and `accountId` must be the ID of a sub-account of this
 13894  //     account.
 13895  func (r *AccounttaxService) Get(merchantId uint64, accountId uint64) *AccounttaxGetCall {
 13896  	c := &AccounttaxGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13897  	c.merchantId = merchantId
 13898  	c.accountId = accountId
 13899  	return c
 13900  }
 13901  
 13902  // Fields allows partial responses to be retrieved. See
 13903  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 13904  // for more information.
 13905  func (c *AccounttaxGetCall) Fields(s ...googleapi.Field) *AccounttaxGetCall {
 13906  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13907  	return c
 13908  }
 13909  
 13910  // IfNoneMatch sets the optional parameter which makes the operation
 13911  // fail if the object's ETag matches the given value. This is useful for
 13912  // getting updates only after the object has changed since the last
 13913  // request. Use googleapi.IsNotModified to check whether the response
 13914  // error from Do is the result of In-None-Match.
 13915  func (c *AccounttaxGetCall) IfNoneMatch(entityTag string) *AccounttaxGetCall {
 13916  	c.ifNoneMatch_ = entityTag
 13917  	return c
 13918  }
 13919  
 13920  // Context sets the context to be used in this call's Do method. Any
 13921  // pending HTTP request will be aborted if the provided context is
 13922  // canceled.
 13923  func (c *AccounttaxGetCall) Context(ctx context.Context) *AccounttaxGetCall {
 13924  	c.ctx_ = ctx
 13925  	return c
 13926  }
 13927  
 13928  // Header returns an http.Header that can be modified by the caller to
 13929  // add HTTP headers to the request.
 13930  func (c *AccounttaxGetCall) Header() http.Header {
 13931  	if c.header_ == nil {
 13932  		c.header_ = make(http.Header)
 13933  	}
 13934  	return c.header_
 13935  }
 13936  
 13937  func (c *AccounttaxGetCall) doRequest(alt string) (*http.Response, error) {
 13938  	reqHeaders := make(http.Header)
 13939  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 13940  	for k, v := range c.header_ {
 13941  		reqHeaders[k] = v
 13942  	}
 13943  	reqHeaders.Set("User-Agent", c.s.userAgent())
 13944  	if c.ifNoneMatch_ != "" {
 13945  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 13946  	}
 13947  	var body io.Reader = nil
 13948  	c.urlParams_.Set("alt", alt)
 13949  	c.urlParams_.Set("prettyPrint", "false")
 13950  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounttax/{accountId}")
 13951  	urls += "?" + c.urlParams_.Encode()
 13952  	req, err := http.NewRequest("GET", urls, body)
 13953  	if err != nil {
 13954  		return nil, err
 13955  	}
 13956  	req.Header = reqHeaders
 13957  	googleapi.Expand(req.URL, map[string]string{
 13958  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 13959  		"accountId":  strconv.FormatUint(c.accountId, 10),
 13960  	})
 13961  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13962  }
 13963  
 13964  // Do executes the "content.accounttax.get" call.
 13965  // Exactly one of *AccountTax or error will be non-nil. Any non-2xx
 13966  // status code is an error. Response headers are in either
 13967  // *AccountTax.ServerResponse.Header or (if a response was returned at
 13968  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
 13969  // to check whether the returned error was because
 13970  // http.StatusNotModified was returned.
 13971  func (c *AccounttaxGetCall) Do(opts ...googleapi.CallOption) (*AccountTax, error) {
 13972  	gensupport.SetOptions(c.urlParams_, opts...)
 13973  	res, err := c.doRequest("json")
 13974  	if res != nil && res.StatusCode == http.StatusNotModified {
 13975  		if res.Body != nil {
 13976  			res.Body.Close()
 13977  		}
 13978  		return nil, &googleapi.Error{
 13979  			Code:   res.StatusCode,
 13980  			Header: res.Header,
 13981  		}
 13982  	}
 13983  	if err != nil {
 13984  		return nil, err
 13985  	}
 13986  	defer googleapi.CloseBody(res)
 13987  	if err := googleapi.CheckResponse(res); err != nil {
 13988  		return nil, err
 13989  	}
 13990  	ret := &AccountTax{
 13991  		ServerResponse: googleapi.ServerResponse{
 13992  			Header:         res.Header,
 13993  			HTTPStatusCode: res.StatusCode,
 13994  		},
 13995  	}
 13996  	target := &ret
 13997  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13998  		return nil, err
 13999  	}
 14000  	return ret, nil
 14001  	// {
 14002  	//   "description": "Retrieves the tax settings of the account.",
 14003  	//   "flatPath": "{merchantId}/accounttax/{accountId}",
 14004  	//   "httpMethod": "GET",
 14005  	//   "id": "content.accounttax.get",
 14006  	//   "parameterOrder": [
 14007  	//     "merchantId",
 14008  	//     "accountId"
 14009  	//   ],
 14010  	//   "parameters": {
 14011  	//     "accountId": {
 14012  	//       "description": "The ID of the account for which to get/update account tax settings.",
 14013  	//       "format": "uint64",
 14014  	//       "location": "path",
 14015  	//       "required": true,
 14016  	//       "type": "string"
 14017  	//     },
 14018  	//     "merchantId": {
 14019  	//       "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.",
 14020  	//       "format": "uint64",
 14021  	//       "location": "path",
 14022  	//       "required": true,
 14023  	//       "type": "string"
 14024  	//     }
 14025  	//   },
 14026  	//   "path": "{merchantId}/accounttax/{accountId}",
 14027  	//   "response": {
 14028  	//     "$ref": "AccountTax"
 14029  	//   },
 14030  	//   "scopes": [
 14031  	//     "https://www.googleapis.com/auth/content"
 14032  	//   ]
 14033  	// }
 14034  
 14035  }
 14036  
 14037  // method id "content.accounttax.list":
 14038  
 14039  type AccounttaxListCall struct {
 14040  	s            *APIService
 14041  	merchantId   uint64
 14042  	urlParams_   gensupport.URLParams
 14043  	ifNoneMatch_ string
 14044  	ctx_         context.Context
 14045  	header_      http.Header
 14046  }
 14047  
 14048  // List: Lists the tax settings of the sub-accounts in your Merchant
 14049  // Center account.
 14050  //
 14051  //   - merchantId: The ID of the managing account. This must be a
 14052  //     multi-client account.
 14053  func (r *AccounttaxService) List(merchantId uint64) *AccounttaxListCall {
 14054  	c := &AccounttaxListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14055  	c.merchantId = merchantId
 14056  	return c
 14057  }
 14058  
 14059  // MaxResults sets the optional parameter "maxResults": The maximum
 14060  // number of tax settings to return in the response, used for paging.
 14061  func (c *AccounttaxListCall) MaxResults(maxResults int64) *AccounttaxListCall {
 14062  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 14063  	return c
 14064  }
 14065  
 14066  // PageToken sets the optional parameter "pageToken": The token returned
 14067  // by the previous request.
 14068  func (c *AccounttaxListCall) PageToken(pageToken string) *AccounttaxListCall {
 14069  	c.urlParams_.Set("pageToken", pageToken)
 14070  	return c
 14071  }
 14072  
 14073  // Fields allows partial responses to be retrieved. See
 14074  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 14075  // for more information.
 14076  func (c *AccounttaxListCall) Fields(s ...googleapi.Field) *AccounttaxListCall {
 14077  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14078  	return c
 14079  }
 14080  
 14081  // IfNoneMatch sets the optional parameter which makes the operation
 14082  // fail if the object's ETag matches the given value. This is useful for
 14083  // getting updates only after the object has changed since the last
 14084  // request. Use googleapi.IsNotModified to check whether the response
 14085  // error from Do is the result of In-None-Match.
 14086  func (c *AccounttaxListCall) IfNoneMatch(entityTag string) *AccounttaxListCall {
 14087  	c.ifNoneMatch_ = entityTag
 14088  	return c
 14089  }
 14090  
 14091  // Context sets the context to be used in this call's Do method. Any
 14092  // pending HTTP request will be aborted if the provided context is
 14093  // canceled.
 14094  func (c *AccounttaxListCall) Context(ctx context.Context) *AccounttaxListCall {
 14095  	c.ctx_ = ctx
 14096  	return c
 14097  }
 14098  
 14099  // Header returns an http.Header that can be modified by the caller to
 14100  // add HTTP headers to the request.
 14101  func (c *AccounttaxListCall) Header() http.Header {
 14102  	if c.header_ == nil {
 14103  		c.header_ = make(http.Header)
 14104  	}
 14105  	return c.header_
 14106  }
 14107  
 14108  func (c *AccounttaxListCall) doRequest(alt string) (*http.Response, error) {
 14109  	reqHeaders := make(http.Header)
 14110  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 14111  	for k, v := range c.header_ {
 14112  		reqHeaders[k] = v
 14113  	}
 14114  	reqHeaders.Set("User-Agent", c.s.userAgent())
 14115  	if c.ifNoneMatch_ != "" {
 14116  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 14117  	}
 14118  	var body io.Reader = nil
 14119  	c.urlParams_.Set("alt", alt)
 14120  	c.urlParams_.Set("prettyPrint", "false")
 14121  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounttax")
 14122  	urls += "?" + c.urlParams_.Encode()
 14123  	req, err := http.NewRequest("GET", urls, body)
 14124  	if err != nil {
 14125  		return nil, err
 14126  	}
 14127  	req.Header = reqHeaders
 14128  	googleapi.Expand(req.URL, map[string]string{
 14129  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 14130  	})
 14131  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14132  }
 14133  
 14134  // Do executes the "content.accounttax.list" call.
 14135  // Exactly one of *AccounttaxListResponse or error will be non-nil. Any
 14136  // non-2xx status code is an error. Response headers are in either
 14137  // *AccounttaxListResponse.ServerResponse.Header or (if a response was
 14138  // returned at all) in error.(*googleapi.Error).Header. Use
 14139  // googleapi.IsNotModified to check whether the returned error was
 14140  // because http.StatusNotModified was returned.
 14141  func (c *AccounttaxListCall) Do(opts ...googleapi.CallOption) (*AccounttaxListResponse, error) {
 14142  	gensupport.SetOptions(c.urlParams_, opts...)
 14143  	res, err := c.doRequest("json")
 14144  	if res != nil && res.StatusCode == http.StatusNotModified {
 14145  		if res.Body != nil {
 14146  			res.Body.Close()
 14147  		}
 14148  		return nil, &googleapi.Error{
 14149  			Code:   res.StatusCode,
 14150  			Header: res.Header,
 14151  		}
 14152  	}
 14153  	if err != nil {
 14154  		return nil, err
 14155  	}
 14156  	defer googleapi.CloseBody(res)
 14157  	if err := googleapi.CheckResponse(res); err != nil {
 14158  		return nil, err
 14159  	}
 14160  	ret := &AccounttaxListResponse{
 14161  		ServerResponse: googleapi.ServerResponse{
 14162  			Header:         res.Header,
 14163  			HTTPStatusCode: res.StatusCode,
 14164  		},
 14165  	}
 14166  	target := &ret
 14167  	if err := gensupport.DecodeResponse(target, res); err != nil {
 14168  		return nil, err
 14169  	}
 14170  	return ret, nil
 14171  	// {
 14172  	//   "description": "Lists the tax settings of the sub-accounts in your Merchant Center account.",
 14173  	//   "flatPath": "{merchantId}/accounttax",
 14174  	//   "httpMethod": "GET",
 14175  	//   "id": "content.accounttax.list",
 14176  	//   "parameterOrder": [
 14177  	//     "merchantId"
 14178  	//   ],
 14179  	//   "parameters": {
 14180  	//     "maxResults": {
 14181  	//       "description": "The maximum number of tax settings to return in the response, used for paging.",
 14182  	//       "format": "uint32",
 14183  	//       "location": "query",
 14184  	//       "type": "integer"
 14185  	//     },
 14186  	//     "merchantId": {
 14187  	//       "description": "The ID of the managing account. This must be a multi-client account.",
 14188  	//       "format": "uint64",
 14189  	//       "location": "path",
 14190  	//       "required": true,
 14191  	//       "type": "string"
 14192  	//     },
 14193  	//     "pageToken": {
 14194  	//       "description": "The token returned by the previous request.",
 14195  	//       "location": "query",
 14196  	//       "type": "string"
 14197  	//     }
 14198  	//   },
 14199  	//   "path": "{merchantId}/accounttax",
 14200  	//   "response": {
 14201  	//     "$ref": "AccounttaxListResponse"
 14202  	//   },
 14203  	//   "scopes": [
 14204  	//     "https://www.googleapis.com/auth/content"
 14205  	//   ]
 14206  	// }
 14207  
 14208  }
 14209  
 14210  // Pages invokes f for each page of results.
 14211  // A non-nil error returned from f will halt the iteration.
 14212  // The provided context supersedes any context provided to the Context method.
 14213  func (c *AccounttaxListCall) Pages(ctx context.Context, f func(*AccounttaxListResponse) error) error {
 14214  	c.ctx_ = ctx
 14215  	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
 14216  	for {
 14217  		x, err := c.Do()
 14218  		if err != nil {
 14219  			return err
 14220  		}
 14221  		if err := f(x); err != nil {
 14222  			return err
 14223  		}
 14224  		if x.NextPageToken == "" {
 14225  			return nil
 14226  		}
 14227  		c.PageToken(x.NextPageToken)
 14228  	}
 14229  }
 14230  
 14231  // method id "content.accounttax.update":
 14232  
 14233  type AccounttaxUpdateCall struct {
 14234  	s          *APIService
 14235  	merchantId uint64
 14236  	accountId  uint64
 14237  	accounttax *AccountTax
 14238  	urlParams_ gensupport.URLParams
 14239  	ctx_       context.Context
 14240  	header_    http.Header
 14241  }
 14242  
 14243  // Update: Updates the tax settings of the account. Any fields that are
 14244  // not provided are deleted from the resource.
 14245  //
 14246  //   - accountId: The ID of the account for which to get/update account
 14247  //     tax settings.
 14248  //   - merchantId: The ID of the managing account. If this parameter is
 14249  //     not the same as accountId, then this account must be a multi-client
 14250  //     account and `accountId` must be the ID of a sub-account of this
 14251  //     account.
 14252  func (r *AccounttaxService) Update(merchantId uint64, accountId uint64, accounttax *AccountTax) *AccounttaxUpdateCall {
 14253  	c := &AccounttaxUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14254  	c.merchantId = merchantId
 14255  	c.accountId = accountId
 14256  	c.accounttax = accounttax
 14257  	return c
 14258  }
 14259  
 14260  // DryRun sets the optional parameter "dryRun": Flag to simulate a
 14261  // request like in a live environment. If set to true, dry-run mode
 14262  // checks the validity of the request and returns errors (if any).
 14263  func (c *AccounttaxUpdateCall) DryRun(dryRun bool) *AccounttaxUpdateCall {
 14264  	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
 14265  	return c
 14266  }
 14267  
 14268  // Fields allows partial responses to be retrieved. See
 14269  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 14270  // for more information.
 14271  func (c *AccounttaxUpdateCall) Fields(s ...googleapi.Field) *AccounttaxUpdateCall {
 14272  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14273  	return c
 14274  }
 14275  
 14276  // Context sets the context to be used in this call's Do method. Any
 14277  // pending HTTP request will be aborted if the provided context is
 14278  // canceled.
 14279  func (c *AccounttaxUpdateCall) Context(ctx context.Context) *AccounttaxUpdateCall {
 14280  	c.ctx_ = ctx
 14281  	return c
 14282  }
 14283  
 14284  // Header returns an http.Header that can be modified by the caller to
 14285  // add HTTP headers to the request.
 14286  func (c *AccounttaxUpdateCall) Header() http.Header {
 14287  	if c.header_ == nil {
 14288  		c.header_ = make(http.Header)
 14289  	}
 14290  	return c.header_
 14291  }
 14292  
 14293  func (c *AccounttaxUpdateCall) doRequest(alt string) (*http.Response, error) {
 14294  	reqHeaders := make(http.Header)
 14295  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 14296  	for k, v := range c.header_ {
 14297  		reqHeaders[k] = v
 14298  	}
 14299  	reqHeaders.Set("User-Agent", c.s.userAgent())
 14300  	var body io.Reader = nil
 14301  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accounttax)
 14302  	if err != nil {
 14303  		return nil, err
 14304  	}
 14305  	reqHeaders.Set("Content-Type", "application/json")
 14306  	c.urlParams_.Set("alt", alt)
 14307  	c.urlParams_.Set("prettyPrint", "false")
 14308  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/accounttax/{accountId}")
 14309  	urls += "?" + c.urlParams_.Encode()
 14310  	req, err := http.NewRequest("PUT", urls, body)
 14311  	if err != nil {
 14312  		return nil, err
 14313  	}
 14314  	req.Header = reqHeaders
 14315  	googleapi.Expand(req.URL, map[string]string{
 14316  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 14317  		"accountId":  strconv.FormatUint(c.accountId, 10),
 14318  	})
 14319  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14320  }
 14321  
 14322  // Do executes the "content.accounttax.update" call.
 14323  // Exactly one of *AccountTax or error will be non-nil. Any non-2xx
 14324  // status code is an error. Response headers are in either
 14325  // *AccountTax.ServerResponse.Header or (if a response was returned at
 14326  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
 14327  // to check whether the returned error was because
 14328  // http.StatusNotModified was returned.
 14329  func (c *AccounttaxUpdateCall) Do(opts ...googleapi.CallOption) (*AccountTax, error) {
 14330  	gensupport.SetOptions(c.urlParams_, opts...)
 14331  	res, err := c.doRequest("json")
 14332  	if res != nil && res.StatusCode == http.StatusNotModified {
 14333  		if res.Body != nil {
 14334  			res.Body.Close()
 14335  		}
 14336  		return nil, &googleapi.Error{
 14337  			Code:   res.StatusCode,
 14338  			Header: res.Header,
 14339  		}
 14340  	}
 14341  	if err != nil {
 14342  		return nil, err
 14343  	}
 14344  	defer googleapi.CloseBody(res)
 14345  	if err := googleapi.CheckResponse(res); err != nil {
 14346  		return nil, err
 14347  	}
 14348  	ret := &AccountTax{
 14349  		ServerResponse: googleapi.ServerResponse{
 14350  			Header:         res.Header,
 14351  			HTTPStatusCode: res.StatusCode,
 14352  		},
 14353  	}
 14354  	target := &ret
 14355  	if err := gensupport.DecodeResponse(target, res); err != nil {
 14356  		return nil, err
 14357  	}
 14358  	return ret, nil
 14359  	// {
 14360  	//   "description": "Updates the tax settings of the account. Any fields that are not provided are deleted from the resource.",
 14361  	//   "flatPath": "{merchantId}/accounttax/{accountId}",
 14362  	//   "httpMethod": "PUT",
 14363  	//   "id": "content.accounttax.update",
 14364  	//   "parameterOrder": [
 14365  	//     "merchantId",
 14366  	//     "accountId"
 14367  	//   ],
 14368  	//   "parameters": {
 14369  	//     "accountId": {
 14370  	//       "description": "The ID of the account for which to get/update account tax settings.",
 14371  	//       "format": "uint64",
 14372  	//       "location": "path",
 14373  	//       "required": true,
 14374  	//       "type": "string"
 14375  	//     },
 14376  	//     "dryRun": {
 14377  	//       "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).",
 14378  	//       "location": "query",
 14379  	//       "type": "boolean"
 14380  	//     },
 14381  	//     "merchantId": {
 14382  	//       "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.",
 14383  	//       "format": "uint64",
 14384  	//       "location": "path",
 14385  	//       "required": true,
 14386  	//       "type": "string"
 14387  	//     }
 14388  	//   },
 14389  	//   "path": "{merchantId}/accounttax/{accountId}",
 14390  	//   "request": {
 14391  	//     "$ref": "AccountTax"
 14392  	//   },
 14393  	//   "response": {
 14394  	//     "$ref": "AccountTax"
 14395  	//   },
 14396  	//   "scopes": [
 14397  	//     "https://www.googleapis.com/auth/content"
 14398  	//   ]
 14399  	// }
 14400  
 14401  }
 14402  
 14403  // method id "content.datafeeds.custombatch":
 14404  
 14405  type DatafeedsCustombatchCall struct {
 14406  	s                           *APIService
 14407  	datafeedscustombatchrequest *DatafeedsCustomBatchRequest
 14408  	urlParams_                  gensupport.URLParams
 14409  	ctx_                        context.Context
 14410  	header_                     http.Header
 14411  }
 14412  
 14413  // Custombatch: Deletes, fetches, gets, inserts and updates multiple
 14414  // datafeeds in a single request.
 14415  func (r *DatafeedsService) Custombatch(datafeedscustombatchrequest *DatafeedsCustomBatchRequest) *DatafeedsCustombatchCall {
 14416  	c := &DatafeedsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14417  	c.datafeedscustombatchrequest = datafeedscustombatchrequest
 14418  	return c
 14419  }
 14420  
 14421  // DryRun sets the optional parameter "dryRun": Flag to simulate a
 14422  // request like in a live environment. If set to true, dry-run mode
 14423  // checks the validity of the request and returns errors (if any).
 14424  func (c *DatafeedsCustombatchCall) DryRun(dryRun bool) *DatafeedsCustombatchCall {
 14425  	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
 14426  	return c
 14427  }
 14428  
 14429  // Fields allows partial responses to be retrieved. See
 14430  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 14431  // for more information.
 14432  func (c *DatafeedsCustombatchCall) Fields(s ...googleapi.Field) *DatafeedsCustombatchCall {
 14433  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14434  	return c
 14435  }
 14436  
 14437  // Context sets the context to be used in this call's Do method. Any
 14438  // pending HTTP request will be aborted if the provided context is
 14439  // canceled.
 14440  func (c *DatafeedsCustombatchCall) Context(ctx context.Context) *DatafeedsCustombatchCall {
 14441  	c.ctx_ = ctx
 14442  	return c
 14443  }
 14444  
 14445  // Header returns an http.Header that can be modified by the caller to
 14446  // add HTTP headers to the request.
 14447  func (c *DatafeedsCustombatchCall) Header() http.Header {
 14448  	if c.header_ == nil {
 14449  		c.header_ = make(http.Header)
 14450  	}
 14451  	return c.header_
 14452  }
 14453  
 14454  func (c *DatafeedsCustombatchCall) doRequest(alt string) (*http.Response, error) {
 14455  	reqHeaders := make(http.Header)
 14456  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 14457  	for k, v := range c.header_ {
 14458  		reqHeaders[k] = v
 14459  	}
 14460  	reqHeaders.Set("User-Agent", c.s.userAgent())
 14461  	var body io.Reader = nil
 14462  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeedscustombatchrequest)
 14463  	if err != nil {
 14464  		return nil, err
 14465  	}
 14466  	reqHeaders.Set("Content-Type", "application/json")
 14467  	c.urlParams_.Set("alt", alt)
 14468  	c.urlParams_.Set("prettyPrint", "false")
 14469  	urls := googleapi.ResolveRelative(c.s.BasePath, "datafeeds/batch")
 14470  	urls += "?" + c.urlParams_.Encode()
 14471  	req, err := http.NewRequest("POST", urls, body)
 14472  	if err != nil {
 14473  		return nil, err
 14474  	}
 14475  	req.Header = reqHeaders
 14476  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14477  }
 14478  
 14479  // Do executes the "content.datafeeds.custombatch" call.
 14480  // Exactly one of *DatafeedsCustomBatchResponse or error will be
 14481  // non-nil. Any non-2xx status code is an error. Response headers are in
 14482  // either *DatafeedsCustomBatchResponse.ServerResponse.Header or (if a
 14483  // response was returned at all) in error.(*googleapi.Error).Header. Use
 14484  // googleapi.IsNotModified to check whether the returned error was
 14485  // because http.StatusNotModified was returned.
 14486  func (c *DatafeedsCustombatchCall) Do(opts ...googleapi.CallOption) (*DatafeedsCustomBatchResponse, error) {
 14487  	gensupport.SetOptions(c.urlParams_, opts...)
 14488  	res, err := c.doRequest("json")
 14489  	if res != nil && res.StatusCode == http.StatusNotModified {
 14490  		if res.Body != nil {
 14491  			res.Body.Close()
 14492  		}
 14493  		return nil, &googleapi.Error{
 14494  			Code:   res.StatusCode,
 14495  			Header: res.Header,
 14496  		}
 14497  	}
 14498  	if err != nil {
 14499  		return nil, err
 14500  	}
 14501  	defer googleapi.CloseBody(res)
 14502  	if err := googleapi.CheckResponse(res); err != nil {
 14503  		return nil, err
 14504  	}
 14505  	ret := &DatafeedsCustomBatchResponse{
 14506  		ServerResponse: googleapi.ServerResponse{
 14507  			Header:         res.Header,
 14508  			HTTPStatusCode: res.StatusCode,
 14509  		},
 14510  	}
 14511  	target := &ret
 14512  	if err := gensupport.DecodeResponse(target, res); err != nil {
 14513  		return nil, err
 14514  	}
 14515  	return ret, nil
 14516  	// {
 14517  	//   "description": "Deletes, fetches, gets, inserts and updates multiple datafeeds in a single request.",
 14518  	//   "flatPath": "datafeeds/batch",
 14519  	//   "httpMethod": "POST",
 14520  	//   "id": "content.datafeeds.custombatch",
 14521  	//   "parameterOrder": [],
 14522  	//   "parameters": {
 14523  	//     "dryRun": {
 14524  	//       "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).",
 14525  	//       "location": "query",
 14526  	//       "type": "boolean"
 14527  	//     }
 14528  	//   },
 14529  	//   "path": "datafeeds/batch",
 14530  	//   "request": {
 14531  	//     "$ref": "DatafeedsCustomBatchRequest"
 14532  	//   },
 14533  	//   "response": {
 14534  	//     "$ref": "DatafeedsCustomBatchResponse"
 14535  	//   },
 14536  	//   "scopes": [
 14537  	//     "https://www.googleapis.com/auth/content"
 14538  	//   ]
 14539  	// }
 14540  
 14541  }
 14542  
 14543  // method id "content.datafeeds.delete":
 14544  
 14545  type DatafeedsDeleteCall struct {
 14546  	s          *APIService
 14547  	merchantId uint64
 14548  	datafeedId uint64
 14549  	urlParams_ gensupport.URLParams
 14550  	ctx_       context.Context
 14551  	header_    http.Header
 14552  }
 14553  
 14554  // Delete: Deletes a datafeed configuration from your Merchant Center
 14555  // account.
 14556  //
 14557  //   - datafeedId: The ID of the datafeed.
 14558  //   - merchantId: The ID of the account that manages the datafeed. This
 14559  //     account cannot be a multi-client account.
 14560  func (r *DatafeedsService) Delete(merchantId uint64, datafeedId uint64) *DatafeedsDeleteCall {
 14561  	c := &DatafeedsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14562  	c.merchantId = merchantId
 14563  	c.datafeedId = datafeedId
 14564  	return c
 14565  }
 14566  
 14567  // DryRun sets the optional parameter "dryRun": Flag to simulate a
 14568  // request like in a live environment. If set to true, dry-run mode
 14569  // checks the validity of the request and returns errors (if any).
 14570  func (c *DatafeedsDeleteCall) DryRun(dryRun bool) *DatafeedsDeleteCall {
 14571  	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
 14572  	return c
 14573  }
 14574  
 14575  // Fields allows partial responses to be retrieved. See
 14576  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 14577  // for more information.
 14578  func (c *DatafeedsDeleteCall) Fields(s ...googleapi.Field) *DatafeedsDeleteCall {
 14579  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14580  	return c
 14581  }
 14582  
 14583  // Context sets the context to be used in this call's Do method. Any
 14584  // pending HTTP request will be aborted if the provided context is
 14585  // canceled.
 14586  func (c *DatafeedsDeleteCall) Context(ctx context.Context) *DatafeedsDeleteCall {
 14587  	c.ctx_ = ctx
 14588  	return c
 14589  }
 14590  
 14591  // Header returns an http.Header that can be modified by the caller to
 14592  // add HTTP headers to the request.
 14593  func (c *DatafeedsDeleteCall) Header() http.Header {
 14594  	if c.header_ == nil {
 14595  		c.header_ = make(http.Header)
 14596  	}
 14597  	return c.header_
 14598  }
 14599  
 14600  func (c *DatafeedsDeleteCall) doRequest(alt string) (*http.Response, error) {
 14601  	reqHeaders := make(http.Header)
 14602  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 14603  	for k, v := range c.header_ {
 14604  		reqHeaders[k] = v
 14605  	}
 14606  	reqHeaders.Set("User-Agent", c.s.userAgent())
 14607  	var body io.Reader = nil
 14608  	c.urlParams_.Set("alt", alt)
 14609  	c.urlParams_.Set("prettyPrint", "false")
 14610  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds/{datafeedId}")
 14611  	urls += "?" + c.urlParams_.Encode()
 14612  	req, err := http.NewRequest("DELETE", urls, body)
 14613  	if err != nil {
 14614  		return nil, err
 14615  	}
 14616  	req.Header = reqHeaders
 14617  	googleapi.Expand(req.URL, map[string]string{
 14618  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 14619  		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
 14620  	})
 14621  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14622  }
 14623  
 14624  // Do executes the "content.datafeeds.delete" call.
 14625  func (c *DatafeedsDeleteCall) Do(opts ...googleapi.CallOption) error {
 14626  	gensupport.SetOptions(c.urlParams_, opts...)
 14627  	res, err := c.doRequest("json")
 14628  	if err != nil {
 14629  		return err
 14630  	}
 14631  	defer googleapi.CloseBody(res)
 14632  	if err := googleapi.CheckResponse(res); err != nil {
 14633  		return err
 14634  	}
 14635  	return nil
 14636  	// {
 14637  	//   "description": "Deletes a datafeed configuration from your Merchant Center account.",
 14638  	//   "flatPath": "{merchantId}/datafeeds/{datafeedId}",
 14639  	//   "httpMethod": "DELETE",
 14640  	//   "id": "content.datafeeds.delete",
 14641  	//   "parameterOrder": [
 14642  	//     "merchantId",
 14643  	//     "datafeedId"
 14644  	//   ],
 14645  	//   "parameters": {
 14646  	//     "datafeedId": {
 14647  	//       "description": "The ID of the datafeed.",
 14648  	//       "format": "uint64",
 14649  	//       "location": "path",
 14650  	//       "required": true,
 14651  	//       "type": "string"
 14652  	//     },
 14653  	//     "dryRun": {
 14654  	//       "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).",
 14655  	//       "location": "query",
 14656  	//       "type": "boolean"
 14657  	//     },
 14658  	//     "merchantId": {
 14659  	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
 14660  	//       "format": "uint64",
 14661  	//       "location": "path",
 14662  	//       "required": true,
 14663  	//       "type": "string"
 14664  	//     }
 14665  	//   },
 14666  	//   "path": "{merchantId}/datafeeds/{datafeedId}",
 14667  	//   "scopes": [
 14668  	//     "https://www.googleapis.com/auth/content"
 14669  	//   ]
 14670  	// }
 14671  
 14672  }
 14673  
 14674  // method id "content.datafeeds.fetchnow":
 14675  
 14676  type DatafeedsFetchnowCall struct {
 14677  	s          *APIService
 14678  	merchantId uint64
 14679  	datafeedId uint64
 14680  	urlParams_ gensupport.URLParams
 14681  	ctx_       context.Context
 14682  	header_    http.Header
 14683  }
 14684  
 14685  // Fetchnow: Invokes a fetch for the datafeed in your Merchant Center
 14686  // account. If you need to call this method more than once per day, we
 14687  // recommend you use the Products service to update your product data.
 14688  //
 14689  //   - datafeedId: The ID of the datafeed to be fetched.
 14690  //   - merchantId: The ID of the account that manages the datafeed. This
 14691  //     account cannot be a multi-client account.
 14692  func (r *DatafeedsService) Fetchnow(merchantId uint64, datafeedId uint64) *DatafeedsFetchnowCall {
 14693  	c := &DatafeedsFetchnowCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14694  	c.merchantId = merchantId
 14695  	c.datafeedId = datafeedId
 14696  	return c
 14697  }
 14698  
 14699  // DryRun sets the optional parameter "dryRun": Flag to simulate a
 14700  // request like in a live environment. If set to true, dry-run mode
 14701  // checks the validity of the request and returns errors (if any).
 14702  func (c *DatafeedsFetchnowCall) DryRun(dryRun bool) *DatafeedsFetchnowCall {
 14703  	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
 14704  	return c
 14705  }
 14706  
 14707  // Fields allows partial responses to be retrieved. See
 14708  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 14709  // for more information.
 14710  func (c *DatafeedsFetchnowCall) Fields(s ...googleapi.Field) *DatafeedsFetchnowCall {
 14711  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14712  	return c
 14713  }
 14714  
 14715  // Context sets the context to be used in this call's Do method. Any
 14716  // pending HTTP request will be aborted if the provided context is
 14717  // canceled.
 14718  func (c *DatafeedsFetchnowCall) Context(ctx context.Context) *DatafeedsFetchnowCall {
 14719  	c.ctx_ = ctx
 14720  	return c
 14721  }
 14722  
 14723  // Header returns an http.Header that can be modified by the caller to
 14724  // add HTTP headers to the request.
 14725  func (c *DatafeedsFetchnowCall) Header() http.Header {
 14726  	if c.header_ == nil {
 14727  		c.header_ = make(http.Header)
 14728  	}
 14729  	return c.header_
 14730  }
 14731  
 14732  func (c *DatafeedsFetchnowCall) doRequest(alt string) (*http.Response, error) {
 14733  	reqHeaders := make(http.Header)
 14734  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 14735  	for k, v := range c.header_ {
 14736  		reqHeaders[k] = v
 14737  	}
 14738  	reqHeaders.Set("User-Agent", c.s.userAgent())
 14739  	var body io.Reader = nil
 14740  	c.urlParams_.Set("alt", alt)
 14741  	c.urlParams_.Set("prettyPrint", "false")
 14742  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds/{datafeedId}/fetchNow")
 14743  	urls += "?" + c.urlParams_.Encode()
 14744  	req, err := http.NewRequest("POST", urls, body)
 14745  	if err != nil {
 14746  		return nil, err
 14747  	}
 14748  	req.Header = reqHeaders
 14749  	googleapi.Expand(req.URL, map[string]string{
 14750  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 14751  		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
 14752  	})
 14753  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14754  }
 14755  
 14756  // Do executes the "content.datafeeds.fetchnow" call.
 14757  // Exactly one of *DatafeedsFetchNowResponse or error will be non-nil.
 14758  // Any non-2xx status code is an error. Response headers are in either
 14759  // *DatafeedsFetchNowResponse.ServerResponse.Header or (if a response
 14760  // was returned at all) in error.(*googleapi.Error).Header. Use
 14761  // googleapi.IsNotModified to check whether the returned error was
 14762  // because http.StatusNotModified was returned.
 14763  func (c *DatafeedsFetchnowCall) Do(opts ...googleapi.CallOption) (*DatafeedsFetchNowResponse, error) {
 14764  	gensupport.SetOptions(c.urlParams_, opts...)
 14765  	res, err := c.doRequest("json")
 14766  	if res != nil && res.StatusCode == http.StatusNotModified {
 14767  		if res.Body != nil {
 14768  			res.Body.Close()
 14769  		}
 14770  		return nil, &googleapi.Error{
 14771  			Code:   res.StatusCode,
 14772  			Header: res.Header,
 14773  		}
 14774  	}
 14775  	if err != nil {
 14776  		return nil, err
 14777  	}
 14778  	defer googleapi.CloseBody(res)
 14779  	if err := googleapi.CheckResponse(res); err != nil {
 14780  		return nil, err
 14781  	}
 14782  	ret := &DatafeedsFetchNowResponse{
 14783  		ServerResponse: googleapi.ServerResponse{
 14784  			Header:         res.Header,
 14785  			HTTPStatusCode: res.StatusCode,
 14786  		},
 14787  	}
 14788  	target := &ret
 14789  	if err := gensupport.DecodeResponse(target, res); err != nil {
 14790  		return nil, err
 14791  	}
 14792  	return ret, nil
 14793  	// {
 14794  	//   "description": "Invokes a fetch for the datafeed in your Merchant Center account. If you need to call this method more than once per day, we recommend you use the Products service to update your product data.",
 14795  	//   "flatPath": "{merchantId}/datafeeds/{datafeedId}/fetchNow",
 14796  	//   "httpMethod": "POST",
 14797  	//   "id": "content.datafeeds.fetchnow",
 14798  	//   "parameterOrder": [
 14799  	//     "merchantId",
 14800  	//     "datafeedId"
 14801  	//   ],
 14802  	//   "parameters": {
 14803  	//     "datafeedId": {
 14804  	//       "description": "The ID of the datafeed to be fetched.",
 14805  	//       "format": "uint64",
 14806  	//       "location": "path",
 14807  	//       "required": true,
 14808  	//       "type": "string"
 14809  	//     },
 14810  	//     "dryRun": {
 14811  	//       "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).",
 14812  	//       "location": "query",
 14813  	//       "type": "boolean"
 14814  	//     },
 14815  	//     "merchantId": {
 14816  	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
 14817  	//       "format": "uint64",
 14818  	//       "location": "path",
 14819  	//       "required": true,
 14820  	//       "type": "string"
 14821  	//     }
 14822  	//   },
 14823  	//   "path": "{merchantId}/datafeeds/{datafeedId}/fetchNow",
 14824  	//   "response": {
 14825  	//     "$ref": "DatafeedsFetchNowResponse"
 14826  	//   },
 14827  	//   "scopes": [
 14828  	//     "https://www.googleapis.com/auth/content"
 14829  	//   ]
 14830  	// }
 14831  
 14832  }
 14833  
 14834  // method id "content.datafeeds.get":
 14835  
 14836  type DatafeedsGetCall struct {
 14837  	s            *APIService
 14838  	merchantId   uint64
 14839  	datafeedId   uint64
 14840  	urlParams_   gensupport.URLParams
 14841  	ifNoneMatch_ string
 14842  	ctx_         context.Context
 14843  	header_      http.Header
 14844  }
 14845  
 14846  // Get: Retrieves a datafeed configuration from your Merchant Center
 14847  // account.
 14848  //
 14849  //   - datafeedId: The ID of the datafeed.
 14850  //   - merchantId: The ID of the account that manages the datafeed. This
 14851  //     account cannot be a multi-client account.
 14852  func (r *DatafeedsService) Get(merchantId uint64, datafeedId uint64) *DatafeedsGetCall {
 14853  	c := &DatafeedsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14854  	c.merchantId = merchantId
 14855  	c.datafeedId = datafeedId
 14856  	return c
 14857  }
 14858  
 14859  // Fields allows partial responses to be retrieved. See
 14860  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 14861  // for more information.
 14862  func (c *DatafeedsGetCall) Fields(s ...googleapi.Field) *DatafeedsGetCall {
 14863  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14864  	return c
 14865  }
 14866  
 14867  // IfNoneMatch sets the optional parameter which makes the operation
 14868  // fail if the object's ETag matches the given value. This is useful for
 14869  // getting updates only after the object has changed since the last
 14870  // request. Use googleapi.IsNotModified to check whether the response
 14871  // error from Do is the result of In-None-Match.
 14872  func (c *DatafeedsGetCall) IfNoneMatch(entityTag string) *DatafeedsGetCall {
 14873  	c.ifNoneMatch_ = entityTag
 14874  	return c
 14875  }
 14876  
 14877  // Context sets the context to be used in this call's Do method. Any
 14878  // pending HTTP request will be aborted if the provided context is
 14879  // canceled.
 14880  func (c *DatafeedsGetCall) Context(ctx context.Context) *DatafeedsGetCall {
 14881  	c.ctx_ = ctx
 14882  	return c
 14883  }
 14884  
 14885  // Header returns an http.Header that can be modified by the caller to
 14886  // add HTTP headers to the request.
 14887  func (c *DatafeedsGetCall) Header() http.Header {
 14888  	if c.header_ == nil {
 14889  		c.header_ = make(http.Header)
 14890  	}
 14891  	return c.header_
 14892  }
 14893  
 14894  func (c *DatafeedsGetCall) doRequest(alt string) (*http.Response, error) {
 14895  	reqHeaders := make(http.Header)
 14896  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 14897  	for k, v := range c.header_ {
 14898  		reqHeaders[k] = v
 14899  	}
 14900  	reqHeaders.Set("User-Agent", c.s.userAgent())
 14901  	if c.ifNoneMatch_ != "" {
 14902  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 14903  	}
 14904  	var body io.Reader = nil
 14905  	c.urlParams_.Set("alt", alt)
 14906  	c.urlParams_.Set("prettyPrint", "false")
 14907  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds/{datafeedId}")
 14908  	urls += "?" + c.urlParams_.Encode()
 14909  	req, err := http.NewRequest("GET", urls, body)
 14910  	if err != nil {
 14911  		return nil, err
 14912  	}
 14913  	req.Header = reqHeaders
 14914  	googleapi.Expand(req.URL, map[string]string{
 14915  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 14916  		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
 14917  	})
 14918  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14919  }
 14920  
 14921  // Do executes the "content.datafeeds.get" call.
 14922  // Exactly one of *Datafeed or error will be non-nil. Any non-2xx status
 14923  // code is an error. Response headers are in either
 14924  // *Datafeed.ServerResponse.Header or (if a response was returned at
 14925  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
 14926  // to check whether the returned error was because
 14927  // http.StatusNotModified was returned.
 14928  func (c *DatafeedsGetCall) Do(opts ...googleapi.CallOption) (*Datafeed, error) {
 14929  	gensupport.SetOptions(c.urlParams_, opts...)
 14930  	res, err := c.doRequest("json")
 14931  	if res != nil && res.StatusCode == http.StatusNotModified {
 14932  		if res.Body != nil {
 14933  			res.Body.Close()
 14934  		}
 14935  		return nil, &googleapi.Error{
 14936  			Code:   res.StatusCode,
 14937  			Header: res.Header,
 14938  		}
 14939  	}
 14940  	if err != nil {
 14941  		return nil, err
 14942  	}
 14943  	defer googleapi.CloseBody(res)
 14944  	if err := googleapi.CheckResponse(res); err != nil {
 14945  		return nil, err
 14946  	}
 14947  	ret := &Datafeed{
 14948  		ServerResponse: googleapi.ServerResponse{
 14949  			Header:         res.Header,
 14950  			HTTPStatusCode: res.StatusCode,
 14951  		},
 14952  	}
 14953  	target := &ret
 14954  	if err := gensupport.DecodeResponse(target, res); err != nil {
 14955  		return nil, err
 14956  	}
 14957  	return ret, nil
 14958  	// {
 14959  	//   "description": "Retrieves a datafeed configuration from your Merchant Center account.",
 14960  	//   "flatPath": "{merchantId}/datafeeds/{datafeedId}",
 14961  	//   "httpMethod": "GET",
 14962  	//   "id": "content.datafeeds.get",
 14963  	//   "parameterOrder": [
 14964  	//     "merchantId",
 14965  	//     "datafeedId"
 14966  	//   ],
 14967  	//   "parameters": {
 14968  	//     "datafeedId": {
 14969  	//       "description": "The ID of the datafeed.",
 14970  	//       "format": "uint64",
 14971  	//       "location": "path",
 14972  	//       "required": true,
 14973  	//       "type": "string"
 14974  	//     },
 14975  	//     "merchantId": {
 14976  	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
 14977  	//       "format": "uint64",
 14978  	//       "location": "path",
 14979  	//       "required": true,
 14980  	//       "type": "string"
 14981  	//     }
 14982  	//   },
 14983  	//   "path": "{merchantId}/datafeeds/{datafeedId}",
 14984  	//   "response": {
 14985  	//     "$ref": "Datafeed"
 14986  	//   },
 14987  	//   "scopes": [
 14988  	//     "https://www.googleapis.com/auth/content"
 14989  	//   ]
 14990  	// }
 14991  
 14992  }
 14993  
 14994  // method id "content.datafeeds.insert":
 14995  
 14996  type DatafeedsInsertCall struct {
 14997  	s          *APIService
 14998  	merchantId uint64
 14999  	datafeed   *Datafeed
 15000  	urlParams_ gensupport.URLParams
 15001  	ctx_       context.Context
 15002  	header_    http.Header
 15003  }
 15004  
 15005  // Insert: Registers a datafeed configuration with your Merchant Center
 15006  // account.
 15007  //
 15008  //   - merchantId: The ID of the account that manages the datafeed. This
 15009  //     account cannot be a multi-client account.
 15010  func (r *DatafeedsService) Insert(merchantId uint64, datafeed *Datafeed) *DatafeedsInsertCall {
 15011  	c := &DatafeedsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 15012  	c.merchantId = merchantId
 15013  	c.datafeed = datafeed
 15014  	return c
 15015  }
 15016  
 15017  // DryRun sets the optional parameter "dryRun": Flag to simulate a
 15018  // request like in a live environment. If set to true, dry-run mode
 15019  // checks the validity of the request and returns errors (if any).
 15020  func (c *DatafeedsInsertCall) DryRun(dryRun bool) *DatafeedsInsertCall {
 15021  	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
 15022  	return c
 15023  }
 15024  
 15025  // Fields allows partial responses to be retrieved. See
 15026  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 15027  // for more information.
 15028  func (c *DatafeedsInsertCall) Fields(s ...googleapi.Field) *DatafeedsInsertCall {
 15029  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 15030  	return c
 15031  }
 15032  
 15033  // Context sets the context to be used in this call's Do method. Any
 15034  // pending HTTP request will be aborted if the provided context is
 15035  // canceled.
 15036  func (c *DatafeedsInsertCall) Context(ctx context.Context) *DatafeedsInsertCall {
 15037  	c.ctx_ = ctx
 15038  	return c
 15039  }
 15040  
 15041  // Header returns an http.Header that can be modified by the caller to
 15042  // add HTTP headers to the request.
 15043  func (c *DatafeedsInsertCall) Header() http.Header {
 15044  	if c.header_ == nil {
 15045  		c.header_ = make(http.Header)
 15046  	}
 15047  	return c.header_
 15048  }
 15049  
 15050  func (c *DatafeedsInsertCall) doRequest(alt string) (*http.Response, error) {
 15051  	reqHeaders := make(http.Header)
 15052  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 15053  	for k, v := range c.header_ {
 15054  		reqHeaders[k] = v
 15055  	}
 15056  	reqHeaders.Set("User-Agent", c.s.userAgent())
 15057  	var body io.Reader = nil
 15058  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeed)
 15059  	if err != nil {
 15060  		return nil, err
 15061  	}
 15062  	reqHeaders.Set("Content-Type", "application/json")
 15063  	c.urlParams_.Set("alt", alt)
 15064  	c.urlParams_.Set("prettyPrint", "false")
 15065  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds")
 15066  	urls += "?" + c.urlParams_.Encode()
 15067  	req, err := http.NewRequest("POST", urls, body)
 15068  	if err != nil {
 15069  		return nil, err
 15070  	}
 15071  	req.Header = reqHeaders
 15072  	googleapi.Expand(req.URL, map[string]string{
 15073  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 15074  	})
 15075  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 15076  }
 15077  
 15078  // Do executes the "content.datafeeds.insert" call.
 15079  // Exactly one of *Datafeed or error will be non-nil. Any non-2xx status
 15080  // code is an error. Response headers are in either
 15081  // *Datafeed.ServerResponse.Header or (if a response was returned at
 15082  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
 15083  // to check whether the returned error was because
 15084  // http.StatusNotModified was returned.
 15085  func (c *DatafeedsInsertCall) Do(opts ...googleapi.CallOption) (*Datafeed, error) {
 15086  	gensupport.SetOptions(c.urlParams_, opts...)
 15087  	res, err := c.doRequest("json")
 15088  	if res != nil && res.StatusCode == http.StatusNotModified {
 15089  		if res.Body != nil {
 15090  			res.Body.Close()
 15091  		}
 15092  		return nil, &googleapi.Error{
 15093  			Code:   res.StatusCode,
 15094  			Header: res.Header,
 15095  		}
 15096  	}
 15097  	if err != nil {
 15098  		return nil, err
 15099  	}
 15100  	defer googleapi.CloseBody(res)
 15101  	if err := googleapi.CheckResponse(res); err != nil {
 15102  		return nil, err
 15103  	}
 15104  	ret := &Datafeed{
 15105  		ServerResponse: googleapi.ServerResponse{
 15106  			Header:         res.Header,
 15107  			HTTPStatusCode: res.StatusCode,
 15108  		},
 15109  	}
 15110  	target := &ret
 15111  	if err := gensupport.DecodeResponse(target, res); err != nil {
 15112  		return nil, err
 15113  	}
 15114  	return ret, nil
 15115  	// {
 15116  	//   "description": "Registers a datafeed configuration with your Merchant Center account.",
 15117  	//   "flatPath": "{merchantId}/datafeeds",
 15118  	//   "httpMethod": "POST",
 15119  	//   "id": "content.datafeeds.insert",
 15120  	//   "parameterOrder": [
 15121  	//     "merchantId"
 15122  	//   ],
 15123  	//   "parameters": {
 15124  	//     "dryRun": {
 15125  	//       "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).",
 15126  	//       "location": "query",
 15127  	//       "type": "boolean"
 15128  	//     },
 15129  	//     "merchantId": {
 15130  	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
 15131  	//       "format": "uint64",
 15132  	//       "location": "path",
 15133  	//       "required": true,
 15134  	//       "type": "string"
 15135  	//     }
 15136  	//   },
 15137  	//   "path": "{merchantId}/datafeeds",
 15138  	//   "request": {
 15139  	//     "$ref": "Datafeed"
 15140  	//   },
 15141  	//   "response": {
 15142  	//     "$ref": "Datafeed"
 15143  	//   },
 15144  	//   "scopes": [
 15145  	//     "https://www.googleapis.com/auth/content"
 15146  	//   ]
 15147  	// }
 15148  
 15149  }
 15150  
 15151  // method id "content.datafeeds.list":
 15152  
 15153  type DatafeedsListCall struct {
 15154  	s            *APIService
 15155  	merchantId   uint64
 15156  	urlParams_   gensupport.URLParams
 15157  	ifNoneMatch_ string
 15158  	ctx_         context.Context
 15159  	header_      http.Header
 15160  }
 15161  
 15162  // List: Lists the configurations for datafeeds in your Merchant Center
 15163  // account.
 15164  //
 15165  //   - merchantId: The ID of the account that manages the datafeeds. This
 15166  //     account cannot be a multi-client account.
 15167  func (r *DatafeedsService) List(merchantId uint64) *DatafeedsListCall {
 15168  	c := &DatafeedsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 15169  	c.merchantId = merchantId
 15170  	return c
 15171  }
 15172  
 15173  // MaxResults sets the optional parameter "maxResults": The maximum
 15174  // number of products to return in the response, used for paging.
 15175  func (c *DatafeedsListCall) MaxResults(maxResults int64) *DatafeedsListCall {
 15176  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 15177  	return c
 15178  }
 15179  
 15180  // PageToken sets the optional parameter "pageToken": The token returned
 15181  // by the previous request.
 15182  func (c *DatafeedsListCall) PageToken(pageToken string) *DatafeedsListCall {
 15183  	c.urlParams_.Set("pageToken", pageToken)
 15184  	return c
 15185  }
 15186  
 15187  // Fields allows partial responses to be retrieved. See
 15188  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 15189  // for more information.
 15190  func (c *DatafeedsListCall) Fields(s ...googleapi.Field) *DatafeedsListCall {
 15191  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 15192  	return c
 15193  }
 15194  
 15195  // IfNoneMatch sets the optional parameter which makes the operation
 15196  // fail if the object's ETag matches the given value. This is useful for
 15197  // getting updates only after the object has changed since the last
 15198  // request. Use googleapi.IsNotModified to check whether the response
 15199  // error from Do is the result of In-None-Match.
 15200  func (c *DatafeedsListCall) IfNoneMatch(entityTag string) *DatafeedsListCall {
 15201  	c.ifNoneMatch_ = entityTag
 15202  	return c
 15203  }
 15204  
 15205  // Context sets the context to be used in this call's Do method. Any
 15206  // pending HTTP request will be aborted if the provided context is
 15207  // canceled.
 15208  func (c *DatafeedsListCall) Context(ctx context.Context) *DatafeedsListCall {
 15209  	c.ctx_ = ctx
 15210  	return c
 15211  }
 15212  
 15213  // Header returns an http.Header that can be modified by the caller to
 15214  // add HTTP headers to the request.
 15215  func (c *DatafeedsListCall) Header() http.Header {
 15216  	if c.header_ == nil {
 15217  		c.header_ = make(http.Header)
 15218  	}
 15219  	return c.header_
 15220  }
 15221  
 15222  func (c *DatafeedsListCall) doRequest(alt string) (*http.Response, error) {
 15223  	reqHeaders := make(http.Header)
 15224  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 15225  	for k, v := range c.header_ {
 15226  		reqHeaders[k] = v
 15227  	}
 15228  	reqHeaders.Set("User-Agent", c.s.userAgent())
 15229  	if c.ifNoneMatch_ != "" {
 15230  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 15231  	}
 15232  	var body io.Reader = nil
 15233  	c.urlParams_.Set("alt", alt)
 15234  	c.urlParams_.Set("prettyPrint", "false")
 15235  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds")
 15236  	urls += "?" + c.urlParams_.Encode()
 15237  	req, err := http.NewRequest("GET", urls, body)
 15238  	if err != nil {
 15239  		return nil, err
 15240  	}
 15241  	req.Header = reqHeaders
 15242  	googleapi.Expand(req.URL, map[string]string{
 15243  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 15244  	})
 15245  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 15246  }
 15247  
 15248  // Do executes the "content.datafeeds.list" call.
 15249  // Exactly one of *DatafeedsListResponse or error will be non-nil. Any
 15250  // non-2xx status code is an error. Response headers are in either
 15251  // *DatafeedsListResponse.ServerResponse.Header or (if a response was
 15252  // returned at all) in error.(*googleapi.Error).Header. Use
 15253  // googleapi.IsNotModified to check whether the returned error was
 15254  // because http.StatusNotModified was returned.
 15255  func (c *DatafeedsListCall) Do(opts ...googleapi.CallOption) (*DatafeedsListResponse, error) {
 15256  	gensupport.SetOptions(c.urlParams_, opts...)
 15257  	res, err := c.doRequest("json")
 15258  	if res != nil && res.StatusCode == http.StatusNotModified {
 15259  		if res.Body != nil {
 15260  			res.Body.Close()
 15261  		}
 15262  		return nil, &googleapi.Error{
 15263  			Code:   res.StatusCode,
 15264  			Header: res.Header,
 15265  		}
 15266  	}
 15267  	if err != nil {
 15268  		return nil, err
 15269  	}
 15270  	defer googleapi.CloseBody(res)
 15271  	if err := googleapi.CheckResponse(res); err != nil {
 15272  		return nil, err
 15273  	}
 15274  	ret := &DatafeedsListResponse{
 15275  		ServerResponse: googleapi.ServerResponse{
 15276  			Header:         res.Header,
 15277  			HTTPStatusCode: res.StatusCode,
 15278  		},
 15279  	}
 15280  	target := &ret
 15281  	if err := gensupport.DecodeResponse(target, res); err != nil {
 15282  		return nil, err
 15283  	}
 15284  	return ret, nil
 15285  	// {
 15286  	//   "description": "Lists the configurations for datafeeds in your Merchant Center account.",
 15287  	//   "flatPath": "{merchantId}/datafeeds",
 15288  	//   "httpMethod": "GET",
 15289  	//   "id": "content.datafeeds.list",
 15290  	//   "parameterOrder": [
 15291  	//     "merchantId"
 15292  	//   ],
 15293  	//   "parameters": {
 15294  	//     "maxResults": {
 15295  	//       "description": "The maximum number of products to return in the response, used for paging.",
 15296  	//       "format": "uint32",
 15297  	//       "location": "query",
 15298  	//       "type": "integer"
 15299  	//     },
 15300  	//     "merchantId": {
 15301  	//       "description": "The ID of the account that manages the datafeeds. This account cannot be a multi-client account.",
 15302  	//       "format": "uint64",
 15303  	//       "location": "path",
 15304  	//       "required": true,
 15305  	//       "type": "string"
 15306  	//     },
 15307  	//     "pageToken": {
 15308  	//       "description": "The token returned by the previous request.",
 15309  	//       "location": "query",
 15310  	//       "type": "string"
 15311  	//     }
 15312  	//   },
 15313  	//   "path": "{merchantId}/datafeeds",
 15314  	//   "response": {
 15315  	//     "$ref": "DatafeedsListResponse"
 15316  	//   },
 15317  	//   "scopes": [
 15318  	//     "https://www.googleapis.com/auth/content"
 15319  	//   ]
 15320  	// }
 15321  
 15322  }
 15323  
 15324  // Pages invokes f for each page of results.
 15325  // A non-nil error returned from f will halt the iteration.
 15326  // The provided context supersedes any context provided to the Context method.
 15327  func (c *DatafeedsListCall) Pages(ctx context.Context, f func(*DatafeedsListResponse) error) error {
 15328  	c.ctx_ = ctx
 15329  	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
 15330  	for {
 15331  		x, err := c.Do()
 15332  		if err != nil {
 15333  			return err
 15334  		}
 15335  		if err := f(x); err != nil {
 15336  			return err
 15337  		}
 15338  		if x.NextPageToken == "" {
 15339  			return nil
 15340  		}
 15341  		c.PageToken(x.NextPageToken)
 15342  	}
 15343  }
 15344  
 15345  // method id "content.datafeeds.update":
 15346  
 15347  type DatafeedsUpdateCall struct {
 15348  	s          *APIService
 15349  	merchantId uint64
 15350  	datafeedId uint64
 15351  	datafeed   *Datafeed
 15352  	urlParams_ gensupport.URLParams
 15353  	ctx_       context.Context
 15354  	header_    http.Header
 15355  }
 15356  
 15357  // Update: Updates a datafeed configuration of your Merchant Center
 15358  // account. Any fields that are not provided are deleted from the
 15359  // resource.
 15360  //
 15361  //   - datafeedId: The ID of the datafeed.
 15362  //   - merchantId: The ID of the account that manages the datafeed. This
 15363  //     account cannot be a multi-client account.
 15364  func (r *DatafeedsService) Update(merchantId uint64, datafeedId uint64, datafeed *Datafeed) *DatafeedsUpdateCall {
 15365  	c := &DatafeedsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 15366  	c.merchantId = merchantId
 15367  	c.datafeedId = datafeedId
 15368  	c.datafeed = datafeed
 15369  	return c
 15370  }
 15371  
 15372  // DryRun sets the optional parameter "dryRun": Flag to simulate a
 15373  // request like in a live environment. If set to true, dry-run mode
 15374  // checks the validity of the request and returns errors (if any).
 15375  func (c *DatafeedsUpdateCall) DryRun(dryRun bool) *DatafeedsUpdateCall {
 15376  	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
 15377  	return c
 15378  }
 15379  
 15380  // Fields allows partial responses to be retrieved. See
 15381  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 15382  // for more information.
 15383  func (c *DatafeedsUpdateCall) Fields(s ...googleapi.Field) *DatafeedsUpdateCall {
 15384  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 15385  	return c
 15386  }
 15387  
 15388  // Context sets the context to be used in this call's Do method. Any
 15389  // pending HTTP request will be aborted if the provided context is
 15390  // canceled.
 15391  func (c *DatafeedsUpdateCall) Context(ctx context.Context) *DatafeedsUpdateCall {
 15392  	c.ctx_ = ctx
 15393  	return c
 15394  }
 15395  
 15396  // Header returns an http.Header that can be modified by the caller to
 15397  // add HTTP headers to the request.
 15398  func (c *DatafeedsUpdateCall) Header() http.Header {
 15399  	if c.header_ == nil {
 15400  		c.header_ = make(http.Header)
 15401  	}
 15402  	return c.header_
 15403  }
 15404  
 15405  func (c *DatafeedsUpdateCall) doRequest(alt string) (*http.Response, error) {
 15406  	reqHeaders := make(http.Header)
 15407  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 15408  	for k, v := range c.header_ {
 15409  		reqHeaders[k] = v
 15410  	}
 15411  	reqHeaders.Set("User-Agent", c.s.userAgent())
 15412  	var body io.Reader = nil
 15413  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeed)
 15414  	if err != nil {
 15415  		return nil, err
 15416  	}
 15417  	reqHeaders.Set("Content-Type", "application/json")
 15418  	c.urlParams_.Set("alt", alt)
 15419  	c.urlParams_.Set("prettyPrint", "false")
 15420  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeeds/{datafeedId}")
 15421  	urls += "?" + c.urlParams_.Encode()
 15422  	req, err := http.NewRequest("PUT", urls, body)
 15423  	if err != nil {
 15424  		return nil, err
 15425  	}
 15426  	req.Header = reqHeaders
 15427  	googleapi.Expand(req.URL, map[string]string{
 15428  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 15429  		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
 15430  	})
 15431  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 15432  }
 15433  
 15434  // Do executes the "content.datafeeds.update" call.
 15435  // Exactly one of *Datafeed or error will be non-nil. Any non-2xx status
 15436  // code is an error. Response headers are in either
 15437  // *Datafeed.ServerResponse.Header or (if a response was returned at
 15438  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
 15439  // to check whether the returned error was because
 15440  // http.StatusNotModified was returned.
 15441  func (c *DatafeedsUpdateCall) Do(opts ...googleapi.CallOption) (*Datafeed, error) {
 15442  	gensupport.SetOptions(c.urlParams_, opts...)
 15443  	res, err := c.doRequest("json")
 15444  	if res != nil && res.StatusCode == http.StatusNotModified {
 15445  		if res.Body != nil {
 15446  			res.Body.Close()
 15447  		}
 15448  		return nil, &googleapi.Error{
 15449  			Code:   res.StatusCode,
 15450  			Header: res.Header,
 15451  		}
 15452  	}
 15453  	if err != nil {
 15454  		return nil, err
 15455  	}
 15456  	defer googleapi.CloseBody(res)
 15457  	if err := googleapi.CheckResponse(res); err != nil {
 15458  		return nil, err
 15459  	}
 15460  	ret := &Datafeed{
 15461  		ServerResponse: googleapi.ServerResponse{
 15462  			Header:         res.Header,
 15463  			HTTPStatusCode: res.StatusCode,
 15464  		},
 15465  	}
 15466  	target := &ret
 15467  	if err := gensupport.DecodeResponse(target, res); err != nil {
 15468  		return nil, err
 15469  	}
 15470  	return ret, nil
 15471  	// {
 15472  	//   "description": "Updates a datafeed configuration of your Merchant Center account. Any fields that are not provided are deleted from the resource.",
 15473  	//   "flatPath": "{merchantId}/datafeeds/{datafeedId}",
 15474  	//   "httpMethod": "PUT",
 15475  	//   "id": "content.datafeeds.update",
 15476  	//   "parameterOrder": [
 15477  	//     "merchantId",
 15478  	//     "datafeedId"
 15479  	//   ],
 15480  	//   "parameters": {
 15481  	//     "datafeedId": {
 15482  	//       "description": "The ID of the datafeed.",
 15483  	//       "format": "uint64",
 15484  	//       "location": "path",
 15485  	//       "required": true,
 15486  	//       "type": "string"
 15487  	//     },
 15488  	//     "dryRun": {
 15489  	//       "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).",
 15490  	//       "location": "query",
 15491  	//       "type": "boolean"
 15492  	//     },
 15493  	//     "merchantId": {
 15494  	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
 15495  	//       "format": "uint64",
 15496  	//       "location": "path",
 15497  	//       "required": true,
 15498  	//       "type": "string"
 15499  	//     }
 15500  	//   },
 15501  	//   "path": "{merchantId}/datafeeds/{datafeedId}",
 15502  	//   "request": {
 15503  	//     "$ref": "Datafeed"
 15504  	//   },
 15505  	//   "response": {
 15506  	//     "$ref": "Datafeed"
 15507  	//   },
 15508  	//   "scopes": [
 15509  	//     "https://www.googleapis.com/auth/content"
 15510  	//   ]
 15511  	// }
 15512  
 15513  }
 15514  
 15515  // method id "content.datafeedstatuses.custombatch":
 15516  
 15517  type DatafeedstatusesCustombatchCall struct {
 15518  	s                                  *APIService
 15519  	datafeedstatusescustombatchrequest *DatafeedstatusesCustomBatchRequest
 15520  	urlParams_                         gensupport.URLParams
 15521  	ctx_                               context.Context
 15522  	header_                            http.Header
 15523  }
 15524  
 15525  // Custombatch: Gets multiple Merchant Center datafeed statuses in a
 15526  // single request.
 15527  func (r *DatafeedstatusesService) Custombatch(datafeedstatusescustombatchrequest *DatafeedstatusesCustomBatchRequest) *DatafeedstatusesCustombatchCall {
 15528  	c := &DatafeedstatusesCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 15529  	c.datafeedstatusescustombatchrequest = datafeedstatusescustombatchrequest
 15530  	return c
 15531  }
 15532  
 15533  // Fields allows partial responses to be retrieved. See
 15534  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 15535  // for more information.
 15536  func (c *DatafeedstatusesCustombatchCall) Fields(s ...googleapi.Field) *DatafeedstatusesCustombatchCall {
 15537  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 15538  	return c
 15539  }
 15540  
 15541  // Context sets the context to be used in this call's Do method. Any
 15542  // pending HTTP request will be aborted if the provided context is
 15543  // canceled.
 15544  func (c *DatafeedstatusesCustombatchCall) Context(ctx context.Context) *DatafeedstatusesCustombatchCall {
 15545  	c.ctx_ = ctx
 15546  	return c
 15547  }
 15548  
 15549  // Header returns an http.Header that can be modified by the caller to
 15550  // add HTTP headers to the request.
 15551  func (c *DatafeedstatusesCustombatchCall) Header() http.Header {
 15552  	if c.header_ == nil {
 15553  		c.header_ = make(http.Header)
 15554  	}
 15555  	return c.header_
 15556  }
 15557  
 15558  func (c *DatafeedstatusesCustombatchCall) doRequest(alt string) (*http.Response, error) {
 15559  	reqHeaders := make(http.Header)
 15560  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 15561  	for k, v := range c.header_ {
 15562  		reqHeaders[k] = v
 15563  	}
 15564  	reqHeaders.Set("User-Agent", c.s.userAgent())
 15565  	var body io.Reader = nil
 15566  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.datafeedstatusescustombatchrequest)
 15567  	if err != nil {
 15568  		return nil, err
 15569  	}
 15570  	reqHeaders.Set("Content-Type", "application/json")
 15571  	c.urlParams_.Set("alt", alt)
 15572  	c.urlParams_.Set("prettyPrint", "false")
 15573  	urls := googleapi.ResolveRelative(c.s.BasePath, "datafeedstatuses/batch")
 15574  	urls += "?" + c.urlParams_.Encode()
 15575  	req, err := http.NewRequest("POST", urls, body)
 15576  	if err != nil {
 15577  		return nil, err
 15578  	}
 15579  	req.Header = reqHeaders
 15580  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 15581  }
 15582  
 15583  // Do executes the "content.datafeedstatuses.custombatch" call.
 15584  // Exactly one of *DatafeedstatusesCustomBatchResponse or error will be
 15585  // non-nil. Any non-2xx status code is an error. Response headers are in
 15586  // either *DatafeedstatusesCustomBatchResponse.ServerResponse.Header or
 15587  // (if a response was returned at all) in
 15588  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 15589  // whether the returned error was because http.StatusNotModified was
 15590  // returned.
 15591  func (c *DatafeedstatusesCustombatchCall) Do(opts ...googleapi.CallOption) (*DatafeedstatusesCustomBatchResponse, error) {
 15592  	gensupport.SetOptions(c.urlParams_, opts...)
 15593  	res, err := c.doRequest("json")
 15594  	if res != nil && res.StatusCode == http.StatusNotModified {
 15595  		if res.Body != nil {
 15596  			res.Body.Close()
 15597  		}
 15598  		return nil, &googleapi.Error{
 15599  			Code:   res.StatusCode,
 15600  			Header: res.Header,
 15601  		}
 15602  	}
 15603  	if err != nil {
 15604  		return nil, err
 15605  	}
 15606  	defer googleapi.CloseBody(res)
 15607  	if err := googleapi.CheckResponse(res); err != nil {
 15608  		return nil, err
 15609  	}
 15610  	ret := &DatafeedstatusesCustomBatchResponse{
 15611  		ServerResponse: googleapi.ServerResponse{
 15612  			Header:         res.Header,
 15613  			HTTPStatusCode: res.StatusCode,
 15614  		},
 15615  	}
 15616  	target := &ret
 15617  	if err := gensupport.DecodeResponse(target, res); err != nil {
 15618  		return nil, err
 15619  	}
 15620  	return ret, nil
 15621  	// {
 15622  	//   "description": "Gets multiple Merchant Center datafeed statuses in a single request.",
 15623  	//   "flatPath": "datafeedstatuses/batch",
 15624  	//   "httpMethod": "POST",
 15625  	//   "id": "content.datafeedstatuses.custombatch",
 15626  	//   "parameterOrder": [],
 15627  	//   "parameters": {},
 15628  	//   "path": "datafeedstatuses/batch",
 15629  	//   "request": {
 15630  	//     "$ref": "DatafeedstatusesCustomBatchRequest"
 15631  	//   },
 15632  	//   "response": {
 15633  	//     "$ref": "DatafeedstatusesCustomBatchResponse"
 15634  	//   },
 15635  	//   "scopes": [
 15636  	//     "https://www.googleapis.com/auth/content"
 15637  	//   ]
 15638  	// }
 15639  
 15640  }
 15641  
 15642  // method id "content.datafeedstatuses.get":
 15643  
 15644  type DatafeedstatusesGetCall struct {
 15645  	s            *APIService
 15646  	merchantId   uint64
 15647  	datafeedId   uint64
 15648  	urlParams_   gensupport.URLParams
 15649  	ifNoneMatch_ string
 15650  	ctx_         context.Context
 15651  	header_      http.Header
 15652  }
 15653  
 15654  // Get: Retrieves the status of a datafeed from your Merchant Center
 15655  // account.
 15656  //
 15657  //   - datafeedId: The ID of the datafeed.
 15658  //   - merchantId: The ID of the account that manages the datafeed. This
 15659  //     account cannot be a multi-client account.
 15660  func (r *DatafeedstatusesService) Get(merchantId uint64, datafeedId uint64) *DatafeedstatusesGetCall {
 15661  	c := &DatafeedstatusesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 15662  	c.merchantId = merchantId
 15663  	c.datafeedId = datafeedId
 15664  	return c
 15665  }
 15666  
 15667  // Country sets the optional parameter "country": The country for which
 15668  // to get the datafeed status. If this parameter is provided then
 15669  // language must also be provided. Note that this parameter is required
 15670  // for feeds targeting multiple countries and languages, since a feed
 15671  // may have a different status for each target.
 15672  func (c *DatafeedstatusesGetCall) Country(country string) *DatafeedstatusesGetCall {
 15673  	c.urlParams_.Set("country", country)
 15674  	return c
 15675  }
 15676  
 15677  // Language sets the optional parameter "language": The language for
 15678  // which to get the datafeed status. If this parameter is provided then
 15679  // country must also be provided. Note that this parameter is required
 15680  // for feeds targeting multiple countries and languages, since a feed
 15681  // may have a different status for each target.
 15682  func (c *DatafeedstatusesGetCall) Language(language string) *DatafeedstatusesGetCall {
 15683  	c.urlParams_.Set("language", language)
 15684  	return c
 15685  }
 15686  
 15687  // Fields allows partial responses to be retrieved. See
 15688  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 15689  // for more information.
 15690  func (c *DatafeedstatusesGetCall) Fields(s ...googleapi.Field) *DatafeedstatusesGetCall {
 15691  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 15692  	return c
 15693  }
 15694  
 15695  // IfNoneMatch sets the optional parameter which makes the operation
 15696  // fail if the object's ETag matches the given value. This is useful for
 15697  // getting updates only after the object has changed since the last
 15698  // request. Use googleapi.IsNotModified to check whether the response
 15699  // error from Do is the result of In-None-Match.
 15700  func (c *DatafeedstatusesGetCall) IfNoneMatch(entityTag string) *DatafeedstatusesGetCall {
 15701  	c.ifNoneMatch_ = entityTag
 15702  	return c
 15703  }
 15704  
 15705  // Context sets the context to be used in this call's Do method. Any
 15706  // pending HTTP request will be aborted if the provided context is
 15707  // canceled.
 15708  func (c *DatafeedstatusesGetCall) Context(ctx context.Context) *DatafeedstatusesGetCall {
 15709  	c.ctx_ = ctx
 15710  	return c
 15711  }
 15712  
 15713  // Header returns an http.Header that can be modified by the caller to
 15714  // add HTTP headers to the request.
 15715  func (c *DatafeedstatusesGetCall) Header() http.Header {
 15716  	if c.header_ == nil {
 15717  		c.header_ = make(http.Header)
 15718  	}
 15719  	return c.header_
 15720  }
 15721  
 15722  func (c *DatafeedstatusesGetCall) doRequest(alt string) (*http.Response, error) {
 15723  	reqHeaders := make(http.Header)
 15724  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 15725  	for k, v := range c.header_ {
 15726  		reqHeaders[k] = v
 15727  	}
 15728  	reqHeaders.Set("User-Agent", c.s.userAgent())
 15729  	if c.ifNoneMatch_ != "" {
 15730  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 15731  	}
 15732  	var body io.Reader = nil
 15733  	c.urlParams_.Set("alt", alt)
 15734  	c.urlParams_.Set("prettyPrint", "false")
 15735  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeedstatuses/{datafeedId}")
 15736  	urls += "?" + c.urlParams_.Encode()
 15737  	req, err := http.NewRequest("GET", urls, body)
 15738  	if err != nil {
 15739  		return nil, err
 15740  	}
 15741  	req.Header = reqHeaders
 15742  	googleapi.Expand(req.URL, map[string]string{
 15743  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 15744  		"datafeedId": strconv.FormatUint(c.datafeedId, 10),
 15745  	})
 15746  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 15747  }
 15748  
 15749  // Do executes the "content.datafeedstatuses.get" call.
 15750  // Exactly one of *DatafeedStatus or error will be non-nil. Any non-2xx
 15751  // status code is an error. Response headers are in either
 15752  // *DatafeedStatus.ServerResponse.Header or (if a response was returned
 15753  // at all) in error.(*googleapi.Error).Header. Use
 15754  // googleapi.IsNotModified to check whether the returned error was
 15755  // because http.StatusNotModified was returned.
 15756  func (c *DatafeedstatusesGetCall) Do(opts ...googleapi.CallOption) (*DatafeedStatus, error) {
 15757  	gensupport.SetOptions(c.urlParams_, opts...)
 15758  	res, err := c.doRequest("json")
 15759  	if res != nil && res.StatusCode == http.StatusNotModified {
 15760  		if res.Body != nil {
 15761  			res.Body.Close()
 15762  		}
 15763  		return nil, &googleapi.Error{
 15764  			Code:   res.StatusCode,
 15765  			Header: res.Header,
 15766  		}
 15767  	}
 15768  	if err != nil {
 15769  		return nil, err
 15770  	}
 15771  	defer googleapi.CloseBody(res)
 15772  	if err := googleapi.CheckResponse(res); err != nil {
 15773  		return nil, err
 15774  	}
 15775  	ret := &DatafeedStatus{
 15776  		ServerResponse: googleapi.ServerResponse{
 15777  			Header:         res.Header,
 15778  			HTTPStatusCode: res.StatusCode,
 15779  		},
 15780  	}
 15781  	target := &ret
 15782  	if err := gensupport.DecodeResponse(target, res); err != nil {
 15783  		return nil, err
 15784  	}
 15785  	return ret, nil
 15786  	// {
 15787  	//   "description": "Retrieves the status of a datafeed from your Merchant Center account.",
 15788  	//   "flatPath": "{merchantId}/datafeedstatuses/{datafeedId}",
 15789  	//   "httpMethod": "GET",
 15790  	//   "id": "content.datafeedstatuses.get",
 15791  	//   "parameterOrder": [
 15792  	//     "merchantId",
 15793  	//     "datafeedId"
 15794  	//   ],
 15795  	//   "parameters": {
 15796  	//     "country": {
 15797  	//       "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.",
 15798  	//       "location": "query",
 15799  	//       "type": "string"
 15800  	//     },
 15801  	//     "datafeedId": {
 15802  	//       "description": "The ID of the datafeed.",
 15803  	//       "format": "uint64",
 15804  	//       "location": "path",
 15805  	//       "required": true,
 15806  	//       "type": "string"
 15807  	//     },
 15808  	//     "language": {
 15809  	//       "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.",
 15810  	//       "location": "query",
 15811  	//       "type": "string"
 15812  	//     },
 15813  	//     "merchantId": {
 15814  	//       "description": "The ID of the account that manages the datafeed. This account cannot be a multi-client account.",
 15815  	//       "format": "uint64",
 15816  	//       "location": "path",
 15817  	//       "required": true,
 15818  	//       "type": "string"
 15819  	//     }
 15820  	//   },
 15821  	//   "path": "{merchantId}/datafeedstatuses/{datafeedId}",
 15822  	//   "response": {
 15823  	//     "$ref": "DatafeedStatus"
 15824  	//   },
 15825  	//   "scopes": [
 15826  	//     "https://www.googleapis.com/auth/content"
 15827  	//   ]
 15828  	// }
 15829  
 15830  }
 15831  
 15832  // method id "content.datafeedstatuses.list":
 15833  
 15834  type DatafeedstatusesListCall struct {
 15835  	s            *APIService
 15836  	merchantId   uint64
 15837  	urlParams_   gensupport.URLParams
 15838  	ifNoneMatch_ string
 15839  	ctx_         context.Context
 15840  	header_      http.Header
 15841  }
 15842  
 15843  // List: Lists the statuses of the datafeeds in your Merchant Center
 15844  // account.
 15845  //
 15846  //   - merchantId: The ID of the account that manages the datafeeds. This
 15847  //     account cannot be a multi-client account.
 15848  func (r *DatafeedstatusesService) List(merchantId uint64) *DatafeedstatusesListCall {
 15849  	c := &DatafeedstatusesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 15850  	c.merchantId = merchantId
 15851  	return c
 15852  }
 15853  
 15854  // MaxResults sets the optional parameter "maxResults": The maximum
 15855  // number of products to return in the response, used for paging.
 15856  func (c *DatafeedstatusesListCall) MaxResults(maxResults int64) *DatafeedstatusesListCall {
 15857  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 15858  	return c
 15859  }
 15860  
 15861  // PageToken sets the optional parameter "pageToken": The token returned
 15862  // by the previous request.
 15863  func (c *DatafeedstatusesListCall) PageToken(pageToken string) *DatafeedstatusesListCall {
 15864  	c.urlParams_.Set("pageToken", pageToken)
 15865  	return c
 15866  }
 15867  
 15868  // Fields allows partial responses to be retrieved. See
 15869  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 15870  // for more information.
 15871  func (c *DatafeedstatusesListCall) Fields(s ...googleapi.Field) *DatafeedstatusesListCall {
 15872  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 15873  	return c
 15874  }
 15875  
 15876  // IfNoneMatch sets the optional parameter which makes the operation
 15877  // fail if the object's ETag matches the given value. This is useful for
 15878  // getting updates only after the object has changed since the last
 15879  // request. Use googleapi.IsNotModified to check whether the response
 15880  // error from Do is the result of In-None-Match.
 15881  func (c *DatafeedstatusesListCall) IfNoneMatch(entityTag string) *DatafeedstatusesListCall {
 15882  	c.ifNoneMatch_ = entityTag
 15883  	return c
 15884  }
 15885  
 15886  // Context sets the context to be used in this call's Do method. Any
 15887  // pending HTTP request will be aborted if the provided context is
 15888  // canceled.
 15889  func (c *DatafeedstatusesListCall) Context(ctx context.Context) *DatafeedstatusesListCall {
 15890  	c.ctx_ = ctx
 15891  	return c
 15892  }
 15893  
 15894  // Header returns an http.Header that can be modified by the caller to
 15895  // add HTTP headers to the request.
 15896  func (c *DatafeedstatusesListCall) Header() http.Header {
 15897  	if c.header_ == nil {
 15898  		c.header_ = make(http.Header)
 15899  	}
 15900  	return c.header_
 15901  }
 15902  
 15903  func (c *DatafeedstatusesListCall) doRequest(alt string) (*http.Response, error) {
 15904  	reqHeaders := make(http.Header)
 15905  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 15906  	for k, v := range c.header_ {
 15907  		reqHeaders[k] = v
 15908  	}
 15909  	reqHeaders.Set("User-Agent", c.s.userAgent())
 15910  	if c.ifNoneMatch_ != "" {
 15911  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 15912  	}
 15913  	var body io.Reader = nil
 15914  	c.urlParams_.Set("alt", alt)
 15915  	c.urlParams_.Set("prettyPrint", "false")
 15916  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/datafeedstatuses")
 15917  	urls += "?" + c.urlParams_.Encode()
 15918  	req, err := http.NewRequest("GET", urls, body)
 15919  	if err != nil {
 15920  		return nil, err
 15921  	}
 15922  	req.Header = reqHeaders
 15923  	googleapi.Expand(req.URL, map[string]string{
 15924  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 15925  	})
 15926  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 15927  }
 15928  
 15929  // Do executes the "content.datafeedstatuses.list" call.
 15930  // Exactly one of *DatafeedstatusesListResponse or error will be
 15931  // non-nil. Any non-2xx status code is an error. Response headers are in
 15932  // either *DatafeedstatusesListResponse.ServerResponse.Header or (if a
 15933  // response was returned at all) in error.(*googleapi.Error).Header. Use
 15934  // googleapi.IsNotModified to check whether the returned error was
 15935  // because http.StatusNotModified was returned.
 15936  func (c *DatafeedstatusesListCall) Do(opts ...googleapi.CallOption) (*DatafeedstatusesListResponse, error) {
 15937  	gensupport.SetOptions(c.urlParams_, opts...)
 15938  	res, err := c.doRequest("json")
 15939  	if res != nil && res.StatusCode == http.StatusNotModified {
 15940  		if res.Body != nil {
 15941  			res.Body.Close()
 15942  		}
 15943  		return nil, &googleapi.Error{
 15944  			Code:   res.StatusCode,
 15945  			Header: res.Header,
 15946  		}
 15947  	}
 15948  	if err != nil {
 15949  		return nil, err
 15950  	}
 15951  	defer googleapi.CloseBody(res)
 15952  	if err := googleapi.CheckResponse(res); err != nil {
 15953  		return nil, err
 15954  	}
 15955  	ret := &DatafeedstatusesListResponse{
 15956  		ServerResponse: googleapi.ServerResponse{
 15957  			Header:         res.Header,
 15958  			HTTPStatusCode: res.StatusCode,
 15959  		},
 15960  	}
 15961  	target := &ret
 15962  	if err := gensupport.DecodeResponse(target, res); err != nil {
 15963  		return nil, err
 15964  	}
 15965  	return ret, nil
 15966  	// {
 15967  	//   "description": "Lists the statuses of the datafeeds in your Merchant Center account.",
 15968  	//   "flatPath": "{merchantId}/datafeedstatuses",
 15969  	//   "httpMethod": "GET",
 15970  	//   "id": "content.datafeedstatuses.list",
 15971  	//   "parameterOrder": [
 15972  	//     "merchantId"
 15973  	//   ],
 15974  	//   "parameters": {
 15975  	//     "maxResults": {
 15976  	//       "description": "The maximum number of products to return in the response, used for paging.",
 15977  	//       "format": "uint32",
 15978  	//       "location": "query",
 15979  	//       "type": "integer"
 15980  	//     },
 15981  	//     "merchantId": {
 15982  	//       "description": "The ID of the account that manages the datafeeds. This account cannot be a multi-client account.",
 15983  	//       "format": "uint64",
 15984  	//       "location": "path",
 15985  	//       "required": true,
 15986  	//       "type": "string"
 15987  	//     },
 15988  	//     "pageToken": {
 15989  	//       "description": "The token returned by the previous request.",
 15990  	//       "location": "query",
 15991  	//       "type": "string"
 15992  	//     }
 15993  	//   },
 15994  	//   "path": "{merchantId}/datafeedstatuses",
 15995  	//   "response": {
 15996  	//     "$ref": "DatafeedstatusesListResponse"
 15997  	//   },
 15998  	//   "scopes": [
 15999  	//     "https://www.googleapis.com/auth/content"
 16000  	//   ]
 16001  	// }
 16002  
 16003  }
 16004  
 16005  // Pages invokes f for each page of results.
 16006  // A non-nil error returned from f will halt the iteration.
 16007  // The provided context supersedes any context provided to the Context method.
 16008  func (c *DatafeedstatusesListCall) Pages(ctx context.Context, f func(*DatafeedstatusesListResponse) error) error {
 16009  	c.ctx_ = ctx
 16010  	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
 16011  	for {
 16012  		x, err := c.Do()
 16013  		if err != nil {
 16014  			return err
 16015  		}
 16016  		if err := f(x); err != nil {
 16017  			return err
 16018  		}
 16019  		if x.NextPageToken == "" {
 16020  			return nil
 16021  		}
 16022  		c.PageToken(x.NextPageToken)
 16023  	}
 16024  }
 16025  
 16026  // method id "content.liasettings.custombatch":
 16027  
 16028  type LiasettingsCustombatchCall struct {
 16029  	s                             *APIService
 16030  	liasettingscustombatchrequest *LiasettingsCustomBatchRequest
 16031  	urlParams_                    gensupport.URLParams
 16032  	ctx_                          context.Context
 16033  	header_                       http.Header
 16034  }
 16035  
 16036  // Custombatch: Retrieves and/or updates the LIA settings of multiple
 16037  // accounts in a single request.
 16038  func (r *LiasettingsService) Custombatch(liasettingscustombatchrequest *LiasettingsCustomBatchRequest) *LiasettingsCustombatchCall {
 16039  	c := &LiasettingsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 16040  	c.liasettingscustombatchrequest = liasettingscustombatchrequest
 16041  	return c
 16042  }
 16043  
 16044  // DryRun sets the optional parameter "dryRun": Flag to simulate a
 16045  // request like in a live environment. If set to true, dry-run mode
 16046  // checks the validity of the request and returns errors (if any).
 16047  func (c *LiasettingsCustombatchCall) DryRun(dryRun bool) *LiasettingsCustombatchCall {
 16048  	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
 16049  	return c
 16050  }
 16051  
 16052  // Fields allows partial responses to be retrieved. See
 16053  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 16054  // for more information.
 16055  func (c *LiasettingsCustombatchCall) Fields(s ...googleapi.Field) *LiasettingsCustombatchCall {
 16056  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 16057  	return c
 16058  }
 16059  
 16060  // Context sets the context to be used in this call's Do method. Any
 16061  // pending HTTP request will be aborted if the provided context is
 16062  // canceled.
 16063  func (c *LiasettingsCustombatchCall) Context(ctx context.Context) *LiasettingsCustombatchCall {
 16064  	c.ctx_ = ctx
 16065  	return c
 16066  }
 16067  
 16068  // Header returns an http.Header that can be modified by the caller to
 16069  // add HTTP headers to the request.
 16070  func (c *LiasettingsCustombatchCall) Header() http.Header {
 16071  	if c.header_ == nil {
 16072  		c.header_ = make(http.Header)
 16073  	}
 16074  	return c.header_
 16075  }
 16076  
 16077  func (c *LiasettingsCustombatchCall) doRequest(alt string) (*http.Response, error) {
 16078  	reqHeaders := make(http.Header)
 16079  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 16080  	for k, v := range c.header_ {
 16081  		reqHeaders[k] = v
 16082  	}
 16083  	reqHeaders.Set("User-Agent", c.s.userAgent())
 16084  	var body io.Reader = nil
 16085  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.liasettingscustombatchrequest)
 16086  	if err != nil {
 16087  		return nil, err
 16088  	}
 16089  	reqHeaders.Set("Content-Type", "application/json")
 16090  	c.urlParams_.Set("alt", alt)
 16091  	c.urlParams_.Set("prettyPrint", "false")
 16092  	urls := googleapi.ResolveRelative(c.s.BasePath, "liasettings/batch")
 16093  	urls += "?" + c.urlParams_.Encode()
 16094  	req, err := http.NewRequest("POST", urls, body)
 16095  	if err != nil {
 16096  		return nil, err
 16097  	}
 16098  	req.Header = reqHeaders
 16099  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 16100  }
 16101  
 16102  // Do executes the "content.liasettings.custombatch" call.
 16103  // Exactly one of *LiasettingsCustomBatchResponse or error will be
 16104  // non-nil. Any non-2xx status code is an error. Response headers are in
 16105  // either *LiasettingsCustomBatchResponse.ServerResponse.Header or (if a
 16106  // response was returned at all) in error.(*googleapi.Error).Header. Use
 16107  // googleapi.IsNotModified to check whether the returned error was
 16108  // because http.StatusNotModified was returned.
 16109  func (c *LiasettingsCustombatchCall) Do(opts ...googleapi.CallOption) (*LiasettingsCustomBatchResponse, error) {
 16110  	gensupport.SetOptions(c.urlParams_, opts...)
 16111  	res, err := c.doRequest("json")
 16112  	if res != nil && res.StatusCode == http.StatusNotModified {
 16113  		if res.Body != nil {
 16114  			res.Body.Close()
 16115  		}
 16116  		return nil, &googleapi.Error{
 16117  			Code:   res.StatusCode,
 16118  			Header: res.Header,
 16119  		}
 16120  	}
 16121  	if err != nil {
 16122  		return nil, err
 16123  	}
 16124  	defer googleapi.CloseBody(res)
 16125  	if err := googleapi.CheckResponse(res); err != nil {
 16126  		return nil, err
 16127  	}
 16128  	ret := &LiasettingsCustomBatchResponse{
 16129  		ServerResponse: googleapi.ServerResponse{
 16130  			Header:         res.Header,
 16131  			HTTPStatusCode: res.StatusCode,
 16132  		},
 16133  	}
 16134  	target := &ret
 16135  	if err := gensupport.DecodeResponse(target, res); err != nil {
 16136  		return nil, err
 16137  	}
 16138  	return ret, nil
 16139  	// {
 16140  	//   "description": "Retrieves and/or updates the LIA settings of multiple accounts in a single request.",
 16141  	//   "flatPath": "liasettings/batch",
 16142  	//   "httpMethod": "POST",
 16143  	//   "id": "content.liasettings.custombatch",
 16144  	//   "parameterOrder": [],
 16145  	//   "parameters": {
 16146  	//     "dryRun": {
 16147  	//       "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).",
 16148  	//       "location": "query",
 16149  	//       "type": "boolean"
 16150  	//     }
 16151  	//   },
 16152  	//   "path": "liasettings/batch",
 16153  	//   "request": {
 16154  	//     "$ref": "LiasettingsCustomBatchRequest"
 16155  	//   },
 16156  	//   "response": {
 16157  	//     "$ref": "LiasettingsCustomBatchResponse"
 16158  	//   },
 16159  	//   "scopes": [
 16160  	//     "https://www.googleapis.com/auth/content"
 16161  	//   ]
 16162  	// }
 16163  
 16164  }
 16165  
 16166  // method id "content.liasettings.get":
 16167  
 16168  type LiasettingsGetCall struct {
 16169  	s            *APIService
 16170  	merchantId   uint64
 16171  	accountId    uint64
 16172  	urlParams_   gensupport.URLParams
 16173  	ifNoneMatch_ string
 16174  	ctx_         context.Context
 16175  	header_      http.Header
 16176  }
 16177  
 16178  // Get: Retrieves the LIA settings of the account.
 16179  //
 16180  //   - accountId: The ID of the account for which to get or update LIA
 16181  //     settings.
 16182  //   - merchantId: The ID of the managing account. If this parameter is
 16183  //     not the same as accountId, then this account must be a multi-client
 16184  //     account and `accountId` must be the ID of a sub-account of this
 16185  //     account.
 16186  func (r *LiasettingsService) Get(merchantId uint64, accountId uint64) *LiasettingsGetCall {
 16187  	c := &LiasettingsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 16188  	c.merchantId = merchantId
 16189  	c.accountId = accountId
 16190  	return c
 16191  }
 16192  
 16193  // Fields allows partial responses to be retrieved. See
 16194  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 16195  // for more information.
 16196  func (c *LiasettingsGetCall) Fields(s ...googleapi.Field) *LiasettingsGetCall {
 16197  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 16198  	return c
 16199  }
 16200  
 16201  // IfNoneMatch sets the optional parameter which makes the operation
 16202  // fail if the object's ETag matches the given value. This is useful for
 16203  // getting updates only after the object has changed since the last
 16204  // request. Use googleapi.IsNotModified to check whether the response
 16205  // error from Do is the result of In-None-Match.
 16206  func (c *LiasettingsGetCall) IfNoneMatch(entityTag string) *LiasettingsGetCall {
 16207  	c.ifNoneMatch_ = entityTag
 16208  	return c
 16209  }
 16210  
 16211  // Context sets the context to be used in this call's Do method. Any
 16212  // pending HTTP request will be aborted if the provided context is
 16213  // canceled.
 16214  func (c *LiasettingsGetCall) Context(ctx context.Context) *LiasettingsGetCall {
 16215  	c.ctx_ = ctx
 16216  	return c
 16217  }
 16218  
 16219  // Header returns an http.Header that can be modified by the caller to
 16220  // add HTTP headers to the request.
 16221  func (c *LiasettingsGetCall) Header() http.Header {
 16222  	if c.header_ == nil {
 16223  		c.header_ = make(http.Header)
 16224  	}
 16225  	return c.header_
 16226  }
 16227  
 16228  func (c *LiasettingsGetCall) doRequest(alt string) (*http.Response, error) {
 16229  	reqHeaders := make(http.Header)
 16230  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 16231  	for k, v := range c.header_ {
 16232  		reqHeaders[k] = v
 16233  	}
 16234  	reqHeaders.Set("User-Agent", c.s.userAgent())
 16235  	if c.ifNoneMatch_ != "" {
 16236  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 16237  	}
 16238  	var body io.Reader = nil
 16239  	c.urlParams_.Set("alt", alt)
 16240  	c.urlParams_.Set("prettyPrint", "false")
 16241  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}")
 16242  	urls += "?" + c.urlParams_.Encode()
 16243  	req, err := http.NewRequest("GET", urls, body)
 16244  	if err != nil {
 16245  		return nil, err
 16246  	}
 16247  	req.Header = reqHeaders
 16248  	googleapi.Expand(req.URL, map[string]string{
 16249  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 16250  		"accountId":  strconv.FormatUint(c.accountId, 10),
 16251  	})
 16252  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 16253  }
 16254  
 16255  // Do executes the "content.liasettings.get" call.
 16256  // Exactly one of *LiaSettings or error will be non-nil. Any non-2xx
 16257  // status code is an error. Response headers are in either
 16258  // *LiaSettings.ServerResponse.Header or (if a response was returned at
 16259  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
 16260  // to check whether the returned error was because
 16261  // http.StatusNotModified was returned.
 16262  func (c *LiasettingsGetCall) Do(opts ...googleapi.CallOption) (*LiaSettings, error) {
 16263  	gensupport.SetOptions(c.urlParams_, opts...)
 16264  	res, err := c.doRequest("json")
 16265  	if res != nil && res.StatusCode == http.StatusNotModified {
 16266  		if res.Body != nil {
 16267  			res.Body.Close()
 16268  		}
 16269  		return nil, &googleapi.Error{
 16270  			Code:   res.StatusCode,
 16271  			Header: res.Header,
 16272  		}
 16273  	}
 16274  	if err != nil {
 16275  		return nil, err
 16276  	}
 16277  	defer googleapi.CloseBody(res)
 16278  	if err := googleapi.CheckResponse(res); err != nil {
 16279  		return nil, err
 16280  	}
 16281  	ret := &LiaSettings{
 16282  		ServerResponse: googleapi.ServerResponse{
 16283  			Header:         res.Header,
 16284  			HTTPStatusCode: res.StatusCode,
 16285  		},
 16286  	}
 16287  	target := &ret
 16288  	if err := gensupport.DecodeResponse(target, res); err != nil {
 16289  		return nil, err
 16290  	}
 16291  	return ret, nil
 16292  	// {
 16293  	//   "description": "Retrieves the LIA settings of the account.",
 16294  	//   "flatPath": "{merchantId}/liasettings/{accountId}",
 16295  	//   "httpMethod": "GET",
 16296  	//   "id": "content.liasettings.get",
 16297  	//   "parameterOrder": [
 16298  	//     "merchantId",
 16299  	//     "accountId"
 16300  	//   ],
 16301  	//   "parameters": {
 16302  	//     "accountId": {
 16303  	//       "description": "The ID of the account for which to get or update LIA settings.",
 16304  	//       "format": "uint64",
 16305  	//       "location": "path",
 16306  	//       "required": true,
 16307  	//       "type": "string"
 16308  	//     },
 16309  	//     "merchantId": {
 16310  	//       "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.",
 16311  	//       "format": "uint64",
 16312  	//       "location": "path",
 16313  	//       "required": true,
 16314  	//       "type": "string"
 16315  	//     }
 16316  	//   },
 16317  	//   "path": "{merchantId}/liasettings/{accountId}",
 16318  	//   "response": {
 16319  	//     "$ref": "LiaSettings"
 16320  	//   },
 16321  	//   "scopes": [
 16322  	//     "https://www.googleapis.com/auth/content"
 16323  	//   ]
 16324  	// }
 16325  
 16326  }
 16327  
 16328  // method id "content.liasettings.getaccessiblegmbaccounts":
 16329  
 16330  type LiasettingsGetaccessiblegmbaccountsCall struct {
 16331  	s            *APIService
 16332  	merchantId   uint64
 16333  	accountId    uint64
 16334  	urlParams_   gensupport.URLParams
 16335  	ifNoneMatch_ string
 16336  	ctx_         context.Context
 16337  	header_      http.Header
 16338  }
 16339  
 16340  // Getaccessiblegmbaccounts: Retrieves the list of accessible Google My
 16341  // Business accounts.
 16342  //
 16343  //   - accountId: The ID of the account for which to retrieve accessible
 16344  //     Google My Business accounts.
 16345  //   - merchantId: The ID of the managing account. If this parameter is
 16346  //     not the same as accountId, then this account must be a multi-client
 16347  //     account and `accountId` must be the ID of a sub-account of this
 16348  //     account.
 16349  func (r *LiasettingsService) Getaccessiblegmbaccounts(merchantId uint64, accountId uint64) *LiasettingsGetaccessiblegmbaccountsCall {
 16350  	c := &LiasettingsGetaccessiblegmbaccountsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 16351  	c.merchantId = merchantId
 16352  	c.accountId = accountId
 16353  	return c
 16354  }
 16355  
 16356  // Fields allows partial responses to be retrieved. See
 16357  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 16358  // for more information.
 16359  func (c *LiasettingsGetaccessiblegmbaccountsCall) Fields(s ...googleapi.Field) *LiasettingsGetaccessiblegmbaccountsCall {
 16360  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 16361  	return c
 16362  }
 16363  
 16364  // IfNoneMatch sets the optional parameter which makes the operation
 16365  // fail if the object's ETag matches the given value. This is useful for
 16366  // getting updates only after the object has changed since the last
 16367  // request. Use googleapi.IsNotModified to check whether the response
 16368  // error from Do is the result of In-None-Match.
 16369  func (c *LiasettingsGetaccessiblegmbaccountsCall) IfNoneMatch(entityTag string) *LiasettingsGetaccessiblegmbaccountsCall {
 16370  	c.ifNoneMatch_ = entityTag
 16371  	return c
 16372  }
 16373  
 16374  // Context sets the context to be used in this call's Do method. Any
 16375  // pending HTTP request will be aborted if the provided context is
 16376  // canceled.
 16377  func (c *LiasettingsGetaccessiblegmbaccountsCall) Context(ctx context.Context) *LiasettingsGetaccessiblegmbaccountsCall {
 16378  	c.ctx_ = ctx
 16379  	return c
 16380  }
 16381  
 16382  // Header returns an http.Header that can be modified by the caller to
 16383  // add HTTP headers to the request.
 16384  func (c *LiasettingsGetaccessiblegmbaccountsCall) Header() http.Header {
 16385  	if c.header_ == nil {
 16386  		c.header_ = make(http.Header)
 16387  	}
 16388  	return c.header_
 16389  }
 16390  
 16391  func (c *LiasettingsGetaccessiblegmbaccountsCall) doRequest(alt string) (*http.Response, error) {
 16392  	reqHeaders := make(http.Header)
 16393  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 16394  	for k, v := range c.header_ {
 16395  		reqHeaders[k] = v
 16396  	}
 16397  	reqHeaders.Set("User-Agent", c.s.userAgent())
 16398  	if c.ifNoneMatch_ != "" {
 16399  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 16400  	}
 16401  	var body io.Reader = nil
 16402  	c.urlParams_.Set("alt", alt)
 16403  	c.urlParams_.Set("prettyPrint", "false")
 16404  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/accessiblegmbaccounts")
 16405  	urls += "?" + c.urlParams_.Encode()
 16406  	req, err := http.NewRequest("GET", urls, body)
 16407  	if err != nil {
 16408  		return nil, err
 16409  	}
 16410  	req.Header = reqHeaders
 16411  	googleapi.Expand(req.URL, map[string]string{
 16412  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 16413  		"accountId":  strconv.FormatUint(c.accountId, 10),
 16414  	})
 16415  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 16416  }
 16417  
 16418  // Do executes the "content.liasettings.getaccessiblegmbaccounts" call.
 16419  // Exactly one of *LiasettingsGetAccessibleGmbAccountsResponse or error
 16420  // will be non-nil. Any non-2xx status code is an error. Response
 16421  // headers are in either
 16422  // *LiasettingsGetAccessibleGmbAccountsResponse.ServerResponse.Header or
 16423  // (if a response was returned at all) in
 16424  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 16425  // whether the returned error was because http.StatusNotModified was
 16426  // returned.
 16427  func (c *LiasettingsGetaccessiblegmbaccountsCall) Do(opts ...googleapi.CallOption) (*LiasettingsGetAccessibleGmbAccountsResponse, error) {
 16428  	gensupport.SetOptions(c.urlParams_, opts...)
 16429  	res, err := c.doRequest("json")
 16430  	if res != nil && res.StatusCode == http.StatusNotModified {
 16431  		if res.Body != nil {
 16432  			res.Body.Close()
 16433  		}
 16434  		return nil, &googleapi.Error{
 16435  			Code:   res.StatusCode,
 16436  			Header: res.Header,
 16437  		}
 16438  	}
 16439  	if err != nil {
 16440  		return nil, err
 16441  	}
 16442  	defer googleapi.CloseBody(res)
 16443  	if err := googleapi.CheckResponse(res); err != nil {
 16444  		return nil, err
 16445  	}
 16446  	ret := &LiasettingsGetAccessibleGmbAccountsResponse{
 16447  		ServerResponse: googleapi.ServerResponse{
 16448  			Header:         res.Header,
 16449  			HTTPStatusCode: res.StatusCode,
 16450  		},
 16451  	}
 16452  	target := &ret
 16453  	if err := gensupport.DecodeResponse(target, res); err != nil {
 16454  		return nil, err
 16455  	}
 16456  	return ret, nil
 16457  	// {
 16458  	//   "description": "Retrieves the list of accessible Google My Business accounts.",
 16459  	//   "flatPath": "{merchantId}/liasettings/{accountId}/accessiblegmbaccounts",
 16460  	//   "httpMethod": "GET",
 16461  	//   "id": "content.liasettings.getaccessiblegmbaccounts",
 16462  	//   "parameterOrder": [
 16463  	//     "merchantId",
 16464  	//     "accountId"
 16465  	//   ],
 16466  	//   "parameters": {
 16467  	//     "accountId": {
 16468  	//       "description": "The ID of the account for which to retrieve accessible Google My Business accounts.",
 16469  	//       "format": "uint64",
 16470  	//       "location": "path",
 16471  	//       "required": true,
 16472  	//       "type": "string"
 16473  	//     },
 16474  	//     "merchantId": {
 16475  	//       "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.",
 16476  	//       "format": "uint64",
 16477  	//       "location": "path",
 16478  	//       "required": true,
 16479  	//       "type": "string"
 16480  	//     }
 16481  	//   },
 16482  	//   "path": "{merchantId}/liasettings/{accountId}/accessiblegmbaccounts",
 16483  	//   "response": {
 16484  	//     "$ref": "LiasettingsGetAccessibleGmbAccountsResponse"
 16485  	//   },
 16486  	//   "scopes": [
 16487  	//     "https://www.googleapis.com/auth/content"
 16488  	//   ]
 16489  	// }
 16490  
 16491  }
 16492  
 16493  // method id "content.liasettings.list":
 16494  
 16495  type LiasettingsListCall struct {
 16496  	s            *APIService
 16497  	merchantId   uint64
 16498  	urlParams_   gensupport.URLParams
 16499  	ifNoneMatch_ string
 16500  	ctx_         context.Context
 16501  	header_      http.Header
 16502  }
 16503  
 16504  // List: Lists the LIA settings of the sub-accounts in your Merchant
 16505  // Center account.
 16506  //
 16507  //   - merchantId: The ID of the managing account. This must be a
 16508  //     multi-client account.
 16509  func (r *LiasettingsService) List(merchantId uint64) *LiasettingsListCall {
 16510  	c := &LiasettingsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 16511  	c.merchantId = merchantId
 16512  	return c
 16513  }
 16514  
 16515  // MaxResults sets the optional parameter "maxResults": The maximum
 16516  // number of LIA settings to return in the response, used for paging.
 16517  func (c *LiasettingsListCall) MaxResults(maxResults int64) *LiasettingsListCall {
 16518  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 16519  	return c
 16520  }
 16521  
 16522  // PageToken sets the optional parameter "pageToken": The token returned
 16523  // by the previous request.
 16524  func (c *LiasettingsListCall) PageToken(pageToken string) *LiasettingsListCall {
 16525  	c.urlParams_.Set("pageToken", pageToken)
 16526  	return c
 16527  }
 16528  
 16529  // Fields allows partial responses to be retrieved. See
 16530  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 16531  // for more information.
 16532  func (c *LiasettingsListCall) Fields(s ...googleapi.Field) *LiasettingsListCall {
 16533  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 16534  	return c
 16535  }
 16536  
 16537  // IfNoneMatch sets the optional parameter which makes the operation
 16538  // fail if the object's ETag matches the given value. This is useful for
 16539  // getting updates only after the object has changed since the last
 16540  // request. Use googleapi.IsNotModified to check whether the response
 16541  // error from Do is the result of In-None-Match.
 16542  func (c *LiasettingsListCall) IfNoneMatch(entityTag string) *LiasettingsListCall {
 16543  	c.ifNoneMatch_ = entityTag
 16544  	return c
 16545  }
 16546  
 16547  // Context sets the context to be used in this call's Do method. Any
 16548  // pending HTTP request will be aborted if the provided context is
 16549  // canceled.
 16550  func (c *LiasettingsListCall) Context(ctx context.Context) *LiasettingsListCall {
 16551  	c.ctx_ = ctx
 16552  	return c
 16553  }
 16554  
 16555  // Header returns an http.Header that can be modified by the caller to
 16556  // add HTTP headers to the request.
 16557  func (c *LiasettingsListCall) Header() http.Header {
 16558  	if c.header_ == nil {
 16559  		c.header_ = make(http.Header)
 16560  	}
 16561  	return c.header_
 16562  }
 16563  
 16564  func (c *LiasettingsListCall) doRequest(alt string) (*http.Response, error) {
 16565  	reqHeaders := make(http.Header)
 16566  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 16567  	for k, v := range c.header_ {
 16568  		reqHeaders[k] = v
 16569  	}
 16570  	reqHeaders.Set("User-Agent", c.s.userAgent())
 16571  	if c.ifNoneMatch_ != "" {
 16572  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 16573  	}
 16574  	var body io.Reader = nil
 16575  	c.urlParams_.Set("alt", alt)
 16576  	c.urlParams_.Set("prettyPrint", "false")
 16577  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings")
 16578  	urls += "?" + c.urlParams_.Encode()
 16579  	req, err := http.NewRequest("GET", urls, body)
 16580  	if err != nil {
 16581  		return nil, err
 16582  	}
 16583  	req.Header = reqHeaders
 16584  	googleapi.Expand(req.URL, map[string]string{
 16585  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 16586  	})
 16587  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 16588  }
 16589  
 16590  // Do executes the "content.liasettings.list" call.
 16591  // Exactly one of *LiasettingsListResponse or error will be non-nil. Any
 16592  // non-2xx status code is an error. Response headers are in either
 16593  // *LiasettingsListResponse.ServerResponse.Header or (if a response was
 16594  // returned at all) in error.(*googleapi.Error).Header. Use
 16595  // googleapi.IsNotModified to check whether the returned error was
 16596  // because http.StatusNotModified was returned.
 16597  func (c *LiasettingsListCall) Do(opts ...googleapi.CallOption) (*LiasettingsListResponse, error) {
 16598  	gensupport.SetOptions(c.urlParams_, opts...)
 16599  	res, err := c.doRequest("json")
 16600  	if res != nil && res.StatusCode == http.StatusNotModified {
 16601  		if res.Body != nil {
 16602  			res.Body.Close()
 16603  		}
 16604  		return nil, &googleapi.Error{
 16605  			Code:   res.StatusCode,
 16606  			Header: res.Header,
 16607  		}
 16608  	}
 16609  	if err != nil {
 16610  		return nil, err
 16611  	}
 16612  	defer googleapi.CloseBody(res)
 16613  	if err := googleapi.CheckResponse(res); err != nil {
 16614  		return nil, err
 16615  	}
 16616  	ret := &LiasettingsListResponse{
 16617  		ServerResponse: googleapi.ServerResponse{
 16618  			Header:         res.Header,
 16619  			HTTPStatusCode: res.StatusCode,
 16620  		},
 16621  	}
 16622  	target := &ret
 16623  	if err := gensupport.DecodeResponse(target, res); err != nil {
 16624  		return nil, err
 16625  	}
 16626  	return ret, nil
 16627  	// {
 16628  	//   "description": "Lists the LIA settings of the sub-accounts in your Merchant Center account.",
 16629  	//   "flatPath": "{merchantId}/liasettings",
 16630  	//   "httpMethod": "GET",
 16631  	//   "id": "content.liasettings.list",
 16632  	//   "parameterOrder": [
 16633  	//     "merchantId"
 16634  	//   ],
 16635  	//   "parameters": {
 16636  	//     "maxResults": {
 16637  	//       "description": "The maximum number of LIA settings to return in the response, used for paging.",
 16638  	//       "format": "uint32",
 16639  	//       "location": "query",
 16640  	//       "type": "integer"
 16641  	//     },
 16642  	//     "merchantId": {
 16643  	//       "description": "The ID of the managing account. This must be a multi-client account.",
 16644  	//       "format": "uint64",
 16645  	//       "location": "path",
 16646  	//       "required": true,
 16647  	//       "type": "string"
 16648  	//     },
 16649  	//     "pageToken": {
 16650  	//       "description": "The token returned by the previous request.",
 16651  	//       "location": "query",
 16652  	//       "type": "string"
 16653  	//     }
 16654  	//   },
 16655  	//   "path": "{merchantId}/liasettings",
 16656  	//   "response": {
 16657  	//     "$ref": "LiasettingsListResponse"
 16658  	//   },
 16659  	//   "scopes": [
 16660  	//     "https://www.googleapis.com/auth/content"
 16661  	//   ]
 16662  	// }
 16663  
 16664  }
 16665  
 16666  // Pages invokes f for each page of results.
 16667  // A non-nil error returned from f will halt the iteration.
 16668  // The provided context supersedes any context provided to the Context method.
 16669  func (c *LiasettingsListCall) Pages(ctx context.Context, f func(*LiasettingsListResponse) error) error {
 16670  	c.ctx_ = ctx
 16671  	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
 16672  	for {
 16673  		x, err := c.Do()
 16674  		if err != nil {
 16675  			return err
 16676  		}
 16677  		if err := f(x); err != nil {
 16678  			return err
 16679  		}
 16680  		if x.NextPageToken == "" {
 16681  			return nil
 16682  		}
 16683  		c.PageToken(x.NextPageToken)
 16684  	}
 16685  }
 16686  
 16687  // method id "content.liasettings.listposdataproviders":
 16688  
 16689  type LiasettingsListposdataprovidersCall struct {
 16690  	s            *APIService
 16691  	urlParams_   gensupport.URLParams
 16692  	ifNoneMatch_ string
 16693  	ctx_         context.Context
 16694  	header_      http.Header
 16695  }
 16696  
 16697  // Listposdataproviders: Retrieves the list of POS data providers that
 16698  // have active settings for the all eiligible countries.
 16699  func (r *LiasettingsService) Listposdataproviders() *LiasettingsListposdataprovidersCall {
 16700  	c := &LiasettingsListposdataprovidersCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 16701  	return c
 16702  }
 16703  
 16704  // Fields allows partial responses to be retrieved. See
 16705  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 16706  // for more information.
 16707  func (c *LiasettingsListposdataprovidersCall) Fields(s ...googleapi.Field) *LiasettingsListposdataprovidersCall {
 16708  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 16709  	return c
 16710  }
 16711  
 16712  // IfNoneMatch sets the optional parameter which makes the operation
 16713  // fail if the object's ETag matches the given value. This is useful for
 16714  // getting updates only after the object has changed since the last
 16715  // request. Use googleapi.IsNotModified to check whether the response
 16716  // error from Do is the result of In-None-Match.
 16717  func (c *LiasettingsListposdataprovidersCall) IfNoneMatch(entityTag string) *LiasettingsListposdataprovidersCall {
 16718  	c.ifNoneMatch_ = entityTag
 16719  	return c
 16720  }
 16721  
 16722  // Context sets the context to be used in this call's Do method. Any
 16723  // pending HTTP request will be aborted if the provided context is
 16724  // canceled.
 16725  func (c *LiasettingsListposdataprovidersCall) Context(ctx context.Context) *LiasettingsListposdataprovidersCall {
 16726  	c.ctx_ = ctx
 16727  	return c
 16728  }
 16729  
 16730  // Header returns an http.Header that can be modified by the caller to
 16731  // add HTTP headers to the request.
 16732  func (c *LiasettingsListposdataprovidersCall) Header() http.Header {
 16733  	if c.header_ == nil {
 16734  		c.header_ = make(http.Header)
 16735  	}
 16736  	return c.header_
 16737  }
 16738  
 16739  func (c *LiasettingsListposdataprovidersCall) doRequest(alt string) (*http.Response, error) {
 16740  	reqHeaders := make(http.Header)
 16741  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 16742  	for k, v := range c.header_ {
 16743  		reqHeaders[k] = v
 16744  	}
 16745  	reqHeaders.Set("User-Agent", c.s.userAgent())
 16746  	if c.ifNoneMatch_ != "" {
 16747  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 16748  	}
 16749  	var body io.Reader = nil
 16750  	c.urlParams_.Set("alt", alt)
 16751  	c.urlParams_.Set("prettyPrint", "false")
 16752  	urls := googleapi.ResolveRelative(c.s.BasePath, "liasettings/posdataproviders")
 16753  	urls += "?" + c.urlParams_.Encode()
 16754  	req, err := http.NewRequest("GET", urls, body)
 16755  	if err != nil {
 16756  		return nil, err
 16757  	}
 16758  	req.Header = reqHeaders
 16759  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 16760  }
 16761  
 16762  // Do executes the "content.liasettings.listposdataproviders" call.
 16763  // Exactly one of *LiasettingsListPosDataProvidersResponse or error will
 16764  // be non-nil. Any non-2xx status code is an error. Response headers are
 16765  // in either
 16766  // *LiasettingsListPosDataProvidersResponse.ServerResponse.Header or (if
 16767  // a response was returned at all) in error.(*googleapi.Error).Header.
 16768  // Use googleapi.IsNotModified to check whether the returned error was
 16769  // because http.StatusNotModified was returned.
 16770  func (c *LiasettingsListposdataprovidersCall) Do(opts ...googleapi.CallOption) (*LiasettingsListPosDataProvidersResponse, error) {
 16771  	gensupport.SetOptions(c.urlParams_, opts...)
 16772  	res, err := c.doRequest("json")
 16773  	if res != nil && res.StatusCode == http.StatusNotModified {
 16774  		if res.Body != nil {
 16775  			res.Body.Close()
 16776  		}
 16777  		return nil, &googleapi.Error{
 16778  			Code:   res.StatusCode,
 16779  			Header: res.Header,
 16780  		}
 16781  	}
 16782  	if err != nil {
 16783  		return nil, err
 16784  	}
 16785  	defer googleapi.CloseBody(res)
 16786  	if err := googleapi.CheckResponse(res); err != nil {
 16787  		return nil, err
 16788  	}
 16789  	ret := &LiasettingsListPosDataProvidersResponse{
 16790  		ServerResponse: googleapi.ServerResponse{
 16791  			Header:         res.Header,
 16792  			HTTPStatusCode: res.StatusCode,
 16793  		},
 16794  	}
 16795  	target := &ret
 16796  	if err := gensupport.DecodeResponse(target, res); err != nil {
 16797  		return nil, err
 16798  	}
 16799  	return ret, nil
 16800  	// {
 16801  	//   "description": "Retrieves the list of POS data providers that have active settings for the all eiligible countries.",
 16802  	//   "flatPath": "liasettings/posdataproviders",
 16803  	//   "httpMethod": "GET",
 16804  	//   "id": "content.liasettings.listposdataproviders",
 16805  	//   "parameterOrder": [],
 16806  	//   "parameters": {},
 16807  	//   "path": "liasettings/posdataproviders",
 16808  	//   "response": {
 16809  	//     "$ref": "LiasettingsListPosDataProvidersResponse"
 16810  	//   },
 16811  	//   "scopes": [
 16812  	//     "https://www.googleapis.com/auth/content"
 16813  	//   ]
 16814  	// }
 16815  
 16816  }
 16817  
 16818  // method id "content.liasettings.requestgmbaccess":
 16819  
 16820  type LiasettingsRequestgmbaccessCall struct {
 16821  	s          *APIService
 16822  	merchantId uint64
 16823  	accountId  uint64
 16824  	urlParams_ gensupport.URLParams
 16825  	ctx_       context.Context
 16826  	header_    http.Header
 16827  }
 16828  
 16829  // Requestgmbaccess: Requests access to a specified Google My Business
 16830  // account.
 16831  //
 16832  //   - accountId: The ID of the account for which GMB access is requested.
 16833  //   - gmbEmail: The email of the Google My Business account.
 16834  //   - merchantId: The ID of the managing account. If this parameter is
 16835  //     not the same as accountId, then this account must be a multi-client
 16836  //     account and `accountId` must be the ID of a sub-account of this
 16837  //     account.
 16838  func (r *LiasettingsService) Requestgmbaccess(merchantId uint64, accountId uint64, gmbEmail string) *LiasettingsRequestgmbaccessCall {
 16839  	c := &LiasettingsRequestgmbaccessCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 16840  	c.merchantId = merchantId
 16841  	c.accountId = accountId
 16842  	c.urlParams_.Set("gmbEmail", gmbEmail)
 16843  	return c
 16844  }
 16845  
 16846  // Fields allows partial responses to be retrieved. See
 16847  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 16848  // for more information.
 16849  func (c *LiasettingsRequestgmbaccessCall) Fields(s ...googleapi.Field) *LiasettingsRequestgmbaccessCall {
 16850  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 16851  	return c
 16852  }
 16853  
 16854  // Context sets the context to be used in this call's Do method. Any
 16855  // pending HTTP request will be aborted if the provided context is
 16856  // canceled.
 16857  func (c *LiasettingsRequestgmbaccessCall) Context(ctx context.Context) *LiasettingsRequestgmbaccessCall {
 16858  	c.ctx_ = ctx
 16859  	return c
 16860  }
 16861  
 16862  // Header returns an http.Header that can be modified by the caller to
 16863  // add HTTP headers to the request.
 16864  func (c *LiasettingsRequestgmbaccessCall) Header() http.Header {
 16865  	if c.header_ == nil {
 16866  		c.header_ = make(http.Header)
 16867  	}
 16868  	return c.header_
 16869  }
 16870  
 16871  func (c *LiasettingsRequestgmbaccessCall) doRequest(alt string) (*http.Response, error) {
 16872  	reqHeaders := make(http.Header)
 16873  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 16874  	for k, v := range c.header_ {
 16875  		reqHeaders[k] = v
 16876  	}
 16877  	reqHeaders.Set("User-Agent", c.s.userAgent())
 16878  	var body io.Reader = nil
 16879  	c.urlParams_.Set("alt", alt)
 16880  	c.urlParams_.Set("prettyPrint", "false")
 16881  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/requestgmbaccess")
 16882  	urls += "?" + c.urlParams_.Encode()
 16883  	req, err := http.NewRequest("POST", urls, body)
 16884  	if err != nil {
 16885  		return nil, err
 16886  	}
 16887  	req.Header = reqHeaders
 16888  	googleapi.Expand(req.URL, map[string]string{
 16889  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 16890  		"accountId":  strconv.FormatUint(c.accountId, 10),
 16891  	})
 16892  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 16893  }
 16894  
 16895  // Do executes the "content.liasettings.requestgmbaccess" call.
 16896  // Exactly one of *LiasettingsRequestGmbAccessResponse or error will be
 16897  // non-nil. Any non-2xx status code is an error. Response headers are in
 16898  // either *LiasettingsRequestGmbAccessResponse.ServerResponse.Header or
 16899  // (if a response was returned at all) in
 16900  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 16901  // whether the returned error was because http.StatusNotModified was
 16902  // returned.
 16903  func (c *LiasettingsRequestgmbaccessCall) Do(opts ...googleapi.CallOption) (*LiasettingsRequestGmbAccessResponse, error) {
 16904  	gensupport.SetOptions(c.urlParams_, opts...)
 16905  	res, err := c.doRequest("json")
 16906  	if res != nil && res.StatusCode == http.StatusNotModified {
 16907  		if res.Body != nil {
 16908  			res.Body.Close()
 16909  		}
 16910  		return nil, &googleapi.Error{
 16911  			Code:   res.StatusCode,
 16912  			Header: res.Header,
 16913  		}
 16914  	}
 16915  	if err != nil {
 16916  		return nil, err
 16917  	}
 16918  	defer googleapi.CloseBody(res)
 16919  	if err := googleapi.CheckResponse(res); err != nil {
 16920  		return nil, err
 16921  	}
 16922  	ret := &LiasettingsRequestGmbAccessResponse{
 16923  		ServerResponse: googleapi.ServerResponse{
 16924  			Header:         res.Header,
 16925  			HTTPStatusCode: res.StatusCode,
 16926  		},
 16927  	}
 16928  	target := &ret
 16929  	if err := gensupport.DecodeResponse(target, res); err != nil {
 16930  		return nil, err
 16931  	}
 16932  	return ret, nil
 16933  	// {
 16934  	//   "description": "Requests access to a specified Google My Business account.",
 16935  	//   "flatPath": "{merchantId}/liasettings/{accountId}/requestgmbaccess",
 16936  	//   "httpMethod": "POST",
 16937  	//   "id": "content.liasettings.requestgmbaccess",
 16938  	//   "parameterOrder": [
 16939  	//     "merchantId",
 16940  	//     "accountId",
 16941  	//     "gmbEmail"
 16942  	//   ],
 16943  	//   "parameters": {
 16944  	//     "accountId": {
 16945  	//       "description": "The ID of the account for which GMB access is requested.",
 16946  	//       "format": "uint64",
 16947  	//       "location": "path",
 16948  	//       "required": true,
 16949  	//       "type": "string"
 16950  	//     },
 16951  	//     "gmbEmail": {
 16952  	//       "description": "The email of the Google My Business account.",
 16953  	//       "location": "query",
 16954  	//       "required": true,
 16955  	//       "type": "string"
 16956  	//     },
 16957  	//     "merchantId": {
 16958  	//       "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.",
 16959  	//       "format": "uint64",
 16960  	//       "location": "path",
 16961  	//       "required": true,
 16962  	//       "type": "string"
 16963  	//     }
 16964  	//   },
 16965  	//   "path": "{merchantId}/liasettings/{accountId}/requestgmbaccess",
 16966  	//   "response": {
 16967  	//     "$ref": "LiasettingsRequestGmbAccessResponse"
 16968  	//   },
 16969  	//   "scopes": [
 16970  	//     "https://www.googleapis.com/auth/content"
 16971  	//   ]
 16972  	// }
 16973  
 16974  }
 16975  
 16976  // method id "content.liasettings.requestinventoryverification":
 16977  
 16978  type LiasettingsRequestinventoryverificationCall struct {
 16979  	s          *APIService
 16980  	merchantId uint64
 16981  	accountId  uint64
 16982  	country    string
 16983  	urlParams_ gensupport.URLParams
 16984  	ctx_       context.Context
 16985  	header_    http.Header
 16986  }
 16987  
 16988  // Requestinventoryverification: Requests inventory validation for the
 16989  // specified country.
 16990  //
 16991  //   - accountId: The ID of the account that manages the order. This
 16992  //     cannot be a multi-client account.
 16993  //   - country: The country for which inventory validation is requested.
 16994  //   - merchantId: The ID of the managing account. If this parameter is
 16995  //     not the same as accountId, then this account must be a multi-client
 16996  //     account and `accountId` must be the ID of a sub-account of this
 16997  //     account.
 16998  func (r *LiasettingsService) Requestinventoryverification(merchantId uint64, accountId uint64, country string) *LiasettingsRequestinventoryverificationCall {
 16999  	c := &LiasettingsRequestinventoryverificationCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 17000  	c.merchantId = merchantId
 17001  	c.accountId = accountId
 17002  	c.country = country
 17003  	return c
 17004  }
 17005  
 17006  // Fields allows partial responses to be retrieved. See
 17007  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 17008  // for more information.
 17009  func (c *LiasettingsRequestinventoryverificationCall) Fields(s ...googleapi.Field) *LiasettingsRequestinventoryverificationCall {
 17010  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 17011  	return c
 17012  }
 17013  
 17014  // Context sets the context to be used in this call's Do method. Any
 17015  // pending HTTP request will be aborted if the provided context is
 17016  // canceled.
 17017  func (c *LiasettingsRequestinventoryverificationCall) Context(ctx context.Context) *LiasettingsRequestinventoryverificationCall {
 17018  	c.ctx_ = ctx
 17019  	return c
 17020  }
 17021  
 17022  // Header returns an http.Header that can be modified by the caller to
 17023  // add HTTP headers to the request.
 17024  func (c *LiasettingsRequestinventoryverificationCall) Header() http.Header {
 17025  	if c.header_ == nil {
 17026  		c.header_ = make(http.Header)
 17027  	}
 17028  	return c.header_
 17029  }
 17030  
 17031  func (c *LiasettingsRequestinventoryverificationCall) doRequest(alt string) (*http.Response, error) {
 17032  	reqHeaders := make(http.Header)
 17033  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 17034  	for k, v := range c.header_ {
 17035  		reqHeaders[k] = v
 17036  	}
 17037  	reqHeaders.Set("User-Agent", c.s.userAgent())
 17038  	var body io.Reader = nil
 17039  	c.urlParams_.Set("alt", alt)
 17040  	c.urlParams_.Set("prettyPrint", "false")
 17041  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/requestinventoryverification/{country}")
 17042  	urls += "?" + c.urlParams_.Encode()
 17043  	req, err := http.NewRequest("POST", urls, body)
 17044  	if err != nil {
 17045  		return nil, err
 17046  	}
 17047  	req.Header = reqHeaders
 17048  	googleapi.Expand(req.URL, map[string]string{
 17049  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 17050  		"accountId":  strconv.FormatUint(c.accountId, 10),
 17051  		"country":    c.country,
 17052  	})
 17053  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 17054  }
 17055  
 17056  // Do executes the "content.liasettings.requestinventoryverification" call.
 17057  // Exactly one of *LiasettingsRequestInventoryVerificationResponse or
 17058  // error will be non-nil. Any non-2xx status code is an error. Response
 17059  // headers are in either
 17060  // *LiasettingsRequestInventoryVerificationResponse.ServerResponse.Header
 17061  //
 17062  //	or (if a response was returned at all) in
 17063  //
 17064  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 17065  // whether the returned error was because http.StatusNotModified was
 17066  // returned.
 17067  func (c *LiasettingsRequestinventoryverificationCall) Do(opts ...googleapi.CallOption) (*LiasettingsRequestInventoryVerificationResponse, error) {
 17068  	gensupport.SetOptions(c.urlParams_, opts...)
 17069  	res, err := c.doRequest("json")
 17070  	if res != nil && res.StatusCode == http.StatusNotModified {
 17071  		if res.Body != nil {
 17072  			res.Body.Close()
 17073  		}
 17074  		return nil, &googleapi.Error{
 17075  			Code:   res.StatusCode,
 17076  			Header: res.Header,
 17077  		}
 17078  	}
 17079  	if err != nil {
 17080  		return nil, err
 17081  	}
 17082  	defer googleapi.CloseBody(res)
 17083  	if err := googleapi.CheckResponse(res); err != nil {
 17084  		return nil, err
 17085  	}
 17086  	ret := &LiasettingsRequestInventoryVerificationResponse{
 17087  		ServerResponse: googleapi.ServerResponse{
 17088  			Header:         res.Header,
 17089  			HTTPStatusCode: res.StatusCode,
 17090  		},
 17091  	}
 17092  	target := &ret
 17093  	if err := gensupport.DecodeResponse(target, res); err != nil {
 17094  		return nil, err
 17095  	}
 17096  	return ret, nil
 17097  	// {
 17098  	//   "description": "Requests inventory validation for the specified country.",
 17099  	//   "flatPath": "{merchantId}/liasettings/{accountId}/requestinventoryverification/{country}",
 17100  	//   "httpMethod": "POST",
 17101  	//   "id": "content.liasettings.requestinventoryverification",
 17102  	//   "parameterOrder": [
 17103  	//     "merchantId",
 17104  	//     "accountId",
 17105  	//     "country"
 17106  	//   ],
 17107  	//   "parameters": {
 17108  	//     "accountId": {
 17109  	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
 17110  	//       "format": "uint64",
 17111  	//       "location": "path",
 17112  	//       "required": true,
 17113  	//       "type": "string"
 17114  	//     },
 17115  	//     "country": {
 17116  	//       "description": "The country for which inventory validation is requested.",
 17117  	//       "location": "path",
 17118  	//       "required": true,
 17119  	//       "type": "string"
 17120  	//     },
 17121  	//     "merchantId": {
 17122  	//       "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.",
 17123  	//       "format": "uint64",
 17124  	//       "location": "path",
 17125  	//       "required": true,
 17126  	//       "type": "string"
 17127  	//     }
 17128  	//   },
 17129  	//   "path": "{merchantId}/liasettings/{accountId}/requestinventoryverification/{country}",
 17130  	//   "response": {
 17131  	//     "$ref": "LiasettingsRequestInventoryVerificationResponse"
 17132  	//   },
 17133  	//   "scopes": [
 17134  	//     "https://www.googleapis.com/auth/content"
 17135  	//   ]
 17136  	// }
 17137  
 17138  }
 17139  
 17140  // method id "content.liasettings.setinventoryverificationcontact":
 17141  
 17142  type LiasettingsSetinventoryverificationcontactCall struct {
 17143  	s          *APIService
 17144  	merchantId uint64
 17145  	accountId  uint64
 17146  	urlParams_ gensupport.URLParams
 17147  	ctx_       context.Context
 17148  	header_    http.Header
 17149  }
 17150  
 17151  // Setinventoryverificationcontact: Sets the inventory verification
 17152  // contract for the specified country.
 17153  //
 17154  //   - accountId: The ID of the account that manages the order. This
 17155  //     cannot be a multi-client account.
 17156  //   - contactEmail: The email of the inventory verification contact.
 17157  //   - contactName: The name of the inventory verification contact.
 17158  //   - country: The country for which inventory verification is requested.
 17159  //   - language: The language for which inventory verification is
 17160  //     requested.
 17161  //   - merchantId: The ID of the managing account. If this parameter is
 17162  //     not the same as accountId, then this account must be a multi-client
 17163  //     account and `accountId` must be the ID of a sub-account of this
 17164  //     account.
 17165  func (r *LiasettingsService) Setinventoryverificationcontact(merchantId uint64, accountId uint64, country string, language string, contactName string, contactEmail string) *LiasettingsSetinventoryverificationcontactCall {
 17166  	c := &LiasettingsSetinventoryverificationcontactCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 17167  	c.merchantId = merchantId
 17168  	c.accountId = accountId
 17169  	c.urlParams_.Set("country", country)
 17170  	c.urlParams_.Set("language", language)
 17171  	c.urlParams_.Set("contactName", contactName)
 17172  	c.urlParams_.Set("contactEmail", contactEmail)
 17173  	return c
 17174  }
 17175  
 17176  // Fields allows partial responses to be retrieved. See
 17177  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 17178  // for more information.
 17179  func (c *LiasettingsSetinventoryverificationcontactCall) Fields(s ...googleapi.Field) *LiasettingsSetinventoryverificationcontactCall {
 17180  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 17181  	return c
 17182  }
 17183  
 17184  // Context sets the context to be used in this call's Do method. Any
 17185  // pending HTTP request will be aborted if the provided context is
 17186  // canceled.
 17187  func (c *LiasettingsSetinventoryverificationcontactCall) Context(ctx context.Context) *LiasettingsSetinventoryverificationcontactCall {
 17188  	c.ctx_ = ctx
 17189  	return c
 17190  }
 17191  
 17192  // Header returns an http.Header that can be modified by the caller to
 17193  // add HTTP headers to the request.
 17194  func (c *LiasettingsSetinventoryverificationcontactCall) Header() http.Header {
 17195  	if c.header_ == nil {
 17196  		c.header_ = make(http.Header)
 17197  	}
 17198  	return c.header_
 17199  }
 17200  
 17201  func (c *LiasettingsSetinventoryverificationcontactCall) doRequest(alt string) (*http.Response, error) {
 17202  	reqHeaders := make(http.Header)
 17203  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 17204  	for k, v := range c.header_ {
 17205  		reqHeaders[k] = v
 17206  	}
 17207  	reqHeaders.Set("User-Agent", c.s.userAgent())
 17208  	var body io.Reader = nil
 17209  	c.urlParams_.Set("alt", alt)
 17210  	c.urlParams_.Set("prettyPrint", "false")
 17211  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/setinventoryverificationcontact")
 17212  	urls += "?" + c.urlParams_.Encode()
 17213  	req, err := http.NewRequest("POST", urls, body)
 17214  	if err != nil {
 17215  		return nil, err
 17216  	}
 17217  	req.Header = reqHeaders
 17218  	googleapi.Expand(req.URL, map[string]string{
 17219  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 17220  		"accountId":  strconv.FormatUint(c.accountId, 10),
 17221  	})
 17222  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 17223  }
 17224  
 17225  // Do executes the "content.liasettings.setinventoryverificationcontact" call.
 17226  // Exactly one of *LiasettingsSetInventoryVerificationContactResponse or
 17227  // error will be non-nil. Any non-2xx status code is an error. Response
 17228  // headers are in either
 17229  // *LiasettingsSetInventoryVerificationContactResponse.ServerResponse.Hea
 17230  // der or (if a response was returned at all) in
 17231  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 17232  // whether the returned error was because http.StatusNotModified was
 17233  // returned.
 17234  func (c *LiasettingsSetinventoryverificationcontactCall) Do(opts ...googleapi.CallOption) (*LiasettingsSetInventoryVerificationContactResponse, error) {
 17235  	gensupport.SetOptions(c.urlParams_, opts...)
 17236  	res, err := c.doRequest("json")
 17237  	if res != nil && res.StatusCode == http.StatusNotModified {
 17238  		if res.Body != nil {
 17239  			res.Body.Close()
 17240  		}
 17241  		return nil, &googleapi.Error{
 17242  			Code:   res.StatusCode,
 17243  			Header: res.Header,
 17244  		}
 17245  	}
 17246  	if err != nil {
 17247  		return nil, err
 17248  	}
 17249  	defer googleapi.CloseBody(res)
 17250  	if err := googleapi.CheckResponse(res); err != nil {
 17251  		return nil, err
 17252  	}
 17253  	ret := &LiasettingsSetInventoryVerificationContactResponse{
 17254  		ServerResponse: googleapi.ServerResponse{
 17255  			Header:         res.Header,
 17256  			HTTPStatusCode: res.StatusCode,
 17257  		},
 17258  	}
 17259  	target := &ret
 17260  	if err := gensupport.DecodeResponse(target, res); err != nil {
 17261  		return nil, err
 17262  	}
 17263  	return ret, nil
 17264  	// {
 17265  	//   "description": "Sets the inventory verification contract for the specified country.",
 17266  	//   "flatPath": "{merchantId}/liasettings/{accountId}/setinventoryverificationcontact",
 17267  	//   "httpMethod": "POST",
 17268  	//   "id": "content.liasettings.setinventoryverificationcontact",
 17269  	//   "parameterOrder": [
 17270  	//     "merchantId",
 17271  	//     "accountId",
 17272  	//     "country",
 17273  	//     "language",
 17274  	//     "contactName",
 17275  	//     "contactEmail"
 17276  	//   ],
 17277  	//   "parameters": {
 17278  	//     "accountId": {
 17279  	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
 17280  	//       "format": "uint64",
 17281  	//       "location": "path",
 17282  	//       "required": true,
 17283  	//       "type": "string"
 17284  	//     },
 17285  	//     "contactEmail": {
 17286  	//       "description": "The email of the inventory verification contact.",
 17287  	//       "location": "query",
 17288  	//       "required": true,
 17289  	//       "type": "string"
 17290  	//     },
 17291  	//     "contactName": {
 17292  	//       "description": "The name of the inventory verification contact.",
 17293  	//       "location": "query",
 17294  	//       "required": true,
 17295  	//       "type": "string"
 17296  	//     },
 17297  	//     "country": {
 17298  	//       "description": "The country for which inventory verification is requested.",
 17299  	//       "location": "query",
 17300  	//       "required": true,
 17301  	//       "type": "string"
 17302  	//     },
 17303  	//     "language": {
 17304  	//       "description": "The language for which inventory verification is requested.",
 17305  	//       "location": "query",
 17306  	//       "required": true,
 17307  	//       "type": "string"
 17308  	//     },
 17309  	//     "merchantId": {
 17310  	//       "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.",
 17311  	//       "format": "uint64",
 17312  	//       "location": "path",
 17313  	//       "required": true,
 17314  	//       "type": "string"
 17315  	//     }
 17316  	//   },
 17317  	//   "path": "{merchantId}/liasettings/{accountId}/setinventoryverificationcontact",
 17318  	//   "response": {
 17319  	//     "$ref": "LiasettingsSetInventoryVerificationContactResponse"
 17320  	//   },
 17321  	//   "scopes": [
 17322  	//     "https://www.googleapis.com/auth/content"
 17323  	//   ]
 17324  	// }
 17325  
 17326  }
 17327  
 17328  // method id "content.liasettings.setposdataprovider":
 17329  
 17330  type LiasettingsSetposdataproviderCall struct {
 17331  	s          *APIService
 17332  	merchantId uint64
 17333  	accountId  uint64
 17334  	urlParams_ gensupport.URLParams
 17335  	ctx_       context.Context
 17336  	header_    http.Header
 17337  }
 17338  
 17339  // Setposdataprovider: Sets the POS data provider for the specified
 17340  // country.
 17341  //
 17342  //   - accountId: The ID of the account for which to retrieve accessible
 17343  //     Google My Business accounts.
 17344  //   - country: The country for which the POS data provider is selected.
 17345  //   - merchantId: The ID of the managing account. If this parameter is
 17346  //     not the same as accountId, then this account must be a multi-client
 17347  //     account and `accountId` must be the ID of a sub-account of this
 17348  //     account.
 17349  func (r *LiasettingsService) Setposdataprovider(merchantId uint64, accountId uint64, country string) *LiasettingsSetposdataproviderCall {
 17350  	c := &LiasettingsSetposdataproviderCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 17351  	c.merchantId = merchantId
 17352  	c.accountId = accountId
 17353  	c.urlParams_.Set("country", country)
 17354  	return c
 17355  }
 17356  
 17357  // PosDataProviderId sets the optional parameter "posDataProviderId":
 17358  // The ID of POS data provider.
 17359  func (c *LiasettingsSetposdataproviderCall) PosDataProviderId(posDataProviderId uint64) *LiasettingsSetposdataproviderCall {
 17360  	c.urlParams_.Set("posDataProviderId", fmt.Sprint(posDataProviderId))
 17361  	return c
 17362  }
 17363  
 17364  // PosExternalAccountId sets the optional parameter
 17365  // "posExternalAccountId": The account ID by which this merchant is
 17366  // known to the POS data provider.
 17367  func (c *LiasettingsSetposdataproviderCall) PosExternalAccountId(posExternalAccountId string) *LiasettingsSetposdataproviderCall {
 17368  	c.urlParams_.Set("posExternalAccountId", posExternalAccountId)
 17369  	return c
 17370  }
 17371  
 17372  // Fields allows partial responses to be retrieved. See
 17373  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 17374  // for more information.
 17375  func (c *LiasettingsSetposdataproviderCall) Fields(s ...googleapi.Field) *LiasettingsSetposdataproviderCall {
 17376  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 17377  	return c
 17378  }
 17379  
 17380  // Context sets the context to be used in this call's Do method. Any
 17381  // pending HTTP request will be aborted if the provided context is
 17382  // canceled.
 17383  func (c *LiasettingsSetposdataproviderCall) Context(ctx context.Context) *LiasettingsSetposdataproviderCall {
 17384  	c.ctx_ = ctx
 17385  	return c
 17386  }
 17387  
 17388  // Header returns an http.Header that can be modified by the caller to
 17389  // add HTTP headers to the request.
 17390  func (c *LiasettingsSetposdataproviderCall) Header() http.Header {
 17391  	if c.header_ == nil {
 17392  		c.header_ = make(http.Header)
 17393  	}
 17394  	return c.header_
 17395  }
 17396  
 17397  func (c *LiasettingsSetposdataproviderCall) doRequest(alt string) (*http.Response, error) {
 17398  	reqHeaders := make(http.Header)
 17399  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 17400  	for k, v := range c.header_ {
 17401  		reqHeaders[k] = v
 17402  	}
 17403  	reqHeaders.Set("User-Agent", c.s.userAgent())
 17404  	var body io.Reader = nil
 17405  	c.urlParams_.Set("alt", alt)
 17406  	c.urlParams_.Set("prettyPrint", "false")
 17407  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}/setposdataprovider")
 17408  	urls += "?" + c.urlParams_.Encode()
 17409  	req, err := http.NewRequest("POST", urls, body)
 17410  	if err != nil {
 17411  		return nil, err
 17412  	}
 17413  	req.Header = reqHeaders
 17414  	googleapi.Expand(req.URL, map[string]string{
 17415  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 17416  		"accountId":  strconv.FormatUint(c.accountId, 10),
 17417  	})
 17418  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 17419  }
 17420  
 17421  // Do executes the "content.liasettings.setposdataprovider" call.
 17422  // Exactly one of *LiasettingsSetPosDataProviderResponse or error will
 17423  // be non-nil. Any non-2xx status code is an error. Response headers are
 17424  // in either
 17425  // *LiasettingsSetPosDataProviderResponse.ServerResponse.Header or (if a
 17426  // response was returned at all) in error.(*googleapi.Error).Header. Use
 17427  // googleapi.IsNotModified to check whether the returned error was
 17428  // because http.StatusNotModified was returned.
 17429  func (c *LiasettingsSetposdataproviderCall) Do(opts ...googleapi.CallOption) (*LiasettingsSetPosDataProviderResponse, error) {
 17430  	gensupport.SetOptions(c.urlParams_, opts...)
 17431  	res, err := c.doRequest("json")
 17432  	if res != nil && res.StatusCode == http.StatusNotModified {
 17433  		if res.Body != nil {
 17434  			res.Body.Close()
 17435  		}
 17436  		return nil, &googleapi.Error{
 17437  			Code:   res.StatusCode,
 17438  			Header: res.Header,
 17439  		}
 17440  	}
 17441  	if err != nil {
 17442  		return nil, err
 17443  	}
 17444  	defer googleapi.CloseBody(res)
 17445  	if err := googleapi.CheckResponse(res); err != nil {
 17446  		return nil, err
 17447  	}
 17448  	ret := &LiasettingsSetPosDataProviderResponse{
 17449  		ServerResponse: googleapi.ServerResponse{
 17450  			Header:         res.Header,
 17451  			HTTPStatusCode: res.StatusCode,
 17452  		},
 17453  	}
 17454  	target := &ret
 17455  	if err := gensupport.DecodeResponse(target, res); err != nil {
 17456  		return nil, err
 17457  	}
 17458  	return ret, nil
 17459  	// {
 17460  	//   "description": "Sets the POS data provider for the specified country.",
 17461  	//   "flatPath": "{merchantId}/liasettings/{accountId}/setposdataprovider",
 17462  	//   "httpMethod": "POST",
 17463  	//   "id": "content.liasettings.setposdataprovider",
 17464  	//   "parameterOrder": [
 17465  	//     "merchantId",
 17466  	//     "accountId",
 17467  	//     "country"
 17468  	//   ],
 17469  	//   "parameters": {
 17470  	//     "accountId": {
 17471  	//       "description": "The ID of the account for which to retrieve accessible Google My Business accounts.",
 17472  	//       "format": "uint64",
 17473  	//       "location": "path",
 17474  	//       "required": true,
 17475  	//       "type": "string"
 17476  	//     },
 17477  	//     "country": {
 17478  	//       "description": "The country for which the POS data provider is selected.",
 17479  	//       "location": "query",
 17480  	//       "required": true,
 17481  	//       "type": "string"
 17482  	//     },
 17483  	//     "merchantId": {
 17484  	//       "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.",
 17485  	//       "format": "uint64",
 17486  	//       "location": "path",
 17487  	//       "required": true,
 17488  	//       "type": "string"
 17489  	//     },
 17490  	//     "posDataProviderId": {
 17491  	//       "description": "The ID of POS data provider.",
 17492  	//       "format": "uint64",
 17493  	//       "location": "query",
 17494  	//       "type": "string"
 17495  	//     },
 17496  	//     "posExternalAccountId": {
 17497  	//       "description": "The account ID by which this merchant is known to the POS data provider.",
 17498  	//       "location": "query",
 17499  	//       "type": "string"
 17500  	//     }
 17501  	//   },
 17502  	//   "path": "{merchantId}/liasettings/{accountId}/setposdataprovider",
 17503  	//   "response": {
 17504  	//     "$ref": "LiasettingsSetPosDataProviderResponse"
 17505  	//   },
 17506  	//   "scopes": [
 17507  	//     "https://www.googleapis.com/auth/content"
 17508  	//   ]
 17509  	// }
 17510  
 17511  }
 17512  
 17513  // method id "content.liasettings.update":
 17514  
 17515  type LiasettingsUpdateCall struct {
 17516  	s           *APIService
 17517  	merchantId  uint64
 17518  	accountId   uint64
 17519  	liasettings *LiaSettings
 17520  	urlParams_  gensupport.URLParams
 17521  	ctx_        context.Context
 17522  	header_     http.Header
 17523  }
 17524  
 17525  // Update: Updates the LIA settings of the account. Any fields that are
 17526  // not provided are deleted from the resource.
 17527  //
 17528  //   - accountId: The ID of the account for which to get or update LIA
 17529  //     settings.
 17530  //   - merchantId: The ID of the managing account. If this parameter is
 17531  //     not the same as accountId, then this account must be a multi-client
 17532  //     account and `accountId` must be the ID of a sub-account of this
 17533  //     account.
 17534  func (r *LiasettingsService) Update(merchantId uint64, accountId uint64, liasettings *LiaSettings) *LiasettingsUpdateCall {
 17535  	c := &LiasettingsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 17536  	c.merchantId = merchantId
 17537  	c.accountId = accountId
 17538  	c.liasettings = liasettings
 17539  	return c
 17540  }
 17541  
 17542  // DryRun sets the optional parameter "dryRun": Flag to simulate a
 17543  // request like in a live environment. If set to true, dry-run mode
 17544  // checks the validity of the request and returns errors (if any).
 17545  func (c *LiasettingsUpdateCall) DryRun(dryRun bool) *LiasettingsUpdateCall {
 17546  	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
 17547  	return c
 17548  }
 17549  
 17550  // Fields allows partial responses to be retrieved. See
 17551  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 17552  // for more information.
 17553  func (c *LiasettingsUpdateCall) Fields(s ...googleapi.Field) *LiasettingsUpdateCall {
 17554  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 17555  	return c
 17556  }
 17557  
 17558  // Context sets the context to be used in this call's Do method. Any
 17559  // pending HTTP request will be aborted if the provided context is
 17560  // canceled.
 17561  func (c *LiasettingsUpdateCall) Context(ctx context.Context) *LiasettingsUpdateCall {
 17562  	c.ctx_ = ctx
 17563  	return c
 17564  }
 17565  
 17566  // Header returns an http.Header that can be modified by the caller to
 17567  // add HTTP headers to the request.
 17568  func (c *LiasettingsUpdateCall) Header() http.Header {
 17569  	if c.header_ == nil {
 17570  		c.header_ = make(http.Header)
 17571  	}
 17572  	return c.header_
 17573  }
 17574  
 17575  func (c *LiasettingsUpdateCall) doRequest(alt string) (*http.Response, error) {
 17576  	reqHeaders := make(http.Header)
 17577  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 17578  	for k, v := range c.header_ {
 17579  		reqHeaders[k] = v
 17580  	}
 17581  	reqHeaders.Set("User-Agent", c.s.userAgent())
 17582  	var body io.Reader = nil
 17583  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.liasettings)
 17584  	if err != nil {
 17585  		return nil, err
 17586  	}
 17587  	reqHeaders.Set("Content-Type", "application/json")
 17588  	c.urlParams_.Set("alt", alt)
 17589  	c.urlParams_.Set("prettyPrint", "false")
 17590  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/liasettings/{accountId}")
 17591  	urls += "?" + c.urlParams_.Encode()
 17592  	req, err := http.NewRequest("PUT", urls, body)
 17593  	if err != nil {
 17594  		return nil, err
 17595  	}
 17596  	req.Header = reqHeaders
 17597  	googleapi.Expand(req.URL, map[string]string{
 17598  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 17599  		"accountId":  strconv.FormatUint(c.accountId, 10),
 17600  	})
 17601  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 17602  }
 17603  
 17604  // Do executes the "content.liasettings.update" call.
 17605  // Exactly one of *LiaSettings or error will be non-nil. Any non-2xx
 17606  // status code is an error. Response headers are in either
 17607  // *LiaSettings.ServerResponse.Header or (if a response was returned at
 17608  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
 17609  // to check whether the returned error was because
 17610  // http.StatusNotModified was returned.
 17611  func (c *LiasettingsUpdateCall) Do(opts ...googleapi.CallOption) (*LiaSettings, error) {
 17612  	gensupport.SetOptions(c.urlParams_, opts...)
 17613  	res, err := c.doRequest("json")
 17614  	if res != nil && res.StatusCode == http.StatusNotModified {
 17615  		if res.Body != nil {
 17616  			res.Body.Close()
 17617  		}
 17618  		return nil, &googleapi.Error{
 17619  			Code:   res.StatusCode,
 17620  			Header: res.Header,
 17621  		}
 17622  	}
 17623  	if err != nil {
 17624  		return nil, err
 17625  	}
 17626  	defer googleapi.CloseBody(res)
 17627  	if err := googleapi.CheckResponse(res); err != nil {
 17628  		return nil, err
 17629  	}
 17630  	ret := &LiaSettings{
 17631  		ServerResponse: googleapi.ServerResponse{
 17632  			Header:         res.Header,
 17633  			HTTPStatusCode: res.StatusCode,
 17634  		},
 17635  	}
 17636  	target := &ret
 17637  	if err := gensupport.DecodeResponse(target, res); err != nil {
 17638  		return nil, err
 17639  	}
 17640  	return ret, nil
 17641  	// {
 17642  	//   "description": "Updates the LIA settings of the account. Any fields that are not provided are deleted from the resource.",
 17643  	//   "flatPath": "{merchantId}/liasettings/{accountId}",
 17644  	//   "httpMethod": "PUT",
 17645  	//   "id": "content.liasettings.update",
 17646  	//   "parameterOrder": [
 17647  	//     "merchantId",
 17648  	//     "accountId"
 17649  	//   ],
 17650  	//   "parameters": {
 17651  	//     "accountId": {
 17652  	//       "description": "The ID of the account for which to get or update LIA settings.",
 17653  	//       "format": "uint64",
 17654  	//       "location": "path",
 17655  	//       "required": true,
 17656  	//       "type": "string"
 17657  	//     },
 17658  	//     "dryRun": {
 17659  	//       "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).",
 17660  	//       "location": "query",
 17661  	//       "type": "boolean"
 17662  	//     },
 17663  	//     "merchantId": {
 17664  	//       "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.",
 17665  	//       "format": "uint64",
 17666  	//       "location": "path",
 17667  	//       "required": true,
 17668  	//       "type": "string"
 17669  	//     }
 17670  	//   },
 17671  	//   "path": "{merchantId}/liasettings/{accountId}",
 17672  	//   "request": {
 17673  	//     "$ref": "LiaSettings"
 17674  	//   },
 17675  	//   "response": {
 17676  	//     "$ref": "LiaSettings"
 17677  	//   },
 17678  	//   "scopes": [
 17679  	//     "https://www.googleapis.com/auth/content"
 17680  	//   ]
 17681  	// }
 17682  
 17683  }
 17684  
 17685  // method id "content.orderinvoices.createchargeinvoice":
 17686  
 17687  type OrderinvoicesCreatechargeinvoiceCall struct {
 17688  	s                                       *APIService
 17689  	merchantId                              uint64
 17690  	orderId                                 string
 17691  	orderinvoicescreatechargeinvoicerequest *OrderinvoicesCreateChargeInvoiceRequest
 17692  	urlParams_                              gensupport.URLParams
 17693  	ctx_                                    context.Context
 17694  	header_                                 http.Header
 17695  }
 17696  
 17697  // Createchargeinvoice: Creates a charge invoice for a shipment group,
 17698  // and triggers a charge capture for orderinvoice enabled orders.
 17699  //
 17700  //   - merchantId: The ID of the account that manages the order. This
 17701  //     cannot be a multi-client account.
 17702  //   - orderId: The ID of the order.
 17703  func (r *OrderinvoicesService) Createchargeinvoice(merchantId uint64, orderId string, orderinvoicescreatechargeinvoicerequest *OrderinvoicesCreateChargeInvoiceRequest) *OrderinvoicesCreatechargeinvoiceCall {
 17704  	c := &OrderinvoicesCreatechargeinvoiceCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 17705  	c.merchantId = merchantId
 17706  	c.orderId = orderId
 17707  	c.orderinvoicescreatechargeinvoicerequest = orderinvoicescreatechargeinvoicerequest
 17708  	return c
 17709  }
 17710  
 17711  // Fields allows partial responses to be retrieved. See
 17712  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 17713  // for more information.
 17714  func (c *OrderinvoicesCreatechargeinvoiceCall) Fields(s ...googleapi.Field) *OrderinvoicesCreatechargeinvoiceCall {
 17715  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 17716  	return c
 17717  }
 17718  
 17719  // Context sets the context to be used in this call's Do method. Any
 17720  // pending HTTP request will be aborted if the provided context is
 17721  // canceled.
 17722  func (c *OrderinvoicesCreatechargeinvoiceCall) Context(ctx context.Context) *OrderinvoicesCreatechargeinvoiceCall {
 17723  	c.ctx_ = ctx
 17724  	return c
 17725  }
 17726  
 17727  // Header returns an http.Header that can be modified by the caller to
 17728  // add HTTP headers to the request.
 17729  func (c *OrderinvoicesCreatechargeinvoiceCall) Header() http.Header {
 17730  	if c.header_ == nil {
 17731  		c.header_ = make(http.Header)
 17732  	}
 17733  	return c.header_
 17734  }
 17735  
 17736  func (c *OrderinvoicesCreatechargeinvoiceCall) doRequest(alt string) (*http.Response, error) {
 17737  	reqHeaders := make(http.Header)
 17738  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 17739  	for k, v := range c.header_ {
 17740  		reqHeaders[k] = v
 17741  	}
 17742  	reqHeaders.Set("User-Agent", c.s.userAgent())
 17743  	var body io.Reader = nil
 17744  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderinvoicescreatechargeinvoicerequest)
 17745  	if err != nil {
 17746  		return nil, err
 17747  	}
 17748  	reqHeaders.Set("Content-Type", "application/json")
 17749  	c.urlParams_.Set("alt", alt)
 17750  	c.urlParams_.Set("prettyPrint", "false")
 17751  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderinvoices/{orderId}/createChargeInvoice")
 17752  	urls += "?" + c.urlParams_.Encode()
 17753  	req, err := http.NewRequest("POST", urls, body)
 17754  	if err != nil {
 17755  		return nil, err
 17756  	}
 17757  	req.Header = reqHeaders
 17758  	googleapi.Expand(req.URL, map[string]string{
 17759  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 17760  		"orderId":    c.orderId,
 17761  	})
 17762  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 17763  }
 17764  
 17765  // Do executes the "content.orderinvoices.createchargeinvoice" call.
 17766  // Exactly one of *OrderinvoicesCreateChargeInvoiceResponse or error
 17767  // will be non-nil. Any non-2xx status code is an error. Response
 17768  // headers are in either
 17769  // *OrderinvoicesCreateChargeInvoiceResponse.ServerResponse.Header or
 17770  // (if a response was returned at all) in
 17771  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 17772  // whether the returned error was because http.StatusNotModified was
 17773  // returned.
 17774  func (c *OrderinvoicesCreatechargeinvoiceCall) Do(opts ...googleapi.CallOption) (*OrderinvoicesCreateChargeInvoiceResponse, error) {
 17775  	gensupport.SetOptions(c.urlParams_, opts...)
 17776  	res, err := c.doRequest("json")
 17777  	if res != nil && res.StatusCode == http.StatusNotModified {
 17778  		if res.Body != nil {
 17779  			res.Body.Close()
 17780  		}
 17781  		return nil, &googleapi.Error{
 17782  			Code:   res.StatusCode,
 17783  			Header: res.Header,
 17784  		}
 17785  	}
 17786  	if err != nil {
 17787  		return nil, err
 17788  	}
 17789  	defer googleapi.CloseBody(res)
 17790  	if err := googleapi.CheckResponse(res); err != nil {
 17791  		return nil, err
 17792  	}
 17793  	ret := &OrderinvoicesCreateChargeInvoiceResponse{
 17794  		ServerResponse: googleapi.ServerResponse{
 17795  			Header:         res.Header,
 17796  			HTTPStatusCode: res.StatusCode,
 17797  		},
 17798  	}
 17799  	target := &ret
 17800  	if err := gensupport.DecodeResponse(target, res); err != nil {
 17801  		return nil, err
 17802  	}
 17803  	return ret, nil
 17804  	// {
 17805  	//   "description": "Creates a charge invoice for a shipment group, and triggers a charge capture for orderinvoice enabled orders.",
 17806  	//   "flatPath": "{merchantId}/orderinvoices/{orderId}/createChargeInvoice",
 17807  	//   "httpMethod": "POST",
 17808  	//   "id": "content.orderinvoices.createchargeinvoice",
 17809  	//   "parameterOrder": [
 17810  	//     "merchantId",
 17811  	//     "orderId"
 17812  	//   ],
 17813  	//   "parameters": {
 17814  	//     "merchantId": {
 17815  	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
 17816  	//       "format": "uint64",
 17817  	//       "location": "path",
 17818  	//       "required": true,
 17819  	//       "type": "string"
 17820  	//     },
 17821  	//     "orderId": {
 17822  	//       "description": "The ID of the order.",
 17823  	//       "location": "path",
 17824  	//       "required": true,
 17825  	//       "type": "string"
 17826  	//     }
 17827  	//   },
 17828  	//   "path": "{merchantId}/orderinvoices/{orderId}/createChargeInvoice",
 17829  	//   "request": {
 17830  	//     "$ref": "OrderinvoicesCreateChargeInvoiceRequest"
 17831  	//   },
 17832  	//   "response": {
 17833  	//     "$ref": "OrderinvoicesCreateChargeInvoiceResponse"
 17834  	//   },
 17835  	//   "scopes": [
 17836  	//     "https://www.googleapis.com/auth/content"
 17837  	//   ]
 17838  	// }
 17839  
 17840  }
 17841  
 17842  // method id "content.orderinvoices.createrefundinvoice":
 17843  
 17844  type OrderinvoicesCreaterefundinvoiceCall struct {
 17845  	s                                       *APIService
 17846  	merchantId                              uint64
 17847  	orderId                                 string
 17848  	orderinvoicescreaterefundinvoicerequest *OrderinvoicesCreateRefundInvoiceRequest
 17849  	urlParams_                              gensupport.URLParams
 17850  	ctx_                                    context.Context
 17851  	header_                                 http.Header
 17852  }
 17853  
 17854  // Createrefundinvoice: Creates a refund invoice for one or more
 17855  // shipment groups, and triggers a refund for orderinvoice enabled
 17856  // orders. This can only be used for line items that have previously
 17857  // been charged using `createChargeInvoice`. All amounts (except for the
 17858  // summary) are incremental with respect to the previous invoice.
 17859  //
 17860  //   - merchantId: The ID of the account that manages the order. This
 17861  //     cannot be a multi-client account.
 17862  //   - orderId: The ID of the order.
 17863  func (r *OrderinvoicesService) Createrefundinvoice(merchantId uint64, orderId string, orderinvoicescreaterefundinvoicerequest *OrderinvoicesCreateRefundInvoiceRequest) *OrderinvoicesCreaterefundinvoiceCall {
 17864  	c := &OrderinvoicesCreaterefundinvoiceCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 17865  	c.merchantId = merchantId
 17866  	c.orderId = orderId
 17867  	c.orderinvoicescreaterefundinvoicerequest = orderinvoicescreaterefundinvoicerequest
 17868  	return c
 17869  }
 17870  
 17871  // Fields allows partial responses to be retrieved. See
 17872  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 17873  // for more information.
 17874  func (c *OrderinvoicesCreaterefundinvoiceCall) Fields(s ...googleapi.Field) *OrderinvoicesCreaterefundinvoiceCall {
 17875  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 17876  	return c
 17877  }
 17878  
 17879  // Context sets the context to be used in this call's Do method. Any
 17880  // pending HTTP request will be aborted if the provided context is
 17881  // canceled.
 17882  func (c *OrderinvoicesCreaterefundinvoiceCall) Context(ctx context.Context) *OrderinvoicesCreaterefundinvoiceCall {
 17883  	c.ctx_ = ctx
 17884  	return c
 17885  }
 17886  
 17887  // Header returns an http.Header that can be modified by the caller to
 17888  // add HTTP headers to the request.
 17889  func (c *OrderinvoicesCreaterefundinvoiceCall) Header() http.Header {
 17890  	if c.header_ == nil {
 17891  		c.header_ = make(http.Header)
 17892  	}
 17893  	return c.header_
 17894  }
 17895  
 17896  func (c *OrderinvoicesCreaterefundinvoiceCall) doRequest(alt string) (*http.Response, error) {
 17897  	reqHeaders := make(http.Header)
 17898  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 17899  	for k, v := range c.header_ {
 17900  		reqHeaders[k] = v
 17901  	}
 17902  	reqHeaders.Set("User-Agent", c.s.userAgent())
 17903  	var body io.Reader = nil
 17904  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderinvoicescreaterefundinvoicerequest)
 17905  	if err != nil {
 17906  		return nil, err
 17907  	}
 17908  	reqHeaders.Set("Content-Type", "application/json")
 17909  	c.urlParams_.Set("alt", alt)
 17910  	c.urlParams_.Set("prettyPrint", "false")
 17911  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderinvoices/{orderId}/createRefundInvoice")
 17912  	urls += "?" + c.urlParams_.Encode()
 17913  	req, err := http.NewRequest("POST", urls, body)
 17914  	if err != nil {
 17915  		return nil, err
 17916  	}
 17917  	req.Header = reqHeaders
 17918  	googleapi.Expand(req.URL, map[string]string{
 17919  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 17920  		"orderId":    c.orderId,
 17921  	})
 17922  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 17923  }
 17924  
 17925  // Do executes the "content.orderinvoices.createrefundinvoice" call.
 17926  // Exactly one of *OrderinvoicesCreateRefundInvoiceResponse or error
 17927  // will be non-nil. Any non-2xx status code is an error. Response
 17928  // headers are in either
 17929  // *OrderinvoicesCreateRefundInvoiceResponse.ServerResponse.Header or
 17930  // (if a response was returned at all) in
 17931  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 17932  // whether the returned error was because http.StatusNotModified was
 17933  // returned.
 17934  func (c *OrderinvoicesCreaterefundinvoiceCall) Do(opts ...googleapi.CallOption) (*OrderinvoicesCreateRefundInvoiceResponse, error) {
 17935  	gensupport.SetOptions(c.urlParams_, opts...)
 17936  	res, err := c.doRequest("json")
 17937  	if res != nil && res.StatusCode == http.StatusNotModified {
 17938  		if res.Body != nil {
 17939  			res.Body.Close()
 17940  		}
 17941  		return nil, &googleapi.Error{
 17942  			Code:   res.StatusCode,
 17943  			Header: res.Header,
 17944  		}
 17945  	}
 17946  	if err != nil {
 17947  		return nil, err
 17948  	}
 17949  	defer googleapi.CloseBody(res)
 17950  	if err := googleapi.CheckResponse(res); err != nil {
 17951  		return nil, err
 17952  	}
 17953  	ret := &OrderinvoicesCreateRefundInvoiceResponse{
 17954  		ServerResponse: googleapi.ServerResponse{
 17955  			Header:         res.Header,
 17956  			HTTPStatusCode: res.StatusCode,
 17957  		},
 17958  	}
 17959  	target := &ret
 17960  	if err := gensupport.DecodeResponse(target, res); err != nil {
 17961  		return nil, err
 17962  	}
 17963  	return ret, nil
 17964  	// {
 17965  	//   "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.",
 17966  	//   "flatPath": "{merchantId}/orderinvoices/{orderId}/createRefundInvoice",
 17967  	//   "httpMethod": "POST",
 17968  	//   "id": "content.orderinvoices.createrefundinvoice",
 17969  	//   "parameterOrder": [
 17970  	//     "merchantId",
 17971  	//     "orderId"
 17972  	//   ],
 17973  	//   "parameters": {
 17974  	//     "merchantId": {
 17975  	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
 17976  	//       "format": "uint64",
 17977  	//       "location": "path",
 17978  	//       "required": true,
 17979  	//       "type": "string"
 17980  	//     },
 17981  	//     "orderId": {
 17982  	//       "description": "The ID of the order.",
 17983  	//       "location": "path",
 17984  	//       "required": true,
 17985  	//       "type": "string"
 17986  	//     }
 17987  	//   },
 17988  	//   "path": "{merchantId}/orderinvoices/{orderId}/createRefundInvoice",
 17989  	//   "request": {
 17990  	//     "$ref": "OrderinvoicesCreateRefundInvoiceRequest"
 17991  	//   },
 17992  	//   "response": {
 17993  	//     "$ref": "OrderinvoicesCreateRefundInvoiceResponse"
 17994  	//   },
 17995  	//   "scopes": [
 17996  	//     "https://www.googleapis.com/auth/content"
 17997  	//   ]
 17998  	// }
 17999  
 18000  }
 18001  
 18002  // method id "content.orderreports.listdisbursements":
 18003  
 18004  type OrderreportsListdisbursementsCall struct {
 18005  	s            *APIService
 18006  	merchantId   uint64
 18007  	urlParams_   gensupport.URLParams
 18008  	ifNoneMatch_ string
 18009  	ctx_         context.Context
 18010  	header_      http.Header
 18011  }
 18012  
 18013  // Listdisbursements: Retrieves a report for disbursements from your
 18014  // Merchant Center account.
 18015  //
 18016  //   - merchantId: The ID of the account that manages the order. This
 18017  //     cannot be a multi-client account.
 18018  func (r *OrderreportsService) Listdisbursements(merchantId uint64) *OrderreportsListdisbursementsCall {
 18019  	c := &OrderreportsListdisbursementsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 18020  	c.merchantId = merchantId
 18021  	return c
 18022  }
 18023  
 18024  // DisbursementEndDate sets the optional parameter
 18025  // "disbursementEndDate": The last date which disbursements occurred. In
 18026  // ISO 8601 format. Default: current date.
 18027  func (c *OrderreportsListdisbursementsCall) DisbursementEndDate(disbursementEndDate string) *OrderreportsListdisbursementsCall {
 18028  	c.urlParams_.Set("disbursementEndDate", disbursementEndDate)
 18029  	return c
 18030  }
 18031  
 18032  // DisbursementStartDate sets the optional parameter
 18033  // "disbursementStartDate": The first date which disbursements occurred.
 18034  // In ISO 8601 format.
 18035  func (c *OrderreportsListdisbursementsCall) DisbursementStartDate(disbursementStartDate string) *OrderreportsListdisbursementsCall {
 18036  	c.urlParams_.Set("disbursementStartDate", disbursementStartDate)
 18037  	return c
 18038  }
 18039  
 18040  // MaxResults sets the optional parameter "maxResults": The maximum
 18041  // number of disbursements to return in the response, used for paging.
 18042  func (c *OrderreportsListdisbursementsCall) MaxResults(maxResults int64) *OrderreportsListdisbursementsCall {
 18043  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 18044  	return c
 18045  }
 18046  
 18047  // PageToken sets the optional parameter "pageToken": The token returned
 18048  // by the previous request.
 18049  func (c *OrderreportsListdisbursementsCall) PageToken(pageToken string) *OrderreportsListdisbursementsCall {
 18050  	c.urlParams_.Set("pageToken", pageToken)
 18051  	return c
 18052  }
 18053  
 18054  // Fields allows partial responses to be retrieved. See
 18055  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 18056  // for more information.
 18057  func (c *OrderreportsListdisbursementsCall) Fields(s ...googleapi.Field) *OrderreportsListdisbursementsCall {
 18058  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 18059  	return c
 18060  }
 18061  
 18062  // IfNoneMatch sets the optional parameter which makes the operation
 18063  // fail if the object's ETag matches the given value. This is useful for
 18064  // getting updates only after the object has changed since the last
 18065  // request. Use googleapi.IsNotModified to check whether the response
 18066  // error from Do is the result of In-None-Match.
 18067  func (c *OrderreportsListdisbursementsCall) IfNoneMatch(entityTag string) *OrderreportsListdisbursementsCall {
 18068  	c.ifNoneMatch_ = entityTag
 18069  	return c
 18070  }
 18071  
 18072  // Context sets the context to be used in this call's Do method. Any
 18073  // pending HTTP request will be aborted if the provided context is
 18074  // canceled.
 18075  func (c *OrderreportsListdisbursementsCall) Context(ctx context.Context) *OrderreportsListdisbursementsCall {
 18076  	c.ctx_ = ctx
 18077  	return c
 18078  }
 18079  
 18080  // Header returns an http.Header that can be modified by the caller to
 18081  // add HTTP headers to the request.
 18082  func (c *OrderreportsListdisbursementsCall) Header() http.Header {
 18083  	if c.header_ == nil {
 18084  		c.header_ = make(http.Header)
 18085  	}
 18086  	return c.header_
 18087  }
 18088  
 18089  func (c *OrderreportsListdisbursementsCall) doRequest(alt string) (*http.Response, error) {
 18090  	reqHeaders := make(http.Header)
 18091  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 18092  	for k, v := range c.header_ {
 18093  		reqHeaders[k] = v
 18094  	}
 18095  	reqHeaders.Set("User-Agent", c.s.userAgent())
 18096  	if c.ifNoneMatch_ != "" {
 18097  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 18098  	}
 18099  	var body io.Reader = nil
 18100  	c.urlParams_.Set("alt", alt)
 18101  	c.urlParams_.Set("prettyPrint", "false")
 18102  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreports/disbursements")
 18103  	urls += "?" + c.urlParams_.Encode()
 18104  	req, err := http.NewRequest("GET", urls, body)
 18105  	if err != nil {
 18106  		return nil, err
 18107  	}
 18108  	req.Header = reqHeaders
 18109  	googleapi.Expand(req.URL, map[string]string{
 18110  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 18111  	})
 18112  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 18113  }
 18114  
 18115  // Do executes the "content.orderreports.listdisbursements" call.
 18116  // Exactly one of *OrderreportsListDisbursementsResponse or error will
 18117  // be non-nil. Any non-2xx status code is an error. Response headers are
 18118  // in either
 18119  // *OrderreportsListDisbursementsResponse.ServerResponse.Header or (if a
 18120  // response was returned at all) in error.(*googleapi.Error).Header. Use
 18121  // googleapi.IsNotModified to check whether the returned error was
 18122  // because http.StatusNotModified was returned.
 18123  func (c *OrderreportsListdisbursementsCall) Do(opts ...googleapi.CallOption) (*OrderreportsListDisbursementsResponse, error) {
 18124  	gensupport.SetOptions(c.urlParams_, opts...)
 18125  	res, err := c.doRequest("json")
 18126  	if res != nil && res.StatusCode == http.StatusNotModified {
 18127  		if res.Body != nil {
 18128  			res.Body.Close()
 18129  		}
 18130  		return nil, &googleapi.Error{
 18131  			Code:   res.StatusCode,
 18132  			Header: res.Header,
 18133  		}
 18134  	}
 18135  	if err != nil {
 18136  		return nil, err
 18137  	}
 18138  	defer googleapi.CloseBody(res)
 18139  	if err := googleapi.CheckResponse(res); err != nil {
 18140  		return nil, err
 18141  	}
 18142  	ret := &OrderreportsListDisbursementsResponse{
 18143  		ServerResponse: googleapi.ServerResponse{
 18144  			Header:         res.Header,
 18145  			HTTPStatusCode: res.StatusCode,
 18146  		},
 18147  	}
 18148  	target := &ret
 18149  	if err := gensupport.DecodeResponse(target, res); err != nil {
 18150  		return nil, err
 18151  	}
 18152  	return ret, nil
 18153  	// {
 18154  	//   "description": "Retrieves a report for disbursements from your Merchant Center account.",
 18155  	//   "flatPath": "{merchantId}/orderreports/disbursements",
 18156  	//   "httpMethod": "GET",
 18157  	//   "id": "content.orderreports.listdisbursements",
 18158  	//   "parameterOrder": [
 18159  	//     "merchantId"
 18160  	//   ],
 18161  	//   "parameters": {
 18162  	//     "disbursementEndDate": {
 18163  	//       "description": "The last date which disbursements occurred. In ISO 8601 format. Default: current date.",
 18164  	//       "location": "query",
 18165  	//       "type": "string"
 18166  	//     },
 18167  	//     "disbursementStartDate": {
 18168  	//       "description": "The first date which disbursements occurred. In ISO 8601 format.",
 18169  	//       "location": "query",
 18170  	//       "type": "string"
 18171  	//     },
 18172  	//     "maxResults": {
 18173  	//       "description": "The maximum number of disbursements to return in the response, used for paging.",
 18174  	//       "format": "uint32",
 18175  	//       "location": "query",
 18176  	//       "type": "integer"
 18177  	//     },
 18178  	//     "merchantId": {
 18179  	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
 18180  	//       "format": "uint64",
 18181  	//       "location": "path",
 18182  	//       "required": true,
 18183  	//       "type": "string"
 18184  	//     },
 18185  	//     "pageToken": {
 18186  	//       "description": "The token returned by the previous request.",
 18187  	//       "location": "query",
 18188  	//       "type": "string"
 18189  	//     }
 18190  	//   },
 18191  	//   "path": "{merchantId}/orderreports/disbursements",
 18192  	//   "response": {
 18193  	//     "$ref": "OrderreportsListDisbursementsResponse"
 18194  	//   },
 18195  	//   "scopes": [
 18196  	//     "https://www.googleapis.com/auth/content"
 18197  	//   ]
 18198  	// }
 18199  
 18200  }
 18201  
 18202  // Pages invokes f for each page of results.
 18203  // A non-nil error returned from f will halt the iteration.
 18204  // The provided context supersedes any context provided to the Context method.
 18205  func (c *OrderreportsListdisbursementsCall) Pages(ctx context.Context, f func(*OrderreportsListDisbursementsResponse) error) error {
 18206  	c.ctx_ = ctx
 18207  	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
 18208  	for {
 18209  		x, err := c.Do()
 18210  		if err != nil {
 18211  			return err
 18212  		}
 18213  		if err := f(x); err != nil {
 18214  			return err
 18215  		}
 18216  		if x.NextPageToken == "" {
 18217  			return nil
 18218  		}
 18219  		c.PageToken(x.NextPageToken)
 18220  	}
 18221  }
 18222  
 18223  // method id "content.orderreports.listtransactions":
 18224  
 18225  type OrderreportsListtransactionsCall struct {
 18226  	s              *APIService
 18227  	merchantId     uint64
 18228  	disbursementId string
 18229  	urlParams_     gensupport.URLParams
 18230  	ifNoneMatch_   string
 18231  	ctx_           context.Context
 18232  	header_        http.Header
 18233  }
 18234  
 18235  // Listtransactions: Retrieves a list of transactions for a disbursement
 18236  // from your Merchant Center account.
 18237  //
 18238  //   - disbursementId: The Google-provided ID of the disbursement (found
 18239  //     in Wallet).
 18240  //   - merchantId: The ID of the account that manages the order. This
 18241  //     cannot be a multi-client account.
 18242  func (r *OrderreportsService) Listtransactions(merchantId uint64, disbursementId string) *OrderreportsListtransactionsCall {
 18243  	c := &OrderreportsListtransactionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 18244  	c.merchantId = merchantId
 18245  	c.disbursementId = disbursementId
 18246  	return c
 18247  }
 18248  
 18249  // MaxResults sets the optional parameter "maxResults": The maximum
 18250  // number of disbursements to return in the response, used for paging.
 18251  func (c *OrderreportsListtransactionsCall) MaxResults(maxResults int64) *OrderreportsListtransactionsCall {
 18252  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 18253  	return c
 18254  }
 18255  
 18256  // PageToken sets the optional parameter "pageToken": The token returned
 18257  // by the previous request.
 18258  func (c *OrderreportsListtransactionsCall) PageToken(pageToken string) *OrderreportsListtransactionsCall {
 18259  	c.urlParams_.Set("pageToken", pageToken)
 18260  	return c
 18261  }
 18262  
 18263  // TransactionEndDate sets the optional parameter "transactionEndDate":
 18264  // The last date in which transaction occurred. In ISO 8601 format.
 18265  // Default: current date.
 18266  func (c *OrderreportsListtransactionsCall) TransactionEndDate(transactionEndDate string) *OrderreportsListtransactionsCall {
 18267  	c.urlParams_.Set("transactionEndDate", transactionEndDate)
 18268  	return c
 18269  }
 18270  
 18271  // TransactionStartDate sets the optional parameter
 18272  // "transactionStartDate": The first date in which transaction occurred.
 18273  // In ISO 8601 format.
 18274  func (c *OrderreportsListtransactionsCall) TransactionStartDate(transactionStartDate string) *OrderreportsListtransactionsCall {
 18275  	c.urlParams_.Set("transactionStartDate", transactionStartDate)
 18276  	return c
 18277  }
 18278  
 18279  // Fields allows partial responses to be retrieved. See
 18280  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 18281  // for more information.
 18282  func (c *OrderreportsListtransactionsCall) Fields(s ...googleapi.Field) *OrderreportsListtransactionsCall {
 18283  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 18284  	return c
 18285  }
 18286  
 18287  // IfNoneMatch sets the optional parameter which makes the operation
 18288  // fail if the object's ETag matches the given value. This is useful for
 18289  // getting updates only after the object has changed since the last
 18290  // request. Use googleapi.IsNotModified to check whether the response
 18291  // error from Do is the result of In-None-Match.
 18292  func (c *OrderreportsListtransactionsCall) IfNoneMatch(entityTag string) *OrderreportsListtransactionsCall {
 18293  	c.ifNoneMatch_ = entityTag
 18294  	return c
 18295  }
 18296  
 18297  // Context sets the context to be used in this call's Do method. Any
 18298  // pending HTTP request will be aborted if the provided context is
 18299  // canceled.
 18300  func (c *OrderreportsListtransactionsCall) Context(ctx context.Context) *OrderreportsListtransactionsCall {
 18301  	c.ctx_ = ctx
 18302  	return c
 18303  }
 18304  
 18305  // Header returns an http.Header that can be modified by the caller to
 18306  // add HTTP headers to the request.
 18307  func (c *OrderreportsListtransactionsCall) Header() http.Header {
 18308  	if c.header_ == nil {
 18309  		c.header_ = make(http.Header)
 18310  	}
 18311  	return c.header_
 18312  }
 18313  
 18314  func (c *OrderreportsListtransactionsCall) doRequest(alt string) (*http.Response, error) {
 18315  	reqHeaders := make(http.Header)
 18316  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 18317  	for k, v := range c.header_ {
 18318  		reqHeaders[k] = v
 18319  	}
 18320  	reqHeaders.Set("User-Agent", c.s.userAgent())
 18321  	if c.ifNoneMatch_ != "" {
 18322  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 18323  	}
 18324  	var body io.Reader = nil
 18325  	c.urlParams_.Set("alt", alt)
 18326  	c.urlParams_.Set("prettyPrint", "false")
 18327  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreports/disbursements/{disbursementId}/transactions")
 18328  	urls += "?" + c.urlParams_.Encode()
 18329  	req, err := http.NewRequest("GET", urls, body)
 18330  	if err != nil {
 18331  		return nil, err
 18332  	}
 18333  	req.Header = reqHeaders
 18334  	googleapi.Expand(req.URL, map[string]string{
 18335  		"merchantId":     strconv.FormatUint(c.merchantId, 10),
 18336  		"disbursementId": c.disbursementId,
 18337  	})
 18338  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 18339  }
 18340  
 18341  // Do executes the "content.orderreports.listtransactions" call.
 18342  // Exactly one of *OrderreportsListTransactionsResponse or error will be
 18343  // non-nil. Any non-2xx status code is an error. Response headers are in
 18344  // either *OrderreportsListTransactionsResponse.ServerResponse.Header or
 18345  // (if a response was returned at all) in
 18346  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 18347  // whether the returned error was because http.StatusNotModified was
 18348  // returned.
 18349  func (c *OrderreportsListtransactionsCall) Do(opts ...googleapi.CallOption) (*OrderreportsListTransactionsResponse, error) {
 18350  	gensupport.SetOptions(c.urlParams_, opts...)
 18351  	res, err := c.doRequest("json")
 18352  	if res != nil && res.StatusCode == http.StatusNotModified {
 18353  		if res.Body != nil {
 18354  			res.Body.Close()
 18355  		}
 18356  		return nil, &googleapi.Error{
 18357  			Code:   res.StatusCode,
 18358  			Header: res.Header,
 18359  		}
 18360  	}
 18361  	if err != nil {
 18362  		return nil, err
 18363  	}
 18364  	defer googleapi.CloseBody(res)
 18365  	if err := googleapi.CheckResponse(res); err != nil {
 18366  		return nil, err
 18367  	}
 18368  	ret := &OrderreportsListTransactionsResponse{
 18369  		ServerResponse: googleapi.ServerResponse{
 18370  			Header:         res.Header,
 18371  			HTTPStatusCode: res.StatusCode,
 18372  		},
 18373  	}
 18374  	target := &ret
 18375  	if err := gensupport.DecodeResponse(target, res); err != nil {
 18376  		return nil, err
 18377  	}
 18378  	return ret, nil
 18379  	// {
 18380  	//   "description": "Retrieves a list of transactions for a disbursement from your Merchant Center account.",
 18381  	//   "flatPath": "{merchantId}/orderreports/disbursements/{disbursementId}/transactions",
 18382  	//   "httpMethod": "GET",
 18383  	//   "id": "content.orderreports.listtransactions",
 18384  	//   "parameterOrder": [
 18385  	//     "merchantId",
 18386  	//     "disbursementId"
 18387  	//   ],
 18388  	//   "parameters": {
 18389  	//     "disbursementId": {
 18390  	//       "description": "The Google-provided ID of the disbursement (found in Wallet).",
 18391  	//       "location": "path",
 18392  	//       "required": true,
 18393  	//       "type": "string"
 18394  	//     },
 18395  	//     "maxResults": {
 18396  	//       "description": "The maximum number of disbursements to return in the response, used for paging.",
 18397  	//       "format": "uint32",
 18398  	//       "location": "query",
 18399  	//       "type": "integer"
 18400  	//     },
 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  	//     "pageToken": {
 18409  	//       "description": "The token returned by the previous request.",
 18410  	//       "location": "query",
 18411  	//       "type": "string"
 18412  	//     },
 18413  	//     "transactionEndDate": {
 18414  	//       "description": "The last date in which transaction occurred. In ISO 8601 format. Default: current date.",
 18415  	//       "location": "query",
 18416  	//       "type": "string"
 18417  	//     },
 18418  	//     "transactionStartDate": {
 18419  	//       "description": "The first date in which transaction occurred. In ISO 8601 format.",
 18420  	//       "location": "query",
 18421  	//       "type": "string"
 18422  	//     }
 18423  	//   },
 18424  	//   "path": "{merchantId}/orderreports/disbursements/{disbursementId}/transactions",
 18425  	//   "response": {
 18426  	//     "$ref": "OrderreportsListTransactionsResponse"
 18427  	//   },
 18428  	//   "scopes": [
 18429  	//     "https://www.googleapis.com/auth/content"
 18430  	//   ]
 18431  	// }
 18432  
 18433  }
 18434  
 18435  // Pages invokes f for each page of results.
 18436  // A non-nil error returned from f will halt the iteration.
 18437  // The provided context supersedes any context provided to the Context method.
 18438  func (c *OrderreportsListtransactionsCall) Pages(ctx context.Context, f func(*OrderreportsListTransactionsResponse) error) error {
 18439  	c.ctx_ = ctx
 18440  	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
 18441  	for {
 18442  		x, err := c.Do()
 18443  		if err != nil {
 18444  			return err
 18445  		}
 18446  		if err := f(x); err != nil {
 18447  			return err
 18448  		}
 18449  		if x.NextPageToken == "" {
 18450  			return nil
 18451  		}
 18452  		c.PageToken(x.NextPageToken)
 18453  	}
 18454  }
 18455  
 18456  // method id "content.orderreturns.get":
 18457  
 18458  type OrderreturnsGetCall struct {
 18459  	s            *APIService
 18460  	merchantId   uint64
 18461  	returnId     string
 18462  	urlParams_   gensupport.URLParams
 18463  	ifNoneMatch_ string
 18464  	ctx_         context.Context
 18465  	header_      http.Header
 18466  }
 18467  
 18468  // Get: Retrieves an order return from your Merchant Center account.
 18469  //
 18470  //   - merchantId: The ID of the account that manages the order. This
 18471  //     cannot be a multi-client account.
 18472  //   - returnId: Merchant order return ID generated by Google.
 18473  func (r *OrderreturnsService) Get(merchantId uint64, returnId string) *OrderreturnsGetCall {
 18474  	c := &OrderreturnsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 18475  	c.merchantId = merchantId
 18476  	c.returnId = returnId
 18477  	return c
 18478  }
 18479  
 18480  // Fields allows partial responses to be retrieved. See
 18481  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 18482  // for more information.
 18483  func (c *OrderreturnsGetCall) Fields(s ...googleapi.Field) *OrderreturnsGetCall {
 18484  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 18485  	return c
 18486  }
 18487  
 18488  // IfNoneMatch sets the optional parameter which makes the operation
 18489  // fail if the object's ETag matches the given value. This is useful for
 18490  // getting updates only after the object has changed since the last
 18491  // request. Use googleapi.IsNotModified to check whether the response
 18492  // error from Do is the result of In-None-Match.
 18493  func (c *OrderreturnsGetCall) IfNoneMatch(entityTag string) *OrderreturnsGetCall {
 18494  	c.ifNoneMatch_ = entityTag
 18495  	return c
 18496  }
 18497  
 18498  // Context sets the context to be used in this call's Do method. Any
 18499  // pending HTTP request will be aborted if the provided context is
 18500  // canceled.
 18501  func (c *OrderreturnsGetCall) Context(ctx context.Context) *OrderreturnsGetCall {
 18502  	c.ctx_ = ctx
 18503  	return c
 18504  }
 18505  
 18506  // Header returns an http.Header that can be modified by the caller to
 18507  // add HTTP headers to the request.
 18508  func (c *OrderreturnsGetCall) Header() http.Header {
 18509  	if c.header_ == nil {
 18510  		c.header_ = make(http.Header)
 18511  	}
 18512  	return c.header_
 18513  }
 18514  
 18515  func (c *OrderreturnsGetCall) doRequest(alt string) (*http.Response, error) {
 18516  	reqHeaders := make(http.Header)
 18517  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 18518  	for k, v := range c.header_ {
 18519  		reqHeaders[k] = v
 18520  	}
 18521  	reqHeaders.Set("User-Agent", c.s.userAgent())
 18522  	if c.ifNoneMatch_ != "" {
 18523  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 18524  	}
 18525  	var body io.Reader = nil
 18526  	c.urlParams_.Set("alt", alt)
 18527  	c.urlParams_.Set("prettyPrint", "false")
 18528  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreturns/{returnId}")
 18529  	urls += "?" + c.urlParams_.Encode()
 18530  	req, err := http.NewRequest("GET", urls, body)
 18531  	if err != nil {
 18532  		return nil, err
 18533  	}
 18534  	req.Header = reqHeaders
 18535  	googleapi.Expand(req.URL, map[string]string{
 18536  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 18537  		"returnId":   c.returnId,
 18538  	})
 18539  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 18540  }
 18541  
 18542  // Do executes the "content.orderreturns.get" call.
 18543  // Exactly one of *MerchantOrderReturn or error will be non-nil. Any
 18544  // non-2xx status code is an error. Response headers are in either
 18545  // *MerchantOrderReturn.ServerResponse.Header or (if a response was
 18546  // returned at all) in error.(*googleapi.Error).Header. Use
 18547  // googleapi.IsNotModified to check whether the returned error was
 18548  // because http.StatusNotModified was returned.
 18549  func (c *OrderreturnsGetCall) Do(opts ...googleapi.CallOption) (*MerchantOrderReturn, error) {
 18550  	gensupport.SetOptions(c.urlParams_, opts...)
 18551  	res, err := c.doRequest("json")
 18552  	if res != nil && res.StatusCode == http.StatusNotModified {
 18553  		if res.Body != nil {
 18554  			res.Body.Close()
 18555  		}
 18556  		return nil, &googleapi.Error{
 18557  			Code:   res.StatusCode,
 18558  			Header: res.Header,
 18559  		}
 18560  	}
 18561  	if err != nil {
 18562  		return nil, err
 18563  	}
 18564  	defer googleapi.CloseBody(res)
 18565  	if err := googleapi.CheckResponse(res); err != nil {
 18566  		return nil, err
 18567  	}
 18568  	ret := &MerchantOrderReturn{
 18569  		ServerResponse: googleapi.ServerResponse{
 18570  			Header:         res.Header,
 18571  			HTTPStatusCode: res.StatusCode,
 18572  		},
 18573  	}
 18574  	target := &ret
 18575  	if err := gensupport.DecodeResponse(target, res); err != nil {
 18576  		return nil, err
 18577  	}
 18578  	return ret, nil
 18579  	// {
 18580  	//   "description": "Retrieves an order return from your Merchant Center account.",
 18581  	//   "flatPath": "{merchantId}/orderreturns/{returnId}",
 18582  	//   "httpMethod": "GET",
 18583  	//   "id": "content.orderreturns.get",
 18584  	//   "parameterOrder": [
 18585  	//     "merchantId",
 18586  	//     "returnId"
 18587  	//   ],
 18588  	//   "parameters": {
 18589  	//     "merchantId": {
 18590  	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
 18591  	//       "format": "uint64",
 18592  	//       "location": "path",
 18593  	//       "required": true,
 18594  	//       "type": "string"
 18595  	//     },
 18596  	//     "returnId": {
 18597  	//       "description": "Merchant order return ID generated by Google.",
 18598  	//       "location": "path",
 18599  	//       "required": true,
 18600  	//       "type": "string"
 18601  	//     }
 18602  	//   },
 18603  	//   "path": "{merchantId}/orderreturns/{returnId}",
 18604  	//   "response": {
 18605  	//     "$ref": "MerchantOrderReturn"
 18606  	//   },
 18607  	//   "scopes": [
 18608  	//     "https://www.googleapis.com/auth/content"
 18609  	//   ]
 18610  	// }
 18611  
 18612  }
 18613  
 18614  // method id "content.orderreturns.list":
 18615  
 18616  type OrderreturnsListCall struct {
 18617  	s            *APIService
 18618  	merchantId   uint64
 18619  	urlParams_   gensupport.URLParams
 18620  	ifNoneMatch_ string
 18621  	ctx_         context.Context
 18622  	header_      http.Header
 18623  }
 18624  
 18625  // List: Lists order returns in your Merchant Center account.
 18626  //
 18627  //   - merchantId: The ID of the account that manages the order. This
 18628  //     cannot be a multi-client account.
 18629  func (r *OrderreturnsService) List(merchantId uint64) *OrderreturnsListCall {
 18630  	c := &OrderreturnsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 18631  	c.merchantId = merchantId
 18632  	return c
 18633  }
 18634  
 18635  // CreatedEndDate sets the optional parameter "createdEndDate": Obtains
 18636  // order returns created before this date (inclusively), in ISO 8601
 18637  // format.
 18638  func (c *OrderreturnsListCall) CreatedEndDate(createdEndDate string) *OrderreturnsListCall {
 18639  	c.urlParams_.Set("createdEndDate", createdEndDate)
 18640  	return c
 18641  }
 18642  
 18643  // CreatedStartDate sets the optional parameter "createdStartDate":
 18644  // Obtains order returns created after this date (inclusively), in ISO
 18645  // 8601 format.
 18646  func (c *OrderreturnsListCall) CreatedStartDate(createdStartDate string) *OrderreturnsListCall {
 18647  	c.urlParams_.Set("createdStartDate", createdStartDate)
 18648  	return c
 18649  }
 18650  
 18651  // MaxResults sets the optional parameter "maxResults": The maximum
 18652  // number of order returns to return in the response, used for paging.
 18653  // The default value is 25 returns per page, and the maximum allowed
 18654  // value is 250 returns per page.
 18655  func (c *OrderreturnsListCall) MaxResults(maxResults int64) *OrderreturnsListCall {
 18656  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 18657  	return c
 18658  }
 18659  
 18660  // OrderBy sets the optional parameter "orderBy": Return the results in
 18661  // the specified order.
 18662  //
 18663  // Possible values:
 18664  //
 18665  //	"RETURN_CREATION_TIME_DESC"
 18666  //	"RETURN_CREATION_TIME_ASC"
 18667  func (c *OrderreturnsListCall) OrderBy(orderBy string) *OrderreturnsListCall {
 18668  	c.urlParams_.Set("orderBy", orderBy)
 18669  	return c
 18670  }
 18671  
 18672  // PageToken sets the optional parameter "pageToken": The token returned
 18673  // by the previous request.
 18674  func (c *OrderreturnsListCall) PageToken(pageToken string) *OrderreturnsListCall {
 18675  	c.urlParams_.Set("pageToken", pageToken)
 18676  	return c
 18677  }
 18678  
 18679  // Fields allows partial responses to be retrieved. See
 18680  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 18681  // for more information.
 18682  func (c *OrderreturnsListCall) Fields(s ...googleapi.Field) *OrderreturnsListCall {
 18683  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 18684  	return c
 18685  }
 18686  
 18687  // IfNoneMatch sets the optional parameter which makes the operation
 18688  // fail if the object's ETag matches the given value. This is useful for
 18689  // getting updates only after the object has changed since the last
 18690  // request. Use googleapi.IsNotModified to check whether the response
 18691  // error from Do is the result of In-None-Match.
 18692  func (c *OrderreturnsListCall) IfNoneMatch(entityTag string) *OrderreturnsListCall {
 18693  	c.ifNoneMatch_ = entityTag
 18694  	return c
 18695  }
 18696  
 18697  // Context sets the context to be used in this call's Do method. Any
 18698  // pending HTTP request will be aborted if the provided context is
 18699  // canceled.
 18700  func (c *OrderreturnsListCall) Context(ctx context.Context) *OrderreturnsListCall {
 18701  	c.ctx_ = ctx
 18702  	return c
 18703  }
 18704  
 18705  // Header returns an http.Header that can be modified by the caller to
 18706  // add HTTP headers to the request.
 18707  func (c *OrderreturnsListCall) Header() http.Header {
 18708  	if c.header_ == nil {
 18709  		c.header_ = make(http.Header)
 18710  	}
 18711  	return c.header_
 18712  }
 18713  
 18714  func (c *OrderreturnsListCall) doRequest(alt string) (*http.Response, error) {
 18715  	reqHeaders := make(http.Header)
 18716  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 18717  	for k, v := range c.header_ {
 18718  		reqHeaders[k] = v
 18719  	}
 18720  	reqHeaders.Set("User-Agent", c.s.userAgent())
 18721  	if c.ifNoneMatch_ != "" {
 18722  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 18723  	}
 18724  	var body io.Reader = nil
 18725  	c.urlParams_.Set("alt", alt)
 18726  	c.urlParams_.Set("prettyPrint", "false")
 18727  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orderreturns")
 18728  	urls += "?" + c.urlParams_.Encode()
 18729  	req, err := http.NewRequest("GET", urls, body)
 18730  	if err != nil {
 18731  		return nil, err
 18732  	}
 18733  	req.Header = reqHeaders
 18734  	googleapi.Expand(req.URL, map[string]string{
 18735  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 18736  	})
 18737  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 18738  }
 18739  
 18740  // Do executes the "content.orderreturns.list" call.
 18741  // Exactly one of *OrderreturnsListResponse or error will be non-nil.
 18742  // Any non-2xx status code is an error. Response headers are in either
 18743  // *OrderreturnsListResponse.ServerResponse.Header or (if a response was
 18744  // returned at all) in error.(*googleapi.Error).Header. Use
 18745  // googleapi.IsNotModified to check whether the returned error was
 18746  // because http.StatusNotModified was returned.
 18747  func (c *OrderreturnsListCall) Do(opts ...googleapi.CallOption) (*OrderreturnsListResponse, error) {
 18748  	gensupport.SetOptions(c.urlParams_, opts...)
 18749  	res, err := c.doRequest("json")
 18750  	if res != nil && res.StatusCode == http.StatusNotModified {
 18751  		if res.Body != nil {
 18752  			res.Body.Close()
 18753  		}
 18754  		return nil, &googleapi.Error{
 18755  			Code:   res.StatusCode,
 18756  			Header: res.Header,
 18757  		}
 18758  	}
 18759  	if err != nil {
 18760  		return nil, err
 18761  	}
 18762  	defer googleapi.CloseBody(res)
 18763  	if err := googleapi.CheckResponse(res); err != nil {
 18764  		return nil, err
 18765  	}
 18766  	ret := &OrderreturnsListResponse{
 18767  		ServerResponse: googleapi.ServerResponse{
 18768  			Header:         res.Header,
 18769  			HTTPStatusCode: res.StatusCode,
 18770  		},
 18771  	}
 18772  	target := &ret
 18773  	if err := gensupport.DecodeResponse(target, res); err != nil {
 18774  		return nil, err
 18775  	}
 18776  	return ret, nil
 18777  	// {
 18778  	//   "description": "Lists order returns in your Merchant Center account.",
 18779  	//   "flatPath": "{merchantId}/orderreturns",
 18780  	//   "httpMethod": "GET",
 18781  	//   "id": "content.orderreturns.list",
 18782  	//   "parameterOrder": [
 18783  	//     "merchantId"
 18784  	//   ],
 18785  	//   "parameters": {
 18786  	//     "createdEndDate": {
 18787  	//       "description": "Obtains order returns created before this date (inclusively), in ISO 8601 format.",
 18788  	//       "location": "query",
 18789  	//       "type": "string"
 18790  	//     },
 18791  	//     "createdStartDate": {
 18792  	//       "description": "Obtains order returns created after this date (inclusively), in ISO 8601 format.",
 18793  	//       "location": "query",
 18794  	//       "type": "string"
 18795  	//     },
 18796  	//     "maxResults": {
 18797  	//       "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.",
 18798  	//       "format": "uint32",
 18799  	//       "location": "query",
 18800  	//       "type": "integer"
 18801  	//     },
 18802  	//     "merchantId": {
 18803  	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
 18804  	//       "format": "uint64",
 18805  	//       "location": "path",
 18806  	//       "required": true,
 18807  	//       "type": "string"
 18808  	//     },
 18809  	//     "orderBy": {
 18810  	//       "description": "Return the results in the specified order.",
 18811  	//       "enum": [
 18812  	//         "RETURN_CREATION_TIME_DESC",
 18813  	//         "RETURN_CREATION_TIME_ASC"
 18814  	//       ],
 18815  	//       "enumDescriptions": [
 18816  	//         "",
 18817  	//         ""
 18818  	//       ],
 18819  	//       "location": "query",
 18820  	//       "type": "string"
 18821  	//     },
 18822  	//     "pageToken": {
 18823  	//       "description": "The token returned by the previous request.",
 18824  	//       "location": "query",
 18825  	//       "type": "string"
 18826  	//     }
 18827  	//   },
 18828  	//   "path": "{merchantId}/orderreturns",
 18829  	//   "response": {
 18830  	//     "$ref": "OrderreturnsListResponse"
 18831  	//   },
 18832  	//   "scopes": [
 18833  	//     "https://www.googleapis.com/auth/content"
 18834  	//   ]
 18835  	// }
 18836  
 18837  }
 18838  
 18839  // Pages invokes f for each page of results.
 18840  // A non-nil error returned from f will halt the iteration.
 18841  // The provided context supersedes any context provided to the Context method.
 18842  func (c *OrderreturnsListCall) Pages(ctx context.Context, f func(*OrderreturnsListResponse) error) error {
 18843  	c.ctx_ = ctx
 18844  	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
 18845  	for {
 18846  		x, err := c.Do()
 18847  		if err != nil {
 18848  			return err
 18849  		}
 18850  		if err := f(x); err != nil {
 18851  			return err
 18852  		}
 18853  		if x.NextPageToken == "" {
 18854  			return nil
 18855  		}
 18856  		c.PageToken(x.NextPageToken)
 18857  	}
 18858  }
 18859  
 18860  // method id "content.orders.acknowledge":
 18861  
 18862  type OrdersAcknowledgeCall struct {
 18863  	s                        *APIService
 18864  	merchantId               uint64
 18865  	orderId                  string
 18866  	ordersacknowledgerequest *OrdersAcknowledgeRequest
 18867  	urlParams_               gensupport.URLParams
 18868  	ctx_                     context.Context
 18869  	header_                  http.Header
 18870  }
 18871  
 18872  // Acknowledge: Marks an order as acknowledged.
 18873  //
 18874  //   - merchantId: The ID of the account that manages the order. This
 18875  //     cannot be a multi-client account.
 18876  //   - orderId: The ID of the order.
 18877  func (r *OrdersService) Acknowledge(merchantId uint64, orderId string, ordersacknowledgerequest *OrdersAcknowledgeRequest) *OrdersAcknowledgeCall {
 18878  	c := &OrdersAcknowledgeCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 18879  	c.merchantId = merchantId
 18880  	c.orderId = orderId
 18881  	c.ordersacknowledgerequest = ordersacknowledgerequest
 18882  	return c
 18883  }
 18884  
 18885  // Fields allows partial responses to be retrieved. See
 18886  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 18887  // for more information.
 18888  func (c *OrdersAcknowledgeCall) Fields(s ...googleapi.Field) *OrdersAcknowledgeCall {
 18889  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 18890  	return c
 18891  }
 18892  
 18893  // Context sets the context to be used in this call's Do method. Any
 18894  // pending HTTP request will be aborted if the provided context is
 18895  // canceled.
 18896  func (c *OrdersAcknowledgeCall) Context(ctx context.Context) *OrdersAcknowledgeCall {
 18897  	c.ctx_ = ctx
 18898  	return c
 18899  }
 18900  
 18901  // Header returns an http.Header that can be modified by the caller to
 18902  // add HTTP headers to the request.
 18903  func (c *OrdersAcknowledgeCall) Header() http.Header {
 18904  	if c.header_ == nil {
 18905  		c.header_ = make(http.Header)
 18906  	}
 18907  	return c.header_
 18908  }
 18909  
 18910  func (c *OrdersAcknowledgeCall) doRequest(alt string) (*http.Response, error) {
 18911  	reqHeaders := make(http.Header)
 18912  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 18913  	for k, v := range c.header_ {
 18914  		reqHeaders[k] = v
 18915  	}
 18916  	reqHeaders.Set("User-Agent", c.s.userAgent())
 18917  	var body io.Reader = nil
 18918  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersacknowledgerequest)
 18919  	if err != nil {
 18920  		return nil, err
 18921  	}
 18922  	reqHeaders.Set("Content-Type", "application/json")
 18923  	c.urlParams_.Set("alt", alt)
 18924  	c.urlParams_.Set("prettyPrint", "false")
 18925  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/acknowledge")
 18926  	urls += "?" + c.urlParams_.Encode()
 18927  	req, err := http.NewRequest("POST", urls, body)
 18928  	if err != nil {
 18929  		return nil, err
 18930  	}
 18931  	req.Header = reqHeaders
 18932  	googleapi.Expand(req.URL, map[string]string{
 18933  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 18934  		"orderId":    c.orderId,
 18935  	})
 18936  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 18937  }
 18938  
 18939  // Do executes the "content.orders.acknowledge" call.
 18940  // Exactly one of *OrdersAcknowledgeResponse or error will be non-nil.
 18941  // Any non-2xx status code is an error. Response headers are in either
 18942  // *OrdersAcknowledgeResponse.ServerResponse.Header or (if a response
 18943  // was returned at all) in error.(*googleapi.Error).Header. Use
 18944  // googleapi.IsNotModified to check whether the returned error was
 18945  // because http.StatusNotModified was returned.
 18946  func (c *OrdersAcknowledgeCall) Do(opts ...googleapi.CallOption) (*OrdersAcknowledgeResponse, error) {
 18947  	gensupport.SetOptions(c.urlParams_, opts...)
 18948  	res, err := c.doRequest("json")
 18949  	if res != nil && res.StatusCode == http.StatusNotModified {
 18950  		if res.Body != nil {
 18951  			res.Body.Close()
 18952  		}
 18953  		return nil, &googleapi.Error{
 18954  			Code:   res.StatusCode,
 18955  			Header: res.Header,
 18956  		}
 18957  	}
 18958  	if err != nil {
 18959  		return nil, err
 18960  	}
 18961  	defer googleapi.CloseBody(res)
 18962  	if err := googleapi.CheckResponse(res); err != nil {
 18963  		return nil, err
 18964  	}
 18965  	ret := &OrdersAcknowledgeResponse{
 18966  		ServerResponse: googleapi.ServerResponse{
 18967  			Header:         res.Header,
 18968  			HTTPStatusCode: res.StatusCode,
 18969  		},
 18970  	}
 18971  	target := &ret
 18972  	if err := gensupport.DecodeResponse(target, res); err != nil {
 18973  		return nil, err
 18974  	}
 18975  	return ret, nil
 18976  	// {
 18977  	//   "description": "Marks an order as acknowledged.",
 18978  	//   "flatPath": "{merchantId}/orders/{orderId}/acknowledge",
 18979  	//   "httpMethod": "POST",
 18980  	//   "id": "content.orders.acknowledge",
 18981  	//   "parameterOrder": [
 18982  	//     "merchantId",
 18983  	//     "orderId"
 18984  	//   ],
 18985  	//   "parameters": {
 18986  	//     "merchantId": {
 18987  	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
 18988  	//       "format": "uint64",
 18989  	//       "location": "path",
 18990  	//       "required": true,
 18991  	//       "type": "string"
 18992  	//     },
 18993  	//     "orderId": {
 18994  	//       "description": "The ID of the order.",
 18995  	//       "location": "path",
 18996  	//       "required": true,
 18997  	//       "type": "string"
 18998  	//     }
 18999  	//   },
 19000  	//   "path": "{merchantId}/orders/{orderId}/acknowledge",
 19001  	//   "request": {
 19002  	//     "$ref": "OrdersAcknowledgeRequest"
 19003  	//   },
 19004  	//   "response": {
 19005  	//     "$ref": "OrdersAcknowledgeResponse"
 19006  	//   },
 19007  	//   "scopes": [
 19008  	//     "https://www.googleapis.com/auth/content"
 19009  	//   ]
 19010  	// }
 19011  
 19012  }
 19013  
 19014  // method id "content.orders.advancetestorder":
 19015  
 19016  type OrdersAdvancetestorderCall struct {
 19017  	s          *APIService
 19018  	merchantId uint64
 19019  	orderId    string
 19020  	urlParams_ gensupport.URLParams
 19021  	ctx_       context.Context
 19022  	header_    http.Header
 19023  }
 19024  
 19025  // Advancetestorder: Sandbox only. Moves a test order from state
 19026  // "inProgress" to state "pendingShipment".
 19027  //
 19028  //   - merchantId: The ID of the account that manages the order. This
 19029  //     cannot be a multi-client account.
 19030  //   - orderId: The ID of the test order to modify.
 19031  func (r *OrdersService) Advancetestorder(merchantId uint64, orderId string) *OrdersAdvancetestorderCall {
 19032  	c := &OrdersAdvancetestorderCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 19033  	c.merchantId = merchantId
 19034  	c.orderId = orderId
 19035  	return c
 19036  }
 19037  
 19038  // Fields allows partial responses to be retrieved. See
 19039  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 19040  // for more information.
 19041  func (c *OrdersAdvancetestorderCall) Fields(s ...googleapi.Field) *OrdersAdvancetestorderCall {
 19042  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 19043  	return c
 19044  }
 19045  
 19046  // Context sets the context to be used in this call's Do method. Any
 19047  // pending HTTP request will be aborted if the provided context is
 19048  // canceled.
 19049  func (c *OrdersAdvancetestorderCall) Context(ctx context.Context) *OrdersAdvancetestorderCall {
 19050  	c.ctx_ = ctx
 19051  	return c
 19052  }
 19053  
 19054  // Header returns an http.Header that can be modified by the caller to
 19055  // add HTTP headers to the request.
 19056  func (c *OrdersAdvancetestorderCall) Header() http.Header {
 19057  	if c.header_ == nil {
 19058  		c.header_ = make(http.Header)
 19059  	}
 19060  	return c.header_
 19061  }
 19062  
 19063  func (c *OrdersAdvancetestorderCall) doRequest(alt string) (*http.Response, error) {
 19064  	reqHeaders := make(http.Header)
 19065  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 19066  	for k, v := range c.header_ {
 19067  		reqHeaders[k] = v
 19068  	}
 19069  	reqHeaders.Set("User-Agent", c.s.userAgent())
 19070  	var body io.Reader = nil
 19071  	c.urlParams_.Set("alt", alt)
 19072  	c.urlParams_.Set("prettyPrint", "false")
 19073  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/testorders/{orderId}/advance")
 19074  	urls += "?" + c.urlParams_.Encode()
 19075  	req, err := http.NewRequest("POST", urls, body)
 19076  	if err != nil {
 19077  		return nil, err
 19078  	}
 19079  	req.Header = reqHeaders
 19080  	googleapi.Expand(req.URL, map[string]string{
 19081  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 19082  		"orderId":    c.orderId,
 19083  	})
 19084  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 19085  }
 19086  
 19087  // Do executes the "content.orders.advancetestorder" call.
 19088  // Exactly one of *OrdersAdvanceTestOrderResponse or error will be
 19089  // non-nil. Any non-2xx status code is an error. Response headers are in
 19090  // either *OrdersAdvanceTestOrderResponse.ServerResponse.Header or (if a
 19091  // response was returned at all) in error.(*googleapi.Error).Header. Use
 19092  // googleapi.IsNotModified to check whether the returned error was
 19093  // because http.StatusNotModified was returned.
 19094  func (c *OrdersAdvancetestorderCall) Do(opts ...googleapi.CallOption) (*OrdersAdvanceTestOrderResponse, error) {
 19095  	gensupport.SetOptions(c.urlParams_, opts...)
 19096  	res, err := c.doRequest("json")
 19097  	if res != nil && res.StatusCode == http.StatusNotModified {
 19098  		if res.Body != nil {
 19099  			res.Body.Close()
 19100  		}
 19101  		return nil, &googleapi.Error{
 19102  			Code:   res.StatusCode,
 19103  			Header: res.Header,
 19104  		}
 19105  	}
 19106  	if err != nil {
 19107  		return nil, err
 19108  	}
 19109  	defer googleapi.CloseBody(res)
 19110  	if err := googleapi.CheckResponse(res); err != nil {
 19111  		return nil, err
 19112  	}
 19113  	ret := &OrdersAdvanceTestOrderResponse{
 19114  		ServerResponse: googleapi.ServerResponse{
 19115  			Header:         res.Header,
 19116  			HTTPStatusCode: res.StatusCode,
 19117  		},
 19118  	}
 19119  	target := &ret
 19120  	if err := gensupport.DecodeResponse(target, res); err != nil {
 19121  		return nil, err
 19122  	}
 19123  	return ret, nil
 19124  	// {
 19125  	//   "description": "Sandbox only. Moves a test order from state \"`inProgress`\" to state \"`pendingShipment`\".",
 19126  	//   "flatPath": "{merchantId}/testorders/{orderId}/advance",
 19127  	//   "httpMethod": "POST",
 19128  	//   "id": "content.orders.advancetestorder",
 19129  	//   "parameterOrder": [
 19130  	//     "merchantId",
 19131  	//     "orderId"
 19132  	//   ],
 19133  	//   "parameters": {
 19134  	//     "merchantId": {
 19135  	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
 19136  	//       "format": "uint64",
 19137  	//       "location": "path",
 19138  	//       "required": true,
 19139  	//       "type": "string"
 19140  	//     },
 19141  	//     "orderId": {
 19142  	//       "description": "The ID of the test order to modify.",
 19143  	//       "location": "path",
 19144  	//       "required": true,
 19145  	//       "type": "string"
 19146  	//     }
 19147  	//   },
 19148  	//   "path": "{merchantId}/testorders/{orderId}/advance",
 19149  	//   "response": {
 19150  	//     "$ref": "OrdersAdvanceTestOrderResponse"
 19151  	//   },
 19152  	//   "scopes": [
 19153  	//     "https://www.googleapis.com/auth/content"
 19154  	//   ]
 19155  	// }
 19156  
 19157  }
 19158  
 19159  // method id "content.orders.cancel":
 19160  
 19161  type OrdersCancelCall struct {
 19162  	s                   *APIService
 19163  	merchantId          uint64
 19164  	orderId             string
 19165  	orderscancelrequest *OrdersCancelRequest
 19166  	urlParams_          gensupport.URLParams
 19167  	ctx_                context.Context
 19168  	header_             http.Header
 19169  }
 19170  
 19171  // Cancel: Cancels all line items in an order, making a full refund.
 19172  //
 19173  //   - merchantId: The ID of the account that manages the order. This
 19174  //     cannot be a multi-client account.
 19175  //   - orderId: The ID of the order to cancel.
 19176  func (r *OrdersService) Cancel(merchantId uint64, orderId string, orderscancelrequest *OrdersCancelRequest) *OrdersCancelCall {
 19177  	c := &OrdersCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 19178  	c.merchantId = merchantId
 19179  	c.orderId = orderId
 19180  	c.orderscancelrequest = orderscancelrequest
 19181  	return c
 19182  }
 19183  
 19184  // Fields allows partial responses to be retrieved. See
 19185  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 19186  // for more information.
 19187  func (c *OrdersCancelCall) Fields(s ...googleapi.Field) *OrdersCancelCall {
 19188  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 19189  	return c
 19190  }
 19191  
 19192  // Context sets the context to be used in this call's Do method. Any
 19193  // pending HTTP request will be aborted if the provided context is
 19194  // canceled.
 19195  func (c *OrdersCancelCall) Context(ctx context.Context) *OrdersCancelCall {
 19196  	c.ctx_ = ctx
 19197  	return c
 19198  }
 19199  
 19200  // Header returns an http.Header that can be modified by the caller to
 19201  // add HTTP headers to the request.
 19202  func (c *OrdersCancelCall) Header() http.Header {
 19203  	if c.header_ == nil {
 19204  		c.header_ = make(http.Header)
 19205  	}
 19206  	return c.header_
 19207  }
 19208  
 19209  func (c *OrdersCancelCall) doRequest(alt string) (*http.Response, error) {
 19210  	reqHeaders := make(http.Header)
 19211  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 19212  	for k, v := range c.header_ {
 19213  		reqHeaders[k] = v
 19214  	}
 19215  	reqHeaders.Set("User-Agent", c.s.userAgent())
 19216  	var body io.Reader = nil
 19217  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscancelrequest)
 19218  	if err != nil {
 19219  		return nil, err
 19220  	}
 19221  	reqHeaders.Set("Content-Type", "application/json")
 19222  	c.urlParams_.Set("alt", alt)
 19223  	c.urlParams_.Set("prettyPrint", "false")
 19224  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/cancel")
 19225  	urls += "?" + c.urlParams_.Encode()
 19226  	req, err := http.NewRequest("POST", urls, body)
 19227  	if err != nil {
 19228  		return nil, err
 19229  	}
 19230  	req.Header = reqHeaders
 19231  	googleapi.Expand(req.URL, map[string]string{
 19232  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 19233  		"orderId":    c.orderId,
 19234  	})
 19235  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 19236  }
 19237  
 19238  // Do executes the "content.orders.cancel" call.
 19239  // Exactly one of *OrdersCancelResponse or error will be non-nil. Any
 19240  // non-2xx status code is an error. Response headers are in either
 19241  // *OrdersCancelResponse.ServerResponse.Header or (if a response was
 19242  // returned at all) in error.(*googleapi.Error).Header. Use
 19243  // googleapi.IsNotModified to check whether the returned error was
 19244  // because http.StatusNotModified was returned.
 19245  func (c *OrdersCancelCall) Do(opts ...googleapi.CallOption) (*OrdersCancelResponse, error) {
 19246  	gensupport.SetOptions(c.urlParams_, opts...)
 19247  	res, err := c.doRequest("json")
 19248  	if res != nil && res.StatusCode == http.StatusNotModified {
 19249  		if res.Body != nil {
 19250  			res.Body.Close()
 19251  		}
 19252  		return nil, &googleapi.Error{
 19253  			Code:   res.StatusCode,
 19254  			Header: res.Header,
 19255  		}
 19256  	}
 19257  	if err != nil {
 19258  		return nil, err
 19259  	}
 19260  	defer googleapi.CloseBody(res)
 19261  	if err := googleapi.CheckResponse(res); err != nil {
 19262  		return nil, err
 19263  	}
 19264  	ret := &OrdersCancelResponse{
 19265  		ServerResponse: googleapi.ServerResponse{
 19266  			Header:         res.Header,
 19267  			HTTPStatusCode: res.StatusCode,
 19268  		},
 19269  	}
 19270  	target := &ret
 19271  	if err := gensupport.DecodeResponse(target, res); err != nil {
 19272  		return nil, err
 19273  	}
 19274  	return ret, nil
 19275  	// {
 19276  	//   "description": "Cancels all line items in an order, making a full refund.",
 19277  	//   "flatPath": "{merchantId}/orders/{orderId}/cancel",
 19278  	//   "httpMethod": "POST",
 19279  	//   "id": "content.orders.cancel",
 19280  	//   "parameterOrder": [
 19281  	//     "merchantId",
 19282  	//     "orderId"
 19283  	//   ],
 19284  	//   "parameters": {
 19285  	//     "merchantId": {
 19286  	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
 19287  	//       "format": "uint64",
 19288  	//       "location": "path",
 19289  	//       "required": true,
 19290  	//       "type": "string"
 19291  	//     },
 19292  	//     "orderId": {
 19293  	//       "description": "The ID of the order to cancel.",
 19294  	//       "location": "path",
 19295  	//       "required": true,
 19296  	//       "type": "string"
 19297  	//     }
 19298  	//   },
 19299  	//   "path": "{merchantId}/orders/{orderId}/cancel",
 19300  	//   "request": {
 19301  	//     "$ref": "OrdersCancelRequest"
 19302  	//   },
 19303  	//   "response": {
 19304  	//     "$ref": "OrdersCancelResponse"
 19305  	//   },
 19306  	//   "scopes": [
 19307  	//     "https://www.googleapis.com/auth/content"
 19308  	//   ]
 19309  	// }
 19310  
 19311  }
 19312  
 19313  // method id "content.orders.cancellineitem":
 19314  
 19315  type OrdersCancellineitemCall struct {
 19316  	s                           *APIService
 19317  	merchantId                  uint64
 19318  	orderId                     string
 19319  	orderscancellineitemrequest *OrdersCancelLineItemRequest
 19320  	urlParams_                  gensupport.URLParams
 19321  	ctx_                        context.Context
 19322  	header_                     http.Header
 19323  }
 19324  
 19325  // Cancellineitem: Cancels a line item, making a full refund.
 19326  //
 19327  //   - merchantId: The ID of the account that manages the order. This
 19328  //     cannot be a multi-client account.
 19329  //   - orderId: The ID of the order.
 19330  func (r *OrdersService) Cancellineitem(merchantId uint64, orderId string, orderscancellineitemrequest *OrdersCancelLineItemRequest) *OrdersCancellineitemCall {
 19331  	c := &OrdersCancellineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 19332  	c.merchantId = merchantId
 19333  	c.orderId = orderId
 19334  	c.orderscancellineitemrequest = orderscancellineitemrequest
 19335  	return c
 19336  }
 19337  
 19338  // Fields allows partial responses to be retrieved. See
 19339  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 19340  // for more information.
 19341  func (c *OrdersCancellineitemCall) Fields(s ...googleapi.Field) *OrdersCancellineitemCall {
 19342  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 19343  	return c
 19344  }
 19345  
 19346  // Context sets the context to be used in this call's Do method. Any
 19347  // pending HTTP request will be aborted if the provided context is
 19348  // canceled.
 19349  func (c *OrdersCancellineitemCall) Context(ctx context.Context) *OrdersCancellineitemCall {
 19350  	c.ctx_ = ctx
 19351  	return c
 19352  }
 19353  
 19354  // Header returns an http.Header that can be modified by the caller to
 19355  // add HTTP headers to the request.
 19356  func (c *OrdersCancellineitemCall) Header() http.Header {
 19357  	if c.header_ == nil {
 19358  		c.header_ = make(http.Header)
 19359  	}
 19360  	return c.header_
 19361  }
 19362  
 19363  func (c *OrdersCancellineitemCall) doRequest(alt string) (*http.Response, error) {
 19364  	reqHeaders := make(http.Header)
 19365  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 19366  	for k, v := range c.header_ {
 19367  		reqHeaders[k] = v
 19368  	}
 19369  	reqHeaders.Set("User-Agent", c.s.userAgent())
 19370  	var body io.Reader = nil
 19371  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscancellineitemrequest)
 19372  	if err != nil {
 19373  		return nil, err
 19374  	}
 19375  	reqHeaders.Set("Content-Type", "application/json")
 19376  	c.urlParams_.Set("alt", alt)
 19377  	c.urlParams_.Set("prettyPrint", "false")
 19378  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/cancelLineItem")
 19379  	urls += "?" + c.urlParams_.Encode()
 19380  	req, err := http.NewRequest("POST", urls, body)
 19381  	if err != nil {
 19382  		return nil, err
 19383  	}
 19384  	req.Header = reqHeaders
 19385  	googleapi.Expand(req.URL, map[string]string{
 19386  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 19387  		"orderId":    c.orderId,
 19388  	})
 19389  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 19390  }
 19391  
 19392  // Do executes the "content.orders.cancellineitem" call.
 19393  // Exactly one of *OrdersCancelLineItemResponse or error will be
 19394  // non-nil. Any non-2xx status code is an error. Response headers are in
 19395  // either *OrdersCancelLineItemResponse.ServerResponse.Header or (if a
 19396  // response was returned at all) in error.(*googleapi.Error).Header. Use
 19397  // googleapi.IsNotModified to check whether the returned error was
 19398  // because http.StatusNotModified was returned.
 19399  func (c *OrdersCancellineitemCall) Do(opts ...googleapi.CallOption) (*OrdersCancelLineItemResponse, error) {
 19400  	gensupport.SetOptions(c.urlParams_, opts...)
 19401  	res, err := c.doRequest("json")
 19402  	if res != nil && res.StatusCode == http.StatusNotModified {
 19403  		if res.Body != nil {
 19404  			res.Body.Close()
 19405  		}
 19406  		return nil, &googleapi.Error{
 19407  			Code:   res.StatusCode,
 19408  			Header: res.Header,
 19409  		}
 19410  	}
 19411  	if err != nil {
 19412  		return nil, err
 19413  	}
 19414  	defer googleapi.CloseBody(res)
 19415  	if err := googleapi.CheckResponse(res); err != nil {
 19416  		return nil, err
 19417  	}
 19418  	ret := &OrdersCancelLineItemResponse{
 19419  		ServerResponse: googleapi.ServerResponse{
 19420  			Header:         res.Header,
 19421  			HTTPStatusCode: res.StatusCode,
 19422  		},
 19423  	}
 19424  	target := &ret
 19425  	if err := gensupport.DecodeResponse(target, res); err != nil {
 19426  		return nil, err
 19427  	}
 19428  	return ret, nil
 19429  	// {
 19430  	//   "description": "Cancels a line item, making a full refund.",
 19431  	//   "flatPath": "{merchantId}/orders/{orderId}/cancelLineItem",
 19432  	//   "httpMethod": "POST",
 19433  	//   "id": "content.orders.cancellineitem",
 19434  	//   "parameterOrder": [
 19435  	//     "merchantId",
 19436  	//     "orderId"
 19437  	//   ],
 19438  	//   "parameters": {
 19439  	//     "merchantId": {
 19440  	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
 19441  	//       "format": "uint64",
 19442  	//       "location": "path",
 19443  	//       "required": true,
 19444  	//       "type": "string"
 19445  	//     },
 19446  	//     "orderId": {
 19447  	//       "description": "The ID of the order.",
 19448  	//       "location": "path",
 19449  	//       "required": true,
 19450  	//       "type": "string"
 19451  	//     }
 19452  	//   },
 19453  	//   "path": "{merchantId}/orders/{orderId}/cancelLineItem",
 19454  	//   "request": {
 19455  	//     "$ref": "OrdersCancelLineItemRequest"
 19456  	//   },
 19457  	//   "response": {
 19458  	//     "$ref": "OrdersCancelLineItemResponse"
 19459  	//   },
 19460  	//   "scopes": [
 19461  	//     "https://www.googleapis.com/auth/content"
 19462  	//   ]
 19463  	// }
 19464  
 19465  }
 19466  
 19467  // method id "content.orders.canceltestorderbycustomer":
 19468  
 19469  type OrdersCanceltestorderbycustomerCall struct {
 19470  	s                                      *APIService
 19471  	merchantId                             uint64
 19472  	orderId                                string
 19473  	orderscanceltestorderbycustomerrequest *OrdersCancelTestOrderByCustomerRequest
 19474  	urlParams_                             gensupport.URLParams
 19475  	ctx_                                   context.Context
 19476  	header_                                http.Header
 19477  }
 19478  
 19479  // Canceltestorderbycustomer: Sandbox only. Cancels a test order for
 19480  // customer-initiated cancellation.
 19481  //
 19482  //   - merchantId: The ID of the account that manages the order. This
 19483  //     cannot be a multi-client account.
 19484  //   - orderId: The ID of the test order to cancel.
 19485  func (r *OrdersService) Canceltestorderbycustomer(merchantId uint64, orderId string, orderscanceltestorderbycustomerrequest *OrdersCancelTestOrderByCustomerRequest) *OrdersCanceltestorderbycustomerCall {
 19486  	c := &OrdersCanceltestorderbycustomerCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 19487  	c.merchantId = merchantId
 19488  	c.orderId = orderId
 19489  	c.orderscanceltestorderbycustomerrequest = orderscanceltestorderbycustomerrequest
 19490  	return c
 19491  }
 19492  
 19493  // Fields allows partial responses to be retrieved. See
 19494  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 19495  // for more information.
 19496  func (c *OrdersCanceltestorderbycustomerCall) Fields(s ...googleapi.Field) *OrdersCanceltestorderbycustomerCall {
 19497  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 19498  	return c
 19499  }
 19500  
 19501  // Context sets the context to be used in this call's Do method. Any
 19502  // pending HTTP request will be aborted if the provided context is
 19503  // canceled.
 19504  func (c *OrdersCanceltestorderbycustomerCall) Context(ctx context.Context) *OrdersCanceltestorderbycustomerCall {
 19505  	c.ctx_ = ctx
 19506  	return c
 19507  }
 19508  
 19509  // Header returns an http.Header that can be modified by the caller to
 19510  // add HTTP headers to the request.
 19511  func (c *OrdersCanceltestorderbycustomerCall) Header() http.Header {
 19512  	if c.header_ == nil {
 19513  		c.header_ = make(http.Header)
 19514  	}
 19515  	return c.header_
 19516  }
 19517  
 19518  func (c *OrdersCanceltestorderbycustomerCall) doRequest(alt string) (*http.Response, error) {
 19519  	reqHeaders := make(http.Header)
 19520  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 19521  	for k, v := range c.header_ {
 19522  		reqHeaders[k] = v
 19523  	}
 19524  	reqHeaders.Set("User-Agent", c.s.userAgent())
 19525  	var body io.Reader = nil
 19526  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscanceltestorderbycustomerrequest)
 19527  	if err != nil {
 19528  		return nil, err
 19529  	}
 19530  	reqHeaders.Set("Content-Type", "application/json")
 19531  	c.urlParams_.Set("alt", alt)
 19532  	c.urlParams_.Set("prettyPrint", "false")
 19533  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/testorders/{orderId}/cancelByCustomer")
 19534  	urls += "?" + c.urlParams_.Encode()
 19535  	req, err := http.NewRequest("POST", urls, body)
 19536  	if err != nil {
 19537  		return nil, err
 19538  	}
 19539  	req.Header = reqHeaders
 19540  	googleapi.Expand(req.URL, map[string]string{
 19541  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 19542  		"orderId":    c.orderId,
 19543  	})
 19544  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 19545  }
 19546  
 19547  // Do executes the "content.orders.canceltestorderbycustomer" call.
 19548  // Exactly one of *OrdersCancelTestOrderByCustomerResponse or error will
 19549  // be non-nil. Any non-2xx status code is an error. Response headers are
 19550  // in either
 19551  // *OrdersCancelTestOrderByCustomerResponse.ServerResponse.Header or (if
 19552  // a response was returned at all) in error.(*googleapi.Error).Header.
 19553  // Use googleapi.IsNotModified to check whether the returned error was
 19554  // because http.StatusNotModified was returned.
 19555  func (c *OrdersCanceltestorderbycustomerCall) Do(opts ...googleapi.CallOption) (*OrdersCancelTestOrderByCustomerResponse, error) {
 19556  	gensupport.SetOptions(c.urlParams_, opts...)
 19557  	res, err := c.doRequest("json")
 19558  	if res != nil && res.StatusCode == http.StatusNotModified {
 19559  		if res.Body != nil {
 19560  			res.Body.Close()
 19561  		}
 19562  		return nil, &googleapi.Error{
 19563  			Code:   res.StatusCode,
 19564  			Header: res.Header,
 19565  		}
 19566  	}
 19567  	if err != nil {
 19568  		return nil, err
 19569  	}
 19570  	defer googleapi.CloseBody(res)
 19571  	if err := googleapi.CheckResponse(res); err != nil {
 19572  		return nil, err
 19573  	}
 19574  	ret := &OrdersCancelTestOrderByCustomerResponse{
 19575  		ServerResponse: googleapi.ServerResponse{
 19576  			Header:         res.Header,
 19577  			HTTPStatusCode: res.StatusCode,
 19578  		},
 19579  	}
 19580  	target := &ret
 19581  	if err := gensupport.DecodeResponse(target, res); err != nil {
 19582  		return nil, err
 19583  	}
 19584  	return ret, nil
 19585  	// {
 19586  	//   "description": "Sandbox only. Cancels a test order for customer-initiated cancellation.",
 19587  	//   "flatPath": "{merchantId}/testorders/{orderId}/cancelByCustomer",
 19588  	//   "httpMethod": "POST",
 19589  	//   "id": "content.orders.canceltestorderbycustomer",
 19590  	//   "parameterOrder": [
 19591  	//     "merchantId",
 19592  	//     "orderId"
 19593  	//   ],
 19594  	//   "parameters": {
 19595  	//     "merchantId": {
 19596  	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
 19597  	//       "format": "uint64",
 19598  	//       "location": "path",
 19599  	//       "required": true,
 19600  	//       "type": "string"
 19601  	//     },
 19602  	//     "orderId": {
 19603  	//       "description": "The ID of the test order to cancel.",
 19604  	//       "location": "path",
 19605  	//       "required": true,
 19606  	//       "type": "string"
 19607  	//     }
 19608  	//   },
 19609  	//   "path": "{merchantId}/testorders/{orderId}/cancelByCustomer",
 19610  	//   "request": {
 19611  	//     "$ref": "OrdersCancelTestOrderByCustomerRequest"
 19612  	//   },
 19613  	//   "response": {
 19614  	//     "$ref": "OrdersCancelTestOrderByCustomerResponse"
 19615  	//   },
 19616  	//   "scopes": [
 19617  	//     "https://www.googleapis.com/auth/content"
 19618  	//   ]
 19619  	// }
 19620  
 19621  }
 19622  
 19623  // method id "content.orders.createtestorder":
 19624  
 19625  type OrdersCreatetestorderCall struct {
 19626  	s                            *APIService
 19627  	merchantId                   uint64
 19628  	orderscreatetestorderrequest *OrdersCreateTestOrderRequest
 19629  	urlParams_                   gensupport.URLParams
 19630  	ctx_                         context.Context
 19631  	header_                      http.Header
 19632  }
 19633  
 19634  // Createtestorder: Sandbox only. Creates a test order.
 19635  //
 19636  //   - merchantId: The ID of the account that should manage the order.
 19637  //     This cannot be a multi-client account.
 19638  func (r *OrdersService) Createtestorder(merchantId uint64, orderscreatetestorderrequest *OrdersCreateTestOrderRequest) *OrdersCreatetestorderCall {
 19639  	c := &OrdersCreatetestorderCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 19640  	c.merchantId = merchantId
 19641  	c.orderscreatetestorderrequest = orderscreatetestorderrequest
 19642  	return c
 19643  }
 19644  
 19645  // Fields allows partial responses to be retrieved. See
 19646  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 19647  // for more information.
 19648  func (c *OrdersCreatetestorderCall) Fields(s ...googleapi.Field) *OrdersCreatetestorderCall {
 19649  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 19650  	return c
 19651  }
 19652  
 19653  // Context sets the context to be used in this call's Do method. Any
 19654  // pending HTTP request will be aborted if the provided context is
 19655  // canceled.
 19656  func (c *OrdersCreatetestorderCall) Context(ctx context.Context) *OrdersCreatetestorderCall {
 19657  	c.ctx_ = ctx
 19658  	return c
 19659  }
 19660  
 19661  // Header returns an http.Header that can be modified by the caller to
 19662  // add HTTP headers to the request.
 19663  func (c *OrdersCreatetestorderCall) Header() http.Header {
 19664  	if c.header_ == nil {
 19665  		c.header_ = make(http.Header)
 19666  	}
 19667  	return c.header_
 19668  }
 19669  
 19670  func (c *OrdersCreatetestorderCall) doRequest(alt string) (*http.Response, error) {
 19671  	reqHeaders := make(http.Header)
 19672  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 19673  	for k, v := range c.header_ {
 19674  		reqHeaders[k] = v
 19675  	}
 19676  	reqHeaders.Set("User-Agent", c.s.userAgent())
 19677  	var body io.Reader = nil
 19678  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscreatetestorderrequest)
 19679  	if err != nil {
 19680  		return nil, err
 19681  	}
 19682  	reqHeaders.Set("Content-Type", "application/json")
 19683  	c.urlParams_.Set("alt", alt)
 19684  	c.urlParams_.Set("prettyPrint", "false")
 19685  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/testorders")
 19686  	urls += "?" + c.urlParams_.Encode()
 19687  	req, err := http.NewRequest("POST", urls, body)
 19688  	if err != nil {
 19689  		return nil, err
 19690  	}
 19691  	req.Header = reqHeaders
 19692  	googleapi.Expand(req.URL, map[string]string{
 19693  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 19694  	})
 19695  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 19696  }
 19697  
 19698  // Do executes the "content.orders.createtestorder" call.
 19699  // Exactly one of *OrdersCreateTestOrderResponse or error will be
 19700  // non-nil. Any non-2xx status code is an error. Response headers are in
 19701  // either *OrdersCreateTestOrderResponse.ServerResponse.Header or (if a
 19702  // response was returned at all) in error.(*googleapi.Error).Header. Use
 19703  // googleapi.IsNotModified to check whether the returned error was
 19704  // because http.StatusNotModified was returned.
 19705  func (c *OrdersCreatetestorderCall) Do(opts ...googleapi.CallOption) (*OrdersCreateTestOrderResponse, error) {
 19706  	gensupport.SetOptions(c.urlParams_, opts...)
 19707  	res, err := c.doRequest("json")
 19708  	if res != nil && res.StatusCode == http.StatusNotModified {
 19709  		if res.Body != nil {
 19710  			res.Body.Close()
 19711  		}
 19712  		return nil, &googleapi.Error{
 19713  			Code:   res.StatusCode,
 19714  			Header: res.Header,
 19715  		}
 19716  	}
 19717  	if err != nil {
 19718  		return nil, err
 19719  	}
 19720  	defer googleapi.CloseBody(res)
 19721  	if err := googleapi.CheckResponse(res); err != nil {
 19722  		return nil, err
 19723  	}
 19724  	ret := &OrdersCreateTestOrderResponse{
 19725  		ServerResponse: googleapi.ServerResponse{
 19726  			Header:         res.Header,
 19727  			HTTPStatusCode: res.StatusCode,
 19728  		},
 19729  	}
 19730  	target := &ret
 19731  	if err := gensupport.DecodeResponse(target, res); err != nil {
 19732  		return nil, err
 19733  	}
 19734  	return ret, nil
 19735  	// {
 19736  	//   "description": "Sandbox only. Creates a test order.",
 19737  	//   "flatPath": "{merchantId}/testorders",
 19738  	//   "httpMethod": "POST",
 19739  	//   "id": "content.orders.createtestorder",
 19740  	//   "parameterOrder": [
 19741  	//     "merchantId"
 19742  	//   ],
 19743  	//   "parameters": {
 19744  	//     "merchantId": {
 19745  	//       "description": "The ID of the account that should manage the order. This cannot be a multi-client account.",
 19746  	//       "format": "uint64",
 19747  	//       "location": "path",
 19748  	//       "required": true,
 19749  	//       "type": "string"
 19750  	//     }
 19751  	//   },
 19752  	//   "path": "{merchantId}/testorders",
 19753  	//   "request": {
 19754  	//     "$ref": "OrdersCreateTestOrderRequest"
 19755  	//   },
 19756  	//   "response": {
 19757  	//     "$ref": "OrdersCreateTestOrderResponse"
 19758  	//   },
 19759  	//   "scopes": [
 19760  	//     "https://www.googleapis.com/auth/content"
 19761  	//   ]
 19762  	// }
 19763  
 19764  }
 19765  
 19766  // method id "content.orders.createtestreturn":
 19767  
 19768  type OrdersCreatetestreturnCall struct {
 19769  	s                             *APIService
 19770  	merchantId                    uint64
 19771  	orderId                       string
 19772  	orderscreatetestreturnrequest *OrdersCreateTestReturnRequest
 19773  	urlParams_                    gensupport.URLParams
 19774  	ctx_                          context.Context
 19775  	header_                       http.Header
 19776  }
 19777  
 19778  // Createtestreturn: Sandbox only. Creates a test return.
 19779  //
 19780  //   - merchantId: The ID of the account that manages the order. This
 19781  //     cannot be a multi-client account.
 19782  //   - orderId: The ID of the order.
 19783  func (r *OrdersService) Createtestreturn(merchantId uint64, orderId string, orderscreatetestreturnrequest *OrdersCreateTestReturnRequest) *OrdersCreatetestreturnCall {
 19784  	c := &OrdersCreatetestreturnCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 19785  	c.merchantId = merchantId
 19786  	c.orderId = orderId
 19787  	c.orderscreatetestreturnrequest = orderscreatetestreturnrequest
 19788  	return c
 19789  }
 19790  
 19791  // Fields allows partial responses to be retrieved. See
 19792  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 19793  // for more information.
 19794  func (c *OrdersCreatetestreturnCall) Fields(s ...googleapi.Field) *OrdersCreatetestreturnCall {
 19795  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 19796  	return c
 19797  }
 19798  
 19799  // Context sets the context to be used in this call's Do method. Any
 19800  // pending HTTP request will be aborted if the provided context is
 19801  // canceled.
 19802  func (c *OrdersCreatetestreturnCall) Context(ctx context.Context) *OrdersCreatetestreturnCall {
 19803  	c.ctx_ = ctx
 19804  	return c
 19805  }
 19806  
 19807  // Header returns an http.Header that can be modified by the caller to
 19808  // add HTTP headers to the request.
 19809  func (c *OrdersCreatetestreturnCall) Header() http.Header {
 19810  	if c.header_ == nil {
 19811  		c.header_ = make(http.Header)
 19812  	}
 19813  	return c.header_
 19814  }
 19815  
 19816  func (c *OrdersCreatetestreturnCall) doRequest(alt string) (*http.Response, error) {
 19817  	reqHeaders := make(http.Header)
 19818  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 19819  	for k, v := range c.header_ {
 19820  		reqHeaders[k] = v
 19821  	}
 19822  	reqHeaders.Set("User-Agent", c.s.userAgent())
 19823  	var body io.Reader = nil
 19824  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscreatetestreturnrequest)
 19825  	if err != nil {
 19826  		return nil, err
 19827  	}
 19828  	reqHeaders.Set("Content-Type", "application/json")
 19829  	c.urlParams_.Set("alt", alt)
 19830  	c.urlParams_.Set("prettyPrint", "false")
 19831  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/testreturn")
 19832  	urls += "?" + c.urlParams_.Encode()
 19833  	req, err := http.NewRequest("POST", urls, body)
 19834  	if err != nil {
 19835  		return nil, err
 19836  	}
 19837  	req.Header = reqHeaders
 19838  	googleapi.Expand(req.URL, map[string]string{
 19839  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 19840  		"orderId":    c.orderId,
 19841  	})
 19842  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 19843  }
 19844  
 19845  // Do executes the "content.orders.createtestreturn" call.
 19846  // Exactly one of *OrdersCreateTestReturnResponse or error will be
 19847  // non-nil. Any non-2xx status code is an error. Response headers are in
 19848  // either *OrdersCreateTestReturnResponse.ServerResponse.Header or (if a
 19849  // response was returned at all) in error.(*googleapi.Error).Header. Use
 19850  // googleapi.IsNotModified to check whether the returned error was
 19851  // because http.StatusNotModified was returned.
 19852  func (c *OrdersCreatetestreturnCall) Do(opts ...googleapi.CallOption) (*OrdersCreateTestReturnResponse, error) {
 19853  	gensupport.SetOptions(c.urlParams_, opts...)
 19854  	res, err := c.doRequest("json")
 19855  	if res != nil && res.StatusCode == http.StatusNotModified {
 19856  		if res.Body != nil {
 19857  			res.Body.Close()
 19858  		}
 19859  		return nil, &googleapi.Error{
 19860  			Code:   res.StatusCode,
 19861  			Header: res.Header,
 19862  		}
 19863  	}
 19864  	if err != nil {
 19865  		return nil, err
 19866  	}
 19867  	defer googleapi.CloseBody(res)
 19868  	if err := googleapi.CheckResponse(res); err != nil {
 19869  		return nil, err
 19870  	}
 19871  	ret := &OrdersCreateTestReturnResponse{
 19872  		ServerResponse: googleapi.ServerResponse{
 19873  			Header:         res.Header,
 19874  			HTTPStatusCode: res.StatusCode,
 19875  		},
 19876  	}
 19877  	target := &ret
 19878  	if err := gensupport.DecodeResponse(target, res); err != nil {
 19879  		return nil, err
 19880  	}
 19881  	return ret, nil
 19882  	// {
 19883  	//   "description": "Sandbox only. Creates a test return.",
 19884  	//   "flatPath": "{merchantId}/orders/{orderId}/testreturn",
 19885  	//   "httpMethod": "POST",
 19886  	//   "id": "content.orders.createtestreturn",
 19887  	//   "parameterOrder": [
 19888  	//     "merchantId",
 19889  	//     "orderId"
 19890  	//   ],
 19891  	//   "parameters": {
 19892  	//     "merchantId": {
 19893  	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
 19894  	//       "format": "uint64",
 19895  	//       "location": "path",
 19896  	//       "required": true,
 19897  	//       "type": "string"
 19898  	//     },
 19899  	//     "orderId": {
 19900  	//       "description": "The ID of the order.",
 19901  	//       "location": "path",
 19902  	//       "required": true,
 19903  	//       "type": "string"
 19904  	//     }
 19905  	//   },
 19906  	//   "path": "{merchantId}/orders/{orderId}/testreturn",
 19907  	//   "request": {
 19908  	//     "$ref": "OrdersCreateTestReturnRequest"
 19909  	//   },
 19910  	//   "response": {
 19911  	//     "$ref": "OrdersCreateTestReturnResponse"
 19912  	//   },
 19913  	//   "scopes": [
 19914  	//     "https://www.googleapis.com/auth/content"
 19915  	//   ]
 19916  	// }
 19917  
 19918  }
 19919  
 19920  // method id "content.orders.custombatch":
 19921  
 19922  type OrdersCustombatchCall struct {
 19923  	s                        *APIService
 19924  	orderscustombatchrequest *OrdersCustomBatchRequest
 19925  	urlParams_               gensupport.URLParams
 19926  	ctx_                     context.Context
 19927  	header_                  http.Header
 19928  }
 19929  
 19930  // Custombatch: Retrieves or modifies multiple orders in a single
 19931  // request.
 19932  func (r *OrdersService) Custombatch(orderscustombatchrequest *OrdersCustomBatchRequest) *OrdersCustombatchCall {
 19933  	c := &OrdersCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 19934  	c.orderscustombatchrequest = orderscustombatchrequest
 19935  	return c
 19936  }
 19937  
 19938  // Fields allows partial responses to be retrieved. See
 19939  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 19940  // for more information.
 19941  func (c *OrdersCustombatchCall) Fields(s ...googleapi.Field) *OrdersCustombatchCall {
 19942  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 19943  	return c
 19944  }
 19945  
 19946  // Context sets the context to be used in this call's Do method. Any
 19947  // pending HTTP request will be aborted if the provided context is
 19948  // canceled.
 19949  func (c *OrdersCustombatchCall) Context(ctx context.Context) *OrdersCustombatchCall {
 19950  	c.ctx_ = ctx
 19951  	return c
 19952  }
 19953  
 19954  // Header returns an http.Header that can be modified by the caller to
 19955  // add HTTP headers to the request.
 19956  func (c *OrdersCustombatchCall) Header() http.Header {
 19957  	if c.header_ == nil {
 19958  		c.header_ = make(http.Header)
 19959  	}
 19960  	return c.header_
 19961  }
 19962  
 19963  func (c *OrdersCustombatchCall) doRequest(alt string) (*http.Response, error) {
 19964  	reqHeaders := make(http.Header)
 19965  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 19966  	for k, v := range c.header_ {
 19967  		reqHeaders[k] = v
 19968  	}
 19969  	reqHeaders.Set("User-Agent", c.s.userAgent())
 19970  	var body io.Reader = nil
 19971  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderscustombatchrequest)
 19972  	if err != nil {
 19973  		return nil, err
 19974  	}
 19975  	reqHeaders.Set("Content-Type", "application/json")
 19976  	c.urlParams_.Set("alt", alt)
 19977  	c.urlParams_.Set("prettyPrint", "false")
 19978  	urls := googleapi.ResolveRelative(c.s.BasePath, "orders/batch")
 19979  	urls += "?" + c.urlParams_.Encode()
 19980  	req, err := http.NewRequest("POST", urls, body)
 19981  	if err != nil {
 19982  		return nil, err
 19983  	}
 19984  	req.Header = reqHeaders
 19985  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 19986  }
 19987  
 19988  // Do executes the "content.orders.custombatch" call.
 19989  // Exactly one of *OrdersCustomBatchResponse or error will be non-nil.
 19990  // Any non-2xx status code is an error. Response headers are in either
 19991  // *OrdersCustomBatchResponse.ServerResponse.Header or (if a response
 19992  // was returned at all) in error.(*googleapi.Error).Header. Use
 19993  // googleapi.IsNotModified to check whether the returned error was
 19994  // because http.StatusNotModified was returned.
 19995  func (c *OrdersCustombatchCall) Do(opts ...googleapi.CallOption) (*OrdersCustomBatchResponse, error) {
 19996  	gensupport.SetOptions(c.urlParams_, opts...)
 19997  	res, err := c.doRequest("json")
 19998  	if res != nil && res.StatusCode == http.StatusNotModified {
 19999  		if res.Body != nil {
 20000  			res.Body.Close()
 20001  		}
 20002  		return nil, &googleapi.Error{
 20003  			Code:   res.StatusCode,
 20004  			Header: res.Header,
 20005  		}
 20006  	}
 20007  	if err != nil {
 20008  		return nil, err
 20009  	}
 20010  	defer googleapi.CloseBody(res)
 20011  	if err := googleapi.CheckResponse(res); err != nil {
 20012  		return nil, err
 20013  	}
 20014  	ret := &OrdersCustomBatchResponse{
 20015  		ServerResponse: googleapi.ServerResponse{
 20016  			Header:         res.Header,
 20017  			HTTPStatusCode: res.StatusCode,
 20018  		},
 20019  	}
 20020  	target := &ret
 20021  	if err := gensupport.DecodeResponse(target, res); err != nil {
 20022  		return nil, err
 20023  	}
 20024  	return ret, nil
 20025  	// {
 20026  	//   "description": "Retrieves or modifies multiple orders in a single request.",
 20027  	//   "flatPath": "orders/batch",
 20028  	//   "httpMethod": "POST",
 20029  	//   "id": "content.orders.custombatch",
 20030  	//   "parameterOrder": [],
 20031  	//   "parameters": {},
 20032  	//   "path": "orders/batch",
 20033  	//   "request": {
 20034  	//     "$ref": "OrdersCustomBatchRequest"
 20035  	//   },
 20036  	//   "response": {
 20037  	//     "$ref": "OrdersCustomBatchResponse"
 20038  	//   },
 20039  	//   "scopes": [
 20040  	//     "https://www.googleapis.com/auth/content"
 20041  	//   ]
 20042  	// }
 20043  
 20044  }
 20045  
 20046  // method id "content.orders.get":
 20047  
 20048  type OrdersGetCall struct {
 20049  	s            *APIService
 20050  	merchantId   uint64
 20051  	orderId      string
 20052  	urlParams_   gensupport.URLParams
 20053  	ifNoneMatch_ string
 20054  	ctx_         context.Context
 20055  	header_      http.Header
 20056  }
 20057  
 20058  // Get: Retrieves an order from your Merchant Center account.
 20059  //
 20060  //   - merchantId: The ID of the account that manages the order. This
 20061  //     cannot be a multi-client account.
 20062  //   - orderId: The ID of the order.
 20063  func (r *OrdersService) Get(merchantId uint64, orderId string) *OrdersGetCall {
 20064  	c := &OrdersGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 20065  	c.merchantId = merchantId
 20066  	c.orderId = orderId
 20067  	return c
 20068  }
 20069  
 20070  // Fields allows partial responses to be retrieved. See
 20071  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 20072  // for more information.
 20073  func (c *OrdersGetCall) Fields(s ...googleapi.Field) *OrdersGetCall {
 20074  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 20075  	return c
 20076  }
 20077  
 20078  // IfNoneMatch sets the optional parameter which makes the operation
 20079  // fail if the object's ETag matches the given value. This is useful for
 20080  // getting updates only after the object has changed since the last
 20081  // request. Use googleapi.IsNotModified to check whether the response
 20082  // error from Do is the result of In-None-Match.
 20083  func (c *OrdersGetCall) IfNoneMatch(entityTag string) *OrdersGetCall {
 20084  	c.ifNoneMatch_ = entityTag
 20085  	return c
 20086  }
 20087  
 20088  // Context sets the context to be used in this call's Do method. Any
 20089  // pending HTTP request will be aborted if the provided context is
 20090  // canceled.
 20091  func (c *OrdersGetCall) Context(ctx context.Context) *OrdersGetCall {
 20092  	c.ctx_ = ctx
 20093  	return c
 20094  }
 20095  
 20096  // Header returns an http.Header that can be modified by the caller to
 20097  // add HTTP headers to the request.
 20098  func (c *OrdersGetCall) Header() http.Header {
 20099  	if c.header_ == nil {
 20100  		c.header_ = make(http.Header)
 20101  	}
 20102  	return c.header_
 20103  }
 20104  
 20105  func (c *OrdersGetCall) doRequest(alt string) (*http.Response, error) {
 20106  	reqHeaders := make(http.Header)
 20107  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 20108  	for k, v := range c.header_ {
 20109  		reqHeaders[k] = v
 20110  	}
 20111  	reqHeaders.Set("User-Agent", c.s.userAgent())
 20112  	if c.ifNoneMatch_ != "" {
 20113  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 20114  	}
 20115  	var body io.Reader = nil
 20116  	c.urlParams_.Set("alt", alt)
 20117  	c.urlParams_.Set("prettyPrint", "false")
 20118  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}")
 20119  	urls += "?" + c.urlParams_.Encode()
 20120  	req, err := http.NewRequest("GET", urls, body)
 20121  	if err != nil {
 20122  		return nil, err
 20123  	}
 20124  	req.Header = reqHeaders
 20125  	googleapi.Expand(req.URL, map[string]string{
 20126  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 20127  		"orderId":    c.orderId,
 20128  	})
 20129  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 20130  }
 20131  
 20132  // Do executes the "content.orders.get" call.
 20133  // Exactly one of *Order or error will be non-nil. Any non-2xx status
 20134  // code is an error. Response headers are in either
 20135  // *Order.ServerResponse.Header or (if a response was returned at all)
 20136  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 20137  // check whether the returned error was because http.StatusNotModified
 20138  // was returned.
 20139  func (c *OrdersGetCall) Do(opts ...googleapi.CallOption) (*Order, error) {
 20140  	gensupport.SetOptions(c.urlParams_, opts...)
 20141  	res, err := c.doRequest("json")
 20142  	if res != nil && res.StatusCode == http.StatusNotModified {
 20143  		if res.Body != nil {
 20144  			res.Body.Close()
 20145  		}
 20146  		return nil, &googleapi.Error{
 20147  			Code:   res.StatusCode,
 20148  			Header: res.Header,
 20149  		}
 20150  	}
 20151  	if err != nil {
 20152  		return nil, err
 20153  	}
 20154  	defer googleapi.CloseBody(res)
 20155  	if err := googleapi.CheckResponse(res); err != nil {
 20156  		return nil, err
 20157  	}
 20158  	ret := &Order{
 20159  		ServerResponse: googleapi.ServerResponse{
 20160  			Header:         res.Header,
 20161  			HTTPStatusCode: res.StatusCode,
 20162  		},
 20163  	}
 20164  	target := &ret
 20165  	if err := gensupport.DecodeResponse(target, res); err != nil {
 20166  		return nil, err
 20167  	}
 20168  	return ret, nil
 20169  	// {
 20170  	//   "description": "Retrieves an order from your Merchant Center account.",
 20171  	//   "flatPath": "{merchantId}/orders/{orderId}",
 20172  	//   "httpMethod": "GET",
 20173  	//   "id": "content.orders.get",
 20174  	//   "parameterOrder": [
 20175  	//     "merchantId",
 20176  	//     "orderId"
 20177  	//   ],
 20178  	//   "parameters": {
 20179  	//     "merchantId": {
 20180  	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
 20181  	//       "format": "uint64",
 20182  	//       "location": "path",
 20183  	//       "required": true,
 20184  	//       "type": "string"
 20185  	//     },
 20186  	//     "orderId": {
 20187  	//       "description": "The ID of the order.",
 20188  	//       "location": "path",
 20189  	//       "required": true,
 20190  	//       "type": "string"
 20191  	//     }
 20192  	//   },
 20193  	//   "path": "{merchantId}/orders/{orderId}",
 20194  	//   "response": {
 20195  	//     "$ref": "Order"
 20196  	//   },
 20197  	//   "scopes": [
 20198  	//     "https://www.googleapis.com/auth/content"
 20199  	//   ]
 20200  	// }
 20201  
 20202  }
 20203  
 20204  // method id "content.orders.getbymerchantorderid":
 20205  
 20206  type OrdersGetbymerchantorderidCall struct {
 20207  	s               *APIService
 20208  	merchantId      uint64
 20209  	merchantOrderId string
 20210  	urlParams_      gensupport.URLParams
 20211  	ifNoneMatch_    string
 20212  	ctx_            context.Context
 20213  	header_         http.Header
 20214  }
 20215  
 20216  // Getbymerchantorderid: Retrieves an order using merchant order ID.
 20217  //
 20218  //   - merchantId: The ID of the account that manages the order. This
 20219  //     cannot be a multi-client account.
 20220  //   - merchantOrderId: The merchant order ID to be looked for.
 20221  func (r *OrdersService) Getbymerchantorderid(merchantId uint64, merchantOrderId string) *OrdersGetbymerchantorderidCall {
 20222  	c := &OrdersGetbymerchantorderidCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 20223  	c.merchantId = merchantId
 20224  	c.merchantOrderId = merchantOrderId
 20225  	return c
 20226  }
 20227  
 20228  // Fields allows partial responses to be retrieved. See
 20229  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 20230  // for more information.
 20231  func (c *OrdersGetbymerchantorderidCall) Fields(s ...googleapi.Field) *OrdersGetbymerchantorderidCall {
 20232  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 20233  	return c
 20234  }
 20235  
 20236  // IfNoneMatch sets the optional parameter which makes the operation
 20237  // fail if the object's ETag matches the given value. This is useful for
 20238  // getting updates only after the object has changed since the last
 20239  // request. Use googleapi.IsNotModified to check whether the response
 20240  // error from Do is the result of In-None-Match.
 20241  func (c *OrdersGetbymerchantorderidCall) IfNoneMatch(entityTag string) *OrdersGetbymerchantorderidCall {
 20242  	c.ifNoneMatch_ = entityTag
 20243  	return c
 20244  }
 20245  
 20246  // Context sets the context to be used in this call's Do method. Any
 20247  // pending HTTP request will be aborted if the provided context is
 20248  // canceled.
 20249  func (c *OrdersGetbymerchantorderidCall) Context(ctx context.Context) *OrdersGetbymerchantorderidCall {
 20250  	c.ctx_ = ctx
 20251  	return c
 20252  }
 20253  
 20254  // Header returns an http.Header that can be modified by the caller to
 20255  // add HTTP headers to the request.
 20256  func (c *OrdersGetbymerchantorderidCall) Header() http.Header {
 20257  	if c.header_ == nil {
 20258  		c.header_ = make(http.Header)
 20259  	}
 20260  	return c.header_
 20261  }
 20262  
 20263  func (c *OrdersGetbymerchantorderidCall) doRequest(alt string) (*http.Response, error) {
 20264  	reqHeaders := make(http.Header)
 20265  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 20266  	for k, v := range c.header_ {
 20267  		reqHeaders[k] = v
 20268  	}
 20269  	reqHeaders.Set("User-Agent", c.s.userAgent())
 20270  	if c.ifNoneMatch_ != "" {
 20271  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 20272  	}
 20273  	var body io.Reader = nil
 20274  	c.urlParams_.Set("alt", alt)
 20275  	c.urlParams_.Set("prettyPrint", "false")
 20276  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/ordersbymerchantid/{merchantOrderId}")
 20277  	urls += "?" + c.urlParams_.Encode()
 20278  	req, err := http.NewRequest("GET", urls, body)
 20279  	if err != nil {
 20280  		return nil, err
 20281  	}
 20282  	req.Header = reqHeaders
 20283  	googleapi.Expand(req.URL, map[string]string{
 20284  		"merchantId":      strconv.FormatUint(c.merchantId, 10),
 20285  		"merchantOrderId": c.merchantOrderId,
 20286  	})
 20287  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 20288  }
 20289  
 20290  // Do executes the "content.orders.getbymerchantorderid" call.
 20291  // Exactly one of *OrdersGetByMerchantOrderIdResponse or error will be
 20292  // non-nil. Any non-2xx status code is an error. Response headers are in
 20293  // either *OrdersGetByMerchantOrderIdResponse.ServerResponse.Header or
 20294  // (if a response was returned at all) in
 20295  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 20296  // whether the returned error was because http.StatusNotModified was
 20297  // returned.
 20298  func (c *OrdersGetbymerchantorderidCall) Do(opts ...googleapi.CallOption) (*OrdersGetByMerchantOrderIdResponse, error) {
 20299  	gensupport.SetOptions(c.urlParams_, opts...)
 20300  	res, err := c.doRequest("json")
 20301  	if res != nil && res.StatusCode == http.StatusNotModified {
 20302  		if res.Body != nil {
 20303  			res.Body.Close()
 20304  		}
 20305  		return nil, &googleapi.Error{
 20306  			Code:   res.StatusCode,
 20307  			Header: res.Header,
 20308  		}
 20309  	}
 20310  	if err != nil {
 20311  		return nil, err
 20312  	}
 20313  	defer googleapi.CloseBody(res)
 20314  	if err := googleapi.CheckResponse(res); err != nil {
 20315  		return nil, err
 20316  	}
 20317  	ret := &OrdersGetByMerchantOrderIdResponse{
 20318  		ServerResponse: googleapi.ServerResponse{
 20319  			Header:         res.Header,
 20320  			HTTPStatusCode: res.StatusCode,
 20321  		},
 20322  	}
 20323  	target := &ret
 20324  	if err := gensupport.DecodeResponse(target, res); err != nil {
 20325  		return nil, err
 20326  	}
 20327  	return ret, nil
 20328  	// {
 20329  	//   "description": "Retrieves an order using merchant order ID.",
 20330  	//   "flatPath": "{merchantId}/ordersbymerchantid/{merchantOrderId}",
 20331  	//   "httpMethod": "GET",
 20332  	//   "id": "content.orders.getbymerchantorderid",
 20333  	//   "parameterOrder": [
 20334  	//     "merchantId",
 20335  	//     "merchantOrderId"
 20336  	//   ],
 20337  	//   "parameters": {
 20338  	//     "merchantId": {
 20339  	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
 20340  	//       "format": "uint64",
 20341  	//       "location": "path",
 20342  	//       "required": true,
 20343  	//       "type": "string"
 20344  	//     },
 20345  	//     "merchantOrderId": {
 20346  	//       "description": "The merchant order ID to be looked for.",
 20347  	//       "location": "path",
 20348  	//       "required": true,
 20349  	//       "type": "string"
 20350  	//     }
 20351  	//   },
 20352  	//   "path": "{merchantId}/ordersbymerchantid/{merchantOrderId}",
 20353  	//   "response": {
 20354  	//     "$ref": "OrdersGetByMerchantOrderIdResponse"
 20355  	//   },
 20356  	//   "scopes": [
 20357  	//     "https://www.googleapis.com/auth/content"
 20358  	//   ]
 20359  	// }
 20360  
 20361  }
 20362  
 20363  // method id "content.orders.gettestordertemplate":
 20364  
 20365  type OrdersGettestordertemplateCall struct {
 20366  	s            *APIService
 20367  	merchantId   uint64
 20368  	templateName string
 20369  	urlParams_   gensupport.URLParams
 20370  	ifNoneMatch_ string
 20371  	ctx_         context.Context
 20372  	header_      http.Header
 20373  }
 20374  
 20375  // Gettestordertemplate: Sandbox only. Retrieves an order template that
 20376  // can be used to quickly create a new order in sandbox.
 20377  //
 20378  //   - merchantId: The ID of the account that should manage the order.
 20379  //     This cannot be a multi-client account.
 20380  //   - templateName: The name of the template to retrieve.
 20381  func (r *OrdersService) Gettestordertemplate(merchantId uint64, templateName string) *OrdersGettestordertemplateCall {
 20382  	c := &OrdersGettestordertemplateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 20383  	c.merchantId = merchantId
 20384  	c.templateName = templateName
 20385  	return c
 20386  }
 20387  
 20388  // Country sets the optional parameter "country": The country of the
 20389  // template to retrieve. Defaults to `US`.
 20390  func (c *OrdersGettestordertemplateCall) Country(country string) *OrdersGettestordertemplateCall {
 20391  	c.urlParams_.Set("country", country)
 20392  	return c
 20393  }
 20394  
 20395  // Fields allows partial responses to be retrieved. See
 20396  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 20397  // for more information.
 20398  func (c *OrdersGettestordertemplateCall) Fields(s ...googleapi.Field) *OrdersGettestordertemplateCall {
 20399  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 20400  	return c
 20401  }
 20402  
 20403  // IfNoneMatch sets the optional parameter which makes the operation
 20404  // fail if the object's ETag matches the given value. This is useful for
 20405  // getting updates only after the object has changed since the last
 20406  // request. Use googleapi.IsNotModified to check whether the response
 20407  // error from Do is the result of In-None-Match.
 20408  func (c *OrdersGettestordertemplateCall) IfNoneMatch(entityTag string) *OrdersGettestordertemplateCall {
 20409  	c.ifNoneMatch_ = entityTag
 20410  	return c
 20411  }
 20412  
 20413  // Context sets the context to be used in this call's Do method. Any
 20414  // pending HTTP request will be aborted if the provided context is
 20415  // canceled.
 20416  func (c *OrdersGettestordertemplateCall) Context(ctx context.Context) *OrdersGettestordertemplateCall {
 20417  	c.ctx_ = ctx
 20418  	return c
 20419  }
 20420  
 20421  // Header returns an http.Header that can be modified by the caller to
 20422  // add HTTP headers to the request.
 20423  func (c *OrdersGettestordertemplateCall) Header() http.Header {
 20424  	if c.header_ == nil {
 20425  		c.header_ = make(http.Header)
 20426  	}
 20427  	return c.header_
 20428  }
 20429  
 20430  func (c *OrdersGettestordertemplateCall) doRequest(alt string) (*http.Response, error) {
 20431  	reqHeaders := make(http.Header)
 20432  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 20433  	for k, v := range c.header_ {
 20434  		reqHeaders[k] = v
 20435  	}
 20436  	reqHeaders.Set("User-Agent", c.s.userAgent())
 20437  	if c.ifNoneMatch_ != "" {
 20438  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 20439  	}
 20440  	var body io.Reader = nil
 20441  	c.urlParams_.Set("alt", alt)
 20442  	c.urlParams_.Set("prettyPrint", "false")
 20443  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/testordertemplates/{templateName}")
 20444  	urls += "?" + c.urlParams_.Encode()
 20445  	req, err := http.NewRequest("GET", urls, body)
 20446  	if err != nil {
 20447  		return nil, err
 20448  	}
 20449  	req.Header = reqHeaders
 20450  	googleapi.Expand(req.URL, map[string]string{
 20451  		"merchantId":   strconv.FormatUint(c.merchantId, 10),
 20452  		"templateName": c.templateName,
 20453  	})
 20454  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 20455  }
 20456  
 20457  // Do executes the "content.orders.gettestordertemplate" call.
 20458  // Exactly one of *OrdersGetTestOrderTemplateResponse or error will be
 20459  // non-nil. Any non-2xx status code is an error. Response headers are in
 20460  // either *OrdersGetTestOrderTemplateResponse.ServerResponse.Header or
 20461  // (if a response was returned at all) in
 20462  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 20463  // whether the returned error was because http.StatusNotModified was
 20464  // returned.
 20465  func (c *OrdersGettestordertemplateCall) Do(opts ...googleapi.CallOption) (*OrdersGetTestOrderTemplateResponse, error) {
 20466  	gensupport.SetOptions(c.urlParams_, opts...)
 20467  	res, err := c.doRequest("json")
 20468  	if res != nil && res.StatusCode == http.StatusNotModified {
 20469  		if res.Body != nil {
 20470  			res.Body.Close()
 20471  		}
 20472  		return nil, &googleapi.Error{
 20473  			Code:   res.StatusCode,
 20474  			Header: res.Header,
 20475  		}
 20476  	}
 20477  	if err != nil {
 20478  		return nil, err
 20479  	}
 20480  	defer googleapi.CloseBody(res)
 20481  	if err := googleapi.CheckResponse(res); err != nil {
 20482  		return nil, err
 20483  	}
 20484  	ret := &OrdersGetTestOrderTemplateResponse{
 20485  		ServerResponse: googleapi.ServerResponse{
 20486  			Header:         res.Header,
 20487  			HTTPStatusCode: res.StatusCode,
 20488  		},
 20489  	}
 20490  	target := &ret
 20491  	if err := gensupport.DecodeResponse(target, res); err != nil {
 20492  		return nil, err
 20493  	}
 20494  	return ret, nil
 20495  	// {
 20496  	//   "description": "Sandbox only. Retrieves an order template that can be used to quickly create a new order in sandbox.",
 20497  	//   "flatPath": "{merchantId}/testordertemplates/{templateName}",
 20498  	//   "httpMethod": "GET",
 20499  	//   "id": "content.orders.gettestordertemplate",
 20500  	//   "parameterOrder": [
 20501  	//     "merchantId",
 20502  	//     "templateName"
 20503  	//   ],
 20504  	//   "parameters": {
 20505  	//     "country": {
 20506  	//       "description": "The country of the template to retrieve. Defaults to `US`.",
 20507  	//       "location": "query",
 20508  	//       "type": "string"
 20509  	//     },
 20510  	//     "merchantId": {
 20511  	//       "description": "The ID of the account that should manage the order. This cannot be a multi-client account.",
 20512  	//       "format": "uint64",
 20513  	//       "location": "path",
 20514  	//       "required": true,
 20515  	//       "type": "string"
 20516  	//     },
 20517  	//     "templateName": {
 20518  	//       "description": "The name of the template to retrieve.",
 20519  	//       "enum": [
 20520  	//         "TEMPLATE1",
 20521  	//         "TEMPLATE2",
 20522  	//         "TEMPLATE1A",
 20523  	//         "TEMPLATE1B",
 20524  	//         "TEMPLATE3"
 20525  	//       ],
 20526  	//       "enumDescriptions": [
 20527  	//         "",
 20528  	//         "",
 20529  	//         "",
 20530  	//         "",
 20531  	//         ""
 20532  	//       ],
 20533  	//       "location": "path",
 20534  	//       "required": true,
 20535  	//       "type": "string"
 20536  	//     }
 20537  	//   },
 20538  	//   "path": "{merchantId}/testordertemplates/{templateName}",
 20539  	//   "response": {
 20540  	//     "$ref": "OrdersGetTestOrderTemplateResponse"
 20541  	//   },
 20542  	//   "scopes": [
 20543  	//     "https://www.googleapis.com/auth/content"
 20544  	//   ]
 20545  	// }
 20546  
 20547  }
 20548  
 20549  // method id "content.orders.instorerefundlineitem":
 20550  
 20551  type OrdersInstorerefundlineitemCall struct {
 20552  	s                                  *APIService
 20553  	merchantId                         uint64
 20554  	orderId                            string
 20555  	ordersinstorerefundlineitemrequest *OrdersInStoreRefundLineItemRequest
 20556  	urlParams_                         gensupport.URLParams
 20557  	ctx_                               context.Context
 20558  	header_                            http.Header
 20559  }
 20560  
 20561  // Instorerefundlineitem: Deprecated. Notifies that item return and
 20562  // refund was handled directly by merchant outside of Google payments
 20563  // processing (e.g. cash refund done in store). Note: We recommend
 20564  // calling the returnrefundlineitem method to refund in-store returns.
 20565  // We will issue the refund directly to the customer. This helps to
 20566  // prevent possible differences arising between merchant and Google
 20567  // transaction records. We also recommend having the point of sale
 20568  // system communicate with Google to ensure that customers do not
 20569  // receive a double refund by first refunding via Google then via an
 20570  // in-store return.
 20571  //
 20572  //   - merchantId: The ID of the account that manages the order. This
 20573  //     cannot be a multi-client account.
 20574  //   - orderId: The ID of the order.
 20575  func (r *OrdersService) Instorerefundlineitem(merchantId uint64, orderId string, ordersinstorerefundlineitemrequest *OrdersInStoreRefundLineItemRequest) *OrdersInstorerefundlineitemCall {
 20576  	c := &OrdersInstorerefundlineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 20577  	c.merchantId = merchantId
 20578  	c.orderId = orderId
 20579  	c.ordersinstorerefundlineitemrequest = ordersinstorerefundlineitemrequest
 20580  	return c
 20581  }
 20582  
 20583  // Fields allows partial responses to be retrieved. See
 20584  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 20585  // for more information.
 20586  func (c *OrdersInstorerefundlineitemCall) Fields(s ...googleapi.Field) *OrdersInstorerefundlineitemCall {
 20587  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 20588  	return c
 20589  }
 20590  
 20591  // Context sets the context to be used in this call's Do method. Any
 20592  // pending HTTP request will be aborted if the provided context is
 20593  // canceled.
 20594  func (c *OrdersInstorerefundlineitemCall) Context(ctx context.Context) *OrdersInstorerefundlineitemCall {
 20595  	c.ctx_ = ctx
 20596  	return c
 20597  }
 20598  
 20599  // Header returns an http.Header that can be modified by the caller to
 20600  // add HTTP headers to the request.
 20601  func (c *OrdersInstorerefundlineitemCall) Header() http.Header {
 20602  	if c.header_ == nil {
 20603  		c.header_ = make(http.Header)
 20604  	}
 20605  	return c.header_
 20606  }
 20607  
 20608  func (c *OrdersInstorerefundlineitemCall) doRequest(alt string) (*http.Response, error) {
 20609  	reqHeaders := make(http.Header)
 20610  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 20611  	for k, v := range c.header_ {
 20612  		reqHeaders[k] = v
 20613  	}
 20614  	reqHeaders.Set("User-Agent", c.s.userAgent())
 20615  	var body io.Reader = nil
 20616  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersinstorerefundlineitemrequest)
 20617  	if err != nil {
 20618  		return nil, err
 20619  	}
 20620  	reqHeaders.Set("Content-Type", "application/json")
 20621  	c.urlParams_.Set("alt", alt)
 20622  	c.urlParams_.Set("prettyPrint", "false")
 20623  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/inStoreRefundLineItem")
 20624  	urls += "?" + c.urlParams_.Encode()
 20625  	req, err := http.NewRequest("POST", urls, body)
 20626  	if err != nil {
 20627  		return nil, err
 20628  	}
 20629  	req.Header = reqHeaders
 20630  	googleapi.Expand(req.URL, map[string]string{
 20631  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 20632  		"orderId":    c.orderId,
 20633  	})
 20634  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 20635  }
 20636  
 20637  // Do executes the "content.orders.instorerefundlineitem" call.
 20638  // Exactly one of *OrdersInStoreRefundLineItemResponse or error will be
 20639  // non-nil. Any non-2xx status code is an error. Response headers are in
 20640  // either *OrdersInStoreRefundLineItemResponse.ServerResponse.Header or
 20641  // (if a response was returned at all) in
 20642  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 20643  // whether the returned error was because http.StatusNotModified was
 20644  // returned.
 20645  func (c *OrdersInstorerefundlineitemCall) Do(opts ...googleapi.CallOption) (*OrdersInStoreRefundLineItemResponse, error) {
 20646  	gensupport.SetOptions(c.urlParams_, opts...)
 20647  	res, err := c.doRequest("json")
 20648  	if res != nil && res.StatusCode == http.StatusNotModified {
 20649  		if res.Body != nil {
 20650  			res.Body.Close()
 20651  		}
 20652  		return nil, &googleapi.Error{
 20653  			Code:   res.StatusCode,
 20654  			Header: res.Header,
 20655  		}
 20656  	}
 20657  	if err != nil {
 20658  		return nil, err
 20659  	}
 20660  	defer googleapi.CloseBody(res)
 20661  	if err := googleapi.CheckResponse(res); err != nil {
 20662  		return nil, err
 20663  	}
 20664  	ret := &OrdersInStoreRefundLineItemResponse{
 20665  		ServerResponse: googleapi.ServerResponse{
 20666  			Header:         res.Header,
 20667  			HTTPStatusCode: res.StatusCode,
 20668  		},
 20669  	}
 20670  	target := &ret
 20671  	if err := gensupport.DecodeResponse(target, res); err != nil {
 20672  		return nil, err
 20673  	}
 20674  	return ret, nil
 20675  	// {
 20676  	//   "description": "Deprecated. Notifies that item return and refund was handled directly by merchant outside of Google payments processing (e.g. cash refund done in store). Note: We recommend calling the returnrefundlineitem method to refund in-store returns. We will issue the refund directly to the customer. This helps to prevent possible differences arising between merchant and Google transaction records. We also recommend having the point of sale system communicate with Google to ensure that customers do not receive a double refund by first refunding via Google then via an in-store return.",
 20677  	//   "flatPath": "{merchantId}/orders/{orderId}/inStoreRefundLineItem",
 20678  	//   "httpMethod": "POST",
 20679  	//   "id": "content.orders.instorerefundlineitem",
 20680  	//   "parameterOrder": [
 20681  	//     "merchantId",
 20682  	//     "orderId"
 20683  	//   ],
 20684  	//   "parameters": {
 20685  	//     "merchantId": {
 20686  	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
 20687  	//       "format": "uint64",
 20688  	//       "location": "path",
 20689  	//       "required": true,
 20690  	//       "type": "string"
 20691  	//     },
 20692  	//     "orderId": {
 20693  	//       "description": "The ID of the order.",
 20694  	//       "location": "path",
 20695  	//       "required": true,
 20696  	//       "type": "string"
 20697  	//     }
 20698  	//   },
 20699  	//   "path": "{merchantId}/orders/{orderId}/inStoreRefundLineItem",
 20700  	//   "request": {
 20701  	//     "$ref": "OrdersInStoreRefundLineItemRequest"
 20702  	//   },
 20703  	//   "response": {
 20704  	//     "$ref": "OrdersInStoreRefundLineItemResponse"
 20705  	//   },
 20706  	//   "scopes": [
 20707  	//     "https://www.googleapis.com/auth/content"
 20708  	//   ]
 20709  	// }
 20710  
 20711  }
 20712  
 20713  // method id "content.orders.list":
 20714  
 20715  type OrdersListCall struct {
 20716  	s            *APIService
 20717  	merchantId   uint64
 20718  	urlParams_   gensupport.URLParams
 20719  	ifNoneMatch_ string
 20720  	ctx_         context.Context
 20721  	header_      http.Header
 20722  }
 20723  
 20724  // List: Lists the orders in your Merchant Center account.
 20725  //
 20726  //   - merchantId: The ID of the account that manages the order. This
 20727  //     cannot be a multi-client account.
 20728  func (r *OrdersService) List(merchantId uint64) *OrdersListCall {
 20729  	c := &OrdersListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 20730  	c.merchantId = merchantId
 20731  	return c
 20732  }
 20733  
 20734  // Acknowledged sets the optional parameter "acknowledged": Obtains
 20735  // orders that match the acknowledgement status. When set to true,
 20736  // obtains orders that have been acknowledged. When false, obtains
 20737  // orders that have not been acknowledged. We recommend using this
 20738  // filter set to `false`, in conjunction with the `acknowledge` call,
 20739  // such that only un-acknowledged orders are returned.
 20740  func (c *OrdersListCall) Acknowledged(acknowledged bool) *OrdersListCall {
 20741  	c.urlParams_.Set("acknowledged", fmt.Sprint(acknowledged))
 20742  	return c
 20743  }
 20744  
 20745  // MaxResults sets the optional parameter "maxResults": The maximum
 20746  // number of orders to return in the response, used for paging. The
 20747  // default value is 25 orders per page, and the maximum allowed value is
 20748  // 250 orders per page.
 20749  func (c *OrdersListCall) MaxResults(maxResults int64) *OrdersListCall {
 20750  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 20751  	return c
 20752  }
 20753  
 20754  // OrderBy sets the optional parameter "orderBy": Order results by
 20755  // placement date in descending or ascending order. Acceptable values
 20756  // are: - placedDateAsc - placedDateDesc
 20757  func (c *OrdersListCall) OrderBy(orderBy string) *OrdersListCall {
 20758  	c.urlParams_.Set("orderBy", orderBy)
 20759  	return c
 20760  }
 20761  
 20762  // PageToken sets the optional parameter "pageToken": The token returned
 20763  // by the previous request.
 20764  func (c *OrdersListCall) PageToken(pageToken string) *OrdersListCall {
 20765  	c.urlParams_.Set("pageToken", pageToken)
 20766  	return c
 20767  }
 20768  
 20769  // PlacedDateEnd sets the optional parameter "placedDateEnd": Obtains
 20770  // orders placed before this date (exclusively), in ISO 8601 format.
 20771  func (c *OrdersListCall) PlacedDateEnd(placedDateEnd string) *OrdersListCall {
 20772  	c.urlParams_.Set("placedDateEnd", placedDateEnd)
 20773  	return c
 20774  }
 20775  
 20776  // PlacedDateStart sets the optional parameter "placedDateStart":
 20777  // Obtains orders placed after this date (inclusively), in ISO 8601
 20778  // format.
 20779  func (c *OrdersListCall) PlacedDateStart(placedDateStart string) *OrdersListCall {
 20780  	c.urlParams_.Set("placedDateStart", placedDateStart)
 20781  	return c
 20782  }
 20783  
 20784  // Statuses sets the optional parameter "statuses": Obtains orders that
 20785  // match any of the specified statuses. Please note that `active` is a
 20786  // shortcut for `pendingShipment` and `partiallyShipped`, and
 20787  // `completed` is a shortcut for `shipped`, `partiallyDelivered`,
 20788  // `delivered`, `partiallyReturned`, `returned`, and `canceled`.
 20789  //
 20790  // Possible values:
 20791  //
 20792  //	"ACTIVE"
 20793  //	"COMPLETED"
 20794  //	"CANCELED"
 20795  //	"IN_PROGRESS"
 20796  //	"PENDING_SHIPMENT"
 20797  //	"PARTIALLY_SHIPPED"
 20798  //	"SHIPPED"
 20799  //	"PARTIALLY_DELIVERED"
 20800  //	"DELIVERED"
 20801  //	"PARTIALLY_RETURNED"
 20802  //	"RETURNED"
 20803  func (c *OrdersListCall) Statuses(statuses ...string) *OrdersListCall {
 20804  	c.urlParams_.SetMulti("statuses", append([]string{}, statuses...))
 20805  	return c
 20806  }
 20807  
 20808  // Fields allows partial responses to be retrieved. See
 20809  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 20810  // for more information.
 20811  func (c *OrdersListCall) Fields(s ...googleapi.Field) *OrdersListCall {
 20812  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 20813  	return c
 20814  }
 20815  
 20816  // IfNoneMatch sets the optional parameter which makes the operation
 20817  // fail if the object's ETag matches the given value. This is useful for
 20818  // getting updates only after the object has changed since the last
 20819  // request. Use googleapi.IsNotModified to check whether the response
 20820  // error from Do is the result of In-None-Match.
 20821  func (c *OrdersListCall) IfNoneMatch(entityTag string) *OrdersListCall {
 20822  	c.ifNoneMatch_ = entityTag
 20823  	return c
 20824  }
 20825  
 20826  // Context sets the context to be used in this call's Do method. Any
 20827  // pending HTTP request will be aborted if the provided context is
 20828  // canceled.
 20829  func (c *OrdersListCall) Context(ctx context.Context) *OrdersListCall {
 20830  	c.ctx_ = ctx
 20831  	return c
 20832  }
 20833  
 20834  // Header returns an http.Header that can be modified by the caller to
 20835  // add HTTP headers to the request.
 20836  func (c *OrdersListCall) Header() http.Header {
 20837  	if c.header_ == nil {
 20838  		c.header_ = make(http.Header)
 20839  	}
 20840  	return c.header_
 20841  }
 20842  
 20843  func (c *OrdersListCall) doRequest(alt string) (*http.Response, error) {
 20844  	reqHeaders := make(http.Header)
 20845  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 20846  	for k, v := range c.header_ {
 20847  		reqHeaders[k] = v
 20848  	}
 20849  	reqHeaders.Set("User-Agent", c.s.userAgent())
 20850  	if c.ifNoneMatch_ != "" {
 20851  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 20852  	}
 20853  	var body io.Reader = nil
 20854  	c.urlParams_.Set("alt", alt)
 20855  	c.urlParams_.Set("prettyPrint", "false")
 20856  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders")
 20857  	urls += "?" + c.urlParams_.Encode()
 20858  	req, err := http.NewRequest("GET", urls, body)
 20859  	if err != nil {
 20860  		return nil, err
 20861  	}
 20862  	req.Header = reqHeaders
 20863  	googleapi.Expand(req.URL, map[string]string{
 20864  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 20865  	})
 20866  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 20867  }
 20868  
 20869  // Do executes the "content.orders.list" call.
 20870  // Exactly one of *OrdersListResponse or error will be non-nil. Any
 20871  // non-2xx status code is an error. Response headers are in either
 20872  // *OrdersListResponse.ServerResponse.Header or (if a response was
 20873  // returned at all) in error.(*googleapi.Error).Header. Use
 20874  // googleapi.IsNotModified to check whether the returned error was
 20875  // because http.StatusNotModified was returned.
 20876  func (c *OrdersListCall) Do(opts ...googleapi.CallOption) (*OrdersListResponse, error) {
 20877  	gensupport.SetOptions(c.urlParams_, opts...)
 20878  	res, err := c.doRequest("json")
 20879  	if res != nil && res.StatusCode == http.StatusNotModified {
 20880  		if res.Body != nil {
 20881  			res.Body.Close()
 20882  		}
 20883  		return nil, &googleapi.Error{
 20884  			Code:   res.StatusCode,
 20885  			Header: res.Header,
 20886  		}
 20887  	}
 20888  	if err != nil {
 20889  		return nil, err
 20890  	}
 20891  	defer googleapi.CloseBody(res)
 20892  	if err := googleapi.CheckResponse(res); err != nil {
 20893  		return nil, err
 20894  	}
 20895  	ret := &OrdersListResponse{
 20896  		ServerResponse: googleapi.ServerResponse{
 20897  			Header:         res.Header,
 20898  			HTTPStatusCode: res.StatusCode,
 20899  		},
 20900  	}
 20901  	target := &ret
 20902  	if err := gensupport.DecodeResponse(target, res); err != nil {
 20903  		return nil, err
 20904  	}
 20905  	return ret, nil
 20906  	// {
 20907  	//   "description": "Lists the orders in your Merchant Center account.",
 20908  	//   "flatPath": "{merchantId}/orders",
 20909  	//   "httpMethod": "GET",
 20910  	//   "id": "content.orders.list",
 20911  	//   "parameterOrder": [
 20912  	//     "merchantId"
 20913  	//   ],
 20914  	//   "parameters": {
 20915  	//     "acknowledged": {
 20916  	//       "description": "Obtains orders that match the acknowledgement status. When set to true, obtains orders that have been acknowledged. When false, obtains orders that have not been acknowledged. We recommend using this filter set to `false`, in conjunction with the `acknowledge` call, such that only un-acknowledged orders are returned. ",
 20917  	//       "location": "query",
 20918  	//       "type": "boolean"
 20919  	//     },
 20920  	//     "maxResults": {
 20921  	//       "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.",
 20922  	//       "format": "uint32",
 20923  	//       "location": "query",
 20924  	//       "type": "integer"
 20925  	//     },
 20926  	//     "merchantId": {
 20927  	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
 20928  	//       "format": "uint64",
 20929  	//       "location": "path",
 20930  	//       "required": true,
 20931  	//       "type": "string"
 20932  	//     },
 20933  	//     "orderBy": {
 20934  	//       "description": "Order results by placement date in descending or ascending order. Acceptable values are: - placedDateAsc - placedDateDesc ",
 20935  	//       "location": "query",
 20936  	//       "type": "string"
 20937  	//     },
 20938  	//     "pageToken": {
 20939  	//       "description": "The token returned by the previous request.",
 20940  	//       "location": "query",
 20941  	//       "type": "string"
 20942  	//     },
 20943  	//     "placedDateEnd": {
 20944  	//       "description": "Obtains orders placed before this date (exclusively), in ISO 8601 format.",
 20945  	//       "location": "query",
 20946  	//       "type": "string"
 20947  	//     },
 20948  	//     "placedDateStart": {
 20949  	//       "description": "Obtains orders placed after this date (inclusively), in ISO 8601 format.",
 20950  	//       "location": "query",
 20951  	//       "type": "string"
 20952  	//     },
 20953  	//     "statuses": {
 20954  	//       "description": "Obtains orders that match any of the specified statuses. Please note that `active` is a shortcut for `pendingShipment` and `partiallyShipped`, and `completed` is a shortcut for `shipped`, `partiallyDelivered`, `delivered`, `partiallyReturned`, `returned`, and `canceled`.",
 20955  	//       "enum": [
 20956  	//         "ACTIVE",
 20957  	//         "COMPLETED",
 20958  	//         "CANCELED",
 20959  	//         "IN_PROGRESS",
 20960  	//         "PENDING_SHIPMENT",
 20961  	//         "PARTIALLY_SHIPPED",
 20962  	//         "SHIPPED",
 20963  	//         "PARTIALLY_DELIVERED",
 20964  	//         "DELIVERED",
 20965  	//         "PARTIALLY_RETURNED",
 20966  	//         "RETURNED"
 20967  	//       ],
 20968  	//       "enumDescriptions": [
 20969  	//         "",
 20970  	//         "",
 20971  	//         "",
 20972  	//         "",
 20973  	//         "",
 20974  	//         "",
 20975  	//         "",
 20976  	//         "",
 20977  	//         "",
 20978  	//         "",
 20979  	//         ""
 20980  	//       ],
 20981  	//       "location": "query",
 20982  	//       "repeated": true,
 20983  	//       "type": "string"
 20984  	//     }
 20985  	//   },
 20986  	//   "path": "{merchantId}/orders",
 20987  	//   "response": {
 20988  	//     "$ref": "OrdersListResponse"
 20989  	//   },
 20990  	//   "scopes": [
 20991  	//     "https://www.googleapis.com/auth/content"
 20992  	//   ]
 20993  	// }
 20994  
 20995  }
 20996  
 20997  // Pages invokes f for each page of results.
 20998  // A non-nil error returned from f will halt the iteration.
 20999  // The provided context supersedes any context provided to the Context method.
 21000  func (c *OrdersListCall) Pages(ctx context.Context, f func(*OrdersListResponse) error) error {
 21001  	c.ctx_ = ctx
 21002  	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
 21003  	for {
 21004  		x, err := c.Do()
 21005  		if err != nil {
 21006  			return err
 21007  		}
 21008  		if err := f(x); err != nil {
 21009  			return err
 21010  		}
 21011  		if x.NextPageToken == "" {
 21012  			return nil
 21013  		}
 21014  		c.PageToken(x.NextPageToken)
 21015  	}
 21016  }
 21017  
 21018  // method id "content.orders.refund":
 21019  
 21020  type OrdersRefundCall struct {
 21021  	s                   *APIService
 21022  	merchantId          uint64
 21023  	orderId             string
 21024  	ordersrefundrequest *OrdersRefundRequest
 21025  	urlParams_          gensupport.URLParams
 21026  	ctx_                context.Context
 21027  	header_             http.Header
 21028  }
 21029  
 21030  // Refund: Deprecated, please use returnRefundLineItem instead.
 21031  //
 21032  //   - merchantId: The ID of the account that manages the order. This
 21033  //     cannot be a multi-client account.
 21034  //   - orderId: The ID of the order to refund.
 21035  func (r *OrdersService) Refund(merchantId uint64, orderId string, ordersrefundrequest *OrdersRefundRequest) *OrdersRefundCall {
 21036  	c := &OrdersRefundCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 21037  	c.merchantId = merchantId
 21038  	c.orderId = orderId
 21039  	c.ordersrefundrequest = ordersrefundrequest
 21040  	return c
 21041  }
 21042  
 21043  // Fields allows partial responses to be retrieved. See
 21044  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 21045  // for more information.
 21046  func (c *OrdersRefundCall) Fields(s ...googleapi.Field) *OrdersRefundCall {
 21047  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 21048  	return c
 21049  }
 21050  
 21051  // Context sets the context to be used in this call's Do method. Any
 21052  // pending HTTP request will be aborted if the provided context is
 21053  // canceled.
 21054  func (c *OrdersRefundCall) Context(ctx context.Context) *OrdersRefundCall {
 21055  	c.ctx_ = ctx
 21056  	return c
 21057  }
 21058  
 21059  // Header returns an http.Header that can be modified by the caller to
 21060  // add HTTP headers to the request.
 21061  func (c *OrdersRefundCall) Header() http.Header {
 21062  	if c.header_ == nil {
 21063  		c.header_ = make(http.Header)
 21064  	}
 21065  	return c.header_
 21066  }
 21067  
 21068  func (c *OrdersRefundCall) doRequest(alt string) (*http.Response, error) {
 21069  	reqHeaders := make(http.Header)
 21070  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 21071  	for k, v := range c.header_ {
 21072  		reqHeaders[k] = v
 21073  	}
 21074  	reqHeaders.Set("User-Agent", c.s.userAgent())
 21075  	var body io.Reader = nil
 21076  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersrefundrequest)
 21077  	if err != nil {
 21078  		return nil, err
 21079  	}
 21080  	reqHeaders.Set("Content-Type", "application/json")
 21081  	c.urlParams_.Set("alt", alt)
 21082  	c.urlParams_.Set("prettyPrint", "false")
 21083  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/refund")
 21084  	urls += "?" + c.urlParams_.Encode()
 21085  	req, err := http.NewRequest("POST", urls, body)
 21086  	if err != nil {
 21087  		return nil, err
 21088  	}
 21089  	req.Header = reqHeaders
 21090  	googleapi.Expand(req.URL, map[string]string{
 21091  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 21092  		"orderId":    c.orderId,
 21093  	})
 21094  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 21095  }
 21096  
 21097  // Do executes the "content.orders.refund" call.
 21098  // Exactly one of *OrdersRefundResponse or error will be non-nil. Any
 21099  // non-2xx status code is an error. Response headers are in either
 21100  // *OrdersRefundResponse.ServerResponse.Header or (if a response was
 21101  // returned at all) in error.(*googleapi.Error).Header. Use
 21102  // googleapi.IsNotModified to check whether the returned error was
 21103  // because http.StatusNotModified was returned.
 21104  func (c *OrdersRefundCall) Do(opts ...googleapi.CallOption) (*OrdersRefundResponse, error) {
 21105  	gensupport.SetOptions(c.urlParams_, opts...)
 21106  	res, err := c.doRequest("json")
 21107  	if res != nil && res.StatusCode == http.StatusNotModified {
 21108  		if res.Body != nil {
 21109  			res.Body.Close()
 21110  		}
 21111  		return nil, &googleapi.Error{
 21112  			Code:   res.StatusCode,
 21113  			Header: res.Header,
 21114  		}
 21115  	}
 21116  	if err != nil {
 21117  		return nil, err
 21118  	}
 21119  	defer googleapi.CloseBody(res)
 21120  	if err := googleapi.CheckResponse(res); err != nil {
 21121  		return nil, err
 21122  	}
 21123  	ret := &OrdersRefundResponse{
 21124  		ServerResponse: googleapi.ServerResponse{
 21125  			Header:         res.Header,
 21126  			HTTPStatusCode: res.StatusCode,
 21127  		},
 21128  	}
 21129  	target := &ret
 21130  	if err := gensupport.DecodeResponse(target, res); err != nil {
 21131  		return nil, err
 21132  	}
 21133  	return ret, nil
 21134  	// {
 21135  	//   "description": "Deprecated, please use returnRefundLineItem instead.",
 21136  	//   "flatPath": "{merchantId}/orders/{orderId}/refund",
 21137  	//   "httpMethod": "POST",
 21138  	//   "id": "content.orders.refund",
 21139  	//   "parameterOrder": [
 21140  	//     "merchantId",
 21141  	//     "orderId"
 21142  	//   ],
 21143  	//   "parameters": {
 21144  	//     "merchantId": {
 21145  	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
 21146  	//       "format": "uint64",
 21147  	//       "location": "path",
 21148  	//       "required": true,
 21149  	//       "type": "string"
 21150  	//     },
 21151  	//     "orderId": {
 21152  	//       "description": "The ID of the order to refund.",
 21153  	//       "location": "path",
 21154  	//       "required": true,
 21155  	//       "type": "string"
 21156  	//     }
 21157  	//   },
 21158  	//   "path": "{merchantId}/orders/{orderId}/refund",
 21159  	//   "request": {
 21160  	//     "$ref": "OrdersRefundRequest"
 21161  	//   },
 21162  	//   "response": {
 21163  	//     "$ref": "OrdersRefundResponse"
 21164  	//   },
 21165  	//   "scopes": [
 21166  	//     "https://www.googleapis.com/auth/content"
 21167  	//   ]
 21168  	// }
 21169  
 21170  }
 21171  
 21172  // method id "content.orders.rejectreturnlineitem":
 21173  
 21174  type OrdersRejectreturnlineitemCall struct {
 21175  	s                                 *APIService
 21176  	merchantId                        uint64
 21177  	orderId                           string
 21178  	ordersrejectreturnlineitemrequest *OrdersRejectReturnLineItemRequest
 21179  	urlParams_                        gensupport.URLParams
 21180  	ctx_                              context.Context
 21181  	header_                           http.Header
 21182  }
 21183  
 21184  // Rejectreturnlineitem: Rejects return on an line item.
 21185  //
 21186  //   - merchantId: The ID of the account that manages the order. This
 21187  //     cannot be a multi-client account.
 21188  //   - orderId: The ID of the order.
 21189  func (r *OrdersService) Rejectreturnlineitem(merchantId uint64, orderId string, ordersrejectreturnlineitemrequest *OrdersRejectReturnLineItemRequest) *OrdersRejectreturnlineitemCall {
 21190  	c := &OrdersRejectreturnlineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 21191  	c.merchantId = merchantId
 21192  	c.orderId = orderId
 21193  	c.ordersrejectreturnlineitemrequest = ordersrejectreturnlineitemrequest
 21194  	return c
 21195  }
 21196  
 21197  // Fields allows partial responses to be retrieved. See
 21198  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 21199  // for more information.
 21200  func (c *OrdersRejectreturnlineitemCall) Fields(s ...googleapi.Field) *OrdersRejectreturnlineitemCall {
 21201  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 21202  	return c
 21203  }
 21204  
 21205  // Context sets the context to be used in this call's Do method. Any
 21206  // pending HTTP request will be aborted if the provided context is
 21207  // canceled.
 21208  func (c *OrdersRejectreturnlineitemCall) Context(ctx context.Context) *OrdersRejectreturnlineitemCall {
 21209  	c.ctx_ = ctx
 21210  	return c
 21211  }
 21212  
 21213  // Header returns an http.Header that can be modified by the caller to
 21214  // add HTTP headers to the request.
 21215  func (c *OrdersRejectreturnlineitemCall) Header() http.Header {
 21216  	if c.header_ == nil {
 21217  		c.header_ = make(http.Header)
 21218  	}
 21219  	return c.header_
 21220  }
 21221  
 21222  func (c *OrdersRejectreturnlineitemCall) doRequest(alt string) (*http.Response, error) {
 21223  	reqHeaders := make(http.Header)
 21224  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 21225  	for k, v := range c.header_ {
 21226  		reqHeaders[k] = v
 21227  	}
 21228  	reqHeaders.Set("User-Agent", c.s.userAgent())
 21229  	var body io.Reader = nil
 21230  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersrejectreturnlineitemrequest)
 21231  	if err != nil {
 21232  		return nil, err
 21233  	}
 21234  	reqHeaders.Set("Content-Type", "application/json")
 21235  	c.urlParams_.Set("alt", alt)
 21236  	c.urlParams_.Set("prettyPrint", "false")
 21237  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/rejectReturnLineItem")
 21238  	urls += "?" + c.urlParams_.Encode()
 21239  	req, err := http.NewRequest("POST", urls, body)
 21240  	if err != nil {
 21241  		return nil, err
 21242  	}
 21243  	req.Header = reqHeaders
 21244  	googleapi.Expand(req.URL, map[string]string{
 21245  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 21246  		"orderId":    c.orderId,
 21247  	})
 21248  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 21249  }
 21250  
 21251  // Do executes the "content.orders.rejectreturnlineitem" call.
 21252  // Exactly one of *OrdersRejectReturnLineItemResponse or error will be
 21253  // non-nil. Any non-2xx status code is an error. Response headers are in
 21254  // either *OrdersRejectReturnLineItemResponse.ServerResponse.Header or
 21255  // (if a response was returned at all) in
 21256  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 21257  // whether the returned error was because http.StatusNotModified was
 21258  // returned.
 21259  func (c *OrdersRejectreturnlineitemCall) Do(opts ...googleapi.CallOption) (*OrdersRejectReturnLineItemResponse, error) {
 21260  	gensupport.SetOptions(c.urlParams_, opts...)
 21261  	res, err := c.doRequest("json")
 21262  	if res != nil && res.StatusCode == http.StatusNotModified {
 21263  		if res.Body != nil {
 21264  			res.Body.Close()
 21265  		}
 21266  		return nil, &googleapi.Error{
 21267  			Code:   res.StatusCode,
 21268  			Header: res.Header,
 21269  		}
 21270  	}
 21271  	if err != nil {
 21272  		return nil, err
 21273  	}
 21274  	defer googleapi.CloseBody(res)
 21275  	if err := googleapi.CheckResponse(res); err != nil {
 21276  		return nil, err
 21277  	}
 21278  	ret := &OrdersRejectReturnLineItemResponse{
 21279  		ServerResponse: googleapi.ServerResponse{
 21280  			Header:         res.Header,
 21281  			HTTPStatusCode: res.StatusCode,
 21282  		},
 21283  	}
 21284  	target := &ret
 21285  	if err := gensupport.DecodeResponse(target, res); err != nil {
 21286  		return nil, err
 21287  	}
 21288  	return ret, nil
 21289  	// {
 21290  	//   "description": "Rejects return on an line item.",
 21291  	//   "flatPath": "{merchantId}/orders/{orderId}/rejectReturnLineItem",
 21292  	//   "httpMethod": "POST",
 21293  	//   "id": "content.orders.rejectreturnlineitem",
 21294  	//   "parameterOrder": [
 21295  	//     "merchantId",
 21296  	//     "orderId"
 21297  	//   ],
 21298  	//   "parameters": {
 21299  	//     "merchantId": {
 21300  	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
 21301  	//       "format": "uint64",
 21302  	//       "location": "path",
 21303  	//       "required": true,
 21304  	//       "type": "string"
 21305  	//     },
 21306  	//     "orderId": {
 21307  	//       "description": "The ID of the order.",
 21308  	//       "location": "path",
 21309  	//       "required": true,
 21310  	//       "type": "string"
 21311  	//     }
 21312  	//   },
 21313  	//   "path": "{merchantId}/orders/{orderId}/rejectReturnLineItem",
 21314  	//   "request": {
 21315  	//     "$ref": "OrdersRejectReturnLineItemRequest"
 21316  	//   },
 21317  	//   "response": {
 21318  	//     "$ref": "OrdersRejectReturnLineItemResponse"
 21319  	//   },
 21320  	//   "scopes": [
 21321  	//     "https://www.googleapis.com/auth/content"
 21322  	//   ]
 21323  	// }
 21324  
 21325  }
 21326  
 21327  // method id "content.orders.returnlineitem":
 21328  
 21329  type OrdersReturnlineitemCall struct {
 21330  	s                           *APIService
 21331  	merchantId                  uint64
 21332  	orderId                     string
 21333  	ordersreturnlineitemrequest *OrdersReturnLineItemRequest
 21334  	urlParams_                  gensupport.URLParams
 21335  	ctx_                        context.Context
 21336  	header_                     http.Header
 21337  }
 21338  
 21339  // Returnlineitem: Returns a line item.
 21340  //
 21341  //   - merchantId: The ID of the account that manages the order. This
 21342  //     cannot be a multi-client account.
 21343  //   - orderId: The ID of the order.
 21344  func (r *OrdersService) Returnlineitem(merchantId uint64, orderId string, ordersreturnlineitemrequest *OrdersReturnLineItemRequest) *OrdersReturnlineitemCall {
 21345  	c := &OrdersReturnlineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 21346  	c.merchantId = merchantId
 21347  	c.orderId = orderId
 21348  	c.ordersreturnlineitemrequest = ordersreturnlineitemrequest
 21349  	return c
 21350  }
 21351  
 21352  // Fields allows partial responses to be retrieved. See
 21353  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 21354  // for more information.
 21355  func (c *OrdersReturnlineitemCall) Fields(s ...googleapi.Field) *OrdersReturnlineitemCall {
 21356  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 21357  	return c
 21358  }
 21359  
 21360  // Context sets the context to be used in this call's Do method. Any
 21361  // pending HTTP request will be aborted if the provided context is
 21362  // canceled.
 21363  func (c *OrdersReturnlineitemCall) Context(ctx context.Context) *OrdersReturnlineitemCall {
 21364  	c.ctx_ = ctx
 21365  	return c
 21366  }
 21367  
 21368  // Header returns an http.Header that can be modified by the caller to
 21369  // add HTTP headers to the request.
 21370  func (c *OrdersReturnlineitemCall) Header() http.Header {
 21371  	if c.header_ == nil {
 21372  		c.header_ = make(http.Header)
 21373  	}
 21374  	return c.header_
 21375  }
 21376  
 21377  func (c *OrdersReturnlineitemCall) doRequest(alt string) (*http.Response, error) {
 21378  	reqHeaders := make(http.Header)
 21379  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 21380  	for k, v := range c.header_ {
 21381  		reqHeaders[k] = v
 21382  	}
 21383  	reqHeaders.Set("User-Agent", c.s.userAgent())
 21384  	var body io.Reader = nil
 21385  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersreturnlineitemrequest)
 21386  	if err != nil {
 21387  		return nil, err
 21388  	}
 21389  	reqHeaders.Set("Content-Type", "application/json")
 21390  	c.urlParams_.Set("alt", alt)
 21391  	c.urlParams_.Set("prettyPrint", "false")
 21392  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/returnLineItem")
 21393  	urls += "?" + c.urlParams_.Encode()
 21394  	req, err := http.NewRequest("POST", urls, body)
 21395  	if err != nil {
 21396  		return nil, err
 21397  	}
 21398  	req.Header = reqHeaders
 21399  	googleapi.Expand(req.URL, map[string]string{
 21400  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 21401  		"orderId":    c.orderId,
 21402  	})
 21403  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 21404  }
 21405  
 21406  // Do executes the "content.orders.returnlineitem" call.
 21407  // Exactly one of *OrdersReturnLineItemResponse or error will be
 21408  // non-nil. Any non-2xx status code is an error. Response headers are in
 21409  // either *OrdersReturnLineItemResponse.ServerResponse.Header or (if a
 21410  // response was returned at all) in error.(*googleapi.Error).Header. Use
 21411  // googleapi.IsNotModified to check whether the returned error was
 21412  // because http.StatusNotModified was returned.
 21413  func (c *OrdersReturnlineitemCall) Do(opts ...googleapi.CallOption) (*OrdersReturnLineItemResponse, error) {
 21414  	gensupport.SetOptions(c.urlParams_, opts...)
 21415  	res, err := c.doRequest("json")
 21416  	if res != nil && res.StatusCode == http.StatusNotModified {
 21417  		if res.Body != nil {
 21418  			res.Body.Close()
 21419  		}
 21420  		return nil, &googleapi.Error{
 21421  			Code:   res.StatusCode,
 21422  			Header: res.Header,
 21423  		}
 21424  	}
 21425  	if err != nil {
 21426  		return nil, err
 21427  	}
 21428  	defer googleapi.CloseBody(res)
 21429  	if err := googleapi.CheckResponse(res); err != nil {
 21430  		return nil, err
 21431  	}
 21432  	ret := &OrdersReturnLineItemResponse{
 21433  		ServerResponse: googleapi.ServerResponse{
 21434  			Header:         res.Header,
 21435  			HTTPStatusCode: res.StatusCode,
 21436  		},
 21437  	}
 21438  	target := &ret
 21439  	if err := gensupport.DecodeResponse(target, res); err != nil {
 21440  		return nil, err
 21441  	}
 21442  	return ret, nil
 21443  	// {
 21444  	//   "description": "Returns a line item.",
 21445  	//   "flatPath": "{merchantId}/orders/{orderId}/returnLineItem",
 21446  	//   "httpMethod": "POST",
 21447  	//   "id": "content.orders.returnlineitem",
 21448  	//   "parameterOrder": [
 21449  	//     "merchantId",
 21450  	//     "orderId"
 21451  	//   ],
 21452  	//   "parameters": {
 21453  	//     "merchantId": {
 21454  	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
 21455  	//       "format": "uint64",
 21456  	//       "location": "path",
 21457  	//       "required": true,
 21458  	//       "type": "string"
 21459  	//     },
 21460  	//     "orderId": {
 21461  	//       "description": "The ID of the order.",
 21462  	//       "location": "path",
 21463  	//       "required": true,
 21464  	//       "type": "string"
 21465  	//     }
 21466  	//   },
 21467  	//   "path": "{merchantId}/orders/{orderId}/returnLineItem",
 21468  	//   "request": {
 21469  	//     "$ref": "OrdersReturnLineItemRequest"
 21470  	//   },
 21471  	//   "response": {
 21472  	//     "$ref": "OrdersReturnLineItemResponse"
 21473  	//   },
 21474  	//   "scopes": [
 21475  	//     "https://www.googleapis.com/auth/content"
 21476  	//   ]
 21477  	// }
 21478  
 21479  }
 21480  
 21481  // method id "content.orders.returnrefundlineitem":
 21482  
 21483  type OrdersReturnrefundlineitemCall struct {
 21484  	s                                 *APIService
 21485  	merchantId                        uint64
 21486  	orderId                           string
 21487  	ordersreturnrefundlineitemrequest *OrdersReturnRefundLineItemRequest
 21488  	urlParams_                        gensupport.URLParams
 21489  	ctx_                              context.Context
 21490  	header_                           http.Header
 21491  }
 21492  
 21493  // Returnrefundlineitem: Returns and refunds a line item. Note that this
 21494  // method can only be called on fully shipped orders. Please also note
 21495  // that the Orderreturns API is the preferred way to handle returns
 21496  // after you receive a return from a customer. You can use
 21497  // Orderreturns.list or Orderreturns.get to search for the return, and
 21498  // then use Orderreturns.processreturn to issue the refund. If the
 21499  // return cannot be found, then we recommend using this API to issue a
 21500  // refund.
 21501  //
 21502  //   - merchantId: The ID of the account that manages the order. This
 21503  //     cannot be a multi-client account.
 21504  //   - orderId: The ID of the order.
 21505  func (r *OrdersService) Returnrefundlineitem(merchantId uint64, orderId string, ordersreturnrefundlineitemrequest *OrdersReturnRefundLineItemRequest) *OrdersReturnrefundlineitemCall {
 21506  	c := &OrdersReturnrefundlineitemCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 21507  	c.merchantId = merchantId
 21508  	c.orderId = orderId
 21509  	c.ordersreturnrefundlineitemrequest = ordersreturnrefundlineitemrequest
 21510  	return c
 21511  }
 21512  
 21513  // Fields allows partial responses to be retrieved. See
 21514  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 21515  // for more information.
 21516  func (c *OrdersReturnrefundlineitemCall) Fields(s ...googleapi.Field) *OrdersReturnrefundlineitemCall {
 21517  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 21518  	return c
 21519  }
 21520  
 21521  // Context sets the context to be used in this call's Do method. Any
 21522  // pending HTTP request will be aborted if the provided context is
 21523  // canceled.
 21524  func (c *OrdersReturnrefundlineitemCall) Context(ctx context.Context) *OrdersReturnrefundlineitemCall {
 21525  	c.ctx_ = ctx
 21526  	return c
 21527  }
 21528  
 21529  // Header returns an http.Header that can be modified by the caller to
 21530  // add HTTP headers to the request.
 21531  func (c *OrdersReturnrefundlineitemCall) Header() http.Header {
 21532  	if c.header_ == nil {
 21533  		c.header_ = make(http.Header)
 21534  	}
 21535  	return c.header_
 21536  }
 21537  
 21538  func (c *OrdersReturnrefundlineitemCall) doRequest(alt string) (*http.Response, error) {
 21539  	reqHeaders := make(http.Header)
 21540  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 21541  	for k, v := range c.header_ {
 21542  		reqHeaders[k] = v
 21543  	}
 21544  	reqHeaders.Set("User-Agent", c.s.userAgent())
 21545  	var body io.Reader = nil
 21546  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersreturnrefundlineitemrequest)
 21547  	if err != nil {
 21548  		return nil, err
 21549  	}
 21550  	reqHeaders.Set("Content-Type", "application/json")
 21551  	c.urlParams_.Set("alt", alt)
 21552  	c.urlParams_.Set("prettyPrint", "false")
 21553  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/returnRefundLineItem")
 21554  	urls += "?" + c.urlParams_.Encode()
 21555  	req, err := http.NewRequest("POST", urls, body)
 21556  	if err != nil {
 21557  		return nil, err
 21558  	}
 21559  	req.Header = reqHeaders
 21560  	googleapi.Expand(req.URL, map[string]string{
 21561  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 21562  		"orderId":    c.orderId,
 21563  	})
 21564  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 21565  }
 21566  
 21567  // Do executes the "content.orders.returnrefundlineitem" call.
 21568  // Exactly one of *OrdersReturnRefundLineItemResponse or error will be
 21569  // non-nil. Any non-2xx status code is an error. Response headers are in
 21570  // either *OrdersReturnRefundLineItemResponse.ServerResponse.Header or
 21571  // (if a response was returned at all) in
 21572  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 21573  // whether the returned error was because http.StatusNotModified was
 21574  // returned.
 21575  func (c *OrdersReturnrefundlineitemCall) Do(opts ...googleapi.CallOption) (*OrdersReturnRefundLineItemResponse, error) {
 21576  	gensupport.SetOptions(c.urlParams_, opts...)
 21577  	res, err := c.doRequest("json")
 21578  	if res != nil && res.StatusCode == http.StatusNotModified {
 21579  		if res.Body != nil {
 21580  			res.Body.Close()
 21581  		}
 21582  		return nil, &googleapi.Error{
 21583  			Code:   res.StatusCode,
 21584  			Header: res.Header,
 21585  		}
 21586  	}
 21587  	if err != nil {
 21588  		return nil, err
 21589  	}
 21590  	defer googleapi.CloseBody(res)
 21591  	if err := googleapi.CheckResponse(res); err != nil {
 21592  		return nil, err
 21593  	}
 21594  	ret := &OrdersReturnRefundLineItemResponse{
 21595  		ServerResponse: googleapi.ServerResponse{
 21596  			Header:         res.Header,
 21597  			HTTPStatusCode: res.StatusCode,
 21598  		},
 21599  	}
 21600  	target := &ret
 21601  	if err := gensupport.DecodeResponse(target, res); err != nil {
 21602  		return nil, err
 21603  	}
 21604  	return ret, nil
 21605  	// {
 21606  	//   "description": "Returns and refunds a line item. Note that this method can only be called on fully shipped orders. Please also note that the Orderreturns API is the preferred way to handle returns after you receive a return from a customer. You can use Orderreturns.list or Orderreturns.get to search for the return, and then use Orderreturns.processreturn to issue the refund. If the return cannot be found, then we recommend using this API to issue a refund.",
 21607  	//   "flatPath": "{merchantId}/orders/{orderId}/returnRefundLineItem",
 21608  	//   "httpMethod": "POST",
 21609  	//   "id": "content.orders.returnrefundlineitem",
 21610  	//   "parameterOrder": [
 21611  	//     "merchantId",
 21612  	//     "orderId"
 21613  	//   ],
 21614  	//   "parameters": {
 21615  	//     "merchantId": {
 21616  	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
 21617  	//       "format": "uint64",
 21618  	//       "location": "path",
 21619  	//       "required": true,
 21620  	//       "type": "string"
 21621  	//     },
 21622  	//     "orderId": {
 21623  	//       "description": "The ID of the order.",
 21624  	//       "location": "path",
 21625  	//       "required": true,
 21626  	//       "type": "string"
 21627  	//     }
 21628  	//   },
 21629  	//   "path": "{merchantId}/orders/{orderId}/returnRefundLineItem",
 21630  	//   "request": {
 21631  	//     "$ref": "OrdersReturnRefundLineItemRequest"
 21632  	//   },
 21633  	//   "response": {
 21634  	//     "$ref": "OrdersReturnRefundLineItemResponse"
 21635  	//   },
 21636  	//   "scopes": [
 21637  	//     "https://www.googleapis.com/auth/content"
 21638  	//   ]
 21639  	// }
 21640  
 21641  }
 21642  
 21643  // method id "content.orders.setlineitemmetadata":
 21644  
 21645  type OrdersSetlineitemmetadataCall struct {
 21646  	s                                *APIService
 21647  	merchantId                       uint64
 21648  	orderId                          string
 21649  	orderssetlineitemmetadatarequest *OrdersSetLineItemMetadataRequest
 21650  	urlParams_                       gensupport.URLParams
 21651  	ctx_                             context.Context
 21652  	header_                          http.Header
 21653  }
 21654  
 21655  // Setlineitemmetadata: Sets (or overrides if it already exists)
 21656  // merchant provided annotations in the form of key-value pairs. A
 21657  // common use case would be to supply us with additional structured
 21658  // information about a line item that cannot be provided via other
 21659  // methods. Submitted key-value pairs can be retrieved as part of the
 21660  // orders resource.
 21661  //
 21662  //   - merchantId: The ID of the account that manages the order. This
 21663  //     cannot be a multi-client account.
 21664  //   - orderId: The ID of the order.
 21665  func (r *OrdersService) Setlineitemmetadata(merchantId uint64, orderId string, orderssetlineitemmetadatarequest *OrdersSetLineItemMetadataRequest) *OrdersSetlineitemmetadataCall {
 21666  	c := &OrdersSetlineitemmetadataCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 21667  	c.merchantId = merchantId
 21668  	c.orderId = orderId
 21669  	c.orderssetlineitemmetadatarequest = orderssetlineitemmetadatarequest
 21670  	return c
 21671  }
 21672  
 21673  // Fields allows partial responses to be retrieved. See
 21674  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 21675  // for more information.
 21676  func (c *OrdersSetlineitemmetadataCall) Fields(s ...googleapi.Field) *OrdersSetlineitemmetadataCall {
 21677  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 21678  	return c
 21679  }
 21680  
 21681  // Context sets the context to be used in this call's Do method. Any
 21682  // pending HTTP request will be aborted if the provided context is
 21683  // canceled.
 21684  func (c *OrdersSetlineitemmetadataCall) Context(ctx context.Context) *OrdersSetlineitemmetadataCall {
 21685  	c.ctx_ = ctx
 21686  	return c
 21687  }
 21688  
 21689  // Header returns an http.Header that can be modified by the caller to
 21690  // add HTTP headers to the request.
 21691  func (c *OrdersSetlineitemmetadataCall) Header() http.Header {
 21692  	if c.header_ == nil {
 21693  		c.header_ = make(http.Header)
 21694  	}
 21695  	return c.header_
 21696  }
 21697  
 21698  func (c *OrdersSetlineitemmetadataCall) doRequest(alt string) (*http.Response, error) {
 21699  	reqHeaders := make(http.Header)
 21700  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 21701  	for k, v := range c.header_ {
 21702  		reqHeaders[k] = v
 21703  	}
 21704  	reqHeaders.Set("User-Agent", c.s.userAgent())
 21705  	var body io.Reader = nil
 21706  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.orderssetlineitemmetadatarequest)
 21707  	if err != nil {
 21708  		return nil, err
 21709  	}
 21710  	reqHeaders.Set("Content-Type", "application/json")
 21711  	c.urlParams_.Set("alt", alt)
 21712  	c.urlParams_.Set("prettyPrint", "false")
 21713  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/setLineItemMetadata")
 21714  	urls += "?" + c.urlParams_.Encode()
 21715  	req, err := http.NewRequest("POST", urls, body)
 21716  	if err != nil {
 21717  		return nil, err
 21718  	}
 21719  	req.Header = reqHeaders
 21720  	googleapi.Expand(req.URL, map[string]string{
 21721  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 21722  		"orderId":    c.orderId,
 21723  	})
 21724  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 21725  }
 21726  
 21727  // Do executes the "content.orders.setlineitemmetadata" call.
 21728  // Exactly one of *OrdersSetLineItemMetadataResponse or error will be
 21729  // non-nil. Any non-2xx status code is an error. Response headers are in
 21730  // either *OrdersSetLineItemMetadataResponse.ServerResponse.Header or
 21731  // (if a response was returned at all) in
 21732  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 21733  // whether the returned error was because http.StatusNotModified was
 21734  // returned.
 21735  func (c *OrdersSetlineitemmetadataCall) Do(opts ...googleapi.CallOption) (*OrdersSetLineItemMetadataResponse, error) {
 21736  	gensupport.SetOptions(c.urlParams_, opts...)
 21737  	res, err := c.doRequest("json")
 21738  	if res != nil && res.StatusCode == http.StatusNotModified {
 21739  		if res.Body != nil {
 21740  			res.Body.Close()
 21741  		}
 21742  		return nil, &googleapi.Error{
 21743  			Code:   res.StatusCode,
 21744  			Header: res.Header,
 21745  		}
 21746  	}
 21747  	if err != nil {
 21748  		return nil, err
 21749  	}
 21750  	defer googleapi.CloseBody(res)
 21751  	if err := googleapi.CheckResponse(res); err != nil {
 21752  		return nil, err
 21753  	}
 21754  	ret := &OrdersSetLineItemMetadataResponse{
 21755  		ServerResponse: googleapi.ServerResponse{
 21756  			Header:         res.Header,
 21757  			HTTPStatusCode: res.StatusCode,
 21758  		},
 21759  	}
 21760  	target := &ret
 21761  	if err := gensupport.DecodeResponse(target, res); err != nil {
 21762  		return nil, err
 21763  	}
 21764  	return ret, nil
 21765  	// {
 21766  	//   "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.",
 21767  	//   "flatPath": "{merchantId}/orders/{orderId}/setLineItemMetadata",
 21768  	//   "httpMethod": "POST",
 21769  	//   "id": "content.orders.setlineitemmetadata",
 21770  	//   "parameterOrder": [
 21771  	//     "merchantId",
 21772  	//     "orderId"
 21773  	//   ],
 21774  	//   "parameters": {
 21775  	//     "merchantId": {
 21776  	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
 21777  	//       "format": "uint64",
 21778  	//       "location": "path",
 21779  	//       "required": true,
 21780  	//       "type": "string"
 21781  	//     },
 21782  	//     "orderId": {
 21783  	//       "description": "The ID of the order.",
 21784  	//       "location": "path",
 21785  	//       "required": true,
 21786  	//       "type": "string"
 21787  	//     }
 21788  	//   },
 21789  	//   "path": "{merchantId}/orders/{orderId}/setLineItemMetadata",
 21790  	//   "request": {
 21791  	//     "$ref": "OrdersSetLineItemMetadataRequest"
 21792  	//   },
 21793  	//   "response": {
 21794  	//     "$ref": "OrdersSetLineItemMetadataResponse"
 21795  	//   },
 21796  	//   "scopes": [
 21797  	//     "https://www.googleapis.com/auth/content"
 21798  	//   ]
 21799  	// }
 21800  
 21801  }
 21802  
 21803  // method id "content.orders.shiplineitems":
 21804  
 21805  type OrdersShiplineitemsCall struct {
 21806  	s                          *APIService
 21807  	merchantId                 uint64
 21808  	orderId                    string
 21809  	ordersshiplineitemsrequest *OrdersShipLineItemsRequest
 21810  	urlParams_                 gensupport.URLParams
 21811  	ctx_                       context.Context
 21812  	header_                    http.Header
 21813  }
 21814  
 21815  // Shiplineitems: Marks line item(s) as shipped.
 21816  //
 21817  //   - merchantId: The ID of the account that manages the order. This
 21818  //     cannot be a multi-client account.
 21819  //   - orderId: The ID of the order.
 21820  func (r *OrdersService) Shiplineitems(merchantId uint64, orderId string, ordersshiplineitemsrequest *OrdersShipLineItemsRequest) *OrdersShiplineitemsCall {
 21821  	c := &OrdersShiplineitemsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 21822  	c.merchantId = merchantId
 21823  	c.orderId = orderId
 21824  	c.ordersshiplineitemsrequest = ordersshiplineitemsrequest
 21825  	return c
 21826  }
 21827  
 21828  // Fields allows partial responses to be retrieved. See
 21829  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 21830  // for more information.
 21831  func (c *OrdersShiplineitemsCall) Fields(s ...googleapi.Field) *OrdersShiplineitemsCall {
 21832  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 21833  	return c
 21834  }
 21835  
 21836  // Context sets the context to be used in this call's Do method. Any
 21837  // pending HTTP request will be aborted if the provided context is
 21838  // canceled.
 21839  func (c *OrdersShiplineitemsCall) Context(ctx context.Context) *OrdersShiplineitemsCall {
 21840  	c.ctx_ = ctx
 21841  	return c
 21842  }
 21843  
 21844  // Header returns an http.Header that can be modified by the caller to
 21845  // add HTTP headers to the request.
 21846  func (c *OrdersShiplineitemsCall) Header() http.Header {
 21847  	if c.header_ == nil {
 21848  		c.header_ = make(http.Header)
 21849  	}
 21850  	return c.header_
 21851  }
 21852  
 21853  func (c *OrdersShiplineitemsCall) doRequest(alt string) (*http.Response, error) {
 21854  	reqHeaders := make(http.Header)
 21855  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 21856  	for k, v := range c.header_ {
 21857  		reqHeaders[k] = v
 21858  	}
 21859  	reqHeaders.Set("User-Agent", c.s.userAgent())
 21860  	var body io.Reader = nil
 21861  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersshiplineitemsrequest)
 21862  	if err != nil {
 21863  		return nil, err
 21864  	}
 21865  	reqHeaders.Set("Content-Type", "application/json")
 21866  	c.urlParams_.Set("alt", alt)
 21867  	c.urlParams_.Set("prettyPrint", "false")
 21868  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/shipLineItems")
 21869  	urls += "?" + c.urlParams_.Encode()
 21870  	req, err := http.NewRequest("POST", urls, body)
 21871  	if err != nil {
 21872  		return nil, err
 21873  	}
 21874  	req.Header = reqHeaders
 21875  	googleapi.Expand(req.URL, map[string]string{
 21876  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 21877  		"orderId":    c.orderId,
 21878  	})
 21879  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 21880  }
 21881  
 21882  // Do executes the "content.orders.shiplineitems" call.
 21883  // Exactly one of *OrdersShipLineItemsResponse or error will be non-nil.
 21884  // Any non-2xx status code is an error. Response headers are in either
 21885  // *OrdersShipLineItemsResponse.ServerResponse.Header or (if a response
 21886  // was returned at all) in error.(*googleapi.Error).Header. Use
 21887  // googleapi.IsNotModified to check whether the returned error was
 21888  // because http.StatusNotModified was returned.
 21889  func (c *OrdersShiplineitemsCall) Do(opts ...googleapi.CallOption) (*OrdersShipLineItemsResponse, error) {
 21890  	gensupport.SetOptions(c.urlParams_, opts...)
 21891  	res, err := c.doRequest("json")
 21892  	if res != nil && res.StatusCode == http.StatusNotModified {
 21893  		if res.Body != nil {
 21894  			res.Body.Close()
 21895  		}
 21896  		return nil, &googleapi.Error{
 21897  			Code:   res.StatusCode,
 21898  			Header: res.Header,
 21899  		}
 21900  	}
 21901  	if err != nil {
 21902  		return nil, err
 21903  	}
 21904  	defer googleapi.CloseBody(res)
 21905  	if err := googleapi.CheckResponse(res); err != nil {
 21906  		return nil, err
 21907  	}
 21908  	ret := &OrdersShipLineItemsResponse{
 21909  		ServerResponse: googleapi.ServerResponse{
 21910  			Header:         res.Header,
 21911  			HTTPStatusCode: res.StatusCode,
 21912  		},
 21913  	}
 21914  	target := &ret
 21915  	if err := gensupport.DecodeResponse(target, res); err != nil {
 21916  		return nil, err
 21917  	}
 21918  	return ret, nil
 21919  	// {
 21920  	//   "description": "Marks line item(s) as shipped.",
 21921  	//   "flatPath": "{merchantId}/orders/{orderId}/shipLineItems",
 21922  	//   "httpMethod": "POST",
 21923  	//   "id": "content.orders.shiplineitems",
 21924  	//   "parameterOrder": [
 21925  	//     "merchantId",
 21926  	//     "orderId"
 21927  	//   ],
 21928  	//   "parameters": {
 21929  	//     "merchantId": {
 21930  	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
 21931  	//       "format": "uint64",
 21932  	//       "location": "path",
 21933  	//       "required": true,
 21934  	//       "type": "string"
 21935  	//     },
 21936  	//     "orderId": {
 21937  	//       "description": "The ID of the order.",
 21938  	//       "location": "path",
 21939  	//       "required": true,
 21940  	//       "type": "string"
 21941  	//     }
 21942  	//   },
 21943  	//   "path": "{merchantId}/orders/{orderId}/shipLineItems",
 21944  	//   "request": {
 21945  	//     "$ref": "OrdersShipLineItemsRequest"
 21946  	//   },
 21947  	//   "response": {
 21948  	//     "$ref": "OrdersShipLineItemsResponse"
 21949  	//   },
 21950  	//   "scopes": [
 21951  	//     "https://www.googleapis.com/auth/content"
 21952  	//   ]
 21953  	// }
 21954  
 21955  }
 21956  
 21957  // method id "content.orders.updatelineitemshippingdetails":
 21958  
 21959  type OrdersUpdatelineitemshippingdetailsCall struct {
 21960  	s                                          *APIService
 21961  	merchantId                                 uint64
 21962  	orderId                                    string
 21963  	ordersupdatelineitemshippingdetailsrequest *OrdersUpdateLineItemShippingDetailsRequest
 21964  	urlParams_                                 gensupport.URLParams
 21965  	ctx_                                       context.Context
 21966  	header_                                    http.Header
 21967  }
 21968  
 21969  // Updatelineitemshippingdetails: Updates ship by and delivery by dates
 21970  // for a line item.
 21971  //
 21972  //   - merchantId: The ID of the account that manages the order. This
 21973  //     cannot be a multi-client account.
 21974  //   - orderId: The ID of the order.
 21975  func (r *OrdersService) Updatelineitemshippingdetails(merchantId uint64, orderId string, ordersupdatelineitemshippingdetailsrequest *OrdersUpdateLineItemShippingDetailsRequest) *OrdersUpdatelineitemshippingdetailsCall {
 21976  	c := &OrdersUpdatelineitemshippingdetailsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 21977  	c.merchantId = merchantId
 21978  	c.orderId = orderId
 21979  	c.ordersupdatelineitemshippingdetailsrequest = ordersupdatelineitemshippingdetailsrequest
 21980  	return c
 21981  }
 21982  
 21983  // Fields allows partial responses to be retrieved. See
 21984  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 21985  // for more information.
 21986  func (c *OrdersUpdatelineitemshippingdetailsCall) Fields(s ...googleapi.Field) *OrdersUpdatelineitemshippingdetailsCall {
 21987  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 21988  	return c
 21989  }
 21990  
 21991  // Context sets the context to be used in this call's Do method. Any
 21992  // pending HTTP request will be aborted if the provided context is
 21993  // canceled.
 21994  func (c *OrdersUpdatelineitemshippingdetailsCall) Context(ctx context.Context) *OrdersUpdatelineitemshippingdetailsCall {
 21995  	c.ctx_ = ctx
 21996  	return c
 21997  }
 21998  
 21999  // Header returns an http.Header that can be modified by the caller to
 22000  // add HTTP headers to the request.
 22001  func (c *OrdersUpdatelineitemshippingdetailsCall) Header() http.Header {
 22002  	if c.header_ == nil {
 22003  		c.header_ = make(http.Header)
 22004  	}
 22005  	return c.header_
 22006  }
 22007  
 22008  func (c *OrdersUpdatelineitemshippingdetailsCall) doRequest(alt string) (*http.Response, error) {
 22009  	reqHeaders := make(http.Header)
 22010  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 22011  	for k, v := range c.header_ {
 22012  		reqHeaders[k] = v
 22013  	}
 22014  	reqHeaders.Set("User-Agent", c.s.userAgent())
 22015  	var body io.Reader = nil
 22016  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersupdatelineitemshippingdetailsrequest)
 22017  	if err != nil {
 22018  		return nil, err
 22019  	}
 22020  	reqHeaders.Set("Content-Type", "application/json")
 22021  	c.urlParams_.Set("alt", alt)
 22022  	c.urlParams_.Set("prettyPrint", "false")
 22023  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/updateLineItemShippingDetails")
 22024  	urls += "?" + c.urlParams_.Encode()
 22025  	req, err := http.NewRequest("POST", urls, body)
 22026  	if err != nil {
 22027  		return nil, err
 22028  	}
 22029  	req.Header = reqHeaders
 22030  	googleapi.Expand(req.URL, map[string]string{
 22031  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 22032  		"orderId":    c.orderId,
 22033  	})
 22034  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 22035  }
 22036  
 22037  // Do executes the "content.orders.updatelineitemshippingdetails" call.
 22038  // Exactly one of *OrdersUpdateLineItemShippingDetailsResponse or error
 22039  // will be non-nil. Any non-2xx status code is an error. Response
 22040  // headers are in either
 22041  // *OrdersUpdateLineItemShippingDetailsResponse.ServerResponse.Header or
 22042  // (if a response was returned at all) in
 22043  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 22044  // whether the returned error was because http.StatusNotModified was
 22045  // returned.
 22046  func (c *OrdersUpdatelineitemshippingdetailsCall) Do(opts ...googleapi.CallOption) (*OrdersUpdateLineItemShippingDetailsResponse, error) {
 22047  	gensupport.SetOptions(c.urlParams_, opts...)
 22048  	res, err := c.doRequest("json")
 22049  	if res != nil && res.StatusCode == http.StatusNotModified {
 22050  		if res.Body != nil {
 22051  			res.Body.Close()
 22052  		}
 22053  		return nil, &googleapi.Error{
 22054  			Code:   res.StatusCode,
 22055  			Header: res.Header,
 22056  		}
 22057  	}
 22058  	if err != nil {
 22059  		return nil, err
 22060  	}
 22061  	defer googleapi.CloseBody(res)
 22062  	if err := googleapi.CheckResponse(res); err != nil {
 22063  		return nil, err
 22064  	}
 22065  	ret := &OrdersUpdateLineItemShippingDetailsResponse{
 22066  		ServerResponse: googleapi.ServerResponse{
 22067  			Header:         res.Header,
 22068  			HTTPStatusCode: res.StatusCode,
 22069  		},
 22070  	}
 22071  	target := &ret
 22072  	if err := gensupport.DecodeResponse(target, res); err != nil {
 22073  		return nil, err
 22074  	}
 22075  	return ret, nil
 22076  	// {
 22077  	//   "description": "Updates ship by and delivery by dates for a line item.",
 22078  	//   "flatPath": "{merchantId}/orders/{orderId}/updateLineItemShippingDetails",
 22079  	//   "httpMethod": "POST",
 22080  	//   "id": "content.orders.updatelineitemshippingdetails",
 22081  	//   "parameterOrder": [
 22082  	//     "merchantId",
 22083  	//     "orderId"
 22084  	//   ],
 22085  	//   "parameters": {
 22086  	//     "merchantId": {
 22087  	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
 22088  	//       "format": "uint64",
 22089  	//       "location": "path",
 22090  	//       "required": true,
 22091  	//       "type": "string"
 22092  	//     },
 22093  	//     "orderId": {
 22094  	//       "description": "The ID of the order.",
 22095  	//       "location": "path",
 22096  	//       "required": true,
 22097  	//       "type": "string"
 22098  	//     }
 22099  	//   },
 22100  	//   "path": "{merchantId}/orders/{orderId}/updateLineItemShippingDetails",
 22101  	//   "request": {
 22102  	//     "$ref": "OrdersUpdateLineItemShippingDetailsRequest"
 22103  	//   },
 22104  	//   "response": {
 22105  	//     "$ref": "OrdersUpdateLineItemShippingDetailsResponse"
 22106  	//   },
 22107  	//   "scopes": [
 22108  	//     "https://www.googleapis.com/auth/content"
 22109  	//   ]
 22110  	// }
 22111  
 22112  }
 22113  
 22114  // method id "content.orders.updatemerchantorderid":
 22115  
 22116  type OrdersUpdatemerchantorderidCall struct {
 22117  	s                                  *APIService
 22118  	merchantId                         uint64
 22119  	orderId                            string
 22120  	ordersupdatemerchantorderidrequest *OrdersUpdateMerchantOrderIdRequest
 22121  	urlParams_                         gensupport.URLParams
 22122  	ctx_                               context.Context
 22123  	header_                            http.Header
 22124  }
 22125  
 22126  // Updatemerchantorderid: Updates the merchant order ID for a given
 22127  // order.
 22128  //
 22129  //   - merchantId: The ID of the account that manages the order. This
 22130  //     cannot be a multi-client account.
 22131  //   - orderId: The ID of the order.
 22132  func (r *OrdersService) Updatemerchantorderid(merchantId uint64, orderId string, ordersupdatemerchantorderidrequest *OrdersUpdateMerchantOrderIdRequest) *OrdersUpdatemerchantorderidCall {
 22133  	c := &OrdersUpdatemerchantorderidCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 22134  	c.merchantId = merchantId
 22135  	c.orderId = orderId
 22136  	c.ordersupdatemerchantorderidrequest = ordersupdatemerchantorderidrequest
 22137  	return c
 22138  }
 22139  
 22140  // Fields allows partial responses to be retrieved. See
 22141  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 22142  // for more information.
 22143  func (c *OrdersUpdatemerchantorderidCall) Fields(s ...googleapi.Field) *OrdersUpdatemerchantorderidCall {
 22144  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 22145  	return c
 22146  }
 22147  
 22148  // Context sets the context to be used in this call's Do method. Any
 22149  // pending HTTP request will be aborted if the provided context is
 22150  // canceled.
 22151  func (c *OrdersUpdatemerchantorderidCall) Context(ctx context.Context) *OrdersUpdatemerchantorderidCall {
 22152  	c.ctx_ = ctx
 22153  	return c
 22154  }
 22155  
 22156  // Header returns an http.Header that can be modified by the caller to
 22157  // add HTTP headers to the request.
 22158  func (c *OrdersUpdatemerchantorderidCall) Header() http.Header {
 22159  	if c.header_ == nil {
 22160  		c.header_ = make(http.Header)
 22161  	}
 22162  	return c.header_
 22163  }
 22164  
 22165  func (c *OrdersUpdatemerchantorderidCall) doRequest(alt string) (*http.Response, error) {
 22166  	reqHeaders := make(http.Header)
 22167  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 22168  	for k, v := range c.header_ {
 22169  		reqHeaders[k] = v
 22170  	}
 22171  	reqHeaders.Set("User-Agent", c.s.userAgent())
 22172  	var body io.Reader = nil
 22173  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersupdatemerchantorderidrequest)
 22174  	if err != nil {
 22175  		return nil, err
 22176  	}
 22177  	reqHeaders.Set("Content-Type", "application/json")
 22178  	c.urlParams_.Set("alt", alt)
 22179  	c.urlParams_.Set("prettyPrint", "false")
 22180  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/updateMerchantOrderId")
 22181  	urls += "?" + c.urlParams_.Encode()
 22182  	req, err := http.NewRequest("POST", urls, body)
 22183  	if err != nil {
 22184  		return nil, err
 22185  	}
 22186  	req.Header = reqHeaders
 22187  	googleapi.Expand(req.URL, map[string]string{
 22188  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 22189  		"orderId":    c.orderId,
 22190  	})
 22191  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 22192  }
 22193  
 22194  // Do executes the "content.orders.updatemerchantorderid" call.
 22195  // Exactly one of *OrdersUpdateMerchantOrderIdResponse or error will be
 22196  // non-nil. Any non-2xx status code is an error. Response headers are in
 22197  // either *OrdersUpdateMerchantOrderIdResponse.ServerResponse.Header or
 22198  // (if a response was returned at all) in
 22199  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 22200  // whether the returned error was because http.StatusNotModified was
 22201  // returned.
 22202  func (c *OrdersUpdatemerchantorderidCall) Do(opts ...googleapi.CallOption) (*OrdersUpdateMerchantOrderIdResponse, error) {
 22203  	gensupport.SetOptions(c.urlParams_, opts...)
 22204  	res, err := c.doRequest("json")
 22205  	if res != nil && res.StatusCode == http.StatusNotModified {
 22206  		if res.Body != nil {
 22207  			res.Body.Close()
 22208  		}
 22209  		return nil, &googleapi.Error{
 22210  			Code:   res.StatusCode,
 22211  			Header: res.Header,
 22212  		}
 22213  	}
 22214  	if err != nil {
 22215  		return nil, err
 22216  	}
 22217  	defer googleapi.CloseBody(res)
 22218  	if err := googleapi.CheckResponse(res); err != nil {
 22219  		return nil, err
 22220  	}
 22221  	ret := &OrdersUpdateMerchantOrderIdResponse{
 22222  		ServerResponse: googleapi.ServerResponse{
 22223  			Header:         res.Header,
 22224  			HTTPStatusCode: res.StatusCode,
 22225  		},
 22226  	}
 22227  	target := &ret
 22228  	if err := gensupport.DecodeResponse(target, res); err != nil {
 22229  		return nil, err
 22230  	}
 22231  	return ret, nil
 22232  	// {
 22233  	//   "description": "Updates the merchant order ID for a given order.",
 22234  	//   "flatPath": "{merchantId}/orders/{orderId}/updateMerchantOrderId",
 22235  	//   "httpMethod": "POST",
 22236  	//   "id": "content.orders.updatemerchantorderid",
 22237  	//   "parameterOrder": [
 22238  	//     "merchantId",
 22239  	//     "orderId"
 22240  	//   ],
 22241  	//   "parameters": {
 22242  	//     "merchantId": {
 22243  	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
 22244  	//       "format": "uint64",
 22245  	//       "location": "path",
 22246  	//       "required": true,
 22247  	//       "type": "string"
 22248  	//     },
 22249  	//     "orderId": {
 22250  	//       "description": "The ID of the order.",
 22251  	//       "location": "path",
 22252  	//       "required": true,
 22253  	//       "type": "string"
 22254  	//     }
 22255  	//   },
 22256  	//   "path": "{merchantId}/orders/{orderId}/updateMerchantOrderId",
 22257  	//   "request": {
 22258  	//     "$ref": "OrdersUpdateMerchantOrderIdRequest"
 22259  	//   },
 22260  	//   "response": {
 22261  	//     "$ref": "OrdersUpdateMerchantOrderIdResponse"
 22262  	//   },
 22263  	//   "scopes": [
 22264  	//     "https://www.googleapis.com/auth/content"
 22265  	//   ]
 22266  	// }
 22267  
 22268  }
 22269  
 22270  // method id "content.orders.updateshipment":
 22271  
 22272  type OrdersUpdateshipmentCall struct {
 22273  	s                           *APIService
 22274  	merchantId                  uint64
 22275  	orderId                     string
 22276  	ordersupdateshipmentrequest *OrdersUpdateShipmentRequest
 22277  	urlParams_                  gensupport.URLParams
 22278  	ctx_                        context.Context
 22279  	header_                     http.Header
 22280  }
 22281  
 22282  // Updateshipment: Updates a shipment's status, carrier, and/or tracking
 22283  // ID.
 22284  //
 22285  //   - merchantId: The ID of the account that manages the order. This
 22286  //     cannot be a multi-client account.
 22287  //   - orderId: The ID of the order.
 22288  func (r *OrdersService) Updateshipment(merchantId uint64, orderId string, ordersupdateshipmentrequest *OrdersUpdateShipmentRequest) *OrdersUpdateshipmentCall {
 22289  	c := &OrdersUpdateshipmentCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 22290  	c.merchantId = merchantId
 22291  	c.orderId = orderId
 22292  	c.ordersupdateshipmentrequest = ordersupdateshipmentrequest
 22293  	return c
 22294  }
 22295  
 22296  // Fields allows partial responses to be retrieved. See
 22297  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 22298  // for more information.
 22299  func (c *OrdersUpdateshipmentCall) Fields(s ...googleapi.Field) *OrdersUpdateshipmentCall {
 22300  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 22301  	return c
 22302  }
 22303  
 22304  // Context sets the context to be used in this call's Do method. Any
 22305  // pending HTTP request will be aborted if the provided context is
 22306  // canceled.
 22307  func (c *OrdersUpdateshipmentCall) Context(ctx context.Context) *OrdersUpdateshipmentCall {
 22308  	c.ctx_ = ctx
 22309  	return c
 22310  }
 22311  
 22312  // Header returns an http.Header that can be modified by the caller to
 22313  // add HTTP headers to the request.
 22314  func (c *OrdersUpdateshipmentCall) Header() http.Header {
 22315  	if c.header_ == nil {
 22316  		c.header_ = make(http.Header)
 22317  	}
 22318  	return c.header_
 22319  }
 22320  
 22321  func (c *OrdersUpdateshipmentCall) doRequest(alt string) (*http.Response, error) {
 22322  	reqHeaders := make(http.Header)
 22323  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 22324  	for k, v := range c.header_ {
 22325  		reqHeaders[k] = v
 22326  	}
 22327  	reqHeaders.Set("User-Agent", c.s.userAgent())
 22328  	var body io.Reader = nil
 22329  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ordersupdateshipmentrequest)
 22330  	if err != nil {
 22331  		return nil, err
 22332  	}
 22333  	reqHeaders.Set("Content-Type", "application/json")
 22334  	c.urlParams_.Set("alt", alt)
 22335  	c.urlParams_.Set("prettyPrint", "false")
 22336  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/orders/{orderId}/updateShipment")
 22337  	urls += "?" + c.urlParams_.Encode()
 22338  	req, err := http.NewRequest("POST", urls, body)
 22339  	if err != nil {
 22340  		return nil, err
 22341  	}
 22342  	req.Header = reqHeaders
 22343  	googleapi.Expand(req.URL, map[string]string{
 22344  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 22345  		"orderId":    c.orderId,
 22346  	})
 22347  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 22348  }
 22349  
 22350  // Do executes the "content.orders.updateshipment" call.
 22351  // Exactly one of *OrdersUpdateShipmentResponse or error will be
 22352  // non-nil. Any non-2xx status code is an error. Response headers are in
 22353  // either *OrdersUpdateShipmentResponse.ServerResponse.Header or (if a
 22354  // response was returned at all) in error.(*googleapi.Error).Header. Use
 22355  // googleapi.IsNotModified to check whether the returned error was
 22356  // because http.StatusNotModified was returned.
 22357  func (c *OrdersUpdateshipmentCall) Do(opts ...googleapi.CallOption) (*OrdersUpdateShipmentResponse, error) {
 22358  	gensupport.SetOptions(c.urlParams_, opts...)
 22359  	res, err := c.doRequest("json")
 22360  	if res != nil && res.StatusCode == http.StatusNotModified {
 22361  		if res.Body != nil {
 22362  			res.Body.Close()
 22363  		}
 22364  		return nil, &googleapi.Error{
 22365  			Code:   res.StatusCode,
 22366  			Header: res.Header,
 22367  		}
 22368  	}
 22369  	if err != nil {
 22370  		return nil, err
 22371  	}
 22372  	defer googleapi.CloseBody(res)
 22373  	if err := googleapi.CheckResponse(res); err != nil {
 22374  		return nil, err
 22375  	}
 22376  	ret := &OrdersUpdateShipmentResponse{
 22377  		ServerResponse: googleapi.ServerResponse{
 22378  			Header:         res.Header,
 22379  			HTTPStatusCode: res.StatusCode,
 22380  		},
 22381  	}
 22382  	target := &ret
 22383  	if err := gensupport.DecodeResponse(target, res); err != nil {
 22384  		return nil, err
 22385  	}
 22386  	return ret, nil
 22387  	// {
 22388  	//   "description": "Updates a shipment's status, carrier, and/or tracking ID.",
 22389  	//   "flatPath": "{merchantId}/orders/{orderId}/updateShipment",
 22390  	//   "httpMethod": "POST",
 22391  	//   "id": "content.orders.updateshipment",
 22392  	//   "parameterOrder": [
 22393  	//     "merchantId",
 22394  	//     "orderId"
 22395  	//   ],
 22396  	//   "parameters": {
 22397  	//     "merchantId": {
 22398  	//       "description": "The ID of the account that manages the order. This cannot be a multi-client account.",
 22399  	//       "format": "uint64",
 22400  	//       "location": "path",
 22401  	//       "required": true,
 22402  	//       "type": "string"
 22403  	//     },
 22404  	//     "orderId": {
 22405  	//       "description": "The ID of the order.",
 22406  	//       "location": "path",
 22407  	//       "required": true,
 22408  	//       "type": "string"
 22409  	//     }
 22410  	//   },
 22411  	//   "path": "{merchantId}/orders/{orderId}/updateShipment",
 22412  	//   "request": {
 22413  	//     "$ref": "OrdersUpdateShipmentRequest"
 22414  	//   },
 22415  	//   "response": {
 22416  	//     "$ref": "OrdersUpdateShipmentResponse"
 22417  	//   },
 22418  	//   "scopes": [
 22419  	//     "https://www.googleapis.com/auth/content"
 22420  	//   ]
 22421  	// }
 22422  
 22423  }
 22424  
 22425  // method id "content.pos.custombatch":
 22426  
 22427  type PosCustombatchCall struct {
 22428  	s                     *APIService
 22429  	poscustombatchrequest *PosCustomBatchRequest
 22430  	urlParams_            gensupport.URLParams
 22431  	ctx_                  context.Context
 22432  	header_               http.Header
 22433  }
 22434  
 22435  // Custombatch: Batches multiple POS-related calls in a single request.
 22436  func (r *PosService) Custombatch(poscustombatchrequest *PosCustomBatchRequest) *PosCustombatchCall {
 22437  	c := &PosCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 22438  	c.poscustombatchrequest = poscustombatchrequest
 22439  	return c
 22440  }
 22441  
 22442  // DryRun sets the optional parameter "dryRun": Flag to simulate a
 22443  // request like in a live environment. If set to true, dry-run mode
 22444  // checks the validity of the request and returns errors (if any).
 22445  func (c *PosCustombatchCall) DryRun(dryRun bool) *PosCustombatchCall {
 22446  	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
 22447  	return c
 22448  }
 22449  
 22450  // Fields allows partial responses to be retrieved. See
 22451  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 22452  // for more information.
 22453  func (c *PosCustombatchCall) Fields(s ...googleapi.Field) *PosCustombatchCall {
 22454  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 22455  	return c
 22456  }
 22457  
 22458  // Context sets the context to be used in this call's Do method. Any
 22459  // pending HTTP request will be aborted if the provided context is
 22460  // canceled.
 22461  func (c *PosCustombatchCall) Context(ctx context.Context) *PosCustombatchCall {
 22462  	c.ctx_ = ctx
 22463  	return c
 22464  }
 22465  
 22466  // Header returns an http.Header that can be modified by the caller to
 22467  // add HTTP headers to the request.
 22468  func (c *PosCustombatchCall) Header() http.Header {
 22469  	if c.header_ == nil {
 22470  		c.header_ = make(http.Header)
 22471  	}
 22472  	return c.header_
 22473  }
 22474  
 22475  func (c *PosCustombatchCall) doRequest(alt string) (*http.Response, error) {
 22476  	reqHeaders := make(http.Header)
 22477  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 22478  	for k, v := range c.header_ {
 22479  		reqHeaders[k] = v
 22480  	}
 22481  	reqHeaders.Set("User-Agent", c.s.userAgent())
 22482  	var body io.Reader = nil
 22483  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.poscustombatchrequest)
 22484  	if err != nil {
 22485  		return nil, err
 22486  	}
 22487  	reqHeaders.Set("Content-Type", "application/json")
 22488  	c.urlParams_.Set("alt", alt)
 22489  	c.urlParams_.Set("prettyPrint", "false")
 22490  	urls := googleapi.ResolveRelative(c.s.BasePath, "pos/batch")
 22491  	urls += "?" + c.urlParams_.Encode()
 22492  	req, err := http.NewRequest("POST", urls, body)
 22493  	if err != nil {
 22494  		return nil, err
 22495  	}
 22496  	req.Header = reqHeaders
 22497  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 22498  }
 22499  
 22500  // Do executes the "content.pos.custombatch" call.
 22501  // Exactly one of *PosCustomBatchResponse or error will be non-nil. Any
 22502  // non-2xx status code is an error. Response headers are in either
 22503  // *PosCustomBatchResponse.ServerResponse.Header or (if a response was
 22504  // returned at all) in error.(*googleapi.Error).Header. Use
 22505  // googleapi.IsNotModified to check whether the returned error was
 22506  // because http.StatusNotModified was returned.
 22507  func (c *PosCustombatchCall) Do(opts ...googleapi.CallOption) (*PosCustomBatchResponse, error) {
 22508  	gensupport.SetOptions(c.urlParams_, opts...)
 22509  	res, err := c.doRequest("json")
 22510  	if res != nil && res.StatusCode == http.StatusNotModified {
 22511  		if res.Body != nil {
 22512  			res.Body.Close()
 22513  		}
 22514  		return nil, &googleapi.Error{
 22515  			Code:   res.StatusCode,
 22516  			Header: res.Header,
 22517  		}
 22518  	}
 22519  	if err != nil {
 22520  		return nil, err
 22521  	}
 22522  	defer googleapi.CloseBody(res)
 22523  	if err := googleapi.CheckResponse(res); err != nil {
 22524  		return nil, err
 22525  	}
 22526  	ret := &PosCustomBatchResponse{
 22527  		ServerResponse: googleapi.ServerResponse{
 22528  			Header:         res.Header,
 22529  			HTTPStatusCode: res.StatusCode,
 22530  		},
 22531  	}
 22532  	target := &ret
 22533  	if err := gensupport.DecodeResponse(target, res); err != nil {
 22534  		return nil, err
 22535  	}
 22536  	return ret, nil
 22537  	// {
 22538  	//   "description": "Batches multiple POS-related calls in a single request.",
 22539  	//   "flatPath": "pos/batch",
 22540  	//   "httpMethod": "POST",
 22541  	//   "id": "content.pos.custombatch",
 22542  	//   "parameterOrder": [],
 22543  	//   "parameters": {
 22544  	//     "dryRun": {
 22545  	//       "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).",
 22546  	//       "location": "query",
 22547  	//       "type": "boolean"
 22548  	//     }
 22549  	//   },
 22550  	//   "path": "pos/batch",
 22551  	//   "request": {
 22552  	//     "$ref": "PosCustomBatchRequest"
 22553  	//   },
 22554  	//   "response": {
 22555  	//     "$ref": "PosCustomBatchResponse"
 22556  	//   },
 22557  	//   "scopes": [
 22558  	//     "https://www.googleapis.com/auth/content"
 22559  	//   ]
 22560  	// }
 22561  
 22562  }
 22563  
 22564  // method id "content.pos.delete":
 22565  
 22566  type PosDeleteCall struct {
 22567  	s                *APIService
 22568  	merchantId       uint64
 22569  	targetMerchantId uint64
 22570  	storeCode        string
 22571  	urlParams_       gensupport.URLParams
 22572  	ctx_             context.Context
 22573  	header_          http.Header
 22574  }
 22575  
 22576  // Delete: Deletes a store for the given merchant.
 22577  //
 22578  // - merchantId: The ID of the POS or inventory data provider.
 22579  // - storeCode: A store code that is unique per merchant.
 22580  // - targetMerchantId: The ID of the target merchant.
 22581  func (r *PosService) Delete(merchantId uint64, targetMerchantId uint64, storeCode string) *PosDeleteCall {
 22582  	c := &PosDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 22583  	c.merchantId = merchantId
 22584  	c.targetMerchantId = targetMerchantId
 22585  	c.storeCode = storeCode
 22586  	return c
 22587  }
 22588  
 22589  // DryRun sets the optional parameter "dryRun": Flag to simulate a
 22590  // request like in a live environment. If set to true, dry-run mode
 22591  // checks the validity of the request and returns errors (if any).
 22592  func (c *PosDeleteCall) DryRun(dryRun bool) *PosDeleteCall {
 22593  	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
 22594  	return c
 22595  }
 22596  
 22597  // Fields allows partial responses to be retrieved. See
 22598  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 22599  // for more information.
 22600  func (c *PosDeleteCall) Fields(s ...googleapi.Field) *PosDeleteCall {
 22601  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 22602  	return c
 22603  }
 22604  
 22605  // Context sets the context to be used in this call's Do method. Any
 22606  // pending HTTP request will be aborted if the provided context is
 22607  // canceled.
 22608  func (c *PosDeleteCall) Context(ctx context.Context) *PosDeleteCall {
 22609  	c.ctx_ = ctx
 22610  	return c
 22611  }
 22612  
 22613  // Header returns an http.Header that can be modified by the caller to
 22614  // add HTTP headers to the request.
 22615  func (c *PosDeleteCall) Header() http.Header {
 22616  	if c.header_ == nil {
 22617  		c.header_ = make(http.Header)
 22618  	}
 22619  	return c.header_
 22620  }
 22621  
 22622  func (c *PosDeleteCall) doRequest(alt string) (*http.Response, error) {
 22623  	reqHeaders := make(http.Header)
 22624  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 22625  	for k, v := range c.header_ {
 22626  		reqHeaders[k] = v
 22627  	}
 22628  	reqHeaders.Set("User-Agent", c.s.userAgent())
 22629  	var body io.Reader = nil
 22630  	c.urlParams_.Set("alt", alt)
 22631  	c.urlParams_.Set("prettyPrint", "false")
 22632  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/store/{storeCode}")
 22633  	urls += "?" + c.urlParams_.Encode()
 22634  	req, err := http.NewRequest("DELETE", urls, body)
 22635  	if err != nil {
 22636  		return nil, err
 22637  	}
 22638  	req.Header = reqHeaders
 22639  	googleapi.Expand(req.URL, map[string]string{
 22640  		"merchantId":       strconv.FormatUint(c.merchantId, 10),
 22641  		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
 22642  		"storeCode":        c.storeCode,
 22643  	})
 22644  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 22645  }
 22646  
 22647  // Do executes the "content.pos.delete" call.
 22648  func (c *PosDeleteCall) Do(opts ...googleapi.CallOption) error {
 22649  	gensupport.SetOptions(c.urlParams_, opts...)
 22650  	res, err := c.doRequest("json")
 22651  	if err != nil {
 22652  		return err
 22653  	}
 22654  	defer googleapi.CloseBody(res)
 22655  	if err := googleapi.CheckResponse(res); err != nil {
 22656  		return err
 22657  	}
 22658  	return nil
 22659  	// {
 22660  	//   "description": "Deletes a store for the given merchant.",
 22661  	//   "flatPath": "{merchantId}/pos/{targetMerchantId}/store/{storeCode}",
 22662  	//   "httpMethod": "DELETE",
 22663  	//   "id": "content.pos.delete",
 22664  	//   "parameterOrder": [
 22665  	//     "merchantId",
 22666  	//     "targetMerchantId",
 22667  	//     "storeCode"
 22668  	//   ],
 22669  	//   "parameters": {
 22670  	//     "dryRun": {
 22671  	//       "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).",
 22672  	//       "location": "query",
 22673  	//       "type": "boolean"
 22674  	//     },
 22675  	//     "merchantId": {
 22676  	//       "description": "The ID of the POS or inventory data provider.",
 22677  	//       "format": "uint64",
 22678  	//       "location": "path",
 22679  	//       "required": true,
 22680  	//       "type": "string"
 22681  	//     },
 22682  	//     "storeCode": {
 22683  	//       "description": "A store code that is unique per merchant.",
 22684  	//       "location": "path",
 22685  	//       "required": true,
 22686  	//       "type": "string"
 22687  	//     },
 22688  	//     "targetMerchantId": {
 22689  	//       "description": "The ID of the target merchant.",
 22690  	//       "format": "uint64",
 22691  	//       "location": "path",
 22692  	//       "required": true,
 22693  	//       "type": "string"
 22694  	//     }
 22695  	//   },
 22696  	//   "path": "{merchantId}/pos/{targetMerchantId}/store/{storeCode}",
 22697  	//   "scopes": [
 22698  	//     "https://www.googleapis.com/auth/content"
 22699  	//   ]
 22700  	// }
 22701  
 22702  }
 22703  
 22704  // method id "content.pos.get":
 22705  
 22706  type PosGetCall struct {
 22707  	s                *APIService
 22708  	merchantId       uint64
 22709  	targetMerchantId uint64
 22710  	storeCode        string
 22711  	urlParams_       gensupport.URLParams
 22712  	ifNoneMatch_     string
 22713  	ctx_             context.Context
 22714  	header_          http.Header
 22715  }
 22716  
 22717  // Get: Retrieves information about the given store.
 22718  //
 22719  // - merchantId: The ID of the POS or inventory data provider.
 22720  // - storeCode: A store code that is unique per merchant.
 22721  // - targetMerchantId: The ID of the target merchant.
 22722  func (r *PosService) Get(merchantId uint64, targetMerchantId uint64, storeCode string) *PosGetCall {
 22723  	c := &PosGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 22724  	c.merchantId = merchantId
 22725  	c.targetMerchantId = targetMerchantId
 22726  	c.storeCode = storeCode
 22727  	return c
 22728  }
 22729  
 22730  // Fields allows partial responses to be retrieved. See
 22731  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 22732  // for more information.
 22733  func (c *PosGetCall) Fields(s ...googleapi.Field) *PosGetCall {
 22734  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 22735  	return c
 22736  }
 22737  
 22738  // IfNoneMatch sets the optional parameter which makes the operation
 22739  // fail if the object's ETag matches the given value. This is useful for
 22740  // getting updates only after the object has changed since the last
 22741  // request. Use googleapi.IsNotModified to check whether the response
 22742  // error from Do is the result of In-None-Match.
 22743  func (c *PosGetCall) IfNoneMatch(entityTag string) *PosGetCall {
 22744  	c.ifNoneMatch_ = entityTag
 22745  	return c
 22746  }
 22747  
 22748  // Context sets the context to be used in this call's Do method. Any
 22749  // pending HTTP request will be aborted if the provided context is
 22750  // canceled.
 22751  func (c *PosGetCall) Context(ctx context.Context) *PosGetCall {
 22752  	c.ctx_ = ctx
 22753  	return c
 22754  }
 22755  
 22756  // Header returns an http.Header that can be modified by the caller to
 22757  // add HTTP headers to the request.
 22758  func (c *PosGetCall) Header() http.Header {
 22759  	if c.header_ == nil {
 22760  		c.header_ = make(http.Header)
 22761  	}
 22762  	return c.header_
 22763  }
 22764  
 22765  func (c *PosGetCall) doRequest(alt string) (*http.Response, error) {
 22766  	reqHeaders := make(http.Header)
 22767  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 22768  	for k, v := range c.header_ {
 22769  		reqHeaders[k] = v
 22770  	}
 22771  	reqHeaders.Set("User-Agent", c.s.userAgent())
 22772  	if c.ifNoneMatch_ != "" {
 22773  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 22774  	}
 22775  	var body io.Reader = nil
 22776  	c.urlParams_.Set("alt", alt)
 22777  	c.urlParams_.Set("prettyPrint", "false")
 22778  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/store/{storeCode}")
 22779  	urls += "?" + c.urlParams_.Encode()
 22780  	req, err := http.NewRequest("GET", urls, body)
 22781  	if err != nil {
 22782  		return nil, err
 22783  	}
 22784  	req.Header = reqHeaders
 22785  	googleapi.Expand(req.URL, map[string]string{
 22786  		"merchantId":       strconv.FormatUint(c.merchantId, 10),
 22787  		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
 22788  		"storeCode":        c.storeCode,
 22789  	})
 22790  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 22791  }
 22792  
 22793  // Do executes the "content.pos.get" call.
 22794  // Exactly one of *PosStore or error will be non-nil. Any non-2xx status
 22795  // code is an error. Response headers are in either
 22796  // *PosStore.ServerResponse.Header or (if a response was returned at
 22797  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
 22798  // to check whether the returned error was because
 22799  // http.StatusNotModified was returned.
 22800  func (c *PosGetCall) Do(opts ...googleapi.CallOption) (*PosStore, error) {
 22801  	gensupport.SetOptions(c.urlParams_, opts...)
 22802  	res, err := c.doRequest("json")
 22803  	if res != nil && res.StatusCode == http.StatusNotModified {
 22804  		if res.Body != nil {
 22805  			res.Body.Close()
 22806  		}
 22807  		return nil, &googleapi.Error{
 22808  			Code:   res.StatusCode,
 22809  			Header: res.Header,
 22810  		}
 22811  	}
 22812  	if err != nil {
 22813  		return nil, err
 22814  	}
 22815  	defer googleapi.CloseBody(res)
 22816  	if err := googleapi.CheckResponse(res); err != nil {
 22817  		return nil, err
 22818  	}
 22819  	ret := &PosStore{
 22820  		ServerResponse: googleapi.ServerResponse{
 22821  			Header:         res.Header,
 22822  			HTTPStatusCode: res.StatusCode,
 22823  		},
 22824  	}
 22825  	target := &ret
 22826  	if err := gensupport.DecodeResponse(target, res); err != nil {
 22827  		return nil, err
 22828  	}
 22829  	return ret, nil
 22830  	// {
 22831  	//   "description": "Retrieves information about the given store.",
 22832  	//   "flatPath": "{merchantId}/pos/{targetMerchantId}/store/{storeCode}",
 22833  	//   "httpMethod": "GET",
 22834  	//   "id": "content.pos.get",
 22835  	//   "parameterOrder": [
 22836  	//     "merchantId",
 22837  	//     "targetMerchantId",
 22838  	//     "storeCode"
 22839  	//   ],
 22840  	//   "parameters": {
 22841  	//     "merchantId": {
 22842  	//       "description": "The ID of the POS or inventory data provider.",
 22843  	//       "format": "uint64",
 22844  	//       "location": "path",
 22845  	//       "required": true,
 22846  	//       "type": "string"
 22847  	//     },
 22848  	//     "storeCode": {
 22849  	//       "description": "A store code that is unique per merchant.",
 22850  	//       "location": "path",
 22851  	//       "required": true,
 22852  	//       "type": "string"
 22853  	//     },
 22854  	//     "targetMerchantId": {
 22855  	//       "description": "The ID of the target merchant.",
 22856  	//       "format": "uint64",
 22857  	//       "location": "path",
 22858  	//       "required": true,
 22859  	//       "type": "string"
 22860  	//     }
 22861  	//   },
 22862  	//   "path": "{merchantId}/pos/{targetMerchantId}/store/{storeCode}",
 22863  	//   "response": {
 22864  	//     "$ref": "PosStore"
 22865  	//   },
 22866  	//   "scopes": [
 22867  	//     "https://www.googleapis.com/auth/content"
 22868  	//   ]
 22869  	// }
 22870  
 22871  }
 22872  
 22873  // method id "content.pos.insert":
 22874  
 22875  type PosInsertCall struct {
 22876  	s                *APIService
 22877  	merchantId       uint64
 22878  	targetMerchantId uint64
 22879  	posstore         *PosStore
 22880  	urlParams_       gensupport.URLParams
 22881  	ctx_             context.Context
 22882  	header_          http.Header
 22883  }
 22884  
 22885  // Insert: Creates a store for the given merchant.
 22886  //
 22887  // - merchantId: The ID of the POS or inventory data provider.
 22888  // - targetMerchantId: The ID of the target merchant.
 22889  func (r *PosService) Insert(merchantId uint64, targetMerchantId uint64, posstore *PosStore) *PosInsertCall {
 22890  	c := &PosInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 22891  	c.merchantId = merchantId
 22892  	c.targetMerchantId = targetMerchantId
 22893  	c.posstore = posstore
 22894  	return c
 22895  }
 22896  
 22897  // DryRun sets the optional parameter "dryRun": Flag to simulate a
 22898  // request like in a live environment. If set to true, dry-run mode
 22899  // checks the validity of the request and returns errors (if any).
 22900  func (c *PosInsertCall) DryRun(dryRun bool) *PosInsertCall {
 22901  	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
 22902  	return c
 22903  }
 22904  
 22905  // Fields allows partial responses to be retrieved. See
 22906  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 22907  // for more information.
 22908  func (c *PosInsertCall) Fields(s ...googleapi.Field) *PosInsertCall {
 22909  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 22910  	return c
 22911  }
 22912  
 22913  // Context sets the context to be used in this call's Do method. Any
 22914  // pending HTTP request will be aborted if the provided context is
 22915  // canceled.
 22916  func (c *PosInsertCall) Context(ctx context.Context) *PosInsertCall {
 22917  	c.ctx_ = ctx
 22918  	return c
 22919  }
 22920  
 22921  // Header returns an http.Header that can be modified by the caller to
 22922  // add HTTP headers to the request.
 22923  func (c *PosInsertCall) Header() http.Header {
 22924  	if c.header_ == nil {
 22925  		c.header_ = make(http.Header)
 22926  	}
 22927  	return c.header_
 22928  }
 22929  
 22930  func (c *PosInsertCall) doRequest(alt string) (*http.Response, error) {
 22931  	reqHeaders := make(http.Header)
 22932  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 22933  	for k, v := range c.header_ {
 22934  		reqHeaders[k] = v
 22935  	}
 22936  	reqHeaders.Set("User-Agent", c.s.userAgent())
 22937  	var body io.Reader = nil
 22938  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.posstore)
 22939  	if err != nil {
 22940  		return nil, err
 22941  	}
 22942  	reqHeaders.Set("Content-Type", "application/json")
 22943  	c.urlParams_.Set("alt", alt)
 22944  	c.urlParams_.Set("prettyPrint", "false")
 22945  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/store")
 22946  	urls += "?" + c.urlParams_.Encode()
 22947  	req, err := http.NewRequest("POST", urls, body)
 22948  	if err != nil {
 22949  		return nil, err
 22950  	}
 22951  	req.Header = reqHeaders
 22952  	googleapi.Expand(req.URL, map[string]string{
 22953  		"merchantId":       strconv.FormatUint(c.merchantId, 10),
 22954  		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
 22955  	})
 22956  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 22957  }
 22958  
 22959  // Do executes the "content.pos.insert" call.
 22960  // Exactly one of *PosStore or error will be non-nil. Any non-2xx status
 22961  // code is an error. Response headers are in either
 22962  // *PosStore.ServerResponse.Header or (if a response was returned at
 22963  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
 22964  // to check whether the returned error was because
 22965  // http.StatusNotModified was returned.
 22966  func (c *PosInsertCall) Do(opts ...googleapi.CallOption) (*PosStore, error) {
 22967  	gensupport.SetOptions(c.urlParams_, opts...)
 22968  	res, err := c.doRequest("json")
 22969  	if res != nil && res.StatusCode == http.StatusNotModified {
 22970  		if res.Body != nil {
 22971  			res.Body.Close()
 22972  		}
 22973  		return nil, &googleapi.Error{
 22974  			Code:   res.StatusCode,
 22975  			Header: res.Header,
 22976  		}
 22977  	}
 22978  	if err != nil {
 22979  		return nil, err
 22980  	}
 22981  	defer googleapi.CloseBody(res)
 22982  	if err := googleapi.CheckResponse(res); err != nil {
 22983  		return nil, err
 22984  	}
 22985  	ret := &PosStore{
 22986  		ServerResponse: googleapi.ServerResponse{
 22987  			Header:         res.Header,
 22988  			HTTPStatusCode: res.StatusCode,
 22989  		},
 22990  	}
 22991  	target := &ret
 22992  	if err := gensupport.DecodeResponse(target, res); err != nil {
 22993  		return nil, err
 22994  	}
 22995  	return ret, nil
 22996  	// {
 22997  	//   "description": "Creates a store for the given merchant.",
 22998  	//   "flatPath": "{merchantId}/pos/{targetMerchantId}/store",
 22999  	//   "httpMethod": "POST",
 23000  	//   "id": "content.pos.insert",
 23001  	//   "parameterOrder": [
 23002  	//     "merchantId",
 23003  	//     "targetMerchantId"
 23004  	//   ],
 23005  	//   "parameters": {
 23006  	//     "dryRun": {
 23007  	//       "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).",
 23008  	//       "location": "query",
 23009  	//       "type": "boolean"
 23010  	//     },
 23011  	//     "merchantId": {
 23012  	//       "description": "The ID of the POS or inventory data provider.",
 23013  	//       "format": "uint64",
 23014  	//       "location": "path",
 23015  	//       "required": true,
 23016  	//       "type": "string"
 23017  	//     },
 23018  	//     "targetMerchantId": {
 23019  	//       "description": "The ID of the target merchant.",
 23020  	//       "format": "uint64",
 23021  	//       "location": "path",
 23022  	//       "required": true,
 23023  	//       "type": "string"
 23024  	//     }
 23025  	//   },
 23026  	//   "path": "{merchantId}/pos/{targetMerchantId}/store",
 23027  	//   "request": {
 23028  	//     "$ref": "PosStore"
 23029  	//   },
 23030  	//   "response": {
 23031  	//     "$ref": "PosStore"
 23032  	//   },
 23033  	//   "scopes": [
 23034  	//     "https://www.googleapis.com/auth/content"
 23035  	//   ]
 23036  	// }
 23037  
 23038  }
 23039  
 23040  // method id "content.pos.inventory":
 23041  
 23042  type PosInventoryCall struct {
 23043  	s                   *APIService
 23044  	merchantId          uint64
 23045  	targetMerchantId    uint64
 23046  	posinventoryrequest *PosInventoryRequest
 23047  	urlParams_          gensupport.URLParams
 23048  	ctx_                context.Context
 23049  	header_             http.Header
 23050  }
 23051  
 23052  // Inventory: Submit inventory for the given merchant.
 23053  //
 23054  // - merchantId: The ID of the POS or inventory data provider.
 23055  // - targetMerchantId: The ID of the target merchant.
 23056  func (r *PosService) Inventory(merchantId uint64, targetMerchantId uint64, posinventoryrequest *PosInventoryRequest) *PosInventoryCall {
 23057  	c := &PosInventoryCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 23058  	c.merchantId = merchantId
 23059  	c.targetMerchantId = targetMerchantId
 23060  	c.posinventoryrequest = posinventoryrequest
 23061  	return c
 23062  }
 23063  
 23064  // DryRun sets the optional parameter "dryRun": Flag to simulate a
 23065  // request like in a live environment. If set to true, dry-run mode
 23066  // checks the validity of the request and returns errors (if any).
 23067  func (c *PosInventoryCall) DryRun(dryRun bool) *PosInventoryCall {
 23068  	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
 23069  	return c
 23070  }
 23071  
 23072  // Fields allows partial responses to be retrieved. See
 23073  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 23074  // for more information.
 23075  func (c *PosInventoryCall) Fields(s ...googleapi.Field) *PosInventoryCall {
 23076  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 23077  	return c
 23078  }
 23079  
 23080  // Context sets the context to be used in this call's Do method. Any
 23081  // pending HTTP request will be aborted if the provided context is
 23082  // canceled.
 23083  func (c *PosInventoryCall) Context(ctx context.Context) *PosInventoryCall {
 23084  	c.ctx_ = ctx
 23085  	return c
 23086  }
 23087  
 23088  // Header returns an http.Header that can be modified by the caller to
 23089  // add HTTP headers to the request.
 23090  func (c *PosInventoryCall) Header() http.Header {
 23091  	if c.header_ == nil {
 23092  		c.header_ = make(http.Header)
 23093  	}
 23094  	return c.header_
 23095  }
 23096  
 23097  func (c *PosInventoryCall) doRequest(alt string) (*http.Response, error) {
 23098  	reqHeaders := make(http.Header)
 23099  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 23100  	for k, v := range c.header_ {
 23101  		reqHeaders[k] = v
 23102  	}
 23103  	reqHeaders.Set("User-Agent", c.s.userAgent())
 23104  	var body io.Reader = nil
 23105  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.posinventoryrequest)
 23106  	if err != nil {
 23107  		return nil, err
 23108  	}
 23109  	reqHeaders.Set("Content-Type", "application/json")
 23110  	c.urlParams_.Set("alt", alt)
 23111  	c.urlParams_.Set("prettyPrint", "false")
 23112  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/inventory")
 23113  	urls += "?" + c.urlParams_.Encode()
 23114  	req, err := http.NewRequest("POST", urls, body)
 23115  	if err != nil {
 23116  		return nil, err
 23117  	}
 23118  	req.Header = reqHeaders
 23119  	googleapi.Expand(req.URL, map[string]string{
 23120  		"merchantId":       strconv.FormatUint(c.merchantId, 10),
 23121  		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
 23122  	})
 23123  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 23124  }
 23125  
 23126  // Do executes the "content.pos.inventory" call.
 23127  // Exactly one of *PosInventoryResponse or error will be non-nil. Any
 23128  // non-2xx status code is an error. Response headers are in either
 23129  // *PosInventoryResponse.ServerResponse.Header or (if a response was
 23130  // returned at all) in error.(*googleapi.Error).Header. Use
 23131  // googleapi.IsNotModified to check whether the returned error was
 23132  // because http.StatusNotModified was returned.
 23133  func (c *PosInventoryCall) Do(opts ...googleapi.CallOption) (*PosInventoryResponse, error) {
 23134  	gensupport.SetOptions(c.urlParams_, opts...)
 23135  	res, err := c.doRequest("json")
 23136  	if res != nil && res.StatusCode == http.StatusNotModified {
 23137  		if res.Body != nil {
 23138  			res.Body.Close()
 23139  		}
 23140  		return nil, &googleapi.Error{
 23141  			Code:   res.StatusCode,
 23142  			Header: res.Header,
 23143  		}
 23144  	}
 23145  	if err != nil {
 23146  		return nil, err
 23147  	}
 23148  	defer googleapi.CloseBody(res)
 23149  	if err := googleapi.CheckResponse(res); err != nil {
 23150  		return nil, err
 23151  	}
 23152  	ret := &PosInventoryResponse{
 23153  		ServerResponse: googleapi.ServerResponse{
 23154  			Header:         res.Header,
 23155  			HTTPStatusCode: res.StatusCode,
 23156  		},
 23157  	}
 23158  	target := &ret
 23159  	if err := gensupport.DecodeResponse(target, res); err != nil {
 23160  		return nil, err
 23161  	}
 23162  	return ret, nil
 23163  	// {
 23164  	//   "description": "Submit inventory for the given merchant.",
 23165  	//   "flatPath": "{merchantId}/pos/{targetMerchantId}/inventory",
 23166  	//   "httpMethod": "POST",
 23167  	//   "id": "content.pos.inventory",
 23168  	//   "parameterOrder": [
 23169  	//     "merchantId",
 23170  	//     "targetMerchantId"
 23171  	//   ],
 23172  	//   "parameters": {
 23173  	//     "dryRun": {
 23174  	//       "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).",
 23175  	//       "location": "query",
 23176  	//       "type": "boolean"
 23177  	//     },
 23178  	//     "merchantId": {
 23179  	//       "description": "The ID of the POS or inventory data provider.",
 23180  	//       "format": "uint64",
 23181  	//       "location": "path",
 23182  	//       "required": true,
 23183  	//       "type": "string"
 23184  	//     },
 23185  	//     "targetMerchantId": {
 23186  	//       "description": "The ID of the target merchant.",
 23187  	//       "format": "uint64",
 23188  	//       "location": "path",
 23189  	//       "required": true,
 23190  	//       "type": "string"
 23191  	//     }
 23192  	//   },
 23193  	//   "path": "{merchantId}/pos/{targetMerchantId}/inventory",
 23194  	//   "request": {
 23195  	//     "$ref": "PosInventoryRequest"
 23196  	//   },
 23197  	//   "response": {
 23198  	//     "$ref": "PosInventoryResponse"
 23199  	//   },
 23200  	//   "scopes": [
 23201  	//     "https://www.googleapis.com/auth/content"
 23202  	//   ]
 23203  	// }
 23204  
 23205  }
 23206  
 23207  // method id "content.pos.list":
 23208  
 23209  type PosListCall struct {
 23210  	s                *APIService
 23211  	merchantId       uint64
 23212  	targetMerchantId uint64
 23213  	urlParams_       gensupport.URLParams
 23214  	ifNoneMatch_     string
 23215  	ctx_             context.Context
 23216  	header_          http.Header
 23217  }
 23218  
 23219  // List: Lists the stores of the target merchant.
 23220  //
 23221  // - merchantId: The ID of the POS or inventory data provider.
 23222  // - targetMerchantId: The ID of the target merchant.
 23223  func (r *PosService) List(merchantId uint64, targetMerchantId uint64) *PosListCall {
 23224  	c := &PosListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 23225  	c.merchantId = merchantId
 23226  	c.targetMerchantId = targetMerchantId
 23227  	return c
 23228  }
 23229  
 23230  // Fields allows partial responses to be retrieved. See
 23231  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 23232  // for more information.
 23233  func (c *PosListCall) Fields(s ...googleapi.Field) *PosListCall {
 23234  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 23235  	return c
 23236  }
 23237  
 23238  // IfNoneMatch sets the optional parameter which makes the operation
 23239  // fail if the object's ETag matches the given value. This is useful for
 23240  // getting updates only after the object has changed since the last
 23241  // request. Use googleapi.IsNotModified to check whether the response
 23242  // error from Do is the result of In-None-Match.
 23243  func (c *PosListCall) IfNoneMatch(entityTag string) *PosListCall {
 23244  	c.ifNoneMatch_ = entityTag
 23245  	return c
 23246  }
 23247  
 23248  // Context sets the context to be used in this call's Do method. Any
 23249  // pending HTTP request will be aborted if the provided context is
 23250  // canceled.
 23251  func (c *PosListCall) Context(ctx context.Context) *PosListCall {
 23252  	c.ctx_ = ctx
 23253  	return c
 23254  }
 23255  
 23256  // Header returns an http.Header that can be modified by the caller to
 23257  // add HTTP headers to the request.
 23258  func (c *PosListCall) Header() http.Header {
 23259  	if c.header_ == nil {
 23260  		c.header_ = make(http.Header)
 23261  	}
 23262  	return c.header_
 23263  }
 23264  
 23265  func (c *PosListCall) doRequest(alt string) (*http.Response, error) {
 23266  	reqHeaders := make(http.Header)
 23267  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 23268  	for k, v := range c.header_ {
 23269  		reqHeaders[k] = v
 23270  	}
 23271  	reqHeaders.Set("User-Agent", c.s.userAgent())
 23272  	if c.ifNoneMatch_ != "" {
 23273  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 23274  	}
 23275  	var body io.Reader = nil
 23276  	c.urlParams_.Set("alt", alt)
 23277  	c.urlParams_.Set("prettyPrint", "false")
 23278  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/store")
 23279  	urls += "?" + c.urlParams_.Encode()
 23280  	req, err := http.NewRequest("GET", urls, body)
 23281  	if err != nil {
 23282  		return nil, err
 23283  	}
 23284  	req.Header = reqHeaders
 23285  	googleapi.Expand(req.URL, map[string]string{
 23286  		"merchantId":       strconv.FormatUint(c.merchantId, 10),
 23287  		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
 23288  	})
 23289  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 23290  }
 23291  
 23292  // Do executes the "content.pos.list" call.
 23293  // Exactly one of *PosListResponse or error will be non-nil. Any non-2xx
 23294  // status code is an error. Response headers are in either
 23295  // *PosListResponse.ServerResponse.Header or (if a response was returned
 23296  // at all) in error.(*googleapi.Error).Header. Use
 23297  // googleapi.IsNotModified to check whether the returned error was
 23298  // because http.StatusNotModified was returned.
 23299  func (c *PosListCall) Do(opts ...googleapi.CallOption) (*PosListResponse, error) {
 23300  	gensupport.SetOptions(c.urlParams_, opts...)
 23301  	res, err := c.doRequest("json")
 23302  	if res != nil && res.StatusCode == http.StatusNotModified {
 23303  		if res.Body != nil {
 23304  			res.Body.Close()
 23305  		}
 23306  		return nil, &googleapi.Error{
 23307  			Code:   res.StatusCode,
 23308  			Header: res.Header,
 23309  		}
 23310  	}
 23311  	if err != nil {
 23312  		return nil, err
 23313  	}
 23314  	defer googleapi.CloseBody(res)
 23315  	if err := googleapi.CheckResponse(res); err != nil {
 23316  		return nil, err
 23317  	}
 23318  	ret := &PosListResponse{
 23319  		ServerResponse: googleapi.ServerResponse{
 23320  			Header:         res.Header,
 23321  			HTTPStatusCode: res.StatusCode,
 23322  		},
 23323  	}
 23324  	target := &ret
 23325  	if err := gensupport.DecodeResponse(target, res); err != nil {
 23326  		return nil, err
 23327  	}
 23328  	return ret, nil
 23329  	// {
 23330  	//   "description": "Lists the stores of the target merchant.",
 23331  	//   "flatPath": "{merchantId}/pos/{targetMerchantId}/store",
 23332  	//   "httpMethod": "GET",
 23333  	//   "id": "content.pos.list",
 23334  	//   "parameterOrder": [
 23335  	//     "merchantId",
 23336  	//     "targetMerchantId"
 23337  	//   ],
 23338  	//   "parameters": {
 23339  	//     "merchantId": {
 23340  	//       "description": "The ID of the POS or inventory data provider.",
 23341  	//       "format": "uint64",
 23342  	//       "location": "path",
 23343  	//       "required": true,
 23344  	//       "type": "string"
 23345  	//     },
 23346  	//     "targetMerchantId": {
 23347  	//       "description": "The ID of the target merchant.",
 23348  	//       "format": "uint64",
 23349  	//       "location": "path",
 23350  	//       "required": true,
 23351  	//       "type": "string"
 23352  	//     }
 23353  	//   },
 23354  	//   "path": "{merchantId}/pos/{targetMerchantId}/store",
 23355  	//   "response": {
 23356  	//     "$ref": "PosListResponse"
 23357  	//   },
 23358  	//   "scopes": [
 23359  	//     "https://www.googleapis.com/auth/content"
 23360  	//   ]
 23361  	// }
 23362  
 23363  }
 23364  
 23365  // method id "content.pos.sale":
 23366  
 23367  type PosSaleCall struct {
 23368  	s                *APIService
 23369  	merchantId       uint64
 23370  	targetMerchantId uint64
 23371  	possalerequest   *PosSaleRequest
 23372  	urlParams_       gensupport.URLParams
 23373  	ctx_             context.Context
 23374  	header_          http.Header
 23375  }
 23376  
 23377  // Sale: Submit a sale event for the given merchant.
 23378  //
 23379  // - merchantId: The ID of the POS or inventory data provider.
 23380  // - targetMerchantId: The ID of the target merchant.
 23381  func (r *PosService) Sale(merchantId uint64, targetMerchantId uint64, possalerequest *PosSaleRequest) *PosSaleCall {
 23382  	c := &PosSaleCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 23383  	c.merchantId = merchantId
 23384  	c.targetMerchantId = targetMerchantId
 23385  	c.possalerequest = possalerequest
 23386  	return c
 23387  }
 23388  
 23389  // DryRun sets the optional parameter "dryRun": Flag to simulate a
 23390  // request like in a live environment. If set to true, dry-run mode
 23391  // checks the validity of the request and returns errors (if any).
 23392  func (c *PosSaleCall) DryRun(dryRun bool) *PosSaleCall {
 23393  	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
 23394  	return c
 23395  }
 23396  
 23397  // Fields allows partial responses to be retrieved. See
 23398  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 23399  // for more information.
 23400  func (c *PosSaleCall) Fields(s ...googleapi.Field) *PosSaleCall {
 23401  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 23402  	return c
 23403  }
 23404  
 23405  // Context sets the context to be used in this call's Do method. Any
 23406  // pending HTTP request will be aborted if the provided context is
 23407  // canceled.
 23408  func (c *PosSaleCall) Context(ctx context.Context) *PosSaleCall {
 23409  	c.ctx_ = ctx
 23410  	return c
 23411  }
 23412  
 23413  // Header returns an http.Header that can be modified by the caller to
 23414  // add HTTP headers to the request.
 23415  func (c *PosSaleCall) Header() http.Header {
 23416  	if c.header_ == nil {
 23417  		c.header_ = make(http.Header)
 23418  	}
 23419  	return c.header_
 23420  }
 23421  
 23422  func (c *PosSaleCall) doRequest(alt string) (*http.Response, error) {
 23423  	reqHeaders := make(http.Header)
 23424  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 23425  	for k, v := range c.header_ {
 23426  		reqHeaders[k] = v
 23427  	}
 23428  	reqHeaders.Set("User-Agent", c.s.userAgent())
 23429  	var body io.Reader = nil
 23430  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.possalerequest)
 23431  	if err != nil {
 23432  		return nil, err
 23433  	}
 23434  	reqHeaders.Set("Content-Type", "application/json")
 23435  	c.urlParams_.Set("alt", alt)
 23436  	c.urlParams_.Set("prettyPrint", "false")
 23437  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/pos/{targetMerchantId}/sale")
 23438  	urls += "?" + c.urlParams_.Encode()
 23439  	req, err := http.NewRequest("POST", urls, body)
 23440  	if err != nil {
 23441  		return nil, err
 23442  	}
 23443  	req.Header = reqHeaders
 23444  	googleapi.Expand(req.URL, map[string]string{
 23445  		"merchantId":       strconv.FormatUint(c.merchantId, 10),
 23446  		"targetMerchantId": strconv.FormatUint(c.targetMerchantId, 10),
 23447  	})
 23448  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 23449  }
 23450  
 23451  // Do executes the "content.pos.sale" call.
 23452  // Exactly one of *PosSaleResponse or error will be non-nil. Any non-2xx
 23453  // status code is an error. Response headers are in either
 23454  // *PosSaleResponse.ServerResponse.Header or (if a response was returned
 23455  // at all) in error.(*googleapi.Error).Header. Use
 23456  // googleapi.IsNotModified to check whether the returned error was
 23457  // because http.StatusNotModified was returned.
 23458  func (c *PosSaleCall) Do(opts ...googleapi.CallOption) (*PosSaleResponse, error) {
 23459  	gensupport.SetOptions(c.urlParams_, opts...)
 23460  	res, err := c.doRequest("json")
 23461  	if res != nil && res.StatusCode == http.StatusNotModified {
 23462  		if res.Body != nil {
 23463  			res.Body.Close()
 23464  		}
 23465  		return nil, &googleapi.Error{
 23466  			Code:   res.StatusCode,
 23467  			Header: res.Header,
 23468  		}
 23469  	}
 23470  	if err != nil {
 23471  		return nil, err
 23472  	}
 23473  	defer googleapi.CloseBody(res)
 23474  	if err := googleapi.CheckResponse(res); err != nil {
 23475  		return nil, err
 23476  	}
 23477  	ret := &PosSaleResponse{
 23478  		ServerResponse: googleapi.ServerResponse{
 23479  			Header:         res.Header,
 23480  			HTTPStatusCode: res.StatusCode,
 23481  		},
 23482  	}
 23483  	target := &ret
 23484  	if err := gensupport.DecodeResponse(target, res); err != nil {
 23485  		return nil, err
 23486  	}
 23487  	return ret, nil
 23488  	// {
 23489  	//   "description": "Submit a sale event for the given merchant.",
 23490  	//   "flatPath": "{merchantId}/pos/{targetMerchantId}/sale",
 23491  	//   "httpMethod": "POST",
 23492  	//   "id": "content.pos.sale",
 23493  	//   "parameterOrder": [
 23494  	//     "merchantId",
 23495  	//     "targetMerchantId"
 23496  	//   ],
 23497  	//   "parameters": {
 23498  	//     "dryRun": {
 23499  	//       "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).",
 23500  	//       "location": "query",
 23501  	//       "type": "boolean"
 23502  	//     },
 23503  	//     "merchantId": {
 23504  	//       "description": "The ID of the POS or inventory data provider.",
 23505  	//       "format": "uint64",
 23506  	//       "location": "path",
 23507  	//       "required": true,
 23508  	//       "type": "string"
 23509  	//     },
 23510  	//     "targetMerchantId": {
 23511  	//       "description": "The ID of the target merchant.",
 23512  	//       "format": "uint64",
 23513  	//       "location": "path",
 23514  	//       "required": true,
 23515  	//       "type": "string"
 23516  	//     }
 23517  	//   },
 23518  	//   "path": "{merchantId}/pos/{targetMerchantId}/sale",
 23519  	//   "request": {
 23520  	//     "$ref": "PosSaleRequest"
 23521  	//   },
 23522  	//   "response": {
 23523  	//     "$ref": "PosSaleResponse"
 23524  	//   },
 23525  	//   "scopes": [
 23526  	//     "https://www.googleapis.com/auth/content"
 23527  	//   ]
 23528  	// }
 23529  
 23530  }
 23531  
 23532  // method id "content.products.custombatch":
 23533  
 23534  type ProductsCustombatchCall struct {
 23535  	s                          *APIService
 23536  	productscustombatchrequest *ProductsCustomBatchRequest
 23537  	urlParams_                 gensupport.URLParams
 23538  	ctx_                       context.Context
 23539  	header_                    http.Header
 23540  }
 23541  
 23542  // Custombatch: Retrieves, inserts, and deletes multiple products in a
 23543  // single request.
 23544  func (r *ProductsService) Custombatch(productscustombatchrequest *ProductsCustomBatchRequest) *ProductsCustombatchCall {
 23545  	c := &ProductsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 23546  	c.productscustombatchrequest = productscustombatchrequest
 23547  	return c
 23548  }
 23549  
 23550  // DryRun sets the optional parameter "dryRun": Flag to simulate a
 23551  // request like in a live environment. If set to true, dry-run mode
 23552  // checks the validity of the request and returns errors (if any).
 23553  func (c *ProductsCustombatchCall) DryRun(dryRun bool) *ProductsCustombatchCall {
 23554  	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
 23555  	return c
 23556  }
 23557  
 23558  // Fields allows partial responses to be retrieved. See
 23559  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 23560  // for more information.
 23561  func (c *ProductsCustombatchCall) Fields(s ...googleapi.Field) *ProductsCustombatchCall {
 23562  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 23563  	return c
 23564  }
 23565  
 23566  // Context sets the context to be used in this call's Do method. Any
 23567  // pending HTTP request will be aborted if the provided context is
 23568  // canceled.
 23569  func (c *ProductsCustombatchCall) Context(ctx context.Context) *ProductsCustombatchCall {
 23570  	c.ctx_ = ctx
 23571  	return c
 23572  }
 23573  
 23574  // Header returns an http.Header that can be modified by the caller to
 23575  // add HTTP headers to the request.
 23576  func (c *ProductsCustombatchCall) Header() http.Header {
 23577  	if c.header_ == nil {
 23578  		c.header_ = make(http.Header)
 23579  	}
 23580  	return c.header_
 23581  }
 23582  
 23583  func (c *ProductsCustombatchCall) doRequest(alt string) (*http.Response, error) {
 23584  	reqHeaders := make(http.Header)
 23585  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 23586  	for k, v := range c.header_ {
 23587  		reqHeaders[k] = v
 23588  	}
 23589  	reqHeaders.Set("User-Agent", c.s.userAgent())
 23590  	var body io.Reader = nil
 23591  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.productscustombatchrequest)
 23592  	if err != nil {
 23593  		return nil, err
 23594  	}
 23595  	reqHeaders.Set("Content-Type", "application/json")
 23596  	c.urlParams_.Set("alt", alt)
 23597  	c.urlParams_.Set("prettyPrint", "false")
 23598  	urls := googleapi.ResolveRelative(c.s.BasePath, "products/batch")
 23599  	urls += "?" + c.urlParams_.Encode()
 23600  	req, err := http.NewRequest("POST", urls, body)
 23601  	if err != nil {
 23602  		return nil, err
 23603  	}
 23604  	req.Header = reqHeaders
 23605  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 23606  }
 23607  
 23608  // Do executes the "content.products.custombatch" call.
 23609  // Exactly one of *ProductsCustomBatchResponse or error will be non-nil.
 23610  // Any non-2xx status code is an error. Response headers are in either
 23611  // *ProductsCustomBatchResponse.ServerResponse.Header or (if a response
 23612  // was returned at all) in error.(*googleapi.Error).Header. Use
 23613  // googleapi.IsNotModified to check whether the returned error was
 23614  // because http.StatusNotModified was returned.
 23615  func (c *ProductsCustombatchCall) Do(opts ...googleapi.CallOption) (*ProductsCustomBatchResponse, error) {
 23616  	gensupport.SetOptions(c.urlParams_, opts...)
 23617  	res, err := c.doRequest("json")
 23618  	if res != nil && res.StatusCode == http.StatusNotModified {
 23619  		if res.Body != nil {
 23620  			res.Body.Close()
 23621  		}
 23622  		return nil, &googleapi.Error{
 23623  			Code:   res.StatusCode,
 23624  			Header: res.Header,
 23625  		}
 23626  	}
 23627  	if err != nil {
 23628  		return nil, err
 23629  	}
 23630  	defer googleapi.CloseBody(res)
 23631  	if err := googleapi.CheckResponse(res); err != nil {
 23632  		return nil, err
 23633  	}
 23634  	ret := &ProductsCustomBatchResponse{
 23635  		ServerResponse: googleapi.ServerResponse{
 23636  			Header:         res.Header,
 23637  			HTTPStatusCode: res.StatusCode,
 23638  		},
 23639  	}
 23640  	target := &ret
 23641  	if err := gensupport.DecodeResponse(target, res); err != nil {
 23642  		return nil, err
 23643  	}
 23644  	return ret, nil
 23645  	// {
 23646  	//   "description": "Retrieves, inserts, and deletes multiple products in a single request.",
 23647  	//   "flatPath": "products/batch",
 23648  	//   "httpMethod": "POST",
 23649  	//   "id": "content.products.custombatch",
 23650  	//   "parameterOrder": [],
 23651  	//   "parameters": {
 23652  	//     "dryRun": {
 23653  	//       "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).",
 23654  	//       "location": "query",
 23655  	//       "type": "boolean"
 23656  	//     }
 23657  	//   },
 23658  	//   "path": "products/batch",
 23659  	//   "request": {
 23660  	//     "$ref": "ProductsCustomBatchRequest"
 23661  	//   },
 23662  	//   "response": {
 23663  	//     "$ref": "ProductsCustomBatchResponse"
 23664  	//   },
 23665  	//   "scopes": [
 23666  	//     "https://www.googleapis.com/auth/content"
 23667  	//   ]
 23668  	// }
 23669  
 23670  }
 23671  
 23672  // method id "content.products.delete":
 23673  
 23674  type ProductsDeleteCall struct {
 23675  	s          *APIService
 23676  	merchantId uint64
 23677  	productId  string
 23678  	urlParams_ gensupport.URLParams
 23679  	ctx_       context.Context
 23680  	header_    http.Header
 23681  }
 23682  
 23683  // Delete: Deletes a product from your Merchant Center account.
 23684  //
 23685  //   - merchantId: The ID of the account that contains the product. This
 23686  //     account cannot be a multi-client account.
 23687  //   - productId: The REST ID of the product.
 23688  func (r *ProductsService) Delete(merchantId uint64, productId string) *ProductsDeleteCall {
 23689  	c := &ProductsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 23690  	c.merchantId = merchantId
 23691  	c.productId = productId
 23692  	return c
 23693  }
 23694  
 23695  // DryRun sets the optional parameter "dryRun": Flag to simulate a
 23696  // request like in a live environment. If set to true, dry-run mode
 23697  // checks the validity of the request and returns errors (if any).
 23698  func (c *ProductsDeleteCall) DryRun(dryRun bool) *ProductsDeleteCall {
 23699  	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
 23700  	return c
 23701  }
 23702  
 23703  // Fields allows partial responses to be retrieved. See
 23704  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 23705  // for more information.
 23706  func (c *ProductsDeleteCall) Fields(s ...googleapi.Field) *ProductsDeleteCall {
 23707  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 23708  	return c
 23709  }
 23710  
 23711  // Context sets the context to be used in this call's Do method. Any
 23712  // pending HTTP request will be aborted if the provided context is
 23713  // canceled.
 23714  func (c *ProductsDeleteCall) Context(ctx context.Context) *ProductsDeleteCall {
 23715  	c.ctx_ = ctx
 23716  	return c
 23717  }
 23718  
 23719  // Header returns an http.Header that can be modified by the caller to
 23720  // add HTTP headers to the request.
 23721  func (c *ProductsDeleteCall) Header() http.Header {
 23722  	if c.header_ == nil {
 23723  		c.header_ = make(http.Header)
 23724  	}
 23725  	return c.header_
 23726  }
 23727  
 23728  func (c *ProductsDeleteCall) doRequest(alt string) (*http.Response, error) {
 23729  	reqHeaders := make(http.Header)
 23730  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 23731  	for k, v := range c.header_ {
 23732  		reqHeaders[k] = v
 23733  	}
 23734  	reqHeaders.Set("User-Agent", c.s.userAgent())
 23735  	var body io.Reader = nil
 23736  	c.urlParams_.Set("alt", alt)
 23737  	c.urlParams_.Set("prettyPrint", "false")
 23738  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products/{productId}")
 23739  	urls += "?" + c.urlParams_.Encode()
 23740  	req, err := http.NewRequest("DELETE", urls, body)
 23741  	if err != nil {
 23742  		return nil, err
 23743  	}
 23744  	req.Header = reqHeaders
 23745  	googleapi.Expand(req.URL, map[string]string{
 23746  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 23747  		"productId":  c.productId,
 23748  	})
 23749  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 23750  }
 23751  
 23752  // Do executes the "content.products.delete" call.
 23753  func (c *ProductsDeleteCall) Do(opts ...googleapi.CallOption) error {
 23754  	gensupport.SetOptions(c.urlParams_, opts...)
 23755  	res, err := c.doRequest("json")
 23756  	if err != nil {
 23757  		return err
 23758  	}
 23759  	defer googleapi.CloseBody(res)
 23760  	if err := googleapi.CheckResponse(res); err != nil {
 23761  		return err
 23762  	}
 23763  	return nil
 23764  	// {
 23765  	//   "description": "Deletes a product from your Merchant Center account.",
 23766  	//   "flatPath": "{merchantId}/products/{productId}",
 23767  	//   "httpMethod": "DELETE",
 23768  	//   "id": "content.products.delete",
 23769  	//   "parameterOrder": [
 23770  	//     "merchantId",
 23771  	//     "productId"
 23772  	//   ],
 23773  	//   "parameters": {
 23774  	//     "dryRun": {
 23775  	//       "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).",
 23776  	//       "location": "query",
 23777  	//       "type": "boolean"
 23778  	//     },
 23779  	//     "merchantId": {
 23780  	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
 23781  	//       "format": "uint64",
 23782  	//       "location": "path",
 23783  	//       "required": true,
 23784  	//       "type": "string"
 23785  	//     },
 23786  	//     "productId": {
 23787  	//       "description": "The REST ID of the product.",
 23788  	//       "location": "path",
 23789  	//       "required": true,
 23790  	//       "type": "string"
 23791  	//     }
 23792  	//   },
 23793  	//   "path": "{merchantId}/products/{productId}",
 23794  	//   "scopes": [
 23795  	//     "https://www.googleapis.com/auth/content"
 23796  	//   ]
 23797  	// }
 23798  
 23799  }
 23800  
 23801  // method id "content.products.get":
 23802  
 23803  type ProductsGetCall struct {
 23804  	s            *APIService
 23805  	merchantId   uint64
 23806  	productId    string
 23807  	urlParams_   gensupport.URLParams
 23808  	ifNoneMatch_ string
 23809  	ctx_         context.Context
 23810  	header_      http.Header
 23811  }
 23812  
 23813  // Get: Retrieves a product from your Merchant Center account.
 23814  //
 23815  //   - merchantId: The ID of the account that contains the product. This
 23816  //     account cannot be a multi-client account.
 23817  //   - productId: The REST ID of the product.
 23818  func (r *ProductsService) Get(merchantId uint64, productId string) *ProductsGetCall {
 23819  	c := &ProductsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 23820  	c.merchantId = merchantId
 23821  	c.productId = productId
 23822  	return c
 23823  }
 23824  
 23825  // Fields allows partial responses to be retrieved. See
 23826  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 23827  // for more information.
 23828  func (c *ProductsGetCall) Fields(s ...googleapi.Field) *ProductsGetCall {
 23829  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 23830  	return c
 23831  }
 23832  
 23833  // IfNoneMatch sets the optional parameter which makes the operation
 23834  // fail if the object's ETag matches the given value. This is useful for
 23835  // getting updates only after the object has changed since the last
 23836  // request. Use googleapi.IsNotModified to check whether the response
 23837  // error from Do is the result of In-None-Match.
 23838  func (c *ProductsGetCall) IfNoneMatch(entityTag string) *ProductsGetCall {
 23839  	c.ifNoneMatch_ = entityTag
 23840  	return c
 23841  }
 23842  
 23843  // Context sets the context to be used in this call's Do method. Any
 23844  // pending HTTP request will be aborted if the provided context is
 23845  // canceled.
 23846  func (c *ProductsGetCall) Context(ctx context.Context) *ProductsGetCall {
 23847  	c.ctx_ = ctx
 23848  	return c
 23849  }
 23850  
 23851  // Header returns an http.Header that can be modified by the caller to
 23852  // add HTTP headers to the request.
 23853  func (c *ProductsGetCall) Header() http.Header {
 23854  	if c.header_ == nil {
 23855  		c.header_ = make(http.Header)
 23856  	}
 23857  	return c.header_
 23858  }
 23859  
 23860  func (c *ProductsGetCall) doRequest(alt string) (*http.Response, error) {
 23861  	reqHeaders := make(http.Header)
 23862  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 23863  	for k, v := range c.header_ {
 23864  		reqHeaders[k] = v
 23865  	}
 23866  	reqHeaders.Set("User-Agent", c.s.userAgent())
 23867  	if c.ifNoneMatch_ != "" {
 23868  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 23869  	}
 23870  	var body io.Reader = nil
 23871  	c.urlParams_.Set("alt", alt)
 23872  	c.urlParams_.Set("prettyPrint", "false")
 23873  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products/{productId}")
 23874  	urls += "?" + c.urlParams_.Encode()
 23875  	req, err := http.NewRequest("GET", urls, body)
 23876  	if err != nil {
 23877  		return nil, err
 23878  	}
 23879  	req.Header = reqHeaders
 23880  	googleapi.Expand(req.URL, map[string]string{
 23881  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 23882  		"productId":  c.productId,
 23883  	})
 23884  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 23885  }
 23886  
 23887  // Do executes the "content.products.get" call.
 23888  // Exactly one of *Product or error will be non-nil. Any non-2xx status
 23889  // code is an error. Response headers are in either
 23890  // *Product.ServerResponse.Header or (if a response was returned at all)
 23891  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 23892  // check whether the returned error was because http.StatusNotModified
 23893  // was returned.
 23894  func (c *ProductsGetCall) Do(opts ...googleapi.CallOption) (*Product, error) {
 23895  	gensupport.SetOptions(c.urlParams_, opts...)
 23896  	res, err := c.doRequest("json")
 23897  	if res != nil && res.StatusCode == http.StatusNotModified {
 23898  		if res.Body != nil {
 23899  			res.Body.Close()
 23900  		}
 23901  		return nil, &googleapi.Error{
 23902  			Code:   res.StatusCode,
 23903  			Header: res.Header,
 23904  		}
 23905  	}
 23906  	if err != nil {
 23907  		return nil, err
 23908  	}
 23909  	defer googleapi.CloseBody(res)
 23910  	if err := googleapi.CheckResponse(res); err != nil {
 23911  		return nil, err
 23912  	}
 23913  	ret := &Product{
 23914  		ServerResponse: googleapi.ServerResponse{
 23915  			Header:         res.Header,
 23916  			HTTPStatusCode: res.StatusCode,
 23917  		},
 23918  	}
 23919  	target := &ret
 23920  	if err := gensupport.DecodeResponse(target, res); err != nil {
 23921  		return nil, err
 23922  	}
 23923  	return ret, nil
 23924  	// {
 23925  	//   "description": "Retrieves a product from your Merchant Center account.",
 23926  	//   "flatPath": "{merchantId}/products/{productId}",
 23927  	//   "httpMethod": "GET",
 23928  	//   "id": "content.products.get",
 23929  	//   "parameterOrder": [
 23930  	//     "merchantId",
 23931  	//     "productId"
 23932  	//   ],
 23933  	//   "parameters": {
 23934  	//     "merchantId": {
 23935  	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
 23936  	//       "format": "uint64",
 23937  	//       "location": "path",
 23938  	//       "required": true,
 23939  	//       "type": "string"
 23940  	//     },
 23941  	//     "productId": {
 23942  	//       "description": "The REST ID of the product.",
 23943  	//       "location": "path",
 23944  	//       "required": true,
 23945  	//       "type": "string"
 23946  	//     }
 23947  	//   },
 23948  	//   "path": "{merchantId}/products/{productId}",
 23949  	//   "response": {
 23950  	//     "$ref": "Product"
 23951  	//   },
 23952  	//   "scopes": [
 23953  	//     "https://www.googleapis.com/auth/content"
 23954  	//   ]
 23955  	// }
 23956  
 23957  }
 23958  
 23959  // method id "content.products.insert":
 23960  
 23961  type ProductsInsertCall struct {
 23962  	s          *APIService
 23963  	merchantId uint64
 23964  	product    *Product
 23965  	urlParams_ gensupport.URLParams
 23966  	ctx_       context.Context
 23967  	header_    http.Header
 23968  }
 23969  
 23970  // Insert: Uploads a product to your Merchant Center account. If an item
 23971  // with the same channel, contentLanguage, offerId, and targetCountry
 23972  // already exists, this method updates that entry.
 23973  //
 23974  //   - merchantId: The ID of the account that contains the product. This
 23975  //     account cannot be a multi-client account.
 23976  func (r *ProductsService) Insert(merchantId uint64, product *Product) *ProductsInsertCall {
 23977  	c := &ProductsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 23978  	c.merchantId = merchantId
 23979  	c.product = product
 23980  	return c
 23981  }
 23982  
 23983  // DryRun sets the optional parameter "dryRun": Flag to simulate a
 23984  // request like in a live environment. If set to true, dry-run mode
 23985  // checks the validity of the request and returns errors (if any).
 23986  func (c *ProductsInsertCall) DryRun(dryRun bool) *ProductsInsertCall {
 23987  	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
 23988  	return c
 23989  }
 23990  
 23991  // Fields allows partial responses to be retrieved. See
 23992  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 23993  // for more information.
 23994  func (c *ProductsInsertCall) Fields(s ...googleapi.Field) *ProductsInsertCall {
 23995  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 23996  	return c
 23997  }
 23998  
 23999  // Context sets the context to be used in this call's Do method. Any
 24000  // pending HTTP request will be aborted if the provided context is
 24001  // canceled.
 24002  func (c *ProductsInsertCall) Context(ctx context.Context) *ProductsInsertCall {
 24003  	c.ctx_ = ctx
 24004  	return c
 24005  }
 24006  
 24007  // Header returns an http.Header that can be modified by the caller to
 24008  // add HTTP headers to the request.
 24009  func (c *ProductsInsertCall) Header() http.Header {
 24010  	if c.header_ == nil {
 24011  		c.header_ = make(http.Header)
 24012  	}
 24013  	return c.header_
 24014  }
 24015  
 24016  func (c *ProductsInsertCall) doRequest(alt string) (*http.Response, error) {
 24017  	reqHeaders := make(http.Header)
 24018  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 24019  	for k, v := range c.header_ {
 24020  		reqHeaders[k] = v
 24021  	}
 24022  	reqHeaders.Set("User-Agent", c.s.userAgent())
 24023  	var body io.Reader = nil
 24024  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.product)
 24025  	if err != nil {
 24026  		return nil, err
 24027  	}
 24028  	reqHeaders.Set("Content-Type", "application/json")
 24029  	c.urlParams_.Set("alt", alt)
 24030  	c.urlParams_.Set("prettyPrint", "false")
 24031  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products")
 24032  	urls += "?" + c.urlParams_.Encode()
 24033  	req, err := http.NewRequest("POST", urls, body)
 24034  	if err != nil {
 24035  		return nil, err
 24036  	}
 24037  	req.Header = reqHeaders
 24038  	googleapi.Expand(req.URL, map[string]string{
 24039  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 24040  	})
 24041  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 24042  }
 24043  
 24044  // Do executes the "content.products.insert" call.
 24045  // Exactly one of *Product or error will be non-nil. Any non-2xx status
 24046  // code is an error. Response headers are in either
 24047  // *Product.ServerResponse.Header or (if a response was returned at all)
 24048  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 24049  // check whether the returned error was because http.StatusNotModified
 24050  // was returned.
 24051  func (c *ProductsInsertCall) Do(opts ...googleapi.CallOption) (*Product, error) {
 24052  	gensupport.SetOptions(c.urlParams_, opts...)
 24053  	res, err := c.doRequest("json")
 24054  	if res != nil && res.StatusCode == http.StatusNotModified {
 24055  		if res.Body != nil {
 24056  			res.Body.Close()
 24057  		}
 24058  		return nil, &googleapi.Error{
 24059  			Code:   res.StatusCode,
 24060  			Header: res.Header,
 24061  		}
 24062  	}
 24063  	if err != nil {
 24064  		return nil, err
 24065  	}
 24066  	defer googleapi.CloseBody(res)
 24067  	if err := googleapi.CheckResponse(res); err != nil {
 24068  		return nil, err
 24069  	}
 24070  	ret := &Product{
 24071  		ServerResponse: googleapi.ServerResponse{
 24072  			Header:         res.Header,
 24073  			HTTPStatusCode: res.StatusCode,
 24074  		},
 24075  	}
 24076  	target := &ret
 24077  	if err := gensupport.DecodeResponse(target, res); err != nil {
 24078  		return nil, err
 24079  	}
 24080  	return ret, nil
 24081  	// {
 24082  	//   "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.",
 24083  	//   "flatPath": "{merchantId}/products",
 24084  	//   "httpMethod": "POST",
 24085  	//   "id": "content.products.insert",
 24086  	//   "parameterOrder": [
 24087  	//     "merchantId"
 24088  	//   ],
 24089  	//   "parameters": {
 24090  	//     "dryRun": {
 24091  	//       "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).",
 24092  	//       "location": "query",
 24093  	//       "type": "boolean"
 24094  	//     },
 24095  	//     "merchantId": {
 24096  	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
 24097  	//       "format": "uint64",
 24098  	//       "location": "path",
 24099  	//       "required": true,
 24100  	//       "type": "string"
 24101  	//     }
 24102  	//   },
 24103  	//   "path": "{merchantId}/products",
 24104  	//   "request": {
 24105  	//     "$ref": "Product"
 24106  	//   },
 24107  	//   "response": {
 24108  	//     "$ref": "Product"
 24109  	//   },
 24110  	//   "scopes": [
 24111  	//     "https://www.googleapis.com/auth/content"
 24112  	//   ]
 24113  	// }
 24114  
 24115  }
 24116  
 24117  // method id "content.products.list":
 24118  
 24119  type ProductsListCall struct {
 24120  	s            *APIService
 24121  	merchantId   uint64
 24122  	urlParams_   gensupport.URLParams
 24123  	ifNoneMatch_ string
 24124  	ctx_         context.Context
 24125  	header_      http.Header
 24126  }
 24127  
 24128  // List: Lists the products in your Merchant Center account. The
 24129  // response might contain fewer items than specified by maxResults. Rely
 24130  // on nextPageToken to determine if there are more items to be
 24131  // requested.
 24132  //
 24133  //   - merchantId: The ID of the account that contains the products. This
 24134  //     account cannot be a multi-client account.
 24135  func (r *ProductsService) List(merchantId uint64) *ProductsListCall {
 24136  	c := &ProductsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 24137  	c.merchantId = merchantId
 24138  	return c
 24139  }
 24140  
 24141  // IncludeInvalidInsertedItems sets the optional parameter
 24142  // "includeInvalidInsertedItems": Flag to include the invalid inserted
 24143  // items in the result of the list request. By default the invalid items
 24144  // are not shown (the default value is false).
 24145  func (c *ProductsListCall) IncludeInvalidInsertedItems(includeInvalidInsertedItems bool) *ProductsListCall {
 24146  	c.urlParams_.Set("includeInvalidInsertedItems", fmt.Sprint(includeInvalidInsertedItems))
 24147  	return c
 24148  }
 24149  
 24150  // MaxResults sets the optional parameter "maxResults": The maximum
 24151  // number of products to return in the response, used for paging.
 24152  func (c *ProductsListCall) MaxResults(maxResults int64) *ProductsListCall {
 24153  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 24154  	return c
 24155  }
 24156  
 24157  // PageToken sets the optional parameter "pageToken": The token returned
 24158  // by the previous request.
 24159  func (c *ProductsListCall) PageToken(pageToken string) *ProductsListCall {
 24160  	c.urlParams_.Set("pageToken", pageToken)
 24161  	return c
 24162  }
 24163  
 24164  // Fields allows partial responses to be retrieved. See
 24165  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 24166  // for more information.
 24167  func (c *ProductsListCall) Fields(s ...googleapi.Field) *ProductsListCall {
 24168  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 24169  	return c
 24170  }
 24171  
 24172  // IfNoneMatch sets the optional parameter which makes the operation
 24173  // fail if the object's ETag matches the given value. This is useful for
 24174  // getting updates only after the object has changed since the last
 24175  // request. Use googleapi.IsNotModified to check whether the response
 24176  // error from Do is the result of In-None-Match.
 24177  func (c *ProductsListCall) IfNoneMatch(entityTag string) *ProductsListCall {
 24178  	c.ifNoneMatch_ = entityTag
 24179  	return c
 24180  }
 24181  
 24182  // Context sets the context to be used in this call's Do method. Any
 24183  // pending HTTP request will be aborted if the provided context is
 24184  // canceled.
 24185  func (c *ProductsListCall) Context(ctx context.Context) *ProductsListCall {
 24186  	c.ctx_ = ctx
 24187  	return c
 24188  }
 24189  
 24190  // Header returns an http.Header that can be modified by the caller to
 24191  // add HTTP headers to the request.
 24192  func (c *ProductsListCall) Header() http.Header {
 24193  	if c.header_ == nil {
 24194  		c.header_ = make(http.Header)
 24195  	}
 24196  	return c.header_
 24197  }
 24198  
 24199  func (c *ProductsListCall) doRequest(alt string) (*http.Response, error) {
 24200  	reqHeaders := make(http.Header)
 24201  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 24202  	for k, v := range c.header_ {
 24203  		reqHeaders[k] = v
 24204  	}
 24205  	reqHeaders.Set("User-Agent", c.s.userAgent())
 24206  	if c.ifNoneMatch_ != "" {
 24207  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 24208  	}
 24209  	var body io.Reader = nil
 24210  	c.urlParams_.Set("alt", alt)
 24211  	c.urlParams_.Set("prettyPrint", "false")
 24212  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/products")
 24213  	urls += "?" + c.urlParams_.Encode()
 24214  	req, err := http.NewRequest("GET", urls, body)
 24215  	if err != nil {
 24216  		return nil, err
 24217  	}
 24218  	req.Header = reqHeaders
 24219  	googleapi.Expand(req.URL, map[string]string{
 24220  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 24221  	})
 24222  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 24223  }
 24224  
 24225  // Do executes the "content.products.list" call.
 24226  // Exactly one of *ProductsListResponse or error will be non-nil. Any
 24227  // non-2xx status code is an error. Response headers are in either
 24228  // *ProductsListResponse.ServerResponse.Header or (if a response was
 24229  // returned at all) in error.(*googleapi.Error).Header. Use
 24230  // googleapi.IsNotModified to check whether the returned error was
 24231  // because http.StatusNotModified was returned.
 24232  func (c *ProductsListCall) Do(opts ...googleapi.CallOption) (*ProductsListResponse, error) {
 24233  	gensupport.SetOptions(c.urlParams_, opts...)
 24234  	res, err := c.doRequest("json")
 24235  	if res != nil && res.StatusCode == http.StatusNotModified {
 24236  		if res.Body != nil {
 24237  			res.Body.Close()
 24238  		}
 24239  		return nil, &googleapi.Error{
 24240  			Code:   res.StatusCode,
 24241  			Header: res.Header,
 24242  		}
 24243  	}
 24244  	if err != nil {
 24245  		return nil, err
 24246  	}
 24247  	defer googleapi.CloseBody(res)
 24248  	if err := googleapi.CheckResponse(res); err != nil {
 24249  		return nil, err
 24250  	}
 24251  	ret := &ProductsListResponse{
 24252  		ServerResponse: googleapi.ServerResponse{
 24253  			Header:         res.Header,
 24254  			HTTPStatusCode: res.StatusCode,
 24255  		},
 24256  	}
 24257  	target := &ret
 24258  	if err := gensupport.DecodeResponse(target, res); err != nil {
 24259  		return nil, err
 24260  	}
 24261  	return ret, nil
 24262  	// {
 24263  	//   "description": "Lists the products in your Merchant Center account. The response might contain fewer items than specified by maxResults. Rely on nextPageToken to determine if there are more items to be requested.",
 24264  	//   "flatPath": "{merchantId}/products",
 24265  	//   "httpMethod": "GET",
 24266  	//   "id": "content.products.list",
 24267  	//   "parameterOrder": [
 24268  	//     "merchantId"
 24269  	//   ],
 24270  	//   "parameters": {
 24271  	//     "includeInvalidInsertedItems": {
 24272  	//       "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).",
 24273  	//       "location": "query",
 24274  	//       "type": "boolean"
 24275  	//     },
 24276  	//     "maxResults": {
 24277  	//       "description": "The maximum number of products to return in the response, used for paging.",
 24278  	//       "format": "uint32",
 24279  	//       "location": "query",
 24280  	//       "type": "integer"
 24281  	//     },
 24282  	//     "merchantId": {
 24283  	//       "description": "The ID of the account that contains the products. This account cannot be a multi-client account.",
 24284  	//       "format": "uint64",
 24285  	//       "location": "path",
 24286  	//       "required": true,
 24287  	//       "type": "string"
 24288  	//     },
 24289  	//     "pageToken": {
 24290  	//       "description": "The token returned by the previous request.",
 24291  	//       "location": "query",
 24292  	//       "type": "string"
 24293  	//     }
 24294  	//   },
 24295  	//   "path": "{merchantId}/products",
 24296  	//   "response": {
 24297  	//     "$ref": "ProductsListResponse"
 24298  	//   },
 24299  	//   "scopes": [
 24300  	//     "https://www.googleapis.com/auth/content"
 24301  	//   ]
 24302  	// }
 24303  
 24304  }
 24305  
 24306  // Pages invokes f for each page of results.
 24307  // A non-nil error returned from f will halt the iteration.
 24308  // The provided context supersedes any context provided to the Context method.
 24309  func (c *ProductsListCall) Pages(ctx context.Context, f func(*ProductsListResponse) error) error {
 24310  	c.ctx_ = ctx
 24311  	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
 24312  	for {
 24313  		x, err := c.Do()
 24314  		if err != nil {
 24315  			return err
 24316  		}
 24317  		if err := f(x); err != nil {
 24318  			return err
 24319  		}
 24320  		if x.NextPageToken == "" {
 24321  			return nil
 24322  		}
 24323  		c.PageToken(x.NextPageToken)
 24324  	}
 24325  }
 24326  
 24327  // method id "content.productstatuses.custombatch":
 24328  
 24329  type ProductstatusesCustombatchCall struct {
 24330  	s                                 *APIService
 24331  	productstatusescustombatchrequest *ProductstatusesCustomBatchRequest
 24332  	urlParams_                        gensupport.URLParams
 24333  	ctx_                              context.Context
 24334  	header_                           http.Header
 24335  }
 24336  
 24337  // Custombatch: Gets the statuses of multiple products in a single
 24338  // request.
 24339  func (r *ProductstatusesService) Custombatch(productstatusescustombatchrequest *ProductstatusesCustomBatchRequest) *ProductstatusesCustombatchCall {
 24340  	c := &ProductstatusesCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 24341  	c.productstatusescustombatchrequest = productstatusescustombatchrequest
 24342  	return c
 24343  }
 24344  
 24345  // IncludeAttributes sets the optional parameter "includeAttributes":
 24346  // Flag to include full product data in the results of this request. The
 24347  // default value is false.
 24348  func (c *ProductstatusesCustombatchCall) IncludeAttributes(includeAttributes bool) *ProductstatusesCustombatchCall {
 24349  	c.urlParams_.Set("includeAttributes", fmt.Sprint(includeAttributes))
 24350  	return c
 24351  }
 24352  
 24353  // Fields allows partial responses to be retrieved. See
 24354  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 24355  // for more information.
 24356  func (c *ProductstatusesCustombatchCall) Fields(s ...googleapi.Field) *ProductstatusesCustombatchCall {
 24357  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 24358  	return c
 24359  }
 24360  
 24361  // Context sets the context to be used in this call's Do method. Any
 24362  // pending HTTP request will be aborted if the provided context is
 24363  // canceled.
 24364  func (c *ProductstatusesCustombatchCall) Context(ctx context.Context) *ProductstatusesCustombatchCall {
 24365  	c.ctx_ = ctx
 24366  	return c
 24367  }
 24368  
 24369  // Header returns an http.Header that can be modified by the caller to
 24370  // add HTTP headers to the request.
 24371  func (c *ProductstatusesCustombatchCall) Header() http.Header {
 24372  	if c.header_ == nil {
 24373  		c.header_ = make(http.Header)
 24374  	}
 24375  	return c.header_
 24376  }
 24377  
 24378  func (c *ProductstatusesCustombatchCall) doRequest(alt string) (*http.Response, error) {
 24379  	reqHeaders := make(http.Header)
 24380  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 24381  	for k, v := range c.header_ {
 24382  		reqHeaders[k] = v
 24383  	}
 24384  	reqHeaders.Set("User-Agent", c.s.userAgent())
 24385  	var body io.Reader = nil
 24386  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.productstatusescustombatchrequest)
 24387  	if err != nil {
 24388  		return nil, err
 24389  	}
 24390  	reqHeaders.Set("Content-Type", "application/json")
 24391  	c.urlParams_.Set("alt", alt)
 24392  	c.urlParams_.Set("prettyPrint", "false")
 24393  	urls := googleapi.ResolveRelative(c.s.BasePath, "productstatuses/batch")
 24394  	urls += "?" + c.urlParams_.Encode()
 24395  	req, err := http.NewRequest("POST", urls, body)
 24396  	if err != nil {
 24397  		return nil, err
 24398  	}
 24399  	req.Header = reqHeaders
 24400  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 24401  }
 24402  
 24403  // Do executes the "content.productstatuses.custombatch" call.
 24404  // Exactly one of *ProductstatusesCustomBatchResponse or error will be
 24405  // non-nil. Any non-2xx status code is an error. Response headers are in
 24406  // either *ProductstatusesCustomBatchResponse.ServerResponse.Header or
 24407  // (if a response was returned at all) in
 24408  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 24409  // whether the returned error was because http.StatusNotModified was
 24410  // returned.
 24411  func (c *ProductstatusesCustombatchCall) Do(opts ...googleapi.CallOption) (*ProductstatusesCustomBatchResponse, error) {
 24412  	gensupport.SetOptions(c.urlParams_, opts...)
 24413  	res, err := c.doRequest("json")
 24414  	if res != nil && res.StatusCode == http.StatusNotModified {
 24415  		if res.Body != nil {
 24416  			res.Body.Close()
 24417  		}
 24418  		return nil, &googleapi.Error{
 24419  			Code:   res.StatusCode,
 24420  			Header: res.Header,
 24421  		}
 24422  	}
 24423  	if err != nil {
 24424  		return nil, err
 24425  	}
 24426  	defer googleapi.CloseBody(res)
 24427  	if err := googleapi.CheckResponse(res); err != nil {
 24428  		return nil, err
 24429  	}
 24430  	ret := &ProductstatusesCustomBatchResponse{
 24431  		ServerResponse: googleapi.ServerResponse{
 24432  			Header:         res.Header,
 24433  			HTTPStatusCode: res.StatusCode,
 24434  		},
 24435  	}
 24436  	target := &ret
 24437  	if err := gensupport.DecodeResponse(target, res); err != nil {
 24438  		return nil, err
 24439  	}
 24440  	return ret, nil
 24441  	// {
 24442  	//   "description": "Gets the statuses of multiple products in a single request.",
 24443  	//   "flatPath": "productstatuses/batch",
 24444  	//   "httpMethod": "POST",
 24445  	//   "id": "content.productstatuses.custombatch",
 24446  	//   "parameterOrder": [],
 24447  	//   "parameters": {
 24448  	//     "includeAttributes": {
 24449  	//       "description": "Flag to include full product data in the results of this request. The default value is false.",
 24450  	//       "location": "query",
 24451  	//       "type": "boolean"
 24452  	//     }
 24453  	//   },
 24454  	//   "path": "productstatuses/batch",
 24455  	//   "request": {
 24456  	//     "$ref": "ProductstatusesCustomBatchRequest"
 24457  	//   },
 24458  	//   "response": {
 24459  	//     "$ref": "ProductstatusesCustomBatchResponse"
 24460  	//   },
 24461  	//   "scopes": [
 24462  	//     "https://www.googleapis.com/auth/content"
 24463  	//   ]
 24464  	// }
 24465  
 24466  }
 24467  
 24468  // method id "content.productstatuses.get":
 24469  
 24470  type ProductstatusesGetCall struct {
 24471  	s            *APIService
 24472  	merchantId   uint64
 24473  	productId    string
 24474  	urlParams_   gensupport.URLParams
 24475  	ifNoneMatch_ string
 24476  	ctx_         context.Context
 24477  	header_      http.Header
 24478  }
 24479  
 24480  // Get: Gets the status of a product from your Merchant Center account.
 24481  //
 24482  //   - merchantId: The ID of the account that contains the product. This
 24483  //     account cannot be a multi-client account.
 24484  //   - productId: The REST ID of the product.
 24485  func (r *ProductstatusesService) Get(merchantId uint64, productId string) *ProductstatusesGetCall {
 24486  	c := &ProductstatusesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 24487  	c.merchantId = merchantId
 24488  	c.productId = productId
 24489  	return c
 24490  }
 24491  
 24492  // Destinations sets the optional parameter "destinations": If set, only
 24493  // issues for the specified destinations are returned, otherwise only
 24494  // issues for the Shopping destination.
 24495  func (c *ProductstatusesGetCall) Destinations(destinations ...string) *ProductstatusesGetCall {
 24496  	c.urlParams_.SetMulti("destinations", append([]string{}, destinations...))
 24497  	return c
 24498  }
 24499  
 24500  // IncludeAttributes sets the optional parameter "includeAttributes":
 24501  // Flag to include full product data in the result of this get request.
 24502  // The default value is false.
 24503  func (c *ProductstatusesGetCall) IncludeAttributes(includeAttributes bool) *ProductstatusesGetCall {
 24504  	c.urlParams_.Set("includeAttributes", fmt.Sprint(includeAttributes))
 24505  	return c
 24506  }
 24507  
 24508  // Fields allows partial responses to be retrieved. See
 24509  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 24510  // for more information.
 24511  func (c *ProductstatusesGetCall) Fields(s ...googleapi.Field) *ProductstatusesGetCall {
 24512  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 24513  	return c
 24514  }
 24515  
 24516  // IfNoneMatch sets the optional parameter which makes the operation
 24517  // fail if the object's ETag matches the given value. This is useful for
 24518  // getting updates only after the object has changed since the last
 24519  // request. Use googleapi.IsNotModified to check whether the response
 24520  // error from Do is the result of In-None-Match.
 24521  func (c *ProductstatusesGetCall) IfNoneMatch(entityTag string) *ProductstatusesGetCall {
 24522  	c.ifNoneMatch_ = entityTag
 24523  	return c
 24524  }
 24525  
 24526  // Context sets the context to be used in this call's Do method. Any
 24527  // pending HTTP request will be aborted if the provided context is
 24528  // canceled.
 24529  func (c *ProductstatusesGetCall) Context(ctx context.Context) *ProductstatusesGetCall {
 24530  	c.ctx_ = ctx
 24531  	return c
 24532  }
 24533  
 24534  // Header returns an http.Header that can be modified by the caller to
 24535  // add HTTP headers to the request.
 24536  func (c *ProductstatusesGetCall) Header() http.Header {
 24537  	if c.header_ == nil {
 24538  		c.header_ = make(http.Header)
 24539  	}
 24540  	return c.header_
 24541  }
 24542  
 24543  func (c *ProductstatusesGetCall) doRequest(alt string) (*http.Response, error) {
 24544  	reqHeaders := make(http.Header)
 24545  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 24546  	for k, v := range c.header_ {
 24547  		reqHeaders[k] = v
 24548  	}
 24549  	reqHeaders.Set("User-Agent", c.s.userAgent())
 24550  	if c.ifNoneMatch_ != "" {
 24551  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 24552  	}
 24553  	var body io.Reader = nil
 24554  	c.urlParams_.Set("alt", alt)
 24555  	c.urlParams_.Set("prettyPrint", "false")
 24556  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/productstatuses/{productId}")
 24557  	urls += "?" + c.urlParams_.Encode()
 24558  	req, err := http.NewRequest("GET", urls, body)
 24559  	if err != nil {
 24560  		return nil, err
 24561  	}
 24562  	req.Header = reqHeaders
 24563  	googleapi.Expand(req.URL, map[string]string{
 24564  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 24565  		"productId":  c.productId,
 24566  	})
 24567  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 24568  }
 24569  
 24570  // Do executes the "content.productstatuses.get" call.
 24571  // Exactly one of *ProductStatus or error will be non-nil. Any non-2xx
 24572  // status code is an error. Response headers are in either
 24573  // *ProductStatus.ServerResponse.Header or (if a response was returned
 24574  // at all) in error.(*googleapi.Error).Header. Use
 24575  // googleapi.IsNotModified to check whether the returned error was
 24576  // because http.StatusNotModified was returned.
 24577  func (c *ProductstatusesGetCall) Do(opts ...googleapi.CallOption) (*ProductStatus, error) {
 24578  	gensupport.SetOptions(c.urlParams_, opts...)
 24579  	res, err := c.doRequest("json")
 24580  	if res != nil && res.StatusCode == http.StatusNotModified {
 24581  		if res.Body != nil {
 24582  			res.Body.Close()
 24583  		}
 24584  		return nil, &googleapi.Error{
 24585  			Code:   res.StatusCode,
 24586  			Header: res.Header,
 24587  		}
 24588  	}
 24589  	if err != nil {
 24590  		return nil, err
 24591  	}
 24592  	defer googleapi.CloseBody(res)
 24593  	if err := googleapi.CheckResponse(res); err != nil {
 24594  		return nil, err
 24595  	}
 24596  	ret := &ProductStatus{
 24597  		ServerResponse: googleapi.ServerResponse{
 24598  			Header:         res.Header,
 24599  			HTTPStatusCode: res.StatusCode,
 24600  		},
 24601  	}
 24602  	target := &ret
 24603  	if err := gensupport.DecodeResponse(target, res); err != nil {
 24604  		return nil, err
 24605  	}
 24606  	return ret, nil
 24607  	// {
 24608  	//   "description": "Gets the status of a product from your Merchant Center account.",
 24609  	//   "flatPath": "{merchantId}/productstatuses/{productId}",
 24610  	//   "httpMethod": "GET",
 24611  	//   "id": "content.productstatuses.get",
 24612  	//   "parameterOrder": [
 24613  	//     "merchantId",
 24614  	//     "productId"
 24615  	//   ],
 24616  	//   "parameters": {
 24617  	//     "destinations": {
 24618  	//       "description": "If set, only issues for the specified destinations are returned, otherwise only issues for the Shopping destination.",
 24619  	//       "location": "query",
 24620  	//       "repeated": true,
 24621  	//       "type": "string"
 24622  	//     },
 24623  	//     "includeAttributes": {
 24624  	//       "description": "Flag to include full product data in the result of this get request. The default value is false.",
 24625  	//       "location": "query",
 24626  	//       "type": "boolean"
 24627  	//     },
 24628  	//     "merchantId": {
 24629  	//       "description": "The ID of the account that contains the product. This account cannot be a multi-client account.",
 24630  	//       "format": "uint64",
 24631  	//       "location": "path",
 24632  	//       "required": true,
 24633  	//       "type": "string"
 24634  	//     },
 24635  	//     "productId": {
 24636  	//       "description": "The REST ID of the product.",
 24637  	//       "location": "path",
 24638  	//       "required": true,
 24639  	//       "type": "string"
 24640  	//     }
 24641  	//   },
 24642  	//   "path": "{merchantId}/productstatuses/{productId}",
 24643  	//   "response": {
 24644  	//     "$ref": "ProductStatus"
 24645  	//   },
 24646  	//   "scopes": [
 24647  	//     "https://www.googleapis.com/auth/content"
 24648  	//   ]
 24649  	// }
 24650  
 24651  }
 24652  
 24653  // method id "content.productstatuses.list":
 24654  
 24655  type ProductstatusesListCall struct {
 24656  	s            *APIService
 24657  	merchantId   uint64
 24658  	urlParams_   gensupport.URLParams
 24659  	ifNoneMatch_ string
 24660  	ctx_         context.Context
 24661  	header_      http.Header
 24662  }
 24663  
 24664  // List: Lists the statuses of the products in your Merchant Center
 24665  // account.
 24666  //
 24667  //   - merchantId: The ID of the account that contains the products. This
 24668  //     account cannot be a multi-client account.
 24669  func (r *ProductstatusesService) List(merchantId uint64) *ProductstatusesListCall {
 24670  	c := &ProductstatusesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 24671  	c.merchantId = merchantId
 24672  	return c
 24673  }
 24674  
 24675  // Destinations sets the optional parameter "destinations": If set, only
 24676  // issues for the specified destinations are returned, otherwise only
 24677  // issues for the Shopping destination.
 24678  func (c *ProductstatusesListCall) Destinations(destinations ...string) *ProductstatusesListCall {
 24679  	c.urlParams_.SetMulti("destinations", append([]string{}, destinations...))
 24680  	return c
 24681  }
 24682  
 24683  // IncludeAttributes sets the optional parameter "includeAttributes":
 24684  // Flag to include full product data in the results of the list request.
 24685  // The default value is false.
 24686  func (c *ProductstatusesListCall) IncludeAttributes(includeAttributes bool) *ProductstatusesListCall {
 24687  	c.urlParams_.Set("includeAttributes", fmt.Sprint(includeAttributes))
 24688  	return c
 24689  }
 24690  
 24691  // IncludeInvalidInsertedItems sets the optional parameter
 24692  // "includeInvalidInsertedItems": Flag to include the invalid inserted
 24693  // items in the result of the list request. By default the invalid items
 24694  // are not shown (the default value is false).
 24695  func (c *ProductstatusesListCall) IncludeInvalidInsertedItems(includeInvalidInsertedItems bool) *ProductstatusesListCall {
 24696  	c.urlParams_.Set("includeInvalidInsertedItems", fmt.Sprint(includeInvalidInsertedItems))
 24697  	return c
 24698  }
 24699  
 24700  // MaxResults sets the optional parameter "maxResults": The maximum
 24701  // number of product statuses to return in the response, used for
 24702  // paging.
 24703  func (c *ProductstatusesListCall) MaxResults(maxResults int64) *ProductstatusesListCall {
 24704  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 24705  	return c
 24706  }
 24707  
 24708  // PageToken sets the optional parameter "pageToken": The token returned
 24709  // by the previous request.
 24710  func (c *ProductstatusesListCall) PageToken(pageToken string) *ProductstatusesListCall {
 24711  	c.urlParams_.Set("pageToken", pageToken)
 24712  	return c
 24713  }
 24714  
 24715  // Fields allows partial responses to be retrieved. See
 24716  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 24717  // for more information.
 24718  func (c *ProductstatusesListCall) Fields(s ...googleapi.Field) *ProductstatusesListCall {
 24719  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 24720  	return c
 24721  }
 24722  
 24723  // IfNoneMatch sets the optional parameter which makes the operation
 24724  // fail if the object's ETag matches the given value. This is useful for
 24725  // getting updates only after the object has changed since the last
 24726  // request. Use googleapi.IsNotModified to check whether the response
 24727  // error from Do is the result of In-None-Match.
 24728  func (c *ProductstatusesListCall) IfNoneMatch(entityTag string) *ProductstatusesListCall {
 24729  	c.ifNoneMatch_ = entityTag
 24730  	return c
 24731  }
 24732  
 24733  // Context sets the context to be used in this call's Do method. Any
 24734  // pending HTTP request will be aborted if the provided context is
 24735  // canceled.
 24736  func (c *ProductstatusesListCall) Context(ctx context.Context) *ProductstatusesListCall {
 24737  	c.ctx_ = ctx
 24738  	return c
 24739  }
 24740  
 24741  // Header returns an http.Header that can be modified by the caller to
 24742  // add HTTP headers to the request.
 24743  func (c *ProductstatusesListCall) Header() http.Header {
 24744  	if c.header_ == nil {
 24745  		c.header_ = make(http.Header)
 24746  	}
 24747  	return c.header_
 24748  }
 24749  
 24750  func (c *ProductstatusesListCall) doRequest(alt string) (*http.Response, error) {
 24751  	reqHeaders := make(http.Header)
 24752  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 24753  	for k, v := range c.header_ {
 24754  		reqHeaders[k] = v
 24755  	}
 24756  	reqHeaders.Set("User-Agent", c.s.userAgent())
 24757  	if c.ifNoneMatch_ != "" {
 24758  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 24759  	}
 24760  	var body io.Reader = nil
 24761  	c.urlParams_.Set("alt", alt)
 24762  	c.urlParams_.Set("prettyPrint", "false")
 24763  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/productstatuses")
 24764  	urls += "?" + c.urlParams_.Encode()
 24765  	req, err := http.NewRequest("GET", urls, body)
 24766  	if err != nil {
 24767  		return nil, err
 24768  	}
 24769  	req.Header = reqHeaders
 24770  	googleapi.Expand(req.URL, map[string]string{
 24771  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 24772  	})
 24773  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 24774  }
 24775  
 24776  // Do executes the "content.productstatuses.list" call.
 24777  // Exactly one of *ProductstatusesListResponse or error will be non-nil.
 24778  // Any non-2xx status code is an error. Response headers are in either
 24779  // *ProductstatusesListResponse.ServerResponse.Header or (if a response
 24780  // was returned at all) in error.(*googleapi.Error).Header. Use
 24781  // googleapi.IsNotModified to check whether the returned error was
 24782  // because http.StatusNotModified was returned.
 24783  func (c *ProductstatusesListCall) Do(opts ...googleapi.CallOption) (*ProductstatusesListResponse, error) {
 24784  	gensupport.SetOptions(c.urlParams_, opts...)
 24785  	res, err := c.doRequest("json")
 24786  	if res != nil && res.StatusCode == http.StatusNotModified {
 24787  		if res.Body != nil {
 24788  			res.Body.Close()
 24789  		}
 24790  		return nil, &googleapi.Error{
 24791  			Code:   res.StatusCode,
 24792  			Header: res.Header,
 24793  		}
 24794  	}
 24795  	if err != nil {
 24796  		return nil, err
 24797  	}
 24798  	defer googleapi.CloseBody(res)
 24799  	if err := googleapi.CheckResponse(res); err != nil {
 24800  		return nil, err
 24801  	}
 24802  	ret := &ProductstatusesListResponse{
 24803  		ServerResponse: googleapi.ServerResponse{
 24804  			Header:         res.Header,
 24805  			HTTPStatusCode: res.StatusCode,
 24806  		},
 24807  	}
 24808  	target := &ret
 24809  	if err := gensupport.DecodeResponse(target, res); err != nil {
 24810  		return nil, err
 24811  	}
 24812  	return ret, nil
 24813  	// {
 24814  	//   "description": "Lists the statuses of the products in your Merchant Center account.",
 24815  	//   "flatPath": "{merchantId}/productstatuses",
 24816  	//   "httpMethod": "GET",
 24817  	//   "id": "content.productstatuses.list",
 24818  	//   "parameterOrder": [
 24819  	//     "merchantId"
 24820  	//   ],
 24821  	//   "parameters": {
 24822  	//     "destinations": {
 24823  	//       "description": "If set, only issues for the specified destinations are returned, otherwise only issues for the Shopping destination.",
 24824  	//       "location": "query",
 24825  	//       "repeated": true,
 24826  	//       "type": "string"
 24827  	//     },
 24828  	//     "includeAttributes": {
 24829  	//       "description": "Flag to include full product data in the results of the list request. The default value is false.",
 24830  	//       "location": "query",
 24831  	//       "type": "boolean"
 24832  	//     },
 24833  	//     "includeInvalidInsertedItems": {
 24834  	//       "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).",
 24835  	//       "location": "query",
 24836  	//       "type": "boolean"
 24837  	//     },
 24838  	//     "maxResults": {
 24839  	//       "description": "The maximum number of product statuses to return in the response, used for paging.",
 24840  	//       "format": "uint32",
 24841  	//       "location": "query",
 24842  	//       "type": "integer"
 24843  	//     },
 24844  	//     "merchantId": {
 24845  	//       "description": "The ID of the account that contains the products. This account cannot be a multi-client account.",
 24846  	//       "format": "uint64",
 24847  	//       "location": "path",
 24848  	//       "required": true,
 24849  	//       "type": "string"
 24850  	//     },
 24851  	//     "pageToken": {
 24852  	//       "description": "The token returned by the previous request.",
 24853  	//       "location": "query",
 24854  	//       "type": "string"
 24855  	//     }
 24856  	//   },
 24857  	//   "path": "{merchantId}/productstatuses",
 24858  	//   "response": {
 24859  	//     "$ref": "ProductstatusesListResponse"
 24860  	//   },
 24861  	//   "scopes": [
 24862  	//     "https://www.googleapis.com/auth/content"
 24863  	//   ]
 24864  	// }
 24865  
 24866  }
 24867  
 24868  // Pages invokes f for each page of results.
 24869  // A non-nil error returned from f will halt the iteration.
 24870  // The provided context supersedes any context provided to the Context method.
 24871  func (c *ProductstatusesListCall) Pages(ctx context.Context, f func(*ProductstatusesListResponse) error) error {
 24872  	c.ctx_ = ctx
 24873  	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
 24874  	for {
 24875  		x, err := c.Do()
 24876  		if err != nil {
 24877  			return err
 24878  		}
 24879  		if err := f(x); err != nil {
 24880  			return err
 24881  		}
 24882  		if x.NextPageToken == "" {
 24883  			return nil
 24884  		}
 24885  		c.PageToken(x.NextPageToken)
 24886  	}
 24887  }
 24888  
 24889  // method id "content.shippingsettings.custombatch":
 24890  
 24891  type ShippingsettingsCustombatchCall struct {
 24892  	s                                  *APIService
 24893  	shippingsettingscustombatchrequest *ShippingsettingsCustomBatchRequest
 24894  	urlParams_                         gensupport.URLParams
 24895  	ctx_                               context.Context
 24896  	header_                            http.Header
 24897  }
 24898  
 24899  // Custombatch: Retrieves and updates the shipping settings of multiple
 24900  // accounts in a single request.
 24901  func (r *ShippingsettingsService) Custombatch(shippingsettingscustombatchrequest *ShippingsettingsCustomBatchRequest) *ShippingsettingsCustombatchCall {
 24902  	c := &ShippingsettingsCustombatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 24903  	c.shippingsettingscustombatchrequest = shippingsettingscustombatchrequest
 24904  	return c
 24905  }
 24906  
 24907  // DryRun sets the optional parameter "dryRun": Flag to simulate a
 24908  // request like in a live environment. If set to true, dry-run mode
 24909  // checks the validity of the request and returns errors (if any).
 24910  func (c *ShippingsettingsCustombatchCall) DryRun(dryRun bool) *ShippingsettingsCustombatchCall {
 24911  	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
 24912  	return c
 24913  }
 24914  
 24915  // Fields allows partial responses to be retrieved. See
 24916  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 24917  // for more information.
 24918  func (c *ShippingsettingsCustombatchCall) Fields(s ...googleapi.Field) *ShippingsettingsCustombatchCall {
 24919  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 24920  	return c
 24921  }
 24922  
 24923  // Context sets the context to be used in this call's Do method. Any
 24924  // pending HTTP request will be aborted if the provided context is
 24925  // canceled.
 24926  func (c *ShippingsettingsCustombatchCall) Context(ctx context.Context) *ShippingsettingsCustombatchCall {
 24927  	c.ctx_ = ctx
 24928  	return c
 24929  }
 24930  
 24931  // Header returns an http.Header that can be modified by the caller to
 24932  // add HTTP headers to the request.
 24933  func (c *ShippingsettingsCustombatchCall) Header() http.Header {
 24934  	if c.header_ == nil {
 24935  		c.header_ = make(http.Header)
 24936  	}
 24937  	return c.header_
 24938  }
 24939  
 24940  func (c *ShippingsettingsCustombatchCall) doRequest(alt string) (*http.Response, error) {
 24941  	reqHeaders := make(http.Header)
 24942  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 24943  	for k, v := range c.header_ {
 24944  		reqHeaders[k] = v
 24945  	}
 24946  	reqHeaders.Set("User-Agent", c.s.userAgent())
 24947  	var body io.Reader = nil
 24948  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.shippingsettingscustombatchrequest)
 24949  	if err != nil {
 24950  		return nil, err
 24951  	}
 24952  	reqHeaders.Set("Content-Type", "application/json")
 24953  	c.urlParams_.Set("alt", alt)
 24954  	c.urlParams_.Set("prettyPrint", "false")
 24955  	urls := googleapi.ResolveRelative(c.s.BasePath, "shippingsettings/batch")
 24956  	urls += "?" + c.urlParams_.Encode()
 24957  	req, err := http.NewRequest("POST", urls, body)
 24958  	if err != nil {
 24959  		return nil, err
 24960  	}
 24961  	req.Header = reqHeaders
 24962  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 24963  }
 24964  
 24965  // Do executes the "content.shippingsettings.custombatch" call.
 24966  // Exactly one of *ShippingsettingsCustomBatchResponse or error will be
 24967  // non-nil. Any non-2xx status code is an error. Response headers are in
 24968  // either *ShippingsettingsCustomBatchResponse.ServerResponse.Header or
 24969  // (if a response was returned at all) in
 24970  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 24971  // whether the returned error was because http.StatusNotModified was
 24972  // returned.
 24973  func (c *ShippingsettingsCustombatchCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsCustomBatchResponse, error) {
 24974  	gensupport.SetOptions(c.urlParams_, opts...)
 24975  	res, err := c.doRequest("json")
 24976  	if res != nil && res.StatusCode == http.StatusNotModified {
 24977  		if res.Body != nil {
 24978  			res.Body.Close()
 24979  		}
 24980  		return nil, &googleapi.Error{
 24981  			Code:   res.StatusCode,
 24982  			Header: res.Header,
 24983  		}
 24984  	}
 24985  	if err != nil {
 24986  		return nil, err
 24987  	}
 24988  	defer googleapi.CloseBody(res)
 24989  	if err := googleapi.CheckResponse(res); err != nil {
 24990  		return nil, err
 24991  	}
 24992  	ret := &ShippingsettingsCustomBatchResponse{
 24993  		ServerResponse: googleapi.ServerResponse{
 24994  			Header:         res.Header,
 24995  			HTTPStatusCode: res.StatusCode,
 24996  		},
 24997  	}
 24998  	target := &ret
 24999  	if err := gensupport.DecodeResponse(target, res); err != nil {
 25000  		return nil, err
 25001  	}
 25002  	return ret, nil
 25003  	// {
 25004  	//   "description": "Retrieves and updates the shipping settings of multiple accounts in a single request.",
 25005  	//   "flatPath": "shippingsettings/batch",
 25006  	//   "httpMethod": "POST",
 25007  	//   "id": "content.shippingsettings.custombatch",
 25008  	//   "parameterOrder": [],
 25009  	//   "parameters": {
 25010  	//     "dryRun": {
 25011  	//       "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).",
 25012  	//       "location": "query",
 25013  	//       "type": "boolean"
 25014  	//     }
 25015  	//   },
 25016  	//   "path": "shippingsettings/batch",
 25017  	//   "request": {
 25018  	//     "$ref": "ShippingsettingsCustomBatchRequest"
 25019  	//   },
 25020  	//   "response": {
 25021  	//     "$ref": "ShippingsettingsCustomBatchResponse"
 25022  	//   },
 25023  	//   "scopes": [
 25024  	//     "https://www.googleapis.com/auth/content"
 25025  	//   ]
 25026  	// }
 25027  
 25028  }
 25029  
 25030  // method id "content.shippingsettings.get":
 25031  
 25032  type ShippingsettingsGetCall struct {
 25033  	s            *APIService
 25034  	merchantId   uint64
 25035  	accountId    uint64
 25036  	urlParams_   gensupport.URLParams
 25037  	ifNoneMatch_ string
 25038  	ctx_         context.Context
 25039  	header_      http.Header
 25040  }
 25041  
 25042  // Get: Retrieves the shipping settings of the account.
 25043  //
 25044  //   - accountId: The ID of the account for which to get/update shipping
 25045  //     settings.
 25046  //   - merchantId: The ID of the managing account. If this parameter is
 25047  //     not the same as accountId, then this account must be a multi-client
 25048  //     account and `accountId` must be the ID of a sub-account of this
 25049  //     account.
 25050  func (r *ShippingsettingsService) Get(merchantId uint64, accountId uint64) *ShippingsettingsGetCall {
 25051  	c := &ShippingsettingsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 25052  	c.merchantId = merchantId
 25053  	c.accountId = accountId
 25054  	return c
 25055  }
 25056  
 25057  // Fields allows partial responses to be retrieved. See
 25058  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 25059  // for more information.
 25060  func (c *ShippingsettingsGetCall) Fields(s ...googleapi.Field) *ShippingsettingsGetCall {
 25061  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 25062  	return c
 25063  }
 25064  
 25065  // IfNoneMatch sets the optional parameter which makes the operation
 25066  // fail if the object's ETag matches the given value. This is useful for
 25067  // getting updates only after the object has changed since the last
 25068  // request. Use googleapi.IsNotModified to check whether the response
 25069  // error from Do is the result of In-None-Match.
 25070  func (c *ShippingsettingsGetCall) IfNoneMatch(entityTag string) *ShippingsettingsGetCall {
 25071  	c.ifNoneMatch_ = entityTag
 25072  	return c
 25073  }
 25074  
 25075  // Context sets the context to be used in this call's Do method. Any
 25076  // pending HTTP request will be aborted if the provided context is
 25077  // canceled.
 25078  func (c *ShippingsettingsGetCall) Context(ctx context.Context) *ShippingsettingsGetCall {
 25079  	c.ctx_ = ctx
 25080  	return c
 25081  }
 25082  
 25083  // Header returns an http.Header that can be modified by the caller to
 25084  // add HTTP headers to the request.
 25085  func (c *ShippingsettingsGetCall) Header() http.Header {
 25086  	if c.header_ == nil {
 25087  		c.header_ = make(http.Header)
 25088  	}
 25089  	return c.header_
 25090  }
 25091  
 25092  func (c *ShippingsettingsGetCall) doRequest(alt string) (*http.Response, error) {
 25093  	reqHeaders := make(http.Header)
 25094  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 25095  	for k, v := range c.header_ {
 25096  		reqHeaders[k] = v
 25097  	}
 25098  	reqHeaders.Set("User-Agent", c.s.userAgent())
 25099  	if c.ifNoneMatch_ != "" {
 25100  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 25101  	}
 25102  	var body io.Reader = nil
 25103  	c.urlParams_.Set("alt", alt)
 25104  	c.urlParams_.Set("prettyPrint", "false")
 25105  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/shippingsettings/{accountId}")
 25106  	urls += "?" + c.urlParams_.Encode()
 25107  	req, err := http.NewRequest("GET", urls, body)
 25108  	if err != nil {
 25109  		return nil, err
 25110  	}
 25111  	req.Header = reqHeaders
 25112  	googleapi.Expand(req.URL, map[string]string{
 25113  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 25114  		"accountId":  strconv.FormatUint(c.accountId, 10),
 25115  	})
 25116  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 25117  }
 25118  
 25119  // Do executes the "content.shippingsettings.get" call.
 25120  // Exactly one of *ShippingSettings or error will be non-nil. Any
 25121  // non-2xx status code is an error. Response headers are in either
 25122  // *ShippingSettings.ServerResponse.Header or (if a response was
 25123  // returned at all) in error.(*googleapi.Error).Header. Use
 25124  // googleapi.IsNotModified to check whether the returned error was
 25125  // because http.StatusNotModified was returned.
 25126  func (c *ShippingsettingsGetCall) Do(opts ...googleapi.CallOption) (*ShippingSettings, error) {
 25127  	gensupport.SetOptions(c.urlParams_, opts...)
 25128  	res, err := c.doRequest("json")
 25129  	if res != nil && res.StatusCode == http.StatusNotModified {
 25130  		if res.Body != nil {
 25131  			res.Body.Close()
 25132  		}
 25133  		return nil, &googleapi.Error{
 25134  			Code:   res.StatusCode,
 25135  			Header: res.Header,
 25136  		}
 25137  	}
 25138  	if err != nil {
 25139  		return nil, err
 25140  	}
 25141  	defer googleapi.CloseBody(res)
 25142  	if err := googleapi.CheckResponse(res); err != nil {
 25143  		return nil, err
 25144  	}
 25145  	ret := &ShippingSettings{
 25146  		ServerResponse: googleapi.ServerResponse{
 25147  			Header:         res.Header,
 25148  			HTTPStatusCode: res.StatusCode,
 25149  		},
 25150  	}
 25151  	target := &ret
 25152  	if err := gensupport.DecodeResponse(target, res); err != nil {
 25153  		return nil, err
 25154  	}
 25155  	return ret, nil
 25156  	// {
 25157  	//   "description": "Retrieves the shipping settings of the account.",
 25158  	//   "flatPath": "{merchantId}/shippingsettings/{accountId}",
 25159  	//   "httpMethod": "GET",
 25160  	//   "id": "content.shippingsettings.get",
 25161  	//   "parameterOrder": [
 25162  	//     "merchantId",
 25163  	//     "accountId"
 25164  	//   ],
 25165  	//   "parameters": {
 25166  	//     "accountId": {
 25167  	//       "description": "The ID of the account for which to get/update shipping settings.",
 25168  	//       "format": "uint64",
 25169  	//       "location": "path",
 25170  	//       "required": true,
 25171  	//       "type": "string"
 25172  	//     },
 25173  	//     "merchantId": {
 25174  	//       "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.",
 25175  	//       "format": "uint64",
 25176  	//       "location": "path",
 25177  	//       "required": true,
 25178  	//       "type": "string"
 25179  	//     }
 25180  	//   },
 25181  	//   "path": "{merchantId}/shippingsettings/{accountId}",
 25182  	//   "response": {
 25183  	//     "$ref": "ShippingSettings"
 25184  	//   },
 25185  	//   "scopes": [
 25186  	//     "https://www.googleapis.com/auth/content"
 25187  	//   ]
 25188  	// }
 25189  
 25190  }
 25191  
 25192  // method id "content.shippingsettings.getsupportedcarriers":
 25193  
 25194  type ShippingsettingsGetsupportedcarriersCall struct {
 25195  	s            *APIService
 25196  	merchantId   uint64
 25197  	urlParams_   gensupport.URLParams
 25198  	ifNoneMatch_ string
 25199  	ctx_         context.Context
 25200  	header_      http.Header
 25201  }
 25202  
 25203  // Getsupportedcarriers: Retrieves supported carriers and carrier
 25204  // services for an account.
 25205  //
 25206  //   - merchantId: The ID of the account for which to retrieve the
 25207  //     supported carriers.
 25208  func (r *ShippingsettingsService) Getsupportedcarriers(merchantId uint64) *ShippingsettingsGetsupportedcarriersCall {
 25209  	c := &ShippingsettingsGetsupportedcarriersCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 25210  	c.merchantId = merchantId
 25211  	return c
 25212  }
 25213  
 25214  // Fields allows partial responses to be retrieved. See
 25215  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 25216  // for more information.
 25217  func (c *ShippingsettingsGetsupportedcarriersCall) Fields(s ...googleapi.Field) *ShippingsettingsGetsupportedcarriersCall {
 25218  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 25219  	return c
 25220  }
 25221  
 25222  // IfNoneMatch sets the optional parameter which makes the operation
 25223  // fail if the object's ETag matches the given value. This is useful for
 25224  // getting updates only after the object has changed since the last
 25225  // request. Use googleapi.IsNotModified to check whether the response
 25226  // error from Do is the result of In-None-Match.
 25227  func (c *ShippingsettingsGetsupportedcarriersCall) IfNoneMatch(entityTag string) *ShippingsettingsGetsupportedcarriersCall {
 25228  	c.ifNoneMatch_ = entityTag
 25229  	return c
 25230  }
 25231  
 25232  // Context sets the context to be used in this call's Do method. Any
 25233  // pending HTTP request will be aborted if the provided context is
 25234  // canceled.
 25235  func (c *ShippingsettingsGetsupportedcarriersCall) Context(ctx context.Context) *ShippingsettingsGetsupportedcarriersCall {
 25236  	c.ctx_ = ctx
 25237  	return c
 25238  }
 25239  
 25240  // Header returns an http.Header that can be modified by the caller to
 25241  // add HTTP headers to the request.
 25242  func (c *ShippingsettingsGetsupportedcarriersCall) Header() http.Header {
 25243  	if c.header_ == nil {
 25244  		c.header_ = make(http.Header)
 25245  	}
 25246  	return c.header_
 25247  }
 25248  
 25249  func (c *ShippingsettingsGetsupportedcarriersCall) doRequest(alt string) (*http.Response, error) {
 25250  	reqHeaders := make(http.Header)
 25251  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 25252  	for k, v := range c.header_ {
 25253  		reqHeaders[k] = v
 25254  	}
 25255  	reqHeaders.Set("User-Agent", c.s.userAgent())
 25256  	if c.ifNoneMatch_ != "" {
 25257  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 25258  	}
 25259  	var body io.Reader = nil
 25260  	c.urlParams_.Set("alt", alt)
 25261  	c.urlParams_.Set("prettyPrint", "false")
 25262  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/supportedCarriers")
 25263  	urls += "?" + c.urlParams_.Encode()
 25264  	req, err := http.NewRequest("GET", urls, body)
 25265  	if err != nil {
 25266  		return nil, err
 25267  	}
 25268  	req.Header = reqHeaders
 25269  	googleapi.Expand(req.URL, map[string]string{
 25270  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 25271  	})
 25272  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 25273  }
 25274  
 25275  // Do executes the "content.shippingsettings.getsupportedcarriers" call.
 25276  // Exactly one of *ShippingsettingsGetSupportedCarriersResponse or error
 25277  // will be non-nil. Any non-2xx status code is an error. Response
 25278  // headers are in either
 25279  // *ShippingsettingsGetSupportedCarriersResponse.ServerResponse.Header
 25280  // or (if a response was returned at all) in
 25281  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 25282  // whether the returned error was because http.StatusNotModified was
 25283  // returned.
 25284  func (c *ShippingsettingsGetsupportedcarriersCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsGetSupportedCarriersResponse, error) {
 25285  	gensupport.SetOptions(c.urlParams_, opts...)
 25286  	res, err := c.doRequest("json")
 25287  	if res != nil && res.StatusCode == http.StatusNotModified {
 25288  		if res.Body != nil {
 25289  			res.Body.Close()
 25290  		}
 25291  		return nil, &googleapi.Error{
 25292  			Code:   res.StatusCode,
 25293  			Header: res.Header,
 25294  		}
 25295  	}
 25296  	if err != nil {
 25297  		return nil, err
 25298  	}
 25299  	defer googleapi.CloseBody(res)
 25300  	if err := googleapi.CheckResponse(res); err != nil {
 25301  		return nil, err
 25302  	}
 25303  	ret := &ShippingsettingsGetSupportedCarriersResponse{
 25304  		ServerResponse: googleapi.ServerResponse{
 25305  			Header:         res.Header,
 25306  			HTTPStatusCode: res.StatusCode,
 25307  		},
 25308  	}
 25309  	target := &ret
 25310  	if err := gensupport.DecodeResponse(target, res); err != nil {
 25311  		return nil, err
 25312  	}
 25313  	return ret, nil
 25314  	// {
 25315  	//   "description": "Retrieves supported carriers and carrier services for an account.",
 25316  	//   "flatPath": "{merchantId}/supportedCarriers",
 25317  	//   "httpMethod": "GET",
 25318  	//   "id": "content.shippingsettings.getsupportedcarriers",
 25319  	//   "parameterOrder": [
 25320  	//     "merchantId"
 25321  	//   ],
 25322  	//   "parameters": {
 25323  	//     "merchantId": {
 25324  	//       "description": "The ID of the account for which to retrieve the supported carriers.",
 25325  	//       "format": "uint64",
 25326  	//       "location": "path",
 25327  	//       "required": true,
 25328  	//       "type": "string"
 25329  	//     }
 25330  	//   },
 25331  	//   "path": "{merchantId}/supportedCarriers",
 25332  	//   "response": {
 25333  	//     "$ref": "ShippingsettingsGetSupportedCarriersResponse"
 25334  	//   },
 25335  	//   "scopes": [
 25336  	//     "https://www.googleapis.com/auth/content"
 25337  	//   ]
 25338  	// }
 25339  
 25340  }
 25341  
 25342  // method id "content.shippingsettings.getsupportedholidays":
 25343  
 25344  type ShippingsettingsGetsupportedholidaysCall struct {
 25345  	s            *APIService
 25346  	merchantId   uint64
 25347  	urlParams_   gensupport.URLParams
 25348  	ifNoneMatch_ string
 25349  	ctx_         context.Context
 25350  	header_      http.Header
 25351  }
 25352  
 25353  // Getsupportedholidays: Retrieves supported holidays for an account.
 25354  //
 25355  //   - merchantId: The ID of the account for which to retrieve the
 25356  //     supported holidays.
 25357  func (r *ShippingsettingsService) Getsupportedholidays(merchantId uint64) *ShippingsettingsGetsupportedholidaysCall {
 25358  	c := &ShippingsettingsGetsupportedholidaysCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 25359  	c.merchantId = merchantId
 25360  	return c
 25361  }
 25362  
 25363  // Fields allows partial responses to be retrieved. See
 25364  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 25365  // for more information.
 25366  func (c *ShippingsettingsGetsupportedholidaysCall) Fields(s ...googleapi.Field) *ShippingsettingsGetsupportedholidaysCall {
 25367  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 25368  	return c
 25369  }
 25370  
 25371  // IfNoneMatch sets the optional parameter which makes the operation
 25372  // fail if the object's ETag matches the given value. This is useful for
 25373  // getting updates only after the object has changed since the last
 25374  // request. Use googleapi.IsNotModified to check whether the response
 25375  // error from Do is the result of In-None-Match.
 25376  func (c *ShippingsettingsGetsupportedholidaysCall) IfNoneMatch(entityTag string) *ShippingsettingsGetsupportedholidaysCall {
 25377  	c.ifNoneMatch_ = entityTag
 25378  	return c
 25379  }
 25380  
 25381  // Context sets the context to be used in this call's Do method. Any
 25382  // pending HTTP request will be aborted if the provided context is
 25383  // canceled.
 25384  func (c *ShippingsettingsGetsupportedholidaysCall) Context(ctx context.Context) *ShippingsettingsGetsupportedholidaysCall {
 25385  	c.ctx_ = ctx
 25386  	return c
 25387  }
 25388  
 25389  // Header returns an http.Header that can be modified by the caller to
 25390  // add HTTP headers to the request.
 25391  func (c *ShippingsettingsGetsupportedholidaysCall) Header() http.Header {
 25392  	if c.header_ == nil {
 25393  		c.header_ = make(http.Header)
 25394  	}
 25395  	return c.header_
 25396  }
 25397  
 25398  func (c *ShippingsettingsGetsupportedholidaysCall) doRequest(alt string) (*http.Response, error) {
 25399  	reqHeaders := make(http.Header)
 25400  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 25401  	for k, v := range c.header_ {
 25402  		reqHeaders[k] = v
 25403  	}
 25404  	reqHeaders.Set("User-Agent", c.s.userAgent())
 25405  	if c.ifNoneMatch_ != "" {
 25406  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 25407  	}
 25408  	var body io.Reader = nil
 25409  	c.urlParams_.Set("alt", alt)
 25410  	c.urlParams_.Set("prettyPrint", "false")
 25411  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/supportedHolidays")
 25412  	urls += "?" + c.urlParams_.Encode()
 25413  	req, err := http.NewRequest("GET", urls, body)
 25414  	if err != nil {
 25415  		return nil, err
 25416  	}
 25417  	req.Header = reqHeaders
 25418  	googleapi.Expand(req.URL, map[string]string{
 25419  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 25420  	})
 25421  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 25422  }
 25423  
 25424  // Do executes the "content.shippingsettings.getsupportedholidays" call.
 25425  // Exactly one of *ShippingsettingsGetSupportedHolidaysResponse or error
 25426  // will be non-nil. Any non-2xx status code is an error. Response
 25427  // headers are in either
 25428  // *ShippingsettingsGetSupportedHolidaysResponse.ServerResponse.Header
 25429  // or (if a response was returned at all) in
 25430  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 25431  // whether the returned error was because http.StatusNotModified was
 25432  // returned.
 25433  func (c *ShippingsettingsGetsupportedholidaysCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsGetSupportedHolidaysResponse, error) {
 25434  	gensupport.SetOptions(c.urlParams_, opts...)
 25435  	res, err := c.doRequest("json")
 25436  	if res != nil && res.StatusCode == http.StatusNotModified {
 25437  		if res.Body != nil {
 25438  			res.Body.Close()
 25439  		}
 25440  		return nil, &googleapi.Error{
 25441  			Code:   res.StatusCode,
 25442  			Header: res.Header,
 25443  		}
 25444  	}
 25445  	if err != nil {
 25446  		return nil, err
 25447  	}
 25448  	defer googleapi.CloseBody(res)
 25449  	if err := googleapi.CheckResponse(res); err != nil {
 25450  		return nil, err
 25451  	}
 25452  	ret := &ShippingsettingsGetSupportedHolidaysResponse{
 25453  		ServerResponse: googleapi.ServerResponse{
 25454  			Header:         res.Header,
 25455  			HTTPStatusCode: res.StatusCode,
 25456  		},
 25457  	}
 25458  	target := &ret
 25459  	if err := gensupport.DecodeResponse(target, res); err != nil {
 25460  		return nil, err
 25461  	}
 25462  	return ret, nil
 25463  	// {
 25464  	//   "description": "Retrieves supported holidays for an account.",
 25465  	//   "flatPath": "{merchantId}/supportedHolidays",
 25466  	//   "httpMethod": "GET",
 25467  	//   "id": "content.shippingsettings.getsupportedholidays",
 25468  	//   "parameterOrder": [
 25469  	//     "merchantId"
 25470  	//   ],
 25471  	//   "parameters": {
 25472  	//     "merchantId": {
 25473  	//       "description": "The ID of the account for which to retrieve the supported holidays.",
 25474  	//       "format": "uint64",
 25475  	//       "location": "path",
 25476  	//       "required": true,
 25477  	//       "type": "string"
 25478  	//     }
 25479  	//   },
 25480  	//   "path": "{merchantId}/supportedHolidays",
 25481  	//   "response": {
 25482  	//     "$ref": "ShippingsettingsGetSupportedHolidaysResponse"
 25483  	//   },
 25484  	//   "scopes": [
 25485  	//     "https://www.googleapis.com/auth/content"
 25486  	//   ]
 25487  	// }
 25488  
 25489  }
 25490  
 25491  // method id "content.shippingsettings.getsupportedpickupservices":
 25492  
 25493  type ShippingsettingsGetsupportedpickupservicesCall struct {
 25494  	s            *APIService
 25495  	merchantId   uint64
 25496  	urlParams_   gensupport.URLParams
 25497  	ifNoneMatch_ string
 25498  	ctx_         context.Context
 25499  	header_      http.Header
 25500  }
 25501  
 25502  // Getsupportedpickupservices: Retrieves supported pickup services for
 25503  // an account.
 25504  //
 25505  //   - merchantId: The ID of the account for which to retrieve the
 25506  //     supported pickup services.
 25507  func (r *ShippingsettingsService) Getsupportedpickupservices(merchantId uint64) *ShippingsettingsGetsupportedpickupservicesCall {
 25508  	c := &ShippingsettingsGetsupportedpickupservicesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 25509  	c.merchantId = merchantId
 25510  	return c
 25511  }
 25512  
 25513  // Fields allows partial responses to be retrieved. See
 25514  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 25515  // for more information.
 25516  func (c *ShippingsettingsGetsupportedpickupservicesCall) Fields(s ...googleapi.Field) *ShippingsettingsGetsupportedpickupservicesCall {
 25517  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 25518  	return c
 25519  }
 25520  
 25521  // IfNoneMatch sets the optional parameter which makes the operation
 25522  // fail if the object's ETag matches the given value. This is useful for
 25523  // getting updates only after the object has changed since the last
 25524  // request. Use googleapi.IsNotModified to check whether the response
 25525  // error from Do is the result of In-None-Match.
 25526  func (c *ShippingsettingsGetsupportedpickupservicesCall) IfNoneMatch(entityTag string) *ShippingsettingsGetsupportedpickupservicesCall {
 25527  	c.ifNoneMatch_ = entityTag
 25528  	return c
 25529  }
 25530  
 25531  // Context sets the context to be used in this call's Do method. Any
 25532  // pending HTTP request will be aborted if the provided context is
 25533  // canceled.
 25534  func (c *ShippingsettingsGetsupportedpickupservicesCall) Context(ctx context.Context) *ShippingsettingsGetsupportedpickupservicesCall {
 25535  	c.ctx_ = ctx
 25536  	return c
 25537  }
 25538  
 25539  // Header returns an http.Header that can be modified by the caller to
 25540  // add HTTP headers to the request.
 25541  func (c *ShippingsettingsGetsupportedpickupservicesCall) Header() http.Header {
 25542  	if c.header_ == nil {
 25543  		c.header_ = make(http.Header)
 25544  	}
 25545  	return c.header_
 25546  }
 25547  
 25548  func (c *ShippingsettingsGetsupportedpickupservicesCall) doRequest(alt string) (*http.Response, error) {
 25549  	reqHeaders := make(http.Header)
 25550  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 25551  	for k, v := range c.header_ {
 25552  		reqHeaders[k] = v
 25553  	}
 25554  	reqHeaders.Set("User-Agent", c.s.userAgent())
 25555  	if c.ifNoneMatch_ != "" {
 25556  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 25557  	}
 25558  	var body io.Reader = nil
 25559  	c.urlParams_.Set("alt", alt)
 25560  	c.urlParams_.Set("prettyPrint", "false")
 25561  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/supportedPickupServices")
 25562  	urls += "?" + c.urlParams_.Encode()
 25563  	req, err := http.NewRequest("GET", urls, body)
 25564  	if err != nil {
 25565  		return nil, err
 25566  	}
 25567  	req.Header = reqHeaders
 25568  	googleapi.Expand(req.URL, map[string]string{
 25569  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 25570  	})
 25571  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 25572  }
 25573  
 25574  // Do executes the "content.shippingsettings.getsupportedpickupservices" call.
 25575  // Exactly one of *ShippingsettingsGetSupportedPickupServicesResponse or
 25576  // error will be non-nil. Any non-2xx status code is an error. Response
 25577  // headers are in either
 25578  // *ShippingsettingsGetSupportedPickupServicesResponse.ServerResponse.Hea
 25579  // der or (if a response was returned at all) in
 25580  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 25581  // whether the returned error was because http.StatusNotModified was
 25582  // returned.
 25583  func (c *ShippingsettingsGetsupportedpickupservicesCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsGetSupportedPickupServicesResponse, error) {
 25584  	gensupport.SetOptions(c.urlParams_, opts...)
 25585  	res, err := c.doRequest("json")
 25586  	if res != nil && res.StatusCode == http.StatusNotModified {
 25587  		if res.Body != nil {
 25588  			res.Body.Close()
 25589  		}
 25590  		return nil, &googleapi.Error{
 25591  			Code:   res.StatusCode,
 25592  			Header: res.Header,
 25593  		}
 25594  	}
 25595  	if err != nil {
 25596  		return nil, err
 25597  	}
 25598  	defer googleapi.CloseBody(res)
 25599  	if err := googleapi.CheckResponse(res); err != nil {
 25600  		return nil, err
 25601  	}
 25602  	ret := &ShippingsettingsGetSupportedPickupServicesResponse{
 25603  		ServerResponse: googleapi.ServerResponse{
 25604  			Header:         res.Header,
 25605  			HTTPStatusCode: res.StatusCode,
 25606  		},
 25607  	}
 25608  	target := &ret
 25609  	if err := gensupport.DecodeResponse(target, res); err != nil {
 25610  		return nil, err
 25611  	}
 25612  	return ret, nil
 25613  	// {
 25614  	//   "description": "Retrieves supported pickup services for an account.",
 25615  	//   "flatPath": "{merchantId}/supportedPickupServices",
 25616  	//   "httpMethod": "GET",
 25617  	//   "id": "content.shippingsettings.getsupportedpickupservices",
 25618  	//   "parameterOrder": [
 25619  	//     "merchantId"
 25620  	//   ],
 25621  	//   "parameters": {
 25622  	//     "merchantId": {
 25623  	//       "description": "The ID of the account for which to retrieve the supported pickup services.",
 25624  	//       "format": "uint64",
 25625  	//       "location": "path",
 25626  	//       "required": true,
 25627  	//       "type": "string"
 25628  	//     }
 25629  	//   },
 25630  	//   "path": "{merchantId}/supportedPickupServices",
 25631  	//   "response": {
 25632  	//     "$ref": "ShippingsettingsGetSupportedPickupServicesResponse"
 25633  	//   },
 25634  	//   "scopes": [
 25635  	//     "https://www.googleapis.com/auth/content"
 25636  	//   ]
 25637  	// }
 25638  
 25639  }
 25640  
 25641  // method id "content.shippingsettings.list":
 25642  
 25643  type ShippingsettingsListCall struct {
 25644  	s            *APIService
 25645  	merchantId   uint64
 25646  	urlParams_   gensupport.URLParams
 25647  	ifNoneMatch_ string
 25648  	ctx_         context.Context
 25649  	header_      http.Header
 25650  }
 25651  
 25652  // List: Lists the shipping settings of the sub-accounts in your
 25653  // Merchant Center account.
 25654  //
 25655  //   - merchantId: The ID of the managing account. This must be a
 25656  //     multi-client account.
 25657  func (r *ShippingsettingsService) List(merchantId uint64) *ShippingsettingsListCall {
 25658  	c := &ShippingsettingsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 25659  	c.merchantId = merchantId
 25660  	return c
 25661  }
 25662  
 25663  // MaxResults sets the optional parameter "maxResults": The maximum
 25664  // number of shipping settings to return in the response, used for
 25665  // paging.
 25666  func (c *ShippingsettingsListCall) MaxResults(maxResults int64) *ShippingsettingsListCall {
 25667  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 25668  	return c
 25669  }
 25670  
 25671  // PageToken sets the optional parameter "pageToken": The token returned
 25672  // by the previous request.
 25673  func (c *ShippingsettingsListCall) PageToken(pageToken string) *ShippingsettingsListCall {
 25674  	c.urlParams_.Set("pageToken", pageToken)
 25675  	return c
 25676  }
 25677  
 25678  // Fields allows partial responses to be retrieved. See
 25679  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 25680  // for more information.
 25681  func (c *ShippingsettingsListCall) Fields(s ...googleapi.Field) *ShippingsettingsListCall {
 25682  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 25683  	return c
 25684  }
 25685  
 25686  // IfNoneMatch sets the optional parameter which makes the operation
 25687  // fail if the object's ETag matches the given value. This is useful for
 25688  // getting updates only after the object has changed since the last
 25689  // request. Use googleapi.IsNotModified to check whether the response
 25690  // error from Do is the result of In-None-Match.
 25691  func (c *ShippingsettingsListCall) IfNoneMatch(entityTag string) *ShippingsettingsListCall {
 25692  	c.ifNoneMatch_ = entityTag
 25693  	return c
 25694  }
 25695  
 25696  // Context sets the context to be used in this call's Do method. Any
 25697  // pending HTTP request will be aborted if the provided context is
 25698  // canceled.
 25699  func (c *ShippingsettingsListCall) Context(ctx context.Context) *ShippingsettingsListCall {
 25700  	c.ctx_ = ctx
 25701  	return c
 25702  }
 25703  
 25704  // Header returns an http.Header that can be modified by the caller to
 25705  // add HTTP headers to the request.
 25706  func (c *ShippingsettingsListCall) Header() http.Header {
 25707  	if c.header_ == nil {
 25708  		c.header_ = make(http.Header)
 25709  	}
 25710  	return c.header_
 25711  }
 25712  
 25713  func (c *ShippingsettingsListCall) doRequest(alt string) (*http.Response, error) {
 25714  	reqHeaders := make(http.Header)
 25715  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 25716  	for k, v := range c.header_ {
 25717  		reqHeaders[k] = v
 25718  	}
 25719  	reqHeaders.Set("User-Agent", c.s.userAgent())
 25720  	if c.ifNoneMatch_ != "" {
 25721  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 25722  	}
 25723  	var body io.Reader = nil
 25724  	c.urlParams_.Set("alt", alt)
 25725  	c.urlParams_.Set("prettyPrint", "false")
 25726  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/shippingsettings")
 25727  	urls += "?" + c.urlParams_.Encode()
 25728  	req, err := http.NewRequest("GET", urls, body)
 25729  	if err != nil {
 25730  		return nil, err
 25731  	}
 25732  	req.Header = reqHeaders
 25733  	googleapi.Expand(req.URL, map[string]string{
 25734  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 25735  	})
 25736  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 25737  }
 25738  
 25739  // Do executes the "content.shippingsettings.list" call.
 25740  // Exactly one of *ShippingsettingsListResponse or error will be
 25741  // non-nil. Any non-2xx status code is an error. Response headers are in
 25742  // either *ShippingsettingsListResponse.ServerResponse.Header or (if a
 25743  // response was returned at all) in error.(*googleapi.Error).Header. Use
 25744  // googleapi.IsNotModified to check whether the returned error was
 25745  // because http.StatusNotModified was returned.
 25746  func (c *ShippingsettingsListCall) Do(opts ...googleapi.CallOption) (*ShippingsettingsListResponse, error) {
 25747  	gensupport.SetOptions(c.urlParams_, opts...)
 25748  	res, err := c.doRequest("json")
 25749  	if res != nil && res.StatusCode == http.StatusNotModified {
 25750  		if res.Body != nil {
 25751  			res.Body.Close()
 25752  		}
 25753  		return nil, &googleapi.Error{
 25754  			Code:   res.StatusCode,
 25755  			Header: res.Header,
 25756  		}
 25757  	}
 25758  	if err != nil {
 25759  		return nil, err
 25760  	}
 25761  	defer googleapi.CloseBody(res)
 25762  	if err := googleapi.CheckResponse(res); err != nil {
 25763  		return nil, err
 25764  	}
 25765  	ret := &ShippingsettingsListResponse{
 25766  		ServerResponse: googleapi.ServerResponse{
 25767  			Header:         res.Header,
 25768  			HTTPStatusCode: res.StatusCode,
 25769  		},
 25770  	}
 25771  	target := &ret
 25772  	if err := gensupport.DecodeResponse(target, res); err != nil {
 25773  		return nil, err
 25774  	}
 25775  	return ret, nil
 25776  	// {
 25777  	//   "description": "Lists the shipping settings of the sub-accounts in your Merchant Center account.",
 25778  	//   "flatPath": "{merchantId}/shippingsettings",
 25779  	//   "httpMethod": "GET",
 25780  	//   "id": "content.shippingsettings.list",
 25781  	//   "parameterOrder": [
 25782  	//     "merchantId"
 25783  	//   ],
 25784  	//   "parameters": {
 25785  	//     "maxResults": {
 25786  	//       "description": "The maximum number of shipping settings to return in the response, used for paging.",
 25787  	//       "format": "uint32",
 25788  	//       "location": "query",
 25789  	//       "type": "integer"
 25790  	//     },
 25791  	//     "merchantId": {
 25792  	//       "description": "The ID of the managing account. This must be a multi-client account.",
 25793  	//       "format": "uint64",
 25794  	//       "location": "path",
 25795  	//       "required": true,
 25796  	//       "type": "string"
 25797  	//     },
 25798  	//     "pageToken": {
 25799  	//       "description": "The token returned by the previous request.",
 25800  	//       "location": "query",
 25801  	//       "type": "string"
 25802  	//     }
 25803  	//   },
 25804  	//   "path": "{merchantId}/shippingsettings",
 25805  	//   "response": {
 25806  	//     "$ref": "ShippingsettingsListResponse"
 25807  	//   },
 25808  	//   "scopes": [
 25809  	//     "https://www.googleapis.com/auth/content"
 25810  	//   ]
 25811  	// }
 25812  
 25813  }
 25814  
 25815  // Pages invokes f for each page of results.
 25816  // A non-nil error returned from f will halt the iteration.
 25817  // The provided context supersedes any context provided to the Context method.
 25818  func (c *ShippingsettingsListCall) Pages(ctx context.Context, f func(*ShippingsettingsListResponse) error) error {
 25819  	c.ctx_ = ctx
 25820  	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
 25821  	for {
 25822  		x, err := c.Do()
 25823  		if err != nil {
 25824  			return err
 25825  		}
 25826  		if err := f(x); err != nil {
 25827  			return err
 25828  		}
 25829  		if x.NextPageToken == "" {
 25830  			return nil
 25831  		}
 25832  		c.PageToken(x.NextPageToken)
 25833  	}
 25834  }
 25835  
 25836  // method id "content.shippingsettings.update":
 25837  
 25838  type ShippingsettingsUpdateCall struct {
 25839  	s                *APIService
 25840  	merchantId       uint64
 25841  	accountId        uint64
 25842  	shippingsettings *ShippingSettings
 25843  	urlParams_       gensupport.URLParams
 25844  	ctx_             context.Context
 25845  	header_          http.Header
 25846  }
 25847  
 25848  // Update: Updates the shipping settings of the account. Any fields that
 25849  // are not provided are deleted from the resource.
 25850  //
 25851  //   - accountId: The ID of the account for which to get/update shipping
 25852  //     settings.
 25853  //   - merchantId: The ID of the managing account. If this parameter is
 25854  //     not the same as accountId, then this account must be a multi-client
 25855  //     account and `accountId` must be the ID of a sub-account of this
 25856  //     account.
 25857  func (r *ShippingsettingsService) Update(merchantId uint64, accountId uint64, shippingsettings *ShippingSettings) *ShippingsettingsUpdateCall {
 25858  	c := &ShippingsettingsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 25859  	c.merchantId = merchantId
 25860  	c.accountId = accountId
 25861  	c.shippingsettings = shippingsettings
 25862  	return c
 25863  }
 25864  
 25865  // DryRun sets the optional parameter "dryRun": Flag to simulate a
 25866  // request like in a live environment. If set to true, dry-run mode
 25867  // checks the validity of the request and returns errors (if any).
 25868  func (c *ShippingsettingsUpdateCall) DryRun(dryRun bool) *ShippingsettingsUpdateCall {
 25869  	c.urlParams_.Set("dryRun", fmt.Sprint(dryRun))
 25870  	return c
 25871  }
 25872  
 25873  // Fields allows partial responses to be retrieved. See
 25874  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
 25875  // for more information.
 25876  func (c *ShippingsettingsUpdateCall) Fields(s ...googleapi.Field) *ShippingsettingsUpdateCall {
 25877  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 25878  	return c
 25879  }
 25880  
 25881  // Context sets the context to be used in this call's Do method. Any
 25882  // pending HTTP request will be aborted if the provided context is
 25883  // canceled.
 25884  func (c *ShippingsettingsUpdateCall) Context(ctx context.Context) *ShippingsettingsUpdateCall {
 25885  	c.ctx_ = ctx
 25886  	return c
 25887  }
 25888  
 25889  // Header returns an http.Header that can be modified by the caller to
 25890  // add HTTP headers to the request.
 25891  func (c *ShippingsettingsUpdateCall) Header() http.Header {
 25892  	if c.header_ == nil {
 25893  		c.header_ = make(http.Header)
 25894  	}
 25895  	return c.header_
 25896  }
 25897  
 25898  func (c *ShippingsettingsUpdateCall) doRequest(alt string) (*http.Response, error) {
 25899  	reqHeaders := make(http.Header)
 25900  	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version)
 25901  	for k, v := range c.header_ {
 25902  		reqHeaders[k] = v
 25903  	}
 25904  	reqHeaders.Set("User-Agent", c.s.userAgent())
 25905  	var body io.Reader = nil
 25906  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.shippingsettings)
 25907  	if err != nil {
 25908  		return nil, err
 25909  	}
 25910  	reqHeaders.Set("Content-Type", "application/json")
 25911  	c.urlParams_.Set("alt", alt)
 25912  	c.urlParams_.Set("prettyPrint", "false")
 25913  	urls := googleapi.ResolveRelative(c.s.BasePath, "{merchantId}/shippingsettings/{accountId}")
 25914  	urls += "?" + c.urlParams_.Encode()
 25915  	req, err := http.NewRequest("PUT", urls, body)
 25916  	if err != nil {
 25917  		return nil, err
 25918  	}
 25919  	req.Header = reqHeaders
 25920  	googleapi.Expand(req.URL, map[string]string{
 25921  		"merchantId": strconv.FormatUint(c.merchantId, 10),
 25922  		"accountId":  strconv.FormatUint(c.accountId, 10),
 25923  	})
 25924  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 25925  }
 25926  
 25927  // Do executes the "content.shippingsettings.update" call.
 25928  // Exactly one of *ShippingSettings or error will be non-nil. Any
 25929  // non-2xx status code is an error. Response headers are in either
 25930  // *ShippingSettings.ServerResponse.Header or (if a response was
 25931  // returned at all) in error.(*googleapi.Error).Header. Use
 25932  // googleapi.IsNotModified to check whether the returned error was
 25933  // because http.StatusNotModified was returned.
 25934  func (c *ShippingsettingsUpdateCall) Do(opts ...googleapi.CallOption) (*ShippingSettings, error) {
 25935  	gensupport.SetOptions(c.urlParams_, opts...)
 25936  	res, err := c.doRequest("json")
 25937  	if res != nil && res.StatusCode == http.StatusNotModified {
 25938  		if res.Body != nil {
 25939  			res.Body.Close()
 25940  		}
 25941  		return nil, &googleapi.Error{
 25942  			Code:   res.StatusCode,
 25943  			Header: res.Header,
 25944  		}
 25945  	}
 25946  	if err != nil {
 25947  		return nil, err
 25948  	}
 25949  	defer googleapi.CloseBody(res)
 25950  	if err := googleapi.CheckResponse(res); err != nil {
 25951  		return nil, err
 25952  	}
 25953  	ret := &ShippingSettings{
 25954  		ServerResponse: googleapi.ServerResponse{
 25955  			Header:         res.Header,
 25956  			HTTPStatusCode: res.StatusCode,
 25957  		},
 25958  	}
 25959  	target := &ret
 25960  	if err := gensupport.DecodeResponse(target, res); err != nil {
 25961  		return nil, err
 25962  	}
 25963  	return ret, nil
 25964  	// {
 25965  	//   "description": "Updates the shipping settings of the account. Any fields that are not provided are deleted from the resource.",
 25966  	//   "flatPath": "{merchantId}/shippingsettings/{accountId}",
 25967  	//   "httpMethod": "PUT",
 25968  	//   "id": "content.shippingsettings.update",
 25969  	//   "parameterOrder": [
 25970  	//     "merchantId",
 25971  	//     "accountId"
 25972  	//   ],
 25973  	//   "parameters": {
 25974  	//     "accountId": {
 25975  	//       "description": "The ID of the account for which to get/update shipping settings.",
 25976  	//       "format": "uint64",
 25977  	//       "location": "path",
 25978  	//       "required": true,
 25979  	//       "type": "string"
 25980  	//     },
 25981  	//     "dryRun": {
 25982  	//       "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).",
 25983  	//       "location": "query",
 25984  	//       "type": "boolean"
 25985  	//     },
 25986  	//     "merchantId": {
 25987  	//       "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.",
 25988  	//       "format": "uint64",
 25989  	//       "location": "path",
 25990  	//       "required": true,
 25991  	//       "type": "string"
 25992  	//     }
 25993  	//   },
 25994  	//   "path": "{merchantId}/shippingsettings/{accountId}",
 25995  	//   "request": {
 25996  	//     "$ref": "ShippingSettings"
 25997  	//   },
 25998  	//   "response": {
 25999  	//     "$ref": "ShippingSettings"
 26000  	//   },
 26001  	//   "scopes": [
 26002  	//     "https://www.googleapis.com/auth/content"
 26003  	//   ]
 26004  	// }
 26005  
 26006  }
 26007  

View as plain text