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.



19464
19465
19466
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19464

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)


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

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)


19340
19341
19342
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19340

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)


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

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)


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

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)


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

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)


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

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)


19373
19374
19375
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19373

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)


19380
19381
19382
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19380

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)


19387
19388
19389
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19387

def billing_setup
  @billing_setup
end

#idFixnum

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

Returns:

  • (Fixnum)


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

def id
  @id
end

#nameString

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

Returns:

  • (String)


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

def name
  @name
end

#notesString

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

Returns:

  • (String)


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

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



19408
19409
19410
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19408

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)


19413
19414
19415
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19413

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)


19419
19420
19421
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19419

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)


19425
19426
19427
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19425

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)


19431
19432
19433
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19431

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)


19438
19439
19440
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19438

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)


19444
19445
19446
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19444

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)


19451
19452
19453
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19451

def resource_name
  @resource_name
end

#statusString

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

Returns:

  • (String)


19456
19457
19458
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19456

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)


19462
19463
19464
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19462

def total_adjustments_micros
  @total_adjustments_micros
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



19469
19470
19471
19472
19473
19474
19475
19476
19477
19478
19479
19480
19481
19482
19483
19484
19485
19486
19487
19488
19489
19490
19491
19492
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19469

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