google-apis-displayvideo_v2 0.8.0 → 0.10.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -86,6 +86,31 @@ module Google
86
86
  end
87
87
  end
88
88
 
89
+ # Additional URLs related to the ad, including beacons.
90
+ class AdUrl
91
+ include Google::Apis::Core::Hashable
92
+
93
+ # The type of the AD url.
94
+ # Corresponds to the JSON property `type`
95
+ # @return [String]
96
+ attr_accessor :type
97
+
98
+ # The url value of the ad url.
99
+ # Corresponds to the JSON property `url`
100
+ # @return [String]
101
+ attr_accessor :url
102
+
103
+ def initialize(**args)
104
+ update!(**args)
105
+ end
106
+
107
+ # Update properties of this object
108
+ def update!(**args)
109
+ @type = args[:type] if args.key?(:type)
110
+ @url = args[:url] if args.key?(:url)
111
+ end
112
+ end
113
+
89
114
  # Details of Adloox settings.
90
115
  class Adloox
91
116
  include Google::Apis::Core::Hashable
@@ -1022,6 +1047,13 @@ module Google
1022
1047
  # @return [Google::Apis::DisplayvideoV2::SensitiveCategoryAssignedTargetingOptionDetails]
1023
1048
  attr_accessor :sensitive_category_exclusion_details
1024
1049
 
1050
+ # Details for session position assigned targeting option. This will be populated
1051
+ # in the session_position_details field when targeting_type is `
1052
+ # TARGETING_TYPE_SESSION_POSITION`.
1053
+ # Corresponds to the JSON property `sessionPositionDetails`
1054
+ # @return [Google::Apis::DisplayvideoV2::SessionPositionAssignedTargetingOptionDetails]
1055
+ attr_accessor :session_position_details
1056
+
1025
1057
  # Details for assigned sub-exchange targeting option. This will be populated in
1026
1058
  # the details field of an AssignedTargetingOption when targeting_type is `
1027
1059
  # TARGETING_TYPE_SUB_EXCHANGE`.
@@ -1071,6 +1103,20 @@ module Google
1071
1103
  # @return [Google::Apis::DisplayvideoV2::ViewabilityAssignedTargetingOptionDetails]
1072
1104
  attr_accessor :viewability_details
1073
1105
 
1106
+ # Details for YouTube channel assigned targeting option. This will be populated
1107
+ # in the youtube_channel_details field when targeting_type is `
1108
+ # TARGETING_TYPE_YOUTUBE_CHANNEL`.
1109
+ # Corresponds to the JSON property `youtubeChannelDetails`
1110
+ # @return [Google::Apis::DisplayvideoV2::YoutubeChannelAssignedTargetingOptionDetails]
1111
+ attr_accessor :youtube_channel_details
1112
+
1113
+ # Details for YouTube video assigned targeting option. This will be populated in
1114
+ # the youtube_video_details field when targeting_type is `
1115
+ # TARGETING_TYPE_YOUTUBE_VIDEO`.
1116
+ # Corresponds to the JSON property `youtubeVideoDetails`
1117
+ # @return [Google::Apis::DisplayvideoV2::YoutubeVideoAssignedTargetingOptionDetails]
1118
+ attr_accessor :youtube_video_details
1119
+
1074
1120
  def initialize(**args)
1075
1121
  update!(**args)
1076
1122
  end
@@ -1120,6 +1166,7 @@ module Google
1120
1166
  @proximity_location_list_details = args[:proximity_location_list_details] if args.key?(:proximity_location_list_details)
1121
1167
  @regional_location_list_details = args[:regional_location_list_details] if args.key?(:regional_location_list_details)
1122
1168
  @sensitive_category_exclusion_details = args[:sensitive_category_exclusion_details] if args.key?(:sensitive_category_exclusion_details)
1169
+ @session_position_details = args[:session_position_details] if args.key?(:session_position_details)
1123
1170
  @sub_exchange_details = args[:sub_exchange_details] if args.key?(:sub_exchange_details)
1124
1171
  @targeting_type = args[:targeting_type] if args.key?(:targeting_type)
1125
1172
  @third_party_verifier_details = args[:third_party_verifier_details] if args.key?(:third_party_verifier_details)
@@ -1127,6 +1174,8 @@ module Google
1127
1174
  @user_rewarded_content_details = args[:user_rewarded_content_details] if args.key?(:user_rewarded_content_details)
1128
1175
  @video_player_size_details = args[:video_player_size_details] if args.key?(:video_player_size_details)
1129
1176
  @viewability_details = args[:viewability_details] if args.key?(:viewability_details)
1177
+ @youtube_channel_details = args[:youtube_channel_details] if args.key?(:youtube_channel_details)
1178
+ @youtube_video_details = args[:youtube_video_details] if args.key?(:youtube_video_details)
1130
1179
  end
1131
1180
  end
1132
1181
 
@@ -1232,6 +1281,43 @@ module Google
1232
1281
  end
1233
1282
  end
1234
1283
 
1284
+ # The details for audio ad.
1285
+ class AudioAd
1286
+ include Google::Apis::Core::Hashable
1287
+
1288
+ # The webpage address that appears with the ad.
1289
+ # Corresponds to the JSON property `displayUrl`
1290
+ # @return [String]
1291
+ attr_accessor :display_url
1292
+
1293
+ # The URL address of the webpage that people reach after they click the ad.
1294
+ # Corresponds to the JSON property `finalUrl`
1295
+ # @return [String]
1296
+ attr_accessor :final_url
1297
+
1298
+ # The URL address which is loaded in background for tracking purpose.
1299
+ # Corresponds to the JSON property `trackingUrl`
1300
+ # @return [String]
1301
+ attr_accessor :tracking_url
1302
+
1303
+ # Details of the YouTube video.
1304
+ # Corresponds to the JSON property `video`
1305
+ # @return [Google::Apis::DisplayvideoV2::YoutubeVideoDetails]
1306
+ attr_accessor :video
1307
+
1308
+ def initialize(**args)
1309
+ update!(**args)
1310
+ end
1311
+
1312
+ # Update properties of this object
1313
+ def update!(**args)
1314
+ @display_url = args[:display_url] if args.key?(:display_url)
1315
+ @final_url = args[:final_url] if args.key?(:final_url)
1316
+ @tracking_url = args[:tracking_url] if args.key?(:tracking_url)
1317
+ @video = args[:video] if args.key?(:video)
1318
+ end
1319
+ end
1320
+
1235
1321
  # Details for audio content type assigned targeting option. This will be
1236
1322
  # populated in the audio_content_type_details field when targeting_type is `
1237
1323
  # TARGETING_TYPE_AUDIO_CONTENT_TYPE`. Explicitly targeting all options is not
@@ -1996,6 +2082,36 @@ module Google
1996
2082
  end
1997
2083
  end
1998
2084
 
2085
+ #
2086
+ class BulkListAdGroupAssignedTargetingOptionsResponse
2087
+ include Google::Apis::Core::Hashable
2088
+
2089
+ # A token identifying the next page of results. This value should be specified
2090
+ # as the pageToken in a subsequent call to `
2091
+ # BulkListAdGroupAssignedTargetingOptions` to fetch the next page of results.
2092
+ # This token will be absent if there are no more
2093
+ # youtube_ad_group_assigned_targeting_options to return.
2094
+ # Corresponds to the JSON property `nextPageToken`
2095
+ # @return [String]
2096
+ attr_accessor :next_page_token
2097
+
2098
+ # The list of wrapper objects, each providing an assigned targeting option and
2099
+ # the youtube ad group it is assigned to. This list will be absent if empty.
2100
+ # Corresponds to the JSON property `youtubeAdGroupAssignedTargetingOptions`
2101
+ # @return [Array<Google::Apis::DisplayvideoV2::YoutubeAdGroupAssignedTargetingOption>]
2102
+ attr_accessor :youtube_ad_group_assigned_targeting_options
2103
+
2104
+ def initialize(**args)
2105
+ update!(**args)
2106
+ end
2107
+
2108
+ # Update properties of this object
2109
+ def update!(**args)
2110
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
2111
+ @youtube_ad_group_assigned_targeting_options = args[:youtube_ad_group_assigned_targeting_options] if args.key?(:youtube_ad_group_assigned_targeting_options)
2112
+ end
2113
+ end
2114
+
1999
2115
  #
