class Google::Apis::BillingbudgetsV1beta1::GoogleCloudBillingBudgetsV1beta1AllUpdatesRule

AllUpdatesRule defines notifications that are sent based on budget spend and thresholds.

Attributes

disable_default_iam_recipients[RW]

Optional. When set to true, disables default notifications sent when a threshold is exceeded. Default notifications are sent to those with Billing Account Administrator and Billing Account User IAM roles for the target account. Corresponds to the JSON property `disableDefaultIamRecipients` @return [Boolean]

disable_default_iam_recipients?[RW]

Optional. When set to true, disables default notifications sent when a threshold is exceeded. Default notifications are sent to those with Billing Account Administrator and Billing Account User IAM roles for the target account. Corresponds to the JSON property `disableDefaultIamRecipients` @return [Boolean]

monitoring_notification_channels[RW]

Optional. Targets to send notifications to when a threshold is exceeded. This is in addition to default recipients who have billing account IAM roles. The value is the full REST resource name of a monitoring notification channel with the form `projects/`project_id`/notificationChannels/`channel_id“. A maximum of 5 channels are allowed. See cloud.google.com/billing/docs/how-to/ budgets-notification-recipients for more details. Corresponds to the JSON property `monitoringNotificationChannels` @return [Array<String>]

pubsub_topic[RW]

Optional. The name of the Pub/Sub topic where budget related messages will be published, in the form `projects/`project_id`/topics/`topic_id“. Updates are sent at regular intervals to the topic. The topic needs to be created before the budget is created; see cloud.google.com/billing/docs/how-to/ budgets-programmatic-notifications for more details. Caller is expected to have `pubsub.topics.setIamPolicy` permission on the topic when it's set for a budget, otherwise, the API call will fail with PERMISSION_DENIED. See https:// cloud.google.com/billing/docs/how-to/budgets-programmatic-notifications# permissions_required_for_this_task for more details on Pub/Sub roles and permissions. Corresponds to the JSON property `pubsubTopic` @return [String]

schema_version[RW]

Optional. Required when AllUpdatesRule.pubsub_topic is set. The schema version of the notification sent to AllUpdatesRule.pubsub_topic. Only “1.0” is accepted. It represents the JSON schema as defined in cloud.google.com/ billing/docs/how-to/budgets-programmatic-notifications#notification_format. Corresponds to the JSON property `schemaVersion` @return [String]

Public Class Methods

new(**args) click to toggle source
# File lib/google/apis/billingbudgets_v1beta1/classes.rb, line 71
def initialize(**args)
   update!(**args)
end

Public Instance Methods

update!(**args) click to toggle source

Update properties of this object

# File lib/google/apis/billingbudgets_v1beta1/classes.rb, line 76
def update!(**args)
  @disable_default_iam_recipients = args[:disable_default_iam_recipients] if args.key?(:disable_default_iam_recipients)
  @monitoring_notification_channels = args[:monitoring_notification_channels] if args.key?(:monitoring_notification_channels)
  @pubsub_topic = args[:pubsub_topic] if args.key?(:pubsub_topic)
  @schema_version = args[:schema_version] if args.key?(:schema_version)
end