...

Source file src/google.golang.org/api/cloudchannel/v1/cloudchannel-gen.go

Documentation: google.golang.org/api/cloudchannel/v1

     1  // Copyright 2024 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 cloudchannel provides access to the Cloud Channel API.
     8  //
     9  // For product documentation, see: https://cloud.google.com/channel
    10  //
    11  // # Library status
    12  //
    13  // These client libraries are officially supported by Google. However, this
    14  // library is considered complete and is in maintenance mode. This means
    15  // that we will address critical bugs and security issues but will not add
    16  // any new features.
    17  //
    18  // When possible, we recommend using our newer
    19  // [Cloud Client Libraries for Go](https://pkg.go.dev/cloud.google.com/go)
    20  // that are still actively being worked and iterated on.
    21  //
    22  // # Creating a client
    23  //
    24  // Usage example:
    25  //
    26  //	import "google.golang.org/api/cloudchannel/v1"
    27  //	...
    28  //	ctx := context.Background()
    29  //	cloudchannelService, err := cloudchannel.NewService(ctx)
    30  //
    31  // In this example, Google Application Default Credentials are used for
    32  // authentication. For information on how to create and obtain Application
    33  // Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials.
    34  //
    35  // # Other authentication options
    36  //
    37  // By default, all available scopes (see "Constants") are used to authenticate.
    38  // To restrict scopes, use [google.golang.org/api/option.WithScopes]:
    39  //
    40  //	cloudchannelService, err := cloudchannel.NewService(ctx, option.WithScopes(cloudchannel.AppsReportsUsageReadonlyScope))
    41  //
    42  // To use an API key for authentication (note: some APIs do not support API
    43  // keys), use [google.golang.org/api/option.WithAPIKey]:
    44  //
    45  //	cloudchannelService, err := cloudchannel.NewService(ctx, option.WithAPIKey("AIza..."))
    46  //
    47  // To use an OAuth token (e.g., a user token obtained via a three-legged OAuth
    48  // flow, use [google.golang.org/api/option.WithTokenSource]:
    49  //
    50  //	config := &oauth2.Config{...}
    51  //	// ...
    52  //	token, err := config.Exchange(ctx, ...)
    53  //	cloudchannelService, err := cloudchannel.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))
    54  //
    55  // See [google.golang.org/api/option.ClientOption] for details on options.
    56  package cloudchannel // import "google.golang.org/api/cloudchannel/v1"
    57  
    58  import (
    59  	"bytes"
    60  	"context"
    61  	"encoding/json"
    62  	"errors"
    63  	"fmt"
    64  	"io"
    65  	"net/http"
    66  	"net/url"
    67  	"strconv"
    68  	"strings"
    69  
    70  	googleapi "google.golang.org/api/googleapi"
    71  	internal "google.golang.org/api/internal"
    72  	gensupport "google.golang.org/api/internal/gensupport"
    73  	option "google.golang.org/api/option"
    74  	internaloption "google.golang.org/api/option/internaloption"
    75  	htransport "google.golang.org/api/transport/http"
    76  )
    77  
    78  // Always reference these packages, just in case the auto-generated code
    79  // below doesn't.
    80  var _ = bytes.NewBuffer
    81  var _ = strconv.Itoa
    82  var _ = fmt.Sprintf
    83  var _ = json.NewDecoder
    84  var _ = io.Copy
    85  var _ = url.Parse
    86  var _ = gensupport.MarshalJSON
    87  var _ = googleapi.Version
    88  var _ = errors.New
    89  var _ = strings.Replace
    90  var _ = context.Canceled
    91  var _ = internaloption.WithDefaultEndpoint
    92  var _ = internal.Version
    93  
    94  const apiId = "cloudchannel:v1"
    95  const apiName = "cloudchannel"
    96  const apiVersion = "v1"
    97  const basePath = "https://cloudchannel.googleapis.com/"
    98  const basePathTemplate = "https://cloudchannel.UNIVERSE_DOMAIN/"
    99  const mtlsBasePath = "https://cloudchannel.mtls.googleapis.com/"
   100  
   101  // OAuth2 scopes used by this API.
   102  const (
   103  	// Manage users on your domain
   104  	AppsOrderScope = "https://www.googleapis.com/auth/apps.order"
   105  
   106  	// View usage reports for your G Suite domain
   107  	AppsReportsUsageReadonlyScope = "https://www.googleapis.com/auth/apps.reports.usage.readonly"
   108  )
   109  
   110  // NewService creates a new Service.
   111  func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) {
   112  	scopesOption := internaloption.WithDefaultScopes(
   113  		"https://www.googleapis.com/auth/apps.order",
   114  		"https://www.googleapis.com/auth/apps.reports.usage.readonly",
   115  	)
   116  	// NOTE: prepend, so we don't override user-specified scopes.
   117  	opts = append([]option.ClientOption{scopesOption}, opts...)
   118  	opts = append(opts, internaloption.WithDefaultEndpoint(basePath))
   119  	opts = append(opts, internaloption.WithDefaultEndpointTemplate(basePathTemplate))
   120  	opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath))
   121  	opts = append(opts, internaloption.EnableNewAuthLibrary())
   122  	client, endpoint, err := htransport.NewClient(ctx, opts...)
   123  	if err != nil {
   124  		return nil, err
   125  	}
   126  	s, err := New(client)
   127  	if err != nil {
   128  		return nil, err
   129  	}
   130  	if endpoint != "" {
   131  		s.BasePath = endpoint
   132  	}
   133  	return s, nil
   134  }
   135  
   136  // New creates a new Service. It uses the provided http.Client for requests.
   137  //
   138  // Deprecated: please use NewService instead.
   139  // To provide a custom HTTP client, use option.WithHTTPClient.
   140  // If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead.
   141  func New(client *http.Client) (*Service, error) {
   142  	if client == nil {
   143  		return nil, errors.New("client is nil")
   144  	}
   145  	s := &Service{client: client, BasePath: basePath}
   146  	s.Accounts = NewAccountsService(s)
   147  	s.Operations = NewOperationsService(s)
   148  	s.Products = NewProductsService(s)
   149  	return s, nil
   150  }
   151  
   152  type Service struct {
   153  	client    *http.Client
   154  	BasePath  string // API endpoint base URL
   155  	UserAgent string // optional additional User-Agent fragment
   156  
   157  	Accounts *AccountsService
   158  
   159  	Operations *OperationsService
   160  
   161  	Products *ProductsService
   162  }
   163  
   164  func (s *Service) userAgent() string {
   165  	if s.UserAgent == "" {
   166  		return googleapi.UserAgent
   167  	}
   168  	return googleapi.UserAgent + " " + s.UserAgent
   169  }
   170  
   171  func NewAccountsService(s *Service) *AccountsService {
   172  	rs := &AccountsService{s: s}
   173  	rs.ChannelPartnerLinks = NewAccountsChannelPartnerLinksService(s)
   174  	rs.Customers = NewAccountsCustomersService(s)
   175  	rs.Offers = NewAccountsOffersService(s)
   176  	rs.ReportJobs = NewAccountsReportJobsService(s)
   177  	rs.Reports = NewAccountsReportsService(s)
   178  	rs.SkuGroups = NewAccountsSkuGroupsService(s)
   179  	return rs
   180  }
   181  
   182  type AccountsService struct {
   183  	s *Service
   184  
   185  	ChannelPartnerLinks *AccountsChannelPartnerLinksService
   186  
   187  	Customers *AccountsCustomersService
   188  
   189  	Offers *AccountsOffersService
   190  
   191  	ReportJobs *AccountsReportJobsService
   192  
   193  	Reports *AccountsReportsService
   194  
   195  	SkuGroups *AccountsSkuGroupsService
   196  }
   197  
   198  func NewAccountsChannelPartnerLinksService(s *Service) *AccountsChannelPartnerLinksService {
   199  	rs := &AccountsChannelPartnerLinksService{s: s}
   200  	rs.ChannelPartnerRepricingConfigs = NewAccountsChannelPartnerLinksChannelPartnerRepricingConfigsService(s)
   201  	rs.Customers = NewAccountsChannelPartnerLinksCustomersService(s)
   202  	return rs
   203  }
   204  
   205  type AccountsChannelPartnerLinksService struct {
   206  	s *Service
   207  
   208  	ChannelPartnerRepricingConfigs *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsService
   209  
   210  	Customers *AccountsChannelPartnerLinksCustomersService
   211  }
   212  
   213  func NewAccountsChannelPartnerLinksChannelPartnerRepricingConfigsService(s *Service) *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsService {
   214  	rs := &AccountsChannelPartnerLinksChannelPartnerRepricingConfigsService{s: s}
   215  	return rs
   216  }
   217  
   218  type AccountsChannelPartnerLinksChannelPartnerRepricingConfigsService struct {
   219  	s *Service
   220  }
   221  
   222  func NewAccountsChannelPartnerLinksCustomersService(s *Service) *AccountsChannelPartnerLinksCustomersService {
   223  	rs := &AccountsChannelPartnerLinksCustomersService{s: s}
   224  	return rs
   225  }
   226  
   227  type AccountsChannelPartnerLinksCustomersService struct {
   228  	s *Service
   229  }
   230  
   231  func NewAccountsCustomersService(s *Service) *AccountsCustomersService {
   232  	rs := &AccountsCustomersService{s: s}
   233  	rs.CustomerRepricingConfigs = NewAccountsCustomersCustomerRepricingConfigsService(s)
   234  	rs.Entitlements = NewAccountsCustomersEntitlementsService(s)
   235  	return rs
   236  }
   237  
   238  type AccountsCustomersService struct {
   239  	s *Service
   240  
   241  	CustomerRepricingConfigs *AccountsCustomersCustomerRepricingConfigsService
   242  
   243  	Entitlements *AccountsCustomersEntitlementsService
   244  }
   245  
   246  func NewAccountsCustomersCustomerRepricingConfigsService(s *Service) *AccountsCustomersCustomerRepricingConfigsService {
   247  	rs := &AccountsCustomersCustomerRepricingConfigsService{s: s}
   248  	return rs
   249  }
   250  
   251  type AccountsCustomersCustomerRepricingConfigsService struct {
   252  	s *Service
   253  }
   254  
   255  func NewAccountsCustomersEntitlementsService(s *Service) *AccountsCustomersEntitlementsService {
   256  	rs := &AccountsCustomersEntitlementsService{s: s}
   257  	return rs
   258  }
   259  
   260  type AccountsCustomersEntitlementsService struct {
   261  	s *Service
   262  }
   263  
   264  func NewAccountsOffersService(s *Service) *AccountsOffersService {
   265  	rs := &AccountsOffersService{s: s}
   266  	return rs
   267  }
   268  
   269  type AccountsOffersService struct {
   270  	s *Service
   271  }
   272  
   273  func NewAccountsReportJobsService(s *Service) *AccountsReportJobsService {
   274  	rs := &AccountsReportJobsService{s: s}
   275  	return rs
   276  }
   277  
   278  type AccountsReportJobsService struct {
   279  	s *Service
   280  }
   281  
   282  func NewAccountsReportsService(s *Service) *AccountsReportsService {
   283  	rs := &AccountsReportsService{s: s}
   284  	return rs
   285  }
   286  
   287  type AccountsReportsService struct {
   288  	s *Service
   289  }
   290  
   291  func NewAccountsSkuGroupsService(s *Service) *AccountsSkuGroupsService {
   292  	rs := &AccountsSkuGroupsService{s: s}
   293  	rs.BillableSkus = NewAccountsSkuGroupsBillableSkusService(s)
   294  	return rs
   295  }
   296  
   297  type AccountsSkuGroupsService struct {
   298  	s *Service
   299  
   300  	BillableSkus *AccountsSkuGroupsBillableSkusService
   301  }
   302  
   303  func NewAccountsSkuGroupsBillableSkusService(s *Service) *AccountsSkuGroupsBillableSkusService {
   304  	rs := &AccountsSkuGroupsBillableSkusService{s: s}
   305  	return rs
   306  }
   307  
   308  type AccountsSkuGroupsBillableSkusService struct {
   309  	s *Service
   310  }
   311  
   312  func NewOperationsService(s *Service) *OperationsService {
   313  	rs := &OperationsService{s: s}
   314  	return rs
   315  }
   316  
   317  type OperationsService struct {
   318  	s *Service
   319  }
   320  
   321  func NewProductsService(s *Service) *ProductsService {
   322  	rs := &ProductsService{s: s}
   323  	rs.Skus = NewProductsSkusService(s)
   324  	return rs
   325  }
   326  
   327  type ProductsService struct {
   328  	s *Service
   329  
   330  	Skus *ProductsSkusService
   331  }
   332  
   333  func NewProductsSkusService(s *Service) *ProductsSkusService {
   334  	rs := &ProductsSkusService{s: s}
   335  	return rs
   336  }
   337  
   338  type ProductsSkusService struct {
   339  	s *Service
   340  }
   341  
   342  // GoogleCloudChannelV1ActivateEntitlementRequest: Request message for
   343  // CloudChannelService.ActivateEntitlement.
   344  type GoogleCloudChannelV1ActivateEntitlementRequest struct {
   345  	// RequestId: Optional. You can specify an optional unique request ID, and if
   346  	// you need to retry your request, the server will know to ignore the request
   347  	// if it's complete. For example, you make an initial request and the request
   348  	// times out. If you make the request again with the same request ID, the
   349  	// server can check if it received the original operation with the same request
   350  	// ID. If it did, it will ignore the second request. The request ID must be a
   351  	// valid UUID (https://tools.ietf.org/html/rfc4122) with the exception that
   352  	// zero UUID is not supported (`00000000-0000-0000-0000-000000000000`).
   353  	RequestId string `json:"requestId,omitempty"`
   354  	// ForceSendFields is a list of field names (e.g. "RequestId") to
   355  	// unconditionally include in API requests. By default, fields with empty or
   356  	// default values are omitted from API requests. See
   357  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   358  	// details.
   359  	ForceSendFields []string `json:"-"`
   360  	// NullFields is a list of field names (e.g. "RequestId") to include in API
   361  	// requests with the JSON null value. By default, fields with empty values are
   362  	// omitted from API requests. See
   363  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   364  	NullFields []string `json:"-"`
   365  }
   366  
   367  func (s *GoogleCloudChannelV1ActivateEntitlementRequest) MarshalJSON() ([]byte, error) {
   368  	type NoMethod GoogleCloudChannelV1ActivateEntitlementRequest
   369  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   370  }
   371  
   372  // GoogleCloudChannelV1AdminUser: Information needed to create an Admin User
   373  // for Google Workspace.
   374  type GoogleCloudChannelV1AdminUser struct {
   375  	// Email: Primary email of the admin user.
   376  	Email string `json:"email,omitempty"`
   377  	// FamilyName: Family name of the admin user.
   378  	FamilyName string `json:"familyName,omitempty"`
   379  	// GivenName: Given name of the admin user.
   380  	GivenName string `json:"givenName,omitempty"`
   381  	// ForceSendFields is a list of field names (e.g. "Email") to unconditionally
   382  	// include in API requests. By default, fields with empty or default values are
   383  	// omitted from API requests. See
   384  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   385  	// details.
   386  	ForceSendFields []string `json:"-"`
   387  	// NullFields is a list of field names (e.g. "Email") to include in API
   388  	// requests with the JSON null value. By default, fields with empty values are
   389  	// omitted from API requests. See
   390  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   391  	NullFields []string `json:"-"`
   392  }
   393  
   394  func (s *GoogleCloudChannelV1AdminUser) MarshalJSON() ([]byte, error) {
   395  	type NoMethod GoogleCloudChannelV1AdminUser
   396  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   397  }
   398  
   399  // GoogleCloudChannelV1AssociationInfo: Association links that an entitlement
   400  // has to other entitlements.
   401  type GoogleCloudChannelV1AssociationInfo struct {
   402  	// BaseEntitlement: The name of the base entitlement, for which this
   403  	// entitlement is an add-on.
   404  	BaseEntitlement string `json:"baseEntitlement,omitempty"`
   405  	// ForceSendFields is a list of field names (e.g. "BaseEntitlement") to
   406  	// unconditionally include in API requests. By default, fields with empty or
   407  	// default values are omitted from API requests. See
   408  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   409  	// details.
   410  	ForceSendFields []string `json:"-"`
   411  	// NullFields is a list of field names (e.g. "BaseEntitlement") to include in
   412  	// API requests with the JSON null value. By default, fields with empty values
   413  	// are omitted from API requests. See
   414  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   415  	NullFields []string `json:"-"`
   416  }
   417  
   418  func (s *GoogleCloudChannelV1AssociationInfo) MarshalJSON() ([]byte, error) {
   419  	type NoMethod GoogleCloudChannelV1AssociationInfo
   420  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   421  }
   422  
   423  // GoogleCloudChannelV1BillableSku: Represents the Billable SKU information.
   424  type GoogleCloudChannelV1BillableSku struct {
   425  	// Service: Resource name of Service which contains Repricing SKU. Format:
   426  	// services/{service}. Example: "services/B7D9-FDCB-15D8".
   427  	Service string `json:"service,omitempty"`
   428  	// ServiceDisplayName: Unique human readable name for the Service.
   429  	ServiceDisplayName string `json:"serviceDisplayName,omitempty"`
   430  	// Sku: Resource name of Billable SKU. Format: billableSkus/{sku}. Example:
   431  	// billableSkus/6E1B-6634-470F".
   432  	Sku string `json:"sku,omitempty"`
   433  	// SkuDisplayName: Unique human readable name for the SKU.
   434  	SkuDisplayName string `json:"skuDisplayName,omitempty"`
   435  	// ForceSendFields is a list of field names (e.g. "Service") to unconditionally
   436  	// include in API requests. By default, fields with empty or default values are
   437  	// omitted from API requests. See
   438  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   439  	// details.
   440  	ForceSendFields []string `json:"-"`
   441  	// NullFields is a list of field names (e.g. "Service") to include in API
   442  	// requests with the JSON null value. By default, fields with empty values are
   443  	// omitted from API requests. See
   444  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   445  	NullFields []string `json:"-"`
   446  }
   447  
   448  func (s *GoogleCloudChannelV1BillableSku) MarshalJSON() ([]byte, error) {
   449  	type NoMethod GoogleCloudChannelV1BillableSku
   450  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   451  }
   452  
   453  // GoogleCloudChannelV1BillingAccount: Represents a billing account.
   454  type GoogleCloudChannelV1BillingAccount struct {
   455  	// CreateTime: Output only. The time when this billing account was created.
   456  	CreateTime string `json:"createTime,omitempty"`
   457  	// CurrencyCode: Output only. The 3-letter currency code defined in ISO 4217.
   458  	CurrencyCode string `json:"currencyCode,omitempty"`
   459  	// DisplayName: Display name of the billing account.
   460  	DisplayName string `json:"displayName,omitempty"`
   461  	// Name: Output only. Resource name of the billing account. Format:
   462  	// accounts/{account_id}/billingAccounts/{billing_account_id}.
   463  	Name string `json:"name,omitempty"`
   464  	// RegionCode: Output only. The CLDR region code.
   465  	RegionCode string `json:"regionCode,omitempty"`
   466  	// ForceSendFields is a list of field names (e.g. "CreateTime") to
   467  	// unconditionally include in API requests. By default, fields with empty or
   468  	// default values are omitted from API requests. See
   469  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   470  	// details.
   471  	ForceSendFields []string `json:"-"`
   472  	// NullFields is a list of field names (e.g. "CreateTime") to include in API
   473  	// requests with the JSON null value. By default, fields with empty values are
   474  	// omitted from API requests. See
   475  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   476  	NullFields []string `json:"-"`
   477  }
   478  
   479  func (s *GoogleCloudChannelV1BillingAccount) MarshalJSON() ([]byte, error) {
   480  	type NoMethod GoogleCloudChannelV1BillingAccount
   481  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   482  }
   483  
   484  // GoogleCloudChannelV1BillingAccountPurchaseInfo: Represents a billing account
   485  // that can be used to make a purchase.
   486  type GoogleCloudChannelV1BillingAccountPurchaseInfo struct {
   487  	// BillingAccount: The billing account resource.
   488  	BillingAccount *GoogleCloudChannelV1BillingAccount `json:"billingAccount,omitempty"`
   489  	// ForceSendFields is a list of field names (e.g. "BillingAccount") to
   490  	// unconditionally include in API requests. By default, fields with empty or
   491  	// default values are omitted from API requests. See
   492  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   493  	// details.
   494  	ForceSendFields []string `json:"-"`
   495  	// NullFields is a list of field names (e.g. "BillingAccount") to include in
   496  	// API requests with the JSON null value. By default, fields with empty values
   497  	// are omitted from API requests. See
   498  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   499  	NullFields []string `json:"-"`
   500  }
   501  
   502  func (s *GoogleCloudChannelV1BillingAccountPurchaseInfo) MarshalJSON() ([]byte, error) {
   503  	type NoMethod GoogleCloudChannelV1BillingAccountPurchaseInfo
   504  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   505  }
   506  
   507  // GoogleCloudChannelV1CancelEntitlementRequest: Request message for
   508  // CloudChannelService.CancelEntitlement.
   509  type GoogleCloudChannelV1CancelEntitlementRequest struct {
   510  	// RequestId: Optional. You can specify an optional unique request ID, and if
   511  	// you need to retry your request, the server will know to ignore the request
   512  	// if it's complete. For example, you make an initial request and the request
   513  	// times out. If you make the request again with the same request ID, the
   514  	// server can check if it received the original operation with the same request
   515  	// ID. If it did, it will ignore the second request. The request ID must be a
   516  	// valid UUID (https://tools.ietf.org/html/rfc4122) with the exception that
   517  	// zero UUID is not supported (`00000000-0000-0000-0000-000000000000`).
   518  	RequestId string `json:"requestId,omitempty"`
   519  	// ForceSendFields is a list of field names (e.g. "RequestId") to
   520  	// unconditionally include in API requests. By default, fields with empty or
   521  	// default values are omitted from API requests. See
   522  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   523  	// details.
   524  	ForceSendFields []string `json:"-"`
   525  	// NullFields is a list of field names (e.g. "RequestId") to include in API
   526  	// requests with the JSON null value. By default, fields with empty values are
   527  	// omitted from API requests. See
   528  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   529  	NullFields []string `json:"-"`
   530  }
   531  
   532  func (s *GoogleCloudChannelV1CancelEntitlementRequest) MarshalJSON() ([]byte, error) {
   533  	type NoMethod GoogleCloudChannelV1CancelEntitlementRequest
   534  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   535  }
   536  
   537  // GoogleCloudChannelV1ChangeOfferRequest: Request message for
   538  // CloudChannelService.ChangeOffer.
   539  type GoogleCloudChannelV1ChangeOfferRequest struct {
   540  	// BillingAccount: Optional. The billing account resource name that is used to
   541  	// pay for this entitlement when setting up billing on a trial subscription.
   542  	// This field is only relevant for multi-currency accounts. It should be left
   543  	// empty for single currency accounts.
   544  	BillingAccount string `json:"billingAccount,omitempty"`
   545  	// Offer: Required. New Offer. Format: accounts/{account_id}/offers/{offer_id}.
   546  	Offer string `json:"offer,omitempty"`
   547  	// Parameters: Optional. Parameters needed to purchase the Offer. To view the
   548  	// available Parameters refer to the Offer.parameter_definitions from the
   549  	// desired offer.
   550  	Parameters []*GoogleCloudChannelV1Parameter `json:"parameters,omitempty"`
   551  	// PurchaseOrderId: Optional. Purchase order id provided by the reseller.
   552  	PurchaseOrderId string `json:"purchaseOrderId,omitempty"`
   553  	// RequestId: Optional. You can specify an optional unique request ID, and if
   554  	// you need to retry your request, the server will know to ignore the request
   555  	// if it's complete. For example, you make an initial request and the request
   556  	// times out. If you make the request again with the same request ID, the
   557  	// server can check if it received the original operation with the same request
   558  	// ID. If it did, it will ignore the second request. The request ID must be a
   559  	// valid UUID (https://tools.ietf.org/html/rfc4122) with the exception that
   560  	// zero UUID is not supported (`00000000-0000-0000-0000-000000000000`).
   561  	RequestId string `json:"requestId,omitempty"`
   562  	// ForceSendFields is a list of field names (e.g. "BillingAccount") to
   563  	// unconditionally include in API requests. By default, fields with empty or
   564  	// default values are omitted from API requests. See
   565  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   566  	// details.
   567  	ForceSendFields []string `json:"-"`
   568  	// NullFields is a list of field names (e.g. "BillingAccount") to include in
   569  	// API requests with the JSON null value. By default, fields with empty values
   570  	// are omitted from API requests. See
   571  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   572  	NullFields []string `json:"-"`
   573  }
   574  
   575  func (s *GoogleCloudChannelV1ChangeOfferRequest) MarshalJSON() ([]byte, error) {
   576  	type NoMethod GoogleCloudChannelV1ChangeOfferRequest
   577  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   578  }
   579  
   580  // GoogleCloudChannelV1ChangeParametersRequest: Request message for
   581  // CloudChannelService.ChangeParametersRequest.
   582  type GoogleCloudChannelV1ChangeParametersRequest struct {
   583  	// Parameters: Required. Entitlement parameters to update. You can only change
   584  	// editable parameters. To view the available Parameters for a request, refer
   585  	// to the Offer.parameter_definitions from the desired offer.
   586  	Parameters []*GoogleCloudChannelV1Parameter `json:"parameters,omitempty"`
   587  	// PurchaseOrderId: Optional. Purchase order ID provided by the reseller.
   588  	PurchaseOrderId string `json:"purchaseOrderId,omitempty"`
   589  	// RequestId: Optional. You can specify an optional unique request ID, and if
   590  	// you need to retry your request, the server will know to ignore the request
   591  	// if it's complete. For example, you make an initial request and the request
   592  	// times out. If you make the request again with the same request ID, the
   593  	// server can check if it received the original operation with the same request
   594  	// ID. If it did, it will ignore the second request. The request ID must be a
   595  	// valid UUID (https://tools.ietf.org/html/rfc4122) with the exception that
   596  	// zero UUID is not supported (`00000000-0000-0000-0000-000000000000`).
   597  	RequestId string `json:"requestId,omitempty"`
   598  	// ForceSendFields is a list of field names (e.g. "Parameters") to
   599  	// unconditionally include in API requests. By default, fields with empty or
   600  	// default values are omitted from API requests. See
   601  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   602  	// details.
   603  	ForceSendFields []string `json:"-"`
   604  	// NullFields is a list of field names (e.g. "Parameters") to include in API
   605  	// requests with the JSON null value. By default, fields with empty values are
   606  	// omitted from API requests. See
   607  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   608  	NullFields []string `json:"-"`
   609  }
   610  
   611  func (s *GoogleCloudChannelV1ChangeParametersRequest) MarshalJSON() ([]byte, error) {
   612  	type NoMethod GoogleCloudChannelV1ChangeParametersRequest
   613  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   614  }
   615  
   616  // GoogleCloudChannelV1ChangeRenewalSettingsRequest: Request message for
   617  // CloudChannelService.ChangeRenewalSettings.
   618  type GoogleCloudChannelV1ChangeRenewalSettingsRequest struct {
   619  	// RenewalSettings: Required. New renewal settings.
   620  	RenewalSettings *GoogleCloudChannelV1RenewalSettings `json:"renewalSettings,omitempty"`
   621  	// RequestId: Optional. You can specify an optional unique request ID, and if
   622  	// you need to retry your request, the server will know to ignore the request
   623  	// if it's complete. For example, you make an initial request and the request
   624  	// times out. If you make the request again with the same request ID, the
   625  	// server can check if it received the original operation with the same request
   626  	// ID. If it did, it will ignore the second request. The request ID must be a
   627  	// valid UUID (https://tools.ietf.org/html/rfc4122) with the exception that
   628  	// zero UUID is not supported (`00000000-0000-0000-0000-000000000000`).
   629  	RequestId string `json:"requestId,omitempty"`
   630  	// ForceSendFields is a list of field names (e.g. "RenewalSettings") to
   631  	// unconditionally include in API requests. By default, fields with empty or
   632  	// default values are omitted from API requests. See
   633  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   634  	// details.
   635  	ForceSendFields []string `json:"-"`
   636  	// NullFields is a list of field names (e.g. "RenewalSettings") to include in
   637  	// API requests with the JSON null value. By default, fields with empty values
   638  	// are omitted from API requests. See
   639  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   640  	NullFields []string `json:"-"`
   641  }
   642  
   643  func (s *GoogleCloudChannelV1ChangeRenewalSettingsRequest) MarshalJSON() ([]byte, error) {
   644  	type NoMethod GoogleCloudChannelV1ChangeRenewalSettingsRequest
   645  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   646  }
   647  
   648  // GoogleCloudChannelV1ChannelPartnerLink: Entity representing a link between
   649  // distributors and their indirect resellers in an n-tier resale channel.
   650  type GoogleCloudChannelV1ChannelPartnerLink struct {
   651  	// ChannelPartnerCloudIdentityInfo: Output only. Cloud Identity info of the
   652  	// channel partner (IR).
   653  	ChannelPartnerCloudIdentityInfo *GoogleCloudChannelV1CloudIdentityInfo `json:"channelPartnerCloudIdentityInfo,omitempty"`
   654  	// CreateTime: Output only. Timestamp of when the channel partner link is
   655  	// created.
   656  	CreateTime string `json:"createTime,omitempty"`
   657  	// InviteLinkUri: Output only. URI of the web page where partner accepts the
   658  	// link invitation.
   659  	InviteLinkUri string `json:"inviteLinkUri,omitempty"`
   660  	// LinkState: Required. State of the channel partner link.
   661  	//
   662  	// Possible values:
   663  	//   "CHANNEL_PARTNER_LINK_STATE_UNSPECIFIED" - Not used.
   664  	//   "INVITED" - An invitation has been sent to the reseller to create a
   665  	// channel partner link.
   666  	//   "ACTIVE" - Status when the reseller is active.
   667  	//   "REVOKED" - Status when the reseller has been revoked by the distributor.
   668  	//   "SUSPENDED" - Status when the reseller is suspended by Google or
   669  	// distributor.
   670  	LinkState string `json:"linkState,omitempty"`
   671  	// Name: Output only. Resource name for the channel partner link, in the format
   672  	// accounts/{account_id}/channelPartnerLinks/{id}.
   673  	Name string `json:"name,omitempty"`
   674  	// PublicId: Output only. Public identifier that a customer must use to
   675  	// generate a transfer token to move to this distributor-reseller combination.
   676  	PublicId string `json:"publicId,omitempty"`
   677  	// ResellerCloudIdentityId: Required. Cloud Identity ID of the linked reseller.
   678  	ResellerCloudIdentityId string `json:"resellerCloudIdentityId,omitempty"`
   679  	// UpdateTime: Output only. Timestamp of when the channel partner link is
   680  	// updated.
   681  	UpdateTime string `json:"updateTime,omitempty"`
   682  
   683  	// ServerResponse contains the HTTP response code and headers from the server.
   684  	googleapi.ServerResponse `json:"-"`
   685  	// ForceSendFields is a list of field names (e.g.
   686  	// "ChannelPartnerCloudIdentityInfo") to unconditionally include in API
   687  	// requests. By default, fields with empty or default values are omitted from
   688  	// API requests. See
   689  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   690  	// details.
   691  	ForceSendFields []string `json:"-"`
   692  	// NullFields is a list of field names (e.g. "ChannelPartnerCloudIdentityInfo")
   693  	// to include in API requests with the JSON null value. By default, fields with
   694  	// empty values are omitted from API requests. See
   695  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   696  	NullFields []string `json:"-"`
   697  }
   698  
   699  func (s *GoogleCloudChannelV1ChannelPartnerLink) MarshalJSON() ([]byte, error) {
   700  	type NoMethod GoogleCloudChannelV1ChannelPartnerLink
   701  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   702  }
   703  
   704  // GoogleCloudChannelV1ChannelPartnerRepricingConfig: Configuration for how a
   705  // distributor will rebill a channel partner (also known as a
   706  // distributor-authorized reseller).
   707  type GoogleCloudChannelV1ChannelPartnerRepricingConfig struct {
   708  	// Name: Output only. Resource name of the ChannelPartnerRepricingConfig.
   709  	// Format:
   710  	// accounts/{account_id}/channelPartnerLinks/{channel_partner_id}/channelPartner
   711  	// RepricingConfigs/{id}.
   712  	Name string `json:"name,omitempty"`
   713  	// RepricingConfig: Required. The configuration for bill modifications made by
   714  	// a reseller before sending it to ChannelPartner.
   715  	RepricingConfig *GoogleCloudChannelV1RepricingConfig `json:"repricingConfig,omitempty"`
   716  	// UpdateTime: Output only. Timestamp of an update to the repricing rule. If
   717  	// `update_time` is after RepricingConfig.effective_invoice_month then it
   718  	// indicates this was set mid-month.
   719  	UpdateTime string `json:"updateTime,omitempty"`
   720  
   721  	// ServerResponse contains the HTTP response code and headers from the server.
   722  	googleapi.ServerResponse `json:"-"`
   723  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
   724  	// include in API requests. By default, fields with empty or default values are
   725  	// omitted from API requests. See
   726  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   727  	// details.
   728  	ForceSendFields []string `json:"-"`
   729  	// NullFields is a list of field names (e.g. "Name") to include in API requests
   730  	// with the JSON null value. By default, fields with empty values are omitted
   731  	// from API requests. See
   732  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   733  	NullFields []string `json:"-"`
   734  }
   735  
   736  func (s *GoogleCloudChannelV1ChannelPartnerRepricingConfig) MarshalJSON() ([]byte, error) {
   737  	type NoMethod GoogleCloudChannelV1ChannelPartnerRepricingConfig
   738  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   739  }
   740  
   741  // GoogleCloudChannelV1CheckCloudIdentityAccountsExistRequest: Request message
   742  // for CloudChannelService.CheckCloudIdentityAccountsExist.
   743  type GoogleCloudChannelV1CheckCloudIdentityAccountsExistRequest struct {
   744  	// Domain: Required. Domain to fetch for Cloud Identity account customers,
   745  	// including domained and domainless.
   746  	Domain string `json:"domain,omitempty"`
   747  	// ForceSendFields is a list of field names (e.g. "Domain") to unconditionally
   748  	// include in API requests. By default, fields with empty or default values are
   749  	// omitted from API requests. See
   750  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   751  	// details.
   752  	ForceSendFields []string `json:"-"`
   753  	// NullFields is a list of field names (e.g. "Domain") to include in API
   754  	// requests with the JSON null value. By default, fields with empty values are
   755  	// omitted from API requests. See
   756  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   757  	NullFields []string `json:"-"`
   758  }
   759  
   760  func (s *GoogleCloudChannelV1CheckCloudIdentityAccountsExistRequest) MarshalJSON() ([]byte, error) {
   761  	type NoMethod GoogleCloudChannelV1CheckCloudIdentityAccountsExistRequest
   762  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   763  }
   764  
   765  // GoogleCloudChannelV1CheckCloudIdentityAccountsExistResponse: Response
   766  // message for CloudChannelService.CheckCloudIdentityAccountsExist.
   767  type GoogleCloudChannelV1CheckCloudIdentityAccountsExistResponse struct {
   768  	// CloudIdentityAccounts: The Cloud Identity accounts associated with the
   769  	// domain.
   770  	CloudIdentityAccounts []*GoogleCloudChannelV1CloudIdentityCustomerAccount `json:"cloudIdentityAccounts,omitempty"`
   771  
   772  	// ServerResponse contains the HTTP response code and headers from the server.
   773  	googleapi.ServerResponse `json:"-"`
   774  	// ForceSendFields is a list of field names (e.g. "CloudIdentityAccounts") to
   775  	// unconditionally include in API requests. By default, fields with empty or
   776  	// default values are omitted from API requests. See
   777  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   778  	// details.
   779  	ForceSendFields []string `json:"-"`
   780  	// NullFields is a list of field names (e.g. "CloudIdentityAccounts") to
   781  	// include in API requests with the JSON null value. By default, fields with
   782  	// empty values are omitted from API requests. See
   783  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   784  	NullFields []string `json:"-"`
   785  }
   786  
   787  func (s *GoogleCloudChannelV1CheckCloudIdentityAccountsExistResponse) MarshalJSON() ([]byte, error) {
   788  	type NoMethod GoogleCloudChannelV1CheckCloudIdentityAccountsExistResponse
   789  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   790  }
   791  
   792  // GoogleCloudChannelV1CloudIdentityCustomerAccount: Entity representing a
   793  // Cloud Identity account that may be associated with a Channel Services API
   794  // partner.
   795  type GoogleCloudChannelV1CloudIdentityCustomerAccount struct {
   796  	// CustomerCloudIdentityId: If existing = true, the Cloud Identity ID of the
   797  	// customer.
   798  	CustomerCloudIdentityId string `json:"customerCloudIdentityId,omitempty"`
   799  	// CustomerName: If owned = true, the name of the customer that owns the Cloud
   800  	// Identity account. Customer_name uses the format:
   801  	// accounts/{account_id}/customers/{customer_id}
   802  	CustomerName string `json:"customerName,omitempty"`
   803  	// Existing: Returns true if a Cloud Identity account exists for a specific
   804  	// domain.
   805  	Existing bool `json:"existing,omitempty"`
   806  	// Owned: Returns true if the Cloud Identity account is associated with a
   807  	// customer of the Channel Services partner.
   808  	Owned bool `json:"owned,omitempty"`
   809  	// ForceSendFields is a list of field names (e.g. "CustomerCloudIdentityId") to
   810  	// unconditionally include in API requests. By default, fields with empty or
   811  	// default values are omitted from API requests. See
   812  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   813  	// details.
   814  	ForceSendFields []string `json:"-"`
   815  	// NullFields is a list of field names (e.g. "CustomerCloudIdentityId") to
   816  	// include in API requests with the JSON null value. By default, fields with
   817  	// empty values are omitted from API requests. See
   818  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   819  	NullFields []string `json:"-"`
   820  }
   821  
   822  func (s *GoogleCloudChannelV1CloudIdentityCustomerAccount) MarshalJSON() ([]byte, error) {
   823  	type NoMethod GoogleCloudChannelV1CloudIdentityCustomerAccount
   824  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   825  }
   826  
   827  // GoogleCloudChannelV1CloudIdentityInfo: Cloud Identity information for the
   828  // Cloud Channel Customer.
   829  type GoogleCloudChannelV1CloudIdentityInfo struct {
   830  	// AdminConsoleUri: Output only. URI of Customer's Admin console dashboard.
   831  	AdminConsoleUri string `json:"adminConsoleUri,omitempty"`
   832  	// AlternateEmail: The alternate email.
   833  	AlternateEmail string `json:"alternateEmail,omitempty"`
   834  	// CustomerType: CustomerType indicates verification type needed for using
   835  	// services.
   836  	//
   837  	// Possible values:
   838  	//   "CUSTOMER_TYPE_UNSPECIFIED" - Not used.
   839  	//   "DOMAIN" - Domain-owning customer which needs domain verification to use
   840  	// services.
   841  	//   "TEAM" - Team customer which needs email verification to use services.
   842  	CustomerType string `json:"customerType,omitempty"`
   843  	// EduData: Edu information about the customer.
   844  	EduData *GoogleCloudChannelV1EduData `json:"eduData,omitempty"`
   845  	// IsDomainVerified: Output only. Whether the domain is verified. This field is
   846  	// not returned for a Customer's cloud_identity_info resource. Partners can use
   847  	// the domains.get() method of the Workspace SDK's Directory API, or listen to
   848  	// the PRIMARY_DOMAIN_VERIFIED Pub/Sub event in to track domain verification of
   849  	// their resolve Workspace customers.
   850  	IsDomainVerified bool `json:"isDomainVerified,omitempty"`
   851  	// LanguageCode: Language code.
   852  	LanguageCode string `json:"languageCode,omitempty"`
   853  	// PhoneNumber: Phone number associated with the Cloud Identity.
   854  	PhoneNumber string `json:"phoneNumber,omitempty"`
   855  	// PrimaryDomain: Output only. The primary domain name.
   856  	PrimaryDomain string `json:"primaryDomain,omitempty"`
   857  	// ForceSendFields is a list of field names (e.g. "AdminConsoleUri") to
   858  	// unconditionally include in API requests. By default, fields with empty or
   859  	// default values are omitted from API requests. See
   860  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   861  	// details.
   862  	ForceSendFields []string `json:"-"`
   863  	// NullFields is a list of field names (e.g. "AdminConsoleUri") to include in
   864  	// API requests with the JSON null value. By default, fields with empty values
   865  	// are omitted from API requests. See
   866  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   867  	NullFields []string `json:"-"`
   868  }
   869  
   870  func (s *GoogleCloudChannelV1CloudIdentityInfo) MarshalJSON() ([]byte, error) {
   871  	type NoMethod GoogleCloudChannelV1CloudIdentityInfo
   872  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   873  }
   874  
   875  // GoogleCloudChannelV1Column: The definition of a report column. Specifies the
   876  // data properties in the corresponding position of the report rows.
   877  type GoogleCloudChannelV1Column struct {
   878  	// ColumnId: The unique name of the column (for example, customer_domain,
   879  	// channel_partner, customer_cost). You can use column IDs in
   880  	// RunReportJobRequest.filter. To see all reports and their columns, call
   881  	// CloudChannelReportsService.ListReports.
   882  	ColumnId string `json:"columnId,omitempty"`
   883  	// DataType: The type of the values for this column.
   884  	//
   885  	// Possible values:
   886  	//   "DATA_TYPE_UNSPECIFIED" - Not used.
   887  	//   "STRING" - ReportValues for this column will use string_value.
   888  	//   "INT" - ReportValues for this column will use int_value.
   889  	//   "DECIMAL" - ReportValues for this column will use decimal_value.
   890  	//   "MONEY" - ReportValues for this column will use money_value.
   891  	//   "DATE" - ReportValues for this column will use date_value.
   892  	//   "DATE_TIME" - ReportValues for this column will use date_time_value.
   893  	DataType string `json:"dataType,omitempty"`
   894  	// DisplayName: The column's display name.
   895  	DisplayName string `json:"displayName,omitempty"`
   896  	// ForceSendFields is a list of field names (e.g. "ColumnId") to
   897  	// unconditionally include in API requests. By default, fields with empty or
   898  	// default values are omitted from API requests. See
   899  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   900  	// details.
   901  	ForceSendFields []string `json:"-"`
   902  	// NullFields is a list of field names (e.g. "ColumnId") to include in API
   903  	// requests with the JSON null value. By default, fields with empty values are
   904  	// omitted from API requests. See
   905  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   906  	NullFields []string `json:"-"`
   907  }
   908  
   909  func (s *GoogleCloudChannelV1Column) MarshalJSON() ([]byte, error) {
   910  	type NoMethod GoogleCloudChannelV1Column
   911  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   912  }
   913  
   914  // GoogleCloudChannelV1CommitmentSettings: Commitment settings for
   915  // commitment-based offers.
   916  type GoogleCloudChannelV1CommitmentSettings struct {
   917  	// EndTime: Output only. Commitment end timestamp.
   918  	EndTime string `json:"endTime,omitempty"`
   919  	// RenewalSettings: Optional. Renewal settings applicable for a
   920  	// commitment-based Offer.
   921  	RenewalSettings *GoogleCloudChannelV1RenewalSettings `json:"renewalSettings,omitempty"`
   922  	// StartTime: Output only. Commitment start timestamp.
   923  	StartTime string `json:"startTime,omitempty"`
   924  	// ForceSendFields is a list of field names (e.g. "EndTime") to unconditionally
   925  	// include in API requests. By default, fields with empty or default values are
   926  	// omitted from API requests. See
   927  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   928  	// details.
   929  	ForceSendFields []string `json:"-"`
   930  	// NullFields is a list of field names (e.g. "EndTime") to include in API
   931  	// requests with the JSON null value. By default, fields with empty values are
   932  	// omitted from API requests. See
   933  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   934  	NullFields []string `json:"-"`
   935  }
   936  
   937  func (s *GoogleCloudChannelV1CommitmentSettings) MarshalJSON() ([]byte, error) {
   938  	type NoMethod GoogleCloudChannelV1CommitmentSettings
   939  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   940  }
   941  
   942  // GoogleCloudChannelV1ConditionalOverride: Specifies the override to
   943  // conditionally apply.
   944  type GoogleCloudChannelV1ConditionalOverride struct {
   945  	// Adjustment: Required. Information about the applied override's adjustment.
   946  	Adjustment *GoogleCloudChannelV1RepricingAdjustment `json:"adjustment,omitempty"`
   947  	// RebillingBasis: Required. The RebillingBasis to use for the applied
   948  	// override. Shows the relative cost based on your repricing costs.
   949  	//
   950  	// Possible values:
   951  	//   "REBILLING_BASIS_UNSPECIFIED" - Not used.
   952  	//   "COST_AT_LIST" - Use the list cost, also known as the MSRP.
   953  	//   "DIRECT_CUSTOMER_COST" - Pass through all discounts except the Reseller
   954  	// Program Discount. If this is the default cost base and no adjustments are
   955  	// specified, the output cost will be exactly what the customer would see if
   956  	// they viewed the bill in the Google Cloud Console.
   957  	RebillingBasis string `json:"rebillingBasis,omitempty"`
   958  	// RepricingCondition: Required. Specifies the condition which, if met, will
   959  	// apply the override.
   960  	RepricingCondition *GoogleCloudChannelV1RepricingCondition `json:"repricingCondition,omitempty"`
   961  	// ForceSendFields is a list of field names (e.g. "Adjustment") to
   962  	// unconditionally include in API requests. By default, fields with empty or
   963  	// default values are omitted from API requests. See
   964  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   965  	// details.
   966  	ForceSendFields []string `json:"-"`
   967  	// NullFields is a list of field names (e.g. "Adjustment") to include in API
   968  	// requests with the JSON null value. By default, fields with empty values are
   969  	// omitted from API requests. See
   970  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   971  	NullFields []string `json:"-"`
   972  }
   973  
   974  func (s *GoogleCloudChannelV1ConditionalOverride) MarshalJSON() ([]byte, error) {
   975  	type NoMethod GoogleCloudChannelV1ConditionalOverride
   976  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   977  }
   978  
   979  // GoogleCloudChannelV1Constraints: Represents the constraints for buying the
   980  // Offer.
   981  type GoogleCloudChannelV1Constraints struct {
   982  	// CustomerConstraints: Represents constraints required to purchase the Offer
   983  	// for a customer.
   984  	CustomerConstraints *GoogleCloudChannelV1CustomerConstraints `json:"customerConstraints,omitempty"`
   985  	// ForceSendFields is a list of field names (e.g. "CustomerConstraints") to
   986  	// unconditionally include in API requests. By default, fields with empty or
   987  	// default values are omitted from API requests. See
   988  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   989  	// details.
   990  	ForceSendFields []string `json:"-"`
   991  	// NullFields is a list of field names (e.g. "CustomerConstraints") to include
   992  	// in API requests with the JSON null value. By default, fields with empty
   993  	// values are omitted from API requests. See
   994  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   995  	NullFields []string `json:"-"`
   996  }
   997  
   998  func (s *GoogleCloudChannelV1Constraints) MarshalJSON() ([]byte, error) {
   999  	type NoMethod GoogleCloudChannelV1Constraints
  1000  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1001  }
  1002  
  1003  // GoogleCloudChannelV1ContactInfo: Contact information for a customer account.
  1004  type GoogleCloudChannelV1ContactInfo struct {
  1005  	// DisplayName: Output only. The customer account contact's display name,
  1006  	// formatted as a combination of the customer's first and last name.
  1007  	DisplayName string `json:"displayName,omitempty"`
  1008  	// Email: The customer account's contact email. Required for entitlements that
  1009  	// create admin.google.com accounts, and serves as the customer's username for
  1010  	// those accounts. Use this email to invite Team customers.
  1011  	Email string `json:"email,omitempty"`
  1012  	// FirstName: The customer account contact's first name. Optional for Team
  1013  	// customers.
  1014  	FirstName string `json:"firstName,omitempty"`
  1015  	// LastName: The customer account contact's last name. Optional for Team
  1016  	// customers.
  1017  	LastName string `json:"lastName,omitempty"`
  1018  	// Phone: The customer account's contact phone number.
  1019  	Phone string `json:"phone,omitempty"`
  1020  	// Title: Optional. The customer account contact's job title.
  1021  	Title string `json:"title,omitempty"`
  1022  	// ForceSendFields is a list of field names (e.g. "DisplayName") to
  1023  	// unconditionally include in API requests. By default, fields with empty or
  1024  	// default values are omitted from API requests. See
  1025  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1026  	// details.
  1027  	ForceSendFields []string `json:"-"`
  1028  	// NullFields is a list of field names (e.g. "DisplayName") to include in API
  1029  	// requests with the JSON null value. By default, fields with empty values are
  1030  	// omitted from API requests. See
  1031  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1032  	NullFields []string `json:"-"`
  1033  }
  1034  
  1035  func (s *GoogleCloudChannelV1ContactInfo) MarshalJSON() ([]byte, error) {
  1036  	type NoMethod GoogleCloudChannelV1ContactInfo
  1037  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1038  }
  1039  
  1040  // GoogleCloudChannelV1CreateEntitlementRequest: Request message for
  1041  // CloudChannelService.CreateEntitlement
  1042  type GoogleCloudChannelV1CreateEntitlementRequest struct {
  1043  	// Entitlement: Required. The entitlement to create.
  1044  	Entitlement *GoogleCloudChannelV1Entitlement `json:"entitlement,omitempty"`
  1045  	// RequestId: Optional. You can specify an optional unique request ID, and if
  1046  	// you need to retry your request, the server will know to ignore the request
  1047  	// if it's complete. For example, you make an initial request and the request
  1048  	// times out. If you make the request again with the same request ID, the
  1049  	// server can check if it received the original operation with the same request
  1050  	// ID. If it did, it will ignore the second request. The request ID must be a
  1051  	// valid UUID (https://tools.ietf.org/html/rfc4122) with the exception that
  1052  	// zero UUID is not supported (`00000000-0000-0000-0000-000000000000`).
  1053  	RequestId string `json:"requestId,omitempty"`
  1054  	// ForceSendFields is a list of field names (e.g. "Entitlement") to
  1055  	// unconditionally include in API requests. By default, fields with empty or
  1056  	// default values are omitted from API requests. See
  1057  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1058  	// details.
  1059  	ForceSendFields []string `json:"-"`
  1060  	// NullFields is a list of field names (e.g. "Entitlement") to include in API
  1061  	// requests with the JSON null value. By default, fields with empty values are
  1062  	// omitted from API requests. See
  1063  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1064  	NullFields []string `json:"-"`
  1065  }
  1066  
  1067  func (s *GoogleCloudChannelV1CreateEntitlementRequest) MarshalJSON() ([]byte, error) {
  1068  	type NoMethod GoogleCloudChannelV1CreateEntitlementRequest
  1069  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1070  }
  1071  
  1072  // GoogleCloudChannelV1Customer: Entity representing a customer of a reseller
  1073  // or distributor.
  1074  type GoogleCloudChannelV1Customer struct {
  1075  	// AlternateEmail: Secondary contact email. You need to provide an alternate
  1076  	// email to create different domains if a primary contact email already exists.
  1077  	// Users will receive a notification with credentials when you create an
  1078  	// admin.google.com account. Secondary emails are also recovery email
  1079  	// addresses. Alternate emails are optional when you create Team customers.
  1080  	AlternateEmail string `json:"alternateEmail,omitempty"`
  1081  	// ChannelPartnerId: Cloud Identity ID of the customer's channel partner.
  1082  	// Populated only if a channel partner exists for this customer.
  1083  	ChannelPartnerId string `json:"channelPartnerId,omitempty"`
  1084  	// CloudIdentityId: Output only. The customer's Cloud Identity ID if the
  1085  	// customer has a Cloud Identity resource.
  1086  	CloudIdentityId string `json:"cloudIdentityId,omitempty"`
  1087  	// CloudIdentityInfo: Output only. Cloud Identity information for the customer.
  1088  	// Populated only if a Cloud Identity account exists for this customer.
  1089  	CloudIdentityInfo *GoogleCloudChannelV1CloudIdentityInfo `json:"cloudIdentityInfo,omitempty"`
  1090  	// CorrelationId: Optional. External CRM ID for the customer. Populated only if
  1091  	// a CRM ID exists for this customer.
  1092  	CorrelationId string `json:"correlationId,omitempty"`
  1093  	// CreateTime: Output only. Time when the customer was created.
  1094  	CreateTime string `json:"createTime,omitempty"`
  1095  	// Domain: Required. The customer's primary domain. Must match the primary
  1096  	// contact email's domain.
  1097  	Domain string `json:"domain,omitempty"`
  1098  	// LanguageCode: Optional. The BCP-47 language code, such as "en-US" or
  1099  	// "sr-Latn". For more information, see
  1100  	// https://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
  1101  	LanguageCode string `json:"languageCode,omitempty"`
  1102  	// Name: Output only. Resource name of the customer. Format:
  1103  	// accounts/{account_id}/customers/{customer_id}
  1104  	Name string `json:"name,omitempty"`
  1105  	// OrgDisplayName: Required. Name of the organization that the customer entity
  1106  	// represents.
  1107  	OrgDisplayName string `json:"orgDisplayName,omitempty"`
  1108  	// OrgPostalAddress: Required. The organization address for the customer. To
  1109  	// enforce US laws and embargoes, we require a region, postal code, and address
  1110  	// lines. You must provide valid addresses for every customer. To set the
  1111  	// customer's language, use the Customer-level language code.
  1112  	OrgPostalAddress *GoogleTypePostalAddress `json:"orgPostalAddress,omitempty"`
  1113  	// PrimaryContactInfo: Primary contact info.
  1114  	PrimaryContactInfo *GoogleCloudChannelV1ContactInfo `json:"primaryContactInfo,omitempty"`
  1115  	// UpdateTime: Output only. Time when the customer was updated.
  1116  	UpdateTime string `json:"updateTime,omitempty"`
  1117  
  1118  	// ServerResponse contains the HTTP response code and headers from the server.
  1119  	googleapi.ServerResponse `json:"-"`
  1120  	// ForceSendFields is a list of field names (e.g. "AlternateEmail") to
  1121  	// unconditionally include in API requests. By default, fields with empty or
  1122  	// default values are omitted from API requests. See
  1123  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1124  	// details.
  1125  	ForceSendFields []string `json:"-"`
  1126  	// NullFields is a list of field names (e.g. "AlternateEmail") to include in
  1127  	// API requests with the JSON null value. By default, fields with empty values
  1128  	// are omitted from API requests. See
  1129  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1130  	NullFields []string `json:"-"`
  1131  }
  1132  
  1133  func (s *GoogleCloudChannelV1Customer) MarshalJSON() ([]byte, error) {
  1134  	type NoMethod GoogleCloudChannelV1Customer
  1135  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1136  }
  1137  
  1138  // GoogleCloudChannelV1CustomerConstraints: Represents constraints required to
  1139  // purchase the Offer for a customer.
  1140  type GoogleCloudChannelV1CustomerConstraints struct {
  1141  	// AllowedCustomerTypes: Allowed Customer Type.
  1142  	//
  1143  	// Possible values:
  1144  	//   "CUSTOMER_TYPE_UNSPECIFIED" - Not used.
  1145  	//   "DOMAIN" - Domain-owning customer which needs domain verification to use
  1146  	// services.
  1147  	//   "TEAM" - Team customer which needs email verification to use services.
  1148  	AllowedCustomerTypes []string `json:"allowedCustomerTypes,omitempty"`
  1149  	// AllowedRegions: Allowed geographical regions of the customer.
  1150  	AllowedRegions []string `json:"allowedRegions,omitempty"`
  1151  	// PromotionalOrderTypes: Allowed Promotional Order Type. Present for
  1152  	// Promotional offers.
  1153  	//
  1154  	// Possible values:
  1155  	//   "PROMOTIONAL_TYPE_UNSPECIFIED" - Not used.
  1156  	//   "NEW_UPGRADE" - Order used for new customers, trial conversions and
  1157  	// upgrades.
  1158  	//   "TRANSFER" - All orders for transferring an existing customer.
  1159  	//   "PROMOTION_SWITCH" - Orders for modifying an existing customer's promotion
  1160  	// on the same SKU.
  1161  	PromotionalOrderTypes []string `json:"promotionalOrderTypes,omitempty"`
  1162  	// ForceSendFields is a list of field names (e.g. "AllowedCustomerTypes") to
  1163  	// unconditionally include in API requests. By default, fields with empty or
  1164  	// default values are omitted from API requests. See
  1165  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1166  	// details.
  1167  	ForceSendFields []string `json:"-"`
  1168  	// NullFields is a list of field names (e.g. "AllowedCustomerTypes") to include
  1169  	// in API requests with the JSON null value. By default, fields with empty
  1170  	// values are omitted from API requests. See
  1171  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1172  	NullFields []string `json:"-"`
  1173  }
  1174  
  1175  func (s *GoogleCloudChannelV1CustomerConstraints) MarshalJSON() ([]byte, error) {
  1176  	type NoMethod GoogleCloudChannelV1CustomerConstraints
  1177  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1178  }
  1179  
  1180  // GoogleCloudChannelV1CustomerEvent: Represents Pub/Sub message content
  1181  // describing customer update.
  1182  type GoogleCloudChannelV1CustomerEvent struct {
  1183  	// Customer: Resource name of the customer. Format:
  1184  	// accounts/{account_id}/customers/{customer_id}
  1185  	Customer string `json:"customer,omitempty"`
  1186  	// EventType: Type of event which happened on the customer.
  1187  	//
  1188  	// Possible values:
  1189  	//   "TYPE_UNSPECIFIED" - Not used.
  1190  	//   "PRIMARY_DOMAIN_CHANGED" - Primary domain for customer was changed.
  1191  	//   "PRIMARY_DOMAIN_VERIFIED" - Primary domain of the customer has been
  1192  	// verified.
  1193  	EventType string `json:"eventType,omitempty"`
  1194  	// ForceSendFields is a list of field names (e.g. "Customer") to
  1195  	// unconditionally include in API requests. By default, fields with empty or
  1196  	// default values are omitted from API requests. See
  1197  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1198  	// details.
  1199  	ForceSendFields []string `json:"-"`
  1200  	// NullFields is a list of field names (e.g. "Customer") to include in API
  1201  	// requests with the JSON null value. By default, fields with empty values are
  1202  	// omitted from API requests. See
  1203  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1204  	NullFields []string `json:"-"`
  1205  }
  1206  
  1207  func (s *GoogleCloudChannelV1CustomerEvent) MarshalJSON() ([]byte, error) {
  1208  	type NoMethod GoogleCloudChannelV1CustomerEvent
  1209  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1210  }
  1211  
  1212  // GoogleCloudChannelV1CustomerRepricingConfig: Configuration for how a
  1213  // reseller will reprice a Customer.
  1214  type GoogleCloudChannelV1CustomerRepricingConfig struct {
  1215  	// Name: Output only. Resource name of the CustomerRepricingConfig. Format:
  1216  	// accounts/{account_id}/customers/{customer_id}/customerRepricingConfigs/{id}.
  1217  	Name string `json:"name,omitempty"`
  1218  	// RepricingConfig: Required. The configuration for bill modifications made by
  1219  	// a reseller before sending it to customers.
  1220  	RepricingConfig *GoogleCloudChannelV1RepricingConfig `json:"repricingConfig,omitempty"`
  1221  	// UpdateTime: Output only. Timestamp of an update to the repricing rule. If
  1222  	// `update_time` is after RepricingConfig.effective_invoice_month then it
  1223  	// indicates this was set mid-month.
  1224  	UpdateTime string `json:"updateTime,omitempty"`
  1225  
  1226  	// ServerResponse contains the HTTP response code and headers from the server.
  1227  	googleapi.ServerResponse `json:"-"`
  1228  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
  1229  	// include in API requests. By default, fields with empty or default values are
  1230  	// omitted from API requests. See
  1231  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1232  	// details.
  1233  	ForceSendFields []string `json:"-"`
  1234  	// NullFields is a list of field names (e.g. "Name") to include in API requests
  1235  	// with the JSON null value. By default, fields with empty values are omitted
  1236  	// from API requests. See
  1237  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1238  	NullFields []string `json:"-"`
  1239  }
  1240  
  1241  func (s *GoogleCloudChannelV1CustomerRepricingConfig) MarshalJSON() ([]byte, error) {
  1242  	type NoMethod GoogleCloudChannelV1CustomerRepricingConfig
  1243  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1244  }
  1245  
  1246  // GoogleCloudChannelV1DateRange: A representation of usage or invoice date
  1247  // ranges.
  1248  type GoogleCloudChannelV1DateRange struct {
  1249  	// InvoiceEndDate: The latest invoice date (inclusive). If this value is not
  1250  	// the last day of a month, this will move it forward to the last day of the
  1251  	// given month.
  1252  	InvoiceEndDate *GoogleTypeDate `json:"invoiceEndDate,omitempty"`
  1253  	// InvoiceStartDate: The earliest invoice date (inclusive). If this value is
  1254  	// not the first day of a month, this will move it back to the first day of the
  1255  	// given month.
  1256  	InvoiceStartDate *GoogleTypeDate `json:"invoiceStartDate,omitempty"`
  1257  	// UsageEndDateTime: The latest usage date time (exclusive). If you use time
  1258  	// groupings (daily, weekly, etc), each group uses midnight to midnight
  1259  	// (Pacific time). The usage end date is rounded down to include all usage from
  1260  	// the specified date. We recommend that clients pass `usage_start_date_time`
  1261  	// in Pacific time.
  1262  	UsageEndDateTime *GoogleTypeDateTime `json:"usageEndDateTime,omitempty"`
  1263  	// UsageStartDateTime: The earliest usage date time (inclusive). If you use
  1264  	// time groupings (daily, weekly, etc), each group uses midnight to midnight
  1265  	// (Pacific time). The usage start date is rounded down to include all usage
  1266  	// from the specified date. We recommend that clients pass
  1267  	// `usage_start_date_time` in Pacific time.
  1268  	UsageStartDateTime *GoogleTypeDateTime `json:"usageStartDateTime,omitempty"`
  1269  	// ForceSendFields is a list of field names (e.g. "InvoiceEndDate") to
  1270  	// unconditionally include in API requests. By default, fields with empty or
  1271  	// default values are omitted from API requests. See
  1272  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1273  	// details.
  1274  	ForceSendFields []string `json:"-"`
  1275  	// NullFields is a list of field names (e.g. "InvoiceEndDate") to include in
  1276  	// API requests with the JSON null value. By default, fields with empty values
  1277  	// are omitted from API requests. See
  1278  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1279  	NullFields []string `json:"-"`
  1280  }
  1281  
  1282  func (s *GoogleCloudChannelV1DateRange) MarshalJSON() ([]byte, error) {
  1283  	type NoMethod GoogleCloudChannelV1DateRange
  1284  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1285  }
  1286  
  1287  // GoogleCloudChannelV1EduData: Required Edu Attributes
  1288  type GoogleCloudChannelV1EduData struct {
  1289  	// InstituteSize: Size of the institute.
  1290  	//
  1291  	// Possible values:
  1292  	//   "INSTITUTE_SIZE_UNSPECIFIED" - Not used.
  1293  	//   "SIZE_1_100" - 1 - 100
  1294  	//   "SIZE_101_500" - 101 - 500
  1295  	//   "SIZE_501_1000" - 501 - 1,000
  1296  	//   "SIZE_1001_2000" - 1,001 - 2,000
  1297  	//   "SIZE_2001_5000" - 2,001 - 5,000
  1298  	//   "SIZE_5001_10000" - 5,001 - 10,000
  1299  	//   "SIZE_10001_OR_MORE" - 10,001 +
  1300  	InstituteSize string `json:"instituteSize,omitempty"`
  1301  	// InstituteType: Designated institute type of customer.
  1302  	//
  1303  	// Possible values:
  1304  	//   "INSTITUTE_TYPE_UNSPECIFIED" - Not used.
  1305  	//   "K12" - Elementary/Secondary Schools & Districts
  1306  	//   "UNIVERSITY" - Higher Education Universities & Colleges
  1307  	InstituteType string `json:"instituteType,omitempty"`
  1308  	// Website: Web address for the edu customer's institution.
  1309  	Website string `json:"website,omitempty"`
  1310  	// ForceSendFields is a list of field names (e.g. "InstituteSize") to
  1311  	// unconditionally include in API requests. By default, fields with empty or
  1312  	// default values are omitted from API requests. See
  1313  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1314  	// details.
  1315  	ForceSendFields []string `json:"-"`
  1316  	// NullFields is a list of field names (e.g. "InstituteSize") to include in API
  1317  	// requests with the JSON null value. By default, fields with empty values are
  1318  	// omitted from API requests. See
  1319  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1320  	NullFields []string `json:"-"`
  1321  }
  1322  
  1323  func (s *GoogleCloudChannelV1EduData) MarshalJSON() ([]byte, error) {
  1324  	type NoMethod GoogleCloudChannelV1EduData
  1325  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1326  }
  1327  
  1328  // GoogleCloudChannelV1Entitlement: An entitlement is a representation of a
  1329  // customer's ability to use a service.
  1330  type GoogleCloudChannelV1Entitlement struct {
  1331  	// AssociationInfo: Association information to other entitlements.
  1332  	AssociationInfo *GoogleCloudChannelV1AssociationInfo `json:"associationInfo,omitempty"`
  1333  	// BillingAccount: Optional. The billing account resource name that is used to
  1334  	// pay for this entitlement.
  1335  	BillingAccount string `json:"billingAccount,omitempty"`
  1336  	// CommitmentSettings: Commitment settings for a commitment-based Offer.
  1337  	// Required for commitment based offers.
  1338  	CommitmentSettings *GoogleCloudChannelV1CommitmentSettings `json:"commitmentSettings,omitempty"`
  1339  	// CreateTime: Output only. The time at which the entitlement is created.
  1340  	CreateTime string `json:"createTime,omitempty"`
  1341  	// Name: Output only. Resource name of an entitlement in the form:
  1342  	// accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}.
  1343  	Name string `json:"name,omitempty"`
  1344  	// Offer: Required. The offer resource name for which the entitlement is to be
  1345  	// created. Takes the form: accounts/{account_id}/offers/{offer_id}.
  1346  	Offer string `json:"offer,omitempty"`
  1347  	// Parameters: Extended entitlement parameters. When creating an entitlement,
  1348  	// valid parameter names and values are defined in the
  1349  	// Offer.parameter_definitions. For Google Workspace, the following Parameters
  1350  	// may be accepted as input: - max_units: The maximum assignable units for a
  1351  	// flexible offer OR - num_units: The total commitment for commitment-based
  1352  	// offers The response may additionally include the following output-only
  1353  	// Parameters: - assigned_units: The number of licenses assigned to users. For
  1354  	// Google Cloud billing subaccounts, the following Parameter may be accepted as
  1355  	// input: - display_name: The display name of the billing subaccount.
  1356  	Parameters []*GoogleCloudChannelV1Parameter `json:"parameters,omitempty"`
  1357  	// ProvisionedService: Output only. Service provisioning details for the
  1358  	// entitlement.
  1359  	ProvisionedService *GoogleCloudChannelV1ProvisionedService `json:"provisionedService,omitempty"`
  1360  	// ProvisioningState: Output only. Current provisioning state of the
  1361  	// entitlement.
  1362  	//
  1363  	// Possible values:
  1364  	//   "PROVISIONING_STATE_UNSPECIFIED" - Not used.
  1365  	//   "ACTIVE" - The entitlement is currently active.
  1366  	//   "SUSPENDED" - The entitlement is currently suspended.
  1367  	ProvisioningState string `json:"provisioningState,omitempty"`
  1368  	// PurchaseOrderId: Optional. This purchase order (PO) information is for
  1369  	// resellers to use for their company tracking usage. If a purchaseOrderId
  1370  	// value is given, it appears in the API responses and shows up in the invoice.
  1371  	// The property accepts up to 80 plain text characters. This is only supported
  1372  	// for Google Workspace entitlements.
  1373  	PurchaseOrderId string `json:"purchaseOrderId,omitempty"`
  1374  	// SuspensionReasons: Output only. Enumerable of all current suspension reasons
  1375  	// for an entitlement.
  1376  	//
  1377  	// Possible values:
  1378  	//   "SUSPENSION_REASON_UNSPECIFIED" - Not used.
  1379  	//   "RESELLER_INITIATED" - Entitlement was manually suspended by the Reseller.
  1380  	//   "TRIAL_ENDED" - Trial ended.
  1381  	//   "RENEWAL_WITH_TYPE_CANCEL" - Entitlement renewal was canceled.
  1382  	//   "PENDING_TOS_ACCEPTANCE" - Entitlement was automatically suspended on
  1383  	// creation for pending ToS acceptance on customer.
  1384  	//   "OTHER" - Other reasons (internal reasons, abuse, etc.).
  1385  	SuspensionReasons []string `json:"suspensionReasons,omitempty"`
  1386  	// TrialSettings: Output only. Settings for trial offers.
  1387  	TrialSettings *GoogleCloudChannelV1TrialSettings `json:"trialSettings,omitempty"`
  1388  	// UpdateTime: Output only. The time at which the entitlement is updated.
  1389  	UpdateTime string `json:"updateTime,omitempty"`
  1390  
  1391  	// ServerResponse contains the HTTP response code and headers from the server.
  1392  	googleapi.ServerResponse `json:"-"`
  1393  	// ForceSendFields is a list of field names (e.g. "AssociationInfo") to
  1394  	// unconditionally include in API requests. By default, fields with empty or
  1395  	// default values are omitted from API requests. See
  1396  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1397  	// details.
  1398  	ForceSendFields []string `json:"-"`
  1399  	// NullFields is a list of field names (e.g. "AssociationInfo") to include in
  1400  	// API requests with the JSON null value. By default, fields with empty values
  1401  	// are omitted from API requests. See
  1402  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1403  	NullFields []string `json:"-"`
  1404  }
  1405  
  1406  func (s *GoogleCloudChannelV1Entitlement) MarshalJSON() ([]byte, error) {
  1407  	type NoMethod GoogleCloudChannelV1Entitlement
  1408  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1409  }
  1410  
  1411  // GoogleCloudChannelV1EntitlementChange: Change event entry for Entitlement
  1412  // order history
  1413  type GoogleCloudChannelV1EntitlementChange struct {
  1414  	// ActivationReason: The Entitlement's activation reason
  1415  	//
  1416  	// Possible values:
  1417  	//   "ACTIVATION_REASON_UNSPECIFIED" - Not used.
  1418  	//   "RESELLER_REVOKED_SUSPENSION" - Reseller reactivated a suspended
  1419  	// Entitlement.
  1420  	//   "CUSTOMER_ACCEPTED_PENDING_TOS" - Customer accepted pending terms of
  1421  	// service.
  1422  	//   "RENEWAL_SETTINGS_CHANGED" - Reseller updated the renewal settings on an
  1423  	// entitlement that was suspended due to cancellation, and this update
  1424  	// reactivated the entitlement.
  1425  	//   "OTHER_ACTIVATION_REASON" - Other reasons (Activated temporarily for
  1426  	// cancellation, added a payment plan to a trial entitlement, etc.)
  1427  	ActivationReason string `json:"activationReason,omitempty"`
  1428  	// CancellationReason: Cancellation reason for the Entitlement.
  1429  	//
  1430  	// Possible values:
  1431  	//   "CANCELLATION_REASON_UNSPECIFIED" - Not used.
  1432  	//   "SERVICE_TERMINATED" - Reseller triggered a cancellation of the service.
  1433  	//   "RELATIONSHIP_ENDED" - Relationship between the reseller and customer has
  1434  	// ended due to a transfer.
  1435  	//   "PARTIAL_TRANSFER" - Entitlement transferred away from reseller while
  1436  	// still keeping other entitlement(s) with the reseller.
  1437  	CancellationReason string `json:"cancellationReason,omitempty"`
  1438  	// ChangeType: The change action type.
  1439  	//
  1440  	// Possible values:
  1441  	//   "CHANGE_TYPE_UNSPECIFIED" - Not used.
  1442  	//   "CREATED" - New Entitlement was created.
  1443  	//   "PRICE_PLAN_SWITCHED" - Price plan associated with an Entitlement was
  1444  	// changed.
  1445  	//   "COMMITMENT_CHANGED" - Number of seats committed for a commitment
  1446  	// Entitlement was changed.
  1447  	//   "RENEWED" - An annual Entitlement was renewed.
  1448  	//   "SUSPENDED" - Entitlement was suspended.
  1449  	//   "ACTIVATED" - Entitlement was activated.
  1450  	//   "CANCELLED" - Entitlement was cancelled.
  1451  	//   "SKU_CHANGED" - Entitlement was upgraded or downgraded for ex. from Google
  1452  	// Workspace Business Standard to Google Workspace Business Plus.
  1453  	//   "RENEWAL_SETTING_CHANGED" - The settings for renewal of an Entitlement
  1454  	// have changed.
  1455  	//   "PAID_SUBSCRIPTION_STARTED" - Use for Google Workspace subscription.
  1456  	// Either a trial was converted to a paid subscription or a new subscription
  1457  	// with no trial is created.
  1458  	//   "LICENSE_CAP_CHANGED" - License cap was changed for the entitlement.
  1459  	//   "SUSPENSION_DETAILS_CHANGED" - The suspension details have changed (but it
  1460  	// is still suspended).
  1461  	//   "TRIAL_END_DATE_EXTENDED" - The trial end date was extended.
  1462  	//   "TRIAL_STARTED" - Entitlement started trial.
  1463  	ChangeType string `json:"changeType,omitempty"`
  1464  	// CreateTime: The submitted time of the change.
  1465  	CreateTime string `json:"createTime,omitempty"`
  1466  	// Entitlement: Required. Resource name of an entitlement in the form:
  1467  	// accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}
  1468  	Entitlement string `json:"entitlement,omitempty"`
  1469  	// Offer: Required. Resource name of the Offer at the time of change. Takes the
  1470  	// form: accounts/{account_id}/offers/{offer_id}.
  1471  	Offer string `json:"offer,omitempty"`
  1472  	// Operator: Human-readable identifier that shows what operator made a change.
  1473  	// When the operator_type is RESELLER, this is the user's email address. For
  1474  	// all other operator types, this is empty.
  1475  	Operator string `json:"operator,omitempty"`
  1476  	// OperatorType: Operator type responsible for the change.
  1477  	//
  1478  	// Possible values:
  1479  	//   "OPERATOR_TYPE_UNSPECIFIED" - Not used.
  1480  	//   "CUSTOMER_SERVICE_REPRESENTATIVE" - Customer service representative.
  1481  	//   "SYSTEM" - System auto job.
  1482  	//   "CUSTOMER" - Customer user.
  1483  	//   "RESELLER" - Reseller user.
  1484  	OperatorType string `json:"operatorType,omitempty"`
  1485  	// OtherChangeReason: e.g. purchase_number change reason, entered by CRS.
  1486  	OtherChangeReason string `json:"otherChangeReason,omitempty"`
  1487  	// Parameters: Extended parameters, such as: purchase_order_number,
  1488  	// gcp_details; internal_correlation_id, long_running_operation_id, order_id;
  1489  	// etc.
  1490  	Parameters []*GoogleCloudChannelV1Parameter `json:"parameters,omitempty"`
  1491  	// ProvisionedService: Service provisioned for an Entitlement.
  1492  	ProvisionedService *GoogleCloudChannelV1ProvisionedService `json:"provisionedService,omitempty"`
  1493  	// SuspensionReason: Suspension reason for the Entitlement.
  1494  	//
  1495  	// Possible values:
  1496  	//   "SUSPENSION_REASON_UNSPECIFIED" - Not used.
  1497  	//   "RESELLER_INITIATED" - Entitlement was manually suspended by the Reseller.
  1498  	//   "TRIAL_ENDED" - Trial ended.
  1499  	//   "RENEWAL_WITH_TYPE_CANCEL" - Entitlement renewal was canceled.
  1500  	//   "PENDING_TOS_ACCEPTANCE" - Entitlement was automatically suspended on
  1501  	// creation for pending ToS acceptance on customer.
  1502  	//   "OTHER" - Other reasons (internal reasons, abuse, etc.).
  1503  	SuspensionReason string `json:"suspensionReason,omitempty"`
  1504  	// ForceSendFields is a list of field names (e.g. "ActivationReason") to
  1505  	// unconditionally include in API requests. By default, fields with empty or
  1506  	// default values are omitted from API requests. See
  1507  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1508  	// details.
  1509  	ForceSendFields []string `json:"-"`
  1510  	// NullFields is a list of field names (e.g. "ActivationReason") to include in
  1511  	// API requests with the JSON null value. By default, fields with empty values
  1512  	// are omitted from API requests. See
  1513  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1514  	NullFields []string `json:"-"`
  1515  }
  1516  
  1517  func (s *GoogleCloudChannelV1EntitlementChange) MarshalJSON() ([]byte, error) {
  1518  	type NoMethod GoogleCloudChannelV1EntitlementChange
  1519  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1520  }
  1521  
  1522  // GoogleCloudChannelV1EntitlementEvent: Represents Pub/Sub message content
  1523  // describing entitlement update.
  1524  type GoogleCloudChannelV1EntitlementEvent struct {
  1525  	// Entitlement: Resource name of an entitlement of the form:
  1526  	// accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}
  1527  	Entitlement string `json:"entitlement,omitempty"`
  1528  	// EventType: Type of event which happened on the entitlement.
  1529  	//
  1530  	// Possible values:
  1531  	//   "TYPE_UNSPECIFIED" - Not used.
  1532  	//   "CREATED" - A new entitlement was created.
  1533  	//   "PRICE_PLAN_SWITCHED" - The offer type associated with an entitlement was
  1534  	// changed. This is not triggered if an entitlement converts from a commit
  1535  	// offer to a flexible offer as part of a renewal.
  1536  	//   "COMMITMENT_CHANGED" - Annual commitment for a commit plan was changed.
  1537  	//   "RENEWED" - An annual entitlement was renewed.
  1538  	//   "SUSPENDED" - Entitlement was suspended.
  1539  	//   "ACTIVATED" - Entitlement was unsuspended.
  1540  	//   "CANCELLED" - Entitlement was cancelled.
  1541  	//   "SKU_CHANGED" - Entitlement was upgraded or downgraded (e.g. from Google
  1542  	// Workspace Business Standard to Google Workspace Business Plus).
  1543  	//   "RENEWAL_SETTING_CHANGED" - The renewal settings of an entitlement has
  1544  	// changed.
  1545  	//   "PAID_SERVICE_STARTED" - Paid service has started on trial entitlement.
  1546  	//   "LICENSE_ASSIGNMENT_CHANGED" - License was assigned to or revoked from a
  1547  	// user.
  1548  	//   "LICENSE_CAP_CHANGED" - License cap was changed for the entitlement.
  1549  	EventType string `json:"eventType,omitempty"`
  1550  	// ForceSendFields is a list of field names (e.g. "Entitlement") to
  1551  	// unconditionally include in API requests. By default, fields with empty or
  1552  	// default values are omitted from API requests. See
  1553  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1554  	// details.
  1555  	ForceSendFields []string `json:"-"`
  1556  	// NullFields is a list of field names (e.g. "Entitlement") to include in API
  1557  	// requests with the JSON null value. By default, fields with empty values are
  1558  	// omitted from API requests. See
  1559  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1560  	NullFields []string `json:"-"`
  1561  }
  1562  
  1563  func (s *GoogleCloudChannelV1EntitlementEvent) MarshalJSON() ([]byte, error) {
  1564  	type NoMethod GoogleCloudChannelV1EntitlementEvent
  1565  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1566  }
  1567  
  1568  // GoogleCloudChannelV1FetchReportResultsRequest: Request message for
  1569  // CloudChannelReportsService.FetchReportResults.
  1570  type GoogleCloudChannelV1FetchReportResultsRequest struct {
  1571  	// PageSize: Optional. Requested page size of the report. The server may return
  1572  	// fewer results than requested. If you don't specify a page size, the server
  1573  	// uses a sensible default (may change over time). The maximum value is 30,000;
  1574  	// the server will change larger values to 30,000.
  1575  	PageSize int64 `json:"pageSize,omitempty"`
  1576  	// PageToken: Optional. A token that specifies a page of results beyond the
  1577  	// first page. Obtained through FetchReportResultsResponse.next_page_token of
  1578  	// the previous CloudChannelReportsService.FetchReportResults call.
  1579  	PageToken string `json:"pageToken,omitempty"`
  1580  	// PartitionKeys: Optional. List of keys specifying which report partitions to
  1581  	// return. If empty, returns all partitions.
  1582  	PartitionKeys []string `json:"partitionKeys,omitempty"`
  1583  	// ForceSendFields is a list of field names (e.g. "PageSize") to
  1584  	// unconditionally include in API requests. By default, fields with empty or
  1585  	// default values are omitted from API requests. See
  1586  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1587  	// details.
  1588  	ForceSendFields []string `json:"-"`
  1589  	// NullFields is a list of field names (e.g. "PageSize") to include in API
  1590  	// requests with the JSON null value. By default, fields with empty values are
  1591  	// omitted from API requests. See
  1592  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1593  	NullFields []string `json:"-"`
  1594  }
  1595  
  1596  func (s *GoogleCloudChannelV1FetchReportResultsRequest) MarshalJSON() ([]byte, error) {
  1597  	type NoMethod GoogleCloudChannelV1FetchReportResultsRequest
  1598  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1599  }
  1600  
  1601  // GoogleCloudChannelV1FetchReportResultsResponse: Response message for
  1602  // CloudChannelReportsService.FetchReportResults. Contains a tabular
  1603  // representation of the report results.
  1604  type GoogleCloudChannelV1FetchReportResultsResponse struct {
  1605  	// NextPageToken: Pass this token to FetchReportResultsRequest.page_token to
  1606  	// retrieve the next page of results.
  1607  	NextPageToken string `json:"nextPageToken,omitempty"`
  1608  	// ReportMetadata: The metadata for the report results (display name, columns,
  1609  	// row count, and date ranges).
  1610  	ReportMetadata *GoogleCloudChannelV1ReportResultsMetadata `json:"reportMetadata,omitempty"`
  1611  	// Rows: The report's lists of values. Each row follows the settings and
  1612  	// ordering of the columns from `report_metadata`.
  1613  	Rows []*GoogleCloudChannelV1Row `json:"rows,omitempty"`
  1614  
  1615  	// ServerResponse contains the HTTP response code and headers from the server.
  1616  	googleapi.ServerResponse `json:"-"`
  1617  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  1618  	// unconditionally include in API requests. By default, fields with empty or
  1619  	// default values are omitted from API requests. See
  1620  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1621  	// details.
  1622  	ForceSendFields []string `json:"-"`
  1623  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  1624  	// requests with the JSON null value. By default, fields with empty values are
  1625  	// omitted from API requests. See
  1626  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1627  	NullFields []string `json:"-"`
  1628  }
  1629  
  1630  func (s *GoogleCloudChannelV1FetchReportResultsResponse) MarshalJSON() ([]byte, error) {
  1631  	type NoMethod GoogleCloudChannelV1FetchReportResultsResponse
  1632  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1633  }
  1634  
  1635  // GoogleCloudChannelV1ImportCustomerRequest: Request message for
  1636  // CloudChannelService.ImportCustomer
  1637  type GoogleCloudChannelV1ImportCustomerRequest struct {
  1638  	// AuthToken: Optional. The super admin of the resold customer generates this
  1639  	// token to authorize a reseller to access their Cloud Identity and purchase
  1640  	// entitlements on their behalf. You can omit this token after authorization.
  1641  	// See https://support.google.com/a/answer/7643790 for more details.
  1642  	AuthToken string `json:"authToken,omitempty"`
  1643  	// ChannelPartnerId: Optional. Cloud Identity ID of a channel partner who will
  1644  	// be the direct reseller for the customer's order. This field is required for
  1645  	// 2-tier transfer scenarios and can be provided via the request Parent binding
  1646  	// as well.
  1647  	ChannelPartnerId string `json:"channelPartnerId,omitempty"`
  1648  	// CloudIdentityId: Required. Customer's Cloud Identity ID
  1649  	CloudIdentityId string `json:"cloudIdentityId,omitempty"`
  1650  	// Customer: Optional. Specifies the customer that will receive imported Cloud
  1651  	// Identity information. Format: accounts/{account_id}/customers/{customer_id}
  1652  	Customer string `json:"customer,omitempty"`
  1653  	// Domain: Required. Customer domain.
  1654  	Domain string `json:"domain,omitempty"`
  1655  	// OverwriteIfExists: Required. Choose to overwrite an existing customer if
  1656  	// found. This must be set to true if there is an existing customer with a
  1657  	// conflicting region code or domain.
  1658  	OverwriteIfExists bool `json:"overwriteIfExists,omitempty"`
  1659  	// ForceSendFields is a list of field names (e.g. "AuthToken") to
  1660  	// unconditionally include in API requests. By default, fields with empty or
  1661  	// default values are omitted from API requests. See
  1662  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1663  	// details.
  1664  	ForceSendFields []string `json:"-"`
  1665  	// NullFields is a list of field names (e.g. "AuthToken") to include in API
  1666  	// requests with the JSON null value. By default, fields with empty values are
  1667  	// omitted from API requests. See
  1668  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1669  	NullFields []string `json:"-"`
  1670  }
  1671  
  1672  func (s *GoogleCloudChannelV1ImportCustomerRequest) MarshalJSON() ([]byte, error) {
  1673  	type NoMethod GoogleCloudChannelV1ImportCustomerRequest
  1674  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1675  }
  1676  
  1677  // GoogleCloudChannelV1ListChannelPartnerLinksResponse: Response message for
  1678  // CloudChannelService.ListChannelPartnerLinks.
  1679  type GoogleCloudChannelV1ListChannelPartnerLinksResponse struct {
  1680  	// ChannelPartnerLinks: The Channel partner links for a reseller.
  1681  	ChannelPartnerLinks []*GoogleCloudChannelV1ChannelPartnerLink `json:"channelPartnerLinks,omitempty"`
  1682  	// NextPageToken: A token to retrieve the next page of results. Pass to
  1683  	// ListChannelPartnerLinksRequest.page_token to obtain that page.
  1684  	NextPageToken string `json:"nextPageToken,omitempty"`
  1685  
  1686  	// ServerResponse contains the HTTP response code and headers from the server.
  1687  	googleapi.ServerResponse `json:"-"`
  1688  	// ForceSendFields is a list of field names (e.g. "ChannelPartnerLinks") to
  1689  	// unconditionally include in API requests. By default, fields with empty or
  1690  	// default values are omitted from API requests. See
  1691  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1692  	// details.
  1693  	ForceSendFields []string `json:"-"`
  1694  	// NullFields is a list of field names (e.g. "ChannelPartnerLinks") to include
  1695  	// in API requests with the JSON null value. By default, fields with empty
  1696  	// values are omitted from API requests. See
  1697  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1698  	NullFields []string `json:"-"`
  1699  }
  1700  
  1701  func (s *GoogleCloudChannelV1ListChannelPartnerLinksResponse) MarshalJSON() ([]byte, error) {
  1702  	type NoMethod GoogleCloudChannelV1ListChannelPartnerLinksResponse
  1703  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1704  }
  1705  
  1706  // GoogleCloudChannelV1ListChannelPartnerRepricingConfigsResponse: Response
  1707  // message for CloudChannelService.ListChannelPartnerRepricingConfigs.
  1708  type GoogleCloudChannelV1ListChannelPartnerRepricingConfigsResponse struct {
  1709  	// ChannelPartnerRepricingConfigs: The repricing configs for this channel
  1710  	// partner.
  1711  	ChannelPartnerRepricingConfigs []*GoogleCloudChannelV1ChannelPartnerRepricingConfig `json:"channelPartnerRepricingConfigs,omitempty"`
  1712  	// NextPageToken: A token to retrieve the next page of results. Pass to
  1713  	// ListChannelPartnerRepricingConfigsRequest.page_token to obtain that page.
  1714  	NextPageToken string `json:"nextPageToken,omitempty"`
  1715  
  1716  	// ServerResponse contains the HTTP response code and headers from the server.
  1717  	googleapi.ServerResponse `json:"-"`
  1718  	// ForceSendFields is a list of field names (e.g.
  1719  	// "ChannelPartnerRepricingConfigs") to unconditionally include in API
  1720  	// requests. By default, fields with empty or default values are omitted from
  1721  	// API requests. See
  1722  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1723  	// details.
  1724  	ForceSendFields []string `json:"-"`
  1725  	// NullFields is a list of field names (e.g. "ChannelPartnerRepricingConfigs")
  1726  	// to include in API requests with the JSON null value. By default, fields with
  1727  	// empty values are omitted from API requests. See
  1728  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1729  	NullFields []string `json:"-"`
  1730  }
  1731  
  1732  func (s *GoogleCloudChannelV1ListChannelPartnerRepricingConfigsResponse) MarshalJSON() ([]byte, error) {
  1733  	type NoMethod GoogleCloudChannelV1ListChannelPartnerRepricingConfigsResponse
  1734  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1735  }
  1736  
  1737  // GoogleCloudChannelV1ListCustomerRepricingConfigsResponse: Response message
  1738  // for CloudChannelService.ListCustomerRepricingConfigs.
  1739  type GoogleCloudChannelV1ListCustomerRepricingConfigsResponse struct {
  1740  	// CustomerRepricingConfigs: The repricing configs for this channel partner.
  1741  	CustomerRepricingConfigs []*GoogleCloudChannelV1CustomerRepricingConfig `json:"customerRepricingConfigs,omitempty"`
  1742  	// NextPageToken: A token to retrieve the next page of results. Pass to
  1743  	// ListCustomerRepricingConfigsRequest.page_token to obtain that page.
  1744  	NextPageToken string `json:"nextPageToken,omitempty"`
  1745  
  1746  	// ServerResponse contains the HTTP response code and headers from the server.
  1747  	googleapi.ServerResponse `json:"-"`
  1748  	// ForceSendFields is a list of field names (e.g. "CustomerRepricingConfigs")
  1749  	// to unconditionally include in API requests. By default, fields with empty or
  1750  	// default values are omitted from API requests. See
  1751  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1752  	// details.
  1753  	ForceSendFields []string `json:"-"`
  1754  	// NullFields is a list of field names (e.g. "CustomerRepricingConfigs") to
  1755  	// include in API requests with the JSON null value. By default, fields with
  1756  	// empty values are omitted from API requests. See
  1757  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1758  	NullFields []string `json:"-"`
  1759  }
  1760  
  1761  func (s *GoogleCloudChannelV1ListCustomerRepricingConfigsResponse) MarshalJSON() ([]byte, error) {
  1762  	type NoMethod GoogleCloudChannelV1ListCustomerRepricingConfigsResponse
  1763  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1764  }
  1765  
  1766  // GoogleCloudChannelV1ListCustomersResponse: Response message for
  1767  // CloudChannelService.ListCustomers.
  1768  type GoogleCloudChannelV1ListCustomersResponse struct {
  1769  	// Customers: The customers belonging to a reseller or distributor.
  1770  	Customers []*GoogleCloudChannelV1Customer `json:"customers,omitempty"`
  1771  	// NextPageToken: A token to retrieve the next page of results. Pass to
  1772  	// ListCustomersRequest.page_token to obtain that page.
  1773  	NextPageToken string `json:"nextPageToken,omitempty"`
  1774  
  1775  	// ServerResponse contains the HTTP response code and headers from the server.
  1776  	googleapi.ServerResponse `json:"-"`
  1777  	// ForceSendFields is a list of field names (e.g. "Customers") to
  1778  	// unconditionally include in API requests. By default, fields with empty or
  1779  	// default values are omitted from API requests. See
  1780  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1781  	// details.
  1782  	ForceSendFields []string `json:"-"`
  1783  	// NullFields is a list of field names (e.g. "Customers") to include in API
  1784  	// requests with the JSON null value. By default, fields with empty values are
  1785  	// omitted from API requests. See
  1786  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1787  	NullFields []string `json:"-"`
  1788  }
  1789  
  1790  func (s *GoogleCloudChannelV1ListCustomersResponse) MarshalJSON() ([]byte, error) {
  1791  	type NoMethod GoogleCloudChannelV1ListCustomersResponse
  1792  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1793  }
  1794  
  1795  // GoogleCloudChannelV1ListEntitlementChangesResponse: Response message for
  1796  // CloudChannelService.ListEntitlementChanges
  1797  type GoogleCloudChannelV1ListEntitlementChangesResponse struct {
  1798  	// EntitlementChanges: The list of entitlement changes.
  1799  	EntitlementChanges []*GoogleCloudChannelV1EntitlementChange `json:"entitlementChanges,omitempty"`
  1800  	// NextPageToken: A token to list the next page of results.
  1801  	NextPageToken string `json:"nextPageToken,omitempty"`
  1802  
  1803  	// ServerResponse contains the HTTP response code and headers from the server.
  1804  	googleapi.ServerResponse `json:"-"`
  1805  	// ForceSendFields is a list of field names (e.g. "EntitlementChanges") to
  1806  	// unconditionally include in API requests. By default, fields with empty or
  1807  	// default values are omitted from API requests. See
  1808  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1809  	// details.
  1810  	ForceSendFields []string `json:"-"`
  1811  	// NullFields is a list of field names (e.g. "EntitlementChanges") to include
  1812  	// in API requests with the JSON null value. By default, fields with empty
  1813  	// values are omitted from API requests. See
  1814  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1815  	NullFields []string `json:"-"`
  1816  }
  1817  
  1818  func (s *GoogleCloudChannelV1ListEntitlementChangesResponse) MarshalJSON() ([]byte, error) {
  1819  	type NoMethod GoogleCloudChannelV1ListEntitlementChangesResponse
  1820  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1821  }
  1822  
  1823  // GoogleCloudChannelV1ListEntitlementsResponse: Response message for
  1824  // CloudChannelService.ListEntitlements.
  1825  type GoogleCloudChannelV1ListEntitlementsResponse struct {
  1826  	// Entitlements: The reseller customer's entitlements.
  1827  	Entitlements []*GoogleCloudChannelV1Entitlement `json:"entitlements,omitempty"`
  1828  	// NextPageToken: A token to list the next page of results. Pass to
  1829  	// ListEntitlementsRequest.page_token to obtain that page.
  1830  	NextPageToken string `json:"nextPageToken,omitempty"`
  1831  
  1832  	// ServerResponse contains the HTTP response code and headers from the server.
  1833  	googleapi.ServerResponse `json:"-"`
  1834  	// ForceSendFields is a list of field names (e.g. "Entitlements") to
  1835  	// unconditionally include in API requests. By default, fields with empty or
  1836  	// default values are omitted from API requests. See
  1837  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1838  	// details.
  1839  	ForceSendFields []string `json:"-"`
  1840  	// NullFields is a list of field names (e.g. "Entitlements") to include in API
  1841  	// requests with the JSON null value. By default, fields with empty values are
  1842  	// omitted from API requests. See
  1843  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1844  	NullFields []string `json:"-"`
  1845  }
  1846  
  1847  func (s *GoogleCloudChannelV1ListEntitlementsResponse) MarshalJSON() ([]byte, error) {
  1848  	type NoMethod GoogleCloudChannelV1ListEntitlementsResponse
  1849  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1850  }
  1851  
  1852  // GoogleCloudChannelV1ListOffersResponse: Response message for ListOffers.
  1853  type GoogleCloudChannelV1ListOffersResponse struct {
  1854  	// NextPageToken: A token to retrieve the next page of results.
  1855  	NextPageToken string `json:"nextPageToken,omitempty"`
  1856  	// Offers: The list of Offers requested.
  1857  	Offers []*GoogleCloudChannelV1Offer `json:"offers,omitempty"`
  1858  
  1859  	// ServerResponse contains the HTTP response code and headers from the server.
  1860  	googleapi.ServerResponse `json:"-"`
  1861  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  1862  	// unconditionally include in API requests. By default, fields with empty or
  1863  	// default values are omitted from API requests. See
  1864  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1865  	// details.
  1866  	ForceSendFields []string `json:"-"`
  1867  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  1868  	// requests with the JSON null value. By default, fields with empty values are
  1869  	// omitted from API requests. See
  1870  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1871  	NullFields []string `json:"-"`
  1872  }
  1873  
  1874  func (s *GoogleCloudChannelV1ListOffersResponse) MarshalJSON() ([]byte, error) {
  1875  	type NoMethod GoogleCloudChannelV1ListOffersResponse
  1876  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1877  }
  1878  
  1879  // GoogleCloudChannelV1ListProductsResponse: Response message for ListProducts.
  1880  type GoogleCloudChannelV1ListProductsResponse struct {
  1881  	// NextPageToken: A token to retrieve the next page of results.
  1882  	NextPageToken string `json:"nextPageToken,omitempty"`
  1883  	// Products: List of Products requested.
  1884  	Products []*GoogleCloudChannelV1Product `json:"products,omitempty"`
  1885  
  1886  	// ServerResponse contains the HTTP response code and headers from the server.
  1887  	googleapi.ServerResponse `json:"-"`
  1888  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  1889  	// unconditionally include in API requests. By default, fields with empty or
  1890  	// default values are omitted from API requests. See
  1891  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1892  	// details.
  1893  	ForceSendFields []string `json:"-"`
  1894  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  1895  	// requests with the JSON null value. By default, fields with empty values are
  1896  	// omitted from API requests. See
  1897  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1898  	NullFields []string `json:"-"`
  1899  }
  1900  
  1901  func (s *GoogleCloudChannelV1ListProductsResponse) MarshalJSON() ([]byte, error) {
  1902  	type NoMethod GoogleCloudChannelV1ListProductsResponse
  1903  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1904  }
  1905  
  1906  // GoogleCloudChannelV1ListPurchasableOffersResponse: Response message for
  1907  // ListPurchasableOffers.
  1908  type GoogleCloudChannelV1ListPurchasableOffersResponse struct {
  1909  	// NextPageToken: A token to retrieve the next page of results.
  1910  	NextPageToken string `json:"nextPageToken,omitempty"`
  1911  	// PurchasableOffers: The list of Offers requested.
  1912  	PurchasableOffers []*GoogleCloudChannelV1PurchasableOffer `json:"purchasableOffers,omitempty"`
  1913  
  1914  	// ServerResponse contains the HTTP response code and headers from the server.
  1915  	googleapi.ServerResponse `json:"-"`
  1916  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  1917  	// unconditionally include in API requests. By default, fields with empty or
  1918  	// default values are omitted from API requests. See
  1919  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1920  	// details.
  1921  	ForceSendFields []string `json:"-"`
  1922  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  1923  	// requests with the JSON null value. By default, fields with empty values are
  1924  	// omitted from API requests. See
  1925  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1926  	NullFields []string `json:"-"`
  1927  }
  1928  
  1929  func (s *GoogleCloudChannelV1ListPurchasableOffersResponse) MarshalJSON() ([]byte, error) {
  1930  	type NoMethod GoogleCloudChannelV1ListPurchasableOffersResponse
  1931  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1932  }
  1933  
  1934  // GoogleCloudChannelV1ListPurchasableSkusResponse: Response message for
  1935  // ListPurchasableSkus.
  1936  type GoogleCloudChannelV1ListPurchasableSkusResponse struct {
  1937  	// NextPageToken: A token to retrieve the next page of results.
  1938  	NextPageToken string `json:"nextPageToken,omitempty"`
  1939  	// PurchasableSkus: The list of SKUs requested.
  1940  	PurchasableSkus []*GoogleCloudChannelV1PurchasableSku `json:"purchasableSkus,omitempty"`
  1941  
  1942  	// ServerResponse contains the HTTP response code and headers from the server.
  1943  	googleapi.ServerResponse `json:"-"`
  1944  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  1945  	// unconditionally include in API requests. By default, fields with empty or
  1946  	// default values are omitted from API requests. See
  1947  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1948  	// details.
  1949  	ForceSendFields []string `json:"-"`
  1950  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  1951  	// requests with the JSON null value. By default, fields with empty values are
  1952  	// omitted from API requests. See
  1953  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1954  	NullFields []string `json:"-"`
  1955  }
  1956  
  1957  func (s *GoogleCloudChannelV1ListPurchasableSkusResponse) MarshalJSON() ([]byte, error) {
  1958  	type NoMethod GoogleCloudChannelV1ListPurchasableSkusResponse
  1959  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1960  }
  1961  
  1962  // GoogleCloudChannelV1ListReportsResponse: Response message for
  1963  // CloudChannelReportsService.ListReports.
  1964  type GoogleCloudChannelV1ListReportsResponse struct {
  1965  	// NextPageToken: Pass this token to FetchReportResultsRequest.page_token to
  1966  	// retrieve the next page of results.
  1967  	NextPageToken string `json:"nextPageToken,omitempty"`
  1968  	// Reports: The reports available to the partner.
  1969  	Reports []*GoogleCloudChannelV1Report `json:"reports,omitempty"`
  1970  
  1971  	// ServerResponse contains the HTTP response code and headers from the server.
  1972  	googleapi.ServerResponse `json:"-"`
  1973  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  1974  	// unconditionally include in API requests. By default, fields with empty or
  1975  	// default values are omitted from API requests. See
  1976  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1977  	// details.
  1978  	ForceSendFields []string `json:"-"`
  1979  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  1980  	// requests with the JSON null value. By default, fields with empty values are
  1981  	// omitted from API requests. See
  1982  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1983  	NullFields []string `json:"-"`
  1984  }
  1985  
  1986  func (s *GoogleCloudChannelV1ListReportsResponse) MarshalJSON() ([]byte, error) {
  1987  	type NoMethod GoogleCloudChannelV1ListReportsResponse
  1988  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1989  }
  1990  
  1991  // GoogleCloudChannelV1ListSkuGroupBillableSkusResponse: Response message for
  1992  // ListSkuGroupBillableSkus.
  1993  type GoogleCloudChannelV1ListSkuGroupBillableSkusResponse struct {
  1994  	// BillableSkus: The list of billable SKUs in the requested SKU group.
  1995  	BillableSkus []*GoogleCloudChannelV1BillableSku `json:"billableSkus,omitempty"`
  1996  	// NextPageToken: A token to retrieve the next page of results. Pass to
  1997  	// ListSkuGroupBillableSkus.page_token to obtain that page.
  1998  	NextPageToken string `json:"nextPageToken,omitempty"`
  1999  
  2000  	// ServerResponse contains the HTTP response code and headers from the server.
  2001  	googleapi.ServerResponse `json:"-"`
  2002  	// ForceSendFields is a list of field names (e.g. "BillableSkus") to
  2003  	// unconditionally include in API requests. By default, fields with empty or
  2004  	// default values are omitted from API requests. See
  2005  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2006  	// details.
  2007  	ForceSendFields []string `json:"-"`
  2008  	// NullFields is a list of field names (e.g. "BillableSkus") to include in API
  2009  	// requests with the JSON null value. By default, fields with empty values are
  2010  	// omitted from API requests. See
  2011  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2012  	NullFields []string `json:"-"`
  2013  }
  2014  
  2015  func (s *GoogleCloudChannelV1ListSkuGroupBillableSkusResponse) MarshalJSON() ([]byte, error) {
  2016  	type NoMethod GoogleCloudChannelV1ListSkuGroupBillableSkusResponse
  2017  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2018  }
  2019  
  2020  // GoogleCloudChannelV1ListSkuGroupsResponse: Response message for
  2021  // ListSkuGroups.
  2022  type GoogleCloudChannelV1ListSkuGroupsResponse struct {
  2023  	// NextPageToken: A token to retrieve the next page of results. Pass to
  2024  	// ListSkuGroups.page_token to obtain that page.
  2025  	NextPageToken string `json:"nextPageToken,omitempty"`
  2026  	// SkuGroups: The list of SKU groups requested.
  2027  	SkuGroups []*GoogleCloudChannelV1SkuGroup `json:"skuGroups,omitempty"`
  2028  
  2029  	// ServerResponse contains the HTTP response code and headers from the server.
  2030  	googleapi.ServerResponse `json:"-"`
  2031  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  2032  	// unconditionally include in API requests. By default, fields with empty or
  2033  	// default values are omitted from API requests. See
  2034  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2035  	// details.
  2036  	ForceSendFields []string `json:"-"`
  2037  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  2038  	// requests with the JSON null value. By default, fields with empty values are
  2039  	// omitted from API requests. See
  2040  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2041  	NullFields []string `json:"-"`
  2042  }
  2043  
  2044  func (s *GoogleCloudChannelV1ListSkuGroupsResponse) MarshalJSON() ([]byte, error) {
  2045  	type NoMethod GoogleCloudChannelV1ListSkuGroupsResponse
  2046  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2047  }
  2048  
  2049  // GoogleCloudChannelV1ListSkusResponse: Response message for ListSkus.
  2050  type GoogleCloudChannelV1ListSkusResponse struct {
  2051  	// NextPageToken: A token to retrieve the next page of results.
  2052  	NextPageToken string `json:"nextPageToken,omitempty"`
  2053  	// Skus: The list of SKUs requested.
  2054  	Skus []*GoogleCloudChannelV1Sku `json:"skus,omitempty"`
  2055  
  2056  	// ServerResponse contains the HTTP response code and headers from the server.
  2057  	googleapi.ServerResponse `json:"-"`
  2058  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  2059  	// unconditionally include in API requests. By default, fields with empty or
  2060  	// default values are omitted from API requests. See
  2061  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2062  	// details.
  2063  	ForceSendFields []string `json:"-"`
  2064  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  2065  	// requests with the JSON null value. By default, fields with empty values are
  2066  	// omitted from API requests. See
  2067  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2068  	NullFields []string `json:"-"`
  2069  }
  2070  
  2071  func (s *GoogleCloudChannelV1ListSkusResponse) MarshalJSON() ([]byte, error) {
  2072  	type NoMethod GoogleCloudChannelV1ListSkusResponse
  2073  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2074  }
  2075  
  2076  // GoogleCloudChannelV1ListSubscribersResponse: Response Message for
  2077  // ListSubscribers.
  2078  type GoogleCloudChannelV1ListSubscribersResponse struct {
  2079  	// NextPageToken: A token that can be sent as `page_token` to retrieve the next
  2080  	// page. If this field is omitted, there are no subsequent pages.
  2081  	NextPageToken string `json:"nextPageToken,omitempty"`
  2082  	// ServiceAccounts: List of service accounts which have subscriber access to
  2083  	// the topic.
  2084  	ServiceAccounts []string `json:"serviceAccounts,omitempty"`
  2085  	// Topic: Name of the topic registered with the reseller.
  2086  	Topic string `json:"topic,omitempty"`
  2087  
  2088  	// ServerResponse contains the HTTP response code and headers from the server.
  2089  	googleapi.ServerResponse `json:"-"`
  2090  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  2091  	// unconditionally include in API requests. By default, fields with empty or
  2092  	// default values are omitted from API requests. See
  2093  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2094  	// details.
  2095  	ForceSendFields []string `json:"-"`
  2096  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  2097  	// requests with the JSON null value. By default, fields with empty values are
  2098  	// omitted from API requests. See
  2099  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2100  	NullFields []string `json:"-"`
  2101  }
  2102  
  2103  func (s *GoogleCloudChannelV1ListSubscribersResponse) MarshalJSON() ([]byte, error) {
  2104  	type NoMethod GoogleCloudChannelV1ListSubscribersResponse
  2105  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2106  }
  2107  
  2108  // GoogleCloudChannelV1ListTransferableOffersRequest: Request message for
  2109  // CloudChannelService.ListTransferableOffers
  2110  type GoogleCloudChannelV1ListTransferableOffersRequest struct {
  2111  	// BillingAccount: Optional. The Billing Account to look up Offers for. Format:
  2112  	// accounts/{account_id}/billingAccounts/{billing_account_id}. This field is
  2113  	// only relevant for multi-currency accounts. It should be left empty for
  2114  	// single currency accounts.
  2115  	BillingAccount string `json:"billingAccount,omitempty"`
  2116  	// CloudIdentityId: Customer's Cloud Identity ID
  2117  	CloudIdentityId string `json:"cloudIdentityId,omitempty"`
  2118  	// CustomerName: A reseller should create a customer and use the resource name
  2119  	// of that customer here.
  2120  	CustomerName string `json:"customerName,omitempty"`
  2121  	// LanguageCode: Optional. The BCP-47 language code. For example, "en-US". The
  2122  	// response will localize in the corresponding language code, if specified. The
  2123  	// default value is "en-US".
  2124  	LanguageCode string `json:"languageCode,omitempty"`
  2125  	// PageSize: Requested page size. Server might return fewer results than
  2126  	// requested. If unspecified, returns at most 100 offers. The maximum value is
  2127  	// 1000; the server will coerce values above 1000.
  2128  	PageSize int64 `json:"pageSize,omitempty"`
  2129  	// PageToken: A token for a page of results other than the first page. Obtained
  2130  	// using ListTransferableOffersResponse.next_page_token of the previous
  2131  	// CloudChannelService.ListTransferableOffers call.
  2132  	PageToken string `json:"pageToken,omitempty"`
  2133  	// Sku: Required. The SKU to look up Offers for.
  2134  	Sku string `json:"sku,omitempty"`
  2135  	// ForceSendFields is a list of field names (e.g. "BillingAccount") to
  2136  	// unconditionally include in API requests. By default, fields with empty or
  2137  	// default values are omitted from API requests. See
  2138  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2139  	// details.
  2140  	ForceSendFields []string `json:"-"`
  2141  	// NullFields is a list of field names (e.g. "BillingAccount") to include in
  2142  	// API requests with the JSON null value. By default, fields with empty values
  2143  	// are omitted from API requests. See
  2144  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2145  	NullFields []string `json:"-"`
  2146  }
  2147  
  2148  func (s *GoogleCloudChannelV1ListTransferableOffersRequest) MarshalJSON() ([]byte, error) {
  2149  	type NoMethod GoogleCloudChannelV1ListTransferableOffersRequest
  2150  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2151  }
  2152  
  2153  // GoogleCloudChannelV1ListTransferableOffersResponse: Response message for
  2154  // CloudChannelService.ListTransferableOffers.
  2155  type GoogleCloudChannelV1ListTransferableOffersResponse struct {
  2156  	// NextPageToken: A token to retrieve the next page of results. Pass to
  2157  	// ListTransferableOffersRequest.page_token to obtain that page.
  2158  	NextPageToken string `json:"nextPageToken,omitempty"`
  2159  	// TransferableOffers: Information about Offers for a customer that can be used
  2160  	// for transfer.
  2161  	TransferableOffers []*GoogleCloudChannelV1TransferableOffer `json:"transferableOffers,omitempty"`
  2162  
  2163  	// ServerResponse contains the HTTP response code and headers from the server.
  2164  	googleapi.ServerResponse `json:"-"`
  2165  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  2166  	// unconditionally include in API requests. By default, fields with empty or
  2167  	// default values are omitted from API requests. See
  2168  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2169  	// details.
  2170  	ForceSendFields []string `json:"-"`
  2171  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  2172  	// requests with the JSON null value. By default, fields with empty values are
  2173  	// omitted from API requests. See
  2174  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2175  	NullFields []string `json:"-"`
  2176  }
  2177  
  2178  func (s *GoogleCloudChannelV1ListTransferableOffersResponse) MarshalJSON() ([]byte, error) {
  2179  	type NoMethod GoogleCloudChannelV1ListTransferableOffersResponse
  2180  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2181  }
  2182  
  2183  // GoogleCloudChannelV1ListTransferableSkusRequest: Request message for
  2184  // CloudChannelService.ListTransferableSkus
  2185  type GoogleCloudChannelV1ListTransferableSkusRequest struct {
  2186  	// AuthToken: Optional. The super admin of the resold customer generates this
  2187  	// token to authorize a reseller to access their Cloud Identity and purchase
  2188  	// entitlements on their behalf. You can omit this token after authorization.
  2189  	// See https://support.google.com/a/answer/7643790 for more details.
  2190  	AuthToken string `json:"authToken,omitempty"`
  2191  	// CloudIdentityId: Customer's Cloud Identity ID
  2192  	CloudIdentityId string `json:"cloudIdentityId,omitempty"`
  2193  	// CustomerName: A reseller is required to create a customer and use the
  2194  	// resource name of the created customer here. Customer_name uses the format:
  2195  	// accounts/{account_id}/customers/{customer_id}
  2196  	CustomerName string `json:"customerName,omitempty"`
  2197  	// LanguageCode: The BCP-47 language code. For example, "en-US". The response
  2198  	// will localize in the corresponding language code, if specified. The default
  2199  	// value is "en-US". Optional.
  2200  	LanguageCode string `json:"languageCode,omitempty"`
  2201  	// PageSize: The requested page size. Server might return fewer results than
  2202  	// requested. If unspecified, returns at most 100 SKUs. The maximum value is
  2203  	// 1000; the server will coerce values above 1000. Optional.
  2204  	PageSize int64 `json:"pageSize,omitempty"`
  2205  	// PageToken: A token for a page of results other than the first page. Obtained
  2206  	// using ListTransferableSkusResponse.next_page_token of the previous
  2207  	// CloudChannelService.ListTransferableSkus call. Optional.
  2208  	PageToken string `json:"pageToken,omitempty"`
  2209  	// ForceSendFields is a list of field names (e.g. "AuthToken") to
  2210  	// unconditionally include in API requests. By default, fields with empty or
  2211  	// default values are omitted from API requests. See
  2212  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2213  	// details.
  2214  	ForceSendFields []string `json:"-"`
  2215  	// NullFields is a list of field names (e.g. "AuthToken") to include in API
  2216  	// requests with the JSON null value. By default, fields with empty values are
  2217  	// omitted from API requests. See
  2218  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2219  	NullFields []string `json:"-"`
  2220  }
  2221  
  2222  func (s *GoogleCloudChannelV1ListTransferableSkusRequest) MarshalJSON() ([]byte, error) {
  2223  	type NoMethod GoogleCloudChannelV1ListTransferableSkusRequest
  2224  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2225  }
  2226  
  2227  // GoogleCloudChannelV1ListTransferableSkusResponse: Response message for
  2228  // CloudChannelService.ListTransferableSkus.
  2229  type GoogleCloudChannelV1ListTransferableSkusResponse struct {
  2230  	// NextPageToken: A token to retrieve the next page of results. Pass to
  2231  	// ListTransferableSkusRequest.page_token to obtain that page.
  2232  	NextPageToken string `json:"nextPageToken,omitempty"`
  2233  	// TransferableSkus: Information about existing SKUs for a customer that needs
  2234  	// a transfer.
  2235  	TransferableSkus []*GoogleCloudChannelV1TransferableSku `json:"transferableSkus,omitempty"`
  2236  
  2237  	// ServerResponse contains the HTTP response code and headers from the server.
  2238  	googleapi.ServerResponse `json:"-"`
  2239  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  2240  	// unconditionally include in API requests. By default, fields with empty or
  2241  	// default values are omitted from API requests. See
  2242  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2243  	// details.
  2244  	ForceSendFields []string `json:"-"`
  2245  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  2246  	// requests with the JSON null value. By default, fields with empty values are
  2247  	// omitted from API requests. See
  2248  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2249  	NullFields []string `json:"-"`
  2250  }
  2251  
  2252  func (s *GoogleCloudChannelV1ListTransferableSkusResponse) MarshalJSON() ([]byte, error) {
  2253  	type NoMethod GoogleCloudChannelV1ListTransferableSkusResponse
  2254  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2255  }
  2256  
  2257  // GoogleCloudChannelV1MarketingInfo: Represents the marketing information for
  2258  // a Product, SKU or Offer.
  2259  type GoogleCloudChannelV1MarketingInfo struct {
  2260  	// DefaultLogo: Default logo.
  2261  	DefaultLogo *GoogleCloudChannelV1Media `json:"defaultLogo,omitempty"`
  2262  	// Description: Human readable description. Description can contain HTML.
  2263  	Description string `json:"description,omitempty"`
  2264  	// DisplayName: Human readable name.
  2265  	DisplayName string `json:"displayName,omitempty"`
  2266  	// ForceSendFields is a list of field names (e.g. "DefaultLogo") to
  2267  	// unconditionally include in API requests. By default, fields with empty or
  2268  	// default values are omitted from API requests. See
  2269  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2270  	// details.
  2271  	ForceSendFields []string `json:"-"`
  2272  	// NullFields is a list of field names (e.g. "DefaultLogo") to include in API
  2273  	// requests with the JSON null value. By default, fields with empty values are
  2274  	// omitted from API requests. See
  2275  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2276  	NullFields []string `json:"-"`
  2277  }
  2278  
  2279  func (s *GoogleCloudChannelV1MarketingInfo) MarshalJSON() ([]byte, error) {
  2280  	type NoMethod GoogleCloudChannelV1MarketingInfo
  2281  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2282  }
  2283  
  2284  // GoogleCloudChannelV1Media: Represents media information.
  2285  type GoogleCloudChannelV1Media struct {
  2286  	// Content: URL of the media.
  2287  	Content string `json:"content,omitempty"`
  2288  	// Title: Title of the media.
  2289  	Title string `json:"title,omitempty"`
  2290  	// Type: Type of the media.
  2291  	//
  2292  	// Possible values:
  2293  	//   "MEDIA_TYPE_UNSPECIFIED" - Not used.
  2294  	//   "MEDIA_TYPE_IMAGE" - Type of image.
  2295  	Type string `json:"type,omitempty"`
  2296  	// ForceSendFields is a list of field names (e.g. "Content") to unconditionally
  2297  	// include in API requests. By default, fields with empty or default values are
  2298  	// omitted from API requests. See
  2299  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2300  	// details.
  2301  	ForceSendFields []string `json:"-"`
  2302  	// NullFields is a list of field names (e.g. "Content") to include in API
  2303  	// requests with the JSON null value. By default, fields with empty values are
  2304  	// omitted from API requests. See
  2305  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2306  	NullFields []string `json:"-"`
  2307  }
  2308  
  2309  func (s *GoogleCloudChannelV1Media) MarshalJSON() ([]byte, error) {
  2310  	type NoMethod GoogleCloudChannelV1Media
  2311  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2312  }
  2313  
  2314  // GoogleCloudChannelV1Offer: Represents an offer made to resellers for
  2315  // purchase. An offer is associated with a Sku, has a plan for payment, a
  2316  // price, and defines the constraints for buying.
  2317  type GoogleCloudChannelV1Offer struct {
  2318  	// Constraints: Constraints on transacting the Offer.
  2319  	Constraints *GoogleCloudChannelV1Constraints `json:"constraints,omitempty"`
  2320  	// DealCode: The deal code of the offer to get a special promotion or discount.
  2321  	DealCode string `json:"dealCode,omitempty"`
  2322  	// EndTime: Output only. End of the Offer validity time.
  2323  	EndTime string `json:"endTime,omitempty"`
  2324  	// MarketingInfo: Marketing information for the Offer.
  2325  	MarketingInfo *GoogleCloudChannelV1MarketingInfo `json:"marketingInfo,omitempty"`
  2326  	// Name: Resource Name of the Offer. Format:
  2327  	// accounts/{account_id}/offers/{offer_id}
  2328  	Name string `json:"name,omitempty"`
  2329  	// ParameterDefinitions: Parameters required to use current Offer to purchase.
  2330  	ParameterDefinitions []*GoogleCloudChannelV1ParameterDefinition `json:"parameterDefinitions,omitempty"`
  2331  	// Plan: Describes the payment plan for the Offer.
  2332  	Plan *GoogleCloudChannelV1Plan `json:"plan,omitempty"`
  2333  	// PriceByResources: Price for each monetizable resource type.
  2334  	PriceByResources []*GoogleCloudChannelV1PriceByResource `json:"priceByResources,omitempty"`
  2335  	// Sku: SKU the offer is associated with.
  2336  	Sku *GoogleCloudChannelV1Sku `json:"sku,omitempty"`
  2337  	// StartTime: Start of the Offer validity time.
  2338  	StartTime string `json:"startTime,omitempty"`
  2339  
  2340  	// ServerResponse contains the HTTP response code and headers from the server.
  2341  	googleapi.ServerResponse `json:"-"`
  2342  	// ForceSendFields is a list of field names (e.g. "Constraints") to
  2343  	// unconditionally include in API requests. By default, fields with empty or
  2344  	// default values are omitted from API requests. See
  2345  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2346  	// details.
  2347  	ForceSendFields []string `json:"-"`
  2348  	// NullFields is a list of field names (e.g. "Constraints") to include in API
  2349  	// requests with the JSON null value. By default, fields with empty values are
  2350  	// omitted from API requests. See
  2351  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2352  	NullFields []string `json:"-"`
  2353  }
  2354  
  2355  func (s *GoogleCloudChannelV1Offer) MarshalJSON() ([]byte, error) {
  2356  	type NoMethod GoogleCloudChannelV1Offer
  2357  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2358  }
  2359  
  2360  // GoogleCloudChannelV1OperationMetadata: Provides contextual information about
  2361  // a google.longrunning.Operation.
  2362  type GoogleCloudChannelV1OperationMetadata struct {
  2363  	// OperationType: The RPC that initiated this Long Running Operation.
  2364  	//
  2365  	// Possible values:
  2366  	//   "OPERATION_TYPE_UNSPECIFIED" - Not used.
  2367  	//   "CREATE_ENTITLEMENT" - Long Running Operation was triggered by
  2368  	// CreateEntitlement.
  2369  	//   "CHANGE_RENEWAL_SETTINGS" - Long Running Operation was triggered by
  2370  	// ChangeRenewalSettings.
  2371  	//   "START_PAID_SERVICE" - Long Running Operation was triggered by
  2372  	// StartPaidService.
  2373  	//   "ACTIVATE_ENTITLEMENT" - Long Running Operation was triggered by
  2374  	// ActivateEntitlement.
  2375  	//   "SUSPEND_ENTITLEMENT" - Long Running Operation was triggered by
  2376  	// SuspendEntitlement.
  2377  	//   "CANCEL_ENTITLEMENT" - Long Running Operation was triggered by
  2378  	// CancelEntitlement.
  2379  	//   "TRANSFER_ENTITLEMENTS" - Long Running Operation was triggered by
  2380  	// TransferEntitlements.
  2381  	//   "TRANSFER_ENTITLEMENTS_TO_GOOGLE" - Long Running Operation was triggered
  2382  	// by TransferEntitlementsToGoogle.
  2383  	//   "CHANGE_OFFER" - Long Running Operation was triggered by ChangeOffer.
  2384  	//   "CHANGE_PARAMETERS" - Long Running Operation was triggered by
  2385  	// ChangeParameters.
  2386  	//   "PROVISION_CLOUD_IDENTITY" - Long Running Operation was triggered by
  2387  	// ProvisionCloudIdentity.
  2388  	OperationType string `json:"operationType,omitempty"`
  2389  	// ForceSendFields is a list of field names (e.g. "OperationType") to
  2390  	// unconditionally include in API requests. By default, fields with empty or
  2391  	// default values are omitted from API requests. See
  2392  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2393  	// details.
  2394  	ForceSendFields []string `json:"-"`
  2395  	// NullFields is a list of field names (e.g. "OperationType") to include in API
  2396  	// requests with the JSON null value. By default, fields with empty values are
  2397  	// omitted from API requests. See
  2398  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2399  	NullFields []string `json:"-"`
  2400  }
  2401  
  2402  func (s *GoogleCloudChannelV1OperationMetadata) MarshalJSON() ([]byte, error) {
  2403  	type NoMethod GoogleCloudChannelV1OperationMetadata
  2404  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2405  }
  2406  
  2407  // GoogleCloudChannelV1Parameter: Definition for extended entitlement
  2408  // parameters.
  2409  type GoogleCloudChannelV1Parameter struct {
  2410  	// Editable: Output only. Specifies whether this parameter is allowed to be
  2411  	// changed. For example, for a Google Workspace Business Starter entitlement in
  2412  	// commitment plan, num_units is editable when entitlement is active.
  2413  	Editable bool `json:"editable,omitempty"`
  2414  	// Name: Name of the parameter.
  2415  	Name string `json:"name,omitempty"`
  2416  	// Value: Value of the parameter.
  2417  	Value *GoogleCloudChannelV1Value `json:"value,omitempty"`
  2418  	// ForceSendFields is a list of field names (e.g. "Editable") to
  2419  	// unconditionally include in API requests. By default, fields with empty or
  2420  	// default values are omitted from API requests. See
  2421  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2422  	// details.
  2423  	ForceSendFields []string `json:"-"`
  2424  	// NullFields is a list of field names (e.g. "Editable") to include in API
  2425  	// requests with the JSON null value. By default, fields with empty values are
  2426  	// omitted from API requests. See
  2427  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2428  	NullFields []string `json:"-"`
  2429  }
  2430  
  2431  func (s *GoogleCloudChannelV1Parameter) MarshalJSON() ([]byte, error) {
  2432  	type NoMethod GoogleCloudChannelV1Parameter
  2433  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2434  }
  2435  
  2436  // GoogleCloudChannelV1ParameterDefinition: Parameter's definition. Specifies
  2437  // what parameter is required to use the current Offer to purchase.
  2438  type GoogleCloudChannelV1ParameterDefinition struct {
  2439  	// AllowedValues: If not empty, parameter values must be drawn from this list.
  2440  	// For example, [us-west1, us-west2, ...] Applicable to STRING parameter type.
  2441  	AllowedValues []*GoogleCloudChannelV1Value `json:"allowedValues,omitempty"`
  2442  	// MaxValue: Maximum value of the parameter, if applicable. Inclusive. For
  2443  	// example, maximum seats when purchasing Google Workspace Business Standard.
  2444  	// Applicable to INT64 and DOUBLE parameter types.
  2445  	MaxValue *GoogleCloudChannelV1Value `json:"maxValue,omitempty"`
  2446  	// MinValue: Minimal value of the parameter, if applicable. Inclusive. For
  2447  	// example, minimal commitment when purchasing Anthos is 0.01. Applicable to
  2448  	// INT64 and DOUBLE parameter types.
  2449  	MinValue *GoogleCloudChannelV1Value `json:"minValue,omitempty"`
  2450  	// Name: Name of the parameter.
  2451  	Name string `json:"name,omitempty"`
  2452  	// Optional: If set to true, parameter is optional to purchase this Offer.
  2453  	Optional bool `json:"optional,omitempty"`
  2454  	// ParameterType: Data type of the parameter. Minimal value, Maximum value and
  2455  	// allowed values will use specified data type here.
  2456  	//
  2457  	// Possible values:
  2458  	//   "PARAMETER_TYPE_UNSPECIFIED" - Not used.
  2459  	//   "INT64" - Int64 type.
  2460  	//   "STRING" - String type.
  2461  	//   "DOUBLE" - Double type.
  2462  	//   "BOOLEAN" - Boolean type.
  2463  	ParameterType string `json:"parameterType,omitempty"`
  2464  	// ForceSendFields is a list of field names (e.g. "AllowedValues") to
  2465  	// unconditionally include in API requests. By default, fields with empty or
  2466  	// default values are omitted from API requests. See
  2467  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2468  	// details.
  2469  	ForceSendFields []string `json:"-"`
  2470  	// NullFields is a list of field names (e.g. "AllowedValues") to include in API
  2471  	// requests with the JSON null value. By default, fields with empty values are
  2472  	// omitted from API requests. See
  2473  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2474  	NullFields []string `json:"-"`
  2475  }
  2476  
  2477  func (s *GoogleCloudChannelV1ParameterDefinition) MarshalJSON() ([]byte, error) {
  2478  	type NoMethod GoogleCloudChannelV1ParameterDefinition
  2479  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2480  }
  2481  
  2482  // GoogleCloudChannelV1PercentageAdjustment: An adjustment that applies a flat
  2483  // markup or markdown to an entire bill.
  2484  type GoogleCloudChannelV1PercentageAdjustment struct {
  2485  	// Percentage: The percentage of the bill to adjust. For example: Mark down by
  2486  	// 1% => "-1.00" Mark up by 1% => "1.00" Pass-Through => "0.00"
  2487  	Percentage *GoogleTypeDecimal `json:"percentage,omitempty"`
  2488  	// ForceSendFields is a list of field names (e.g. "Percentage") to
  2489  	// unconditionally include in API requests. By default, fields with empty or
  2490  	// default values are omitted from API requests. See
  2491  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2492  	// details.
  2493  	ForceSendFields []string `json:"-"`
  2494  	// NullFields is a list of field names (e.g. "Percentage") to include in API
  2495  	// requests with the JSON null value. By default, fields with empty values are
  2496  	// omitted from API requests. See
  2497  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2498  	NullFields []string `json:"-"`
  2499  }
  2500  
  2501  func (s *GoogleCloudChannelV1PercentageAdjustment) MarshalJSON() ([]byte, error) {
  2502  	type NoMethod GoogleCloudChannelV1PercentageAdjustment
  2503  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2504  }
  2505  
  2506  // GoogleCloudChannelV1Period: Represents period in days/months/years.
  2507  type GoogleCloudChannelV1Period struct {
  2508  	// Duration: Total duration of Period Type defined.
  2509  	Duration int64 `json:"duration,omitempty"`
  2510  	// PeriodType: Period Type.
  2511  	//
  2512  	// Possible values:
  2513  	//   "PERIOD_TYPE_UNSPECIFIED" - Not used.
  2514  	//   "DAY" - Day.
  2515  	//   "MONTH" - Month.
  2516  	//   "YEAR" - Year.
  2517  	PeriodType string `json:"periodType,omitempty"`
  2518  	// ForceSendFields is a list of field names (e.g. "Duration") to
  2519  	// unconditionally include in API requests. By default, fields with empty or
  2520  	// default values are omitted from API requests. See
  2521  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2522  	// details.
  2523  	ForceSendFields []string `json:"-"`
  2524  	// NullFields is a list of field names (e.g. "Duration") to include in API
  2525  	// requests with the JSON null value. By default, fields with empty values are
  2526  	// omitted from API requests. See
  2527  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2528  	NullFields []string `json:"-"`
  2529  }
  2530  
  2531  func (s *GoogleCloudChannelV1Period) MarshalJSON() ([]byte, error) {
  2532  	type NoMethod GoogleCloudChannelV1Period
  2533  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2534  }
  2535  
  2536  // GoogleCloudChannelV1Plan: The payment plan for the Offer. Describes how to
  2537  // make a payment.
  2538  type GoogleCloudChannelV1Plan struct {
  2539  	// BillingAccount: Reseller Billing account to charge after an offer
  2540  	// transaction. Only present for Google Cloud offers.
  2541  	BillingAccount string `json:"billingAccount,omitempty"`
  2542  	// PaymentCycle: Describes how frequently the reseller will be billed, such as
  2543  	// once per month.
  2544  	PaymentCycle *GoogleCloudChannelV1Period `json:"paymentCycle,omitempty"`
  2545  	// PaymentPlan: Describes how a reseller will be billed.
  2546  	//
  2547  	// Possible values:
  2548  	//   "PAYMENT_PLAN_UNSPECIFIED" - Not used.
  2549  	//   "COMMITMENT" - Commitment.
  2550  	//   "FLEXIBLE" - No commitment.
  2551  	//   "FREE" - Free.
  2552  	//   "TRIAL" - Trial.
  2553  	//   "OFFLINE" - Price and ordering not available through API.
  2554  	PaymentPlan string `json:"paymentPlan,omitempty"`
  2555  	// PaymentType: Specifies when the payment needs to happen.
  2556  	//
  2557  	// Possible values:
  2558  	//   "PAYMENT_TYPE_UNSPECIFIED" - Not used.
  2559  	//   "PREPAY" - Prepay. Amount has to be paid before service is rendered.
  2560  	//   "POSTPAY" - Postpay. Reseller is charged at the end of the Payment cycle.
  2561  	PaymentType string `json:"paymentType,omitempty"`
  2562  	// TrialPeriod: Present for Offers with a trial period. For trial-only Offers,
  2563  	// a paid service needs to start before the trial period ends for continued
  2564  	// service. For Regular Offers with a trial period, the regular pricing goes
  2565  	// into effect when trial period ends, or if paid service is started before the
  2566  	// end of the trial period.
  2567  	TrialPeriod *GoogleCloudChannelV1Period `json:"trialPeriod,omitempty"`
  2568  	// ForceSendFields is a list of field names (e.g. "BillingAccount") to
  2569  	// unconditionally include in API requests. By default, fields with empty or
  2570  	// default values are omitted from API requests. See
  2571  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2572  	// details.
  2573  	ForceSendFields []string `json:"-"`
  2574  	// NullFields is a list of field names (e.g. "BillingAccount") to include in
  2575  	// API requests with the JSON null value. By default, fields with empty values
  2576  	// are omitted from API requests. See
  2577  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2578  	NullFields []string `json:"-"`
  2579  }
  2580  
  2581  func (s *GoogleCloudChannelV1Plan) MarshalJSON() ([]byte, error) {
  2582  	type NoMethod GoogleCloudChannelV1Plan
  2583  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2584  }
  2585  
  2586  // GoogleCloudChannelV1Price: Represents the price of the Offer.
  2587  type GoogleCloudChannelV1Price struct {
  2588  	// BasePrice: Base price.
  2589  	BasePrice *GoogleTypeMoney `json:"basePrice,omitempty"`
  2590  	// Discount: Discount percentage, represented as decimal. For example, a 20%
  2591  	// discount will be represent as 0.2.
  2592  	Discount float64 `json:"discount,omitempty"`
  2593  	// EffectivePrice: Effective Price after applying the discounts.
  2594  	EffectivePrice *GoogleTypeMoney `json:"effectivePrice,omitempty"`
  2595  	// ExternalPriceUri: Link to external price list, such as link to Google Voice
  2596  	// rate card.
  2597  	ExternalPriceUri string `json:"externalPriceUri,omitempty"`
  2598  	// ForceSendFields is a list of field names (e.g. "BasePrice") to
  2599  	// unconditionally include in API requests. By default, fields with empty or
  2600  	// default values are omitted from API requests. See
  2601  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2602  	// details.
  2603  	ForceSendFields []string `json:"-"`
  2604  	// NullFields is a list of field names (e.g. "BasePrice") to include in API
  2605  	// requests with the JSON null value. By default, fields with empty values are
  2606  	// omitted from API requests. See
  2607  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2608  	NullFields []string `json:"-"`
  2609  }
  2610  
  2611  func (s *GoogleCloudChannelV1Price) MarshalJSON() ([]byte, error) {
  2612  	type NoMethod GoogleCloudChannelV1Price
  2613  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2614  }
  2615  
  2616  func (s *GoogleCloudChannelV1Price) UnmarshalJSON(data []byte) error {
  2617  	type NoMethod GoogleCloudChannelV1Price
  2618  	var s1 struct {
  2619  		Discount gensupport.JSONFloat64 `json:"discount"`
  2620  		*NoMethod
  2621  	}
  2622  	s1.NoMethod = (*NoMethod)(s)
  2623  	if err := json.Unmarshal(data, &s1); err != nil {
  2624  		return err
  2625  	}
  2626  	s.Discount = float64(s1.Discount)
  2627  	return nil
  2628  }
  2629  
  2630  // GoogleCloudChannelV1PriceByResource: Represents price by resource type.
  2631  type GoogleCloudChannelV1PriceByResource struct {
  2632  	// Price: Price of the Offer. Present if there are no price phases.
  2633  	Price *GoogleCloudChannelV1Price `json:"price,omitempty"`
  2634  	// PricePhases: Specifies the price by time range.
  2635  	PricePhases []*GoogleCloudChannelV1PricePhase `json:"pricePhases,omitempty"`
  2636  	// ResourceType: Resource Type. Example: SEAT
  2637  	//
  2638  	// Possible values:
  2639  	//   "RESOURCE_TYPE_UNSPECIFIED" - Not used.
  2640  	//   "SEAT" - Seat.
  2641  	//   "MAU" - Monthly active user.
  2642  	//   "GB" - GB (used for storage SKUs).
  2643  	//   "LICENSED_USER" - Active licensed users(for Voice SKUs).
  2644  	//   "MINUTES" - Voice usage.
  2645  	//   "IAAS_USAGE" - For IaaS SKUs like Google Cloud, monetization is based on
  2646  	// usage accrued on your billing account irrespective of the type of
  2647  	// monetizable resource. This enum represents an aggregated resource/container
  2648  	// for all usage SKUs on a billing account. Currently, only applicable to
  2649  	// Google Cloud.
  2650  	//   "SUBSCRIPTION" - For Google Cloud subscriptions like Anthos or SAP.
  2651  	ResourceType string `json:"resourceType,omitempty"`
  2652  	// ForceSendFields is a list of field names (e.g. "Price") to unconditionally
  2653  	// include in API requests. By default, fields with empty or default values are
  2654  	// omitted from API requests. See
  2655  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2656  	// details.
  2657  	ForceSendFields []string `json:"-"`
  2658  	// NullFields is a list of field names (e.g. "Price") to include in API
  2659  	// requests with the JSON null value. By default, fields with empty values are
  2660  	// omitted from API requests. See
  2661  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2662  	NullFields []string `json:"-"`
  2663  }
  2664  
  2665  func (s *GoogleCloudChannelV1PriceByResource) MarshalJSON() ([]byte, error) {
  2666  	type NoMethod GoogleCloudChannelV1PriceByResource
  2667  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2668  }
  2669  
  2670  // GoogleCloudChannelV1PricePhase: Specifies the price by the duration of
  2671  // months. For example, a 20% discount for the first six months, then a 10%
  2672  // discount starting on the seventh month.
  2673  type GoogleCloudChannelV1PricePhase struct {
  2674  	// FirstPeriod: Defines first period for the phase.
  2675  	FirstPeriod int64 `json:"firstPeriod,omitempty"`
  2676  	// LastPeriod: Defines first period for the phase.
  2677  	LastPeriod int64 `json:"lastPeriod,omitempty"`
  2678  	// PeriodType: Defines the phase period type.
  2679  	//
  2680  	// Possible values:
  2681  	//   "PERIOD_TYPE_UNSPECIFIED" - Not used.
  2682  	//   "DAY" - Day.
  2683  	//   "MONTH" - Month.
  2684  	//   "YEAR" - Year.
  2685  	PeriodType string `json:"periodType,omitempty"`
  2686  	// Price: Price of the phase. Present if there are no price tiers.
  2687  	Price *GoogleCloudChannelV1Price `json:"price,omitempty"`
  2688  	// PriceTiers: Price by the resource tiers.
  2689  	PriceTiers []*GoogleCloudChannelV1PriceTier `json:"priceTiers,omitempty"`
  2690  	// ForceSendFields is a list of field names (e.g. "FirstPeriod") to
  2691  	// unconditionally include in API requests. By default, fields with empty or
  2692  	// default values are omitted from API requests. See
  2693  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2694  	// details.
  2695  	ForceSendFields []string `json:"-"`
  2696  	// NullFields is a list of field names (e.g. "FirstPeriod") to include in API
  2697  	// requests with the JSON null value. By default, fields with empty values are
  2698  	// omitted from API requests. See
  2699  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2700  	NullFields []string `json:"-"`
  2701  }
  2702  
  2703  func (s *GoogleCloudChannelV1PricePhase) MarshalJSON() ([]byte, error) {
  2704  	type NoMethod GoogleCloudChannelV1PricePhase
  2705  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2706  }
  2707  
  2708  // GoogleCloudChannelV1PriceTier: Defines price at resource tier level. For
  2709  // example, an offer with following definition : * Tier 1: Provide 25% discount
  2710  // for all seats between 1 and 25. * Tier 2: Provide 10% discount for all seats
  2711  // between 26 and 100. * Tier 3: Provide flat 15% discount for all seats above
  2712  // 100. Each of these tiers is represented as a PriceTier.
  2713  type GoogleCloudChannelV1PriceTier struct {
  2714  	// FirstResource: First resource for which the tier price applies.
  2715  	FirstResource int64 `json:"firstResource,omitempty"`
  2716  	// LastResource: Last resource for which the tier price applies.
  2717  	LastResource int64 `json:"lastResource,omitempty"`
  2718  	// Price: Price of the tier.
  2719  	Price *GoogleCloudChannelV1Price `json:"price,omitempty"`
  2720  	// ForceSendFields is a list of field names (e.g. "FirstResource") to
  2721  	// unconditionally include in API requests. By default, fields with empty or
  2722  	// default values are omitted from API requests. See
  2723  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2724  	// details.
  2725  	ForceSendFields []string `json:"-"`
  2726  	// NullFields is a list of field names (e.g. "FirstResource") to include in API
  2727  	// requests with the JSON null value. By default, fields with empty values are
  2728  	// omitted from API requests. See
  2729  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2730  	NullFields []string `json:"-"`
  2731  }
  2732  
  2733  func (s *GoogleCloudChannelV1PriceTier) MarshalJSON() ([]byte, error) {
  2734  	type NoMethod GoogleCloudChannelV1PriceTier
  2735  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2736  }
  2737  
  2738  // GoogleCloudChannelV1Product: A Product is the entity a customer uses when
  2739  // placing an order. For example, Google Workspace, Google Voice, etc.
  2740  type GoogleCloudChannelV1Product struct {
  2741  	// MarketingInfo: Marketing information for the product.
  2742  	MarketingInfo *GoogleCloudChannelV1MarketingInfo `json:"marketingInfo,omitempty"`
  2743  	// Name: Resource Name of the Product. Format: products/{product_id}
  2744  	Name string `json:"name,omitempty"`
  2745  	// ForceSendFields is a list of field names (e.g. "MarketingInfo") to
  2746  	// unconditionally include in API requests. By default, fields with empty or
  2747  	// default values are omitted from API requests. See
  2748  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2749  	// details.
  2750  	ForceSendFields []string `json:"-"`
  2751  	// NullFields is a list of field names (e.g. "MarketingInfo") to include in API
  2752  	// requests with the JSON null value. By default, fields with empty values are
  2753  	// omitted from API requests. See
  2754  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2755  	NullFields []string `json:"-"`
  2756  }
  2757  
  2758  func (s *GoogleCloudChannelV1Product) MarshalJSON() ([]byte, error) {
  2759  	type NoMethod GoogleCloudChannelV1Product
  2760  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2761  }
  2762  
  2763  // GoogleCloudChannelV1ProvisionCloudIdentityRequest: Request message for
  2764  // CloudChannelService.ProvisionCloudIdentity
  2765  type GoogleCloudChannelV1ProvisionCloudIdentityRequest struct {
  2766  	// CloudIdentityInfo: CloudIdentity-specific customer information.
  2767  	CloudIdentityInfo *GoogleCloudChannelV1CloudIdentityInfo `json:"cloudIdentityInfo,omitempty"`
  2768  	// User: Admin user information.
  2769  	User *GoogleCloudChannelV1AdminUser `json:"user,omitempty"`
  2770  	// ValidateOnly: Validate the request and preview the review, but do not post
  2771  	// it.
  2772  	ValidateOnly bool `json:"validateOnly,omitempty"`
  2773  	// ForceSendFields is a list of field names (e.g. "CloudIdentityInfo") to
  2774  	// unconditionally include in API requests. By default, fields with empty or
  2775  	// default values are omitted from API requests. See
  2776  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2777  	// details.
  2778  	ForceSendFields []string `json:"-"`
  2779  	// NullFields is a list of field names (e.g. "CloudIdentityInfo") to include in
  2780  	// API requests with the JSON null value. By default, fields with empty values
  2781  	// are omitted from API requests. See
  2782  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2783  	NullFields []string `json:"-"`
  2784  }
  2785  
  2786  func (s *GoogleCloudChannelV1ProvisionCloudIdentityRequest) MarshalJSON() ([]byte, error) {
  2787  	type NoMethod GoogleCloudChannelV1ProvisionCloudIdentityRequest
  2788  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2789  }
  2790  
  2791  // GoogleCloudChannelV1ProvisionedService: Service provisioned for an
  2792  // entitlement.
  2793  type GoogleCloudChannelV1ProvisionedService struct {
  2794  	// ProductId: Output only. The product pertaining to the provisioning resource
  2795  	// as specified in the Offer.
  2796  	ProductId string `json:"productId,omitempty"`
  2797  	// ProvisioningId: Output only. Provisioning ID of the entitlement. For Google
  2798  	// Workspace, this is the underlying Subscription ID. For Google Cloud, this is
  2799  	// the Billing Account ID of the billing subaccount.
  2800  	ProvisioningId string `json:"provisioningId,omitempty"`
  2801  	// SkuId: Output only. The SKU pertaining to the provisioning resource as
  2802  	// specified in the Offer.
  2803  	SkuId string `json:"skuId,omitempty"`
  2804  	// ForceSendFields is a list of field names (e.g. "ProductId") to
  2805  	// unconditionally include in API requests. By default, fields with empty or
  2806  	// default values are omitted from API requests. See
  2807  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2808  	// details.
  2809  	ForceSendFields []string `json:"-"`
  2810  	// NullFields is a list of field names (e.g. "ProductId") to include in API
  2811  	// requests with the JSON null value. By default, fields with empty values are
  2812  	// omitted from API requests. See
  2813  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2814  	NullFields []string `json:"-"`
  2815  }
  2816  
  2817  func (s *GoogleCloudChannelV1ProvisionedService) MarshalJSON() ([]byte, error) {
  2818  	type NoMethod GoogleCloudChannelV1ProvisionedService
  2819  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2820  }
  2821  
  2822  // GoogleCloudChannelV1PurchasableOffer: Offer that you can purchase for a
  2823  // customer. This is used in the ListPurchasableOffer API response.
  2824  type GoogleCloudChannelV1PurchasableOffer struct {
  2825  	// Offer: Offer.
  2826  	Offer *GoogleCloudChannelV1Offer `json:"offer,omitempty"`
  2827  	// ForceSendFields is a list of field names (e.g. "Offer") to unconditionally
  2828  	// include in API requests. By default, fields with empty or default values are
  2829  	// omitted from API requests. See
  2830  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2831  	// details.
  2832  	ForceSendFields []string `json:"-"`
  2833  	// NullFields is a list of field names (e.g. "Offer") to include in API
  2834  	// requests with the JSON null value. By default, fields with empty values are
  2835  	// omitted from API requests. See
  2836  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2837  	NullFields []string `json:"-"`
  2838  }
  2839  
  2840  func (s *GoogleCloudChannelV1PurchasableOffer) MarshalJSON() ([]byte, error) {
  2841  	type NoMethod GoogleCloudChannelV1PurchasableOffer
  2842  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2843  }
  2844  
  2845  // GoogleCloudChannelV1PurchasableSku: SKU that you can purchase. This is used
  2846  // in ListPurchasableSku API response.
  2847  type GoogleCloudChannelV1PurchasableSku struct {
  2848  	// Sku: SKU
  2849  	Sku *GoogleCloudChannelV1Sku `json:"sku,omitempty"`
  2850  	// ForceSendFields is a list of field names (e.g. "Sku") to unconditionally
  2851  	// include in API requests. By default, fields with empty or default values are
  2852  	// omitted from API requests. See
  2853  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2854  	// details.
  2855  	ForceSendFields []string `json:"-"`
  2856  	// NullFields is a list of field names (e.g. "Sku") to include in API requests
  2857  	// with the JSON null value. By default, fields with empty values are omitted
  2858  	// from API requests. See
  2859  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2860  	NullFields []string `json:"-"`
  2861  }
  2862  
  2863  func (s *GoogleCloudChannelV1PurchasableSku) MarshalJSON() ([]byte, error) {
  2864  	type NoMethod GoogleCloudChannelV1PurchasableSku
  2865  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2866  }
  2867  
  2868  // GoogleCloudChannelV1QueryEligibleBillingAccountsResponse: Response message
  2869  // for QueryEligibleBillingAccounts.
  2870  type GoogleCloudChannelV1QueryEligibleBillingAccountsResponse struct {
  2871  	// SkuPurchaseGroups: List of SKU purchase groups where each group represents a
  2872  	// set of SKUs that must be purchased using the same billing account. Each SKU
  2873  	// from [QueryEligibleBillingAccountsRequest.skus] will appear in exactly one
  2874  	// SKU group.
  2875  	SkuPurchaseGroups []*GoogleCloudChannelV1SkuPurchaseGroup `json:"skuPurchaseGroups,omitempty"`
  2876  
  2877  	// ServerResponse contains the HTTP response code and headers from the server.
  2878  	googleapi.ServerResponse `json:"-"`
  2879  	// ForceSendFields is a list of field names (e.g. "SkuPurchaseGroups") to
  2880  	// unconditionally include in API requests. By default, fields with empty or
  2881  	// default values are omitted from API requests. See
  2882  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2883  	// details.
  2884  	ForceSendFields []string `json:"-"`
  2885  	// NullFields is a list of field names (e.g. "SkuPurchaseGroups") to include in
  2886  	// API requests with the JSON null value. By default, fields with empty values
  2887  	// are omitted from API requests. See
  2888  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2889  	NullFields []string `json:"-"`
  2890  }
  2891  
  2892  func (s *GoogleCloudChannelV1QueryEligibleBillingAccountsResponse) MarshalJSON() ([]byte, error) {
  2893  	type NoMethod GoogleCloudChannelV1QueryEligibleBillingAccountsResponse
  2894  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2895  }
  2896  
  2897  // GoogleCloudChannelV1RegisterSubscriberRequest: Request Message for
  2898  // RegisterSubscriber.
  2899  type GoogleCloudChannelV1RegisterSubscriberRequest struct {
  2900  	// ServiceAccount: Required. Service account that provides subscriber access to
  2901  	// the registered topic.
  2902  	ServiceAccount string `json:"serviceAccount,omitempty"`
  2903  	// ForceSendFields is a list of field names (e.g. "ServiceAccount") to
  2904  	// unconditionally include in API requests. By default, fields with empty or
  2905  	// default values are omitted from API requests. See
  2906  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2907  	// details.
  2908  	ForceSendFields []string `json:"-"`
  2909  	// NullFields is a list of field names (e.g. "ServiceAccount") to include in
  2910  	// API requests with the JSON null value. By default, fields with empty values
  2911  	// are omitted from API requests. See
  2912  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2913  	NullFields []string `json:"-"`
  2914  }
  2915  
  2916  func (s *GoogleCloudChannelV1RegisterSubscriberRequest) MarshalJSON() ([]byte, error) {
  2917  	type NoMethod GoogleCloudChannelV1RegisterSubscriberRequest
  2918  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2919  }
  2920  
  2921  // GoogleCloudChannelV1RegisterSubscriberResponse: Response Message for
  2922  // RegisterSubscriber.
  2923  type GoogleCloudChannelV1RegisterSubscriberResponse struct {
  2924  	// Topic: Name of the topic the subscriber will listen to.
  2925  	Topic string `json:"topic,omitempty"`
  2926  
  2927  	// ServerResponse contains the HTTP response code and headers from the server.
  2928  	googleapi.ServerResponse `json:"-"`
  2929  	// ForceSendFields is a list of field names (e.g. "Topic") to unconditionally
  2930  	// include in API requests. By default, fields with empty or default values are
  2931  	// omitted from API requests. See
  2932  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2933  	// details.
  2934  	ForceSendFields []string `json:"-"`
  2935  	// NullFields is a list of field names (e.g. "Topic") to include in API
  2936  	// requests with the JSON null value. By default, fields with empty values are
  2937  	// omitted from API requests. See
  2938  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2939  	NullFields []string `json:"-"`
  2940  }
  2941  
  2942  func (s *GoogleCloudChannelV1RegisterSubscriberResponse) MarshalJSON() ([]byte, error) {
  2943  	type NoMethod GoogleCloudChannelV1RegisterSubscriberResponse
  2944  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2945  }
  2946  
  2947  // GoogleCloudChannelV1RenewalSettings: Renewal settings for renewable Offers.
  2948  type GoogleCloudChannelV1RenewalSettings struct {
  2949  	// EnableRenewal: If false, the plan will be completed at the end date.
  2950  	EnableRenewal bool `json:"enableRenewal,omitempty"`
  2951  	// PaymentCycle: Describes how frequently the reseller will be billed, such as
  2952  	// once per month.
  2953  	PaymentCycle *GoogleCloudChannelV1Period `json:"paymentCycle,omitempty"`
  2954  	// PaymentPlan: Describes how a reseller will be billed.
  2955  	//
  2956  	// Possible values:
  2957  	//   "PAYMENT_PLAN_UNSPECIFIED" - Not used.
  2958  	//   "COMMITMENT" - Commitment.
  2959  	//   "FLEXIBLE" - No commitment.
  2960  	//   "FREE" - Free.
  2961  	//   "TRIAL" - Trial.
  2962  	//   "OFFLINE" - Price and ordering not available through API.
  2963  	PaymentPlan string `json:"paymentPlan,omitempty"`
  2964  	// ResizeUnitCount: If true and enable_renewal = true, the unit (for example
  2965  	// seats or licenses) will be set to the number of active units at renewal
  2966  	// time.
  2967  	ResizeUnitCount bool `json:"resizeUnitCount,omitempty"`
  2968  	// ForceSendFields is a list of field names (e.g. "EnableRenewal") to
  2969  	// unconditionally include in API requests. By default, fields with empty or
  2970  	// default values are omitted from API requests. See
  2971  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2972  	// details.
  2973  	ForceSendFields []string `json:"-"`
  2974  	// NullFields is a list of field names (e.g. "EnableRenewal") to include in API
  2975  	// requests with the JSON null value. By default, fields with empty values are
  2976  	// omitted from API requests. See
  2977  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2978  	NullFields []string `json:"-"`
  2979  }
  2980  
  2981  func (s *GoogleCloudChannelV1RenewalSettings) MarshalJSON() ([]byte, error) {
  2982  	type NoMethod GoogleCloudChannelV1RenewalSettings
  2983  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2984  }
  2985  
  2986  // GoogleCloudChannelV1Report: The ID and description of a report that was used
  2987  // to generate report data. For example, "Google Cloud Daily Spend", "Google
  2988  // Workspace License Activity", etc.
  2989  type GoogleCloudChannelV1Report struct {
  2990  	// Columns: The list of columns included in the report. This defines the schema
  2991  	// of the report results.
  2992  	Columns []*GoogleCloudChannelV1Column `json:"columns,omitempty"`
  2993  	// Description: A description of other aspects of the report, such as the
  2994  	// products it supports.
  2995  	Description string `json:"description,omitempty"`
  2996  	// DisplayName: A human-readable name for this report.
  2997  	DisplayName string `json:"displayName,omitempty"`
  2998  	// Name: Required. The report's resource name. Specifies the account and report
  2999  	// used to generate report data. The report_id identifier is a UID (for
  3000  	// example, `613bf59q`). Name uses the format:
  3001  	// accounts/{account_id}/reports/{report_id}
  3002  	Name string `json:"name,omitempty"`
  3003  	// ForceSendFields is a list of field names (e.g. "Columns") to unconditionally
  3004  	// include in API requests. By default, fields with empty or default values are
  3005  	// omitted from API requests. See
  3006  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3007  	// details.
  3008  	ForceSendFields []string `json:"-"`
  3009  	// NullFields is a list of field names (e.g. "Columns") to include in API
  3010  	// requests with the JSON null value. By default, fields with empty values are
  3011  	// omitted from API requests. See
  3012  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3013  	NullFields []string `json:"-"`
  3014  }
  3015  
  3016  func (s *GoogleCloudChannelV1Report) MarshalJSON() ([]byte, error) {
  3017  	type NoMethod GoogleCloudChannelV1Report
  3018  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3019  }
  3020  
  3021  // GoogleCloudChannelV1ReportJob: The result of a RunReportJob operation.
  3022  // Contains the name to use in FetchReportResultsRequest.report_job and the
  3023  // status of the operation.
  3024  type GoogleCloudChannelV1ReportJob struct {
  3025  	// Name: Required. The resource name of a report job. Name uses the format:
  3026  	// `accounts/{account_id}/reportJobs/{report_job_id}`
  3027  	Name string `json:"name,omitempty"`
  3028  	// ReportStatus: The current status of report generation.
  3029  	ReportStatus *GoogleCloudChannelV1ReportStatus `json:"reportStatus,omitempty"`
  3030  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
  3031  	// include in API requests. By default, fields with empty or default values are
  3032  	// omitted from API requests. See
  3033  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3034  	// details.
  3035  	ForceSendFields []string `json:"-"`
  3036  	// NullFields is a list of field names (e.g. "Name") to include in API requests
  3037  	// with the JSON null value. By default, fields with empty values are omitted
  3038  	// from API requests. See
  3039  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3040  	NullFields []string `json:"-"`
  3041  }
  3042  
  3043  func (s *GoogleCloudChannelV1ReportJob) MarshalJSON() ([]byte, error) {
  3044  	type NoMethod GoogleCloudChannelV1ReportJob
  3045  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3046  }
  3047  
  3048  // GoogleCloudChannelV1ReportResultsMetadata: The features describing the data.
  3049  // Returned by CloudChannelReportsService.RunReportJob and
  3050  // CloudChannelReportsService.FetchReportResults.
  3051  type GoogleCloudChannelV1ReportResultsMetadata struct {
  3052  	// DateRange: The date range of reported usage.
  3053  	DateRange *GoogleCloudChannelV1DateRange `json:"dateRange,omitempty"`
  3054  	// PrecedingDateRange: The usage dates immediately preceding `date_range` with
  3055  	// the same duration. Use this to calculate trending usage and costs. This is
  3056  	// only populated if you request trending data. For example, if `date_range` is
  3057  	// July 1-15, `preceding_date_range` will be June 16-30.
  3058  	PrecedingDateRange *GoogleCloudChannelV1DateRange `json:"precedingDateRange,omitempty"`
  3059  	// Report: Details of the completed report.
  3060  	Report *GoogleCloudChannelV1Report `json:"report,omitempty"`
  3061  	// RowCount: The total number of rows of data in the final report.
  3062  	RowCount int64 `json:"rowCount,omitempty,string"`
  3063  	// ForceSendFields is a list of field names (e.g. "DateRange") to
  3064  	// unconditionally include in API requests. By default, fields with empty or
  3065  	// default values are omitted from API requests. See
  3066  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3067  	// details.
  3068  	ForceSendFields []string `json:"-"`
  3069  	// NullFields is a list of field names (e.g. "DateRange") to include in API
  3070  	// requests with the JSON null value. By default, fields with empty values are
  3071  	// omitted from API requests. See
  3072  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3073  	NullFields []string `json:"-"`
  3074  }
  3075  
  3076  func (s *GoogleCloudChannelV1ReportResultsMetadata) MarshalJSON() ([]byte, error) {
  3077  	type NoMethod GoogleCloudChannelV1ReportResultsMetadata
  3078  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3079  }
  3080  
  3081  // GoogleCloudChannelV1ReportStatus: Status of a report generation process.
  3082  type GoogleCloudChannelV1ReportStatus struct {
  3083  	// EndTime: The report generation's completion time.
  3084  	EndTime string `json:"endTime,omitempty"`
  3085  	// StartTime: The report generation's start time.
  3086  	StartTime string `json:"startTime,omitempty"`
  3087  	// State: The current state of the report generation process.
  3088  	//
  3089  	// Possible values:
  3090  	//   "STATE_UNSPECIFIED" - Not used.
  3091  	//   "STARTED" - Report processing started.
  3092  	//   "WRITING" - Data generated from the report is being staged.
  3093  	//   "AVAILABLE" - Report data is available for access.
  3094  	//   "FAILED" - Report failed.
  3095  	State string `json:"state,omitempty"`
  3096  	// ForceSendFields is a list of field names (e.g. "EndTime") to unconditionally
  3097  	// include in API requests. By default, fields with empty or default values are
  3098  	// omitted from API requests. See
  3099  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3100  	// details.
  3101  	ForceSendFields []string `json:"-"`
  3102  	// NullFields is a list of field names (e.g. "EndTime") to include in API
  3103  	// requests with the JSON null value. By default, fields with empty values are
  3104  	// omitted from API requests. See
  3105  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3106  	NullFields []string `json:"-"`
  3107  }
  3108  
  3109  func (s *GoogleCloudChannelV1ReportStatus) MarshalJSON() ([]byte, error) {
  3110  	type NoMethod GoogleCloudChannelV1ReportStatus
  3111  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3112  }
  3113  
  3114  // GoogleCloudChannelV1ReportValue: A single report value.
  3115  type GoogleCloudChannelV1ReportValue struct {
  3116  	// DateTimeValue: A value of type `google.type.DateTime` (year, month, day,
  3117  	// hour, minute, second, and UTC offset or timezone.)
  3118  	DateTimeValue *GoogleTypeDateTime `json:"dateTimeValue,omitempty"`
  3119  	// DateValue: A value of type `google.type.Date` (year, month, day).
  3120  	DateValue *GoogleTypeDate `json:"dateValue,omitempty"`
  3121  	// DecimalValue: A value of type `google.type.Decimal`, representing
  3122  	// non-integer numeric values.
  3123  	DecimalValue *GoogleTypeDecimal `json:"decimalValue,omitempty"`
  3124  	// IntValue: A value of type `int`.
  3125  	IntValue int64 `json:"intValue,omitempty,string"`
  3126  	// MoneyValue: A value of type `google.type.Money` (currency code, whole units,
  3127  	// decimal units).
  3128  	MoneyValue *GoogleTypeMoney `json:"moneyValue,omitempty"`
  3129  	// StringValue: A value of type `string`.
  3130  	StringValue string `json:"stringValue,omitempty"`
  3131  	// ForceSendFields is a list of field names (e.g. "DateTimeValue") to
  3132  	// unconditionally include in API requests. By default, fields with empty or
  3133  	// default values are omitted from API requests. See
  3134  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3135  	// details.
  3136  	ForceSendFields []string `json:"-"`
  3137  	// NullFields is a list of field names (e.g. "DateTimeValue") to include in API
  3138  	// requests with the JSON null value. By default, fields with empty values are
  3139  	// omitted from API requests. See
  3140  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3141  	NullFields []string `json:"-"`
  3142  }
  3143  
  3144  func (s *GoogleCloudChannelV1ReportValue) MarshalJSON() ([]byte, error) {
  3145  	type NoMethod GoogleCloudChannelV1ReportValue
  3146  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3147  }
  3148  
  3149  // GoogleCloudChannelV1RepricingAdjustment: A type that represents the various
  3150  // adjustments you can apply to a bill.
  3151  type GoogleCloudChannelV1RepricingAdjustment struct {
  3152  	// PercentageAdjustment: Flat markup or markdown on an entire bill.
  3153  	PercentageAdjustment *GoogleCloudChannelV1PercentageAdjustment `json:"percentageAdjustment,omitempty"`
  3154  	// ForceSendFields is a list of field names (e.g. "PercentageAdjustment") to
  3155  	// unconditionally include in API requests. By default, fields with empty or
  3156  	// default values are omitted from API requests. See
  3157  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3158  	// details.
  3159  	ForceSendFields []string `json:"-"`
  3160  	// NullFields is a list of field names (e.g. "PercentageAdjustment") to include
  3161  	// in API requests with the JSON null value. By default, fields with empty
  3162  	// values are omitted from API requests. See
  3163  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3164  	NullFields []string `json:"-"`
  3165  }
  3166  
  3167  func (s *GoogleCloudChannelV1RepricingAdjustment) MarshalJSON() ([]byte, error) {
  3168  	type NoMethod GoogleCloudChannelV1RepricingAdjustment
  3169  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3170  }
  3171  
  3172  // GoogleCloudChannelV1RepricingCondition: Represents the various repricing
  3173  // conditions you can use for a conditional override.
  3174  type GoogleCloudChannelV1RepricingCondition struct {
  3175  	// SkuGroupCondition: SKU Group condition for override.
  3176  	SkuGroupCondition *GoogleCloudChannelV1SkuGroupCondition `json:"skuGroupCondition,omitempty"`
  3177  	// ForceSendFields is a list of field names (e.g. "SkuGroupCondition") to
  3178  	// unconditionally include in API requests. By default, fields with empty or
  3179  	// default values are omitted from API requests. See
  3180  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3181  	// details.
  3182  	ForceSendFields []string `json:"-"`
  3183  	// NullFields is a list of field names (e.g. "SkuGroupCondition") to include in
  3184  	// API requests with the JSON null value. By default, fields with empty values
  3185  	// are omitted from API requests. See
  3186  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3187  	NullFields []string `json:"-"`
  3188  }
  3189  
  3190  func (s *GoogleCloudChannelV1RepricingCondition) MarshalJSON() ([]byte, error) {
  3191  	type NoMethod GoogleCloudChannelV1RepricingCondition
  3192  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3193  }
  3194  
  3195  // GoogleCloudChannelV1RepricingConfig: Configuration for repricing a Google
  3196  // bill over a period of time.
  3197  type GoogleCloudChannelV1RepricingConfig struct {
  3198  	// Adjustment: Required. Information about the adjustment.
  3199  	Adjustment *GoogleCloudChannelV1RepricingAdjustment `json:"adjustment,omitempty"`
  3200  	// ChannelPartnerGranularity: Applies the repricing configuration at the
  3201  	// channel partner level. Only ChannelPartnerRepricingConfig supports this
  3202  	// value. Deprecated: This is no longer supported. Use
  3203  	// RepricingConfig.entitlement_granularity instead.
  3204  	ChannelPartnerGranularity *GoogleCloudChannelV1RepricingConfigChannelPartnerGranularity `json:"channelPartnerGranularity,omitempty"`
  3205  	// ConditionalOverrides: The conditional overrides to apply for this
  3206  	// configuration. If you list multiple overrides, only the first valid override
  3207  	// is used. If you don't list any overrides, the API uses the normal adjustment
  3208  	// and rebilling basis.
  3209  	ConditionalOverrides []*GoogleCloudChannelV1ConditionalOverride `json:"conditionalOverrides,omitempty"`
  3210  	// EffectiveInvoiceMonth: Required. The YearMonth when these adjustments
  3211  	// activate. The Day field needs to be "0" since we only accept YearMonth
  3212  	// repricing boundaries.
  3213  	EffectiveInvoiceMonth *GoogleTypeDate `json:"effectiveInvoiceMonth,omitempty"`
  3214  	// EntitlementGranularity: Applies the repricing configuration at the
  3215  	// entitlement level. Note: If a ChannelPartnerRepricingConfig using
  3216  	// RepricingConfig.EntitlementGranularity becomes effective, then no existing
  3217  	// or future RepricingConfig.ChannelPartnerGranularity will apply to the
  3218  	// RepricingConfig.EntitlementGranularity.entitlement. This is the recommended
  3219  	// value for both CustomerRepricingConfig and ChannelPartnerRepricingConfig.
  3220  	EntitlementGranularity *GoogleCloudChannelV1RepricingConfigEntitlementGranularity `json:"entitlementGranularity,omitempty"`
  3221  	// RebillingBasis: Required. The RebillingBasis to use for this bill. Specifies
  3222  	// the relative cost based on repricing costs you will apply.
  3223  	//
  3224  	// Possible values:
  3225  	//   "REBILLING_BASIS_UNSPECIFIED" - Not used.
  3226  	//   "COST_AT_LIST" - Use the list cost, also known as the MSRP.
  3227  	//   "DIRECT_CUSTOMER_COST" - Pass through all discounts except the Reseller
  3228  	// Program Discount. If this is the default cost base and no adjustments are
  3229  	// specified, the output cost will be exactly what the customer would see if
  3230  	// they viewed the bill in the Google Cloud Console.
  3231  	RebillingBasis string `json:"rebillingBasis,omitempty"`
  3232  	// ForceSendFields is a list of field names (e.g. "Adjustment") to
  3233  	// unconditionally include in API requests. By default, fields with empty or
  3234  	// default values are omitted from API requests. See
  3235  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3236  	// details.
  3237  	ForceSendFields []string `json:"-"`
  3238  	// NullFields is a list of field names (e.g. "Adjustment") to include in API
  3239  	// requests with the JSON null value. By default, fields with empty values are
  3240  	// omitted from API requests. See
  3241  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3242  	NullFields []string `json:"-"`
  3243  }
  3244  
  3245  func (s *GoogleCloudChannelV1RepricingConfig) MarshalJSON() ([]byte, error) {
  3246  	type NoMethod GoogleCloudChannelV1RepricingConfig
  3247  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3248  }
  3249  
  3250  // GoogleCloudChannelV1RepricingConfigChannelPartnerGranularity: Applies the
  3251  // repricing configuration at the channel partner level. The channel partner
  3252  // value is derived from the resource name. Takes an empty json object.
  3253  // Deprecated: This is no longer supported. Use
  3254  // RepricingConfig.EntitlementGranularity instead.
  3255  type GoogleCloudChannelV1RepricingConfigChannelPartnerGranularity struct {
  3256  }
  3257  
  3258  // GoogleCloudChannelV1RepricingConfigEntitlementGranularity: Applies the
  3259  // repricing configuration at the entitlement level.
  3260  type GoogleCloudChannelV1RepricingConfigEntitlementGranularity struct {
  3261  	// Entitlement: Resource name of the entitlement. Format:
  3262  	// accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}
  3263  	Entitlement string `json:"entitlement,omitempty"`
  3264  	// ForceSendFields is a list of field names (e.g. "Entitlement") to
  3265  	// unconditionally include in API requests. By default, fields with empty or
  3266  	// default values are omitted from API requests. See
  3267  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3268  	// details.
  3269  	ForceSendFields []string `json:"-"`
  3270  	// NullFields is a list of field names (e.g. "Entitlement") to include in API
  3271  	// requests with the JSON null value. By default, fields with empty values are
  3272  	// omitted from API requests. See
  3273  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3274  	NullFields []string `json:"-"`
  3275  }
  3276  
  3277  func (s *GoogleCloudChannelV1RepricingConfigEntitlementGranularity) MarshalJSON() ([]byte, error) {
  3278  	type NoMethod GoogleCloudChannelV1RepricingConfigEntitlementGranularity
  3279  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3280  }
  3281  
  3282  // GoogleCloudChannelV1Row: A row of report values.
  3283  type GoogleCloudChannelV1Row struct {
  3284  	// PartitionKey: The key for the partition this row belongs to. This field is
  3285  	// empty if the report is not partitioned.
  3286  	PartitionKey string `json:"partitionKey,omitempty"`
  3287  	// Values: The list of values in the row.
  3288  	Values []*GoogleCloudChannelV1ReportValue `json:"values,omitempty"`
  3289  	// ForceSendFields is a list of field names (e.g. "PartitionKey") to
  3290  	// unconditionally include in API requests. By default, fields with empty or
  3291  	// default values are omitted from API requests. See
  3292  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3293  	// details.
  3294  	ForceSendFields []string `json:"-"`
  3295  	// NullFields is a list of field names (e.g. "PartitionKey") to include in API
  3296  	// requests with the JSON null value. By default, fields with empty values are
  3297  	// omitted from API requests. See
  3298  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3299  	NullFields []string `json:"-"`
  3300  }
  3301  
  3302  func (s *GoogleCloudChannelV1Row) MarshalJSON() ([]byte, error) {
  3303  	type NoMethod GoogleCloudChannelV1Row
  3304  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3305  }
  3306  
  3307  // GoogleCloudChannelV1RunReportJobRequest: Request message for
  3308  // CloudChannelReportsService.RunReportJob.
  3309  type GoogleCloudChannelV1RunReportJobRequest struct {
  3310  	// DateRange: Optional. The range of usage or invoice dates to include in the
  3311  	// result.
  3312  	DateRange *GoogleCloudChannelV1DateRange `json:"dateRange,omitempty"`
  3313  	// Filter: Optional. A structured string that defines conditions on dimension
  3314  	// columns to restrict the report output. Filters support logical operators
  3315  	// (AND, OR, NOT) and conditional operators (=, !=, <, >, <=, and >=) using
  3316  	// `column_id` as keys. For example:
  3317  	// `(customer:"accounts/C123abc/customers/S456def" OR
  3318  	// customer:"accounts/C123abc/customers/S789ghi") AND invoice_start_date.year
  3319  	// >= 2022`
  3320  	Filter string `json:"filter,omitempty"`
  3321  	// LanguageCode: Optional. The BCP-47 language code, such as "en-US". If
  3322  	// specified, the response is localized to the corresponding language code if
  3323  	// the original data sources support it. Default is "en-US".
  3324  	LanguageCode string `json:"languageCode,omitempty"`
  3325  	// ForceSendFields is a list of field names (e.g. "DateRange") to
  3326  	// unconditionally include in API requests. By default, fields with empty or
  3327  	// default values are omitted from API requests. See
  3328  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3329  	// details.
  3330  	ForceSendFields []string `json:"-"`
  3331  	// NullFields is a list of field names (e.g. "DateRange") to include in API
  3332  	// requests with the JSON null value. By default, fields with empty values are
  3333  	// omitted from API requests. See
  3334  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3335  	NullFields []string `json:"-"`
  3336  }
  3337  
  3338  func (s *GoogleCloudChannelV1RunReportJobRequest) MarshalJSON() ([]byte, error) {
  3339  	type NoMethod GoogleCloudChannelV1RunReportJobRequest
  3340  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3341  }
  3342  
  3343  // GoogleCloudChannelV1RunReportJobResponse: Response message for
  3344  // CloudChannelReportsService.RunReportJob.
  3345  type GoogleCloudChannelV1RunReportJobResponse struct {
  3346  	// ReportJob: Pass `report_job.name` to FetchReportResultsRequest.report_job to
  3347  	// retrieve the report's results.
  3348  	ReportJob *GoogleCloudChannelV1ReportJob `json:"reportJob,omitempty"`
  3349  	// ReportMetadata: The metadata for the report's results (display name,
  3350  	// columns, row count, and date range). If you view this before the operation
  3351  	// finishes, you may see incomplete data.
  3352  	ReportMetadata *GoogleCloudChannelV1ReportResultsMetadata `json:"reportMetadata,omitempty"`
  3353  	// ForceSendFields is a list of field names (e.g. "ReportJob") to
  3354  	// unconditionally include in API requests. By default, fields with empty or
  3355  	// default values are omitted from API requests. See
  3356  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3357  	// details.
  3358  	ForceSendFields []string `json:"-"`
  3359  	// NullFields is a list of field names (e.g. "ReportJob") to include in API
  3360  	// requests with the JSON null value. By default, fields with empty values are
  3361  	// omitted from API requests. See
  3362  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3363  	NullFields []string `json:"-"`
  3364  }
  3365  
  3366  func (s *GoogleCloudChannelV1RunReportJobResponse) MarshalJSON() ([]byte, error) {
  3367  	type NoMethod GoogleCloudChannelV1RunReportJobResponse
  3368  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3369  }
  3370  
  3371  // GoogleCloudChannelV1Sku: Represents a product's purchasable Stock Keeping
  3372  // Unit (SKU). SKUs represent the different variations of the product. For
  3373  // example, Google Workspace Business Standard and Google Workspace Business
  3374  // Plus are Google Workspace product SKUs.
  3375  type GoogleCloudChannelV1Sku struct {
  3376  	// MarketingInfo: Marketing information for the SKU.
  3377  	MarketingInfo *GoogleCloudChannelV1MarketingInfo `json:"marketingInfo,omitempty"`
  3378  	// Name: Resource Name of the SKU. Format: products/{product_id}/skus/{sku_id}
  3379  	Name string `json:"name,omitempty"`
  3380  	// Product: Product the SKU is associated with.
  3381  	Product *GoogleCloudChannelV1Product `json:"product,omitempty"`
  3382  	// ForceSendFields is a list of field names (e.g. "MarketingInfo") to
  3383  	// unconditionally include in API requests. By default, fields with empty or
  3384  	// default values are omitted from API requests. See
  3385  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3386  	// details.
  3387  	ForceSendFields []string `json:"-"`
  3388  	// NullFields is a list of field names (e.g. "MarketingInfo") to include in API
  3389  	// requests with the JSON null value. By default, fields with empty values are
  3390  	// omitted from API requests. See
  3391  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3392  	NullFields []string `json:"-"`
  3393  }
  3394  
  3395  func (s *GoogleCloudChannelV1Sku) MarshalJSON() ([]byte, error) {
  3396  	type NoMethod GoogleCloudChannelV1Sku
  3397  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3398  }
  3399  
  3400  // GoogleCloudChannelV1SkuGroup: Represents the SKU group information.
  3401  type GoogleCloudChannelV1SkuGroup struct {
  3402  	// DisplayName: Unique human readable identifier for the SKU group.
  3403  	DisplayName string `json:"displayName,omitempty"`
  3404  	// Name: Resource name of SKU group. Format:
  3405  	// accounts/{account}/skuGroups/{sku_group}. Example:
  3406  	// "accounts/C01234/skuGroups/3d50fd57-3157-4577-a5a9-a219b8490041".
  3407  	Name string `json:"name,omitempty"`
  3408  	// ForceSendFields is a list of field names (e.g. "DisplayName") to
  3409  	// unconditionally include in API requests. By default, fields with empty or
  3410  	// default values are omitted from API requests. See
  3411  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3412  	// details.
  3413  	ForceSendFields []string `json:"-"`
  3414  	// NullFields is a list of field names (e.g. "DisplayName") to include in API
  3415  	// requests with the JSON null value. By default, fields with empty values are
  3416  	// omitted from API requests. See
  3417  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3418  	NullFields []string `json:"-"`
  3419  }
  3420  
  3421  func (s *GoogleCloudChannelV1SkuGroup) MarshalJSON() ([]byte, error) {
  3422  	type NoMethod GoogleCloudChannelV1SkuGroup
  3423  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3424  }
  3425  
  3426  // GoogleCloudChannelV1SkuGroupCondition: A condition that applies the override
  3427  // if a line item SKU is found in the SKU group.
  3428  type GoogleCloudChannelV1SkuGroupCondition struct {
  3429  	// SkuGroup: Specifies a SKU group (https://cloud.google.com/skus/sku-groups).
  3430  	// Resource name of SKU group. Format:
  3431  	// accounts/{account}/skuGroups/{sku_group}. Example:
  3432  	// "accounts/C01234/skuGroups/3d50fd57-3157-4577-a5a9-a219b8490041".
  3433  	SkuGroup string `json:"skuGroup,omitempty"`
  3434  	// ForceSendFields is a list of field names (e.g. "SkuGroup") to
  3435  	// unconditionally include in API requests. By default, fields with empty or
  3436  	// default values are omitted from API requests. See
  3437  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3438  	// details.
  3439  	ForceSendFields []string `json:"-"`
  3440  	// NullFields is a list of field names (e.g. "SkuGroup") to include in API
  3441  	// requests with the JSON null value. By default, fields with empty values are
  3442  	// omitted from API requests. See
  3443  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3444  	NullFields []string `json:"-"`
  3445  }
  3446  
  3447  func (s *GoogleCloudChannelV1SkuGroupCondition) MarshalJSON() ([]byte, error) {
  3448  	type NoMethod GoogleCloudChannelV1SkuGroupCondition
  3449  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3450  }
  3451  
  3452  // GoogleCloudChannelV1SkuPurchaseGroup: Represents a set of SKUs that must be
  3453  // purchased using the same billing account.
  3454  type GoogleCloudChannelV1SkuPurchaseGroup struct {
  3455  	// BillingAccountPurchaseInfos: List of billing accounts that are eligible to
  3456  	// purhcase these SKUs.
  3457  	BillingAccountPurchaseInfos []*GoogleCloudChannelV1BillingAccountPurchaseInfo `json:"billingAccountPurchaseInfos,omitempty"`
  3458  	// Skus: Resource names of the SKUs included in this group. Format:
  3459  	// products/{product_id}/skus/{sku_id}.
  3460  	Skus []string `json:"skus,omitempty"`
  3461  	// ForceSendFields is a list of field names (e.g.
  3462  	// "BillingAccountPurchaseInfos") to unconditionally include in API requests.
  3463  	// By default, fields with empty or default values are omitted from API
  3464  	// requests. See https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields
  3465  	// for more details.
  3466  	ForceSendFields []string `json:"-"`
  3467  	// NullFields is a list of field names (e.g. "BillingAccountPurchaseInfos") to
  3468  	// include in API requests with the JSON null value. By default, fields with
  3469  	// empty values are omitted from API requests. See
  3470  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3471  	NullFields []string `json:"-"`
  3472  }
  3473  
  3474  func (s *GoogleCloudChannelV1SkuPurchaseGroup) MarshalJSON() ([]byte, error) {
  3475  	type NoMethod GoogleCloudChannelV1SkuPurchaseGroup
  3476  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3477  }
  3478  
  3479  // GoogleCloudChannelV1StartPaidServiceRequest: Request message for
  3480  // CloudChannelService.StartPaidService.
  3481  type GoogleCloudChannelV1StartPaidServiceRequest struct {
  3482  	// RequestId: Optional. You can specify an optional unique request ID, and if
  3483  	// you need to retry your request, the server will know to ignore the request
  3484  	// if it's complete. For example, you make an initial request and the request
  3485  	// times out. If you make the request again with the same request ID, the
  3486  	// server can check if it received the original operation with the same request
  3487  	// ID. If it did, it will ignore the second request. The request ID must be a
  3488  	// valid UUID (https://tools.ietf.org/html/rfc4122) with the exception that
  3489  	// zero UUID is not supported (`00000000-0000-0000-0000-000000000000`).
  3490  	RequestId string `json:"requestId,omitempty"`
  3491  	// ForceSendFields is a list of field names (e.g. "RequestId") to
  3492  	// unconditionally include in API requests. By default, fields with empty or
  3493  	// default values are omitted from API requests. See
  3494  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3495  	// details.
  3496  	ForceSendFields []string `json:"-"`
  3497  	// NullFields is a list of field names (e.g. "RequestId") to include in API
  3498  	// requests with the JSON null value. By default, fields with empty values are
  3499  	// omitted from API requests. See
  3500  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3501  	NullFields []string `json:"-"`
  3502  }
  3503  
  3504  func (s *GoogleCloudChannelV1StartPaidServiceRequest) MarshalJSON() ([]byte, error) {
  3505  	type NoMethod GoogleCloudChannelV1StartPaidServiceRequest
  3506  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3507  }
  3508  
  3509  // GoogleCloudChannelV1SubscriberEvent: Represents information which resellers
  3510  // will get as part of notification from Pub/Sub.
  3511  type GoogleCloudChannelV1SubscriberEvent struct {
  3512  	// CustomerEvent: Customer event sent as part of Pub/Sub event to partners.
  3513  	CustomerEvent *GoogleCloudChannelV1CustomerEvent `json:"customerEvent,omitempty"`
  3514  	// EntitlementEvent: Entitlement event sent as part of Pub/Sub event to
  3515  	// partners.
  3516  	EntitlementEvent *GoogleCloudChannelV1EntitlementEvent `json:"entitlementEvent,omitempty"`
  3517  	// ForceSendFields is a list of field names (e.g. "CustomerEvent") to
  3518  	// unconditionally include in API requests. By default, fields with empty or
  3519  	// default values are omitted from API requests. See
  3520  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3521  	// details.
  3522  	ForceSendFields []string `json:"-"`
  3523  	// NullFields is a list of field names (e.g. "CustomerEvent") to include in API
  3524  	// requests with the JSON null value. By default, fields with empty values are
  3525  	// omitted from API requests. See
  3526  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3527  	NullFields []string `json:"-"`
  3528  }
  3529  
  3530  func (s *GoogleCloudChannelV1SubscriberEvent) MarshalJSON() ([]byte, error) {
  3531  	type NoMethod GoogleCloudChannelV1SubscriberEvent
  3532  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3533  }
  3534  
  3535  // GoogleCloudChannelV1SuspendEntitlementRequest: Request message for
  3536  // CloudChannelService.SuspendEntitlement.
  3537  type GoogleCloudChannelV1SuspendEntitlementRequest struct {
  3538  	// RequestId: Optional. You can specify an optional unique request ID, and if
  3539  	// you need to retry your request, the server will know to ignore the request
  3540  	// if it's complete. For example, you make an initial request and the request
  3541  	// times out. If you make the request again with the same request ID, the
  3542  	// server can check if it received the original operation with the same request
  3543  	// ID. If it did, it will ignore the second request. The request ID must be a
  3544  	// valid UUID (https://tools.ietf.org/html/rfc4122) with the exception that
  3545  	// zero UUID is not supported (`00000000-0000-0000-0000-000000000000`).
  3546  	RequestId string `json:"requestId,omitempty"`
  3547  	// ForceSendFields is a list of field names (e.g. "RequestId") to
  3548  	// unconditionally include in API requests. By default, fields with empty or
  3549  	// default values are omitted from API requests. See
  3550  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3551  	// details.
  3552  	ForceSendFields []string `json:"-"`
  3553  	// NullFields is a list of field names (e.g. "RequestId") to include in API
  3554  	// requests with the JSON null value. By default, fields with empty values are
  3555  	// omitted from API requests. See
  3556  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3557  	NullFields []string `json:"-"`
  3558  }
  3559  
  3560  func (s *GoogleCloudChannelV1SuspendEntitlementRequest) MarshalJSON() ([]byte, error) {
  3561  	type NoMethod GoogleCloudChannelV1SuspendEntitlementRequest
  3562  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3563  }
  3564  
  3565  // GoogleCloudChannelV1TransferEligibility: Specifies transfer eligibility of a
  3566  // SKU.
  3567  type GoogleCloudChannelV1TransferEligibility struct {
  3568  	// Description: Localized description if reseller is not eligible to transfer
  3569  	// the SKU.
  3570  	Description string `json:"description,omitempty"`
  3571  	// IneligibilityReason: Specified the reason for ineligibility.
  3572  	//
  3573  	// Possible values:
  3574  	//   "REASON_UNSPECIFIED" - Not used.
  3575  	//   "PENDING_TOS_ACCEPTANCE" - Reseller needs to accept TOS before
  3576  	// transferring the SKU.
  3577  	//   "SKU_NOT_ELIGIBLE" - Reseller not eligible to sell the SKU.
  3578  	//   "SKU_SUSPENDED" - SKU subscription is suspended
  3579  	//   "CHANNEL_PARTNER_NOT_AUTHORIZED_FOR_SKU" - The reseller is not authorized
  3580  	// to transact on this Product. See
  3581  	// https://support.google.com/channelservices/answer/9759265
  3582  	IneligibilityReason string `json:"ineligibilityReason,omitempty"`
  3583  	// IsEligible: Whether reseller is eligible to transfer the SKU.
  3584  	IsEligible bool `json:"isEligible,omitempty"`
  3585  	// ForceSendFields is a list of field names (e.g. "Description") to
  3586  	// unconditionally include in API requests. By default, fields with empty or
  3587  	// default values are omitted from API requests. See
  3588  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3589  	// details.
  3590  	ForceSendFields []string `json:"-"`
  3591  	// NullFields is a list of field names (e.g. "Description") to include in API
  3592  	// requests with the JSON null value. By default, fields with empty values are
  3593  	// omitted from API requests. See
  3594  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3595  	NullFields []string `json:"-"`
  3596  }
  3597  
  3598  func (s *GoogleCloudChannelV1TransferEligibility) MarshalJSON() ([]byte, error) {
  3599  	type NoMethod GoogleCloudChannelV1TransferEligibility
  3600  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3601  }
  3602  
  3603  // GoogleCloudChannelV1TransferEntitlementsRequest: Request message for
  3604  // CloudChannelService.TransferEntitlements.
  3605  type GoogleCloudChannelV1TransferEntitlementsRequest struct {
  3606  	// AuthToken: The super admin of the resold customer generates this token to
  3607  	// authorize a reseller to access their Cloud Identity and purchase
  3608  	// entitlements on their behalf. You can omit this token after authorization.
  3609  	// See https://support.google.com/a/answer/7643790 for more details.
  3610  	AuthToken string `json:"authToken,omitempty"`
  3611  	// Entitlements: Required. The new entitlements to create or transfer.
  3612  	Entitlements []*GoogleCloudChannelV1Entitlement `json:"entitlements,omitempty"`
  3613  	// RequestId: Optional. You can specify an optional unique request ID, and if
  3614  	// you need to retry your request, the server will know to ignore the request
  3615  	// if it's complete. For example, you make an initial request and the request
  3616  	// times out. If you make the request again with the same request ID, the
  3617  	// server can check if it received the original operation with the same request
  3618  	// ID. If it did, it will ignore the second request. The request ID must be a
  3619  	// valid UUID (https://tools.ietf.org/html/rfc4122) with the exception that
  3620  	// zero UUID is not supported (`00000000-0000-0000-0000-000000000000`).
  3621  	RequestId string `json:"requestId,omitempty"`
  3622  	// ForceSendFields is a list of field names (e.g. "AuthToken") to
  3623  	// unconditionally include in API requests. By default, fields with empty or
  3624  	// default values are omitted from API requests. See
  3625  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3626  	// details.
  3627  	ForceSendFields []string `json:"-"`
  3628  	// NullFields is a list of field names (e.g. "AuthToken") to include in API
  3629  	// requests with the JSON null value. By default, fields with empty values are
  3630  	// omitted from API requests. See
  3631  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3632  	NullFields []string `json:"-"`
  3633  }
  3634  
  3635  func (s *GoogleCloudChannelV1TransferEntitlementsRequest) MarshalJSON() ([]byte, error) {
  3636  	type NoMethod GoogleCloudChannelV1TransferEntitlementsRequest
  3637  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3638  }
  3639  
  3640  // GoogleCloudChannelV1TransferEntitlementsResponse: Response message for
  3641  // CloudChannelService.TransferEntitlements. This is put in the response field
  3642  // of google.longrunning.Operation.
  3643  type GoogleCloudChannelV1TransferEntitlementsResponse struct {
  3644  	// Entitlements: The transferred entitlements.
  3645  	Entitlements []*GoogleCloudChannelV1Entitlement `json:"entitlements,omitempty"`
  3646  	// ForceSendFields is a list of field names (e.g. "Entitlements") to
  3647  	// unconditionally include in API requests. By default, fields with empty or
  3648  	// default values are omitted from API requests. See
  3649  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3650  	// details.
  3651  	ForceSendFields []string `json:"-"`
  3652  	// NullFields is a list of field names (e.g. "Entitlements") to include in API
  3653  	// requests with the JSON null value. By default, fields with empty values are
  3654  	// omitted from API requests. See
  3655  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3656  	NullFields []string `json:"-"`
  3657  }
  3658  
  3659  func (s *GoogleCloudChannelV1TransferEntitlementsResponse) MarshalJSON() ([]byte, error) {
  3660  	type NoMethod GoogleCloudChannelV1TransferEntitlementsResponse
  3661  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3662  }
  3663  
  3664  // GoogleCloudChannelV1TransferEntitlementsToGoogleRequest: Request message for
  3665  // CloudChannelService.TransferEntitlementsToGoogle.
  3666  type GoogleCloudChannelV1TransferEntitlementsToGoogleRequest struct {
  3667  	// Entitlements: Required. The entitlements to transfer to Google.
  3668  	Entitlements []*GoogleCloudChannelV1Entitlement `json:"entitlements,omitempty"`
  3669  	// RequestId: Optional. You can specify an optional unique request ID, and if
  3670  	// you need to retry your request, the server will know to ignore the request
  3671  	// if it's complete. For example, you make an initial request and the request
  3672  	// times out. If you make the request again with the same request ID, the
  3673  	// server can check if it received the original operation with the same request
  3674  	// ID. If it did, it will ignore the second request. The request ID must be a
  3675  	// valid UUID (https://tools.ietf.org/html/rfc4122) with the exception that
  3676  	// zero UUID is not supported (`00000000-0000-0000-0000-000000000000`).
  3677  	RequestId string `json:"requestId,omitempty"`
  3678  	// ForceSendFields is a list of field names (e.g. "Entitlements") to
  3679  	// unconditionally include in API requests. By default, fields with empty or
  3680  	// default values are omitted from API requests. See
  3681  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3682  	// details.
  3683  	ForceSendFields []string `json:"-"`
  3684  	// NullFields is a list of field names (e.g. "Entitlements") to include in API
  3685  	// requests with the JSON null value. By default, fields with empty values are
  3686  	// omitted from API requests. See
  3687  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3688  	NullFields []string `json:"-"`
  3689  }
  3690  
  3691  func (s *GoogleCloudChannelV1TransferEntitlementsToGoogleRequest) MarshalJSON() ([]byte, error) {
  3692  	type NoMethod GoogleCloudChannelV1TransferEntitlementsToGoogleRequest
  3693  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3694  }
  3695  
  3696  // GoogleCloudChannelV1TransferableOffer: TransferableOffer represents an Offer
  3697  // that can be used in Transfer. Read-only.
  3698  type GoogleCloudChannelV1TransferableOffer struct {
  3699  	// Offer: Offer with parameter constraints updated to allow the Transfer.
  3700  	Offer *GoogleCloudChannelV1Offer `json:"offer,omitempty"`
  3701  	// ForceSendFields is a list of field names (e.g. "Offer") to unconditionally
  3702  	// include in API requests. By default, fields with empty or default values are
  3703  	// omitted from API requests. See
  3704  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3705  	// details.
  3706  	ForceSendFields []string `json:"-"`
  3707  	// NullFields is a list of field names (e.g. "Offer") to include in API
  3708  	// requests with the JSON null value. By default, fields with empty values are
  3709  	// omitted from API requests. See
  3710  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3711  	NullFields []string `json:"-"`
  3712  }
  3713  
  3714  func (s *GoogleCloudChannelV1TransferableOffer) MarshalJSON() ([]byte, error) {
  3715  	type NoMethod GoogleCloudChannelV1TransferableOffer
  3716  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3717  }
  3718  
  3719  // GoogleCloudChannelV1TransferableSku: TransferableSku represents information
  3720  // a reseller needs to view existing provisioned services for a customer that
  3721  // they do not own. Read-only.
  3722  type GoogleCloudChannelV1TransferableSku struct {
  3723  	// LegacySku: Optional. The customer to transfer has an entitlement with the
  3724  	// populated legacy SKU.
  3725  	LegacySku *GoogleCloudChannelV1Sku `json:"legacySku,omitempty"`
  3726  	// Sku: The SKU pertaining to the provisioning resource as specified in the
  3727  	// Offer.
  3728  	Sku *GoogleCloudChannelV1Sku `json:"sku,omitempty"`
  3729  	// TransferEligibility: Describes the transfer eligibility of a SKU.
  3730  	TransferEligibility *GoogleCloudChannelV1TransferEligibility `json:"transferEligibility,omitempty"`
  3731  	// ForceSendFields is a list of field names (e.g. "LegacySku") to
  3732  	// unconditionally include in API requests. By default, fields with empty or
  3733  	// default values are omitted from API requests. See
  3734  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3735  	// details.
  3736  	ForceSendFields []string `json:"-"`
  3737  	// NullFields is a list of field names (e.g. "LegacySku") to include in API
  3738  	// requests with the JSON null value. By default, fields with empty values are
  3739  	// omitted from API requests. See
  3740  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3741  	NullFields []string `json:"-"`
  3742  }
  3743  
  3744  func (s *GoogleCloudChannelV1TransferableSku) MarshalJSON() ([]byte, error) {
  3745  	type NoMethod GoogleCloudChannelV1TransferableSku
  3746  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3747  }
  3748  
  3749  // GoogleCloudChannelV1TrialSettings: Settings for trial offers.
  3750  type GoogleCloudChannelV1TrialSettings struct {
  3751  	// EndTime: Date when the trial ends. The value is in milliseconds using the
  3752  	// UNIX Epoch format. See an example Epoch converter
  3753  	// (https://www.epochconverter.com).
  3754  	EndTime string `json:"endTime,omitempty"`
  3755  	// Trial: Determines if the entitlement is in a trial or not: * `true` - The
  3756  	// entitlement is in trial. * `false` - The entitlement is not in trial.
  3757  	Trial bool `json:"trial,omitempty"`
  3758  	// ForceSendFields is a list of field names (e.g. "EndTime") to unconditionally
  3759  	// include in API requests. By default, fields with empty or default values are
  3760  	// omitted from API requests. See
  3761  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3762  	// details.
  3763  	ForceSendFields []string `json:"-"`
  3764  	// NullFields is a list of field names (e.g. "EndTime") to include in API
  3765  	// requests with the JSON null value. By default, fields with empty values are
  3766  	// omitted from API requests. See
  3767  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3768  	NullFields []string `json:"-"`
  3769  }
  3770  
  3771  func (s *GoogleCloudChannelV1TrialSettings) MarshalJSON() ([]byte, error) {
  3772  	type NoMethod GoogleCloudChannelV1TrialSettings
  3773  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3774  }
  3775  
  3776  // GoogleCloudChannelV1UnregisterSubscriberRequest: Request Message for
  3777  // UnregisterSubscriber.
  3778  type GoogleCloudChannelV1UnregisterSubscriberRequest struct {
  3779  	// ServiceAccount: Required. Service account to unregister from subscriber
  3780  	// access to the topic.
  3781  	ServiceAccount string `json:"serviceAccount,omitempty"`
  3782  	// ForceSendFields is a list of field names (e.g. "ServiceAccount") to
  3783  	// unconditionally include in API requests. By default, fields with empty or
  3784  	// default values are omitted from API requests. See
  3785  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3786  	// details.
  3787  	ForceSendFields []string `json:"-"`
  3788  	// NullFields is a list of field names (e.g. "ServiceAccount") to include in
  3789  	// API requests with the JSON null value. By default, fields with empty values
  3790  	// are omitted from API requests. See
  3791  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3792  	NullFields []string `json:"-"`
  3793  }
  3794  
  3795  func (s *GoogleCloudChannelV1UnregisterSubscriberRequest) MarshalJSON() ([]byte, error) {
  3796  	type NoMethod GoogleCloudChannelV1UnregisterSubscriberRequest
  3797  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3798  }
  3799  
  3800  // GoogleCloudChannelV1UnregisterSubscriberResponse: Response Message for
  3801  // UnregisterSubscriber.
  3802  type GoogleCloudChannelV1UnregisterSubscriberResponse struct {
  3803  	// Topic: Name of the topic the service account subscriber access was removed
  3804  	// from.
  3805  	Topic string `json:"topic,omitempty"`
  3806  
  3807  	// ServerResponse contains the HTTP response code and headers from the server.
  3808  	googleapi.ServerResponse `json:"-"`
  3809  	// ForceSendFields is a list of field names (e.g. "Topic") to unconditionally
  3810  	// include in API requests. By default, fields with empty or default values are
  3811  	// omitted from API requests. See
  3812  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3813  	// details.
  3814  	ForceSendFields []string `json:"-"`
  3815  	// NullFields is a list of field names (e.g. "Topic") to include in API
  3816  	// requests with the JSON null value. By default, fields with empty values are
  3817  	// omitted from API requests. See
  3818  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3819  	NullFields []string `json:"-"`
  3820  }
  3821  
  3822  func (s *GoogleCloudChannelV1UnregisterSubscriberResponse) MarshalJSON() ([]byte, error) {
  3823  	type NoMethod GoogleCloudChannelV1UnregisterSubscriberResponse
  3824  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3825  }
  3826  
  3827  // GoogleCloudChannelV1UpdateChannelPartnerLinkRequest: Request message for
  3828  // CloudChannelService.UpdateChannelPartnerLink
  3829  type GoogleCloudChannelV1UpdateChannelPartnerLinkRequest struct {
  3830  	// ChannelPartnerLink: Required. The channel partner link to update. Only
  3831  	// channel_partner_link.link_state is allowed for updates.
  3832  	ChannelPartnerLink *GoogleCloudChannelV1ChannelPartnerLink `json:"channelPartnerLink,omitempty"`
  3833  	// UpdateMask: Required. The update mask that applies to the resource. The only
  3834  	// allowable value for an update mask is channel_partner_link.link_state.
  3835  	UpdateMask string `json:"updateMask,omitempty"`
  3836  	// ForceSendFields is a list of field names (e.g. "ChannelPartnerLink") to
  3837  	// unconditionally include in API requests. By default, fields with empty or
  3838  	// default values are omitted from API requests. See
  3839  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3840  	// details.
  3841  	ForceSendFields []string `json:"-"`
  3842  	// NullFields is a list of field names (e.g. "ChannelPartnerLink") to include
  3843  	// in API requests with the JSON null value. By default, fields with empty
  3844  	// values are omitted from API requests. See
  3845  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3846  	NullFields []string `json:"-"`
  3847  }
  3848  
  3849  func (s *GoogleCloudChannelV1UpdateChannelPartnerLinkRequest) MarshalJSON() ([]byte, error) {
  3850  	type NoMethod GoogleCloudChannelV1UpdateChannelPartnerLinkRequest
  3851  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3852  }
  3853  
  3854  // GoogleCloudChannelV1Value: Data type and value of a parameter.
  3855  type GoogleCloudChannelV1Value struct {
  3856  	// BoolValue: Represents a boolean value.
  3857  	BoolValue bool `json:"boolValue,omitempty"`
  3858  	// DoubleValue: Represents a double value.
  3859  	DoubleValue float64 `json:"doubleValue,omitempty"`
  3860  	// Int64Value: Represents an int64 value.
  3861  	Int64Value int64 `json:"int64Value,omitempty,string"`
  3862  	// ProtoValue: Represents an 'Any' proto value.
  3863  	ProtoValue googleapi.RawMessage `json:"protoValue,omitempty"`
  3864  	// StringValue: Represents a string value.
  3865  	StringValue string `json:"stringValue,omitempty"`
  3866  	// ForceSendFields is a list of field names (e.g. "BoolValue") to
  3867  	// unconditionally include in API requests. By default, fields with empty or
  3868  	// default values are omitted from API requests. See
  3869  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3870  	// details.
  3871  	ForceSendFields []string `json:"-"`
  3872  	// NullFields is a list of field names (e.g. "BoolValue") to include in API
  3873  	// requests with the JSON null value. By default, fields with empty values are
  3874  	// omitted from API requests. See
  3875  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3876  	NullFields []string `json:"-"`
  3877  }
  3878  
  3879  func (s *GoogleCloudChannelV1Value) MarshalJSON() ([]byte, error) {
  3880  	type NoMethod GoogleCloudChannelV1Value
  3881  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3882  }
  3883  
  3884  func (s *GoogleCloudChannelV1Value) UnmarshalJSON(data []byte) error {
  3885  	type NoMethod GoogleCloudChannelV1Value
  3886  	var s1 struct {
  3887  		DoubleValue gensupport.JSONFloat64 `json:"doubleValue"`
  3888  		*NoMethod
  3889  	}
  3890  	s1.NoMethod = (*NoMethod)(s)
  3891  	if err := json.Unmarshal(data, &s1); err != nil {
  3892  		return err
  3893  	}
  3894  	s.DoubleValue = float64(s1.DoubleValue)
  3895  	return nil
  3896  }
  3897  
  3898  // GoogleCloudChannelV1alpha1AssociationInfo: Association links that an
  3899  // entitlement has to other entitlements.
  3900  type GoogleCloudChannelV1alpha1AssociationInfo struct {
  3901  	// BaseEntitlement: The name of the base entitlement, for which this
  3902  	// entitlement is an add-on.
  3903  	BaseEntitlement string `json:"baseEntitlement,omitempty"`
  3904  	// ForceSendFields is a list of field names (e.g. "BaseEntitlement") to
  3905  	// unconditionally include in API requests. By default, fields with empty or
  3906  	// default values are omitted from API requests. See
  3907  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3908  	// details.
  3909  	ForceSendFields []string `json:"-"`
  3910  	// NullFields is a list of field names (e.g. "BaseEntitlement") to include in
  3911  	// API requests with the JSON null value. By default, fields with empty values
  3912  	// are omitted from API requests. See
  3913  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3914  	NullFields []string `json:"-"`
  3915  }
  3916  
  3917  func (s *GoogleCloudChannelV1alpha1AssociationInfo) MarshalJSON() ([]byte, error) {
  3918  	type NoMethod GoogleCloudChannelV1alpha1AssociationInfo
  3919  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3920  }
  3921  
  3922  // GoogleCloudChannelV1alpha1ChannelPartnerEvent: Represents Pub/Sub messages
  3923  // about updates to a Channel Partner. You can retrieve updated values through
  3924  // the ChannelPartnerLinks API.
  3925  type GoogleCloudChannelV1alpha1ChannelPartnerEvent struct {
  3926  	// ChannelPartner: Resource name for the Channel Partner Link. Channel_partner
  3927  	// uses the format:
  3928  	// accounts/{account_id}/channelPartnerLinks/{channel_partner_id}
  3929  	ChannelPartner string `json:"channelPartner,omitempty"`
  3930  	// EventType: Type of event performed on the Channel Partner.
  3931  	//
  3932  	// Possible values:
  3933  	//   "TYPE_UNSPECIFIED" - Default value. Does not display if there are no
  3934  	// errors.
  3935  	//   "LINK_STATE_CHANGED" - The Channel Partner link state changed.
  3936  	//   "PARTNER_ADVANTAGE_INFO_CHANGED" - The Channel Partner's Partner Advantage
  3937  	// information changed. This can entail the Channel Partner's authorization to
  3938  	// sell a product in a particular region.
  3939  	EventType string `json:"eventType,omitempty"`
  3940  	// ForceSendFields is a list of field names (e.g. "ChannelPartner") to
  3941  	// unconditionally include in API requests. By default, fields with empty or
  3942  	// default values are omitted from API requests. See
  3943  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3944  	// details.
  3945  	ForceSendFields []string `json:"-"`
  3946  	// NullFields is a list of field names (e.g. "ChannelPartner") to include in
  3947  	// API requests with the JSON null value. By default, fields with empty values
  3948  	// are omitted from API requests. See
  3949  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3950  	NullFields []string `json:"-"`
  3951  }
  3952  
  3953  func (s *GoogleCloudChannelV1alpha1ChannelPartnerEvent) MarshalJSON() ([]byte, error) {
  3954  	type NoMethod GoogleCloudChannelV1alpha1ChannelPartnerEvent
  3955  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3956  }
  3957  
  3958  // GoogleCloudChannelV1alpha1Column: The definition of a report column.
  3959  // Specifies the data properties in the corresponding position of the report
  3960  // rows.
  3961  type GoogleCloudChannelV1alpha1Column struct {
  3962  	// ColumnId: The unique name of the column (for example, customer_domain,
  3963  	// channel_partner, customer_cost). You can use column IDs in
  3964  	// RunReportJobRequest.filter. To see all reports and their columns, call
  3965  	// CloudChannelReportsService.ListReports.
  3966  	ColumnId string `json:"columnId,omitempty"`
  3967  	// DataType: The type of the values for this column.
  3968  	//
  3969  	// Possible values:
  3970  	//   "DATA_TYPE_UNSPECIFIED" - Not used.
  3971  	//   "STRING" - ReportValues for this column will use string_value.
  3972  	//   "INT" - ReportValues for this column will use int_value.
  3973  	//   "DECIMAL" - ReportValues for this column will use decimal_value.
  3974  	//   "MONEY" - ReportValues for this column will use money_value.
  3975  	//   "DATE" - ReportValues for this column will use date_value.
  3976  	//   "DATE_TIME" - ReportValues for this column will use date_time_value.
  3977  	DataType string `json:"dataType,omitempty"`
  3978  	// DisplayName: The column's display name.
  3979  	DisplayName string `json:"displayName,omitempty"`
  3980  	// ForceSendFields is a list of field names (e.g. "ColumnId") to
  3981  	// unconditionally include in API requests. By default, fields with empty or
  3982  	// default values are omitted from API requests. See
  3983  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3984  	// details.
  3985  	ForceSendFields []string `json:"-"`
  3986  	// NullFields is a list of field names (e.g. "ColumnId") to include in API
  3987  	// requests with the JSON null value. By default, fields with empty values are
  3988  	// omitted from API requests. See
  3989  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3990  	NullFields []string `json:"-"`
  3991  }
  3992  
  3993  func (s *GoogleCloudChannelV1alpha1Column) MarshalJSON() ([]byte, error) {
  3994  	type NoMethod GoogleCloudChannelV1alpha1Column
  3995  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3996  }
  3997  
  3998  // GoogleCloudChannelV1alpha1CommitmentSettings: Commitment settings for
  3999  // commitment-based offers.
  4000  type GoogleCloudChannelV1alpha1CommitmentSettings struct {
  4001  	// EndTime: Output only. Commitment end timestamp.
  4002  	EndTime string `json:"endTime,omitempty"`
  4003  	// RenewalSettings: Optional. Renewal settings applicable for a
  4004  	// commitment-based Offer.
  4005  	RenewalSettings *GoogleCloudChannelV1alpha1RenewalSettings `json:"renewalSettings,omitempty"`
  4006  	// StartTime: Output only. Commitment start timestamp.
  4007  	StartTime string `json:"startTime,omitempty"`
  4008  	// ForceSendFields is a list of field names (e.g. "EndTime") to unconditionally
  4009  	// include in API requests. By default, fields with empty or default values are
  4010  	// omitted from API requests. See
  4011  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4012  	// details.
  4013  	ForceSendFields []string `json:"-"`
  4014  	// NullFields is a list of field names (e.g. "EndTime") to include in API
  4015  	// requests with the JSON null value. By default, fields with empty values are
  4016  	// omitted from API requests. See
  4017  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4018  	NullFields []string `json:"-"`
  4019  }
  4020  
  4021  func (s *GoogleCloudChannelV1alpha1CommitmentSettings) MarshalJSON() ([]byte, error) {
  4022  	type NoMethod GoogleCloudChannelV1alpha1CommitmentSettings
  4023  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4024  }
  4025  
  4026  // GoogleCloudChannelV1alpha1CustomerEvent: Represents Pub/Sub message content
  4027  // describing customer update.
  4028  type GoogleCloudChannelV1alpha1CustomerEvent struct {
  4029  	// Customer: Resource name of the customer. Format:
  4030  	// accounts/{account_id}/customers/{customer_id}
  4031  	Customer string `json:"customer,omitempty"`
  4032  	// EventType: Type of event which happened on the customer.
  4033  	//
  4034  	// Possible values:
  4035  	//   "TYPE_UNSPECIFIED" - Not used.
  4036  	//   "PRIMARY_DOMAIN_CHANGED" - Primary domain for customer was changed.
  4037  	//   "PRIMARY_DOMAIN_VERIFIED" - Primary domain of the customer has been
  4038  	// verified.
  4039  	EventType string `json:"eventType,omitempty"`
  4040  	// ForceSendFields is a list of field names (e.g. "Customer") to
  4041  	// unconditionally include in API requests. By default, fields with empty or
  4042  	// default values are omitted from API requests. See
  4043  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4044  	// details.
  4045  	ForceSendFields []string `json:"-"`
  4046  	// NullFields is a list of field names (e.g. "Customer") to include in API
  4047  	// requests with the JSON null value. By default, fields with empty values are
  4048  	// omitted from API requests. See
  4049  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4050  	NullFields []string `json:"-"`
  4051  }
  4052  
  4053  func (s *GoogleCloudChannelV1alpha1CustomerEvent) MarshalJSON() ([]byte, error) {
  4054  	type NoMethod GoogleCloudChannelV1alpha1CustomerEvent
  4055  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4056  }
  4057  
  4058  // GoogleCloudChannelV1alpha1DateRange: A representation of usage or invoice
  4059  // date ranges.
  4060  type GoogleCloudChannelV1alpha1DateRange struct {
  4061  	// InvoiceEndDate: The latest invoice date (inclusive). If this value is not
  4062  	// the last day of a month, this will move it forward to the last day of the
  4063  	// given month.
  4064  	InvoiceEndDate *GoogleTypeDate `json:"invoiceEndDate,omitempty"`
  4065  	// InvoiceStartDate: The earliest invoice date (inclusive). If this value is
  4066  	// not the first day of a month, this will move it back to the first day of the
  4067  	// given month.
  4068  	InvoiceStartDate *GoogleTypeDate `json:"invoiceStartDate,omitempty"`
  4069  	// UsageEndDateTime: The latest usage date time (exclusive). If you use time
  4070  	// groupings (daily, weekly, etc), each group uses midnight to midnight
  4071  	// (Pacific time). The usage end date is rounded down to include all usage from
  4072  	// the specified date. We recommend that clients pass `usage_start_date_time`
  4073  	// in Pacific time.
  4074  	UsageEndDateTime *GoogleTypeDateTime `json:"usageEndDateTime,omitempty"`
  4075  	// UsageStartDateTime: The earliest usage date time (inclusive). If you use
  4076  	// time groupings (daily, weekly, etc), each group uses midnight to midnight
  4077  	// (Pacific time). The usage start date is rounded down to include all usage
  4078  	// from the specified date. We recommend that clients pass
  4079  	// `usage_start_date_time` in Pacific time.
  4080  	UsageStartDateTime *GoogleTypeDateTime `json:"usageStartDateTime,omitempty"`
  4081  	// ForceSendFields is a list of field names (e.g. "InvoiceEndDate") to
  4082  	// unconditionally include in API requests. By default, fields with empty or
  4083  	// default values are omitted from API requests. See
  4084  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4085  	// details.
  4086  	ForceSendFields []string `json:"-"`
  4087  	// NullFields is a list of field names (e.g. "InvoiceEndDate") to include in
  4088  	// API requests with the JSON null value. By default, fields with empty values
  4089  	// are omitted from API requests. See
  4090  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4091  	NullFields []string `json:"-"`
  4092  }
  4093  
  4094  func (s *GoogleCloudChannelV1alpha1DateRange) MarshalJSON() ([]byte, error) {
  4095  	type NoMethod GoogleCloudChannelV1alpha1DateRange
  4096  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4097  }
  4098  
  4099  // GoogleCloudChannelV1alpha1Entitlement: An entitlement is a representation of
  4100  // a customer's ability to use a service.
  4101  type GoogleCloudChannelV1alpha1Entitlement struct {
  4102  	// AssignedUnits: The current number of users that are assigned a license for
  4103  	// the product defined in provisioned_service.skuId. Read-only. Deprecated: Use
  4104  	// `parameters` instead.
  4105  	AssignedUnits int64 `json:"assignedUnits,omitempty"`
  4106  	// AssociationInfo: Association information to other entitlements.
  4107  	AssociationInfo *GoogleCloudChannelV1alpha1AssociationInfo `json:"associationInfo,omitempty"`
  4108  	// BillingAccount: Optional. The billing account resource name that is used to
  4109  	// pay for this entitlement.
  4110  	BillingAccount string `json:"billingAccount,omitempty"`
  4111  	// ChannelPartnerId: Cloud Identity ID of a channel partner who will be the
  4112  	// direct reseller for the customer's order. This field is generally used in
  4113  	// 2-tier ordering, where the order is placed by a top-level distributor on
  4114  	// behalf of their channel partner or reseller. Required for distributors.
  4115  	// Deprecated: `channel_partner_id` has been moved to the Customer.
  4116  	ChannelPartnerId string `json:"channelPartnerId,omitempty"`
  4117  	// CommitmentSettings: Commitment settings for a commitment-based Offer.
  4118  	// Required for commitment based offers.
  4119  	CommitmentSettings *GoogleCloudChannelV1alpha1CommitmentSettings `json:"commitmentSettings,omitempty"`
  4120  	// CreateTime: Output only. The time at which the entitlement is created.
  4121  	CreateTime string `json:"createTime,omitempty"`
  4122  	// MaxUnits: Maximum number of units for a non commitment-based Offer, such as
  4123  	// Flexible, Trial or Free entitlements. For commitment-based entitlements,
  4124  	// this is a read-only field, which only the internal support team can update.
  4125  	// Deprecated: Use `parameters` instead.
  4126  	MaxUnits int64 `json:"maxUnits,omitempty"`
  4127  	// Name: Output only. Resource name of an entitlement in the form:
  4128  	// accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}.
  4129  	Name string `json:"name,omitempty"`
  4130  	// NumUnits: Number of units for a commitment-based Offer. For example, for
  4131  	// seat-based Offers, this would be the number of seats; for license-based
  4132  	// Offers, this would be the number of licenses. Required for creating
  4133  	// commitment-based Offers. Deprecated: Use `parameters` instead.
  4134  	NumUnits int64 `json:"numUnits,omitempty"`
  4135  	// Offer: Required. The offer resource name for which the entitlement is to be
  4136  	// created. Takes the form: accounts/{account_id}/offers/{offer_id}.
  4137  	Offer string `json:"offer,omitempty"`
  4138  	// Parameters: Extended entitlement parameters. When creating an entitlement,
  4139  	// valid parameter names and values are defined in the
  4140  	// Offer.parameter_definitions. For Google Workspace, the following Parameters
  4141  	// may be accepted as input: - max_units: The maximum assignable units for a
  4142  	// flexible offer OR - num_units: The total commitment for commitment-based
  4143  	// offers The response may additionally include the following output-only
  4144  	// Parameters: - assigned_units: The number of licenses assigned to users. For
  4145  	// Google Cloud billing subaccounts, the following Parameter may be accepted as
  4146  	// input: - display_name: The display name of the billing subaccount.
  4147  	Parameters []*GoogleCloudChannelV1alpha1Parameter `json:"parameters,omitempty"`
  4148  	// ProvisionedService: Output only. Service provisioning details for the
  4149  	// entitlement.
  4150  	ProvisionedService *GoogleCloudChannelV1alpha1ProvisionedService `json:"provisionedService,omitempty"`
  4151  	// ProvisioningState: Output only. Current provisioning state of the
  4152  	// entitlement.
  4153  	//
  4154  	// Possible values:
  4155  	//   "PROVISIONING_STATE_UNSPECIFIED" - Not used.
  4156  	//   "ACTIVE" - The entitlement is currently active.
  4157  	//   "CANCELED" - The entitlement was canceled. After an entitlement is
  4158  	// `CANCELED`, its status will not change. Deprecated: Canceled entitlements
  4159  	// will no longer be visible.
  4160  	//   "COMPLETE" - The entitlement reached end of term and was not renewed.
  4161  	// After an entitlement is `COMPLETE`, its status will not change. Deprecated:
  4162  	// This is represented as ProvisioningState=SUSPENDED and suspensionReason in
  4163  	// (TRIAL_ENDED, RENEWAL_WITH_TYPE_CANCEL)
  4164  	//   "PENDING" - The entitlement is pending. Deprecated: This is represented as
  4165  	// ProvisioningState=SUSPENDED and suspensionReason=PENDING_TOS_ACCEPTANCE
  4166  	//   "SUSPENDED" - The entitlement is currently suspended.
  4167  	ProvisioningState string `json:"provisioningState,omitempty"`
  4168  	// PurchaseOrderId: Optional. This purchase order (PO) information is for
  4169  	// resellers to use for their company tracking usage. If a purchaseOrderId
  4170  	// value is given, it appears in the API responses and shows up in the invoice.
  4171  	// The property accepts up to 80 plain text characters. This is only supported
  4172  	// for Google Workspace entitlements.
  4173  	PurchaseOrderId string `json:"purchaseOrderId,omitempty"`
  4174  	// SuspensionReasons: Output only. Enumerable of all current suspension reasons
  4175  	// for an entitlement.
  4176  	//
  4177  	// Possible values:
  4178  	//   "SUSPENSION_REASON_UNSPECIFIED" - Not used.
  4179  	//   "RESELLER_INITIATED" - Entitlement was manually suspended by the Reseller.
  4180  	//   "TRIAL_ENDED" - Trial ended.
  4181  	//   "RENEWAL_WITH_TYPE_CANCEL" - Entitlement renewal was canceled.
  4182  	//   "PENDING_TOS_ACCEPTANCE" - Entitlement was automatically suspended on
  4183  	// creation for pending ToS acceptance on customer.
  4184  	//   "OTHER" - Other reasons (internal reasons, abuse, etc.).
  4185  	SuspensionReasons []string `json:"suspensionReasons,omitempty"`
  4186  	// TrialSettings: Output only. Settings for trial offers.
  4187  	TrialSettings *GoogleCloudChannelV1alpha1TrialSettings `json:"trialSettings,omitempty"`
  4188  	// UpdateTime: Output only. The time at which the entitlement is updated.
  4189  	UpdateTime string `json:"updateTime,omitempty"`
  4190  	// ForceSendFields is a list of field names (e.g. "AssignedUnits") to
  4191  	// unconditionally include in API requests. By default, fields with empty or
  4192  	// default values are omitted from API requests. See
  4193  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4194  	// details.
  4195  	ForceSendFields []string `json:"-"`
  4196  	// NullFields is a list of field names (e.g. "AssignedUnits") to include in API
  4197  	// requests with the JSON null value. By default, fields with empty values are
  4198  	// omitted from API requests. See
  4199  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4200  	NullFields []string `json:"-"`
  4201  }
  4202  
  4203  func (s *GoogleCloudChannelV1alpha1Entitlement) MarshalJSON() ([]byte, error) {
  4204  	type NoMethod GoogleCloudChannelV1alpha1Entitlement
  4205  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4206  }
  4207  
  4208  // GoogleCloudChannelV1alpha1EntitlementEvent: Represents Pub/Sub message
  4209  // content describing entitlement update.
  4210  type GoogleCloudChannelV1alpha1EntitlementEvent struct {
  4211  	// Entitlement: Resource name of an entitlement of the form:
  4212  	// accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}
  4213  	Entitlement string `json:"entitlement,omitempty"`
  4214  	// EventType: Type of event which happened on the entitlement.
  4215  	//
  4216  	// Possible values:
  4217  	//   "TYPE_UNSPECIFIED" - Not used.
  4218  	//   "CREATED" - A new entitlement was created.
  4219  	//   "PRICE_PLAN_SWITCHED" - The offer type associated with an entitlement was
  4220  	// changed. This is not triggered if an entitlement converts from a commit
  4221  	// offer to a flexible offer as part of a renewal.
  4222  	//   "COMMITMENT_CHANGED" - Annual commitment for a commit plan was changed.
  4223  	//   "RENEWED" - An annual entitlement was renewed.
  4224  	//   "SUSPENDED" - Entitlement was suspended.
  4225  	//   "ACTIVATED" - Entitlement was unsuspended.
  4226  	//   "CANCELLED" - Entitlement was cancelled.
  4227  	//   "SKU_CHANGED" - Entitlement was upgraded or downgraded (e.g. from Google
  4228  	// Workspace Business Standard to Google Workspace Business Plus).
  4229  	//   "RENEWAL_SETTING_CHANGED" - The renewal settings of an entitlement has
  4230  	// changed.
  4231  	//   "PAID_SERVICE_STARTED" - Paid service has started on trial entitlement.
  4232  	//   "LICENSE_ASSIGNMENT_CHANGED" - License was assigned to or revoked from a
  4233  	// user.
  4234  	//   "LICENSE_CAP_CHANGED" - License cap was changed for the entitlement.
  4235  	EventType string `json:"eventType,omitempty"`
  4236  	// ForceSendFields is a list of field names (e.g. "Entitlement") to
  4237  	// unconditionally include in API requests. By default, fields with empty or
  4238  	// default values are omitted from API requests. See
  4239  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4240  	// details.
  4241  	ForceSendFields []string `json:"-"`
  4242  	// NullFields is a list of field names (e.g. "Entitlement") to include in API
  4243  	// requests with the JSON null value. By default, fields with empty values are
  4244  	// omitted from API requests. See
  4245  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4246  	NullFields []string `json:"-"`
  4247  }
  4248  
  4249  func (s *GoogleCloudChannelV1alpha1EntitlementEvent) MarshalJSON() ([]byte, error) {
  4250  	type NoMethod GoogleCloudChannelV1alpha1EntitlementEvent
  4251  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4252  }
  4253  
  4254  // GoogleCloudChannelV1alpha1OperationMetadata: Provides contextual information
  4255  // about a google.longrunning.Operation.
  4256  type GoogleCloudChannelV1alpha1OperationMetadata struct {
  4257  	// OperationType: The RPC that initiated this Long Running Operation.
  4258  	//
  4259  	// Possible values:
  4260  	//   "OPERATION_TYPE_UNSPECIFIED" - Not used.
  4261  	//   "CREATE_ENTITLEMENT" - Long Running Operation was triggered by
  4262  	// CreateEntitlement.
  4263  	//   "CHANGE_QUANTITY" - Long Running Operation was triggered by
  4264  	// ChangeQuantity.
  4265  	//   "CHANGE_RENEWAL_SETTINGS" - Long Running Operation was triggered by
  4266  	// ChangeRenewalSettings.
  4267  	//   "CHANGE_PLAN" - Long Running Operation was triggered by ChangePlan.
  4268  	//   "START_PAID_SERVICE" - Long Running Operation was triggered by
  4269  	// StartPaidService.
  4270  	//   "CHANGE_SKU" - Long Running Operation was triggered by ChangeSku.
  4271  	//   "ACTIVATE_ENTITLEMENT" - Long Running Operation was triggered by
  4272  	// ActivateEntitlement.
  4273  	//   "SUSPEND_ENTITLEMENT" - Long Running Operation was triggered by
  4274  	// SuspendEntitlement.
  4275  	//   "CANCEL_ENTITLEMENT" - Long Running Operation was triggered by
  4276  	// CancelEntitlement.
  4277  	//   "TRANSFER_ENTITLEMENTS" - Long Running Operation was triggered by
  4278  	// TransferEntitlements.
  4279  	//   "TRANSFER_ENTITLEMENTS_TO_GOOGLE" - Long Running Operation was triggered
  4280  	// by TransferEntitlementsToGoogle.
  4281  	//   "CHANGE_OFFER" - Long Running Operation was triggered by ChangeOffer.
  4282  	//   "CHANGE_PARAMETERS" - Long Running Operation was triggered by
  4283  	// ChangeParameters.
  4284  	//   "PROVISION_CLOUD_IDENTITY" - Long Running Operation was triggered by
  4285  	// ProvisionCloudIdentity.
  4286  	OperationType string `json:"operationType,omitempty"`
  4287  	// ForceSendFields is a list of field names (e.g. "OperationType") to
  4288  	// unconditionally include in API requests. By default, fields with empty or
  4289  	// default values are omitted from API requests. See
  4290  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4291  	// details.
  4292  	ForceSendFields []string `json:"-"`
  4293  	// NullFields is a list of field names (e.g. "OperationType") to include in API
  4294  	// requests with the JSON null value. By default, fields with empty values are
  4295  	// omitted from API requests. See
  4296  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4297  	NullFields []string `json:"-"`
  4298  }
  4299  
  4300  func (s *GoogleCloudChannelV1alpha1OperationMetadata) MarshalJSON() ([]byte, error) {
  4301  	type NoMethod GoogleCloudChannelV1alpha1OperationMetadata
  4302  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4303  }
  4304  
  4305  // GoogleCloudChannelV1alpha1Parameter: Definition for extended entitlement
  4306  // parameters.
  4307  type GoogleCloudChannelV1alpha1Parameter struct {
  4308  	// Editable: Output only. Specifies whether this parameter is allowed to be
  4309  	// changed. For example, for a Google Workspace Business Starter entitlement in
  4310  	// commitment plan, num_units is editable when entitlement is active.
  4311  	Editable bool `json:"editable,omitempty"`
  4312  	// Name: Name of the parameter.
  4313  	Name string `json:"name,omitempty"`
  4314  	// Value: Value of the parameter.
  4315  	Value *GoogleCloudChannelV1alpha1Value `json:"value,omitempty"`
  4316  	// ForceSendFields is a list of field names (e.g. "Editable") to
  4317  	// unconditionally include in API requests. By default, fields with empty or
  4318  	// default values are omitted from API requests. See
  4319  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4320  	// details.
  4321  	ForceSendFields []string `json:"-"`
  4322  	// NullFields is a list of field names (e.g. "Editable") to include in API
  4323  	// requests with the JSON null value. By default, fields with empty values are
  4324  	// omitted from API requests. See
  4325  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4326  	NullFields []string `json:"-"`
  4327  }
  4328  
  4329  func (s *GoogleCloudChannelV1alpha1Parameter) MarshalJSON() ([]byte, error) {
  4330  	type NoMethod GoogleCloudChannelV1alpha1Parameter
  4331  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4332  }
  4333  
  4334  // GoogleCloudChannelV1alpha1Period: Represents period in days/months/years.
  4335  type GoogleCloudChannelV1alpha1Period struct {
  4336  	// Duration: Total duration of Period Type defined.
  4337  	Duration int64 `json:"duration,omitempty"`
  4338  	// PeriodType: Period Type.
  4339  	//
  4340  	// Possible values:
  4341  	//   "PERIOD_TYPE_UNSPECIFIED" - Not used.
  4342  	//   "DAY" - Day.
  4343  	//   "MONTH" - Month.
  4344  	//   "YEAR" - Year.
  4345  	PeriodType string `json:"periodType,omitempty"`
  4346  	// ForceSendFields is a list of field names (e.g. "Duration") to
  4347  	// unconditionally include in API requests. By default, fields with empty or
  4348  	// default values are omitted from API requests. See
  4349  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4350  	// details.
  4351  	ForceSendFields []string `json:"-"`
  4352  	// NullFields is a list of field names (e.g. "Duration") to include in API
  4353  	// requests with the JSON null value. By default, fields with empty values are
  4354  	// omitted from API requests. See
  4355  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4356  	NullFields []string `json:"-"`
  4357  }
  4358  
  4359  func (s *GoogleCloudChannelV1alpha1Period) MarshalJSON() ([]byte, error) {
  4360  	type NoMethod GoogleCloudChannelV1alpha1Period
  4361  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4362  }
  4363  
  4364  // GoogleCloudChannelV1alpha1ProvisionedService: Service provisioned for an
  4365  // entitlement.
  4366  type GoogleCloudChannelV1alpha1ProvisionedService struct {
  4367  	// ProductId: Output only. The product pertaining to the provisioning resource
  4368  	// as specified in the Offer.
  4369  	ProductId string `json:"productId,omitempty"`
  4370  	// ProvisioningId: Output only. Provisioning ID of the entitlement. For Google
  4371  	// Workspace, this is the underlying Subscription ID. For Google Cloud, this is
  4372  	// the Billing Account ID of the billing subaccount.
  4373  	ProvisioningId string `json:"provisioningId,omitempty"`
  4374  	// SkuId: Output only. The SKU pertaining to the provisioning resource as
  4375  	// specified in the Offer.
  4376  	SkuId string `json:"skuId,omitempty"`
  4377  	// ForceSendFields is a list of field names (e.g. "ProductId") to
  4378  	// unconditionally include in API requests. By default, fields with empty or
  4379  	// default values are omitted from API requests. See
  4380  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4381  	// details.
  4382  	ForceSendFields []string `json:"-"`
  4383  	// NullFields is a list of field names (e.g. "ProductId") to include in API
  4384  	// requests with the JSON null value. By default, fields with empty values are
  4385  	// omitted from API requests. See
  4386  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4387  	NullFields []string `json:"-"`
  4388  }
  4389  
  4390  func (s *GoogleCloudChannelV1alpha1ProvisionedService) MarshalJSON() ([]byte, error) {
  4391  	type NoMethod GoogleCloudChannelV1alpha1ProvisionedService
  4392  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4393  }
  4394  
  4395  // GoogleCloudChannelV1alpha1RenewalSettings: Renewal settings for renewable
  4396  // Offers.
  4397  type GoogleCloudChannelV1alpha1RenewalSettings struct {
  4398  	// DisableCommitment: If true, disables commitment-based offer on renewal and
  4399  	// switches to flexible or pay as you go. Deprecated: Use `payment_plan`
  4400  	// instead.
  4401  	DisableCommitment bool `json:"disableCommitment,omitempty"`
  4402  	// EnableRenewal: If false, the plan will be completed at the end date.
  4403  	EnableRenewal bool `json:"enableRenewal,omitempty"`
  4404  	// PaymentCycle: Describes how frequently the reseller will be billed, such as
  4405  	// once per month.
  4406  	PaymentCycle *GoogleCloudChannelV1alpha1Period `json:"paymentCycle,omitempty"`
  4407  	// PaymentOption: Set if enable_renewal=true. Deprecated: Use `payment_cycle`
  4408  	// instead.
  4409  	//
  4410  	// Possible values:
  4411  	//   "PAYMENT_OPTION_UNSPECIFIED" - Not used.
  4412  	//   "ANNUAL" - Paid in yearly installments.
  4413  	//   "MONTHLY" - Paid in monthly installments.
  4414  	PaymentOption string `json:"paymentOption,omitempty"`
  4415  	// PaymentPlan: Describes how a reseller will be billed.
  4416  	//
  4417  	// Possible values:
  4418  	//   "PAYMENT_PLAN_UNSPECIFIED" - Not used.
  4419  	//   "COMMITMENT" - Commitment.
  4420  	//   "FLEXIBLE" - No commitment.
  4421  	//   "FREE" - Free.
  4422  	//   "TRIAL" - Trial.
  4423  	//   "OFFLINE" - Price and ordering not available through API.
  4424  	PaymentPlan string `json:"paymentPlan,omitempty"`
  4425  	// ResizeUnitCount: If true and enable_renewal = true, the unit (for example
  4426  	// seats or licenses) will be set to the number of active units at renewal
  4427  	// time.
  4428  	ResizeUnitCount bool `json:"resizeUnitCount,omitempty"`
  4429  	// ScheduledRenewalOffer: Output only. The offer resource name that the
  4430  	// entitlement will renew on at the end date. Takes the form:
  4431  	// accounts/{account_id}/offers/{offer_id}.
  4432  	ScheduledRenewalOffer string `json:"scheduledRenewalOffer,omitempty"`
  4433  	// ForceSendFields is a list of field names (e.g. "DisableCommitment") to
  4434  	// unconditionally include in API requests. By default, fields with empty or
  4435  	// default values are omitted from API requests. See
  4436  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4437  	// details.
  4438  	ForceSendFields []string `json:"-"`
  4439  	// NullFields is a list of field names (e.g. "DisableCommitment") to include in
  4440  	// API requests with the JSON null value. By default, fields with empty values
  4441  	// are omitted from API requests. See
  4442  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4443  	NullFields []string `json:"-"`
  4444  }
  4445  
  4446  func (s *GoogleCloudChannelV1alpha1RenewalSettings) MarshalJSON() ([]byte, error) {
  4447  	type NoMethod GoogleCloudChannelV1alpha1RenewalSettings
  4448  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4449  }
  4450  
  4451  // GoogleCloudChannelV1alpha1Report: The ID and description of a report that
  4452  // was used to generate report data. For example, "Google Cloud Daily Spend",
  4453  // "Google Workspace License Activity", etc.
  4454  type GoogleCloudChannelV1alpha1Report struct {
  4455  	// Columns: The list of columns included in the report. This defines the schema
  4456  	// of the report results.
  4457  	Columns []*GoogleCloudChannelV1alpha1Column `json:"columns,omitempty"`
  4458  	// Description: A description of other aspects of the report, such as the
  4459  	// products it supports.
  4460  	Description string `json:"description,omitempty"`
  4461  	// DisplayName: A human-readable name for this report.
  4462  	DisplayName string `json:"displayName,omitempty"`
  4463  	// Name: Required. The report's resource name. Specifies the account and report
  4464  	// used to generate report data. The report_id identifier is a UID (for
  4465  	// example, `613bf59q`). Name uses the format:
  4466  	// accounts/{account_id}/reports/{report_id}
  4467  	Name string `json:"name,omitempty"`
  4468  	// ForceSendFields is a list of field names (e.g. "Columns") to unconditionally
  4469  	// include in API requests. By default, fields with empty or default values are
  4470  	// omitted from API requests. See
  4471  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4472  	// details.
  4473  	ForceSendFields []string `json:"-"`
  4474  	// NullFields is a list of field names (e.g. "Columns") to include in API
  4475  	// requests with the JSON null value. By default, fields with empty values are
  4476  	// omitted from API requests. See
  4477  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4478  	NullFields []string `json:"-"`
  4479  }
  4480  
  4481  func (s *GoogleCloudChannelV1alpha1Report) MarshalJSON() ([]byte, error) {
  4482  	type NoMethod GoogleCloudChannelV1alpha1Report
  4483  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4484  }
  4485  
  4486  // GoogleCloudChannelV1alpha1ReportJob: The result of a RunReportJob operation.
  4487  // Contains the name to use in FetchReportResultsRequest.report_job and the
  4488  // status of the operation.
  4489  type GoogleCloudChannelV1alpha1ReportJob struct {
  4490  	// Name: Required. The resource name of a report job. Name uses the format:
  4491  	// `accounts/{account_id}/reportJobs/{report_job_id}`
  4492  	Name string `json:"name,omitempty"`
  4493  	// ReportStatus: The current status of report generation.
  4494  	ReportStatus *GoogleCloudChannelV1alpha1ReportStatus `json:"reportStatus,omitempty"`
  4495  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
  4496  	// include in API requests. By default, fields with empty or default values are
  4497  	// omitted from API requests. See
  4498  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4499  	// details.
  4500  	ForceSendFields []string `json:"-"`
  4501  	// NullFields is a list of field names (e.g. "Name") to include in API requests
  4502  	// with the JSON null value. By default, fields with empty values are omitted
  4503  	// from API requests. See
  4504  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4505  	NullFields []string `json:"-"`
  4506  }
  4507  
  4508  func (s *GoogleCloudChannelV1alpha1ReportJob) MarshalJSON() ([]byte, error) {
  4509  	type NoMethod GoogleCloudChannelV1alpha1ReportJob
  4510  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4511  }
  4512  
  4513  // GoogleCloudChannelV1alpha1ReportResultsMetadata: The features describing the
  4514  // data. Returned by CloudChannelReportsService.RunReportJob and
  4515  // CloudChannelReportsService.FetchReportResults.
  4516  type GoogleCloudChannelV1alpha1ReportResultsMetadata struct {
  4517  	// DateRange: The date range of reported usage.
  4518  	DateRange *GoogleCloudChannelV1alpha1DateRange `json:"dateRange,omitempty"`
  4519  	// PrecedingDateRange: The usage dates immediately preceding `date_range` with
  4520  	// the same duration. Use this to calculate trending usage and costs. This is
  4521  	// only populated if you request trending data. For example, if `date_range` is
  4522  	// July 1-15, `preceding_date_range` will be June 16-30.
  4523  	PrecedingDateRange *GoogleCloudChannelV1alpha1DateRange `json:"precedingDateRange,omitempty"`
  4524  	// Report: Details of the completed report.
  4525  	Report *GoogleCloudChannelV1alpha1Report `json:"report,omitempty"`
  4526  	// RowCount: The total number of rows of data in the final report.
  4527  	RowCount int64 `json:"rowCount,omitempty,string"`
  4528  	// ForceSendFields is a list of field names (e.g. "DateRange") to
  4529  	// unconditionally include in API requests. By default, fields with empty or
  4530  	// default values are omitted from API requests. See
  4531  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4532  	// details.
  4533  	ForceSendFields []string `json:"-"`
  4534  	// NullFields is a list of field names (e.g. "DateRange") to include in API
  4535  	// requests with the JSON null value. By default, fields with empty values are
  4536  	// omitted from API requests. See
  4537  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4538  	NullFields []string `json:"-"`
  4539  }
  4540  
  4541  func (s *GoogleCloudChannelV1alpha1ReportResultsMetadata) MarshalJSON() ([]byte, error) {
  4542  	type NoMethod GoogleCloudChannelV1alpha1ReportResultsMetadata
  4543  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4544  }
  4545  
  4546  // GoogleCloudChannelV1alpha1ReportStatus: Status of a report generation
  4547  // process.
  4548  type GoogleCloudChannelV1alpha1ReportStatus struct {
  4549  	// EndTime: The report generation's completion time.
  4550  	EndTime string `json:"endTime,omitempty"`
  4551  	// StartTime: The report generation's start time.
  4552  	StartTime string `json:"startTime,omitempty"`
  4553  	// State: The current state of the report generation process.
  4554  	//
  4555  	// Possible values:
  4556  	//   "STATE_UNSPECIFIED" - Not used.
  4557  	//   "STARTED" - Report processing started.
  4558  	//   "WRITING" - Data generated from the report is being staged.
  4559  	//   "AVAILABLE" - Report data is available for access.
  4560  	//   "FAILED" - Report failed.
  4561  	State string `json:"state,omitempty"`
  4562  	// ForceSendFields is a list of field names (e.g. "EndTime") to unconditionally
  4563  	// include in API requests. By default, fields with empty or default values are
  4564  	// omitted from API requests. See
  4565  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4566  	// details.
  4567  	ForceSendFields []string `json:"-"`
  4568  	// NullFields is a list of field names (e.g. "EndTime") to include in API
  4569  	// requests with the JSON null value. By default, fields with empty values are
  4570  	// omitted from API requests. See
  4571  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4572  	NullFields []string `json:"-"`
  4573  }
  4574  
  4575  func (s *GoogleCloudChannelV1alpha1ReportStatus) MarshalJSON() ([]byte, error) {
  4576  	type NoMethod GoogleCloudChannelV1alpha1ReportStatus
  4577  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4578  }
  4579  
  4580  // GoogleCloudChannelV1alpha1RunReportJobResponse: Response message for
  4581  // CloudChannelReportsService.RunReportJob.
  4582  type GoogleCloudChannelV1alpha1RunReportJobResponse struct {
  4583  	// ReportJob: Pass `report_job.name` to FetchReportResultsRequest.report_job to
  4584  	// retrieve the report's results.
  4585  	ReportJob *GoogleCloudChannelV1alpha1ReportJob `json:"reportJob,omitempty"`
  4586  	// ReportMetadata: The metadata for the report's results (display name,
  4587  	// columns, row count, and date range). If you view this before the operation
  4588  	// finishes, you may see incomplete data.
  4589  	ReportMetadata *GoogleCloudChannelV1alpha1ReportResultsMetadata `json:"reportMetadata,omitempty"`
  4590  	// ForceSendFields is a list of field names (e.g. "ReportJob") to
  4591  	// unconditionally include in API requests. By default, fields with empty or
  4592  	// default values are omitted from API requests. See
  4593  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4594  	// details.
  4595  	ForceSendFields []string `json:"-"`
  4596  	// NullFields is a list of field names (e.g. "ReportJob") to include in API
  4597  	// requests with the JSON null value. By default, fields with empty values are
  4598  	// omitted from API requests. See
  4599  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4600  	NullFields []string `json:"-"`
  4601  }
  4602  
  4603  func (s *GoogleCloudChannelV1alpha1RunReportJobResponse) MarshalJSON() ([]byte, error) {
  4604  	type NoMethod GoogleCloudChannelV1alpha1RunReportJobResponse
  4605  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4606  }
  4607  
  4608  // GoogleCloudChannelV1alpha1SubscriberEvent: Represents information which
  4609  // resellers will get as part of notification from Pub/Sub.
  4610  type GoogleCloudChannelV1alpha1SubscriberEvent struct {
  4611  	// ChannelPartnerEvent: Channel Partner event sent as part of Pub/Sub event to
  4612  	// partners.
  4613  	ChannelPartnerEvent *GoogleCloudChannelV1alpha1ChannelPartnerEvent `json:"channelPartnerEvent,omitempty"`
  4614  	// CustomerEvent: Customer event sent as part of Pub/Sub event to partners.
  4615  	CustomerEvent *GoogleCloudChannelV1alpha1CustomerEvent `json:"customerEvent,omitempty"`
  4616  	// EntitlementEvent: Entitlement event sent as part of Pub/Sub event to
  4617  	// partners.
  4618  	EntitlementEvent *GoogleCloudChannelV1alpha1EntitlementEvent `json:"entitlementEvent,omitempty"`
  4619  	// ForceSendFields is a list of field names (e.g. "ChannelPartnerEvent") to
  4620  	// unconditionally include in API requests. By default, fields with empty or
  4621  	// default values are omitted from API requests. See
  4622  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4623  	// details.
  4624  	ForceSendFields []string `json:"-"`
  4625  	// NullFields is a list of field names (e.g. "ChannelPartnerEvent") to include
  4626  	// in API requests with the JSON null value. By default, fields with empty
  4627  	// values are omitted from API requests. See
  4628  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4629  	NullFields []string `json:"-"`
  4630  }
  4631  
  4632  func (s *GoogleCloudChannelV1alpha1SubscriberEvent) MarshalJSON() ([]byte, error) {
  4633  	type NoMethod GoogleCloudChannelV1alpha1SubscriberEvent
  4634  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4635  }
  4636  
  4637  // GoogleCloudChannelV1alpha1TransferEntitlementsResponse: Response message for
  4638  // CloudChannelService.TransferEntitlements. This is put in the response field
  4639  // of google.longrunning.Operation.
  4640  type GoogleCloudChannelV1alpha1TransferEntitlementsResponse struct {
  4641  	// Entitlements: The transferred entitlements.
  4642  	Entitlements []*GoogleCloudChannelV1alpha1Entitlement `json:"entitlements,omitempty"`
  4643  	// ForceSendFields is a list of field names (e.g. "Entitlements") to
  4644  	// unconditionally include in API requests. By default, fields with empty or
  4645  	// default values are omitted from API requests. See
  4646  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4647  	// details.
  4648  	ForceSendFields []string `json:"-"`
  4649  	// NullFields is a list of field names (e.g. "Entitlements") to include in API
  4650  	// requests with the JSON null value. By default, fields with empty values are
  4651  	// omitted from API requests. See
  4652  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4653  	NullFields []string `json:"-"`
  4654  }
  4655  
  4656  func (s *GoogleCloudChannelV1alpha1TransferEntitlementsResponse) MarshalJSON() ([]byte, error) {
  4657  	type NoMethod GoogleCloudChannelV1alpha1TransferEntitlementsResponse
  4658  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4659  }
  4660  
  4661  // GoogleCloudChannelV1alpha1TrialSettings: Settings for trial offers.
  4662  type GoogleCloudChannelV1alpha1TrialSettings struct {
  4663  	// EndTime: Date when the trial ends. The value is in milliseconds using the
  4664  	// UNIX Epoch format. See an example Epoch converter
  4665  	// (https://www.epochconverter.com).
  4666  	EndTime string `json:"endTime,omitempty"`
  4667  	// Trial: Determines if the entitlement is in a trial or not: * `true` - The
  4668  	// entitlement is in trial. * `false` - The entitlement is not in trial.
  4669  	Trial bool `json:"trial,omitempty"`
  4670  	// ForceSendFields is a list of field names (e.g. "EndTime") to unconditionally
  4671  	// include in API requests. By default, fields with empty or default values are
  4672  	// omitted from API requests. See
  4673  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4674  	// details.
  4675  	ForceSendFields []string `json:"-"`
  4676  	// NullFields is a list of field names (e.g. "EndTime") to include in API
  4677  	// requests with the JSON null value. By default, fields with empty values are
  4678  	// omitted from API requests. See
  4679  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4680  	NullFields []string `json:"-"`
  4681  }
  4682  
  4683  func (s *GoogleCloudChannelV1alpha1TrialSettings) MarshalJSON() ([]byte, error) {
  4684  	type NoMethod GoogleCloudChannelV1alpha1TrialSettings
  4685  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4686  }
  4687  
  4688  // GoogleCloudChannelV1alpha1Value: Data type and value of a parameter.
  4689  type GoogleCloudChannelV1alpha1Value struct {
  4690  	// BoolValue: Represents a boolean value.
  4691  	BoolValue bool `json:"boolValue,omitempty"`
  4692  	// DoubleValue: Represents a double value.
  4693  	DoubleValue float64 `json:"doubleValue,omitempty"`
  4694  	// Int64Value: Represents an int64 value.
  4695  	Int64Value int64 `json:"int64Value,omitempty,string"`
  4696  	// ProtoValue: Represents an 'Any' proto value.
  4697  	ProtoValue googleapi.RawMessage `json:"protoValue,omitempty"`
  4698  	// StringValue: Represents a string value.
  4699  	StringValue string `json:"stringValue,omitempty"`
  4700  	// ForceSendFields is a list of field names (e.g. "BoolValue") to
  4701  	// unconditionally include in API requests. By default, fields with empty or
  4702  	// default values are omitted from API requests. See
  4703  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4704  	// details.
  4705  	ForceSendFields []string `json:"-"`
  4706  	// NullFields is a list of field names (e.g. "BoolValue") to include in API
  4707  	// requests with the JSON null value. By default, fields with empty values are
  4708  	// omitted from API requests. See
  4709  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4710  	NullFields []string `json:"-"`
  4711  }
  4712  
  4713  func (s *GoogleCloudChannelV1alpha1Value) MarshalJSON() ([]byte, error) {
  4714  	type NoMethod GoogleCloudChannelV1alpha1Value
  4715  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4716  }
  4717  
  4718  func (s *GoogleCloudChannelV1alpha1Value) UnmarshalJSON(data []byte) error {
  4719  	type NoMethod GoogleCloudChannelV1alpha1Value
  4720  	var s1 struct {
  4721  		DoubleValue gensupport.JSONFloat64 `json:"doubleValue"`
  4722  		*NoMethod
  4723  	}
  4724  	s1.NoMethod = (*NoMethod)(s)
  4725  	if err := json.Unmarshal(data, &s1); err != nil {
  4726  		return err
  4727  	}
  4728  	s.DoubleValue = float64(s1.DoubleValue)
  4729  	return nil
  4730  }
  4731  
  4732  // GoogleLongrunningCancelOperationRequest: The request message for
  4733  // Operations.CancelOperation.
  4734  type GoogleLongrunningCancelOperationRequest struct {
  4735  }
  4736  
  4737  // GoogleLongrunningListOperationsResponse: The response message for
  4738  // Operations.ListOperations.
  4739  type GoogleLongrunningListOperationsResponse struct {
  4740  	// NextPageToken: The standard List next-page token.
  4741  	NextPageToken string `json:"nextPageToken,omitempty"`
  4742  	// Operations: A list of operations that matches the specified filter in the
  4743  	// request.
  4744  	Operations []*GoogleLongrunningOperation `json:"operations,omitempty"`
  4745  
  4746  	// ServerResponse contains the HTTP response code and headers from the server.
  4747  	googleapi.ServerResponse `json:"-"`
  4748  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  4749  	// unconditionally include in API requests. By default, fields with empty or
  4750  	// default values are omitted from API requests. See
  4751  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4752  	// details.
  4753  	ForceSendFields []string `json:"-"`
  4754  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  4755  	// requests with the JSON null value. By default, fields with empty values are
  4756  	// omitted from API requests. See
  4757  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4758  	NullFields []string `json:"-"`
  4759  }
  4760  
  4761  func (s *GoogleLongrunningListOperationsResponse) MarshalJSON() ([]byte, error) {
  4762  	type NoMethod GoogleLongrunningListOperationsResponse
  4763  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4764  }
  4765  
  4766  // GoogleLongrunningOperation: This resource represents a long-running
  4767  // operation that is the result of a network API call.
  4768  type GoogleLongrunningOperation struct {
  4769  	// Done: If the value is `false`, it means the operation is still in progress.
  4770  	// If `true`, the operation is completed, and either `error` or `response` is
  4771  	// available.
  4772  	Done bool `json:"done,omitempty"`
  4773  	// Error: The error result of the operation in case of failure or cancellation.
  4774  	Error *GoogleRpcStatus `json:"error,omitempty"`
  4775  	// Metadata: Service-specific metadata associated with the operation. It
  4776  	// typically contains progress information and common metadata such as create
  4777  	// time. Some services might not provide such metadata. Any method that returns
  4778  	// a long-running operation should document the metadata type, if any.
  4779  	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
  4780  	// Name: The server-assigned name, which is only unique within the same service
  4781  	// that originally returns it. If you use the default HTTP mapping, the `name`
  4782  	// should be a resource name ending with `operations/{unique_id}`.
  4783  	Name string `json:"name,omitempty"`
  4784  	// Response: The normal, successful response of the operation. If the original
  4785  	// method returns no data on success, such as `Delete`, the response is
  4786  	// `google.protobuf.Empty`. If the original method is standard
  4787  	// `Get`/`Create`/`Update`, the response should be the resource. For other
  4788  	// methods, the response should have the type `XxxResponse`, where `Xxx` is the
  4789  	// original method name. For example, if the original method name is
  4790  	// `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
  4791  	Response googleapi.RawMessage `json:"response,omitempty"`
  4792  
  4793  	// ServerResponse contains the HTTP response code and headers from the server.
  4794  	googleapi.ServerResponse `json:"-"`
  4795  	// ForceSendFields is a list of field names (e.g. "Done") to unconditionally
  4796  	// include in API requests. By default, fields with empty or default values are
  4797  	// omitted from API requests. See
  4798  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4799  	// details.
  4800  	ForceSendFields []string `json:"-"`
  4801  	// NullFields is a list of field names (e.g. "Done") to include in API requests
  4802  	// with the JSON null value. By default, fields with empty values are omitted
  4803  	// from API requests. See
  4804  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4805  	NullFields []string `json:"-"`
  4806  }
  4807  
  4808  func (s *GoogleLongrunningOperation) MarshalJSON() ([]byte, error) {
  4809  	type NoMethod GoogleLongrunningOperation
  4810  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4811  }
  4812  
  4813  // GoogleProtobufEmpty: A generic empty message that you can re-use to avoid
  4814  // defining duplicated empty messages in your APIs. A typical example is to use
  4815  // it as the request or the response type of an API method. For instance:
  4816  // service Foo { rpc Bar(google.protobuf.Empty) returns
  4817  // (google.protobuf.Empty); }
  4818  type GoogleProtobufEmpty struct {
  4819  	// ServerResponse contains the HTTP response code and headers from the server.
  4820  	googleapi.ServerResponse `json:"-"`
  4821  }
  4822  
  4823  // GoogleRpcStatus: The `Status` type defines a logical error model that is
  4824  // suitable for different programming environments, including REST APIs and RPC
  4825  // APIs. It is used by gRPC (https://github.com/grpc). Each `Status` message
  4826  // contains three pieces of data: error code, error message, and error details.
  4827  // You can find out more about this error model and how to work with it in the
  4828  // API Design Guide (https://cloud.google.com/apis/design/errors).
  4829  type GoogleRpcStatus struct {
  4830  	// Code: The status code, which should be an enum value of google.rpc.Code.
  4831  	Code int64 `json:"code,omitempty"`
  4832  	// Details: A list of messages that carry the error details. There is a common
  4833  	// set of message types for APIs to use.
  4834  	Details []googleapi.RawMessage `json:"details,omitempty"`
  4835  	// Message: A developer-facing error message, which should be in English. Any
  4836  	// user-facing error message should be localized and sent in the
  4837  	// google.rpc.Status.details field, or localized by the client.
  4838  	Message string `json:"message,omitempty"`
  4839  	// ForceSendFields is a list of field names (e.g. "Code") to unconditionally
  4840  	// include in API requests. By default, fields with empty or default values are
  4841  	// omitted from API requests. See
  4842  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4843  	// details.
  4844  	ForceSendFields []string `json:"-"`
  4845  	// NullFields is a list of field names (e.g. "Code") to include in API requests
  4846  	// with the JSON null value. By default, fields with empty values are omitted
  4847  	// from API requests. See
  4848  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4849  	NullFields []string `json:"-"`
  4850  }
  4851  
  4852  func (s *GoogleRpcStatus) MarshalJSON() ([]byte, error) {
  4853  	type NoMethod GoogleRpcStatus
  4854  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4855  }
  4856  
  4857  // GoogleTypeDate: Represents a whole or partial calendar date, such as a
  4858  // birthday. The time of day and time zone are either specified elsewhere or
  4859  // are insignificant. The date is relative to the Gregorian Calendar. This can
  4860  // represent one of the following: * A full date, with non-zero year, month,
  4861  // and day values. * A month and day, with a zero year (for example, an
  4862  // anniversary). * A year on its own, with a zero month and a zero day. * A
  4863  // year and month, with a zero day (for example, a credit card expiration
  4864  // date). Related types: * google.type.TimeOfDay * google.type.DateTime *
  4865  // google.protobuf.Timestamp
  4866  type GoogleTypeDate struct {
  4867  	// Day: Day of a month. Must be from 1 to 31 and valid for the year and month,
  4868  	// or 0 to specify a year by itself or a year and month where the day isn't
  4869  	// significant.
  4870  	Day int64 `json:"day,omitempty"`
  4871  	// Month: Month of a year. Must be from 1 to 12, or 0 to specify a year without
  4872  	// a month and day.
  4873  	Month int64 `json:"month,omitempty"`
  4874  	// Year: Year of the date. Must be from 1 to 9999, or 0 to specify a date
  4875  	// without a year.
  4876  	Year int64 `json:"year,omitempty"`
  4877  	// ForceSendFields is a list of field names (e.g. "Day") to unconditionally
  4878  	// include in API requests. By default, fields with empty or default values are
  4879  	// omitted from API requests. See
  4880  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4881  	// details.
  4882  	ForceSendFields []string `json:"-"`
  4883  	// NullFields is a list of field names (e.g. "Day") to include in API requests
  4884  	// with the JSON null value. By default, fields with empty values are omitted
  4885  	// from API requests. See
  4886  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4887  	NullFields []string `json:"-"`
  4888  }
  4889  
  4890  func (s *GoogleTypeDate) MarshalJSON() ([]byte, error) {
  4891  	type NoMethod GoogleTypeDate
  4892  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4893  }
  4894  
  4895  // GoogleTypeDateTime: Represents civil time (or occasionally physical time).
  4896  // This type can represent a civil time in one of a few possible ways: * When
  4897  // utc_offset is set and time_zone is unset: a civil time on a calendar day
  4898  // with a particular offset from UTC. * When time_zone is set and utc_offset is
  4899  // unset: a civil time on a calendar day in a particular time zone. * When
  4900  // neither time_zone nor utc_offset is set: a civil time on a calendar day in
  4901  // local time. The date is relative to the Proleptic Gregorian Calendar. If
  4902  // year, month, or day are 0, the DateTime is considered not to have a specific
  4903  // year, month, or day respectively. This type may also be used to represent a
  4904  // physical time if all the date and time fields are set and either case of the
  4905  // `time_offset` oneof is set. Consider using `Timestamp` message for physical
  4906  // time instead. If your use case also would like to store the user's timezone,
  4907  // that can be done in another field. This type is more flexible than some
  4908  // applications may want. Make sure to document and validate your application's
  4909  // limitations.
  4910  type GoogleTypeDateTime struct {
  4911  	// Day: Optional. Day of month. Must be from 1 to 31 and valid for the year and
  4912  	// month, or 0 if specifying a datetime without a day.
  4913  	Day int64 `json:"day,omitempty"`
  4914  	// Hours: Optional. Hours of day in 24 hour format. Should be from 0 to 23,
  4915  	// defaults to 0 (midnight). An API may choose to allow the value "24:00:00"
  4916  	// for scenarios like business closing time.
  4917  	Hours int64 `json:"hours,omitempty"`
  4918  	// Minutes: Optional. Minutes of hour of day. Must be from 0 to 59, defaults to
  4919  	// 0.
  4920  	Minutes int64 `json:"minutes,omitempty"`
  4921  	// Month: Optional. Month of year. Must be from 1 to 12, or 0 if specifying a
  4922  	// datetime without a month.
  4923  	Month int64 `json:"month,omitempty"`
  4924  	// Nanos: Optional. Fractions of seconds in nanoseconds. Must be from 0 to
  4925  	// 999,999,999, defaults to 0.
  4926  	Nanos int64 `json:"nanos,omitempty"`
  4927  	// Seconds: Optional. Seconds of minutes of the time. Must normally be from 0
  4928  	// to 59, defaults to 0. An API may allow the value 60 if it allows
  4929  	// leap-seconds.
  4930  	Seconds int64 `json:"seconds,omitempty"`
  4931  	// TimeZone: Time zone.
  4932  	TimeZone *GoogleTypeTimeZone `json:"timeZone,omitempty"`
  4933  	// UtcOffset: UTC offset. Must be whole seconds, between -18 hours and +18
  4934  	// hours. For example, a UTC offset of -4:00 would be represented as { seconds:
  4935  	// -14400 }.
  4936  	UtcOffset string `json:"utcOffset,omitempty"`
  4937  	// Year: Optional. Year of date. Must be from 1 to 9999, or 0 if specifying a
  4938  	// datetime without a year.
  4939  	Year int64 `json:"year,omitempty"`
  4940  	// ForceSendFields is a list of field names (e.g. "Day") to unconditionally
  4941  	// include in API requests. By default, fields with empty or default values are
  4942  	// omitted from API requests. See
  4943  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4944  	// details.
  4945  	ForceSendFields []string `json:"-"`
  4946  	// NullFields is a list of field names (e.g. "Day") to include in API requests
  4947  	// with the JSON null value. By default, fields with empty values are omitted
  4948  	// from API requests. See
  4949  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4950  	NullFields []string `json:"-"`
  4951  }
  4952  
  4953  func (s *GoogleTypeDateTime) MarshalJSON() ([]byte, error) {
  4954  	type NoMethod GoogleTypeDateTime
  4955  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4956  }
  4957  
  4958  // GoogleTypeDecimal: A representation of a decimal value, such as 2.5. Clients
  4959  // may convert values into language-native decimal formats, such as Java's
  4960  // BigDecimal or Python's decimal.Decimal. [BigDecimal]:
  4961  // https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/math/BigDecimal.html
  4962  // [decimal.Decimal]: https://docs.python.org/3/library/decimal.html
  4963  type GoogleTypeDecimal struct {
  4964  	// Value: The decimal value, as a string. The string representation consists of
  4965  	// an optional sign, `+` (`U+002B`) or `-` (`U+002D`), followed by a sequence
  4966  	// of zero or more decimal digits ("the integer"), optionally followed by a
  4967  	// fraction, optionally followed by an exponent. An empty string **should** be
  4968  	// interpreted as `0`. The fraction consists of a decimal point followed by
  4969  	// zero or more decimal digits. The string must contain at least one digit in
  4970  	// either the integer or the fraction. The number formed by the sign, the
  4971  	// integer and the fraction is referred to as the significand. The exponent
  4972  	// consists of the character `e` (`U+0065`) or `E` (`U+0045`) followed by one
  4973  	// or more decimal digits. Services **should** normalize decimal values before
  4974  	// storing them by: - Removing an explicitly-provided `+` sign (`+2.5` ->
  4975  	// `2.5`). - Replacing a zero-length integer value with `0` (`.5` -> `0.5`). -
  4976  	// Coercing the exponent character to upper-case, with explicit sign (`2.5e8`
  4977  	// -> `2.5E+8`). - Removing an explicitly-provided zero exponent (`2.5E0` ->
  4978  	// `2.5`). Services **may** perform additional normalization based on its own
  4979  	// needs and the internal decimal implementation selected, such as shifting the
  4980  	// decimal point and exponent value together (example: `2.5E-1` <-> `0.25`).
  4981  	// Additionally, services **may** preserve trailing zeroes in the fraction to
  4982  	// indicate increased precision, but are not required to do so. Note that only
  4983  	// the `.` character is supported to divide the integer and the fraction; `,`
  4984  	// **should not** be supported regardless of locale. Additionally, thousand
  4985  	// separators **should not** be supported. If a service does support them,
  4986  	// values **must** be normalized. The ENBF grammar is: DecimalString = '' |
  4987  	// [Sign] Significand [Exponent]; Sign = '+' | '-'; Significand = Digits '.' |
  4988  	// [Digits] '.' Digits; Exponent = ('e' | 'E') [Sign] Digits; Digits = { '0' |
  4989  	// '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' }; Services **should**
  4990  	// clearly document the range of supported values, the maximum supported
  4991  	// precision (total number of digits), and, if applicable, the scale (number of
  4992  	// digits after the decimal point), as well as how it behaves when receiving
  4993  	// out-of-bounds values. Services **may** choose to accept values passed as
  4994  	// input even when the value has a higher precision or scale than the service
  4995  	// supports, and **should** round the value to fit the supported scale.
  4996  	// Alternatively, the service **may** error with `400 Bad Request`
  4997  	// (`INVALID_ARGUMENT` in gRPC) if precision would be lost. Services **should**
  4998  	// error with `400 Bad Request` (`INVALID_ARGUMENT` in gRPC) if the service
  4999  	// receives a value outside of the supported range.
  5000  	Value string `json:"value,omitempty"`
  5001  	// ForceSendFields is a list of field names (e.g. "Value") to unconditionally
  5002  	// include in API requests. By default, fields with empty or default values are
  5003  	// omitted from API requests. See
  5004  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5005  	// details.
  5006  	ForceSendFields []string `json:"-"`
  5007  	// NullFields is a list of field names (e.g. "Value") to include in API
  5008  	// requests with the JSON null value. By default, fields with empty values are
  5009  	// omitted from API requests. See
  5010  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5011  	NullFields []string `json:"-"`
  5012  }
  5013  
  5014  func (s *GoogleTypeDecimal) MarshalJSON() ([]byte, error) {
  5015  	type NoMethod GoogleTypeDecimal
  5016  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5017  }
  5018  
  5019  // GoogleTypeMoney: Represents an amount of money with its currency type.
  5020  type GoogleTypeMoney struct {
  5021  	// CurrencyCode: The three-letter currency code defined in ISO 4217.
  5022  	CurrencyCode string `json:"currencyCode,omitempty"`
  5023  	// Nanos: Number of nano (10^-9) units of the amount. The value must be between
  5024  	// -999,999,999 and +999,999,999 inclusive. If `units` is positive, `nanos`
  5025  	// must be positive or zero. If `units` is zero, `nanos` can be positive, zero,
  5026  	// or negative. If `units` is negative, `nanos` must be negative or zero. For
  5027  	// example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
  5028  	Nanos int64 `json:"nanos,omitempty"`
  5029  	// Units: The whole units of the amount. For example if `currencyCode` is
  5030  	// "USD", then 1 unit is one US dollar.
  5031  	Units int64 `json:"units,omitempty,string"`
  5032  	// ForceSendFields is a list of field names (e.g. "CurrencyCode") to
  5033  	// unconditionally include in API requests. By default, fields with empty or
  5034  	// default values are omitted from API requests. See
  5035  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5036  	// details.
  5037  	ForceSendFields []string `json:"-"`
  5038  	// NullFields is a list of field names (e.g. "CurrencyCode") to include in API
  5039  	// requests with the JSON null value. By default, fields with empty values are
  5040  	// omitted from API requests. See
  5041  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5042  	NullFields []string `json:"-"`
  5043  }
  5044  
  5045  func (s *GoogleTypeMoney) MarshalJSON() ([]byte, error) {
  5046  	type NoMethod GoogleTypeMoney
  5047  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5048  }
  5049  
  5050  // GoogleTypePostalAddress: Represents a postal address, e.g. for postal
  5051  // delivery or payments addresses. Given a postal address, a postal service can
  5052  // deliver items to a premise, P.O. Box or similar. It is not intended to model
  5053  // geographical locations (roads, towns, mountains). In typical usage an
  5054  // address would be created via user input or from importing existing data,
  5055  // depending on the type of process. Advice on address input / editing: - Use
  5056  // an internationalization-ready address widget such as
  5057  // https://github.com/google/libaddressinput) - Users should not be presented
  5058  // with UI elements for input or editing of fields outside countries where that
  5059  // field is used. For more guidance on how to use this schema, please see:
  5060  // https://support.google.com/business/answer/6397478
  5061  type GoogleTypePostalAddress struct {
  5062  	// AddressLines: Unstructured address lines describing the lower levels of an
  5063  	// address. Because values in address_lines do not have type information and
  5064  	// may sometimes contain multiple values in a single field (e.g. "Austin, TX"),
  5065  	// it is important that the line order is clear. The order of address lines
  5066  	// should be "envelope order" for the country/region of the address. In places
  5067  	// where this can vary (e.g. Japan), address_language is used to make it
  5068  	// explicit (e.g. "ja" for large-to-small ordering and "ja-Latn" or "en" for
  5069  	// small-to-large). This way, the most specific line of an address can be
  5070  	// selected based on the language. The minimum permitted structural
  5071  	// representation of an address consists of a region_code with all remaining
  5072  	// information placed in the address_lines. It would be possible to format such
  5073  	// an address very approximately without geocoding, but no semantic reasoning
  5074  	// could be made about any of the address components until it was at least
  5075  	// partially resolved. Creating an address only containing a region_code and
  5076  	// address_lines, and then geocoding is the recommended way to handle
  5077  	// completely unstructured addresses (as opposed to guessing which parts of the
  5078  	// address should be localities or administrative areas).
  5079  	AddressLines []string `json:"addressLines,omitempty"`
  5080  	// AdministrativeArea: Optional. Highest administrative subdivision which is
  5081  	// used for postal addresses of a country or region. For example, this can be a
  5082  	// state, a province, an oblast, or a prefecture. Specifically, for Spain this
  5083  	// is the province and not the autonomous community (e.g. "Barcelona" and not
  5084  	// "Catalonia"). Many countries don't use an administrative area in postal
  5085  	// addresses. E.g. in Switzerland this should be left unpopulated.
  5086  	AdministrativeArea string `json:"administrativeArea,omitempty"`
  5087  	// LanguageCode: Optional. BCP-47 language code of the contents of this address
  5088  	// (if known). This is often the UI language of the input form or is expected
  5089  	// to match one of the languages used in the address' country/region, or their
  5090  	// transliterated equivalents. This can affect formatting in certain countries,
  5091  	// but is not critical to the correctness of the data and will never affect any
  5092  	// validation or other non-formatting related operations. If this value is not
  5093  	// known, it should be omitted (rather than specifying a possibly incorrect
  5094  	// default). Examples: "zh-Hant", "ja", "ja-Latn", "en".
  5095  	LanguageCode string `json:"languageCode,omitempty"`
  5096  	// Locality: Optional. Generally refers to the city/town portion of the
  5097  	// address. Examples: US city, IT comune, UK post town. In regions of the world
  5098  	// where localities are not well defined or do not fit into this structure
  5099  	// well, leave locality empty and use address_lines.
  5100  	Locality string `json:"locality,omitempty"`
  5101  	// Organization: Optional. The name of the organization at the address.
  5102  	Organization string `json:"organization,omitempty"`
  5103  	// PostalCode: Optional. Postal code of the address. Not all countries use or
  5104  	// require postal codes to be present, but where they are used, they may
  5105  	// trigger additional validation with other parts of the address (e.g.
  5106  	// state/zip validation in the U.S.A.).
  5107  	PostalCode string `json:"postalCode,omitempty"`
  5108  	// Recipients: Optional. The recipient at the address. This field may, under
  5109  	// certain circumstances, contain multiline information. For example, it might
  5110  	// contain "care of" information.
  5111  	Recipients []string `json:"recipients,omitempty"`
  5112  	// RegionCode: Required. CLDR region code of the country/region of the address.
  5113  	// This is never inferred and it is up to the user to ensure the value is
  5114  	// correct. See https://cldr.unicode.org/ and
  5115  	// https://www.unicode.org/cldr/charts/30/supplemental/territory_information.html
  5116  	// for details. Example: "CH" for Switzerland.
  5117  	RegionCode string `json:"regionCode,omitempty"`
  5118  	// Revision: The schema revision of the `PostalAddress`. This must be set to 0,
  5119  	// which is the latest revision. All new revisions **must** be backward
  5120  	// compatible with old revisions.
  5121  	Revision int64 `json:"revision,omitempty"`
  5122  	// SortingCode: Optional. Additional, country-specific, sorting code. This is
  5123  	// not used in most regions. Where it is used, the value is either a string
  5124  	// like "CEDEX", optionally followed by a number (e.g. "CEDEX 7"), or just a
  5125  	// number alone, representing the "sector code" (Jamaica), "delivery area
  5126  	// indicator" (Malawi) or "post office indicator" (e.g. Côte d'Ivoire).
  5127  	SortingCode string `json:"sortingCode,omitempty"`
  5128  	// Sublocality: Optional. Sublocality of the address. For example, this can be
  5129  	// neighborhoods, boroughs, districts.
  5130  	Sublocality string `json:"sublocality,omitempty"`
  5131  	// ForceSendFields is a list of field names (e.g. "AddressLines") to
  5132  	// unconditionally include in API requests. By default, fields with empty or
  5133  	// default values are omitted from API requests. See
  5134  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5135  	// details.
  5136  	ForceSendFields []string `json:"-"`
  5137  	// NullFields is a list of field names (e.g. "AddressLines") to include in API
  5138  	// requests with the JSON null value. By default, fields with empty values are
  5139  	// omitted from API requests. See
  5140  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5141  	NullFields []string `json:"-"`
  5142  }
  5143  
  5144  func (s *GoogleTypePostalAddress) MarshalJSON() ([]byte, error) {
  5145  	type NoMethod GoogleTypePostalAddress
  5146  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5147  }
  5148  
  5149  // GoogleTypeTimeZone: Represents a time zone from the IANA Time Zone Database
  5150  // (https://www.iana.org/time-zones).
  5151  type GoogleTypeTimeZone struct {
  5152  	// Id: IANA Time Zone Database time zone, e.g. "America/New_York".
  5153  	Id string `json:"id,omitempty"`
  5154  	// Version: Optional. IANA Time Zone Database version number, e.g. "2019a".
  5155  	Version string `json:"version,omitempty"`
  5156  	// ForceSendFields is a list of field names (e.g. "Id") to unconditionally
  5157  	// include in API requests. By default, fields with empty or default values are
  5158  	// omitted from API requests. See
  5159  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5160  	// details.
  5161  	ForceSendFields []string `json:"-"`
  5162  	// NullFields is a list of field names (e.g. "Id") to include in API requests
  5163  	// with the JSON null value. By default, fields with empty values are omitted
  5164  	// from API requests. See
  5165  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5166  	NullFields []string `json:"-"`
  5167  }
  5168  
  5169  func (s *GoogleTypeTimeZone) MarshalJSON() ([]byte, error) {
  5170  	type NoMethod GoogleTypeTimeZone
  5171  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5172  }
  5173  
  5174  type AccountsCheckCloudIdentityAccountsExistCall struct {
  5175  	s                                                          *Service
  5176  	parent                                                     string
  5177  	googlecloudchannelv1checkcloudidentityaccountsexistrequest *GoogleCloudChannelV1CheckCloudIdentityAccountsExistRequest
  5178  	urlParams_                                                 gensupport.URLParams
  5179  	ctx_                                                       context.Context
  5180  	header_                                                    http.Header
  5181  }
  5182  
  5183  // CheckCloudIdentityAccountsExist: Confirms the existence of Cloud Identity
  5184  // accounts based on the domain and if the Cloud Identity accounts are owned by
  5185  // the reseller. Possible error codes: * PERMISSION_DENIED: The reseller
  5186  // account making the request is different from the reseller account in the API
  5187  // request. * INVALID_ARGUMENT: Required request parameters are missing or
  5188  // invalid. * INVALID_VALUE: Invalid domain value in the request. Return value:
  5189  // A list of CloudIdentityCustomerAccount resources for the domain (may be
  5190  // empty) Note: in the v1alpha1 version of the API, a NOT_FOUND error returns
  5191  // if no CloudIdentityCustomerAccount resources match the domain.
  5192  //
  5193  //   - parent: The reseller account's resource name. Parent uses the format:
  5194  //     accounts/{account_id}.
  5195  func (r *AccountsService) CheckCloudIdentityAccountsExist(parent string, googlecloudchannelv1checkcloudidentityaccountsexistrequest *GoogleCloudChannelV1CheckCloudIdentityAccountsExistRequest) *AccountsCheckCloudIdentityAccountsExistCall {
  5196  	c := &AccountsCheckCloudIdentityAccountsExistCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5197  	c.parent = parent
  5198  	c.googlecloudchannelv1checkcloudidentityaccountsexistrequest = googlecloudchannelv1checkcloudidentityaccountsexistrequest
  5199  	return c
  5200  }
  5201  
  5202  // Fields allows partial responses to be retrieved. See
  5203  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5204  // details.
  5205  func (c *AccountsCheckCloudIdentityAccountsExistCall) Fields(s ...googleapi.Field) *AccountsCheckCloudIdentityAccountsExistCall {
  5206  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5207  	return c
  5208  }
  5209  
  5210  // Context sets the context to be used in this call's Do method.
  5211  func (c *AccountsCheckCloudIdentityAccountsExistCall) Context(ctx context.Context) *AccountsCheckCloudIdentityAccountsExistCall {
  5212  	c.ctx_ = ctx
  5213  	return c
  5214  }
  5215  
  5216  // Header returns a http.Header that can be modified by the caller to add
  5217  // headers to the request.
  5218  func (c *AccountsCheckCloudIdentityAccountsExistCall) Header() http.Header {
  5219  	if c.header_ == nil {
  5220  		c.header_ = make(http.Header)
  5221  	}
  5222  	return c.header_
  5223  }
  5224  
  5225  func (c *AccountsCheckCloudIdentityAccountsExistCall) doRequest(alt string) (*http.Response, error) {
  5226  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  5227  	var body io.Reader = nil
  5228  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudchannelv1checkcloudidentityaccountsexistrequest)
  5229  	if err != nil {
  5230  		return nil, err
  5231  	}
  5232  	c.urlParams_.Set("alt", alt)
  5233  	c.urlParams_.Set("prettyPrint", "false")
  5234  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}:checkCloudIdentityAccountsExist")
  5235  	urls += "?" + c.urlParams_.Encode()
  5236  	req, err := http.NewRequest("POST", urls, body)
  5237  	if err != nil {
  5238  		return nil, err
  5239  	}
  5240  	req.Header = reqHeaders
  5241  	googleapi.Expand(req.URL, map[string]string{
  5242  		"parent": c.parent,
  5243  	})
  5244  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5245  }
  5246  
  5247  // Do executes the "cloudchannel.accounts.checkCloudIdentityAccountsExist" call.
  5248  // Any non-2xx status code is an error. Response headers are in either
  5249  // *GoogleCloudChannelV1CheckCloudIdentityAccountsExistResponse.ServerResponse.H
  5250  // eader or (if a response was returned at all) in
  5251  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  5252  // whether the returned error was because http.StatusNotModified was returned.
  5253  func (c *AccountsCheckCloudIdentityAccountsExistCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1CheckCloudIdentityAccountsExistResponse, error) {
  5254  	gensupport.SetOptions(c.urlParams_, opts...)
  5255  	res, err := c.doRequest("json")
  5256  	if res != nil && res.StatusCode == http.StatusNotModified {
  5257  		if res.Body != nil {
  5258  			res.Body.Close()
  5259  		}
  5260  		return nil, gensupport.WrapError(&googleapi.Error{
  5261  			Code:   res.StatusCode,
  5262  			Header: res.Header,
  5263  		})
  5264  	}
  5265  	if err != nil {
  5266  		return nil, err
  5267  	}
  5268  	defer googleapi.CloseBody(res)
  5269  	if err := googleapi.CheckResponse(res); err != nil {
  5270  		return nil, gensupport.WrapError(err)
  5271  	}
  5272  	ret := &GoogleCloudChannelV1CheckCloudIdentityAccountsExistResponse{
  5273  		ServerResponse: googleapi.ServerResponse{
  5274  			Header:         res.Header,
  5275  			HTTPStatusCode: res.StatusCode,
  5276  		},
  5277  	}
  5278  	target := &ret
  5279  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5280  		return nil, err
  5281  	}
  5282  	return ret, nil
  5283  }
  5284  
  5285  type AccountsListSubscribersCall struct {
  5286  	s            *Service
  5287  	account      string
  5288  	urlParams_   gensupport.URLParams
  5289  	ifNoneMatch_ string
  5290  	ctx_         context.Context
  5291  	header_      http.Header
  5292  }
  5293  
  5294  // ListSubscribers: Lists service accounts with subscriber privileges on the
  5295  // Cloud Pub/Sub topic created for this Channel Services account. Possible
  5296  // error codes: * PERMISSION_DENIED: The reseller account making the request
  5297  // and the provided reseller account are different, or the impersonated user is
  5298  // not a super admin. * INVALID_ARGUMENT: Required request parameters are
  5299  // missing or invalid. * NOT_FOUND: The topic resource doesn't exist. *
  5300  // INTERNAL: Any non-user error related to a technical issue in the backend.
  5301  // Contact Cloud Channel support. * UNKNOWN: Any non-user error related to a
  5302  // technical issue in the backend. Contact Cloud Channel support. Return value:
  5303  // A list of service email addresses.
  5304  //
  5305  // - account: Resource name of the account.
  5306  func (r *AccountsService) ListSubscribers(account string) *AccountsListSubscribersCall {
  5307  	c := &AccountsListSubscribersCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5308  	c.account = account
  5309  	return c
  5310  }
  5311  
  5312  // PageSize sets the optional parameter "pageSize": The maximum number of
  5313  // service accounts to return. The service may return fewer than this value. If
  5314  // unspecified, returns at most 100 service accounts. The maximum value is
  5315  // 1000; the server will coerce values above 1000.
  5316  func (c *AccountsListSubscribersCall) PageSize(pageSize int64) *AccountsListSubscribersCall {
  5317  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  5318  	return c
  5319  }
  5320  
  5321  // PageToken sets the optional parameter "pageToken": A page token, received
  5322  // from a previous `ListSubscribers` call. Provide this to retrieve the
  5323  // subsequent page. When paginating, all other parameters provided to
  5324  // `ListSubscribers` must match the call that provided the page token.
  5325  func (c *AccountsListSubscribersCall) PageToken(pageToken string) *AccountsListSubscribersCall {
  5326  	c.urlParams_.Set("pageToken", pageToken)
  5327  	return c
  5328  }
  5329  
  5330  // Fields allows partial responses to be retrieved. See
  5331  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5332  // details.
  5333  func (c *AccountsListSubscribersCall) Fields(s ...googleapi.Field) *AccountsListSubscribersCall {
  5334  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5335  	return c
  5336  }
  5337  
  5338  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  5339  // object's ETag matches the given value. This is useful for getting updates
  5340  // only after the object has changed since the last request.
  5341  func (c *AccountsListSubscribersCall) IfNoneMatch(entityTag string) *AccountsListSubscribersCall {
  5342  	c.ifNoneMatch_ = entityTag
  5343  	return c
  5344  }
  5345  
  5346  // Context sets the context to be used in this call's Do method.
  5347  func (c *AccountsListSubscribersCall) Context(ctx context.Context) *AccountsListSubscribersCall {
  5348  	c.ctx_ = ctx
  5349  	return c
  5350  }
  5351  
  5352  // Header returns a http.Header that can be modified by the caller to add
  5353  // headers to the request.
  5354  func (c *AccountsListSubscribersCall) Header() http.Header {
  5355  	if c.header_ == nil {
  5356  		c.header_ = make(http.Header)
  5357  	}
  5358  	return c.header_
  5359  }
  5360  
  5361  func (c *AccountsListSubscribersCall) doRequest(alt string) (*http.Response, error) {
  5362  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  5363  	if c.ifNoneMatch_ != "" {
  5364  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  5365  	}
  5366  	var body io.Reader = nil
  5367  	c.urlParams_.Set("alt", alt)
  5368  	c.urlParams_.Set("prettyPrint", "false")
  5369  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+account}:listSubscribers")
  5370  	urls += "?" + c.urlParams_.Encode()
  5371  	req, err := http.NewRequest("GET", urls, body)
  5372  	if err != nil {
  5373  		return nil, err
  5374  	}
  5375  	req.Header = reqHeaders
  5376  	googleapi.Expand(req.URL, map[string]string{
  5377  		"account": c.account,
  5378  	})
  5379  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5380  }
  5381  
  5382  // Do executes the "cloudchannel.accounts.listSubscribers" call.
  5383  // Any non-2xx status code is an error. Response headers are in either
  5384  // *GoogleCloudChannelV1ListSubscribersResponse.ServerResponse.Header or (if a
  5385  // response was returned at all) in error.(*googleapi.Error).Header. Use
  5386  // googleapi.IsNotModified to check whether the returned error was because
  5387  // http.StatusNotModified was returned.
  5388  func (c *AccountsListSubscribersCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1ListSubscribersResponse, error) {
  5389  	gensupport.SetOptions(c.urlParams_, opts...)
  5390  	res, err := c.doRequest("json")
  5391  	if res != nil && res.StatusCode == http.StatusNotModified {
  5392  		if res.Body != nil {
  5393  			res.Body.Close()
  5394  		}
  5395  		return nil, gensupport.WrapError(&googleapi.Error{
  5396  			Code:   res.StatusCode,
  5397  			Header: res.Header,
  5398  		})
  5399  	}
  5400  	if err != nil {
  5401  		return nil, err
  5402  	}
  5403  	defer googleapi.CloseBody(res)
  5404  	if err := googleapi.CheckResponse(res); err != nil {
  5405  		return nil, gensupport.WrapError(err)
  5406  	}
  5407  	ret := &GoogleCloudChannelV1ListSubscribersResponse{
  5408  		ServerResponse: googleapi.ServerResponse{
  5409  			Header:         res.Header,
  5410  			HTTPStatusCode: res.StatusCode,
  5411  		},
  5412  	}
  5413  	target := &ret
  5414  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5415  		return nil, err
  5416  	}
  5417  	return ret, nil
  5418  }
  5419  
  5420  // Pages invokes f for each page of results.
  5421  // A non-nil error returned from f will halt the iteration.
  5422  // The provided context supersedes any context provided to the Context method.
  5423  func (c *AccountsListSubscribersCall) Pages(ctx context.Context, f func(*GoogleCloudChannelV1ListSubscribersResponse) error) error {
  5424  	c.ctx_ = ctx
  5425  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  5426  	for {
  5427  		x, err := c.Do()
  5428  		if err != nil {
  5429  			return err
  5430  		}
  5431  		if err := f(x); err != nil {
  5432  			return err
  5433  		}
  5434  		if x.NextPageToken == "" {
  5435  			return nil
  5436  		}
  5437  		c.PageToken(x.NextPageToken)
  5438  	}
  5439  }
  5440  
  5441  type AccountsListTransferableOffersCall struct {
  5442  	s                                                 *Service
  5443  	parent                                            string
  5444  	googlecloudchannelv1listtransferableoffersrequest *GoogleCloudChannelV1ListTransferableOffersRequest
  5445  	urlParams_                                        gensupport.URLParams
  5446  	ctx_                                              context.Context
  5447  	header_                                           http.Header
  5448  }
  5449  
  5450  // ListTransferableOffers: List TransferableOffers of a customer based on Cloud
  5451  // Identity ID or Customer Name in the request. Use this method when a reseller
  5452  // gets the entitlement information of an unowned customer. The reseller should
  5453  // provide the customer's Cloud Identity ID or Customer Name. Possible error
  5454  // codes: * PERMISSION_DENIED: * The customer doesn't belong to the reseller
  5455  // and has no auth token. * The customer provided incorrect reseller
  5456  // information when generating auth token. * The reseller account making the
  5457  // request is different from the reseller account in the query. * The reseller
  5458  // is not authorized to transact on this Product. See
  5459  // https://support.google.com/channelservices/answer/9759265 *
  5460  // INVALID_ARGUMENT: Required request parameters are missing or invalid. Return
  5461  // value: List of TransferableOffer for the given customer and SKU.
  5462  //
  5463  // - parent: The resource name of the reseller's account.
  5464  func (r *AccountsService) ListTransferableOffers(parent string, googlecloudchannelv1listtransferableoffersrequest *GoogleCloudChannelV1ListTransferableOffersRequest) *AccountsListTransferableOffersCall {
  5465  	c := &AccountsListTransferableOffersCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5466  	c.parent = parent
  5467  	c.googlecloudchannelv1listtransferableoffersrequest = googlecloudchannelv1listtransferableoffersrequest
  5468  	return c
  5469  }
  5470  
  5471  // Fields allows partial responses to be retrieved. See
  5472  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5473  // details.
  5474  func (c *AccountsListTransferableOffersCall) Fields(s ...googleapi.Field) *AccountsListTransferableOffersCall {
  5475  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5476  	return c
  5477  }
  5478  
  5479  // Context sets the context to be used in this call's Do method.
  5480  func (c *AccountsListTransferableOffersCall) Context(ctx context.Context) *AccountsListTransferableOffersCall {
  5481  	c.ctx_ = ctx
  5482  	return c
  5483  }
  5484  
  5485  // Header returns a http.Header that can be modified by the caller to add
  5486  // headers to the request.
  5487  func (c *AccountsListTransferableOffersCall) Header() http.Header {
  5488  	if c.header_ == nil {
  5489  		c.header_ = make(http.Header)
  5490  	}
  5491  	return c.header_
  5492  }
  5493  
  5494  func (c *AccountsListTransferableOffersCall) doRequest(alt string) (*http.Response, error) {
  5495  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  5496  	var body io.Reader = nil
  5497  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudchannelv1listtransferableoffersrequest)
  5498  	if err != nil {
  5499  		return nil, err
  5500  	}
  5501  	c.urlParams_.Set("alt", alt)
  5502  	c.urlParams_.Set("prettyPrint", "false")
  5503  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}:listTransferableOffers")
  5504  	urls += "?" + c.urlParams_.Encode()
  5505  	req, err := http.NewRequest("POST", urls, body)
  5506  	if err != nil {
  5507  		return nil, err
  5508  	}
  5509  	req.Header = reqHeaders
  5510  	googleapi.Expand(req.URL, map[string]string{
  5511  		"parent": c.parent,
  5512  	})
  5513  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5514  }
  5515  
  5516  // Do executes the "cloudchannel.accounts.listTransferableOffers" call.
  5517  // Any non-2xx status code is an error. Response headers are in either
  5518  // *GoogleCloudChannelV1ListTransferableOffersResponse.ServerResponse.Header or
  5519  // (if a response was returned at all) in error.(*googleapi.Error).Header. Use
  5520  // googleapi.IsNotModified to check whether the returned error was because
  5521  // http.StatusNotModified was returned.
  5522  func (c *AccountsListTransferableOffersCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1ListTransferableOffersResponse, error) {
  5523  	gensupport.SetOptions(c.urlParams_, opts...)
  5524  	res, err := c.doRequest("json")
  5525  	if res != nil && res.StatusCode == http.StatusNotModified {
  5526  		if res.Body != nil {
  5527  			res.Body.Close()
  5528  		}
  5529  		return nil, gensupport.WrapError(&googleapi.Error{
  5530  			Code:   res.StatusCode,
  5531  			Header: res.Header,
  5532  		})
  5533  	}
  5534  	if err != nil {
  5535  		return nil, err
  5536  	}
  5537  	defer googleapi.CloseBody(res)
  5538  	if err := googleapi.CheckResponse(res); err != nil {
  5539  		return nil, gensupport.WrapError(err)
  5540  	}
  5541  	ret := &GoogleCloudChannelV1ListTransferableOffersResponse{
  5542  		ServerResponse: googleapi.ServerResponse{
  5543  			Header:         res.Header,
  5544  			HTTPStatusCode: res.StatusCode,
  5545  		},
  5546  	}
  5547  	target := &ret
  5548  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5549  		return nil, err
  5550  	}
  5551  	return ret, nil
  5552  }
  5553  
  5554  // Pages invokes f for each page of results.
  5555  // A non-nil error returned from f will halt the iteration.
  5556  // The provided context supersedes any context provided to the Context method.
  5557  func (c *AccountsListTransferableOffersCall) Pages(ctx context.Context, f func(*GoogleCloudChannelV1ListTransferableOffersResponse) error) error {
  5558  	c.ctx_ = ctx
  5559  	defer func(pt string) { c.googlecloudchannelv1listtransferableoffersrequest.PageToken = pt }(c.googlecloudchannelv1listtransferableoffersrequest.PageToken)
  5560  	for {
  5561  		x, err := c.Do()
  5562  		if err != nil {
  5563  			return err
  5564  		}
  5565  		if err := f(x); err != nil {
  5566  			return err
  5567  		}
  5568  		if x.NextPageToken == "" {
  5569  			return nil
  5570  		}
  5571  		c.googlecloudchannelv1listtransferableoffersrequest.PageToken = x.NextPageToken
  5572  	}
  5573  }
  5574  
  5575  type AccountsListTransferableSkusCall struct {
  5576  	s                                               *Service
  5577  	parent                                          string
  5578  	googlecloudchannelv1listtransferableskusrequest *GoogleCloudChannelV1ListTransferableSkusRequest
  5579  	urlParams_                                      gensupport.URLParams
  5580  	ctx_                                            context.Context
  5581  	header_                                         http.Header
  5582  }
  5583  
  5584  // ListTransferableSkus: List TransferableSkus of a customer based on the Cloud
  5585  // Identity ID or Customer Name in the request. Use this method to list the
  5586  // entitlements information of an unowned customer. You should provide the
  5587  // customer's Cloud Identity ID or Customer Name. Possible error codes: *
  5588  // PERMISSION_DENIED: * The customer doesn't belong to the reseller and has no
  5589  // auth token. * The supplied auth token is invalid. * The reseller account
  5590  // making the request is different from the reseller account in the query. *
  5591  // INVALID_ARGUMENT: Required request parameters are missing or invalid. Return
  5592  // value: A list of the customer's TransferableSku.
  5593  //
  5594  //   - parent: The reseller account's resource name. Parent uses the format:
  5595  //     accounts/{account_id}.
  5596  func (r *AccountsService) ListTransferableSkus(parent string, googlecloudchannelv1listtransferableskusrequest *GoogleCloudChannelV1ListTransferableSkusRequest) *AccountsListTransferableSkusCall {
  5597  	c := &AccountsListTransferableSkusCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5598  	c.parent = parent
  5599  	c.googlecloudchannelv1listtransferableskusrequest = googlecloudchannelv1listtransferableskusrequest
  5600  	return c
  5601  }
  5602  
  5603  // Fields allows partial responses to be retrieved. See
  5604  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5605  // details.
  5606  func (c *AccountsListTransferableSkusCall) Fields(s ...googleapi.Field) *AccountsListTransferableSkusCall {
  5607  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5608  	return c
  5609  }
  5610  
  5611  // Context sets the context to be used in this call's Do method.
  5612  func (c *AccountsListTransferableSkusCall) Context(ctx context.Context) *AccountsListTransferableSkusCall {
  5613  	c.ctx_ = ctx
  5614  	return c
  5615  }
  5616  
  5617  // Header returns a http.Header that can be modified by the caller to add
  5618  // headers to the request.
  5619  func (c *AccountsListTransferableSkusCall) Header() http.Header {
  5620  	if c.header_ == nil {
  5621  		c.header_ = make(http.Header)
  5622  	}
  5623  	return c.header_
  5624  }
  5625  
  5626  func (c *AccountsListTransferableSkusCall) doRequest(alt string) (*http.Response, error) {
  5627  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  5628  	var body io.Reader = nil
  5629  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudchannelv1listtransferableskusrequest)
  5630  	if err != nil {
  5631  		return nil, err
  5632  	}
  5633  	c.urlParams_.Set("alt", alt)
  5634  	c.urlParams_.Set("prettyPrint", "false")
  5635  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}:listTransferableSkus")
  5636  	urls += "?" + c.urlParams_.Encode()
  5637  	req, err := http.NewRequest("POST", urls, body)
  5638  	if err != nil {
  5639  		return nil, err
  5640  	}
  5641  	req.Header = reqHeaders
  5642  	googleapi.Expand(req.URL, map[string]string{
  5643  		"parent": c.parent,
  5644  	})
  5645  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5646  }
  5647  
  5648  // Do executes the "cloudchannel.accounts.listTransferableSkus" call.
  5649  // Any non-2xx status code is an error. Response headers are in either
  5650  // *GoogleCloudChannelV1ListTransferableSkusResponse.ServerResponse.Header or
  5651  // (if a response was returned at all) in error.(*googleapi.Error).Header. Use
  5652  // googleapi.IsNotModified to check whether the returned error was because
  5653  // http.StatusNotModified was returned.
  5654  func (c *AccountsListTransferableSkusCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1ListTransferableSkusResponse, error) {
  5655  	gensupport.SetOptions(c.urlParams_, opts...)
  5656  	res, err := c.doRequest("json")
  5657  	if res != nil && res.StatusCode == http.StatusNotModified {
  5658  		if res.Body != nil {
  5659  			res.Body.Close()
  5660  		}
  5661  		return nil, gensupport.WrapError(&googleapi.Error{
  5662  			Code:   res.StatusCode,
  5663  			Header: res.Header,
  5664  		})
  5665  	}
  5666  	if err != nil {
  5667  		return nil, err
  5668  	}
  5669  	defer googleapi.CloseBody(res)
  5670  	if err := googleapi.CheckResponse(res); err != nil {
  5671  		return nil, gensupport.WrapError(err)
  5672  	}
  5673  	ret := &GoogleCloudChannelV1ListTransferableSkusResponse{
  5674  		ServerResponse: googleapi.ServerResponse{
  5675  			Header:         res.Header,
  5676  			HTTPStatusCode: res.StatusCode,
  5677  		},
  5678  	}
  5679  	target := &ret
  5680  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5681  		return nil, err
  5682  	}
  5683  	return ret, nil
  5684  }
  5685  
  5686  // Pages invokes f for each page of results.
  5687  // A non-nil error returned from f will halt the iteration.
  5688  // The provided context supersedes any context provided to the Context method.
  5689  func (c *AccountsListTransferableSkusCall) Pages(ctx context.Context, f func(*GoogleCloudChannelV1ListTransferableSkusResponse) error) error {
  5690  	c.ctx_ = ctx
  5691  	defer func(pt string) { c.googlecloudchannelv1listtransferableskusrequest.PageToken = pt }(c.googlecloudchannelv1listtransferableskusrequest.PageToken)
  5692  	for {
  5693  		x, err := c.Do()
  5694  		if err != nil {
  5695  			return err
  5696  		}
  5697  		if err := f(x); err != nil {
  5698  			return err
  5699  		}
  5700  		if x.NextPageToken == "" {
  5701  			return nil
  5702  		}
  5703  		c.googlecloudchannelv1listtransferableskusrequest.PageToken = x.NextPageToken
  5704  	}
  5705  }
  5706  
  5707  type AccountsRegisterCall struct {
  5708  	s                                             *Service
  5709  	account                                       string
  5710  	googlecloudchannelv1registersubscriberrequest *GoogleCloudChannelV1RegisterSubscriberRequest
  5711  	urlParams_                                    gensupport.URLParams
  5712  	ctx_                                          context.Context
  5713  	header_                                       http.Header
  5714  }
  5715  
  5716  // Register: Registers a service account with subscriber privileges on the
  5717  // Cloud Pub/Sub topic for this Channel Services account. After you create a
  5718  // subscriber, you get the events through SubscriberEvent Possible error codes:
  5719  // * PERMISSION_DENIED: The reseller account making the request and the
  5720  // provided reseller account are different, or the impersonated user is not a
  5721  // super admin. * INVALID_ARGUMENT: Required request parameters are missing or
  5722  // invalid. * INTERNAL: Any non-user error related to a technical issue in the
  5723  // backend. Contact Cloud Channel support. * UNKNOWN: Any non-user error
  5724  // related to a technical issue in the backend. Contact Cloud Channel support.
  5725  // Return value: The topic name with the registered service email address.
  5726  //
  5727  // - account: Resource name of the account.
  5728  func (r *AccountsService) Register(account string, googlecloudchannelv1registersubscriberrequest *GoogleCloudChannelV1RegisterSubscriberRequest) *AccountsRegisterCall {
  5729  	c := &AccountsRegisterCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5730  	c.account = account
  5731  	c.googlecloudchannelv1registersubscriberrequest = googlecloudchannelv1registersubscriberrequest
  5732  	return c
  5733  }
  5734  
  5735  // Fields allows partial responses to be retrieved. See
  5736  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5737  // details.
  5738  func (c *AccountsRegisterCall) Fields(s ...googleapi.Field) *AccountsRegisterCall {
  5739  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5740  	return c
  5741  }
  5742  
  5743  // Context sets the context to be used in this call's Do method.
  5744  func (c *AccountsRegisterCall) Context(ctx context.Context) *AccountsRegisterCall {
  5745  	c.ctx_ = ctx
  5746  	return c
  5747  }
  5748  
  5749  // Header returns a http.Header that can be modified by the caller to add
  5750  // headers to the request.
  5751  func (c *AccountsRegisterCall) Header() http.Header {
  5752  	if c.header_ == nil {
  5753  		c.header_ = make(http.Header)
  5754  	}
  5755  	return c.header_
  5756  }
  5757  
  5758  func (c *AccountsRegisterCall) doRequest(alt string) (*http.Response, error) {
  5759  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  5760  	var body io.Reader = nil
  5761  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudchannelv1registersubscriberrequest)
  5762  	if err != nil {
  5763  		return nil, err
  5764  	}
  5765  	c.urlParams_.Set("alt", alt)
  5766  	c.urlParams_.Set("prettyPrint", "false")
  5767  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+account}:register")
  5768  	urls += "?" + c.urlParams_.Encode()
  5769  	req, err := http.NewRequest("POST", urls, body)
  5770  	if err != nil {
  5771  		return nil, err
  5772  	}
  5773  	req.Header = reqHeaders
  5774  	googleapi.Expand(req.URL, map[string]string{
  5775  		"account": c.account,
  5776  	})
  5777  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5778  }
  5779  
  5780  // Do executes the "cloudchannel.accounts.register" call.
  5781  // Any non-2xx status code is an error. Response headers are in either
  5782  // *GoogleCloudChannelV1RegisterSubscriberResponse.ServerResponse.Header or (if
  5783  // a response was returned at all) in error.(*googleapi.Error).Header. Use
  5784  // googleapi.IsNotModified to check whether the returned error was because
  5785  // http.StatusNotModified was returned.
  5786  func (c *AccountsRegisterCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1RegisterSubscriberResponse, error) {
  5787  	gensupport.SetOptions(c.urlParams_, opts...)
  5788  	res, err := c.doRequest("json")
  5789  	if res != nil && res.StatusCode == http.StatusNotModified {
  5790  		if res.Body != nil {
  5791  			res.Body.Close()
  5792  		}
  5793  		return nil, gensupport.WrapError(&googleapi.Error{
  5794  			Code:   res.StatusCode,
  5795  			Header: res.Header,
  5796  		})
  5797  	}
  5798  	if err != nil {
  5799  		return nil, err
  5800  	}
  5801  	defer googleapi.CloseBody(res)
  5802  	if err := googleapi.CheckResponse(res); err != nil {
  5803  		return nil, gensupport.WrapError(err)
  5804  	}
  5805  	ret := &GoogleCloudChannelV1RegisterSubscriberResponse{
  5806  		ServerResponse: googleapi.ServerResponse{
  5807  			Header:         res.Header,
  5808  			HTTPStatusCode: res.StatusCode,
  5809  		},
  5810  	}
  5811  	target := &ret
  5812  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5813  		return nil, err
  5814  	}
  5815  	return ret, nil
  5816  }
  5817  
  5818  type AccountsUnregisterCall struct {
  5819  	s                                               *Service
  5820  	account                                         string
  5821  	googlecloudchannelv1unregistersubscriberrequest *GoogleCloudChannelV1UnregisterSubscriberRequest
  5822  	urlParams_                                      gensupport.URLParams
  5823  	ctx_                                            context.Context
  5824  	header_                                         http.Header
  5825  }
  5826  
  5827  // Unregister: Unregisters a service account with subscriber privileges on the
  5828  // Cloud Pub/Sub topic created for this Channel Services account. If there are
  5829  // no service accounts left with subscriber privileges, this deletes the topic.
  5830  // You can call ListSubscribers to check for these accounts. Possible error
  5831  // codes: * PERMISSION_DENIED: The reseller account making the request and the
  5832  // provided reseller account are different, or the impersonated user is not a
  5833  // super admin. * INVALID_ARGUMENT: Required request parameters are missing or
  5834  // invalid. * NOT_FOUND: The topic resource doesn't exist. * INTERNAL: Any
  5835  // non-user error related to a technical issue in the backend. Contact Cloud
  5836  // Channel support. * UNKNOWN: Any non-user error related to a technical issue
  5837  // in the backend. Contact Cloud Channel support. Return value: The topic name
  5838  // that unregistered the service email address. Returns a success response if
  5839  // the service email address wasn't registered with the topic.
  5840  //
  5841  // - account: Resource name of the account.
  5842  func (r *AccountsService) Unregister(account string, googlecloudchannelv1unregistersubscriberrequest *GoogleCloudChannelV1UnregisterSubscriberRequest) *AccountsUnregisterCall {
  5843  	c := &AccountsUnregisterCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5844  	c.account = account
  5845  	c.googlecloudchannelv1unregistersubscriberrequest = googlecloudchannelv1unregistersubscriberrequest
  5846  	return c
  5847  }
  5848  
  5849  // Fields allows partial responses to be retrieved. See
  5850  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5851  // details.
  5852  func (c *AccountsUnregisterCall) Fields(s ...googleapi.Field) *AccountsUnregisterCall {
  5853  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5854  	return c
  5855  }
  5856  
  5857  // Context sets the context to be used in this call's Do method.
  5858  func (c *AccountsUnregisterCall) Context(ctx context.Context) *AccountsUnregisterCall {
  5859  	c.ctx_ = ctx
  5860  	return c
  5861  }
  5862  
  5863  // Header returns a http.Header that can be modified by the caller to add
  5864  // headers to the request.
  5865  func (c *AccountsUnregisterCall) Header() http.Header {
  5866  	if c.header_ == nil {
  5867  		c.header_ = make(http.Header)
  5868  	}
  5869  	return c.header_
  5870  }
  5871  
  5872  func (c *AccountsUnregisterCall) doRequest(alt string) (*http.Response, error) {
  5873  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  5874  	var body io.Reader = nil
  5875  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudchannelv1unregistersubscriberrequest)
  5876  	if err != nil {
  5877  		return nil, err
  5878  	}
  5879  	c.urlParams_.Set("alt", alt)
  5880  	c.urlParams_.Set("prettyPrint", "false")
  5881  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+account}:unregister")
  5882  	urls += "?" + c.urlParams_.Encode()
  5883  	req, err := http.NewRequest("POST", urls, body)
  5884  	if err != nil {
  5885  		return nil, err
  5886  	}
  5887  	req.Header = reqHeaders
  5888  	googleapi.Expand(req.URL, map[string]string{
  5889  		"account": c.account,
  5890  	})
  5891  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5892  }
  5893  
  5894  // Do executes the "cloudchannel.accounts.unregister" call.
  5895  // Any non-2xx status code is an error. Response headers are in either
  5896  // *GoogleCloudChannelV1UnregisterSubscriberResponse.ServerResponse.Header or
  5897  // (if a response was returned at all) in error.(*googleapi.Error).Header. Use
  5898  // googleapi.IsNotModified to check whether the returned error was because
  5899  // http.StatusNotModified was returned.
  5900  func (c *AccountsUnregisterCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1UnregisterSubscriberResponse, error) {
  5901  	gensupport.SetOptions(c.urlParams_, opts...)
  5902  	res, err := c.doRequest("json")
  5903  	if res != nil && res.StatusCode == http.StatusNotModified {
  5904  		if res.Body != nil {
  5905  			res.Body.Close()
  5906  		}
  5907  		return nil, gensupport.WrapError(&googleapi.Error{
  5908  			Code:   res.StatusCode,
  5909  			Header: res.Header,
  5910  		})
  5911  	}
  5912  	if err != nil {
  5913  		return nil, err
  5914  	}
  5915  	defer googleapi.CloseBody(res)
  5916  	if err := googleapi.CheckResponse(res); err != nil {
  5917  		return nil, gensupport.WrapError(err)
  5918  	}
  5919  	ret := &GoogleCloudChannelV1UnregisterSubscriberResponse{
  5920  		ServerResponse: googleapi.ServerResponse{
  5921  			Header:         res.Header,
  5922  			HTTPStatusCode: res.StatusCode,
  5923  		},
  5924  	}
  5925  	target := &ret
  5926  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5927  		return nil, err
  5928  	}
  5929  	return ret, nil
  5930  }
  5931  
  5932  type AccountsChannelPartnerLinksCreateCall struct {
  5933  	s                                      *Service
  5934  	parent                                 string
  5935  	googlecloudchannelv1channelpartnerlink *GoogleCloudChannelV1ChannelPartnerLink
  5936  	urlParams_                             gensupport.URLParams
  5937  	ctx_                                   context.Context
  5938  	header_                                http.Header
  5939  }
  5940  
  5941  // Create: Initiates a channel partner link between a distributor and a
  5942  // reseller, or between resellers in an n-tier reseller channel. Invited
  5943  // partners need to follow the invite_link_uri provided in the response to
  5944  // accept. After accepting the invitation, a link is set up between the two
  5945  // parties. You must be a distributor to call this method. Possible error
  5946  // codes: * PERMISSION_DENIED: The reseller account making the request is
  5947  // different from the reseller account in the API request. * INVALID_ARGUMENT:
  5948  // Required request parameters are missing or invalid. * ALREADY_EXISTS: The
  5949  // ChannelPartnerLink sent in the request already exists. * NOT_FOUND: No Cloud
  5950  // Identity customer exists for provided domain. * INTERNAL: Any non-user error
  5951  // related to a technical issue in the backend. Contact Cloud Channel support.
  5952  // * UNKNOWN: Any non-user error related to a technical issue in the backend.
  5953  // Contact Cloud Channel support. Return value: The new ChannelPartnerLink
  5954  // resource.
  5955  //
  5956  //   - parent: Create a channel partner link for the provided reseller account's
  5957  //     resource name. Parent uses the format: accounts/{account_id}.
  5958  func (r *AccountsChannelPartnerLinksService) Create(parent string, googlecloudchannelv1channelpartnerlink *GoogleCloudChannelV1ChannelPartnerLink) *AccountsChannelPartnerLinksCreateCall {
  5959  	c := &AccountsChannelPartnerLinksCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5960  	c.parent = parent
  5961  	c.googlecloudchannelv1channelpartnerlink = googlecloudchannelv1channelpartnerlink
  5962  	return c
  5963  }
  5964  
  5965  // Fields allows partial responses to be retrieved. See
  5966  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5967  // details.
  5968  func (c *AccountsChannelPartnerLinksCreateCall) Fields(s ...googleapi.Field) *AccountsChannelPartnerLinksCreateCall {
  5969  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5970  	return c
  5971  }
  5972  
  5973  // Context sets the context to be used in this call's Do method.
  5974  func (c *AccountsChannelPartnerLinksCreateCall) Context(ctx context.Context) *AccountsChannelPartnerLinksCreateCall {
  5975  	c.ctx_ = ctx
  5976  	return c
  5977  }
  5978  
  5979  // Header returns a http.Header that can be modified by the caller to add
  5980  // headers to the request.
  5981  func (c *AccountsChannelPartnerLinksCreateCall) Header() http.Header {
  5982  	if c.header_ == nil {
  5983  		c.header_ = make(http.Header)
  5984  	}
  5985  	return c.header_
  5986  }
  5987  
  5988  func (c *AccountsChannelPartnerLinksCreateCall) doRequest(alt string) (*http.Response, error) {
  5989  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  5990  	var body io.Reader = nil
  5991  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudchannelv1channelpartnerlink)
  5992  	if err != nil {
  5993  		return nil, err
  5994  	}
  5995  	c.urlParams_.Set("alt", alt)
  5996  	c.urlParams_.Set("prettyPrint", "false")
  5997  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/channelPartnerLinks")
  5998  	urls += "?" + c.urlParams_.Encode()
  5999  	req, err := http.NewRequest("POST", urls, body)
  6000  	if err != nil {
  6001  		return nil, err
  6002  	}
  6003  	req.Header = reqHeaders
  6004  	googleapi.Expand(req.URL, map[string]string{
  6005  		"parent": c.parent,
  6006  	})
  6007  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6008  }
  6009  
  6010  // Do executes the "cloudchannel.accounts.channelPartnerLinks.create" call.
  6011  // Any non-2xx status code is an error. Response headers are in either
  6012  // *GoogleCloudChannelV1ChannelPartnerLink.ServerResponse.Header or (if a
  6013  // response was returned at all) in error.(*googleapi.Error).Header. Use
  6014  // googleapi.IsNotModified to check whether the returned error was because
  6015  // http.StatusNotModified was returned.
  6016  func (c *AccountsChannelPartnerLinksCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1ChannelPartnerLink, error) {
  6017  	gensupport.SetOptions(c.urlParams_, opts...)
  6018  	res, err := c.doRequest("json")
  6019  	if res != nil && res.StatusCode == http.StatusNotModified {
  6020  		if res.Body != nil {
  6021  			res.Body.Close()
  6022  		}
  6023  		return nil, gensupport.WrapError(&googleapi.Error{
  6024  			Code:   res.StatusCode,
  6025  			Header: res.Header,
  6026  		})
  6027  	}
  6028  	if err != nil {
  6029  		return nil, err
  6030  	}
  6031  	defer googleapi.CloseBody(res)
  6032  	if err := googleapi.CheckResponse(res); err != nil {
  6033  		return nil, gensupport.WrapError(err)
  6034  	}
  6035  	ret := &GoogleCloudChannelV1ChannelPartnerLink{
  6036  		ServerResponse: googleapi.ServerResponse{
  6037  			Header:         res.Header,
  6038  			HTTPStatusCode: res.StatusCode,
  6039  		},
  6040  	}
  6041  	target := &ret
  6042  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6043  		return nil, err
  6044  	}
  6045  	return ret, nil
  6046  }
  6047  
  6048  type AccountsChannelPartnerLinksGetCall struct {
  6049  	s            *Service
  6050  	name         string
  6051  	urlParams_   gensupport.URLParams
  6052  	ifNoneMatch_ string
  6053  	ctx_         context.Context
  6054  	header_      http.Header
  6055  }
  6056  
  6057  // Get: Returns the requested ChannelPartnerLink resource. You must be a
  6058  // distributor to call this method. Possible error codes: * PERMISSION_DENIED:
  6059  // The reseller account making the request is different from the reseller
  6060  // account in the API request. * INVALID_ARGUMENT: Required request parameters
  6061  // are missing or invalid. * NOT_FOUND: ChannelPartnerLink resource not found
  6062  // because of an invalid channel partner link name. Return value: The
  6063  // ChannelPartnerLink resource.
  6064  //
  6065  //   - name: The resource name of the channel partner link to retrieve. Name uses
  6066  //     the format: accounts/{account_id}/channelPartnerLinks/{id} where {id} is
  6067  //     the Cloud Identity ID of the partner.
  6068  func (r *AccountsChannelPartnerLinksService) Get(name string) *AccountsChannelPartnerLinksGetCall {
  6069  	c := &AccountsChannelPartnerLinksGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6070  	c.name = name
  6071  	return c
  6072  }
  6073  
  6074  // View sets the optional parameter "view": The level of granularity the
  6075  // ChannelPartnerLink will display.
  6076  //
  6077  // Possible values:
  6078  //
  6079  //	"UNSPECIFIED" - The default / unset value. The API will default to the
  6080  //
  6081  // BASIC view.
  6082  //
  6083  //	"BASIC" - Includes all fields except the
  6084  //
  6085  // ChannelPartnerLink.channel_partner_cloud_identity_info.
  6086  //
  6087  //	"FULL" - Includes all fields.
  6088  func (c *AccountsChannelPartnerLinksGetCall) View(view string) *AccountsChannelPartnerLinksGetCall {
  6089  	c.urlParams_.Set("view", view)
  6090  	return c
  6091  }
  6092  
  6093  // Fields allows partial responses to be retrieved. See
  6094  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6095  // details.
  6096  func (c *AccountsChannelPartnerLinksGetCall) Fields(s ...googleapi.Field) *AccountsChannelPartnerLinksGetCall {
  6097  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6098  	return c
  6099  }
  6100  
  6101  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  6102  // object's ETag matches the given value. This is useful for getting updates
  6103  // only after the object has changed since the last request.
  6104  func (c *AccountsChannelPartnerLinksGetCall) IfNoneMatch(entityTag string) *AccountsChannelPartnerLinksGetCall {
  6105  	c.ifNoneMatch_ = entityTag
  6106  	return c
  6107  }
  6108  
  6109  // Context sets the context to be used in this call's Do method.
  6110  func (c *AccountsChannelPartnerLinksGetCall) Context(ctx context.Context) *AccountsChannelPartnerLinksGetCall {
  6111  	c.ctx_ = ctx
  6112  	return c
  6113  }
  6114  
  6115  // Header returns a http.Header that can be modified by the caller to add
  6116  // headers to the request.
  6117  func (c *AccountsChannelPartnerLinksGetCall) Header() http.Header {
  6118  	if c.header_ == nil {
  6119  		c.header_ = make(http.Header)
  6120  	}
  6121  	return c.header_
  6122  }
  6123  
  6124  func (c *AccountsChannelPartnerLinksGetCall) doRequest(alt string) (*http.Response, error) {
  6125  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  6126  	if c.ifNoneMatch_ != "" {
  6127  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  6128  	}
  6129  	var body io.Reader = nil
  6130  	c.urlParams_.Set("alt", alt)
  6131  	c.urlParams_.Set("prettyPrint", "false")
  6132  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  6133  	urls += "?" + c.urlParams_.Encode()
  6134  	req, err := http.NewRequest("GET", urls, body)
  6135  	if err != nil {
  6136  		return nil, err
  6137  	}
  6138  	req.Header = reqHeaders
  6139  	googleapi.Expand(req.URL, map[string]string{
  6140  		"name": c.name,
  6141  	})
  6142  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6143  }
  6144  
  6145  // Do executes the "cloudchannel.accounts.channelPartnerLinks.get" call.
  6146  // Any non-2xx status code is an error. Response headers are in either
  6147  // *GoogleCloudChannelV1ChannelPartnerLink.ServerResponse.Header or (if a
  6148  // response was returned at all) in error.(*googleapi.Error).Header. Use
  6149  // googleapi.IsNotModified to check whether the returned error was because
  6150  // http.StatusNotModified was returned.
  6151  func (c *AccountsChannelPartnerLinksGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1ChannelPartnerLink, error) {
  6152  	gensupport.SetOptions(c.urlParams_, opts...)
  6153  	res, err := c.doRequest("json")
  6154  	if res != nil && res.StatusCode == http.StatusNotModified {
  6155  		if res.Body != nil {
  6156  			res.Body.Close()
  6157  		}
  6158  		return nil, gensupport.WrapError(&googleapi.Error{
  6159  			Code:   res.StatusCode,
  6160  			Header: res.Header,
  6161  		})
  6162  	}
  6163  	if err != nil {
  6164  		return nil, err
  6165  	}
  6166  	defer googleapi.CloseBody(res)
  6167  	if err := googleapi.CheckResponse(res); err != nil {
  6168  		return nil, gensupport.WrapError(err)
  6169  	}
  6170  	ret := &GoogleCloudChannelV1ChannelPartnerLink{
  6171  		ServerResponse: googleapi.ServerResponse{
  6172  			Header:         res.Header,
  6173  			HTTPStatusCode: res.StatusCode,
  6174  		},
  6175  	}
  6176  	target := &ret
  6177  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6178  		return nil, err
  6179  	}
  6180  	return ret, nil
  6181  }
  6182  
  6183  type AccountsChannelPartnerLinksListCall struct {
  6184  	s            *Service
  6185  	parent       string
  6186  	urlParams_   gensupport.URLParams
  6187  	ifNoneMatch_ string
  6188  	ctx_         context.Context
  6189  	header_      http.Header
  6190  }
  6191  
  6192  // List: List ChannelPartnerLinks belonging to a distributor. You must be a
  6193  // distributor to call this method. Possible error codes: * PERMISSION_DENIED:
  6194  // The reseller account making the request is different from the reseller
  6195  // account in the API request. * INVALID_ARGUMENT: Required request parameters
  6196  // are missing or invalid. Return value: The list of the distributor account's
  6197  // ChannelPartnerLink resources.
  6198  //
  6199  //   - parent: The resource name of the reseller account for listing channel
  6200  //     partner links. Parent uses the format: accounts/{account_id}.
  6201  func (r *AccountsChannelPartnerLinksService) List(parent string) *AccountsChannelPartnerLinksListCall {
  6202  	c := &AccountsChannelPartnerLinksListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6203  	c.parent = parent
  6204  	return c
  6205  }
  6206  
  6207  // PageSize sets the optional parameter "pageSize": Requested page size. Server
  6208  // might return fewer results than requested. If unspecified, server will pick
  6209  // a default size (25). The maximum value is 200; the server will coerce values
  6210  // above 200.
  6211  func (c *AccountsChannelPartnerLinksListCall) PageSize(pageSize int64) *AccountsChannelPartnerLinksListCall {
  6212  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  6213  	return c
  6214  }
  6215  
  6216  // PageToken sets the optional parameter "pageToken": A token for a page of
  6217  // results other than the first page. Obtained using
  6218  // ListChannelPartnerLinksResponse.next_page_token of the previous
  6219  // CloudChannelService.ListChannelPartnerLinks call.
  6220  func (c *AccountsChannelPartnerLinksListCall) PageToken(pageToken string) *AccountsChannelPartnerLinksListCall {
  6221  	c.urlParams_.Set("pageToken", pageToken)
  6222  	return c
  6223  }
  6224  
  6225  // View sets the optional parameter "view": The level of granularity the
  6226  // ChannelPartnerLink will display.
  6227  //
  6228  // Possible values:
  6229  //
  6230  //	"UNSPECIFIED" - The default / unset value. The API will default to the
  6231  //
  6232  // BASIC view.
  6233  //
  6234  //	"BASIC" - Includes all fields except the
  6235  //
  6236  // ChannelPartnerLink.channel_partner_cloud_identity_info.
  6237  //
  6238  //	"FULL" - Includes all fields.
  6239  func (c *AccountsChannelPartnerLinksListCall) View(view string) *AccountsChannelPartnerLinksListCall {
  6240  	c.urlParams_.Set("view", view)
  6241  	return c
  6242  }
  6243  
  6244  // Fields allows partial responses to be retrieved. See
  6245  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6246  // details.
  6247  func (c *AccountsChannelPartnerLinksListCall) Fields(s ...googleapi.Field) *AccountsChannelPartnerLinksListCall {
  6248  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6249  	return c
  6250  }
  6251  
  6252  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  6253  // object's ETag matches the given value. This is useful for getting updates
  6254  // only after the object has changed since the last request.
  6255  func (c *AccountsChannelPartnerLinksListCall) IfNoneMatch(entityTag string) *AccountsChannelPartnerLinksListCall {
  6256  	c.ifNoneMatch_ = entityTag
  6257  	return c
  6258  }
  6259  
  6260  // Context sets the context to be used in this call's Do method.
  6261  func (c *AccountsChannelPartnerLinksListCall) Context(ctx context.Context) *AccountsChannelPartnerLinksListCall {
  6262  	c.ctx_ = ctx
  6263  	return c
  6264  }
  6265  
  6266  // Header returns a http.Header that can be modified by the caller to add
  6267  // headers to the request.
  6268  func (c *AccountsChannelPartnerLinksListCall) Header() http.Header {
  6269  	if c.header_ == nil {
  6270  		c.header_ = make(http.Header)
  6271  	}
  6272  	return c.header_
  6273  }
  6274  
  6275  func (c *AccountsChannelPartnerLinksListCall) doRequest(alt string) (*http.Response, error) {
  6276  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  6277  	if c.ifNoneMatch_ != "" {
  6278  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  6279  	}
  6280  	var body io.Reader = nil
  6281  	c.urlParams_.Set("alt", alt)
  6282  	c.urlParams_.Set("prettyPrint", "false")
  6283  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/channelPartnerLinks")
  6284  	urls += "?" + c.urlParams_.Encode()
  6285  	req, err := http.NewRequest("GET", urls, body)
  6286  	if err != nil {
  6287  		return nil, err
  6288  	}
  6289  	req.Header = reqHeaders
  6290  	googleapi.Expand(req.URL, map[string]string{
  6291  		"parent": c.parent,
  6292  	})
  6293  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6294  }
  6295  
  6296  // Do executes the "cloudchannel.accounts.channelPartnerLinks.list" call.
  6297  // Any non-2xx status code is an error. Response headers are in either
  6298  // *GoogleCloudChannelV1ListChannelPartnerLinksResponse.ServerResponse.Header
  6299  // or (if a response was returned at all) in error.(*googleapi.Error).Header.
  6300  // Use googleapi.IsNotModified to check whether the returned error was because
  6301  // http.StatusNotModified was returned.
  6302  func (c *AccountsChannelPartnerLinksListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1ListChannelPartnerLinksResponse, error) {
  6303  	gensupport.SetOptions(c.urlParams_, opts...)
  6304  	res, err := c.doRequest("json")
  6305  	if res != nil && res.StatusCode == http.StatusNotModified {
  6306  		if res.Body != nil {
  6307  			res.Body.Close()
  6308  		}
  6309  		return nil, gensupport.WrapError(&googleapi.Error{
  6310  			Code:   res.StatusCode,
  6311  			Header: res.Header,
  6312  		})
  6313  	}
  6314  	if err != nil {
  6315  		return nil, err
  6316  	}
  6317  	defer googleapi.CloseBody(res)
  6318  	if err := googleapi.CheckResponse(res); err != nil {
  6319  		return nil, gensupport.WrapError(err)
  6320  	}
  6321  	ret := &GoogleCloudChannelV1ListChannelPartnerLinksResponse{
  6322  		ServerResponse: googleapi.ServerResponse{
  6323  			Header:         res.Header,
  6324  			HTTPStatusCode: res.StatusCode,
  6325  		},
  6326  	}
  6327  	target := &ret
  6328  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6329  		return nil, err
  6330  	}
  6331  	return ret, nil
  6332  }
  6333  
  6334  // Pages invokes f for each page of results.
  6335  // A non-nil error returned from f will halt the iteration.
  6336  // The provided context supersedes any context provided to the Context method.
  6337  func (c *AccountsChannelPartnerLinksListCall) Pages(ctx context.Context, f func(*GoogleCloudChannelV1ListChannelPartnerLinksResponse) error) error {
  6338  	c.ctx_ = ctx
  6339  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  6340  	for {
  6341  		x, err := c.Do()
  6342  		if err != nil {
  6343  			return err
  6344  		}
  6345  		if err := f(x); err != nil {
  6346  			return err
  6347  		}
  6348  		if x.NextPageToken == "" {
  6349  			return nil
  6350  		}
  6351  		c.PageToken(x.NextPageToken)
  6352  	}
  6353  }
  6354  
  6355  type AccountsChannelPartnerLinksPatchCall struct {
  6356  	s                                                   *Service
  6357  	name                                                string
  6358  	googlecloudchannelv1updatechannelpartnerlinkrequest *GoogleCloudChannelV1UpdateChannelPartnerLinkRequest
  6359  	urlParams_                                          gensupport.URLParams
  6360  	ctx_                                                context.Context
  6361  	header_                                             http.Header
  6362  }
  6363  
  6364  // Patch: Updates a channel partner link. Distributors call this method to
  6365  // change a link's status. For example, to suspend a partner link. You must be
  6366  // a distributor to call this method. Possible error codes: *
  6367  // PERMISSION_DENIED: The reseller account making the request is different from
  6368  // the reseller account in the API request. * INVALID_ARGUMENT: * Required
  6369  // request parameters are missing or invalid. * Link state cannot change from
  6370  // invited to active or suspended. * Cannot send reseller_cloud_identity_id,
  6371  // invite_url, or name in update mask. * NOT_FOUND: ChannelPartnerLink resource
  6372  // not found. * INTERNAL: Any non-user error related to a technical issue in
  6373  // the backend. Contact Cloud Channel support. * UNKNOWN: Any non-user error
  6374  // related to a technical issue in the backend. Contact Cloud Channel support.
  6375  // Return value: The updated ChannelPartnerLink resource.
  6376  //
  6377  //   - name: The resource name of the channel partner link to cancel. Name uses
  6378  //     the format: accounts/{account_id}/channelPartnerLinks/{id} where {id} is
  6379  //     the Cloud Identity ID of the partner.
  6380  func (r *AccountsChannelPartnerLinksService) Patch(name string, googlecloudchannelv1updatechannelpartnerlinkrequest *GoogleCloudChannelV1UpdateChannelPartnerLinkRequest) *AccountsChannelPartnerLinksPatchCall {
  6381  	c := &AccountsChannelPartnerLinksPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6382  	c.name = name
  6383  	c.googlecloudchannelv1updatechannelpartnerlinkrequest = googlecloudchannelv1updatechannelpartnerlinkrequest
  6384  	return c
  6385  }
  6386  
  6387  // Fields allows partial responses to be retrieved. See
  6388  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6389  // details.
  6390  func (c *AccountsChannelPartnerLinksPatchCall) Fields(s ...googleapi.Field) *AccountsChannelPartnerLinksPatchCall {
  6391  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6392  	return c
  6393  }
  6394  
  6395  // Context sets the context to be used in this call's Do method.
  6396  func (c *AccountsChannelPartnerLinksPatchCall) Context(ctx context.Context) *AccountsChannelPartnerLinksPatchCall {
  6397  	c.ctx_ = ctx
  6398  	return c
  6399  }
  6400  
  6401  // Header returns a http.Header that can be modified by the caller to add
  6402  // headers to the request.
  6403  func (c *AccountsChannelPartnerLinksPatchCall) Header() http.Header {
  6404  	if c.header_ == nil {
  6405  		c.header_ = make(http.Header)
  6406  	}
  6407  	return c.header_
  6408  }
  6409  
  6410  func (c *AccountsChannelPartnerLinksPatchCall) doRequest(alt string) (*http.Response, error) {
  6411  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  6412  	var body io.Reader = nil
  6413  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudchannelv1updatechannelpartnerlinkrequest)
  6414  	if err != nil {
  6415  		return nil, err
  6416  	}
  6417  	c.urlParams_.Set("alt", alt)
  6418  	c.urlParams_.Set("prettyPrint", "false")
  6419  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  6420  	urls += "?" + c.urlParams_.Encode()
  6421  	req, err := http.NewRequest("PATCH", urls, body)
  6422  	if err != nil {
  6423  		return nil, err
  6424  	}
  6425  	req.Header = reqHeaders
  6426  	googleapi.Expand(req.URL, map[string]string{
  6427  		"name": c.name,
  6428  	})
  6429  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6430  }
  6431  
  6432  // Do executes the "cloudchannel.accounts.channelPartnerLinks.patch" call.
  6433  // Any non-2xx status code is an error. Response headers are in either
  6434  // *GoogleCloudChannelV1ChannelPartnerLink.ServerResponse.Header or (if a
  6435  // response was returned at all) in error.(*googleapi.Error).Header. Use
  6436  // googleapi.IsNotModified to check whether the returned error was because
  6437  // http.StatusNotModified was returned.
  6438  func (c *AccountsChannelPartnerLinksPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1ChannelPartnerLink, error) {
  6439  	gensupport.SetOptions(c.urlParams_, opts...)
  6440  	res, err := c.doRequest("json")
  6441  	if res != nil && res.StatusCode == http.StatusNotModified {
  6442  		if res.Body != nil {
  6443  			res.Body.Close()
  6444  		}
  6445  		return nil, gensupport.WrapError(&googleapi.Error{
  6446  			Code:   res.StatusCode,
  6447  			Header: res.Header,
  6448  		})
  6449  	}
  6450  	if err != nil {
  6451  		return nil, err
  6452  	}
  6453  	defer googleapi.CloseBody(res)
  6454  	if err := googleapi.CheckResponse(res); err != nil {
  6455  		return nil, gensupport.WrapError(err)
  6456  	}
  6457  	ret := &GoogleCloudChannelV1ChannelPartnerLink{
  6458  		ServerResponse: googleapi.ServerResponse{
  6459  			Header:         res.Header,
  6460  			HTTPStatusCode: res.StatusCode,
  6461  		},
  6462  	}
  6463  	target := &ret
  6464  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6465  		return nil, err
  6466  	}
  6467  	return ret, nil
  6468  }
  6469  
  6470  type AccountsChannelPartnerLinksChannelPartnerRepricingConfigsCreateCall struct {
  6471  	s                                                 *Service
  6472  	parent                                            string
  6473  	googlecloudchannelv1channelpartnerrepricingconfig *GoogleCloudChannelV1ChannelPartnerRepricingConfig
  6474  	urlParams_                                        gensupport.URLParams
  6475  	ctx_                                              context.Context
  6476  	header_                                           http.Header
  6477  }
  6478  
  6479  // Create: Creates a ChannelPartnerRepricingConfig. Call this method to set
  6480  // modifications for a specific ChannelPartner's bill. You can only create
  6481  // configs if the RepricingConfig.effective_invoice_month is a future month. If
  6482  // needed, you can create a config for the current month, with some
  6483  // restrictions. When creating a config for a future month, make sure there are
  6484  // no existing configs for that RepricingConfig.effective_invoice_month. The
  6485  // following restrictions are for creating configs in the current month. * This
  6486  // functionality is reserved for recovering from an erroneous config, and
  6487  // should not be used for regular business cases. * The new config will not
  6488  // modify exports used with other configs. Changes to the config may be
  6489  // immediate, but may take up to 24 hours. * There is a limit of ten configs
  6490  // for any ChannelPartner or
  6491  // RepricingConfig.EntitlementGranularity.entitlement, for any
  6492  // RepricingConfig.effective_invoice_month. * The contained
  6493  // ChannelPartnerRepricingConfig.repricing_config value must be different from
  6494  // the value used in the current config for a ChannelPartner. Possible Error
  6495  // Codes: * PERMISSION_DENIED: If the account making the request and the
  6496  // account being queried are different. * INVALID_ARGUMENT: Missing or invalid
  6497  // required parameters in the request. Also displays if the updated config is
  6498  // for the current month or past months. * NOT_FOUND: The
  6499  // ChannelPartnerRepricingConfig specified does not exist or is not associated
  6500  // with the given account. * INTERNAL: Any non-user error related to technical
  6501  // issues in the backend. In this case, contact Cloud Channel support. Return
  6502  // Value: If successful, the updated ChannelPartnerRepricingConfig resource,
  6503  // otherwise returns an error.
  6504  //
  6505  //   - parent: The resource name of the ChannelPartner that will receive the
  6506  //     repricing config. Parent uses the format:
  6507  //     accounts/{account_id}/channelPartnerLinks/{channel_partner_id}.
  6508  func (r *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsService) Create(parent string, googlecloudchannelv1channelpartnerrepricingconfig *GoogleCloudChannelV1ChannelPartnerRepricingConfig) *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsCreateCall {
  6509  	c := &AccountsChannelPartnerLinksChannelPartnerRepricingConfigsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6510  	c.parent = parent
  6511  	c.googlecloudchannelv1channelpartnerrepricingconfig = googlecloudchannelv1channelpartnerrepricingconfig
  6512  	return c
  6513  }
  6514  
  6515  // Fields allows partial responses to be retrieved. See
  6516  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6517  // details.
  6518  func (c *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsCreateCall) Fields(s ...googleapi.Field) *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsCreateCall {
  6519  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6520  	return c
  6521  }
  6522  
  6523  // Context sets the context to be used in this call's Do method.
  6524  func (c *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsCreateCall) Context(ctx context.Context) *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsCreateCall {
  6525  	c.ctx_ = ctx
  6526  	return c
  6527  }
  6528  
  6529  // Header returns a http.Header that can be modified by the caller to add
  6530  // headers to the request.
  6531  func (c *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsCreateCall) Header() http.Header {
  6532  	if c.header_ == nil {
  6533  		c.header_ = make(http.Header)
  6534  	}
  6535  	return c.header_
  6536  }
  6537  
  6538  func (c *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsCreateCall) doRequest(alt string) (*http.Response, error) {
  6539  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  6540  	var body io.Reader = nil
  6541  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudchannelv1channelpartnerrepricingconfig)
  6542  	if err != nil {
  6543  		return nil, err
  6544  	}
  6545  	c.urlParams_.Set("alt", alt)
  6546  	c.urlParams_.Set("prettyPrint", "false")
  6547  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/channelPartnerRepricingConfigs")
  6548  	urls += "?" + c.urlParams_.Encode()
  6549  	req, err := http.NewRequest("POST", urls, body)
  6550  	if err != nil {
  6551  		return nil, err
  6552  	}
  6553  	req.Header = reqHeaders
  6554  	googleapi.Expand(req.URL, map[string]string{
  6555  		"parent": c.parent,
  6556  	})
  6557  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6558  }
  6559  
  6560  // Do executes the "cloudchannel.accounts.channelPartnerLinks.channelPartnerRepricingConfigs.create" call.
  6561  // Any non-2xx status code is an error. Response headers are in either
  6562  // *GoogleCloudChannelV1ChannelPartnerRepricingConfig.ServerResponse.Header or
  6563  // (if a response was returned at all) in error.(*googleapi.Error).Header. Use
  6564  // googleapi.IsNotModified to check whether the returned error was because
  6565  // http.StatusNotModified was returned.
  6566  func (c *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1ChannelPartnerRepricingConfig, error) {
  6567  	gensupport.SetOptions(c.urlParams_, opts...)
  6568  	res, err := c.doRequest("json")
  6569  	if res != nil && res.StatusCode == http.StatusNotModified {
  6570  		if res.Body != nil {
  6571  			res.Body.Close()
  6572  		}
  6573  		return nil, gensupport.WrapError(&googleapi.Error{
  6574  			Code:   res.StatusCode,
  6575  			Header: res.Header,
  6576  		})
  6577  	}
  6578  	if err != nil {
  6579  		return nil, err
  6580  	}
  6581  	defer googleapi.CloseBody(res)
  6582  	if err := googleapi.CheckResponse(res); err != nil {
  6583  		return nil, gensupport.WrapError(err)
  6584  	}
  6585  	ret := &GoogleCloudChannelV1ChannelPartnerRepricingConfig{
  6586  		ServerResponse: googleapi.ServerResponse{
  6587  			Header:         res.Header,
  6588  			HTTPStatusCode: res.StatusCode,
  6589  		},
  6590  	}
  6591  	target := &ret
  6592  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6593  		return nil, err
  6594  	}
  6595  	return ret, nil
  6596  }
  6597  
  6598  type AccountsChannelPartnerLinksChannelPartnerRepricingConfigsDeleteCall struct {
  6599  	s          *Service
  6600  	name       string
  6601  	urlParams_ gensupport.URLParams
  6602  	ctx_       context.Context
  6603  	header_    http.Header
  6604  }
  6605  
  6606  // Delete: Deletes the given ChannelPartnerRepricingConfig permanently. You can
  6607  // only delete configs if their RepricingConfig.effective_invoice_month is set
  6608  // to a date after the current month. Possible error codes: *
  6609  // PERMISSION_DENIED: The account making the request does not own this
  6610  // customer. * INVALID_ARGUMENT: Required request parameters are missing or
  6611  // invalid. * FAILED_PRECONDITION: The ChannelPartnerRepricingConfig is active
  6612  // or in the past. * NOT_FOUND: No ChannelPartnerRepricingConfig found for the
  6613  // name in the request.
  6614  //
  6615  //   - name: The resource name of the channel partner repricing config rule to
  6616  //     delete.
  6617  func (r *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsService) Delete(name string) *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsDeleteCall {
  6618  	c := &AccountsChannelPartnerLinksChannelPartnerRepricingConfigsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6619  	c.name = name
  6620  	return c
  6621  }
  6622  
  6623  // Fields allows partial responses to be retrieved. See
  6624  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6625  // details.
  6626  func (c *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsDeleteCall) Fields(s ...googleapi.Field) *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsDeleteCall {
  6627  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6628  	return c
  6629  }
  6630  
  6631  // Context sets the context to be used in this call's Do method.
  6632  func (c *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsDeleteCall) Context(ctx context.Context) *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsDeleteCall {
  6633  	c.ctx_ = ctx
  6634  	return c
  6635  }
  6636  
  6637  // Header returns a http.Header that can be modified by the caller to add
  6638  // headers to the request.
  6639  func (c *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsDeleteCall) Header() http.Header {
  6640  	if c.header_ == nil {
  6641  		c.header_ = make(http.Header)
  6642  	}
  6643  	return c.header_
  6644  }
  6645  
  6646  func (c *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsDeleteCall) doRequest(alt string) (*http.Response, error) {
  6647  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  6648  	var body io.Reader = nil
  6649  	c.urlParams_.Set("alt", alt)
  6650  	c.urlParams_.Set("prettyPrint", "false")
  6651  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  6652  	urls += "?" + c.urlParams_.Encode()
  6653  	req, err := http.NewRequest("DELETE", urls, body)
  6654  	if err != nil {
  6655  		return nil, err
  6656  	}
  6657  	req.Header = reqHeaders
  6658  	googleapi.Expand(req.URL, map[string]string{
  6659  		"name": c.name,
  6660  	})
  6661  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6662  }
  6663  
  6664  // Do executes the "cloudchannel.accounts.channelPartnerLinks.channelPartnerRepricingConfigs.delete" call.
  6665  // Any non-2xx status code is an error. Response headers are in either
  6666  // *GoogleProtobufEmpty.ServerResponse.Header or (if a response was returned at
  6667  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  6668  // check whether the returned error was because http.StatusNotModified was
  6669  // returned.
  6670  func (c *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
  6671  	gensupport.SetOptions(c.urlParams_, opts...)
  6672  	res, err := c.doRequest("json")
  6673  	if res != nil && res.StatusCode == http.StatusNotModified {
  6674  		if res.Body != nil {
  6675  			res.Body.Close()
  6676  		}
  6677  		return nil, gensupport.WrapError(&googleapi.Error{
  6678  			Code:   res.StatusCode,
  6679  			Header: res.Header,
  6680  		})
  6681  	}
  6682  	if err != nil {
  6683  		return nil, err
  6684  	}
  6685  	defer googleapi.CloseBody(res)
  6686  	if err := googleapi.CheckResponse(res); err != nil {
  6687  		return nil, gensupport.WrapError(err)
  6688  	}
  6689  	ret := &GoogleProtobufEmpty{
  6690  		ServerResponse: googleapi.ServerResponse{
  6691  			Header:         res.Header,
  6692  			HTTPStatusCode: res.StatusCode,
  6693  		},
  6694  	}
  6695  	target := &ret
  6696  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6697  		return nil, err
  6698  	}
  6699  	return ret, nil
  6700  }
  6701  
  6702  type AccountsChannelPartnerLinksChannelPartnerRepricingConfigsGetCall struct {
  6703  	s            *Service
  6704  	name         string
  6705  	urlParams_   gensupport.URLParams
  6706  	ifNoneMatch_ string
  6707  	ctx_         context.Context
  6708  	header_      http.Header
  6709  }
  6710  
  6711  // Get: Gets information about how a Distributor modifies their bill before
  6712  // sending it to a ChannelPartner. Possible Error Codes: * PERMISSION_DENIED:
  6713  // If the account making the request and the account being queried are
  6714  // different. * NOT_FOUND: The ChannelPartnerRepricingConfig was not found. *
  6715  // INTERNAL: Any non-user error related to technical issues in the backend. In
  6716  // this case, contact Cloud Channel support. Return Value: If successful, the
  6717  // ChannelPartnerRepricingConfig resource, otherwise returns an error.
  6718  //
  6719  //   - name: The resource name of the ChannelPartnerRepricingConfig Format:
  6720  //     accounts/{account_id}/channelPartnerLinks/{channel_partner_id}/channelPartn
  6721  //     erRepricingConfigs/{id}.
  6722  func (r *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsService) Get(name string) *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsGetCall {
  6723  	c := &AccountsChannelPartnerLinksChannelPartnerRepricingConfigsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6724  	c.name = name
  6725  	return c
  6726  }
  6727  
  6728  // Fields allows partial responses to be retrieved. See
  6729  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6730  // details.
  6731  func (c *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsGetCall) Fields(s ...googleapi.Field) *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsGetCall {
  6732  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6733  	return c
  6734  }
  6735  
  6736  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  6737  // object's ETag matches the given value. This is useful for getting updates
  6738  // only after the object has changed since the last request.
  6739  func (c *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsGetCall) IfNoneMatch(entityTag string) *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsGetCall {
  6740  	c.ifNoneMatch_ = entityTag
  6741  	return c
  6742  }
  6743  
  6744  // Context sets the context to be used in this call's Do method.
  6745  func (c *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsGetCall) Context(ctx context.Context) *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsGetCall {
  6746  	c.ctx_ = ctx
  6747  	return c
  6748  }
  6749  
  6750  // Header returns a http.Header that can be modified by the caller to add
  6751  // headers to the request.
  6752  func (c *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsGetCall) Header() http.Header {
  6753  	if c.header_ == nil {
  6754  		c.header_ = make(http.Header)
  6755  	}
  6756  	return c.header_
  6757  }
  6758  
  6759  func (c *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsGetCall) doRequest(alt string) (*http.Response, error) {
  6760  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  6761  	if c.ifNoneMatch_ != "" {
  6762  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  6763  	}
  6764  	var body io.Reader = nil
  6765  	c.urlParams_.Set("alt", alt)
  6766  	c.urlParams_.Set("prettyPrint", "false")
  6767  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  6768  	urls += "?" + c.urlParams_.Encode()
  6769  	req, err := http.NewRequest("GET", urls, body)
  6770  	if err != nil {
  6771  		return nil, err
  6772  	}
  6773  	req.Header = reqHeaders
  6774  	googleapi.Expand(req.URL, map[string]string{
  6775  		"name": c.name,
  6776  	})
  6777  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6778  }
  6779  
  6780  // Do executes the "cloudchannel.accounts.channelPartnerLinks.channelPartnerRepricingConfigs.get" call.
  6781  // Any non-2xx status code is an error. Response headers are in either
  6782  // *GoogleCloudChannelV1ChannelPartnerRepricingConfig.ServerResponse.Header or
  6783  // (if a response was returned at all) in error.(*googleapi.Error).Header. Use
  6784  // googleapi.IsNotModified to check whether the returned error was because
  6785  // http.StatusNotModified was returned.
  6786  func (c *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1ChannelPartnerRepricingConfig, error) {
  6787  	gensupport.SetOptions(c.urlParams_, opts...)
  6788  	res, err := c.doRequest("json")
  6789  	if res != nil && res.StatusCode == http.StatusNotModified {
  6790  		if res.Body != nil {
  6791  			res.Body.Close()
  6792  		}
  6793  		return nil, gensupport.WrapError(&googleapi.Error{
  6794  			Code:   res.StatusCode,
  6795  			Header: res.Header,
  6796  		})
  6797  	}
  6798  	if err != nil {
  6799  		return nil, err
  6800  	}
  6801  	defer googleapi.CloseBody(res)
  6802  	if err := googleapi.CheckResponse(res); err != nil {
  6803  		return nil, gensupport.WrapError(err)
  6804  	}
  6805  	ret := &GoogleCloudChannelV1ChannelPartnerRepricingConfig{
  6806  		ServerResponse: googleapi.ServerResponse{
  6807  			Header:         res.Header,
  6808  			HTTPStatusCode: res.StatusCode,
  6809  		},
  6810  	}
  6811  	target := &ret
  6812  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6813  		return nil, err
  6814  	}
  6815  	return ret, nil
  6816  }
  6817  
  6818  type AccountsChannelPartnerLinksChannelPartnerRepricingConfigsListCall struct {
  6819  	s            *Service
  6820  	parent       string
  6821  	urlParams_   gensupport.URLParams
  6822  	ifNoneMatch_ string
  6823  	ctx_         context.Context
  6824  	header_      http.Header
  6825  }
  6826  
  6827  // List: Lists information about how a Reseller modifies their bill before
  6828  // sending it to a ChannelPartner. Possible Error Codes: * PERMISSION_DENIED:
  6829  // If the account making the request and the account being queried are
  6830  // different. * NOT_FOUND: The ChannelPartnerRepricingConfig specified does not
  6831  // exist or is not associated with the given account. * INTERNAL: Any non-user
  6832  // error related to technical issues in the backend. In this case, contact
  6833  // Cloud Channel support. Return Value: If successful, the
  6834  // ChannelPartnerRepricingConfig resources. The data for each resource is
  6835  // displayed in the ascending order of: * Channel Partner ID *
  6836  // RepricingConfig.effective_invoice_month *
  6837  // ChannelPartnerRepricingConfig.update_time If unsuccessful, returns an error.
  6838  //
  6839  //   - parent: The resource name of the account's ChannelPartnerLink. Parent uses
  6840  //     the format:
  6841  //     accounts/{account_id}/channelPartnerLinks/{channel_partner_id}. Supports
  6842  //     accounts/{account_id}/channelPartnerLinks/- to retrieve configs for all
  6843  //     channel partners.
  6844  func (r *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsService) List(parent string) *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsListCall {
  6845  	c := &AccountsChannelPartnerLinksChannelPartnerRepricingConfigsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6846  	c.parent = parent
  6847  	return c
  6848  }
  6849  
  6850  // Filter sets the optional parameter "filter": A filter for
  6851  // [CloudChannelService.ListChannelPartnerRepricingConfigs] results
  6852  // (channel_partner_link only). You can use this filter when you support a
  6853  // BatchGet-like query. To use the filter, you must set
  6854  // `parent=accounts/{account_id}/channelPartnerLinks/-`. Example:
  6855  // `channel_partner_link = accounts/account_id/channelPartnerLinks/c1` OR
  6856  // `channel_partner_link = accounts/account_id/channelPartnerLinks/c2`.
  6857  func (c *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsListCall) Filter(filter string) *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsListCall {
  6858  	c.urlParams_.Set("filter", filter)
  6859  	return c
  6860  }
  6861  
  6862  // PageSize sets the optional parameter "pageSize": The maximum number of
  6863  // repricing configs to return. The service may return fewer than this value.
  6864  // If unspecified, returns a maximum of 50 rules. The maximum value is 100;
  6865  // values above 100 will be coerced to 100.
  6866  func (c *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsListCall) PageSize(pageSize int64) *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsListCall {
  6867  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  6868  	return c
  6869  }
  6870  
  6871  // PageToken sets the optional parameter "pageToken": A token identifying a
  6872  // page of results beyond the first page. Obtained through
  6873  // ListChannelPartnerRepricingConfigsResponse.next_page_token of the previous
  6874  // CloudChannelService.ListChannelPartnerRepricingConfigs call.
  6875  func (c *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsListCall) PageToken(pageToken string) *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsListCall {
  6876  	c.urlParams_.Set("pageToken", pageToken)
  6877  	return c
  6878  }
  6879  
  6880  // Fields allows partial responses to be retrieved. See
  6881  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6882  // details.
  6883  func (c *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsListCall) Fields(s ...googleapi.Field) *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsListCall {
  6884  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6885  	return c
  6886  }
  6887  
  6888  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  6889  // object's ETag matches the given value. This is useful for getting updates
  6890  // only after the object has changed since the last request.
  6891  func (c *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsListCall) IfNoneMatch(entityTag string) *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsListCall {
  6892  	c.ifNoneMatch_ = entityTag
  6893  	return c
  6894  }
  6895  
  6896  // Context sets the context to be used in this call's Do method.
  6897  func (c *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsListCall) Context(ctx context.Context) *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsListCall {
  6898  	c.ctx_ = ctx
  6899  	return c
  6900  }
  6901  
  6902  // Header returns a http.Header that can be modified by the caller to add
  6903  // headers to the request.
  6904  func (c *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsListCall) Header() http.Header {
  6905  	if c.header_ == nil {
  6906  		c.header_ = make(http.Header)
  6907  	}
  6908  	return c.header_
  6909  }
  6910  
  6911  func (c *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsListCall) doRequest(alt string) (*http.Response, error) {
  6912  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  6913  	if c.ifNoneMatch_ != "" {
  6914  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  6915  	}
  6916  	var body io.Reader = nil
  6917  	c.urlParams_.Set("alt", alt)
  6918  	c.urlParams_.Set("prettyPrint", "false")
  6919  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/channelPartnerRepricingConfigs")
  6920  	urls += "?" + c.urlParams_.Encode()
  6921  	req, err := http.NewRequest("GET", urls, body)
  6922  	if err != nil {
  6923  		return nil, err
  6924  	}
  6925  	req.Header = reqHeaders
  6926  	googleapi.Expand(req.URL, map[string]string{
  6927  		"parent": c.parent,
  6928  	})
  6929  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6930  }
  6931  
  6932  // Do executes the "cloudchannel.accounts.channelPartnerLinks.channelPartnerRepricingConfigs.list" call.
  6933  // Any non-2xx status code is an error. Response headers are in either
  6934  // *GoogleCloudChannelV1ListChannelPartnerRepricingConfigsResponse.ServerRespons
  6935  // e.Header or (if a response was returned at all) in
  6936  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  6937  // whether the returned error was because http.StatusNotModified was returned.
  6938  func (c *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1ListChannelPartnerRepricingConfigsResponse, error) {
  6939  	gensupport.SetOptions(c.urlParams_, opts...)
  6940  	res, err := c.doRequest("json")
  6941  	if res != nil && res.StatusCode == http.StatusNotModified {
  6942  		if res.Body != nil {
  6943  			res.Body.Close()
  6944  		}
  6945  		return nil, gensupport.WrapError(&googleapi.Error{
  6946  			Code:   res.StatusCode,
  6947  			Header: res.Header,
  6948  		})
  6949  	}
  6950  	if err != nil {
  6951  		return nil, err
  6952  	}
  6953  	defer googleapi.CloseBody(res)
  6954  	if err := googleapi.CheckResponse(res); err != nil {
  6955  		return nil, gensupport.WrapError(err)
  6956  	}
  6957  	ret := &GoogleCloudChannelV1ListChannelPartnerRepricingConfigsResponse{
  6958  		ServerResponse: googleapi.ServerResponse{
  6959  			Header:         res.Header,
  6960  			HTTPStatusCode: res.StatusCode,
  6961  		},
  6962  	}
  6963  	target := &ret
  6964  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6965  		return nil, err
  6966  	}
  6967  	return ret, nil
  6968  }
  6969  
  6970  // Pages invokes f for each page of results.
  6971  // A non-nil error returned from f will halt the iteration.
  6972  // The provided context supersedes any context provided to the Context method.
  6973  func (c *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsListCall) Pages(ctx context.Context, f func(*GoogleCloudChannelV1ListChannelPartnerRepricingConfigsResponse) error) error {
  6974  	c.ctx_ = ctx
  6975  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  6976  	for {
  6977  		x, err := c.Do()
  6978  		if err != nil {
  6979  			return err
  6980  		}
  6981  		if err := f(x); err != nil {
  6982  			return err
  6983  		}
  6984  		if x.NextPageToken == "" {
  6985  			return nil
  6986  		}
  6987  		c.PageToken(x.NextPageToken)
  6988  	}
  6989  }
  6990  
  6991  type AccountsChannelPartnerLinksChannelPartnerRepricingConfigsPatchCall struct {
  6992  	s                                                 *Service
  6993  	name                                              string
  6994  	googlecloudchannelv1channelpartnerrepricingconfig *GoogleCloudChannelV1ChannelPartnerRepricingConfig
  6995  	urlParams_                                        gensupport.URLParams
  6996  	ctx_                                              context.Context
  6997  	header_                                           http.Header
  6998  }
  6999  
  7000  // Patch: Updates a ChannelPartnerRepricingConfig. Call this method to set
  7001  // modifications for a specific ChannelPartner's bill. This method overwrites
  7002  // the existing CustomerRepricingConfig. You can only update configs if the
  7003  // RepricingConfig.effective_invoice_month is a future month. To make changes
  7004  // to configs for the current month, use CreateChannelPartnerRepricingConfig,
  7005  // taking note of its restrictions. You cannot update the
  7006  // RepricingConfig.effective_invoice_month. When updating a config in the
  7007  // future: * This config must already exist. Possible Error Codes: *
  7008  // PERMISSION_DENIED: If the account making the request and the account being
  7009  // queried are different. * INVALID_ARGUMENT: Missing or invalid required
  7010  // parameters in the request. Also displays if the updated config is for the
  7011  // current month or past months. * NOT_FOUND: The ChannelPartnerRepricingConfig
  7012  // specified does not exist or is not associated with the given account. *
  7013  // INTERNAL: Any non-user error related to technical issues in the backend. In
  7014  // this case, contact Cloud Channel support. Return Value: If successful, the
  7015  // updated ChannelPartnerRepricingConfig resource, otherwise returns an error.
  7016  //
  7017  //   - name: Output only. Resource name of the ChannelPartnerRepricingConfig.
  7018  //     Format:
  7019  //     accounts/{account_id}/channelPartnerLinks/{channel_partner_id}/channelPartn
  7020  //     erRepricingConfigs/{id}.
  7021  func (r *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsService) Patch(name string, googlecloudchannelv1channelpartnerrepricingconfig *GoogleCloudChannelV1ChannelPartnerRepricingConfig) *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsPatchCall {
  7022  	c := &AccountsChannelPartnerLinksChannelPartnerRepricingConfigsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7023  	c.name = name
  7024  	c.googlecloudchannelv1channelpartnerrepricingconfig = googlecloudchannelv1channelpartnerrepricingconfig
  7025  	return c
  7026  }
  7027  
  7028  // Fields allows partial responses to be retrieved. See
  7029  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7030  // details.
  7031  func (c *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsPatchCall) Fields(s ...googleapi.Field) *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsPatchCall {
  7032  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7033  	return c
  7034  }
  7035  
  7036  // Context sets the context to be used in this call's Do method.
  7037  func (c *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsPatchCall) Context(ctx context.Context) *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsPatchCall {
  7038  	c.ctx_ = ctx
  7039  	return c
  7040  }
  7041  
  7042  // Header returns a http.Header that can be modified by the caller to add
  7043  // headers to the request.
  7044  func (c *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsPatchCall) Header() http.Header {
  7045  	if c.header_ == nil {
  7046  		c.header_ = make(http.Header)
  7047  	}
  7048  	return c.header_
  7049  }
  7050  
  7051  func (c *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsPatchCall) doRequest(alt string) (*http.Response, error) {
  7052  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  7053  	var body io.Reader = nil
  7054  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudchannelv1channelpartnerrepricingconfig)
  7055  	if err != nil {
  7056  		return nil, err
  7057  	}
  7058  	c.urlParams_.Set("alt", alt)
  7059  	c.urlParams_.Set("prettyPrint", "false")
  7060  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  7061  	urls += "?" + c.urlParams_.Encode()
  7062  	req, err := http.NewRequest("PATCH", urls, body)
  7063  	if err != nil {
  7064  		return nil, err
  7065  	}
  7066  	req.Header = reqHeaders
  7067  	googleapi.Expand(req.URL, map[string]string{
  7068  		"name": c.name,
  7069  	})
  7070  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7071  }
  7072  
  7073  // Do executes the "cloudchannel.accounts.channelPartnerLinks.channelPartnerRepricingConfigs.patch" call.
  7074  // Any non-2xx status code is an error. Response headers are in either
  7075  // *GoogleCloudChannelV1ChannelPartnerRepricingConfig.ServerResponse.Header or
  7076  // (if a response was returned at all) in error.(*googleapi.Error).Header. Use
  7077  // googleapi.IsNotModified to check whether the returned error was because
  7078  // http.StatusNotModified was returned.
  7079  func (c *AccountsChannelPartnerLinksChannelPartnerRepricingConfigsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1ChannelPartnerRepricingConfig, error) {
  7080  	gensupport.SetOptions(c.urlParams_, opts...)
  7081  	res, err := c.doRequest("json")
  7082  	if res != nil && res.StatusCode == http.StatusNotModified {
  7083  		if res.Body != nil {
  7084  			res.Body.Close()
  7085  		}
  7086  		return nil, gensupport.WrapError(&googleapi.Error{
  7087  			Code:   res.StatusCode,
  7088  			Header: res.Header,
  7089  		})
  7090  	}
  7091  	if err != nil {
  7092  		return nil, err
  7093  	}
  7094  	defer googleapi.CloseBody(res)
  7095  	if err := googleapi.CheckResponse(res); err != nil {
  7096  		return nil, gensupport.WrapError(err)
  7097  	}
  7098  	ret := &GoogleCloudChannelV1ChannelPartnerRepricingConfig{
  7099  		ServerResponse: googleapi.ServerResponse{
  7100  			Header:         res.Header,
  7101  			HTTPStatusCode: res.StatusCode,
  7102  		},
  7103  	}
  7104  	target := &ret
  7105  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7106  		return nil, err
  7107  	}
  7108  	return ret, nil
  7109  }
  7110  
  7111  type AccountsChannelPartnerLinksCustomersCreateCall struct {
  7112  	s                            *Service
  7113  	parent                       string
  7114  	googlecloudchannelv1customer *GoogleCloudChannelV1Customer
  7115  	urlParams_                   gensupport.URLParams
  7116  	ctx_                         context.Context
  7117  	header_                      http.Header
  7118  }
  7119  
  7120  // Create: Creates a new Customer resource under the reseller or distributor
  7121  // account. Possible error codes: * PERMISSION_DENIED: * The reseller account
  7122  // making the request is different from the reseller account in the API
  7123  // request. * You are not authorized to create a customer. See
  7124  // https://support.google.com/channelservices/answer/9759265 *
  7125  // INVALID_ARGUMENT: * Required request parameters are missing or invalid. *
  7126  // Domain field value doesn't match the primary email domain. Return value: The
  7127  // newly created Customer resource.
  7128  //
  7129  //   - parent: The resource name of reseller account in which to create the
  7130  //     customer. Parent uses the format: accounts/{account_id}.
  7131  func (r *AccountsChannelPartnerLinksCustomersService) Create(parent string, googlecloudchannelv1customer *GoogleCloudChannelV1Customer) *AccountsChannelPartnerLinksCustomersCreateCall {
  7132  	c := &AccountsChannelPartnerLinksCustomersCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7133  	c.parent = parent
  7134  	c.googlecloudchannelv1customer = googlecloudchannelv1customer
  7135  	return c
  7136  }
  7137  
  7138  // Fields allows partial responses to be retrieved. See
  7139  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7140  // details.
  7141  func (c *AccountsChannelPartnerLinksCustomersCreateCall) Fields(s ...googleapi.Field) *AccountsChannelPartnerLinksCustomersCreateCall {
  7142  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7143  	return c
  7144  }
  7145  
  7146  // Context sets the context to be used in this call's Do method.
  7147  func (c *AccountsChannelPartnerLinksCustomersCreateCall) Context(ctx context.Context) *AccountsChannelPartnerLinksCustomersCreateCall {
  7148  	c.ctx_ = ctx
  7149  	return c
  7150  }
  7151  
  7152  // Header returns a http.Header that can be modified by the caller to add
  7153  // headers to the request.
  7154  func (c *AccountsChannelPartnerLinksCustomersCreateCall) Header() http.Header {
  7155  	if c.header_ == nil {
  7156  		c.header_ = make(http.Header)
  7157  	}
  7158  	return c.header_
  7159  }
  7160  
  7161  func (c *AccountsChannelPartnerLinksCustomersCreateCall) doRequest(alt string) (*http.Response, error) {
  7162  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  7163  	var body io.Reader = nil
  7164  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudchannelv1customer)
  7165  	if err != nil {
  7166  		return nil, err
  7167  	}
  7168  	c.urlParams_.Set("alt", alt)
  7169  	c.urlParams_.Set("prettyPrint", "false")
  7170  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/customers")
  7171  	urls += "?" + c.urlParams_.Encode()
  7172  	req, err := http.NewRequest("POST", urls, body)
  7173  	if err != nil {
  7174  		return nil, err
  7175  	}
  7176  	req.Header = reqHeaders
  7177  	googleapi.Expand(req.URL, map[string]string{
  7178  		"parent": c.parent,
  7179  	})
  7180  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7181  }
  7182  
  7183  // Do executes the "cloudchannel.accounts.channelPartnerLinks.customers.create" call.
  7184  // Any non-2xx status code is an error. Response headers are in either
  7185  // *GoogleCloudChannelV1Customer.ServerResponse.Header or (if a response was
  7186  // returned at all) in error.(*googleapi.Error).Header. Use
  7187  // googleapi.IsNotModified to check whether the returned error was because
  7188  // http.StatusNotModified was returned.
  7189  func (c *AccountsChannelPartnerLinksCustomersCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1Customer, error) {
  7190  	gensupport.SetOptions(c.urlParams_, opts...)
  7191  	res, err := c.doRequest("json")
  7192  	if res != nil && res.StatusCode == http.StatusNotModified {
  7193  		if res.Body != nil {
  7194  			res.Body.Close()
  7195  		}
  7196  		return nil, gensupport.WrapError(&googleapi.Error{
  7197  			Code:   res.StatusCode,
  7198  			Header: res.Header,
  7199  		})
  7200  	}
  7201  	if err != nil {
  7202  		return nil, err
  7203  	}
  7204  	defer googleapi.CloseBody(res)
  7205  	if err := googleapi.CheckResponse(res); err != nil {
  7206  		return nil, gensupport.WrapError(err)
  7207  	}
  7208  	ret := &GoogleCloudChannelV1Customer{
  7209  		ServerResponse: googleapi.ServerResponse{
  7210  			Header:         res.Header,
  7211  			HTTPStatusCode: res.StatusCode,
  7212  		},
  7213  	}
  7214  	target := &ret
  7215  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7216  		return nil, err
  7217  	}
  7218  	return ret, nil
  7219  }
  7220  
  7221  type AccountsChannelPartnerLinksCustomersDeleteCall struct {
  7222  	s          *Service
  7223  	name       string
  7224  	urlParams_ gensupport.URLParams
  7225  	ctx_       context.Context
  7226  	header_    http.Header
  7227  }
  7228  
  7229  // Delete: Deletes the given Customer permanently. Possible error codes: *
  7230  // PERMISSION_DENIED: The account making the request does not own this
  7231  // customer. * INVALID_ARGUMENT: Required request parameters are missing or
  7232  // invalid. * FAILED_PRECONDITION: The customer has existing entitlements. *
  7233  // NOT_FOUND: No Customer resource found for the name in the request.
  7234  //
  7235  // - name: The resource name of the customer to delete.
  7236  func (r *AccountsChannelPartnerLinksCustomersService) Delete(name string) *AccountsChannelPartnerLinksCustomersDeleteCall {
  7237  	c := &AccountsChannelPartnerLinksCustomersDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7238  	c.name = name
  7239  	return c
  7240  }
  7241  
  7242  // Fields allows partial responses to be retrieved. See
  7243  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7244  // details.
  7245  func (c *AccountsChannelPartnerLinksCustomersDeleteCall) Fields(s ...googleapi.Field) *AccountsChannelPartnerLinksCustomersDeleteCall {
  7246  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7247  	return c
  7248  }
  7249  
  7250  // Context sets the context to be used in this call's Do method.
  7251  func (c *AccountsChannelPartnerLinksCustomersDeleteCall) Context(ctx context.Context) *AccountsChannelPartnerLinksCustomersDeleteCall {
  7252  	c.ctx_ = ctx
  7253  	return c
  7254  }
  7255  
  7256  // Header returns a http.Header that can be modified by the caller to add
  7257  // headers to the request.
  7258  func (c *AccountsChannelPartnerLinksCustomersDeleteCall) Header() http.Header {
  7259  	if c.header_ == nil {
  7260  		c.header_ = make(http.Header)
  7261  	}
  7262  	return c.header_
  7263  }
  7264  
  7265  func (c *AccountsChannelPartnerLinksCustomersDeleteCall) doRequest(alt string) (*http.Response, error) {
  7266  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  7267  	var body io.Reader = nil
  7268  	c.urlParams_.Set("alt", alt)
  7269  	c.urlParams_.Set("prettyPrint", "false")
  7270  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  7271  	urls += "?" + c.urlParams_.Encode()
  7272  	req, err := http.NewRequest("DELETE", urls, body)
  7273  	if err != nil {
  7274  		return nil, err
  7275  	}
  7276  	req.Header = reqHeaders
  7277  	googleapi.Expand(req.URL, map[string]string{
  7278  		"name": c.name,
  7279  	})
  7280  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7281  }
  7282  
  7283  // Do executes the "cloudchannel.accounts.channelPartnerLinks.customers.delete" call.
  7284  // Any non-2xx status code is an error. Response headers are in either
  7285  // *GoogleProtobufEmpty.ServerResponse.Header or (if a response was returned at
  7286  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  7287  // check whether the returned error was because http.StatusNotModified was
  7288  // returned.
  7289  func (c *AccountsChannelPartnerLinksCustomersDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
  7290  	gensupport.SetOptions(c.urlParams_, opts...)
  7291  	res, err := c.doRequest("json")
  7292  	if res != nil && res.StatusCode == http.StatusNotModified {
  7293  		if res.Body != nil {
  7294  			res.Body.Close()
  7295  		}
  7296  		return nil, gensupport.WrapError(&googleapi.Error{
  7297  			Code:   res.StatusCode,
  7298  			Header: res.Header,
  7299  		})
  7300  	}
  7301  	if err != nil {
  7302  		return nil, err
  7303  	}
  7304  	defer googleapi.CloseBody(res)
  7305  	if err := googleapi.CheckResponse(res); err != nil {
  7306  		return nil, gensupport.WrapError(err)
  7307  	}
  7308  	ret := &GoogleProtobufEmpty{
  7309  		ServerResponse: googleapi.ServerResponse{
  7310  			Header:         res.Header,
  7311  			HTTPStatusCode: res.StatusCode,
  7312  		},
  7313  	}
  7314  	target := &ret
  7315  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7316  		return nil, err
  7317  	}
  7318  	return ret, nil
  7319  }
  7320  
  7321  type AccountsChannelPartnerLinksCustomersGetCall struct {
  7322  	s            *Service
  7323  	name         string
  7324  	urlParams_   gensupport.URLParams
  7325  	ifNoneMatch_ string
  7326  	ctx_         context.Context
  7327  	header_      http.Header
  7328  }
  7329  
  7330  // Get: Returns the requested Customer resource. Possible error codes: *
  7331  // PERMISSION_DENIED: The reseller account making the request is different from
  7332  // the reseller account in the API request. * INVALID_ARGUMENT: Required
  7333  // request parameters are missing or invalid. * NOT_FOUND: The customer
  7334  // resource doesn't exist. Usually the result of an invalid name parameter.
  7335  // Return value: The Customer resource.
  7336  //
  7337  //   - name: The resource name of the customer to retrieve. Name uses the format:
  7338  //     accounts/{account_id}/customers/{customer_id}.
  7339  func (r *AccountsChannelPartnerLinksCustomersService) Get(name string) *AccountsChannelPartnerLinksCustomersGetCall {
  7340  	c := &AccountsChannelPartnerLinksCustomersGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7341  	c.name = name
  7342  	return c
  7343  }
  7344  
  7345  // Fields allows partial responses to be retrieved. See
  7346  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7347  // details.
  7348  func (c *AccountsChannelPartnerLinksCustomersGetCall) Fields(s ...googleapi.Field) *AccountsChannelPartnerLinksCustomersGetCall {
  7349  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7350  	return c
  7351  }
  7352  
  7353  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  7354  // object's ETag matches the given value. This is useful for getting updates
  7355  // only after the object has changed since the last request.
  7356  func (c *AccountsChannelPartnerLinksCustomersGetCall) IfNoneMatch(entityTag string) *AccountsChannelPartnerLinksCustomersGetCall {
  7357  	c.ifNoneMatch_ = entityTag
  7358  	return c
  7359  }
  7360  
  7361  // Context sets the context to be used in this call's Do method.
  7362  func (c *AccountsChannelPartnerLinksCustomersGetCall) Context(ctx context.Context) *AccountsChannelPartnerLinksCustomersGetCall {
  7363  	c.ctx_ = ctx
  7364  	return c
  7365  }
  7366  
  7367  // Header returns a http.Header that can be modified by the caller to add
  7368  // headers to the request.
  7369  func (c *AccountsChannelPartnerLinksCustomersGetCall) Header() http.Header {
  7370  	if c.header_ == nil {
  7371  		c.header_ = make(http.Header)
  7372  	}
  7373  	return c.header_
  7374  }
  7375  
  7376  func (c *AccountsChannelPartnerLinksCustomersGetCall) doRequest(alt string) (*http.Response, error) {
  7377  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  7378  	if c.ifNoneMatch_ != "" {
  7379  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  7380  	}
  7381  	var body io.Reader = nil
  7382  	c.urlParams_.Set("alt", alt)
  7383  	c.urlParams_.Set("prettyPrint", "false")
  7384  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  7385  	urls += "?" + c.urlParams_.Encode()
  7386  	req, err := http.NewRequest("GET", urls, body)
  7387  	if err != nil {
  7388  		return nil, err
  7389  	}
  7390  	req.Header = reqHeaders
  7391  	googleapi.Expand(req.URL, map[string]string{
  7392  		"name": c.name,
  7393  	})
  7394  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7395  }
  7396  
  7397  // Do executes the "cloudchannel.accounts.channelPartnerLinks.customers.get" call.
  7398  // Any non-2xx status code is an error. Response headers are in either
  7399  // *GoogleCloudChannelV1Customer.ServerResponse.Header or (if a response was
  7400  // returned at all) in error.(*googleapi.Error).Header. Use
  7401  // googleapi.IsNotModified to check whether the returned error was because
  7402  // http.StatusNotModified was returned.
  7403  func (c *AccountsChannelPartnerLinksCustomersGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1Customer, error) {
  7404  	gensupport.SetOptions(c.urlParams_, opts...)
  7405  	res, err := c.doRequest("json")
  7406  	if res != nil && res.StatusCode == http.StatusNotModified {
  7407  		if res.Body != nil {
  7408  			res.Body.Close()
  7409  		}
  7410  		return nil, gensupport.WrapError(&googleapi.Error{
  7411  			Code:   res.StatusCode,
  7412  			Header: res.Header,
  7413  		})
  7414  	}
  7415  	if err != nil {
  7416  		return nil, err
  7417  	}
  7418  	defer googleapi.CloseBody(res)
  7419  	if err := googleapi.CheckResponse(res); err != nil {
  7420  		return nil, gensupport.WrapError(err)
  7421  	}
  7422  	ret := &GoogleCloudChannelV1Customer{
  7423  		ServerResponse: googleapi.ServerResponse{
  7424  			Header:         res.Header,
  7425  			HTTPStatusCode: res.StatusCode,
  7426  		},
  7427  	}
  7428  	target := &ret
  7429  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7430  		return nil, err
  7431  	}
  7432  	return ret, nil
  7433  }
  7434  
  7435  type AccountsChannelPartnerLinksCustomersImportCall struct {
  7436  	s                                         *Service
  7437  	parent                                    string
  7438  	googlecloudchannelv1importcustomerrequest *GoogleCloudChannelV1ImportCustomerRequest
  7439  	urlParams_                                gensupport.URLParams
  7440  	ctx_                                      context.Context
  7441  	header_                                   http.Header
  7442  }
  7443  
  7444  // Import: Imports a Customer from the Cloud Identity associated with the
  7445  // provided Cloud Identity ID or domain before a TransferEntitlements call. If
  7446  // a linked Customer already exists and overwrite_if_exists is true, it will
  7447  // update that Customer's data. Possible error codes: * PERMISSION_DENIED: *
  7448  // The reseller account making the request is different from the reseller
  7449  // account in the API request. * You are not authorized to import the customer.
  7450  // See https://support.google.com/channelservices/answer/9759265 * NOT_FOUND:
  7451  // Cloud Identity doesn't exist or was deleted. * INVALID_ARGUMENT: Required
  7452  // parameters are missing, or the auth_token is expired or invalid. *
  7453  // ALREADY_EXISTS: A customer already exists and has conflicting critical
  7454  // fields. Requires an overwrite. Return value: The Customer.
  7455  //
  7456  //   - parent: The resource name of the reseller's account. Parent takes the
  7457  //     format: accounts/{account_id} or
  7458  //     accounts/{account_id}/channelPartnerLinks/{channel_partner_id}.
  7459  func (r *AccountsChannelPartnerLinksCustomersService) Import(parent string, googlecloudchannelv1importcustomerrequest *GoogleCloudChannelV1ImportCustomerRequest) *AccountsChannelPartnerLinksCustomersImportCall {
  7460  	c := &AccountsChannelPartnerLinksCustomersImportCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7461  	c.parent = parent
  7462  	c.googlecloudchannelv1importcustomerrequest = googlecloudchannelv1importcustomerrequest
  7463  	return c
  7464  }
  7465  
  7466  // Fields allows partial responses to be retrieved. See
  7467  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7468  // details.
  7469  func (c *AccountsChannelPartnerLinksCustomersImportCall) Fields(s ...googleapi.Field) *AccountsChannelPartnerLinksCustomersImportCall {
  7470  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7471  	return c
  7472  }
  7473  
  7474  // Context sets the context to be used in this call's Do method.
  7475  func (c *AccountsChannelPartnerLinksCustomersImportCall) Context(ctx context.Context) *AccountsChannelPartnerLinksCustomersImportCall {
  7476  	c.ctx_ = ctx
  7477  	return c
  7478  }
  7479  
  7480  // Header returns a http.Header that can be modified by the caller to add
  7481  // headers to the request.
  7482  func (c *AccountsChannelPartnerLinksCustomersImportCall) Header() http.Header {
  7483  	if c.header_ == nil {
  7484  		c.header_ = make(http.Header)
  7485  	}
  7486  	return c.header_
  7487  }
  7488  
  7489  func (c *AccountsChannelPartnerLinksCustomersImportCall) doRequest(alt string) (*http.Response, error) {
  7490  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  7491  	var body io.Reader = nil
  7492  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudchannelv1importcustomerrequest)
  7493  	if err != nil {
  7494  		return nil, err
  7495  	}
  7496  	c.urlParams_.Set("alt", alt)
  7497  	c.urlParams_.Set("prettyPrint", "false")
  7498  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/customers:import")
  7499  	urls += "?" + c.urlParams_.Encode()
  7500  	req, err := http.NewRequest("POST", urls, body)
  7501  	if err != nil {
  7502  		return nil, err
  7503  	}
  7504  	req.Header = reqHeaders
  7505  	googleapi.Expand(req.URL, map[string]string{
  7506  		"parent": c.parent,
  7507  	})
  7508  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7509  }
  7510  
  7511  // Do executes the "cloudchannel.accounts.channelPartnerLinks.customers.import" call.
  7512  // Any non-2xx status code is an error. Response headers are in either
  7513  // *GoogleCloudChannelV1Customer.ServerResponse.Header or (if a response was
  7514  // returned at all) in error.(*googleapi.Error).Header. Use
  7515  // googleapi.IsNotModified to check whether the returned error was because
  7516  // http.StatusNotModified was returned.
  7517  func (c *AccountsChannelPartnerLinksCustomersImportCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1Customer, error) {
  7518  	gensupport.SetOptions(c.urlParams_, opts...)
  7519  	res, err := c.doRequest("json")
  7520  	if res != nil && res.StatusCode == http.StatusNotModified {
  7521  		if res.Body != nil {
  7522  			res.Body.Close()
  7523  		}
  7524  		return nil, gensupport.WrapError(&googleapi.Error{
  7525  			Code:   res.StatusCode,
  7526  			Header: res.Header,
  7527  		})
  7528  	}
  7529  	if err != nil {
  7530  		return nil, err
  7531  	}
  7532  	defer googleapi.CloseBody(res)
  7533  	if err := googleapi.CheckResponse(res); err != nil {
  7534  		return nil, gensupport.WrapError(err)
  7535  	}
  7536  	ret := &GoogleCloudChannelV1Customer{
  7537  		ServerResponse: googleapi.ServerResponse{
  7538  			Header:         res.Header,
  7539  			HTTPStatusCode: res.StatusCode,
  7540  		},
  7541  	}
  7542  	target := &ret
  7543  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7544  		return nil, err
  7545  	}
  7546  	return ret, nil
  7547  }
  7548  
  7549  type AccountsChannelPartnerLinksCustomersListCall struct {
  7550  	s            *Service
  7551  	parent       string
  7552  	urlParams_   gensupport.URLParams
  7553  	ifNoneMatch_ string
  7554  	ctx_         context.Context
  7555  	header_      http.Header
  7556  }
  7557  
  7558  // List: List Customers. Possible error codes: * PERMISSION_DENIED: The
  7559  // reseller account making the request is different from the reseller account
  7560  // in the API request. * INVALID_ARGUMENT: Required request parameters are
  7561  // missing or invalid. Return value: List of Customers, or an empty list if
  7562  // there are no customers.
  7563  //
  7564  //   - parent: The resource name of the reseller account to list customers from.
  7565  //     Parent uses the format: accounts/{account_id}.
  7566  func (r *AccountsChannelPartnerLinksCustomersService) List(parent string) *AccountsChannelPartnerLinksCustomersListCall {
  7567  	c := &AccountsChannelPartnerLinksCustomersListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7568  	c.parent = parent
  7569  	return c
  7570  }
  7571  
  7572  // Filter sets the optional parameter "filter": Filters applied to the
  7573  // [CloudChannelService.ListCustomers] results. See
  7574  // https://cloud.google.com/channel/docs/concepts/google-cloud/filter-customers
  7575  // for more information.
  7576  func (c *AccountsChannelPartnerLinksCustomersListCall) Filter(filter string) *AccountsChannelPartnerLinksCustomersListCall {
  7577  	c.urlParams_.Set("filter", filter)
  7578  	return c
  7579  }
  7580  
  7581  // PageSize sets the optional parameter "pageSize": The maximum number of
  7582  // customers to return. The service may return fewer than this value. If
  7583  // unspecified, returns at most 10 customers. The maximum value is 50.
  7584  func (c *AccountsChannelPartnerLinksCustomersListCall) PageSize(pageSize int64) *AccountsChannelPartnerLinksCustomersListCall {
  7585  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  7586  	return c
  7587  }
  7588  
  7589  // PageToken sets the optional parameter "pageToken": A token identifying a
  7590  // page of results other than the first page. Obtained through
  7591  // ListCustomersResponse.next_page_token of the previous
  7592  // CloudChannelService.ListCustomers call.
  7593  func (c *AccountsChannelPartnerLinksCustomersListCall) PageToken(pageToken string) *AccountsChannelPartnerLinksCustomersListCall {
  7594  	c.urlParams_.Set("pageToken", pageToken)
  7595  	return c
  7596  }
  7597  
  7598  // Fields allows partial responses to be retrieved. See
  7599  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7600  // details.
  7601  func (c *AccountsChannelPartnerLinksCustomersListCall) Fields(s ...googleapi.Field) *AccountsChannelPartnerLinksCustomersListCall {
  7602  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7603  	return c
  7604  }
  7605  
  7606  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  7607  // object's ETag matches the given value. This is useful for getting updates
  7608  // only after the object has changed since the last request.
  7609  func (c *AccountsChannelPartnerLinksCustomersListCall) IfNoneMatch(entityTag string) *AccountsChannelPartnerLinksCustomersListCall {
  7610  	c.ifNoneMatch_ = entityTag
  7611  	return c
  7612  }
  7613  
  7614  // Context sets the context to be used in this call's Do method.
  7615  func (c *AccountsChannelPartnerLinksCustomersListCall) Context(ctx context.Context) *AccountsChannelPartnerLinksCustomersListCall {
  7616  	c.ctx_ = ctx
  7617  	return c
  7618  }
  7619  
  7620  // Header returns a http.Header that can be modified by the caller to add
  7621  // headers to the request.
  7622  func (c *AccountsChannelPartnerLinksCustomersListCall) Header() http.Header {
  7623  	if c.header_ == nil {
  7624  		c.header_ = make(http.Header)
  7625  	}
  7626  	return c.header_
  7627  }
  7628  
  7629  func (c *AccountsChannelPartnerLinksCustomersListCall) doRequest(alt string) (*http.Response, error) {
  7630  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  7631  	if c.ifNoneMatch_ != "" {
  7632  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  7633  	}
  7634  	var body io.Reader = nil
  7635  	c.urlParams_.Set("alt", alt)
  7636  	c.urlParams_.Set("prettyPrint", "false")
  7637  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/customers")
  7638  	urls += "?" + c.urlParams_.Encode()
  7639  	req, err := http.NewRequest("GET", urls, body)
  7640  	if err != nil {
  7641  		return nil, err
  7642  	}
  7643  	req.Header = reqHeaders
  7644  	googleapi.Expand(req.URL, map[string]string{
  7645  		"parent": c.parent,
  7646  	})
  7647  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7648  }
  7649  
  7650  // Do executes the "cloudchannel.accounts.channelPartnerLinks.customers.list" call.
  7651  // Any non-2xx status code is an error. Response headers are in either
  7652  // *GoogleCloudChannelV1ListCustomersResponse.ServerResponse.Header or (if a
  7653  // response was returned at all) in error.(*googleapi.Error).Header. Use
  7654  // googleapi.IsNotModified to check whether the returned error was because
  7655  // http.StatusNotModified was returned.
  7656  func (c *AccountsChannelPartnerLinksCustomersListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1ListCustomersResponse, error) {
  7657  	gensupport.SetOptions(c.urlParams_, opts...)
  7658  	res, err := c.doRequest("json")
  7659  	if res != nil && res.StatusCode == http.StatusNotModified {
  7660  		if res.Body != nil {
  7661  			res.Body.Close()
  7662  		}
  7663  		return nil, gensupport.WrapError(&googleapi.Error{
  7664  			Code:   res.StatusCode,
  7665  			Header: res.Header,
  7666  		})
  7667  	}
  7668  	if err != nil {
  7669  		return nil, err
  7670  	}
  7671  	defer googleapi.CloseBody(res)
  7672  	if err := googleapi.CheckResponse(res); err != nil {
  7673  		return nil, gensupport.WrapError(err)
  7674  	}
  7675  	ret := &GoogleCloudChannelV1ListCustomersResponse{
  7676  		ServerResponse: googleapi.ServerResponse{
  7677  			Header:         res.Header,
  7678  			HTTPStatusCode: res.StatusCode,
  7679  		},
  7680  	}
  7681  	target := &ret
  7682  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7683  		return nil, err
  7684  	}
  7685  	return ret, nil
  7686  }
  7687  
  7688  // Pages invokes f for each page of results.
  7689  // A non-nil error returned from f will halt the iteration.
  7690  // The provided context supersedes any context provided to the Context method.
  7691  func (c *AccountsChannelPartnerLinksCustomersListCall) Pages(ctx context.Context, f func(*GoogleCloudChannelV1ListCustomersResponse) error) error {
  7692  	c.ctx_ = ctx
  7693  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  7694  	for {
  7695  		x, err := c.Do()
  7696  		if err != nil {
  7697  			return err
  7698  		}
  7699  		if err := f(x); err != nil {
  7700  			return err
  7701  		}
  7702  		if x.NextPageToken == "" {
  7703  			return nil
  7704  		}
  7705  		c.PageToken(x.NextPageToken)
  7706  	}
  7707  }
  7708  
  7709  type AccountsChannelPartnerLinksCustomersPatchCall struct {
  7710  	s                            *Service
  7711  	name                         string
  7712  	googlecloudchannelv1customer *GoogleCloudChannelV1Customer
  7713  	urlParams_                   gensupport.URLParams
  7714  	ctx_                         context.Context
  7715  	header_                      http.Header
  7716  }
  7717  
  7718  // Patch: Updates an existing Customer resource for the reseller or
  7719  // distributor. Possible error codes: * PERMISSION_DENIED: The reseller account
  7720  // making the request is different from the reseller account in the API
  7721  // request. * INVALID_ARGUMENT: Required request parameters are missing or
  7722  // invalid. * NOT_FOUND: No Customer resource found for the name in the
  7723  // request. Return value: The updated Customer resource.
  7724  //
  7725  //   - name: Output only. Resource name of the customer. Format:
  7726  //     accounts/{account_id}/customers/{customer_id}.
  7727  func (r *AccountsChannelPartnerLinksCustomersService) Patch(name string, googlecloudchannelv1customer *GoogleCloudChannelV1Customer) *AccountsChannelPartnerLinksCustomersPatchCall {
  7728  	c := &AccountsChannelPartnerLinksCustomersPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7729  	c.name = name
  7730  	c.googlecloudchannelv1customer = googlecloudchannelv1customer
  7731  	return c
  7732  }
  7733  
  7734  // UpdateMask sets the optional parameter "updateMask": The update mask that
  7735  // applies to the resource.
  7736  func (c *AccountsChannelPartnerLinksCustomersPatchCall) UpdateMask(updateMask string) *AccountsChannelPartnerLinksCustomersPatchCall {
  7737  	c.urlParams_.Set("updateMask", updateMask)
  7738  	return c
  7739  }
  7740  
  7741  // Fields allows partial responses to be retrieved. See
  7742  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7743  // details.
  7744  func (c *AccountsChannelPartnerLinksCustomersPatchCall) Fields(s ...googleapi.Field) *AccountsChannelPartnerLinksCustomersPatchCall {
  7745  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7746  	return c
  7747  }
  7748  
  7749  // Context sets the context to be used in this call's Do method.
  7750  func (c *AccountsChannelPartnerLinksCustomersPatchCall) Context(ctx context.Context) *AccountsChannelPartnerLinksCustomersPatchCall {
  7751  	c.ctx_ = ctx
  7752  	return c
  7753  }
  7754  
  7755  // Header returns a http.Header that can be modified by the caller to add
  7756  // headers to the request.
  7757  func (c *AccountsChannelPartnerLinksCustomersPatchCall) Header() http.Header {
  7758  	if c.header_ == nil {
  7759  		c.header_ = make(http.Header)
  7760  	}
  7761  	return c.header_
  7762  }
  7763  
  7764  func (c *AccountsChannelPartnerLinksCustomersPatchCall) doRequest(alt string) (*http.Response, error) {
  7765  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  7766  	var body io.Reader = nil
  7767  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudchannelv1customer)
  7768  	if err != nil {
  7769  		return nil, err
  7770  	}
  7771  	c.urlParams_.Set("alt", alt)
  7772  	c.urlParams_.Set("prettyPrint", "false")
  7773  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  7774  	urls += "?" + c.urlParams_.Encode()
  7775  	req, err := http.NewRequest("PATCH", urls, body)
  7776  	if err != nil {
  7777  		return nil, err
  7778  	}
  7779  	req.Header = reqHeaders
  7780  	googleapi.Expand(req.URL, map[string]string{
  7781  		"name": c.name,
  7782  	})
  7783  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7784  }
  7785  
  7786  // Do executes the "cloudchannel.accounts.channelPartnerLinks.customers.patch" call.
  7787  // Any non-2xx status code is an error. Response headers are in either
  7788  // *GoogleCloudChannelV1Customer.ServerResponse.Header or (if a response was
  7789  // returned at all) in error.(*googleapi.Error).Header. Use
  7790  // googleapi.IsNotModified to check whether the returned error was because
  7791  // http.StatusNotModified was returned.
  7792  func (c *AccountsChannelPartnerLinksCustomersPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1Customer, error) {
  7793  	gensupport.SetOptions(c.urlParams_, opts...)
  7794  	res, err := c.doRequest("json")
  7795  	if res != nil && res.StatusCode == http.StatusNotModified {
  7796  		if res.Body != nil {
  7797  			res.Body.Close()
  7798  		}
  7799  		return nil, gensupport.WrapError(&googleapi.Error{
  7800  			Code:   res.StatusCode,
  7801  			Header: res.Header,
  7802  		})
  7803  	}
  7804  	if err != nil {
  7805  		return nil, err
  7806  	}
  7807  	defer googleapi.CloseBody(res)
  7808  	if err := googleapi.CheckResponse(res); err != nil {
  7809  		return nil, gensupport.WrapError(err)
  7810  	}
  7811  	ret := &GoogleCloudChannelV1Customer{
  7812  		ServerResponse: googleapi.ServerResponse{
  7813  			Header:         res.Header,
  7814  			HTTPStatusCode: res.StatusCode,
  7815  		},
  7816  	}
  7817  	target := &ret
  7818  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7819  		return nil, err
  7820  	}
  7821  	return ret, nil
  7822  }
  7823  
  7824  type AccountsCustomersCreateCall struct {
  7825  	s                            *Service
  7826  	parent                       string
  7827  	googlecloudchannelv1customer *GoogleCloudChannelV1Customer
  7828  	urlParams_                   gensupport.URLParams
  7829  	ctx_                         context.Context
  7830  	header_                      http.Header
  7831  }
  7832  
  7833  // Create: Creates a new Customer resource under the reseller or distributor
  7834  // account. Possible error codes: * PERMISSION_DENIED: * The reseller account
  7835  // making the request is different from the reseller account in the API
  7836  // request. * You are not authorized to create a customer. See
  7837  // https://support.google.com/channelservices/answer/9759265 *
  7838  // INVALID_ARGUMENT: * Required request parameters are missing or invalid. *
  7839  // Domain field value doesn't match the primary email domain. Return value: The
  7840  // newly created Customer resource.
  7841  //
  7842  //   - parent: The resource name of reseller account in which to create the
  7843  //     customer. Parent uses the format: accounts/{account_id}.
  7844  func (r *AccountsCustomersService) Create(parent string, googlecloudchannelv1customer *GoogleCloudChannelV1Customer) *AccountsCustomersCreateCall {
  7845  	c := &AccountsCustomersCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7846  	c.parent = parent
  7847  	c.googlecloudchannelv1customer = googlecloudchannelv1customer
  7848  	return c
  7849  }
  7850  
  7851  // Fields allows partial responses to be retrieved. See
  7852  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7853  // details.
  7854  func (c *AccountsCustomersCreateCall) Fields(s ...googleapi.Field) *AccountsCustomersCreateCall {
  7855  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7856  	return c
  7857  }
  7858  
  7859  // Context sets the context to be used in this call's Do method.
  7860  func (c *AccountsCustomersCreateCall) Context(ctx context.Context) *AccountsCustomersCreateCall {
  7861  	c.ctx_ = ctx
  7862  	return c
  7863  }
  7864  
  7865  // Header returns a http.Header that can be modified by the caller to add
  7866  // headers to the request.
  7867  func (c *AccountsCustomersCreateCall) Header() http.Header {
  7868  	if c.header_ == nil {
  7869  		c.header_ = make(http.Header)
  7870  	}
  7871  	return c.header_
  7872  }
  7873  
  7874  func (c *AccountsCustomersCreateCall) doRequest(alt string) (*http.Response, error) {
  7875  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  7876  	var body io.Reader = nil
  7877  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudchannelv1customer)
  7878  	if err != nil {
  7879  		return nil, err
  7880  	}
  7881  	c.urlParams_.Set("alt", alt)
  7882  	c.urlParams_.Set("prettyPrint", "false")
  7883  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/customers")
  7884  	urls += "?" + c.urlParams_.Encode()
  7885  	req, err := http.NewRequest("POST", urls, body)
  7886  	if err != nil {
  7887  		return nil, err
  7888  	}
  7889  	req.Header = reqHeaders
  7890  	googleapi.Expand(req.URL, map[string]string{
  7891  		"parent": c.parent,
  7892  	})
  7893  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7894  }
  7895  
  7896  // Do executes the "cloudchannel.accounts.customers.create" call.
  7897  // Any non-2xx status code is an error. Response headers are in either
  7898  // *GoogleCloudChannelV1Customer.ServerResponse.Header or (if a response was
  7899  // returned at all) in error.(*googleapi.Error).Header. Use
  7900  // googleapi.IsNotModified to check whether the returned error was because
  7901  // http.StatusNotModified was returned.
  7902  func (c *AccountsCustomersCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1Customer, error) {
  7903  	gensupport.SetOptions(c.urlParams_, opts...)
  7904  	res, err := c.doRequest("json")
  7905  	if res != nil && res.StatusCode == http.StatusNotModified {
  7906  		if res.Body != nil {
  7907  			res.Body.Close()
  7908  		}
  7909  		return nil, gensupport.WrapError(&googleapi.Error{
  7910  			Code:   res.StatusCode,
  7911  			Header: res.Header,
  7912  		})
  7913  	}
  7914  	if err != nil {
  7915  		return nil, err
  7916  	}
  7917  	defer googleapi.CloseBody(res)
  7918  	if err := googleapi.CheckResponse(res); err != nil {
  7919  		return nil, gensupport.WrapError(err)
  7920  	}
  7921  	ret := &GoogleCloudChannelV1Customer{
  7922  		ServerResponse: googleapi.ServerResponse{
  7923  			Header:         res.Header,
  7924  			HTTPStatusCode: res.StatusCode,
  7925  		},
  7926  	}
  7927  	target := &ret
  7928  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7929  		return nil, err
  7930  	}
  7931  	return ret, nil
  7932  }
  7933  
  7934  type AccountsCustomersDeleteCall struct {
  7935  	s          *Service
  7936  	name       string
  7937  	urlParams_ gensupport.URLParams
  7938  	ctx_       context.Context
  7939  	header_    http.Header
  7940  }
  7941  
  7942  // Delete: Deletes the given Customer permanently. Possible error codes: *
  7943  // PERMISSION_DENIED: The account making the request does not own this
  7944  // customer. * INVALID_ARGUMENT: Required request parameters are missing or
  7945  // invalid. * FAILED_PRECONDITION: The customer has existing entitlements. *
  7946  // NOT_FOUND: No Customer resource found for the name in the request.
  7947  //
  7948  // - name: The resource name of the customer to delete.
  7949  func (r *AccountsCustomersService) Delete(name string) *AccountsCustomersDeleteCall {
  7950  	c := &AccountsCustomersDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7951  	c.name = name
  7952  	return c
  7953  }
  7954  
  7955  // Fields allows partial responses to be retrieved. See
  7956  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7957  // details.
  7958  func (c *AccountsCustomersDeleteCall) Fields(s ...googleapi.Field) *AccountsCustomersDeleteCall {
  7959  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7960  	return c
  7961  }
  7962  
  7963  // Context sets the context to be used in this call's Do method.
  7964  func (c *AccountsCustomersDeleteCall) Context(ctx context.Context) *AccountsCustomersDeleteCall {
  7965  	c.ctx_ = ctx
  7966  	return c
  7967  }
  7968  
  7969  // Header returns a http.Header that can be modified by the caller to add
  7970  // headers to the request.
  7971  func (c *AccountsCustomersDeleteCall) Header() http.Header {
  7972  	if c.header_ == nil {
  7973  		c.header_ = make(http.Header)
  7974  	}
  7975  	return c.header_
  7976  }
  7977  
  7978  func (c *AccountsCustomersDeleteCall) doRequest(alt string) (*http.Response, error) {
  7979  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  7980  	var body io.Reader = nil
  7981  	c.urlParams_.Set("alt", alt)
  7982  	c.urlParams_.Set("prettyPrint", "false")
  7983  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  7984  	urls += "?" + c.urlParams_.Encode()
  7985  	req, err := http.NewRequest("DELETE", urls, body)
  7986  	if err != nil {
  7987  		return nil, err
  7988  	}
  7989  	req.Header = reqHeaders
  7990  	googleapi.Expand(req.URL, map[string]string{
  7991  		"name": c.name,
  7992  	})
  7993  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7994  }
  7995  
  7996  // Do executes the "cloudchannel.accounts.customers.delete" call.
  7997  // Any non-2xx status code is an error. Response headers are in either
  7998  // *GoogleProtobufEmpty.ServerResponse.Header or (if a response was returned at
  7999  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  8000  // check whether the returned error was because http.StatusNotModified was
  8001  // returned.
  8002  func (c *AccountsCustomersDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
  8003  	gensupport.SetOptions(c.urlParams_, opts...)
  8004  	res, err := c.doRequest("json")
  8005  	if res != nil && res.StatusCode == http.StatusNotModified {
  8006  		if res.Body != nil {
  8007  			res.Body.Close()
  8008  		}
  8009  		return nil, gensupport.WrapError(&googleapi.Error{
  8010  			Code:   res.StatusCode,
  8011  			Header: res.Header,
  8012  		})
  8013  	}
  8014  	if err != nil {
  8015  		return nil, err
  8016  	}
  8017  	defer googleapi.CloseBody(res)
  8018  	if err := googleapi.CheckResponse(res); err != nil {
  8019  		return nil, gensupport.WrapError(err)
  8020  	}
  8021  	ret := &GoogleProtobufEmpty{
  8022  		ServerResponse: googleapi.ServerResponse{
  8023  			Header:         res.Header,
  8024  			HTTPStatusCode: res.StatusCode,
  8025  		},
  8026  	}
  8027  	target := &ret
  8028  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8029  		return nil, err
  8030  	}
  8031  	return ret, nil
  8032  }
  8033  
  8034  type AccountsCustomersGetCall struct {
  8035  	s            *Service
  8036  	name         string
  8037  	urlParams_   gensupport.URLParams
  8038  	ifNoneMatch_ string
  8039  	ctx_         context.Context
  8040  	header_      http.Header
  8041  }
  8042  
  8043  // Get: Returns the requested Customer resource. Possible error codes: *
  8044  // PERMISSION_DENIED: The reseller account making the request is different from
  8045  // the reseller account in the API request. * INVALID_ARGUMENT: Required
  8046  // request parameters are missing or invalid. * NOT_FOUND: The customer
  8047  // resource doesn't exist. Usually the result of an invalid name parameter.
  8048  // Return value: The Customer resource.
  8049  //
  8050  //   - name: The resource name of the customer to retrieve. Name uses the format:
  8051  //     accounts/{account_id}/customers/{customer_id}.
  8052  func (r *AccountsCustomersService) Get(name string) *AccountsCustomersGetCall {
  8053  	c := &AccountsCustomersGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8054  	c.name = name
  8055  	return c
  8056  }
  8057  
  8058  // Fields allows partial responses to be retrieved. See
  8059  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8060  // details.
  8061  func (c *AccountsCustomersGetCall) Fields(s ...googleapi.Field) *AccountsCustomersGetCall {
  8062  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8063  	return c
  8064  }
  8065  
  8066  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  8067  // object's ETag matches the given value. This is useful for getting updates
  8068  // only after the object has changed since the last request.
  8069  func (c *AccountsCustomersGetCall) IfNoneMatch(entityTag string) *AccountsCustomersGetCall {
  8070  	c.ifNoneMatch_ = entityTag
  8071  	return c
  8072  }
  8073  
  8074  // Context sets the context to be used in this call's Do method.
  8075  func (c *AccountsCustomersGetCall) Context(ctx context.Context) *AccountsCustomersGetCall {
  8076  	c.ctx_ = ctx
  8077  	return c
  8078  }
  8079  
  8080  // Header returns a http.Header that can be modified by the caller to add
  8081  // headers to the request.
  8082  func (c *AccountsCustomersGetCall) Header() http.Header {
  8083  	if c.header_ == nil {
  8084  		c.header_ = make(http.Header)
  8085  	}
  8086  	return c.header_
  8087  }
  8088  
  8089  func (c *AccountsCustomersGetCall) doRequest(alt string) (*http.Response, error) {
  8090  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  8091  	if c.ifNoneMatch_ != "" {
  8092  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  8093  	}
  8094  	var body io.Reader = nil
  8095  	c.urlParams_.Set("alt", alt)
  8096  	c.urlParams_.Set("prettyPrint", "false")
  8097  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  8098  	urls += "?" + c.urlParams_.Encode()
  8099  	req, err := http.NewRequest("GET", urls, body)
  8100  	if err != nil {
  8101  		return nil, err
  8102  	}
  8103  	req.Header = reqHeaders
  8104  	googleapi.Expand(req.URL, map[string]string{
  8105  		"name": c.name,
  8106  	})
  8107  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8108  }
  8109  
  8110  // Do executes the "cloudchannel.accounts.customers.get" call.
  8111  // Any non-2xx status code is an error. Response headers are in either
  8112  // *GoogleCloudChannelV1Customer.ServerResponse.Header or (if a response was
  8113  // returned at all) in error.(*googleapi.Error).Header. Use
  8114  // googleapi.IsNotModified to check whether the returned error was because
  8115  // http.StatusNotModified was returned.
  8116  func (c *AccountsCustomersGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1Customer, error) {
  8117  	gensupport.SetOptions(c.urlParams_, opts...)
  8118  	res, err := c.doRequest("json")
  8119  	if res != nil && res.StatusCode == http.StatusNotModified {
  8120  		if res.Body != nil {
  8121  			res.Body.Close()
  8122  		}
  8123  		return nil, gensupport.WrapError(&googleapi.Error{
  8124  			Code:   res.StatusCode,
  8125  			Header: res.Header,
  8126  		})
  8127  	}
  8128  	if err != nil {
  8129  		return nil, err
  8130  	}
  8131  	defer googleapi.CloseBody(res)
  8132  	if err := googleapi.CheckResponse(res); err != nil {
  8133  		return nil, gensupport.WrapError(err)
  8134  	}
  8135  	ret := &GoogleCloudChannelV1Customer{
  8136  		ServerResponse: googleapi.ServerResponse{
  8137  			Header:         res.Header,
  8138  			HTTPStatusCode: res.StatusCode,
  8139  		},
  8140  	}
  8141  	target := &ret
  8142  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8143  		return nil, err
  8144  	}
  8145  	return ret, nil
  8146  }
  8147  
  8148  type AccountsCustomersImportCall struct {
  8149  	s                                         *Service
  8150  	parent                                    string
  8151  	googlecloudchannelv1importcustomerrequest *GoogleCloudChannelV1ImportCustomerRequest
  8152  	urlParams_                                gensupport.URLParams
  8153  	ctx_                                      context.Context
  8154  	header_                                   http.Header
  8155  }
  8156  
  8157  // Import: Imports a Customer from the Cloud Identity associated with the
  8158  // provided Cloud Identity ID or domain before a TransferEntitlements call. If
  8159  // a linked Customer already exists and overwrite_if_exists is true, it will
  8160  // update that Customer's data. Possible error codes: * PERMISSION_DENIED: *
  8161  // The reseller account making the request is different from the reseller
  8162  // account in the API request. * You are not authorized to import the customer.
  8163  // See https://support.google.com/channelservices/answer/9759265 * NOT_FOUND:
  8164  // Cloud Identity doesn't exist or was deleted. * INVALID_ARGUMENT: Required
  8165  // parameters are missing, or the auth_token is expired or invalid. *
  8166  // ALREADY_EXISTS: A customer already exists and has conflicting critical
  8167  // fields. Requires an overwrite. Return value: The Customer.
  8168  //
  8169  //   - parent: The resource name of the reseller's account. Parent takes the
  8170  //     format: accounts/{account_id} or
  8171  //     accounts/{account_id}/channelPartnerLinks/{channel_partner_id}.
  8172  func (r *AccountsCustomersService) Import(parent string, googlecloudchannelv1importcustomerrequest *GoogleCloudChannelV1ImportCustomerRequest) *AccountsCustomersImportCall {
  8173  	c := &AccountsCustomersImportCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8174  	c.parent = parent
  8175  	c.googlecloudchannelv1importcustomerrequest = googlecloudchannelv1importcustomerrequest
  8176  	return c
  8177  }
  8178  
  8179  // Fields allows partial responses to be retrieved. See
  8180  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8181  // details.
  8182  func (c *AccountsCustomersImportCall) Fields(s ...googleapi.Field) *AccountsCustomersImportCall {
  8183  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8184  	return c
  8185  }
  8186  
  8187  // Context sets the context to be used in this call's Do method.
  8188  func (c *AccountsCustomersImportCall) Context(ctx context.Context) *AccountsCustomersImportCall {
  8189  	c.ctx_ = ctx
  8190  	return c
  8191  }
  8192  
  8193  // Header returns a http.Header that can be modified by the caller to add
  8194  // headers to the request.
  8195  func (c *AccountsCustomersImportCall) Header() http.Header {
  8196  	if c.header_ == nil {
  8197  		c.header_ = make(http.Header)
  8198  	}
  8199  	return c.header_
  8200  }
  8201  
  8202  func (c *AccountsCustomersImportCall) doRequest(alt string) (*http.Response, error) {
  8203  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  8204  	var body io.Reader = nil
  8205  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudchannelv1importcustomerrequest)
  8206  	if err != nil {
  8207  		return nil, err
  8208  	}
  8209  	c.urlParams_.Set("alt", alt)
  8210  	c.urlParams_.Set("prettyPrint", "false")
  8211  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/customers:import")
  8212  	urls += "?" + c.urlParams_.Encode()
  8213  	req, err := http.NewRequest("POST", urls, body)
  8214  	if err != nil {
  8215  		return nil, err
  8216  	}
  8217  	req.Header = reqHeaders
  8218  	googleapi.Expand(req.URL, map[string]string{
  8219  		"parent": c.parent,
  8220  	})
  8221  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8222  }
  8223  
  8224  // Do executes the "cloudchannel.accounts.customers.import" call.
  8225  // Any non-2xx status code is an error. Response headers are in either
  8226  // *GoogleCloudChannelV1Customer.ServerResponse.Header or (if a response was
  8227  // returned at all) in error.(*googleapi.Error).Header. Use
  8228  // googleapi.IsNotModified to check whether the returned error was because
  8229  // http.StatusNotModified was returned.
  8230  func (c *AccountsCustomersImportCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1Customer, error) {
  8231  	gensupport.SetOptions(c.urlParams_, opts...)
  8232  	res, err := c.doRequest("json")
  8233  	if res != nil && res.StatusCode == http.StatusNotModified {
  8234  		if res.Body != nil {
  8235  			res.Body.Close()
  8236  		}
  8237  		return nil, gensupport.WrapError(&googleapi.Error{
  8238  			Code:   res.StatusCode,
  8239  			Header: res.Header,
  8240  		})
  8241  	}
  8242  	if err != nil {
  8243  		return nil, err
  8244  	}
  8245  	defer googleapi.CloseBody(res)
  8246  	if err := googleapi.CheckResponse(res); err != nil {
  8247  		return nil, gensupport.WrapError(err)
  8248  	}
  8249  	ret := &GoogleCloudChannelV1Customer{
  8250  		ServerResponse: googleapi.ServerResponse{
  8251  			Header:         res.Header,
  8252  			HTTPStatusCode: res.StatusCode,
  8253  		},
  8254  	}
  8255  	target := &ret
  8256  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8257  		return nil, err
  8258  	}
  8259  	return ret, nil
  8260  }
  8261  
  8262  type AccountsCustomersListCall struct {
  8263  	s            *Service
  8264  	parent       string
  8265  	urlParams_   gensupport.URLParams
  8266  	ifNoneMatch_ string
  8267  	ctx_         context.Context
  8268  	header_      http.Header
  8269  }
  8270  
  8271  // List: List Customers. Possible error codes: * PERMISSION_DENIED: The
  8272  // reseller account making the request is different from the reseller account
  8273  // in the API request. * INVALID_ARGUMENT: Required request parameters are
  8274  // missing or invalid. Return value: List of Customers, or an empty list if
  8275  // there are no customers.
  8276  //
  8277  //   - parent: The resource name of the reseller account to list customers from.
  8278  //     Parent uses the format: accounts/{account_id}.
  8279  func (r *AccountsCustomersService) List(parent string) *AccountsCustomersListCall {
  8280  	c := &AccountsCustomersListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8281  	c.parent = parent
  8282  	return c
  8283  }
  8284  
  8285  // Filter sets the optional parameter "filter": Filters applied to the
  8286  // [CloudChannelService.ListCustomers] results. See
  8287  // https://cloud.google.com/channel/docs/concepts/google-cloud/filter-customers
  8288  // for more information.
  8289  func (c *AccountsCustomersListCall) Filter(filter string) *AccountsCustomersListCall {
  8290  	c.urlParams_.Set("filter", filter)
  8291  	return c
  8292  }
  8293  
  8294  // PageSize sets the optional parameter "pageSize": The maximum number of
  8295  // customers to return. The service may return fewer than this value. If
  8296  // unspecified, returns at most 10 customers. The maximum value is 50.
  8297  func (c *AccountsCustomersListCall) PageSize(pageSize int64) *AccountsCustomersListCall {
  8298  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  8299  	return c
  8300  }
  8301  
  8302  // PageToken sets the optional parameter "pageToken": A token identifying a
  8303  // page of results other than the first page. Obtained through
  8304  // ListCustomersResponse.next_page_token of the previous
  8305  // CloudChannelService.ListCustomers call.
  8306  func (c *AccountsCustomersListCall) PageToken(pageToken string) *AccountsCustomersListCall {
  8307  	c.urlParams_.Set("pageToken", pageToken)
  8308  	return c
  8309  }
  8310  
  8311  // Fields allows partial responses to be retrieved. See
  8312  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8313  // details.
  8314  func (c *AccountsCustomersListCall) Fields(s ...googleapi.Field) *AccountsCustomersListCall {
  8315  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8316  	return c
  8317  }
  8318  
  8319  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  8320  // object's ETag matches the given value. This is useful for getting updates
  8321  // only after the object has changed since the last request.
  8322  func (c *AccountsCustomersListCall) IfNoneMatch(entityTag string) *AccountsCustomersListCall {
  8323  	c.ifNoneMatch_ = entityTag
  8324  	return c
  8325  }
  8326  
  8327  // Context sets the context to be used in this call's Do method.
  8328  func (c *AccountsCustomersListCall) Context(ctx context.Context) *AccountsCustomersListCall {
  8329  	c.ctx_ = ctx
  8330  	return c
  8331  }
  8332  
  8333  // Header returns a http.Header that can be modified by the caller to add
  8334  // headers to the request.
  8335  func (c *AccountsCustomersListCall) Header() http.Header {
  8336  	if c.header_ == nil {
  8337  		c.header_ = make(http.Header)
  8338  	}
  8339  	return c.header_
  8340  }
  8341  
  8342  func (c *AccountsCustomersListCall) doRequest(alt string) (*http.Response, error) {
  8343  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  8344  	if c.ifNoneMatch_ != "" {
  8345  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  8346  	}
  8347  	var body io.Reader = nil
  8348  	c.urlParams_.Set("alt", alt)
  8349  	c.urlParams_.Set("prettyPrint", "false")
  8350  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/customers")
  8351  	urls += "?" + c.urlParams_.Encode()
  8352  	req, err := http.NewRequest("GET", urls, body)
  8353  	if err != nil {
  8354  		return nil, err
  8355  	}
  8356  	req.Header = reqHeaders
  8357  	googleapi.Expand(req.URL, map[string]string{
  8358  		"parent": c.parent,
  8359  	})
  8360  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8361  }
  8362  
  8363  // Do executes the "cloudchannel.accounts.customers.list" call.
  8364  // Any non-2xx status code is an error. Response headers are in either
  8365  // *GoogleCloudChannelV1ListCustomersResponse.ServerResponse.Header or (if a
  8366  // response was returned at all) in error.(*googleapi.Error).Header. Use
  8367  // googleapi.IsNotModified to check whether the returned error was because
  8368  // http.StatusNotModified was returned.
  8369  func (c *AccountsCustomersListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1ListCustomersResponse, error) {
  8370  	gensupport.SetOptions(c.urlParams_, opts...)
  8371  	res, err := c.doRequest("json")
  8372  	if res != nil && res.StatusCode == http.StatusNotModified {
  8373  		if res.Body != nil {
  8374  			res.Body.Close()
  8375  		}
  8376  		return nil, gensupport.WrapError(&googleapi.Error{
  8377  			Code:   res.StatusCode,
  8378  			Header: res.Header,
  8379  		})
  8380  	}
  8381  	if err != nil {
  8382  		return nil, err
  8383  	}
  8384  	defer googleapi.CloseBody(res)
  8385  	if err := googleapi.CheckResponse(res); err != nil {
  8386  		return nil, gensupport.WrapError(err)
  8387  	}
  8388  	ret := &GoogleCloudChannelV1ListCustomersResponse{
  8389  		ServerResponse: googleapi.ServerResponse{
  8390  			Header:         res.Header,
  8391  			HTTPStatusCode: res.StatusCode,
  8392  		},
  8393  	}
  8394  	target := &ret
  8395  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8396  		return nil, err
  8397  	}
  8398  	return ret, nil
  8399  }
  8400  
  8401  // Pages invokes f for each page of results.
  8402  // A non-nil error returned from f will halt the iteration.
  8403  // The provided context supersedes any context provided to the Context method.
  8404  func (c *AccountsCustomersListCall) Pages(ctx context.Context, f func(*GoogleCloudChannelV1ListCustomersResponse) error) error {
  8405  	c.ctx_ = ctx
  8406  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  8407  	for {
  8408  		x, err := c.Do()
  8409  		if err != nil {
  8410  			return err
  8411  		}
  8412  		if err := f(x); err != nil {
  8413  			return err
  8414  		}
  8415  		if x.NextPageToken == "" {
  8416  			return nil
  8417  		}
  8418  		c.PageToken(x.NextPageToken)
  8419  	}
  8420  }
  8421  
  8422  type AccountsCustomersListPurchasableOffersCall struct {
  8423  	s            *Service
  8424  	customer     string
  8425  	urlParams_   gensupport.URLParams
  8426  	ifNoneMatch_ string
  8427  	ctx_         context.Context
  8428  	header_      http.Header
  8429  }
  8430  
  8431  // ListPurchasableOffers: Lists the following: * Offers that you can purchase
  8432  // for a customer. * Offers that you can change for an entitlement. Possible
  8433  // error codes: * PERMISSION_DENIED: * The customer doesn't belong to the
  8434  // reseller * The reseller is not authorized to transact on this Product. See
  8435  // https://support.google.com/channelservices/answer/9759265 *
  8436  // INVALID_ARGUMENT: Required request parameters are missing or invalid.
  8437  //
  8438  //   - customer: The resource name of the customer to list Offers for. Format:
  8439  //     accounts/{account_id}/customers/{customer_id}.
  8440  func (r *AccountsCustomersService) ListPurchasableOffers(customer string) *AccountsCustomersListPurchasableOffersCall {
  8441  	c := &AccountsCustomersListPurchasableOffersCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8442  	c.customer = customer
  8443  	return c
  8444  }
  8445  
  8446  // ChangeOfferPurchaseBillingAccount sets the optional parameter
  8447  // "changeOfferPurchase.billingAccount": Resource name of the new target
  8448  // Billing Account. Provide this Billing Account when setting up billing for a
  8449  // trial subscription. Format:
  8450  // accounts/{account_id}/billingAccounts/{billing_account_id}. This field is
  8451  // only relevant for multi-currency accounts. It should be left empty for
  8452  // single currency accounts.
  8453  func (c *AccountsCustomersListPurchasableOffersCall) ChangeOfferPurchaseBillingAccount(changeOfferPurchaseBillingAccount string) *AccountsCustomersListPurchasableOffersCall {
  8454  	c.urlParams_.Set("changeOfferPurchase.billingAccount", changeOfferPurchaseBillingAccount)
  8455  	return c
  8456  }
  8457  
  8458  // ChangeOfferPurchaseEntitlement sets the optional parameter
  8459  // "changeOfferPurchase.entitlement": Required. Resource name of the
  8460  // entitlement. Format:
  8461  // accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}
  8462  func (c *AccountsCustomersListPurchasableOffersCall) ChangeOfferPurchaseEntitlement(changeOfferPurchaseEntitlement string) *AccountsCustomersListPurchasableOffersCall {
  8463  	c.urlParams_.Set("changeOfferPurchase.entitlement", changeOfferPurchaseEntitlement)
  8464  	return c
  8465  }
  8466  
  8467  // ChangeOfferPurchaseNewSku sets the optional parameter
  8468  // "changeOfferPurchase.newSku": Resource name of the new target SKU. Provide
  8469  // this SKU when upgrading or downgrading an entitlement. Format:
  8470  // products/{product_id}/skus/{sku_id}
  8471  func (c *AccountsCustomersListPurchasableOffersCall) ChangeOfferPurchaseNewSku(changeOfferPurchaseNewSku string) *AccountsCustomersListPurchasableOffersCall {
  8472  	c.urlParams_.Set("changeOfferPurchase.newSku", changeOfferPurchaseNewSku)
  8473  	return c
  8474  }
  8475  
  8476  // CreateEntitlementPurchaseBillingAccount sets the optional parameter
  8477  // "createEntitlementPurchase.billingAccount": Billing account that the result
  8478  // should be restricted to. Format:
  8479  // accounts/{account_id}/billingAccounts/{billing_account_id}.
  8480  func (c *AccountsCustomersListPurchasableOffersCall) CreateEntitlementPurchaseBillingAccount(createEntitlementPurchaseBillingAccount string) *AccountsCustomersListPurchasableOffersCall {
  8481  	c.urlParams_.Set("createEntitlementPurchase.billingAccount", createEntitlementPurchaseBillingAccount)
  8482  	return c
  8483  }
  8484  
  8485  // CreateEntitlementPurchaseSku sets the optional parameter
  8486  // "createEntitlementPurchase.sku": Required. SKU that the result should be
  8487  // restricted to. Format: products/{product_id}/skus/{sku_id}.
  8488  func (c *AccountsCustomersListPurchasableOffersCall) CreateEntitlementPurchaseSku(createEntitlementPurchaseSku string) *AccountsCustomersListPurchasableOffersCall {
  8489  	c.urlParams_.Set("createEntitlementPurchase.sku", createEntitlementPurchaseSku)
  8490  	return c
  8491  }
  8492  
  8493  // LanguageCode sets the optional parameter "languageCode": The BCP-47 language
  8494  // code. For example, "en-US". The response will localize in the corresponding
  8495  // language code, if specified. The default value is "en-US".
  8496  func (c *AccountsCustomersListPurchasableOffersCall) LanguageCode(languageCode string) *AccountsCustomersListPurchasableOffersCall {
  8497  	c.urlParams_.Set("languageCode", languageCode)
  8498  	return c
  8499  }
  8500  
  8501  // PageSize sets the optional parameter "pageSize": Requested page size. Server
  8502  // might return fewer results than requested. If unspecified, returns at most
  8503  // 100 Offers. The maximum value is 1000; the server will coerce values above
  8504  // 1000.
  8505  func (c *AccountsCustomersListPurchasableOffersCall) PageSize(pageSize int64) *AccountsCustomersListPurchasableOffersCall {
  8506  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  8507  	return c
  8508  }
  8509  
  8510  // PageToken sets the optional parameter "pageToken": A token for a page of
  8511  // results other than the first page.
  8512  func (c *AccountsCustomersListPurchasableOffersCall) PageToken(pageToken string) *AccountsCustomersListPurchasableOffersCall {
  8513  	c.urlParams_.Set("pageToken", pageToken)
  8514  	return c
  8515  }
  8516  
  8517  // Fields allows partial responses to be retrieved. See
  8518  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8519  // details.
  8520  func (c *AccountsCustomersListPurchasableOffersCall) Fields(s ...googleapi.Field) *AccountsCustomersListPurchasableOffersCall {
  8521  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8522  	return c
  8523  }
  8524  
  8525  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  8526  // object's ETag matches the given value. This is useful for getting updates
  8527  // only after the object has changed since the last request.
  8528  func (c *AccountsCustomersListPurchasableOffersCall) IfNoneMatch(entityTag string) *AccountsCustomersListPurchasableOffersCall {
  8529  	c.ifNoneMatch_ = entityTag
  8530  	return c
  8531  }
  8532  
  8533  // Context sets the context to be used in this call's Do method.
  8534  func (c *AccountsCustomersListPurchasableOffersCall) Context(ctx context.Context) *AccountsCustomersListPurchasableOffersCall {
  8535  	c.ctx_ = ctx
  8536  	return c
  8537  }
  8538  
  8539  // Header returns a http.Header that can be modified by the caller to add
  8540  // headers to the request.
  8541  func (c *AccountsCustomersListPurchasableOffersCall) Header() http.Header {
  8542  	if c.header_ == nil {
  8543  		c.header_ = make(http.Header)
  8544  	}
  8545  	return c.header_
  8546  }
  8547  
  8548  func (c *AccountsCustomersListPurchasableOffersCall) doRequest(alt string) (*http.Response, error) {
  8549  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  8550  	if c.ifNoneMatch_ != "" {
  8551  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  8552  	}
  8553  	var body io.Reader = nil
  8554  	c.urlParams_.Set("alt", alt)
  8555  	c.urlParams_.Set("prettyPrint", "false")
  8556  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+customer}:listPurchasableOffers")
  8557  	urls += "?" + c.urlParams_.Encode()
  8558  	req, err := http.NewRequest("GET", urls, body)
  8559  	if err != nil {
  8560  		return nil, err
  8561  	}
  8562  	req.Header = reqHeaders
  8563  	googleapi.Expand(req.URL, map[string]string{
  8564  		"customer": c.customer,
  8565  	})
  8566  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8567  }
  8568  
  8569  // Do executes the "cloudchannel.accounts.customers.listPurchasableOffers" call.
  8570  // Any non-2xx status code is an error. Response headers are in either
  8571  // *GoogleCloudChannelV1ListPurchasableOffersResponse.ServerResponse.Header or
  8572  // (if a response was returned at all) in error.(*googleapi.Error).Header. Use
  8573  // googleapi.IsNotModified to check whether the returned error was because
  8574  // http.StatusNotModified was returned.
  8575  func (c *AccountsCustomersListPurchasableOffersCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1ListPurchasableOffersResponse, error) {
  8576  	gensupport.SetOptions(c.urlParams_, opts...)
  8577  	res, err := c.doRequest("json")
  8578  	if res != nil && res.StatusCode == http.StatusNotModified {
  8579  		if res.Body != nil {
  8580  			res.Body.Close()
  8581  		}
  8582  		return nil, gensupport.WrapError(&googleapi.Error{
  8583  			Code:   res.StatusCode,
  8584  			Header: res.Header,
  8585  		})
  8586  	}
  8587  	if err != nil {
  8588  		return nil, err
  8589  	}
  8590  	defer googleapi.CloseBody(res)
  8591  	if err := googleapi.CheckResponse(res); err != nil {
  8592  		return nil, gensupport.WrapError(err)
  8593  	}
  8594  	ret := &GoogleCloudChannelV1ListPurchasableOffersResponse{
  8595  		ServerResponse: googleapi.ServerResponse{
  8596  			Header:         res.Header,
  8597  			HTTPStatusCode: res.StatusCode,
  8598  		},
  8599  	}
  8600  	target := &ret
  8601  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8602  		return nil, err
  8603  	}
  8604  	return ret, nil
  8605  }
  8606  
  8607  // Pages invokes f for each page of results.
  8608  // A non-nil error returned from f will halt the iteration.
  8609  // The provided context supersedes any context provided to the Context method.
  8610  func (c *AccountsCustomersListPurchasableOffersCall) Pages(ctx context.Context, f func(*GoogleCloudChannelV1ListPurchasableOffersResponse) error) error {
  8611  	c.ctx_ = ctx
  8612  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  8613  	for {
  8614  		x, err := c.Do()
  8615  		if err != nil {
  8616  			return err
  8617  		}
  8618  		if err := f(x); err != nil {
  8619  			return err
  8620  		}
  8621  		if x.NextPageToken == "" {
  8622  			return nil
  8623  		}
  8624  		c.PageToken(x.NextPageToken)
  8625  	}
  8626  }
  8627  
  8628  type AccountsCustomersListPurchasableSkusCall struct {
  8629  	s            *Service
  8630  	customer     string
  8631  	urlParams_   gensupport.URLParams
  8632  	ifNoneMatch_ string
  8633  	ctx_         context.Context
  8634  	header_      http.Header
  8635  }
  8636  
  8637  // ListPurchasableSkus: Lists the following: * SKUs that you can purchase for a
  8638  // customer * SKUs that you can upgrade or downgrade for an entitlement.
  8639  // Possible error codes: * PERMISSION_DENIED: The customer doesn't belong to
  8640  // the reseller. * INVALID_ARGUMENT: Required request parameters are missing or
  8641  // invalid.
  8642  //
  8643  //   - customer: The resource name of the customer to list SKUs for. Format:
  8644  //     accounts/{account_id}/customers/{customer_id}.
  8645  func (r *AccountsCustomersService) ListPurchasableSkus(customer string) *AccountsCustomersListPurchasableSkusCall {
  8646  	c := &AccountsCustomersListPurchasableSkusCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8647  	c.customer = customer
  8648  	return c
  8649  }
  8650  
  8651  // ChangeOfferPurchaseChangeType sets the optional parameter
  8652  // "changeOfferPurchase.changeType": Required. Change Type for the entitlement.
  8653  //
  8654  // Possible values:
  8655  //
  8656  //	"CHANGE_TYPE_UNSPECIFIED" - Not used.
  8657  //	"UPGRADE" - SKU is an upgrade on the current entitlement.
  8658  //	"DOWNGRADE" - SKU is a downgrade on the current entitlement.
  8659  func (c *AccountsCustomersListPurchasableSkusCall) ChangeOfferPurchaseChangeType(changeOfferPurchaseChangeType string) *AccountsCustomersListPurchasableSkusCall {
  8660  	c.urlParams_.Set("changeOfferPurchase.changeType", changeOfferPurchaseChangeType)
  8661  	return c
  8662  }
  8663  
  8664  // ChangeOfferPurchaseEntitlement sets the optional parameter
  8665  // "changeOfferPurchase.entitlement": Required. Resource name of the
  8666  // entitlement. Format:
  8667  // accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}
  8668  func (c *AccountsCustomersListPurchasableSkusCall) ChangeOfferPurchaseEntitlement(changeOfferPurchaseEntitlement string) *AccountsCustomersListPurchasableSkusCall {
  8669  	c.urlParams_.Set("changeOfferPurchase.entitlement", changeOfferPurchaseEntitlement)
  8670  	return c
  8671  }
  8672  
  8673  // CreateEntitlementPurchaseProduct sets the optional parameter
  8674  // "createEntitlementPurchase.product": Required. List SKUs belonging to this
  8675  // Product. Format: products/{product_id}. Supports products/- to retrieve SKUs
  8676  // for all products.
  8677  func (c *AccountsCustomersListPurchasableSkusCall) CreateEntitlementPurchaseProduct(createEntitlementPurchaseProduct string) *AccountsCustomersListPurchasableSkusCall {
  8678  	c.urlParams_.Set("createEntitlementPurchase.product", createEntitlementPurchaseProduct)
  8679  	return c
  8680  }
  8681  
  8682  // LanguageCode sets the optional parameter "languageCode": The BCP-47 language
  8683  // code. For example, "en-US". The response will localize in the corresponding
  8684  // language code, if specified. The default value is "en-US".
  8685  func (c *AccountsCustomersListPurchasableSkusCall) LanguageCode(languageCode string) *AccountsCustomersListPurchasableSkusCall {
  8686  	c.urlParams_.Set("languageCode", languageCode)
  8687  	return c
  8688  }
  8689  
  8690  // PageSize sets the optional parameter "pageSize": Requested page size. Server
  8691  // might return fewer results than requested. If unspecified, returns at most
  8692  // 100 SKUs. The maximum value is 1000; the server will coerce values above
  8693  // 1000.
  8694  func (c *AccountsCustomersListPurchasableSkusCall) PageSize(pageSize int64) *AccountsCustomersListPurchasableSkusCall {
  8695  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  8696  	return c
  8697  }
  8698  
  8699  // PageToken sets the optional parameter "pageToken": A token for a page of
  8700  // results other than the first page.
  8701  func (c *AccountsCustomersListPurchasableSkusCall) PageToken(pageToken string) *AccountsCustomersListPurchasableSkusCall {
  8702  	c.urlParams_.Set("pageToken", pageToken)
  8703  	return c
  8704  }
  8705  
  8706  // Fields allows partial responses to be retrieved. See
  8707  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8708  // details.
  8709  func (c *AccountsCustomersListPurchasableSkusCall) Fields(s ...googleapi.Field) *AccountsCustomersListPurchasableSkusCall {
  8710  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8711  	return c
  8712  }
  8713  
  8714  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  8715  // object's ETag matches the given value. This is useful for getting updates
  8716  // only after the object has changed since the last request.
  8717  func (c *AccountsCustomersListPurchasableSkusCall) IfNoneMatch(entityTag string) *AccountsCustomersListPurchasableSkusCall {
  8718  	c.ifNoneMatch_ = entityTag
  8719  	return c
  8720  }
  8721  
  8722  // Context sets the context to be used in this call's Do method.
  8723  func (c *AccountsCustomersListPurchasableSkusCall) Context(ctx context.Context) *AccountsCustomersListPurchasableSkusCall {
  8724  	c.ctx_ = ctx
  8725  	return c
  8726  }
  8727  
  8728  // Header returns a http.Header that can be modified by the caller to add
  8729  // headers to the request.
  8730  func (c *AccountsCustomersListPurchasableSkusCall) Header() http.Header {
  8731  	if c.header_ == nil {
  8732  		c.header_ = make(http.Header)
  8733  	}
  8734  	return c.header_
  8735  }
  8736  
  8737  func (c *AccountsCustomersListPurchasableSkusCall) doRequest(alt string) (*http.Response, error) {
  8738  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  8739  	if c.ifNoneMatch_ != "" {
  8740  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  8741  	}
  8742  	var body io.Reader = nil
  8743  	c.urlParams_.Set("alt", alt)
  8744  	c.urlParams_.Set("prettyPrint", "false")
  8745  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+customer}:listPurchasableSkus")
  8746  	urls += "?" + c.urlParams_.Encode()
  8747  	req, err := http.NewRequest("GET", urls, body)
  8748  	if err != nil {
  8749  		return nil, err
  8750  	}
  8751  	req.Header = reqHeaders
  8752  	googleapi.Expand(req.URL, map[string]string{
  8753  		"customer": c.customer,
  8754  	})
  8755  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8756  }
  8757  
  8758  // Do executes the "cloudchannel.accounts.customers.listPurchasableSkus" call.
  8759  // Any non-2xx status code is an error. Response headers are in either
  8760  // *GoogleCloudChannelV1ListPurchasableSkusResponse.ServerResponse.Header or
  8761  // (if a response was returned at all) in error.(*googleapi.Error).Header. Use
  8762  // googleapi.IsNotModified to check whether the returned error was because
  8763  // http.StatusNotModified was returned.
  8764  func (c *AccountsCustomersListPurchasableSkusCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1ListPurchasableSkusResponse, error) {
  8765  	gensupport.SetOptions(c.urlParams_, opts...)
  8766  	res, err := c.doRequest("json")
  8767  	if res != nil && res.StatusCode == http.StatusNotModified {
  8768  		if res.Body != nil {
  8769  			res.Body.Close()
  8770  		}
  8771  		return nil, gensupport.WrapError(&googleapi.Error{
  8772  			Code:   res.StatusCode,
  8773  			Header: res.Header,
  8774  		})
  8775  	}
  8776  	if err != nil {
  8777  		return nil, err
  8778  	}
  8779  	defer googleapi.CloseBody(res)
  8780  	if err := googleapi.CheckResponse(res); err != nil {
  8781  		return nil, gensupport.WrapError(err)
  8782  	}
  8783  	ret := &GoogleCloudChannelV1ListPurchasableSkusResponse{
  8784  		ServerResponse: googleapi.ServerResponse{
  8785  			Header:         res.Header,
  8786  			HTTPStatusCode: res.StatusCode,
  8787  		},
  8788  	}
  8789  	target := &ret
  8790  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8791  		return nil, err
  8792  	}
  8793  	return ret, nil
  8794  }
  8795  
  8796  // Pages invokes f for each page of results.
  8797  // A non-nil error returned from f will halt the iteration.
  8798  // The provided context supersedes any context provided to the Context method.
  8799  func (c *AccountsCustomersListPurchasableSkusCall) Pages(ctx context.Context, f func(*GoogleCloudChannelV1ListPurchasableSkusResponse) error) error {
  8800  	c.ctx_ = ctx
  8801  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  8802  	for {
  8803  		x, err := c.Do()
  8804  		if err != nil {
  8805  			return err
  8806  		}
  8807  		if err := f(x); err != nil {
  8808  			return err
  8809  		}
  8810  		if x.NextPageToken == "" {
  8811  			return nil
  8812  		}
  8813  		c.PageToken(x.NextPageToken)
  8814  	}
  8815  }
  8816  
  8817  type AccountsCustomersPatchCall struct {
  8818  	s                            *Service
  8819  	name                         string
  8820  	googlecloudchannelv1customer *GoogleCloudChannelV1Customer
  8821  	urlParams_                   gensupport.URLParams
  8822  	ctx_                         context.Context
  8823  	header_                      http.Header
  8824  }
  8825  
  8826  // Patch: Updates an existing Customer resource for the reseller or
  8827  // distributor. Possible error codes: * PERMISSION_DENIED: The reseller account
  8828  // making the request is different from the reseller account in the API
  8829  // request. * INVALID_ARGUMENT: Required request parameters are missing or
  8830  // invalid. * NOT_FOUND: No Customer resource found for the name in the
  8831  // request. Return value: The updated Customer resource.
  8832  //
  8833  //   - name: Output only. Resource name of the customer. Format:
  8834  //     accounts/{account_id}/customers/{customer_id}.
  8835  func (r *AccountsCustomersService) Patch(name string, googlecloudchannelv1customer *GoogleCloudChannelV1Customer) *AccountsCustomersPatchCall {
  8836  	c := &AccountsCustomersPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8837  	c.name = name
  8838  	c.googlecloudchannelv1customer = googlecloudchannelv1customer
  8839  	return c
  8840  }
  8841  
  8842  // UpdateMask sets the optional parameter "updateMask": The update mask that
  8843  // applies to the resource.
  8844  func (c *AccountsCustomersPatchCall) UpdateMask(updateMask string) *AccountsCustomersPatchCall {
  8845  	c.urlParams_.Set("updateMask", updateMask)
  8846  	return c
  8847  }
  8848  
  8849  // Fields allows partial responses to be retrieved. See
  8850  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8851  // details.
  8852  func (c *AccountsCustomersPatchCall) Fields(s ...googleapi.Field) *AccountsCustomersPatchCall {
  8853  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8854  	return c
  8855  }
  8856  
  8857  // Context sets the context to be used in this call's Do method.
  8858  func (c *AccountsCustomersPatchCall) Context(ctx context.Context) *AccountsCustomersPatchCall {
  8859  	c.ctx_ = ctx
  8860  	return c
  8861  }
  8862  
  8863  // Header returns a http.Header that can be modified by the caller to add
  8864  // headers to the request.
  8865  func (c *AccountsCustomersPatchCall) Header() http.Header {
  8866  	if c.header_ == nil {
  8867  		c.header_ = make(http.Header)
  8868  	}
  8869  	return c.header_
  8870  }
  8871  
  8872  func (c *AccountsCustomersPatchCall) doRequest(alt string) (*http.Response, error) {
  8873  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  8874  	var body io.Reader = nil
  8875  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudchannelv1customer)
  8876  	if err != nil {
  8877  		return nil, err
  8878  	}
  8879  	c.urlParams_.Set("alt", alt)
  8880  	c.urlParams_.Set("prettyPrint", "false")
  8881  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  8882  	urls += "?" + c.urlParams_.Encode()
  8883  	req, err := http.NewRequest("PATCH", urls, body)
  8884  	if err != nil {
  8885  		return nil, err
  8886  	}
  8887  	req.Header = reqHeaders
  8888  	googleapi.Expand(req.URL, map[string]string{
  8889  		"name": c.name,
  8890  	})
  8891  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8892  }
  8893  
  8894  // Do executes the "cloudchannel.accounts.customers.patch" call.
  8895  // Any non-2xx status code is an error. Response headers are in either
  8896  // *GoogleCloudChannelV1Customer.ServerResponse.Header or (if a response was
  8897  // returned at all) in error.(*googleapi.Error).Header. Use
  8898  // googleapi.IsNotModified to check whether the returned error was because
  8899  // http.StatusNotModified was returned.
  8900  func (c *AccountsCustomersPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1Customer, error) {
  8901  	gensupport.SetOptions(c.urlParams_, opts...)
  8902  	res, err := c.doRequest("json")
  8903  	if res != nil && res.StatusCode == http.StatusNotModified {
  8904  		if res.Body != nil {
  8905  			res.Body.Close()
  8906  		}
  8907  		return nil, gensupport.WrapError(&googleapi.Error{
  8908  			Code:   res.StatusCode,
  8909  			Header: res.Header,
  8910  		})
  8911  	}
  8912  	if err != nil {
  8913  		return nil, err
  8914  	}
  8915  	defer googleapi.CloseBody(res)
  8916  	if err := googleapi.CheckResponse(res); err != nil {
  8917  		return nil, gensupport.WrapError(err)
  8918  	}
  8919  	ret := &GoogleCloudChannelV1Customer{
  8920  		ServerResponse: googleapi.ServerResponse{
  8921  			Header:         res.Header,
  8922  			HTTPStatusCode: res.StatusCode,
  8923  		},
  8924  	}
  8925  	target := &ret
  8926  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8927  		return nil, err
  8928  	}
  8929  	return ret, nil
  8930  }
  8931  
  8932  type AccountsCustomersProvisionCloudIdentityCall struct {
  8933  	s                                                 *Service
  8934  	customer                                          string
  8935  	googlecloudchannelv1provisioncloudidentityrequest *GoogleCloudChannelV1ProvisionCloudIdentityRequest
  8936  	urlParams_                                        gensupport.URLParams
  8937  	ctx_                                              context.Context
  8938  	header_                                           http.Header
  8939  }
  8940  
  8941  // ProvisionCloudIdentity: Creates a Cloud Identity for the given customer
  8942  // using the customer's information, or the information provided here. Possible
  8943  // error codes: * PERMISSION_DENIED: * The customer doesn't belong to the
  8944  // reseller. * You are not authorized to provision cloud identity id. See
  8945  // https://support.google.com/channelservices/answer/9759265 *
  8946  // INVALID_ARGUMENT: Required request parameters are missing or invalid. *
  8947  // NOT_FOUND: The customer was not found. * ALREADY_EXISTS: The customer's
  8948  // primary email already exists. Retry after changing the customer's primary
  8949  // contact email. * INTERNAL: Any non-user error related to a technical issue
  8950  // in the backend. Contact Cloud Channel support. * UNKNOWN: Any non-user error
  8951  // related to a technical issue in the backend. Contact Cloud Channel support.
  8952  // Return value: The ID of a long-running operation. To get the results of the
  8953  // operation, call the GetOperation method of CloudChannelOperationsService.
  8954  // The Operation metadata contains an instance of OperationMetadata.
  8955  //
  8956  //   - customer: Resource name of the customer. Format:
  8957  //     accounts/{account_id}/customers/{customer_id}.
  8958  func (r *AccountsCustomersService) ProvisionCloudIdentity(customer string, googlecloudchannelv1provisioncloudidentityrequest *GoogleCloudChannelV1ProvisionCloudIdentityRequest) *AccountsCustomersProvisionCloudIdentityCall {
  8959  	c := &AccountsCustomersProvisionCloudIdentityCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8960  	c.customer = customer
  8961  	c.googlecloudchannelv1provisioncloudidentityrequest = googlecloudchannelv1provisioncloudidentityrequest
  8962  	return c
  8963  }
  8964  
  8965  // Fields allows partial responses to be retrieved. See
  8966  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8967  // details.
  8968  func (c *AccountsCustomersProvisionCloudIdentityCall) Fields(s ...googleapi.Field) *AccountsCustomersProvisionCloudIdentityCall {
  8969  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8970  	return c
  8971  }
  8972  
  8973  // Context sets the context to be used in this call's Do method.
  8974  func (c *AccountsCustomersProvisionCloudIdentityCall) Context(ctx context.Context) *AccountsCustomersProvisionCloudIdentityCall {
  8975  	c.ctx_ = ctx
  8976  	return c
  8977  }
  8978  
  8979  // Header returns a http.Header that can be modified by the caller to add
  8980  // headers to the request.
  8981  func (c *AccountsCustomersProvisionCloudIdentityCall) Header() http.Header {
  8982  	if c.header_ == nil {
  8983  		c.header_ = make(http.Header)
  8984  	}
  8985  	return c.header_
  8986  }
  8987  
  8988  func (c *AccountsCustomersProvisionCloudIdentityCall) doRequest(alt string) (*http.Response, error) {
  8989  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  8990  	var body io.Reader = nil
  8991  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudchannelv1provisioncloudidentityrequest)
  8992  	if err != nil {
  8993  		return nil, err
  8994  	}
  8995  	c.urlParams_.Set("alt", alt)
  8996  	c.urlParams_.Set("prettyPrint", "false")
  8997  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+customer}:provisionCloudIdentity")
  8998  	urls += "?" + c.urlParams_.Encode()
  8999  	req, err := http.NewRequest("POST", urls, body)
  9000  	if err != nil {
  9001  		return nil, err
  9002  	}
  9003  	req.Header = reqHeaders
  9004  	googleapi.Expand(req.URL, map[string]string{
  9005  		"customer": c.customer,
  9006  	})
  9007  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9008  }
  9009  
  9010  // Do executes the "cloudchannel.accounts.customers.provisionCloudIdentity" call.
  9011  // Any non-2xx status code is an error. Response headers are in either
  9012  // *GoogleLongrunningOperation.ServerResponse.Header or (if a response was
  9013  // returned at all) in error.(*googleapi.Error).Header. Use
  9014  // googleapi.IsNotModified to check whether the returned error was because
  9015  // http.StatusNotModified was returned.
  9016  func (c *AccountsCustomersProvisionCloudIdentityCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
  9017  	gensupport.SetOptions(c.urlParams_, opts...)
  9018  	res, err := c.doRequest("json")
  9019  	if res != nil && res.StatusCode == http.StatusNotModified {
  9020  		if res.Body != nil {
  9021  			res.Body.Close()
  9022  		}
  9023  		return nil, gensupport.WrapError(&googleapi.Error{
  9024  			Code:   res.StatusCode,
  9025  			Header: res.Header,
  9026  		})
  9027  	}
  9028  	if err != nil {
  9029  		return nil, err
  9030  	}
  9031  	defer googleapi.CloseBody(res)
  9032  	if err := googleapi.CheckResponse(res); err != nil {
  9033  		return nil, gensupport.WrapError(err)
  9034  	}
  9035  	ret := &GoogleLongrunningOperation{
  9036  		ServerResponse: googleapi.ServerResponse{
  9037  			Header:         res.Header,
  9038  			HTTPStatusCode: res.StatusCode,
  9039  		},
  9040  	}
  9041  	target := &ret
  9042  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9043  		return nil, err
  9044  	}
  9045  	return ret, nil
  9046  }
  9047  
  9048  type AccountsCustomersQueryEligibleBillingAccountsCall struct {
  9049  	s            *Service
  9050  	customer     string
  9051  	urlParams_   gensupport.URLParams
  9052  	ifNoneMatch_ string
  9053  	ctx_         context.Context
  9054  	header_      http.Header
  9055  }
  9056  
  9057  // QueryEligibleBillingAccounts: Lists the billing accounts that are eligible
  9058  // to purchase particular SKUs for a given customer. Possible error codes: *
  9059  // PERMISSION_DENIED: The customer doesn't belong to the reseller. *
  9060  // INVALID_ARGUMENT: Required request parameters are missing or invalid. Return
  9061  // value: Based on the provided list of SKUs, returns a list of SKU groups that
  9062  // must be purchased using the same billing account and the billing accounts
  9063  // eligible to purchase each SKU group.
  9064  //
  9065  //   - customer: The resource name of the customer to list eligible billing
  9066  //     accounts for. Format: accounts/{account_id}/customers/{customer_id}.
  9067  func (r *AccountsCustomersService) QueryEligibleBillingAccounts(customer string) *AccountsCustomersQueryEligibleBillingAccountsCall {
  9068  	c := &AccountsCustomersQueryEligibleBillingAccountsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9069  	c.customer = customer
  9070  	return c
  9071  }
  9072  
  9073  // Skus sets the optional parameter "skus": Required. List of SKUs to list
  9074  // eligible billing accounts for. At least one SKU is required. Format:
  9075  // products/{product_id}/skus/{sku_id}.
  9076  func (c *AccountsCustomersQueryEligibleBillingAccountsCall) Skus(skus ...string) *AccountsCustomersQueryEligibleBillingAccountsCall {
  9077  	c.urlParams_.SetMulti("skus", append([]string{}, skus...))
  9078  	return c
  9079  }
  9080  
  9081  // Fields allows partial responses to be retrieved. See
  9082  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9083  // details.
  9084  func (c *AccountsCustomersQueryEligibleBillingAccountsCall) Fields(s ...googleapi.Field) *AccountsCustomersQueryEligibleBillingAccountsCall {
  9085  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9086  	return c
  9087  }
  9088  
  9089  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  9090  // object's ETag matches the given value. This is useful for getting updates
  9091  // only after the object has changed since the last request.
  9092  func (c *AccountsCustomersQueryEligibleBillingAccountsCall) IfNoneMatch(entityTag string) *AccountsCustomersQueryEligibleBillingAccountsCall {
  9093  	c.ifNoneMatch_ = entityTag
  9094  	return c
  9095  }
  9096  
  9097  // Context sets the context to be used in this call's Do method.
  9098  func (c *AccountsCustomersQueryEligibleBillingAccountsCall) Context(ctx context.Context) *AccountsCustomersQueryEligibleBillingAccountsCall {
  9099  	c.ctx_ = ctx
  9100  	return c
  9101  }
  9102  
  9103  // Header returns a http.Header that can be modified by the caller to add
  9104  // headers to the request.
  9105  func (c *AccountsCustomersQueryEligibleBillingAccountsCall) Header() http.Header {
  9106  	if c.header_ == nil {
  9107  		c.header_ = make(http.Header)
  9108  	}
  9109  	return c.header_
  9110  }
  9111  
  9112  func (c *AccountsCustomersQueryEligibleBillingAccountsCall) doRequest(alt string) (*http.Response, error) {
  9113  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  9114  	if c.ifNoneMatch_ != "" {
  9115  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  9116  	}
  9117  	var body io.Reader = nil
  9118  	c.urlParams_.Set("alt", alt)
  9119  	c.urlParams_.Set("prettyPrint", "false")
  9120  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+customer}:queryEligibleBillingAccounts")
  9121  	urls += "?" + c.urlParams_.Encode()
  9122  	req, err := http.NewRequest("GET", urls, body)
  9123  	if err != nil {
  9124  		return nil, err
  9125  	}
  9126  	req.Header = reqHeaders
  9127  	googleapi.Expand(req.URL, map[string]string{
  9128  		"customer": c.customer,
  9129  	})
  9130  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9131  }
  9132  
  9133  // Do executes the "cloudchannel.accounts.customers.queryEligibleBillingAccounts" call.
  9134  // Any non-2xx status code is an error. Response headers are in either
  9135  // *GoogleCloudChannelV1QueryEligibleBillingAccountsResponse.ServerResponse.Head
  9136  // er or (if a response was returned at all) in
  9137  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  9138  // whether the returned error was because http.StatusNotModified was returned.
  9139  func (c *AccountsCustomersQueryEligibleBillingAccountsCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1QueryEligibleBillingAccountsResponse, error) {
  9140  	gensupport.SetOptions(c.urlParams_, opts...)
  9141  	res, err := c.doRequest("json")
  9142  	if res != nil && res.StatusCode == http.StatusNotModified {
  9143  		if res.Body != nil {
  9144  			res.Body.Close()
  9145  		}
  9146  		return nil, gensupport.WrapError(&googleapi.Error{
  9147  			Code:   res.StatusCode,
  9148  			Header: res.Header,
  9149  		})
  9150  	}
  9151  	if err != nil {
  9152  		return nil, err
  9153  	}
  9154  	defer googleapi.CloseBody(res)
  9155  	if err := googleapi.CheckResponse(res); err != nil {
  9156  		return nil, gensupport.WrapError(err)
  9157  	}
  9158  	ret := &GoogleCloudChannelV1QueryEligibleBillingAccountsResponse{
  9159  		ServerResponse: googleapi.ServerResponse{
  9160  			Header:         res.Header,
  9161  			HTTPStatusCode: res.StatusCode,
  9162  		},
  9163  	}
  9164  	target := &ret
  9165  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9166  		return nil, err
  9167  	}
  9168  	return ret, nil
  9169  }
  9170  
  9171  type AccountsCustomersTransferEntitlementsCall struct {
  9172  	s                                               *Service
  9173  	parent                                          string
  9174  	googlecloudchannelv1transferentitlementsrequest *GoogleCloudChannelV1TransferEntitlementsRequest
  9175  	urlParams_                                      gensupport.URLParams
  9176  	ctx_                                            context.Context
  9177  	header_                                         http.Header
  9178  }
  9179  
  9180  // TransferEntitlements: Transfers customer entitlements to new reseller.
  9181  // Possible error codes: * PERMISSION_DENIED: * The customer doesn't belong to
  9182  // the reseller. * The reseller is not authorized to transact on this Product.
  9183  // See https://support.google.com/channelservices/answer/9759265 *
  9184  // INVALID_ARGUMENT: Required request parameters are missing or invalid. *
  9185  // NOT_FOUND: The customer or offer resource was not found. * ALREADY_EXISTS:
  9186  // The SKU was already transferred for the customer. * CONDITION_NOT_MET or
  9187  // FAILED_PRECONDITION: * The SKU requires domain verification to transfer, but
  9188  // the domain is not verified. * An Add-On SKU (example, Vault or Drive) is
  9189  // missing the pre-requisite SKU (example, G Suite Basic). * (Developer
  9190  // accounts only) Reseller and resold domain must meet the following naming
  9191  // requirements: * Domain names must start with goog-test. * Domain names must
  9192  // include the reseller domain. * Specify all transferring entitlements. *
  9193  // INTERNAL: Any non-user error related to a technical issue in the backend.
  9194  // Contact Cloud Channel support. * UNKNOWN: Any non-user error related to a
  9195  // technical issue in the backend. Contact Cloud Channel support. Return value:
  9196  // The ID of a long-running operation. To get the results of the operation,
  9197  // call the GetOperation method of CloudChannelOperationsService. The Operation
  9198  // metadata will contain an instance of OperationMetadata.
  9199  //
  9200  //   - parent: The resource name of the reseller's customer account that will
  9201  //     receive transferred entitlements. Parent uses the format:
  9202  //     accounts/{account_id}/customers/{customer_id}.
  9203  func (r *AccountsCustomersService) TransferEntitlements(parent string, googlecloudchannelv1transferentitlementsrequest *GoogleCloudChannelV1TransferEntitlementsRequest) *AccountsCustomersTransferEntitlementsCall {
  9204  	c := &AccountsCustomersTransferEntitlementsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9205  	c.parent = parent
  9206  	c.googlecloudchannelv1transferentitlementsrequest = googlecloudchannelv1transferentitlementsrequest
  9207  	return c
  9208  }
  9209  
  9210  // Fields allows partial responses to be retrieved. See
  9211  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9212  // details.
  9213  func (c *AccountsCustomersTransferEntitlementsCall) Fields(s ...googleapi.Field) *AccountsCustomersTransferEntitlementsCall {
  9214  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9215  	return c
  9216  }
  9217  
  9218  // Context sets the context to be used in this call's Do method.
  9219  func (c *AccountsCustomersTransferEntitlementsCall) Context(ctx context.Context) *AccountsCustomersTransferEntitlementsCall {
  9220  	c.ctx_ = ctx
  9221  	return c
  9222  }
  9223  
  9224  // Header returns a http.Header that can be modified by the caller to add
  9225  // headers to the request.
  9226  func (c *AccountsCustomersTransferEntitlementsCall) Header() http.Header {
  9227  	if c.header_ == nil {
  9228  		c.header_ = make(http.Header)
  9229  	}
  9230  	return c.header_
  9231  }
  9232  
  9233  func (c *AccountsCustomersTransferEntitlementsCall) doRequest(alt string) (*http.Response, error) {
  9234  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  9235  	var body io.Reader = nil
  9236  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudchannelv1transferentitlementsrequest)
  9237  	if err != nil {
  9238  		return nil, err
  9239  	}
  9240  	c.urlParams_.Set("alt", alt)
  9241  	c.urlParams_.Set("prettyPrint", "false")
  9242  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}:transferEntitlements")
  9243  	urls += "?" + c.urlParams_.Encode()
  9244  	req, err := http.NewRequest("POST", urls, body)
  9245  	if err != nil {
  9246  		return nil, err
  9247  	}
  9248  	req.Header = reqHeaders
  9249  	googleapi.Expand(req.URL, map[string]string{
  9250  		"parent": c.parent,
  9251  	})
  9252  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9253  }
  9254  
  9255  // Do executes the "cloudchannel.accounts.customers.transferEntitlements" call.
  9256  // Any non-2xx status code is an error. Response headers are in either
  9257  // *GoogleLongrunningOperation.ServerResponse.Header or (if a response was
  9258  // returned at all) in error.(*googleapi.Error).Header. Use
  9259  // googleapi.IsNotModified to check whether the returned error was because
  9260  // http.StatusNotModified was returned.
  9261  func (c *AccountsCustomersTransferEntitlementsCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
  9262  	gensupport.SetOptions(c.urlParams_, opts...)
  9263  	res, err := c.doRequest("json")
  9264  	if res != nil && res.StatusCode == http.StatusNotModified {
  9265  		if res.Body != nil {
  9266  			res.Body.Close()
  9267  		}
  9268  		return nil, gensupport.WrapError(&googleapi.Error{
  9269  			Code:   res.StatusCode,
  9270  			Header: res.Header,
  9271  		})
  9272  	}
  9273  	if err != nil {
  9274  		return nil, err
  9275  	}
  9276  	defer googleapi.CloseBody(res)
  9277  	if err := googleapi.CheckResponse(res); err != nil {
  9278  		return nil, gensupport.WrapError(err)
  9279  	}
  9280  	ret := &GoogleLongrunningOperation{
  9281  		ServerResponse: googleapi.ServerResponse{
  9282  			Header:         res.Header,
  9283  			HTTPStatusCode: res.StatusCode,
  9284  		},
  9285  	}
  9286  	target := &ret
  9287  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9288  		return nil, err
  9289  	}
  9290  	return ret, nil
  9291  }
  9292  
  9293  type AccountsCustomersTransferEntitlementsToGoogleCall struct {
  9294  	s                                                       *Service
  9295  	parent                                                  string
  9296  	googlecloudchannelv1transferentitlementstogooglerequest *GoogleCloudChannelV1TransferEntitlementsToGoogleRequest
  9297  	urlParams_                                              gensupport.URLParams
  9298  	ctx_                                                    context.Context
  9299  	header_                                                 http.Header
  9300  }
  9301  
  9302  // TransferEntitlementsToGoogle: Transfers customer entitlements from their
  9303  // current reseller to Google. Possible error codes: * PERMISSION_DENIED: The
  9304  // customer doesn't belong to the reseller. * INVALID_ARGUMENT: Required
  9305  // request parameters are missing or invalid. * NOT_FOUND: The customer or
  9306  // offer resource was not found. * ALREADY_EXISTS: The SKU was already
  9307  // transferred for the customer. * CONDITION_NOT_MET or FAILED_PRECONDITION: *
  9308  // The SKU requires domain verification to transfer, but the domain is not
  9309  // verified. * An Add-On SKU (example, Vault or Drive) is missing the
  9310  // pre-requisite SKU (example, G Suite Basic). * (Developer accounts only)
  9311  // Reseller and resold domain must meet the following naming requirements: *
  9312  // Domain names must start with goog-test. * Domain names must include the
  9313  // reseller domain. * INTERNAL: Any non-user error related to a technical issue
  9314  // in the backend. Contact Cloud Channel support. * UNKNOWN: Any non-user error
  9315  // related to a technical issue in the backend. Contact Cloud Channel support.
  9316  // Return value: The ID of a long-running operation. To get the results of the
  9317  // operation, call the GetOperation method of CloudChannelOperationsService.
  9318  // The response will contain google.protobuf.Empty on success. The Operation
  9319  // metadata will contain an instance of OperationMetadata.
  9320  //
  9321  //   - parent: The resource name of the reseller's customer account where the
  9322  //     entitlements transfer from. Parent uses the format:
  9323  //     accounts/{account_id}/customers/{customer_id}.
  9324  func (r *AccountsCustomersService) TransferEntitlementsToGoogle(parent string, googlecloudchannelv1transferentitlementstogooglerequest *GoogleCloudChannelV1TransferEntitlementsToGoogleRequest) *AccountsCustomersTransferEntitlementsToGoogleCall {
  9325  	c := &AccountsCustomersTransferEntitlementsToGoogleCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9326  	c.parent = parent
  9327  	c.googlecloudchannelv1transferentitlementstogooglerequest = googlecloudchannelv1transferentitlementstogooglerequest
  9328  	return c
  9329  }
  9330  
  9331  // Fields allows partial responses to be retrieved. See
  9332  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9333  // details.
  9334  func (c *AccountsCustomersTransferEntitlementsToGoogleCall) Fields(s ...googleapi.Field) *AccountsCustomersTransferEntitlementsToGoogleCall {
  9335  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9336  	return c
  9337  }
  9338  
  9339  // Context sets the context to be used in this call's Do method.
  9340  func (c *AccountsCustomersTransferEntitlementsToGoogleCall) Context(ctx context.Context) *AccountsCustomersTransferEntitlementsToGoogleCall {
  9341  	c.ctx_ = ctx
  9342  	return c
  9343  }
  9344  
  9345  // Header returns a http.Header that can be modified by the caller to add
  9346  // headers to the request.
  9347  func (c *AccountsCustomersTransferEntitlementsToGoogleCall) Header() http.Header {
  9348  	if c.header_ == nil {
  9349  		c.header_ = make(http.Header)
  9350  	}
  9351  	return c.header_
  9352  }
  9353  
  9354  func (c *AccountsCustomersTransferEntitlementsToGoogleCall) doRequest(alt string) (*http.Response, error) {
  9355  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  9356  	var body io.Reader = nil
  9357  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudchannelv1transferentitlementstogooglerequest)
  9358  	if err != nil {
  9359  		return nil, err
  9360  	}
  9361  	c.urlParams_.Set("alt", alt)
  9362  	c.urlParams_.Set("prettyPrint", "false")
  9363  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}:transferEntitlementsToGoogle")
  9364  	urls += "?" + c.urlParams_.Encode()
  9365  	req, err := http.NewRequest("POST", urls, body)
  9366  	if err != nil {
  9367  		return nil, err
  9368  	}
  9369  	req.Header = reqHeaders
  9370  	googleapi.Expand(req.URL, map[string]string{
  9371  		"parent": c.parent,
  9372  	})
  9373  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9374  }
  9375  
  9376  // Do executes the "cloudchannel.accounts.customers.transferEntitlementsToGoogle" call.
  9377  // Any non-2xx status code is an error. Response headers are in either
  9378  // *GoogleLongrunningOperation.ServerResponse.Header or (if a response was
  9379  // returned at all) in error.(*googleapi.Error).Header. Use
  9380  // googleapi.IsNotModified to check whether the returned error was because
  9381  // http.StatusNotModified was returned.
  9382  func (c *AccountsCustomersTransferEntitlementsToGoogleCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
  9383  	gensupport.SetOptions(c.urlParams_, opts...)
  9384  	res, err := c.doRequest("json")
  9385  	if res != nil && res.StatusCode == http.StatusNotModified {
  9386  		if res.Body != nil {
  9387  			res.Body.Close()
  9388  		}
  9389  		return nil, gensupport.WrapError(&googleapi.Error{
  9390  			Code:   res.StatusCode,
  9391  			Header: res.Header,
  9392  		})
  9393  	}
  9394  	if err != nil {
  9395  		return nil, err
  9396  	}
  9397  	defer googleapi.CloseBody(res)
  9398  	if err := googleapi.CheckResponse(res); err != nil {
  9399  		return nil, gensupport.WrapError(err)
  9400  	}
  9401  	ret := &GoogleLongrunningOperation{
  9402  		ServerResponse: googleapi.ServerResponse{
  9403  			Header:         res.Header,
  9404  			HTTPStatusCode: res.StatusCode,
  9405  		},
  9406  	}
  9407  	target := &ret
  9408  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9409  		return nil, err
  9410  	}
  9411  	return ret, nil
  9412  }
  9413  
  9414  type AccountsCustomersCustomerRepricingConfigsCreateCall struct {
  9415  	s                                           *Service
  9416  	parent                                      string
  9417  	googlecloudchannelv1customerrepricingconfig *GoogleCloudChannelV1CustomerRepricingConfig
  9418  	urlParams_                                  gensupport.URLParams
  9419  	ctx_                                        context.Context
  9420  	header_                                     http.Header
  9421  }
  9422  
  9423  // Create: Creates a CustomerRepricingConfig. Call this method to set
  9424  // modifications for a specific customer's bill. You can only create configs if
  9425  // the RepricingConfig.effective_invoice_month is a future month. If needed,
  9426  // you can create a config for the current month, with some restrictions. When
  9427  // creating a config for a future month, make sure there are no existing
  9428  // configs for that RepricingConfig.effective_invoice_month. The following
  9429  // restrictions are for creating configs in the current month. * This
  9430  // functionality is reserved for recovering from an erroneous config, and
  9431  // should not be used for regular business cases. * The new config will not
  9432  // modify exports used with other configs. Changes to the config may be
  9433  // immediate, but may take up to 24 hours. * There is a limit of ten configs
  9434  // for any RepricingConfig.EntitlementGranularity.entitlement, for any
  9435  // RepricingConfig.effective_invoice_month. * The contained
  9436  // CustomerRepricingConfig.repricing_config value must be different from the
  9437  // value used in the current config for a
  9438  // RepricingConfig.EntitlementGranularity.entitlement. Possible Error Codes: *
  9439  // PERMISSION_DENIED: If the account making the request and the account being
  9440  // queried are different. * INVALID_ARGUMENT: Missing or invalid required
  9441  // parameters in the request. Also displays if the updated config is for the
  9442  // current month or past months. * NOT_FOUND: The CustomerRepricingConfig
  9443  // specified does not exist or is not associated with the given account. *
  9444  // INTERNAL: Any non-user error related to technical issues in the backend. In
  9445  // this case, contact Cloud Channel support. Return Value: If successful, the
  9446  // updated CustomerRepricingConfig resource, otherwise returns an error.
  9447  //
  9448  //   - parent: The resource name of the customer that will receive this repricing
  9449  //     config. Parent uses the format:
  9450  //     accounts/{account_id}/customers/{customer_id}.
  9451  func (r *AccountsCustomersCustomerRepricingConfigsService) Create(parent string, googlecloudchannelv1customerrepricingconfig *GoogleCloudChannelV1CustomerRepricingConfig) *AccountsCustomersCustomerRepricingConfigsCreateCall {
  9452  	c := &AccountsCustomersCustomerRepricingConfigsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9453  	c.parent = parent
  9454  	c.googlecloudchannelv1customerrepricingconfig = googlecloudchannelv1customerrepricingconfig
  9455  	return c
  9456  }
  9457  
  9458  // Fields allows partial responses to be retrieved. See
  9459  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9460  // details.
  9461  func (c *AccountsCustomersCustomerRepricingConfigsCreateCall) Fields(s ...googleapi.Field) *AccountsCustomersCustomerRepricingConfigsCreateCall {
  9462  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9463  	return c
  9464  }
  9465  
  9466  // Context sets the context to be used in this call's Do method.
  9467  func (c *AccountsCustomersCustomerRepricingConfigsCreateCall) Context(ctx context.Context) *AccountsCustomersCustomerRepricingConfigsCreateCall {
  9468  	c.ctx_ = ctx
  9469  	return c
  9470  }
  9471  
  9472  // Header returns a http.Header that can be modified by the caller to add
  9473  // headers to the request.
  9474  func (c *AccountsCustomersCustomerRepricingConfigsCreateCall) Header() http.Header {
  9475  	if c.header_ == nil {
  9476  		c.header_ = make(http.Header)
  9477  	}
  9478  	return c.header_
  9479  }
  9480  
  9481  func (c *AccountsCustomersCustomerRepricingConfigsCreateCall) doRequest(alt string) (*http.Response, error) {
  9482  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  9483  	var body io.Reader = nil
  9484  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudchannelv1customerrepricingconfig)
  9485  	if err != nil {
  9486  		return nil, err
  9487  	}
  9488  	c.urlParams_.Set("alt", alt)
  9489  	c.urlParams_.Set("prettyPrint", "false")
  9490  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/customerRepricingConfigs")
  9491  	urls += "?" + c.urlParams_.Encode()
  9492  	req, err := http.NewRequest("POST", urls, body)
  9493  	if err != nil {
  9494  		return nil, err
  9495  	}
  9496  	req.Header = reqHeaders
  9497  	googleapi.Expand(req.URL, map[string]string{
  9498  		"parent": c.parent,
  9499  	})
  9500  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9501  }
  9502  
  9503  // Do executes the "cloudchannel.accounts.customers.customerRepricingConfigs.create" call.
  9504  // Any non-2xx status code is an error. Response headers are in either
  9505  // *GoogleCloudChannelV1CustomerRepricingConfig.ServerResponse.Header or (if a
  9506  // response was returned at all) in error.(*googleapi.Error).Header. Use
  9507  // googleapi.IsNotModified to check whether the returned error was because
  9508  // http.StatusNotModified was returned.
  9509  func (c *AccountsCustomersCustomerRepricingConfigsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1CustomerRepricingConfig, error) {
  9510  	gensupport.SetOptions(c.urlParams_, opts...)
  9511  	res, err := c.doRequest("json")
  9512  	if res != nil && res.StatusCode == http.StatusNotModified {
  9513  		if res.Body != nil {
  9514  			res.Body.Close()
  9515  		}
  9516  		return nil, gensupport.WrapError(&googleapi.Error{
  9517  			Code:   res.StatusCode,
  9518  			Header: res.Header,
  9519  		})
  9520  	}
  9521  	if err != nil {
  9522  		return nil, err
  9523  	}
  9524  	defer googleapi.CloseBody(res)
  9525  	if err := googleapi.CheckResponse(res); err != nil {
  9526  		return nil, gensupport.WrapError(err)
  9527  	}
  9528  	ret := &GoogleCloudChannelV1CustomerRepricingConfig{
  9529  		ServerResponse: googleapi.ServerResponse{
  9530  			Header:         res.Header,
  9531  			HTTPStatusCode: res.StatusCode,
  9532  		},
  9533  	}
  9534  	target := &ret
  9535  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9536  		return nil, err
  9537  	}
  9538  	return ret, nil
  9539  }
  9540  
  9541  type AccountsCustomersCustomerRepricingConfigsDeleteCall struct {
  9542  	s          *Service
  9543  	name       string
  9544  	urlParams_ gensupport.URLParams
  9545  	ctx_       context.Context
  9546  	header_    http.Header
  9547  }
  9548  
  9549  // Delete: Deletes the given CustomerRepricingConfig permanently. You can only
  9550  // delete configs if their RepricingConfig.effective_invoice_month is set to a
  9551  // date after the current month. Possible error codes: * PERMISSION_DENIED: The
  9552  // account making the request does not own this customer. * INVALID_ARGUMENT:
  9553  // Required request parameters are missing or invalid. * FAILED_PRECONDITION:
  9554  // The CustomerRepricingConfig is active or in the past. * NOT_FOUND: No
  9555  // CustomerRepricingConfig found for the name in the request.
  9556  //
  9557  //   - name: The resource name of the customer repricing config rule to delete.
  9558  //     Format:
  9559  //     accounts/{account_id}/customers/{customer_id}/customerRepricingConfigs/{id}
  9560  //     .
  9561  func (r *AccountsCustomersCustomerRepricingConfigsService) Delete(name string) *AccountsCustomersCustomerRepricingConfigsDeleteCall {
  9562  	c := &AccountsCustomersCustomerRepricingConfigsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9563  	c.name = name
  9564  	return c
  9565  }
  9566  
  9567  // Fields allows partial responses to be retrieved. See
  9568  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9569  // details.
  9570  func (c *AccountsCustomersCustomerRepricingConfigsDeleteCall) Fields(s ...googleapi.Field) *AccountsCustomersCustomerRepricingConfigsDeleteCall {
  9571  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9572  	return c
  9573  }
  9574  
  9575  // Context sets the context to be used in this call's Do method.
  9576  func (c *AccountsCustomersCustomerRepricingConfigsDeleteCall) Context(ctx context.Context) *AccountsCustomersCustomerRepricingConfigsDeleteCall {
  9577  	c.ctx_ = ctx
  9578  	return c
  9579  }
  9580  
  9581  // Header returns a http.Header that can be modified by the caller to add
  9582  // headers to the request.
  9583  func (c *AccountsCustomersCustomerRepricingConfigsDeleteCall) Header() http.Header {
  9584  	if c.header_ == nil {
  9585  		c.header_ = make(http.Header)
  9586  	}
  9587  	return c.header_
  9588  }
  9589  
  9590  func (c *AccountsCustomersCustomerRepricingConfigsDeleteCall) doRequest(alt string) (*http.Response, error) {
  9591  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  9592  	var body io.Reader = nil
  9593  	c.urlParams_.Set("alt", alt)
  9594  	c.urlParams_.Set("prettyPrint", "false")
  9595  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  9596  	urls += "?" + c.urlParams_.Encode()
  9597  	req, err := http.NewRequest("DELETE", urls, body)
  9598  	if err != nil {
  9599  		return nil, err
  9600  	}
  9601  	req.Header = reqHeaders
  9602  	googleapi.Expand(req.URL, map[string]string{
  9603  		"name": c.name,
  9604  	})
  9605  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9606  }
  9607  
  9608  // Do executes the "cloudchannel.accounts.customers.customerRepricingConfigs.delete" call.
  9609  // Any non-2xx status code is an error. Response headers are in either
  9610  // *GoogleProtobufEmpty.ServerResponse.Header or (if a response was returned at
  9611  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  9612  // check whether the returned error was because http.StatusNotModified was
  9613  // returned.
  9614  func (c *AccountsCustomersCustomerRepricingConfigsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
  9615  	gensupport.SetOptions(c.urlParams_, opts...)
  9616  	res, err := c.doRequest("json")
  9617  	if res != nil && res.StatusCode == http.StatusNotModified {
  9618  		if res.Body != nil {
  9619  			res.Body.Close()
  9620  		}
  9621  		return nil, gensupport.WrapError(&googleapi.Error{
  9622  			Code:   res.StatusCode,
  9623  			Header: res.Header,
  9624  		})
  9625  	}
  9626  	if err != nil {
  9627  		return nil, err
  9628  	}
  9629  	defer googleapi.CloseBody(res)
  9630  	if err := googleapi.CheckResponse(res); err != nil {
  9631  		return nil, gensupport.WrapError(err)
  9632  	}
  9633  	ret := &GoogleProtobufEmpty{
  9634  		ServerResponse: googleapi.ServerResponse{
  9635  			Header:         res.Header,
  9636  			HTTPStatusCode: res.StatusCode,
  9637  		},
  9638  	}
  9639  	target := &ret
  9640  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9641  		return nil, err
  9642  	}
  9643  	return ret, nil
  9644  }
  9645  
  9646  type AccountsCustomersCustomerRepricingConfigsGetCall struct {
  9647  	s            *Service
  9648  	name         string
  9649  	urlParams_   gensupport.URLParams
  9650  	ifNoneMatch_ string
  9651  	ctx_         context.Context
  9652  	header_      http.Header
  9653  }
  9654  
  9655  // Get: Gets information about how a Reseller modifies their bill before
  9656  // sending it to a Customer. Possible Error Codes: * PERMISSION_DENIED: If the
  9657  // account making the request and the account being queried are different. *
  9658  // NOT_FOUND: The CustomerRepricingConfig was not found. * INTERNAL: Any
  9659  // non-user error related to technical issues in the backend. In this case,
  9660  // contact Cloud Channel support. Return Value: If successful, the
  9661  // CustomerRepricingConfig resource, otherwise returns an error.
  9662  //
  9663  //   - name: The resource name of the CustomerRepricingConfig. Format:
  9664  //     accounts/{account_id}/customers/{customer_id}/customerRepricingConfigs/{id}
  9665  //     .
  9666  func (r *AccountsCustomersCustomerRepricingConfigsService) Get(name string) *AccountsCustomersCustomerRepricingConfigsGetCall {
  9667  	c := &AccountsCustomersCustomerRepricingConfigsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9668  	c.name = name
  9669  	return c
  9670  }
  9671  
  9672  // Fields allows partial responses to be retrieved. See
  9673  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9674  // details.
  9675  func (c *AccountsCustomersCustomerRepricingConfigsGetCall) Fields(s ...googleapi.Field) *AccountsCustomersCustomerRepricingConfigsGetCall {
  9676  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9677  	return c
  9678  }
  9679  
  9680  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  9681  // object's ETag matches the given value. This is useful for getting updates
  9682  // only after the object has changed since the last request.
  9683  func (c *AccountsCustomersCustomerRepricingConfigsGetCall) IfNoneMatch(entityTag string) *AccountsCustomersCustomerRepricingConfigsGetCall {
  9684  	c.ifNoneMatch_ = entityTag
  9685  	return c
  9686  }
  9687  
  9688  // Context sets the context to be used in this call's Do method.
  9689  func (c *AccountsCustomersCustomerRepricingConfigsGetCall) Context(ctx context.Context) *AccountsCustomersCustomerRepricingConfigsGetCall {
  9690  	c.ctx_ = ctx
  9691  	return c
  9692  }
  9693  
  9694  // Header returns a http.Header that can be modified by the caller to add
  9695  // headers to the request.
  9696  func (c *AccountsCustomersCustomerRepricingConfigsGetCall) Header() http.Header {
  9697  	if c.header_ == nil {
  9698  		c.header_ = make(http.Header)
  9699  	}
  9700  	return c.header_
  9701  }
  9702  
  9703  func (c *AccountsCustomersCustomerRepricingConfigsGetCall) doRequest(alt string) (*http.Response, error) {
  9704  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  9705  	if c.ifNoneMatch_ != "" {
  9706  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  9707  	}
  9708  	var body io.Reader = nil
  9709  	c.urlParams_.Set("alt", alt)
  9710  	c.urlParams_.Set("prettyPrint", "false")
  9711  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  9712  	urls += "?" + c.urlParams_.Encode()
  9713  	req, err := http.NewRequest("GET", urls, body)
  9714  	if err != nil {
  9715  		return nil, err
  9716  	}
  9717  	req.Header = reqHeaders
  9718  	googleapi.Expand(req.URL, map[string]string{
  9719  		"name": c.name,
  9720  	})
  9721  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9722  }
  9723  
  9724  // Do executes the "cloudchannel.accounts.customers.customerRepricingConfigs.get" call.
  9725  // Any non-2xx status code is an error. Response headers are in either
  9726  // *GoogleCloudChannelV1CustomerRepricingConfig.ServerResponse.Header or (if a
  9727  // response was returned at all) in error.(*googleapi.Error).Header. Use
  9728  // googleapi.IsNotModified to check whether the returned error was because
  9729  // http.StatusNotModified was returned.
  9730  func (c *AccountsCustomersCustomerRepricingConfigsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1CustomerRepricingConfig, error) {
  9731  	gensupport.SetOptions(c.urlParams_, opts...)
  9732  	res, err := c.doRequest("json")
  9733  	if res != nil && res.StatusCode == http.StatusNotModified {
  9734  		if res.Body != nil {
  9735  			res.Body.Close()
  9736  		}
  9737  		return nil, gensupport.WrapError(&googleapi.Error{
  9738  			Code:   res.StatusCode,
  9739  			Header: res.Header,
  9740  		})
  9741  	}
  9742  	if err != nil {
  9743  		return nil, err
  9744  	}
  9745  	defer googleapi.CloseBody(res)
  9746  	if err := googleapi.CheckResponse(res); err != nil {
  9747  		return nil, gensupport.WrapError(err)
  9748  	}
  9749  	ret := &GoogleCloudChannelV1CustomerRepricingConfig{
  9750  		ServerResponse: googleapi.ServerResponse{
  9751  			Header:         res.Header,
  9752  			HTTPStatusCode: res.StatusCode,
  9753  		},
  9754  	}
  9755  	target := &ret
  9756  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9757  		return nil, err
  9758  	}
  9759  	return ret, nil
  9760  }
  9761  
  9762  type AccountsCustomersCustomerRepricingConfigsListCall struct {
  9763  	s            *Service
  9764  	parent       string
  9765  	urlParams_   gensupport.URLParams
  9766  	ifNoneMatch_ string
  9767  	ctx_         context.Context
  9768  	header_      http.Header
  9769  }
  9770  
  9771  // List: Lists information about how a Reseller modifies their bill before
  9772  // sending it to a Customer. Possible Error Codes: * PERMISSION_DENIED: If the
  9773  // account making the request and the account being queried are different. *
  9774  // NOT_FOUND: The CustomerRepricingConfig specified does not exist or is not
  9775  // associated with the given account. * INTERNAL: Any non-user error related to
  9776  // technical issues in the backend. In this case, contact Cloud Channel
  9777  // support. Return Value: If successful, the CustomerRepricingConfig resources.
  9778  // The data for each resource is displayed in the ascending order of: *
  9779  // Customer ID * RepricingConfig.EntitlementGranularity.entitlement *
  9780  // RepricingConfig.effective_invoice_month *
  9781  // CustomerRepricingConfig.update_time If unsuccessful, returns an error.
  9782  //
  9783  //   - parent: The resource name of the customer. Parent uses the format:
  9784  //     accounts/{account_id}/customers/{customer_id}. Supports
  9785  //     accounts/{account_id}/customers/- to retrieve configs for all customers.
  9786  func (r *AccountsCustomersCustomerRepricingConfigsService) List(parent string) *AccountsCustomersCustomerRepricingConfigsListCall {
  9787  	c := &AccountsCustomersCustomerRepricingConfigsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9788  	c.parent = parent
  9789  	return c
  9790  }
  9791  
  9792  // Filter sets the optional parameter "filter": A filter for
  9793  // [CloudChannelService.ListCustomerRepricingConfigs] results (customer only).
  9794  // You can use this filter when you support a BatchGet-like query. To use the
  9795  // filter, you must set `parent=accounts/{account_id}/customers/-`. Example:
  9796  // customer = accounts/account_id/customers/c1 OR customer =
  9797  // accounts/account_id/customers/c2.
  9798  func (c *AccountsCustomersCustomerRepricingConfigsListCall) Filter(filter string) *AccountsCustomersCustomerRepricingConfigsListCall {
  9799  	c.urlParams_.Set("filter", filter)
  9800  	return c
  9801  }
  9802  
  9803  // PageSize sets the optional parameter "pageSize": The maximum number of
  9804  // repricing configs to return. The service may return fewer than this value.
  9805  // If unspecified, returns a maximum of 50 rules. The maximum value is 100;
  9806  // values above 100 will be coerced to 100.
  9807  func (c *AccountsCustomersCustomerRepricingConfigsListCall) PageSize(pageSize int64) *AccountsCustomersCustomerRepricingConfigsListCall {
  9808  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  9809  	return c
  9810  }
  9811  
  9812  // PageToken sets the optional parameter "pageToken": A token identifying a
  9813  // page of results beyond the first page. Obtained through
  9814  // ListCustomerRepricingConfigsResponse.next_page_token of the previous
  9815  // CloudChannelService.ListCustomerRepricingConfigs call.
  9816  func (c *AccountsCustomersCustomerRepricingConfigsListCall) PageToken(pageToken string) *AccountsCustomersCustomerRepricingConfigsListCall {
  9817  	c.urlParams_.Set("pageToken", pageToken)
  9818  	return c
  9819  }
  9820  
  9821  // Fields allows partial responses to be retrieved. See
  9822  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9823  // details.
  9824  func (c *AccountsCustomersCustomerRepricingConfigsListCall) Fields(s ...googleapi.Field) *AccountsCustomersCustomerRepricingConfigsListCall {
  9825  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9826  	return c
  9827  }
  9828  
  9829  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  9830  // object's ETag matches the given value. This is useful for getting updates
  9831  // only after the object has changed since the last request.
  9832  func (c *AccountsCustomersCustomerRepricingConfigsListCall) IfNoneMatch(entityTag string) *AccountsCustomersCustomerRepricingConfigsListCall {
  9833  	c.ifNoneMatch_ = entityTag
  9834  	return c
  9835  }
  9836  
  9837  // Context sets the context to be used in this call's Do method.
  9838  func (c *AccountsCustomersCustomerRepricingConfigsListCall) Context(ctx context.Context) *AccountsCustomersCustomerRepricingConfigsListCall {
  9839  	c.ctx_ = ctx
  9840  	return c
  9841  }
  9842  
  9843  // Header returns a http.Header that can be modified by the caller to add
  9844  // headers to the request.
  9845  func (c *AccountsCustomersCustomerRepricingConfigsListCall) Header() http.Header {
  9846  	if c.header_ == nil {
  9847  		c.header_ = make(http.Header)
  9848  	}
  9849  	return c.header_
  9850  }
  9851  
  9852  func (c *AccountsCustomersCustomerRepricingConfigsListCall) doRequest(alt string) (*http.Response, error) {
  9853  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  9854  	if c.ifNoneMatch_ != "" {
  9855  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  9856  	}
  9857  	var body io.Reader = nil
  9858  	c.urlParams_.Set("alt", alt)
  9859  	c.urlParams_.Set("prettyPrint", "false")
  9860  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/customerRepricingConfigs")
  9861  	urls += "?" + c.urlParams_.Encode()
  9862  	req, err := http.NewRequest("GET", urls, body)
  9863  	if err != nil {
  9864  		return nil, err
  9865  	}
  9866  	req.Header = reqHeaders
  9867  	googleapi.Expand(req.URL, map[string]string{
  9868  		"parent": c.parent,
  9869  	})
  9870  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9871  }
  9872  
  9873  // Do executes the "cloudchannel.accounts.customers.customerRepricingConfigs.list" call.
  9874  // Any non-2xx status code is an error. Response headers are in either
  9875  // *GoogleCloudChannelV1ListCustomerRepricingConfigsResponse.ServerResponse.Head
  9876  // er or (if a response was returned at all) in
  9877  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  9878  // whether the returned error was because http.StatusNotModified was returned.
  9879  func (c *AccountsCustomersCustomerRepricingConfigsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1ListCustomerRepricingConfigsResponse, error) {
  9880  	gensupport.SetOptions(c.urlParams_, opts...)
  9881  	res, err := c.doRequest("json")
  9882  	if res != nil && res.StatusCode == http.StatusNotModified {
  9883  		if res.Body != nil {
  9884  			res.Body.Close()
  9885  		}
  9886  		return nil, gensupport.WrapError(&googleapi.Error{
  9887  			Code:   res.StatusCode,
  9888  			Header: res.Header,
  9889  		})
  9890  	}
  9891  	if err != nil {
  9892  		return nil, err
  9893  	}
  9894  	defer googleapi.CloseBody(res)
  9895  	if err := googleapi.CheckResponse(res); err != nil {
  9896  		return nil, gensupport.WrapError(err)
  9897  	}
  9898  	ret := &GoogleCloudChannelV1ListCustomerRepricingConfigsResponse{
  9899  		ServerResponse: googleapi.ServerResponse{
  9900  			Header:         res.Header,
  9901  			HTTPStatusCode: res.StatusCode,
  9902  		},
  9903  	}
  9904  	target := &ret
  9905  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9906  		return nil, err
  9907  	}
  9908  	return ret, nil
  9909  }
  9910  
  9911  // Pages invokes f for each page of results.
  9912  // A non-nil error returned from f will halt the iteration.
  9913  // The provided context supersedes any context provided to the Context method.
  9914  func (c *AccountsCustomersCustomerRepricingConfigsListCall) Pages(ctx context.Context, f func(*GoogleCloudChannelV1ListCustomerRepricingConfigsResponse) error) error {
  9915  	c.ctx_ = ctx
  9916  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  9917  	for {
  9918  		x, err := c.Do()
  9919  		if err != nil {
  9920  			return err
  9921  		}
  9922  		if err := f(x); err != nil {
  9923  			return err
  9924  		}
  9925  		if x.NextPageToken == "" {
  9926  			return nil
  9927  		}
  9928  		c.PageToken(x.NextPageToken)
  9929  	}
  9930  }
  9931  
  9932  type AccountsCustomersCustomerRepricingConfigsPatchCall struct {
  9933  	s                                           *Service
  9934  	name                                        string
  9935  	googlecloudchannelv1customerrepricingconfig *GoogleCloudChannelV1CustomerRepricingConfig
  9936  	urlParams_                                  gensupport.URLParams
  9937  	ctx_                                        context.Context
  9938  	header_                                     http.Header
  9939  }
  9940  
  9941  // Patch: Updates a CustomerRepricingConfig. Call this method to set
  9942  // modifications for a specific customer's bill. This method overwrites the
  9943  // existing CustomerRepricingConfig. You can only update configs if the
  9944  // RepricingConfig.effective_invoice_month is a future month. To make changes
  9945  // to configs for the current month, use CreateCustomerRepricingConfig, taking
  9946  // note of its restrictions. You cannot update the
  9947  // RepricingConfig.effective_invoice_month. When updating a config in the
  9948  // future: * This config must already exist. Possible Error Codes: *
  9949  // PERMISSION_DENIED: If the account making the request and the account being
  9950  // queried are different. * INVALID_ARGUMENT: Missing or invalid required
  9951  // parameters in the request. Also displays if the updated config is for the
  9952  // current month or past months. * NOT_FOUND: The CustomerRepricingConfig
  9953  // specified does not exist or is not associated with the given account. *
  9954  // INTERNAL: Any non-user error related to technical issues in the backend. In
  9955  // this case, contact Cloud Channel support. Return Value: If successful, the
  9956  // updated CustomerRepricingConfig resource, otherwise returns an error.
  9957  //
  9958  //   - name: Output only. Resource name of the CustomerRepricingConfig. Format:
  9959  //     accounts/{account_id}/customers/{customer_id}/customerRepricingConfigs/{id}
  9960  //     .
  9961  func (r *AccountsCustomersCustomerRepricingConfigsService) Patch(name string, googlecloudchannelv1customerrepricingconfig *GoogleCloudChannelV1CustomerRepricingConfig) *AccountsCustomersCustomerRepricingConfigsPatchCall {
  9962  	c := &AccountsCustomersCustomerRepricingConfigsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9963  	c.name = name
  9964  	c.googlecloudchannelv1customerrepricingconfig = googlecloudchannelv1customerrepricingconfig
  9965  	return c
  9966  }
  9967  
  9968  // Fields allows partial responses to be retrieved. See
  9969  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9970  // details.
  9971  func (c *AccountsCustomersCustomerRepricingConfigsPatchCall) Fields(s ...googleapi.Field) *AccountsCustomersCustomerRepricingConfigsPatchCall {
  9972  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9973  	return c
  9974  }
  9975  
  9976  // Context sets the context to be used in this call's Do method.
  9977  func (c *AccountsCustomersCustomerRepricingConfigsPatchCall) Context(ctx context.Context) *AccountsCustomersCustomerRepricingConfigsPatchCall {
  9978  	c.ctx_ = ctx
  9979  	return c
  9980  }
  9981  
  9982  // Header returns a http.Header that can be modified by the caller to add
  9983  // headers to the request.
  9984  func (c *AccountsCustomersCustomerRepricingConfigsPatchCall) Header() http.Header {
  9985  	if c.header_ == nil {
  9986  		c.header_ = make(http.Header)
  9987  	}
  9988  	return c.header_
  9989  }
  9990  
  9991  func (c *AccountsCustomersCustomerRepricingConfigsPatchCall) doRequest(alt string) (*http.Response, error) {
  9992  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  9993  	var body io.Reader = nil
  9994  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudchannelv1customerrepricingconfig)
  9995  	if err != nil {
  9996  		return nil, err
  9997  	}
  9998  	c.urlParams_.Set("alt", alt)
  9999  	c.urlParams_.Set("prettyPrint", "false")
 10000  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 10001  	urls += "?" + c.urlParams_.Encode()
 10002  	req, err := http.NewRequest("PATCH", urls, body)
 10003  	if err != nil {
 10004  		return nil, err
 10005  	}
 10006  	req.Header = reqHeaders
 10007  	googleapi.Expand(req.URL, map[string]string{
 10008  		"name": c.name,
 10009  	})
 10010  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10011  }
 10012  
 10013  // Do executes the "cloudchannel.accounts.customers.customerRepricingConfigs.patch" call.
 10014  // Any non-2xx status code is an error. Response headers are in either
 10015  // *GoogleCloudChannelV1CustomerRepricingConfig.ServerResponse.Header or (if a
 10016  // response was returned at all) in error.(*googleapi.Error).Header. Use
 10017  // googleapi.IsNotModified to check whether the returned error was because
 10018  // http.StatusNotModified was returned.
 10019  func (c *AccountsCustomersCustomerRepricingConfigsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1CustomerRepricingConfig, error) {
 10020  	gensupport.SetOptions(c.urlParams_, opts...)
 10021  	res, err := c.doRequest("json")
 10022  	if res != nil && res.StatusCode == http.StatusNotModified {
 10023  		if res.Body != nil {
 10024  			res.Body.Close()
 10025  		}
 10026  		return nil, gensupport.WrapError(&googleapi.Error{
 10027  			Code:   res.StatusCode,
 10028  			Header: res.Header,
 10029  		})
 10030  	}
 10031  	if err != nil {
 10032  		return nil, err
 10033  	}
 10034  	defer googleapi.CloseBody(res)
 10035  	if err := googleapi.CheckResponse(res); err != nil {
 10036  		return nil, gensupport.WrapError(err)
 10037  	}
 10038  	ret := &GoogleCloudChannelV1CustomerRepricingConfig{
 10039  		ServerResponse: googleapi.ServerResponse{
 10040  			Header:         res.Header,
 10041  			HTTPStatusCode: res.StatusCode,
 10042  		},
 10043  	}
 10044  	target := &ret
 10045  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10046  		return nil, err
 10047  	}
 10048  	return ret, nil
 10049  }
 10050  
 10051  type AccountsCustomersEntitlementsActivateCall struct {
 10052  	s                                              *Service
 10053  	name                                           string
 10054  	googlecloudchannelv1activateentitlementrequest *GoogleCloudChannelV1ActivateEntitlementRequest
 10055  	urlParams_                                     gensupport.URLParams
 10056  	ctx_                                           context.Context
 10057  	header_                                        http.Header
 10058  }
 10059  
 10060  // Activate: Activates a previously suspended entitlement. Entitlements
 10061  // suspended for pending ToS acceptance can't be activated using this method.
 10062  // An entitlement activation is a long-running operation and it updates the
 10063  // state of the customer entitlement. Possible error codes: *
 10064  // PERMISSION_DENIED: The reseller account making the request is different from
 10065  // the reseller account in the API request. * INVALID_ARGUMENT: Required
 10066  // request parameters are missing or invalid. * NOT_FOUND: Entitlement resource
 10067  // not found. * SUSPENSION_NOT_RESELLER_INITIATED: Can only activate
 10068  // reseller-initiated suspensions and entitlements that have accepted the TOS.
 10069  // * NOT_SUSPENDED: Can only activate suspended entitlements not in an ACTIVE
 10070  // state. * INTERNAL: Any non-user error related to a technical issue in the
 10071  // backend. Contact Cloud Channel support. * UNKNOWN: Any non-user error
 10072  // related to a technical issue in the backend. Contact Cloud Channel support.
 10073  // Return value: The ID of a long-running operation. To get the results of the
 10074  // operation, call the GetOperation method of CloudChannelOperationsService.
 10075  // The Operation metadata will contain an instance of OperationMetadata.
 10076  //
 10077  //   - name: The resource name of the entitlement to activate. Name uses the
 10078  //     format:
 10079  //     accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}.
 10080  func (r *AccountsCustomersEntitlementsService) Activate(name string, googlecloudchannelv1activateentitlementrequest *GoogleCloudChannelV1ActivateEntitlementRequest) *AccountsCustomersEntitlementsActivateCall {
 10081  	c := &AccountsCustomersEntitlementsActivateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10082  	c.name = name
 10083  	c.googlecloudchannelv1activateentitlementrequest = googlecloudchannelv1activateentitlementrequest
 10084  	return c
 10085  }
 10086  
 10087  // Fields allows partial responses to be retrieved. See
 10088  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10089  // details.
 10090  func (c *AccountsCustomersEntitlementsActivateCall) Fields(s ...googleapi.Field) *AccountsCustomersEntitlementsActivateCall {
 10091  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10092  	return c
 10093  }
 10094  
 10095  // Context sets the context to be used in this call's Do method.
 10096  func (c *AccountsCustomersEntitlementsActivateCall) Context(ctx context.Context) *AccountsCustomersEntitlementsActivateCall {
 10097  	c.ctx_ = ctx
 10098  	return c
 10099  }
 10100  
 10101  // Header returns a http.Header that can be modified by the caller to add
 10102  // headers to the request.
 10103  func (c *AccountsCustomersEntitlementsActivateCall) Header() http.Header {
 10104  	if c.header_ == nil {
 10105  		c.header_ = make(http.Header)
 10106  	}
 10107  	return c.header_
 10108  }
 10109  
 10110  func (c *AccountsCustomersEntitlementsActivateCall) doRequest(alt string) (*http.Response, error) {
 10111  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 10112  	var body io.Reader = nil
 10113  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudchannelv1activateentitlementrequest)
 10114  	if err != nil {
 10115  		return nil, err
 10116  	}
 10117  	c.urlParams_.Set("alt", alt)
 10118  	c.urlParams_.Set("prettyPrint", "false")
 10119  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:activate")
 10120  	urls += "?" + c.urlParams_.Encode()
 10121  	req, err := http.NewRequest("POST", urls, body)
 10122  	if err != nil {
 10123  		return nil, err
 10124  	}
 10125  	req.Header = reqHeaders
 10126  	googleapi.Expand(req.URL, map[string]string{
 10127  		"name": c.name,
 10128  	})
 10129  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10130  }
 10131  
 10132  // Do executes the "cloudchannel.accounts.customers.entitlements.activate" call.
 10133  // Any non-2xx status code is an error. Response headers are in either
 10134  // *GoogleLongrunningOperation.ServerResponse.Header or (if a response was
 10135  // returned at all) in error.(*googleapi.Error).Header. Use
 10136  // googleapi.IsNotModified to check whether the returned error was because
 10137  // http.StatusNotModified was returned.
 10138  func (c *AccountsCustomersEntitlementsActivateCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
 10139  	gensupport.SetOptions(c.urlParams_, opts...)
 10140  	res, err := c.doRequest("json")
 10141  	if res != nil && res.StatusCode == http.StatusNotModified {
 10142  		if res.Body != nil {
 10143  			res.Body.Close()
 10144  		}
 10145  		return nil, gensupport.WrapError(&googleapi.Error{
 10146  			Code:   res.StatusCode,
 10147  			Header: res.Header,
 10148  		})
 10149  	}
 10150  	if err != nil {
 10151  		return nil, err
 10152  	}
 10153  	defer googleapi.CloseBody(res)
 10154  	if err := googleapi.CheckResponse(res); err != nil {
 10155  		return nil, gensupport.WrapError(err)
 10156  	}
 10157  	ret := &GoogleLongrunningOperation{
 10158  		ServerResponse: googleapi.ServerResponse{
 10159  			Header:         res.Header,
 10160  			HTTPStatusCode: res.StatusCode,
 10161  		},
 10162  	}
 10163  	target := &ret
 10164  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10165  		return nil, err
 10166  	}
 10167  	return ret, nil
 10168  }
 10169  
 10170  type AccountsCustomersEntitlementsCancelCall struct {
 10171  	s                                            *Service
 10172  	name                                         string
 10173  	googlecloudchannelv1cancelentitlementrequest *GoogleCloudChannelV1CancelEntitlementRequest
 10174  	urlParams_                                   gensupport.URLParams
 10175  	ctx_                                         context.Context
 10176  	header_                                      http.Header
 10177  }
 10178  
 10179  // Cancel: Cancels a previously fulfilled entitlement. An entitlement
 10180  // cancellation is a long-running operation. Possible error codes: *
 10181  // PERMISSION_DENIED: The reseller account making the request is different from
 10182  // the reseller account in the API request. * FAILED_PRECONDITION: There are
 10183  // Google Cloud projects linked to the Google Cloud entitlement's Cloud Billing
 10184  // subaccount. * INVALID_ARGUMENT: Required request parameters are missing or
 10185  // invalid. * NOT_FOUND: Entitlement resource not found. *
 10186  // DELETION_TYPE_NOT_ALLOWED: Cancel is only allowed for Google Workspace
 10187  // add-ons, or entitlements for Google Cloud's development platform. *
 10188  // INTERNAL: Any non-user error related to a technical issue in the backend.
 10189  // Contact Cloud Channel support. * UNKNOWN: Any non-user error related to a
 10190  // technical issue in the backend. Contact Cloud Channel support. Return value:
 10191  // The ID of a long-running operation. To get the results of the operation,
 10192  // call the GetOperation method of CloudChannelOperationsService. The response
 10193  // will contain google.protobuf.Empty on success. The Operation metadata will
 10194  // contain an instance of OperationMetadata.
 10195  //
 10196  //   - name: The resource name of the entitlement to cancel. Name uses the
 10197  //     format:
 10198  //     accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}.
 10199  func (r *AccountsCustomersEntitlementsService) Cancel(name string, googlecloudchannelv1cancelentitlementrequest *GoogleCloudChannelV1CancelEntitlementRequest) *AccountsCustomersEntitlementsCancelCall {
 10200  	c := &AccountsCustomersEntitlementsCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10201  	c.name = name
 10202  	c.googlecloudchannelv1cancelentitlementrequest = googlecloudchannelv1cancelentitlementrequest
 10203  	return c
 10204  }
 10205  
 10206  // Fields allows partial responses to be retrieved. See
 10207  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10208  // details.
 10209  func (c *AccountsCustomersEntitlementsCancelCall) Fields(s ...googleapi.Field) *AccountsCustomersEntitlementsCancelCall {
 10210  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10211  	return c
 10212  }
 10213  
 10214  // Context sets the context to be used in this call's Do method.
 10215  func (c *AccountsCustomersEntitlementsCancelCall) Context(ctx context.Context) *AccountsCustomersEntitlementsCancelCall {
 10216  	c.ctx_ = ctx
 10217  	return c
 10218  }
 10219  
 10220  // Header returns a http.Header that can be modified by the caller to add
 10221  // headers to the request.
 10222  func (c *AccountsCustomersEntitlementsCancelCall) Header() http.Header {
 10223  	if c.header_ == nil {
 10224  		c.header_ = make(http.Header)
 10225  	}
 10226  	return c.header_
 10227  }
 10228  
 10229  func (c *AccountsCustomersEntitlementsCancelCall) doRequest(alt string) (*http.Response, error) {
 10230  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 10231  	var body io.Reader = nil
 10232  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudchannelv1cancelentitlementrequest)
 10233  	if err != nil {
 10234  		return nil, err
 10235  	}
 10236  	c.urlParams_.Set("alt", alt)
 10237  	c.urlParams_.Set("prettyPrint", "false")
 10238  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:cancel")
 10239  	urls += "?" + c.urlParams_.Encode()
 10240  	req, err := http.NewRequest("POST", urls, body)
 10241  	if err != nil {
 10242  		return nil, err
 10243  	}
 10244  	req.Header = reqHeaders
 10245  	googleapi.Expand(req.URL, map[string]string{
 10246  		"name": c.name,
 10247  	})
 10248  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10249  }
 10250  
 10251  // Do executes the "cloudchannel.accounts.customers.entitlements.cancel" call.
 10252  // Any non-2xx status code is an error. Response headers are in either
 10253  // *GoogleLongrunningOperation.ServerResponse.Header or (if a response was
 10254  // returned at all) in error.(*googleapi.Error).Header. Use
 10255  // googleapi.IsNotModified to check whether the returned error was because
 10256  // http.StatusNotModified was returned.
 10257  func (c *AccountsCustomersEntitlementsCancelCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
 10258  	gensupport.SetOptions(c.urlParams_, opts...)
 10259  	res, err := c.doRequest("json")
 10260  	if res != nil && res.StatusCode == http.StatusNotModified {
 10261  		if res.Body != nil {
 10262  			res.Body.Close()
 10263  		}
 10264  		return nil, gensupport.WrapError(&googleapi.Error{
 10265  			Code:   res.StatusCode,
 10266  			Header: res.Header,
 10267  		})
 10268  	}
 10269  	if err != nil {
 10270  		return nil, err
 10271  	}
 10272  	defer googleapi.CloseBody(res)
 10273  	if err := googleapi.CheckResponse(res); err != nil {
 10274  		return nil, gensupport.WrapError(err)
 10275  	}
 10276  	ret := &GoogleLongrunningOperation{
 10277  		ServerResponse: googleapi.ServerResponse{
 10278  			Header:         res.Header,
 10279  			HTTPStatusCode: res.StatusCode,
 10280  		},
 10281  	}
 10282  	target := &ret
 10283  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10284  		return nil, err
 10285  	}
 10286  	return ret, nil
 10287  }
 10288  
 10289  type AccountsCustomersEntitlementsChangeOfferCall struct {
 10290  	s                                      *Service
 10291  	name                                   string
 10292  	googlecloudchannelv1changeofferrequest *GoogleCloudChannelV1ChangeOfferRequest
 10293  	urlParams_                             gensupport.URLParams
 10294  	ctx_                                   context.Context
 10295  	header_                                http.Header
 10296  }
 10297  
 10298  // ChangeOffer: Updates the Offer for an existing customer entitlement. An
 10299  // entitlement update is a long-running operation and it updates the
 10300  // entitlement as a result of fulfillment. Possible error codes: *
 10301  // PERMISSION_DENIED: The customer doesn't belong to the reseller. *
 10302  // INVALID_ARGUMENT: Required request parameters are missing or invalid. *
 10303  // NOT_FOUND: Offer or Entitlement resource not found. * INTERNAL: Any non-user
 10304  // error related to a technical issue in the backend. Contact Cloud Channel
 10305  // support. * UNKNOWN: Any non-user error related to a technical issue in the
 10306  // backend. Contact Cloud Channel support. Return value: The ID of a
 10307  // long-running operation. To get the results of the operation, call the
 10308  // GetOperation method of CloudChannelOperationsService. The Operation metadata
 10309  // will contain an instance of OperationMetadata.
 10310  //
 10311  //   - name: The resource name of the entitlement to update. Name uses the
 10312  //     format:
 10313  //     accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}.
 10314  func (r *AccountsCustomersEntitlementsService) ChangeOffer(name string, googlecloudchannelv1changeofferrequest *GoogleCloudChannelV1ChangeOfferRequest) *AccountsCustomersEntitlementsChangeOfferCall {
 10315  	c := &AccountsCustomersEntitlementsChangeOfferCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10316  	c.name = name
 10317  	c.googlecloudchannelv1changeofferrequest = googlecloudchannelv1changeofferrequest
 10318  	return c
 10319  }
 10320  
 10321  // Fields allows partial responses to be retrieved. See
 10322  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10323  // details.
 10324  func (c *AccountsCustomersEntitlementsChangeOfferCall) Fields(s ...googleapi.Field) *AccountsCustomersEntitlementsChangeOfferCall {
 10325  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10326  	return c
 10327  }
 10328  
 10329  // Context sets the context to be used in this call's Do method.
 10330  func (c *AccountsCustomersEntitlementsChangeOfferCall) Context(ctx context.Context) *AccountsCustomersEntitlementsChangeOfferCall {
 10331  	c.ctx_ = ctx
 10332  	return c
 10333  }
 10334  
 10335  // Header returns a http.Header that can be modified by the caller to add
 10336  // headers to the request.
 10337  func (c *AccountsCustomersEntitlementsChangeOfferCall) Header() http.Header {
 10338  	if c.header_ == nil {
 10339  		c.header_ = make(http.Header)
 10340  	}
 10341  	return c.header_
 10342  }
 10343  
 10344  func (c *AccountsCustomersEntitlementsChangeOfferCall) doRequest(alt string) (*http.Response, error) {
 10345  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 10346  	var body io.Reader = nil
 10347  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudchannelv1changeofferrequest)
 10348  	if err != nil {
 10349  		return nil, err
 10350  	}
 10351  	c.urlParams_.Set("alt", alt)
 10352  	c.urlParams_.Set("prettyPrint", "false")
 10353  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:changeOffer")
 10354  	urls += "?" + c.urlParams_.Encode()
 10355  	req, err := http.NewRequest("POST", urls, body)
 10356  	if err != nil {
 10357  		return nil, err
 10358  	}
 10359  	req.Header = reqHeaders
 10360  	googleapi.Expand(req.URL, map[string]string{
 10361  		"name": c.name,
 10362  	})
 10363  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10364  }
 10365  
 10366  // Do executes the "cloudchannel.accounts.customers.entitlements.changeOffer" call.
 10367  // Any non-2xx status code is an error. Response headers are in either
 10368  // *GoogleLongrunningOperation.ServerResponse.Header or (if a response was
 10369  // returned at all) in error.(*googleapi.Error).Header. Use
 10370  // googleapi.IsNotModified to check whether the returned error was because
 10371  // http.StatusNotModified was returned.
 10372  func (c *AccountsCustomersEntitlementsChangeOfferCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
 10373  	gensupport.SetOptions(c.urlParams_, opts...)
 10374  	res, err := c.doRequest("json")
 10375  	if res != nil && res.StatusCode == http.StatusNotModified {
 10376  		if res.Body != nil {
 10377  			res.Body.Close()
 10378  		}
 10379  		return nil, gensupport.WrapError(&googleapi.Error{
 10380  			Code:   res.StatusCode,
 10381  			Header: res.Header,
 10382  		})
 10383  	}
 10384  	if err != nil {
 10385  		return nil, err
 10386  	}
 10387  	defer googleapi.CloseBody(res)
 10388  	if err := googleapi.CheckResponse(res); err != nil {
 10389  		return nil, gensupport.WrapError(err)
 10390  	}
 10391  	ret := &GoogleLongrunningOperation{
 10392  		ServerResponse: googleapi.ServerResponse{
 10393  			Header:         res.Header,
 10394  			HTTPStatusCode: res.StatusCode,
 10395  		},
 10396  	}
 10397  	target := &ret
 10398  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10399  		return nil, err
 10400  	}
 10401  	return ret, nil
 10402  }
 10403  
 10404  type AccountsCustomersEntitlementsChangeParametersCall struct {
 10405  	s                                           *Service
 10406  	name                                        string
 10407  	googlecloudchannelv1changeparametersrequest *GoogleCloudChannelV1ChangeParametersRequest
 10408  	urlParams_                                  gensupport.URLParams
 10409  	ctx_                                        context.Context
 10410  	header_                                     http.Header
 10411  }
 10412  
 10413  // ChangeParameters: Change parameters of the entitlement. An entitlement
 10414  // update is a long-running operation and it updates the entitlement as a
 10415  // result of fulfillment. Possible error codes: * PERMISSION_DENIED: The
 10416  // customer doesn't belong to the reseller. * INVALID_ARGUMENT: Required
 10417  // request parameters are missing or invalid. For example, the number of seats
 10418  // being changed is greater than the allowed number of max seats, or decreasing
 10419  // seats for a commitment based plan. * NOT_FOUND: Entitlement resource not
 10420  // found. * INTERNAL: Any non-user error related to a technical issue in the
 10421  // backend. Contact Cloud Channel support. * UNKNOWN: Any non-user error
 10422  // related to a technical issue in the backend. Contact Cloud Channel support.
 10423  // Return value: The ID of a long-running operation. To get the results of the
 10424  // operation, call the GetOperation method of CloudChannelOperationsService.
 10425  // The Operation metadata will contain an instance of OperationMetadata.
 10426  //
 10427  //   - name: The name of the entitlement to update. Name uses the format:
 10428  //     accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}.
 10429  func (r *AccountsCustomersEntitlementsService) ChangeParameters(name string, googlecloudchannelv1changeparametersrequest *GoogleCloudChannelV1ChangeParametersRequest) *AccountsCustomersEntitlementsChangeParametersCall {
 10430  	c := &AccountsCustomersEntitlementsChangeParametersCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10431  	c.name = name
 10432  	c.googlecloudchannelv1changeparametersrequest = googlecloudchannelv1changeparametersrequest
 10433  	return c
 10434  }
 10435  
 10436  // Fields allows partial responses to be retrieved. See
 10437  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10438  // details.
 10439  func (c *AccountsCustomersEntitlementsChangeParametersCall) Fields(s ...googleapi.Field) *AccountsCustomersEntitlementsChangeParametersCall {
 10440  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10441  	return c
 10442  }
 10443  
 10444  // Context sets the context to be used in this call's Do method.
 10445  func (c *AccountsCustomersEntitlementsChangeParametersCall) Context(ctx context.Context) *AccountsCustomersEntitlementsChangeParametersCall {
 10446  	c.ctx_ = ctx
 10447  	return c
 10448  }
 10449  
 10450  // Header returns a http.Header that can be modified by the caller to add
 10451  // headers to the request.
 10452  func (c *AccountsCustomersEntitlementsChangeParametersCall) Header() http.Header {
 10453  	if c.header_ == nil {
 10454  		c.header_ = make(http.Header)
 10455  	}
 10456  	return c.header_
 10457  }
 10458  
 10459  func (c *AccountsCustomersEntitlementsChangeParametersCall) doRequest(alt string) (*http.Response, error) {
 10460  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 10461  	var body io.Reader = nil
 10462  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudchannelv1changeparametersrequest)
 10463  	if err != nil {
 10464  		return nil, err
 10465  	}
 10466  	c.urlParams_.Set("alt", alt)
 10467  	c.urlParams_.Set("prettyPrint", "false")
 10468  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:changeParameters")
 10469  	urls += "?" + c.urlParams_.Encode()
 10470  	req, err := http.NewRequest("POST", urls, body)
 10471  	if err != nil {
 10472  		return nil, err
 10473  	}
 10474  	req.Header = reqHeaders
 10475  	googleapi.Expand(req.URL, map[string]string{
 10476  		"name": c.name,
 10477  	})
 10478  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10479  }
 10480  
 10481  // Do executes the "cloudchannel.accounts.customers.entitlements.changeParameters" call.
 10482  // Any non-2xx status code is an error. Response headers are in either
 10483  // *GoogleLongrunningOperation.ServerResponse.Header or (if a response was
 10484  // returned at all) in error.(*googleapi.Error).Header. Use
 10485  // googleapi.IsNotModified to check whether the returned error was because
 10486  // http.StatusNotModified was returned.
 10487  func (c *AccountsCustomersEntitlementsChangeParametersCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
 10488  	gensupport.SetOptions(c.urlParams_, opts...)
 10489  	res, err := c.doRequest("json")
 10490  	if res != nil && res.StatusCode == http.StatusNotModified {
 10491  		if res.Body != nil {
 10492  			res.Body.Close()
 10493  		}
 10494  		return nil, gensupport.WrapError(&googleapi.Error{
 10495  			Code:   res.StatusCode,
 10496  			Header: res.Header,
 10497  		})
 10498  	}
 10499  	if err != nil {
 10500  		return nil, err
 10501  	}
 10502  	defer googleapi.CloseBody(res)
 10503  	if err := googleapi.CheckResponse(res); err != nil {
 10504  		return nil, gensupport.WrapError(err)
 10505  	}
 10506  	ret := &GoogleLongrunningOperation{
 10507  		ServerResponse: googleapi.ServerResponse{
 10508  			Header:         res.Header,
 10509  			HTTPStatusCode: res.StatusCode,
 10510  		},
 10511  	}
 10512  	target := &ret
 10513  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10514  		return nil, err
 10515  	}
 10516  	return ret, nil
 10517  }
 10518  
 10519  type AccountsCustomersEntitlementsChangeRenewalSettingsCall struct {
 10520  	s                                                *Service
 10521  	name                                             string
 10522  	googlecloudchannelv1changerenewalsettingsrequest *GoogleCloudChannelV1ChangeRenewalSettingsRequest
 10523  	urlParams_                                       gensupport.URLParams
 10524  	ctx_                                             context.Context
 10525  	header_                                          http.Header
 10526  }
 10527  
 10528  // ChangeRenewalSettings: Updates the renewal settings for an existing customer
 10529  // entitlement. An entitlement update is a long-running operation and it
 10530  // updates the entitlement as a result of fulfillment. Possible error codes: *
 10531  // PERMISSION_DENIED: The customer doesn't belong to the reseller. *
 10532  // INVALID_ARGUMENT: Required request parameters are missing or invalid. *
 10533  // NOT_FOUND: Entitlement resource not found. * NOT_COMMITMENT_PLAN: Renewal
 10534  // Settings are only applicable for a commitment plan. Can't enable or disable
 10535  // renewals for non-commitment plans. * INTERNAL: Any non-user error related to
 10536  // a technical issue in the backend. Contact Cloud Channel support. * UNKNOWN:
 10537  // Any non-user error related to a technical issue in the backend. Contact
 10538  // Cloud Channel support. Return value: The ID of a long-running operation. To
 10539  // get the results of the operation, call the GetOperation method of
 10540  // CloudChannelOperationsService. The Operation metadata will contain an
 10541  // instance of OperationMetadata.
 10542  //
 10543  //   - name: The name of the entitlement to update. Name uses the format:
 10544  //     accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}.
 10545  func (r *AccountsCustomersEntitlementsService) ChangeRenewalSettings(name string, googlecloudchannelv1changerenewalsettingsrequest *GoogleCloudChannelV1ChangeRenewalSettingsRequest) *AccountsCustomersEntitlementsChangeRenewalSettingsCall {
 10546  	c := &AccountsCustomersEntitlementsChangeRenewalSettingsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10547  	c.name = name
 10548  	c.googlecloudchannelv1changerenewalsettingsrequest = googlecloudchannelv1changerenewalsettingsrequest
 10549  	return c
 10550  }
 10551  
 10552  // Fields allows partial responses to be retrieved. See
 10553  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10554  // details.
 10555  func (c *AccountsCustomersEntitlementsChangeRenewalSettingsCall) Fields(s ...googleapi.Field) *AccountsCustomersEntitlementsChangeRenewalSettingsCall {
 10556  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10557  	return c
 10558  }
 10559  
 10560  // Context sets the context to be used in this call's Do method.
 10561  func (c *AccountsCustomersEntitlementsChangeRenewalSettingsCall) Context(ctx context.Context) *AccountsCustomersEntitlementsChangeRenewalSettingsCall {
 10562  	c.ctx_ = ctx
 10563  	return c
 10564  }
 10565  
 10566  // Header returns a http.Header that can be modified by the caller to add
 10567  // headers to the request.
 10568  func (c *AccountsCustomersEntitlementsChangeRenewalSettingsCall) Header() http.Header {
 10569  	if c.header_ == nil {
 10570  		c.header_ = make(http.Header)
 10571  	}
 10572  	return c.header_
 10573  }
 10574  
 10575  func (c *AccountsCustomersEntitlementsChangeRenewalSettingsCall) doRequest(alt string) (*http.Response, error) {
 10576  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 10577  	var body io.Reader = nil
 10578  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudchannelv1changerenewalsettingsrequest)
 10579  	if err != nil {
 10580  		return nil, err
 10581  	}
 10582  	c.urlParams_.Set("alt", alt)
 10583  	c.urlParams_.Set("prettyPrint", "false")
 10584  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:changeRenewalSettings")
 10585  	urls += "?" + c.urlParams_.Encode()
 10586  	req, err := http.NewRequest("POST", urls, body)
 10587  	if err != nil {
 10588  		return nil, err
 10589  	}
 10590  	req.Header = reqHeaders
 10591  	googleapi.Expand(req.URL, map[string]string{
 10592  		"name": c.name,
 10593  	})
 10594  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10595  }
 10596  
 10597  // Do executes the "cloudchannel.accounts.customers.entitlements.changeRenewalSettings" call.
 10598  // Any non-2xx status code is an error. Response headers are in either
 10599  // *GoogleLongrunningOperation.ServerResponse.Header or (if a response was
 10600  // returned at all) in error.(*googleapi.Error).Header. Use
 10601  // googleapi.IsNotModified to check whether the returned error was because
 10602  // http.StatusNotModified was returned.
 10603  func (c *AccountsCustomersEntitlementsChangeRenewalSettingsCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
 10604  	gensupport.SetOptions(c.urlParams_, opts...)
 10605  	res, err := c.doRequest("json")
 10606  	if res != nil && res.StatusCode == http.StatusNotModified {
 10607  		if res.Body != nil {
 10608  			res.Body.Close()
 10609  		}
 10610  		return nil, gensupport.WrapError(&googleapi.Error{
 10611  			Code:   res.StatusCode,
 10612  			Header: res.Header,
 10613  		})
 10614  	}
 10615  	if err != nil {
 10616  		return nil, err
 10617  	}
 10618  	defer googleapi.CloseBody(res)
 10619  	if err := googleapi.CheckResponse(res); err != nil {
 10620  		return nil, gensupport.WrapError(err)
 10621  	}
 10622  	ret := &GoogleLongrunningOperation{
 10623  		ServerResponse: googleapi.ServerResponse{
 10624  			Header:         res.Header,
 10625  			HTTPStatusCode: res.StatusCode,
 10626  		},
 10627  	}
 10628  	target := &ret
 10629  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10630  		return nil, err
 10631  	}
 10632  	return ret, nil
 10633  }
 10634  
 10635  type AccountsCustomersEntitlementsCreateCall struct {
 10636  	s                                            *Service
 10637  	parent                                       string
 10638  	googlecloudchannelv1createentitlementrequest *GoogleCloudChannelV1CreateEntitlementRequest
 10639  	urlParams_                                   gensupport.URLParams
 10640  	ctx_                                         context.Context
 10641  	header_                                      http.Header
 10642  }
 10643  
 10644  // Create: Creates an entitlement for a customer. Possible error codes: *
 10645  // PERMISSION_DENIED: * The customer doesn't belong to the reseller. * The
 10646  // reseller is not authorized to transact on this Product. See
 10647  // https://support.google.com/channelservices/answer/9759265 *
 10648  // INVALID_ARGUMENT: * Required request parameters are missing or invalid. *
 10649  // There is already a customer entitlement for a SKU from the same product
 10650  // family. * INVALID_VALUE: Make sure the OfferId is valid. If it is, contact
 10651  // Google Channel support for further troubleshooting. * NOT_FOUND: The
 10652  // customer or offer resource was not found. * ALREADY_EXISTS: * The SKU was
 10653  // already purchased for the customer. * The customer's primary email already
 10654  // exists. Retry after changing the customer's primary contact email. *
 10655  // CONDITION_NOT_MET or FAILED_PRECONDITION: * The domain required for
 10656  // purchasing a SKU has not been verified. * A pre-requisite SKU required to
 10657  // purchase an Add-On SKU is missing. For example, Google Workspace Business
 10658  // Starter is required to purchase Vault or Drive. * (Developer accounts only)
 10659  // Reseller and resold domain must meet the following naming requirements: *
 10660  // Domain names must start with goog-test. * Domain names must include the
 10661  // reseller domain. * INTERNAL: Any non-user error related to a technical issue
 10662  // in the backend. Contact Cloud Channel support. * UNKNOWN: Any non-user error
 10663  // related to a technical issue in the backend. Contact Cloud Channel support.
 10664  // Return value: The ID of a long-running operation. To get the results of the
 10665  // operation, call the GetOperation method of CloudChannelOperationsService.
 10666  // The Operation metadata will contain an instance of OperationMetadata.
 10667  //
 10668  //   - parent: The resource name of the reseller's customer account in which to
 10669  //     create the entitlement. Parent uses the format:
 10670  //     accounts/{account_id}/customers/{customer_id}.
 10671  func (r *AccountsCustomersEntitlementsService) Create(parent string, googlecloudchannelv1createentitlementrequest *GoogleCloudChannelV1CreateEntitlementRequest) *AccountsCustomersEntitlementsCreateCall {
 10672  	c := &AccountsCustomersEntitlementsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10673  	c.parent = parent
 10674  	c.googlecloudchannelv1createentitlementrequest = googlecloudchannelv1createentitlementrequest
 10675  	return c
 10676  }
 10677  
 10678  // Fields allows partial responses to be retrieved. See
 10679  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10680  // details.
 10681  func (c *AccountsCustomersEntitlementsCreateCall) Fields(s ...googleapi.Field) *AccountsCustomersEntitlementsCreateCall {
 10682  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10683  	return c
 10684  }
 10685  
 10686  // Context sets the context to be used in this call's Do method.
 10687  func (c *AccountsCustomersEntitlementsCreateCall) Context(ctx context.Context) *AccountsCustomersEntitlementsCreateCall {
 10688  	c.ctx_ = ctx
 10689  	return c
 10690  }
 10691  
 10692  // Header returns a http.Header that can be modified by the caller to add
 10693  // headers to the request.
 10694  func (c *AccountsCustomersEntitlementsCreateCall) Header() http.Header {
 10695  	if c.header_ == nil {
 10696  		c.header_ = make(http.Header)
 10697  	}
 10698  	return c.header_
 10699  }
 10700  
 10701  func (c *AccountsCustomersEntitlementsCreateCall) doRequest(alt string) (*http.Response, error) {
 10702  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 10703  	var body io.Reader = nil
 10704  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudchannelv1createentitlementrequest)
 10705  	if err != nil {
 10706  		return nil, err
 10707  	}
 10708  	c.urlParams_.Set("alt", alt)
 10709  	c.urlParams_.Set("prettyPrint", "false")
 10710  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/entitlements")
 10711  	urls += "?" + c.urlParams_.Encode()
 10712  	req, err := http.NewRequest("POST", urls, body)
 10713  	if err != nil {
 10714  		return nil, err
 10715  	}
 10716  	req.Header = reqHeaders
 10717  	googleapi.Expand(req.URL, map[string]string{
 10718  		"parent": c.parent,
 10719  	})
 10720  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10721  }
 10722  
 10723  // Do executes the "cloudchannel.accounts.customers.entitlements.create" call.
 10724  // Any non-2xx status code is an error. Response headers are in either
 10725  // *GoogleLongrunningOperation.ServerResponse.Header or (if a response was
 10726  // returned at all) in error.(*googleapi.Error).Header. Use
 10727  // googleapi.IsNotModified to check whether the returned error was because
 10728  // http.StatusNotModified was returned.
 10729  func (c *AccountsCustomersEntitlementsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
 10730  	gensupport.SetOptions(c.urlParams_, opts...)
 10731  	res, err := c.doRequest("json")
 10732  	if res != nil && res.StatusCode == http.StatusNotModified {
 10733  		if res.Body != nil {
 10734  			res.Body.Close()
 10735  		}
 10736  		return nil, gensupport.WrapError(&googleapi.Error{
 10737  			Code:   res.StatusCode,
 10738  			Header: res.Header,
 10739  		})
 10740  	}
 10741  	if err != nil {
 10742  		return nil, err
 10743  	}
 10744  	defer googleapi.CloseBody(res)
 10745  	if err := googleapi.CheckResponse(res); err != nil {
 10746  		return nil, gensupport.WrapError(err)
 10747  	}
 10748  	ret := &GoogleLongrunningOperation{
 10749  		ServerResponse: googleapi.ServerResponse{
 10750  			Header:         res.Header,
 10751  			HTTPStatusCode: res.StatusCode,
 10752  		},
 10753  	}
 10754  	target := &ret
 10755  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10756  		return nil, err
 10757  	}
 10758  	return ret, nil
 10759  }
 10760  
 10761  type AccountsCustomersEntitlementsGetCall struct {
 10762  	s            *Service
 10763  	name         string
 10764  	urlParams_   gensupport.URLParams
 10765  	ifNoneMatch_ string
 10766  	ctx_         context.Context
 10767  	header_      http.Header
 10768  }
 10769  
 10770  // Get: Returns the requested Entitlement resource. Possible error codes: *
 10771  // PERMISSION_DENIED: The customer doesn't belong to the reseller. *
 10772  // INVALID_ARGUMENT: Required request parameters are missing or invalid. *
 10773  // NOT_FOUND: The customer entitlement was not found. Return value: The
 10774  // requested Entitlement resource.
 10775  //
 10776  //   - name: The resource name of the entitlement to retrieve. Name uses the
 10777  //     format:
 10778  //     accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}.
 10779  func (r *AccountsCustomersEntitlementsService) Get(name string) *AccountsCustomersEntitlementsGetCall {
 10780  	c := &AccountsCustomersEntitlementsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10781  	c.name = name
 10782  	return c
 10783  }
 10784  
 10785  // Fields allows partial responses to be retrieved. See
 10786  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10787  // details.
 10788  func (c *AccountsCustomersEntitlementsGetCall) Fields(s ...googleapi.Field) *AccountsCustomersEntitlementsGetCall {
 10789  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10790  	return c
 10791  }
 10792  
 10793  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 10794  // object's ETag matches the given value. This is useful for getting updates
 10795  // only after the object has changed since the last request.
 10796  func (c *AccountsCustomersEntitlementsGetCall) IfNoneMatch(entityTag string) *AccountsCustomersEntitlementsGetCall {
 10797  	c.ifNoneMatch_ = entityTag
 10798  	return c
 10799  }
 10800  
 10801  // Context sets the context to be used in this call's Do method.
 10802  func (c *AccountsCustomersEntitlementsGetCall) Context(ctx context.Context) *AccountsCustomersEntitlementsGetCall {
 10803  	c.ctx_ = ctx
 10804  	return c
 10805  }
 10806  
 10807  // Header returns a http.Header that can be modified by the caller to add
 10808  // headers to the request.
 10809  func (c *AccountsCustomersEntitlementsGetCall) Header() http.Header {
 10810  	if c.header_ == nil {
 10811  		c.header_ = make(http.Header)
 10812  	}
 10813  	return c.header_
 10814  }
 10815  
 10816  func (c *AccountsCustomersEntitlementsGetCall) doRequest(alt string) (*http.Response, error) {
 10817  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 10818  	if c.ifNoneMatch_ != "" {
 10819  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 10820  	}
 10821  	var body io.Reader = nil
 10822  	c.urlParams_.Set("alt", alt)
 10823  	c.urlParams_.Set("prettyPrint", "false")
 10824  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 10825  	urls += "?" + c.urlParams_.Encode()
 10826  	req, err := http.NewRequest("GET", urls, body)
 10827  	if err != nil {
 10828  		return nil, err
 10829  	}
 10830  	req.Header = reqHeaders
 10831  	googleapi.Expand(req.URL, map[string]string{
 10832  		"name": c.name,
 10833  	})
 10834  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10835  }
 10836  
 10837  // Do executes the "cloudchannel.accounts.customers.entitlements.get" call.
 10838  // Any non-2xx status code is an error. Response headers are in either
 10839  // *GoogleCloudChannelV1Entitlement.ServerResponse.Header or (if a response was
 10840  // returned at all) in error.(*googleapi.Error).Header. Use
 10841  // googleapi.IsNotModified to check whether the returned error was because
 10842  // http.StatusNotModified was returned.
 10843  func (c *AccountsCustomersEntitlementsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1Entitlement, error) {
 10844  	gensupport.SetOptions(c.urlParams_, opts...)
 10845  	res, err := c.doRequest("json")
 10846  	if res != nil && res.StatusCode == http.StatusNotModified {
 10847  		if res.Body != nil {
 10848  			res.Body.Close()
 10849  		}
 10850  		return nil, gensupport.WrapError(&googleapi.Error{
 10851  			Code:   res.StatusCode,
 10852  			Header: res.Header,
 10853  		})
 10854  	}
 10855  	if err != nil {
 10856  		return nil, err
 10857  	}
 10858  	defer googleapi.CloseBody(res)
 10859  	if err := googleapi.CheckResponse(res); err != nil {
 10860  		return nil, gensupport.WrapError(err)
 10861  	}
 10862  	ret := &GoogleCloudChannelV1Entitlement{
 10863  		ServerResponse: googleapi.ServerResponse{
 10864  			Header:         res.Header,
 10865  			HTTPStatusCode: res.StatusCode,
 10866  		},
 10867  	}
 10868  	target := &ret
 10869  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10870  		return nil, err
 10871  	}
 10872  	return ret, nil
 10873  }
 10874  
 10875  type AccountsCustomersEntitlementsListCall struct {
 10876  	s            *Service
 10877  	parent       string
 10878  	urlParams_   gensupport.URLParams
 10879  	ifNoneMatch_ string
 10880  	ctx_         context.Context
 10881  	header_      http.Header
 10882  }
 10883  
 10884  // List: Lists Entitlements belonging to a customer. Possible error codes: *
 10885  // PERMISSION_DENIED: The customer doesn't belong to the reseller. *
 10886  // INVALID_ARGUMENT: Required request parameters are missing or invalid. Return
 10887  // value: A list of the customer's Entitlements.
 10888  //
 10889  //   - parent: The resource name of the reseller's customer account to list
 10890  //     entitlements for. Parent uses the format:
 10891  //     accounts/{account_id}/customers/{customer_id}.
 10892  func (r *AccountsCustomersEntitlementsService) List(parent string) *AccountsCustomersEntitlementsListCall {
 10893  	c := &AccountsCustomersEntitlementsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10894  	c.parent = parent
 10895  	return c
 10896  }
 10897  
 10898  // PageSize sets the optional parameter "pageSize": Requested page size. Server
 10899  // might return fewer results than requested. If unspecified, return at most 50
 10900  // entitlements. The maximum value is 100; the server will coerce values above
 10901  // 100.
 10902  func (c *AccountsCustomersEntitlementsListCall) PageSize(pageSize int64) *AccountsCustomersEntitlementsListCall {
 10903  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 10904  	return c
 10905  }
 10906  
 10907  // PageToken sets the optional parameter "pageToken": A token for a page of
 10908  // results other than the first page. Obtained using
 10909  // ListEntitlementsResponse.next_page_token of the previous
 10910  // CloudChannelService.ListEntitlements call.
 10911  func (c *AccountsCustomersEntitlementsListCall) PageToken(pageToken string) *AccountsCustomersEntitlementsListCall {
 10912  	c.urlParams_.Set("pageToken", pageToken)
 10913  	return c
 10914  }
 10915  
 10916  // Fields allows partial responses to be retrieved. See
 10917  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10918  // details.
 10919  func (c *AccountsCustomersEntitlementsListCall) Fields(s ...googleapi.Field) *AccountsCustomersEntitlementsListCall {
 10920  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10921  	return c
 10922  }
 10923  
 10924  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 10925  // object's ETag matches the given value. This is useful for getting updates
 10926  // only after the object has changed since the last request.
 10927  func (c *AccountsCustomersEntitlementsListCall) IfNoneMatch(entityTag string) *AccountsCustomersEntitlementsListCall {
 10928  	c.ifNoneMatch_ = entityTag
 10929  	return c
 10930  }
 10931  
 10932  // Context sets the context to be used in this call's Do method.
 10933  func (c *AccountsCustomersEntitlementsListCall) Context(ctx context.Context) *AccountsCustomersEntitlementsListCall {
 10934  	c.ctx_ = ctx
 10935  	return c
 10936  }
 10937  
 10938  // Header returns a http.Header that can be modified by the caller to add
 10939  // headers to the request.
 10940  func (c *AccountsCustomersEntitlementsListCall) Header() http.Header {
 10941  	if c.header_ == nil {
 10942  		c.header_ = make(http.Header)
 10943  	}
 10944  	return c.header_
 10945  }
 10946  
 10947  func (c *AccountsCustomersEntitlementsListCall) doRequest(alt string) (*http.Response, error) {
 10948  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 10949  	if c.ifNoneMatch_ != "" {
 10950  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 10951  	}
 10952  	var body io.Reader = nil
 10953  	c.urlParams_.Set("alt", alt)
 10954  	c.urlParams_.Set("prettyPrint", "false")
 10955  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/entitlements")
 10956  	urls += "?" + c.urlParams_.Encode()
 10957  	req, err := http.NewRequest("GET", urls, body)
 10958  	if err != nil {
 10959  		return nil, err
 10960  	}
 10961  	req.Header = reqHeaders
 10962  	googleapi.Expand(req.URL, map[string]string{
 10963  		"parent": c.parent,
 10964  	})
 10965  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10966  }
 10967  
 10968  // Do executes the "cloudchannel.accounts.customers.entitlements.list" call.
 10969  // Any non-2xx status code is an error. Response headers are in either
 10970  // *GoogleCloudChannelV1ListEntitlementsResponse.ServerResponse.Header or (if a
 10971  // response was returned at all) in error.(*googleapi.Error).Header. Use
 10972  // googleapi.IsNotModified to check whether the returned error was because
 10973  // http.StatusNotModified was returned.
 10974  func (c *AccountsCustomersEntitlementsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1ListEntitlementsResponse, error) {
 10975  	gensupport.SetOptions(c.urlParams_, opts...)
 10976  	res, err := c.doRequest("json")
 10977  	if res != nil && res.StatusCode == http.StatusNotModified {
 10978  		if res.Body != nil {
 10979  			res.Body.Close()
 10980  		}
 10981  		return nil, gensupport.WrapError(&googleapi.Error{
 10982  			Code:   res.StatusCode,
 10983  			Header: res.Header,
 10984  		})
 10985  	}
 10986  	if err != nil {
 10987  		return nil, err
 10988  	}
 10989  	defer googleapi.CloseBody(res)
 10990  	if err := googleapi.CheckResponse(res); err != nil {
 10991  		return nil, gensupport.WrapError(err)
 10992  	}
 10993  	ret := &GoogleCloudChannelV1ListEntitlementsResponse{
 10994  		ServerResponse: googleapi.ServerResponse{
 10995  			Header:         res.Header,
 10996  			HTTPStatusCode: res.StatusCode,
 10997  		},
 10998  	}
 10999  	target := &ret
 11000  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11001  		return nil, err
 11002  	}
 11003  	return ret, nil
 11004  }
 11005  
 11006  // Pages invokes f for each page of results.
 11007  // A non-nil error returned from f will halt the iteration.
 11008  // The provided context supersedes any context provided to the Context method.
 11009  func (c *AccountsCustomersEntitlementsListCall) Pages(ctx context.Context, f func(*GoogleCloudChannelV1ListEntitlementsResponse) error) error {
 11010  	c.ctx_ = ctx
 11011  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 11012  	for {
 11013  		x, err := c.Do()
 11014  		if err != nil {
 11015  			return err
 11016  		}
 11017  		if err := f(x); err != nil {
 11018  			return err
 11019  		}
 11020  		if x.NextPageToken == "" {
 11021  			return nil
 11022  		}
 11023  		c.PageToken(x.NextPageToken)
 11024  	}
 11025  }
 11026  
 11027  type AccountsCustomersEntitlementsListEntitlementChangesCall struct {
 11028  	s            *Service
 11029  	parent       string
 11030  	urlParams_   gensupport.URLParams
 11031  	ifNoneMatch_ string
 11032  	ctx_         context.Context
 11033  	header_      http.Header
 11034  }
 11035  
 11036  // ListEntitlementChanges: List entitlement history. Possible error codes: *
 11037  // PERMISSION_DENIED: The reseller account making the request and the provided
 11038  // reseller account are different. * INVALID_ARGUMENT: Missing or invalid
 11039  // required fields in the request. * NOT_FOUND: The parent resource doesn't
 11040  // exist. Usually the result of an invalid name parameter. * INTERNAL: Any
 11041  // non-user error related to a technical issue in the backend. In this case,
 11042  // contact CloudChannel support. * UNKNOWN: Any non-user error related to a
 11043  // technical issue in the backend. In this case, contact Cloud Channel support.
 11044  // Return value: List of EntitlementChanges.
 11045  //
 11046  //   - parent: The resource name of the entitlement for which to list entitlement
 11047  //     changes. The `-` wildcard may be used to match entitlements across a
 11048  //     customer. Formats: *
 11049  //     accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}
 11050  //   - accounts/{account_id}/customers/{customer_id}/entitlements/-.
 11051  func (r *AccountsCustomersEntitlementsService) ListEntitlementChanges(parent string) *AccountsCustomersEntitlementsListEntitlementChangesCall {
 11052  	c := &AccountsCustomersEntitlementsListEntitlementChangesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11053  	c.parent = parent
 11054  	return c
 11055  }
 11056  
 11057  // Filter sets the optional parameter "filter": Filters applied to the list
 11058  // results.
 11059  func (c *AccountsCustomersEntitlementsListEntitlementChangesCall) Filter(filter string) *AccountsCustomersEntitlementsListEntitlementChangesCall {
 11060  	c.urlParams_.Set("filter", filter)
 11061  	return c
 11062  }
 11063  
 11064  // PageSize sets the optional parameter "pageSize": The maximum number of
 11065  // entitlement changes to return. The service may return fewer than this value.
 11066  // If unspecified, returns at most 10 entitlement changes. The maximum value is
 11067  // 50; the server will coerce values above 50.
 11068  func (c *AccountsCustomersEntitlementsListEntitlementChangesCall) PageSize(pageSize int64) *AccountsCustomersEntitlementsListEntitlementChangesCall {
 11069  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 11070  	return c
 11071  }
 11072  
 11073  // PageToken sets the optional parameter "pageToken": A page token, received
 11074  // from a previous CloudChannelService.ListEntitlementChanges call. Provide
 11075  // this to retrieve the subsequent page. When paginating, all other parameters
 11076  // provided to CloudChannelService.ListEntitlementChanges must match the call
 11077  // that provided the page token.
 11078  func (c *AccountsCustomersEntitlementsListEntitlementChangesCall) PageToken(pageToken string) *AccountsCustomersEntitlementsListEntitlementChangesCall {
 11079  	c.urlParams_.Set("pageToken", pageToken)
 11080  	return c
 11081  }
 11082  
 11083  // Fields allows partial responses to be retrieved. See
 11084  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11085  // details.
 11086  func (c *AccountsCustomersEntitlementsListEntitlementChangesCall) Fields(s ...googleapi.Field) *AccountsCustomersEntitlementsListEntitlementChangesCall {
 11087  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11088  	return c
 11089  }
 11090  
 11091  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 11092  // object's ETag matches the given value. This is useful for getting updates
 11093  // only after the object has changed since the last request.
 11094  func (c *AccountsCustomersEntitlementsListEntitlementChangesCall) IfNoneMatch(entityTag string) *AccountsCustomersEntitlementsListEntitlementChangesCall {
 11095  	c.ifNoneMatch_ = entityTag
 11096  	return c
 11097  }
 11098  
 11099  // Context sets the context to be used in this call's Do method.
 11100  func (c *AccountsCustomersEntitlementsListEntitlementChangesCall) Context(ctx context.Context) *AccountsCustomersEntitlementsListEntitlementChangesCall {
 11101  	c.ctx_ = ctx
 11102  	return c
 11103  }
 11104  
 11105  // Header returns a http.Header that can be modified by the caller to add
 11106  // headers to the request.
 11107  func (c *AccountsCustomersEntitlementsListEntitlementChangesCall) Header() http.Header {
 11108  	if c.header_ == nil {
 11109  		c.header_ = make(http.Header)
 11110  	}
 11111  	return c.header_
 11112  }
 11113  
 11114  func (c *AccountsCustomersEntitlementsListEntitlementChangesCall) doRequest(alt string) (*http.Response, error) {
 11115  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 11116  	if c.ifNoneMatch_ != "" {
 11117  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 11118  	}
 11119  	var body io.Reader = nil
 11120  	c.urlParams_.Set("alt", alt)
 11121  	c.urlParams_.Set("prettyPrint", "false")
 11122  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}:listEntitlementChanges")
 11123  	urls += "?" + c.urlParams_.Encode()
 11124  	req, err := http.NewRequest("GET", urls, body)
 11125  	if err != nil {
 11126  		return nil, err
 11127  	}
 11128  	req.Header = reqHeaders
 11129  	googleapi.Expand(req.URL, map[string]string{
 11130  		"parent": c.parent,
 11131  	})
 11132  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11133  }
 11134  
 11135  // Do executes the "cloudchannel.accounts.customers.entitlements.listEntitlementChanges" call.
 11136  // Any non-2xx status code is an error. Response headers are in either
 11137  // *GoogleCloudChannelV1ListEntitlementChangesResponse.ServerResponse.Header or
 11138  // (if a response was returned at all) in error.(*googleapi.Error).Header. Use
 11139  // googleapi.IsNotModified to check whether the returned error was because
 11140  // http.StatusNotModified was returned.
 11141  func (c *AccountsCustomersEntitlementsListEntitlementChangesCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1ListEntitlementChangesResponse, error) {
 11142  	gensupport.SetOptions(c.urlParams_, opts...)
 11143  	res, err := c.doRequest("json")
 11144  	if res != nil && res.StatusCode == http.StatusNotModified {
 11145  		if res.Body != nil {
 11146  			res.Body.Close()
 11147  		}
 11148  		return nil, gensupport.WrapError(&googleapi.Error{
 11149  			Code:   res.StatusCode,
 11150  			Header: res.Header,
 11151  		})
 11152  	}
 11153  	if err != nil {
 11154  		return nil, err
 11155  	}
 11156  	defer googleapi.CloseBody(res)
 11157  	if err := googleapi.CheckResponse(res); err != nil {
 11158  		return nil, gensupport.WrapError(err)
 11159  	}
 11160  	ret := &GoogleCloudChannelV1ListEntitlementChangesResponse{
 11161  		ServerResponse: googleapi.ServerResponse{
 11162  			Header:         res.Header,
 11163  			HTTPStatusCode: res.StatusCode,
 11164  		},
 11165  	}
 11166  	target := &ret
 11167  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11168  		return nil, err
 11169  	}
 11170  	return ret, nil
 11171  }
 11172  
 11173  // Pages invokes f for each page of results.
 11174  // A non-nil error returned from f will halt the iteration.
 11175  // The provided context supersedes any context provided to the Context method.
 11176  func (c *AccountsCustomersEntitlementsListEntitlementChangesCall) Pages(ctx context.Context, f func(*GoogleCloudChannelV1ListEntitlementChangesResponse) error) error {
 11177  	c.ctx_ = ctx
 11178  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 11179  	for {
 11180  		x, err := c.Do()
 11181  		if err != nil {
 11182  			return err
 11183  		}
 11184  		if err := f(x); err != nil {
 11185  			return err
 11186  		}
 11187  		if x.NextPageToken == "" {
 11188  			return nil
 11189  		}
 11190  		c.PageToken(x.NextPageToken)
 11191  	}
 11192  }
 11193  
 11194  type AccountsCustomersEntitlementsLookupOfferCall struct {
 11195  	s            *Service
 11196  	entitlement  string
 11197  	urlParams_   gensupport.URLParams
 11198  	ifNoneMatch_ string
 11199  	ctx_         context.Context
 11200  	header_      http.Header
 11201  }
 11202  
 11203  // LookupOffer: Returns the requested Offer resource. Possible error codes: *
 11204  // PERMISSION_DENIED: The entitlement doesn't belong to the reseller. *
 11205  // INVALID_ARGUMENT: Required request parameters are missing or invalid. *
 11206  // NOT_FOUND: Entitlement or offer was not found. Return value: The Offer
 11207  // resource.
 11208  //
 11209  //   - entitlement: The resource name of the entitlement to retrieve the Offer.
 11210  //     Entitlement uses the format:
 11211  //     accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}.
 11212  func (r *AccountsCustomersEntitlementsService) LookupOffer(entitlement string) *AccountsCustomersEntitlementsLookupOfferCall {
 11213  	c := &AccountsCustomersEntitlementsLookupOfferCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11214  	c.entitlement = entitlement
 11215  	return c
 11216  }
 11217  
 11218  // Fields allows partial responses to be retrieved. See
 11219  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11220  // details.
 11221  func (c *AccountsCustomersEntitlementsLookupOfferCall) Fields(s ...googleapi.Field) *AccountsCustomersEntitlementsLookupOfferCall {
 11222  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11223  	return c
 11224  }
 11225  
 11226  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 11227  // object's ETag matches the given value. This is useful for getting updates
 11228  // only after the object has changed since the last request.
 11229  func (c *AccountsCustomersEntitlementsLookupOfferCall) IfNoneMatch(entityTag string) *AccountsCustomersEntitlementsLookupOfferCall {
 11230  	c.ifNoneMatch_ = entityTag
 11231  	return c
 11232  }
 11233  
 11234  // Context sets the context to be used in this call's Do method.
 11235  func (c *AccountsCustomersEntitlementsLookupOfferCall) Context(ctx context.Context) *AccountsCustomersEntitlementsLookupOfferCall {
 11236  	c.ctx_ = ctx
 11237  	return c
 11238  }
 11239  
 11240  // Header returns a http.Header that can be modified by the caller to add
 11241  // headers to the request.
 11242  func (c *AccountsCustomersEntitlementsLookupOfferCall) Header() http.Header {
 11243  	if c.header_ == nil {
 11244  		c.header_ = make(http.Header)
 11245  	}
 11246  	return c.header_
 11247  }
 11248  
 11249  func (c *AccountsCustomersEntitlementsLookupOfferCall) doRequest(alt string) (*http.Response, error) {
 11250  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 11251  	if c.ifNoneMatch_ != "" {
 11252  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 11253  	}
 11254  	var body io.Reader = nil
 11255  	c.urlParams_.Set("alt", alt)
 11256  	c.urlParams_.Set("prettyPrint", "false")
 11257  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+entitlement}:lookupOffer")
 11258  	urls += "?" + c.urlParams_.Encode()
 11259  	req, err := http.NewRequest("GET", urls, body)
 11260  	if err != nil {
 11261  		return nil, err
 11262  	}
 11263  	req.Header = reqHeaders
 11264  	googleapi.Expand(req.URL, map[string]string{
 11265  		"entitlement": c.entitlement,
 11266  	})
 11267  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11268  }
 11269  
 11270  // Do executes the "cloudchannel.accounts.customers.entitlements.lookupOffer" call.
 11271  // Any non-2xx status code is an error. Response headers are in either
 11272  // *GoogleCloudChannelV1Offer.ServerResponse.Header or (if a response was
 11273  // returned at all) in error.(*googleapi.Error).Header. Use
 11274  // googleapi.IsNotModified to check whether the returned error was because
 11275  // http.StatusNotModified was returned.
 11276  func (c *AccountsCustomersEntitlementsLookupOfferCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1Offer, error) {
 11277  	gensupport.SetOptions(c.urlParams_, opts...)
 11278  	res, err := c.doRequest("json")
 11279  	if res != nil && res.StatusCode == http.StatusNotModified {
 11280  		if res.Body != nil {
 11281  			res.Body.Close()
 11282  		}
 11283  		return nil, gensupport.WrapError(&googleapi.Error{
 11284  			Code:   res.StatusCode,
 11285  			Header: res.Header,
 11286  		})
 11287  	}
 11288  	if err != nil {
 11289  		return nil, err
 11290  	}
 11291  	defer googleapi.CloseBody(res)
 11292  	if err := googleapi.CheckResponse(res); err != nil {
 11293  		return nil, gensupport.WrapError(err)
 11294  	}
 11295  	ret := &GoogleCloudChannelV1Offer{
 11296  		ServerResponse: googleapi.ServerResponse{
 11297  			Header:         res.Header,
 11298  			HTTPStatusCode: res.StatusCode,
 11299  		},
 11300  	}
 11301  	target := &ret
 11302  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11303  		return nil, err
 11304  	}
 11305  	return ret, nil
 11306  }
 11307  
 11308  type AccountsCustomersEntitlementsStartPaidServiceCall struct {
 11309  	s                                           *Service
 11310  	name                                        string
 11311  	googlecloudchannelv1startpaidservicerequest *GoogleCloudChannelV1StartPaidServiceRequest
 11312  	urlParams_                                  gensupport.URLParams
 11313  	ctx_                                        context.Context
 11314  	header_                                     http.Header
 11315  }
 11316  
 11317  // StartPaidService: Starts paid service for a trial entitlement. Starts paid
 11318  // service for a trial entitlement immediately. This method is only applicable
 11319  // if a plan is set up for a trial entitlement but has some trial days
 11320  // remaining. Possible error codes: * PERMISSION_DENIED: The customer doesn't
 11321  // belong to the reseller. * INVALID_ARGUMENT: Required request parameters are
 11322  // missing or invalid. * NOT_FOUND: Entitlement resource not found. *
 11323  // FAILED_PRECONDITION/NOT_IN_TRIAL: This method only works for entitlement on
 11324  // trial plans. * INTERNAL: Any non-user error related to a technical issue in
 11325  // the backend. Contact Cloud Channel support. * UNKNOWN: Any non-user error
 11326  // related to a technical issue in the backend. Contact Cloud Channel support.
 11327  // Return value: The ID of a long-running operation. To get the results of the
 11328  // operation, call the GetOperation method of CloudChannelOperationsService.
 11329  // The Operation metadata will contain an instance of OperationMetadata.
 11330  //
 11331  //   - name: The name of the entitlement to start a paid service for. Name uses
 11332  //     the format:
 11333  //     accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}.
 11334  func (r *AccountsCustomersEntitlementsService) StartPaidService(name string, googlecloudchannelv1startpaidservicerequest *GoogleCloudChannelV1StartPaidServiceRequest) *AccountsCustomersEntitlementsStartPaidServiceCall {
 11335  	c := &AccountsCustomersEntitlementsStartPaidServiceCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11336  	c.name = name
 11337  	c.googlecloudchannelv1startpaidservicerequest = googlecloudchannelv1startpaidservicerequest
 11338  	return c
 11339  }
 11340  
 11341  // Fields allows partial responses to be retrieved. See
 11342  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11343  // details.
 11344  func (c *AccountsCustomersEntitlementsStartPaidServiceCall) Fields(s ...googleapi.Field) *AccountsCustomersEntitlementsStartPaidServiceCall {
 11345  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11346  	return c
 11347  }
 11348  
 11349  // Context sets the context to be used in this call's Do method.
 11350  func (c *AccountsCustomersEntitlementsStartPaidServiceCall) Context(ctx context.Context) *AccountsCustomersEntitlementsStartPaidServiceCall {
 11351  	c.ctx_ = ctx
 11352  	return c
 11353  }
 11354  
 11355  // Header returns a http.Header that can be modified by the caller to add
 11356  // headers to the request.
 11357  func (c *AccountsCustomersEntitlementsStartPaidServiceCall) Header() http.Header {
 11358  	if c.header_ == nil {
 11359  		c.header_ = make(http.Header)
 11360  	}
 11361  	return c.header_
 11362  }
 11363  
 11364  func (c *AccountsCustomersEntitlementsStartPaidServiceCall) doRequest(alt string) (*http.Response, error) {
 11365  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 11366  	var body io.Reader = nil
 11367  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudchannelv1startpaidservicerequest)
 11368  	if err != nil {
 11369  		return nil, err
 11370  	}
 11371  	c.urlParams_.Set("alt", alt)
 11372  	c.urlParams_.Set("prettyPrint", "false")
 11373  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:startPaidService")
 11374  	urls += "?" + c.urlParams_.Encode()
 11375  	req, err := http.NewRequest("POST", urls, body)
 11376  	if err != nil {
 11377  		return nil, err
 11378  	}
 11379  	req.Header = reqHeaders
 11380  	googleapi.Expand(req.URL, map[string]string{
 11381  		"name": c.name,
 11382  	})
 11383  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11384  }
 11385  
 11386  // Do executes the "cloudchannel.accounts.customers.entitlements.startPaidService" call.
 11387  // Any non-2xx status code is an error. Response headers are in either
 11388  // *GoogleLongrunningOperation.ServerResponse.Header or (if a response was
 11389  // returned at all) in error.(*googleapi.Error).Header. Use
 11390  // googleapi.IsNotModified to check whether the returned error was because
 11391  // http.StatusNotModified was returned.
 11392  func (c *AccountsCustomersEntitlementsStartPaidServiceCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
 11393  	gensupport.SetOptions(c.urlParams_, opts...)
 11394  	res, err := c.doRequest("json")
 11395  	if res != nil && res.StatusCode == http.StatusNotModified {
 11396  		if res.Body != nil {
 11397  			res.Body.Close()
 11398  		}
 11399  		return nil, gensupport.WrapError(&googleapi.Error{
 11400  			Code:   res.StatusCode,
 11401  			Header: res.Header,
 11402  		})
 11403  	}
 11404  	if err != nil {
 11405  		return nil, err
 11406  	}
 11407  	defer googleapi.CloseBody(res)
 11408  	if err := googleapi.CheckResponse(res); err != nil {
 11409  		return nil, gensupport.WrapError(err)
 11410  	}
 11411  	ret := &GoogleLongrunningOperation{
 11412  		ServerResponse: googleapi.ServerResponse{
 11413  			Header:         res.Header,
 11414  			HTTPStatusCode: res.StatusCode,
 11415  		},
 11416  	}
 11417  	target := &ret
 11418  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11419  		return nil, err
 11420  	}
 11421  	return ret, nil
 11422  }
 11423  
 11424  type AccountsCustomersEntitlementsSuspendCall struct {
 11425  	s                                             *Service
 11426  	name                                          string
 11427  	googlecloudchannelv1suspendentitlementrequest *GoogleCloudChannelV1SuspendEntitlementRequest
 11428  	urlParams_                                    gensupport.URLParams
 11429  	ctx_                                          context.Context
 11430  	header_                                       http.Header
 11431  }
 11432  
 11433  // Suspend: Suspends a previously fulfilled entitlement. An entitlement
 11434  // suspension is a long-running operation. Possible error codes: *
 11435  // PERMISSION_DENIED: The customer doesn't belong to the reseller. *
 11436  // INVALID_ARGUMENT: Required request parameters are missing or invalid. *
 11437  // NOT_FOUND: Entitlement resource not found. * NOT_ACTIVE: Entitlement is not
 11438  // active. * INTERNAL: Any non-user error related to a technical issue in the
 11439  // backend. Contact Cloud Channel support. * UNKNOWN: Any non-user error
 11440  // related to a technical issue in the backend. Contact Cloud Channel support.
 11441  // Return value: The ID of a long-running operation. To get the results of the
 11442  // operation, call the GetOperation method of CloudChannelOperationsService.
 11443  // The Operation metadata will contain an instance of OperationMetadata.
 11444  //
 11445  //   - name: The resource name of the entitlement to suspend. Name uses the
 11446  //     format:
 11447  //     accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}.
 11448  func (r *AccountsCustomersEntitlementsService) Suspend(name string, googlecloudchannelv1suspendentitlementrequest *GoogleCloudChannelV1SuspendEntitlementRequest) *AccountsCustomersEntitlementsSuspendCall {
 11449  	c := &AccountsCustomersEntitlementsSuspendCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11450  	c.name = name
 11451  	c.googlecloudchannelv1suspendentitlementrequest = googlecloudchannelv1suspendentitlementrequest
 11452  	return c
 11453  }
 11454  
 11455  // Fields allows partial responses to be retrieved. See
 11456  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11457  // details.
 11458  func (c *AccountsCustomersEntitlementsSuspendCall) Fields(s ...googleapi.Field) *AccountsCustomersEntitlementsSuspendCall {
 11459  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11460  	return c
 11461  }
 11462  
 11463  // Context sets the context to be used in this call's Do method.
 11464  func (c *AccountsCustomersEntitlementsSuspendCall) Context(ctx context.Context) *AccountsCustomersEntitlementsSuspendCall {
 11465  	c.ctx_ = ctx
 11466  	return c
 11467  }
 11468  
 11469  // Header returns a http.Header that can be modified by the caller to add
 11470  // headers to the request.
 11471  func (c *AccountsCustomersEntitlementsSuspendCall) Header() http.Header {
 11472  	if c.header_ == nil {
 11473  		c.header_ = make(http.Header)
 11474  	}
 11475  	return c.header_
 11476  }
 11477  
 11478  func (c *AccountsCustomersEntitlementsSuspendCall) doRequest(alt string) (*http.Response, error) {
 11479  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 11480  	var body io.Reader = nil
 11481  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudchannelv1suspendentitlementrequest)
 11482  	if err != nil {
 11483  		return nil, err
 11484  	}
 11485  	c.urlParams_.Set("alt", alt)
 11486  	c.urlParams_.Set("prettyPrint", "false")
 11487  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:suspend")
 11488  	urls += "?" + c.urlParams_.Encode()
 11489  	req, err := http.NewRequest("POST", urls, body)
 11490  	if err != nil {
 11491  		return nil, err
 11492  	}
 11493  	req.Header = reqHeaders
 11494  	googleapi.Expand(req.URL, map[string]string{
 11495  		"name": c.name,
 11496  	})
 11497  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11498  }
 11499  
 11500  // Do executes the "cloudchannel.accounts.customers.entitlements.suspend" call.
 11501  // Any non-2xx status code is an error. Response headers are in either
 11502  // *GoogleLongrunningOperation.ServerResponse.Header or (if a response was
 11503  // returned at all) in error.(*googleapi.Error).Header. Use
 11504  // googleapi.IsNotModified to check whether the returned error was because
 11505  // http.StatusNotModified was returned.
 11506  func (c *AccountsCustomersEntitlementsSuspendCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
 11507  	gensupport.SetOptions(c.urlParams_, opts...)
 11508  	res, err := c.doRequest("json")
 11509  	if res != nil && res.StatusCode == http.StatusNotModified {
 11510  		if res.Body != nil {
 11511  			res.Body.Close()
 11512  		}
 11513  		return nil, gensupport.WrapError(&googleapi.Error{
 11514  			Code:   res.StatusCode,
 11515  			Header: res.Header,
 11516  		})
 11517  	}
 11518  	if err != nil {
 11519  		return nil, err
 11520  	}
 11521  	defer googleapi.CloseBody(res)
 11522  	if err := googleapi.CheckResponse(res); err != nil {
 11523  		return nil, gensupport.WrapError(err)
 11524  	}
 11525  	ret := &GoogleLongrunningOperation{
 11526  		ServerResponse: googleapi.ServerResponse{
 11527  			Header:         res.Header,
 11528  			HTTPStatusCode: res.StatusCode,
 11529  		},
 11530  	}
 11531  	target := &ret
 11532  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11533  		return nil, err
 11534  	}
 11535  	return ret, nil
 11536  }
 11537  
 11538  type AccountsOffersListCall struct {
 11539  	s            *Service
 11540  	parent       string
 11541  	urlParams_   gensupport.URLParams
 11542  	ifNoneMatch_ string
 11543  	ctx_         context.Context
 11544  	header_      http.Header
 11545  }
 11546  
 11547  // List: Lists the Offers the reseller can sell. Possible error codes: *
 11548  // INVALID_ARGUMENT: Required request parameters are missing or invalid.
 11549  //
 11550  //   - parent: The resource name of the reseller account from which to list
 11551  //     Offers. Parent uses the format: accounts/{account_id}.
 11552  func (r *AccountsOffersService) List(parent string) *AccountsOffersListCall {
 11553  	c := &AccountsOffersListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11554  	c.parent = parent
 11555  	return c
 11556  }
 11557  
 11558  // Filter sets the optional parameter "filter": The expression to filter
 11559  // results by name (name of the Offer), sku.name (name of the SKU), or
 11560  // sku.product.name (name of the Product). Example 1:
 11561  // sku.product.name=products/p1 AND sku.name!=products/p1/skus/s1 Example 2:
 11562  // name=accounts/a1/offers/o1
 11563  func (c *AccountsOffersListCall) Filter(filter string) *AccountsOffersListCall {
 11564  	c.urlParams_.Set("filter", filter)
 11565  	return c
 11566  }
 11567  
 11568  // LanguageCode sets the optional parameter "languageCode": The BCP-47 language
 11569  // code. For example, "en-US". The response will localize in the corresponding
 11570  // language code, if specified. The default value is "en-US".
 11571  func (c *AccountsOffersListCall) LanguageCode(languageCode string) *AccountsOffersListCall {
 11572  	c.urlParams_.Set("languageCode", languageCode)
 11573  	return c
 11574  }
 11575  
 11576  // PageSize sets the optional parameter "pageSize": Requested page size. Server
 11577  // might return fewer results than requested. If unspecified, returns at most
 11578  // 500 Offers. The maximum value is 1000; the server will coerce values above
 11579  // 1000.
 11580  func (c *AccountsOffersListCall) PageSize(pageSize int64) *AccountsOffersListCall {
 11581  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 11582  	return c
 11583  }
 11584  
 11585  // PageToken sets the optional parameter "pageToken": A token for a page of
 11586  // results other than the first page.
 11587  func (c *AccountsOffersListCall) PageToken(pageToken string) *AccountsOffersListCall {
 11588  	c.urlParams_.Set("pageToken", pageToken)
 11589  	return c
 11590  }
 11591  
 11592  // ShowFutureOffers sets the optional parameter "showFutureOffers": A boolean
 11593  // flag that determines if a response returns future offers 30 days from now.
 11594  // If the show_future_offers is true, the response will only contain offers
 11595  // that are scheduled to be available 30 days from now.
 11596  func (c *AccountsOffersListCall) ShowFutureOffers(showFutureOffers bool) *AccountsOffersListCall {
 11597  	c.urlParams_.Set("showFutureOffers", fmt.Sprint(showFutureOffers))
 11598  	return c
 11599  }
 11600  
 11601  // Fields allows partial responses to be retrieved. See
 11602  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11603  // details.
 11604  func (c *AccountsOffersListCall) Fields(s ...googleapi.Field) *AccountsOffersListCall {
 11605  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11606  	return c
 11607  }
 11608  
 11609  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 11610  // object's ETag matches the given value. This is useful for getting updates
 11611  // only after the object has changed since the last request.
 11612  func (c *AccountsOffersListCall) IfNoneMatch(entityTag string) *AccountsOffersListCall {
 11613  	c.ifNoneMatch_ = entityTag
 11614  	return c
 11615  }
 11616  
 11617  // Context sets the context to be used in this call's Do method.
 11618  func (c *AccountsOffersListCall) Context(ctx context.Context) *AccountsOffersListCall {
 11619  	c.ctx_ = ctx
 11620  	return c
 11621  }
 11622  
 11623  // Header returns a http.Header that can be modified by the caller to add
 11624  // headers to the request.
 11625  func (c *AccountsOffersListCall) Header() http.Header {
 11626  	if c.header_ == nil {
 11627  		c.header_ = make(http.Header)
 11628  	}
 11629  	return c.header_
 11630  }
 11631  
 11632  func (c *AccountsOffersListCall) doRequest(alt string) (*http.Response, error) {
 11633  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 11634  	if c.ifNoneMatch_ != "" {
 11635  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 11636  	}
 11637  	var body io.Reader = nil
 11638  	c.urlParams_.Set("alt", alt)
 11639  	c.urlParams_.Set("prettyPrint", "false")
 11640  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/offers")
 11641  	urls += "?" + c.urlParams_.Encode()
 11642  	req, err := http.NewRequest("GET", urls, body)
 11643  	if err != nil {
 11644  		return nil, err
 11645  	}
 11646  	req.Header = reqHeaders
 11647  	googleapi.Expand(req.URL, map[string]string{
 11648  		"parent": c.parent,
 11649  	})
 11650  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11651  }
 11652  
 11653  // Do executes the "cloudchannel.accounts.offers.list" call.
 11654  // Any non-2xx status code is an error. Response headers are in either
 11655  // *GoogleCloudChannelV1ListOffersResponse.ServerResponse.Header or (if a
 11656  // response was returned at all) in error.(*googleapi.Error).Header. Use
 11657  // googleapi.IsNotModified to check whether the returned error was because
 11658  // http.StatusNotModified was returned.
 11659  func (c *AccountsOffersListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1ListOffersResponse, error) {
 11660  	gensupport.SetOptions(c.urlParams_, opts...)
 11661  	res, err := c.doRequest("json")
 11662  	if res != nil && res.StatusCode == http.StatusNotModified {
 11663  		if res.Body != nil {
 11664  			res.Body.Close()
 11665  		}
 11666  		return nil, gensupport.WrapError(&googleapi.Error{
 11667  			Code:   res.StatusCode,
 11668  			Header: res.Header,
 11669  		})
 11670  	}
 11671  	if err != nil {
 11672  		return nil, err
 11673  	}
 11674  	defer googleapi.CloseBody(res)
 11675  	if err := googleapi.CheckResponse(res); err != nil {
 11676  		return nil, gensupport.WrapError(err)
 11677  	}
 11678  	ret := &GoogleCloudChannelV1ListOffersResponse{
 11679  		ServerResponse: googleapi.ServerResponse{
 11680  			Header:         res.Header,
 11681  			HTTPStatusCode: res.StatusCode,
 11682  		},
 11683  	}
 11684  	target := &ret
 11685  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11686  		return nil, err
 11687  	}
 11688  	return ret, nil
 11689  }
 11690  
 11691  // Pages invokes f for each page of results.
 11692  // A non-nil error returned from f will halt the iteration.
 11693  // The provided context supersedes any context provided to the Context method.
 11694  func (c *AccountsOffersListCall) Pages(ctx context.Context, f func(*GoogleCloudChannelV1ListOffersResponse) error) error {
 11695  	c.ctx_ = ctx
 11696  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 11697  	for {
 11698  		x, err := c.Do()
 11699  		if err != nil {
 11700  			return err
 11701  		}
 11702  		if err := f(x); err != nil {
 11703  			return err
 11704  		}
 11705  		if x.NextPageToken == "" {
 11706  			return nil
 11707  		}
 11708  		c.PageToken(x.NextPageToken)
 11709  	}
 11710  }
 11711  
 11712  type AccountsReportJobsFetchReportResultsCall struct {
 11713  	s                                             *Service
 11714  	reportJob                                     string
 11715  	googlecloudchannelv1fetchreportresultsrequest *GoogleCloudChannelV1FetchReportResultsRequest
 11716  	urlParams_                                    gensupport.URLParams
 11717  	ctx_                                          context.Context
 11718  	header_                                       http.Header
 11719  }
 11720  
 11721  // FetchReportResults: Retrieves data generated by
 11722  // CloudChannelReportsService.RunReportJob. Deprecated: Please use Export
 11723  // Channel Services data to BigQuery
 11724  // (https://cloud.google.com/channel/docs/rebilling/export-data-to-bigquery)
 11725  // instead.
 11726  //
 11727  //   - reportJob: The report job created by
 11728  //     CloudChannelReportsService.RunReportJob. Report_job uses the format:
 11729  //     accounts/{account_id}/reportJobs/{report_job_id}.
 11730  func (r *AccountsReportJobsService) FetchReportResults(reportJob string, googlecloudchannelv1fetchreportresultsrequest *GoogleCloudChannelV1FetchReportResultsRequest) *AccountsReportJobsFetchReportResultsCall {
 11731  	c := &AccountsReportJobsFetchReportResultsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11732  	c.reportJob = reportJob
 11733  	c.googlecloudchannelv1fetchreportresultsrequest = googlecloudchannelv1fetchreportresultsrequest
 11734  	return c
 11735  }
 11736  
 11737  // Fields allows partial responses to be retrieved. See
 11738  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11739  // details.
 11740  func (c *AccountsReportJobsFetchReportResultsCall) Fields(s ...googleapi.Field) *AccountsReportJobsFetchReportResultsCall {
 11741  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11742  	return c
 11743  }
 11744  
 11745  // Context sets the context to be used in this call's Do method.
 11746  func (c *AccountsReportJobsFetchReportResultsCall) Context(ctx context.Context) *AccountsReportJobsFetchReportResultsCall {
 11747  	c.ctx_ = ctx
 11748  	return c
 11749  }
 11750  
 11751  // Header returns a http.Header that can be modified by the caller to add
 11752  // headers to the request.
 11753  func (c *AccountsReportJobsFetchReportResultsCall) Header() http.Header {
 11754  	if c.header_ == nil {
 11755  		c.header_ = make(http.Header)
 11756  	}
 11757  	return c.header_
 11758  }
 11759  
 11760  func (c *AccountsReportJobsFetchReportResultsCall) doRequest(alt string) (*http.Response, error) {
 11761  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 11762  	var body io.Reader = nil
 11763  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudchannelv1fetchreportresultsrequest)
 11764  	if err != nil {
 11765  		return nil, err
 11766  	}
 11767  	c.urlParams_.Set("alt", alt)
 11768  	c.urlParams_.Set("prettyPrint", "false")
 11769  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+reportJob}:fetchReportResults")
 11770  	urls += "?" + c.urlParams_.Encode()
 11771  	req, err := http.NewRequest("POST", urls, body)
 11772  	if err != nil {
 11773  		return nil, err
 11774  	}
 11775  	req.Header = reqHeaders
 11776  	googleapi.Expand(req.URL, map[string]string{
 11777  		"reportJob": c.reportJob,
 11778  	})
 11779  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11780  }
 11781  
 11782  // Do executes the "cloudchannel.accounts.reportJobs.fetchReportResults" call.
 11783  // Any non-2xx status code is an error. Response headers are in either
 11784  // *GoogleCloudChannelV1FetchReportResultsResponse.ServerResponse.Header or (if
 11785  // a response was returned at all) in error.(*googleapi.Error).Header. Use
 11786  // googleapi.IsNotModified to check whether the returned error was because
 11787  // http.StatusNotModified was returned.
 11788  func (c *AccountsReportJobsFetchReportResultsCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1FetchReportResultsResponse, error) {
 11789  	gensupport.SetOptions(c.urlParams_, opts...)
 11790  	res, err := c.doRequest("json")
 11791  	if res != nil && res.StatusCode == http.StatusNotModified {
 11792  		if res.Body != nil {
 11793  			res.Body.Close()
 11794  		}
 11795  		return nil, gensupport.WrapError(&googleapi.Error{
 11796  			Code:   res.StatusCode,
 11797  			Header: res.Header,
 11798  		})
 11799  	}
 11800  	if err != nil {
 11801  		return nil, err
 11802  	}
 11803  	defer googleapi.CloseBody(res)
 11804  	if err := googleapi.CheckResponse(res); err != nil {
 11805  		return nil, gensupport.WrapError(err)
 11806  	}
 11807  	ret := &GoogleCloudChannelV1FetchReportResultsResponse{
 11808  		ServerResponse: googleapi.ServerResponse{
 11809  			Header:         res.Header,
 11810  			HTTPStatusCode: res.StatusCode,
 11811  		},
 11812  	}
 11813  	target := &ret
 11814  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11815  		return nil, err
 11816  	}
 11817  	return ret, nil
 11818  }
 11819  
 11820  // Pages invokes f for each page of results.
 11821  // A non-nil error returned from f will halt the iteration.
 11822  // The provided context supersedes any context provided to the Context method.
 11823  func (c *AccountsReportJobsFetchReportResultsCall) Pages(ctx context.Context, f func(*GoogleCloudChannelV1FetchReportResultsResponse) error) error {
 11824  	c.ctx_ = ctx
 11825  	defer func(pt string) { c.googlecloudchannelv1fetchreportresultsrequest.PageToken = pt }(c.googlecloudchannelv1fetchreportresultsrequest.PageToken)
 11826  	for {
 11827  		x, err := c.Do()
 11828  		if err != nil {
 11829  			return err
 11830  		}
 11831  		if err := f(x); err != nil {
 11832  			return err
 11833  		}
 11834  		if x.NextPageToken == "" {
 11835  			return nil
 11836  		}
 11837  		c.googlecloudchannelv1fetchreportresultsrequest.PageToken = x.NextPageToken
 11838  	}
 11839  }
 11840  
 11841  type AccountsReportsListCall struct {
 11842  	s            *Service
 11843  	parent       string
 11844  	urlParams_   gensupport.URLParams
 11845  	ifNoneMatch_ string
 11846  	ctx_         context.Context
 11847  	header_      http.Header
 11848  }
 11849  
 11850  // List: Lists the reports that RunReportJob can run. These reports include an
 11851  // ID, a description, and the list of columns that will be in the result.
 11852  // Deprecated: Please use Export Channel Services data to BigQuery
 11853  // (https://cloud.google.com/channel/docs/rebilling/export-data-to-bigquery)
 11854  // instead.
 11855  //
 11856  //   - parent: The resource name of the partner account to list available reports
 11857  //     for. Parent uses the format: accounts/{account_id}.
 11858  func (r *AccountsReportsService) List(parent string) *AccountsReportsListCall {
 11859  	c := &AccountsReportsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11860  	c.parent = parent
 11861  	return c
 11862  }
 11863  
 11864  // LanguageCode sets the optional parameter "languageCode": The BCP-47 language
 11865  // code, such as "en-US". If specified, the response is localized to the
 11866  // corresponding language code if the original data sources support it. Default
 11867  // is "en-US".
 11868  func (c *AccountsReportsListCall) LanguageCode(languageCode string) *AccountsReportsListCall {
 11869  	c.urlParams_.Set("languageCode", languageCode)
 11870  	return c
 11871  }
 11872  
 11873  // PageSize sets the optional parameter "pageSize": Requested page size of the
 11874  // report. The server might return fewer results than requested. If
 11875  // unspecified, returns 20 reports. The maximum value is 100.
 11876  func (c *AccountsReportsListCall) PageSize(pageSize int64) *AccountsReportsListCall {
 11877  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 11878  	return c
 11879  }
 11880  
 11881  // PageToken sets the optional parameter "pageToken": A token that specifies a
 11882  // page of results beyond the first page. Obtained through
 11883  // ListReportsResponse.next_page_token of the previous
 11884  // CloudChannelReportsService.ListReports call.
 11885  func (c *AccountsReportsListCall) PageToken(pageToken string) *AccountsReportsListCall {
 11886  	c.urlParams_.Set("pageToken", pageToken)
 11887  	return c
 11888  }
 11889  
 11890  // Fields allows partial responses to be retrieved. See
 11891  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11892  // details.
 11893  func (c *AccountsReportsListCall) Fields(s ...googleapi.Field) *AccountsReportsListCall {
 11894  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11895  	return c
 11896  }
 11897  
 11898  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 11899  // object's ETag matches the given value. This is useful for getting updates
 11900  // only after the object has changed since the last request.
 11901  func (c *AccountsReportsListCall) IfNoneMatch(entityTag string) *AccountsReportsListCall {
 11902  	c.ifNoneMatch_ = entityTag
 11903  	return c
 11904  }
 11905  
 11906  // Context sets the context to be used in this call's Do method.
 11907  func (c *AccountsReportsListCall) Context(ctx context.Context) *AccountsReportsListCall {
 11908  	c.ctx_ = ctx
 11909  	return c
 11910  }
 11911  
 11912  // Header returns a http.Header that can be modified by the caller to add
 11913  // headers to the request.
 11914  func (c *AccountsReportsListCall) Header() http.Header {
 11915  	if c.header_ == nil {
 11916  		c.header_ = make(http.Header)
 11917  	}
 11918  	return c.header_
 11919  }
 11920  
 11921  func (c *AccountsReportsListCall) doRequest(alt string) (*http.Response, error) {
 11922  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 11923  	if c.ifNoneMatch_ != "" {
 11924  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 11925  	}
 11926  	var body io.Reader = nil
 11927  	c.urlParams_.Set("alt", alt)
 11928  	c.urlParams_.Set("prettyPrint", "false")
 11929  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/reports")
 11930  	urls += "?" + c.urlParams_.Encode()
 11931  	req, err := http.NewRequest("GET", urls, body)
 11932  	if err != nil {
 11933  		return nil, err
 11934  	}
 11935  	req.Header = reqHeaders
 11936  	googleapi.Expand(req.URL, map[string]string{
 11937  		"parent": c.parent,
 11938  	})
 11939  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11940  }
 11941  
 11942  // Do executes the "cloudchannel.accounts.reports.list" call.
 11943  // Any non-2xx status code is an error. Response headers are in either
 11944  // *GoogleCloudChannelV1ListReportsResponse.ServerResponse.Header or (if a
 11945  // response was returned at all) in error.(*googleapi.Error).Header. Use
 11946  // googleapi.IsNotModified to check whether the returned error was because
 11947  // http.StatusNotModified was returned.
 11948  func (c *AccountsReportsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1ListReportsResponse, error) {
 11949  	gensupport.SetOptions(c.urlParams_, opts...)
 11950  	res, err := c.doRequest("json")
 11951  	if res != nil && res.StatusCode == http.StatusNotModified {
 11952  		if res.Body != nil {
 11953  			res.Body.Close()
 11954  		}
 11955  		return nil, gensupport.WrapError(&googleapi.Error{
 11956  			Code:   res.StatusCode,
 11957  			Header: res.Header,
 11958  		})
 11959  	}
 11960  	if err != nil {
 11961  		return nil, err
 11962  	}
 11963  	defer googleapi.CloseBody(res)
 11964  	if err := googleapi.CheckResponse(res); err != nil {
 11965  		return nil, gensupport.WrapError(err)
 11966  	}
 11967  	ret := &GoogleCloudChannelV1ListReportsResponse{
 11968  		ServerResponse: googleapi.ServerResponse{
 11969  			Header:         res.Header,
 11970  			HTTPStatusCode: res.StatusCode,
 11971  		},
 11972  	}
 11973  	target := &ret
 11974  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11975  		return nil, err
 11976  	}
 11977  	return ret, nil
 11978  }
 11979  
 11980  // Pages invokes f for each page of results.
 11981  // A non-nil error returned from f will halt the iteration.
 11982  // The provided context supersedes any context provided to the Context method.
 11983  func (c *AccountsReportsListCall) Pages(ctx context.Context, f func(*GoogleCloudChannelV1ListReportsResponse) error) error {
 11984  	c.ctx_ = ctx
 11985  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 11986  	for {
 11987  		x, err := c.Do()
 11988  		if err != nil {
 11989  			return err
 11990  		}
 11991  		if err := f(x); err != nil {
 11992  			return err
 11993  		}
 11994  		if x.NextPageToken == "" {
 11995  			return nil
 11996  		}
 11997  		c.PageToken(x.NextPageToken)
 11998  	}
 11999  }
 12000  
 12001  type AccountsReportsRunCall struct {
 12002  	s                                       *Service
 12003  	nameid                                  string
 12004  	googlecloudchannelv1runreportjobrequest *GoogleCloudChannelV1RunReportJobRequest
 12005  	urlParams_                              gensupport.URLParams
 12006  	ctx_                                    context.Context
 12007  	header_                                 http.Header
 12008  }
 12009  
 12010  // Run: Begins generation of data for a given report. The report identifier is
 12011  // a UID (for example, `613bf59q`). Possible error codes: * PERMISSION_DENIED:
 12012  // The user doesn't have access to this report. * INVALID_ARGUMENT: Required
 12013  // request parameters are missing or invalid. * NOT_FOUND: The report
 12014  // identifier was not found. * INTERNAL: Any non-user error related to a
 12015  // technical issue in the backend. Contact Cloud Channel support. * UNKNOWN:
 12016  // Any non-user error related to a technical issue in the backend. Contact
 12017  // Cloud Channel support. Return value: The ID of a long-running operation. To
 12018  // get the results of the operation, call the GetOperation method of
 12019  // CloudChannelOperationsService. The Operation metadata contains an instance
 12020  // of OperationMetadata. To get the results of report generation, call
 12021  // CloudChannelReportsService.FetchReportResults with the
 12022  // RunReportJobResponse.report_job. Deprecated: Please use Export Channel
 12023  // Services data to BigQuery
 12024  // (https://cloud.google.com/channel/docs/rebilling/export-data-to-bigquery)
 12025  // instead.
 12026  //
 12027  //   - name: The report's resource name. Specifies the account and report used to
 12028  //     generate report data. The report_id identifier is a UID (for example,
 12029  //     `613bf59q`). Name uses the format:
 12030  //     accounts/{account_id}/reports/{report_id}.
 12031  func (r *AccountsReportsService) Run(nameid string, googlecloudchannelv1runreportjobrequest *GoogleCloudChannelV1RunReportJobRequest) *AccountsReportsRunCall {
 12032  	c := &AccountsReportsRunCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12033  	c.nameid = nameid
 12034  	c.googlecloudchannelv1runreportjobrequest = googlecloudchannelv1runreportjobrequest
 12035  	return c
 12036  }
 12037  
 12038  // Fields allows partial responses to be retrieved. See
 12039  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12040  // details.
 12041  func (c *AccountsReportsRunCall) Fields(s ...googleapi.Field) *AccountsReportsRunCall {
 12042  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12043  	return c
 12044  }
 12045  
 12046  // Context sets the context to be used in this call's Do method.
 12047  func (c *AccountsReportsRunCall) Context(ctx context.Context) *AccountsReportsRunCall {
 12048  	c.ctx_ = ctx
 12049  	return c
 12050  }
 12051  
 12052  // Header returns a http.Header that can be modified by the caller to add
 12053  // headers to the request.
 12054  func (c *AccountsReportsRunCall) Header() http.Header {
 12055  	if c.header_ == nil {
 12056  		c.header_ = make(http.Header)
 12057  	}
 12058  	return c.header_
 12059  }
 12060  
 12061  func (c *AccountsReportsRunCall) doRequest(alt string) (*http.Response, error) {
 12062  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 12063  	var body io.Reader = nil
 12064  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudchannelv1runreportjobrequest)
 12065  	if err != nil {
 12066  		return nil, err
 12067  	}
 12068  	c.urlParams_.Set("alt", alt)
 12069  	c.urlParams_.Set("prettyPrint", "false")
 12070  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:run")
 12071  	urls += "?" + c.urlParams_.Encode()
 12072  	req, err := http.NewRequest("POST", urls, body)
 12073  	if err != nil {
 12074  		return nil, err
 12075  	}
 12076  	req.Header = reqHeaders
 12077  	googleapi.Expand(req.URL, map[string]string{
 12078  		"name": c.nameid,
 12079  	})
 12080  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12081  }
 12082  
 12083  // Do executes the "cloudchannel.accounts.reports.run" call.
 12084  // Any non-2xx status code is an error. Response headers are in either
 12085  // *GoogleLongrunningOperation.ServerResponse.Header or (if a response was
 12086  // returned at all) in error.(*googleapi.Error).Header. Use
 12087  // googleapi.IsNotModified to check whether the returned error was because
 12088  // http.StatusNotModified was returned.
 12089  func (c *AccountsReportsRunCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
 12090  	gensupport.SetOptions(c.urlParams_, opts...)
 12091  	res, err := c.doRequest("json")
 12092  	if res != nil && res.StatusCode == http.StatusNotModified {
 12093  		if res.Body != nil {
 12094  			res.Body.Close()
 12095  		}
 12096  		return nil, gensupport.WrapError(&googleapi.Error{
 12097  			Code:   res.StatusCode,
 12098  			Header: res.Header,
 12099  		})
 12100  	}
 12101  	if err != nil {
 12102  		return nil, err
 12103  	}
 12104  	defer googleapi.CloseBody(res)
 12105  	if err := googleapi.CheckResponse(res); err != nil {
 12106  		return nil, gensupport.WrapError(err)
 12107  	}
 12108  	ret := &GoogleLongrunningOperation{
 12109  		ServerResponse: googleapi.ServerResponse{
 12110  			Header:         res.Header,
 12111  			HTTPStatusCode: res.StatusCode,
 12112  		},
 12113  	}
 12114  	target := &ret
 12115  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12116  		return nil, err
 12117  	}
 12118  	return ret, nil
 12119  }
 12120  
 12121  type AccountsSkuGroupsListCall struct {
 12122  	s            *Service
 12123  	parent       string
 12124  	urlParams_   gensupport.URLParams
 12125  	ifNoneMatch_ string
 12126  	ctx_         context.Context
 12127  	header_      http.Header
 12128  }
 12129  
 12130  // List: Lists the Rebilling supported SKU groups the account is authorized to
 12131  // sell. Reference: https://cloud.google.com/skus/sku-groups Possible Error
 12132  // Codes: * PERMISSION_DENIED: If the account making the request and the
 12133  // account being queried are different, or the account doesn't exist. *
 12134  // INTERNAL: Any non-user error related to technical issues in the backend. In
 12135  // this case, contact Cloud Channel support. Return Value: If successful, the
 12136  // SkuGroup resources. The data for each resource is displayed in the
 12137  // alphabetical order of SKU group display name. The data for each resource is
 12138  // displayed in the ascending order of SkuGroup.display_name If unsuccessful,
 12139  // returns an error.
 12140  //
 12141  //   - parent: The resource name of the account from which to list SKU groups.
 12142  //     Parent uses the format: accounts/{account}.
 12143  func (r *AccountsSkuGroupsService) List(parent string) *AccountsSkuGroupsListCall {
 12144  	c := &AccountsSkuGroupsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12145  	c.parent = parent
 12146  	return c
 12147  }
 12148  
 12149  // PageSize sets the optional parameter "pageSize": The maximum number of SKU
 12150  // groups to return. The service may return fewer than this value. If
 12151  // unspecified, returns a maximum of 1000 SKU groups. The maximum value is
 12152  // 1000; values above 1000 will be coerced to 1000.
 12153  func (c *AccountsSkuGroupsListCall) PageSize(pageSize int64) *AccountsSkuGroupsListCall {
 12154  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 12155  	return c
 12156  }
 12157  
 12158  // PageToken sets the optional parameter "pageToken": A token identifying a
 12159  // page of results beyond the first page. Obtained through
 12160  // ListSkuGroups.next_page_token of the previous
 12161  // CloudChannelService.ListSkuGroups call.
 12162  func (c *AccountsSkuGroupsListCall) PageToken(pageToken string) *AccountsSkuGroupsListCall {
 12163  	c.urlParams_.Set("pageToken", pageToken)
 12164  	return c
 12165  }
 12166  
 12167  // Fields allows partial responses to be retrieved. See
 12168  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12169  // details.
 12170  func (c *AccountsSkuGroupsListCall) Fields(s ...googleapi.Field) *AccountsSkuGroupsListCall {
 12171  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12172  	return c
 12173  }
 12174  
 12175  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 12176  // object's ETag matches the given value. This is useful for getting updates
 12177  // only after the object has changed since the last request.
 12178  func (c *AccountsSkuGroupsListCall) IfNoneMatch(entityTag string) *AccountsSkuGroupsListCall {
 12179  	c.ifNoneMatch_ = entityTag
 12180  	return c
 12181  }
 12182  
 12183  // Context sets the context to be used in this call's Do method.
 12184  func (c *AccountsSkuGroupsListCall) Context(ctx context.Context) *AccountsSkuGroupsListCall {
 12185  	c.ctx_ = ctx
 12186  	return c
 12187  }
 12188  
 12189  // Header returns a http.Header that can be modified by the caller to add
 12190  // headers to the request.
 12191  func (c *AccountsSkuGroupsListCall) Header() http.Header {
 12192  	if c.header_ == nil {
 12193  		c.header_ = make(http.Header)
 12194  	}
 12195  	return c.header_
 12196  }
 12197  
 12198  func (c *AccountsSkuGroupsListCall) doRequest(alt string) (*http.Response, error) {
 12199  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 12200  	if c.ifNoneMatch_ != "" {
 12201  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 12202  	}
 12203  	var body io.Reader = nil
 12204  	c.urlParams_.Set("alt", alt)
 12205  	c.urlParams_.Set("prettyPrint", "false")
 12206  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/skuGroups")
 12207  	urls += "?" + c.urlParams_.Encode()
 12208  	req, err := http.NewRequest("GET", urls, body)
 12209  	if err != nil {
 12210  		return nil, err
 12211  	}
 12212  	req.Header = reqHeaders
 12213  	googleapi.Expand(req.URL, map[string]string{
 12214  		"parent": c.parent,
 12215  	})
 12216  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12217  }
 12218  
 12219  // Do executes the "cloudchannel.accounts.skuGroups.list" call.
 12220  // Any non-2xx status code is an error. Response headers are in either
 12221  // *GoogleCloudChannelV1ListSkuGroupsResponse.ServerResponse.Header or (if a
 12222  // response was returned at all) in error.(*googleapi.Error).Header. Use
 12223  // googleapi.IsNotModified to check whether the returned error was because
 12224  // http.StatusNotModified was returned.
 12225  func (c *AccountsSkuGroupsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1ListSkuGroupsResponse, error) {
 12226  	gensupport.SetOptions(c.urlParams_, opts...)
 12227  	res, err := c.doRequest("json")
 12228  	if res != nil && res.StatusCode == http.StatusNotModified {
 12229  		if res.Body != nil {
 12230  			res.Body.Close()
 12231  		}
 12232  		return nil, gensupport.WrapError(&googleapi.Error{
 12233  			Code:   res.StatusCode,
 12234  			Header: res.Header,
 12235  		})
 12236  	}
 12237  	if err != nil {
 12238  		return nil, err
 12239  	}
 12240  	defer googleapi.CloseBody(res)
 12241  	if err := googleapi.CheckResponse(res); err != nil {
 12242  		return nil, gensupport.WrapError(err)
 12243  	}
 12244  	ret := &GoogleCloudChannelV1ListSkuGroupsResponse{
 12245  		ServerResponse: googleapi.ServerResponse{
 12246  			Header:         res.Header,
 12247  			HTTPStatusCode: res.StatusCode,
 12248  		},
 12249  	}
 12250  	target := &ret
 12251  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12252  		return nil, err
 12253  	}
 12254  	return ret, nil
 12255  }
 12256  
 12257  // Pages invokes f for each page of results.
 12258  // A non-nil error returned from f will halt the iteration.
 12259  // The provided context supersedes any context provided to the Context method.
 12260  func (c *AccountsSkuGroupsListCall) Pages(ctx context.Context, f func(*GoogleCloudChannelV1ListSkuGroupsResponse) error) error {
 12261  	c.ctx_ = ctx
 12262  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 12263  	for {
 12264  		x, err := c.Do()
 12265  		if err != nil {
 12266  			return err
 12267  		}
 12268  		if err := f(x); err != nil {
 12269  			return err
 12270  		}
 12271  		if x.NextPageToken == "" {
 12272  			return nil
 12273  		}
 12274  		c.PageToken(x.NextPageToken)
 12275  	}
 12276  }
 12277  
 12278  type AccountsSkuGroupsBillableSkusListCall struct {
 12279  	s            *Service
 12280  	parent       string
 12281  	urlParams_   gensupport.URLParams
 12282  	ifNoneMatch_ string
 12283  	ctx_         context.Context
 12284  	header_      http.Header
 12285  }
 12286  
 12287  // List: Lists the Billable SKUs in a given SKU group. Possible error codes:
 12288  // PERMISSION_DENIED: If the account making the request and the account being
 12289  // queried for are different, or the account doesn't exist. INVALID_ARGUMENT:
 12290  // Missing or invalid required parameters in the request. INTERNAL: Any
 12291  // non-user error related to technical issue in the backend. In this case,
 12292  // contact cloud channel support. Return Value: If successful, the BillableSku
 12293  // resources. The data for each resource is displayed in the ascending order
 12294  // of: * BillableSku.service_display_name * BillableSku.sku_display_name If
 12295  // unsuccessful, returns an error.
 12296  //
 12297  //   - parent: Resource name of the SKU group. Format:
 12298  //     accounts/{account}/skuGroups/{sku_group}.
 12299  func (r *AccountsSkuGroupsBillableSkusService) List(parent string) *AccountsSkuGroupsBillableSkusListCall {
 12300  	c := &AccountsSkuGroupsBillableSkusListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12301  	c.parent = parent
 12302  	return c
 12303  }
 12304  
 12305  // PageSize sets the optional parameter "pageSize": The maximum number of SKUs
 12306  // to return. The service may return fewer than this value. If unspecified,
 12307  // returns a maximum of 100000 SKUs. The maximum value is 100000; values above
 12308  // 100000 will be coerced to 100000.
 12309  func (c *AccountsSkuGroupsBillableSkusListCall) PageSize(pageSize int64) *AccountsSkuGroupsBillableSkusListCall {
 12310  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 12311  	return c
 12312  }
 12313  
 12314  // PageToken sets the optional parameter "pageToken": A token identifying a
 12315  // page of results beyond the first page. Obtained through
 12316  // ListSkuGroupBillableSkus.next_page_token of the previous
 12317  // CloudChannelService.ListSkuGroupBillableSkus call.
 12318  func (c *AccountsSkuGroupsBillableSkusListCall) PageToken(pageToken string) *AccountsSkuGroupsBillableSkusListCall {
 12319  	c.urlParams_.Set("pageToken", pageToken)
 12320  	return c
 12321  }
 12322  
 12323  // Fields allows partial responses to be retrieved. See
 12324  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12325  // details.
 12326  func (c *AccountsSkuGroupsBillableSkusListCall) Fields(s ...googleapi.Field) *AccountsSkuGroupsBillableSkusListCall {
 12327  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12328  	return c
 12329  }
 12330  
 12331  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 12332  // object's ETag matches the given value. This is useful for getting updates
 12333  // only after the object has changed since the last request.
 12334  func (c *AccountsSkuGroupsBillableSkusListCall) IfNoneMatch(entityTag string) *AccountsSkuGroupsBillableSkusListCall {
 12335  	c.ifNoneMatch_ = entityTag
 12336  	return c
 12337  }
 12338  
 12339  // Context sets the context to be used in this call's Do method.
 12340  func (c *AccountsSkuGroupsBillableSkusListCall) Context(ctx context.Context) *AccountsSkuGroupsBillableSkusListCall {
 12341  	c.ctx_ = ctx
 12342  	return c
 12343  }
 12344  
 12345  // Header returns a http.Header that can be modified by the caller to add
 12346  // headers to the request.
 12347  func (c *AccountsSkuGroupsBillableSkusListCall) Header() http.Header {
 12348  	if c.header_ == nil {
 12349  		c.header_ = make(http.Header)
 12350  	}
 12351  	return c.header_
 12352  }
 12353  
 12354  func (c *AccountsSkuGroupsBillableSkusListCall) doRequest(alt string) (*http.Response, error) {
 12355  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 12356  	if c.ifNoneMatch_ != "" {
 12357  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 12358  	}
 12359  	var body io.Reader = nil
 12360  	c.urlParams_.Set("alt", alt)
 12361  	c.urlParams_.Set("prettyPrint", "false")
 12362  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/billableSkus")
 12363  	urls += "?" + c.urlParams_.Encode()
 12364  	req, err := http.NewRequest("GET", urls, body)
 12365  	if err != nil {
 12366  		return nil, err
 12367  	}
 12368  	req.Header = reqHeaders
 12369  	googleapi.Expand(req.URL, map[string]string{
 12370  		"parent": c.parent,
 12371  	})
 12372  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12373  }
 12374  
 12375  // Do executes the "cloudchannel.accounts.skuGroups.billableSkus.list" call.
 12376  // Any non-2xx status code is an error. Response headers are in either
 12377  // *GoogleCloudChannelV1ListSkuGroupBillableSkusResponse.ServerResponse.Header
 12378  // or (if a response was returned at all) in error.(*googleapi.Error).Header.
 12379  // Use googleapi.IsNotModified to check whether the returned error was because
 12380  // http.StatusNotModified was returned.
 12381  func (c *AccountsSkuGroupsBillableSkusListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1ListSkuGroupBillableSkusResponse, error) {
 12382  	gensupport.SetOptions(c.urlParams_, opts...)
 12383  	res, err := c.doRequest("json")
 12384  	if res != nil && res.StatusCode == http.StatusNotModified {
 12385  		if res.Body != nil {
 12386  			res.Body.Close()
 12387  		}
 12388  		return nil, gensupport.WrapError(&googleapi.Error{
 12389  			Code:   res.StatusCode,
 12390  			Header: res.Header,
 12391  		})
 12392  	}
 12393  	if err != nil {
 12394  		return nil, err
 12395  	}
 12396  	defer googleapi.CloseBody(res)
 12397  	if err := googleapi.CheckResponse(res); err != nil {
 12398  		return nil, gensupport.WrapError(err)
 12399  	}
 12400  	ret := &GoogleCloudChannelV1ListSkuGroupBillableSkusResponse{
 12401  		ServerResponse: googleapi.ServerResponse{
 12402  			Header:         res.Header,
 12403  			HTTPStatusCode: res.StatusCode,
 12404  		},
 12405  	}
 12406  	target := &ret
 12407  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12408  		return nil, err
 12409  	}
 12410  	return ret, nil
 12411  }
 12412  
 12413  // Pages invokes f for each page of results.
 12414  // A non-nil error returned from f will halt the iteration.
 12415  // The provided context supersedes any context provided to the Context method.
 12416  func (c *AccountsSkuGroupsBillableSkusListCall) Pages(ctx context.Context, f func(*GoogleCloudChannelV1ListSkuGroupBillableSkusResponse) error) error {
 12417  	c.ctx_ = ctx
 12418  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 12419  	for {
 12420  		x, err := c.Do()
 12421  		if err != nil {
 12422  			return err
 12423  		}
 12424  		if err := f(x); err != nil {
 12425  			return err
 12426  		}
 12427  		if x.NextPageToken == "" {
 12428  			return nil
 12429  		}
 12430  		c.PageToken(x.NextPageToken)
 12431  	}
 12432  }
 12433  
 12434  type OperationsCancelCall struct {
 12435  	s                                       *Service
 12436  	name                                    string
 12437  	googlelongrunningcanceloperationrequest *GoogleLongrunningCancelOperationRequest
 12438  	urlParams_                              gensupport.URLParams
 12439  	ctx_                                    context.Context
 12440  	header_                                 http.Header
 12441  }
 12442  
 12443  // Cancel: Starts asynchronous cancellation on a long-running operation. The
 12444  // server makes a best effort to cancel the operation, but success is not
 12445  // guaranteed. If the server doesn't support this method, it returns
 12446  // `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or
 12447  // other methods to check whether the cancellation succeeded or whether the
 12448  // operation completed despite cancellation. On successful cancellation, the
 12449  // operation is not deleted; instead, it becomes an operation with an
 12450  // Operation.error value with a google.rpc.Status.code of 1, corresponding to
 12451  // `Code.CANCELLED`.
 12452  //
 12453  // - name: The name of the operation resource to be cancelled.
 12454  func (r *OperationsService) Cancel(name string, googlelongrunningcanceloperationrequest *GoogleLongrunningCancelOperationRequest) *OperationsCancelCall {
 12455  	c := &OperationsCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12456  	c.name = name
 12457  	c.googlelongrunningcanceloperationrequest = googlelongrunningcanceloperationrequest
 12458  	return c
 12459  }
 12460  
 12461  // Fields allows partial responses to be retrieved. See
 12462  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12463  // details.
 12464  func (c *OperationsCancelCall) Fields(s ...googleapi.Field) *OperationsCancelCall {
 12465  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12466  	return c
 12467  }
 12468  
 12469  // Context sets the context to be used in this call's Do method.
 12470  func (c *OperationsCancelCall) Context(ctx context.Context) *OperationsCancelCall {
 12471  	c.ctx_ = ctx
 12472  	return c
 12473  }
 12474  
 12475  // Header returns a http.Header that can be modified by the caller to add
 12476  // headers to the request.
 12477  func (c *OperationsCancelCall) Header() http.Header {
 12478  	if c.header_ == nil {
 12479  		c.header_ = make(http.Header)
 12480  	}
 12481  	return c.header_
 12482  }
 12483  
 12484  func (c *OperationsCancelCall) doRequest(alt string) (*http.Response, error) {
 12485  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 12486  	var body io.Reader = nil
 12487  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlelongrunningcanceloperationrequest)
 12488  	if err != nil {
 12489  		return nil, err
 12490  	}
 12491  	c.urlParams_.Set("alt", alt)
 12492  	c.urlParams_.Set("prettyPrint", "false")
 12493  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:cancel")
 12494  	urls += "?" + c.urlParams_.Encode()
 12495  	req, err := http.NewRequest("POST", urls, body)
 12496  	if err != nil {
 12497  		return nil, err
 12498  	}
 12499  	req.Header = reqHeaders
 12500  	googleapi.Expand(req.URL, map[string]string{
 12501  		"name": c.name,
 12502  	})
 12503  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12504  }
 12505  
 12506  // Do executes the "cloudchannel.operations.cancel" call.
 12507  // Any non-2xx status code is an error. Response headers are in either
 12508  // *GoogleProtobufEmpty.ServerResponse.Header or (if a response was returned at
 12509  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 12510  // check whether the returned error was because http.StatusNotModified was
 12511  // returned.
 12512  func (c *OperationsCancelCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
 12513  	gensupport.SetOptions(c.urlParams_, opts...)
 12514  	res, err := c.doRequest("json")
 12515  	if res != nil && res.StatusCode == http.StatusNotModified {
 12516  		if res.Body != nil {
 12517  			res.Body.Close()
 12518  		}
 12519  		return nil, gensupport.WrapError(&googleapi.Error{
 12520  			Code:   res.StatusCode,
 12521  			Header: res.Header,
 12522  		})
 12523  	}
 12524  	if err != nil {
 12525  		return nil, err
 12526  	}
 12527  	defer googleapi.CloseBody(res)
 12528  	if err := googleapi.CheckResponse(res); err != nil {
 12529  		return nil, gensupport.WrapError(err)
 12530  	}
 12531  	ret := &GoogleProtobufEmpty{
 12532  		ServerResponse: googleapi.ServerResponse{
 12533  			Header:         res.Header,
 12534  			HTTPStatusCode: res.StatusCode,
 12535  		},
 12536  	}
 12537  	target := &ret
 12538  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12539  		return nil, err
 12540  	}
 12541  	return ret, nil
 12542  }
 12543  
 12544  type OperationsDeleteCall struct {
 12545  	s          *Service
 12546  	name       string
 12547  	urlParams_ gensupport.URLParams
 12548  	ctx_       context.Context
 12549  	header_    http.Header
 12550  }
 12551  
 12552  // Delete: Deletes a long-running operation. This method indicates that the
 12553  // client is no longer interested in the operation result. It does not cancel
 12554  // the operation. If the server doesn't support this method, it returns
 12555  // `google.rpc.Code.UNIMPLEMENTED`.
 12556  //
 12557  // - name: The name of the operation resource to be deleted.
 12558  func (r *OperationsService) Delete(name string) *OperationsDeleteCall {
 12559  	c := &OperationsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12560  	c.name = name
 12561  	return c
 12562  }
 12563  
 12564  // Fields allows partial responses to be retrieved. See
 12565  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12566  // details.
 12567  func (c *OperationsDeleteCall) Fields(s ...googleapi.Field) *OperationsDeleteCall {
 12568  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12569  	return c
 12570  }
 12571  
 12572  // Context sets the context to be used in this call's Do method.
 12573  func (c *OperationsDeleteCall) Context(ctx context.Context) *OperationsDeleteCall {
 12574  	c.ctx_ = ctx
 12575  	return c
 12576  }
 12577  
 12578  // Header returns a http.Header that can be modified by the caller to add
 12579  // headers to the request.
 12580  func (c *OperationsDeleteCall) Header() http.Header {
 12581  	if c.header_ == nil {
 12582  		c.header_ = make(http.Header)
 12583  	}
 12584  	return c.header_
 12585  }
 12586  
 12587  func (c *OperationsDeleteCall) doRequest(alt string) (*http.Response, error) {
 12588  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 12589  	var body io.Reader = nil
 12590  	c.urlParams_.Set("alt", alt)
 12591  	c.urlParams_.Set("prettyPrint", "false")
 12592  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 12593  	urls += "?" + c.urlParams_.Encode()
 12594  	req, err := http.NewRequest("DELETE", urls, body)
 12595  	if err != nil {
 12596  		return nil, err
 12597  	}
 12598  	req.Header = reqHeaders
 12599  	googleapi.Expand(req.URL, map[string]string{
 12600  		"name": c.name,
 12601  	})
 12602  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12603  }
 12604  
 12605  // Do executes the "cloudchannel.operations.delete" call.
 12606  // Any non-2xx status code is an error. Response headers are in either
 12607  // *GoogleProtobufEmpty.ServerResponse.Header or (if a response was returned at
 12608  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 12609  // check whether the returned error was because http.StatusNotModified was
 12610  // returned.
 12611  func (c *OperationsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
 12612  	gensupport.SetOptions(c.urlParams_, opts...)
 12613  	res, err := c.doRequest("json")
 12614  	if res != nil && res.StatusCode == http.StatusNotModified {
 12615  		if res.Body != nil {
 12616  			res.Body.Close()
 12617  		}
 12618  		return nil, gensupport.WrapError(&googleapi.Error{
 12619  			Code:   res.StatusCode,
 12620  			Header: res.Header,
 12621  		})
 12622  	}
 12623  	if err != nil {
 12624  		return nil, err
 12625  	}
 12626  	defer googleapi.CloseBody(res)
 12627  	if err := googleapi.CheckResponse(res); err != nil {
 12628  		return nil, gensupport.WrapError(err)
 12629  	}
 12630  	ret := &GoogleProtobufEmpty{
 12631  		ServerResponse: googleapi.ServerResponse{
 12632  			Header:         res.Header,
 12633  			HTTPStatusCode: res.StatusCode,
 12634  		},
 12635  	}
 12636  	target := &ret
 12637  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12638  		return nil, err
 12639  	}
 12640  	return ret, nil
 12641  }
 12642  
 12643  type OperationsGetCall struct {
 12644  	s            *Service
 12645  	name         string
 12646  	urlParams_   gensupport.URLParams
 12647  	ifNoneMatch_ string
 12648  	ctx_         context.Context
 12649  	header_      http.Header
 12650  }
 12651  
 12652  // Get: Gets the latest state of a long-running operation. Clients can use this
 12653  // method to poll the operation result at intervals as recommended by the API
 12654  // service.
 12655  //
 12656  // - name: The name of the operation resource.
 12657  func (r *OperationsService) Get(name string) *OperationsGetCall {
 12658  	c := &OperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12659  	c.name = name
 12660  	return c
 12661  }
 12662  
 12663  // Fields allows partial responses to be retrieved. See
 12664  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12665  // details.
 12666  func (c *OperationsGetCall) Fields(s ...googleapi.Field) *OperationsGetCall {
 12667  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12668  	return c
 12669  }
 12670  
 12671  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 12672  // object's ETag matches the given value. This is useful for getting updates
 12673  // only after the object has changed since the last request.
 12674  func (c *OperationsGetCall) IfNoneMatch(entityTag string) *OperationsGetCall {
 12675  	c.ifNoneMatch_ = entityTag
 12676  	return c
 12677  }
 12678  
 12679  // Context sets the context to be used in this call's Do method.
 12680  func (c *OperationsGetCall) Context(ctx context.Context) *OperationsGetCall {
 12681  	c.ctx_ = ctx
 12682  	return c
 12683  }
 12684  
 12685  // Header returns a http.Header that can be modified by the caller to add
 12686  // headers to the request.
 12687  func (c *OperationsGetCall) Header() http.Header {
 12688  	if c.header_ == nil {
 12689  		c.header_ = make(http.Header)
 12690  	}
 12691  	return c.header_
 12692  }
 12693  
 12694  func (c *OperationsGetCall) doRequest(alt string) (*http.Response, error) {
 12695  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 12696  	if c.ifNoneMatch_ != "" {
 12697  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 12698  	}
 12699  	var body io.Reader = nil
 12700  	c.urlParams_.Set("alt", alt)
 12701  	c.urlParams_.Set("prettyPrint", "false")
 12702  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 12703  	urls += "?" + c.urlParams_.Encode()
 12704  	req, err := http.NewRequest("GET", urls, body)
 12705  	if err != nil {
 12706  		return nil, err
 12707  	}
 12708  	req.Header = reqHeaders
 12709  	googleapi.Expand(req.URL, map[string]string{
 12710  		"name": c.name,
 12711  	})
 12712  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12713  }
 12714  
 12715  // Do executes the "cloudchannel.operations.get" call.
 12716  // Any non-2xx status code is an error. Response headers are in either
 12717  // *GoogleLongrunningOperation.ServerResponse.Header or (if a response was
 12718  // returned at all) in error.(*googleapi.Error).Header. Use
 12719  // googleapi.IsNotModified to check whether the returned error was because
 12720  // http.StatusNotModified was returned.
 12721  func (c *OperationsGetCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
 12722  	gensupport.SetOptions(c.urlParams_, opts...)
 12723  	res, err := c.doRequest("json")
 12724  	if res != nil && res.StatusCode == http.StatusNotModified {
 12725  		if res.Body != nil {
 12726  			res.Body.Close()
 12727  		}
 12728  		return nil, gensupport.WrapError(&googleapi.Error{
 12729  			Code:   res.StatusCode,
 12730  			Header: res.Header,
 12731  		})
 12732  	}
 12733  	if err != nil {
 12734  		return nil, err
 12735  	}
 12736  	defer googleapi.CloseBody(res)
 12737  	if err := googleapi.CheckResponse(res); err != nil {
 12738  		return nil, gensupport.WrapError(err)
 12739  	}
 12740  	ret := &GoogleLongrunningOperation{
 12741  		ServerResponse: googleapi.ServerResponse{
 12742  			Header:         res.Header,
 12743  			HTTPStatusCode: res.StatusCode,
 12744  		},
 12745  	}
 12746  	target := &ret
 12747  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12748  		return nil, err
 12749  	}
 12750  	return ret, nil
 12751  }
 12752  
 12753  type OperationsListCall struct {
 12754  	s            *Service
 12755  	name         string
 12756  	urlParams_   gensupport.URLParams
 12757  	ifNoneMatch_ string
 12758  	ctx_         context.Context
 12759  	header_      http.Header
 12760  }
 12761  
 12762  // List: Lists operations that match the specified filter in the request. If
 12763  // the server doesn't support this method, it returns `UNIMPLEMENTED`.
 12764  //
 12765  // - name: The name of the operation's parent resource.
 12766  func (r *OperationsService) List(name string) *OperationsListCall {
 12767  	c := &OperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12768  	c.name = name
 12769  	return c
 12770  }
 12771  
 12772  // Filter sets the optional parameter "filter": The standard list filter.
 12773  func (c *OperationsListCall) Filter(filter string) *OperationsListCall {
 12774  	c.urlParams_.Set("filter", filter)
 12775  	return c
 12776  }
 12777  
 12778  // PageSize sets the optional parameter "pageSize": The standard list page
 12779  // size.
 12780  func (c *OperationsListCall) PageSize(pageSize int64) *OperationsListCall {
 12781  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 12782  	return c
 12783  }
 12784  
 12785  // PageToken sets the optional parameter "pageToken": The standard list page
 12786  // token.
 12787  func (c *OperationsListCall) PageToken(pageToken string) *OperationsListCall {
 12788  	c.urlParams_.Set("pageToken", pageToken)
 12789  	return c
 12790  }
 12791  
 12792  // Fields allows partial responses to be retrieved. See
 12793  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12794  // details.
 12795  func (c *OperationsListCall) Fields(s ...googleapi.Field) *OperationsListCall {
 12796  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12797  	return c
 12798  }
 12799  
 12800  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 12801  // object's ETag matches the given value. This is useful for getting updates
 12802  // only after the object has changed since the last request.
 12803  func (c *OperationsListCall) IfNoneMatch(entityTag string) *OperationsListCall {
 12804  	c.ifNoneMatch_ = entityTag
 12805  	return c
 12806  }
 12807  
 12808  // Context sets the context to be used in this call's Do method.
 12809  func (c *OperationsListCall) Context(ctx context.Context) *OperationsListCall {
 12810  	c.ctx_ = ctx
 12811  	return c
 12812  }
 12813  
 12814  // Header returns a http.Header that can be modified by the caller to add
 12815  // headers to the request.
 12816  func (c *OperationsListCall) Header() http.Header {
 12817  	if c.header_ == nil {
 12818  		c.header_ = make(http.Header)
 12819  	}
 12820  	return c.header_
 12821  }
 12822  
 12823  func (c *OperationsListCall) doRequest(alt string) (*http.Response, error) {
 12824  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 12825  	if c.ifNoneMatch_ != "" {
 12826  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 12827  	}
 12828  	var body io.Reader = nil
 12829  	c.urlParams_.Set("alt", alt)
 12830  	c.urlParams_.Set("prettyPrint", "false")
 12831  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 12832  	urls += "?" + c.urlParams_.Encode()
 12833  	req, err := http.NewRequest("GET", urls, body)
 12834  	if err != nil {
 12835  		return nil, err
 12836  	}
 12837  	req.Header = reqHeaders
 12838  	googleapi.Expand(req.URL, map[string]string{
 12839  		"name": c.name,
 12840  	})
 12841  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12842  }
 12843  
 12844  // Do executes the "cloudchannel.operations.list" call.
 12845  // Any non-2xx status code is an error. Response headers are in either
 12846  // *GoogleLongrunningListOperationsResponse.ServerResponse.Header or (if a
 12847  // response was returned at all) in error.(*googleapi.Error).Header. Use
 12848  // googleapi.IsNotModified to check whether the returned error was because
 12849  // http.StatusNotModified was returned.
 12850  func (c *OperationsListCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningListOperationsResponse, error) {
 12851  	gensupport.SetOptions(c.urlParams_, opts...)
 12852  	res, err := c.doRequest("json")
 12853  	if res != nil && res.StatusCode == http.StatusNotModified {
 12854  		if res.Body != nil {
 12855  			res.Body.Close()
 12856  		}
 12857  		return nil, gensupport.WrapError(&googleapi.Error{
 12858  			Code:   res.StatusCode,
 12859  			Header: res.Header,
 12860  		})
 12861  	}
 12862  	if err != nil {
 12863  		return nil, err
 12864  	}
 12865  	defer googleapi.CloseBody(res)
 12866  	if err := googleapi.CheckResponse(res); err != nil {
 12867  		return nil, gensupport.WrapError(err)
 12868  	}
 12869  	ret := &GoogleLongrunningListOperationsResponse{
 12870  		ServerResponse: googleapi.ServerResponse{
 12871  			Header:         res.Header,
 12872  			HTTPStatusCode: res.StatusCode,
 12873  		},
 12874  	}
 12875  	target := &ret
 12876  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12877  		return nil, err
 12878  	}
 12879  	return ret, nil
 12880  }
 12881  
 12882  // Pages invokes f for each page of results.
 12883  // A non-nil error returned from f will halt the iteration.
 12884  // The provided context supersedes any context provided to the Context method.
 12885  func (c *OperationsListCall) Pages(ctx context.Context, f func(*GoogleLongrunningListOperationsResponse) error) error {
 12886  	c.ctx_ = ctx
 12887  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 12888  	for {
 12889  		x, err := c.Do()
 12890  		if err != nil {
 12891  			return err
 12892  		}
 12893  		if err := f(x); err != nil {
 12894  			return err
 12895  		}
 12896  		if x.NextPageToken == "" {
 12897  			return nil
 12898  		}
 12899  		c.PageToken(x.NextPageToken)
 12900  	}
 12901  }
 12902  
 12903  type ProductsListCall struct {
 12904  	s            *Service
 12905  	urlParams_   gensupport.URLParams
 12906  	ifNoneMatch_ string
 12907  	ctx_         context.Context
 12908  	header_      http.Header
 12909  }
 12910  
 12911  // List: Lists the Products the reseller is authorized to sell. Possible error
 12912  // codes: * INVALID_ARGUMENT: Required request parameters are missing or
 12913  // invalid.
 12914  func (r *ProductsService) List() *ProductsListCall {
 12915  	c := &ProductsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12916  	return c
 12917  }
 12918  
 12919  // Account sets the optional parameter "account": Required. The resource name
 12920  // of the reseller account. Format: accounts/{account_id}.
 12921  func (c *ProductsListCall) Account(account string) *ProductsListCall {
 12922  	c.urlParams_.Set("account", account)
 12923  	return c
 12924  }
 12925  
 12926  // LanguageCode sets the optional parameter "languageCode": The BCP-47 language
 12927  // code. For example, "en-US". The response will localize in the corresponding
 12928  // language code, if specified. The default value is "en-US".
 12929  func (c *ProductsListCall) LanguageCode(languageCode string) *ProductsListCall {
 12930  	c.urlParams_.Set("languageCode", languageCode)
 12931  	return c
 12932  }
 12933  
 12934  // PageSize sets the optional parameter "pageSize": Requested page size. Server
 12935  // might return fewer results than requested. If unspecified, returns at most
 12936  // 100 Products. The maximum value is 1000; the server will coerce values above
 12937  // 1000.
 12938  func (c *ProductsListCall) PageSize(pageSize int64) *ProductsListCall {
 12939  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 12940  	return c
 12941  }
 12942  
 12943  // PageToken sets the optional parameter "pageToken": A token for a page of
 12944  // results other than the first page.
 12945  func (c *ProductsListCall) PageToken(pageToken string) *ProductsListCall {
 12946  	c.urlParams_.Set("pageToken", pageToken)
 12947  	return c
 12948  }
 12949  
 12950  // Fields allows partial responses to be retrieved. See
 12951  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12952  // details.
 12953  func (c *ProductsListCall) Fields(s ...googleapi.Field) *ProductsListCall {
 12954  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12955  	return c
 12956  }
 12957  
 12958  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 12959  // object's ETag matches the given value. This is useful for getting updates
 12960  // only after the object has changed since the last request.
 12961  func (c *ProductsListCall) IfNoneMatch(entityTag string) *ProductsListCall {
 12962  	c.ifNoneMatch_ = entityTag
 12963  	return c
 12964  }
 12965  
 12966  // Context sets the context to be used in this call's Do method.
 12967  func (c *ProductsListCall) Context(ctx context.Context) *ProductsListCall {
 12968  	c.ctx_ = ctx
 12969  	return c
 12970  }
 12971  
 12972  // Header returns a http.Header that can be modified by the caller to add
 12973  // headers to the request.
 12974  func (c *ProductsListCall) Header() http.Header {
 12975  	if c.header_ == nil {
 12976  		c.header_ = make(http.Header)
 12977  	}
 12978  	return c.header_
 12979  }
 12980  
 12981  func (c *ProductsListCall) doRequest(alt string) (*http.Response, error) {
 12982  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 12983  	if c.ifNoneMatch_ != "" {
 12984  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 12985  	}
 12986  	var body io.Reader = nil
 12987  	c.urlParams_.Set("alt", alt)
 12988  	c.urlParams_.Set("prettyPrint", "false")
 12989  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/products")
 12990  	urls += "?" + c.urlParams_.Encode()
 12991  	req, err := http.NewRequest("GET", urls, body)
 12992  	if err != nil {
 12993  		return nil, err
 12994  	}
 12995  	req.Header = reqHeaders
 12996  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12997  }
 12998  
 12999  // Do executes the "cloudchannel.products.list" call.
 13000  // Any non-2xx status code is an error. Response headers are in either
 13001  // *GoogleCloudChannelV1ListProductsResponse.ServerResponse.Header or (if a
 13002  // response was returned at all) in error.(*googleapi.Error).Header. Use
 13003  // googleapi.IsNotModified to check whether the returned error was because
 13004  // http.StatusNotModified was returned.
 13005  func (c *ProductsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1ListProductsResponse, error) {
 13006  	gensupport.SetOptions(c.urlParams_, opts...)
 13007  	res, err := c.doRequest("json")
 13008  	if res != nil && res.StatusCode == http.StatusNotModified {
 13009  		if res.Body != nil {
 13010  			res.Body.Close()
 13011  		}
 13012  		return nil, gensupport.WrapError(&googleapi.Error{
 13013  			Code:   res.StatusCode,
 13014  			Header: res.Header,
 13015  		})
 13016  	}
 13017  	if err != nil {
 13018  		return nil, err
 13019  	}
 13020  	defer googleapi.CloseBody(res)
 13021  	if err := googleapi.CheckResponse(res); err != nil {
 13022  		return nil, gensupport.WrapError(err)
 13023  	}
 13024  	ret := &GoogleCloudChannelV1ListProductsResponse{
 13025  		ServerResponse: googleapi.ServerResponse{
 13026  			Header:         res.Header,
 13027  			HTTPStatusCode: res.StatusCode,
 13028  		},
 13029  	}
 13030  	target := &ret
 13031  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13032  		return nil, err
 13033  	}
 13034  	return ret, nil
 13035  }
 13036  
 13037  // Pages invokes f for each page of results.
 13038  // A non-nil error returned from f will halt the iteration.
 13039  // The provided context supersedes any context provided to the Context method.
 13040  func (c *ProductsListCall) Pages(ctx context.Context, f func(*GoogleCloudChannelV1ListProductsResponse) error) error {
 13041  	c.ctx_ = ctx
 13042  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 13043  	for {
 13044  		x, err := c.Do()
 13045  		if err != nil {
 13046  			return err
 13047  		}
 13048  		if err := f(x); err != nil {
 13049  			return err
 13050  		}
 13051  		if x.NextPageToken == "" {
 13052  			return nil
 13053  		}
 13054  		c.PageToken(x.NextPageToken)
 13055  	}
 13056  }
 13057  
 13058  type ProductsSkusListCall struct {
 13059  	s            *Service
 13060  	parent       string
 13061  	urlParams_   gensupport.URLParams
 13062  	ifNoneMatch_ string
 13063  	ctx_         context.Context
 13064  	header_      http.Header
 13065  }
 13066  
 13067  // List: Lists the SKUs for a product the reseller is authorized to sell.
 13068  // Possible error codes: * INVALID_ARGUMENT: Required request parameters are
 13069  // missing or invalid.
 13070  //
 13071  //   - parent: The resource name of the Product to list SKUs for. Parent uses the
 13072  //     format: products/{product_id}. Supports products/- to retrieve SKUs for
 13073  //     all products.
 13074  func (r *ProductsSkusService) List(parent string) *ProductsSkusListCall {
 13075  	c := &ProductsSkusListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13076  	c.parent = parent
 13077  	return c
 13078  }
 13079  
 13080  // Account sets the optional parameter "account": Required. Resource name of
 13081  // the reseller. Format: accounts/{account_id}.
 13082  func (c *ProductsSkusListCall) Account(account string) *ProductsSkusListCall {
 13083  	c.urlParams_.Set("account", account)
 13084  	return c
 13085  }
 13086  
 13087  // LanguageCode sets the optional parameter "languageCode": The BCP-47 language
 13088  // code. For example, "en-US". The response will localize in the corresponding
 13089  // language code, if specified. The default value is "en-US".
 13090  func (c *ProductsSkusListCall) LanguageCode(languageCode string) *ProductsSkusListCall {
 13091  	c.urlParams_.Set("languageCode", languageCode)
 13092  	return c
 13093  }
 13094  
 13095  // PageSize sets the optional parameter "pageSize": Requested page size. Server
 13096  // might return fewer results than requested. If unspecified, returns at most
 13097  // 100 SKUs. The maximum value is 1000; the server will coerce values above
 13098  // 1000.
 13099  func (c *ProductsSkusListCall) PageSize(pageSize int64) *ProductsSkusListCall {
 13100  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 13101  	return c
 13102  }
 13103  
 13104  // PageToken sets the optional parameter "pageToken": A token for a page of
 13105  // results other than the first page. Optional.
 13106  func (c *ProductsSkusListCall) PageToken(pageToken string) *ProductsSkusListCall {
 13107  	c.urlParams_.Set("pageToken", pageToken)
 13108  	return c
 13109  }
 13110  
 13111  // Fields allows partial responses to be retrieved. See
 13112  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13113  // details.
 13114  func (c *ProductsSkusListCall) Fields(s ...googleapi.Field) *ProductsSkusListCall {
 13115  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13116  	return c
 13117  }
 13118  
 13119  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 13120  // object's ETag matches the given value. This is useful for getting updates
 13121  // only after the object has changed since the last request.
 13122  func (c *ProductsSkusListCall) IfNoneMatch(entityTag string) *ProductsSkusListCall {
 13123  	c.ifNoneMatch_ = entityTag
 13124  	return c
 13125  }
 13126  
 13127  // Context sets the context to be used in this call's Do method.
 13128  func (c *ProductsSkusListCall) Context(ctx context.Context) *ProductsSkusListCall {
 13129  	c.ctx_ = ctx
 13130  	return c
 13131  }
 13132  
 13133  // Header returns a http.Header that can be modified by the caller to add
 13134  // headers to the request.
 13135  func (c *ProductsSkusListCall) Header() http.Header {
 13136  	if c.header_ == nil {
 13137  		c.header_ = make(http.Header)
 13138  	}
 13139  	return c.header_
 13140  }
 13141  
 13142  func (c *ProductsSkusListCall) doRequest(alt string) (*http.Response, error) {
 13143  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 13144  	if c.ifNoneMatch_ != "" {
 13145  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 13146  	}
 13147  	var body io.Reader = nil
 13148  	c.urlParams_.Set("alt", alt)
 13149  	c.urlParams_.Set("prettyPrint", "false")
 13150  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/skus")
 13151  	urls += "?" + c.urlParams_.Encode()
 13152  	req, err := http.NewRequest("GET", urls, body)
 13153  	if err != nil {
 13154  		return nil, err
 13155  	}
 13156  	req.Header = reqHeaders
 13157  	googleapi.Expand(req.URL, map[string]string{
 13158  		"parent": c.parent,
 13159  	})
 13160  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13161  }
 13162  
 13163  // Do executes the "cloudchannel.products.skus.list" call.
 13164  // Any non-2xx status code is an error. Response headers are in either
 13165  // *GoogleCloudChannelV1ListSkusResponse.ServerResponse.Header or (if a
 13166  // response was returned at all) in error.(*googleapi.Error).Header. Use
 13167  // googleapi.IsNotModified to check whether the returned error was because
 13168  // http.StatusNotModified was returned.
 13169  func (c *ProductsSkusListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudChannelV1ListSkusResponse, error) {
 13170  	gensupport.SetOptions(c.urlParams_, opts...)
 13171  	res, err := c.doRequest("json")
 13172  	if res != nil && res.StatusCode == http.StatusNotModified {
 13173  		if res.Body != nil {
 13174  			res.Body.Close()
 13175  		}
 13176  		return nil, gensupport.WrapError(&googleapi.Error{
 13177  			Code:   res.StatusCode,
 13178  			Header: res.Header,
 13179  		})
 13180  	}
 13181  	if err != nil {
 13182  		return nil, err
 13183  	}
 13184  	defer googleapi.CloseBody(res)
 13185  	if err := googleapi.CheckResponse(res); err != nil {
 13186  		return nil, gensupport.WrapError(err)
 13187  	}
 13188  	ret := &GoogleCloudChannelV1ListSkusResponse{
 13189  		ServerResponse: googleapi.ServerResponse{
 13190  			Header:         res.Header,
 13191  			HTTPStatusCode: res.StatusCode,
 13192  		},
 13193  	}
 13194  	target := &ret
 13195  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13196  		return nil, err
 13197  	}
 13198  	return ret, nil
 13199  }
 13200  
 13201  // Pages invokes f for each page of results.
 13202  // A non-nil error returned from f will halt the iteration.
 13203  // The provided context supersedes any context provided to the Context method.
 13204  func (c *ProductsSkusListCall) Pages(ctx context.Context, f func(*GoogleCloudChannelV1ListSkusResponse) error) error {
 13205  	c.ctx_ = ctx
 13206  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 13207  	for {
 13208  		x, err := c.Do()
 13209  		if err != nil {
 13210  			return err
 13211  		}
 13212  		if err := f(x); err != nil {
 13213  			return err
 13214  		}
 13215  		if x.NextPageToken == "" {
 13216  			return nil
 13217  		}
 13218  		c.PageToken(x.NextPageToken)
 13219  	}
 13220  }
 13221  

View as plain text