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.searchads360.v0.resources; 18 19import "google/ads/searchads360/v0/enums/bidding_strategy_type.proto"; 20import "google/ads/searchads360/v0/enums/target_impression_share_location.proto"; 21import "google/api/field_behavior.proto"; 22import "google/api/resource.proto"; 23 24option csharp_namespace = "Google.Ads.SearchAds360.V0.Resources"; 25option go_package = "google.golang.org/genproto/googleapis/ads/searchads360/v0/resources;resources"; 26option java_multiple_files = true; 27option java_outer_classname = "AccessibleBiddingStrategyProto"; 28option java_package = "com.google.ads.searchads360.v0.resources"; 29option objc_class_prefix = "GASA360"; 30option php_namespace = "Google\\Ads\\SearchAds360\\V0\\Resources"; 31option ruby_package = "Google::Ads::SearchAds360::V0::Resources"; 32 33// Represents a view of BiddingStrategies owned by and shared with the customer. 34// 35// In contrast to BiddingStrategy, this resource includes strategies owned by 36// managers of the customer and shared with this customer - in addition to 37// strategies owned by this customer. This resource does not provide metrics and 38// only exposes a limited subset of the BiddingStrategy attributes. 39message AccessibleBiddingStrategy { 40 option (google.api.resource) = { 41 type: "searchads360.googleapis.com/AccessibleBiddingStrategy" 42 pattern: "customers/{customer_id}/accessibleBiddingStrategies/{bidding_strategy_id}" 43 }; 44 45 // An automated bidding strategy to help get the most conversion value for 46 // your campaigns while spending your budget. 47 message MaximizeConversionValue { 48 // Output only. The target return on ad spend (ROAS) option. If set, the bid 49 // strategy will maximize revenue while averaging the target return on ad 50 // spend. If the target ROAS is high, the bid strategy may not be able to 51 // spend the full budget. If the target ROAS is not set, the bid strategy 52 // will aim to achieve the highest possible ROAS for the budget. 53 double target_roas = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; 54 } 55 56 // An automated bidding strategy to help get the most conversions for your 57 // campaigns while spending your budget. 58 message MaximizeConversions { 59 // Output only. The target cost per acquisition (CPA) option. This is the 60 // average amount that you would like to spend per acquisition. 61 int64 target_cpa = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; 62 63 // Output only. The target cost per acquisition (CPA) option. This is the 64 // average amount that you would like to spend per acquisition. 65 int64 target_cpa_micros = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; 66 } 67 68 // An automated bid strategy that sets bids to help get as many conversions as 69 // possible at the target cost-per-acquisition (CPA) you set. 70 message TargetCpa { 71 // Output only. Average CPA target. 72 // This target should be greater than or equal to minimum billable unit 73 // based on the currency for the account. 74 optional int64 target_cpa_micros = 1 75 [(google.api.field_behavior) = OUTPUT_ONLY]; 76 } 77 78 // An automated bidding strategy that sets bids so that a certain percentage 79 // of search ads are shown at the top of the first page (or other targeted 80 // location). 81 message TargetImpressionShare { 82 // Output only. The targeted location on the search results page. 83 google.ads.searchads360.v0.enums.TargetImpressionShareLocationEnum 84 .TargetImpressionShareLocation location = 1 85 [(google.api.field_behavior) = OUTPUT_ONLY]; 86 87 // The chosen fraction of ads to be shown in the targeted location in 88 // micros. For example, 1% equals 10,000. 89 optional int64 location_fraction_micros = 2; 90 91 // Output only. The highest CPC bid the automated bidding system is 92 // permitted to specify. This is a required field entered by the advertiser 93 // that sets the ceiling and specified in local micros. 94 optional int64 cpc_bid_ceiling_micros = 3 95 [(google.api.field_behavior) = OUTPUT_ONLY]; 96 } 97 98 // An automated bidding strategy that helps you maximize revenue while 99 // averaging a specific target return on ad spend (ROAS). 100 message TargetRoas { 101 // Output only. The chosen revenue (based on conversion data) per unit of 102 // spend. 103 optional double target_roas = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; 104 } 105 106 // An automated bid strategy that sets your bids to help get as many clicks 107 // as possible within your budget. 108 message TargetSpend { 109 // Output only. The spend target under which to maximize clicks. 110 // A TargetSpend bidder will attempt to spend the smaller of this value 111 // or the natural throttling spend amount. 112 // If not specified, the budget is used as the spend target. 113 // This field is deprecated and should no longer be used. See 114 // https://ads-developers.googleblog.com/2020/05/reminder-about-sunset-creation-of.html 115 // for details. 116 optional int64 target_spend_micros = 1 117 [deprecated = true, (google.api.field_behavior) = OUTPUT_ONLY]; 118 119 // Output only. Maximum bid limit that can be set by the bid strategy. 120 // The limit applies to all keywords managed by the strategy. 121 optional int64 cpc_bid_ceiling_micros = 2 122 [(google.api.field_behavior) = OUTPUT_ONLY]; 123 } 124 125 // Output only. The resource name of the accessible bidding strategy. 126 // AccessibleBiddingStrategy resource names have the form: 127 // 128 // `customers/{customer_id}/accessibleBiddingStrategies/{bidding_strategy_id}` 129 string resource_name = 1 [ 130 (google.api.field_behavior) = OUTPUT_ONLY, 131 (google.api.resource_reference) = { 132 type: "searchads360.googleapis.com/AccessibleBiddingStrategy" 133 } 134 ]; 135 136 // Output only. The ID of the bidding strategy. 137 int64 id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; 138 139 // Output only. The name of the bidding strategy. 140 string name = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; 141 142 // Output only. The type of the bidding strategy. 143 google.ads.searchads360.v0.enums.BiddingStrategyTypeEnum.BiddingStrategyType 144 type = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; 145 146 // Output only. The ID of the Customer which owns the bidding strategy. 147 int64 owner_customer_id = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; 148 149 // Output only. descriptive_name of the Customer which owns the bidding 150 // strategy. 151 string owner_descriptive_name = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; 152 153 // The bidding scheme. 154 // 155 // Only one can be set. 156 oneof scheme { 157 // Output only. An automated bidding strategy to help get the most 158 // conversion value for your campaigns while spending your budget. 159 MaximizeConversionValue maximize_conversion_value = 7 160 [(google.api.field_behavior) = OUTPUT_ONLY]; 161 162 // Output only. An automated bidding strategy to help get the most 163 // conversions for your campaigns while spending your budget. 164 MaximizeConversions maximize_conversions = 8 165 [(google.api.field_behavior) = OUTPUT_ONLY]; 166 167 // Output only. A bidding strategy that sets bids to help get as many 168 // conversions as possible at the target cost-per-acquisition (CPA) you set. 169 TargetCpa target_cpa = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; 170 171 // Output only. A bidding strategy that automatically optimizes towards a 172 // chosen percentage of impressions. 173 TargetImpressionShare target_impression_share = 10 174 [(google.api.field_behavior) = OUTPUT_ONLY]; 175 176 // Output only. A bidding strategy that helps you maximize revenue while 177 // averaging a specific target Return On Ad Spend (ROAS). 178 TargetRoas target_roas = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; 179 180 // Output only. A bid strategy that sets your bids to help get as many 181 // clicks as possible within your budget. 182 TargetSpend target_spend = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; 183 } 184} 185