Cloud Channel V1 API - Class Google::Cloud::Channel::V1::CloudChannelService::Client (v0.12.0)

Reference documentation and code samples for the Cloud Channel V1 API class Google::Cloud::Channel::V1::CloudChannelService::Client.

Client for the CloudChannelService service.

CloudChannelService lets Google cloud resellers and distributors manage their customers, channel partners, entitlements, and reports.

Using this service:

  1. Resellers and distributors can manage a customer entity.
  2. Distributors can register an authorized reseller in their channel and provide them with delegated admin access.
  3. Resellers and distributors can manage customer entitlements.

CloudChannelService exposes the following resources:

  • Customers: An entity—usually an enterprise—managed by a reseller or distributor.

  • Entitlements: An entity that provides a customer with the means to use a service. Entitlements are created or updated as a result of a successful fulfillment.

  • ChannelPartnerLinks: An entity that identifies links between distributors and their indirect resellers in a channel.

Inherits

  • Object

Methods

.configure

def self.configure() { |config| ... } -> Client::Configuration

Configure the CloudChannelService Client class.

See Configuration for a description of the configuration fields.

Yields
  • (config) — Configure the Client client.
Yield Parameter
Example
# Modify the configuration for all CloudChannelService clients
::Google::Cloud::Channel::V1::CloudChannelService::Client.configure do |config|
  config.timeout = 10.0
end

#activate_entitlement

def activate_entitlement(request, options = nil) -> ::Gapic::Operation
def activate_entitlement(name: nil, request_id: nil) -> ::Gapic::Operation

Activates a previously suspended entitlement. Entitlements suspended for pending ToS acceptance can't be activated using this method.

An entitlement activation is a long-running operation and it updates the state of the customer entitlement.

Possible error codes:

  • PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request.
  • INVALID_ARGUMENT: Required request parameters are missing or invalid.
  • NOT_FOUND: Entitlement resource not found.
  • SUSPENSION_NOT_RESELLER_INITIATED: Can only activate reseller-initiated suspensions and entitlements that have accepted the TOS.
  • NOT_SUSPENDED: Can only activate suspended entitlements not in an ACTIVE state.
  • INTERNAL: Any non-user error related to a technical issue in the backend. Contact Cloud Channel support.
  • UNKNOWN: Any non-user error related to a technical issue in the backend. Contact Cloud Channel support.

Return value: The ID of a long-running operation.

To get the results of the operation, call the GetOperation method of CloudChannelOperationsService. The Operation metadata will contain an instance of OperationMetadata.

Overloads
def activate_entitlement(request, options = nil) -> ::Gapic::Operation
Pass arguments to activate_entitlement via a request object, either of type ActivateEntitlementRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Channel::V1::ActivateEntitlementRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def activate_entitlement(name: nil, request_id: nil) -> ::Gapic::Operation
Pass arguments to activate_entitlement via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameters
  • name (::String) — Required. The resource name of the entitlement to activate. Name uses the format: accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}
  • request_id (::String) — Optional. You can specify an optional unique request ID, and if you need to retry your request, the server will know to ignore the request if it's complete.

    For example, you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if it received the original operation with the same request ID. If it did, it will ignore the second request.

    The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).

Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
  • response (::Gapic::Operation)
  • operation (::GRPC::ActiveCall::Operation)
Returns
  • (::Gapic::Operation)
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/channel/v1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Channel::V1::CloudChannelService::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Channel::V1::ActivateEntitlementRequest.new

# Call the activate_entitlement method.
result = client.activate_entitlement request

# The returned object is of type Gapic::Operation. You can use this
# object to check the status of an operation, cancel it, or wait
# for results. Here is how to block until completion:
result.wait_until_done! timeout: 60
if result.response?
  p result.response
else
  puts "Error!"
end

#cancel_entitlement

def cancel_entitlement(request, options = nil) -> ::Gapic::Operation
def cancel_entitlement(name: nil, request_id: nil) -> ::Gapic::Operation

Cancels a previously fulfilled entitlement.

