Class: Google::Cloud::Channel::V1::CloudChannelService::Client

Inherits:
Object
  • Object
show all
Includes:
Paths
Defined in:
lib/google/cloud/channel/v1/cloud_channel_service/client.rb

Overview

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.

Defined Under Namespace

Classes: Configuration

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Paths

#channel_partner_link_path, #customer_path, #entitlement_path, #offer_path, #product_path

Constructor Details

#initialize {|config| ... } ⇒ Client

Create a new CloudChannelService client object.

Examples:


# Create a client using the default configuration
client = ::Google::Cloud::Channel::V1::CloudChannelService::Client.new

# Create a client using a custom configuration
client = ::Google::Cloud::Channel::V1::CloudChannelService::Client.new do |config|
  config.timeout = 10.0
end

Yields:

  • (config)

    Configure the CloudChannelService client.

Yield Parameters:



154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 154

def initialize
  # These require statements are intentionally placed here to initialize
  # the gRPC module only when it's required.
  # See https://github.com/googleapis/toolkit/issues/446
  require "gapic/grpc"
  require "google/cloud/channel/v1/service_services_pb"

  # Create the configuration object
  @config = Configuration.new Client.configure

  # Yield the configuration if needed
  yield @config if block_given?

  # Create credentials
  credentials = @config.credentials
  # Use self-signed JWT if the endpoint is unchanged from default,
  # but only if the default endpoint does not have a region prefix.
  enable_self_signed_jwt = @config.endpoint == Client.configure.endpoint &&
                           !@config.endpoint.split(".").first.include?("-")
  credentials ||= Credentials.default scope: @config.scope,
                                      enable_self_signed_jwt: enable_self_signed_jwt
  if credentials.is_a?(::String) || credentials.is_a?(::Hash)
    credentials = Credentials.new credentials, scope: @config.scope
  end
  @quota_project_id = @config.quota_project
  @quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id

  @operations_client = Operations.new do |config|
    config.credentials = credentials
    config.endpoint = @config.endpoint
  end

  @cloud_channel_service_stub = ::Gapic::ServiceStub.new(
    ::Google::Cloud::Channel::V1::CloudChannelService::Stub,
    credentials:  credentials,
    endpoint:     @config.endpoint,
    channel_args: @config.channel_args,
    interceptors: @config.interceptors
  )
end

Instance Attribute Details

#operations_client::Google::Cloud::Channel::V1::CloudChannelService::Operations (readonly)

Get the associated client for long-running operations.



200
201
202
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 200

def operations_client
  @operations_client
end

Class Method Details

.configure {|config| ... } ⇒ Client::Configuration

Configure the CloudChannelService Client class.

See Configuration for a description of the configuration fields.

Examples:


# Modify the configuration for all CloudChannelService clients
::Google::Cloud::Channel::V1::CloudChannelService::Client.configure do |config|
  config.timeout = 10.0
end

Yields:

  • (config)

    Configure the Client client.

Yield Parameters:

Returns:



74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 74

def self.configure
  @configure ||= begin
    namespace = ["Google", "Cloud", "Channel", "V1"]
    parent_config = while namespace.any?
                      parent_name = namespace.join "::"
                      parent_const = const_get parent_name
                      break parent_const.configure if parent_const.respond_to? :configure
                      namespace.pop
                    end
    default_config = Client::Configuration.new parent_config

    default_config.timeout = 60.0
    default_config.retry_policy = {
      initial_delay: 1.0, max_delay: 10.0, multiplier: 1.3, retry_codes: [14]
    }

    default_config.rpcs.provision_cloud_identity.timeout = 60.0

    default_config.rpcs.create_entitlement.timeout = 60.0

    default_config.rpcs.change_parameters.timeout = 60.0

    default_config.rpcs.change_renewal_settings.timeout = 60.0

    default_config.rpcs.change_offer.timeout = 60.0

    default_config.rpcs.start_paid_service.timeout = 60.0

    default_config.rpcs.suspend_entitlement.timeout = 60.0

    default_config.rpcs.cancel_entitlement.timeout = 60.0

    default_config.rpcs.activate_entitlement.timeout = 60.0

    default_config.rpcs.transfer_entitlements.timeout = 60.0

    default_config.rpcs.transfer_entitlements_to_google.timeout = 60.0

    default_config
  end
  yield @configure if block_given?
  @configure
end

Instance Method Details

#activate_entitlement(request, options = nil) ⇒ ::Gapic::Operation #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.

Examples:

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

Overloads:

  • #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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #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) (defaults to: nil)

      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) (defaults to: nil)

      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.



2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 2551

def activate_entitlement request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Channel::V1::ActivateEntitlementRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.activate_entitlement..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Channel::V1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {}
  if request.name
    header_params["name"] = request.name
  end

  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.activate_entitlement.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.activate_entitlement.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @cloud_channel_service_stub.call_rpc :activate_entitlement, request, options: options do |response, operation|
    response = ::Gapic::Operation.new response, @operations_client, options: options
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

#cancel_entitlement(request, options = nil) ⇒ ::Gapic::Operation #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.

Examples:

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

Overloads:

  • #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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #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) (defaults to: nil)

      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) (defaults to: nil)

      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.



2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 2418

def cancel_entitlement request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Channel::V1::CancelEntitlementRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.cancel_entitlement..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Channel::V1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {}
  if request.name
    header_params["name"] = request.name
  end

  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.cancel_entitlement.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.cancel_entitlement.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @cloud_channel_service_stub.call_rpc :cancel_entitlement, request, options: options do |response, operation|
    response = ::Gapic::Operation.new response, @operations_client, options: options
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

#change_offer(request, options = nil) ⇒ ::Gapic::Operation #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.

Examples:

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

Overloads:

  • #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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #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) (defaults to: nil)

      Required. The resource name of the entitlement to update. Name uses the format: accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}

    • offer (::String) (defaults to: nil)

      Required. New Offer. Format: accounts/{account_id}/offers/{offer_id}.

    • parameters (::Array<::Google::Cloud::Channel::V1::Parameter, ::Hash>) (defaults to: nil)

      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) (defaults to: nil)

      Optional. Purchase order id provided by the reseller.

    • request_id (::String) (defaults to: nil)

      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.



2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 2029

def change_offer request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Channel::V1::ChangeOfferRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.change_offer..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Channel::V1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {}
  if request.name
    header_params["name"] = request.name
  end

  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.change_offer.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.change_offer.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @cloud_channel_service_stub.call_rpc :change_offer, request, options: options do |response, operation|
    response = ::Gapic::Operation.new response, @operations_client, options: options
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

#change_parameters(request, options = nil) ⇒ ::Gapic::Operation #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.

Examples:

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

Overloads:

  • #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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #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) (defaults to: nil)

      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>) (defaults to: nil)

      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) (defaults to: nil)

      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) (defaults to: nil)

      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.



1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 1763

def change_parameters request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Channel::V1::ChangeParametersRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.change_parameters..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Channel::V1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {}
  if request.name
    header_params["name"] = request.name
  end

  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.change_parameters.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.change_parameters.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @cloud_channel_service_stub.call_rpc :change_parameters, request, options: options do |response, operation|
    response = ::Gapic::Operation.new response, @operations_client, options: options
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

#change_renewal_settings(request, options = nil) ⇒ ::Gapic::Operation #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.

Examples:

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

Overloads:

  • #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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #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) (defaults to: nil)

      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) (defaults to: nil)

      Required. New renewal settings.

    • request_id (::String) (defaults to: nil)

      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.



1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 1894

def change_renewal_settings request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Channel::V1::ChangeRenewalSettingsRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.change_renewal_settings..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Channel::V1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {}
  if request.name
    header_params["name"] = request.name
  end

  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.change_renewal_settings.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.change_renewal_settings.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @cloud_channel_service_stub.call_rpc :change_renewal_settings, request, options: options do |response, operation|
    response = ::Gapic::Operation.new response, @operations_client, options: options
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

#check_cloud_identity_accounts_exist(request, options = nil) ⇒ ::Google::Cloud::Channel::V1::CheckCloudIdentityAccountsExistResponse #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.

Examples:

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

Overloads:

Yields:

  • (response, operation)

    Access the result along with the RPC operation

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the RPC is aborted.



474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 474

def check_cloud_identity_accounts_exist request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Channel::V1::CheckCloudIdentityAccountsExistRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.check_cloud_identity_accounts_exist..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Channel::V1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {}
  if request.parent
    header_params["parent"] = request.parent
  end

  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.check_cloud_identity_accounts_exist.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.check_cloud_identity_accounts_exist.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @cloud_channel_service_stub.call_rpc :check_cloud_identity_accounts_exist, request, options: options do |response, operation|
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

#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 configure.

See Configuration for a description of the configuration fields.

Yields:

  • (config)

    Configure the Client client.

