google-apis-billingbudgets_v1beta1 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- 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-billingbudgets_v1beta1.rb +15 -0
- data/lib/google/apis/billingbudgets_v1beta1.rb +40 -0
- data/lib/google/apis/billingbudgets_v1beta1/classes.rb +428 -0
- data/lib/google/apis/billingbudgets_v1beta1/gem_version.rb +28 -0
- data/lib/google/apis/billingbudgets_v1beta1/representations.rb +200 -0
- data/lib/google/apis/billingbudgets_v1beta1/service.rb +243 -0
- metadata +76 -0
@@ -0,0 +1,28 @@
|
|
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
|
+
module Google
|
16
|
+
module Apis
|
17
|
+
module BillingbudgetsV1beta1
|
18
|
+
# Version of the google-apis-billingbudgets_v1beta1 gem
|
19
|
+
GEM_VERSION = "0.1.0"
|
20
|
+
|
21
|
+
# Version of the code generator used to generate this client
|
22
|
+
GENERATOR_VERSION = "0.1.1"
|
23
|
+
|
24
|
+
# Revision of the discovery document this client was generated from
|
25
|
+
REVISION = "20201107"
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
@@ -0,0 +1,200 @@
|
|
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 'date'
|
16
|
+
require 'google/apis/core/base_service'
|
17
|
+
require 'google/apis/core/json_representation'
|
18
|
+
require 'google/apis/core/hashable'
|
19
|
+
require 'google/apis/errors'
|
20
|
+
|
21
|
+
module Google
|
22
|
+
module Apis
|
23
|
+
module BillingbudgetsV1beta1
|
24
|
+
|
25
|
+
class GoogleCloudBillingBudgetsV1beta1AllUpdatesRule
|
26
|
+
class Representation < Google::Apis::Core::JsonRepresentation; end
|
27
|
+
|
28
|
+
include Google::Apis::Core::JsonObjectSupport
|
29
|
+
end
|
30
|
+
|
31
|
+
class GoogleCloudBillingBudgetsV1beta1Budget
|
32
|
+
class Representation < Google::Apis::Core::JsonRepresentation; end
|
33
|
+
|
34
|
+
include Google::Apis::Core::JsonObjectSupport
|
35
|
+
end
|
36
|
+
|
37
|
+
class GoogleCloudBillingBudgetsV1beta1BudgetAmount
|
38
|
+
class Representation < Google::Apis::Core::JsonRepresentation; end
|
39
|
+
|
40
|
+
include Google::Apis::Core::JsonObjectSupport
|
41
|
+
end
|
42
|
+
|
43
|
+
class GoogleCloudBillingBudgetsV1beta1CreateBudgetRequest
|
44
|
+
class Representation < Google::Apis::Core::JsonRepresentation; end
|
45
|
+
|
46
|
+
include Google::Apis::Core::JsonObjectSupport
|
47
|
+
end
|
48
|
+
|
49
|
+
class GoogleCloudBillingBudgetsV1beta1Filter
|
50
|
+
class Representation < Google::Apis::Core::JsonRepresentation; end
|
51
|
+
|
52
|
+
include Google::Apis::Core::JsonObjectSupport
|
53
|
+
end
|
54
|
+
|
55
|
+
class GoogleCloudBillingBudgetsV1beta1LastPeriodAmount
|
56
|
+
class Representation < Google::Apis::Core::JsonRepresentation; end
|
57
|
+
|
58
|
+
include Google::Apis::Core::JsonObjectSupport
|
59
|
+
end
|
60
|
+
|
61
|
+
class GoogleCloudBillingBudgetsV1beta1ListBudgetsResponse
|
62
|
+
class Representation < Google::Apis::Core::JsonRepresentation; end
|
63
|
+
|
64
|
+
include Google::Apis::Core::JsonObjectSupport
|
65
|
+
end
|
66
|
+
|
67
|
+
class GoogleCloudBillingBudgetsV1beta1ThresholdRule
|
68
|
+
class Representation < Google::Apis::Core::JsonRepresentation; end
|
69
|
+
|
70
|
+
include Google::Apis::Core::JsonObjectSupport
|
71
|
+
end
|
72
|
+
|
73
|
+
class GoogleCloudBillingBudgetsV1beta1UpdateBudgetRequest
|
74
|
+
class Representation < Google::Apis::Core::JsonRepresentation; end
|
75
|
+
|
76
|
+
include Google::Apis::Core::JsonObjectSupport
|
77
|
+
end
|
78
|
+
|
79
|
+
class GoogleProtobufEmpty
|
80
|
+
class Representation < Google::Apis::Core::JsonRepresentation; end
|
81
|
+
|
82
|
+
include Google::Apis::Core::JsonObjectSupport
|
83
|
+
end
|
84
|
+
|
85
|
+
class GoogleTypeMoney
|
86
|
+
class Representation < Google::Apis::Core::JsonRepresentation; end
|
87
|
+
|
88
|
+
include Google::Apis::Core::JsonObjectSupport
|
89
|
+
end
|
90
|
+
|
91
|
+
class GoogleCloudBillingBudgetsV1beta1AllUpdatesRule
|
92
|
+
# @private
|
93
|
+
class Representation < Google::Apis::Core::JsonRepresentation
|
94
|
+
property :disable_default_iam_recipients, as: 'disableDefaultIamRecipients'
|
95
|
+
collection :monitoring_notification_channels, as: 'monitoringNotificationChannels'
|
96
|
+
property :pubsub_topic, as: 'pubsubTopic'
|
97
|
+
property :schema_version, as: 'schemaVersion'
|
98
|
+
end
|
99
|
+
end
|
100
|
+
|
101
|
+
class GoogleCloudBillingBudgetsV1beta1Budget
|
102
|
+
# @private
|
103
|
+
class Representation < Google::Apis::Core::JsonRepresentation
|
104
|
+
property :all_updates_rule, as: 'allUpdatesRule', class: Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1AllUpdatesRule, decorator: Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1AllUpdatesRule::Representation
|
105
|
+
|
106
|
+
property :amount, as: 'amount', class: Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1BudgetAmount, decorator: Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1BudgetAmount::Representation
|
107
|
+
|
108
|
+
property :budget_filter, as: 'budgetFilter', class: Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1Filter, decorator: Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1Filter::Representation
|
109
|
+
|
110
|
+
property :display_name, as: 'displayName'
|
111
|
+
property :etag, as: 'etag'
|
112
|
+
property :name, as: 'name'
|
113
|
+
collection :threshold_rules, as: 'thresholdRules', class: Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1ThresholdRule, decorator: Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1ThresholdRule::Representation
|
114
|
+
|
115
|
+
end
|
116
|
+
end
|
117
|
+
|
118
|
+
class GoogleCloudBillingBudgetsV1beta1BudgetAmount
|
119
|
+
# @private
|
120
|
+
class Representation < Google::Apis::Core::JsonRepresentation
|
121
|
+
property :last_period_amount, as: 'lastPeriodAmount', class: Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1LastPeriodAmount, decorator: Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1LastPeriodAmount::Representation
|
122
|
+
|
123
|
+
property :specified_amount, as: 'specifiedAmount', class: Google::Apis::BillingbudgetsV1beta1::GoogleTypeMoney, decorator: Google::Apis::BillingbudgetsV1beta1::GoogleTypeMoney::Representation
|
124
|
+
|
125
|
+
end
|
126
|
+
end
|
127
|
+
|
128
|
+
class GoogleCloudBillingBudgetsV1beta1CreateBudgetRequest
|
129
|
+
# @private
|
130
|
+
class Representation < Google::Apis::Core::JsonRepresentation
|
131
|
+
property :budget, as: 'budget', class: Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1Budget, decorator: Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1Budget::Representation
|
132
|
+
|
133
|
+
end
|
134
|
+
end
|
135
|
+
|
136
|
+
class GoogleCloudBillingBudgetsV1beta1Filter
|
137
|
+
# @private
|
138
|
+
class Representation < Google::Apis::Core::JsonRepresentation
|
139
|
+
collection :credit_types, as: 'creditTypes'
|
140
|
+
property :credit_types_treatment, as: 'creditTypesTreatment'
|
141
|
+
hash :labels, as: 'labels', :class => Array do
|
142
|
+
include Representable::JSON::Collection
|
143
|
+
items
|
144
|
+
end
|
145
|
+
|
146
|
+
collection :projects, as: 'projects'
|
147
|
+
collection :services, as: 'services'
|
148
|
+
collection :subaccounts, as: 'subaccounts'
|
149
|
+
end
|
150
|
+
end
|
151
|
+
|
152
|
+
class GoogleCloudBillingBudgetsV1beta1LastPeriodAmount
|
153
|
+
# @private
|
154
|
+
class Representation < Google::Apis::Core::JsonRepresentation
|
155
|
+
end
|
156
|
+
end
|
157
|
+
|
158
|
+
class GoogleCloudBillingBudgetsV1beta1ListBudgetsResponse
|
159
|
+
# @private
|
160
|
+
class Representation < Google::Apis::Core::JsonRepresentation
|
161
|
+
collection :budgets, as: 'budgets', class: Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1Budget, decorator: Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1Budget::Representation
|
162
|
+
|
163
|
+
property :next_page_token, as: 'nextPageToken'
|
164
|
+
end
|
165
|
+
end
|
166
|
+
|
167
|
+
class GoogleCloudBillingBudgetsV1beta1ThresholdRule
|
168
|
+
# @private
|
169
|
+
class Representation < Google::Apis::Core::JsonRepresentation
|
170
|
+
property :spend_basis, as: 'spendBasis'
|
171
|
+
property :threshold_percent, as: 'thresholdPercent'
|
172
|
+
end
|
173
|
+
end
|
174
|
+
|
175
|
+
class GoogleCloudBillingBudgetsV1beta1UpdateBudgetRequest
|
176
|
+
# @private
|
177
|
+
class Representation < Google::Apis::Core::JsonRepresentation
|
178
|
+
property :budget, as: 'budget', class: Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1Budget, decorator: Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1Budget::Representation
|
179
|
+
|
180
|
+
property :update_mask, as: 'updateMask'
|
181
|
+
end
|
182
|
+
end
|
183
|
+
|
184
|
+
class GoogleProtobufEmpty
|
185
|
+
# @private
|
186
|
+
class Representation < Google::Apis::Core::JsonRepresentation
|
187
|
+
end
|
188
|
+
end
|
189
|
+
|
190
|
+
class GoogleTypeMoney
|
191
|
+
# @private
|
192
|
+
class Representation < Google::Apis::Core::JsonRepresentation
|
193
|
+
property :currency_code, as: 'currencyCode'
|
194
|
+
property :nanos, as: 'nanos'
|
195
|
+
property :units, :numeric_string => true, as: 'units'
|
196
|
+
end
|
197
|
+
end
|
198
|
+
end
|
199
|
+
end
|
200
|
+
end
|
@@ -0,0 +1,243 @@
|
|
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 BillingbudgetsV1beta1
|
23
|
+
# Cloud Billing Budget API
|
24
|
+
#
|
25
|
+
# The Cloud Billing Budget API stores Cloud Billing budgets, which define a
|
26
|
+
# budget plan and the rules to execute as spend is tracked against that plan.
|
27
|
+
#
|
28
|
+
# @example
|
29
|
+
# require 'google/apis/billingbudgets_v1beta1'
|
30
|
+
#
|
31
|
+
# Billingbudgets = Google::Apis::BillingbudgetsV1beta1 # Alias the module
|
32
|
+
# service = Billingbudgets::CloudBillingBudgetService.new
|
33
|
+
#
|
34
|
+
# @see https://cloud.google.com/billing/docs/how-to/budget-api-overview
|
35
|
+
class CloudBillingBudgetService < 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://billingbudgets.googleapis.com/', '',
|
48
|
+
client_name: 'google-apis-billingbudgets_v1beta1',
|
49
|
+
client_version: Google::Apis::BillingbudgetsV1beta1::GEM_VERSION)
|
50
|
+
@batch_path = 'batch'
|
51
|
+
end
|
52
|
+
|
53
|
+
# Creates a new budget. See Quotas and limits for more information on the limits
|
54
|
+
# of the number of budgets you can create.
|
55
|
+
# @param [String] parent
|
56
|
+
# Required. The name of the billing account to create the budget in. Values are
|
57
|
+
# of the form `billingAccounts/`billingAccountId``.
|
58
|
+
# @param [Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1CreateBudgetRequest] google_cloud_billing_budgets_v1beta1_create_budget_request_object
|
59
|
+
# @param [String] fields
|
60
|
+
# Selector specifying which fields to include in a partial response.
|
61
|
+
# @param [String] quota_user
|
62
|
+
# Available to use for quota purposes for server-side applications. Can be any
|
63
|
+
# arbitrary string assigned to a user, but should not exceed 40 characters.
|
64
|
+
# @param [Google::Apis::RequestOptions] options
|
65
|
+
# Request-specific options
|
66
|
+
#
|
67
|
+
# @yield [result, err] Result & error if block supplied
|
68
|
+
# @yieldparam result [Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1Budget] parsed result object
|
69
|
+
# @yieldparam err [StandardError] error object if request failed
|
70
|
+
#
|
71
|
+
# @return [Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1Budget]
|
72
|
+
#
|
73
|
+
# @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
|
74
|
+
# @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
|
75
|
+
# @raise [Google::Apis::AuthorizationError] Authorization is required
|
76
|
+
def create_billing_account_budget(parent, google_cloud_billing_budgets_v1beta1_create_budget_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
|
77
|
+
command = make_simple_command(:post, 'v1beta1/{+parent}/budgets', options)
|
78
|
+
command.request_representation = Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1CreateBudgetRequest::Representation
|
79
|
+
command.request_object = google_cloud_billing_budgets_v1beta1_create_budget_request_object
|
80
|
+
command.response_representation = Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1Budget::Representation
|
81
|
+
command.response_class = Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1Budget
|
82
|
+
command.params['parent'] = parent unless parent.nil?
|
83
|
+
command.query['fields'] = fields unless fields.nil?
|
84
|
+
command.query['quotaUser'] = quota_user unless quota_user.nil?
|
85
|
+
execute_or_queue_command(command, &block)
|
86
|
+
end
|
87
|
+
|
88
|
+
# Deletes a budget. Returns successfully if already deleted.
|
89
|
+
# @param [String] name
|
90
|
+
# Required. Name of the budget to delete. Values are of the form `
|
91
|
+
# billingAccounts/`billingAccountId`/budgets/`budgetId``.
|
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::BillingbudgetsV1beta1::GoogleProtobufEmpty] parsed result object
|
102
|
+
# @yieldparam err [StandardError] error object if request failed
|
103
|
+
#
|
104
|
+
# @return [Google::Apis::BillingbudgetsV1beta1::GoogleProtobufEmpty]
|
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 delete_billing_account_budget(name, fields: nil, quota_user: nil, options: nil, &block)
|
110
|
+
command = make_simple_command(:delete, 'v1beta1/{+name}', options)
|
111
|
+
command.response_representation = Google::Apis::BillingbudgetsV1beta1::GoogleProtobufEmpty::Representation
|
112
|
+
command.response_class = Google::Apis::BillingbudgetsV1beta1::GoogleProtobufEmpty
|
113
|
+
command.params['name'] = name unless name.nil?
|
114
|
+
command.query['fields'] = fields unless fields.nil?
|
115
|
+
command.query['quotaUser'] = quota_user unless quota_user.nil?
|
116
|
+
execute_or_queue_command(command, &block)
|
117
|
+
end
|
118
|
+
|
119
|
+
# Returns a budget. WARNING: There are some fields exposed on the Google Cloud
|
120
|
+
# Console that aren't available on this API. When reading from the API, you will
|
121
|
+
# not see these fields in the return value, though they may have been set in the
|
122
|
+
# Cloud Console.
|
123
|
+
# @param [String] name
|
124
|
+
# Required. Name of budget to get. Values are of the form `billingAccounts/`
|
125
|
+
# billingAccountId`/budgets/`budgetId``.
|
126
|
+
# @param [String] fields
|
127
|
+
# Selector specifying which fields to include in a partial response.
|
128
|
+
# @param [String] quota_user
|
129
|
+
# Available to use for quota purposes for server-side applications. Can be any
|
130
|
+
# arbitrary string assigned to a user, but should not exceed 40 characters.
|
131
|
+
# @param [Google::Apis::RequestOptions] options
|
132
|
+
# Request-specific options
|
133
|
+
#
|
134
|
+
# @yield [result, err] Result & error if block supplied
|
135
|
+
# @yieldparam result [Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1Budget] parsed result object
|
136
|
+
# @yieldparam err [StandardError] error object if request failed
|
137
|
+
#
|
138
|
+
# @return [Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1Budget]
|
139
|
+
#
|
140
|
+
# @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
|
141
|
+
# @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
|
142
|
+
# @raise [Google::Apis::AuthorizationError] Authorization is required
|
143
|
+
def get_billing_account_budget(name, fields: nil, quota_user: nil, options: nil, &block)
|
144
|
+
command = make_simple_command(:get, 'v1beta1/{+name}', options)
|
145
|
+
command.response_representation = Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1Budget::Representation
|
146
|
+
command.response_class = Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1Budget
|
147
|
+
command.params['name'] = name unless name.nil?
|
148
|
+
command.query['fields'] = fields unless fields.nil?
|
149
|
+
command.query['quotaUser'] = quota_user unless quota_user.nil?
|
150
|
+
execute_or_queue_command(command, &block)
|
151
|
+
end
|
152
|
+
|
153
|
+
# Returns a list of budgets for a billing account. WARNING: There are some
|
154
|
+
# fields exposed on the Google Cloud Console that aren't available on this API.
|
155
|
+
# When reading from the API, you will not see these fields in the return value,
|
156
|
+
# though they may have been set in the Cloud Console.
|
157
|
+
# @param [String] parent
|
158
|
+
# Required. Name of billing account to list budgets under. Values are of the
|
159
|
+
# form `billingAccounts/`billingAccountId``.
|
160
|
+
# @param [Fixnum] page_size
|
161
|
+
# Optional. The maximum number of budgets to return per page. The default and
|
162
|
+
# maximum value are 100.
|
163
|
+
# @param [String] page_token
|
164
|
+
# Optional. The value returned by the last `ListBudgetsResponse` which indicates
|
165
|
+
# that this is a continuation of a prior `ListBudgets` call, and that the system
|
166
|
+
# should return the next page of data.
|
167
|
+
# @param [String] fields
|
168
|
+
# Selector specifying which fields to include in a partial response.
|
169
|
+
# @param [String] quota_user
|
170
|
+
# Available to use for quota purposes for server-side applications. Can be any
|
171
|
+
# arbitrary string assigned to a user, but should not exceed 40 characters.
|
172
|
+
# @param [Google::Apis::RequestOptions] options
|
173
|
+
# Request-specific options
|
174
|
+
#
|
175
|
+
# @yield [result, err] Result & error if block supplied
|
176
|
+
# @yieldparam result [Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1ListBudgetsResponse] parsed result object
|
177
|
+
# @yieldparam err [StandardError] error object if request failed
|
178
|
+
#
|
179
|
+
# @return [Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1ListBudgetsResponse]
|
180
|
+
#
|
181
|
+
# @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
|
182
|
+
# @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
|
183
|
+
# @raise [Google::Apis::AuthorizationError] Authorization is required
|
184
|
+
def list_billing_account_budgets(parent, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
|
185
|
+
command = make_simple_command(:get, 'v1beta1/{+parent}/budgets', options)
|
186
|
+
command.response_representation = Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1ListBudgetsResponse::Representation
|
187
|
+
command.response_class = Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1ListBudgetsResponse
|
188
|
+
command.params['parent'] = parent unless parent.nil?
|
189
|
+
command.query['pageSize'] = page_size unless page_size.nil?
|
190
|
+
command.query['pageToken'] = page_token unless page_token.nil?
|
191
|
+
command.query['fields'] = fields unless fields.nil?
|
192
|
+
command.query['quotaUser'] = quota_user unless quota_user.nil?
|
193
|
+
execute_or_queue_command(command, &block)
|
194
|
+
end
|
195
|
+
|
196
|
+
# Updates a budget and returns the updated budget. WARNING: There are some
|
197
|
+
# fields exposed on the Google Cloud Console that aren't available on this API.
|
198
|
+
# Budget fields that are not exposed in this API will not be changed by this
|
199
|
+
# method.
|
200
|
+
# @param [String] name
|
201
|
+
# Output only. Resource name of the budget. The resource name implies the scope
|
202
|
+
# of a budget. Values are of the form `billingAccounts/`billingAccountId`/
|
203
|
+
# budgets/`budgetId``.
|
204
|
+
# @param [Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1UpdateBudgetRequest] google_cloud_billing_budgets_v1beta1_update_budget_request_object
|
205
|
+
# @param [String] fields
|
206
|
+
# Selector specifying which fields to include in a partial response.
|
207
|
+
# @param [String] quota_user
|
208
|
+
# Available to use for quota purposes for server-side applications. Can be any
|
209
|
+
# arbitrary string assigned to a user, but should not exceed 40 characters.
|
210
|
+
# @param [Google::Apis::RequestOptions] options
|
211
|
+
# Request-specific options
|
212
|
+
#
|
213
|
+
# @yield [result, err] Result & error if block supplied
|
214
|
+
# @yieldparam result [Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1Budget] parsed result object
|
215
|
+
# @yieldparam err [StandardError] error object if request failed
|
216
|
+
#
|
217
|
+
# @return [Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1Budget]
|
218
|
+
#
|
219
|
+
# @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
|
220
|
+
# @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
|
221
|
+
# @raise [Google::Apis::AuthorizationError] Authorization is required
|
222
|
+
def patch_billing_account_budget(name, google_cloud_billing_budgets_v1beta1_update_budget_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
|
223
|
+
command = make_simple_command(:patch, 'v1beta1/{+name}', options)
|
224
|
+
command.request_representation = Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1UpdateBudgetRequest::Representation
|
225
|
+
command.request_object = google_cloud_billing_budgets_v1beta1_update_budget_request_object
|
226
|
+
command.response_representation = Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1Budget::Representation
|
227
|
+
command.response_class = Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1Budget
|
228
|
+
command.params['name'] = name unless name.nil?
|
229
|
+
command.query['fields'] = fields unless fields.nil?
|
230
|
+
command.query['quotaUser'] = quota_user unless quota_user.nil?
|
231
|
+
execute_or_queue_command(command, &block)
|
232
|
+
end
|
233
|
+
|
234
|
+
protected
|
235
|
+
|
236
|
+
def apply_command_defaults(command)
|
237
|
+
command.query['key'] = key unless key.nil?
|
238
|
+
command.query['quotaUser'] = quota_user unless quota_user.nil?
|
239
|
+
end
|
240
|
+
end
|
241
|
+
end
|
242
|
+
end
|
243
|
+
end
|