/common/ad_asset.proto

--- v18/common/ad_asset.proto   2024-10-16 17:56:30.000000000 +0000
+++ v19/common/ad_asset.proto   2025-02-24 15:30:12.000000000 +0000
@@ -1,114 +1,120 @@
 // Copyright 2024 Google LLC
 //
 // Licensed under the Apache License, Version 2.0 (the "License");
 // you may not use this file except in compliance with the License.
 // You may obtain a copy of the License at
 //
 //     http://www.apache.org/licenses/LICENSE-2.0
 //
 // Unless required by applicable law or agreed to in writing, software
 // distributed under the License is distributed on an "AS IS" BASIS,
 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 // See the License for the specific language governing permissions and
 // limitations under the License.

 syntax = "proto3";

-package google.ads.googleads.v18.common;
+package google.ads.googleads.v19.common;

-import "google/ads/googleads/v18/common/asset_policy.proto";
-import "google/ads/googleads/v18/enums/asset_performance_label.proto";
-import "google/ads/googleads/v18/enums/served_asset_field_type.proto";
+import "google/ads/googleads/v19/common/asset_policy.proto";
+import "google/ads/googleads/v19/enums/asset_performance_label.proto";
+import "google/ads/googleads/v19/enums/served_asset_field_type.proto";

-option csharp_namespace = "Google.Ads.GoogleAds.V18.Common";
-option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v18/common;common";
+option csharp_namespace = "Google.Ads.GoogleAds.V19.Common";
+option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v19/common;common";
 option java_multiple_files = true;
 option java_outer_classname = "AdAssetProto";
-option java_package = "com.google.ads.googleads.v18.common";
+option java_package = "com.google.ads.googleads.v19.common";
 option objc_class_prefix = "GAA";
-option php_namespace = "Google\\Ads\\GoogleAds\\V18\\Common";
-option ruby_package = "Google::Ads::GoogleAds::V18::Common";
+option php_namespace = "Google\\Ads\\GoogleAds\\V19\\Common";
+option ruby_package = "Google::Ads::GoogleAds::V19::Common";

 // Proto file describing assets used inside an ad.

 // A text asset used inside an ad.
 message AdTextAsset {
   // Asset text.
   optional string text = 4;

   // The pinned field of the asset. This restricts the asset to only serve
   // within this field. Multiple assets can be pinned to the same field. An
   // asset that is unpinned or pinned to a different field will not serve in a
   // field where some other asset has been pinned.
-  google.ads.googleads.v18.enums.ServedAssetFieldTypeEnum.ServedAssetFieldType
+  google.ads.googleads.v19.enums.ServedAssetFieldTypeEnum.ServedAssetFieldType
       pinned_field = 2;

   // The performance label of this text asset.
-  google.ads.googleads.v18.enums.AssetPerformanceLabelEnum.AssetPerformanceLabel
+  google.ads.googleads.v19.enums.AssetPerformanceLabelEnum.AssetPerformanceLabel
       asset_performance_label = 5;

   // The policy summary of this text asset.
   AdAssetPolicySummary policy_summary_info = 6;
 }

 // An image asset used inside an ad.
 message AdImageAsset {
   // The Asset resource name of this image.
   optional string asset = 2;
 }

 // A video asset used inside an ad.
 message AdVideoAsset {
   // The Asset resource name of this video.
   optional string asset = 2;

   // Contains info fields for this AdVideoAsset.
   optional AdVideoAssetInfo ad_video_asset_info = 4;
 }

 // Contains info fields for AdVideoAssets.
 message AdVideoAssetInfo {
   // List of inventory preferences for this AdVideoAsset. This field can only be
   // set for DiscoveryVideoResponsiveAd. The video assets with an inventory
   // asset preference set will be preferred over other videos from the same ad
   // during serving time. For example, consider this ad being served for a
   // specific inventory. The server will first try to match an eligible video
   // with a matching preference for that inventory. Videos with no preferences
   // are chosen only when a video with matching preference and eligible for a
   // given ad slot can be found.
   optional AdVideoAssetInventoryPreferences
       ad_video_asset_inventory_preferences = 1;
 }

 // YouTube Video Asset inventory preferences.
 message AdVideoAssetInventoryPreferences {
   // When true, YouTube Video Asset with this inventory preference will be
   // preferred when choosing a video to serve In Feed.
   optional bool in_feed_preference = 1;

   // When true, YouTube Video Asset with this inventory preference will be
   // preferred when choosing a video to serve In Stream.
   optional bool in_stream_preference = 2;

   // When true, YouTube Video Asset with this inventory preference will be
   // preferred when choosing a video to serve on YouTube Shorts.
   optional bool shorts_preference = 3;
 }

 // A media bundle asset used inside an ad.
 message AdMediaBundleAsset {
   // The Asset resource name of this media bundle.
   optional string asset = 2;
 }

 // A Demand Gen carousel card asset used inside an ad.
 message AdDemandGenCarouselCardAsset {
   // The Asset resource name of this discovery carousel card.
   optional string asset = 1;
 }

 // A call to action asset used inside an ad.
 message AdCallToActionAsset {
   // The Asset resource name of this call to action asset.
   optional string asset = 1;
 }
+
+// An app deep link used inside an ad.
+message AdAppDeepLinkAsset {
+  // The Asset resource name of this app deep link asset.
+  optional string asset = 1;
+}