Yield Parameters:

Returns:



133
134
135
136
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 133

def configure
  yield @config if block_given?
  @config
end

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.

Examples:

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

Overloads:

  • #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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #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) (defaults to: nil)

      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) (defaults to: nil)

      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:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the RPC is aborted.



3159
3160
3161
3162
3163
3164
3165
3166
3167
3168
3169
3170
3171
3172
3173
3174
3175
3176
3177
3178
3179
3180
3181
3182
3183
3184
3185
3186
3187
3188
3189
3190
3191
3192
3193
3194
3195
3196
3197
3198
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 3159

def create_channel_partner_link request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Channel::V1::CreateChannelPartnerLinkRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.create_channel_partner_link..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Channel::V1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {}
  if request.parent
    header_params["parent"] = request.parent
  end

  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.create_channel_partner_link.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.create_channel_partner_link.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @cloud_channel_service_stub.call_rpc :create_channel_partner_link, request, options: options do |response, operation|
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

#create_customer(request, options = nil) ⇒ ::Google::Cloud::Channel::V1::Customer #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.

Examples:

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

Overloads:

  • #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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #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) (defaults to: nil)

      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) (defaults to: nil)

      Required. The customer to create.

Yields:

  • (response, operation)

    Access the result along with the RPC operation

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the RPC is aborted.



574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 574

def create_customer request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Channel::V1::CreateCustomerRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.create_customer..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Channel::V1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {}
  if request.parent
    header_params["parent"] = request.parent
  end

  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.create_customer.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.create_customer.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @cloud_channel_service_stub.call_rpc :create_customer, request, options: options do |response, operation|
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

#create_entitlement(request, options = nil) ⇒ ::Gapic::Operation #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.

Examples:

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

Overloads:

  • #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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #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) (defaults to: nil)

      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) (defaults to: nil)

      Required. The entitlement to create.

    • request_id (::String) (defaults to: nil)

      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.



1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 1627

def create_entitlement request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Channel::V1::CreateEntitlementRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.create_entitlement..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Channel::V1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {}
  if request.parent
    header_params["parent"] = request.parent
  end

  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.create_entitlement.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.create_entitlement.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @cloud_channel_service_stub.call_rpc :create_entitlement, request, options: options do |response, operation|
    response = ::Gapic::Operation.new response, @operations_client, options: options
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

#delete_customer(request, options = nil) ⇒ ::Google::Protobuf::Empty #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.

Examples:

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

Overloads:

  • #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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #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).

    Parameters:

    • name (::String) (defaults to: nil)

      Required. The resource name of the customer to delete.

Yields:

  • (response, operation)

    Access the result along with the RPC operation

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the RPC is aborted.



766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 766

def delete_customer request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Channel::V1::DeleteCustomerRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.delete_customer..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Channel::V1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {}
  if request.name
    header_params["name"] = request.name
  end

  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.delete_customer.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.delete_customer.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @cloud_channel_service_stub.call_rpc :delete_customer, request, options: options do |response, operation|
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

Returns the requested ChannelPartnerLink resource. 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.
  • NOT_FOUND: ChannelPartnerLink resource not found because of an invalid channel partner link name.

Return value: The ChannelPartnerLink resource.

Examples:

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::GetChannelPartnerLinkRequest.new

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

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

Overloads:

  • #get_channel_partner_link(request, options = nil) ⇒ ::Google::Cloud::Channel::V1::ChannelPartnerLink

    Pass arguments to get_channel_partner_link via a request object, either of type GetChannelPartnerLinkRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::Channel::V1::GetChannelPartnerLinkRequest, ::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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #get_channel_partner_link(name: nil, view: nil) ⇒ ::Google::Cloud::Channel::V1::ChannelPartnerLink

    Pass arguments to get_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:

    • name (::String) (defaults to: nil)

      Required. The resource name of the channel partner link to retrieve. Name uses the format: accounts/{account_id}/channelPartnerLinks/{id} where {id} is the Cloud Identity ID of the partner.

    • view (::Google::Cloud::Channel::V1::ChannelPartnerLinkView) (defaults to: nil)

      Optional. The level of granularity the ChannelPartnerLink will display.

Yields:

  • (response, operation)

    Access the result along with the RPC operation

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the RPC is aborted.



3047
3048
3049
3050
3051
3052
3053
3054
3055
3056
3057
3058
3059
3060
3061
3062
3063
3064
3065
3066
3067
3068
3069
3070
3071
3072
3073
3074
3075
3076
3077
3078
3079
3080
3081
3082
3083
3084
3085
3086
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 3047

def get_channel_partner_link request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Channel::V1::GetChannelPartnerLinkRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.get_channel_partner_link..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Channel::V1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {}
  if request.name
    header_params["name"] = request.name
  end

  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.get_channel_partner_link.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.get_channel_partner_link.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @cloud_channel_service_stub.call_rpc :get_channel_partner_link, request, options: options do |response, operation|
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

#get_customer(request, options = nil) ⇒ ::Google::Cloud::Channel::V1::Customer #get_customer(name: nil) ⇒ ::Google::Cloud::Channel::V1::Customer

Returns the requested Customer resource.

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: The customer resource doesn't exist. Usually the result of an invalid name parameter.

Return value: The Customer resource.

Examples:

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::GetCustomerRequest.new

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

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

Overloads:

  • #get_customer(request, options = nil) ⇒ ::Google::Cloud::Channel::V1::Customer

    Pass arguments to get_customer via a request object, either of type GetCustomerRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::Channel::V1::GetCustomerRequest, ::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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #get_customer(name: nil) ⇒ ::Google::Cloud::Channel::V1::Customer

    Pass arguments to get_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:

    • name (::String) (defaults to: nil)

      Required. The resource name of the customer to retrieve. Name uses the format: accounts/{account_id}/customers/{customer_id}

Yields:

  • (response, operation)

    Access the result along with the RPC operation

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the RPC is aborted.



371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 371

def get_customer request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Channel::V1::GetCustomerRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.get_customer..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Channel::V1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {}
  if request.name
    header_params["name"] = request.name
  end

  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.get_customer.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.get_customer.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @cloud_channel_service_stub.call_rpc :get_customer, request, options: options do |response, operation|
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

#get_entitlement(request, options = nil) ⇒ ::Google::Cloud::Channel::V1::Entitlement #get_entitlement(name: nil) ⇒ ::Google::Cloud::Channel::V1::Entitlement

Returns the requested Entitlement resource.

Possible error codes:

  • PERMISSION_DENIED: The customer doesn't belong to the reseller.
  • INVALID_ARGUMENT: Required request parameters are missing or invalid.
  • NOT_FOUND: The customer entitlement was not found.

Return value: The requested Entitlement resource.

Examples:

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::GetEntitlementRequest.new

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

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

Overloads:

  • #get_entitlement(request, options = nil) ⇒ ::Google::Cloud::Channel::V1::Entitlement

    Pass arguments to get_entitlement via a request object, either of type GetEntitlementRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::Channel::V1::GetEntitlementRequest, ::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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #get_entitlement(name: nil) ⇒ ::Google::Cloud::Channel::V1::Entitlement

    Pass arguments to get_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) (defaults to: nil)

      Required. The resource name of the entitlement to retrieve. Name uses the format: accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}

Yields:

  • (response, operation)

    Access the result along with the RPC operation

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the RPC is aborted.



1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 1484

def get_entitlement request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Channel::V1::GetEntitlementRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.get_entitlement..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Channel::V1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {}
  if request.name
    header_params["name"] = request.name
  end

  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.get_entitlement.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.get_entitlement.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @cloud_channel_service_stub.call_rpc :get_entitlement, request, options: options do |response, operation|
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

#import_customer(request, options = nil) ⇒ ::Google::Cloud::Channel::V1::Customer #import_customer(domain: nil, cloud_identity_id: nil, parent: nil, auth_token: nil, overwrite_if_exists: nil, channel_partner_id: nil, customer: nil) ⇒ ::Google::Cloud::Channel::V1::Customer

Imports a Customer from the Cloud Identity associated with the provided Cloud Identity ID or domain before a TransferEntitlements call. If a linked Customer already exists and overwrite_if_exists is true, it will update that Customer's data.

Possible error codes:

  • PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request.
  • NOT_FOUND: Cloud Identity doesn't exist or was deleted.
  • INVALID_ARGUMENT: Required parameters are missing, or the auth_token is expired or invalid.
  • ALREADY_EXISTS: A customer already exists and has conflicting critical fields. Requires an overwrite.

Return value: The Customer.

Examples:

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::ImportCustomerRequest.new

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

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