2000
2116
  class BulkListAdvertiserAssignedTargetingOptionsResponse
2001
2117
  include Google::Apis::Core::Hashable
@@ -2183,6 +2299,25 @@ module Google
2183
2299
  end
2184
2300
  end
2185
2301
 
2302
+ # Ad details for BumperAd.
2303
+ class BumperAd
2304
+ include Google::Apis::Core::Hashable
2305
+
2306
+ # The common attributes for InStreamAd, NonSkippableAd and BumperAd.
2307
+ # Corresponds to the JSON property `commonInStreamAttribute`
2308
+ # @return [Google::Apis::DisplayvideoV2::CommonInStreamAttribute]
2309
+ attr_accessor :common_in_stream_attribute
2310
+
2311
+ def initialize(**args)
2312
+ update!(**args)
2313
+ end
2314
+
2315
+ # Update properties of this object
2316
+ def update!(**args)
2317
+ @common_in_stream_attribute = args[:common_in_stream_attribute] if args.key?(:common_in_stream_attribute)
2318
+ end
2319
+ end
2320
+
2186
2321
  # Details for assigned Business chain targeting option. This will be populated
2187
2322
  # in the details field of an AssignedTargetingOption when targeting_type is `
2188
2323
  # TARGETING_TYPE_BUSINESS_CHAIN`.
@@ -2874,6 +3009,61 @@ module Google
2874
3009
  end
2875
3010
  end
2876
3011
 
3012
+ # The common attributes for InStreamAd, NonSkippableAd and BumperAd.
3013
+ class CommonInStreamAttribute
3014
+ include Google::Apis::Core::Hashable
3015
+
3016
+ # The text on the call-to-action button.
3017
+ # Corresponds to the JSON property `actionButtonLabel`
3018
+ # @return [String]
3019
+ attr_accessor :action_button_label
3020
+
3021
+ # The headline of the call-to-action banner.
3022
+ # Corresponds to the JSON property `actionHeadline`
3023
+ # @return [String]
3024
+ attr_accessor :action_headline
3025
+
3026
+ # The meta data of an image asset.
3027
+ # Corresponds to the JSON property `companionBanner`
3028
+ # @return [Google::Apis::DisplayvideoV2::ImageAsset]
3029
+ attr_accessor :companion_banner
3030
+
3031
+ # The webpage address that appears with the ad.
3032
+ # Corresponds to the JSON property `displayUrl`
3033
+ # @return [String]
3034
+ attr_accessor :display_url
3035
+
3036
+ # The URL address of the webpage that people reach after they click the ad.
3037
+ # Corresponds to the JSON property `finalUrl`
3038
+ # @return [String]
3039
+ attr_accessor :final_url
3040
+
3041
+ # The URL address which is loaded in background for tracking purpose.
3042
+ # Corresponds to the JSON property `trackingUrl`
3043
+ # @return [String]
3044
+ attr_accessor :tracking_url
3045
+
3046
+ # Details of the YouTube video.
3047
+ # Corresponds to the JSON property `video`
3048
+ # @return [Google::Apis::DisplayvideoV2::YoutubeVideoDetails]
3049
+ attr_accessor :video
3050
+
3051
+ def initialize(**args)
3052
+ update!(**args)
3053
+ end
3054
+
3055
+ # Update properties of this object
3056
+ def update!(**args)
3057
+ @action_button_label = args[:action_button_label] if args.key?(:action_button_label)
3058
+ @action_headline = args[:action_headline] if args.key?(:action_headline)
3059
+ @companion_banner = args[:companion_banner] if args.key?(:companion_banner)
3060
+ @display_url = args[:display_url] if args.key?(:display_url)
3061
+ @final_url = args[:final_url] if args.key?(:final_url)
3062
+ @tracking_url = args[:tracking_url] if args.key?(:tracking_url)
3063
+ @video = args[:video] if args.key?(:video)
3064
+ end
3065
+ end
3066
+
2877
3067
  # Contact information defining a Customer Match audience member.
2878
3068
  class ContactInfo
2879
3069
  include Google::Apis::Core::Hashable
@@ -4050,6 +4240,31 @@ module Google
4050
4240
  end
4051
4241
  end
4052
4242
 
4243
+ # The key and value of a custom label.
4244
+ class CustomLabel
4245
+ include Google::Apis::Core::Hashable
4246
+
4247
+ # The key of the label.
4248
+ # Corresponds to the JSON property `key`
4249
+ # @return [String]
4250
+ attr_accessor :key
4251
+
4252
+ # The value of the label.
4253
+ # Corresponds to the JSON property `value`
4254
+ # @return [String]
4255
+ attr_accessor :value
4256
+
4257
+ def initialize(**args)
4258
+ update!(**args)
4259
+ end
4260
+
4261
+ # Update properties of this object
4262
+ def update!(**args)
4263
+ @key = args[:key] if args.key?(:key)
4264
+ @value = args[:value] if args.key?(:value)
4265
+ end
4266
+ end
4267
+
4053
4268
  # Describes a custom list entity, such as a custom affinity or custom intent
4054
4269
  # audience list.
4055
4270
  class CustomList
@@ -4462,6 +4677,25 @@ module Google
4462
4677
  end
4463
4678
  end
4464
4679
 
4680
+ # The ad of which source is DV360 creative.
4681
+ class DisplayVideoSourceAd
4682
+ include Google::Apis::Core::Hashable
4683
+
4684
+ # The ID of the source creative.
4685
+ # Corresponds to the JSON property `creativeId`
4686
+ # @return [Fixnum]
4687
+ attr_accessor :creative_id
4688
+
4689
+ def initialize(**args)
4690
+ update!(**args)
4691
+ end
4692
+
4693
+ # Update properties of this object
4694
+ def update!(**args)
4695
+ @creative_id = args[:creative_id] if args.key?(:creative_id)
4696
+ end
4697
+ end
4698
+
4465
4699
  # Details of DoubleVerify settings.
4466
4700
  class DoubleVerify
4467
4701
  include Google::Apis::Core::Hashable
@@ -5978,6 +6212,62 @@ module Google
5978
6212
  end
5979
6213
  end
5980
6214
 
6215
+ # The meta data of an image asset.
6216
+ class ImageAsset
6217
+ include Google::Apis::Core::Hashable
6218
+
6219
+ # File size of the image asset in bytes.
6220
+ # Corresponds to the JSON property `fileSize`
6221
+ # @return [Fixnum]
6222
+ attr_accessor :file_size
6223
+
6224
+ # Dimensions.
6225
+ # Corresponds to the JSON property `fullSize`
6226
+ # @return [Google::Apis::DisplayvideoV2::Dimensions]
6227
+ attr_accessor :full_size
6228
+
6229
+ # MIME type of the image asset.
6230
+ # Corresponds to the JSON property `mimeType`
6231
+ # @return [String]
6232
+ attr_accessor :mime_type
6233
+
6234
+ def initialize(**args)
6235
+ update!(**args)
6236
+ end
6237
+
6238
+ # Update properties of this object
6239
+ def update!(**args)
6240
+ @file_size = args[:file_size] if args.key?(:file_size)
6241
+ @full_size = args[:full_size] if args.key?(:full_size)
6242
+ @mime_type = args[:mime_type] if args.key?(:mime_type)
6243
+ end
6244
+ end
6245
+
6246
+ # Ad details for InStreamAd
6247
+ class InStreamAd
6248
+ include Google::Apis::Core::Hashable
6249
+
6250
+ # The common attributes for InStreamAd, NonSkippableAd and BumperAd.
6251
+ # Corresponds to the JSON property `commonInStreamAttribute`
6252
+ # @return [Google::Apis::DisplayvideoV2::CommonInStreamAttribute]
6253
+ attr_accessor :common_in_stream_attribute
6254
+
6255
+ # The custom parameters to pass custom values to tracking url template.
6256
+ # Corresponds to the JSON property `customParameters`
6257
+ # @return [Hash<String,String>]
6258
+ attr_accessor :custom_parameters
6259
+
6260
+ def initialize(**args)
6261
+ update!(**args)
6262
+ end
6263
+
6264
+ # Update properties of this object
6265
+ def update!(**args)
6266
+ @common_in_stream_attribute = args[:common_in_stream_attribute] if args.key?(:common_in_stream_attribute)
6267
+ @custom_parameters = args[:custom_parameters] if args.key?(:custom_parameters)
6268
+ end
6269
+ end
6270
+
5981
6271
  # A single insertion order.