An entitlement cancellation is a long-running operation.

Possible error codes:

  • PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request.
  • FAILED_PRECONDITION: There are Google Cloud projects linked to the Google Cloud entitlement's Cloud Billing subaccount.
  • INVALID_ARGUMENT: Required request parameters are missing or invalid.
  • NOT_FOUND: Entitlement resource not found.
  • DELETION_TYPE_NOT_ALLOWED: Cancel is only allowed for Google Workspace add-ons, or entitlements for Google Cloud's development platform.
  • INTERNAL: Any non-user error related to a technical issue in the backend. Contact Cloud Channel support.
  • UNKNOWN: Any non-user error related to a technical issue in the backend. Contact Cloud Channel support.

Return value: The ID of a long-running operation.

To get the results of the operation, call the GetOperation method of CloudChannelOperationsService. The response will contain google.protobuf.Empty on success. The Operation metadata will contain an instance of OperationMetadata.

Overloads
def cancel_entitlement(request, options = nil) -> ::Gapic::Operation
Pass arguments to cancel_entitlement via a request object, either of type Google::Cloud::Channel::V1::CancelEntitlementRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Channel::V1::CancelEntitlementRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def cancel_entitlement(name: nil, request_id: nil) -> ::Gapic::Operation
Pass arguments to cancel_entitlement via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameters
  • name (::String) — Required. The resource name of the entitlement to cancel. Name uses the format: accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}
  • request_id (::String) — Optional. You can specify an optional unique request ID, and if you need to retry your request, the server will know to ignore the request if it's complete.

    For example, you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if it received the original operation with the same request ID. If it did, it will ignore the second request.

    The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).

Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
  • response (::Gapic::Operation)
  • operation (::GRPC::ActiveCall::Operation)
Returns
  • (::Gapic::Operation)
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/channel/v1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Channel::V1::CloudChannelService::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Channel::V1::CancelEntitlementRequest.new

# Call the cancel_entitlement method.
result = client.cancel_entitlement request

# The returned object is of type Gapic::Operation. You can use this
# object to check the status of an operation, cancel it, or wait
# for results. Here is how to block until completion:
result.wait_until_done! timeout: 60
if result.response?
  p result.response
else
  puts "Error!"
end

#change_offer

def change_offer(request, options = nil) -> ::Gapic::Operation
def change_offer(name: nil, offer: nil, parameters: nil, purchase_order_id: nil, request_id: nil) -> ::Gapic::Operation

Updates the Offer for an existing customer entitlement.

An entitlement update is a long-running operation and it updates the entitlement as a result of fulfillment.

Possible error codes:

  • PERMISSION_DENIED: The customer doesn't belong to the reseller.
  • INVALID_ARGUMENT: Required request parameters are missing or invalid.
  • NOT_FOUND: Offer or Entitlement resource not found.
  • INTERNAL: Any non-user error related to a technical issue in the backend. Contact Cloud Channel support.
  • UNKNOWN: Any non-user error related to a technical issue in the backend. Contact Cloud Channel support.

Return value: The ID of a long-running operation.

To get the results of the operation, call the GetOperation method of CloudChannelOperationsService. The Operation metadata will contain an instance of OperationMetadata.

Overloads
def change_offer(request, options = nil) -> ::Gapic::Operation
Pass arguments to change_offer via a request object, either of type Google::Cloud::Channel::V1::ChangeOfferRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Channel::V1::ChangeOfferRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def change_offer(name: nil, offer: nil, parameters: nil, purchase_order_id: nil, request_id: nil) -> ::Gapic::Operation
Pass arguments to change_offer via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameters
  • name (::String) — Required. The resource name of the entitlement to update. Name uses the format: accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}
  • offer (::String) — Required. New Offer. Format: accounts/{account_id}/offers/{offer_id}.
  • parameters (::Array<::Google::Cloud::Channel::V1::Parameter, ::Hash>) — Optional. Parameters needed to purchase the Offer. To view the available Parameters refer to the Offer.parameter_definitions from the desired offer.
  • purchase_order_id (::String) — Optional. Purchase order id provided by the reseller.
  • request_id (::String) — Optional. You can specify an optional unique request ID, and if you need to retry your request, the server will know to ignore the request if it's complete.

    For example, you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if it received the original operation with the same request ID. If it did, it will ignore the second request.

    The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).

Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
  • response (::Gapic::Operation)
  • operation (::GRPC::ActiveCall::Operation)
