/resources/campaign.proto

--- v16/resources/campaign.proto    2024-05-29 16:00:43.000000000 +0000
+++ v17/resources/campaign.proto    2024-05-29 16:00:49.000000000 +0000
@@ -295,8 +296,8 @@
         [(google.api.field_behavior) = IMMUTABLE];
   }

-  // Settings for Discovery campaign.
-  message DiscoveryCampaignSettings {
+  // Settings for Demand Gen campaign.
+  message DemandGenCampaignSettings {
     // Immutable. Specifies whether this campaign uses upgraded targeting
     // options. When this field is set to `true`, you can use location and
     // language targeting at the ad group level as opposed to the standard
@@ -411,8 +412,8 @@
   // Settings for Travel campaign.
   TravelCampaignSettings travel_campaign_settings = 85;

-  // Settings for Discovery campaign.
-  DiscoveryCampaignSettings discovery_campaign_settings = 87;
+  // Settings for Demand Gen campaign.
+  DemandGenCampaignSettings demand_gen_campaign_settings = 91;

   // Settings for Real-Time Bidding, a feature only available for campaigns
   // targeting the Ad Exchange network.
@@ -521,16 +522,14 @@
   optional string final_url_suffix = 65;

   // A list that limits how often each user will see this campaign's ads.
-  repeated google.ads.googleads.v16.common.FrequencyCapEntry frequency_caps =
+  repeated google.ads.googleads.v17.common.FrequencyCapEntry frequency_caps =
       40;

-  // Output only. Brand Safety setting at the individual campaign level. Allows
-  // for selecting an inventory type to show your ads on content that is the
-  // right fit for your brand. See
-  // https://support.google.com/google-ads/answer/7515513.
-  google.ads.googleads.v16.enums.BrandSafetySuitabilityEnum
-      .BrandSafetySuitability video_brand_safety_suitability = 42
-      [(google.api.field_behavior) = OUTPUT_ONLY];
+  // Brand Safety setting at the individual campaign level. Allows for selecting
+  // an inventory type to show your ads on content that is the right fit for
+  // your brand. See https://support.google.com/google-ads/answer/7515513.
+  google.ads.googleads.v17.enums.BrandSafetySuitabilityEnum
+      .BrandSafetySuitability video_brand_safety_suitability = 42;

   // Describes how unbranded pharma ads will be displayed.
   VanityPharma vanity_pharma = 44;
@@ -617,6 +616,11 @@
   // opt in/out behavior.
   repeated AssetAutomationSetting asset_automation_settings = 88;

+  // Keyword match type of Campaign. Set to BROAD to set broad matching for all
+  // keywords in a campaign.
+  google.ads.googleads.v17.enums.CampaignKeywordMatchTypeEnum
+      .CampaignKeywordMatchType keyword_match_type = 90;
+
   // The bidding strategy for the campaign.
   //
   // Must be either portfolio (created through BiddingStrategy service) or