808 lines
		
	
	
		
			52 KiB
		
	
	
	
		
			Ruby
		
	
	
	
			
		
		
	
	
			808 lines
		
	
	
		
			52 KiB
		
	
	
	
		
			Ruby
		
	
	
	
| # Copyright 2020 Google LLC
 | ||
| #
 | ||
| # Licensed under the Apache License, Version 2.0 (the "License");
 | ||
| # you may not use this file except in compliance with the License.
 | ||
| # You may obtain a copy of the License at
 | ||
| #
 | ||
| #      http://www.apache.org/licenses/LICENSE-2.0
 | ||
| #
 | ||
| # Unless required by applicable law or agreed to in writing, software
 | ||
| # distributed under the License is distributed on an "AS IS" BASIS,
 | ||
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | ||
| # See the License for the specific language governing permissions and
 | ||
| # limitations under the License.
 | ||
| 
 | ||
| require 'google/apis/core/base_service'
 | ||
| require 'google/apis/core/json_representation'
 | ||
| require 'google/apis/core/hashable'
 | ||
| require 'google/apis/errors'
 | ||
| 
 | ||
| module Google
 | ||
|   module Apis
 | ||
|     module ResellerV1
 | ||
|       # Google Workspace Reseller API
 | ||
|       #
 | ||
|       # Perform common functions that are available on the Channel Services console at
 | ||
|       #  scale, like placing orders and viewing customer information
 | ||
|       #
 | ||
|       # @example
 | ||
|       #    require 'google/apis/reseller_v1'
 | ||
|       #
 | ||
|       #    Reseller = Google::Apis::ResellerV1 # Alias the module
 | ||
|       #    service = Reseller::ResellerService.new
 | ||
|       #
 | ||
|       # @see https://developers.google.com/google-apps/reseller/
 | ||
|       class ResellerService < Google::Apis::Core::BaseService
 | ||
|         # @return [String]
 | ||
|         #  API key. Your API key identifies your project and provides you with API access,
 | ||
|         #  quota, and reports. Required unless you provide an OAuth 2.0 token.
 | ||
|         attr_accessor :key
 | ||
| 
 | ||
|         # @return [String]
 | ||
|         #  Available to use for quota purposes for server-side applications. Can be any
 | ||
|         #  arbitrary string assigned to a user, but should not exceed 40 characters.
 | ||
|         attr_accessor :quota_user
 | ||
| 
 | ||
|         def initialize
 | ||
|           super('https://reseller.googleapis.com/', '',
 | ||
|                 client_name: 'google-apis-reseller_v1',
 | ||
|                 client_version: Google::Apis::ResellerV1::GEM_VERSION)
 | ||
|           @batch_path = 'batch'
 | ||
|         end
 | ||
|         
 | ||
|         # Gets a customer account. Use this operation to see a customer account already
 | ||
|         # in your reseller management, or to see the minimal account information for an
 | ||
|         # existing customer that you do not manage. For more information about the API
 | ||
|         # response for existing customers, see [retrieving a customer account](/admin-
 | ||
|         # sdk/reseller/v1/how-tos/manage_customers#get_customer).
 | ||
|         # @param [String] customer_id
 | ||
|         #   This can be either the customer's primary domain name or the customer's unique
 | ||
|         #   identifier. If the domain name for a customer changes, the old domain name
 | ||
|         #   cannot be used to access the customer, but the customer's unique identifier (
 | ||
|         #   as returned by the API) can always be used. We recommend storing the unique
 | ||
|         #   identifier in your systems where applicable.
 | ||
|         # @param [String] fields
 | ||
|         #   Selector specifying which fields to include in a partial response.
 | ||
|         # @param [String] quota_user
 | ||
|         #   Available to use for quota purposes for server-side applications. Can be any
 | ||
|         #   arbitrary string assigned to a user, but should not exceed 40 characters.
 | ||
|         # @param [Google::Apis::RequestOptions] options
 | ||
|         #   Request-specific options
 | ||
|         #
 | ||
|         # @yield [result, err] Result & error if block supplied
 | ||
|         # @yieldparam result [Google::Apis::ResellerV1::Customer] parsed result object
 | ||
|         # @yieldparam err [StandardError] error object if request failed
 | ||
|         #
 | ||
|         # @return [Google::Apis::ResellerV1::Customer]
 | ||
|         #
 | ||
|         # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
 | ||
|         # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
 | ||
|         # @raise [Google::Apis::AuthorizationError] Authorization is required
 | ||
|         def get_customer(customer_id, fields: nil, quota_user: nil, options: nil, &block)
 | ||
|           command = make_simple_command(:get, 'apps/reseller/v1/customers/{customerId}', options)
 | ||
|           command.response_representation = Google::Apis::ResellerV1::Customer::Representation
 | ||
|           command.response_class = Google::Apis::ResellerV1::Customer
 | ||
|           command.params['customerId'] = customer_id unless customer_id.nil?
 | ||
|           command.query['fields'] = fields unless fields.nil?
 | ||
|           command.query['quotaUser'] = quota_user unless quota_user.nil?
 | ||
|           execute_or_queue_command(command, &block)
 | ||
|         end
 | ||
|         
 | ||
|         # Orders a new customer's account. Before ordering a new customer account,
 | ||
|         # establish whether the customer account already exists using the [`customers.
 | ||
|         # get`](/admin-sdk/reseller/v1/reference/customers/get) If the customer account
 | ||
|         # exists as a direct Google account or as a resold customer account from another
 | ||
|         # reseller, use the `customerAuthToken\` as described in [order a resold account
 | ||
|         # for an existing customer](/admin-sdk/reseller/v1/how-tos/manage_customers#
 | ||
|         # create_existing_customer). For more information about ordering a new customer
 | ||
|         # account, see [order a new customer account](/admin-sdk/reseller/v1/how-tos/
 | ||
|         # manage_customers#create_customer). After creating a new customer account, you
 | ||
|         # must provision a user as an administrator. The customer's administrator is
 | ||
|         # required to sign in to the Admin console and sign the G Suite via Reseller
 | ||
|         # agreement to activate the account. Resellers are prohibited from signing the G
 | ||
|         # Suite via Reseller agreement on the customer's behalf. For more information,
 | ||
|         # see [order a new customer account](/admin-sdk/reseller/v1/how-tos/
 | ||
|         # manage_customers#tos).
 | ||
|         # @param [Google::Apis::ResellerV1::Customer] customer_object
 | ||
|         # @param [String] customer_auth_token
 | ||
|         #   The `customerAuthToken` query string is required when creating a resold
 | ||
|         #   account that transfers a direct customer's subscription or transfers another
 | ||
|         #   reseller customer's subscription to your reseller management. This is a
 | ||