Returns
  • (::Gapic::Operation)
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/channel/v1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Channel::V1::CloudChannelService::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Channel::V1::ChangeOfferRequest.new

# Call the change_offer method.
result = client.change_offer request

# The returned object is of type Gapic::Operation. You can use this
# object to check the status of an operation, cancel it, or wait
# for results. Here is how to block until completion:
result.wait_until_done! timeout: 60
if result.response?
  p result.response
else
  puts "Error!"
end

#change_parameters

def change_parameters(request, options = nil) -> ::Gapic::Operation
def change_parameters(name: nil, parameters: nil, request_id: nil, purchase_order_id: nil) -> ::Gapic::Operation

Change parameters of the entitlement.

An entitlement update is a long-running operation and it updates the entitlement as a result of fulfillment.

Possible error codes:

  • PERMISSION_DENIED: The customer doesn't belong to the reseller.
  • INVALID_ARGUMENT: Required request parameters are missing or invalid. For example, the number of seats being changed is greater than the allowed number of max seats, or decreasing seats for a commitment based plan.
  • NOT_FOUND: Entitlement resource not found.
  • INTERNAL: Any non-user error related to a technical issue in the backend. Contact Cloud Channel support.
  • UNKNOWN: Any non-user error related to a technical issue in the backend. Contact Cloud Channel support.

Return value: The ID of a long-running operation.

To get the results of the operation, call the GetOperation method of CloudChannelOperationsService. The Operation metadata will contain an instance of OperationMetadata.

Overloads
def change_parameters(request, options = nil) -> ::Gapic::Operation
Pass arguments to change_parameters via a request object, either of type Google::Cloud::Channel::V1::ChangeParametersRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Channel::V1::ChangeParametersRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def change_parameters(name: nil, parameters: nil, request_id: nil, purchase_order_id: nil) -> ::Gapic::Operation
Pass arguments to change_parameters via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameters
  • name (::String) — Required. The name of the entitlement to update. Name uses the format: accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}
  • parameters (::Array<::Google::Cloud::Channel::V1::Parameter, ::Hash>) — Required. Entitlement parameters to update. You can only change editable parameters.

    To view the available Parameters for a request, refer to the Offer.parameter_definitions from the desired offer.

  • request_id (::String) — Optional. You can specify an optional unique request ID, and if you need to retry your request, the server will know to ignore the request if it's complete.

    For example, you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if it received the original operation with the same request ID. If it did, it will ignore the second request.

    The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).

  • purchase_order_id (::String) — Optional. Purchase order ID provided by the reseller.
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
  • response (::Gapic::Operation)
  • operation (::GRPC::ActiveCall::Operation)
Returns
  • (::Gapic::Operation)
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/channel/v1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Channel::V1::CloudChannelService::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Channel::V1::ChangeParametersRequest.new

# Call the change_parameters method.
result = client.change_parameters request

# The returned object is of type Gapic::Operation. You can use this
# object to check the status of an operation, cancel it, or wait
# for results. Here is how to block until completion:
result.wait_until_done! timeout: 60
if result.response?
  p result.response
else
  puts "Error!"
end

#change_renewal_settings

def change_renewal_settings(request, options = nil) -> ::Gapic::Operation
def change_renewal_settings(name: nil, renewal_settings: nil, request_id: nil) -> ::Gapic::Operation

Updates the renewal settings for an existing customer entitlement.

An entitlement update is a long-running operation and it updates the entitlement as a result of fulfillment.

