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.



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

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)


19206
19207
19208
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19206

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)


19214
19215
19216
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19214

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)


19221
19222
19223
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19221

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)


19226
19227
19228
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19226

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)


19232
19233
19234
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19232

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)


19240
19241
19242
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19240

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)


19247
19248
19249
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19247

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)


19254
19255
19256
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19254

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)


19261
19262
19263
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19261

def billing_setup
  @billing_setup
end

#idFixnum

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

Returns:

  • (Fixnum)


19266
19267
19268
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19266

def id
  @id
end

#nameString

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

Returns:

  • (String)


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

def name
  @name
end

#notesString

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

Returns:

  • (String)


19276
19277
19278
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19276

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



19282
19283
19284
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19282

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)


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

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)


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

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)


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

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)


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

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)


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

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)


19318
19319
19320
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19318

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)


19325
19326
19327
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19325

def resource_name
  @resource_name
end

#statusString

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

Returns:

  • (String)


19330
19331
19332
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19330

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)


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

def total_adjustments_micros
  @total_adjustments_micros
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



19343
19344
19345
19346
19347
19348
19349
19350
19351
19352
19353
19354
19355
19356
19357
19358
19359
19360
19361
19362
19363
19364
19365
19366
# File 'lib/google/apis/searchads360_v23/classes.rb', line 19343

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