|         #   hexadecimal authentication token needed to complete the subscription transfer.
 | ||
|         #   For more information, see the administrator help center.
 | ||
|         # @param [String] fields
 | ||
|         #   Selector specifying which fields to include in a partial response.
 | ||
|         # @param [String] quota_user
 | ||
|         #   Available to use for quota purposes for server-side applications. Can be any
 | ||
|         #   arbitrary string assigned to a user, but should not exceed 40 characters.
 | ||
|         # @param [Google::Apis::RequestOptions] options
 | ||
|         #   Request-specific options
 | ||
|         #
 | ||
|         # @yield [result, err] Result & error if block supplied
 | ||
|         # @yieldparam result [Google::Apis::ResellerV1::Customer] parsed result object
 | ||
|         # @yieldparam err [StandardError] error object if request failed
 | ||
|         #
 | ||
|         # @return [Google::Apis::ResellerV1::Customer]
 | ||
|         #
 | ||
|         # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
 | ||
|         # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
 | ||
|         # @raise [Google::Apis::AuthorizationError] Authorization is required
 | ||
|         def insert_customer(customer_object = nil, customer_auth_token: nil, fields: nil, quota_user: nil, options: nil, &block)
 | ||
|           command = make_simple_command(:post, 'apps/reseller/v1/customers', options)
 | ||
|           command.request_representation = Google::Apis::ResellerV1::Customer::Representation
 | ||
|           command.request_object = customer_object
 | ||
|           command.response_representation = Google::Apis::ResellerV1::Customer::Representation
 | ||
|           command.response_class = Google::Apis::ResellerV1::Customer
 | ||
|           command.query['customerAuthToken'] = customer_auth_token unless customer_auth_token.nil?
 | ||
|           command.query['fields'] = fields unless fields.nil?
 | ||
|           command.query['quotaUser'] = quota_user unless quota_user.nil?
 | ||
|           execute_or_queue_command(command, &block)
 | ||
|         end
 | ||
|         
 | ||
|         # Updates a customer account's settings. This method supports patch semantics.
 | ||
|         # You cannot update `customerType` via the Reseller API, but a `"team"` customer
 | ||
|         # can verify their domain and become `customerType = "domain"`. For more
 | ||
|         # information, see [Verify your domain to unlock Essentials features](https://
 | ||
|         # support.google.com/a/answer/9122284).
 | ||
|         # @param [String] customer_id
 | ||
|         #   This can be either the customer's primary domain name or the customer's unique
 | ||
|         #   identifier. If the domain name for a customer changes, the old domain name
 | ||
|         #   cannot be used to access the customer, but the customer's unique identifier (
 | ||
|         #   as returned by the API) can always be used. We recommend storing the unique
 | ||
|         #   identifier in your systems where applicable.
 | ||
|         # @param [Google::Apis::ResellerV1::Customer] customer_object
 | ||
|         # @param [String] fields
 | ||
|         #   Selector specifying which fields to include in a partial response.
 | ||
|         # @param [String] quota_user
 | ||
|         #   Available to use for quota purposes for server-side applications. Can be any
 | ||
|         #   arbitrary string assigned to a user, but should not exceed 40 characters.
 | ||
|         # @param [Google::Apis::RequestOptions] options
 | ||
|         #   Request-specific options
 | ||
|         #
 | ||
|         # @yield [result, err] Result & error if block supplied
 | ||
|         # @yieldparam result [Google::Apis::ResellerV1::Customer] parsed result object
 | ||
|         # @yieldparam err [StandardError] error object if request failed
 | ||
|         #
 | ||
|         # @return [Google::Apis::ResellerV1::Customer]
 | ||
|         #
 | ||
|         # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
 | ||
|         # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
 | ||
|         # @raise [Google::Apis::AuthorizationError] Authorization is required
 | ||
|         def patch_customer(customer_id, customer_object = nil, fields: nil, quota_user: nil, options: nil, &block)
 | ||
|           command = make_simple_command(:patch, 'apps/reseller/v1/customers/{customerId}', options)
 | ||
|           command.request_representation = Google::Apis::ResellerV1::Customer::Representation
 | ||
|           command.request_object = customer_object
 | ||
|           command.response_representation = Google::Apis::ResellerV1::Customer::Representation
 | ||
|           command.response_class = Google::Apis::ResellerV1::Customer
 | ||
|           command.params['customerId'] = customer_id unless customer_id.nil?
 | ||
|           command.query['fields'] = fields unless fields.nil?
 | ||
|           command.query['quotaUser'] = quota_user unless quota_user.nil?
 | ||
|           execute_or_queue_command(command, &block)
 | ||
|         end
 | ||
|         
 | ||
|         # Updates a customer account's settings. You cannot update `customerType` via
 | ||
|         # the Reseller API, but a `"team"` customer can verify their domain and become `
 | ||
|         # customerType = "domain"`. For more information, see [update a customer's
 | ||
|         # settings](/admin-sdk/reseller/v1/how-tos/manage_customers#update_customer).
 | ||
|         # @param [String] customer_id
 | ||
|         #   This can be either the customer's primary domain name or the customer's unique
 | ||
|         #   identifier. If the domain name for a customer changes, the old domain name
 | ||
|         #   cannot be used to access the customer, but the customer's unique identifier (
 | ||
|         #   as returned by the API) can always be used. We recommend storing the unique
 | ||
|         #   identifier in your systems where applicable.
 | ||
|         # @param [Google::Apis::ResellerV1::Customer] customer_object
 | ||
|         # @param [String] fields
 | ||
|         #   Selector specifying which fields to include in a partial response.
 | ||
|         # @param [String] quota_user
 | ||
|         #   Available to use for quota purposes for server-side applications. Can be any
 | ||
|         #   arbitrary string assigned to a user, but should not exceed 40 characters.
 | ||
|         # @param [Google::Apis::RequestOptions] options
 | ||
|         #   Request-specific options
 | ||
|         #
 | ||
|         # @yield [result, err] Result & error if block supplied
 | ||
|         # @yieldparam result [Google::Apis::ResellerV1::Customer] parsed result object
 | ||
|         # @yieldparam err [StandardError] error object if request failed
 | ||
|         #
 | ||
|         # @return [Google::Apis::ResellerV1::Customer]
 | ||
|         #
 | ||
|         # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
 | ||
|         # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
 | ||
|         # @raise [Google::Apis::AuthorizationError] Authorization is required
 | ||
|         def update_customer(customer_id, customer_object = nil, fields: nil, quota_user: nil, options: nil, &block)
 | ||
|           command = make_simple_command(:put, 'apps/reseller/v1/customers/{customerId}', options)
 | ||