Possible error codes:

  • PERMISSION_DENIED: The customer doesn't belong to the reseller.
  • INVALID_ARGUMENT: Required request parameters are missing or invalid.
  • NOT_FOUND: Entitlement resource not found.
  • NOT_COMMITMENT_PLAN: Renewal Settings are only applicable for a commitment plan. Can't enable or disable renewals for non-commitment plans.
  • INTERNAL: Any non-user error related to a technical issue in the backend. Contact Cloud Channel support.
  • UNKNOWN: Any non-user error related to a technical issue in the backend. Contact Cloud Channel support.

Return value: The ID of a long-running operation.

To get the results of the operation, call the GetOperation method of CloudChannelOperationsService. The Operation metadata will contain an instance of OperationMetadata.

Overloads
def change_renewal_settings(request, options = nil) -> ::Gapic::Operation
Pass arguments to change_renewal_settings via a request object, either of type Google::Cloud::Channel::V1::ChangeRenewalSettingsRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Channel::V1::ChangeRenewalSettingsRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def change_renewal_settings(name: nil, renewal_settings: nil, request_id: nil) -> ::Gapic::Operation
Pass arguments to change_renewal_settings via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameters
  • name (::String) — Required. The name of the entitlement to update. Name uses the format: accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}
  • renewal_settings (::Google::Cloud::Channel::V1::RenewalSettings, ::Hash) — Required. New renewal settings.
  • request_id (::String) — Optional. You can specify an optional unique request ID, and if you need to retry your request, the server will know to ignore the request if it's complete.

    For example, you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if it received the original operation with the same request ID. If it did, it will ignore the second request.

    The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).

Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
  • response (::Gapic::Operation)
  • operation (::GRPC::ActiveCall::Operation)
Returns
  • (::Gapic::Operation)
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/channel/v1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Channel::V1::CloudChannelService::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Channel::V1::ChangeRenewalSettingsRequest.new

# Call the change_renewal_settings method.
result = client.change_renewal_settings request

# The returned object is of type Gapic::Operation. You can use this
# object to check the status of an operation, cancel it, or wait
# for results. Here is how to block until completion:
result.wait_until_done! timeout: 60
if result.response?
  p result.response
else
  puts "Error!"
end

#check_cloud_identity_accounts_exist

def check_cloud_identity_accounts_exist(request, options = nil) -> ::Google::Cloud::Channel::V1::CheckCloudIdentityAccountsExistResponse
def check_cloud_identity_accounts_exist(parent: nil, domain: nil) -> ::Google::Cloud::Channel::V1::CheckCloudIdentityAccountsExistResponse

Confirms the existence of Cloud Identity accounts based on the domain and if the Cloud Identity accounts are owned by the reseller.

Possible error codes:

  • PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request.
  • INVALID_ARGUMENT: Required request parameters are missing or invalid.
  • INVALID_VALUE: Invalid domain value in the request.

Return value: A list of CloudIdentityCustomerAccount resources for the domain (may be empty)

Note: in the v1alpha1 version of the API, a NOT_FOUND error returns if no CloudIdentityCustomerAccount resources match the domain.

Overloads
def check_cloud_identity_accounts_exist(request, options = nil) -> ::Google::Cloud::Channel::V1::CheckCloudIdentityAccountsExistResponse
Pass arguments to check_cloud_identity_accounts_exist via a request object, either of type Google::Cloud::Channel::V1::CheckCloudIdentityAccountsExistRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Channel::V1::CheckCloudIdentityAccountsExistRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def check_cloud_identity_accounts_exist(parent: nil, domain: nil) -> ::Google::Cloud::Channel::V1::CheckCloudIdentityAccountsExistResponse
Pass arguments to check_cloud_identity_accounts_exist via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameters
  • parent (::String) — Required. The reseller account's resource name. Parent uses the format: accounts/{account_id}
  • domain (::String) — Required. Domain to fetch for Cloud Identity account customer.
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/channel/v1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Channel::V1::CloudChannelService::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Channel::V1::CheckCloudIdentityAccountsExistRequest.new

# Call the check_cloud_identity_accounts_exist method.
result = client.check_cloud_identity_accounts_exist request