5982
6272
  class InsertionOrder
5983
6273
  include Google::Apis::Core::Hashable
@@ -8102,6 +8392,89 @@ module Google
8102
8392
  end
8103
8393
  end
8104
8394
 
8395
+ # Response message for YoutubeAdGroupAdService.ListYoutubeAdGroupAds.
8396
+ class ListYoutubeAdGroupAdsResponse
8397
+ include Google::Apis::Core::Hashable
8398
+
8399
+ # A token to retrieve the next page of results. Pass this value in the
8400
+ # page_token field in the subsequent call to `ListYoutubeAdGroupAds` method to
8401
+ # retrieve the next page of results.
8402
+ # Corresponds to the JSON property `nextPageToken`
8403
+ # @return [String]
8404
+ attr_accessor :next_page_token
8405
+
8406
+ # The list of ad group ads. This list will be absent if empty.
8407
+ # Corresponds to the JSON property `youtubeAdGroupAds`
8408
+ # @return [Array<Google::Apis::DisplayvideoV2::YoutubeAdGroupAd>]
8409
+ attr_accessor :youtube_ad_group_ads
8410
+
8411
+ def initialize(**args)
8412
+ update!(**args)
8413
+ end
8414
+
8415
+ # Update properties of this object
8416
+ def update!(**args)
8417
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
8418
+ @youtube_ad_group_ads = args[:youtube_ad_group_ads] if args.key?(:youtube_ad_group_ads)
8419
+ end
8420
+ end
8421
+
8422
+ # Response message for ListYoutubeAdGroupAssignedTargetingOptions.
8423
+ class ListYoutubeAdGroupAssignedTargetingOptionsResponse
8424
+ include Google::Apis::Core::Hashable
8425
+
8426
+ # The list of assigned targeting options. This list will be absent if empty.
8427
+ # Corresponds to the JSON property `assignedTargetingOptions`
8428
+ # @return [Array<Google::Apis::DisplayvideoV2::AssignedTargetingOption>]
8429
+ attr_accessor :assigned_targeting_options
8430
+
8431
+ # A token identifying the next page of results. This value should be specified
8432
+ # as the pageToken in a subsequent
8433
+ # ListYoutubeAdGroupAssignedTargetingOptionsRequest to fetch the next page of
8434
+ # results. This token will be absent if there are no more
8435
+ # assigned_targeting_options to return.
8436
+ # Corresponds to the JSON property `nextPageToken`
8437
+ # @return [String]
8438
+ attr_accessor :next_page_token
8439
+
8440
+ def initialize(**args)
8441
+ update!(**args)
8442
+ end
8443
+
8444
+ # Update properties of this object
8445
+ def update!(**args)
8446
+ @assigned_targeting_options = args[:assigned_targeting_options] if args.key?(:assigned_targeting_options)
8447
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
8448
+ end
8449
+ end
8450
+
8451
+ #
8452
+ class ListYoutubeAdGroupsResponse
8453
+ include Google::Apis::Core::Hashable
8454
+
8455
+ # A token to retrieve the next page of results. Pass this value in the
8456
+ # page_token field in the subsequent call to `ListYoutubeAdGroups` method to
8457
+ # retrieve the next page of results.
8458
+ # Corresponds to the JSON property `nextPageToken`
8459
+ # @return [String]
8460
+ attr_accessor :next_page_token
8461
+
8462
+ # The list of ad groups. This list will be absent if empty.
8463
+ # Corresponds to the JSON property `youtubeAdGroups`
8464
+ # @return [Array<Google::Apis::DisplayvideoV2::YoutubeAdGroup>]
8465
+ attr_accessor :youtube_ad_groups
8466
+
8467
+ def initialize(**args)
8468
+ update!(**args)
8469
+ end
8470
+
8471
+ # Update properties of this object
8472
+ def update!(**args)
8473
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
8474
+ @youtube_ad_groups = args[:youtube_ad_groups] if args.key?(:youtube_ad_groups)
8475
+ end
8476
+ end
8477
+
8105
8478
  # A list of locations used for targeting.
8106
8479
  class LocationList
8107
8480
  include Google::Apis::Core::Hashable
@@ -8255,38 +8628,119 @@ module Google
8255
8628
  end
8256
8629
  end
8257
8630
 
8258
- # A strategy that automatically adjusts the bid to optimize a specified
8259
- # performance goal while spending the full budget.
8260
- class MaximizeSpendBidStrategy
8631
+ # The details for masthead ad.
8632
+ class MastheadAd
8261
8633
  include Google::Apis::Core::Hashable
8262
8634
 
8263
- # The ID of the Custom Bidding Algorithm used by this strategy. Only applicable
8264
- # when performance_goal_type is set to `
8265
- # BIDDING_STRATEGY_PERFORMANCE_GOAL_TYPE_CUSTOM_ALGO`.
8266
- # Corresponds to the JSON property `customBiddingAlgorithmId`
8267
- # @return [Fixnum]
8268
- attr_accessor :custom_bidding_algorithm_id
8635
+ # Video will autoplay for certain period of time.
8636
+ # Corresponds to the JSON property `autoplayVideoDuration`
8637
+ # @return [String]
8638
+ attr_accessor :autoplay_video_duration
8269
8639
 
8270
- # The maximum average CPM that may be bid, in micros of the advertiser's
8271
- # currency. Must be greater than or equal to a billable unit of the given
8272
- # currency. For example, 1500000 represents 1.5 standard units of the currency.
8273
- # Corresponds to the JSON property `maxAverageCpmBidAmountMicros`
8640
+ # Video will start to play after certain period of time in millisecond.
8641
+ # Corresponds to the JSON property `autoplayVideoStartMillisecond`
8274
8642
  # @return [Fixnum]
8275
- attr_accessor :max_average_cpm_bid_amount_micros
8643
+ attr_accessor :autoplay_video_start_millisecond
8276
8644
 
8277
- # Required. The type of the performance goal that the bidding strategy tries to
8278
- # minimize while spending the full budget. `
8279
- # BIDDING_STRATEGY_PERFORMANCE_GOAL_TYPE_VIEWABLE_CPM` is not supported for this
8280
- # strategy.
8281
- # Corresponds to the JSON property `performanceGoalType`
8645
+ # The text on the call-to-action button.
8646
+ # Corresponds to the JSON property `callToActionButtonLabel`
8282
8647
  # @return [String]
8283
- attr_accessor :performance_goal_type
8648
+ attr_accessor :call_to_action_button_label
8284
8649
 