Overloads:

  • #import_customer(request, options = nil) ⇒ ::Google::Cloud::Channel::V1::Customer

    Pass arguments to import_customer via a request object, either of type ImportCustomerRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::Channel::V1::ImportCustomerRequest, ::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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #import_customer(domain: nil, cloud_identity_id: nil, parent: nil, auth_token: nil, overwrite_if_exists: nil, channel_partner_id: nil, customer: nil) ⇒ ::Google::Cloud::Channel::V1::Customer

    Pass arguments to import_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:

    • domain (::String) (defaults to: nil)

      Required. Customer domain.

    • cloud_identity_id (::String) (defaults to: nil)

      Required. Customer's Cloud Identity ID

    • parent (::String) (defaults to: nil)

      Required. The resource name of the reseller's account. Parent takes the format: accounts/{account_id} or accounts/{account_id}/channelPartnerLinks/{channel_partner_id}

    • auth_token (::String) (defaults to: nil)

      Optional. The super admin of the resold customer generates this token to authorize a reseller to access their Cloud Identity and purchase entitlements on their behalf. You can omit this token after authorization. See https://support.google.com/a/answer/7643790 for more details.

    • overwrite_if_exists (::Boolean) (defaults to: nil)

      Required. Choose to overwrite an existing customer if found. This must be set to true if there is an existing customer with a conflicting region code or domain.

    • channel_partner_id (::String) (defaults to: nil)

      Optional. Cloud Identity ID of a channel partner who will be the direct reseller for the customer's order. This field is required for 2-tier transfer scenarios and can be provided via the request Parent binding as well.

    • customer (::String) (defaults to: nil)

      Optional. Specifies the customer that will receive imported Cloud Identity information. Format: accounts/{account_id}/customers/{customer_id}

Yields:

  • (response, operation)

    Access the result along with the RPC operation

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the RPC is aborted.



890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 890

def import_customer request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Channel::V1::ImportCustomerRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.import_customer..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Channel::V1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {}
  if request.parent
    header_params["parent"] = request.parent
  end

  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.import_customer.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.import_customer.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @cloud_channel_service_stub.call_rpc :import_customer, request, options: options do |response, operation|
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

List ChannelPartnerLinks belonging to a distributor. 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.

Return value: The list of the distributor account's ChannelPartnerLink resources.

Examples:

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::ListChannelPartnerLinksRequest.new

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

# The returned object is of type Gapic::PagedEnumerable. You can
# iterate over all elements by calling #each, and the enumerable
# will lazily make API calls to fetch subsequent pages. Other
# methods are also available for managing paging directly.
result.each do |response|
  # Each element is of type ::Google::Cloud::Channel::V1::ChannelPartnerLink.
  p response
end

Overloads:

  • #list_channel_partner_links(request, options = nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::ChannelPartnerLink>

    Pass arguments to list_channel_partner_links via a request object, either of type ListChannelPartnerLinksRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::Channel::V1::ListChannelPartnerLinksRequest, ::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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #list_channel_partner_links(parent: nil, page_size: nil, page_token: nil, view: nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::ChannelPartnerLink>

    Pass arguments to list_channel_partner_links 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) (defaults to: nil)

      Required. The resource name of the reseller account for listing channel partner links. Parent uses the format: accounts/{account_id}

    • page_size (::Integer) (defaults to: nil)

      Optional. Requested page size. Server might return fewer results than requested. If unspecified, server will pick a default size (25). The maximum value is 200; the server will coerce values above 200.

    • page_token (::String) (defaults to: nil)

      Optional. A token for a page of results other than the first page. Obtained using ListChannelPartnerLinksResponse.next_page_token of the previous CloudChannelService.ListChannelPartnerLinks call.

    • view (::Google::Cloud::Channel::V1::ChannelPartnerLinkView) (defaults to: nil)

      Optional. The level of granularity the ChannelPartnerLink will display.

Yields:

  • (response, operation)

    Access the result along with the RPC operation

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the RPC is aborted.



2945
2946
2947
2948
2949
2950
2951
2952
2953
2954
2955
2956
2957
2958
2959
2960
2961
2962
2963
2964
2965
2966
2967
2968
2969
2970
2971
2972
2973
2974
2975
2976
2977
2978
2979
2980
2981
2982
2983
2984
2985
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 2945

def list_channel_partner_links request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Channel::V1::ListChannelPartnerLinksRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.list_channel_partner_links..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Channel::V1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {}
  if request.parent
    header_params["parent"] = request.parent
  end

  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.list_channel_partner_links.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.list_channel_partner_links.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @cloud_channel_service_stub.call_rpc :list_channel_partner_links, request, options: options do |response, operation|
    response = ::Gapic::PagedEnumerable.new @cloud_channel_service_stub, :list_channel_partner_links, request, response, operation, options
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

#list_customers(request, options = nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::Customer> #list_customers(parent: nil, page_size: nil, page_token: nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::Customer>

List Customers.

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.

Return value: List of Customers, or an empty list if there are no customers.

Examples:

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::ListCustomersRequest.new

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

# The returned object is of type Gapic::PagedEnumerable. You can
# iterate over all elements by calling #each, and the enumerable
# will lazily make API calls to fetch subsequent pages. Other
# methods are also available for managing paging directly.
result.each do |response|
  # Each element is of type ::Google::Cloud::Channel::V1::Customer.
  p response
end

Overloads:

  • #list_customers(request, options = nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::Customer>

    Pass arguments to list_customers via a request object, either of type ListCustomersRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::Channel::V1::ListCustomersRequest, ::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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #list_customers(parent: nil, page_size: nil, page_token: nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::Customer>

    Pass arguments to list_customers 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) (defaults to: nil)

      Required. The resource name of the reseller account to list customers from. Parent uses the format: accounts/{account_id}.

    • page_size (::Integer) (defaults to: nil)

      Optional. The maximum number of customers to return. The service may return fewer than this value. If unspecified, returns at most 10 customers. The maximum value is 50.

    • page_token (::String) (defaults to: nil)

      Optional. A token identifying a page of results other than the first page. Obtained through ListCustomersResponse.next_page_token of the previous CloudChannelService.ListCustomers call.

Yields:

  • (response, operation)

    Access the result along with the RPC operation

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the RPC is aborted.



273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 273

def list_customers request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Channel::V1::ListCustomersRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.list_customers..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Channel::V1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {}
  if request.parent
    header_params["parent"] = request.parent
  end

  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.list_customers.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.list_customers.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @cloud_channel_service_stub.call_rpc :list_customers, request, options: options do |response, operation|
    response = ::Gapic::PagedEnumerable.new @cloud_channel_service_stub, :list_customers, request, response, operation, options
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

#list_entitlements(request, options = nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::Entitlement> #list_entitlements(parent: nil, page_size: nil, page_token: nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::Entitlement>

Lists Entitlements belonging to a customer.

Possible error codes:

  • PERMISSION_DENIED: The customer doesn't belong to the reseller.
  • INVALID_ARGUMENT: Required request parameters are missing or invalid.

Return value: A list of the customer's Entitlements.

Examples:

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::ListEntitlementsRequest.new

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

# The returned object is of type Gapic::PagedEnumerable. You can
# iterate over all elements by calling #each, and the enumerable
# will lazily make API calls to fetch subsequent pages. Other
# methods are also available for managing paging directly.
result.each do |response|
  # Each element is of type ::Google::Cloud::Channel::V1::Entitlement.
  p response
end

Overloads:

  • #list_entitlements(request, options = nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::Entitlement>

    Pass arguments to list_entitlements via a request object, either of type ListEntitlementsRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::Channel::V1::ListEntitlementsRequest, ::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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #list_entitlements(parent: nil, page_size: nil, page_token: nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::Entitlement>

    Pass arguments to list_entitlements 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) (defaults to: nil)

      Required. The resource name of the reseller's customer account to list entitlements for. Parent uses the format: accounts/{account_id}/customers/{customer_id}

    • page_size (::Integer) (defaults to: nil)

      Optional. Requested page size. Server might return fewer results than requested. If unspecified, return at most 50 entitlements. The maximum value is 100; the server will coerce values above 100.

    • page_token (::String) (defaults to: nil)

      Optional. A token for a page of results other than the first page. Obtained using ListEntitlementsResponse.next_page_token of the previous CloudChannelService.ListEntitlements call.

Yields:

  • (response, operation)

    Access the result along with the RPC operation

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the RPC is aborted.



1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 1120

def list_entitlements request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Channel::V1::ListEntitlementsRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.list_entitlements..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Channel::V1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {}
  if request.parent
    header_params["parent"] = request.parent
  end

  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.list_entitlements.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.list_entitlements.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @cloud_channel_service_stub.call_rpc :list_entitlements, request, options: options do |response, operation|
    response = ::Gapic::PagedEnumerable.new @cloud_channel_service_stub, :list_entitlements, request, response, operation, options
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

#list_offers(request, options = nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::Offer> #list_offers(parent: nil, page_size: nil, page_token: nil, filter: nil, language_code: nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::Offer>