# The returned object is of type Google::Cloud::Channel::V1::CheckCloudIdentityAccountsExistResponse.
p result

#configure

def configure() { |config| ... } -> Client::Configuration

Configure the CloudChannelService Client instance.

The configuration is set to the derived mode, meaning that values can be changed, but structural changes (adding new fields, etc.) are not allowed. Structural changes should be made on Client.configure.

See Configuration for a description of the configuration fields.

Yields
  • (config) — Configure the Client client.
Yield Parameter
def create_channel_partner_link(request, options = nil) -> ::Google::Cloud::Channel::V1::ChannelPartnerLink
def create_channel_partner_link(parent: nil, channel_partner_link: nil) -> ::Google::Cloud::Channel::V1::ChannelPartnerLink

Initiates a channel partner link between a distributor and a reseller, or between resellers in an n-tier reseller channel. Invited partners need to follow the invite_link_uri provided in the response to accept. After accepting the invitation, a link is set up between the two parties. You must be a distributor to call this method.

Possible error codes:

  • PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request.
  • INVALID_ARGUMENT: Required request parameters are missing or invalid.
  • ALREADY_EXISTS: The ChannelPartnerLink sent in the request already exists.
  • NOT_FOUND: No Cloud Identity customer exists for provided domain.
  • INTERNAL: Any non-user error related to a technical issue in the backend. Contact Cloud Channel support.
  • UNKNOWN: Any non-user error related to a technical issue in the backend. Contact Cloud Channel support.

Return value: The new ChannelPartnerLink resource.

Overloads
def create_channel_partner_link(request, options = nil) -> ::Google::Cloud::Channel::V1::ChannelPartnerLink
Pass arguments to create_channel_partner_link via a request object, either of type Google::Cloud::Channel::V1::CreateChannelPartnerLinkRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Channel::V1::CreateChannelPartnerLinkRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def create_channel_partner_link(parent: nil, channel_partner_link: nil) -> ::Google::Cloud::Channel::V1::ChannelPartnerLink
Pass arguments to create_channel_partner_link via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameters
  • parent (::String) — Required. Create a channel partner link for the provided reseller account's resource name. Parent uses the format: accounts/{account_id}
  • channel_partner_link (::Google::Cloud::Channel::V1::ChannelPartnerLink, ::Hash) — Required. The channel partner link to create. Either channel_partner_link.reseller_cloud_identity_id or domain can be used to create a link.
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/channel/v1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Channel::V1::CloudChannelService::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Channel::V1::CreateChannelPartnerLinkRequest.new

# Call the create_channel_partner_link method.
result = client.create_channel_partner_link request

# The returned object is of type Google::Cloud::Channel::V1::ChannelPartnerLink.
p result

#create_channel_partner_repricing_config

def create_channel_partner_repricing_config(request, options = nil) -> ::Google::Cloud::Channel::V1::ChannelPartnerRepricingConfig
def create_channel_partner_repricing_config(parent: nil, channel_partner_repricing_config: nil) -> ::Google::Cloud::Channel::V1::ChannelPartnerRepricingConfig

Creates a ChannelPartnerRepricingConfig. Call this method to set modifications for a specific ChannelPartner's bill. You can only create configs if the RepricingConfig.effective_invoice_month is a future month. If needed, you can create a config for the current month, with some restrictions.

When creating a config for a future month, make sure there are no existing configs for that RepricingConfig.effective_invoice_month.

The following restrictions are for creating configs in the current month.

  • This functionality is reserved for recovering from an erroneous config, and should not be used for regular business cases.
  • The new config will not modify exports used with other configs. Changes to the config may be immediate, but may take up to 24 hours.
  • There is a limit of ten configs for any ChannelPartner or RepricingConfig.effective_invoice_month.
  • The contained ChannelPartnerRepricingConfig.repricing_config vaule must be different from the value used in the current config for a ChannelPartner.

