1// Copyright 2023 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 15syntax = "proto3"; 16 17package google.ads.googleads.v14.resources; 18 19import "google/ads/googleads/v14/common/custom_parameter.proto"; 20import "google/ads/googleads/v14/common/targeting_setting.proto"; 21import "google/ads/googleads/v14/enums/ad_group_ad_rotation_mode.proto"; 22import "google/ads/googleads/v14/enums/ad_group_status.proto"; 23import "google/ads/googleads/v14/enums/ad_group_type.proto"; 24import "google/ads/googleads/v14/enums/asset_field_type.proto"; 25import "google/ads/googleads/v14/enums/asset_set_type.proto"; 26import "google/ads/googleads/v14/enums/bidding_source.proto"; 27import "google/ads/googleads/v14/enums/targeting_dimension.proto"; 28import "google/api/field_behavior.proto"; 29import "google/api/resource.proto"; 30 31option csharp_namespace = "Google.Ads.GoogleAds.V14.Resources"; 32option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v14/resources;resources"; 33option java_multiple_files = true; 34option java_outer_classname = "AdGroupProto"; 35option java_package = "com.google.ads.googleads.v14.resources"; 36option objc_class_prefix = "GAA"; 37option php_namespace = "Google\\Ads\\GoogleAds\\V14\\Resources"; 38option ruby_package = "Google::Ads::GoogleAds::V14::Resources"; 39 40// Proto file describing the ad group resource. 41 42// An ad group. 43message AdGroup { 44 option (google.api.resource) = { 45 type: "googleads.googleapis.com/AdGroup" 46 pattern: "customers/{customer_id}/adGroups/{ad_group_id}" 47 }; 48 49 // Settings for the audience targeting. 50 message AudienceSetting { 51 // Immutable. If true, this ad group uses an Audience resource for audience 52 // targeting. If false, this ad group may use audience segment criteria 53 // instead. 54 bool use_audience_grouped = 1 [(google.api.field_behavior) = IMMUTABLE]; 55 } 56 57 // Immutable. The resource name of the ad group. 58 // Ad group resource names have the form: 59 // 60 // `customers/{customer_id}/adGroups/{ad_group_id}` 61 string resource_name = 1 [ 62 (google.api.field_behavior) = IMMUTABLE, 63 (google.api.resource_reference) = { 64 type: "googleads.googleapis.com/AdGroup" 65 } 66 ]; 67 68 // Output only. The ID of the ad group. 69 optional int64 id = 34 [(google.api.field_behavior) = OUTPUT_ONLY]; 70 71 // The name of the ad group. 72 // 73 // This field is required and should not be empty when creating new ad 74 // groups. 75 // 76 // It must contain fewer than 255 UTF-8 full-width characters. 77 // 78 // It must not contain any null (code point 0x0), NL line feed 79 // (code point 0xA) or carriage return (code point 0xD) characters. 80 optional string name = 35; 81 82 // The status of the ad group. 83 google.ads.googleads.v14.enums.AdGroupStatusEnum.AdGroupStatus status = 5; 84 85 // Immutable. The type of the ad group. 86 google.ads.googleads.v14.enums.AdGroupTypeEnum.AdGroupType type = 12 87 [(google.api.field_behavior) = IMMUTABLE]; 88 89 // The ad rotation mode of the ad group. 90 google.ads.googleads.v14.enums.AdGroupAdRotationModeEnum.AdGroupAdRotationMode 91 ad_rotation_mode = 22; 92 93 // Output only. For draft or experiment ad groups, this field is the resource 94 // name of the base ad group from which this ad group was created. If a draft 95 // or experiment ad group does not have a base ad group, then this field is 96 // null. 97 // 98 // For base ad groups, this field equals the ad group resource name. 99 // 100 // This field is read-only. 101 optional string base_ad_group = 36 [ 102 (google.api.field_behavior) = OUTPUT_ONLY, 103 (google.api.resource_reference) = { 104 type: "googleads.googleapis.com/AdGroup" 105 } 106 ]; 107 108 // The URL template for constructing a tracking URL. 109 optional string tracking_url_template = 37; 110 111 // The list of mappings used to substitute custom parameter tags in a 112 // `tracking_url_template`, `final_urls`, or `mobile_final_urls`. 113 repeated google.ads.googleads.v14.common.CustomParameter 114 url_custom_parameters = 6; 115 116 // Immutable. The campaign to which the ad group belongs. 117 optional string campaign = 38 [ 118 (google.api.field_behavior) = IMMUTABLE, 119 (google.api.resource_reference) = { 120 type: "googleads.googleapis.com/Campaign" 121 } 122 ]; 123 124 // The maximum CPC (cost-per-click) bid. 125 optional int64 cpc_bid_micros = 39; 126 127 // Output only. Value will be same as that of the CPC (cost-per-click) bid 128 // value when the bidding strategy is one of manual cpc, enhanced cpc, page 129 // one promoted or target outrank share, otherwise the value will be null. 130 optional int64 effective_cpc_bid_micros = 57 131 [(google.api.field_behavior) = OUTPUT_ONLY]; 132 133 // The maximum CPM (cost-per-thousand viewable impressions) bid. 134 optional int64 cpm_bid_micros = 40; 135 136 // The target CPA (cost-per-acquisition). If the ad group's campaign 137 // bidding strategy is TargetCpa or MaximizeConversions (with its target_cpa 138 // field set), then this field overrides the target CPA specified in the 139 // campaign's bidding strategy. 140 // Otherwise, this value is ignored. 141 optional int64 target_cpa_micros = 41; 142 143 // The CPV (cost-per-view) bid. 144 optional int64 cpv_bid_micros = 42; 145 146 // Average amount in micros that the advertiser is willing to pay for every 147 // thousand times the ad is shown. 148 optional int64 target_cpm_micros = 43; 149 150 // The target ROAS (return-on-ad-spend) override. If the ad group's campaign 151 // bidding strategy is TargetRoas or MaximizeConversionValue (with its 152 // target_roas field set), then this field overrides the target ROAS specified 153 // in the campaign's bidding strategy. 154 // Otherwise, this value is ignored. 155 optional double target_roas = 44; 156 157 // The percent cpc bid amount, expressed as a fraction of the advertised price 158 // for some good or service. The valid range for the fraction is [0,1) and the 159 // value stored here is 1,000,000 * [fraction]. 160 optional int64 percent_cpc_bid_micros = 45; 161 162 // True if optimized targeting is enabled. Optimized Targeting is the 163 // replacement for Audience Expansion. 164 bool optimized_targeting_enabled = 59; 165 166 // Allows advertisers to specify a targeting dimension on which to place 167 // absolute bids. This is only applicable for campaigns that target only the 168 // display network and not search. 169 google.ads.googleads.v14.enums.TargetingDimensionEnum.TargetingDimension 170 display_custom_bid_dimension = 23; 171 172 // URL template for appending params to Final URL. 173 optional string final_url_suffix = 46; 174 175 // Setting for targeting related features. 176 google.ads.googleads.v14.common.TargetingSetting targeting_setting = 25; 177 178 // Immutable. Setting for audience related features. 179 AudienceSetting audience_setting = 56 180 [(google.api.field_behavior) = IMMUTABLE]; 181 182 // Output only. The effective target CPA (cost-per-acquisition). 183 // This field is read-only. 184 optional int64 effective_target_cpa_micros = 47 185 [(google.api.field_behavior) = OUTPUT_ONLY]; 186 187 // Output only. Source of the effective target CPA. 188 // This field is read-only. 189 google.ads.googleads.v14.enums.BiddingSourceEnum.BiddingSource 190 effective_target_cpa_source = 29 191 [(google.api.field_behavior) = OUTPUT_ONLY]; 192 193 // Output only. The effective target ROAS (return-on-ad-spend). 194 // This field is read-only. 195 optional double effective_target_roas = 48 196 [(google.api.field_behavior) = OUTPUT_ONLY]; 197 198 // Output only. Source of the effective target ROAS. 199 // This field is read-only. 200 google.ads.googleads.v14.enums.BiddingSourceEnum.BiddingSource 201 effective_target_roas_source = 32 202 [(google.api.field_behavior) = OUTPUT_ONLY]; 203 204 // Output only. The resource names of labels attached to this ad group. 205 repeated string labels = 49 [ 206 (google.api.field_behavior) = OUTPUT_ONLY, 207 (google.api.resource_reference) = { 208 type: "googleads.googleapis.com/AdGroupLabel" 209 } 210 ]; 211 212 // The asset field types that should be excluded from this ad group. Asset 213 // links with these field types will not be inherited by this ad group from 214 // the upper levels. 215 repeated google.ads.googleads.v14.enums.AssetFieldTypeEnum.AssetFieldType 216 excluded_parent_asset_field_types = 54; 217 218 // The asset set types that should be excluded from this ad group. Asset set 219 // links with these types will not be inherited by this ad group from the 220 // upper levels. 221 // Location group types (GMB_DYNAMIC_LOCATION_GROUP, 222 // CHAIN_DYNAMIC_LOCATION_GROUP, and STATIC_LOCATION_GROUP) are child types of 223 // LOCATION_SYNC. Therefore, if LOCATION_SYNC is set for this field, all 224 // location group asset sets are not allowed to be linked to this ad group, 225 // and all Location Extension (LE) and Affiliate Location Extensions (ALE) 226 // will not be served under this ad group. 227 // Only LOCATION_SYNC is currently supported. 228 repeated google.ads.googleads.v14.enums.AssetSetTypeEnum.AssetSetType 229 excluded_parent_asset_set_types = 58; 230} 231