github.com/prebid/prebid-server/v2@v2.18.0/openrtb_ext/bid_request_video.go (about) 1 package openrtb_ext 2 3 import "github.com/prebid/openrtb/v20/openrtb2" 4 5 type BidRequestVideo struct { 6 // Attribute: 7 // storedrequestid 8 // Type: 9 // string; required 10 // Description: 11 // Unique ID of the stored request 12 StoredRequestId string `json:"storedrequestid"` 13 14 // Attribute: 15 // podconfig 16 // Type: 17 // object; required 18 // Description: 19 // Container object for describing all the pod configurations 20 PodConfig PodConfig `json:"podconfig"` 21 22 // Attribute: 23 // app 24 // Type: 25 // object; App or Site required 26 // Description: 27 // Application where the impression will be shown 28 App *openrtb2.App `json:"app"` 29 30 // Attribute: 31 // site 32 // Type: 33 // object; App or Site required 34 // Description: 35 // Site where the impression will be shown 36 Site *openrtb2.Site `json:"site"` 37 38 // Attribute: 39 // user 40 // Type: 41 // object; optional 42 // Description: 43 // Container object for the user of of the actual device 44 User *openrtb2.User `json:"user,omitempty"` 45 46 // Attribute: 47 // device 48 // Type: 49 // object; optional 50 // Description: 51 // Device specific data 52 Device openrtb2.Device `json:"device,omitempty"` 53 54 // Attribute: 55 // includebrandcategory 56 // Type: 57 // object; optional 58 // Description: 59 // Indicates that the response requires an adserver specific content category 60 IncludeBrandCategory *IncludeBrandCategory `json:"includebrandcategory,omitempty"` 61 62 // Attribute: 63 // video 64 // Type: 65 // object; required 66 // Description: 67 // Player container object 68 Video *openrtb2.Video `json:"video,omitempty"` 69 70 // Attribute: 71 // content 72 // Type: 73 // object; optional 74 // Description: 75 // Misc content meta data that can be used for targeting the adPod(s) 76 Content openrtb2.Content `json:"content,omitempty"` 77 78 // Attribute: 79 // cacheconfig 80 // Type: 81 // object; optional 82 // Description: 83 // Container object for all Prebid Cache configs 84 Cacheconfig Cacheconfig `json:"cacheconfig,omitempty"` 85 86 // Attribute: 87 // test 88 // Type: 89 // integer; default 0 90 // Description: 91 // Indicator of test mode in which auctions are not billable, 92 // where 0 = live mode, 1 = test mode. 93 Test int8 `json:"test,omitempty"` 94 95 // Attribute: 96 // pricegranularity 97 // Type: 98 // object; optional 99 // Description: 100 // Object to tell ad server how much money the “bidder” demand is worth to you 101 PriceGranularity *PriceGranularity `json:"pricegranularity,omitempty"` 102 103 // Attribute: 104 // tmax 105 // Type: 106 // integer 107 // Description: 108 // Maximum time in milliseconds the exchange allows for bids to 109 // be received including Internet latency to avoid timeout. This 110 // value supersedes any a priori guidance from the exchange. 111 TMax int64 `json:"tmax,omitempty"` 112 113 // Attribute: 114 // bcat 115 // Type: 116 // string array 117 // Description: 118 // Blocked advertiser categories using the IAB content 119 // categories. Refer to List 5.1. 120 BCat []string `json:"bcat,omitempty"` 121 122 // Attribute: 123 // badv 124 // Type: 125 // string array 126 // Description: 127 // Block list of advertisers by their domains (e.g., “ford.com”). 128 BAdv []string `json:"badv,omitempty"` 129 130 // Attribute: 131 // regs 132 // Type: 133 // object; optional 134 // Description: 135 // Contains the OpenRTB Regs object to be passed to OpenRTB request 136 Regs *openrtb2.Regs `json:"regs,omitempty"` 137 138 // Attribute: 139 // supportdeals 140 // Type: 141 // bool; optional 142 // Description: 143 // Indicates that the response should update key to include prefix and tier 144 SupportDeals bool `json:"supportdeals,omitempty"` 145 146 // Attribute: 147 // appendbiddernames 148 // Type: 149 // boolean, optional 150 // Flag indicating if the bidder name will be added to the hb_pb_cat_dur. Default is false. 151 AppendBidderNames bool `json:"appendbiddernames,omitempty"` 152 } 153 154 type PodConfig struct { 155 // Attribute: 156 // durationrangesec 157 // Type: 158 // int array, required 159 // Description: 160 // Range of ad durations allowed in the response 161 DurationRangeSec []int `json:"durationrangesec"` 162 163 // Attribute: 164 // requireexactduration 165 // Type: 166 // boolean, optional 167 // Flag indicating exact ad duration requirement. Default is false. 168 RequireExactDuration bool `json:"requireexactduration,omitempty"` 169 170 // Attribute: 171 // pods 172 // Type: 173 // object; required 174 // Container object for describing the adPod(s) to be requested. 175 Pods []Pod `json:"pods"` 176 } 177 178 type Pod struct { 179 // Attribute: 180 // podid 181 // Type: 182 // integer; required 183 // Unique id of the pod within a particular request. 184 PodId int `json:"podid"` 185 186 // Attribute: 187 // adpoddurationsec 188 // Type: 189 // integer; required 190 // Duration of the adPod 191 AdPodDurationSec int `json:"adpoddurationsec"` 192 193 // Attribute: 194 // configid 195 // Type: 196 // string; required 197 // ID of the stored config that corresponds to a single pod request 198 ConfigId string `json:"configid"` 199 } 200 201 type IncludeBrandCategory struct { 202 // Attribute: 203 // primaryadserver 204 // Type: 205 // int; optional 206 // The ad server used by the publisher. Supported Values 1- Freewheel , 2- DFP 207 PrimaryAdserver int `json:"primaryadserver"` 208 209 // Attribute: 210 // publisher 211 // Type: 212 // string; optional 213 // Identifier for the Publisher 214 Publisher string `json:"publisher"` 215 216 // Attribute: 217 // translatecategories 218 // Type: 219 // *bool; optional 220 // Description: 221 // Indicates if IAB categories should be translated to adserver category 222 TranslateCategories *bool `json:"translatecategories,omitempty"` 223 } 224 225 type Cacheconfig struct { 226 // Attribute: 227 // ttl 228 // Type: 229 // int; optional 230 // Time to Live for a cache entry specified in seconds 231 Ttl int `json:"ttl"` 232 }