Class: Google::Apis::Searchads360V23::GoogleAdsSearchads360V23ResourcesAccountBudget

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/searchads360_v23/classes.rb,
lib/google/apis/searchads360_v23/representations.rb,
lib/google/apis/searchads360_v23/representations.rb

Overview

An account-level budget. It contains information about the budget itself, as well as the most recently approved changes to the budget and proposed changes that are pending approval. The proposed changes that are pending approval, if any, are found in 'pending_proposal'. Effective details about the budget are found in fields prefixed 'approved_', 'adjusted_' and those without a prefix. Since some effective details may differ from what the user had originally requested (for example, spending limit), these differences are juxtaposed through 'proposed_', 'approved_', and possibly 'adjusted_' fields. This resource is mutated using AccountBudgetProposal and cannot be mutated directly. A budget may have at most one pending proposal at any given time. It is read through pending_proposal. Once approved, a budget may be subject to adjustments, such as credit adjustments. Adjustments create differences between the 'approved' and 'adjusted' fields, which would otherwise be identical.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleAdsSearchads360V23ResourcesAccountBudget

Returns a new instance of GoogleAdsSearchads360V23ResourcesAccountBudget.



19404
19405
19406
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19404

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

Instance Attribute Details

#adjusted_spending_limit_microsFixnum

Output only. The adjusted spending limit in micros. One million is equivalent to one unit. If the approved spending limit is finite, the adjusted spending limit may vary depending on the types of adjustments applied to this budget, if applicable. The different kinds of adjustments are described here: https:// support.google.com/google-ads/answer/1704323 For example, a debit adjustment reduces how much the account is allowed to spend. Corresponds to the JSON property adjustedSpendingLimitMicros

Returns:

  • (Fixnum)


19272
19273
19274
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19272

def adjusted_spending_limit_micros
  @adjusted_spending_limit_micros
end

#adjusted_spending_limit_typeString

Output only. The adjusted spending limit as a well-defined type, for example, INFINITE. This will only be populated if the adjusted spending limit is INFINITE, which is guaranteed to be true if the approved spending limit is INFINITE. Corresponds to the JSON property adjustedSpendingLimitType

Returns:

  • (String)


19280
19281
19282
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19280

def adjusted_spending_limit_type
  @adjusted_spending_limit_type
end

#amount_served_microsFixnum

Output only. The value of Ads that have been served, in micros. This includes overdelivery costs, in which case a credit might be automatically applied to the budget (see total_adjustments_micros). Corresponds to the JSON property amountServedMicros

Returns:

  • (Fixnum)


19287
19288
19289
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19287

def amount_served_micros
  @amount_served_micros
end

#approved_end_date_timeString

Output only. The approved end time in yyyy-MM-dd HH:mm:ss format. Corresponds to the JSON property approvedEndDateTime

Returns:

  • (String)


19292
19293
19294
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19292

def approved_end_date_time
  @approved_end_date_time
end

#approved_end_time_typeString

Output only. The approved end time as a well-defined type, for example, FOREVER. Corresponds to the JSON property approvedEndTimeType

Returns:

  • (String)


19298
19299
19300
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19298

def approved_end_time_type
  @approved_end_time_type
end

#approved_spending_limit_microsFixnum

Output only. The approved spending limit in micros. One million is equivalent to one unit. This will only be populated if the proposed spending limit is finite, and will always be greater than or equal to the proposed spending limit. Corresponds to the JSON property approvedSpendingLimitMicros

Returns:

  • (Fixnum)


19306
19307
19308
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19306

def approved_spending_limit_micros
  @approved_spending_limit_micros
end

#approved_spending_limit_typeString

Output only. The approved spending limit as a well-defined type, for example, INFINITE. This will only be populated if the approved spending limit is INFINITE. Corresponds to the JSON property approvedSpendingLimitType

Returns:

  • (String)


19313
19314
19315
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19313

def approved_spending_limit_type
  @approved_spending_limit_type
end

#approved_start_date_timeString

Output only. The approved start time of the account-level budget in yyyy-MM-dd HH:mm:ss format. For example, if a new budget is approved after the proposed start time, the approved start time is the time of approval. Corresponds to the JSON property approvedStartDateTime

Returns:

  • (String)


19320
19321
19322
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19320

def approved_start_date_time
  @approved_start_date_time
end

#billing_setupString

Output only. The resource name of the billing setup associated with this account-level budget. BillingSetup resource names have the form: customers/ customer_id/billingSetups/billing_setup_id` Corresponds to the JSON propertybillingSetup`

Returns:

  • (String)


19327
19328
19329
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19327

def billing_setup
  @billing_setup
end

#idFixnum

Output only. The ID of the account-level budget. Corresponds to the JSON property id

Returns:

  • (Fixnum)


19332
19333
19334
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19332

def id
  @id
end

#nameString

Output only. The name of the account-level budget. Corresponds to the JSON property name

Returns:

  • (String)


19337
19338
19339
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19337

def name
  @name
end

#notesString

Output only. Notes associated with the budget. Corresponds to the JSON property notes

Returns:

  • (String)


19342
19343
19344
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19342

def notes
  @notes
end

