google-cloud-billing-budgets-v1 0.4.0 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6d24b2d9db95d65bfb26770cfc3dc94753e2bbe4ee3e3910f06cbe8ac78f925c
4
- data.tar.gz: 7b068aade41ea66977e11cdd11d4211cf8fc4387b8faedf4ec4ce49d241682aa
3
+ metadata.gz: 32dfc613d0eb884e951f548a4e0d07afcc7efde47d9c9b5d65d85547a1a6cf57
4
+ data.tar.gz: d1ee28a1fd2cd3461bc98879bb6101bc0b6de5af698103370357d205e1ce58fc
5
5
  SHA512:
6
- metadata.gz: 38364c8a2c5cc3879bd7bb1b8408b36fd9868dcbbbb9134d53abb2efc66464fc9be4731764417e8f4177a47e63af8b38803843639acc3a0e13528c28c2ef3d5f
7
- data.tar.gz: 317d44dade417a1c089cb9abed8637f5db674d31dd3a2bacfd54e19817a2a177eec7a40ccf045a427f20455b7643a87fbdd549597e1c9926ecb9f1e992044475
6
+ metadata.gz: 1f7c8c8899203d7e93e5d899c473eeabd5273cc844b6273eb8cb8a70c09330389ed7f7b078aa1a0f7c77abe15dfc0b6d610fa05933902bbd949a60dafba7918b
7
+ data.tar.gz: df1b8cfc1281a9c64045031dac9b600b1fc793bb50325ab5a84f705d5e46d631550a6ddabed4fdbf13f0611107702a97faa9b1315702e072e68f2efb152aca58
@@ -11,7 +11,7 @@ require 'google/type/date_pb'
11
11
  require 'google/type/money_pb'
12
12
 
13
13
 
