Algorix Online Api 对接文档
目录
1.对接流程
- 商务洽谈。
- Algorix 系统分配: sid, token, app_id, adslot_id。
- 接入方式参考文档。
- 联调。
2.注意事项
Publisher 在进行广告请求的时候尽可能多地填写可选参数,能匹配到更适合用户的广告,从而提升转化率,进而提高开发者收入。但如果存在获取不到的参数,不可随意填写,会影响广告的匹配程度,间接影响收入。
广告请求允许服务端发起,但必须带上 客户端 的真实IP,同时展示、点击、转化上报必须由 客户端 直接上报到平台。否则会被判定为作弊流量,影响结算。
3.API
3.1 广告请求
3.1.1 请求URL
PS: “线上URl的” sid 和 token 均为 Algorix 分配。
3.1.2 请求方式
POST
Header: Content-Type Value: application/json
3.1.3 请求参数
Parent Object | Object / Parameter | Type | Required | Description |
---|
| id | string | Yes | Publisher 自己定义的本次广告请求的唯一ID |
| app | object | Yes | APP相关信息的对象 |
app | app_id | string | Yes | APP 唯一ID。由 Algorix 生成并分配。 |
app | app_bundle_id | string | Yes | APP的唯一标识。IOS为bundle id,Android为package。 |
app | app_name | string | Yes | APP Name。 |
app | store_url | string | Recommend | APP 的安装应用市场地址。 |
app | app_category | string | Recommend | APP的类型,枚举类型。枚举表格请见 5.1 APP Category Type |
| adslot | object | Yes | 广告位相关信息的对象 |
adslot | adslot_id | string | Yes | 广告位ID,由 Do Global 生成并分配。 |
adslot | instl | int | Yes | 1 = the ad is interstitial or full screen, 0 = not interstitial. |
adslot | banner | object | No | Banner广告位相关信息的对象。 |
adslot.banner | width | int | Yes | 广告位的宽度。 |
adslot.banner | height | int | Yes | 广告位的高度。 |
adslot.banner | position | int | Yes | 广告位的位置。枚举表格请见 5.7 Position |
adslot.banner | api | int array | Yes | 此次展示支持的的api框架 5.11 API Frameworks |
adslot.banner | battr | int array | Yes | Blocked creative attributes. 5.12 Creative Attributes |
adslot.banner | mimes | string array | Yes | 支持的物料类型 e.g. ["image/jpeg"] |
adslot | native | object | No | Native 广告位相关信息的对象。 |
adslot.native | plcmttype | int | Yes | 原生广告位类型【默认为1】0为未知,1为信息流。 |
adslot.native | assets | array | Yes | 广告素材相关信息的数组。用于配置所需要的素材类型。含 title、img、data |
adslot.native.assets | id | int | Yes | 原生广告素材请求ID,由Publisher自己定义。 |
adslot.native.assets | required | int | Yes | 原生广告素材是否为必须,0为否,1为是。 |
adslot.native.assets | title | object | No | 原生广告素材的 Title 信息。 |
adslot.native.assets.title | len | int | No | 原生广告素材 Title 的最大长度限制。 |
adslot.native.assets | img | object | No | 原生广告素材的 Image 信息。 |
adslot.native.assets.img | type | int | Yes | 原生广告素材 图片 的类型。1为ICON,2为LOGO,3为主题图。 |
adslot.native.assets.img | width | int | Yes | 原生广告素材 图片 的宽度。 |
adslot.native.assets.img | height | int | Yes | 原生广告素材 图片 的高度。 |
adslot.native.assets | data | object | No | 原生广告素材的 Data 信息。主要为广告的内容文案或按钮描述文案 |
adslot.native.assets.data | type | int | Yes | 原生广告素材 文案 的类型。枚举表格请见 5.13 Assets Data Type |
adslot.native.assets.data | len | int | Yes | 原生广告素材 文案 的最大长度限制。 |
adslot | video | object | No | 视频广告位相关信息的对象 |
adslot.video | mimes | string array | Yes | 支持的物料类型 e.g. ["video/mp4"] |
adslot.video | minduration | int | Recommend | 视频的最小时长(秒) |
adslot.video | maxduration | int | Recommend | 视频的最大时长(秒) |
adslot.video | protocols | int array | Yes | 支持的视频协议版本 |
adslot.video | w | int | Yes | 视频播放器的宽度(DIPS) |
adslot.video | h | int | Yes | 视频播放器的高度(DIPS) |
adslot.video | startdelay | int | Yes | 视频广告播放的时序(视频开始、中间、最后)5.3 StartDelay |
adslot.video | placement | int | Yes | 展示位置的类型 / 1 in-Stream 2 In-Banner 3 In-Article 4 In-Feed 5 Interstitial/Slider/Floating |
adslot.video | linearity | int | Yes | 展示是否为线性,默认为都允许 1 Linear 2 Non-Linear 5.4 Linearity |
adslot.video | skip | int | Yes | 是否能被跳过 0 ON 1 YES |
adslot.video | skipmin | int | Recommend | 总的播放时间超过此秒数才能被跳过【当skip=1时适用】 |
adslot.video | skipafter | int | Recommend | 跳过视频前必须播放的秒数【当skip=1时适用】 |
adslot.video | battr | int array | Yes | Blocked creative attributes. 5.12 Creative Attributes |
adslot.video | minbirate | int | Recommend | 最小的传输速度(Kbps) |
adslot.video | maxbirate | int | Recommend | 最大的传输速度(Kbps) |
adslot.video | boxingallowed | int | Recommend | 16:9的窗口能否展示4:3的内容 0 否 1 能 |
adslot.video | playbackmethod | int array | Yes | 视频播放方法 详细可见 5.5 Playback Methods |
adslot.video | playbackend | int | Yes | 使视频播放结束的事件 详细可见 5.6 Playbackend |
adslot.video | pos | int | Yes | 广告的位置 5.7 Position |
adslot.video | companionad | Object array | Recommend | Banner对象,如果companion ads允许 |
adslot.video | companiontype | int array | Recommend | 支持的vast companion 广告类型 5.10 Companion Types |
adslot.video | api | int array | Yes | 此次展示支持的的api框架 5.11 API Frameworks |
adslot.video | ext | Object | Yes | 扩展对象 |
adslot.video.ext | rewarded | bool | Yes | true代表是激励视频 false代表不是激励视频 |
| user | object | Yes | 用户相关信息的对象 |
user | user_id | string | Yes | Publisher 对用户的唯一标识。 |
user | ip | string | Yes | 用户(设备)IP地址,点分十进制字符串。非服务端IP地址。 |
user | gender | int | Yes | 性别。0为未知,1为男性,2为女性。 |
user | ext | Object | Recommend | Ext Object |
user.ext | consent | string | Recommend | if gdpr = 1, this string gives consent information of various vendors |
| device | object | Yes | 设备相关信息的对象 |
device | user_agent | string | Yes | User Agent |
device | device_id | array | Yes | 设备的唯一标识 |
device.device_id | type | int | Yes | 移动设备唯一ID的类型。0为未知,1为IMEI,2为MAC地址 |
device.device_id | id | string | Yes | 对应的移动设备唯一ID的值 |
device | advertising_id | object | Yes | 广告ID对象 |
device.advertising_id | type | int | Yes | 广告ID类型。0为未知,4为Android,ID内容为GAID;5为IOS,ID内容为IDFA |
device.advertising_id | id | string | Yes | 对应的广告ID的值 |
device | geo | object | Recommend | 坐标信息 |
device.geo | latitude | float | Recommend | 维度 |
device.geo | longitude | float | Recommend | 经度 |
device.geo | country | string | Recommend | 国家代码,使用 ISO-3166-1-alpha-3 标准 |
device.geo | region | string | Recommend | 地区代码,使用 ISO-3166-2 标准。美国使用2位 state code。 |
device | device_type | int | Yes | 设备类型,枚举表格请见 5.8 Device Type |
device | language | string | Yes | 语言。枚举表格请见 5.9 Language |
device | os | int | Yes | 系统。0为未知,1为IOS,2为Android |
device | os_version | string | Yes | 系统版本 |
device | brand | string | No | 设备品牌 |
device | model | string | No | 设备型号 |
device | screen_width | int | Recommend | 设备屏幕宽度 |
device | screen_height | int | Recommend | 设备屏幕高度 |
device | screen_density | int | No | 设备屏幕像素密度 |
device | carrier_id | string | Yes | 运营商ID。前三位为 Mobile Country Code,后两位为 Mobile Network Code。EG: "310-005" 代表 Verizon Wireless CDMA in the USA 枚举表格请见 MCC & MNC Code |
device | wireless_network_type | int | Yes | 网络类型 0为未知,1为WIFI,2为2G,3为3G,4为4G,5为5G |
| regs | object | Yes | 描述任何适用于该请求的法律,政府或者工业管控条例相关信息的对象。 |
regs | coppa | int | No | 标记该请求是否受美国COPPA法案约束,0为否,1为是。该参数请谨慎使用,如果无法确定则不填。填1,则要补充详细的用户信息,否则会影响填充率。 |
regs | gdpr | int | No | 标记该请求是否受欧盟GDPR法案约束,0为否,1为是。该参数请谨慎使用,如果无法确定则不填。填1,则要补充详细的用户信息,否则会影响填充率。 |
| bcat | string array | Recommend | 屏蔽的广告行业(黑名单) |
| badv | string array | Recommend | 屏蔽的域名(黑名单) |
| bapp | string array | Recommend | 屏蔽的App包名(黑名单) |
| tmax | int | Recommend | 允许返回结果的最长时间(单位:毫秒)避免超时 |
| secure | int | No | 标记是否使用安全的https url。0为非安全,1为安全。如果省略表示状态未知,默认认为不安全的http也支持。 |
3.1.4 请求的例子
3.1.4.1 Banner 广告请求的例子
{
"id": "fgasikutgasurebuifgsiuafgisua",
"app": {
"app_id": "95caecceb1066c2b52665a2c85a959e4",
"app_bundle_id": "4767426574632874",
"app_name": "Es File",
"store_url": "https://play.google.com/store/apps/details?id=com.estrongs.android.pop",
"app_category": "IAB20"
},
"adslot": {
"adslot_id": "12001",
"instl": 0,
"banner": {
"width": 320,
"height": 50,
"position": 1,
"mimes": ["image/jpeg","image/gif","image/png"],
"api":[3, 5],
"battr":[6, 7]
}
},
"user": {
"user_id": "dsygfyad",
"ip": "106.38.48.52",
"gender": 1
},
"device": {
"user_agent": "Mozilla/5.0 (Linux; Android 8.1.0; CPH1809 Build/OPM1.171019.026; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/75.0.3770.101 Mobile Safari/537.36",
"device_id": [
{
"type": 1,
"id": "2536643785678345673845"
},
{
"type": 2,
"id": "5C-FF-35-0B-95-B5"
}
],
"advertising_id": {
"type": 4,
"id": "ghdakgdhajgdajydg"
},
"geo": {
"lat": 27.3333,
"lon": 88.6167,
"type": 2,
"country": "IND"
},
"device_type": 1,
"os": 1,
"language": "zh",
"os_version": "9.0.1",
"brand": "xiaomi",
"model": "hongmi",
"screen_width": 640,
"screen_height": 1136,
"screen_density": 326,
"carrier_id": "460-000",
"wireless_network_type": 4
},
"regs": {
"coppa": 0,
"gdpr": 0
},
"bcat": ["IAB8", "IAB26", "IAB9"],
"badv": ["explorescientificusa.com","www.explorescientificusa.com"],
"tmax": 200,
"secure": 1
}
3.1.4.2 Native 广告请求的例子
{
"id": "fgasikutgasurebuifgsiuafgisua",
"app": {
"app_id": "95caecceb1066c2b52665a2c85a959e4",
"app_bundle_id": "4767426574632874",
"app_name": "Es File",
"store_url": "https://play.google.com/store/apps/details?id=com.estrongs.android.pop",
"app_category": "IAB20"
},
"adslot": {
"adslot_id": "12002",
"instl": 0,
"native": {
"plcmttype": 1,
"assets": [
{
"id": 1,
"required": 1,
"title": {
"len": 256
}
},
{
"id": 2,
"required": 1,
"img": {
"type": 1,
"width": 75,
"height": 75
}
},
{
"id": 3,
"required": 1,
"img": {
"type": 3,
"width": 320,
"height": 240
}
},
{
"id": 4,
"required": 1,
"data": {
"type": 2,
"len": 256
}
}
]
}
},
"user": {
"user_id": "dsygfyad",
"ip": "106.38.48.52",
"gender": 1
},
"device": {
"user_agent": "Mozilla/5.0 (Linux; U; Android 2.3.6; it-it; GT-S5570I Build/GINGERBREAD) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1 (Mobile; afma-sdk-a-v6.1.0),gzip(gfe)",
"device_id": [
{
"type": 1,
"id": "2536643785678345673845"
},
{
"type": 2,
"id": "5C-FF-35-0B-95-B5"
}
],
"advertising_id": {
"type": 4,
"id": "dfc59c16-4435-48cb-98a9-9bdd06108077"
},
"geo": {
"lat": 27.3333,
"lon": 88.6167,
"type": 2,
"country": "IND"
},
"device_type": 1,
"os": 1,
"language": "CN",
"os_version": "9.0.1",
"brand": "xiaomi",
"model": "hongmi",
"screen_width": 640,
"screen_height": 1136,
"screen_density": 326,
"carrier_id": "460-000",
"wireless_network_type": 4
},
"regs": {
"coppa": 0,
"gdpr": 0
},
"bcat": ["IAB8", "IAB26", "IAB9"],
"badv": ["explorescientificusa.com","www.explorescientificusa.com"],
"tmax": 200,
"secure": 1
}
3.1.4.3 Video 广告请求的例子
{
"id": "JcsB73SZS0BVvJe79uS",
"app": {
"app_id": "734838cdfb24538fa92814484595a8e",
"app_name": "app_name",
"app_bundle_id": "com.myyearbook.m",
"store_url": "http://google-play-url",
"app_category": "IAB1"
},
"adslot": {
"adslot_id": "16536",
"video": {
"mimes": ["video/mp4"],
"minduration": 0,
"maxduration": 30,
"protocols": [2, 3, 5, 6],
"w": 480,
"h": 320,
"startdelay": 0,
"placement": 5,
"linearity": 1,
"skip": 1,
"skipmin": 15,
"skipafter": 15,
"maxbitrate": 2730,
"boxingallowed": 0,
"playbackmethod": [1],
"playbackend": 1,
"pos": 7,
"companionad": [{
"w": 480,
"h": 320,
"id": "1"
}],
"companiontype": [1],
"ext": {
"rewarded": false
}
},
"instl": 0
},
"user": {
"user_id": "JcsB73SZS0BVvJe79uS",
"ip": "37.73.250.41",
"gender": 0
},
"device": {
"user_agent": "Mozilla/5.0 (iPhone; CPU iPhone OS 12_1_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/16D57",
"device_id": [{
"type": 1,
"id": "IMEI value"
},
{
"type": 2,
"id": "MAC value"
}
],
"advertising_id": {
"type": 4,
"id": "iDfa-Or-Gaid"
},
"geo": {
"lat": 27.3333,
"lon": 88.6167,
"type": 2,
"country": "IND"
},
"device_type": 1,
"os": 2,
"os_version": "",
"brand": "",
"screen_width": 0,
"language": "",
"screen_height": 0,
"screen_density": 0,
"carrier_id": "25506",
"wireless_network_type": 2
},
"tmax": 200,
"bcat": ["IAB8", "IAB26", "IAB9"],
"badv": ["explorescientificusa.com", "www.explorescientificusa.com"],
"regs": {
"coppa": 0,
"gdpr": 0
}
}
3.1.5 返回参数:
Parent Object | Object / Parameter | Type | Required | Description |
---|
| err_no | int | Yes | 错误码。枚举表格请见 5.14 Err No and Msg |
| err_msg | string | Yes | 错误信息 |
data | id | string | Yes | 本次广告请求的ID,由 Do Global 生成 |
data | ads | array | No | 广告数组 |
data.ads | crid | string | Yes | 物料ID |
data.ads | cid | string | Yes | Campaign ID |
data.ads | adomain | string array | Yes | 域名 |
data.ads | cat | string array | Yes | 广告所处行业 |
data.ads | banner_ad | object | No | Banner / Interstitial 广告信息对象 |
data.ads.banner_ad | html_snippet | string | Yes | Banner / Interstitial 广告HTML代码块 |
data.ads.banner_ad | img_url | string | No | Banner / Interstitial 广告图片 URL |
data.ads.banner_ad | width | int | Yes | Banner / Interstitial 广告宽度 |
data.ads.banner_ad | height | int | Yes | Banner / Interstitial 广高宽度 |
data.ads.banner_ad | imptrackers | array | Yes | Banner / Interstitial 展示上报数组 |
data.ads | native_ad | object | No | Native 广告信息对象 |
data.ads.native_ad | assets | array | Yes | Native 广告信息对象 |
data.ads.native_ad.assets | id | int | Yes | Native 广告素材请求ID,由Publisher自己定义。 |
data.ads.native_ad.assets | required | int | Yes | Native 广告素材是否为必须,0为否,1为是。 |
data.ads.native_ad.assets | title | object | No | Native 广告素材的 Title 信息对象。 |
data.ads.native_ad.assets.title | title | string | No | Native 广告素材 Title 的内容 |
data.ads.native_ad.assets | img | object | No | Native 广告素材的 Image 信息对象。 |
data.ads.native_ad.assets.img | width | int | Yes | Native 广告素材 Image 的宽度。 |
data.ads.native_ad.assets.img | height | int | Yes | Native 广告素材 Image 的高度。 |
data.ads.native_ad.assets.img | url | string | Yes | Native 广告素材 Image 的URL。 |
data.ads.native_ad.assets | data | object | No | Native 广告素材的 Data 信息对象。 |
data.ads.native_ad.assets.data | value | string | Yes | Native 广告素材的 Data 信息的内容 |
data.ads.native_ad | target_url | string | Yes | Native 广告的点击(Tracking)URL |
data.ads.native_ad | imptrackers | array | Yes | Native 广告的展示上报数组,广告展示发生后需要遍历数组并逐个上报 |
data.ads.native_ad | clicktrackers | array | Yes | Native 广告的点击上报数组,广告点击发生后需要遍历数组并逐个上报 |
data.ads | video_ad | object | No | video广告信息对象 |
data.ads.video_ad | winnotice_url | string | Yes | winnotice url |
data.ads.video_ad | adm | string | Yes | 具体细节参考 vast 3.0标准 |
3.1.5.1 Banner 广告返回的例子
{
"data": {
"ads": [
{
"crid": "12-2398",
"adomain": [
"www.do-global.com"
],
"cat": [
"IAB1"
],
"banner_ad": {
"html_snippet": "<!DOCTYPE html> <html> <head> <title></title> <meta name='viewport' content='user-scalable=0, minimum-scale=1.0, maximum- scale=1.0'/> <style type='text/css'> body {margin: 0; overflow: hidden;} </style> </head> <body> <style>.im_1664_ads-lbl,.im_1664_ads-lbl img{position:absolute;bottom:0;right:0;pointer-events:none;z-index:1000000000000000}.im_1664_ads-lbl img{width:26px;height:16px}</style> <div class='im_1664_ads-lbl'><img src='http://i.l.inmobicdn.net/ifctpads/IFC/CCN/assets/AdsiconHDPI1472034285.png'></div> <style> .inmC { margin-left: auto; margin-right: auto; display: block; }</style> <a href='https://play.google.com/store/apps/details?id=com.offline.miniocr' target='_top' style='text-decoration:none;'> <img border='0' class='inmC' src='http://dev-report.doadx.com/static/img/320_50.jpg' height='50' width='320' /> </a> <style>body{margin:0}</style> <img src='http://et-cn.w.inmobi.com/c.asm/C/t/ectjuimhah/1blu/w/4k/lx/m/r/0/0/ eyJVSUQiOiJGQzBGMzQ0NS0wRkNFLTQwRUUtODY0Ni0zQ0E4QkIyNjYzRUEiLCJJREEiOiJGQzBGMzQ0NS0wRkNFLTQwRUUtODY0Ni0zQ0E4QkIy NjYzRUEifQ~~/ca0d9776-0159-1000-ee66-38a46c1e0093/-1/411p/-1/0/0/40.71269989013672,74.00589752197266,0.0/13779426/NW/2t/0/api/3.0.0/dir/ Y29tLmlubW9iaS5kZW1vYXBw/ FvCTCRYAFta48rroVFcAAAAAAADwPzQAEhg4NUxNdTREejQ0MmxZS3lZSXpNWHVkMG4yZUZuVEUxZ0gzZ1haQzlzS3g2ZC9tM2Qwd0grc3hRPT0YB kJBTk5FUhwUABQCHBwW_7-36r-itPJrFtndsvyC1-PgIwAWxN7fpp2TiM- yARUAEgAAOQUiFAAWloqp6t9RKD1wZXJmLWFkcG9vbC1za3lob29rcHJvZDUwMDJfcGVyZl9oa2cxX3BlcmYtYWRwb29sX3NreWhvb2twcm9kFAQSJpr 5FhwVAgAsFQIAUwEm8JMJFQASGAUwLjA3NQA=/-1/AA==/7/844b2836?m=18' width='1' height='1' style='display:none;' /> </body></html><img src=\"https://apac-trk.doadx.com/imp?&info=w4CM90WYmAjLw0TbmIDO5gjLw0TbiZSM9knYmETPmBnJOh0Q9MmJxADMyETPwZCNllTN5EWN4MmMhVjN2ITNiJzY2YDMxIWZjNWZhNWN50TYmgjMmRmNwADMlNzMzEWY5MWMyEDOllTZ3IGM0MGZycjY9Enc_w4nc&price=${AUCTION_PRICE}\" width=\"1\" height=\"1\" style=\"display:none;\">",
"img_url": "",
"width": 320,
"imptrackers": [
"http://apac-trk.doadx.com/imp?&info==AjLw0TbmAjLw0TbiZCMwETP5JmJy0jZwZSPjZCMxkjM2ETPwZCNllTN5EWN4MmMhVjN2ITNiJzY2YDMxIWZjNWZhNWN50TYmcDZ4ATZ2YGNilTOidjZkFTYzQGZzUmM4ADO1M2NjVGZ9Enc_"
],
"height": 50
}
}
],
"id": "fgasikutgasurebuifgsiuafgisua"
},
"err_msg": "Success",
"err_no": 1000
}
3.1.5.2 Native 广告返回的例子
{
"data": {
"ads": [
{
"crid": "12-2398",
"adomain": [
"www.do-global.com"
],
"cat": [
"IAB1"
],
"native_ad": {
"assets": [
{
"id": 1,
"title": {
"title": "The Vicious Cycle Of Vaginal Infections"
},
"required": 1
},
{
"img": {
"width": 50,
"url": "https://images2.zemanta.com/p/srv/sha/00/af/6c/28902411fa70b73aca75b2da2730553a99.jpg?w=75&h=75&fit=crop&crop=faces&fm=jpg",
"height": 50
},
"id": 2,
"required": 1
},
{
"img": {
"width": 600,
"url": "https://images2.zemanta.com/p/srv/sha/00/af/6c/28902411fa70b73aca75b2da2730553a99.jpg?w=75&h=75&fit=crop&crop=faces&fm=jpg",
"height": 280
},
"id": 3,
"required": 1
},
{
"data": {
"value": "Restore and maintain a healthy balance of good bacteria and yeast for a healthy vagina"
},
"id": 4,
"required": 1
}
],
"clicktrackers": [
"https://do_global/track/url",
"https://apac-trk.doadx.com/clk?&info=w4CM90WYmAjLw0TbmIDO5gjLw0TbiZSM9knYmETPmBnJOh0Q9MmJyADMyETPwZCNllTN5EWN4MmMhVjN2ITNiJzY2YDMxIWZjNWZhNWN50TYmAjNkZWO1cjN1cDOmJWZjJ2MjFGNwQzMzYjM5ETNidDM9Enc_w4nc&price=${AUCTION_PRICE}"
],
"target_url": "https://r1.zemanta.com/r/u1qm61onnbb4/b1_rubicon/478563/7124557/C4NAONQHHBYL3S7WLF4ZSZFV2GCZFYDDINNXKVCYIRNEUYD76UZIU4TKSAJW5I6DUMYFEUW4AAP7HS7NCZP73SQOS4HY3VM5P76JCBIBX2GK7HGI2H5D3ZW2WT7XPKB2JM3G5VQUBQZSLQEITY7G2Y3D4XR7PO5YSC7WMQPTQVI3VIVYDYVSUMEIHQFGKDQZ55VIVS7AH73YDIBYA4O7PS4QPYK2YTNWBJJR4FCXMHCWD2X2DGSBYZGUFRWXOMA7C4UUZN2X2HWAXIT4PAZN7EYS5M7JQC2MGYPXC4NIB7XX476P7JOKRDVAXQRZGBHPCFB2JID3ZUBK77TXGWWS2J5L32MWS2R3FGYIXFNUOCGWEXKX765X5OAA4HL35XPQWEBWX2JLNM4O7T6UJ2YCDTBDH5FXATJUOO2OI7SGHQKTZOCT2PKYMEHAURNFNYTQ5FZNIE5FTAIGGIXCOWIWKWZBPU/",
"imptrackers": [
"https://apac-trk.doadx.com/imp?&info=w4CM90WYmAjLw0TbmIDO5gjLw0TbiZSM9knYmETPmBnJOh0Q9MmJyADMyETPwZCNllTN5EWN4MmMhVjN2ITNiJzY2YDMxIWZjNWZhNWN50TYmAjNkZWO1cjN1cDOmJWZjJ2MjFGNwQzMzYjM5ETNidDM9Enc_w4nc&price=${AUCTION_PRICE}"
]
}
}
],
"id": "fgasikutgasurebuifgsiuafgisua"
},
"err_msg": "Success",
"err_no": 1000
}
3.1.5.3 Video 广告返回的例子
{
"err_msg": "Success",
"err_no": 1000,
"data": {
"ads": [
{
"crid": "12-2398",
"adomain": [
"www.do-global.com"
],
"cat": [
"IAB1"
],
"video_ad": {
"winnotice_url": "https://use-trk.doadx.com/win?info===AZzR2ckNHZz1TYmlmJz0Te0FmJwIzM9gmJwgDN9cnJxIUQJ1zYhZSZtFmbfBHch1jbhZyMxADMz0DZpNnJxQjLwUjMuMzNuczM9AXa1ZSbus2bvJmchVWe51mLt92Y9QWdiZCMwUDM1cjM2UTM9QncmAjLw0TbhZCMuATPtZiM4kDOuATPtJmJx0TeiZiM9YGcmI1SV1zYmYzM1YTM9AnJlhTY1kTN0gDN0EDOykTYmhzM1QjMiZGZjhzM4QzM30TYmImZiZzYzkjMkFWOmNWZjlTY4EDN4kTMhZjY0QjYxMzY9Enc_==nc&price=${AUCTION_PRICE}",
"adm": "<VAST version=\"3.0\"><Ad><Wrapper><AdSystem>PubMatic</AdSystem><VASTAdTagURI><![CDATA[https://lyr.pubmatic.com/AdServer/layer?pubid=157941&nwid=&ts=1561014068&vdo=1&pimprid=bce9ed2d-2660-476c-ab2f-f330ad10b190&uimprid=B5CD58C7-6B0B-4313-8A51-73FF3EDF1461&a=${AUCTION_PRICE}&vdo=1&ucrid=17300671960036780932&t=PBYZW09U1FRTVE9PT0maWQ9MCZjaWQ9MTY3MzUmY2Y9MS4wMDAwMDAmeHByPTEuMDAwMDAwJmZwPTM2LjE0OTEmcHA9NC42MTU0MiZ0cD0wJnBlPTAuMDAwMDAwJnB1YmlkPTE1Nzk0MSZuYmY9MSZwZmVlPTI4JmNwPTYuNDEwMyZwMj0zOjAuMDAwMDAwJmNsZW49NTI5MyZjcj08VkFTVCB2ZXJzaW9uPSIyLjAiPgo8QWQgaWQ9IjY0NTQyNjEiPgo8V3JhcHBlcj4KPEFkU3lzdGVtPk1lZGlhTWF0aCBUMSBWQURTPC9BZFN5c3RlbT4KPFZBU1RBZFRhZ1VSST48IVtDREFUQVtodHRwczovL3Zhc3QubWF0aHRhZy5jb20vP2lkPTVhVzk1cTJqTHpFNUx5QXZXbFJWTWxreVRtMU9SR04wVFVSSmVrNVRNREJOYW1Sc1RGZEZNVmxxUlhST1YxVTBXVzFGTkU5SFZUTk9Na3BvTHpZM05qUXdOREF6TURFek56TTJPREkzTkRBdk5qUTFOREkyTVM4ME16RTJOakUwTHpNdmFHdEllSEEwUzFoSkxWRjZUR1ZhVjFOSWNtMWhkazR4VTE5Q1JFZFRXVXB4VDBVMFNWa3pOVU16UVM4eEx6TXZNQzgwTHpFd01qRTVNRFF2TWpnNE9UVXhPVFF4TkM4eU1EVXhNalF2TmpFNE9UY3lMemt2WW1zNk1UQTRORGMzTkN4aWF6b3hNRGcwTnpjMUxHSnJPalV3TWpnME5peGlhem8xTURJNE5EY3NZbXM2TlRBeU9EVXdMR0pyT2pVd01qZzFNeTh3TDFwSFdUQk9ha1YzVG1wUmRGbFhTVEJPVXpBd1dWUkJlVXhYU1hkT1IwVjBXVmRGTVZwRVRUTk5SRkV3VGtSYWFTOHdMekF2TUM4d0x6QXZOamMyTkRBME1ETXdNVE0zTXpZNE1qYzBNQzlsZDNJdk1DOHhOalV3TXk4eEx6VXhMekF2TVRjeUxqVTRMakUwTlM0MU5DOHdMakF3TUM4L0cwcWhfNmwwRWdybURyM01fWG0tMjY5MTlqYyZub2RlaWQ9MTM5OSZhdWN0aW9uaWQ9Njc2NDA0MDMwMTM3MzY4Mjc0MCZleGNoPXB1YiZzaWQ9NDMxNjYxNCZjaWQ9NjQ1NDI2MSZhY3Q9TGlJaUppUW9jSHhyUFN3dUpDTXFjSHhyS3k1d2ZHc2hJaW9xSkNNcWNIeHJPaXdrT1FzaVB3UWdQUU1pT1NRcmNIMCZncm91cD11cy1lYXN0JmJwPWRnX2JlamJiaSZwcm90b2NvbF92ZXJzaW9uPTEmYnV5ZXJDcmVhdGl2ZUlkPTY0NTQyNjEmY3ZpZD00JmFpZD02NzY0MDQwMzAxMzczNjgyNzQwJmFkdmVyaWQ9MjA1MTI0JmNkc3A9ZmFsc2Umb3B0b3V0PTAmbG10PTAmb2lkPTEwMDgxNiZjYWNoZUJ1c3Rlcj0xNTYxMDE0MDY4JnNraXBwYWJsZT0yJmNtcD02MTg5NzImc2VnX3NlbGY9Yms6MTA4NDc3NCxiazoxMDg0Nzc1LGJrOjUwMjg0Nixiazo1MDI4NDcsYms6NTAyODUwLGJrOjUwMjg1MyZhcHBfaWQ9Y29tLmxpbWUudmlkZW8ucGxheWVyJmFwcF9uYW1lPVBsYXllck9wZW5pbmdJbnRlclRpZXIyJnVhPU1vemlsbGEvNS4wJTIwJTI4TGludXglM0IlMjBBbmRyb2lkJTIwOC4xLjAlM0IlMjBMTS1RNzEwJTI4RkdOJTI5JTIwQnVpbGQvT1BNMS4xNzEwMTkuMDE5JTNCJTIwd3YlMjklMjBBcHBsZVdlYktpdC81MzcuMzYlMjAlMjhLSFRNTCUyQyUyMGxpa2UlMjBHZWNrbyUyOSUyMFZlcnNpb24vNC4wJTIwQ2hyb21lLzc0LjAuMzcyOS4xNTclMjBNbyZsYXRfbG9uZz0zNi4xNjU5MDElMkMtODYuNzg0NDAxJnV1aWQ9ZTU2Y2NmNDctMDIzNS00MjdlLWE1YjEtNWU4YmE4OGU3N2JhJm1kaWQ9ZTU2Y2NmNDctMDIzNS00MjdlLWE1YjEtNWU4YmE4OGU3N2JhJnNpdGVpZD0wJnBpZD0xNTc5NDEmaXA9MTcyLjU4LjE0NS41NCZwcm90PWh0dHBzJTNBJTJGJTJGJmNvdW50PTEmcHJpY2U9e1BTUE19XV0+PC9WQVNUQWRUYWdVUkk+CjxFcnJvcj48IVtDREFUQVtodHRwczovL2FrdHJhY2sucHVibWF0aWMuY29tL3RyYWNrP29wZXJJZD03JnA9MTU3OTQxJnM9NTU3MjI0JmE9MjE3MzkyMiZ3YT0yNDMmdHM9MTU2MTAxNDA2OCZ3Yz0xNjczNSZjcklkPTY0NTQyNjEmdWNyaWQ9MTczMDA2NzE5NjAwMzY3ODA5MzImaW1waWQ9QjVDRDU4QzctNkIwQi00MzEzLThBNTEtNzNGRjNFREYxNDYxJmFkdmVydGlzZXJfaWQ9NTk4MDkmZWNwbT02LjQxMDMwMCZlcj1bRVJST1JDT0RFXV1dPjwvRXJyb3I+CjxJbXByZXNzaW9uPjwhW0NEQVRBW2h0dHBzOi8vYWt0cmFjay5wdWJtYXRpYy5jb20vQWRTZXJ2ZXIvQWREaXNwbGF5VHJhY2tlclNlcnZsZXQ/b3BlcklkPTEmcHViSWQ9MTU3OTQxJnNpdGVJZD01NTcyMjQmYWRJZD0yMTczOTIyJmFkVHlwZT0xMyZhZFNlcnZlcklkPTI0MyZrZWZhY3Q9e1BTUE19JmtheGVmYWN0PXtQU1BNfSZrYWROZXRGcmVxdWVjeT0wJmthZHdpZHRoPTAma2FkaGVpZ2h0PTAma2Fkc2l6ZWlkPTk3JmtsdHN0YW1wPTE1NjEwMTQwNjgmaW5kaXJlY3RBZElkPTAmYWRTZXJ2ZXJPcHRpbWl6ZXJJZD0yJnJhbnJlcT0wLjEma3BibXRwZmFjdD17UFNQTX0mdGxkSWQ9NTg1NDYwNzQmcGFzc2JhY2s9MCZla2VmYWN0PXtQU1BNfSZla2F4ZWZhY3Q9e1BTUE19JmVrcGJtdHBmYWN0PXtQU1BNfSZzdnI9QklENDQwNjVVJmNySUQ9NjQ1NDI2MSZscHU9cGVyZmV0dGl2YW5tZWxsZS5jb20mdWNyaWQ9MTczMDA2NzE5NjAwMzY3ODA5MzImY2FtcGFpZ25JZD0xNjczNSZjcmVhdGl2ZUlkPTAmcGN0cj0wLjAwMDAwMCZ3RFNQQnlySWQ9MTAwODE2JndEc3BJZD0yNyZ3YklkPTQmd3JJZD0wJndBZHZJRD01OTgwOSZpc1JUQj0xJnJ0YklkPTJEMDIxRjdGLTBENjUtNDAxNi1COEI3LTk5MTBFOTIxQkZERCZpbXBySWQ9QjVDRDU4QzctNkIwQi00MzEzLThBNTEtNzNGRjNFREYxNDYxJm9pZD1CNUNENThDNy02QjBCLTQzMTMtOEE1MS03M0ZGM0VERjE0NjEmbW9iZmxhZz0xJmlzbW9iaWxlYXBwPTEmbW9kZWxpZD03Jm9zaWQ9MTgyJnVkaWR0eXBlPTEmY291bnRyeT1VUyZjbnRyeUlkPTIzMiZzZWM9MV1dPjwvSW1wcmVzc2lvbj4KPEltcHJlc3Npb24+PCFbQ0RBVEFbaHR0cHM6Ly9pbWFnZTgucHVibWF0aWMuY29tL0FkU2VydmVyL0ltZ1N5bmM/JmZwPTEmbXBjPTEwJnA9MTU3OTQxJmdkcHI9MCZnZHByX2NvbnNlbnQ9JnBtYz0tMSZwdT1odHRwcyUzQSUyRiUyRmltYWdlNC5wdWJtYXRpYy5jb20lMkZBZFNlcnZlciUyRlNQdWclM0ZwbWMlM0QtMSUyNnBhcnRuZXJJRCUzRDE1Nzk0MSUyNnBhcnRuZXJVSUQlM0QlMjhudWxsJTI5XV0+PC9JbXByZXNzaW9uPgo8SW1wcmVzc2lvbiAvPgo8Q3JlYXRpdmVzPgo8Q3JlYXRpdmUgaWQ9IjY0NTQyNjEiIC8+CjxDcmVhdGl2ZT4KPExpbmVhcj4KPFRyYWNraW5nRXZlbnRzPgo8VHJhY2tpbmcgZXZlbnQ9ImNyZWF0aXZlVmlldyI+PCFbQ0RBVEFbaHR0cHM6Ly9ha3RyYWNrLnB1Ym1hdGljLmNvbS90cmFjaz9vcGVySWQ9NyZwPTE1Nzk0MSZzPTU1NzIyNCZhPTIxNzM5MjImd2E9MjQzJnRzPTE1NjEwMTQwNjgmd2M9MTY3MzUmY3JJZD02NDU0MjYxJnVjcmlkPTE3MzAwNjcxOTYwMDM2NzgwOTMyJmltcGlkPUI1Q0Q1OEM3LTZCMEItNDMxMy04QTUxLTczRkYzRURGMTQ2MSZhZHZlcnRpc2VyX2lkPTU5ODA5JmVjcG09Ni40MTAzMDAmZT0xXV0+PC9UcmFja2luZz4KPFRyYWNraW5nIGV2ZW50PSJzdGFydCI+PCFbQ0RBVEFbaHR0cHM6Ly9ha3RyYWNrLnB1Ym1hdGljLmNvbS90cmFjaz9vcGVySWQ9NyZwPTE1Nzk0MSZzPTU1NzIyNCZhPTIxNzM5MjImd2E9MjQzJnRzPTE1NjEwMTQwNjgmd2M9MTY3MzUmY3JJZD02NDU0MjYxJnVjcmlkPTE3MzAwNjcxOTYwMDM2NzgwOTMyJmltcGlkPUI1Q0Q1OEM3LTZCMEItNDMxMy04QTUxLTczRkYzRURGMTQ2MSZhZHZlcnRpc2VyX2lkPTU5ODA5JmVjcG09Ni40MTAzMDAmZT0yXV0+PC9UcmFja2luZz4KPFRyYWNraW5nIGV2ZW50PSJtaWRwb2ludCI+PCFbQ0RBVEFbaHR0cHM6Ly9ha3RyYWNrLnB1Ym1hdGljLmNvbS90cmFjaz9vcGVySWQ9NyZwPTE1Nzk0MSZzPTU1NzIyNCZhPTIxNzM5MjImd2E9MjQzJnRzPTE1NjEwMTQwNjgmd2M9MTY3MzUmY3JJZD02NDU0MjYxJnVjcmlkPTE3MzAwNjcxOTYwMDM2NzgwOTMyJmltcGlkPUI1Q0Q1OEM3LTZCMEItNDMxMy04QTUxLTczRkYzRURGMTQ2MSZhZHZlcnRpc2VyX2lkPTU5ODA5JmVjcG09Ni40MTAzMDAmZT0zXV0+PC9UcmFja2luZz4KPFRyYWNraW5nIGV2ZW50PSJmaXJzdFF1YXJ0aWxlIj48IVtDREFUQVtodHRwczovL2FrdHJhY2sucHVibWF0aWMuY29tL3RyYWNrP29wZXJJZD03JnA9MTU3OTQxJnM9NTU3MjI0JmE9MjE3MzkyMiZ3YT0yNDMmdHM9MTU2MTAxNDA2OCZ3Yz0xNjczNSZjcklkPTY0NTQyNjEmdWNyaWQ9MTczMDA2NzE5NjAwMzY3ODA5MzImaW1waWQ9QjVDRDU4QzctNkIwQi00MzEzLThBNTEtNzNGRjNFREYxNDYxJmFkdmVydGlzZXJfaWQ9NTk4MDkmZWNwbT02LjQxMDMwMCZlPTRdXT48L1RyYWNraW5nPgo8VHJhY2tpbmcgZXZlbnQ9InRoaXJkUXVhcnRpbGUiPjwhW0NEQVRBW2h0dHBzOi8vYWt0cmFjay5wdWJtYXRpYy5jb20vdHJhY2s/b3BlcklkPTcmcD0xNTc5NDEmcz01NTcyMjQmYT0yMTczOTIyJndhPTI0MyZ0cz0xNTYxMDE0MDY4JndjPTE2NzM1JmNySWQ9NjQ1NDI2MSZ1Y3JpZD0xNzMwMDY3MTk2MDAzNjc4MDkzMiZpbXBpZD1CNUNENThDNy02QjBCLTQzMTMtOEE1MS03M0ZGM0VERjE0NjEmYWR2ZXJ0aXNlcl9pZD01OTgwOSZlY3BtPTYuNDEwMzAwJmU9NV1dPjwvVHJhY2tpbmc+CjxUcmFja2luZyBldmVudD0iY29tcGxldGUiPjwhW0NEQVRBW2h0dHBzOi8vYWt0cmFjay5wdWJtYXRpYy5jb20vdHJhY2s/b3BlcklkPTcmcD0xNTc5NDEmcz01NTcyMjQmYT0yMTczOTIyJndhPTI0MyZ0cz0xNTYxMDE0MDY4JndjPTE2NzM1JmNySWQ9NjQ1NDI2MSZ1Y3JpZD0xNzMwMDY3MTk2MDAzNjc4MDkzMiZpbXBpZD1CNUNENThDNy02QjBCLTQzMTMtOEE1MS03M0ZGM0VERjE0NjEmYWR2ZXJ0aXNlcl9pZD01OTgwOSZlY3BtPTYuNDEwMzAwJmU9Nl1dPjwvVHJhY2tpbmc+CjwvVHJhY2tpbmdFdmVudHM+CjxWaWRlb0NsaWNrcz4KPENsaWNrVHJhY2tpbmc+PCFbQ0RBVEFbaHR0cHM6Ly9ha3RyYWNrLnB1Ym1hdGljLmNvbS90cmFjaz9vcGVySWQ9NyZwPTE1Nzk0MSZzPTU1NzIyNCZhPTIxNzM5MjImd2E9MjQzJnRzPTE1NjEwMTQwNjgmd2M9MTY3MzUmY3JJZD02NDU0MjYxJnVjcmlkPTE3MzAwNjcxOTYwMDM2NzgwOTMyJmltcGlkPUI1Q0Q1OEM3LTZCMEItNDMxMy04QTUxLTczRkYzRURGMTQ2MSZhZHZlcnRpc2VyX2lkPTU5ODA5JmVjcG09Ni40MTAzMDAmZT05OV1dPjwvQ2xpY2tUcmFja2luZz4KPC9WaWRlb0NsaWNrcz4KPC9MaW5lYXI+CjwvQ3JlYXRpdmU+CjwvQ3JlYXRpdmVzPgo8RXh0ZW5zaW9ucz4KPEV4dGVuc2lvbj4KPE1ldGE+PCFbQ0RBVEFbbmFtZT1wbS1mb3JjZXBpeGVsO3Zlcj0xLjBdXT48L01ldGE+CjxQaXhlbCBsb2M9IjAiPgo8Q29kZSB0eXBlPSIxIj48IVtDREFUQVtodHRwczovL2Fkcy5wdWJtYXRpYy5jb20vQWRTZXJ2ZXIvanMvc2hvd2FkLmpzI1BJWCZwdGFzaz1EU1AmU1B1Zz0xJmZwPTEmbXBjPTEwJnU9JnA9MTU3OTQxJnM9NTU3MjI0JmQ9MiZjcD0wJnNjPTEmcnM9MCZvcz0xJmdkcHI9MCZnZHByX2NvbnNlbnQ9XV0+PC9Db2RlPgo8L1BpeGVsPgo8L0V4dGVuc2lvbj4KPC9FeHRlbnNpb25zPgo8L1dyYXBwZXI+CjwvQWQ+CjwvVkFTVD4K=]]></VASTAdTagURI><Impression/><Impression><![CDATA[https://use-trk.doadx.com/imp?info===AZzR2ckNHZz1TYmlmJz0Te0FmJwIzM9gmJwgDN9cnJxIUQJ1zYhZSZtFmbfBHch1jbhZyMxADMz0DZpNnJxQjLwUjMuMzNuczM9AXa1ZSbus2bvJmchVWe51mLt92Y9QWdiZCMwUDM1cjM2UTM9QncmAjLw0TbhZCMuATPtZiM4kDOuATPtJmJx0TeiZiM9YGcmI1SV1zYmYzM1YTM9AnJlhTY1kTN0gDN0EDOykTYmhzM1QjMiZGZjhzM4QzM30TYmImZiZzYzkjMkFWOmNWZjlTY4EDN4kTMhZjY0QjYxMzY9Enc_==nc&price=${AUCTION_PRICE}]]></Impression><Impression><![CDATA[https://use-trk.doadx.com/win?info===AZzR2ckNHZz1TYmlmJz0Te0FmJwIzM9gmJwgDN9cnJxIUQJ1zYhZSZtFmbfBHch1jbhZyMxADMz0DZpNnJxQjLwUjMuMzNuczM9AXa1ZSbus2bvJmchVWe51mLt92Y9QWdiZCMwUDM1cjM2UTM9QncmAjLw0TbhZCMuATPtZiM4kDOuATPtJmJx0TeiZiM9YGcmI1SV1zYmYzM1YTM9AnJlhTY1kTN0gDN0EDOykTYmhzM1QjMiZGZjhzM4QzM30TYmImZiZzYzkjMkFWOmNWZjlTY4EDN4kTMhZjY0QjYxMzY9Enc_==nc&price=${AUCTION_PRICE}]]></Impression><Creatives><Creative AdID=\"A188sKS9\"><Linear><TrackingEvents><Tracking event=\"start\"><![CDATA[https://trk.doadx.com/vtrk?info===AZzR2ckNHZz1TYmlmJz0Te0FmJwIzM9gmJwgDN9cnJxIUQJ1zYhZSZtFmbfBHch1jbhZyMxADMz0DZpNnJxQjLwUjMuMzNuczM9AXa1ZSbus2bvJmchVWe51mLt92Y9QWdiZCMwUDM1cjM2UTM9QncmAjLw0TbhZCMuATPtZiM4kDOuATPtJmJx0TeiZiM9YGcmI1SV1zYmYzM1YTM9AnJlhTY1kTN0gDN0EDOykTYmhzM1QjMiZGZjhzM4QzM30TYmImZiZzYzkjMkFWOmNWZjlTY4EDN4kTMhZjY0QjYxMzY9Enc_==nc&vtype=start&price=${AUCTION_PRICE}]]></Tracking><Tracking event=\"firstQuartile\"><![CDATA[https://trk.doadx.com/vtrk?info===AZzR2ckNHZz1TYmlmJz0Te0FmJwIzM9gmJwgDN9cnJxIUQJ1zYhZSZtFmbfBHch1jbhZyMxADMz0DZpNnJxQjLwUjMuMzNuczM9AXa1ZSbus2bvJmchVWe51mLt92Y9QWdiZCMwUDM1cjM2UTM9QncmAjLw0TbhZCMuATPtZiM4kDOuATPtJmJx0TeiZiM9YGcmI1SV1zYmYzM1YTM9AnJlhTY1kTN0gDN0EDOykTYmhzM1QjMiZGZjhzM4QzM30TYmImZiZzYzkjMkFWOmNWZjlTY4EDN4kTMhZjY0QjYxMzY9Enc_==nc&vtype=firstQuartile&price=${AUCTION_PRICE}]]></Tracking><Tracking event=\"midpoint\"><![CDATA[https://trk.doadx.com/vtrk?info===AZzR2ckNHZz1TYmlmJz0Te0FmJwIzM9gmJwgDN9cnJxIUQJ1zYhZSZtFmbfBHch1jbhZyMxADMz0DZpNnJxQjLwUjMuMzNuczM9AXa1ZSbus2bvJmchVWe51mLt92Y9QWdiZCMwUDM1cjM2UTM9QncmAjLw0TbhZCMuATPtZiM4kDOuATPtJmJx0TeiZiM9YGcmI1SV1zYmYzM1YTM9AnJlhTY1kTN0gDN0EDOykTYmhzM1QjMiZGZjhzM4QzM30TYmImZiZzYzkjMkFWOmNWZjlTY4EDN4kTMhZjY0QjYxMzY9Enc_==nc&vtype=midpoint&price=${AUCTION_PRICE}]]></Tracking><Tracking event=\"thirdQuartile\"><![CDATA[https://trk.doadx.com/vtrk?info===AZzR2ckNHZz1TYmlmJz0Te0FmJwIzM9gmJwgDN9cnJxIUQJ1zYhZSZtFmbfBHch1jbhZyMxADMz0DZpNnJxQjLwUjMuMzNuczM9AXa1ZSbus2bvJmchVWe51mLt92Y9QWdiZCMwUDM1cjM2UTM9QncmAjLw0TbhZCMuATPtZiM4kDOuATPtJmJx0TeiZiM9YGcmI1SV1zYmYzM1YTM9AnJlhTY1kTN0gDN0EDOykTYmhzM1QjMiZGZjhzM4QzM30TYmImZiZzYzkjMkFWOmNWZjlTY4EDN4kTMhZjY0QjYxMzY9Enc_==nc&vtype=thirdQuartile&price=${AUCTION_PRICE}]]></Tracking><Tracking event=\"complete\"><![CDATA[https://trk.doadx.com/vtrk?info===AZzR2ckNHZz1TYmlmJz0Te0FmJwIzM9gmJwgDN9cnJxIUQJ1zYhZSZtFmbfBHch1jbhZyMxADMz0DZpNnJxQjLwUjMuMzNuczM9AXa1ZSbus2bvJmchVWe51mLt92Y9QWdiZCMwUDM1cjM2UTM9QncmAjLw0TbhZCMuATPtZiM4kDOuATPtJmJx0TeiZiM9YGcmI1SV1zYmYzM1YTM9AnJlhTY1kTN0gDN0EDOykTYmhzM1QjMiZGZjhzM4QzM30TYmImZiZzYzkjMkFWOmNWZjlTY4EDN4kTMhZjY0QjYxMzY9Enc_==nc&vtype=complete&price=${AUCTION_PRICE}]]></Tracking></TrackingEvents><VideoClicks><ClickTracking><![CDATA[https://use-trk.doadx.com/clk?info===AZzR2ckNHZz1TYmlmJz0Te0FmJwIzM9gmJwgDN9cnJxIUQJ1zYhZSZtFmbfBHch1jbhZyMxADMz0DZpNnJxQjLwUjMuMzNuczM9AXa1ZSbus2bvJmchVWe51mLt92Y9QWdiZCMwUDM1cjM2UTM9QncmAjLw0TbhZCMuATPtZiM4kDOuATPtJmJx0TeiZiM9YGcmI1SV1zYmYzM1YTM9AnJlhTY1kTN0gDN0EDOykTYmhzM1QjMiZGZjhzM4QzM30TYmImZiZzYzkjMkFWOmNWZjlTY4EDN4kTMhZjY0QjYxMzY9Enc_==nc&price=${AUCTION_PRICE}]]></ClickTracking></VideoClicks></Linear></Creative></Creatives></Wrapper></Ad></VAST>"
},
"cid": "12"
}
],
"id": "c31b44b6a198418a9cecf9ad293c6bfb"
}
}
4. JS Tag
4.1 注意事项
- Doadx JS Tag 目前支持Banner、Interstitial广告,暂不支持Native广告。
- [adDivId] 是Publisher定义的放置广告的DIV ID,请确保DIV ID的唯一性。
- [sid] [token] [app_id] [adslot_id] 由 Do Global 生成并分配,需Publisher自行替换。
- [app_bundle_id] 是APP的唯一标识,需Publisher自行替换。
- [width] [height] 是广告位的宽度、高度,需Publisher自行替换。
4.2 MoPub 接入步骤
Mopub JavaScript Network HTML
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta http-equiv="X-UA-Compatible" content="ie=edge" />
</head>
<body>
<div id="[adDivId]"></div>
<script>
var data = {
"adDivId": "[adDivId]",
"sid": "[sid]",
"token": "[token]",
"app": {
"app_id": "[app_id]",
"app_bundle_id": "[app_bundle_id]"
},
"adslot": {
"adslot_id": "[adslot_id]",
"banner": {
"width": [width],
"height": [height]
}
},
"user": {
"ip": "%%IPADDRESS%%"
},
"device": {
"user_agent": "%%USERAGENT%%",
"device_id": [{
"id": "%eudid!"
}],
"advertising_id": {
"id": "%eudid!"
}
}
};
(function () {
var script = document.createElement('script');
script.onload = script.onreadystatechange = function () {
if (script.readyState && /loaded|complete/.test(script.readyState)) {
script.onload = script.onreadystatechange = undefined;
}
script = undefined;
DoadxJS.loadAd(data, function () {
console.log("SUCCESS");
}, function () {
loaded = true;
window.location = "mopub://failLoad";
});
};
script.onerror = function () {
script.onerror = undefined;
document.body.removeChild(script);
script = undefined;
};
script.type = 'text/javascript';
script.charset = 'UTF-8';
script.src = 'https://xyz.doadx.com/static/bundle.js?t=' + new Date().getTime();
document.body.appendChild(script);
})();
</script>
</body>
</html>
5.附录
5.1 IAB Category Type
value | Description |
---|
IAB1 | Arts & Entertainment |
IAB2 | Automotive |
IAB3 | Business |
IAB4 | Careers |
IAB5 | Education |
IAB6 | Family & Parenting |
IAB7 | Health & Fitness |
IAB8 | Food & Drink |
IAB9 | Hobbies & Interests |
IAB10 | Home & Garden |
IAB11 | Law, Gov’t & Politics |
IAB12 | News |
IAB13 | Personal Finance |
IAB14 | Society |
IAB15 | Science |
IAB16 | Pets |
IAB17 | Sports |
IAB18 | Style & Fashion |
IAB19 | Technology & Computing |
IAB20 | Travel |
IAB21 | Real Estate |
IAB22 | Shopping |
IAB23 | Religion & Spirituality |
IAB24 | Uncategorized |
IAB25 | Non-Standard Content |
IAB26 | Illegal Content |
5.2 Protocols
The following table lists the options for the various bid response protocols that could be supported by an exchange.
value | Description |
---|
1 | VAST 1.0 |
2 | VAST 2.0 |
3 | VAST 3.0 |
4 | VAST 1.0 Wrapper |
5 | VAST 2.0 Wrapper |
6 | VAST 3.0 Wrapper |
7 | VAST 4.0 |
8 | VAST 4.0 Wrapper |
9 | DAAST 1.0 |
10 | DAAST 1.0 Wrapper |
5.3 StartDelay
The following table lists the various options for the video or audio start delay. If the start delay value is greater than 0, then the position is mid-roll and the value indicates the start delay.
value | Description |
---|
>0 | Mid-Roll (value indicates start delay in second) |
0 | Pre-Roll |
-1 | Generic Mid-Roll |
-2 | Generic Post-Roll |
5.4 Linearity
The following table indicates the options for video linearity. “In-stream” or “linear” video refers to preroll, post-roll, or mid-roll video ads where the user is forced to watch ad in order to see the video content. “Overlay” or “non-linear” refer to ads that are shown on top of the video content. This OpenRTB table has values derived from the Inventory Quality Guidelines (IQG). Practitioners should keep in sync with updates to the IQG values.
value | Description |
---|
1 | Linear / In-Stream |
2 | Non-Linear / Overlay |
5.5 Playback Methods
The following table lists the various playback methods.
value | Description |
---|
1 | Initiates on Page Load with Sound On |
2 | Initiates on Page Load with Sound Off by Default |
3 | Initiates on Click with Sound On |
4 | Initiates on Mouse-Over with Sound On |
5 | Initiates on Entering Viewport with Sound On |
6 | Initiates on Entering Viewport with Sound Off by Default |
5.6 Playbackend
The following table lists the various modes for when playback terminates.
value | Description |
---|
1 | On Video Completion or when Terminated by User |
2 | On Leaving Viewport or when Terminated by User |
3 | On Leaving Viewport Continues as a Floating/Slider Unit until Video Completion or when Terminated by User |
5.7 Position
value | Description |
---|
0 | Unknown |
1 | Above the Fold |
2 | DEPRECATED - May or may not be initially visible depending on screen size/resolution. |
3 | Below the Fold |
4 | Header |
5 | Footer |
6 | Sidebar |
7 | Full Screen |
5.8 Device Type
value | Description |
---|
0 | 未知 |
1 | 手机 |
2 | 平板 |
3 | 电视 |
4 | 其他外设 |
5.9 Language
value | Description |
---|
zh | 中文 |
en | 英语 |
ja | 日语 |
ko | 韩语 |
de | 德语 |
fr | 法语 |
pt | 葡萄牙语 |
it | 意大利语 |
5.10 Companion Types
value | Description |
---|
1 | Static Resource |
2 | HTML Resource |
3 | iframe Resource |
5.11 API Frameworks
The following table is a list of API frameworks supported by the publisher
value | Description |
---|
1 | VPAID 1.0 |
2 | VPAID 2.0 |
3 | MRAID-1 |
4 | ORMMA |
5 | MRAID-2 |
6 | MRAID-3 |
5.12 Creative Attributes
The following table specifies a standard list of creative attributes that can describe an ad being served or serve as restrictions of thereof.
value | Description |
---|
1 | Audio Ad (Auto-Play) |
2 | Audio Ad (User Initiated) |
3 | Expandable (Automatic) |
4 | Expandable (User Initiated - Click) |
5 | Expandable (User Initiated - Rollover) |
6 | In-Banner Video Ad (Auto-Play) |
7 | In-Banner Video Ad (User Initiated) |
8 | Pop (e.g., Over, Under, or Upon Exit) |
9 | Provocative or Suggestive Imagery |
10 | Shaky, Flashing, Flickering, Extreme Animation, Smileys |
11 | Surveys |
12 | Text Only |
13 | User Interactive (e.g., Embedded Games) |
14 | Windows Dialog or Alert Style |
15 | Has Audio On/Off Button |
16 | Ad Provides Skip Button (e.g. VPAID-rendered skip button on pre-roll video) |
17 | Adobe Flash |
5.13 Assets Data Type
value | Description |
---|
2 | 广告描述内容 |
12 | 描述用于目标URL的“调用操作”按钮的描述性文本 |
其他 | 点击查看详细文档 |
5.14 Err No and Msg
value | Description |
---|
1000 | Sucess |
1001 | Token error |
1010 | Request JSON Body cannot be parsed correctly |
1011 | Adslot obj has an error or doesn't exist |
1012 | User obj has an error or doesn't exist |
1013 | App obj has an error or doesn't exist |
1014 | Device obj has an error or doesn't exist |
1015 | Reg obj has an error or doesn't exist |
2001 | have no ad |