Contextual Parameters in our audience builder SDK

With the upcoming changes on IDFA settings in iOS 14 updates, we want to support our partners by providing this draft of the contextual parameters which will be available in our SDK product we are currently working on.

As the whole advertising ecosystem is affected by these changes, we are taking this opportunity to innovate with our audience builder SDK, which doesn’t rely on IDFA and personal identifiers, but rather uses contextual data on edge to create audiences which can not be linked to a specific person. We have been advocates for more privacy centered advertising for a while (we are a member of Prebid Committee and taking part in IAB initiatives) and we are very much looking forward to help realize more privacy centered as well as future-oriented practices in the ecosystem.

Please note that this is a draft and we will add more parameters as we progress with our product.

OpenRTB Attributes for Contextual App Targeting

Publishers can include the following parameters for Contextual App Targeting.
These attribute structure is based on OpenRTB 2.3 specifications.

📘

Note

  • All attributes are optional
  • This is a list that is updated periodically

User

Attribute NameDescriptionAttributeTypeExample
SessiondurationThe total duration of time a user has spent so far in a specific app session expressed in seconds.ext.sessiondurationinteger/string45
ImpdepthThe count of impressions for a specific placement type in a given app session. The impression depth is reset once the session ends.ext.impdepthinteger/string3
Age RatingApp or screen content rating.ext.ageratingstring"pg13"

Device

Attribute NameDescriptionAttributeTypeExample
ATTrackingManager AuthorizationStatus(iOS Only) passed to represent the app's app tracking authorization status. Possible values:

0 = not determined
1 = restricted
2 = denied
3 = authorized
ext.attsinteger"atts":2
IDFV(iOS Only) An alphanumeric string that uniquely identifies a device to the app’s vendor.ext.ifvstring"60A06FF5-3755-4077-AXXX-4520CCC9CFXX"
Device Keyboard LanguagesA string array containing the languages setup on the user's device keyboard.ext.inputlanguagestring array["en","ko"]
BatteryRemaining battery percentageext.batteryInteger91
IPv6IP address closest to device as IPv6 (128-bit value)ipv6string"2001:0db8:85a3:0000:0000:8a2e:0370:7334"
inputlanguageA string array containing the languages setup on the user's device keyboard.ext.inputlanguagestring“en-US, en”
diskspaceAn integer value describing the available disk space on the device in megabytes, where i.e. "18201" = device has 18201 MB of available disk space.ext.diskspaceint18201
totaldiskAn integer value describing the total disk space on the device in megabytes, where i.e. "63989" = 63989 MB of total disk space.ext.totaldiskint63989
ringmute(Android only) An integer value describing the device sound setting during time of ad request describing if sound is set to ring or mute, where
"0" = mute and
"1" = ring.
ext.ringmuteint0
chargingAn integer value describing if the device is connected to a charger, where:
"0" = unplugged and
"1" = plugged into power outlet
ext.chargingint1
headsetA boolean value indicating if the device is connected to a headset, where:
"1" = device is connected to any headset and
"0" = no headset is connected
ext.headsetbool1
batterylevelbatterylevel
An integer passed describing percent battery remaining on the user's device, segmented into buckets, where
100-85% = 8
84-70% = 7
69-55% = 6
54-40% = 5
39-25% = 4
21-10% = 3
9-5% = 2
< 5% = 1
ext.batterylevelint7
batterysaverA boolean value indicating if battery saver ("Low Power Mode" on iOS) has been enabled, where
"1" = battery saver,
"0" = not enabled
ext.batterysaverbool1
darkmodeA boolean value indicating if dark mode is enabled on the device, where
"1" = dark mode enabled,
"0"= not enabled
ext.darkmodebool1
airplaneA boolean value indicating if airplane mode is enabled, where "1" = airplane mode enabled, "0" = not enabledext.airplanebool1
dnd(Android only) A boolean value indicating if “do not disturb” setting is enabled, where
"1" = do not disturb enabled,
"0" = not enabled.
ext.dndbool0
atts(iOS 14 + only) An integer passed to represent the app's app tracking authorization status, where

0 = not determined
1 = restricted
2 = denied
3 = authorized
ext.attsint3
bluetoothA boolean value indicating if the device is connected to bluetooth where
"1" = connected to bluetooth
“0” = not connected to bluetooth
ext.bluetoothbool1

App

Attribute NameDescriptionAttributeTypeExample
App VersionThe version of the application.verstring"14.16.0"

Publisher

Attribute NameDescriptionAttributeTypeExample
Developer DomainThe developer domain used for app-ads.txtdomainstring"developer.com"
{
  "id": "92d6421e44a44dff9f05b29be0ca5bef",
  "imp": [
    {
      "id": "94628ee5-fe99-436d-94b5-f3270ad06529",
      "banner": {
        "w": 300,
        "h": 250
      },
      "tagid": "1-abc-xyz",
      "bidfloor": 0.01,
      "bidfloorcur": "USD",
      "secure": 1
    }
  ],
  "publisher": {
    "domain": "developer.com"
  },
  "app": {
    "id": "1008118",
    "name": "Test_Android",
    "bundle": "com.android.test",
    "ver": "14.16.0",
    "cat": [
      "IAB2-1",
      "IAB2-2"
    ],
    "storeurl": "https://play.google.com/store/apps/details?id=com.android.test",
    "keywords": "test, android",
    "privacypolicy": 1,
    "publisher": {
      "id": "pub12345",
      "name": "Publisher A"
    }
  },
  "device": {
    "ua": "Dalvik/2.1.0 (Linux; U; Android 6.0; MotoG3 Build/MPI24.65-25)",
    "ip": "107.219.186.28",
    "ipv6": "2001:0db8:85a3:0000:0000:8a2e:0370:7334",
    "geo": {
      "lat": 33.9775,
      "lon": -118.2133,
      "country": "USA",
      "region": "CA",
      "city": "los angeles",
      "zip": "90001",
      "type": 1
    },
    "carrier": "att internet services",
    "language": "en",
    "model": "Moto G3",
    "os": "Android",
    "osv": "6.0",
    "connectiontype": 2,
    "devicetype": 1,
    "ifa": "03F9F0E4-937D-4F85-9275-F530E0107B2F",
    "ext": {
      "atts": 2,
      "ifv": "60A06FF5-3755-4077-AXXX-4520CCC9CFXX",
      "battery": 91,
      "airplane": 0,
      "batterylevel": 8,
      "batterysaver": 1,
      "bluetooth": 1,
      "charging": 0,
      "darkmode": 0,
      "dnd": 0,
      "headset": 0,
      "inputLanguage": [
          "en"
      ],
      "ringmute": 0,
      "diskspace": 1821,
      "totaldisk": 128000
    }
  },
  "user": {
    "id": "50cf7979-18a7-51dd-9645-091009ad842f",
    "ext": {
      "sessionduration": 45,
      "agerating": "pg13"
    }
  },
  "at": 1,
  "tmax": 1500,
  "allimps": 0,
  "cur": [
    "USD"
  ],
  "bcat": [
    "IAB24",
    "IAB25",
    "IAB26"
  ]
}