14
- descriptor_data = "\n2google/cloud/billing/budgets/v1/budget_model.proto\x12\x1fgoogle.cloud.billing.budgets.v1\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x16google/type/date.proto\x1a\x17google/type/money.proto\"\xcf\x03\n\x06\x42udget\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x03\x12\x14\n\x0c\x64isplay_name\x18\x02 \x01(\t\x12\x43\n\rbudget_filter\x18\x03 \x01(\x0b\x32\'.google.cloud.billing.budgets.v1.FilterB\x03\xe0\x41\x01\x12\x42\n\x06\x61mount\x18\x04 \x01(\x0b\x32-.google.cloud.billing.budgets.v1.BudgetAmountB\x03\xe0\x41\x02\x12L\n\x0fthreshold_rules\x18\x05 \x03(\x0b\x32..google.cloud.billing.budgets.v1.ThresholdRuleB\x03\xe0\x41\x01\x12S\n\x12notifications_rule\x18\x06 \x01(\x0b\x32\x32.google.cloud.billing.budgets.v1.NotificationsRuleB\x03\xe0\x41\x01\x12\x11\n\x04\x65tag\x18\x07 \x01(\tB\x03\xe0\x41\x01:]\xea\x41Z\n$billingbudgets.googleapis.com/Budget\x12\x32\x62illingAccounts/{billing_account}/budgets/{budget}\"\xa0\x01\n\x0c\x42udgetAmount\x12.\n\x10specified_amount\x18\x01 \x01(\x0b\x32\x12.google.type.MoneyH\x00\x12O\n\x12last_period_amount\x18\x02 \x01(\x0b\x32\x31.google.cloud.billing.budgets.v1.LastPeriodAmountH\x00\x42\x0f\n\rbudget_amount\"\x12\n\x10LastPeriodAmount\"\xc8\x01\n\rThresholdRule\x12\x1e\n\x11threshold_percent\x18\x01 \x01(\x01\x42\x03\xe0\x41\x02\x12N\n\x0bspend_basis\x18\x02 \x01(\x0e\x32\x34.google.cloud.billing.budgets.v1.ThresholdRule.BasisB\x03\xe0\x41\x01\"G\n\x05\x42\x61sis\x12\x15\n\x11\x42\x41SIS_UNSPECIFIED\x10\x00\x12\x11\n\rCURRENT_SPEND\x10\x01\x12\x14\n\x10\x46ORECASTED_SPEND\x10\x02\"\xa7\x01\n\x11NotificationsRule\x12\x19\n\x0cpubsub_topic\x18\x01 \x01(\tB\x03\xe0\x41\x01\x12\x1b\n\x0eschema_version\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12-\n monitoring_notification_channels\x18\x03 \x03(\tB\x03\xe0\x41\x01\x12+\n\x1e\x64isable_default_iam_recipients\x18\x04 \x01(\x08\x42\x03\xe0\x41\x01\"\xc4\x05\n\x06\x46ilter\x12\x15\n\x08projects\x18\x01 \x03(\tB\x03\xe0\x41\x01\x12\x1f\n\x12resource_ancestors\x18\x02 \x03(\tB\x03\xe0\x41\x01\x12\x19\n\x0c\x63redit_types\x18\x07 \x03(\tB\x03\xe0\x41\x01\x12\x61\n\x16\x63redit_types_treatment\x18\x04 \x01(\x0e\x32<.google.cloud.billing.budgets.v1.Filter.CreditTypesTreatmentB\x03\xe0\x41\x01\x12\x15\n\x08services\x18\x03 \x03(\tB\x03\xe0\x41\x01\x12\x18\n\x0bsubaccounts\x18\x05 \x03(\tB\x03\xe0\x41\x01\x12H\n\x06labels\x18\x06 \x03(\x0b\x32\x33.google.cloud.billing.budgets.v1.Filter.LabelsEntryB\x03\xe0\x41\x01\x12O\n\x0f\x63\x61lendar_period\x18\x08 \x01(\x0e\x32/.google.cloud.billing.budgets.v1.CalendarPeriodB\x03\xe0\x41\x01H\x00\x12K\n\rcustom_period\x18\t \x01(\x0b\x32-.google.cloud.billing.budgets.v1.CustomPeriodB\x03\xe0\x41\x01H\x00\x1aI\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12)\n\x05value\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.ListValue:\x02\x38\x01\"\x8f\x01\n\x14\x43reditTypesTreatment\x12&\n\"CREDIT_TYPES_TREATMENT_UNSPECIFIED\x10\x00\x12\x17\n\x13INCLUDE_ALL_CREDITS\x10\x01\x12\x17\n\x13\x45XCLUDE_ALL_CREDITS\x10\x02\x12\x1d\n\x19INCLUDE_SPECIFIED_CREDITS\x10\x03\x42\x0e\n\x0cusage_period\"d\n\x0c\x43ustomPeriod\x12*\n\nstart_date\x18\x01 \x01(\x0b\x32\x11.google.type.DateB\x03\xe0\x41\x02\x12(\n\x08\x65nd_date\x18\x02 \x01(\x0b\x32\x11.google.type.DateB\x03\xe0\x41\x01*S\n\x0e\x43\x61lendarPeriod\x12\x1f\n\x1b\x43\x41LENDAR_PERIOD_UNSPECIFIED\x10\x00\x12\t\n\x05MONTH\x10\x01\x12\x0b\n\x07QUARTER\x10\x02\x12\x08\n\x04YEAR\x10\x03\x42x\n#com.google.cloud.billing.budgets.v1B\x10\x42udgetModelProtoP\x01Z=cloud.google.com/go/billing/budgets/apiv1/budgetspb;budgetspbb\x06proto3"
14
+ descriptor_data = "\n2google/cloud/billing/budgets/v1/budget_model.proto\x12\x1fgoogle.cloud.billing.budgets.v1\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x16google/type/date.proto\x1a\x17google/type/money.proto\"\xcf\x03\n\x06\x42udget\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x03\x12\x14\n\x0c\x64isplay_name\x18\x02 \x01(\t\x12\x43\n\rbudget_filter\x18\x03 \x01(\x0b\x32\'.google.cloud.billing.budgets.v1.FilterB\x03\xe0\x41\x01\x12\x42\n\x06\x61mount\x18\x04 \x01(\x0b\x32-.google.cloud.billing.budgets.v1.BudgetAmountB\x03\xe0\x41\x02\x12L\n\x0fthreshold_rules\x18\x05 \x03(\x0b\x32..google.cloud.billing.budgets.v1.ThresholdRuleB\x03\xe0\x41\x01\x12S\n\x12notifications_rule\x18\x06 \x01(\x0b\x32\x32.google.cloud.billing.budgets.v1.NotificationsRuleB\x03\xe0\x41\x01\x12\x11\n\x04\x65tag\x18\x07 \x01(\tB\x03\xe0\x41\x01:]\xea\x41Z\n$billingbudgets.googleapis.com/Budget\x12\x32\x62illingAccounts/{billing_account}/budgets/{budget}\"\xa0\x01\n\x0c\x42udgetAmount\x12.\n\x10specified_amount\x18\x01 \x01(\x0b\x32\x12.google.type.MoneyH\x00\x12O\n\x12last_period_amount\x18\x02 \x01(\x0b\x32\x31.google.cloud.billing.budgets.v1.LastPeriodAmountH\x00\x42\x0f\n\rbudget_amount\"\x12\n\x10LastPeriodAmount\"\xc8\x01\n\rThresholdRule\x12\x1e\n\x11threshold_percent\x18\x01 \x01(\x01\x42\x03\xe0\x41\x02\x12N\n\x0bspend_basis\x18\x02 \x01(\x0e\x32\x34.google.cloud.billing.budgets.v1.ThresholdRule.BasisB\x03\xe0\x41\x01\"G\n\x05\x42\x61sis\x12\x15\n\x11\x42\x41SIS_UNSPECIFIED\x10\x00\x12\x11\n\rCURRENT_SPEND\x10\x01\x12\x14\n\x10\x46ORECASTED_SPEND\x10\x02\"\xd5\x01\n\x11NotificationsRule\x12\x19\n\x0cpubsub_topic\x18\x01 \x01(\tB\x03\xe0\x41\x01\x12\x1b\n\x0eschema_version\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12-\n monitoring_notification_channels\x18\x03 \x03(\tB\x03\xe0\x41\x01\x12+\n\x1e\x64isable_default_iam_recipients\x18\x04 \x01(\x08\x42\x03\xe0\x41\x01\x12,\n\x1f\x65nable_project_level_recipients\x18\x05 \x01(\x08\x42\x03\xe0\x41\x01\"\xc4\x05\n\x06\x46ilter\x12\x15\n\x08projects\x18\x01 \x03(\tB\x03\xe0\x41\x01\x12\x1f\n\x12resource_ancestors\x18\x02 \x03(\tB\x03\xe0\x41\x01\x12\x19\n\x0c\x63redit_types\x18\x07 \x03(\tB\x03\xe0\x41\x01\x12\x61\n\x16\x63redit_types_treatment\x18\x04 \x01(\x0e\x32<.google.cloud.billing.budgets.v1.Filter.CreditTypesTreatmentB\x03\xe0\x41\x01\x12\x15\n\x08services\x18\x03 \x03(\tB\x03\xe0\x41\x01\x12\x18\n\x0bsubaccounts\x18\x05 \x03(\tB\x03\xe0\x41\x01\x12H\n\x06labels\x18\x06 \x03(\x0b\x32\x33.google.cloud.billing.budgets.v1.Filter.LabelsEntryB\x03\xe0\x41\x01\x12O\n\x0f\x63\x61lendar_period\x18\x08 \x01(\x0e\x32/.google.cloud.billing.budgets.v1.CalendarPeriodB\x03\xe0\x41\x01H\x00\x12K\n\rcustom_period\x18\t \x01(\x0b\x32-.google.cloud.billing.budgets.v1.CustomPeriodB\x03\xe0\x41\x01H\x00\x1aI\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12)\n\x05value\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.ListValue:\x02\x38\x01\"\x8f\x01\n\x14\x43reditTypesTreatment\x12&\n\"CREDIT_TYPES_TREATMENT_UNSPECIFIED\x10\x00\x12\x17\n\x13INCLUDE_ALL_CREDITS\x10\x01\x12\x17\n\x13\x45XCLUDE_ALL_CREDITS\x10\x02\x12\x1d\n\x19INCLUDE_SPECIFIED_CREDITS\x10\x03\x42\x0e\n\x0cusage_period\"d\n\x0c\x43ustomPeriod\x12*\n\nstart_date\x18\x01 \x01(\x0b\x32\x11.google.type.DateB\x03\xe0\x41\x02\x12(\n\x08\x65nd_date\x18\x02 \x01(\x0b\x32\x11.google.type.DateB\x03\xe0\x41\x01*S\n\x0e\x43\x61lendarPeriod\x12\x1f\n\x1b\x43\x41LENDAR_PERIOD_UNSPECIFIED\x10\x00\x12\t\n\x05MONTH\x10\x01\x12\x0b\n\x07QUARTER\x10\x02\x12\x08\n\x04YEAR\x10\x03\x42x\n#com.google.cloud.billing.budgets.v1B\x10\x42udgetModelProtoP\x01Z=cloud.google.com/go/billing/budgets/apiv1/budgetspb;budgetspbb\x06proto3"
15
15
 
