Open RTB Request

The​ ​Open​ ​RTB​ ​request​ ​for​ ​video​ ​ads​ ​are​ ​fully​ ​compliant​ ​with​ ​Open​ ​RTB​ ​2.3​ ​standards.
Reference: OpenRTB API Specification Version 2.3.1

Definition ​of ​the ​Video Object

Field

Scope

Type

Description

mimes

required

String
array

Content ​MIME ​types ​supported.
Popular MIME types may include “video/x-ms-wmv” for Windows
Media​ ​and​ ​“video/x-flv”​ ​for​ ​flash​ ​video

minduration

recommended

integer

Minimum ​video ​ad ​duration ​in ​seconds

maxduration

recommended

integer

Maximum ​video ​ad ​duration ​in ​seconds

protocol

recommended

integer

Supported ​video ​bid ​response ​protocol.
At​ ​least​ ​one​ ​supported​ ​protocol​ ​must​ ​be​ ​specified​ ​in either​ ​the​ ​protocol​ ​or​ ​protocols​ ​attribute.

protocols

recommended

integer
array

Array ​of ​supported ​video ​bid ​response ​protocols.
At​ ​least​ ​one​ ​supported​ ​protocol​ ​must​ ​be​ ​specified​ ​in either​ ​the​ ​protocol​ ​or​ ​protocols​ ​attribute.

w

recommended

integer

Width ​of ​the ​video ​player ​in ​pixels.

h

recommended

integer

Height ​of ​the ​video ​player ​in ​pixels.

startdelay

recommended

integer

Indicates the start delay in seconds for pre-roll, mid-roll, or post-roll ​ad ​placements.

linearity

optional

integer

Indicates ​if ​the ​impression ​must ​be ​linear, ​nonlinear, ​etc. If​ ​none​ ​specified,​ ​assume​ ​all​ ​are​ ​allowed.

sequence

optional

integer

If multiple ad impressions are offered in the same bid
request, the sequence number will allow for the
coordinated ​delivery ​of ​multiple ​creatives.

battr

optional

integer
array

Blocked ​creative ​attributes.

maxextended

optional

integer

Maximum ​extended ​video ​ad ​duration ​if ​extension ​is
allowed. ​If ​blank ​or ​0, ​extension ​is ​not ​allowed.
If​ ​-1,​ ​extension​ ​is​ ​allowed,​ ​and​ ​there​ ​is​ ​no​ ​time​ ​limit​ ​imposed.​ ​If
greater​ ​than​ ​0,​ ​then​ ​the​ ​value​ ​represents​ ​the​ ​number​ ​of​ ​seconds​ ​of
extended​ ​play​ ​supported​ ​beyond​ ​the​ ​maxduration​ ​value.

maxbitrate

optional

integer

Maximum ​bit ​rate ​in ​Kbps.
Exchange​ ​may​ ​set​ ​this​ ​dynamically​ ​or​ ​universally​ ​across​ ​their​ ​set of​ ​publishers

boxingallowed

optional

integer

Indicates ​if ​letter-boxing ​of ​4:3 ​content ​into ​a ​16:9 ​window
is ​allowed, ​where ​0 ​= ​no, ​1 ​= ​yes.
Default​ ​=​ ​1

playbackmethod

optional

Integer
array

Allowed ​playback ​methods. ​If ​none ​specified, ​assume ​all
are ​allowed.

delivery

optional

Integer
array

Supported ​delivery ​methods ​(e.g., ​streaming, ​progressive).
If ​none ​specified, ​assume ​all ​are ​supported.

pos

optional

integer

Ad ​position ​on ​screen.

companionad

optional

object
array

Array ​of ​Banner ​objects, ​if ​companion ​ads ​are ​available

api

optional

integer
array

List ​of ​supported ​API ​frameworks ​for ​this ​impression.
If​ ​an​ ​API​ ​is​ ​not​ ​explicitly​ ​listed,​ ​it​ ​is​ ​assumed​ ​not​ ​to​ ​be​ ​supported.

