class Google::Apis::DisplayvideoV1::CampaignBudget

Settings that control how the campaign budget is allocated.

Attributes

budget_amount_micros[RW]

Required. The total amount the linked insertion order segments can budget. The amount is in micros. Must be greater than 0. For example, 500000000 represents 500 standard units of the currency. Corresponds to the JSON property `budgetAmountMicros` @return [Fixnum]

budget_id[RW]

The unique ID of the campaign budget. Assigned by the system. Do not set for new budgets. Must be included when updating or adding budgets to campaign_budgets. Otherwise, a new ID will be generated and assigned. Corresponds to the JSON property `budgetId` @return [Fixnum]

budget_unit[RW]

Required. Immutable. Specifies whether the budget is measured in currency or impressions. Corresponds to the JSON property `budgetUnit` @return [String]

date_range[RW]

A date range. Corresponds to the JSON property `dateRange` @return [Google::Apis::DisplayvideoV1::DateRange]

display_name[RW]

Required. The display name of the budget. Must be UTF-8 encoded with a maximum size of 240 bytes. Corresponds to the JSON property `displayName` @return [String]

external_budget_id[RW]

Immutable. The ID identifying this budget to the external source. If this field is set and the invoice detail level of the corresponding billing profile is set to “Budget level PO”, all impressions served against this budget will include this ID on the invoice. Must be unique under the campaign. Corresponds to the JSON property `externalBudgetId` @return [String]

external_budget_source[RW]

Required. The external source of the budget. Corresponds to the JSON property `externalBudgetSource` @return [String]

invoice_grouping_id[RW]

Immutable. The ID used to group budgets to be included the same invoice. If this field is set and the invoice level of the corresponding billing profile is set to “Budget invoice grouping ID”, all external_budget_id sharing the same invoice_grouping_id will be grouped in the same invoice. Corresponds to the JSON property `invoiceGroupingId` @return [String]

prisma_config[RW]

Settings specific to the Mediaocean Prisma tool. Corresponds to the JSON property `prismaConfig` @return [Google::Apis::DisplayvideoV1::PrismaConfig]

Public Class Methods

new(**args) click to toggle source
# File lib/google/apis/displayvideo_v1/classes.rb, line 2222
def initialize(**args)
   update!(**args)
end

Public Instance Methods

update!(**args) click to toggle source

Update properties of this object

# File lib/google/apis/displayvideo_v1/classes.rb, line 2227
def update!(**args)
  @budget_amount_micros = args[:budget_amount_micros] if args.key?(:budget_amount_micros)
  @budget_id = args[:budget_id] if args.key?(:budget_id)
  @budget_unit = args[:budget_unit] if args.key?(:budget_unit)
  @date_range = args[:date_range] if args.key?(:date_range)
  @display_name = args[:display_name] if args.key?(:display_name)
  @external_budget_id = args[:external_budget_id] if args.key?(:external_budget_id)
  @external_budget_source = args[:external_budget_source] if args.key?(:external_budget_source)
  @invoice_grouping_id = args[:invoice_grouping_id] if args.key?(:invoice_grouping_id)
  @prisma_config = args[:prisma_config] if args.key?(:prisma_config)
end