By default, this returns an instance ofGoogle::Cloud::Billing::V1::CloudBilling::Clientfor a gRPC client for version V1 of the API.
However, you can specify a different API version by passing it in theversionparameter. If the CloudBilling service is
supported by that API version, and the corresponding gem is available, the
appropriate versioned client will be returned.
You can also specify a different transport by passing:restor:grpcin
thetransportparameter.
Raises an exception if the currently installed versioned client gem for the
given API version does not support the given transport of the CloudBilling service.
You can determine whether the method will succeed by callingBilling.cloud_billing_service_available?.
About CloudBilling
Retrieves the Google Cloud Console billing accounts and associates them with
projects.
Parameters
version(::String, ::Symbol)(defaults to: :v1)— The API version to connect to. Optional.
Defaults to:v1.
transport(:grpc, :rest)(defaults to: :grpc)— The transport to use. Defaults to:grpc.
Returns
(::Object) — A client object for the specified version.
Determines whether the CloudBilling service is supported by the current client.
If true, you can retrieve a client object by callingBilling.cloud_billing_service.
If false, that method will raise an exception. This could happen if the given
API version does not exist or does not support the CloudBilling service,
or if the versioned client gem needs an update to support the CloudBilling service.
Parameters
version(::String, ::Symbol)(defaults to: :v1)— The API version to connect to. Optional.
Defaults to:v1.
transport(:grpc, :rest)(defaults to: :grpc)— The transport to use. Defaults to:grpc.
By default, this returns an instance ofGoogle::Cloud::Billing::V1::CloudCatalog::Clientfor a gRPC client for version V1 of the API.
However, you can specify a different API version by passing it in theversionparameter. If the CloudCatalog service is
supported by that API version, and the corresponding gem is available, the
appropriate versioned client will be returned.
You can also specify a different transport by passing:restor:grpcin
thetransportparameter.
Raises an exception if the currently installed versioned client gem for the
given API version does not support the given transport of the CloudCatalog service.
You can determine whether the method will succeed by callingBilling.cloud_catalog_service_available?.
About CloudCatalog
A catalog of Google Cloud Platform services and SKUs.
Provides pricing information and metadata on Google Cloud Platform services
and SKUs.
Parameters
version(::String, ::Symbol)(defaults to: :v1)— The API version to connect to. Optional.
Defaults to:v1.
transport(:grpc, :rest)(defaults to: :grpc)— The transport to use. Defaults to:grpc.
Returns
(::Object) — A client object for the specified version.
Determines whether the CloudCatalog service is supported by the current client.
If true, you can retrieve a client object by callingBilling.cloud_catalog_service.
If false, that method will raise an exception. This could happen if the given
API version does not exist or does not support the CloudCatalog service,
or if the versioned client gem needs an update to support the CloudCatalog service.
Parameters
version(::String, ::Symbol)(defaults to: :v1)— The API version to connect to. Optional.
Defaults to:v1.
transport(:grpc, :rest)(defaults to: :grpc)— The transport to use. Defaults to:grpc.
Returns
(boolean) — Whether the service is available.
.configure
defself.configure()->::Google::Cloud::Config
Configure the google-cloud-billing library.
The following configuration parameters are supported:
credentials(type:String, Hash, Google::Auth::Credentials) -
The path to the keyfile as a String, the contents of the keyfile as a
Hash, or a Google::Auth::Credentials object.
lib_name(type:String) -
The library name as recorded in instrumentation and logging.
lib_version(type:String) -
The library version as recorded in instrumentation and logging.
interceptors(type:Array<GRPC::ClientInterceptor>) -
An array of interceptors that are run before calls are executed.
timeout(type:Numeric) -
Default timeout in seconds.
metadata(type:Hash{Symbol=>String}) -
Additional headers to be sent with the call.
retry_policy(type:Hash) -
The retry policy. The value is a hash with the following keys:
:initial_delay(type:Numeric) - The initial delay in seconds.
:max_delay(type:Numeric) - The max delay in seconds.
:multiplier(type:Numeric) - The incremental backoff multiplier.
:retry_codes(type:Array<String>) -
The error codes that should trigger a retry.
Yields
(::Google::Cloud.configure.billing)
Returns
(::Google::Cloud::Config) — The default configuration used by this library
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-09-04 UTC."],[],[],null,["# Billing API - Module Google::Cloud::Billing (v1.6.1)\n\nVersion latestkeyboard_arrow_down\n\n- [1.6.1 (latest)](/ruby/docs/reference/google-cloud-billing/latest/Google-Cloud-Billing)\n- [1.6.0](/ruby/docs/reference/google-cloud-billing/1.6.0/Google-Cloud-Billing)\n- [1.5.1](/ruby/docs/reference/google-cloud-billing/1.5.1/Google-Cloud-Billing)\n- [1.4.0](/ruby/docs/reference/google-cloud-billing/1.4.0/Google-Cloud-Billing)\n- [1.3.0](/ruby/docs/reference/google-cloud-billing/1.3.0/Google-Cloud-Billing)\n- [1.2.0](/ruby/docs/reference/google-cloud-billing/1.2.0/Google-Cloud-Billing)\n- [1.1.3](/ruby/docs/reference/google-cloud-billing/1.1.3/Google-Cloud-Billing) \nReference documentation and code samples for the Billing API module Google::Cloud::Billing.\n\nMethods\n-------\n\n### .cloud_billing_service\n\n def self.cloud_billing_service(version: :v1, transport: :grpc, &block) -\u003e ::Object\n\nCreate a new client object for CloudBilling.\n\n\nBy default, this returns an instance of\n[Google::Cloud::Billing::V1::CloudBilling::Client](https://cloud.google.com/ruby/docs/reference/google-cloud-billing-v1/latest/Google-Cloud-Billing-V1-CloudBilling-Client)\nfor a gRPC client for version V1 of the API.\nHowever, you can specify a different API version by passing it in the\n`version` parameter. If the CloudBilling service is\nsupported by that API version, and the corresponding gem is available, the\nappropriate versioned client will be returned.\nYou can also specify a different transport by passing `:rest` or `:grpc` in\nthe `transport` parameter.\n\n\u003cbr /\u003e\n\nRaises an exception if the currently installed versioned client gem for the\ngiven API version does not support the given transport of the CloudBilling service.\nYou can determine whether the method will succeed by calling\n[Billing.cloud_billing_service_available?](/ruby/docs/reference/google-cloud-billing/latest/Google-Cloud-Billing#Google__Cloud__Billing_cloud_billing_service_available__class_ \"Google::Cloud::Billing.cloud_billing_service_available? (method)\").\n\n#### About CloudBilling\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\nRetrieves the Google Cloud Console billing accounts and associates them with\nprojects. \n**Parameters**\n\n- **version** (::String, ::Symbol) *(defaults to: :v1)* --- The API version to connect to. Optional. Defaults to `:v1`.\n- **transport** (:grpc, :rest) *(defaults to: :grpc)* --- The transport to use. Defaults to `:grpc`. \n**Returns**\n\n- (::Object) --- A client object for the specified version.\n\n### .cloud_billing_service_available?\n\n def self.cloud_billing_service_available?(version: :v1, transport: :grpc) -\u003e boolean\n\nDetermines whether the CloudBilling service is supported by the current client.\nIf true, you can retrieve a client object by calling [Billing.cloud_billing_service](/ruby/docs/reference/google-cloud-billing/latest/Google-Cloud-Billing#Google__Cloud__Billing_cloud_billing_service_class_ \"Google::Cloud::Billing.cloud_billing_service (method)\").\nIf false, that method will raise an exception. This could happen if the given\nAPI version does not exist or does not support the CloudBilling service,\nor if the versioned client gem needs an update to support the CloudBilling service. \n**Parameters**\n\n- **version** (::String, ::Symbol) *(defaults to: :v1)* --- The API version to connect to. Optional. Defaults to `:v1`.\n- **transport** (:grpc, :rest) *(defaults to: :grpc)* --- The transport to use. Defaults to `:grpc`. \n**Returns**\n\n- (boolean) --- Whether the service is available.\n\n### .cloud_catalog_service\n\n def self.cloud_catalog_service(version: :v1, transport: :grpc, &block) -\u003e ::Object\n\nCreate a new client object for CloudCatalog.\n\n\nBy default, this returns an instance of\n[Google::Cloud::Billing::V1::CloudCatalog::Client](https://cloud.google.com/ruby/docs/reference/google-cloud-billing-v1/latest/Google-Cloud-Billing-V1-CloudCatalog-Client)\nfor a gRPC client for version V1 of the API.\nHowever, you can specify a different API version by passing it in the\n`version` parameter. If the CloudCatalog service is\nsupported by that API version, and the corresponding gem is available, the\nappropriate versioned client will be returned.\nYou can also specify a different transport by passing `:rest` or `:grpc` in\nthe `transport` parameter.\n\n\u003cbr /\u003e\n\nRaises an exception if the currently installed versioned client gem for the\ngiven API version does not support the given transport of the CloudCatalog service.\nYou can determine whether the method will succeed by calling\n[Billing.cloud_catalog_service_available?](/ruby/docs/reference/google-cloud-billing/latest/Google-Cloud-Billing#Google__Cloud__Billing_cloud_catalog_service_available__class_ \"Google::Cloud::Billing.cloud_catalog_service_available? (method)\").\n\n#### About CloudCatalog\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\nA catalog of Google Cloud Platform services and SKUs.\nProvides pricing information and metadata on Google Cloud Platform services\nand SKUs. \n**Parameters**\n\n- **version** (::String, ::Symbol) *(defaults to: :v1)* --- The API version to connect to. Optional. Defaults to `:v1`.\n- **transport** (:grpc, :rest) *(defaults to: :grpc)* --- The transport to use. Defaults to `:grpc`. \n**Returns**\n\n- (::Object) --- A client object for the specified version.\n\n### .cloud_catalog_service_available?\n\n def self.cloud_catalog_service_available?(version: :v1, transport: :grpc) -\u003e boolean\n\nDetermines whether the CloudCatalog service is supported by the current client.\nIf true, you can retrieve a client object by calling [Billing.cloud_catalog_service](/ruby/docs/reference/google-cloud-billing/latest/Google-Cloud-Billing#Google__Cloud__Billing_cloud_catalog_service_class_ \"Google::Cloud::Billing.cloud_catalog_service (method)\").\nIf false, that method will raise an exception. This could happen if the given\nAPI version does not exist or does not support the CloudCatalog service,\nor if the versioned client gem needs an update to support the CloudCatalog service. \n**Parameters**\n\n- **version** (::String, ::Symbol) *(defaults to: :v1)* --- The API version to connect to. Optional. Defaults to `:v1`.\n- **transport** (:grpc, :rest) *(defaults to: :grpc)* --- The transport to use. Defaults to `:grpc`. \n**Returns**\n\n- (boolean) --- Whether the service is available.\n\n### .configure\n\n def self.configure() -\u003e ::Google::Cloud::Config\n\nConfigure the google-cloud-billing library.\n\nThe following configuration parameters are supported:\n\n- `credentials` (*type:* `String, Hash, Google::Auth::Credentials`) - The path to the keyfile as a String, the contents of the keyfile as a Hash, or a Google::Auth::Credentials object.\n- `lib_name` (*type:* `String`) - The library name as recorded in instrumentation and logging.\n- `lib_version` (*type:* `String`) - The library version as recorded in instrumentation and logging.\n- `interceptors` (*type:* `Array\u003cGRPC::ClientInterceptor\u003e`) - An array of interceptors that are run before calls are executed.\n- `timeout` (*type:* `Numeric`) - Default timeout in seconds.\n- `metadata` (*type:* `Hash{Symbol=\u003eString}`) - Additional headers to be sent with the call.\n- `retry_policy` (*type:* `Hash`) - The retry policy. The value is a hash with the following keys:\n - `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds.\n - `:max_delay` (*type:* `Numeric`) - The max delay in seconds.\n - `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier.\n- `:retry_codes` (*type:* `Array\u003cString\u003e`) - The error codes that should trigger a retry. \n**Yields**\n\n- (::Google::Cloud.configure.billing) \n**Returns**\n\n- (::Google::Cloud::Config) --- The default configuration used by this library\n\nConstants\n---------\n\n### VERSION\n\n**value:**\"1.6.1\".freeze"]]