Class: Google::Apis::Searchads360V23::GoogleAdsSearchads360V23ServicesAccountBudgetProposalOperation

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

A single operation to propose the creation of a new account-level budget or edit/end/remove an existing one.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleAdsSearchads360V23ServicesAccountBudgetProposalOperation

Returns a new instance of GoogleAdsSearchads360V23ServicesAccountBudgetProposalOperation.



36023
36024
36025
# File 'lib/google/apis/searchads360_v23/classes.rb', line 36023

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

Instance Attribute Details

#createGoogle::Apis::Searchads360V23::GoogleAdsSearchads360V23ResourcesAccountBudgetProposal

An account-level budget proposal. All fields prefixed with 'proposed' may not necessarily be applied directly. For example, proposed spending limits may be adjusted before their application. This is true if the 'proposed' field has an 'approved' counterpart, for example, spending limits. Note that the proposal type (proposal_type) changes which fields are required and which must remain empty. Corresponds to the JSON property create



36005
36006
36007
# File 'lib/google/apis/searchads360_v23/classes.rb', line 36005

def create
  @create
end

#removeString

Remove operation: A resource name for the removed proposal is expected, in this format: customers/customer_id/accountBudgetProposals/ account_budget_proposal_id`A request may be cancelled iff it is pending. Corresponds to the JSON propertyremove`

Returns:

  • (String)


36012
36013
36014
# File 'lib/google/apis/searchads360_v23/classes.rb', line 36012

def remove
  @remove
end

#update_maskString

FieldMask that determines which budget fields are modified. While budgets may be modified, proposals that propose such modifications are final. Therefore, update operations are not supported for proposals. Proposals that modify budgets have the 'update' proposal type. Specifying a mask for any other proposal type is considered an error. Corresponds to the JSON property updateMask

Returns:

  • (String)


36021
36022
36023
# File 'lib/google/apis/searchads360_v23/classes.rb', line 36021

def update_mask
  @update_mask
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



36028
36029
36030
36031
36032
# File 'lib/google/apis/searchads360_v23/classes.rb', line 36028

def update!(**args)
  @create = args[:create] if args.key?(:create)
  @remove = args[:remove] if args.key?(:remove)
  @update_mask = args[:update_mask] if args.key?(:update_mask)
end