Possible Error Codes:

  • PERMISSION_DENIED: If the account making the request and the account being queried are different.
  • INVALID_ARGUMENT: Missing or invalid required parameters in the request. Also displays if the updated config is for the current month or past months.
  • NOT_FOUND: The ChannelPartnerRepricingConfig specified does not exist or is not associated with the given account.
  • INTERNAL: Any non-user error related to technical issues in the backend. In this case, contact Cloud Channel support.

Return Value: If successful, the updated ChannelPartnerRepricingConfig resource, otherwise returns an error.

Overloads
def create_channel_partner_repricing_config(request, options = nil) -> ::Google::Cloud::Channel::V1::ChannelPartnerRepricingConfig
Pass arguments to create_channel_partner_repricing_config via a request object, either of type Google::Cloud::Channel::V1::CreateChannelPartnerRepricingConfigRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Channel::V1::CreateChannelPartnerRepricingConfigRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def create_channel_partner_repricing_config(parent: nil, channel_partner_repricing_config: nil) -> ::Google::Cloud::Channel::V1::ChannelPartnerRepricingConfig
Pass arguments to create_channel_partner_repricing_config via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameters
  • parent (::String) — Required. The resource name of the ChannelPartner that will receive the repricing config. Parent uses the format: accounts/{account_id}/channelPartnerLinks/{channel_partner_id}
  • channel_partner_repricing_config (::Google::Cloud::Channel::V1::ChannelPartnerRepricingConfig, ::Hash) — Required. The ChannelPartnerRepricingConfig object to update.
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/channel/v1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Channel::V1::CloudChannelService::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Channel::V1::CreateChannelPartnerRepricingConfigRequest.new

# Call the create_channel_partner_repricing_config method.
result = client.create_channel_partner_repricing_config request

# The returned object is of type Google::Cloud::Channel::V1::ChannelPartnerRepricingConfig.
p result

#create_customer

def create_customer(request, options = nil) -> ::Google::Cloud::Channel::V1::Customer
def create_customer(parent: nil, customer: nil) -> ::Google::Cloud::Channel::V1::Customer

Creates a new Customer resource under the reseller or distributor account.

Possible error codes:

  • PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request.
  • INVALID_ARGUMENT:
    • Required request parameters are missing or invalid.
    • Domain field value doesn't match the primary email domain.

Return value: The newly created Customer resource.

Overloads
def create_customer(request, options = nil) -> ::Google::Cloud::Channel::V1::Customer
Pass arguments to create_customer via a request object, either of type Google::Cloud::Channel::V1::CreateCustomerRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Channel::V1::CreateCustomerRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def create_customer(parent: nil, customer: nil) -> ::Google::Cloud::Channel::V1::Customer
Pass arguments to create_customer via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameters
  • parent (::String) — Required. The resource name of reseller account in which to create the customer. Parent uses the format: accounts/{account_id}
  • customer (::Google::Cloud::Channel::V1::Customer, ::Hash) — Required. The customer to create.
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/channel/v1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Channel::V1::CloudChannelService::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Channel::V1::CreateCustomerRequest.new

# Call the create_customer method.
result = client.create_customer request

# The returned object is of type Google::Cloud::Channel::V1::Customer.
p result

#create_customer_repricing_config

def create_customer_repricing_config(request, options = nil) -> ::Google::Cloud::Channel::V1::CustomerRepricingConfig
def create_customer_repricing_config(parent: nil, customer_repricing_config: nil) -> ::Google::Cloud::Channel::V1::CustomerRepricingConfig

Creates a CustomerRepricingConfig. Call this method to set modifications for a specific customer's bill. You can only create configs if the RepricingConfig.effective_invoice_month is a future month. If needed, you can create a config for the current month, with some restrictions.

When creating a config for a future month, make sure there are no existing configs for that RepricingConfig.effective_invoice_month.

The following restrictions are for creating configs in the current month.

Possible Error Codes:

  • PERMISSION_DENIED: If the account making the request and the account being queried are different.
  • INVALID_ARGUMENT: Missing or invalid required parameters in the request. Also displays if the updated config is for the current month or past months.
  • NOT_FOUND: The CustomerRepricingConfig specified does not exist or is not associated with the given account.
  • INTERNAL: Any non-user error related to technical issues in the backend. In this case, contact Cloud Channel support.

