xref: /aosp_15_r20/external/googleapis/google/ads/admanager/v1/line_item_enums.proto (revision d5c09012810ac0c9f33fe448fb6da8260d444cc9)
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.admanager.v1;
18
19option csharp_namespace = "Google.Ads.AdManager.V1";
20option go_package = "google.golang.org/genproto/googleapis/ads/admanager/v1;admanager";
21option java_multiple_files = true;
22option java_outer_classname = "LineItemEnumsProto";
23option java_package = "com.google.ads.admanager.v1";
24option objc_class_prefix = "GAA";
25option php_namespace = "Google\\Ads\\AdManager\\V1";
26
27// Wrapper message for
28// [LineItemCostType][google.ads.admanager.v1.LineItemCostTypeEnum.LineItemCostType].
29message LineItemCostTypeEnum {
30  // Describes the LineItem actions that are billable.
31  enum LineItemCostType {
32    // Not specified value.
33    LINE_ITEM_COST_TYPE_UNSPECIFIED = 0;
34
35    // Cost per action. The line item
36    // [type][google.ads.admanager.v1.LineItem.line_item_type] must be one of:
37    //
38    // * [LineItemTypeEnum.LineItemType.SPONSORSHIP][google.ads.admanager.v1.LineItemTypeEnum.LineItemType.SPONSORSHIP]
39    // * [LineItemTypeEnum.LineItemType.STANDARD][google.ads.admanager.v1.LineItemTypeEnum.LineItemType.STANDARD]
40    // * [LineItemTypeEnum.LineItemType.BULK][google.ads.admanager.v1.LineItemTypeEnum.LineItemType.BULK]
41    // * [LineItemTypeEnum.LineItemType.NETWORK][google.ads.admanager.v1.LineItemTypeEnum.LineItemType.NETWORK]
42    CPA = 1;
43
44    // Cost per click. The line item
45    // [type][google.ads.admanager.v1.LineItem.line_item_type] must be one of:
46    //
47    // * [LineItemTypeEnum.LineItemType.SPONSORSHIP][google.ads.admanager.v1.LineItemTypeEnum.LineItemType.SPONSORSHIP]
48    // * [LineItemTypeEnum.LineItemType.STANDARD][google.ads.admanager.v1.LineItemTypeEnum.LineItemType.STANDARD]
49    // * [LineItemTypeEnum.LineItemType.BULK][google.ads.admanager.v1.LineItemTypeEnum.LineItemType.BULK]
50    // * [LineItemTypeEnum.LineItemType.NETWORK][google.ads.admanager.v1.LineItemTypeEnum.LineItemType.NETWORK]
51    // * [LineItemTypeEnum.LineItemType.PRICE_PRIORITY][google.ads.admanager.v1.LineItemTypeEnum.LineItemType.PRICE_PRIORITY]
52    // * [LineItemTypeEnum.LineItemType.HOUSE][google.ads.admanager.v1.LineItemTypeEnum.LineItemType.HOUSE]
53    CPC = 2;
54
55    // Cost per day. The line item
56    // [type][google.ads.admanager.v1.LineItem.line_item_type] must be one of:
57    //
58    // * [LineItemTypeEnum.LineItemType.SPONSORSHIP][google.ads.admanager.v1.LineItemTypeEnum.LineItemType.SPONSORSHIP]
59    // * [LineItemTypeEnum.LineItemType.NETWORK][google.ads.admanager.v1.LineItemTypeEnum.LineItemType.NETWORK]
60    CPD = 3;
61
62    // Cost per mille (thousand) impressions. The line item
63    // [type][google.ads.admanager.v1.LineItem.line_item_type] must be one of:
64    //
65    // * [LineItemTypeEnum.LineItemType.SPONSORSHIP][google.ads.admanager.v1.LineItemTypeEnum.LineItemType.SPONSORSHIP]
66    // * [LineItemTypeEnum.LineItemType.STANDARD][google.ads.admanager.v1.LineItemTypeEnum.LineItemType.STANDARD]
67    // * [LineItemTypeEnum.LineItemType.BULK][google.ads.admanager.v1.LineItemTypeEnum.LineItemType.BULK]
68    // * [LineItemTypeEnum.LineItemType.NETWORK][google.ads.admanager.v1.LineItemTypeEnum.LineItemType.NETWORK]
69    // * [LineItemTypeEnum.LineItemType.PRICE_PRIORITY][google.ads.admanager.v1.LineItemTypeEnum.LineItemType.PRICE_PRIORITY]
70    // * [LineItemTypeEnum.LineItemType.HOUSE][google.ads.admanager.v1.LineItemTypeEnum.LineItemType.HOUSE]
71    CPM = 4;
72
73    // Cost per mille (thousand) Active View viewable impressions. The line item
74    // [type][google.ads.admanager.v1.LineItem.line_item_type] must be one of:
75    //
76    // * [LineItemTypeEnum.LineItemType.STANDARD][google.ads.admanager.v1.LineItemTypeEnum.LineItemType.STANDARD]
77    VCPM = 5;
78
79    // Cost per millie (thousand) in-target impressions. The line item
80    // [type][google.ads.admanager.v1.LineItem.line_item_type] must be one of:
81    //
82    // * [LineItemTypeEnum.LineItemType.STANDARD][google.ads.admanager.v1.LineItemTypeEnum.LineItemType.STANDARD]
83    CPM_IN_TARGET = 6;
84
85    // Cost for the entire flight of the deal. The line item
86    // [type][google.ads.admanager.v1.LineItem.line_item_type] must be must be
87    // one of:
88    //
89    // * [LineItemTypeEnum.LineItemType.SPONSORSHIP][google.ads.admanager.v1.LineItemTypeEnum.LineItemType.SPONSORSHIP]
90    CPF = 7;
91  }
92}
93
94// Wrapper message for
95// [CreativeRotationType][google.ads.admanager.v1.CreativeRotationTypeEnum.CreativeRotationType].
96message CreativeRotationTypeEnum {
97  // The strategy to use for displaying multiple
98  // [creatives][google.ads.admanager.v1.Creative] that are associated with a
99  // line item.
100  enum CreativeRotationType {
101    // Not specified value
102    CREATIVE_ROTATION_TYPE_UNSPECIFIED = 0;
103
104    // Creatives are displayed approximately the same number of times over the
105    // duration of the line item.
106    EVENLY = 1;
107
108    // Creatives are served approximately proportionally to their performance.
109    OPTIMIZED = 2;
110
111    // Creatives are served approximately proportionally to their weights, set
112    // on the `LineItemCreativeAssociation`.
113    WEIGHTED = 3;
114
115    // Creatives are served exactly in sequential order, aka Storyboarding. Set
116    // on the `LineItemCreativeAssociation`.
117    SEQUENTIAL = 4;
118  }
119}
120
121// Wrapper message for
122// [DeliveryRateType][google.ads.admanager.v1.DeliveryRateTypeEnum.DeliveryRateType].
123message DeliveryRateTypeEnum {
124  // Possible delivery rates for a line item. It dictates the manner in which
125  // the line item is served.
126  enum DeliveryRateType {
127    // Not specified value
128    DELIVERY_RATE_TYPE_UNSPECIFIED = 0;
129
130    // Line items are served as evenly as possible across the number of days
131    // specified in a line item's [duration][LineItem.duration].
132    EVENLY = 1;
133
134    // Line items are served more aggressively in the beginning of the flight
135    // date.
136    FRONTLOADED = 2;
137
138    // The booked impressions may delivered well before the
139    // [end_time][google.ads.admanager.v1.LineItem.end_time]. Other
140    // lower-priority or lower-value line items will be stopped from delivering
141    // until the line item meets the number of impressions or clicks it is
142    // booked for.
143    AS_FAST_AS_POSSIBLE = 3;
144  }
145}
146
147// Wrapper message for
148// [LineItemDiscountType][google.ads.admanager.v1.LineItemDiscountTypeEnum.LineItemDiscountType].
149message LineItemDiscountTypeEnum {
150  // Describes the possible discount types on the cost of booking a line item.
151  enum LineItemDiscountType {
152    // No value specified
153    LINE_ITEM_DISCOUNT_TYPE_UNSPECIFIED = 0;
154
155    // An absolute value will be discounted from the line item's cost.
156    ABSOLUTE_VALUE = 1;
157
158    // A percentage of the cost will be discounted for booking the line item.
159    PERCENTAGE = 2;
160  }
161}
162
163// Wrapper message for
164// [LineItemType][google.ads.admanager.v1.LineItemTypeEnum.LineItemType].
165message LineItemTypeEnum {
166  // Indicates the priority of a LineItem, determined by the way in which
167  // impressions are reserved to be served for it.
168  enum LineItemType {
169    // Not specified value.
170    LINE_ITEM_TYPE_UNSPECIFIED = 0;
171
172    // The type of LineItem for which a percentage of all the impressions that
173    // are being sold are reserved.
174    SPONSORSHIP = 12;
175
176    // The type of LineItem for which a fixed quantity of impressions or
177    // clicks are reserved.
178    STANDARD = 13;
179
180    // The type of LineItem most commonly used to fill a site's unsold
181    // inventory if not contractually obligated to deliver a requested number
182    // of impressions. Uses daily percentage of unsold impressions or clicks.
183    NETWORK = 9;
184
185    // The type of LineItem for which a fixed quantity of impressions or
186    // clicks will be delivered at a priority lower than the STANDARD type.
187    BULK = 4;
188
189    // The type of LineItem most commonly used to fill a site's unsold
190    // inventory if not contractually obligated to deliver a requested number
191    // of impressions. Uses fixed quantity percentage of unsold impressions or
192    // clicks.
193    PRICE_PRIORITY = 11;
194
195    // The type of LineItem typically used for ads that promote products and
196    // services chosen by the publisher.
197    HOUSE = 7;
198
199    // Represents a legacy LineItem that has been migrated from the DFP
200    // system.
201    LEGACY_DFP = 8;
202
203    // The type of LineItem used for ads that track ads being served
204    // externally of Ad Manager.
205    CLICK_TRACKING = 6;
206
207    // A LineItem using dynamic allocation backed by AdSense.
208    ADSENSE = 2;
209
210    // A LineItem using dynamic allocation backed by the Google Ad Exchange.
211    AD_EXCHANGE = 3;
212
213    // Represents a non-monetizable video LineItem that targets one or more
214    // bumper positions, which are short house video messages used by
215    // publishers to separate content from ad breaks.
216    BUMPER = 5;
217
218    // A LineItem using dynamic allocation backed by AdMob.
219    ADMOB = 1;
220
221    // The type of LineItem for which there are no impressions reserved, and
222    // will serve for a second price bid.
223    PREFERRED_DEAL = 10;
224  }
225}
226
227// Wrapper message for
228// [ReservationStatus][google.ads.admanager.v1.ReservationStatusEnum.ReservationStatus].
229message ReservationStatusEnum {
230  // Defines the different reservation statuses of a line item.
231  enum ReservationStatus {
232    // No value specified
233    RESERVATION_STATUS_UNSPECIFIED = 0;
234
235    // Indicates that inventory has been reserved for the line item.
236    RESERVED = 1;
237
238    // Indicates that inventory has not been reserved for the line item.
239    UNRESERVED = 2;
240  }
241}
242