BidRequest specification requirements
VK Ad Network supports a subset of OpenRTB API Specification 2.3 (specification) or OpenRTB API Specification 2.5 (specification), and Native ADS API version 1.2 (specification).
If you support the OpenRTB API Specification 2.5, we strongly recommend adding the HTTP header: “x-openrtb-version: 2.5
” to the request to use bURL field.
It will minimize impression and cost data discrepancy. (The message may contain a different version number than the request HTTP header: “x-openrtb-version: 2.5”
) with the following extensions.
Additional requirements
Bid Request requirements clarification
Object: Device
dnt
integer; recommended
Standard “Do Not Track” flag as set in the header by the browser, where 0 = tracking is unrestricted, 1 = do not track.
geo.lat
float; recommended
Location: latitude (server-side greater than 0, south less than 0)
geo.lon
float; recommended
Location: longitude (eastern greater than 0, western less than 0)
geo.country
string; required
Country code using ISO-3166-1-alpha-3
geo.type
integer; recommended
Only type = 1 (GPS / Location Services) allowed
geo.accuracy
integer; recommended
Location accuracy (meters)
geo.lastfix
integer; recommended
Elapsed time since the last coordinate update (seconds)
lmt
integer; required
Setting value "Limit Ad Tracking"
ip
string; required *
IPv4 client device address
ipv6
string; required *
IPv6 client device address
devicetype
integer; recommended
4 - Phone, 5 - Tablet
ua
string; required
Browser user agent string.
make
string; recommended
Manufacturer, examples: "Apple", "LGE", "samsung"
model
string; recommended
Technical identifier of the model, examples: "iPhone8,1" (iPhone 6S), "bullhead" (LG Nexus 5X) (this requirement is from the OpenRTB specification where it is recommended to indicate human-readable rather than technical names, for example model = "iPhone" + hwv = "5S" for iPhone 5S)
os
string; required
"iOS" (iOS), "Android" (Android)
osv
string; required
Operating system version, examples: "9.3.2" (iOS), "6.0.1" (Android)
language
string; recommended
Application / operating system language, two-letter code according to ISO-639-1, example: "ru"
carrier
string; recommended
Name of mobile operator
connectiontype
integer; recommended
Connection type: 2 - WIFI, 3 - GSM Unspecified, 4 - GSM 2G, 5 - GSM 3G, 6 - GSM 4G
ifa
string; required
IDFA (iOS), GAID (Android)
ext.oaid
string; recommended
Huawei OAID
IP address is required, depending on the type of connection, you must fill out either .device.ip or .device.ipv6
Object User
id
string; recommended
Exchange-specific ID for the user. At least one of id or buyeruid is recommended.
buyeruid
string; recommended
user ID VK Ad Network received via cookie sync (if configured)
yob
integer; recommended
User year of birth (if known)
gender
string; recommended
Gender
ext.consent
string; recommended
String that indicates the user has provided GDPR consent. “0” = No Consent ,“1” = User has consented
Object app
.app.bundle
string; required
Platform-specific application identifier. On Android, this should be a bundle or package name (e.g., com.foo.mygame). On iOS, it is typically a numeric ID.
Object Imp
instl
integer; required *
1 = the ad is interstitial or full screen, 0 = not interstitial.
ext.rewarded
integer; required *
1 = the ad is rewarded
Object Regs
.regs.ext.gdpr
integer; recommended
The regs
object signals whether or not the request is subject to GDPR regulations. It does so via the extension attribute gdpr
, which is an integer that indicates: ‘0’ = No, ‘1’ = Yes. The extension is an object.
For test can use BidRequest.test
test
integer
Indicator of test mode in which auctions are not billable, where 0 = live mode, 1 = test mode. Keep in mind: when using test_mode cost in response = 0.00
OpenRTB Dynamic Native Ads API Specification 1.2 with addition
ext.agerestrictions
string; recommended
Age restrictions of the form "18+" (they are also added to the beginning of .title.text as the string "[18 +]")
Last updated