Class: Google::Apis::CloudbillingV1::ProjectBillingInfo

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
generated/google/apis/cloudbilling_v1/classes.rb,
generated/google/apis/cloudbilling_v1/representations.rb,
generated/google/apis/cloudbilling_v1/representations.rb

Overview

Encapsulation of billing information for a GCP Console project. A project has at most one associated billing account at a time (but a billing account can be assigned to multiple projects).

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Google::Apis::Core::JsonObjectSupport

#to_json

Methods included from Google::Apis::Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ ProjectBillingInfo

Returns a new instance of ProjectBillingInfo.



851
852
853
# File 'generated/google/apis/cloudbilling_v1/classes.rb', line 851

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#billing_account_nameString

The resource name of the billing account associated with the project, if any. For example, billingAccounts/012345-567890-ABCDEF. Corresponds to the JSON property billingAccountName

Returns:

  • (String)


825
826
827
# File 'generated/google/apis/cloudbilling_v1/classes.rb', line 825

def 
  @billing_account_name
end

#billing_enabledBoolean Also known as: billing_enabled?

True if the project is associated with an open billing account, to which usage on the project is charged. False if the project is associated with a closed billing account, or no billing account at all, and therefore cannot use paid services. This field is read-only. Corresponds to the JSON property billingEnabled

Returns:

  • (Boolean)


833
834
835
# File 'generated/google/apis/cloudbilling_v1/classes.rb', line 833

def billing_enabled
  @billing_enabled
end

#nameString

The resource name for the ProjectBillingInfo; has the form projects/project_id/billingInfo. For example, the resource name for the billing information for project tokyo-rain-123 would be projects/tokyo-rain-123/billingInfo. This field is read-only. Corresponds to the JSON property name

Returns:

  • (String)


842
843
844
# File 'generated/google/apis/cloudbilling_v1/classes.rb', line 842

def name
  @name
end

#project_idString

The ID of the project that this ProjectBillingInfo represents, such as tokyo-rain-123. This is a convenience field so that you don't need to parse the name field to obtain a project ID. This field is read-only. Corresponds to the JSON property projectId

Returns:

  • (String)


849
850
851
# File 'generated/google/apis/cloudbilling_v1/classes.rb', line 849

def project_id
  @project_id
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



856
857
858
859
860
861
# File 'generated/google/apis/cloudbilling_v1/classes.rb', line 856

def update!(**args)
  @billing_account_name = args[:billing_account_name] if args.key?(:billing_account_name)
  @billing_enabled = args[:billing_enabled] if args.key?(:billing_enabled)
  @name = args[:name] if args.key?(:name)
  @project_id = args[:project_id] if args.key?(:project_id)
end