|           command.request_representation = Google::Apis::ResellerV1::Customer::Representation
 | ||
|           command.request_object = customer_object
 | ||
|           command.response_representation = Google::Apis::ResellerV1::Customer::Representation
 | ||
|           command.response_class = Google::Apis::ResellerV1::Customer
 | ||
|           command.params['customerId'] = customer_id unless customer_id.nil?
 | ||
|           command.query['fields'] = fields unless fields.nil?
 | ||
|           command.query['quotaUser'] = quota_user unless quota_user.nil?
 | ||
|           execute_or_queue_command(command, &block)
 | ||
|         end
 | ||
|         
 | ||
|         # Returns all the details of the watch corresponding to the reseller.
 | ||
|         # @param [String] fields
 | ||
|         #   Selector specifying which fields to include in a partial response.
 | ||
|         # @param [String] quota_user
 | ||
|         #   Available to use for quota purposes for server-side applications. Can be any
 | ||
|         #   arbitrary string assigned to a user, but should not exceed 40 characters.
 | ||
|         # @param [Google::Apis::RequestOptions] options
 | ||
|         #   Request-specific options
 | ||
|         #
 | ||
|         # @yield [result, err] Result & error if block supplied
 | ||
|         # @yieldparam result [Google::Apis::ResellerV1::ResellernotifyGetwatchdetailsResponse] parsed result object
 | ||
|         # @yieldparam err [StandardError] error object if request failed
 | ||
|         #
 | ||
|         # @return [Google::Apis::ResellerV1::ResellernotifyGetwatchdetailsResponse]
 | ||
|         #
 | ||
|         # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
 | ||
|         # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
 | ||
|         # @raise [Google::Apis::AuthorizationError] Authorization is required
 | ||
|         def getwatchdetails_resellernotify(fields: nil, quota_user: nil, options: nil, &block)
 | ||
|           command = make_simple_command(:get, 'apps/reseller/v1/resellernotify/getwatchdetails', options)
 | ||
|           command.response_representation = Google::Apis::ResellerV1::ResellernotifyGetwatchdetailsResponse::Representation
 | ||
|           command.response_class = Google::Apis::ResellerV1::ResellernotifyGetwatchdetailsResponse
 | ||
|           command.query['fields'] = fields unless fields.nil?
 | ||
|           command.query['quotaUser'] = quota_user unless quota_user.nil?
 | ||
|           execute_or_queue_command(command, &block)
 | ||
|         end
 | ||
|         
 | ||
|         # Registers a Reseller for receiving notifications.
 | ||
|         # @param [String] service_account_email_address
 | ||
|         #   The service account which will own the created Cloud-PubSub topic.
 | ||
|         # @param [String] fields
 | ||
|         #   Selector specifying which fields to include in a partial response.
 | ||
|         # @param [String] quota_user
 | ||
|         #   Available to use for quota purposes for server-side applications. Can be any
 | ||
|         #   arbitrary string assigned to a user, but should not exceed 40 characters.
 | ||
|         # @param [Google::Apis::RequestOptions] options
 | ||
|         #   Request-specific options
 | ||
|         #
 | ||
|         # @yield [result, err] Result & error if block supplied
 | ||
|         # @yieldparam result [Google::Apis::ResellerV1::ResellernotifyResource] parsed result object
 | ||
|         # @yieldparam err [StandardError] error object if request failed
 | ||
|         #
 | ||
|         # @return [Google::Apis::ResellerV1::ResellernotifyResource]
 | ||
|         #
 | ||
|         # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
 | ||
|         # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
 | ||
|         # @raise [Google::Apis::AuthorizationError] Authorization is required
 | ||
|         def register_resellernotify(service_account_email_address: nil, fields: nil, quota_user: nil, options: nil, &block)
 | ||
|           command = make_simple_command(:post, 'apps/reseller/v1/resellernotify/register', options)
 | ||
|           command.response_representation = Google::Apis::ResellerV1::ResellernotifyResource::Representation
 | ||
|           command.response_class = Google::Apis::ResellerV1::ResellernotifyResource
 | ||
|           command.query['serviceAccountEmailAddress'] = service_account_email_address unless service_account_email_address.nil?
 | ||
|           command.query['fields'] = fields unless fields.nil?
 | ||
|           command.query['quotaUser'] = quota_user unless quota_user.nil?
 | ||
|           execute_or_queue_command(command, &block)
 | ||
|         end
 | ||
|         
 | ||
|         # Unregisters a Reseller for receiving notifications.
 | ||
|         # @param [String] service_account_email_address
 | ||
|         #   The service account which owns the Cloud-PubSub topic.
 | ||
|         # @param [String] fields
 | ||
|         #   Selector specifying which fields to include in a partial response.
 | ||
|         # @param [String] quota_user
 | ||
|         #   Available to use for quota purposes for server-side applications. Can be any
 | ||
|         #   arbitrary string assigned to a user, but should not exceed 40 characters.
 | ||
|         # @param [Google::Apis::RequestOptions] options
 | ||
|         #   Request-specific options
 | ||
|         #
 | ||
|         # @yield [result, err] Result & error if block supplied
 | ||
|         # @yieldparam result [Google::Apis::ResellerV1::ResellernotifyResource] parsed result object
 | ||
|         # @yieldparam err [StandardError] error object if request failed
 | ||
|         #
 | ||
|         # @return [Google::Apis::ResellerV1::ResellernotifyResource]
 | ||
|         #
 | ||
|         # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
 | ||
|         # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
 | ||
|         # @raise [Google::Apis::AuthorizationError] Authorization is required
 | ||
|         def unregister_resellernotify(service_account_email_address: nil, fields: nil, quota_user: nil, options: nil, &block)
 | ||
|           command = make_simple_command(:post, 'apps/reseller/v1/resellernotify/unregister', options)
 | ||
|           command.response_representation = Google::Apis::ResellerV1::ResellernotifyResource::Representation
 | ||
|           command.response_class = Google::Apis::ResellerV1::ResellernotifyResource
 | ||
|           command.query['serviceAccountEmailAddress'] = service_account_email_address unless service_account_email_address.nil?
 | ||
|           command.query['fields'] = fields unless fields.nil?
 | ||
|           command.query['quotaUser'] = quota_user unless quota_user.nil?
 | ||
|           execute_or_queue_command(command, &block)
 | ||
|         end
 | ||
|         
 | ||
|         # Activates a subscription previously suspended by the reseller. If you did not
 | ||
|         # suspend the customer subscription and it is suspended for any other reason,
 | ||
|         # such as for abuse or a pending ToS acceptance, this call will not reactivate
 | ||
|         # the customer subscription.
 | ||
|         # @param [String] customer_id
 | ||