Lists the Offers the reseller can sell.

Possible error codes:

  • INVALID_ARGUMENT: Required request parameters are missing or invalid.

Examples:

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::ListOffersRequest.new

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

# The returned object is of type Gapic::PagedEnumerable. You can
# iterate over all elements by calling #each, and the enumerable
# will lazily make API calls to fetch subsequent pages. Other
# methods are also available for managing paging directly.
result.each do |response|
  # Each element is of type ::Google::Cloud::Channel::V1::Offer.
  p response
end

Overloads:

  • #list_offers(request, options = nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::Offer>

    Pass arguments to list_offers via a request object, either of type ListOffersRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::Channel::V1::ListOffersRequest, ::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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #list_offers(parent: nil, page_size: nil, page_token: nil, filter: nil, language_code: nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::Offer>

    Pass arguments to list_offers 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) (defaults to: nil)

      Required. The resource name of the reseller account from which to list Offers. Parent uses the format: accounts/{account_id}.

    • page_size (::Integer) (defaults to: nil)

      Optional. Requested page size. Server might return fewer results than requested. If unspecified, returns at most 500 Offers. The maximum value is 1000; the server will coerce values above 1000.

    • page_token (::String) (defaults to: nil)

      Optional. A token for a page of results other than the first page.

    • filter (::String) (defaults to: nil)

      Optional. The expression to filter results by name (name of the Offer), sku.name (name of the SKU), or sku.product.name (name of the Product). Example 1: sku.product.name=products/p1 AND sku.name!=products/p1/skus/s1 Example 2: name=accounts/a1/offers/o1

    • language_code (::String) (defaults to: nil)

      Optional. The BCP-47 language code. For example, "en-US". The response will localize in the corresponding language code, if specified. The default value is "en-US".

Yields:

  • (response, operation)

    Access the result along with the RPC operation

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the RPC is aborted.



3692
3693
3694
3695
3696
3697
3698
3699
3700
3701
3702
3703
3704
3705
3706
3707
3708
3709
3710
3711
3712
3713
3714
3715
3716
3717
3718
3719
3720
3721
3722
3723
3724
3725
3726
3727
3728
3729
3730
3731
3732
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 3692

def list_offers request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Channel::V1::ListOffersRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.list_offers..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Channel::V1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {}
  if request.parent
    header_params["parent"] = request.parent
  end

  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.list_offers.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.list_offers.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @cloud_channel_service_stub.call_rpc :list_offers, request, options: options do |response, operation|
    response = ::Gapic::PagedEnumerable.new @cloud_channel_service_stub, :list_offers, request, response, operation, options
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

#list_products(request, options = nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::Product> #list_products(account: nil, page_size: nil, page_token: nil, language_code: nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::Product>

Lists the Products the reseller is authorized to sell.

Possible error codes:

  • INVALID_ARGUMENT: Required request parameters are missing or invalid.

Examples:

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::ListProductsRequest.new

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

# The returned object is of type Gapic::PagedEnumerable. You can
# iterate over all elements by calling #each, and the enumerable
# will lazily make API calls to fetch subsequent pages. Other
# methods are also available for managing paging directly.
result.each do |response|
  # Each element is of type ::Google::Cloud::Channel::V1::Product.
  p response
end

Overloads:

  • #list_products(request, options = nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::Product>

    Pass arguments to list_products via a request object, either of type ListProductsRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::Channel::V1::ListProductsRequest, ::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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #list_products(account: nil, page_size: nil, page_token: nil, language_code: nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::Product>

    Pass arguments to list_products 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:

    • account (::String) (defaults to: nil)

      Required. The resource name of the reseller account. Format: accounts/{account_id}.

    • page_size (::Integer) (defaults to: nil)

      Optional. Requested page size. Server might return fewer results than requested. If unspecified, returns at most 100 Products. The maximum value is 1000; the server will coerce values above 1000.

    • page_token (::String) (defaults to: nil)

      Optional. A token for a page of results other than the first page.

    • language_code (::String) (defaults to: nil)

      Optional. The BCP-47 language code. For example, "en-US". The response will localize in the corresponding language code, if specified. The default value is "en-US".

Yields:

  • (response, operation)

    Access the result along with the RPC operation

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the RPC is aborted.



3475
3476
3477
3478
3479
3480
3481
3482
3483
3484
3485
3486
3487
3488
3489
3490
3491
3492
3493
3494
3495
3496
3497
3498
3499
3500
3501
3502
3503
3504
3505
3506
3507
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 3475

def list_products request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Channel::V1::ListProductsRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.list_products..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Channel::V1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  options.apply_defaults timeout:      @config.rpcs.list_products.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.list_products.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @cloud_channel_service_stub.call_rpc :list_products, request, options: options do |response, operation|
    response = ::Gapic::PagedEnumerable.new @cloud_channel_service_stub, :list_products, request, response, operation, options
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

#list_purchasable_offers(request, options = nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::PurchasableOffer> #list_purchasable_offers(create_entitlement_purchase: nil, change_offer_purchase: nil, customer: nil, page_size: nil, page_token: nil, language_code: nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::PurchasableOffer>

Lists the following:

  • Offers that you can purchase for a customer.
  • Offers that you can change for an entitlement.

Possible error codes:

  • PERMISSION_DENIED: The customer doesn't belong to the reseller
  • INVALID_ARGUMENT: Required request parameters are missing or invalid.

Examples:

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::ListPurchasableOffersRequest.new

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

# The returned object is of type Gapic::PagedEnumerable. You can
# iterate over all elements by calling #each, and the enumerable
# will lazily make API calls to fetch subsequent pages. Other
# methods are also available for managing paging directly.
result.each do |response|
  # Each element is of type ::Google::Cloud::Channel::V1::PurchasableOffer.
  p response
end

Overloads:

  • #list_purchasable_offers(request, options = nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::PurchasableOffer>

    Pass arguments to list_purchasable_offers via a request object, either of type ListPurchasableOffersRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::Channel::V1::ListPurchasableOffersRequest, ::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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #list_purchasable_offers(create_entitlement_purchase: nil, change_offer_purchase: nil, customer: nil, page_size: nil, page_token: nil, language_code: nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::PurchasableOffer>

    Pass arguments to list_purchasable_offers 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:

    • create_entitlement_purchase (::Google::Cloud::Channel::V1::ListPurchasableOffersRequest::CreateEntitlementPurchase, ::Hash) (defaults to: nil)

      List Offers for CreateEntitlement purchase.

    • change_offer_purchase (::Google::Cloud::Channel::V1::ListPurchasableOffersRequest::ChangeOfferPurchase, ::Hash) (defaults to: nil)

      List Offers for ChangeOffer purchase.

    • customer (::String) (defaults to: nil)

      Required. The resource name of the customer to list Offers for. Format: accounts/{account_id}/customers/{customer_id}.

    • page_size (::Integer) (defaults to: nil)

      Optional. Requested page size. Server might return fewer results than requested. If unspecified, returns at most 100 Offers. The maximum value is 1000; the server will coerce values above 1000.

    • page_token (::String) (defaults to: nil)

      Optional. A token for a page of results other than the first page.

    • language_code (::String) (defaults to: nil)

      Optional. The BCP-47 language code. For example, "en-US". The response will localize in the corresponding language code, if specified. The default value is "en-US".

Yields:

  • (response, operation)

    Access the result along with the RPC operation

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the RPC is aborted.



3922
3923
3924
3925
3926
3927
3928
3929
3930
3931
3932
3933
3934
3935
3936
3937
3938
3939
3940
3941
3942
3943
3944
3945
3946
3947
3948
3949
3950
3951
3952
3953
3954
3955
3956
3957
3958
3959
3960
3961
3962
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 3922

def list_purchasable_offers request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Channel::V1::ListPurchasableOffersRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.list_purchasable_offers..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Channel::V1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {}
  if request.customer
    header_params["customer"] = request.customer
  end

  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.list_purchasable_offers.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.list_purchasable_offers.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @cloud_channel_service_stub.call_rpc :list_purchasable_offers, request, options: options do |response, operation|
    response = ::Gapic::PagedEnumerable.new @cloud_channel_service_stub, :list_purchasable_offers, request, response, operation, options
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

#list_purchasable_skus(request, options = nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::PurchasableSku> #list_purchasable_skus(create_entitlement_purchase: nil, change_offer_purchase: nil, customer: nil, page_size: nil, page_token: nil, language_code: nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::PurchasableSku>

Lists the following:

  • SKUs that you can purchase for a customer
  • SKUs that you can upgrade or downgrade for an entitlement.

Possible error codes:

  • PERMISSION_DENIED: The customer doesn't belong to the reseller.
  • INVALID_ARGUMENT: Required request parameters are missing or invalid.

Examples:

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::ListPurchasableSkusRequest.new

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

