Built motion from commit 6a09e18b.|2.6.11
[motion2.git] / legacy-libs / google-proto-files / google / ads / googleads / v0 / common / bidding.proto
1 // Copyright 2018 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 //
15
16 syntax = "proto3";
17
18 package google.ads.googleads.v0.common;
19
20 import "google/ads/googleads/v0/enums/page_one_promoted_strategy_goal.proto";
21 import "google/protobuf/wrappers.proto";
22
23 option csharp_namespace = "Google.Ads.GoogleAds.V0.Common";
24 option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v0/common;common";
25 option java_multiple_files = true;
26 option java_outer_classname = "BiddingProto";
27 option java_package = "com.google.ads.googleads.v0.common";
28 option objc_class_prefix = "GAA";
29 option php_namespace = "Google\\Ads\\GoogleAds\\V0\\Common";
30 option ruby_package = "Google::Ads::GoogleAds::V0::Common";
31
32 // Proto file describing bidding schemes.
33
34 // An automated bidding strategy that raises bids for clicks
35 // that seem more likely to lead to a conversion and lowers
36 // them for clicks where they seem less likely.
37 message EnhancedCpc {}
38
39 // Manual click-based bidding where user pays per click.
40 message ManualCpc {
41   // Whether bids are to be enhanced based on conversion optimizer data.
42   google.protobuf.BoolValue enhanced_cpc_enabled = 1;
43 }
44
45 // Manual impression-based bidding where user pays per thousand impressions.
46 message ManualCpm {}
47
48 // View based bidding where user pays per video view.
49 message ManualCpv {}
50
51 // An automated bidding strategy that sets bids to help get the most conversions
52 // for your campaign while spending your budget.
53 message MaximizeConversions {}
54
55 // An automated bidding strategy which tries to maximize conversion value
56 // given a daily budget.
57 message MaximizeConversionValue {
58   // The target return on ad spend (ROAS) option. If set, the bid strategy will
59   // maximize revenue while averaging the target return on ad spend. If the
60   // target ROAS is high, the bid strategy may not be able to spend the full
61   // budget. If the target ROAS is not set, the bid strategy will aim to
62   // achieve the highest possible ROAS for the budget.
63   google.protobuf.DoubleValue target_roas = 1;
64 }
65
66 // An automated bidding strategy which sets CPC bids to target impressions on
67 // page one, or page one promoted slots on google.com.
68 message PageOnePromoted {
69   // The strategy goal of where impressions are desired to be shown on
70   // search result pages.
71   google.ads.googleads.v0.enums.PageOnePromotedStrategyGoalEnum
72       .PageOnePromotedStrategyGoal strategy_goal = 1;
73
74   // Maximum bid limit that can be set by the bid strategy.
75   // The limit applies to all keywords managed by the strategy.
76   google.protobuf.Int64Value cpc_bid_ceiling_micros = 2;
77
78   // Bid multiplier to be applied to the relevant bid estimate (depending on
79   // the `strategy_goal`) in determining a keyword's new CPC bid.
80   google.protobuf.DoubleValue bid_modifier = 3;
81
82   // Whether the strategy should always follow bid estimate changes, or only
83   // increase.
84   // If false, always sets a keyword's new bid to the current bid estimate.
85   // If true, only updates a keyword's bid if the current bid estimate is
86   // greater than the current bid.
87   google.protobuf.BoolValue only_raise_cpc_bids = 4;
88
89   // Whether the strategy is allowed to raise bids when the throttling
90   // rate of the budget it is serving out of rises above a threshold.
91   google.protobuf.BoolValue raise_cpc_bid_when_budget_constrained = 5;
92
93   // Whether the strategy is allowed to raise bids on keywords with
94   // lower-range quality scores.
95   google.protobuf.BoolValue raise_cpc_bid_when_quality_score_is_low = 6;
96 }
97
98 // An automated bid strategy that sets bids to help get as many conversions as
99 // possible at the target cost-per-acquisition (CPA) you set.
100 message TargetCpa {
101   // Average CPA target.
102   // This target should be greater than or equal to minimum billable unit based
103   // on the currency for the account.
104   google.protobuf.Int64Value target_cpa_micros = 1;
105
106   // Maximum bid limit that can be set by the bid strategy.
107   // The limit applies to all keywords managed by the strategy.
108   google.protobuf.Int64Value cpc_bid_ceiling_micros = 2;
109
110   // Minimum bid limit that can be set by the bid strategy.
111   // The limit applies to all keywords managed by the strategy.
112   google.protobuf.Int64Value cpc_bid_floor_micros = 3;
113 }
114
115 // Target CPM (cost per thousand impressions) is an automated bidding strategy
116 // that sets bids to optimize performance given the target CPM you set.
117 message TargetCpm {}
118
119 // An automated bidding strategy that sets bids based on the target fraction of
120 // auctions where the advertiser should outrank a specific competitor.
121 message TargetOutrankShare {
122   // The target fraction of auctions where the advertiser should outrank the
123   // competitor.
124   // The advertiser outranks the competitor in an auction if either the
125   // advertiser appears above the competitor in the search results, or appears
126   // in the search results when the competitor does not.
127   // Value must be between 1 and 1000000, inclusive.
128   google.protobuf.Int32Value target_outrank_share_micros = 1;
129
130   // Competitor's visible domain URL.
131   google.protobuf.StringValue competitor_domain = 2;
132
133   // Maximum bid limit that can be set by the bid strategy.
134   // The limit applies to all keywords managed by the strategy.
135   google.protobuf.Int64Value cpc_bid_ceiling_micros = 3;
136
137   // Whether the strategy should always follow bid estimate changes,
138   // or only increase.
139   // If false, always set a keyword's new bid to the current bid estimate.
140   // If true, only updates a keyword's bid if the current bid estimate is
141   // greater than the current bid.
142   google.protobuf.BoolValue only_raise_cpc_bids = 4;
143
144   // Whether the strategy is allowed to raise bids on keywords with
145   // lower-range quality scores.
146   google.protobuf.BoolValue raise_cpc_bid_when_quality_score_is_low = 5;
147 }
148
149 // An automated bidding strategy that helps you maximize revenue while
150 // averaging a specific target return on ad spend (ROAS).
151 message TargetRoas {
152   // Required. The desired revenue (based on conversion data) per unit of spend.
153   // Value must be between 0.01 and 1000.0, inclusive.
154   google.protobuf.DoubleValue target_roas = 1;
155
156   // Maximum bid limit that can be set by the bid strategy.
157   // The limit applies to all keywords managed by the strategy.
158   google.protobuf.Int64Value cpc_bid_ceiling_micros = 2;
159
160   // Minimum bid limit that can be set by the bid strategy.
161   // The limit applies to all keywords managed by the strategy.
162   google.protobuf.Int64Value cpc_bid_floor_micros = 3;
163 }
164
165 // An automated bid strategy that sets your bids to help get as many clicks
166 // as possible within your budget.
167 message TargetSpend {
168   // The spend target under which to maximize clicks.
169   // A TargetSpend bidder will attempt to spend the smaller of this value
170   // or the natural throttling spend amount.
171   // If not specified, the budget is used as the spend target.
172   google.protobuf.Int64Value target_spend_micros = 1;
173
174   // Maximum bid limit that can be set by the bid strategy.
175   // The limit applies to all keywords managed by the strategy.
176   google.protobuf.Int64Value cpc_bid_ceiling_micros = 2;
177 }
178
179 // A bidding strategy where bids are a fraction of the advertised price for
180 // some good or service.
181 message PercentCpc {
182   // Maximum bid limit that can be set by the bid strategy. This is
183   // an optional field entered by the advertiser and specified in local micros.
184   // Note: A zero value is interpreted in the same way as having bid_ceiling
185   // undefined.
186   google.protobuf.Int64Value cpc_bid_ceiling_micros = 1;
187
188   // Adjusts the bid for each auction upward or downward, depending on the
189   // likelihood of a conversion. Individual bids may exceed
190   // cpc_bid_ceiling_micros, but the average bid amount for a campaign should
191   // not.
192   google.protobuf.BoolValue enhanced_cpc_enabled = 2;
193 }