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