8285
- # Whether the strategy takes deal floor prices into account.
8286
- # Corresponds to the JSON property `raiseBidForDeals`
8287
- # @return [Boolean]
8288
- attr_accessor :raise_bid_for_deals
8289
- alias_method :raise_bid_for_deals?, :raise_bid_for_deals
8650
+ # The destination URL for the call-to-action button.
8651
+ # Corresponds to the JSON property `callToActionFinalUrl`
8652
+ # @return [String]
8653
+ attr_accessor :call_to_action_final_url
8654
+
8655
+ # The tracking URL for the call-to-action button.
8656
+ # Corresponds to the JSON property `callToActionTrackingUrl`
8657
+ # @return [String]
8658
+ attr_accessor :call_to_action_tracking_url
8659
+
8660
+ # The videos (up to 2) that appear next to the Masthead ad on desktop.
8661
+ # Corresponds to the JSON property `companionYoutubeVideos`
8662
+ # @return [Array<Google::Apis::DisplayvideoV2::YoutubeVideoDetails>]
8663
+ attr_accessor :companion_youtube_videos
8664
+
8665
+ # The description of the ad.
8666
+ # Corresponds to the JSON property `description`
8667
+ # @return [String]
8668
+ attr_accessor :description
8669
+
8670
+ # The headline of the ad.
8671
+ # Corresponds to the JSON property `headline`
8672
+ # @return [String]
8673
+ attr_accessor :headline
8674
+
8675
+ # Whether to show a background or banner that appears at the top of a YouTube
8676
+ # page.
8677
+ # Corresponds to the JSON property `showChannelArt`
8678
+ # @return [Boolean]
8679
+ attr_accessor :show_channel_art
8680
+ alias_method :show_channel_art?, :show_channel_art
8681
+
8682
+ # Details of the YouTube video.
8683
+ # Corresponds to the JSON property `video`
8684
+ # @return [Google::Apis::DisplayvideoV2::YoutubeVideoDetails]
8685
+ attr_accessor :video
8686
+
8687
+ # Aspect ratio of the autoplaying YouTube video on the Masthead.
8688
+ # Corresponds to the JSON property `videoAspectRatio`
8689
+ # @return [String]
8690
+ attr_accessor :video_aspect_ratio
8691
+
8692
+ def initialize(**args)
8693
+ update!(**args)
8694
+ end
8695
+
8696
+ # Update properties of this object
8697
+ def update!(**args)
8698
+ @autoplay_video_duration = args[:autoplay_video_duration] if args.key?(:autoplay_video_duration)
8699
+ @autoplay_video_start_millisecond = args[:autoplay_video_start_millisecond] if args.key?(:autoplay_video_start_millisecond)
8700
+ @call_to_action_button_label = args[:call_to_action_button_label] if args.key?(:call_to_action_button_label)
8701
+ @call_to_action_final_url = args[:call_to_action_final_url] if args.key?(:call_to_action_final_url)
8702
+ @call_to_action_tracking_url = args[:call_to_action_tracking_url] if args.key?(:call_to_action_tracking_url)
8703
+ @companion_youtube_videos = args[:companion_youtube_videos] if args.key?(:companion_youtube_videos)
8704
+ @description = args[:description] if args.key?(:description)
8705
+ @headline = args[:headline] if args.key?(:headline)
8706
+ @show_channel_art = args[:show_channel_art] if args.key?(:show_channel_art)
8707
+ @video = args[:video] if args.key?(:video)
8708
+ @video_aspect_ratio = args[:video_aspect_ratio] if args.key?(:video_aspect_ratio)
8709
+ end
8710
+ end
8711
+
8712
+ # A strategy that automatically adjusts the bid to optimize a specified
8713
+ # performance goal while spending the full budget.
8714
+ class MaximizeSpendBidStrategy
8715
+ include Google::Apis::Core::Hashable
8716
+
8717
+ # The ID of the Custom Bidding Algorithm used by this strategy. Only applicable
8718
+ # when performance_goal_type is set to `
8719
+ # BIDDING_STRATEGY_PERFORMANCE_GOAL_TYPE_CUSTOM_ALGO`.
8720
+ # Corresponds to the JSON property `customBiddingAlgorithmId`
8721
+ # @return [Fixnum]
8722
+ attr_accessor :custom_bidding_algorithm_id
8723
+
8724
+ # The maximum average CPM that may be bid, in micros of the advertiser's
8725
+ # currency. Must be greater than or equal to a billable unit of the given
8726
+ # currency. For example, 1500000 represents 1.5 standard units of the currency.
8727
+ # Corresponds to the JSON property `maxAverageCpmBidAmountMicros`
8728
+ # @return [Fixnum]
8729
+ attr_accessor :max_average_cpm_bid_amount_micros
8730
+
8731
+ # Required. The type of the performance goal that the bidding strategy tries to
8732
+ # minimize while spending the full budget. `
8733
+ # BIDDING_STRATEGY_PERFORMANCE_GOAL_TYPE_VIEWABLE_CPM` is not supported for this
8734
+ # strategy.
8735
+ # Corresponds to the JSON property `performanceGoalType`
8736
+ # @return [String]
8737
+ attr_accessor :performance_goal_type
8738
+
8739
+ # Whether the strategy takes deal floor prices into account.
8740
+ # Corresponds to the JSON property `raiseBidForDeals`
8741
+ # @return [Boolean]
8742
+ attr_accessor :raise_bid_for_deals
8743
+ alias_method :raise_bid_for_deals?, :raise_bid_for_deals
8290
8744
 
8291
8745
  def initialize(**args)
8292
8746
  update!(**args)
@@ -8568,6 +9022,31 @@ module Google
8568
9022
  end
8569
9023
  end
8570
9024
 
9025
+ # Ad details for NonSkippableAd
9026
+ class NonSkippableAd
9027
+ include Google::Apis::Core::Hashable
9028
+
9029
+ # The common attributes for InStreamAd, NonSkippableAd and BumperAd.
9030
+ # Corresponds to the JSON property `commonInStreamAttribute`
9031
+ # @return [Google::Apis::DisplayvideoV2::CommonInStreamAttribute]
9032
+ attr_accessor :common_in_stream_attribute
9033
+
9034
+ # The custom parameters to pass custom values to tracking url template.
9035
+ # Corresponds to the JSON property `customParameters`
9036
+ # @return [Hash<String,String>]
9037
+ attr_accessor :custom_parameters
9038
+
9039
+ def initialize(**args)
9040
+ update!(**args)
9041
+ end
9042
+
9043
+ # Update properties of this object
9044
+ def update!(**args)
9045
+ @common_in_stream_attribute = args[:common_in_stream_attribute] if args.key?(:common_in_stream_attribute)
9046
+ @custom_parameters = args[:custom_parameters] if args.key?(:custom_parameters)
9047
+ end
9048
+ end
9049
+
8571
9050
  # OBA Icon for a Creative
8572
9051
  class ObaIcon
8573
9052
  include Google::Apis::Core::Hashable
@@ -9498,6 +9977,63 @@ module Google
9498
9977
  end
9499
9978
  end
9500
9979
 
9980
+ # The details of product feed.
9981
+ class ProductFeedData
9982
+ include Google::Apis::Core::Hashable
9983
+
9984
+ # True if opt out of showing products.
9985
+ # Corresponds to the JSON property `isFeedDisabled`
9986
+ # @return [Boolean]
9987
+ attr_accessor :is_feed_disabled
9988
+ alias_method :is_feed_disabled?, :is_feed_disabled
9989
+
9990
+ # A list of dimensions which are used to match products.
9991
+ # Corresponds to the JSON property `productMatchDimensions`
9992
+ # @return [Array<Google::Apis::DisplayvideoV2::ProductMatchDimension>]
9993
+ attr_accessor :product_match_dimensions
9994
+
9995
+ # The type of the way to select the products.
9996
+ # Corresponds to the JSON property `productMatchType`
9997
+ # @return [String]
9998
+ attr_accessor :product_match_type
9999
+
10000
+ def initialize(**args)
10001
+ update!(**args)
10002
+ end
10003
+
10004
+ # Update properties of this object
10005
+ def update!(**args)
10006
+ @is_feed_disabled = args[:is_feed_disabled] if args.key?(:is_feed_disabled)
10007
+ @product_match_dimensions = args[:product_match_dimensions] if args.key?(:product_match_dimensions)
10008
+ @product_match_type = args[:product_match_type] if args.key?(:product_match_type)
10009
+ end
10010
+ end
10011
+
10012
+ # The dimension which are used to match products.
10013
+ class ProductMatchDimension
10014
+ include Google::Apis::Core::Hashable
10015
+
10016
+ # The key and value of a custom label.
10017
+ # Corresponds to the JSON property `customLabel`
10018
+ # @return [Google::Apis::DisplayvideoV2::CustomLabel]
10019
+ attr_accessor :custom_label
10020
+
10021
+ # The ID of the product offer to match the product with the same offer ID.
10022
+ # Corresponds to the JSON property `productOfferId`
10023
+ # @return [String]
10024
+ attr_accessor :product_offer_id
10025
+
10026
+ def initialize(**args)
10027
+ update!(**args)
10028
+ end
10029
+
10030
+ # Update properties of this object
10031
+ def update!(**args)
10032
+ @custom_label = args[:custom_label] if args.key?(:custom_label)
10033
+ @product_offer_id = args[:product_offer_id] if args.key?(:product_offer_id)
10034
+ end
10035
+ end
10036
+
9501
10037
  # Targeting details for proximity location list. This will be populated in the