16
16
  pool = Google::Protobuf::DescriptorPool.generated_pool
17
17
 
@@ -162,7 +162,8 @@ module Google
162
162
  credentials: credentials,
163
163
  endpoint: @config.endpoint,
164
164
  channel_args: @config.channel_args,
165
- interceptors: @config.interceptors
165
+ interceptors: @config.interceptors,
166
+ channel_pool_config: @config.channel_pool
166
167
  )
167
168
  end
168
169
 
@@ -464,7 +465,7 @@ module Google
464
465
  # @param options [::Gapic::CallOptions, ::Hash]
465
466
  # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
466
467
  #
467
- # @overload list_budgets(parent: nil, page_size: nil, page_token: nil)
468
+ # @overload list_budgets(parent: nil, scope: nil, page_size: nil, page_token: nil)
468
469
  # Pass arguments to `list_budgets` via keyword arguments. Note that at
469
470
  # least one keyword argument is required. To specify no parameters, or to keep all
470
471
  # the default parameter values, pass an empty Hash as a request object (see above).
@@ -472,6 +473,13 @@ module Google
472
473
  # @param parent [::String]
473
474
  # Required. Name of billing account to list budgets under. Values
474
475
  # are of the form `billingAccounts/{billingAccountId}`.
476
+ # @param scope [::String]
477
+ # Optional. Set the scope of the budgets to be returned, in the format of the
478
+ # resource name. The scope of a budget is the cost that it tracks, such as
479
+ # costs for a single project, or the costs for all projects in a folder. Only
480
+ # project scope (in the format of "projects/project-id" or "projects/123") is
481
+ # supported in this field. When this field is set to a project's resource
482
+ # name, the budgets returned are tracking the costs for that project.
475
483
  # @param page_size [::Integer]
