google-apis-cloudbilling_v1beta 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.yardopts +13 -0
- data/CHANGELOG.md +7 -0
- data/LICENSE.md +202 -0
- data/OVERVIEW.md +96 -0
- data/lib/google/apis/cloudbilling_v1beta/classes.rb +1134 -0
- data/lib/google/apis/cloudbilling_v1beta/gem_version.rb +28 -0
- data/lib/google/apis/cloudbilling_v1beta/representations.rb +588 -0
- data/lib/google/apis/cloudbilling_v1beta/service.rb +129 -0
- data/lib/google/apis/cloudbilling_v1beta.rb +43 -0
- data/lib/google-apis-cloudbilling_v1beta.rb +15 -0
- metadata +82 -0
@@ -0,0 +1,129 @@
|
|
1
|
+
# Copyright 2020 Google LLC
|
2
|
+
#
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at
|
6
|
+
#
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
|
15
|
+
require 'google/apis/core/base_service'
|
16
|
+
require 'google/apis/core/json_representation'
|
17
|
+
require 'google/apis/core/hashable'
|
18
|
+
require 'google/apis/errors'
|
19
|
+
|
20
|
+
module Google
|
21
|
+
module Apis
|
22
|
+
module CloudbillingV1beta
|
23
|
+
# Cloud Billing API
|
24
|
+
#
|
25
|
+
# Allows developers to manage billing for their Google Cloud Platform projects
|
26
|
+
# programmatically.
|
27
|
+
#
|
28
|
+
# @example
|
29
|
+
# require 'google/apis/cloudbilling_v1beta'
|
30
|
+
#
|
31
|
+
# Cloudbilling = Google::Apis::CloudbillingV1beta # Alias the module
|
32
|
+
# service = Cloudbilling::CloudbillingService.new
|
33
|
+
#
|
34
|
+
# @see https://cloud.google.com/billing/
|
35
|
+
class CloudbillingService < Google::Apis::Core::BaseService
|
36
|
+
# @return [String]
|
37
|
+
# API key. Your API key identifies your project and provides you with API access,
|
38
|
+
# quota, and reports. Required unless you provide an OAuth 2.0 token.
|
39
|
+
attr_accessor :key
|
40
|
+
|
41
|
+
# @return [String]
|
42
|
+
# Available to use for quota purposes for server-side applications. Can be any
|
43
|
+
# arbitrary string assigned to a user, but should not exceed 40 characters.
|
44
|
+
attr_accessor :quota_user
|
45
|
+
|
46
|
+
def initialize
|
47
|
+
super('https://cloudbilling.googleapis.com/', '',
|
48
|
+
client_name: 'google-apis-cloudbilling_v1beta',
|
49
|
+
client_version: Google::Apis::CloudbillingV1beta::GEM_VERSION)
|
50
|
+
@batch_path = 'batch'
|
51
|
+
end
|
52
|
+
|
53
|
+
# Use custom pricing in the estimate, using a `CostScenario` with a defined `
|
54
|
+
# billingAccount`.
|
55
|
+
# @param [String] billing_account
|
56
|
+
# Resource name of the billing account for the cost estimate. The resource name
|
57
|
+
# has the form `billingAccounts/`billing_acount_id``. For example, `
|
58
|
+
# billingAccounts/012345-567890-ABCDEF` is the resource name for billing account
|
59
|
+
# `012345-567890-ABCDEF`. Must be specified.
|
60
|
+
# @param [Google::Apis::CloudbillingV1beta::EstimateCostScenarioForBillingAccountRequest] estimate_cost_scenario_for_billing_account_request_object
|
61
|
+
# @param [String] fields
|
62
|
+
# Selector specifying which fields to include in a partial response.
|
63
|
+
# @param [String] quota_user
|
64
|
+
# Available to use for quota purposes for server-side applications. Can be any
|
65
|
+
# arbitrary string assigned to a user, but should not exceed 40 characters.
|
66
|
+
# @param [Google::Apis::RequestOptions] options
|
67
|
+
# Request-specific options
|
68
|
+
#
|
69
|
+
# @yield [result, err] Result & error if block supplied
|
70
|
+
# @yieldparam result [Google::Apis::CloudbillingV1beta::EstimateCostScenarioForBillingAccountResponse] parsed result object
|
71
|
+
# @yieldparam err [StandardError] error object if request failed
|
72
|
+
#
|
73
|
+
# @return [Google::Apis::CloudbillingV1beta::EstimateCostScenarioForBillingAccountResponse]
|
74
|
+
#
|
75
|
+
# @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
|
76
|
+
# @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
|
77
|
+
# @raise [Google::Apis::AuthorizationError] Authorization is required
|
78
|
+
def estimate_cost_scenario_for_billing_account(billing_account, estimate_cost_scenario_for_billing_account_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
|
79
|
+
command = make_simple_command(:post, 'v1beta/{+billingAccount}:estimateCostScenario', options)
|
80
|
+
command.request_representation = Google::Apis::CloudbillingV1beta::EstimateCostScenarioForBillingAccountRequest::Representation
|
81
|
+
command.request_object = estimate_cost_scenario_for_billing_account_request_object
|
82
|
+
command.response_representation = Google::Apis::CloudbillingV1beta::EstimateCostScenarioForBillingAccountResponse::Representation
|
83
|
+
command.response_class = Google::Apis::CloudbillingV1beta::EstimateCostScenarioForBillingAccountResponse
|
84
|
+
command.params['billingAccount'] = billing_account unless billing_account.nil?
|
85
|
+
command.query['fields'] = fields unless fields.nil?
|
86
|
+
command.query['quotaUser'] = quota_user unless quota_user.nil?
|
87
|
+
execute_or_queue_command(command, &block)
|
88
|
+
end
|
89
|
+
|
90
|
+
# Estimate list prices using a `CostScenario` without a defined `billingAccount`.
|
91
|
+
# @param [Google::Apis::CloudbillingV1beta::EstimateCostScenarioWithListPriceRequest] estimate_cost_scenario_with_list_price_request_object
|
92
|
+
# @param [String] fields
|
93
|
+
# Selector specifying which fields to include in a partial response.
|
94
|
+
# @param [String] quota_user
|
95
|
+
# Available to use for quota purposes for server-side applications. Can be any
|
96
|
+
# arbitrary string assigned to a user, but should not exceed 40 characters.
|
97
|
+
# @param [Google::Apis::RequestOptions] options
|
98
|
+
# Request-specific options
|
99
|
+
#
|
100
|
+
# @yield [result, err] Result & error if block supplied
|
101
|
+
# @yieldparam result [Google::Apis::CloudbillingV1beta::EstimateCostScenarioWithListPriceResponse] parsed result object
|
102
|
+
# @yieldparam err [StandardError] error object if request failed
|
103
|
+
#
|
104
|
+
# @return [Google::Apis::CloudbillingV1beta::EstimateCostScenarioWithListPriceResponse]
|
105
|
+
#
|
106
|
+
# @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
|
107
|
+
# @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
|
108
|
+
# @raise [Google::Apis::AuthorizationError] Authorization is required
|
109
|
+
def estimate_cost_scenario_with_list_price(estimate_cost_scenario_with_list_price_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
|
110
|
+
command = make_simple_command(:post, 'v1beta:estimateCostScenario', options)
|
111
|
+
command.request_representation = Google::Apis::CloudbillingV1beta::EstimateCostScenarioWithListPriceRequest::Representation
|
112
|
+
command.request_object = estimate_cost_scenario_with_list_price_request_object
|
113
|
+
command.response_representation = Google::Apis::CloudbillingV1beta::EstimateCostScenarioWithListPriceResponse::Representation
|
114
|
+
command.response_class = Google::Apis::CloudbillingV1beta::EstimateCostScenarioWithListPriceResponse
|
115
|
+
command.query['fields'] = fields unless fields.nil?
|
116
|
+
command.query['quotaUser'] = quota_user unless quota_user.nil?
|
117
|
+
execute_or_queue_command(command, &block)
|
118
|
+
end
|
119
|
+
|
120
|
+
protected
|
121
|
+
|
122
|
+
def apply_command_defaults(command)
|
123
|
+
command.query['key'] = key unless key.nil?
|
124
|
+
command.query['quotaUser'] = quota_user unless quota_user.nil?
|
125
|
+
end
|
126
|
+
end
|
127
|
+
end
|
128
|
+
end
|
129
|
+
end
|
@@ -0,0 +1,43 @@
|
|
1
|
+
# Copyright 2020 Google LLC
|
2
|
+
#
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at
|
6
|
+
#
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
|
15
|
+
require 'google/apis/cloudbilling_v1beta/service.rb'
|
16
|
+
require 'google/apis/cloudbilling_v1beta/classes.rb'
|
17
|
+
require 'google/apis/cloudbilling_v1beta/representations.rb'
|
18
|
+
require 'google/apis/cloudbilling_v1beta/gem_version.rb'
|
19
|
+
|
20
|
+
module Google
|
21
|
+
module Apis
|
22
|
+
# Cloud Billing API
|
23
|
+
#
|
24
|
+
# Allows developers to manage billing for their Google Cloud Platform projects
|
25
|
+
# programmatically.
|
26
|
+
#
|
27
|
+
# @see https://cloud.google.com/billing/
|
28
|
+
module CloudbillingV1beta
|
29
|
+
# Version of the Cloud Billing API this client connects to.
|
30
|
+
# This is NOT the gem version.
|
31
|
+
VERSION = 'V1beta'
|
32
|
+
|
33
|
+
# View and manage your Google Cloud Platform billing accounts
|
34
|
+
AUTH_CLOUD_BILLING = 'https://www.googleapis.com/auth/cloud-billing'
|
35
|
+
|
36
|
+
# View your Google Cloud Platform billing accounts
|
37
|
+
AUTH_CLOUD_BILLING_READONLY = 'https://www.googleapis.com/auth/cloud-billing.readonly'
|
38
|
+
|
39
|
+
# See, edit, configure, and delete your Google Cloud data and see the email address for your Google Account.
|
40
|
+
AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
@@ -0,0 +1,15 @@
|
|
1
|
+
# Copyright 2020 Google LLC
|
2
|
+
#
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at
|
6
|
+
#
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
|
15
|
+
require "google/apis/cloudbilling_v1beta"
|
metadata
ADDED
@@ -0,0 +1,82 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: google-apis-cloudbilling_v1beta
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Google LLC
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2022-09-26 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: google-apis-core
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: 0.9.0
|
20
|
+
- - "<"
|
21
|
+
- !ruby/object:Gem::Version
|
22
|
+
version: 2.a
|
23
|
+
type: :runtime
|
24
|
+
prerelease: false
|
25
|
+
version_requirements: !ruby/object:Gem::Requirement
|
26
|
+
requirements:
|
27
|
+
- - ">="
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: 0.9.0
|
30
|
+
- - "<"
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: 2.a
|
33
|
+
description: This is the simple REST client for Cloud Billing API V1beta. Simple REST
|
34
|
+
clients are Ruby client libraries that provide access to Google services via their
|
35
|
+
HTTP REST API endpoints. These libraries are generated and updated automatically
|
36
|
+
based on the discovery documents published by the service, and they handle most
|
37
|
+
concerns such as authentication, pagination, retry, timeouts, and logging. You can
|
38
|
+
use this client to access the Cloud Billing API, but note that some services may
|
39
|
+
provide a separate modern client that is easier to use.
|
40
|
+
email: googleapis-packages@google.com
|
41
|
+
executables: []
|
42
|
+
extensions: []
|
43
|
+
extra_rdoc_files: []
|
44
|
+
files:
|
45
|
+
- ".yardopts"
|
46
|
+
- CHANGELOG.md
|
47
|
+
- LICENSE.md
|
48
|
+
- OVERVIEW.md
|
49
|
+
- lib/google-apis-cloudbilling_v1beta.rb
|
50
|
+
- lib/google/apis/cloudbilling_v1beta.rb
|
51
|
+
- lib/google/apis/cloudbilling_v1beta/classes.rb
|
52
|
+
- lib/google/apis/cloudbilling_v1beta/gem_version.rb
|
53
|
+
- lib/google/apis/cloudbilling_v1beta/representations.rb
|
54
|
+
- lib/google/apis/cloudbilling_v1beta/service.rb
|
55
|
+
homepage: https://github.com/google/google-api-ruby-client
|
56
|
+
licenses:
|
57
|
+
- Apache-2.0
|
58
|
+
metadata:
|
59
|
+
bug_tracker_uri: https://github.com/googleapis/google-api-ruby-client/issues
|
60
|
+
changelog_uri: https://github.com/googleapis/google-api-ruby-client/tree/main/generated/google-apis-cloudbilling_v1beta/CHANGELOG.md
|
61
|
+
documentation_uri: https://googleapis.dev/ruby/google-apis-cloudbilling_v1beta/v0.1.0
|
62
|
+
source_code_uri: https://github.com/googleapis/google-api-ruby-client/tree/main/generated/google-apis-cloudbilling_v1beta
|
63
|
+
post_install_message:
|
64
|
+
rdoc_options: []
|
65
|
+
require_paths:
|
66
|
+
- lib
|
67
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
68
|
+
requirements:
|
69
|
+
- - ">="
|
70
|
+
- !ruby/object:Gem::Version
|
71
|
+
version: '2.5'
|
72
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
73
|
+
requirements:
|
74
|
+
- - ">="
|
75
|
+
- !ruby/object:Gem::Version
|
76
|
+
version: '0'
|
77
|
+
requirements: []
|
78
|
+
rubygems_version: 3.3.14
|
79
|
+
signing_key:
|
80
|
+
specification_version: 4
|
81
|
+
summary: Simple REST client for Cloud Billing API V1beta
|
82
|
+
test_files: []
|