9502
10038
  # details field of an AssignedTargetingOption when targeting_type is `
9503
10039
  # TARGETING_TYPE_PROXIMITY_LOCATION_LIST`.
@@ -10008,6 +10544,27 @@ module Google
10008
10544
  end
10009
10545
  end
10010
10546
 
10547
+ # Details for session position assigned targeting option. This will be populated
10548
+ # in the session_position_details field when targeting_type is `
10549
+ # TARGETING_TYPE_SESSION_POSITION`.
10550
+ class SessionPositionAssignedTargetingOptionDetails
10551
+ include Google::Apis::Core::Hashable
10552
+
10553
+ # The position where the ad will show in a session.
10554
+ # Corresponds to the JSON property `sessionPosition`
10555
+ # @return [String]
10556
+ attr_accessor :session_position
10557
+
10558
+ def initialize(**args)
10559
+ update!(**args)
10560
+ end
10561
+
10562
+ # Update properties of this object
10563
+ def update!(**args)
10564
+ @session_position = args[:session_position] if args.key?(:session_position)
10565
+ end
10566
+ end
10567
+
10011
10568
  # A single site. Sites are apps or websites belonging to a channel.
10012
10569
  class Site
10013
10570
  include Google::Apis::Core::Hashable
@@ -10116,6 +10673,42 @@ module Google
10116
10673
  end
10117
10674
  end
10118
10675
 
10676
+ # Setting that controls the average number of times the ads will show to the
10677
+ # same person over a certain period of time.
10678
+ class TargetFrequency
10679
+ include Google::Apis::Core::Hashable
10680
+
10681
+ # The target number of times, on average, the ads will be shown to the same
10682
+ # person in the timespan dictated by time_unit and time_unit_count.
10683
+ # Corresponds to the JSON property `targetCount`
10684
+ # @return [Fixnum]
10685
+ attr_accessor :target_count
10686
+
10687
+ # The unit of time in which the target frequency will be applied. The following
10688
+ # time unit is applicable: * `TIME_UNIT_WEEKS`
10689
+ # Corresponds to the JSON property `timeUnit`
10690
+ # @return [String]
10691
+ attr_accessor :time_unit
10692
+
10693
+ # The number of time_unit the target frequency will last. The following
10694
+ # restrictions apply based on the value of time_unit: * `TIME_UNIT_WEEKS` - must
10695
+ # be 1
10696
+ # Corresponds to the JSON property `timeUnitCount`
10697
+ # @return [Fixnum]
10698
+ attr_accessor :time_unit_count
10699
+
10700
+ def initialize(**args)
10701
+ update!(**args)
10702
+ end
10703
+
10704
+ # Update properties of this object
10705
+ def update!(**args)
10706
+ @target_count = args[:target_count] if args.key?(:target_count)
10707
+ @time_unit = args[:time_unit] if args.key?(:time_unit)
10708
+ @time_unit_count = args[:time_unit_count] if args.key?(:time_unit_count)
10709
+ end
10710
+ end
10711
+
10119
10712
  # Settings that control the targeting expansion of the line item. Targeting
10120
10713
  # expansion allows the line item to reach a larger audience based on the
10121
10714
  # original audience list and the targeting expansion level. Beginning November 7,
@@ -10866,6 +11459,197 @@ module Google
10866
11459
  end
10867
11460
  end
10868
11461
 
11462
+ # Settings related to VideoAdSequence.
11463
+ class VideoAdSequenceSettings
11464
+ include Google::Apis::Core::Hashable
11465
+
11466
+ # The minimum time interval before the same user sees this sequence again.
11467
+ # Corresponds to the JSON property `minimumDuration`
11468
+ # @return [String]
11469
+ attr_accessor :minimum_duration
11470
+
11471
+ # The steps of which the sequence consists.
11472
+ # Corresponds to the JSON property `steps`
11473
+ # @return [Array<Google::Apis::DisplayvideoV2::VideoAdSequenceStep>]
11474
+ attr_accessor :steps
11475
+
11476
+ def initialize(**args)
11477
+ update!(**args)
11478
+ end
11479
+
11480
+ # Update properties of this object
11481
+ def update!(**args)
11482
+ @minimum_duration = args[:minimum_duration] if args.key?(:minimum_duration)
11483
+ @steps = args[:steps] if args.key?(:steps)
11484
+ end
11485
+ end
11486
+
11487
+ # The detail of a single step in a VideoAdSequence.
11488
+ class VideoAdSequenceStep
11489
+ include Google::Apis::Core::Hashable
11490
+
11491
+ # The ID of the corresponding ad group of the step.
11492
+ # Corresponds to the JSON property `adGroupId`
11493
+ # @return [Fixnum]
11494
+ attr_accessor :ad_group_id
11495
+
11496
+ # The interaction on the previous step that will lead the viewer to this step.
11497
+ # The first step does not have interaction_type.
11498
+ # Corresponds to the JSON property `interactionType`
11499
+ # @return [String]
11500
+ attr_accessor :interaction_type
11501
+
11502
+ # The ID of the previous step. The first step does not have previous step.
11503
+ # Corresponds to the JSON property `previousStepId`
11504
+ # @return [Fixnum]
11505
+ attr_accessor :previous_step_id
11506
+
11507
+ # The ID of the step.
11508
+ # Corresponds to the JSON property `stepId`
11509
+ # @return [Fixnum]
11510
+ attr_accessor :step_id
11511
+
11512
+ def initialize(**args)
11513
+ update!(**args)
11514
+ end
11515
+
11516
+ # Update properties of this object
11517
+ def update!(**args)
11518
+ @ad_group_id = args[:ad_group_id] if args.key?(:ad_group_id)
11519
+ @interaction_type = args[:interaction_type] if args.key?(:interaction_type)
11520
+ @previous_step_id = args[:previous_step_id] if args.key?(:previous_step_id)
11521
+ @step_id = args[:step_id] if args.key?(:step_id)
11522
+ end
11523
+ end
11524
+
11525
+ # The details for video discovery ad.
11526
+ class VideoDiscoveryAd
11527
+ include Google::Apis::Core::Hashable
11528
+
11529
+ # First text line for the ad.
11530
+ # Corresponds to the JSON property `description1`
11531
+ # @return [String]
11532
+ attr_accessor :description1
11533
+
11534
+ # Second text line for the ad.
11535
+ # Corresponds to the JSON property `description2`
11536
+ # @return [String]
11537
+ attr_accessor :description2
11538
+
11539
+ # The headline of the video discovery ad.
11540
+ # Corresponds to the JSON property `headline`
11541
+ # @return [String]
11542
+ attr_accessor :headline
11543
+
11544
+ # Thumbnail image to use in the ad.
11545
+ # Corresponds to the JSON property `thumbnail`
11546
+ # @return [String]
11547
+ attr_accessor :thumbnail
11548
+
11549
+ # Details of the YouTube video.
11550
+ # Corresponds to the JSON property `video`
11551
+ # @return [Google::Apis::DisplayvideoV2::YoutubeVideoDetails]
11552
+ attr_accessor :video
11553
+
11554
+ def initialize(**args)
11555
+ update!(**args)
11556
+ end
11557
+
11558
+ # Update properties of this object
11559
+ def update!(**args)
11560
+ @description1 = args[:description1] if args.key?(:description1)
11561
+ @description2 = args[:description2] if args.key?(:description2)
11562
+ @headline = args[:headline] if args.key?(:headline)
11563
+ @thumbnail = args[:thumbnail] if args.key?(:thumbnail)
11564
+ @video = args[:video] if args.key?(:video)
11565
+ end
11566
+ end
11567
+
11568
+ # The details for video performance ad.
11569
+ class VideoPerformanceAd
11570
+ include Google::Apis::Core::Hashable
11571
+
11572
+ # The list of text assets which show on the call-to-action button.
11573
+ # Corresponds to the JSON property `actionButtonLabels`
11574
+ # @return [Array<String>]
11575
+ attr_accessor :action_button_labels
11576
+
11577
+ # The list of companion banners of this ad.
11578
+ # Corresponds to the JSON property `companionBanners`
11579
+ # @return [Array<Google::Apis::DisplayvideoV2::ImageAsset>]
11580
+ attr_accessor :companion_banners
11581
+
11582
+ # The custom parameters to pass custom values to tracking url template.
11583
+ # Corresponds to the JSON property `customParameters`
11584
+ # @return [Hash<String,String>]
11585
+ attr_accessor :custom_parameters
11586
+
11587
+ # The list of descriptions which show on the call-to-action banner.
11588
+ # Corresponds to the JSON property `descriptions`
11589
+ # @return [Array<String>]
11590
+ attr_accessor :descriptions
11591
+
11592
+ # The first piece after the domain in the display url.
11593
+ # Corresponds to the JSON property `displayUrlBreadcrumb1`
11594
+ # @return [String]
11595
+ attr_accessor :display_url_breadcrumb1
11596
+
11597
+ # The second piece after the domain in the display url.
11598
+ # Corresponds to the JSON property `displayUrlBreadcrumb2`
11599
+ # @return [String]
11600
+ attr_accessor :display_url_breadcrumb2
11601
+
11602
+ # The domain of the display url
11603
+ # Corresponds to the JSON property `domain`
11604
+ # @return [String]
11605
+ attr_accessor :domain
11606
+
11607
+ # The URL address of the webpage that people reach after they click the ad.
11608
+ # Corresponds to the JSON property `finalUrl`
11609
+ # @return [String]
11610
+ attr_accessor :final_url
11611
+
11612
+ # The list of headlines which show on the call-to-action banner.
11613
+ # Corresponds to the JSON property `headlines`
11614
+ # @return [Array<String>]
11615
+ attr_accessor :headlines
11616
+
11617
+ # The list of lone headlines which show on the call-to-action banner.
11618
+ # Corresponds to the JSON property `longHeadlines`
11619
+ # @return [Array<String>]
11620
+ attr_accessor :long_headlines
11621
+
11622
+ # The URL address which is loaded in background for tracking purpose.
11623
+ # Corresponds to the JSON property `trackingUrl`
11624
+ # @return [String]
11625
+ attr_accessor :tracking_url
11626
+
11627
+ # The list of YouTube video assets in this ad.
11628
+ # Corresponds to the JSON property `videos`
11629
+ # @return [Array<Google::Apis::DisplayvideoV2::YoutubeVideoDetails>]
11630
+ attr_accessor :videos
11631
+
11632
+ def initialize(**args)
11633
+ update!(**args)
11634
+ end
11635
+
11636
+ # Update properties of this object
11637
+ def update!(**args)
11638
+ @action_button_labels = args[:action_button_labels] if args.key?(:action_button_labels)
11639
+ @companion_banners = args[:companion_banners] if args.key?(:companion_banners)
11640
+ @custom_parameters = args[:custom_parameters] if args.key?(:custom_parameters)
11641
+ @descriptions = args[:descriptions] if args.key?(:descriptions)
11642
+ @display_url_breadcrumb1 = args[:display_url_breadcrumb1] if args.key?(:display_url_breadcrumb1)
11643
+ @display_url_breadcrumb2 = args[:display_url_breadcrumb2] if args.key?(:display_url_breadcrumb2)
11644
+ @domain = args[:domain] if args.key?(:domain)
11645
+ @final_url = args[:final_url] if args.key?(:final_url)
11646
+ @headlines = args[:headlines] if args.key?(:headlines)
11647
+ @long_headlines = args[:long_headlines] if args.key?(:long_headlines)
11648
+ @tracking_url = args[:tracking_url] if args.key?(:tracking_url)
11649
+ @videos = args[:videos] if args.key?(:videos)
11650
+ end
11651
+ end
11652
+
10869
11653
  # Video player size targeting option details. This will be populated in the
