targeting_setting.proto 3.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. // Copyright 2021 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.v8.common;
  16. import "google/ads/googleads/v8/enums/targeting_dimension.proto";
  17. import "google/api/annotations.proto";
  18. option csharp_namespace = "Google.Ads.GoogleAds.V8.Common";
  19. option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/common;common";
  20. option java_multiple_files = true;
  21. option java_outer_classname = "TargetingSettingProto";
  22. option java_package = "com.google.ads.googleads.v8.common";
  23. option objc_class_prefix = "GAA";
  24. option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Common";
  25. option ruby_package = "Google::Ads::GoogleAds::V8::Common";
  26. // Proto file describing TargetingSetting
  27. // Settings for the targeting-related features, at the campaign and ad group
  28. // levels. For more details about the targeting setting, visit
  29. // https://support.google.com/google-ads/answer/7365594
  30. message TargetingSetting {
  31. // The per-targeting-dimension setting to restrict the reach of your campaign
  32. // or ad group.
  33. repeated TargetRestriction target_restrictions = 1;
  34. // The list of operations changing the target restrictions.
  35. //
  36. // Adding a target restriction with a targeting dimension that already exists
  37. // causes the existing target restriction to be replaced with the new value.
  38. repeated TargetRestrictionOperation target_restriction_operations = 2;
  39. }
  40. // The list of per-targeting-dimension targeting settings.
  41. message TargetRestriction {
  42. // The targeting dimension that these settings apply to.
  43. google.ads.googleads.v8.enums.TargetingDimensionEnum.TargetingDimension targeting_dimension = 1;
  44. // Indicates whether to restrict your ads to show only for the criteria you
  45. // have selected for this targeting_dimension, or to target all values for
  46. // this targeting_dimension and show ads based on your targeting in other
  47. // TargetingDimensions. A value of `true` means that these criteria will only
  48. // apply bid modifiers, and not affect targeting. A value of `false` means
  49. // that these criteria will restrict targeting as well as applying bid
  50. // modifiers.
  51. optional bool bid_only = 3;
  52. }
  53. // Operation to be performed on a target restriction list in a mutate.
  54. message TargetRestrictionOperation {
  55. // The operator.
  56. enum Operator {
  57. // Unspecified.
  58. UNSPECIFIED = 0;
  59. // Used for return value only. Represents value unknown in this version.
  60. UNKNOWN = 1;
  61. // Add the restriction to the existing restrictions.
  62. ADD = 2;
  63. // Remove the restriction from the existing restrictions.
  64. REMOVE = 3;
  65. }
  66. // Type of list operation to perform.
  67. Operator operator = 1;
  68. // The target restriction being added to or removed from the list.
  69. TargetRestriction value = 2;
  70. }