companiontype

optional

integer
array

Supported ​VAST ​companion ​ad ​types.
Recommended​ ​if​ ​companion​ ​Banner​ ​objects​ ​are​ ​included​ ​via​ ​the
companionad​ ​array.

ext

optional

object

Placeholder ​for ​exchange-specific ​extensions ​to ​OpenRTB.

Sample Bid Request

{
  "app": {
    "bundle": "1171814682",
    "cat": [
      "IAB1",
      "IAB9",
      "IAB9-30",
      "entertainment",
      "games"
    ],
    "id": "bffed5705e61429b9b671eb527eb13f1",
    "name": "Paper.io iOS",
    "publisher": {
      "id": "d03f30f7972447d5869d73bdc5e18edd",
      "name": "Voodoo"
    },
    "storeurl": "https://itunes.apple.com/fr/app/paper.io/id1171814682?mt=8",
    "ver": "1.2.0"
  },
  "at": 2,
  "bcat": [
    "IAB25",
    "IAB26",
    "IAB9-9",
    "IAB3-7"
  ],
  "device": {
    "connectiontype": 2,
    "devicetype": 5,
    "dnt": 0,
    "geo": {
      "city": "Atlanta",
      "country": "USA",
      "metro": "524",
      "region": "GA",
      "zip": "30303"
    },
    "h": 1536,
    "hwv": "iPad Air 2 (WiFi)",
    "ifa": "09DA7A37-6F99-47C9-A02D-8228C1943780",
    "ip": "50.206.37.122",
    "js": 1,
    "language": "fr",
    "make": "Apple",
    "model": "iPad",
    "os": "iOS",
    "osv": "10.1.1",
    "pxratio": 2,
    "ua": "Mozilla/5.0 (iPad; CPU OS 10_1_1 like Mac OS X) AppleWebKit/602.2.14 (KHTML, like Gecko) Mobile/14B100",
    "w": 2048
  },
  "id": "958e3f27-90f9-4183-be4f-bd350f7cc170",
  "imp": [
    {
      "banner": {
        "api": [
          3,
          5
        ],
        "battr": [
          3,
          8,
          10,
          14
        ],
        "btype": [
          4
        ],
        "h": 320,
        "pos": 1,
        "w": 480
      },
      "bidfloor": 23.53,
      "displaymanager": "pubnative",
      "displaymanagerver": "3.0",
      "ext": {
        "brsrclk": 1,
        "dlp": 1
      },
      "id": "1",
      "instl": 1,
      "secure": 1,
      "tagid": "e3603302841547c4b2261df86d5be701",
      "video": {
        "api": [
          3,
          5
        ],
        "battr": [
          3,
          8,
          10,
          14
        ],
        "companiontype": [
          1,
          2,
          3
        ],
        "h": 320,
        "linearity": 1,
        "maxduration": 120,
        "mimes": [
          "video/3gpp",
          "video/3gpp2",
          "video/mp4",
          "video/quicktime",
          "video/x-m4v"
        ],
        "minduration": 16,
        "protocols": [
          2,
          5,
          3,
          6
        ],
        "w": 480
      }
    }
  ],
  "clientip": "50.206.37.122"
}

📘

About Rewarded Video placements

Please note that if the placement is for Rewarded Video, the following parameters and values will be added to the Bid Request body:

  • BidRequest.imp.video.ext.rewarded = 1
  • BidRequest.imp.video.ext.videotype = "rewarded"
  • BidRequest.imp.video.ext.skip = 0
  • BidRequest.imp.video.skip = 0

Open RTB Response

The structure and contents of the Bid Response is the same as in the OpenRTB standard. The difference is how ad creative is returned. The video is returned as a JSON-encoded string in the “adm” field of the Bid Object. NURL must be passed in every bid response which will be used to inform the partner of an auction win.