# The returned object is of type Gapic::PagedEnumerable. You can
# iterate over all elements by calling #each, and the enumerable
# will lazily make API calls to fetch subsequent pages. Other
# methods are also available for managing paging directly.
result.each do |response|
  # Each element is of type ::Google::Cloud::Channel::V1::PurchasableSku.
  p response
end

Overloads:

  • #list_purchasable_skus(request, options = nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::PurchasableSku>

    Pass arguments to list_purchasable_skus via a request object, either of type ListPurchasableSkusRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::Channel::V1::ListPurchasableSkusRequest, ::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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #list_purchasable_skus(create_entitlement_purchase: nil, change_offer_purchase: nil, customer: nil, page_size: nil, page_token: nil, language_code: nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::PurchasableSku>

    Pass arguments to list_purchasable_skus 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:

    • create_entitlement_purchase (::Google::Cloud::Channel::V1::ListPurchasableSkusRequest::CreateEntitlementPurchase, ::Hash) (defaults to: nil)

      List SKUs for CreateEntitlement purchase.

    • change_offer_purchase (::Google::Cloud::Channel::V1::ListPurchasableSkusRequest::ChangeOfferPurchase, ::Hash) (defaults to: nil)

      List SKUs for ChangeOffer purchase with a new SKU.

    • customer (::String) (defaults to: nil)

      Required. The resource name of the customer to list SKUs for. Format: accounts/{account_id}/customers/{customer_id}.

    • page_size (::Integer) (defaults to: nil)

      Optional. Requested page size. Server might return fewer results than requested. If unspecified, returns at most 100 SKUs. The maximum value is 1000; the server will coerce values above 1000.

    • page_token (::String) (defaults to: nil)

      Optional. A token for a page of results other than the first page.

    • language_code (::String) (defaults to: nil)

      Optional. The BCP-47 language code. For example, "en-US". The response will localize in the corresponding language code, if specified. The default value is "en-US".

Yields:

  • (response, operation)

    Access the result along with the RPC operation

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the RPC is aborted.



3807
3808
3809
3810
3811
3812
3813
3814
3815
3816
3817
3818
3819
3820
3821
3822
3823
3824
3825
3826
3827
3828
3829
3830
3831
3832
3833
3834
3835
3836
3837
3838
3839
3840
3841
3842
3843
3844
3845
3846
3847
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 3807

def list_purchasable_skus request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Channel::V1::ListPurchasableSkusRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.list_purchasable_skus..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Channel::V1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {}
  if request.customer
    header_params["customer"] = request.customer
  end

  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.list_purchasable_skus.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.list_purchasable_skus.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @cloud_channel_service_stub.call_rpc :list_purchasable_skus, request, options: options do |response, operation|
    response = ::Gapic::PagedEnumerable.new @cloud_channel_service_stub, :list_purchasable_skus, request, response, operation, options
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

#list_skus(request, options = nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::Sku> #list_skus(parent: nil, account: nil, page_size: nil, page_token: nil, language_code: nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::Sku>

Lists the SKUs for a product the reseller is authorized to sell.

Possible error codes:

  • INVALID_ARGUMENT: Required request parameters are missing or invalid.

Examples:

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::ListSkusRequest.new

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

# The returned object is of type Gapic::PagedEnumerable. You can
# iterate over all elements by calling #each, and the enumerable
# will lazily make API calls to fetch subsequent pages. Other
# methods are also available for managing paging directly.
result.each do |response|
  # Each element is of type ::Google::Cloud::Channel::V1::Sku.
  p response
end

Overloads:

  • #list_skus(request, options = nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::Sku>

    Pass arguments to list_skus via a request object, either of type ListSkusRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::Channel::V1::ListSkusRequest, ::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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #list_skus(parent: nil, account: nil, page_size: nil, page_token: nil, language_code: nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::Sku>

    Pass arguments to list_skus 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) (defaults to: nil)

      Required. The resource name of the Product to list SKUs for. Parent uses the format: products/{product_id}. Supports products/- to retrieve SKUs for all products.

    • account (::String) (defaults to: nil)

      Required. Resource name of the reseller. Format: accounts/{account_id}.

    • page_size (::Integer) (defaults to: nil)

      Optional. Requested page size. Server might return fewer results than requested. If unspecified, returns at most 100 SKUs. The maximum value is 1000; the server will coerce values above 1000.

    • page_token (::String) (defaults to: nil)

      Optional. A token for a page of results other than the first page. Optional.

    • language_code (::String) (defaults to: nil)

      Optional. The BCP-47 language code. For example, "en-US". The response will localize in the corresponding language code, if specified. The default value is "en-US".

Yields:

  • (response, operation)

    Access the result along with the RPC operation

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the RPC is aborted.



3579
3580
3581
3582
3583
3584
3585
3586
3587
3588
3589
3590
3591
3592
3593
3594
3595
3596
3597
3598
3599
3600
3601
3602
3603
3604
3605
3606
3607
3608
3609
3610
3611
3612
3613
3614
3615
3616
3617
3618
3619
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 3579

def list_skus request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Channel::V1::ListSkusRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.list_skus..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Channel::V1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {}
  if request.parent
    header_params["parent"] = request.parent
  end

  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.list_skus.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.list_skus.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @cloud_channel_service_stub.call_rpc :list_skus, request, options: options do |response, operation|
    response = ::Gapic::PagedEnumerable.new @cloud_channel_service_stub, :list_skus, request, response, operation, options
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

#list_subscribers(request, options = nil) ⇒ ::Google::Cloud::Channel::V1::ListSubscribersResponse #list_subscribers(account: nil, page_size: nil, page_token: nil) ⇒ ::Google::Cloud::Channel::V1::ListSubscribersResponse

Lists service accounts with subscriber privileges on the Cloud Pub/Sub topic created for this Channel Services account.

Possible error codes:

  • PERMISSION_DENIED: The reseller account making the request and the provided reseller account are different, or the impersonated user is not a super admin.
  • INVALID_ARGUMENT: Required request parameters are missing or invalid.
  • NOT_FOUND: The topic resource doesn't exist.
  • 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: A list of service email addresses.

Examples:

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::ListSubscribersRequest.new

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

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

Overloads:

  • #list_subscribers(request, options = nil) ⇒ ::Google::Cloud::Channel::V1::ListSubscribersResponse

    Pass arguments to list_subscribers via a request object, either of type ListSubscribersRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::Channel::V1::ListSubscribersRequest, ::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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #list_subscribers(account: nil, page_size: nil, page_token: nil) ⇒ ::Google::Cloud::Channel::V1::ListSubscribersResponse

    Pass arguments to list_subscribers 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:

    • account (::String) (defaults to: nil)

      Required. Resource name of the account.

    • page_size (::Integer) (defaults to: nil)

      Optional. The maximum number of service accounts to return. The service may return fewer than this value. If unspecified, returns at most 100 service accounts. The maximum value is 1000; the server will coerce values above 1000.

    • page_token (::String) (defaults to: nil)

      Optional. A page token, received from a previous ListSubscribers call. Provide this to retrieve the subsequent page.

      When paginating, all other parameters provided to ListSubscribers must match the call that provided the page token.

Yields:

  • (response, operation)

    Access the result along with the RPC operation

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the RPC is aborted.



4245
4246
4247
4248
4249
4250
4251
4252
4253
4254
4255
4256
4257
4258
4259
4260
4261
4262
4263
4264
4265
4266
4267
4268
4269
4270
4271
4272
4273
4274
4275
4276
4277
4278
4279
4280
4281
4282
4283
4284
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 4245

def list_subscribers request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Channel::V1::ListSubscribersRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.list_subscribers..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Channel::V1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {}
  if request.
    header_params["account"] = request.
  end

  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.list_subscribers.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.list_subscribers.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @cloud_channel_service_stub.call_rpc :list_subscribers, request, options: options do |response, operation|
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

#list_transferable_offers(request, options = nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::TransferableOffer> #list_transferable_offers(cloud_identity_id: nil, customer_name: nil, parent: nil, page_size: nil, page_token: nil, sku: nil, language_code: nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::TransferableOffer>

List TransferableOffers of a customer based on Cloud Identity ID or Customer Name in the request.

Use this method when a reseller gets the entitlement information of an unowned customer. The reseller should provide the customer's Cloud Identity ID or Customer Name.

Possible error codes:

  • PERMISSION_DENIED:
    • The customer doesn't belong to the reseller and has no auth token.
    • The supplied auth token is invalid.
    • The reseller account making the request is different from the reseller account in the query.
  • INVALID_ARGUMENT: Required request parameters are missing or invalid.

Return value: List of TransferableOffer for the given customer and SKU.

Examples:

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::ListTransferableOffersRequest.new

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

