小米移动广告交易平台RTB 接口协议 v 1.3
序号 | 版本 | 时间 | 修改 | 修改人 |
1 | 1.0 | 2015.5.20 | 创建 | |
2 | 1.1 | 2015.10.22 | 增加Android Id | 王晓鹏 |
3 | 1.2 | 2016.06.27 | 增加下载类广告的事件上报接口 | 王晓鹏 |
4 | 1.3 | 2016.09.05 | 1. 增加deeplink支持
2. 废弃Banner、Native等对象 |
王晓鹏 |
7.2 nurl, curl, impurl 字段中的宏定义
1. 总体说明
此文档协助第三方接入小米移动广告平台,其中定义了接口和交互的标准规范。以OpenRTB协议为模板。
2. RTB的基本过程
2.1 通信方式
交易平台和 DSP 之间的基础通信协议采用 HTTP 协议,使用 POST 方法发送 Bid Request 消息,数据格式为Json。使用 GET 方法发送 Win Notice消息。
2.2 HTTP 请求头
Content-Type: application/json
MaxRTB-version: 1.0
2.3 HTTP状态码
正常出价响应包的返回状态码为 HTTP 200 OK,不出价的则为 204 no content。其他情况均认为异常。
2.4 超时时间
默认超时时间为200ms。
3. 字段类型说明
required : 必须存在不为空
recommended : 商业上具有重大意义的字段,通常也不为空
optional : 可选字段 (默认类型)
4. BidRequest
4.1 BidRequest 对象
Attribute | Type | Desciption |
id | string;required | bid request 唯一 ID,由交易平台生成 |
imp | object array;
required |
标识广告位曝光的 Imp 对象列表 |
site | object;
recommended |
Site 流量方对象,只针对 website 流量时存在 |
app | object;
recommended |
App 流量方对象,只针对 App 流量时存在 |
device | object;
recommended |
Device 对象,描述用户的设备信息 |
user | object;
recommended |
User 对象,该设备的用户信息,投放受众 |
test | integer;
default 0 |
测试字段,是否涉及收费;
0 = 生产模式;1=测试模式; |
at | interger;
default 2 |
竞价类型;1 = first price; 2 = second price plus; 交易平台自定义的竞价类型,需大于500; |
tmax | integer ;
default 150 |
超时时间,该字段较为稳定,通常线下提前沟通好;毫秒 |
bcat | string array | 广告行业黑名单 附录:广告行业分类 |
badv | string array | 广告主黑名单,根据域名标注广告主 |
ext | json string | 保留字段 |
4.2 Imp 对象
Attribute | Type | Desciption |
id | string;required | 曝光标识 ID;通常从 1 开始 |
tagid | string; required | 广告位标识 ID ; |
instl | integer; default 0 | 0 : 非全屏非插屏 1 : 插屏,2 : 全屏 |
admtype | integer; required | 曝光位接受的广告素材类型;附录:广告素材类型; 1 : H5 2 : JSON |
templates | object array; required | AdTemplate对象:表示流量方可以支持的模板类型;为空时都可以支持。DSP应该选择其中一个,作为要返回广告的模板 |
bidfloor | double; default 0 | 底价,单位为1分/CPM |
directdeal | object | 直接交易对象 |
adsCount | integer | 请求的广告个数 |
ext | json string | 拓展字段 |
4.3 Banner 对象(废弃,参考模板文档)
Attribute | Type | Description |
w | integer;
recommended |
广告位的宽度;像素 |
h | integer;
recommended |
广告位的高度;像素 |
id | string | Banner 对象ID;通常从1开始 |
btype | integer array | 拒绝的广告类型;附录:Banner 广告类型 |
battr | integer array | 拒绝的创意类型 |
embedding | integer;default 0 | 嵌入类型;1=视频贴片广告;0=其他; |
mines | string array | MIME 类型支持,选项通常包括 ” image/jpg ”,“image/png” |
ext | object | 拓展字段 |
4.4 Native 对象(废弃,参考模板文档)
Attribute | Type | Description |
request | string;required | 遵循原生广告指定规格的请求信息; |
id | string | Native 对象ID;通常从1开始 |
w | integer;
recommended |
广告位的宽度;像素 |
h | integer;
recommended |
广告位的高度;像素 |
ver | string;
recommended |
request 版本 |
api | integer array | 支持的 API 框架列表;见附录 |
battr | integer array | 禁止的创意属性 |
ext | object | 保留字段 |
4.5 TextLink 对象(废弃,参考模板文档)
Attribute | Type | Description |
id | string | TextLink 对象 ID;通常从 1 开始 |
battr | integer array | 拒绝的创意类型 |
length | integer | 文字链最长字数 |
size | integer | 字体大小 |
ext | object | 保留字段 |
4.6 Video 对象(废弃,参考模板文档)
Attribute | Type | Descprition |
mines | string array;
required |
支持播放的广告格式,通常包括mp4 |
minduration | integer;
recommended |
视频广告最小时长;秒 |
maxduration | integer;
recommended |
视频广告最大时长;秒 |
protocols | integer array;
recommended |
支持的视频广告协议列表 |
w | integer;
recommended |
广告位宽度;像素 |
h | integer;
recommended |
广告位高度;像素 |
size | float;
recommended |
视频大小:MB |
battr | integer array | 禁止的创意属性 |
frequencycapping | integer;default 0 | 是否支持频次控制;交易平台离线预取广告时的专用字段;1=yes; 0=no |
ext | object | 拓展字段 |
4.7 Splash 对象(废弃,参考模板文档)
Atrribute | Type | Description |
w | integer;
recommended |
广告位的宽度;像素 |
h | integer;
recommended |
广告位的高度;像素 |
skip | integer; default 1 | 是否可以跳过;1=yes;0=no |
duration | integer | 广告持续时间;毫秒 |
detailpos | integer | 详情图标的位置;待定义 |
btype | integer array | 拒绝的广告类型;附录:Banner 广告类型 |
battr | integer array | 拒绝的创意类型 |
mines | string array | MIME 类型支持,选项通常包括 ” image/jpg ”,“image/png” (由于历史原因该字段拼写错误,已知问题) |
frequencycapping | integer;default 0 | 是否支持频次控制;交易平台离线预取广告时的专用字段;1=yes; 0=no |
ext | object | 拓展字段 |
4.8 Site 对象
Attribute | Type | Description |
id | string;
recommended |
交易平台定义的 site ID |
name | string | Site 名 |
domain | string | 站点 domain |
cat | string array | 站点的内容类别列表 |
page | string | 当前页面 URL |
ref | string | ref URL |
search | string | 搜索词 |
mobile | integer | 移动优化标识
0 = no ; 1 = yes |
publisher | object | 站点 Publisher 信息 |
keywords | string | 站点关键词描述,以 comma 隔开 |
ext | object | 拓展字段 |
4.9 App 对象
Attribute | Type | Description |
id | string;
recommended |
交易平台设定的 app ID |
name | string | 应用名称 |
bundle | string | app 包名; 在交易平台中唯一 |
domain | string | app 对应的domain |
storeurl | string | 应用商店中的URL地址 |
cat | string array | app 的内容类别列表;附录:内容分类 |
ver | string | app 版本号 |
paid | integer | 0 = app 免费 ; 1 = app 付费 |
publisher | object | app 对应的 publisher 信息 |
keywords | string | app 的关键词描述;comma 分割 |
ext | object | 保留字段 |
4.10 Publisher 对象
Attribute | Type | Description |
id | string | 交易平台定义的 publisher ID |
name | string | publisher 名称 |
cat | string array | publisher 内容类别列表 |
domain | string | publisher 最高层次的 domain |
ext | object | 拓展字段 |
4.11 Device 对象
Attribute | Type | Description |
ua | string;
recommended |
Browser User Agent |
geo | object;
recommended |
设备当前位置信息 |
ip | string;
recommended |
ipv4 地址 |
ipv6 | string | ipv6 地址 |
devicetype | integer | 设备类型 |
make | string | 设备厂商 |
model | string | 设备型号 |
os | string | 操作系统; enum(“iOS”,”android”, “WPhone”) |
osv | string | 操作系统版本 |
hwv | string | 设备硬件版本号 |
h | integer | 屏幕高;像素 |
w | integer | 屏幕宽;像素 |
ppi | integer | 每英寸屏幕大小;像素 |
pxratio | double | 物理像素和设备独立像素的比例 |
js | integer | 是否支持javascript
0 = no ; 1= yes |
flashver | string | 浏览器支持的 flash 版本 |
language | string | 浏览器语言;ISO-639-1-alpha-2编码 |
carrier | string | 网络服务提供商;参见附录: 网络服务提供商 |
connectiontype | integer | 网络连接类型;参见附录:联网方式 |
ifa | string | 由广告主定制的 ID |
didsha1 | string | imei hash via sha1 |
didmd5 | string | imei hash via md5, used for android |
dpid | string | Android ID |
dpidsha1 | string | Android ID hash via sha1 |
dpidmd5 | string | Android ID hash via md5 |
idfasha1 | string | idfa hash via sha1 |
idfamd5 | string | idfa hash via md5, used for ios |
macsha1 | string | mac 地址 sha1 |
macmd5 | string | mac 地址 md5 |
cookie | string | cookie ID |
ext | object | 拓展字段 |
注: 不同媒体Device中包含的字段也会有差别,所以对接的时候请联系小米方确认对接位置需要的字段。
4.12 Geo 对象
Attribute | Type | Description |
lat | double | 维度 -90.0 — +90.0,负值代表南 |
lon | double | 经度 -180.0 — +180.0,负值代表西 |
type | integer | 定位数据的来源;附录:定位类型 |
country | string | 国家编码; ISO-3166-1-alpha-3 编码 |
region | string | 标识地区,比如华东、华北等等,暂不支持 |
city | string | 城市 |
ext | object | 拓展字段 |
4.13 DirectDeal 对象
Attribute | Type | Description |
id | string; required | 直接交易标识 ID;由交易平台和 DSP 提前约定 |
ext | object | 保留字段 |
4.14 AdTemplate对象
Attribute | Type | Description |
id | string; required | 广告模板id,请参考模板定义文档 |
width | integer | 图片宽度 |
height | integer | 图片高度 |
4.15 User对象
Attribute | Type | Description |
id | string; recommended | Exchange分配给此用户的唯一标识。建议此ID和下面的buyerid至少有一个 |
buyerid | string;
recommended |
Exchange针对此用户分配给购买方的唯一标识 |
yob | integer | 4位数字的出生年 |
gender | string | 性别,”M” = male, “F”=female, “O”=Other, “U”=unknown |
keywords | string | 逗号分隔的关键词,兴趣和意图 |
customdata | string | 从exchange的cookie中获取的可选数据 |
data | object array | 额外的用户信息。每一个Data对象标识一个不同的数据源 |
ext | object | 保留字段 |
4.16 Data对象
Attribute | Type | Description |
id | string | Exchange分配给数据源的唯一ID |
name | string | Exchange分配各数据源的名字 |
segment | object array | Segment对象,包含实际数据 |
ext | object | 保留字段 |
4.17 Segment对象
Attribute | Type | Description |
id | string | 数据源分配给该Segment的标识ID |
name | string | 数据源分配给该Segment的名字 |
value | string | data segment value |
ext | object | 保留字段 |
5. BidResponse
5.1 BidResponse 对象
Attribute | Type | Description |
id | string; required | 对应的 BidRequest 中定义的 ID |
seatbid | object array; required | seatbid 对象列表 //目前仅支持长度为1 |
bidid | string | Bidder 定义的响应 ID,可用于日志和效果追踪; |
nbr | integer | 不竞价的理由;附录:nbr类型 |
ext | object | 拓展字段 |
5.2 SeatBid 对象
Attribute | Type | Desciption |
bid | object array; required | 和 impression 对应 |
seat | string; required | bidder seat name;最好是拼音 |
cm | integer;
default 0 |
是否需要cookie mapping; 1 = yes ; 0 = no |
group | integer; default 0 | 0 = 可以单独赢下一个impression; 1 = 以组的形式赢下一次BidRequest中的所有impression |
ext | object | 保留字段 |
5.3 Bid 对象
Attribute | Type | Description |
id | string; required | Bidder 定义的 ID , 用于日志和跟踪 |
impid | string; required | 对应 Imp 对象的 ID 属性 |
price | double; required | Bid price as CPM; 必须高于底价,否则竞价失败;必须字段,单位为分 |
adid | string; required | 广告 ID |
nurl | string;
recommend |
Win notice URL ; 该字段支持的宏定义见下文,
可包含宏{WIN_PRICE},由exchange做替换 |
adm | string;required | 广告物料;当 BidRequest 中 admtype为 JSON 时,该字段是JSON String; 详见模板文档 |
tagid | string; required | 广告位标识 ID; 从BidRequest的Imp中获取 |
templateid | string;required | 广告模板 ID ; 若 BidRequest 中包含 list<Template>, Response 中该字段必填;如果Request中包含多个Template,代表该位置支持多种模板类型的广告,投放方可以根据自己需要选取其中一个模板投放,返回投放广告对应的模板的id。模板信息参见《模板文档》 |
billingtype | int | 计费方式。1:千次展示 2:点击 3:下载 4:排期 5:轮播。默认是CPM,目前只支持CPM |
adomain | string array | 广告对应的 domain |
bundle | string | 如果是应用下载类广告,该字段是必填的,代表应用的包名 |
cid | string | 广告 campaign ID |
crid | string | 创意 ID |
cat | string array | 创意的内容类别列表;附录:内容类型 |
attr | integer array | 描述创意属性的列表;附录:创意类型 |
h | integer | 广告创意的高度 |
w | integer | 广告创意的宽度 |
impurl | string array; required | 广告展示监播地址;当 admtype 是 H5 类型时,同时作为 ${IMP_TRACK} 宏定义,用第一个元素替换 ; 该字段支持的宏定义见下文 |
curl | string array; required | 广 告 点 击 监 播 地 址 ;当 admtype 是 H5 类型时,同时作为${CLICK_URL} 宏定义,用第一个元素替换 ; 该字段支持的宏定义见下文 |
videostarturl | string array | 仅用于视频广告;视频开始播放监播地址 |
videostopurl | string array | 仅用于视频广告;视频暂停播放监播地址 |
videoendurl | string array | 仅用于视频广告;视频结束播放监播地址 |
startdurl | string array | 仅用于应用下载广告;开始下载监播地址。如果需要该信息请与小米方确认投放资源是否支持。 |
finishdurl | string array | 仅用于应用下载广告;下载完成监播地址。如果需要该信息请与小米方确认投放资源是否支持。 |
startinstallurl | string array | 仅用于应用下载广告;开始安装监播地址。如果需要该信息请与小米方确认投放资源是否支持。 |
finishinstallurl | string array | 仅用于应用下载广告;安装完成监播地址。如果需要该信息请与小米方确认投放资源是否支持。 |
deeplink | string | Deep link唤起应用 |
frequencycapping | object | 频次控制对象;目前不支持; |
extdata | string | dsp自定义数据,作为{EXT_DATA} 宏定义 |
ext | object | 拓展字段 |
targetType | integer | 广告类型:1.外链 2.应用下载 |
5.4 FrequencyCapping 对象
Attribute | Type | Description |
global | integer; default 1 | 是否跨APP进行频次控制;1=yes;0=no |
weekly | integer; default -1 | 一周内,一个用户展现该广告的最大次数;可以天、小时级别频控同时存在 |
daily | integer; default 1 | 一天内,一个用户展现该广告的最大次数;默认情况下用户一天内展现该广告不超过1次; |
hourly | integer; default -1 | 一小时内,一个用户展现该广告的最大次数; |
ext | object | 拓展字段 |
6. Cookie Mapping
要在匹配表中建立关联,DSP可以随广告投放一个由交易平台提供的匹配代码。代码格式:<img src=”http://cm.xxxxx.com/pixel?max_dspid=1234&max_cm” />
其中的 1234 需要替换为 DSP 方标识符(由交易平台提供)。当BidRequest中 adm 字段类型为 H5 时,DSP直接将匹配代码放置 adm 中即可。否则,DSP 需要在BidResponse中指定相应的 seat 和 cm 字段,由交易平台负责嵌入匹配代码。
DSP 只有在还没有为此用户创建匹配条目(或该条目已过期)时才应投放此代码。交易平台会在收到用户浏览器的代码请求后,将 302 重定向传送给 DSP。此 302 重定向会在网址中加入交易平台用户ID 和版本编号,并会在请求标头中加入DSP Cookie。DSP 负责提供基准网址,交易平台会添加网址参数。
如果 DSP 提供以下基准网址:http://ad.network.com/pixel。 平台就会重定向至以下网址:http://xxxx.com/pixel?max_gid=dGhpcyBpcyBhbil&max_cver=1,通过max_gid 参数传送的平台用户 ID 是 base64 编码字符串。
BidRequest 接口中的 cookie 字段与 Cookie Mapping 服务返回的平台用户 ID 相对应。max_cver 参数可指明用户 ID 的数字版本编号,平台可能会不时更改 Cookie 的模糊配置,并在每次更改时调高 max_cver 的值。
DSP 在收到此重定向(其请求标头包含 DSP Cookie)之后,更新匹配表以添加此DSP Cookie 与 平台用户 ID 之间的关联。DSP随后必须在用户的浏览器上投放一个隐藏的 1×1 图片像素,或者返回 “204 No Content” 响应。
7. 宏定义
7.1 adm 中的宏定义
${LANDING_URL} | langding url |
${IMP_TRACK} | impression url |
${CLICK_URL} | click url |
7.2 nurl, curl, impurl 字段中的宏定义
{WIN_PRICE} | win price |
7.3 WIN_PRICE 说明
成交价单位为 1分/CPM,用于 Win Notice 中通知 DSP 成交价。 Bid Response 中 Bid 对象必须带有 nurl 域,该宏应该包含在 nurl 值中。
成交价采用加密方式传输。
解密算法参考:
价格加密示例:
价格 | 加密串 |
1.0 | cHJpY2VlbmNvZGluZ3doZTzUyMb2dirzYcjALQ |
5.3 | cHJpY2VlbmNvZGluZ3doZTjUy8b2dirzYXcL0Q |
100.555 | cHJpY2VlbmNvZGluZ3doZTzKyOjDQx_zjiVOmw |
77.07 | cHJpY2VlbmNvZGluZ3doZTrN1vbBdirz1G52-Q |
加解密Key:
encryptionKey = encrypriceencodingwhenintegratin
integrityKey = integpriceencodingwhenintegratin
具体参见:
8. 附录
8.1 广告行业分类
一级行业名称 | 一级行业值 | 二级行业名称 | 二级行业值 |
资讯 | 2438 | 摄影 | 2612 |
汽车 | 2613 | ||
婚庆 | 2614 | ||
科技 | 2615 | ||
娱乐时尚 | 2616 | ||
健康 | 2617 | ||
家居园艺 | 2618 | ||
文学与艺术 | 2619 | ||
新闻 | 2620 | ||
财经 | 2621 | ||
宠物动物 | 2623 | ||
情感与两性 | 2624 | ||
房产建筑 | 2625 | ||
法律 | 2626 | ||
其他 | 2716 | ||
财务 | 2439 | 银行证券 | 2627 |
无线支付 | 2628 | ||
理财工具 | 2629 | ||
计算工具 | 2630 | ||
彩票 | 2631 | ||
其他 | 2717 | ||
交通(导航) | 2440 | 地图导航 | 2712 |
交通查询 | 2713 | ||
车位路况 | 2714 | ||
租车打的 | 2715 | ||
其他 | 2718 | ||
系统 | 2441 | 安全工具 | 2632 |
系统优化 | 2633 | ||
应用管理 | 2634 | ||
通讯工具 | 2635 | ||
二维码扫描 | 2636 | ||
浏览器 | 2637 | ||
备份与云存储 | 2638 | ||
输入法 | 2639 | ||
格式转化 | 2640 | ||
其他 | 2719 | ||
健康 | 2442 | 怀孕母婴 | 2641 |
减肥健身 | 2642 | ||
药品查询 | 2643 | ||
疾病咨询 | 2644 | ||
运动指导 | 2645 | ||
两性 | 2646 | ||
其他 | 2720 | ||
教育 | 2443 | 儿童 | 2647 |
词典 | 2648 | ||
英语 | 2649 | ||
职场技能 | 2650 | ||
自然科学 | 2651 | ||
人文历史 | 2652 | ||
经济财经 | 2653 | ||
网络课程 | 2654 | ||
其他 | 2721 | ||
旅行 | 2444 | 旅游信息 | 2655 |
旅游攻略 | 2656 | ||
酒店餐饮 | 2657 | ||
票务查订 | 2658 | ||
其他 | 2722 | ||
美食 | 2445 | 美食资讯 | 2659 |
美食菜谱 | 2660 | ||
团购优惠 | 2661 | ||
本地订餐 | 2662 | ||
其他 | 2723 | ||
商业 | 2446 | 求职 | 2663 |
人脉管理 | 2664 | ||
商业沟通 | 2665 | ||
营销运营 | 2666 | ||
移动办公 | 2667 | ||
其他 | 2724 | ||
购物 | 2447 | 购物指南 | 2668 |
购物商城 | 2669 | ||
团购 | 2670 | ||
其他 | 2725 | ||
社交 | 2448 | 社交通讯 | 2671 |
问答 | 2672 | ||
社区论坛 | 2673 | ||
其他 | 2726 | ||
影像 | 2449 | 影像管理 | 2674 |
影像编辑美化 | 2675 | ||
壁纸美化 | 2676 | ||
影像播放 | 2677 | ||
其他 | 2727 | ||
生活 | 2450 | 天气情况 | 2678 |
计时闹钟 | 2679 | ||
其他 | 2728 | ||
体育 | 2451 | 体育指导 | 2680 |
运动资讯 | 2681 | ||
其他 | 2729 | ||
图书 | 2452 | 阅读软件 | 2682 |
图书资源 | 2683 | ||
其他 | 2730 | ||
效率 | 2453 | 日程管理 | 2684 |
邮件管理 | 2685 | ||
备忘记录 | 2686 | ||
量度工具 | 2687 | ||
扫描工具 | 2688 | ||
办公室软件 | 2689 | ||
其他 | 2731 | ||
娱乐 | 2454 | 电影音乐 | 2690 |
视频播放 | 2691 | ||
音乐管理 | 2692 | ||
游戏大厅 | 2693 | ||
占卜风水 | 2694 | ||
语录笑话 | 2695 | ||
漫画 | 2696 | ||
画图工具 | 2697 | ||
虚拟宠物 | 2698 | ||
其他 | 2732 | ||
游戏 | 2455 | 在线网游 | 2699 |
儿童游戏 | 2700 | ||
棋牌游戏 | 2701 | ||
教育游戏 | 2702 | ||
街机游戏 | 2703 | ||
益智休闲游戏 | 2704 | ||
体育游戏 | 2705 | ||
动作游戏 | 2706 | ||
角色扮演游戏 | 2707 | ||
策略游戏 | 2708 | ||
赛车游戏 | 2709 | ||
音乐游戏 | 2710 | ||
其他 | 2733 | ||
其他 | 2456 | 其他 | 2711 |
8.2 广告创意类型
ID | 类型描述 |
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 Can be Skipped (e.g., Skip Button on Pre-Roll Video) |
8.3 广告位置类型
8.4 广告点击类型
ID | 点击类型 |
1 | 发送电子邮件 |
2 | 下载 App |
3 | 打开网页 |
4 | 发送短信 |
5 | 拨打电话 |
6 | 到 AppStore 下载 App |
7 | 打开地图 |
10 | 其他 |
8.5 联网方式
ID | 联网方式 |
0 | 未知 |
1 | Ethernet |
2 | WIFI 网络 |
3 | 蜂窝数据网络 – 未知 |
4 | 蜂窝数据网络 – 2G |
5 | 蜂窝数据网络 – 3G |
6 | 蜂窝数据网络 – 4G |
8.6 设备类型
ID | 设备类型 |
0 | 未知 |
1 | iPhone |
2 | Android 手机 |
3 | iPad |
4 | Windows Phone |
5 | Android 平板 |
6 | 智能 TV |
8.7 内容分类
ID | 内容分类 |
1 | 图书与工具书 |
2 | 商务 |
3 | 动漫 |
4 | 通讯 |
5 | 教育 |
6 | 娱乐 |
7 | 财务 |
8 | 游戏 |
9 | 健康与健身 |
10 | 软件与演示 |
11 | 生活时尚 |
12 | 动态壁纸 |
13 | 媒体与视频 |
14 | 医药 |
15 | 音乐与音频 |
16 | 新闻杂志 |
17 | 个性化 |
18 | 摄影 |
19 | 效率 |
20 | 购物 |
21 | 社交 |
22 | 体育 |
23 | 工具 |
24 | 交通运输 |
25 | 旅游与本地出行 |
26 | 天气 |
27 | 小部件 |
28 | 游戏 |
40 | 其他 |
8.8 Banner 广告类型
ID | 广告类型 |
1 | XHTML Banner Ad. (usually mobile) |
2 | JavaScript Ad; must be valid XHTML (i.e., Script Tags Included) |
3 | iframe |
8.9 Non-Bid Reason Nbr类型
ID | 不竞价理由 |
1 | 未知错误 |
2 | 技术错误 |
3 | 请求不正确 |
4 | 网络爬虫 |
5 | 非正常流量 |
6 | 设备不支持 |
7 | 网站或流量方阻止 |
8 | 用户不匹配 |
8.10 定位类型
ID | 定位类型 |
1 | GPS |
2 | IP 地址 |
3 | 用户注册信息 |
8.11 广告素材类型
ID | 素材类型 |
1 | H5 |
2 | JSON |
8.12 广告位置类型
ID | 素材类型 |
0 | Unkonwn |
1 | 首屏 |
2 | 首屏以下 |
4 | 页面头部 |
5 | 页面底部 |
6 | 侧边栏 |
7 | 全屏 |
20 | 第二屏 |
21 | 第三屏 |
22 | 第四屏 |
8.13 API框架列表
ID | 素材类型 |
1 | VPAID 1.0 |
2 | VPAID 2.0 |
3 | MRAID-1 |
4 | ORMMA |
5 | MRAID-2 |
8.14 视频广告协议列表
ID | 素材类型 |
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 |
8.15 网络服务提供商列表
ID | 名称 |
46000 | 中国移动 |
46001 | 中国联通 |
46002 | 中国移动 |
46003 | 中国电信 |
46005 | 中国电信 |
46006 | 中国联通 |
46007 | 中国移动 |
9. 请求响应示例
BidRequest Banner 示例:
{
“id”: “2c8668e97cac6354ed54fe0b52410edd”,
“imp”: [{
“id”: “1”,
“tagid”: “1.1.b.2”,
“banner”: {
“w”: 1000,
“h”: 500,
“embedding”: 0,
“mines”: [“image/jpg”,
“image/png”]
},
“admtype”: 2,
“bidfloor”: 0.0,
“templates”: [{
“id”: “1.5”,
“width”: 1040,
“height”: 467
}],
“adsCount”: 1,
“ext”: “{\”Test\”:\”Test\”}”
}],
“app”: {
“name”: “MiuiVideo”,
“bundle”: “com.miui.video”
},
“device”: {
“ip”: “114.255.3.131”,
“devicetype”: 2,
“make”: “xiaomi”,
“model”: “Nexus One”,
“os”: “android”,
“osv”: “4.4.2”,
“h”: 0,
“w”: 0,
“js”: 0,
“language”: “简体中文”,
“connectiontype”: 2,
“didmd5”: “d08dbe3ec4bd404b8afce62d428c1ef7”
},
“test”: 0,
“at”: 2
}
BidRequest Native 示例:
{
“id”: “5db9b842f0fdb7c87fae8aec8a18dcc4”,
“imp”: [{
“id”: “1”,
“tagid”: “1.3.a.1”,
“nativead”: {
“request”: “”,
“w”: 1000,
“h”: 500
},
“admtype”: 2,
“bidfloor”: 0.0,
“templates”: [{
“id”: “2.1”,
“width”: 480,
“height”: 360
},
{
“id”: “2.3”,
“width”: 480,
“height”: 360
}],
“adsCount”: 1
},
{
“id”: “2”,
“tagid”: “1.3.a.2”,
“nativead”: {
“request”: “”,
“w”: 1000,
“h”: 500
},
“admtype”: 2,
“bidfloor”: 0.0,
“templates”: [{
“id”: “2.1”,
“width”: 480,
“height”: 360
},
{
“id”: “2.3”,
“width”: 480,
“height”: 360
}],
“adsCount”: 1
}],
“app”: {
“name”: “yidiannews”,
“bundle”: “com.yidian.org”
},
“device”: {
“ip”: “114.255.3.131”,
“devicetype”: 2,
“make”: “xiaomi”,
“model”: “MI 3”,
“os”: “android”,
“osv”: “4.4.2”,
“h”: 1920,
“w”: 1080,
“js”: 0,
“language”: “zh”,
“connectiontype”: 2,
“didmd5”: “d08dbe3ec4bd404b8afce62d428c1ef7”
},
“test”: 0,
“at”: 2
}
BidRequest Video示例
{
“id”: “2c8668e97cac6354ed54fe0b52410edd”,
“imp”: [{
“id”: “1”,
“tagid”: “1.1.g.1”,
“video”: {
“mines”: [“video/mp4”,
“video/flv”],
“minduration”: 15,
“maxduration”: 15,
“w”: 720,
“h”: 405
},
“admtype”: 2,
“bidfloor”: 0.0,
“templates”: [{
“id”: “4.2”,
“width”: 720,
“height”: 405
}],
“adsCount”: 1
}],
“app”: {
“name”: “MiuiVideo”,
“bundle”: “com.miui.video”
},
“device”: {
“ip”: “114.255.3.131”,
“devicetype”: 2,
“make”: “xiaomi”,
“model”: “Nexus One”,
“os”: “android”,
“osv”: “4.4.2”,
“h”: 0,
“w”: 0,
“js”: 0,
“language”: “简体中文”,
“connectiontype”: 2,
“didmd5”: “d08dbe3ec4bd404b8afce62d428c1ef7”
},
“test”: 0,
“at”: 2
}
BidRequest Splash 示例
{
“id”: “489f591277cf86ae566e68116c3b2c2f”,
“imp”: [{
“id”: “1”,
“tagid”: “1.3.c.1”,
“splash”: {
“w”: 1080,
“h”: 1920,
“skip”: 0,
“duration”: 5000,
“mines”: [“image/jpg”],
“frequencycapping”: 0
},
“admtype”: 2,
“bidfloor”: 0.0,
“templates”: [{
“id”: “5.1”,
“width”: 1080,
“height”: 1920
}],
“adsCount”: 1,
“ext”: “{\”isPreCache\”:\”true\”,\”TARGETING_MEDIA_DEVICE\”:\”18\”,\”salesTeam\”:\”1,2\”,\”TARGETING_SPLASH_VERSION\”:\”1,2\”,\”TARGETING_MEDIA_CHANNEL\”:\”16\”}”
}],
“app”: {
“name”: “yidiannews”,
“bundle”: “com.yidian.org”
},
“device”: {
“ip”: “114.255.3.131”,
“devicetype”: 2,
“make”: “xiaomi”,
“model”: “MI 3”,
“os”: “android”,
“osv”: “4.4.2”,
“h”: 1920,
“w”: 1080,
“js”: 0,
“language”: “zh”,
“connectiontype”: 2,
“didmd5”: “d08dbe3ec4bd404b8afce62d428c1ef7”
},
“test”: 0,
“at”: 2
}
BidResponse 示例:
{
“id”: “489f591277cf86ae566e68116c3b2c2f”,
“seatbid”: [{
“bid”: [{
“id”: “489f591277cf86ae566e68116c3b2c2f_1_47154769”,
“impid”: “1”,
“price”: 280,
“adid”: “999994”,
“adm”: “{ \”landingurl\”: \”www.optaim.com\”, \”imgurl\”: \”https://4.bp.blogspot.com/-hkZVRGabhD8/U3bv0mF-KEI/AAAAAAAA4tQ/oj4Vrxbw3Rs/s0/Golden+Splash_smartphone.jpg \”,}”,
“tagid”: “1.3.c.1”,
“templateid”: “5.1”,
“h”: 1080,
“w”: 1920,
“landingurl”: “http://www.optaim.com/blog/”,
“impurl”: [“http://imtest.optaim.com/i?settlePrice={WIN_PRICE}\u0026info=CmsKKzQ4OWY1OTEyNzdjZjg2YWU1NjZlNjgxMTZjM2IyYzJmXzFfNDcxNTQ3NjkSBzEuMy5jLjEYuoQ9IJBOKEQwIzogNjU2ZTYwMWYxZTgyMjI1Zjk1OTNlMjk3YjZkYjgwMGFAuAhIgA9QAhICbWkY8dTWsgUiGggAEJgCGJgCIJgCKAEwAUAASQAAAAAAAAAAKj4IAxIgZDA4ZGJlM2VjNGJkNDA0YjhhZmNlNjJkNDI4YzFlZjcYCyIHYW5kcm9pZCoFNC40LjI6BE1JIDNAATDQDzoFenl6LTRAAFAAYABpAAAAAAAA8D9w_KziBKIBB2Q1ZWNjYTA%3D\u0026isPb=1”],
“curl”: [“http://cktest.optaim.com/c?info=CmsKKzQ4OWY1OTEyNzdjZjg2YWU1NjZlNjgxMTZjM2IyYzJmXzFfNDcxNTQ3NjkSBzEuMy5jLjEYuoQ9IJBOKEQwIzogNjU2ZTYwMWYxZTgyMjI1Zjk1OTNlMjk3YjZkYjgwMGFAuAhIgA9QAhICbWkY8dTWsgUiGggAEJgCGJgCIJgCKAEwAUAASQAAAAAAAAAAKj4IAxIgZDA4ZGJlM2VjNGJkNDA0YjhhZmNlNjJkNDI4YzFlZjcYCyIHYW5kcm9pZCoFNC40LjI6BE1JIDNAATDQDzoFenl6LTRAAFAAYABpAAAAAAAA8D9w_KziBKIBB2Q1ZWNjYTA%3D\u0026isPb=1\u0026target=http%3A%2F%2Fwww.optaim.com%2Fblog%2F”]
}],
“seat”: “optaim”,
“cm”: 0,
“group”: 0
}]
}