google-api-ruby-client/generated/google-apis-reseller_v1/lib/google/apis/reseller_v1/service.rb

808 lines
52 KiB
Ruby
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 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 subscriptions 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