# The returned object is of type Gapic::PagedEnumerable. You can
# iterate over all elements by calling #each, and the enumerable
# will lazily make API calls to fetch subsequent pages. Other
# methods are also available for managing paging directly.
result.each do |response|
  # Each element is of type ::Google::Cloud::Channel::V1::TransferableOffer.
  p response
end

Overloads:

  • #list_transferable_offers(request, options = nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::TransferableOffer>

    Pass arguments to list_transferable_offers via a request object, either of type ListTransferableOffersRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::Channel::V1::ListTransferableOffersRequest, ::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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #list_transferable_offers(cloud_identity_id: nil, customer_name: nil, parent: nil, page_size: nil, page_token: nil, sku: nil, language_code: nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::TransferableOffer>

    Pass arguments to list_transferable_offers 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:

    • cloud_identity_id (::String) (defaults to: nil)

      Customer's Cloud Identity ID

    • customer_name (::String) (defaults to: nil)

      A reseller should create a customer and use the resource name of that customer here.

    • parent (::String) (defaults to: nil)

      Required. The resource name of the reseller's account.

    • page_size (::Integer) (defaults to: nil)

      Requested page size. Server might return fewer results than requested. If unspecified, returns at most 100 offers. The maximum value is 1000; the server will coerce values above 1000.

    • page_token (::String) (defaults to: nil)

      A token for a page of results other than the first page. Obtained using ListTransferableOffersResponse.next_page_token of the previous CloudChannelService.ListTransferableOffers call.

    • sku (::String) (defaults to: nil)

      Required. The SKU to look up Offers for.

    • language_code (::String) (defaults to: nil)

      The BCP-47 language code. For example, "en-US". The response will localize in the corresponding language code, if specified. The default value is "en-US".

Yields:

  • (response, operation)

    Access the result along with the RPC operation

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the RPC is aborted.



1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 1387

def list_transferable_offers request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Channel::V1::ListTransferableOffersRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.list_transferable_offers..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Channel::V1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {}
  if request.parent
    header_params["parent"] = request.parent
  end

  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.list_transferable_offers.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.list_transferable_offers.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @cloud_channel_service_stub.call_rpc :list_transferable_offers, request, options: options do |response, operation|
    response = ::Gapic::PagedEnumerable.new @cloud_channel_service_stub, :list_transferable_offers, request, response, operation, options
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

#list_transferable_skus(request, options = nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::TransferableSku> #list_transferable_skus(cloud_identity_id: nil, customer_name: nil, parent: nil, page_size: nil, page_token: nil, auth_token: nil, language_code: nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::TransferableSku>

List TransferableSkus of a customer based on the Cloud Identity ID or Customer Name in the request.

Use this method to list the entitlements information of an unowned customer. You should provide the customer's Cloud Identity ID or Customer Name.

Possible error codes:

  • PERMISSION_DENIED:
    • The customer doesn't belong to the reseller and has no auth token.
    • The supplied auth token is invalid.
    • The reseller account making the request is different from the reseller account in the query.
  • INVALID_ARGUMENT: Required request parameters are missing or invalid.

Return value: A list of the customer's TransferableSku.

Examples:

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::ListTransferableSkusRequest.new

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

# The returned object is of type Gapic::PagedEnumerable. You can
# iterate over all elements by calling #each, and the enumerable
# will lazily make API calls to fetch subsequent pages. Other
# methods are also available for managing paging directly.
result.each do |response|
  # Each element is of type ::Google::Cloud::Channel::V1::TransferableSku.
  p response
end

Overloads:

  • #list_transferable_skus(request, options = nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::TransferableSku>

    Pass arguments to list_transferable_skus via a request object, either of type ListTransferableSkusRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::Channel::V1::ListTransferableSkusRequest, ::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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #list_transferable_skus(cloud_identity_id: nil, customer_name: nil, parent: nil, page_size: nil, page_token: nil, auth_token: nil, language_code: nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Channel::V1::TransferableSku>

    Pass arguments to list_transferable_skus 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:

    • cloud_identity_id (::String) (defaults to: nil)

      Customer's Cloud Identity ID

    • customer_name (::String) (defaults to: nil)

      A reseller is required to create a customer and use the resource name of the created customer here. Customer_name uses the format: accounts/{account_id}/customers/{customer_id}

    • parent (::String) (defaults to: nil)

      Required. The reseller account's resource name. Parent uses the format: accounts/{account_id}

    • page_size (::Integer) (defaults to: nil)

      The requested page size. Server might return fewer results than requested. If unspecified, returns at most 100 SKUs. The maximum value is 1000; the server will coerce values above 1000. Optional.

    • page_token (::String) (defaults to: nil)

      A token for a page of results other than the first page. Obtained using ListTransferableSkusResponse.next_page_token of the previous CloudChannelService.ListTransferableSkus call. Optional.

    • auth_token (::String) (defaults to: nil)

      The super admin of the resold customer generates this token to authorize a reseller to access their Cloud Identity and purchase entitlements on their behalf. You can omit this token after authorization. See https://support.google.com/a/answer/7643790 for more details.

    • language_code (::String) (defaults to: nil)

      The BCP-47 language code. For example, "en-US". The response will localize in the corresponding language code, if specified. The default value is "en-US". Optional.

Yields:

  • (response, operation)

    Access the result along with the RPC operation

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the RPC is aborted.



1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 1258

def list_transferable_skus request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Channel::V1::ListTransferableSkusRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.list_transferable_skus..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Channel::V1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {}
  if request.parent
    header_params["parent"] = request.parent
  end

  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.list_transferable_skus.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.list_transferable_skus.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @cloud_channel_service_stub.call_rpc :list_transferable_skus, request, options: options do |response, operation|
    response = ::Gapic::PagedEnumerable.new @cloud_channel_service_stub, :list_transferable_skus, request, response, operation, options
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

#lookup_offer(request, options = nil) ⇒ ::Google::Cloud::Channel::V1::Offer #lookup_offer(entitlement: nil) ⇒ ::Google::Cloud::Channel::V1::Offer

Returns the requested Offer resource.

Possible error codes:

  • PERMISSION_DENIED: The entitlement doesn't belong to the reseller.
  • INVALID_ARGUMENT: Required request parameters are missing or invalid.
  • NOT_FOUND: Entitlement or offer was not found.

Return value: The Offer resource.

Examples:

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::LookupOfferRequest.new

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

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

Overloads:

  • #lookup_offer(request, options = nil) ⇒ ::Google::Cloud::Channel::V1::Offer

    Pass arguments to lookup_offer via a request object, either of type LookupOfferRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::Channel::V1::LookupOfferRequest, ::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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #lookup_offer(entitlement: nil) ⇒ ::Google::Cloud::Channel::V1::Offer

    Pass arguments to lookup_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:

    • entitlement (::String) (defaults to: nil)

      Required. The resource name of the entitlement to retrieve the Offer. Entitlement uses the format: accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}

Yields:

  • (response, operation)

    Access the result along with the RPC operation

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the RPC is aborted.



3369
3370
3371
3372
3373
3374
3375
3376
3377
3378
3379
3380
3381
3382
3383
3384
3385
3386
3387
3388
3389
3390
3391
3392
3393
3394
3395
3396
3397
3398
3399
3400
3401
3402
3403
3404
3405
3406
3407
3408
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 3369

def lookup_offer request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Channel::V1::LookupOfferRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.lookup_offer..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Channel::V1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {}
  if request.entitlement
    header_params["entitlement"] = request.entitlement
  end

  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.lookup_offer.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.lookup_offer.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @cloud_channel_service_stub.call_rpc :lookup_offer, request, options: options do |response, operation|
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

#provision_cloud_identity(request, options = nil) ⇒ ::Gapic::Operation #provision_cloud_identity(customer: nil, cloud_identity_info: nil, user: nil, validate_only: nil) ⇒ ::Gapic::Operation

Creates a Cloud Identity for the given customer using the customer's information, or the information provided here.

Possible error codes:

  • PERMISSION_DENIED: The customer doesn't belong to the reseller.
  • INVALID_ARGUMENT: Required request parameters are missing or invalid.
  • NOT_FOUND: The customer was not found.
  • ALREADY_EXISTS: The customer's primary email already exists. Retry after changing the customer's primary contact email.
  • 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 contains an instance of OperationMetadata.

Examples:

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::ProvisionCloudIdentityRequest.new

# Call the provision_cloud_identity method.
result = client.provision_cloud_identity 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