|         #   This can be either the customer's primary domain name or the customer's unique
 | ||
|         #   identifier. If the domain name for a customer changes, the old domain name
 | ||
|         #   cannot be used to access the customer, but the customer's unique identifier (
 | ||
|         #   as returned by the API) can always be used. We recommend storing the unique
 | ||
|         #   identifier in your systems where applicable.
 | ||
|         # @param [String] subscription_id
 | ||
|         #   This is a required property. The `subscriptionId` is the subscription
 | ||
|         #   identifier and is unique for each customer. Since a `subscriptionId` changes
 | ||
|         #   when a subscription is updated, we recommend to not use this ID as a key for
 | ||
|         #   persistent data. And the `subscriptionId` can be found using the retrieve all
 | ||
|         #   reseller subscriptions method.
 | ||
|         # @param [String] fields
 | ||
|         #   Selector specifying which fields to include in a partial response.
 | ||
|         # @param [String] quota_user
 | ||
|         #   Available to use for quota purposes for server-side applications. Can be any
 | ||
|         #   arbitrary string assigned to a user, but should not exceed 40 characters.
 | ||
|         # @param [Google::Apis::RequestOptions] options
 | ||
|         #   Request-specific options
 | ||
|         #
 | ||
|         # @yield [result, err] Result & error if block supplied
 | ||
|         # @yieldparam result [Google::Apis::ResellerV1::Subscription] parsed result object
 | ||
|         # @yieldparam err [StandardError] error object if request failed
 | ||
|         #
 | ||
|         # @return [Google::Apis::ResellerV1::Subscription]
 | ||
|         #
 | ||
|         # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
 | ||
|         # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
 | ||
|         # @raise [Google::Apis::AuthorizationError] Authorization is required
 | ||
|         def activate_subscription(customer_id, subscription_id, fields: nil, quota_user: nil, options: nil, &block)
 | ||
|           command = make_simple_command(:post, 'apps/reseller/v1/customers/{customerId}/subscriptions/{subscriptionId}/activate', options)
 | ||
|           command.response_representation = Google::Apis::ResellerV1::Subscription::Representation
 | ||
|           command.response_class = Google::Apis::ResellerV1::Subscription
 | ||
|           command.params['customerId'] = customer_id unless customer_id.nil?
 | ||
|           command.params['subscriptionId'] = subscription_id unless subscription_id.nil?
 | ||
|           command.query['fields'] = fields unless fields.nil?
 | ||
|           command.query['quotaUser'] = quota_user unless quota_user.nil?
 | ||
|           execute_or_queue_command(command, &block)
 | ||
|         end
 | ||
|         
 | ||
|         # Updates a subscription plan. Use this method to update a plan for a 30-day
 | ||
|         # trial or a flexible plan subscription to an annual commitment plan with
 | ||
|         # monthly or yearly payments. How a plan is updated differs depending on the
 | ||
|         # plan and the products. For more information, see the description in [manage
 | ||
|         # subscriptions](/admin-sdk/reseller/v1/how-tos/manage_subscriptions#
 | ||
|         # update_subscription_plan).
 | ||
|         # @param [String] customer_id
 | ||
|         #   This can be either the customer's primary domain name or the customer's unique
 | ||
|         #   identifier. If the domain name for a customer changes, the old domain name
 | ||
|         #   cannot be used to access the customer, but the customer's unique identifier (
 | ||
|         #   as returned by the API) can always be used. We recommend storing the unique
 | ||
|         #   identifier in your systems where applicable.
 | ||
|         # @param [String] subscription_id
 | ||
|         #   This is a required property. The `subscriptionId` is the subscription
 | ||
|         #   identifier and is unique for each customer. Since a `subscriptionId` changes
 | ||
|         #   when a subscription is updated, we recommend to not use this ID as a key for
 | ||
|         #   persistent data. And the `subscriptionId` can be found using the retrieve all
 | ||
|         #   reseller subscriptions method.
 | ||
|         # @param [Google::Apis::ResellerV1::ChangePlanRequest] change_plan_request_object
 | ||
|         # @param [String] fields
 | ||
|         #   Selector specifying which fields to include in a partial response.
 | ||
|         # @param [String] quota_user
 | ||
|         #   Available to use for quota purposes for server-side applications. Can be any
 | ||
|         #   arbitrary string assigned to a user, but should not exceed 40 characters.
 | ||
|         # @param [Google::Apis::RequestOptions] options
 | ||
|         #   Request-specific options
 | ||
|         #
 | ||
|         # @yield [result, err] Result & error if block supplied
 | ||
|         # @yieldparam result [Google::Apis::ResellerV1::Subscription] parsed result object
 | ||
|         # @yieldparam err [StandardError] error object if request failed
 | ||
|         #
 | ||
|         # @return [Google::Apis::ResellerV1::Subscription]
 | ||
|         #
 | ||
|         # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
 | ||
|         # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
 | ||
|         # @raise [Google::Apis::AuthorizationError] Authorization is required
 | ||