10870
11654
  # video_player_size_details field when targeting_type is `
10871
11655
  # TARGETING_TYPE_VIDEO_PLAYER_SIZE`. Explicitly targeting all options is not
@@ -10952,10 +11736,239 @@ module Google
10952
11736
  end
10953
11737
  end
10954
11738
 
11739
+ # A single YouTube ad group associated with a YouTube and Partners line item.
11740
+ class YoutubeAdGroup
11741
+ include Google::Apis::Core::Hashable
11742
+
11743
+ # The format of the ad group.
11744
+ # Corresponds to the JSON property `adGroupFormat`
11745
+ # @return [String]
11746
+ attr_accessor :ad_group_format
11747
+
11748
+ # The unique ID of the ad group. Assigned by the system.
11749
+ # Corresponds to the JSON property `adGroupId`
11750
+ # @return [Fixnum]
11751
+ attr_accessor :ad_group_id
11752
+
11753
+ # The unique ID of the advertiser the ad group belongs to.
11754
+ # Corresponds to the JSON property `advertiserId`
11755
+ # @return [Fixnum]
11756
+ attr_accessor :advertiser_id
11757
+
11758
+ # Settings that control the bid strategy for YouTube and Partners resources.
11759
+ # Corresponds to the JSON property `biddingStrategy`
11760
+ # @return [Google::Apis::DisplayvideoV2::YoutubeAndPartnersBiddingStrategy]
11761
+ attr_accessor :bidding_strategy
11762
+
11763
+ # The display name of the ad group. Must be UTF-8 encoded with a maximum size of
11764
+ # 255 bytes.
11765
+ # Corresponds to the JSON property `displayName`
11766
+ # @return [String]
11767
+ attr_accessor :display_name
11768
+
11769
+ # Controls whether or not the ad group can spend its budget and bid on inventory.
11770
+ # If the ad group's parent line item is not active, the ad group can't spend
11771
+ # its budget even if its own status is `ENTITY_STATUS_ACTIVE`.
11772
+ # Corresponds to the JSON property `entityStatus`
11773
+ # @return [String]
11774
+ attr_accessor :entity_status
11775
+
11776
+ # The unique ID of the line item that the ad group belongs to.
11777
+ # Corresponds to the JSON property `lineItemId`
11778
+ # @return [Fixnum]
11779
+ attr_accessor :line_item_id
11780
+
11781
+ # The resource name of the ad group.
11782
+ # Corresponds to the JSON property `name`
11783
+ # @return [String]
11784
+ attr_accessor :name
11785
+
11786
+ # The details of product feed.
11787
+ # Corresponds to the JSON property `productFeedData`
11788
+ # @return [Google::Apis::DisplayvideoV2::ProductFeedData]
11789
+ attr_accessor :product_feed_data
11790
+
11791
+ # Settings that control the targeting expansion of the line item. Targeting
11792
+ # expansion allows the line item to reach a larger audience based on the
11793
+ # original audience list and the targeting expansion level. Beginning November 7,
11794
+ # 2022, these settings may represent the [optimized targeting feature](//
11795
+ # support.google.com/displayvideo/answer/12060859) in place of targeting
11796
+ # expansion. This feature will be rolled out to all partners by November 9, 2022.
11797
+ # Corresponds to the JSON property `targetingExpansion`
11798
+ # @return [Google::Apis::DisplayvideoV2::TargetingExpansionConfig]
11799
+ attr_accessor :targeting_expansion
11800
+
11801
+ # The IDs of the YouTubeAds associated with the ad group.
11802
+ # Corresponds to the JSON property `youtubeAdIds`
11803
+ # @return [Array<Fixnum>]
11804
+ attr_accessor :youtube_ad_ids
11805
+
11806
+ def initialize(**args)
11807
+ update!(**args)
11808
+ end
11809
+
11810
+ # Update properties of this object
11811
+ def update!(**args)
11812
+ @ad_group_format = args[:ad_group_format] if args.key?(:ad_group_format)
11813
+ @ad_group_id = args[:ad_group_id] if args.key?(:ad_group_id)
11814
+ @advertiser_id = args[:advertiser_id] if args.key?(:advertiser_id)
11815
+ @bidding_strategy = args[:bidding_strategy] if args.key?(:bidding_strategy)
11816
+ @display_name = args[:display_name] if args.key?(:display_name)
11817
+ @entity_status = args[:entity_status] if args.key?(:entity_status)
11818
+ @line_item_id = args[:line_item_id] if args.key?(:line_item_id)
11819
+ @name = args[:name] if args.key?(:name)
11820
+ @product_feed_data = args[:product_feed_data] if args.key?(:product_feed_data)
11821
+ @targeting_expansion = args[:targeting_expansion] if args.key?(:targeting_expansion)
11822
+ @youtube_ad_ids = args[:youtube_ad_ids] if args.key?(:youtube_ad_ids)
11823
+ end
11824
+ end
11825
+
11826
+ # A single YouTube ad group ad associated with a YouTube ad group.
11827
+ class YoutubeAdGroupAd
11828
+ include Google::Apis::Core::Hashable
11829
+
11830
+ # The unique ID of the ad group ad. Assigned by the system.
11831
+ # Corresponds to the JSON property `adGroupAdId`
11832
+ # @return [Fixnum]
11833
+ attr_accessor :ad_group_ad_id
11834
+
11835
+ # The unique ID of the ad group that the ad group ad belongs to.
11836
+ # Corresponds to the JSON property `adGroupId`
11837
+ # @return [Fixnum]
11838
+ attr_accessor :ad_group_id
11839
+
11840
+ # The list of ad urls.
11841
+ # Corresponds to the JSON property `adUrls`
11842
+ # @return [Array<Google::Apis::DisplayvideoV2::AdUrl>]
11843
+ attr_accessor :ad_urls
11844
+
11845
+ # The unique ID of the advertiser the ad group ad belongs to.
11846
+ # Corresponds to the JSON property `advertiserId`
11847
+ # @return [Fixnum]
11848
+ attr_accessor :advertiser_id
11849
+
11850
+ # The details for audio ad.
11851
+ # Corresponds to the JSON property `audioAd`
11852
+ # @return [Google::Apis::DisplayvideoV2::AudioAd]
11853
+ attr_accessor :audio_ad
11854
+
11855
+ # Ad details for BumperAd.
11856
+ # Corresponds to the JSON property `bumperAd`
11857
+ # @return [Google::Apis::DisplayvideoV2::BumperAd]
11858
+ attr_accessor :bumper_ad
11859
+
11860
+ # The display name of the ad group ad. Must be UTF-8 encoded with a maximum size
11861
+ # of 255 bytes.
11862
+ # Corresponds to the JSON property `displayName`
11863
+ # @return [String]
11864
+ attr_accessor :display_name
11865
+
11866
+ # The ad of which source is DV360 creative.
11867
+ # Corresponds to the JSON property `displayVideoSourceAd`
11868
+ # @return [Google::Apis::DisplayvideoV2::DisplayVideoSourceAd]
11869
+ attr_accessor :display_video_source_ad
11870
+
11871
+ # The entity status of the ad group ad.
11872
+ # Corresponds to the JSON property `entityStatus`
11873
+ # @return [String]
11874
+ attr_accessor :entity_status
11875
+
11876
+ # Ad details for InStreamAd
11877
+ # Corresponds to the JSON property `inStreamAd`
11878
+ # @return [Google::Apis::DisplayvideoV2::InStreamAd]
11879
+ attr_accessor :in_stream_ad
11880
+
11881
+ # The details for masthead ad.
11882
+ # Corresponds to the JSON property `mastheadAd`
11883
+ # @return [Google::Apis::DisplayvideoV2::MastheadAd]
11884
+ attr_accessor :masthead_ad
11885
+
11886
+ # The resource name of the ad group ad.
11887
+ # Corresponds to the JSON property `name`
11888
+ # @return [String]
11889
+ attr_accessor :name
11890
+
11891
+ # Ad details for NonSkippableAd
11892
+ # Corresponds to the JSON property `nonSkippableAd`
11893
+ # @return [Google::Apis::DisplayvideoV2::NonSkippableAd]
11894
+ attr_accessor :non_skippable_ad
11895
+
11896
+ # The details for video discovery ad.
11897
+ # Corresponds to the JSON property `videoDiscoverAd`
11898
+ # @return [Google::Apis::DisplayvideoV2::VideoDiscoveryAd]
11899
+ attr_accessor :video_discover_ad
11900
+
11901
+ # The details for video performance ad.
11902
+ # Corresponds to the JSON property `videoPerformanceAd`
11903
+ # @return [Google::Apis::DisplayvideoV2::VideoPerformanceAd]
11904
+ attr_accessor :video_performance_ad
11905
+
11906
+ def initialize(**args)
11907
+ update!(**args)
11908
+ end
11909
+
11910
+ # Update properties of this object
11911
+ def update!(**args)
11912
+ @ad_group_ad_id = args[:ad_group_ad_id] if args.key?(:ad_group_ad_id)
11913
+ @ad_group_id = args[:ad_group_id] if args.key?(:ad_group_id)
11914
+ @ad_urls = args[:ad_urls] if args.key?(:ad_urls)
11915
+ @advertiser_id = args[:advertiser_id] if args.key?(:advertiser_id)
11916
+ @audio_ad = args[:audio_ad] if args.key?(:audio_ad)
11917
+ @bumper_ad = args[:bumper_ad] if args.key?(:bumper_ad)
11918
+ @display_name = args[:display_name] if args.key?(:display_name)
11919
+ @display_video_source_ad = args[:display_video_source_ad] if args.key?(:display_video_source_ad)
11920
+ @entity_status = args[:entity_status] if args.key?(:entity_status)
11921
+ @in_stream_ad = args[:in_stream_ad] if args.key?(:in_stream_ad)
11922
+ @masthead_ad = args[:masthead_ad] if args.key?(:masthead_ad)
11923
+ @name = args[:name] if args.key?(:name)
11924
+ @non_skippable_ad = args[:non_skippable_ad] if args.key?(:non_skippable_ad)
11925
+ @video_discover_ad = args[:video_discover_ad] if args.key?(:video_discover_ad)
11926
+ @video_performance_ad = args[:video_performance_ad] if args.key?(:video_performance_ad)
11927
+ end
11928
+ end
11929
+
11930
+ # Wrapper object associating an assigned_targeting_option resource and the
11931
+ # youtube ad group it is assigned to.
11932
+ class YoutubeAdGroupAssignedTargetingOption
11933
+ include Google::Apis::Core::Hashable
11934
+
11935
+ # A single assigned targeting option, which defines the state of a targeting
11936
+ # option for an entity with targeting settings.
11937
+ # Corresponds to the JSON property `assignedTargetingOption`
11938
+ # @return [Google::Apis::DisplayvideoV2::AssignedTargetingOption]
11939
+ attr_accessor :assigned_targeting_option
11940
+
11941
+ # The ID of the youtube ad group the assigned targeting option is assigned to.
11942
+ # Corresponds to the JSON property `youtubeAdGroupId`
11943
+ # @return [Fixnum]
11944
+ attr_accessor :youtube_ad_group_id
11945
+
11946
+ def initialize(**args)
11947
+ update!(**args)
11948
+ end
11949
+
11950
+ # Update properties of this object
11951
+ def update!(**args)
11952
+ @assigned_targeting_option = args[:assigned_targeting_option] if args.key?(:assigned_targeting_option)
11953
+ @youtube_ad_group_id = args[:youtube_ad_group_id] if args.key?(:youtube_ad_group_id)
11954
+ end
11955
+ end
11956
+
10955
11957
  # Settings that control the bid strategy for YouTube and Partners resources.