Definition ​of ​the ​Video Object

Field

Scope

Type

Description

adm

required

string

Contains the video creative

nurl

required

string

Win notice must be passed via the nurl field. Win notice URL called by the exchange if the bid wins.

Sample Bid Response

{
  "id": "958e3f27-90f9-4183-be4f-bd350f7cc170",
  "bidid": "[email protected]@[email protected]@[email protected]@[email protected]@[email protected]@097A7A37-6F99-47C9-A02D-8228C1943 [email protected]@15bc3bab",
  "cur": "USD",
  "seatbid": [
    {
      "seat": "mdotm1",
      "bid": [
        {
          "impid": "1",
          "adomain": [
            "twitter.com"
          ],
          "iurl": "http://platform.mdotm.com/promote/mock/15bc3bab",
          "crid": "MdotM:15bc3bab",
          "cid": "123160110",
          "adid": "15bc3bab",
          "cat": [
            "IAB14"
          ],
          "bundle": "333903271",
          "h": 320,
          "w": 480,
          "id": "mortb3bffed5705e61429b9b671eb527eb13f1-958e3f27-90f9-4183-be4f-bd350f7cc170",
          "price": 0.20875149757236,
          "nurl": "http://example.com/winnoticeurl",
          "adm": "\n<VAST version=\"2.0\">\n<Adid=\"15bc3bab\">\n<InLine>\n<AdSystem>CrossChannel</AdSystem>\n<AdTitle>CrossChannelVASTAd</AdTitle>\n<Error><![CDATA[https://ads.mdotm.com/ads/vast.php?code=err&appkey=mortb3bffed5705e61429b9b671eb527eb13f1&adid=15bc3bab&appid=333903271&aid=097A7A37-6F99-47C9-A02D-8228C1943780&partnerkey=mortb&campaignID=123160110&adgroupID=180589]]></Error>\n<Impression><![CDATA[https://ads.mdotm.com/ads/vast.php?code=impression&appkey=mortb3bffed5705e61429b9b671eb527eb13f1&adid=15bc3bab&appid=333903271&aid=097A7A37-6F99-47C9-A02D-8228C1943780&partnerkey=mortb&campaignID=123160110&adgroupID=180589&ra=0U0..W0A11.000M009P315...000000000590U0000ZN0.Z0]]></Impression>\n<Creatives>\n<CreativeAdID=\"15bc3bab\">\n<Linear>\n<Duration>00:00:16</Duration>\n<TrackingEvents>\n<Trackingevent=\"skip\"><![CDATA[https://ads.mdotm.com/ads/vast.php?code=skip&appkey=mortb3bffed5705e61429b9b671eb527eb13f1&adid=15bc3bab&appid=333903271&aid=097A7A37-6F99-47C9-A02D-8228C1943780&partnerkey=mortb&campaignID=123160110&adgroupID=180589&s=0&ra=0U0..W0A11.000M009P315...000000000590U0000ZN0.Z0]]></Tracking>\n<Trackingevent=\"engagedView\"><![CDATA[https://ads.mdotm.com/ads/vast.php?code=engagedView&appkey=mortb3bffed5705e61429b9b671eb527eb13f1&adid=15bc3bab&appid=333903271&aid=097A7A37-6F99-47C9-A02D-8228C1943780&partnerkey=mortb&campaignID=123160110&adgroupID=180589&s=0&ra=0U0..W0A11.000M009P315...000000000590U0000ZN0.Z0]]></Tracking>\n<Trackingevent=\"creativeView\"><![CDATA[https://ads.mdotm.com/ads/vast.php?code=creativeview&appkey=mortb3bffed5705e61429b9b671eb527eb13f1&adid=15bc3bab&appid=333903271&aid=097A7A37-6F99-47C9-A02D-8228C1943780&partnerkey=mortb&campaignID=123160110&adgroupID=180589&s=0&ra=0U0..W0A11.000M009P315...000000000590U0000ZN0.Z0]]></Tracking>\n<Trackingevent=\"start\"><![CDATA[https://ads.mdotm.com/ads/vast.php?code=start&appkey=mortb3bffed5705e61429b9b671eb527eb13f1&adid=15bc3bab&appid=333903271&aid=097A7A37-6F99-47C9-A02D-8228C1943780&partnerkey=mortb&campaignID=123160110&adgroupID=180589&s=0&ra=0U0..W0A11.000M009P315...000000000590U0000ZN0.Z0]]></Tracking>\n<Trackingevent=\"midpoint\"><![CDATA[https://ads.mdotm.com/ads/vast.php?code=midpoint&appkey=mortb3bffed5705e61429b9b671eb527eb13f1&adid=15bc3bab&appid=333903271&aid=097A7A37-6F99-47C9-A02D-8228C1943780&partnerkey=mortb&campaignID=123160110&adgroupID=180589&s=0&ra=0U0..W0A11.000M009P315...000000000590U0000ZN0.Z0]]></Tracking>\n<Trackingevent=\"firstQuartile\"><![CDATA[https://lb-www6.mdotm.com/ads/vast.php?code=firstQuartile&appkey=mortb3bffed5705e61429b9b671eb527eb13f1&adid=15bc3bab&creativeID=e6e296c5&appid=333903271&aid=097A7A37-6F99-47C9-A02D-8228C1943780&partnerkey=mortb&campaignID=123160110&adgroupID=180589&s=0&v=20&ra=0U0..W0A11.000M009P315...000000000590U0000ZN0.Z0&ua=Mozilla%2F5.0+%28iPad%3B+CPU+OS+10_1_1+like+Mac+OS+X%29+AppleWebKit%2F602.2.14+%28KHTML%2C+like+Gecko%29+Mobile%2F14B100]]></Tracking>\n<Trackingevent=\"thirdQuartile\"><![CDATA[https://ads.mdotm.com/ads/vast.php?code=thirdQuartile&appkey=mortb3bffed5705e61429b9b671eb527eb13f1&adid=15bc3bab&appid=333903271&aid=097A7A37-6F99-47C9-A02D-8228C1943780&partnerkey=mortb&campaignID=123160110&adgroupID=180589&s=0&ra=0U0..W0A11.000M009P315...000000000590U0000ZN0.Z0]]></Tracking>\n<Trackingevent=\"complete\"><![CDATA[https://ads.mdotm.com/ads/vast.php?code=complete&appkey=mortb3bffed5705e61429b9b671eb527eb13f1&adid=15bc3bab&appid=333903271&aid=097A7A37-6F99-47C9-A02D-8228C1943780&partnerkey=mortb&campaignID=123160110&adgroupID=180589&s=0&ra=0U0..W0A11.000M009P315...000000000590U0000ZN0.Z0]]></Tracking>\n</TrackingEvents>\n<VideoClicks>\n<ClickThrough><![CDATA[https://c.mdotm.com/ads/c.php?a=mortb&b=mortb3bffed5705e61429b9b671eb527eb13f1&c=15bc3bab&d=097A7A37-6F99-47C9-A02D-8228C1943780&ct=0&nb=1&vdu=16&gf=https%3A%2F%2Fcdn.mdotm.com%2F88518%2FTW_Politics_15_1280x720_20161010_13_26_14.mp4&its=1484329114&f=966c8974f202720f15bc3bab01130938&ra=0U0..W0A11.000M009P315...000000000590U0000ZN0.Z0&aid=097A7A37-6F99-47C9-A02D-8228C1943780&campaignID=123160110&adgroupID=180589&adGroup=Twitter_iOS_Campaign+A_US&campaignCode=iOS_Campaign+A&defcpa=0&defcpc=0&appid=333903271&creativeID=e6e296c5&adType=VideoInterstitial&countrycode=US&ccimpid=X96142840fc974428888888801130938&accountid=3599&siteaccountid=10&pubappid=1171814682&sg=3&it=mi&inf=0&cg=CampaignA%26B-+News&at=5&adType=VideoInterstitial&creativeID=e6e296c5]]></ClickThrough>\n<ClickTracking><![CDATA[https://ads.mdotm.com/ads/vast.php?code=click&appkey=mortb3bffed5705e61429b9b671eb527eb13f1&adid=15bc3bab&appid=333903271&aid=097A7A37-6F99-47C9-A02D-8228C1943780&partnerkey=mortb&campaignID=123160110&adgroupID=180589&ra=0U0..W0A11.000M009P315...000000000590U0000ZN0.Z0]]></ClickTracking>\n</VideoClicks>\n<MediaFiles>\n<MediaFiledelivery=\"progressive\"type=\"video/mp4\"bitrate=\"500\"width=\"480\"height=\"320\"scalable=\"true\"maintainAspectRatio=\"true\"><![CDATA[https://cdn.mdotm.com/88518/TW_Politics_15_1280x720_20161010_13_26_14.mp4]]></MediaFile>\n</MediaFiles>\n</Linear>\n</Creative>\n<CreativeAdID=\"15bc3bab\">\n<CompanionAds>\n<Companionwidth=\"480\"height=\"320\">\n<StaticResourcecreativeType=\"image/jpeg\"><![CDATA[https://cdn.mdotm.com/88518/Q2_news_EP_480x320_20161020_18_15_30.gif]]></StaticResource>\n<TrackingEvents>\n<Trackingevent=\"creativeView\"><![CDATA[https://ads.mdotm.com/ads/vast.php?code=firstCompanionCreativeView&appkey=mortb3bffed5705e61429b9b671eb527eb13f1&adid=15bc3bab&appid=333903271&aid=097A7A37-6F99-47C9-A02D-8228C1943780&partnerkey=mortb&campaignID=123160110&adgroupID=180589]]></Tracking>\n</TrackingEvents>\n<CompanionClickThrough><![CDATA[https://c.mdotm.com/ads/c.php?a=mortb&b=mortb3bffed5705e61429b9b671eb527eb13f1&c=15bc3bab&d=097A7A37-6F99-47C9-A02D-8228C1943780&ct=0&nb=1&vdu=16&gf=https%3A%2F%2Fcdn.mdotm.com%2F88518%2FTW_Politics_15_1280x720_20161010_13_26_14.mp4&its=1484329114&f=966c8974f202720f15bc3bab01130938&ra=0U0..W0A11.000M009P315...000000000590U0000ZN0.Z0&aid=097A7A37-6F99-47C9-A02D-8228C1943780&campaignID=123160110&adgroupID=180589&adGroup=Twitter_iOS_Campaign+A_US&campaignCode=iOS_Campaign+A&defcpa=0&defcpc=0&appid=333903271&creativeID=e6e296c5&adType=VideoInterstitial&countrycode=US&ccimpid=X96142840fc974428888888801130938&accountid=3599&siteaccountid=10&pubappid=1171814682&sg=3&it=mi&inf=0&cg=CampaignA%26B-+News&at=5&adType=VideoInterstitial&creativeID=e6e296c5&companionCreativeID=1d9bd8ea]]></CompanionClickThrough>\n</Companion>\n</CompanionAds>\n</Creative>\n</Creatives>\n</InLine>\n</Ad>\n</VAST>\n"
        }
      ],
      "crtype": "VAST 2.0",
      "duration": "16"
    }
  ],
  "attr": [
    6
  ]
}

Timeouts

PubNative RTB has a default of 100 milliseconds and uses data centers in Virginia and Singapore. If you are not able to balance traffic by IP address, you need to provide us different endpoints per region. It is also possible to support only one region; in this case, get in touch with your PubNative point of contact.