Overloads:

  • #provision_cloud_identity(request, options = nil) ⇒ ::Gapic::Operation

    Pass arguments to provision_cloud_identity via a request object, either of type ProvisionCloudIdentityRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::Channel::V1::ProvisionCloudIdentityRequest, ::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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #provision_cloud_identity(customer: nil, cloud_identity_info: nil, user: nil, validate_only: nil) ⇒ ::Gapic::Operation

    Pass arguments to provision_cloud_identity 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:

    • customer (::String) (defaults to: nil)

      Required. Resource name of the customer. Format: accounts/{account_id}/customers/{customer_id}

    • cloud_identity_info (::Google::Cloud::Channel::V1::CloudIdentityInfo, ::Hash) (defaults to: nil)

      CloudIdentity-specific customer information.

    • user (::Google::Cloud::Channel::V1::AdminUser, ::Hash) (defaults to: nil)

      Admin user information.

    • validate_only (::Boolean) (defaults to: nil)

      Validate the request and preview the review, but do not post it.

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.



1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 1009

def provision_cloud_identity request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Channel::V1::ProvisionCloudIdentityRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.provision_cloud_identity..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Channel::V1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {}
  if request.customer
    header_params["customer"] = request.customer
  end

  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.provision_cloud_identity.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.provision_cloud_identity.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @cloud_channel_service_stub.call_rpc :provision_cloud_identity, request, options: options do |response, operation|
    response = ::Gapic::Operation.new response, @operations_client, options: options
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

#register_subscriber(request, options = nil) ⇒ ::Google::Cloud::Channel::V1::RegisterSubscriberResponse #register_subscriber(account: nil, service_account: nil) ⇒ ::Google::Cloud::Channel::V1::RegisterSubscriberResponse

Registers a service account with subscriber privileges on the Cloud Pub/Sub topic for this Channel Services account. After you create a subscriber, you get the events through SubscriberEvent

Possible error codes:

  • PERMISSION_DENIED: The reseller account making the request and the provided reseller account are different, or the impersonated user is not a super admin.
  • INVALID_ARGUMENT: Required request parameters are missing or invalid.
  • 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 topic name with the registered service email address.

Examples:

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::RegisterSubscriberRequest.new

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

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

Overloads:

  • #register_subscriber(request, options = nil) ⇒ ::Google::Cloud::Channel::V1::RegisterSubscriberResponse

    Pass arguments to register_subscriber via a request object, either of type RegisterSubscriberRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::Channel::V1::RegisterSubscriberRequest, ::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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #register_subscriber(account: nil, service_account: nil) ⇒ ::Google::Cloud::Channel::V1::RegisterSubscriberResponse

    Pass arguments to register_subscriber 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:

    • account (::String) (defaults to: nil)

      Required. Resource name of the account.

    • service_account (::String) (defaults to: nil)

      Required. Service account that provides subscriber access to the registered topic.

Yields:

  • (response, operation)

    Access the result along with the RPC operation

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the RPC is aborted.



4026
4027
4028
4029
4030
4031
4032
4033
4034
4035
4036
4037
4038
4039
4040
4041
4042
4043
4044
4045
4046
4047
4048
4049
4050
4051
4052
4053
4054
4055
4056
4057
4058
4059
4060
4061
4062
4063
4064
4065
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 4026

def register_subscriber request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Channel::V1::RegisterSubscriberRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.register_subscriber..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Channel::V1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {}
  if request.
    header_params["account"] = request.
  end

  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.register_subscriber.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.register_subscriber.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @cloud_channel_service_stub.call_rpc :register_subscriber, request, options: options do |response, operation|
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

#start_paid_service(request, options = nil) ⇒ ::Gapic::Operation #start_paid_service(name: nil, request_id: nil) ⇒ ::Gapic::Operation

Starts paid service for a trial entitlement.

Starts paid service for a trial entitlement immediately. This method is only applicable if a plan is set up for a trial entitlement but has some trial days remaining.

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.
  • FAILED_PRECONDITION/NOT_IN_TRIAL: This method only works for entitlement on trial 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.

Examples:

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::StartPaidServiceRequest.new

# Call the start_paid_service method.
result = client.start_paid_service 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

Overloads:

  • #start_paid_service(request, options = nil) ⇒ ::Gapic::Operation

    Pass arguments to start_paid_service via a request object, either of type StartPaidServiceRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::Channel::V1::StartPaidServiceRequest, ::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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #start_paid_service(name: nil, request_id: nil) ⇒ ::Gapic::Operation

    Pass arguments to start_paid_service 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) (defaults to: nil)

      Required. The name of the entitlement to start a paid service for. Name uses the format: accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}

    • request_id (::String) (defaults to: nil)

      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.



2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 2159

def start_paid_service request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Channel::V1::StartPaidServiceRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.start_paid_service..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Channel::V1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {}
  if request.name
    header_params["name"] = request.name
  end

  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.start_paid_service.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.start_paid_service.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @cloud_channel_service_stub.call_rpc :start_paid_service, request, options: options do |response, operation|
    response = ::Gapic::Operation.new response, @operations_client, options: options
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

#suspend_entitlement(request, options = nil) ⇒ ::Gapic::Operation #suspend_entitlement(name: nil, request_id: nil) ⇒ ::Gapic::Operation

Suspends a previously fulfilled entitlement.

An entitlement suspension is a long-running operation.

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_ACTIVE: Entitlement is not active.
  • 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.

Examples:

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::SuspendEntitlementRequest.new

# Call the suspend_entitlement method.
result = client.suspend_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

Overloads:

  • #suspend_entitlement(request, options = nil) ⇒ ::Gapic::Operation

    Pass arguments to suspend_entitlement via a request object, either of type SuspendEntitlementRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::Channel::V1::SuspendEntitlementRequest, ::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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #suspend_entitlement(name: nil, request_id: nil) ⇒ ::Gapic::Operation

    Pass arguments to suspend_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) (defaults to: nil)

      Required. The resource name of the entitlement to suspend. Name uses the format: accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}

    • request_id (::String) (defaults to: nil)

      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.



2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 2286

def suspend_entitlement request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Channel::V1::SuspendEntitlementRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.suspend_entitlement..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Channel::V1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {}
  if request.name
    header_params["name"] = request.name
  end

  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.suspend_entitlement.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.suspend_entitlement.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @cloud_channel_service_stub.call_rpc :suspend_entitlement, request, options: options do |response, operation|
    response = ::Gapic::Operation.new response, @operations_client, options: options
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

#transfer_entitlements(request, options = nil) ⇒ ::Gapic::Operation #transfer_entitlements(parent: nil, entitlements: nil, auth_token: nil, request_id: nil) ⇒ ::Gapic::Operation

Transfers customer entitlements to new reseller.

Possible error codes:

  • PERMISSION_DENIED: The customer doesn't belong to the reseller.
  • INVALID_ARGUMENT: Required request parameters are missing or invalid.
  • NOT_FOUND: The customer or offer resource was not found.
  • ALREADY_EXISTS: The SKU was already transferred for the customer.
  • CONDITION_NOT_MET or FAILED_PRECONDITION:
    • The SKU requires domain verification to transfer, but the domain is not verified.
    • An Add-On SKU (example, Vault or Drive) is missing the pre-requisite SKU (example, G Suite Basic).
    • (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.
    • Specify all transferring entitlements.
  • 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.

Examples:

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::TransferEntitlementsRequest.new

# Call the transfer_entitlements method.
result = client.transfer_entitlements 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

Overloads:

  • #transfer_entitlements(request, options = nil) ⇒ ::Gapic::Operation

    Pass arguments to transfer_entitlements via a request object, either of type TransferEntitlementsRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::Channel::V1::TransferEntitlementsRequest, ::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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #transfer_entitlements(parent: nil, entitlements: nil, auth_token: nil, request_id: nil) ⇒ ::Gapic::Operation

    Pass arguments to transfer_entitlements 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) (defaults to: nil)

      Required. The resource name of the reseller's customer account that will receive transferred entitlements. Parent uses the format: accounts/{account_id}/customers/{customer_id}

    • entitlements (::Array<::Google::Cloud::Channel::V1::Entitlement, ::Hash>) (defaults to: nil)

      Required. The new entitlements to create or transfer.

    • auth_token (::String) (defaults to: nil)

      The super admin of the resold customer generates this token to authorize a reseller to access their Cloud Identity and purchase entitlements on their behalf. You can omit this token after authorization. See https://support.google.com/a/answer/7643790 for more details.

    • request_id (::String) (defaults to: nil)

      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.



2693
2694
2695
2696
2697
2698
2699
2700
2701
2702
2703
2704
2705
2706
2707
2708
2709
2710
2711
2712
2713
2714
2715
2716
2717
2718
2719
2720
2721
2722
2723
2724
2725
2726
2727
2728
2729
2730
2731
2732
2733
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 2693

def transfer_entitlements request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Channel::V1::TransferEntitlementsRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.transfer_entitlements..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Channel::V1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {}
  if request.parent
    header_params["parent"] = request.parent
  end

  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.transfer_entitlements.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.transfer_entitlements.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @cloud_channel_service_stub.call_rpc :transfer_entitlements, request, options: options do |response, operation|
    response = ::Gapic::Operation.new response, @operations_client, options: options
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