Return Value: If successful, the updated CustomerRepricingConfig resource, otherwise returns an error.

Overloads
def create_customer_repricing_config(request, options = nil) -> ::Google::Cloud::Channel::V1::CustomerRepricingConfig
Pass arguments to create_customer_repricing_config via a request object, either of type Google::Cloud::Channel::V1::CreateCustomerRepricingConfigRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Channel::V1::CreateCustomerRepricingConfigRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def create_customer_repricing_config(parent: nil, customer_repricing_config: nil) -> ::Google::Cloud::Channel::V1::CustomerRepricingConfig
Pass arguments to create_customer_repricing_config via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameters
  • parent (::String) — Required. The resource name of the customer that will receive this repricing config. Parent uses the format: accounts/{account_id}/customers/{customer_id}
  • customer_repricing_config (::Google::Cloud::Channel::V1::CustomerRepricingConfig, ::Hash) — Required. The CustomerRepricingConfig object to update.
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/channel/v1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Channel::V1::CloudChannelService::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Channel::V1::CreateCustomerRepricingConfigRequest.new

# Call the create_customer_repricing_config method.
result = client.create_customer_repricing_config request

# The returned object is of type Google::Cloud::Channel::V1::CustomerRepricingConfig.
p result

#create_entitlement

def create_entitlement(request, options = nil) -> ::Gapic::Operation
def create_entitlement(parent: nil, entitlement: nil, request_id: nil) -> ::Gapic::Operation

Creates an entitlement for a customer.

Possible error codes:

  • PERMISSION_DENIED: The customer doesn't belong to the reseller.
  • INVALID_ARGUMENT:
    • Required request parameters are missing or invalid.
    • There is already a customer entitlement for a SKU from the same product family.
  • INVALID_VALUE: Make sure the OfferId is valid. If it is, contact Google Channel support for further troubleshooting.
  • NOT_FOUND: The customer or offer resource was not found.
  • ALREADY_EXISTS:
    • The SKU was already purchased for the customer.
    • The customer's primary email already exists. Retry after changing the customer's primary contact email.
  • CONDITION_NOT_MET or FAILED_PRECONDITION:
    • The domain required for purchasing a SKU has not been verified.
    • A pre-requisite SKU required to purchase an Add-On SKU is missing. For example, Google Workspace Business Starter is required to purchase Vault or Drive.
    • (Developer accounts only) Reseller and resold domain must meet the following naming requirements:
      • Domain names must start with goog-test.
      • Domain names must include the reseller domain.
  • INTERNAL: Any non-user error related to a technical issue in the backend. Contact Cloud Channel support.
  • UNKNOWN: Any non-user error related to a technical issue in the backend. Contact Cloud Channel support.

Return value: The ID of a long-running operation.

To get the results of the operation, call the GetOperation method of CloudChannelOperationsService. The Operation metadata will contain an instance of OperationMetadata.

Overloads
def create_entitlement(request, options = nil) -> ::Gapic::Operation
Pass arguments to create_entitlement via a request object, either of type Google::Cloud::Channel::V1::CreateEntitlementRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Channel::V1::CreateEntitlementRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def create_entitlement(parent: nil, entitlement: nil, request_id: nil) -> ::Gapic::Operation
Pass arguments to create_entitlement via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameters
  • parent (::String) — Required. The resource name of the reseller's customer account in which to create the entitlement. Parent uses the format: accounts/{account_id}/customers/{customer_id}
  • entitlement (::Google::Cloud::Channel::V1::Entitlement, ::Hash) — Required. The entitlement to create.
  • request_id (::String) — Optional. You can specify an optional unique request ID, and if you need to retry your request, the server will know to ignore the request if it's complete.

    For example, you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if it received the original operation with the same request ID. If it did, it will ignore the second request.

    The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).

Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
  • response (::Gapic::Operation)
  • operation (::GRPC::ActiveCall::Operation)