#pending_proposalGoogle::Apis::Searchads360V23::GoogleAdsSearchads360V23ResourcesAccountBudgetPendingAccountBudgetProposal

A pending proposal associated with the enclosing account-level budget, if applicable. Corresponds to the JSON property pendingProposal



19348
19349
19350
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19348

def pending_proposal
  @pending_proposal
end

#proposed_end_date_timeString

Output only. The proposed end time in yyyy-MM-dd HH:mm:ss format. Corresponds to the JSON property proposedEndDateTime

Returns:

  • (String)


19353
19354
19355
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19353

def proposed_end_date_time
  @proposed_end_date_time
end

#proposed_end_time_typeString

Output only. The proposed end time as a well-defined type, for example, FOREVER. Corresponds to the JSON property proposedEndTimeType

Returns:

  • (String)


19359
19360
19361
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19359

def proposed_end_time_type
  @proposed_end_time_type
end

#proposed_spending_limit_microsFixnum

Output only. The proposed spending limit in micros. One million is equivalent to one unit. Corresponds to the JSON property proposedSpendingLimitMicros

Returns:

  • (Fixnum)


19365
19366
19367
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19365

def proposed_spending_limit_micros
  @proposed_spending_limit_micros
end

#proposed_spending_limit_typeString

Output only. The proposed spending limit as a well-defined type, for example, INFINITE. Corresponds to the JSON property proposedSpendingLimitType

Returns:

  • (String)


19371
19372
19373
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19371

def proposed_spending_limit_type
  @proposed_spending_limit_type
end

#proposed_start_date_timeString

Output only. The proposed start time of the account-level budget in yyyy-MM-dd HH:mm:ss format. If a start time type of NOW was proposed, this is the time of request. Corresponds to the JSON property proposedStartDateTime

Returns:

  • (String)


19378
19379
19380
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19378

def proposed_start_date_time
  @proposed_start_date_time
end

#purchase_order_numberString

Output only. A purchase order number is a value that helps users reference this budget in their monthly invoices. Corresponds to the JSON property purchaseOrderNumber

Returns:

  • (String)


19384
19385
19386
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19384

def purchase_order_number
  @purchase_order_number
end

#resource_nameString

Output only. The resource name of the account-level budget. AccountBudget resource names have the form: customers/customer_id/accountBudgets/ account_budget_id` Corresponds to the JSON propertyresourceName`

Returns:

  • (String)


19391
19392
19393
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19391

def resource_name
  @resource_name
end

#statusString

Output only. The status of this account-level budget. Corresponds to the JSON property status

Returns:

  • (String)


19396
19397
19398
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19396

def status
  @status
end

#total_adjustments_microsFixnum

Output only. The total adjustments amount. An example of an adjustment is courtesy credits. Corresponds to the JSON property totalAdjustmentsMicros

Returns:

  • (Fixnum)


19402
19403
19404
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19402

def total_adjustments_micros
  @total_adjustments_micros
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



19409
19410
19411
19412
19413
19414
19415
19416
19417
19418
19419
19420
19421
19422
19423
19424
19425
19426
19427
19428
19429
19430
19431
19432
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19409

def update!(**args)
  @adjusted_spending_limit_micros = args[:adjusted_spending_limit_micros] if args.key?(:adjusted_spending_limit_micros)
  @adjusted_spending_limit_type = args[:adjusted_spending_limit_type] if args.key?(:adjusted_spending_limit_type)
  @amount_served_micros = args[:amount_served_micros] if args.key?(:amount_served_micros)
  @approved_end_date_time = args[:approved_end_date_time] if args.key?(:approved_end_date_time)
  @approved_end_time_type = args[:approved_end_time_type] if args.key?(:approved_end_time_type)
  @approved_spending_limit_micros = args[:approved_spending_limit_micros] if args.key?(:approved_spending_limit_micros)
  @approved_spending_limit_type = args[:approved_spending_limit_type] if args.key?(:approved_spending_limit_type)
  @approved_start_date_time = args[:approved_start_date_time] if args.key?(:approved_start_date_time)
  @billing_setup = args[:billing_setup] if args.key?(:billing_setup)
  @id = args[:id] if args.key?(:id)
  @name = args[:name] if args.key?(:name)
  @notes = args[:notes] if args.key?(:notes)
  @pending_proposal = args[:pending_proposal] if args.key?(:pending_proposal)
  @proposed_end_date_time = args[:proposed_end_date_time] if args.key?(:proposed_end_date_time)
  @proposed_end_time_type = args[:proposed_end_time_type] if args.key?(:proposed_end_time_type)
  @proposed_spending_limit_micros = args[:proposed_spending_limit_micros] if args.key?(:proposed_spending_limit_micros)
  @proposed_spending_limit_type = args[:proposed_spending_limit_type] if args.key?(:proposed_spending_limit_type)
  @proposed_start_date_time = args[:proposed_start_date_time] if args.key?(:proposed_start_date_time)
  @purchase_order_number = args[:purchase_order_number] if args.key?(:purchase_order_number)
  @resource_name = args[:resource_name] if args.key?(:resource_name)
  @status = args[:status] if args.key?(:status)
  @total_adjustments_micros = args[:total_adjustments_micros] if args.key?(:total_adjustments_micros)
end