476
484
  # Optional. The maximum number of budgets to return per page.
477
485
  # The default and maximum value are 100.
@@ -754,6 +762,14 @@ module Google
754
762
  end
755
763
  end
756
764
 
765
+ ##
766
+ # Configuration for the channel pool
767
+ # @return [::Gapic::ServiceStub::ChannelPool::Configuration]
768
+ #
769
+ def channel_pool
770
+ @channel_pool ||= ::Gapic::ServiceStub::ChannelPool::Configuration.new
771
+ end
772
+
757
773
  ##
758
774
  # Configuration RPC class for the BudgetService API.
759
775
  #
@@ -191,6 +191,22 @@ module Google
191
191
  # @return [::Google::Cloud::Billing::Budgets::V1::Budget]
192
192
  #
193
193
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
194
+ #
195
+ # @example Basic example
196
+ # require "google/cloud/billing/budgets/v1"
197
+ #
198
+ # # Create a client object. The client can be reused for multiple calls.
199
+ # client = Google::Cloud::Billing::Budgets::V1::BudgetService::Rest::Client.new
200
+ #
201
+ # # Create a request. To set request fields, pass in keyword arguments.
202
+ # request = Google::Cloud::Billing::Budgets::V1::CreateBudgetRequest.new
203
+ #
204
+ # # Call the create_budget method.
205
+ # result = client.create_budget request
206
+ #
207
+ # # The returned object is of type Google::Cloud::Billing::Budgets::V1::Budget.
208
+ # p result
209
+ #
194
210
  def create_budget request, options = nil
195
211
  raise ::ArgumentError, "request must be provided" if request.nil?
196
212
 
@@ -265,6 +281,22 @@ module Google
265
281
  # @return [::Google::Cloud::Billing::Budgets::V1::Budget]
266
282
  #
267
283
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
284
+ #
285
+ # @example Basic example
286
+ # require "google/cloud/billing/budgets/v1"
287
+ #
288
+ # # Create a client object. The client can be reused for multiple calls.
289
+ # client = Google::Cloud::Billing::Budgets::V1::BudgetService::Rest::Client.new
290
+ #
291
+ # # Create a request. To set request fields, pass in keyword arguments.
292
+ # request = Google::Cloud::Billing::Budgets::V1::UpdateBudgetRequest.new
293
+ #
294
+ # # Call the update_budget method.
295
+ # result = client.update_budget request
296
+ #
297
+ # # The returned object is of type Google::Cloud::Billing::Budgets::V1::Budget.
298
+ # p result
299
+ #
268
300
  def update_budget request, options = nil
269
301
  raise ::ArgumentError, "request must be provided" if request.nil?
