ZEDO’s Demand Side Platform (DSP), powered by our world-class technology, provides Supply Side Platforms with access to ZEDO’s premium high-quality display, video and InApp/CTV demand.

 

Integration Specifications

ZEDO’s Demand Side Platform is OpenRTB 2.3 compliant. It is also backward compatible with OpenRTB 2.2 and OpenRTB 2.0 (without deals) format if needed.

For complete details and specifications please refer:

http://www.iab.net/rtbproject

http://www.iab.net/media/file/OpenRTBAPISpecificationVersion2_2.pdf

http://www.iab.net/media/file/OpenRTB-API-Specification-Version-2-3.pdf

 

Bid Request

ZEDO RTB bid request to the buyer will include all the fields marked as Required in the OpenRTB standard document, as well as the Recommended and Optional fields that are defined below. Additional fields can be added on request.

Field Attribute Description
site  id Site ID
 name Site Name
 domain Domain of site
 cat IAB content category ID (List 5.1 in IAB OpenRTB 2.3)
 page Page URL where the impression will be shown
 ref Referrer URL that caused navigation to the current page
 publisher Complete object [containing id, name, cat and domain]
 app  id App ID
 name App Name
 bundle Application bundle or Package name on app store
 domain Domain of the app
 cat IAB content category ID (List 5.1 in IAB OpenRTB 2.3)
 privacypolicy Indicates if the app has a privacy policy (0-No, 1=Yes)
 paid Indicates if app is paid or free (0=free, 1=paid)
 publisher Complete object [contianing id, name, cat and domain]
user  id Zedo’s User ID. IDFA or Android Id for the App traffic
device  ua Browser User Agent string
 ip IPv4 address closest to device
 language Browser language using ISO-639-1-alpha-2
 js Support for javascript, where 0=No, 1=Yes
 devicetype The general type of device
 make Device make (e.g. “Apple”)
 os Device Operating System (e.g. “iOS”)
 osv Device Operating System version (e.g. “3.1.2”)
 ifa ID sanctioned for advertiser use, for example Apple’s IDFA or Android’s Advertising ID
 h Physical height of the screen in pixels
 w Physical width of the screen in pixels
 ppi Screen size as pixels per linear inch
 pxratio The ratio of physical pixels to device independent pixels
at Auction type 1 or 2 as per mutual decision
tmax Maximum timeout in ms
bcat Blocked Advertiser categories values as per IAB content categories
badv Blocked top level domains. Comma separated domain names

 

Under the mandatory “imp” object, the following sub-fields will be included. Either ‘banner, video or native’ will be present depending on the request.

Field Sub-Field Description
banner w Width of creative
h Height of creative
battr Blocked creative attributes.
video mimes List of supported MIME types
linearity 1 for linear, 2 for non-linear
minduration Minimum ad duration in seconds
maxduration Maximum ad duration in seconds
protocol Supported response VAST versions e.g. VAST 2.0/VAST 3.0 wrapper etc
w Width of the player
h Height of the player
companionad Supported VAST companion ad type
battr Blocked creative attributes
playbackmethod Allowed playback methods. If not specified, assume all are allowed
api List of supported api frameworks for this impression

 

Private Marketplace (PMP)

For the Private Deals (using Deal Id), pmp object will be included under the “imp” object.

Field Sub-Field Description
private_auction 1 indicates strictly private auction. 0 indicates that all the bids are accepted, not only the private ones
deals Collection of “deal” objects

 

The Deals object can contain 1 or many Deal objects described below:

Field Sub-Field Description
deal id Deal ID string
bidfloor Bid floor for this impression (in CPM)
at Auction type for this impression
seat (optional) Array of buyer seats allowed to bid
wadomain (optional) Array of advertiser domains allowed to bid

 

We do not support, ext field under pmp object yet, that is used for sending custom JSON. It can be added if required for any use case.

Display Bid Request Example

 

{
  "id": "BID-1-ZIMP-585f8d50-2fed-4ef1-a4ce-0f4894f88a3f",
  "at": 2,
  "tmax": 180,
  "imp": [{
    "id": "ZIMP-585f8d50-2fed-4ef1-a4ce-0f4894f88a3f",
    "bidfloor": "1.00",
    "banner": {
      "w": 300,
      "h": 250,
      "pos": 1
    }
  }],
  "site": {
    "id": "50",
    "name": "TestSite",
    "domain": "website.com",
    "cat": [""],
    "page": "http://www.website.com/",
    "ref": "",
    "publisher": {
      "id": "29",
      "name": "ZEDO Test Publisher_2",
      "cat": [
        "IAB2-1"
      ],
      "domain": "zedo.com"
    }
  },
  "device": {
    "ua": "Mozilla/5.0 (Windows NT 6.2; rv:28.0) Gecko/20100101 Firefox/28.0",
    "ip": "124.124.231.237",
    "language": "en-us,en;q=0.5"
  },
  "user": {
    "id": "fba66dad-2093-40da-8ec7-407157cd3513",
    "buyeruid": "Wn5pZ1JwQnlLEGRJAgB4WQU"
  }
  "bcat": [
    "IAB21",
    "IAB29",
    "IAB9-9"
  ]
  "badv": [
    "youtube.com",
    "example.com"
  ]
}

 

For the Video request, the section marked in blue in the example above differs and it contains the “video” object in place of “banner”.

video":{
  "mimes":["video/x-ms-wmv","video/x-flv","application/x-shockwave-flash","video/mp4"],
  "linearity":1,
  "minduration":5,
  "maxduration":30,
  "protocol":[5],
  "w":300,
  "h":250
 }

 

PMP Request Sample

