criteria.proto 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696
  1. // Copyright 2022 Google LLC
  2. //
  3. // Licensed under the Apache License, Version 2.0 (the "License");
  4. // you may not use this file except in compliance with the License.
  5. // You may obtain a copy of the License at
  6. //
  7. // http://www.apache.org/licenses/LICENSE-2.0
  8. //
  9. // Unless required by applicable law or agreed to in writing, software
  10. // distributed under the License is distributed on an "AS IS" BASIS,
  11. // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  12. // See the License for the specific language governing permissions and
  13. // limitations under the License.
  14. syntax = "proto3";
  15. package google.ads.googleads.v10.common;
  16. import "google/ads/googleads/v10/enums/age_range_type.proto";
  17. import "google/ads/googleads/v10/enums/app_payment_model_type.proto";
  18. import "google/ads/googleads/v10/enums/content_label_type.proto";
  19. import "google/ads/googleads/v10/enums/day_of_week.proto";
  20. import "google/ads/googleads/v10/enums/device.proto";
  21. import "google/ads/googleads/v10/enums/gender_type.proto";
  22. import "google/ads/googleads/v10/enums/hotel_date_selection_type.proto";
  23. import "google/ads/googleads/v10/enums/income_range_type.proto";
  24. import "google/ads/googleads/v10/enums/interaction_type.proto";
  25. import "google/ads/googleads/v10/enums/keyword_match_type.proto";
  26. import "google/ads/googleads/v10/enums/listing_group_type.proto";
  27. import "google/ads/googleads/v10/enums/location_group_radius_units.proto";
  28. import "google/ads/googleads/v10/enums/minute_of_hour.proto";
  29. import "google/ads/googleads/v10/enums/parental_status_type.proto";
  30. import "google/ads/googleads/v10/enums/preferred_content_type.proto";
  31. import "google/ads/googleads/v10/enums/product_bidding_category_level.proto";
  32. import "google/ads/googleads/v10/enums/product_channel.proto";
  33. import "google/ads/googleads/v10/enums/product_channel_exclusivity.proto";
  34. import "google/ads/googleads/v10/enums/product_condition.proto";
  35. import "google/ads/googleads/v10/enums/product_custom_attribute_index.proto";
  36. import "google/ads/googleads/v10/enums/product_type_level.proto";
  37. import "google/ads/googleads/v10/enums/proximity_radius_units.proto";
  38. import "google/ads/googleads/v10/enums/webpage_condition_operand.proto";
  39. import "google/ads/googleads/v10/enums/webpage_condition_operator.proto";
  40. option csharp_namespace = "Google.Ads.GoogleAds.V10.Common";
  41. option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v10/common;common";
  42. option java_multiple_files = true;
  43. option java_outer_classname = "CriteriaProto";
  44. option java_package = "com.google.ads.googleads.v10.common";
  45. option objc_class_prefix = "GAA";
  46. option php_namespace = "Google\\Ads\\GoogleAds\\V10\\Common";
  47. option ruby_package = "Google::Ads::GoogleAds::V10::Common";
  48. // Proto file describing criteria types.
  49. // A keyword criterion.
  50. message KeywordInfo {
  51. // The text of the keyword (at most 80 characters and 10 words).
  52. optional string text = 3;
  53. // The match type of the keyword.
  54. google.ads.googleads.v10.enums.KeywordMatchTypeEnum.KeywordMatchType match_type = 2;
  55. }
  56. // A placement criterion. This can be used to modify bids for sites when
  57. // targeting the content network.
  58. message PlacementInfo {
  59. // URL of the placement.
  60. //
  61. // For example, "http://www.domain.com".
  62. optional string url = 2;
  63. }
  64. // A mobile app category criterion.
  65. message MobileAppCategoryInfo {
  66. // The mobile app category constant resource name.
  67. optional string mobile_app_category_constant = 2;
  68. }
  69. // A mobile application criterion.
  70. message MobileApplicationInfo {
  71. // A string that uniquely identifies a mobile application to Google Ads API.
  72. // The format of this string is "{platform}-{platform_native_id}", where
  73. // platform is "1" for iOS apps and "2" for Android apps, and where
  74. // platform_native_id is the mobile application identifier native to the
  75. // corresponding platform.
  76. // For iOS, this native identifier is the 9 digit string that appears at the
  77. // end of an App Store URL (e.g., "476943146" for "Flood-It! 2" whose App
  78. // Store link is "http://itunes.apple.com/us/app/flood-it!-2/id476943146").
  79. // For Android, this native identifier is the application's package name
  80. // (e.g., "com.labpixies.colordrips" for "Color Drips" given Google Play link
  81. // "https://play.google.com/store/apps/details?id=com.labpixies.colordrips").
  82. // A well formed app id for Google Ads API would thus be "1-476943146" for iOS
  83. // and "2-com.labpixies.colordrips" for Android.
  84. // This field is required and must be set in CREATE operations.
  85. optional string app_id = 4;
  86. // Name of this mobile application.
  87. optional string name = 5;
  88. }
  89. // A location criterion.
  90. message LocationInfo {
  91. // The geo target constant resource name.
  92. optional string geo_target_constant = 2;
  93. }
  94. // A device criterion.
  95. message DeviceInfo {
  96. // Type of the device.
  97. google.ads.googleads.v10.enums.DeviceEnum.Device type = 1;
  98. }
  99. // A preferred content criterion.
  100. message PreferredContentInfo {
  101. // Type of the preferred content.
  102. google.ads.googleads.v10.enums.PreferredContentTypeEnum.PreferredContentType type = 2;
  103. }
  104. // A listing group criterion.
  105. message ListingGroupInfo {
  106. // Type of the listing group.
  107. google.ads.googleads.v10.enums.ListingGroupTypeEnum.ListingGroupType type = 1;
  108. // Dimension value with which this listing group is refining its parent.
  109. // Undefined for the root group.
  110. ListingDimensionInfo case_value = 2;
  111. // Resource name of ad group criterion which is the parent listing group
  112. // subdivision. Null for the root group.
  113. optional string parent_ad_group_criterion = 4;
  114. }
  115. // A listing scope criterion.
  116. message ListingScopeInfo {
  117. // Scope of the campaign criterion.
  118. repeated ListingDimensionInfo dimensions = 2;
  119. }
  120. // Listing dimensions for listing group criterion.
  121. message ListingDimensionInfo {
  122. // Dimension of one of the types below is always present.
  123. oneof dimension {
  124. // Advertiser-specific hotel ID.
  125. HotelIdInfo hotel_id = 2;
  126. // Class of the hotel as a number of stars 1 to 5.
  127. HotelClassInfo hotel_class = 3;
  128. // Country or Region the hotel is located in.
  129. HotelCountryRegionInfo hotel_country_region = 4;
  130. // State the hotel is located in.
  131. HotelStateInfo hotel_state = 5;
  132. // City the hotel is located in.
  133. HotelCityInfo hotel_city = 6;
  134. // Bidding category of a product offer.
  135. ProductBiddingCategoryInfo product_bidding_category = 13;
  136. // Brand of a product offer.
  137. ProductBrandInfo product_brand = 15;
  138. // Locality of a product offer.
  139. ProductChannelInfo product_channel = 8;
  140. // Availability of a product offer.
  141. ProductChannelExclusivityInfo product_channel_exclusivity = 9;
  142. // Condition of a product offer.
  143. ProductConditionInfo product_condition = 10;
  144. // Custom attribute of a product offer.
  145. ProductCustomAttributeInfo product_custom_attribute = 16;
  146. // Item id of a product offer.
  147. ProductItemIdInfo product_item_id = 11;
  148. // Type of a product offer.
  149. ProductTypeInfo product_type = 12;
  150. // Grouping of a product offer.
  151. ProductGroupingInfo product_grouping = 17;
  152. // Labels of a product offer.
  153. ProductLabelsInfo product_labels = 18;
  154. // Legacy condition of a product offer.
  155. ProductLegacyConditionInfo product_legacy_condition = 19;
  156. // Full type of a product offer.
  157. ProductTypeFullInfo product_type_full = 20;
  158. // Unknown dimension. Set when no other listing dimension is set.
  159. UnknownListingDimensionInfo unknown_listing_dimension = 14;
  160. }
  161. }
  162. // Advertiser-specific hotel ID.
  163. message HotelIdInfo {
  164. // String value of the hotel ID.
  165. optional string value = 2;
  166. }
  167. // Class of the hotel as a number of stars 1 to 5.
  168. message HotelClassInfo {
  169. // Long value of the hotel class.
  170. optional int64 value = 2;
  171. }
  172. // Country or Region the hotel is located in.
  173. message HotelCountryRegionInfo {
  174. // The Geo Target Constant resource name.
  175. optional string country_region_criterion = 2;
  176. }
  177. // State the hotel is located in.
  178. message HotelStateInfo {
  179. // The Geo Target Constant resource name.
  180. optional string state_criterion = 2;
  181. }
  182. // City the hotel is located in.
  183. message HotelCityInfo {
  184. // The Geo Target Constant resource name.
  185. optional string city_criterion = 2;
  186. }
  187. // Bidding category of a product offer.
  188. message ProductBiddingCategoryInfo {
  189. // ID of the product bidding category.
  190. //
  191. // This ID is equivalent to the google_product_category ID as described in
  192. // this article: https://support.google.com/merchants/answer/6324436
  193. optional int64 id = 4;
  194. // Two-letter upper-case country code of the product bidding category. It must
  195. // match the campaign.shopping_setting.sales_country field.
  196. optional string country_code = 5;
  197. // Level of the product bidding category.
  198. google.ads.googleads.v10.enums.ProductBiddingCategoryLevelEnum.ProductBiddingCategoryLevel level = 3;
  199. }
  200. // Brand of the product.
  201. message ProductBrandInfo {
  202. // String value of the product brand.
  203. optional string value = 2;
  204. }
  205. // Locality of a product offer.
  206. message ProductChannelInfo {
  207. // Value of the locality.
  208. google.ads.googleads.v10.enums.ProductChannelEnum.ProductChannel channel = 1;
  209. }
  210. // Availability of a product offer.
  211. message ProductChannelExclusivityInfo {
  212. // Value of the availability.
  213. google.ads.googleads.v10.enums.ProductChannelExclusivityEnum.ProductChannelExclusivity channel_exclusivity = 1;
  214. }
  215. // Condition of a product offer.
  216. message ProductConditionInfo {
  217. // Value of the condition.
  218. google.ads.googleads.v10.enums.ProductConditionEnum.ProductCondition condition = 1;
  219. }
  220. // Custom attribute of a product offer.
  221. message ProductCustomAttributeInfo {
  222. // String value of the product custom attribute.
  223. optional string value = 3;
  224. // Indicates the index of the custom attribute.
  225. google.ads.googleads.v10.enums.ProductCustomAttributeIndexEnum.ProductCustomAttributeIndex index = 2;
  226. }
  227. // Item id of a product offer.
  228. message ProductItemIdInfo {
  229. // Value of the id.
  230. optional string value = 2;
  231. }
  232. // Type of a product offer.
  233. message ProductTypeInfo {
  234. // Value of the type.
  235. optional string value = 3;
  236. // Level of the type.
  237. google.ads.googleads.v10.enums.ProductTypeLevelEnum.ProductTypeLevel level = 2;
  238. }
  239. // Grouping of a product offer. This listing dimension is deprecated and it is
  240. // supported only in Display campaigns.
  241. message ProductGroupingInfo {
  242. // String value of the product grouping.
  243. optional string value = 1;
  244. }
  245. // Labels of a product offer. This listing dimension is deprecated and it is
  246. // supported only in Display campaigns.
  247. message ProductLabelsInfo {
  248. // String value of the product labels.
  249. optional string value = 1;
  250. }
  251. // Legacy condition of a product offer. This listing dimension is deprecated and
  252. // it is supported only in Display campaigns.
  253. message ProductLegacyConditionInfo {
  254. // String value of the product legacy condition.
  255. optional string value = 1;
  256. }
  257. // Full type of a product offer. This listing dimension is deprecated and it is
  258. // supported only in Display campaigns.
  259. message ProductTypeFullInfo {
  260. // String value of the product full type.
  261. optional string value = 1;
  262. }
  263. // Unknown listing dimension.
  264. message UnknownListingDimensionInfo {
  265. }
  266. // Criterion for hotel date selection (default dates vs. user selected).
  267. message HotelDateSelectionTypeInfo {
  268. // Type of the hotel date selection
  269. google.ads.googleads.v10.enums.HotelDateSelectionTypeEnum.HotelDateSelectionType type = 1;
  270. }
  271. // Criterion for number of days prior to the stay the booking is being made.
  272. message HotelAdvanceBookingWindowInfo {
  273. // Low end of the number of days prior to the stay.
  274. optional int64 min_days = 3;
  275. // High end of the number of days prior to the stay.
  276. optional int64 max_days = 4;
  277. }
  278. // Criterion for length of hotel stay in nights.
  279. message HotelLengthOfStayInfo {
  280. // Low end of the number of nights in the stay.
  281. optional int64 min_nights = 3;
  282. // High end of the number of nights in the stay.
  283. optional int64 max_nights = 4;
  284. }
  285. // Criterion for a check-in date range.
  286. message HotelCheckInDateRangeInfo {
  287. // Start date in the YYYY-MM-DD format.
  288. string start_date = 1;
  289. // End date in the YYYY-MM-DD format.
  290. string end_date = 2;
  291. }
  292. // Criterion for day of the week the booking is for.
  293. message HotelCheckInDayInfo {
  294. // The day of the week.
  295. google.ads.googleads.v10.enums.DayOfWeekEnum.DayOfWeek day_of_week = 1;
  296. }
  297. // Criterion for Interaction Type.
  298. message InteractionTypeInfo {
  299. // The interaction type.
  300. google.ads.googleads.v10.enums.InteractionTypeEnum.InteractionType type = 1;
  301. }
  302. // Represents an AdSchedule criterion.
  303. //
  304. // AdSchedule is specified as the day of the week and a time interval
  305. // within which ads will be shown.
  306. //
  307. // No more than six AdSchedules can be added for the same day.
  308. message AdScheduleInfo {
  309. // Minutes after the start hour at which this schedule starts.
  310. //
  311. // This field is required for CREATE operations and is prohibited on UPDATE
  312. // operations.
  313. google.ads.googleads.v10.enums.MinuteOfHourEnum.MinuteOfHour start_minute = 1;
  314. // Minutes after the end hour at which this schedule ends. The schedule is
  315. // exclusive of the end minute.
  316. //
  317. // This field is required for CREATE operations and is prohibited on UPDATE
  318. // operations.
  319. google.ads.googleads.v10.enums.MinuteOfHourEnum.MinuteOfHour end_minute = 2;
  320. // Starting hour in 24 hour time.
  321. // This field must be between 0 and 23, inclusive.
  322. //
  323. // This field is required for CREATE operations and is prohibited on UPDATE
  324. // operations.
  325. optional int32 start_hour = 6;
  326. // Ending hour in 24 hour time; 24 signifies end of the day.
  327. // This field must be between 0 and 24, inclusive.
  328. //
  329. // This field is required for CREATE operations and is prohibited on UPDATE
  330. // operations.
  331. optional int32 end_hour = 7;
  332. // Day of the week the schedule applies to.
  333. //
  334. // This field is required for CREATE operations and is prohibited on UPDATE
  335. // operations.
  336. google.ads.googleads.v10.enums.DayOfWeekEnum.DayOfWeek day_of_week = 5;
  337. }
  338. // An age range criterion.
  339. message AgeRangeInfo {
  340. // Type of the age range.
  341. google.ads.googleads.v10.enums.AgeRangeTypeEnum.AgeRangeType type = 1;
  342. }
  343. // A gender criterion.
  344. message GenderInfo {
  345. // Type of the gender.
  346. google.ads.googleads.v10.enums.GenderTypeEnum.GenderType type = 1;
  347. }
  348. // An income range criterion.
  349. message IncomeRangeInfo {
  350. // Type of the income range.
  351. google.ads.googleads.v10.enums.IncomeRangeTypeEnum.IncomeRangeType type = 1;
  352. }
  353. // A parental status criterion.
  354. message ParentalStatusInfo {
  355. // Type of the parental status.
  356. google.ads.googleads.v10.enums.ParentalStatusTypeEnum.ParentalStatusType type = 1;
  357. }
  358. // A YouTube Video criterion.
  359. message YouTubeVideoInfo {
  360. // YouTube video id as it appears on the YouTube watch page.
  361. optional string video_id = 2;
  362. }
  363. // A YouTube Channel criterion.
  364. message YouTubeChannelInfo {
  365. // The YouTube uploader channel id or the channel code of a YouTube channel.
  366. optional string channel_id = 2;
  367. }
  368. // A User List criterion. Represents a user list that is defined by the
  369. // advertiser to be targeted.
  370. message UserListInfo {
  371. // The User List resource name.
  372. optional string user_list = 2;
  373. }
  374. // A Proximity criterion. The geo point and radius determine what geographical
  375. // area is included. The address is a description of the geo point that does
  376. // not affect ad serving.
  377. //
  378. // There are two ways to create a proximity. First, by setting an address
  379. // and radius. The geo point will be automatically computed. Second, by
  380. // setting a geo point and radius. The address is an optional label that won't
  381. // be validated.
  382. message ProximityInfo {
  383. // Latitude and longitude.
  384. GeoPointInfo geo_point = 1;
  385. // The radius of the proximity.
  386. optional double radius = 5;
  387. // The unit of measurement of the radius. Default is KILOMETERS.
  388. google.ads.googleads.v10.enums.ProximityRadiusUnitsEnum.ProximityRadiusUnits radius_units = 3;
  389. // Full address.
  390. AddressInfo address = 4;
  391. }
  392. // Geo point for proximity criterion.
  393. message GeoPointInfo {
  394. // Micro degrees for the longitude.
  395. optional int32 longitude_in_micro_degrees = 3;
  396. // Micro degrees for the latitude.
  397. optional int32 latitude_in_micro_degrees = 4;
  398. }
  399. // Address for proximity criterion.
  400. message AddressInfo {
  401. // Postal code.
  402. optional string postal_code = 8;
  403. // Province or state code.
  404. optional string province_code = 9;
  405. // Country code.
  406. optional string country_code = 10;
  407. // Province or state name.
  408. optional string province_name = 11;
  409. // Street address line 1.
  410. optional string street_address = 12;
  411. // Street address line 2. This field is write-only. It is only used for
  412. // calculating the longitude and latitude of an address when geo_point is
  413. // empty.
  414. optional string street_address2 = 13;
  415. // Name of the city.
  416. optional string city_name = 14;
  417. }
  418. // A topic criterion. Use topics to target or exclude placements in the
  419. // Google Display Network based on the category into which the placement falls
  420. // (for example, "Pets & Animals/Pets/Dogs").
  421. message TopicInfo {
  422. // The Topic Constant resource name.
  423. optional string topic_constant = 3;
  424. // The category to target or exclude. Each subsequent element in the array
  425. // describes a more specific sub-category. For example,
  426. // "Pets & Animals", "Pets", "Dogs" represents the "Pets & Animals/Pets/Dogs"
  427. // category.
  428. repeated string path = 4;
  429. }
  430. // A language criterion.
  431. message LanguageInfo {
  432. // The language constant resource name.
  433. optional string language_constant = 2;
  434. }
  435. // An IpBlock criterion used for IP exclusions. We allow:
  436. // - IPv4 and IPv6 addresses
  437. // - individual addresses (192.168.0.1)
  438. // - masks for individual addresses (192.168.0.1/32)
  439. // - masks for Class C networks (192.168.0.1/24)
  440. message IpBlockInfo {
  441. // The IP address of this IP block.
  442. optional string ip_address = 2;
  443. }
  444. // Content Label for category exclusion.
  445. message ContentLabelInfo {
  446. // Content label type, required for CREATE operations.
  447. google.ads.googleads.v10.enums.ContentLabelTypeEnum.ContentLabelType type = 1;
  448. }
  449. // Represents a Carrier Criterion.
  450. message CarrierInfo {
  451. // The Carrier constant resource name.
  452. optional string carrier_constant = 2;
  453. }
  454. // Represents a particular interest-based topic to be targeted.
  455. message UserInterestInfo {
  456. // The UserInterest resource name.
  457. optional string user_interest_category = 2;
  458. }
  459. // Represents a criterion for targeting webpages of an advertiser's website.
  460. message WebpageInfo {
  461. // The name of the criterion that is defined by this parameter. The name value
  462. // will be used for identifying, sorting and filtering criteria with this type
  463. // of parameters.
  464. //
  465. // This field is required for CREATE operations and is prohibited on UPDATE
  466. // operations.
  467. optional string criterion_name = 3;
  468. // Conditions, or logical expressions, for webpage targeting. The list of
  469. // webpage targeting conditions are and-ed together when evaluated
  470. // for targeting.
  471. //
  472. // This field is required for CREATE operations and is prohibited on UPDATE
  473. // operations.
  474. repeated WebpageConditionInfo conditions = 2;
  475. // Website criteria coverage percentage. This is the computed percentage
  476. // of website coverage based on the website target, negative website target
  477. // and negative keywords in the ad group and campaign. For instance, when
  478. // coverage returns as 1, it indicates it has 100% coverage. This field is
  479. // read-only.
  480. double coverage_percentage = 4;
  481. // List of sample urls that match the website target. This field is read-only.
  482. WebpageSampleInfo sample = 5;
  483. }
  484. // Logical expression for targeting webpages of an advertiser's website.
  485. message WebpageConditionInfo {
  486. // Operand of webpage targeting condition.
  487. google.ads.googleads.v10.enums.WebpageConditionOperandEnum.WebpageConditionOperand operand = 1;
  488. // Operator of webpage targeting condition.
  489. google.ads.googleads.v10.enums.WebpageConditionOperatorEnum.WebpageConditionOperator operator = 2;
  490. // Argument of webpage targeting condition.
  491. optional string argument = 4;
  492. }
  493. // List of sample urls that match the website target
  494. message WebpageSampleInfo {
  495. // Webpage sample urls
  496. repeated string sample_urls = 1;
  497. }
  498. // Represents an operating system version to be targeted.
  499. message OperatingSystemVersionInfo {
  500. // The operating system version constant resource name.
  501. optional string operating_system_version_constant = 2;
  502. }
  503. // An app payment model criterion.
  504. message AppPaymentModelInfo {
  505. // Type of the app payment model.
  506. google.ads.googleads.v10.enums.AppPaymentModelTypeEnum.AppPaymentModelType type = 1;
  507. }
  508. // A mobile device criterion.
  509. message MobileDeviceInfo {
  510. // The mobile device constant resource name.
  511. optional string mobile_device_constant = 2;
  512. }
  513. // A custom affinity criterion.
  514. // A criterion of this type is only targetable.
  515. message CustomAffinityInfo {
  516. // The CustomInterest resource name.
  517. optional string custom_affinity = 2;
  518. }
  519. // A custom intent criterion.
  520. // A criterion of this type is only targetable.
  521. message CustomIntentInfo {
  522. // The CustomInterest resource name.
  523. optional string custom_intent = 2;
  524. }
  525. // A radius around a list of locations specified via a feed.
  526. message LocationGroupInfo {
  527. // Feed specifying locations for targeting.
  528. // This is required and must be set in CREATE operations.
  529. optional string feed = 5;
  530. // Geo target constant(s) restricting the scope of the geographic area within
  531. // the feed. Currently only one geo target constant is allowed.
  532. repeated string geo_target_constants = 6;
  533. // Distance in units specifying the radius around targeted locations.
  534. // This is required and must be set in CREATE operations.
  535. optional int64 radius = 7;
  536. // Unit of the radius. Miles and meters are supported for geo target
  537. // constants. Milli miles and meters are supported for feed item sets.
  538. // This is required and must be set in CREATE operations.
  539. google.ads.googleads.v10.enums.LocationGroupRadiusUnitsEnum.LocationGroupRadiusUnits radius_units = 4;
  540. // FeedItemSets whose FeedItems are targeted. If multiple IDs are specified,
  541. // then all items that appear in at least one set are targeted. This field
  542. // cannot be used with geo_target_constants. This is optional and can only be
  543. // set in CREATE operations.
  544. repeated string feed_item_sets = 8;
  545. }
  546. // A custom audience criterion.
  547. message CustomAudienceInfo {
  548. // The CustomAudience resource name.
  549. string custom_audience = 1;
  550. }
  551. // A combined audience criterion.
  552. message CombinedAudienceInfo {
  553. // The CombinedAudience resource name.
  554. string combined_audience = 1;
  555. }
  556. // An audience criterion.
  557. message AudienceInfo {
  558. // The Audience resource name.
  559. string audience = 1;
  560. }
  561. // A Smart Campaign keyword theme.
  562. message KeywordThemeInfo {
  563. // Either a predefined keyword theme constant or free-form text may be
  564. // specified.
  565. oneof keyword_theme {
  566. // The resource name of a Smart Campaign keyword theme constant.
  567. // `keywordThemeConstants/{keyword_theme_id}~{sub_keyword_theme_id}`
  568. string keyword_theme_constant = 1;
  569. // Free-form text to be matched to a Smart Campaign keyword theme constant
  570. // on a best-effort basis.
  571. string free_form_keyword_theme = 2;
  572. }
  573. }