|         def change_subscription_plan(customer_id, subscription_id, change_plan_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
 | ||
|           command = make_simple_command(:post, 'apps/reseller/v1/customers/{customerId}/subscriptions/{subscriptionId}/changePlan', options)
 | ||
|           command.request_representation = Google::Apis::ResellerV1::ChangePlanRequest::Representation
 | ||
|           command.request_object = change_plan_request_object
 | ||
|           command.response_representation = Google::Apis::ResellerV1::Subscription::Representation
 | ||
|           command.response_class = Google::Apis::ResellerV1::Subscription
 | ||
|           command.params['customerId'] = customer_id unless customer_id.nil?
 | ||
|           command.params['subscriptionId'] = subscription_id unless subscription_id.nil?
 | ||
|           command.query['fields'] = fields unless fields.nil?
 | ||
|           command.query['quotaUser'] = quota_user unless quota_user.nil?
 | ||
|           execute_or_queue_command(command, &block)
 | ||
|         end
 | ||
|         
 | ||
|         # Updates a user license's renewal settings. This is applicable for accounts
 | ||
|         # with annual commitment plans only. For more information, see the description
 | ||
|         # in [manage subscriptions](/admin-sdk/reseller/v1/how-tos/manage_subscriptions#
 | ||
|         # update_renewal).
 | ||
|         # @param [String] customer_id
 | ||
|         #   This can be either the customer's primary domain name or the customer's unique
 | ||
|         #   identifier. If the domain name for a customer changes, the old domain name
 | ||
|         #   cannot be used to access the customer, but the customer's unique identifier (
 | ||
|         #   as returned by the API) can always be used. We recommend storing the unique
 | ||
|         #   identifier in your systems where applicable.
 | ||
|         # @param [String] subscription_id
 | ||
|         #   This is a required property. The `subscriptionId` is the subscription
 | ||
|         #   identifier and is unique for each customer. Since a `subscriptionId` changes
 | ||
|         #   when a subscription is updated, we recommend to not use this ID as a key for
 | ||
|         #   persistent data. And the `subscriptionId` can be found using the retrieve all
 | ||
|         #   reseller subscriptions method.
 | ||
|         # @param [Google::Apis::ResellerV1::RenewalSettings] renewal_settings_object
 | ||
|         # @param [String] fields
 | ||
|         #   Selector specifying which fields to include in a partial response.
 | ||
|         # @param [String] quota_user
 | ||
|         #   Available to use for quota purposes for server-side applications. Can be any
 | ||
|         #   arbitrary string assigned to a user, but should not exceed 40 characters.
 | ||
|         # @param [Google::Apis::RequestOptions] options
 | ||
|         #   Request-specific options
 | ||
|         #
 | ||
|         # @yield [result, err] Result & error if block supplied
 | ||
|         # @yieldparam result [Google::Apis::ResellerV1::Subscription] parsed result object
 | ||
|         # @yieldparam err [StandardError] error object if request failed
 | ||
|         #
 | ||
|         # @return [Google::Apis::ResellerV1::Subscription]
 | ||
|         #
 | ||
|         # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
 | ||
|         # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
 | ||
|         # @raise [Google::Apis::AuthorizationError] Authorization is required
 | ||
|         def change_subscription_renewal_settings(customer_id, subscription_id, renewal_settings_object = nil, fields: nil, quota_user: nil, options: nil, &block)
 | ||
|           command = make_simple_command(:post, 'apps/reseller/v1/customers/{customerId}/subscriptions/{subscriptionId}/changeRenewalSettings', options)
 | ||
|           command.request_representation = Google::Apis::ResellerV1::RenewalSettings::Representation
 | ||
|           command.request_object = renewal_settings_object
 | ||
|           command.response_representation = Google::Apis::ResellerV1::Subscription::Representation
 | ||
|           command.response_class = Google::Apis::ResellerV1::Subscription
 | ||
|           command.params['customerId'] = customer_id unless customer_id.nil?
 | ||
|           command.params['subscriptionId'] = subscription_id unless subscription_id.nil?
 | ||
|           command.query['fields'] = fields unless fields.nil?
 | ||
|           command.query['quotaUser'] = quota_user unless quota_user.nil?
 | ||
|           execute_or_queue_command(command, &block)
 | ||
|         end
 | ||
|         
 | ||
|         # Updates a subscription's user license settings. For more information about
 | ||
|         # updating an annual commitment plan or a flexible plan subscription’s licenses,
 | ||
|         # see [Manage Subscriptions](/admin-sdk/reseller/v1/how-tos/manage_subscriptions#
 | ||
|         # update_subscription_seat).
 | ||
|         # @param [String] customer_id
 | ||
|         #   This can be either the customer's primary domain name or the customer's unique
 | ||
|         #   identifier. If the domain name for a customer changes, the old domain name
 | ||
|         #   cannot be used to access the customer, but the customer's unique identifier (
 | ||
|         #   as returned by the API) can always be used. We recommend storing the unique
 | ||
|         #   identifier in your systems where applicable.
 | ||
|         # @param [String] subscription_id
 | ||
|         #   This is a required property. The `subscriptionId` is the subscription
 | ||
|         #   identifier and is unique for each customer. Since a `subscriptionId` changes
 | ||
|         #   when a subscription is updated, we recommend to not use this ID as a key for
 | ||
|         #   persistent data. And the `subscriptionId` can be found using the retrieve all
 | ||
|         #   reseller subscriptions method.
 | ||
|         # @param [Google::Apis::ResellerV1::Seats] seats_object
 | ||
|         # @param [String] fields
 | ||
|         #   Selector specifying which fields to include in a partial response.
 | ||
|         # @param [String] quota_user
 | ||
|         #   Available to use for quota purposes for server-side applications. Can be any
 | ||
|         #   arbitrary string assigned to a user, but should not exceed 40 characters.
 | ||
|         # @param [Google::Apis::RequestOptions] options
 | ||
|         #   Request-specific options
 | ||
|         #
 | ||
|         # @yield [result, err] Result & error if block supplied
 | ||
|         # @yieldparam result [Google::Apis::ResellerV1::Subscription] parsed result object
 | ||
|         # @yieldparam err [StandardError] error object if request failed
 | ||
|         #
 | ||
|         # @return [Google::Apis::ResellerV1::Subscription]
 | ||
|         #
 | ||
|         # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
 | ||
|         # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
 | ||
|         # @raise [Google::Apis::AuthorizationError] Authorization is required
 | ||
|         def change_subscription_seats(customer_id, subscription_id, seats_object = nil, fields: nil, quota_user: nil, options: nil, &block)
 | ||
|           command = make_simple_command(:post, 'apps/reseller/v1/customers/{customerId}/subscriptions/{subscriptionId}/changeSeats', options)
 | ||
|           command.request_representation = Google::Apis::ResellerV1::Seats::Representation
 | ||
|           command.request_object = seats_object
 | ||
|           command.response_representation = Google::Apis::ResellerV1::Subscription::Representation
 | ||
|           command.response_class = Google::Apis::ResellerV1::Subscription
 | ||
|           command.params['customerId'] = customer_id unless customer_id.nil?
 | ||
|           command.params['subscriptionId'] = subscription_id unless subscription_id.nil?
 | ||
|           command.query['fields'] = fields unless fields.nil?
 | ||
|           command.query['quotaUser'] = quota_user unless quota_user.nil?
 | ||
|           execute_or_queue_command(command, &block)
 | ||
|         end
 | ||
|         
 | ||
|         # Cancels, suspends, or transfers a subscription to direct.
 | ||
|         # @param [String] customer_id
 | ||
|         #   This can be either the customer's primary domain name or the customer's unique
 | ||
|         #   identifier. If the domain name for a customer changes, the old domain name
 | ||
|         #   cannot be used to access the customer, but the customer's unique identifier (
 | ||
|         #   as returned by the API) can always be used. We recommend storing the unique
 | ||
|         #   identifier in your systems where applicable.
 | ||
|         # @param [String] subscription_id
 | ||
|         #   This is a required property. The `subscriptionId` is the subscription
 | ||
|         #   identifier and is unique for each customer. Since a `subscriptionId` changes
 | ||
|         #   when a subscription is updated, we recommend to not use this ID as a key for
 | ||
|         #   persistent data. And the `subscriptionId` can be found using the retrieve all
 | ||
|         #   reseller subscriptions method.
 | ||
|         # @param [String] deletion_type
 | ||
|         #   The `deletionType` query string enables the cancellation, downgrade, or
 | ||
|         #   suspension of a subscription.
 | ||
|         # @param [String] fields
 | ||
|         #   Selector specifying which fields to include in a partial response.
 | ||
|         # @param [String] quota_user
 | ||
|         #   Available to use for quota purposes for server-side applications. Can be any
 | ||
|         #   arbitrary string assigned to a user, but should not exceed 40 characters.
 | ||
|         # @param [Google::Apis::RequestOptions] options
 | ||
|         #   Request-specific options
 | ||
|         #
 | ||
|         # @yield [result, err] Result & error if block supplied
 | ||
|         # @yieldparam result [NilClass] No result returned for this method
 | ||
|         # @yieldparam err [StandardError] error object if request failed
 | ||
|         #
 | ||
|         # @return [void]
 | ||
|         #
 | ||
|         # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
 | ||
|         # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
 | ||
|         # @raise [Google::Apis::AuthorizationError] Authorization is required
 | ||
|         def delete_subscription(customer_id, subscription_id, deletion_type, fields: nil, quota_user: nil, options: nil, &block)
 | ||
|           command = make_simple_command(:delete, 'apps/reseller/v1/customers/{customerId}/subscriptions/{subscriptionId}', options)
 | ||
|           command.params['customerId'] = customer_id unless customer_id.nil?
 | ||
|           command.params['subscriptionId'] = subscription_id unless subscription_id.nil?
 | ||
|           command.query['deletionType'] = deletion_type unless deletion_type.nil?
 | ||
|           command.query['fields'] = fields unless fields.nil?
 | ||
|           command.query['quotaUser'] = quota_user unless quota_user.nil?
 | ||
|           execute_or_queue_command(command, &block)
 | ||
|         end
 | ||
|         
 | ||
|         # Gets a specific subscription. The `subscriptionId` can be found using the [
 | ||
|         # Retrieve all reseller subscriptions](/admin-sdk/reseller/v1/how-tos/
 | ||
|         # manage_subscriptions#get_all_subscriptions) method. For more information about
 | ||
|         # retrieving a specific subscription, see the information descrived in [manage
 | ||
|         # subscriptions](/admin-sdk/reseller/v1/how-tos/manage_subscriptions#
 | ||
|         # get_subscription).
 | ||
|         # @param [String] customer_id
 | ||
|         #   This can be either the customer's primary domain name or the customer's unique
 | ||
|         #   identifier. If the domain name for a customer changes, the old domain name
 | ||
|         #   cannot be used to access the customer, but the customer's unique identifier (
 | ||
|         #   as returned by the API) can always be used. We recommend storing the unique
 | ||
|         #   identifier in your systems where applicable.
 | ||
|         # @param [String] subscription_id
 | ||
|         #   This is a required property. The `subscriptionId` is the subscription
 | ||
|         #   identifier and is unique for each customer. Since a `subscriptionId` changes
 | ||
|         #   when a subscription is updated, we recommend to not use this ID as a key for
 | ||
|         #   persistent data. And the `subscriptionId` can be found using the retrieve all
 | ||
|         #   reseller subscriptions method.
 | ||
|         # @param [String] fields
 | ||
|         #   Selector specifying which fields to include in a partial response.
 | ||
|         # @param [String] quota_user
 | ||
|         #   Available to use for quota purposes for server-side applications. Can be any
 | ||
|         #   arbitrary string assigned to a user, but should not exceed 40 characters.
 | ||
|         # @param [Google::Apis::RequestOptions] options
 | ||
|         #   Request-specific options
 | ||
|         #
 | ||
|         # @yield [result, err] Result & error if block supplied
 | ||
|         # @yieldparam result [Google::Apis::ResellerV1::Subscription] parsed result object
 | ||
|         # @yieldparam err [StandardError] error object if request failed
 | ||
|         #
 | ||
|         # @return [Google::Apis::ResellerV1::Subscription]
 | ||
|         #
 | ||
|         # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
 | ||
|         # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
 | ||
|         # @raise [Google::Apis::AuthorizationError] Authorization is required
 | ||
|         def get_subscription(customer_id, subscription_id, fields: nil, quota_user: nil, options: nil, &block)
 | ||
|           command = make_simple_command(:get, 'apps/reseller/v1/customers/{customerId}/subscriptions/{subscriptionId}', options)
 | ||
|           command.response_representation = Google::Apis::ResellerV1::Subscription::Representation
 | ||
|           command.response_class = Google::Apis::ResellerV1::Subscription
 | ||
|           command.params['customerId'] = customer_id unless customer_id.nil?
 | ||
|           command.params['subscriptionId'] = subscription_id unless subscription_id.nil?
 | ||
|           command.query['fields'] = fields unless fields.nil?
 | ||
|           command.query['quotaUser'] = quota_user unless quota_user.nil?
 | ||
|           execute_or_queue_command(command, &block)
 | ||
|         end
 | ||
|         
 | ||
|         # Creates or transfer a subscription. Create a subscription for a customer's
 | ||
|         # account that you ordered using the [Order a new customer account](/admin-sdk/
 | ||
|         # reseller/v1/reference/customers/insert.html) method. For more information
 | ||
|         # about creating a subscription for different payment plans, see [manage
 | ||
|         # subscriptions](/admin-sdk/reseller/v1/how-tos/manage_subscriptions#
 | ||
|         # create_subscription).\ If you did not order the customer's account using the
 | ||
|         # customer insert method, use the customer's `customerAuthToken` when creating a
 | ||
|         # subscription for that customer. If transferring a G Suite subscription with an
 | ||
|         # associated Google Drive or Google Vault subscription, use the [batch operation]
 | ||
|         # (/admin-sdk/reseller/v1/how-tos/batch.html) to transfer all of these
 | ||
|         # subscriptions. For more information, see how to [transfer subscriptions](/
 | ||
|         # admin-sdk/reseller/v1/how-tos/manage_subscriptions#transfer_a_subscription).
 | ||
|         # @param [String] customer_id
 | ||
|         #   This can be either the customer's primary domain name or the customer's unique
 | ||
|         #   identifier. If the domain name for a customer changes, the old domain name
 | ||
|         #   cannot be used to access the customer, but the customer's unique identifier (
 | ||
|         #   as returned by the API) can always be used. We recommend storing the unique
 | ||
|         #   identifier in your systems where applicable.
 | ||
|         # @param [Google::Apis::ResellerV1::Subscription] subscription_object
 | ||
|         # @param [String] customer_auth_token
 | ||
|         #   The `customerAuthToken` query string is required when creating a resold
 | ||
|         #   account that transfers a direct customer's subscription or transfers another
 | ||
|         #   reseller customer's subscription to your reseller management. This is a
 | ||
|         #   hexadecimal authentication token needed to complete the subscription transfer.
 | ||
|         #   For more information, see the administrator help center.
 | ||
|         # @param [String] fields
 | ||
|         #   Selector specifying which fields to include in a partial response.
 | ||
|         # @param [String] quota_user
 | ||
|         #   Available to use for quota purposes for server-side applications. Can be any
 | ||
|         #   arbitrary string assigned to a user, but should not exceed 40 characters.
 | ||
|         # @param [Google::Apis::RequestOptions] options
 | ||
|         #   Request-specific options
 | ||
|         #
 | ||
|         # @yield [result, err] Result & error if block supplied
 | ||
|         # @yieldparam result [Google::Apis::ResellerV1::Subscription] parsed result object
 | ||
|         # @yieldparam err [StandardError] error object if request failed
 | ||
|         #
 | ||
|         # @return [Google::Apis::ResellerV1::Subscription]
 | ||
|         #
 | ||
|         # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
 | ||
|         # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
 | ||
|         # @raise [Google::Apis::AuthorizationError] Authorization is required
 | ||
|         def insert_subscription(customer_id, subscription_object = nil, customer_auth_token: nil, fields: nil, quota_user: nil, options: nil, &block)
 | ||
|           command = make_simple_command(:post, 'apps/reseller/v1/customers/{customerId}/subscriptions', options)
 | ||
|           command.request_representation = Google::Apis::ResellerV1::Subscription::Representation
 | ||
|           command.request_object = subscription_object
 | ||
|           command.response_representation = Google::Apis::ResellerV1::Subscription::Representation
 | ||
|           command.response_class = Google::Apis::ResellerV1::Subscription
 | ||
|           command.params['customerId'] = customer_id unless customer_id.nil?
 | ||
|           command.query['customerAuthToken'] = customer_auth_token unless customer_auth_token.nil?
 | ||
|           command.query['fields'] = fields unless fields.nil?
 | ||
|           command.query['quotaUser'] = quota_user unless quota_user.nil?
 | ||
|           execute_or_queue_command(command, &block)
 | ||
|         end
 | ||
|         
 | ||
|         # Lists of subscriptions managed by the reseller. The list can be all
 | ||
|         # subscriptions, all of a customer's subscriptions, or all of a customer's
 | ||
|         # transferable subscriptions. Optionally, this method can filter the response by
 | ||
|         # a `customerNamePrefix`. For more information, see [manage subscriptions](/
 | ||
|         # admin-sdk/reseller/v1/how-tos/manage_subscriptions).
 | ||
|         # @param [String] customer_auth_token
 | ||
|         #   The `customerAuthToken` query string is required when creating a resold
 | ||
|         #   account that transfers a direct customer's subscription or transfers another
 | ||
|         #   reseller customer's subscription to your reseller management. This is a
 | ||
|         #   hexadecimal authentication token needed to complete the subscription transfer.
 | ||
|         #   For more information, see the administrator help center.
 | ||
|         # @param [String] customer_id
 | ||
|         #   This can be either the customer's primary domain name or the customer's unique
 | ||
|         #   identifier. If the domain name for a customer changes, the old domain name
 | ||
|         #   cannot be used to access the customer, but the customer's unique identifier (
 | ||
|         #   as returned by the API) can always be used. We recommend storing the unique
 | ||
|         #   identifier in your systems where applicable.
 | ||
|         # @param [String] customer_name_prefix
 | ||
|         #   When retrieving all of your subscriptions and filtering for specific customers,
 | ||
|         #   you can enter a prefix for a customer name. Using an example customer group
 | ||
|         #   that includes `exam.com`, `example20.com` and `example.com`: - `exa` --
 | ||
|         #   Returns all customer names that start with 'exa' which could include `exam.com`
 | ||
|         #   , `example20.com`, and `example.com`. A name prefix is similar to using a
 | ||
|         #   regular expression's asterisk, exa*. - `example` -- Returns `example20.com`
 | ||
|         #   and `example.com`.
 | ||
|         # @param [Fixnum] max_results
 | ||
|         #   When retrieving a large list, the `maxResults` is the maximum number of
 | ||
|         #   results per page. The `nextPageToken` value takes you to the next page. The
 | ||
|         #   default is 20.
 | ||
|         # @param [String] page_token
 | ||
|         #   Token to specify next page in the list
 | ||
|         # @param [String] fields
 | ||
|         #   Selector specifying which fields to include in a partial response.
 | ||
|         # @param [String] quota_user
 | ||
|         #   Available to use for quota purposes for server-side applications. Can be any
 | ||
|         #   arbitrary string assigned to a user, but should not exceed 40 characters.
 | ||
|         # @param [Google::Apis::RequestOptions] options
 | ||
|         #   Request-specific options
 | ||
|         #
 | ||
|         # @yield [result, err] Result & error if block supplied
 | ||
|         # @yieldparam result [Google::Apis::ResellerV1::Subscriptions] parsed result object
 | ||
|         # @yieldparam err [StandardError] error object if request failed
 | ||
|         #
 | ||
|         # @return [Google::Apis::ResellerV1::Subscriptions]
 | ||
|         #
 | ||
|         # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
 | ||
|         # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
 | ||
|         # @raise [Google::Apis::AuthorizationError] Authorization is required
 | ||
|         def list_subscriptions(customer_auth_token: nil, customer_id: nil, customer_name_prefix: nil, max_results: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
 | ||
|           command = make_simple_command(:get, 'apps/reseller/v1/subscriptions', options)
 | ||
|           command.response_representation = Google::Apis::ResellerV1::Subscriptions::Representation
 | ||
|           command.response_class = Google::Apis::ResellerV1::Subscriptions
 | ||
|           command.query['customerAuthToken'] = customer_auth_token unless customer_auth_token.nil?
 | ||
|           command.query['customerId'] = customer_id unless customer_id.nil?
 | ||
|           command.query['customerNamePrefix'] = customer_name_prefix unless customer_name_prefix.nil?
 | ||
|           command.query['maxResults'] = max_results unless max_results.nil?
 | ||
|           command.query['pageToken'] = page_token unless page_token.nil?
 | ||
|           command.query['fields'] = fields unless fields.nil?
 | ||
|           command.query['quotaUser'] = quota_user unless quota_user.nil?
 | ||
|           execute_or_queue_command(command, &block)
 | ||
|         end
 | ||
|         
 | ||
|         # Immediately move a 30-day free trial subscription to a paid service
 | ||
|         # subscription. This method is only applicable if a payment plan has already
 | ||
|         # been set up for the 30-day trial subscription. For more information, see [
 | ||
|         # manage subscriptions](/admin-sdk/reseller/v1/how-tos/manage_subscriptions#
 | ||
|         # paid_service).
 | ||
|         # @param [String] customer_id
 | ||
|         #   This can be either the customer's primary domain name or the customer's unique
 | ||
|         #   identifier. If the domain name for a customer changes, the old domain name
 | ||
|         #   cannot be used to access the customer, but the customer's unique identifier (
 | ||
|         #   as returned by the API) can always be used. We recommend storing the unique
 | ||
|         #   identifier in your systems where applicable.
 | ||
|         # @param [String] subscription_id
 | ||
|         #   This is a required property. The `subscriptionId` is the subscription
 | ||
|         #   identifier and is unique for each customer. Since a `subscriptionId` changes
 | ||
|         #   when a subscription is updated, we recommend to not use this ID as a key for
 | ||
|         #   persistent data. And the `subscriptionId` can be found using the retrieve all
 | ||
|         #   reseller subscriptions method.
 | ||
|         # @param [String] fields
 | ||
|         #   Selector specifying which fields to include in a partial response.
 | ||
|         # @param [String] quota_user
 | ||
|         #   Available to use for quota purposes for server-side applications. Can be any
 | ||
|         #   arbitrary string assigned to a user, but should not exceed 40 characters.
 | ||
|         # @param [Google::Apis::RequestOptions] options
 | ||
|         #   Request-specific options
 | ||
|         #
 | ||
|         # @yield [result, err] Result & error if block supplied
 | ||
|         # @yieldparam result [Google::Apis::ResellerV1::Subscription] parsed result object
 | ||
|         # @yieldparam err [StandardError] error object if request failed
 | ||
|         #
 | ||
|         # @return [Google::Apis::ResellerV1::Subscription]
 | ||
|         #
 | ||
|         # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
 | ||
|         # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
 | ||
|         # @raise [Google::Apis::AuthorizationError] Authorization is required
 | ||
|         def start_subscription_paid_service(customer_id, subscription_id, fields: nil, quota_user: nil, options: nil, &block)
 | ||
|           command = make_simple_command(:post, 'apps/reseller/v1/customers/{customerId}/subscriptions/{subscriptionId}/startPaidService', options)
 | ||
|           command.response_representation = Google::Apis::ResellerV1::Subscription::Representation
 | ||
|           command.response_class = Google::Apis::ResellerV1::Subscription
 | ||
|           command.params['customerId'] = customer_id unless customer_id.nil?
 | ||
|           command.params['subscriptionId'] = subscription_id unless subscription_id.nil?
 | ||
|           command.query['fields'] = fields unless fields.nil?
 | ||
|           command.query['quotaUser'] = quota_user unless quota_user.nil?
 | ||
|           execute_or_queue_command(command, &block)
 | ||
|         end
 | ||
|         
 | ||
|         # Suspends an active subscription. You can use this method to suspend a paid
 | ||
|         # subscription that is currently in the `ACTIVE` state. * For `FLEXIBLE`
 | ||
|         # subscriptions, billing is paused. * For `ANNUAL_MONTHLY_PAY` or `
 | ||
|         # ANNUAL_YEARLY_PAY` subscriptions: * Suspending the subscription does not
 | ||
|         # change the renewal date that was originally committed to. * A suspended
 | ||
|         # subscription does not renew. If you activate the subscription after the
 | ||
|         # original renewal date, a new annual subscription will be created, starting on
 | ||
|         # the day of activation. We strongly encourage you to suspend subscriptions only
 | ||
|         # for short periods of time as suspensions over 60 days may result in the
 | ||
|         # subscription being cancelled.
 | ||
|         # @param [String] customer_id
 | ||
|         #   This can be either the customer's primary domain name or the customer's unique
 | ||
|         #   identifier. If the domain name for a customer changes, the old domain name
 | ||
|         #   cannot be used to access the customer, but the customer's unique identifier (
 | ||
|         #   as returned by the API) can always be used. We recommend storing the unique
 | ||
|         #   identifier in your systems where applicable.
 | ||
|         # @param [String] subscription_id
 | ||
|         #   This is a required property. The `subscriptionId` is the subscription
 | ||
|         #   identifier and is unique for each customer. Since a `subscriptionId` changes
 | ||
|         #   when a subscription is updated, we recommend to not use this ID as a key for
 | ||
|         #   persistent data. And the `subscriptionId` can be found using the retrieve all
 | ||
|         #   reseller subscriptions method.
 | ||
|         # @param [String] fields
 | ||
|         #   Selector specifying which fields to include in a partial response.
 | ||
|         # @param [String] quota_user
 | ||
|         #   Available to use for quota purposes for server-side applications. Can be any
 | ||
|         #   arbitrary string assigned to a user, but should not exceed 40 characters.
 | ||
|         # @param [Google::Apis::RequestOptions] options
 | ||
|         #   Request-specific options
 | ||
|         #
 | ||
|         # @yield [result, err] Result & error if block supplied
 | ||
|         # @yieldparam result [Google::Apis::ResellerV1::Subscription] parsed result object
 | ||
|         # @yieldparam err [StandardError] error object if request failed
 | ||
|         #
 | ||
|         # @return [Google::Apis::ResellerV1::Subscription]
 | ||
|         #
 | ||
|         # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
 | ||
|         # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
 | ||
|         # @raise [Google::Apis::AuthorizationError] Authorization is required
 | ||
|         def suspend_subscription(customer_id, subscription_id, fields: nil, quota_user: nil, options: nil, &block)
 | ||
|           command = make_simple_command(:post, 'apps/reseller/v1/customers/{customerId}/subscriptions/{subscriptionId}/suspend', options)
 | ||
|           command.response_representation = Google::Apis::ResellerV1::Subscription::Representation
 | ||
|           command.response_class = Google::Apis::ResellerV1::Subscription
 | ||
|           command.params['customerId'] = customer_id unless customer_id.nil?
 | ||
|           command.params['subscriptionId'] = subscription_id unless subscription_id.nil?
 | ||
|           command.query['fields'] = fields unless fields.nil?
 | ||
|           command.query['quotaUser'] = quota_user unless quota_user.nil?
 | ||
|           execute_or_queue_command(command, &block)
 | ||
|         end
 | ||
| 
 | ||
|         protected
 | ||
| 
 | ||
|         def apply_command_defaults(command)
 | ||
|           command.query['key'] = key unless key.nil?
 | ||
|           command.query['quotaUser'] = quota_user unless quota_user.nil?
 | ||
|         end
 | ||
|       end
 | ||
|     end
 | ||
|   end
 | ||
| end
 |