Using Pubnative APIv3 you can either do client side or server side integration
This document will provide you the necessary information about API v3 for accessing our native demand.
Improvements
- Support for contentinfo
- Support for multiple impression trackers and click trackers
- Client-side impression and click ocnfirmation enabling access to more extensive demand
- Improved user and display confirmation granting access to more CPM and CPC demand partners
Base URL
http://api.pubnative.net/api/v3/native?{params}
Additional Request Parameters
Parameter | Format | Description |
---|---|---|
apptoken | String Required | This is your internal app token which you fetch from the publisher dashboard. |
os | String Required | The operating system of requesting device, i.e. ios, android |
osver | String Required | The operating system version of the requesting device |
devicemodel | String Required | The model name of the device |
dnt | String Required | 0 - Track user ; 1 - Do not track user |
al | String Required | Ad layouts that need to be requested. To access native demand we recommend "m" Possible values are - s,m,l For more info about ad layouts |
mf | String | Specify the meta data. i.e. points, revenuemodel, campaignid, creativeid, contentinfo |
zoneid | String Required | The ad zone identifier. Zones need to be created in Pubnative Dashboard prior to use. |
idfa | String. Required when request generated from a Apple device | Apple ID for Advertising. |
gid | String. Required when request generated from a Android device | Android ID for Advertising. |
srvi | Boolean | 1 - server to server integration. If set to 1, need to pass set ip and ua |
adcount | String | Number of Apps to return. Possible values: 1 (default) to 20 |
ua | String | User Agent String. Required when srvi is set to 1 |
bundleid | String | The bundle identifier of the requesting app. i.e. com.my.app, 422689480 |
ip | String | IP address of the client device |
locale | String | The locale used. i.e. DE |
lat | String | The current latitude of the requesting device. Don´t send param if value is unknown. |
long | String | The current longitude of the requesting device. Don´t send param if value is unknown. |
gender | String | The user's gender. Possible values: "male", "female", "other" |
age | String | The user's age |
keywords | String | A comma separated list of keywords |
secure | String | Default is http. Can use https secure parameter for overding |
idfamd5 | String | Apple ID for Advertising (md5) |
idfasha1 | String | Apple ID for Advertising (sha1) |
gidmd5 | String | Android Advertiser Id(md5) |
gidsha1 | String | Android Advertiser Id(sha1) |
coppa | String | Flag indicating if this request is subject to the COPPA regulations established by the FTC, where 0 = no, 1 = yes. |
Sample Request
GET /api/v3/native?apptoken=YOURAPPTOKEN&os=android&devicemodel=iphone&osver=9.1&dnt=1&zoneid=1&mf=points,revenuemodel,campaignid,creativeid&al=m HTTP/1.1
Host: api.pubnative.net
Cache-Control: no-cache
GET /api/v3/native?apptoken=YOURAPPTOKEN&os=Android&devicemodel=iphone&osver=9.1&dnt=0&mf=points,revenuemodel,campaignid,creativeid&al=m&srvi=1&zoneid=1&ua=Mozilla&ip=88.134.178.169&gid=E2BF1F85-2D66-49CA-A44E-13E30906230B
Host: api.pubnative.net
Cache-Control: no-cache
- "srvi" param needs to be set to '1'
- "ua" and "ip" params need to be set
Response
Below are sample responses for ad layouts type - s, m, l
{
"status": "ok",
"ads": [
{
"link": "http://tr.pubnative.net/click/s2s?aid=1004319&t=Y3j8NEmpUJcxUeTbk8iAfl8IxnITsF9v2yBrnz7VwjRtltJfTtpptKcQGCEjlJBCRaiXhfAoRV_2BiyLv-dhfkPs8h4xCF8l6meTuZLjsCXbWcSBknDsJy4_0oKJYfMLTbgX-ic_xY6oONdR1mnb1OinmDFYg7dIOJt4OqyOPEWUcLlBeqg9QNgt_uX8xu2s-4WSUsNu9oIDa-ZhtkLZSwe2pYac1c6oaOyi2Ssb03abSoUHCk0xGo_Rp7rpFNkrVi1TVXRKSUXb6_QWhkUQg6jJjEMAqI1PsC1W8EtSDUAZ0UQfBGf6A-MsZgc8rkn8C1tTppOL7RG0WAmd4KRNwcSp5nMwRxH8vzA947tgTJqekpOZvimbISsGDm2KWVBrEodv3fBeYDUBhpybEWH6GVkampQt2O27BbsKHAI0dRDKfR8iUFk5Ro4zBrqIEEXpcXKZVuBYIH0Omhka2VPeuRNLVqIR_RJv2SOt496tseTpM7uqSXLGxL7DSyRl7l1DrfHNyYa-_F2mGACa09w-edE_gX8dzeergsghd42XFA0ymqN6Q3NSmA0uWsDlz_-BrE44XPkzKYVa7XRudyA8FIR5yPvlfCpEB0qCfQBUUdJ5vhyQwQbYaqxzhR-Ldt0FKyWXsoR6C4_aOkrW_oiGfJG9s2mmrdrAO2ypfHMxeWEY0zWs-m0BD6I8Sj89r5S3TluSiU2_TfX07Wgz09dUea1wQ1gS0A_jkOE_n3LVC7PoKClvVErJNjDJtA1eYF2S1GBitOmAH_JcASvnGlcc-qTZMJapirdi7jxtFSH--BhTxgS-98-nn__thftGvqePCvLzTpMz4N1pIPxfN-kxl14UwkqaZakxY24G56c88sILzPQ_mvnYg9jutOZ6ox6emerO28BOtTjTF3x5-JhB-PfH1BpktC--6LnrTq-O4_ubg8KiMY_ZfaNV3KEfU_4OxVBNON3HYqXR0PHX5Yz3Zjf0y5TK8UzcyKvasA4KkbSa4c0O5swReJN5DXUI2x-lXtl8SGzR0b6gQrzYA9zDUmseDR5afdGD6Nk7fV3amg7ebDqWZpIdZ0XEoQVG00SMjH1GXlCYS6_xqd4qTMtMliH6gyXR",
"assetgroupid": 1,
"assets": [
{
"type": "icon",
"data": {
"w": 80,
"h": 80,
"url": "http://d1.cnnx.io/image/obj/6705665130;sq=100?mid=300829"
}
},
{
"type": "title",
"data": {
"text": "Sonax Scheiben- und FensterTuch 1 Stück"
}
},
{
"type": "cta",
"data": {
"text": "Learn More"
}
}
],
"meta": [
{
"type": "contentinfo",
"data": {
"link": "http://pubnative.net/content-info",
"icon": "http://cdn.pubnative.net/static/adserver/contentinfo.png",
"text": "Learn about this ad"
}
}
],
"beacons": [
{
"type": "impression",
"data": {
"url": "http://tr.pubnative.net/impression?aid=1004319&t=Q1oQ8Hde_eT8gdYu8sqsQ5g6BUcy9_7EUXT4PFVrUFj8Cu9hJaL8d9m5AiWRcJcm7Z8Nrcg2lz2cIqVhc_-3zX09x9Ck79tFgqBm5LV5ut9PAhjpdGwWCoJRFm_wMd_nMXOY1rafFQS6424LgYZHuffzHoub7xXK9H38LAdnRzMPUwjN1f7WKtiUismkcz0O6ZRCgmEplBA7WooWdvj9zVX2kEgJe_DlzD2sRzcAzlFFEmHzZgxz56dDdZcXRRi8FYUe4R0oVfQR-aUEWwDepadnVoT9Qsi-2gfWInThGuf1AZz8q-eKO13gb8geNzcHT-iJx1kJR7SpDI86l3eXetWlEiUVuZHpmhK-N5aV5I3pm8pNMKa_-l2wBDwYBW-yIMqpRYKo3td8ws-4syx9YWDU_iFj7JjShINdsbqwWhx67m52S30ek0PCzOhOEnEfc90v4JEoMOxS&tl=460"
}
}
]
}
]
}
{
"status": "ok",
"ads": [
{
"link": "http://tr.pubnative.net/click/native?aid=1004319&t=MOPD_cKr-eWMtv3sqzuWXuDVUW_LiNxASK3_o6wlkELmaWlflIeGYSAltF1QsytWKUh24IYsVu_zdDHxT_plbKIL6P0Wg0NRs4Yqo3GvYPYsDELH-V3sFNH4CzW_Cdu8btMyXnK5qbTirbr3uQeee8-gEcOae0pC5nr44AklC6qK4RMWy0fUyfU-iU5fs8ewVY8EkpBc6G0EWxDZEyHn3QCQM5bs_qAjMTrov2xPeL4IyPsyVngrXNpMvn_-GIcOysBK3fzIRAlipO_r8rWOTU_gqGPexDhGcw-Etp0pKJRsC6hbGJi9SIkZ-_UHS9Wotn6c9a9S_OcFAoVZt2DEKTbvyslDyc32Kesq3AUeORS7Q9vVGpb4MI8htz4BRAw8bc64z9wlZu8rPNJzSwNpJoJSI8pzh0A215_VQcOCy3Ae3BykUOtxcJL3HGNnjhaTaRnSiAo_vBesg2ejpk3HES0O0o5JeekypdsLyaJv5j4ZPf3mHB6LwpKaN5cr-4vtDb3sIaCSDyVK5wrxnOOqZGF6BFiqyliwnEDWjIumklsJb1L08JxXNgsb7roPc365ai58_DAyBrKNey1JbynFB143qkBmIzdYSTei4kITYTobOM5bBlb85heEWV_4_2Y23-kgeGACHm9DG4n5jDbVI_gZCAKSmqq9mQ3kRU_SZ91PRBgmSrdaPBeMGTANFH1qSKCC1yVL7zallvU0BcZjuRrYttzoDZI",
"assetgroupid": 5,
"assets": [
{
"type": "icon",
"data": {
"w": 80,
"h": 80,
"url": "http://cdn.pubnative.net/games/icons/001/003/654/dimension_80x80.jpg?20161020002159"
}
},
{
"type": "banner",
"data": {
"w": 1200,
"h": 627,
"url": "http://cdn.pubnative.net/games/promo_images_landscape/001/003/654/dimension_1200x627.jpg?20160622173518"
}
},
{
"type": "title",
"data": {
"text": "Yandex.Browser"
}
},
{
"type": "description",
"data": {
"text": "Suchst Du eine neue, coole App? Lade mich jetzt runter."
}
},
{
"type": "rating",
"data": {
"number": 4
}
},
{
"type": "cta",
"data": {
"text": "Installieren"
}
}
],
"meta": [
{
"type": "contentinfo",
"data": {
"link": "http://pubnative.net/content-info",
"icon": "http://cdn.pubnative.net/static/adserver/contentinfo.png",
"text": "Learn about this ad"
}
}
],
"beacons": [
{
"type": "impression",
"data": {
"url": "http://tr.pubnative.net/impression?aid=1004319&t=850LJyZtlV7VTjsCnU0ENjImKPDAuvtZi0cEPKN4R4BUzDw7_94DOb2w_mSXhiLCANHavvkqa8O7fdUrpL5bhoQoO9_Rf-aJSujnPfUHhCZaHwTwAx_qRU-Yn2cmrSFWBT3VR7NSOF536DUxFHI3LUA7TeRx6zOEoUFm_YFphMSEwnIK3uFN-BNv2FmCjnG-3JfaZwMclHpjUiHDzRFUvQOR5xEahdG8JiIkc36YwJYfSW61tLoTHqmnxIIGHl6OXVjM-8SSYnabYjY2U-CMt2RaUSwFzbIh-pDGq1TK2--p1LqFPJiingdp9CtF2JaV2Z4yMzsJlwQ69pXjMm5LjhC4pDapvq4mMRchRpdXoPle3mmcqRfH412UokAVH-saN6VkrRjB_4IA-MbW7pvTZt7NAijquOgWmpeBniEPgZvkHhojPiWkGh_82tjjn8T-_PvFpII&tl=455"
}
}
]
}
]
}
{
"status": "ok",
"ads": [
{
"link": "http://tr.pubnative.net/click/native?aid=1004319&t=WTaJGCqlPrH8XmK54F09hlAg0x_iGpd1wKAF0HzaUc-sYzv-WlHY9kS1EiktZxbe3wqJ3LxBxGpcZfjADJuRMaGr8SCnA8dq9caT9gMCzLYrH1m8CwUwJNg0OPCbiOn-MhWTOy6TM70XZRkLLKxp2hRNltOx2Wryn6dEebHsrN5OqMPZ6DNDQhGTWSHS6PipHK-_HtjiKQCykbNf3C4_RfqQ-jTVzWw2Q7hkFXDFfg1TC4pc7IcnkFZgxUDeqwJ53dzEku50Ll8JJijBYfDaPPzeYnw0AXjjSqUTha1Z1S0CJmugK4nL9LViOWbCQ_xtxEW-ItC2llgnrOqCF-AhTD5CJGT0gstj7LGsK2Q_-wNeEZ2pq2pJPYaBhv0ozQsvsSUay0nIWRTqs5pAryKykqwMqHWTfw7xxCXIs-UrgJFnzRC2Irn2g1gGChnoaOskTW1EpRN2nhnsLG9yhUZkazHF7XyHY3rvrUd5na65UKXGRdd3xaC-J_JQWxQFKOtekQfGcvX7eGx3D8vRWvLqJRXVWPI4pp6HHgu0wl3ojRDu7e8FoxbBq6Hy5AjCkqbIDWd3AhJHZXOEC7sCY1m2PBnvuIxF_dNPdMAr0ZU9xk9lD5bxHbp3oOen3Z2j0XSurTCHO2-bhEJSEeOLYMy3QGRzHPK5v6UeFO8rvdMorhD7w-fze8m3SV7RPZNxOg",
"assetgroupid": 16,
"assets": [
{
"type": "icon",
"data": {
"w": 80,
"h": 80,
"url": "http://cdn.pubnative.net/games/icons/001/004/457/dimension_80x80.jpg?20161020023441"
}
},
{
"type": "banner",
"data": {
"w": 1200,
"h": 627,
"url": "http://cdn.pubnative.net/games/promo_images_landscape/001/004/457/dimension_1200x627.jpg?20160622175810"
}
},
{
"type": "title",
"data": {
"text": "Hearthstone Heroes of Warcraft"
}
},
{
"type": "description",
"data": {
"text": "TÄUSCHEND EINFACH. WAHNSINNIG UNTERHALTSAM. Nimm deine Karten und stelle dich der Herausforderung!"
}
},
{
"type": "rating",
"data": {
"number": 4
}
},
{
"type": "cta",
"data": {
"text": "Installieren"
}
}
],
"meta": [
{
"type": "contentinfo",
"data": {
"link": "http://pubnative.net/content-info",
"icon": "http://cdn.pubnative.net/static/adserver/contentinfo.png",
"text": "Learn about this ad"
}
}
],
"beacons": [
{
"type": "impression",
"data": {
"url": "http://tr.pubnative.net/impression?aid=1004319&t=nEwDu8f3q3lOFWu9DyK7zdRC35g5CMeNRBkaY6Uh0DJD46AOz7xasaXWTAkIzBAplpxgBinSgq88evjam4WqmaYzXinpA2ygZBVTHyGNN_ckpG3y8JQW5C_-jhKEdqznVoPy8pba5SdNPjZg5mAShNPq6S7CHo5Y6ZnccoqZh5dyEi5VYHrAdFcM_6oBDdg1OFirXh3ifCsfKXiwE_ZQSOz7jDXjwmX1pAm0loPZvIj0sEYUvHjpDTx0IRaFt0M7ZgU7ZvbhWfXwaILek-ok7BPc2P3tHTOBQYsC49hhuzqy7Yf-dCF6OSh56jnPVsIGT6ee-x1PDfWnz5Ylto2UUt6mR59Rm1-pP_G4od2r_CsSkbnpqHbHmWLPhjHDg_do4t8aZDYXOE1Hoh_RHLEVO1HsiZ1ekMudY2cIV0P5HVIdWMKB-s2ggNpAgnqz-kaQ3hac9alapQ&tl=458"
}
}
]
}
]
}
Field/Object | Description | Format | |
---|---|---|---|
link | Click through URL | string | |
assets object | Asset object contains information of all assets requested via the 'al' parameter. The asset group id served will be mentioned. | string | |
meta object | Meta object contains information of all meta properties requested via the 'mf' parameter | string | |
beacons object | Beacons Object contains URL beacon used to confirm impressions and clicks | url | YES |
Asset Type
- For accessing our native demand publisher should support following asset type:
icon, title, description, rating, banner. - In case of cross-format support following asset type should also be supported:
standardBanner, htmlBanner and vast2. Please refer to Client API section for detailed information about asset group and formats supported Pubnative - The asset type will be mentioned explicitly.
- In the case of icon, banner, standardBanner, htmlBanner sizes will be returned in the response.
##Sample icon
{
"type": "icon",
"data": {
"w": 80,
"h": 80,
"url": "http://cdn.pubnative.net/games/icons/001/010/700/dimension_80x80.jpg?20160706190952"
}
}
##Sample Banner
{
"type": "banner",
"data": {
"w": 1200,
"h": 627,
"url": "http://cdn.pubnative.net/games/promo_images_landscape/001/010/700/dimension_1200x627.jpg?20160622183653"
}
}
##Sample StandardBanner
{
"type": "standardbanner",
"data": {
"w": 300,
"h": 250,
"url": "http://cdn.pubnative.net/games/promo_images_landscape/001/010ssssnsion_1200x627.jpg?20160622183653"
}
}
##Sample HtmlBanner
"type": "htmlbanner",
"data": {
"w": 300,
"h": 250,
"html": "<span class=\"PubAPIAd\"><STYLE>body{margin: auto;}</STYLE><DIV><A target=\"_blank\" href=\"http://track.NETWORK.com/AdServer/AdDisplayTrackerServlet?clickData=JnB1YklkPTE1NTk3NSZzaXRlSWQ9MTU5NjA2JmFkSWQ9ODIwMjE1JmthZHNpemVpZD05JnRsZElkPTAmY2FtcGFpZ25JZD0xNTIwOCZjcmVhdGl2ZUlkPTAmYWRTZXJ2ZXJJZD0yNDMmaW1waWQ9MkY4QjNBMTktQ0EyNy00MzEzLUE1RTEtMEIyNkQ4QzRBNzNEJm1vYmZsYWc9MSZpc21vYmlsZWFwcD0xJmNhcnJpZXJpZD0xNTAmcGFzc2JhY2s9MA==_url=http%3A%2F%2Fclickus.basebanner.com%2Fst%3Fcipid%3D2621000%26excid%3D23%26ttype%3D1%26dast%3Dv1_2621000_-1_3o1_884DB89344267722021886610003__4230937_14ch7_778_884DB8934426772201993852600_n_0_-7041993656288223481_820215____2g_4oa7_0_%26cipp%3D0.0219582271%26excid%3D23%26cisid%3D884DB89344267722021886610003%26pix%3D31581939%26tgt%3Dhttps%253A%252F%252Fwww.glassesusa.com%252Fcoupons-and-promotions%253Fsr%253D7742381\"><IMG border=0 width=300 height=250 id=\"_ci4230937_b4074867\" alt=\"\" src=\"http://d94r1llj8z8wm.clossudfront.net/uploads/1456266446847_300x250-mirror.gif\"/></A>\r\n</DIV>\r\n<script type=\"text/javascript\" src=\"http://imprusmp.basssssebanner.com/st?cipid=2621000&ttype=0&cirid=884DB8934426772201993852600&cicmp=1192487&cijs=1&dast=bXRtZGxpZD0zMjAzMTAwMjU4NyZjbXQ9LTEmZnJtaT0wJm1tdD0tMSZwcnJwPTEwMDAwMC4wJnBmcnA9LTEuMCZleGNpZD0U5OTgwMzQwNDYmc2VydmluZ0RvbWFpbj1iYXNlYmFubmVyLmNvbSZsYXQ9NDkuNDU2MyZsb25nPTguMDgxNCZjaXRicD0wLjAyNTE1Mzg0NjE1Mzg0NjE1&cipp=0.0219582271&excid=23\"></script></span> <!-- NETWORK Ad Ends -->"
}
}
Meta types
Publishers requests the following meta types:
- 'points' specifies payout associated to the campaign
- 'revenuemodel' is the revenue model of the campaign returned
- 'campaignid' is the PubNative campaign id
- 'bundleid' is the bundle id of the app associated to the campaign
"meta": [
{
"type": "points",
"data": {
"number": 2420
}
},
{
"type": "revenuemodel",
"data": {
"text": "cpa"
}
},
{
"type": "campaignid",
"data": {
"text": "3229480"
}
},
{
"type": "creativeid",
"data": {}
},
{
"type": "contentinfo",
"data": {
"link": "http://pubnative.net/ad-choices",
"icon": "http://cdn.pubnative.net/static/adserver/pnadchoices.png",
"text": "Learn about this ad"
}
},
{
"type": "bundleid",
"data": {}
}
]
Beacon Type
Pubnative response contain following beacon types:
1. Impression beacon - Type URL
"beacons": [
{
"type": "impression",
"data": {
"url": "http://tr.pubnative.net/impression?aid=1012003&t=uuJqdX8Q6ULYwTQwCxFTg8LdkPsKhhVL9UbAFc49jFQ6V8VFueXVyEw9w5CXp65y-FO_MkzYnsf9mCe6PPO1TzZCr-0BK3pM6Qj3cTVT6hJPGDQ-WwtnefolN05Go396WkFb0-L5b_yjE0J9X4yv46ZSEpPVx4whFUAhY0ztOdXHG7ILQe7iqYKXzAhW7UG2N4JYioWM2kXBcFB_9E8vk_Wk6wjHqPJ_gtlMuZkX3F_fp-dukRmtd4BzMlZraJg8Z7pZvFE1u0GaBaup9FYs-B26K8X9OONmEke3J5TAWhxZuqRD9c6SuYuZUhWtDJaFh5Vq4ApEuIqnb9HKt6n-zkMRPKQ8EIzYxJ-FJUNwhyVcsTqMws_udHtpZt-W68ygffT0pHiZ8DasPMgH73-Xld0uZ8qE7kHwSdWtZxB_7UPupUj-BhARg67QEQ5FwiQ_p8ghOBCGm56BhdrxinP1GQlCR2gIWrccVjSOH1MmlkQgBtjou_KCVZfzAfI2kIvWnQ6awfZo-gM3JLaooOoHJ2f81tAL_Q4LZ7fbWlJLp52b6XLeQUlPIBgPsG2WSZ0AU5j3M-6MqmxxJoRg5et9OcKmkg2Y6ovprNrvghccl9Ao&tl=620"
}
}, {
"type": "impression",
"data": {
"url": "https://NETWORKDOMAIN/c.asm/C/t/eh069iuvof/1pym/s/1h/db/u/0/0/0/eyJVSUQiOiIzYjY3Nzg4My1kOWI3LTQ3YzctYWNjNC0wZWFmYWIzN2U0MWQiLCJHUElEIjoiM2I2Nzc4ODMtZDliNy00N2M3LWFjYzQtMGVhZmFiMzdlNDFkIn0~/08ebd7a8-0157-1000-f8f2-3e92681100d0/-1/0/14/0/0/49.43330001831055,6.849999904632568,0.0/13494882/NW/2t/0/api/3.0.0/dir/Y29tLnRocmVldXBwbHVzLlByb19TbmlwZXJfU3RpY2ttYW5fRnJlZQ~~/Fp4oFsCNtwEW3ODqzNFVN5yijIBTlGE_FBwXAAAAAAAA8D8XVfbbM2QYZT8XAAAAAAAAAAAUBBIYODVZMHJtcTlvZVcrcW94QXNOa29TSldMK0Z2eS9HQ1JMTnJvOWFJZHc3RndBU0pUdVFZS0VlZz09GAZOQVRJVkUcFAAUAhwcFoDAuJWA6uvrERbf1Oe8wtvglg8AFoD208rquMLqTBUAEgAAORXAPiEUABbE5PiK6lEUBBgYcGVyZi1hZHBvb2wxMDAxLnBlcmYudWgxFAISPBUCACwVAgBTBgA=/-1/AA==/6/40d5d6fc?m=18&ts=$TS"
}
2. Impression beacon - Type JS
"beacons": [
{
"type": "impression",
"data": {
"js": "<script></script>"
}
}
3. Click Beacon - Type URL
"beacons": [
{
"type": "click",
"data": {
"url": "https://NETWORKDOMAIN/c.asm/C/t/eh069iuvof/1pym/s/1h/db/u/0/0/0/eyJVSUQiOiIzYjY3Nzg4My1kOWI3LTQ3YzctYWNjNC0wZWFmYWIzN2U0MWQiLCJHUElEIjoiM2I2Nzc4ODMtZDliNy00N2M3LWFjYzQtMGVhZmFiMzdlNDFkIn0~/08ebd7a8-0157-1000-f8f2-3e92681100d0/-1/0/14/0/0/49.43330001831055,6.849999904632568,0.0/13494882/NW/2t/0/api/3.0.0/dir/Y29tLnRocmVldXBwbHVzLlByb19TbmlwZXJfU3RpY2ttYW5fRnJlZQ~~/Fp4oFsCNtwEW3ODqzNFVN5yijIBTlGE_FBwXAAAAAAAA8D8XVfbbM2QYZT8XAAAAAAAAAAAUBBIYODVZMHJtcTlvZVcrcW94QXNOa29TSldMK0Z2eS9HQ1JMTnJvOWFJZHc3RndBU0pUdVFZS0VlZz09GAZOQVRJVkUcFAAUAhwcFoDAuJWA6uvrERbf1Oe8wtvglg8AFoD208rquMLqTBUAEgAAORXAPiEUABbE5PiK6lEUBBgYcGVyZi1hZHBvb2wxMDAxLnBlcmYudWgxFAISPBUCACwVAgBTBgA=/-1/AA==/6/40d5d6fc?m=8&ts=$TS"
}
}, {
"type": "click",
"data": {
"url": "https://NETWORKDOMAIN/c.asm/C/t/eh069iuvof/1pym/s/1h/db/u/0/0/0/eyJVSUQiOiIzYjY3Nzg4My1kOWI3LTQ3YzctYWNjNC0wZWFmYWIzN2U0MWQiLCJHUElEIjoiM2I2Nzc4ODMtZDliNy00N2M3LWFjYzQtMGVhZmFiMzdlNDFkIn0~/08ebd7a8-0157-1000-f8f2-3e92681100d0/-1/0/14/1/0/49.43330001831055,6.849999904632568,0.0/13494882/NW/2t/0/api/3.0.0/dir/Y29tLnRocmVldXBwbHVzLlByb19TbmlwZXJfU3RpY2ttYW5fRnJlZQ~~/Fp4oFsCNtwEW3ODqzNFVN5yijIBTlGE_FBwXAAAAAAAA8D8XVfbbM2QYZT8XAAAAAAAAAAAUBBIYODVZMHJtcTlvZVcrcW94QXNOa29TSldMK0Z2eS9HQ1JMTnJvOWFJZHc3RndBU0pUdVFZS0VlZz09GAZOQVRJVkUcFAAUAhwcFoDAuJWA6uvrERbf1Oe8wtvglg8AFoD208rquMLqTBUAEgAAORXAPiEUABbE5PiK6lEUBBgYcGVyZi1hZHBvb2wxMDAxLnBlcmYudWgxFAISPBUCACwVAgBTBgA=/-1/AA==/6/1d0f464a?at=1&am=0&ct=$TS"
}
Please be noted as soon as an impression (=creative) is shown to the user and ONLY after the ad has been viewed for 1 second should the impression be confirmed. This is the guideline is in order to respect IAB view-ability terms.
- How are impression and click beacons confirmed?
-
- In case the beacon is of type url, then you must send us a GET request to the URL which is specified in impression beacon client side.
- In case the beacon is of type js, then you must render js script in a web view and confirm the impression on client side.
Note: Number of impression and click beacons depend on the demand partner. The integration must be done in such a way that the app is in a position to confirm all beacons -impression and click.
How to use?
- The server generates a GET request to the relevant ad-format together with the url param, the server returns a json response
- The server parses the json according to the ad format
- When the ad is shown, our server must be notified about the impression (as mentioned above)
- When user clicks on the ad, the server should redirect to the URL which is specified in ad's link, and the click beacon must be confirmed
"ads": [
{
"link": "http://tr.pubnative.net/click/native?aid=4&t=qyaUDc7fF-_rqXR6BLs_t9z2cpmf_SpRnCmC-r7BpFpxRSBSM_LdwFFbF5yN9Tdz7mkuMpTws22UFVb24k4TmeQRGqSStKi3CzFmqppwCiLPxGANFs88oQlWiex6kqFXZbubHWjBKb9ZdBWrKzgnCmEREdAOEMDvV3W8MVQ-loUv5cgnlQF-gXf-wsBKAytCF4m6zQN2w-TcUYkGH......"
- CPA (Cost Per Action, which means users have to download and open the app for conversion)
- CPC (Cost Per Click)
- CPM (Cost Per Mile, which is a cost for every 1,000 impressions)
Points Calculation:
- CPA campaign : 1 point = 0.001 USD (per 1 conversion)
- CPM campaign : 1 point = 0.001 USD (per 1,000 impressions)
- CPC campaign : 1 point = 0.001 USD (per 1 click)
Frequently Asked Questions
1. What is impression confirmation
When the ad is shown, our server must be notified about the impression in order to track the campaign performance correctly
2. Why is impression confirmation required?
The impression confirmation is a critical part of RTB compliance as well as for the eCPM maximization algorithm and the impression beacon should be triggered when the user actually sees the ad. One of the reasons for this is that campaigns available via RTB are CPM based and if we do not have the impression confirmation at 'seeing' stage, then the revenue will not be counted properly.
Checklist Before Activation
After the integration is complete, all that remains is to test the integration and make sure everything is working well.
Request
- Your request URL includes all required parameters with correct values
- Your request URL includes user identifiers. (Android Advertiser ID or Apple IDFA)
- You are sending requests when user reaches the ad inventory and with planned frequency.
- The best practice is to request a maximum of 3 ads per user session. Ads should be refreshed after an event (click or download) or after period of non-engagement. This period depends on the length of user sessions and can be from 1 minute to 3 minutes.
Response
Your app works correctly even when there is no fill (API returns no ads). In case anything is wrong with the app, PubNative can disable the fill and later enable it back on when the encountered problems are fixed.
Impression
- You are confirming impressions when the user sees the ad for the first time for a minimum duration of 1 second.
- You need to confirm ALL impression beacons served in the response.
- You are confirming impressions immediately, in real-time.
- You shouldn’t confirm impressions twice, even if the user sees the same ad again. One (initial) confirmation is enough.
Clicks
- Click happens when the user clicks the advertisement which is linked with the click URL PubNative provides.
- If click beacons exist then ALL click beacons served in the response should be confirmed on the event of click
- The click event has to be done by a genuine user and should not be an automated bot or incentivized (rewarded) click
- Depending on the type of campaign (app promotion or mobile landing page) the redirect behaviour should be considered
- For App promotion campaigns, background redirect (hidden browser/webview) is permitted in order to maintain the user experience
- For mobile landing pages, at the end of the redirect you must make sure to either show an internal browser window (better user experience) or send the user directly to the default mobile browser
Please also send your request URL to PubNative team so we can help you to make sure everything is properly setup and ready to go live!
If you have any questions, don’t hesitate to get in touch: [email protected]