#transfer_entitlements_to_google(request, options = nil) ⇒ ::Gapic::Operation #transfer_entitlements_to_google(parent: nil, entitlements: nil, request_id: nil) ⇒ ::Gapic::Operation

Transfers customer entitlements from their current reseller to Google.

Possible error codes:

  • PERMISSION_DENIED: The customer doesn't belong to the reseller.
  • INVALID_ARGUMENT: Required request parameters are missing or invalid.
  • NOT_FOUND: The customer or offer resource was not found.
  • ALREADY_EXISTS: The SKU was already transferred for the customer.
  • CONDITION_NOT_MET or FAILED_PRECONDITION:
    • The SKU requires domain verification to transfer, but the domain is not verified.
    • An Add-On SKU (example, Vault or Drive) is missing the pre-requisite SKU (example, G Suite Basic).
    • (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 response will contain google.protobuf.Empty on success. The Operation metadata will contain an instance of OperationMetadata.

Examples:

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::TransferEntitlementsToGoogleRequest.new

# Call the transfer_entitlements_to_google method.
result = client.transfer_entitlements_to_google 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

Overloads:

  • #transfer_entitlements_to_google(request, options = nil) ⇒ ::Gapic::Operation

    Pass arguments to transfer_entitlements_to_google via a request object, either of type TransferEntitlementsToGoogleRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::Channel::V1::TransferEntitlementsToGoogleRequest, ::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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #transfer_entitlements_to_google(parent: nil, entitlements: nil, request_id: nil) ⇒ ::Gapic::Operation

    Pass arguments to transfer_entitlements_to_google 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) (defaults to: nil)

      Required. The resource name of the reseller's customer account where the entitlements transfer from. Parent uses the format: accounts/{account_id}/customers/{customer_id}

    • entitlements (::Array<::Google::Cloud::Channel::V1::Entitlement, ::Hash>) (defaults to: nil)

      Required. The entitlements to transfer to Google.

    • request_id (::String) (defaults to: nil)

      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.



2830
2831
2832
2833
2834
2835
2836
2837
2838
2839
2840
2841
2842
2843
2844
2845
2846
2847
2848
2849
2850
2851
2852
2853
2854
2855
2856
2857
2858
2859
2860
2861
2862
2863
2864
2865
2866
2867
2868
2869
2870
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 2830

def transfer_entitlements_to_google request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Channel::V1::TransferEntitlementsToGoogleRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.transfer_entitlements_to_google..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Channel::V1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {}
  if request.parent
    header_params["parent"] = request.parent
  end

  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.transfer_entitlements_to_google.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.transfer_entitlements_to_google.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @cloud_channel_service_stub.call_rpc :transfer_entitlements_to_google, request, options: options do |response, operation|
    response = ::Gapic::Operation.new response, @operations_client, options: options
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

#unregister_subscriber(request, options = nil) ⇒ ::Google::Cloud::Channel::V1::UnregisterSubscriberResponse #unregister_subscriber(account: nil, service_account: nil) ⇒ ::Google::Cloud::Channel::V1::UnregisterSubscriberResponse

Unregisters a service account with subscriber privileges on the Cloud Pub/Sub topic created for this Channel Services account. If there are no service accounts left with subscriber privileges, this deletes the topic. You can call ListSubscribers to check for these accounts.

Possible error codes:

  • PERMISSION_DENIED: The reseller account making the request and the provided reseller account are different, or the impersonated user is not a super admin.
  • INVALID_ARGUMENT: Required request parameters are missing or invalid.
  • NOT_FOUND: The topic resource doesn't exist.
  • 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 topic name that unregistered the service email address. Returns a success response if the service email address wasn't registered with the topic.

Examples:

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::UnregisterSubscriberRequest.new

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

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

Overloads:

  • #unregister_subscriber(request, options = nil) ⇒ ::Google::Cloud::Channel::V1::UnregisterSubscriberResponse

    Pass arguments to unregister_subscriber via a request object, either of type UnregisterSubscriberRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::Channel::V1::UnregisterSubscriberRequest, ::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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #unregister_subscriber(account: nil, service_account: nil) ⇒ ::Google::Cloud::Channel::V1::UnregisterSubscriberResponse

    Pass arguments to unregister_subscriber 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:

    • account (::String) (defaults to: nil)

      Required. Resource name of the account.

    • service_account (::String) (defaults to: nil)

      Required. Service account to unregister from subscriber access to the topic.

Yields:

  • (response, operation)

    Access the result along with the RPC operation

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the RPC is aborted.



4133
4134
4135
4136
4137
4138
4139
4140
4141
4142
4143
4144
4145
4146
4147
4148
4149
4150
4151
4152
4153
4154
4155
4156
4157
4158
4159
4160
4161
4162
4163
4164
4165
4166
4167
4168
4169
4170
4171
4172
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 4133

def unregister_subscriber request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Channel::V1::UnregisterSubscriberRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.unregister_subscriber..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Channel::V1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {}
  if request.
    header_params["account"] = request.
  end

  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.unregister_subscriber.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.unregister_subscriber.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @cloud_channel_service_stub.call_rpc :unregister_subscriber, request, options: options do |response, operation|
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

Updates a channel partner link. Distributors call this method to change a link's status. For example, to suspend a partner link. 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.
    • Link state cannot change from invited to active or suspended.
    • Cannot send reseller_cloud_identity_id, invite_url, or name in update mask.
  • NOT_FOUND: ChannelPartnerLink 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 updated ChannelPartnerLink resource.

Examples:

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::UpdateChannelPartnerLinkRequest.new

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

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

Overloads:

  • #update_channel_partner_link(request, options = nil) ⇒ ::Google::Cloud::Channel::V1::ChannelPartnerLink

    Pass arguments to update_channel_partner_link via a request object, either of type UpdateChannelPartnerLinkRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::Channel::V1::UpdateChannelPartnerLinkRequest, ::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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #update_channel_partner_link(name: nil, channel_partner_link: nil, update_mask: nil) ⇒ ::Google::Cloud::Channel::V1::ChannelPartnerLink

    Pass arguments to update_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:

    • name (::String) (defaults to: nil)

      Required. The resource name of the channel partner link to cancel. Name uses the format: accounts/{account_id}/channelPartnerLinks/{id} where {id} is the Cloud Identity ID of the partner.

    • channel_partner_link (::Google::Cloud::Channel::V1::ChannelPartnerLink, ::Hash) (defaults to: nil)

      Required. The channel partner link to update. Only channel_partner_link.link_state is allowed for updates.

    • update_mask (::Google::Protobuf::FieldMask, ::Hash) (defaults to: nil)

      Required. The update mask that applies to the resource. The only allowable value for an update mask is channel_partner_link.link_state.

Yields:

  • (response, operation)

    Access the result along with the RPC operation

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the RPC is aborted.



3273
3274
3275
3276
3277
3278
3279
3280
3281
3282
3283
3284
3285
3286
3287
3288
3289
3290
3291
3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
3311
3312
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 3273

def update_channel_partner_link request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Channel::V1::UpdateChannelPartnerLinkRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.update_channel_partner_link..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Channel::V1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {}
  if request.name
    header_params["name"] = request.name
  end

  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.update_channel_partner_link.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.update_channel_partner_link.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @cloud_channel_service_stub.call_rpc :update_channel_partner_link, request, options: options do |response, operation|
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

#update_customer(request, options = nil) ⇒ ::Google::Cloud::Channel::V1::Customer #update_customer(customer: nil, update_mask: nil) ⇒ ::Google::Cloud::Channel::V1::Customer

Updates an existing Customer resource for the reseller or distributor.

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: No Customer resource found for the name in the request.

Return value: The updated Customer resource.

Examples:

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::UpdateCustomerRequest.new

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

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

Overloads:

  • #update_customer(request, options = nil) ⇒ ::Google::Cloud::Channel::V1::Customer

    Pass arguments to update_customer via a request object, either of type UpdateCustomerRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::Channel::V1::UpdateCustomerRequest, ::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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #update_customer(customer: nil, update_mask: nil) ⇒ ::Google::Cloud::Channel::V1::Customer

    Pass arguments to update_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:

Yields:

  • (response, operation)

    Access the result along with the RPC operation

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the RPC is aborted.



673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
# File 'lib/google/cloud/channel/v1/cloud_channel_service/client.rb', line 673

def update_customer request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Channel::V1::UpdateCustomerRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.update_customer..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Channel::V1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {}
  if request.customer&.name
    header_params["customer.name"] = request.customer.name
  end

  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.update_customer.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.update_customer.retry_policy

  options.apply_defaults timeout:      @config.timeout,
                         metadata:     @config.,
                         retry_policy: @config.retry_policy

  @cloud_channel_service_stub.call_rpc :update_customer, request, options: options do |response, operation|
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end