270
302
 
@@ -333,6 +365,22 @@ module Google
333
365
  # @return [::Google::Cloud::Billing::Budgets::V1::Budget]
334
366
  #
335
367
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
368
+ #
369
+ # @example Basic example
370
+ # require "google/cloud/billing/budgets/v1"
371
+ #
372
+ # # Create a client object. The client can be reused for multiple calls.
373
+ # client = Google::Cloud::Billing::Budgets::V1::BudgetService::Rest::Client.new
374
+ #
375
+ # # Create a request. To set request fields, pass in keyword arguments.
376
+ # request = Google::Cloud::Billing::Budgets::V1::GetBudgetRequest.new
377
+ #
378
+ # # Call the get_budget method.
379
+ # result = client.get_budget request
380
+ #
381
+ # # The returned object is of type Google::Cloud::Billing::Budgets::V1::Budget.
382
+ # p result
383
+ #
336
384
  def get_budget request, options = nil
337
385
  raise ::ArgumentError, "request must be provided" if request.nil?
338
386
 
@@ -386,7 +434,7 @@ module Google
386
434
  # @param options [::Gapic::CallOptions, ::Hash]
387
435
  # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
388
436
  #
389
- # @overload list_budgets(parent: nil, page_size: nil, page_token: nil)
437
+ # @overload list_budgets(parent: nil, scope: nil, page_size: nil, page_token: nil)
390
438
  # Pass arguments to `list_budgets` via keyword arguments. Note that at
391
439
  # least one keyword argument is required. To specify no parameters, or to keep all
392
440
  # the default parameter values, pass an empty Hash as a request object (see above).
@@ -394,6 +442,13 @@ module Google
394
442
  # @param parent [::String]
395
443
  # Required. Name of billing account to list budgets under. Values
396
444
  # are of the form `billingAccounts/{billingAccountId}`.
445
+ # @param scope [::String]
446
+ # Optional. Set the scope of the budgets to be returned, in the format of the
447
+ # resource name. The scope of a budget is the cost that it tracks, such as
448
+ # costs for a single project, or the costs for all projects in a folder. Only
449
+ # project scope (in the format of "projects/project-id" or "projects/123") is
450
+ # supported in this field. When this field is set to a project's resource
451
+ # name, the budgets returned are tracking the costs for that project.
397
452
  # @param page_size [::Integer]
398
453
  # Optional. The maximum number of budgets to return per page.
399
454
  # The default and maximum value are 100.
@@ -408,6 +463,26 @@ module Google
408
463
  # @return [::Gapic::Rest::PagedEnumerable<::Google::Cloud::Billing::Budgets::V1::Budget>]
409
464
  #
410
465
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
466
+ #
467
+ # @example Basic example
468
+ # require "google/cloud/billing/budgets/v1"
469
+ #
470
+ # # Create a client object. The client can be reused for multiple calls.
471
+ # client = Google::Cloud::Billing::Budgets::V1::BudgetService::Rest::Client.new
472
+ #
473
+ # # Create a request. To set request fields, pass in keyword arguments.
474
+ # request = Google::Cloud::Billing::Budgets::V1::ListBudgetsRequest.new
475
+ #
476
+ # # Call the list_budgets method.
477
+ # result = client.list_budgets request
478
+ #
479
+ # # The returned object is of type Gapic::PagedEnumerable. You can iterate
480
+ # # over elements, and API calls will be issued to fetch pages as needed.
481
+ # result.each do |item|
482
+ # # Each element is of type ::Google::Cloud::Billing::Budgets::V1::Budget.
483
+ # p item
484
+ # end
485
+ #
411
486
  def list_budgets request, options = nil
412
487
  raise ::ArgumentError, "request must be provided" if request.nil?
413
488
 
@@ -472,6 +547,22 @@ module Google
472
547
  # @return [::Google::Protobuf::Empty]
473
548
  #
474
549
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
550
+ #
551
+ # @example Basic example
552
+ # require "google/cloud/billing/budgets/v1"
553
+ #
554
+ # # Create a client object. The client can be reused for multiple calls.
555
+ # client = Google::Cloud::Billing::Budgets::V1::BudgetService::Rest::Client.new
556
+ #
557
+ # # Create a request. To set request fields, pass in keyword arguments.
558
+ # request = Google::Cloud::Billing::Budgets::V1::DeleteBudgetRequest.new
559
+ #
560
+ # # Call the delete_budget method.
561
+ # result = client.delete_budget request
562
+ #
563
+ # # The returned object is of type Google::Protobuf::Empty.
564
+ # p result
565
+ #
475
566
  def delete_budget request, options = nil