"imp": [{
  .
  .
  .
  "pmp":{
    "private_auction":1,
    "deals":[ {
      "id":"Agency1",
      "bidfloor":1.5,
      "wseat":[ "Agency1" ],
      "at":1,
    },
    {
      "id":"Agency2",
      "bidfloor":1,
      "wseat":[ "Agency2" ],
      "at":2
    }]
  }
]}

 

 

In-App Request Sample

Similarly, for In-App Bid Request the section marked in orange in the display example above differs and it contains the “App” object in place of “Site”.

"app":{ 
  "id":"8654",
  "name":"App Name",
  "bundle":"app.domain.com",
  "domain":"domain.com",
  "storeurl":"app.store.com",
  "cat":[ 
    "IAB12"
  ],
  "sectioncat":"",
  "pagecat":"",
  "ver":"",
  "privacypolicy":"1",
  "paid":"0",
  "publisher":{ 
  "id":"7846",
  "name":"Publisher A",
  "cat":[ 
    "IAB12"
  ],
  "domain":"pubdomain.com"
}

 

For complete details and specifications please refer:

http://www.iab.net/media/file/OpenRTB-Native-Ads-Specification-1_0-Final.pdf

 

Bid Response

  • We support a JSON Format as per OpenRTB standard. Multiple bids are supported.
  • We give higher priority to PMP Bids than OpenMarket.
  • For Video response, please follow the table below.
Adm nURL
BANNER REQ NA
VAST INLINE REQUIRED
VAST WRAPPER REQUIRED

 

  • Default Pricing Units:
    • Price in ‘adm’ field – CPM
    • Bidfloor in bid request – CPM
    • Price in bid response – CPM

 

Refer example:

1) bid request sent with floor prince $0.01

2) bid received by ZEDO with bid price = $2.0 (CPM)

3) win price settled at $1.5 (CPM)

4) macro will be replaced with value $1.5 (CPM)

 

If 1000 wins are recorded the revenue in ($) will be $1.5

 

Our Bid Response object follows the model specified by IAB OpenRTB Specification version 2.3. For details see below:

Field Sub-Field Description
BidResponse id ID of the bid request to which this is a response
bidid Bidder generated response ID to assist with logging/tracking
seatbid Array of seatbid objects; 1+ is required if a bid is to be made
cur Bid currency

 

The seatbid object should contain an array of Bids:

Field Sub-Field Description
Bid impid ID of the Imp object in the related bid request
price Bid price expressed as CPM
nurl Win notice URL called by the exchange if the bid wins
adm Optional means of conveying ad markup
adomain Advertiser domain for blocklist checking
dealid Reference to the deal.id from the bid request if this bid pertains to a private marketplace direct deal

 

Bid Response Sample

{
    “id”: “952001432”,
    “seatbid”: [
    {
         “bid”: [
          {
             “id”: “SimpleBid#1288003”,
             “impid”: “1”,
             “price”: 19000000,
             “dealid”: “787878”,
             “adid”: “1288003”,
             “adm”: “<html><head><meta http-equiv=”Content-Type” content=”text/html;charset=utf-8″></head><body><iframe src=’http://az.iozo.com/asw/log/gecko/it.json?a=1288003&x=2304&g=78&c1=952001432&c2=952001432&i=0&d=9&n=952&s=0&m=20&w=16&u=Jq60eWmrSjiwNfDTfDcurw**~050719&cv=null&1=7&2=1&zft=-1&zcft=-1&zxf=0&zxd=0&zxchs=1432&zcxf=0&zcxd=0&dp=&ai=%7C0%7C%7C%7C%7C%7C&pRate=null&ctg=zSample%3A93&al=30&nt=0&tsad=0&z=0.434847693619421&ld=lz.iozo.com&h=1100977&f=1256228&prfl=&os=9&ct=16&dct=2067&dmf=&dvm=&dsr=&djs=2063&dhs=2065&pu=http%3A%2F%2Fwww.foobar.com%2F1234.html+&ru=&exp=1&tz=-05_00&csv=1&att=19&rprr=20000000&zpu=&tpu=1&osn=Mac+OS+X&osv=10.6&tuuid=&brn=Firefox&brv=3.6&tid=&wp=&mdt=[MT]&zet=[ZEventTrac]&et=[ET]&met=[MET]&dsp=&q=&ren=1&did=’ style=’display:none;’ height=’0′ width=’0′ frameborder=0 marginheight=0 marginwidth=0 scrolling=’no’ allowTransparency=’true’></iframe><a href=”http://az.iozo.com/asw/ads4/c?a=1288003;x=2304;g=78;c=952001432,952001432;i=0;n=952;s=0;zpn=;zpc=;zps=;zpd=;1=7;2=1;tg=1557214820;vr=1;m=20;w=16;os=9;ct=16;u=Jq60eWmrSjiwNfDTfDcurw**~050719;z=0.8440674558351944;ainfo=;csv=1;dct=2067;dmf=;dvm=;dsr=;djs=2063;dhs=2065;q=;ctg=zsample%3A93%5E;osn=Mac+OS+X;osv=10.6;brn=Firefox;brv=3.6;pu=http%3A%2F%2Fwww.foobar.com%2F1234.html+;ru=;k=http://www.google.com” target=”_blank” onMouseOver=’window.status=” Ad powered by ZEDO”; return true;’ onMouseOut=’window.status=””; return true;’><img width=”300″ height=”250″ src=”http://uz.iozo.com/OzoDB/5/3/1288003/V1/Gaana.jpg” border=”0″ alt=”Click Here!” title=”Click Here!” ></a></body></html>”
            }
            ],
      “seat”: “1”
      }
      ],
  “bidid”: “zdBT-979”
}
0 0