Returns
  • (::Gapic::Operation)
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/channel/v1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Channel::V1::CloudChannelService::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Channel::V1::CreateEntitlementRequest.new

# Call the create_entitlement method.
result = client.create_entitlement request

# The returned object is of type Gapic::Operation. You can use this
# object to check the status of an operation, cancel it, or wait
# for results. Here is how to block until completion:
result.wait_until_done! timeout: 60
if result.response?
  p result.response
else
  puts "Error!"
end

#delete_channel_partner_repricing_config

def delete_channel_partner_repricing_config(request, options = nil) -> ::Google::Protobuf::Empty
def delete_channel_partner_repricing_config(name: nil) -> ::Google::Protobuf::Empty

Deletes the given ChannelPartnerRepricingConfig permanently. You can only delete configs if their RepricingConfig.effective_invoice_month is set to a date after the current month.

Possible error codes:

  • PERMISSION_DENIED: The account making the request does not own this customer.
  • INVALID_ARGUMENT: Required request parameters are missing or invalid.
  • FAILED_PRECONDITION: The ChannelPartnerRepricingConfig is active or in the past.
  • NOT_FOUND: No ChannelPartnerRepricingConfig found for the name in the request.
Overloads
def delete_channel_partner_repricing_config(request, options = nil) -> ::Google::Protobuf::Empty
Pass arguments to delete_channel_partner_repricing_config via a request object, either of type DeleteChannelPartnerRepricingConfigRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Channel::V1::DeleteChannelPartnerRepricingConfigRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def delete_channel_partner_repricing_config(name: nil) -> ::Google::Protobuf::Empty
Pass arguments to delete_channel_partner_repricing_config via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameter
  • name (::String) — Required. The resource name of the channel partner repricing config rule to delete.
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/channel/v1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Channel::V1::CloudChannelService::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Channel::V1::DeleteChannelPartnerRepricingConfigRequest.new

# Call the delete_channel_partner_repricing_config method.
result = client.delete_channel_partner_repricing_config request

# The returned object is of type Google::Protobuf::Empty.
p result

#delete_customer

def delete_customer(request, options = nil) -> ::Google::Protobuf::Empty
def delete_customer(name: nil) -> ::Google::Protobuf::Empty

Deletes the given Customer permanently.

Possible error codes:

  • PERMISSION_DENIED: The account making the request does not own this customer.
  • INVALID_ARGUMENT: Required request parameters are missing or invalid.
  • FAILED_PRECONDITION: The customer has existing entitlements.
  • NOT_FOUND: No Customer resource found for the name in the request.
Overloads
def delete_customer(request, options = nil) -> ::Google::Protobuf::Empty
Pass arguments to delete_customer via a request object, either of type DeleteCustomerRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Channel::V1::DeleteCustomerRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def delete_customer(name: nil) -> ::Google::Protobuf::Empty
Pass arguments to delete_customer via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameter
  • name (::String) — Required. The resource name of the customer to delete.
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/channel/v1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Channel::V1::CloudChannelService::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Channel::V1::DeleteCustomerRequest.new

# Call the delete_customer method.
result = client.delete_customer request

# The returned object is of type Google::Protobuf::Empty.
p result

#delete_customer_repricing_config

def delete_customer_repricing_config(request, options = nil) -> ::Google::Protobuf::Empty
def delete_customer_repricing_config(name: nil) -> ::Google::Protobuf::Empty

Deletes the given CustomerRepricingConfig permanently. You can only delete configs if their RepricingConfig.effective_invoice_month is set to a date after the current month.

Possible error codes:

  • PERMISSION_DENIED: The account making the request does not own this customer.
  • INVALID_ARGUMENT: Required request parameters are missing or invalid.
  • FAILED_PRECONDITION: The CustomerRepricingConfig is active or in the past.
  • NOT_FOUND: No CustomerRepricingConfig found for the name in the request.
Overloads
def delete_customer_repricing_config(request, options = nil) -> ::Google::Protobuf::Empty