476
567
  raise ::ArgumentError, "request must be provided" if request.nil?
477
568
 
@@ -13,7 +13,7 @@ require 'google/protobuf/empty_pb'
13
13
  require 'google/protobuf/field_mask_pb'
14
14
 
15
15
 
16
- descriptor_data = "\n4google/cloud/billing/budgets/v1/budget_service.proto\x12\x1fgoogle.cloud.billing.budgets.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a\x32google/cloud/billing/budgets/v1/budget_model.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a google/protobuf/field_mask.proto\"\x91\x01\n\x13\x43reateBudgetRequest\x12<\n\x06parent\x18\x01 \x01(\tB,\xe0\x41\x02\xfa\x41&\x12$billingbudgets.googleapis.com/Budget\x12<\n\x06\x62udget\x18\x02 \x01(\x0b\x32\'.google.cloud.billing.budgets.v1.BudgetB\x03\xe0\x41\x02\"\x89\x01\n\x13UpdateBudgetRequest\x12<\n\x06\x62udget\x18\x01 \x01(\x0b\x32\'.google.cloud.billing.budgets.v1.BudgetB\x03\xe0\x41\x02\x12\x34\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x01\"N\n\x10GetBudgetRequest\x12:\n\x04name\x18\x01 \x01(\tB,\xe0\x41\x02\xfa\x41&\n$billingbudgets.googleapis.com/Budget\"\x83\x01\n\x12ListBudgetsRequest\x12<\n\x06parent\x18\x01 \x01(\tB,\xe0\x41\x02\xfa\x41&\x12$billingbudgets.googleapis.com/Budget\x12\x16\n\tpage_size\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\"h\n\x13ListBudgetsResponse\x12\x38\n\x07\x62udgets\x18\x01 \x03(\x0b\x32\'.google.cloud.billing.budgets.v1.Budget\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"Q\n\x13\x44\x65leteBudgetRequest\x12:\n\x04name\x18\x01 \x01(\tB,\xe0\x41\x02\xfa\x41&\n$billingbudgets.googleapis.com/Budget2\xf7\x07\n\rBudgetService\x12\xb5\x01\n\x0c\x43reateBudget\x12\x34.google.cloud.billing.budgets.v1.CreateBudgetRequest\x1a\'.google.cloud.billing.budgets.v1.Budget\"F\x82\xd3\xe4\x93\x02\x30\"&/v1/{parent=billingAccounts/*}/budgets:\x06\x62udget\xda\x41\rparent,budget\x12\xc1\x01\n\x0cUpdateBudget\x12\x34.google.cloud.billing.budgets.v1.UpdateBudgetRequest\x1a\'.google.cloud.billing.budgets.v1.Budget\"R\x82\xd3\xe4\x93\x02\x37\x32-/v1/{budget.name=billingAccounts/*/budgets/*}:\x06\x62udget\xda\x41\x12\x62udget,update_mask\x12\x9e\x01\n\tGetBudget\x12\x31.google.cloud.billing.budgets.v1.GetBudgetRequest\x1a\'.google.cloud.billing.budgets.v1.Budget\"5\x82\xd3\xe4\x93\x02(\x12&/v1/{name=billingAccounts/*/budgets/*}\xda\x41\x04name\x12\xb1\x01\n\x0bListBudgets\x12\x33.google.cloud.billing.budgets.v1.ListBudgetsRequest\x1a\x34.google.cloud.billing.budgets.v1.ListBudgetsResponse\"7\x82\xd3\xe4\x93\x02(\x12&/v1/{parent=billingAccounts/*}/budgets\xda\x41\x06parent\x12\x93\x01\n\x0c\x44\x65leteBudget\x12\x34.google.cloud.billing.budgets.v1.DeleteBudgetRequest\x1a\x16.google.protobuf.Empty\"5\x82\xd3\xe4\x93\x02(*&/v1/{name=billingAccounts/*/budgets/*}\xda\x41\x04name\x1a\x7f\xca\x41\x1d\x62illingbudgets.googleapis.com\xd2\x41\\https://www.googleapis.com/auth/cloud-billing,https://www.googleapis.com/auth/cloud-platformBz\n#com.google.cloud.billing.budgets.v1B\x12\x42udgetServiceProtoP\x01Z=cloud.google.com/go/billing/budgets/apiv1/budgetspb;budgetspbb\x06proto3"
16
+ descriptor_data = "\n4google/cloud/billing/budgets/v1/budget_service.proto\x12\x1fgoogle.cloud.billing.budgets.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a\x32google/cloud/billing/budgets/v1/budget_model.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a google/protobuf/field_mask.proto\"\x91\x01\n\x13\x43reateBudgetRequest\x12<\n\x06parent\x18\x01 \x01(\tB,\xe0\x41\x02\xfa\x41&\x12$billingbudgets.googleapis.com/Budget\x12<\n\x06\x62udget\x18\x02 \x01(\x0b\x32\'.google.cloud.billing.budgets.v1.BudgetB\x03\xe0\x41\x02\"\x89\x01\n\x13UpdateBudgetRequest\x12<\n\x06\x62udget\x18\x01 \x01(\x0b\x32\'.google.cloud.billing.budgets.v1.BudgetB\x03\xe0\x41\x02\x12\x34\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x01\"N\n\x10GetBudgetRequest\x12:\n\x04name\x18\x01 \x01(\tB,\xe0\x41\x02\xfa\x41&\n$billingbudgets.googleapis.com/Budget\"\x97\x01\n\x12ListBudgetsRequest\x12<\n\x06parent\x18\x01 \x01(\tB,\xe0\x41\x02\xfa\x41&\x12$billingbudgets.googleapis.com/Budget\x12\x12\n\x05scope\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x16\n\tpage_size\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\"h\n\x13ListBudgetsResponse\x12\x38\n\x07\x62udgets\x18\x01 \x03(\x0b\x32\'.google.cloud.billing.budgets.v1.Budget\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"Q\n\x13\x44\x65leteBudgetRequest\x12:\n\x04name\x18\x01 \x01(\tB,\xe0\x41\x02\xfa\x41&\n$billingbudgets.googleapis.com/Budget2\xf7\x07\n\rBudgetService\x12\xb5\x01\n\x0c\x43reateBudget\x12\x34.google.cloud.billing.budgets.v1.CreateBudgetRequest\x1a\'.google.cloud.billing.budgets.v1.Budget\"F\x82\xd3\xe4\x93\x02\x30\"&/v1/{parent=billingAccounts/*}/budgets:\x06\x62udget\xda\x41\rparent,budget\x12\xc1\x01\n\x0cUpdateBudget\x12\x34.google.cloud.billing.budgets.v1.UpdateBudgetRequest\x1a\'.google.cloud.billing.budgets.v1.Budget\"R\x82\xd3\xe4\x93\x02\x37\x32-/v1/{budget.name=billingAccounts/*/budgets/*}:\x06\x62udget\xda\x41\x12\x62udget,update_mask\x12\x9e\x01\n\tGetBudget\x12\x31.google.cloud.billing.budgets.v1.GetBudgetRequest\x1a\'.google.cloud.billing.budgets.v1.Budget\"5\x82\xd3\xe4\x93\x02(\x12&/v1/{name=billingAccounts/*/budgets/*}\xda\x41\x04name\x12\xb1\x01\n\x0bListBudgets\x12\x33.google.cloud.billing.budgets.v1.ListBudgetsRequest\x1a\x34.google.cloud.billing.budgets.v1.ListBudgetsResponse\"7\x82\xd3\xe4\x93\x02(\x12&/v1/{parent=billingAccounts/*}/budgets\xda\x41\x06parent\x12\x93\x01\n\x0c\x44\x65leteBudget\x12\x34.google.cloud.billing.budgets.v1.DeleteBudgetRequest\x1a\x16.google.protobuf.Empty\"5\x82\xd3\xe4\x93\x02(*&/v1/{name=billingAccounts/*/budgets/*}\xda\x41\x04name\x1a\x7f\xca\x41\x1d\x62illingbudgets.googleapis.com\xd2\x41\\https://www.googleapis.com/auth/cloud-billing,https://www.googleapis.com/auth/cloud-platformBz\n#com.google.cloud.billing.budgets.v1B\x12\x42udgetServiceProtoP\x01Z=cloud.google.com/go/billing/budgets/apiv1/budgetspb;budgetspbb\x06proto3"
17
17
 
18
18
  pool = Google::Protobuf::DescriptorPool.generated_pool
19
19
 
@@ -22,7 +22,7 @@ module Google
22
22
  module Billing
23
23
  module Budgets
24
24
  module V1
25
- VERSION = "0.4.0"
25
+ VERSION = "0.6.0"
26
26
  end
27
27
  end
28
28
  end
@@ -66,6 +66,20 @@ module Google
66
66
  # a non-empty value will be returned. The user will not be aware of what
67
67
  # non-empty value to expect.
68
68
  NON_EMPTY_DEFAULT = 7
69
+
70
+ # Denotes that the field in a resource (a message annotated with
71
+ # google.api.resource) is used in the resource name to uniquely identify the
72
+ # resource. For AIP-compliant APIs, this should only be applied to the
73
+ # `name` field on the resource.
74
+ #
75
+ # This behavior should not be applied to references to other resources within
76
+ # the message.
77
+ #
78
+ # The identifier field of resources often have different field behavior
79
+ # depending on the request it is embedded in (e.g. for Create methods name
80
+ # is optional and unused, while for Update methods it is required). Instead
81
+ # of method-specific annotations, only `IDENTIFIER` is required.
82
+ IDENTIFIER = 8
69
83
  end
70
84
  end
71
85
  end
@@ -219,6 +219,15 @@ module Google
219
219
  # threshold is exceeded. Default notifications are sent to those with Billing
220
220
  # Account Administrator and Billing Account User IAM roles for the target
221
221
  # account.
222
+ # @!attribute [rw] enable_project_level_recipients
223
+ # @return [::Boolean]
224
+ # Optional. When set to true, and when the budget has a single project
225
+ # configured, notifications will be sent to project level recipients of that
226
+ # project. This field will be ignored if the budget has multiple or no
227
+ # project configured.
228
+ #
229
+ # Currently, project level recipients are the users with `Owner` role on a
230
+ # cloud project.
222
231
  class NotificationsRule
223
232
  include ::Google::Protobuf::MessageExts
224
233
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -236,8 +245,10 @@ module Google
236
245
  # Optional. A set of folder and organization names of the form
237
246
  # `folders/{folderId}` or `organizations/{organizationId}`, specifying that
238
247
  # usage from only this set of folders and organizations should be included in
239
- # the budget. If omitted, the report includes all usage for all
240
- # organizations, regardless of which organization the usage occurred on.
248
+ # the budget. If omitted, the budget includes all usage that the billing
249
+ # account pays for. If the folder or organization contains projects that are
250
+ # paid for by a different Cloud Billing account, the budget *doesn't* apply
251
+ # to those projects.
241
252
  # @!attribute [rw] credit_types
242
253
  # @return [::Array<::String>]
243
254
  # Optional. If
@@ -68,6 +68,14 @@ module Google
68
68
  # @return [::String]
69
69
  # Required. Name of billing account to list budgets under. Values
70
70
  # are of the form `billingAccounts/{billingAccountId}`.
71
+ # @!attribute [rw] scope
72
+ # @return [::String]
73
+ # Optional. Set the scope of the budgets to be returned, in the format of the
74
+ # resource name. The scope of a budget is the cost that it tracks, such as
75
+ # costs for a single project, or the costs for all projects in a folder. Only
76
+ # project scope (in the format of "projects/project-id" or "projects/123") is
77
+ # supported in this field. When this field is set to a project's resource
78
+ # name, the budgets returned are tracking the costs for that project.
71
79
  # @!attribute [rw] page_size
72
80
  # @return [::Integer]
73
81
  # Optional. The maximum number of budgets to return per page.
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-cloud-billing-budgets-v1
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-06-06 00:00:00.000000000 Z
11
+ date: 2023-09-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: gapic-common
@@ -16,7 +16,7 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 0.19.1
19
+ version: 0.20.0
20
20
  - - "<"
21
21
  - !ruby/object:Gem::Version
22
22
  version: 2.a
@@ -26,7 +26,7 @@ dependencies:
26
26
  requirements:
27
27
  - - ">="
28
28
  - !ruby/object:Gem::Version
29
- version: 0.19.1
29
+ version: 0.20.0
30
30
  - - "<"
31
31
  - !ruby/object:Gem::Version
32
32
  version: 2.a
@@ -215,7 +215,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
215
215
  - !ruby/object:Gem::Version
216
216
  version: '0'
217
217
  requirements: []
218
- rubygems_version: 3.4.2
218
+ rubygems_version: 3.4.19
219
219
  signing_key:
220
220
  specification_version: 4
221
221
  summary: The Cloud Billing Budget API stores Cloud Billing budgets, which define a