10956
11958
  class YoutubeAndPartnersBiddingStrategy
10957
11959
  include Google::Apis::Core::Hashable
10958
11960
 
11961
+ # Output only. Source of the effective targetCpa value for AdGroup.
11962
+ # Corresponds to the JSON property `adGroupEffectiveTargetCpaSource`
11963
+ # @return [String]
11964
+ attr_accessor :ad_group_effective_target_cpa_source
11965
+
11966
+ # Output only. The effective targetCpa for AdGroup, in micros of advertiser's
11967
+ # currency.
11968
+ # Corresponds to the JSON property `adGroupEffectiveTargetCpaValue`
11969
+ # @return [Fixnum]
11970
+ attr_accessor :ad_group_effective_target_cpa_value
11971
+
10959
11972
  # The type of the bidding strategy.
10960
11973
  # Corresponds to the JSON property `type`
10961
11974
  # @return [String]
@@ -10981,6 +11994,8 @@ module Google
10981
11994
 
10982
11995
  # Update properties of this object
10983
11996
  def update!(**args)
11997
+ @ad_group_effective_target_cpa_source = args[:ad_group_effective_target_cpa_source] if args.key?(:ad_group_effective_target_cpa_source)
11998
+ @ad_group_effective_target_cpa_value = args[:ad_group_effective_target_cpa_value] if args.key?(:ad_group_effective_target_cpa_value)
10984
11999
  @type = args[:type] if args.key?(:type)
10985
12000
  @value = args[:value] if args.key?(:value)
10986
12001
  end
@@ -11043,12 +12058,39 @@ module Google
11043
12058
  # @return [Google::Apis::DisplayvideoV2::YoutubeAndPartnersInventorySourceConfig]
11044
12059
  attr_accessor :inventory_source_settings
11045
12060
 
12061
+ # The ID of the form to generate leads.
12062
+ # Corresponds to the JSON property `leadFormId`
12063
+ # @return [Fixnum]
12064
+ attr_accessor :lead_form_id
12065
+
12066
+ # The ID of the merchant which is linked to the line item for product feed.
12067
+ # Corresponds to the JSON property `linkedMerchantId`
12068
+ # @return [Fixnum]
12069
+ attr_accessor :linked_merchant_id
12070
+
12071
+ # The IDs of the videos appear below the primary video ad when the ad is playing
12072
+ # in the YouTube app on mobile devices.
12073
+ # Corresponds to the JSON property `relatedVideoIds`
12074
+ # @return [Array<String>]
12075
+ attr_accessor :related_video_ids
12076
+
12077
+ # Setting that controls the average number of times the ads will show to the
12078
+ # same person over a certain period of time.
12079
+ # Corresponds to the JSON property `targetFrequency`
12080
+ # @return [Google::Apis::DisplayvideoV2::TargetFrequency]
12081
+ attr_accessor :target_frequency
12082
+
11046
12083
  # Settings that control what third-party vendors are measuring specific line
11047
12084
  # item metrics.
11048
12085
  # Corresponds to the JSON property `thirdPartyMeasurementSettings`
11049
12086
  # @return [Google::Apis::DisplayvideoV2::YoutubeAndPartnersThirdPartyMeasurementSettings]
11050
12087
  attr_accessor :third_party_measurement_settings
11051
12088
 
12089
+ # Settings related to VideoAdSequence.
12090
+ # Corresponds to the JSON property `videoAdSequenceSettings`
12091
+ # @return [Google::Apis::DisplayvideoV2::VideoAdSequenceSettings]
12092
+ attr_accessor :video_ad_sequence_settings
12093
+
11052
12094
  # Settings that control the number of times a user may be shown with the same ad
11053
12095
  # during a given time period.
11054
12096
  # Corresponds to the JSON property `viewFrequencyCap`
@@ -11064,7 +12106,12 @@ module Google
11064
12106
  @bidding_strategy = args[:bidding_strategy] if args.key?(:bidding_strategy)
11065
12107
  @content_category = args[:content_category] if args.key?(:content_category)
11066
12108
  @inventory_source_settings = args[:inventory_source_settings] if args.key?(:inventory_source_settings)
12109
+ @lead_form_id = args[:lead_form_id] if args.key?(:lead_form_id)
12110
+ @linked_merchant_id = args[:linked_merchant_id] if args.key?(:linked_merchant_id)
12111
+ @related_video_ids = args[:related_video_ids] if args.key?(:related_video_ids)
12112
+ @target_frequency = args[:target_frequency] if args.key?(:target_frequency)
11067
12113
  @third_party_measurement_settings = args[:third_party_measurement_settings] if args.key?(:third_party_measurement_settings)
12114
+ @video_ad_sequence_settings = args[:video_ad_sequence_settings] if args.key?(:video_ad_sequence_settings)
11068
12115
  @view_frequency_cap = args[:view_frequency_cap] if args.key?(:view_frequency_cap)
11069
12116
  end
11070
12117
  end
@@ -11116,6 +12163,87 @@ module Google
11116
12163
  @viewability_vendor_configs = args[:viewability_vendor_configs] if args.key?(:viewability_vendor_configs)
11117
12164
  end
11118
12165
  end
12166
+
12167
+ # Details for YouTube channel assigned targeting option. This will be populated
12168
+ # in the youtube_channel_details field when targeting_type is `
12169
+ # TARGETING_TYPE_YOUTUBE_CHANNEL`.
12170
+ class YoutubeChannelAssignedTargetingOptionDetails
12171
+ include Google::Apis::Core::Hashable
12172
+
12173
+ # The YouTube uploader channel id or the channel code of a YouTube channel.
12174
+ # Corresponds to the JSON property `channelId`
12175
+ # @return [String]
12176
+ attr_accessor :channel_id
12177
+
12178
+ # Indicates if this option is being negatively targeted.
12179
+ # Corresponds to the JSON property `negative`
12180
+ # @return [Boolean]
12181
+ attr_accessor :negative
12182
+ alias_method :negative?, :negative
12183
+
12184
+ def initialize(**args)
12185
+ update!(**args)
12186
+ end
12187
+
12188
+ # Update properties of this object
12189
+ def update!(**args)
12190
+ @channel_id = args[:channel_id] if args.key?(:channel_id)
12191
+ @negative = args[:negative] if args.key?(:negative)
12192
+ end
12193
+ end
12194
+
12195
+ # Details for YouTube video assigned targeting option. This will be populated in
12196
+ # the youtube_video_details field when targeting_type is `
12197
+ # TARGETING_TYPE_YOUTUBE_VIDEO`.
12198
+ class YoutubeVideoAssignedTargetingOptionDetails
12199
+ include Google::Apis::Core::Hashable
12200
+
12201
+ # Indicates if this option is being negatively targeted.
12202
+ # Corresponds to the JSON property `negative`
12203
+ # @return [Boolean]
12204
+ attr_accessor :negative
12205
+ alias_method :negative?, :negative
12206
+
12207
+ # YouTube video id as it appears on the YouTube watch page.
12208
+ # Corresponds to the JSON property `videoId`
12209
+ # @return [String]
12210
+ attr_accessor :video_id
12211
+
12212
+ def initialize(**args)
12213
+ update!(**args)
12214
+ end
12215
+
12216
+ # Update properties of this object
12217
+ def update!(**args)
12218
+ @negative = args[:negative] if args.key?(:negative)
12219
+ @video_id = args[:video_id] if args.key?(:video_id)
12220
+ end
12221
+ end
12222
+
12223
+ # Details of the YouTube video.
12224
+ class YoutubeVideoDetails
12225
+ include Google::Apis::Core::Hashable
12226
+
12227
+ # The ID which can be searched on YouTube webpage.
12228
+ # Corresponds to the JSON property `id`
12229
+ # @return [String]
12230
+ attr_accessor :id
12231
+
12232
+ # The reason why the video data is not available.
12233
+ # Corresponds to the JSON property `unavailableReason`
12234
+ # @return [String]
12235
+ attr_accessor :unavailable_reason
12236
+
12237
+ def initialize(**args)
12238
+ update!(**args)
12239
+ end
12240
+
12241
+ # Update properties of this object
12242
+ def update!(**args)
12243
+ @id = args[:id] if args.key?(:id)
12244
+ @unavailable_reason = args[:unavailable_reason] if args.key?(:unavailable_reason)
12245
+ end
12246
+ end
11119
12247
  end
11120
12248
  end
11121
12249
  end