竞价响应

对象层次

对象定义

Bid Response Object

FieldScopeTypeDescription
idrequiredstring竞价ID
seatbidoptionalarray of object参见“Seat Bid Object”一节
extoptionalobject参见“Extension Object”一节
Extension Object
FieldScopeTypeDescription
cmrequiredinteger是否需要cookie matching
  • 0:no

  • 1:yes

paraoptionalstringmatch tag的附加参数,例如: a=1&b=2

Seat Bid Object

FieldScopeTypeDescription
bidrequiredarray of object参见“Bid Object”一节

Bid Object

FieldScopeTypeDescription
impidrequiredstring广告位ID
pricerequiredfloat出价,单位为分/CPM
adidrequiredstring广告创意ID
admrequiredstring广告代码
dealidoptionalstringdirect deal ID
advoptionalstring广告主名称
hy2optionalstring广告主二级行业
extoptionalobject扩展字段
adveridoptionalstring广告主id

Extension Object

FieldScopeTypeDescription
toptionalstring引擎竞价确认回传信息

私有竞价

描述

描述

本文档RTB协议 支持以PD、PDB的方式在新浪的广告资源上投放广告,采用PMP方式进行广告的询价,广告询价时以广告主合同ID为候选deal.id,如果一个DSP有多个广告主预定同一广告位,则SAX向DSP询问该广告位广告时,pmp字段中会携带多个deal,每个deal对应一个广告主,deal.id为该广告主与新浪的合同ID。 出价方按照广告主合同Iid进行广告筛选,返回候选广告,返回时需携带选中广告的广告主的合同ID作为deal.id以及竞价通知地址,竞价成功后SAX会发送竞价通知,告知DSP竞价成功,请求响应示例见附件。

广告代码

Site Banner广告

PC

XHTML(注:该创意类型已不支持)

WAP

使用JSON描述,一个广告是一个object:

FieldTypeDescription
srcarray of string素材内容
typearray of string素材类型
linkarray of string点击地址
pvarray of string曝光监测

文字链

src:["文字"]
type:["text"]

横幅和焦点图

src:["图片URL", "图片加载前显示文字"]
type:["image", "alt"]

全屏和流媒体

src:["文字", "图片URL"]
type:["text", "image"]

Site Video广告

VAST XML

App广告

使用JSON描述,一个广告是一个object:

FieldTypeDescription
srcarray of string素材内容
typearray of string素材类型
linkarray of string落地页
viewarray of string曝光监测
clickarray of string点击监测
buttonTypestring按钮样式:"click"表示点击按钮样式,"slide"表示滑动按钮样式,缺省值是"click"

新浪新闻焦点图

src:["标题", "导语", "图片URL"]
type:["text", "text", "image"]

Native广告

参见附录 C, 原生广告规范

可替换宏

价格宏

SAX通过价格宏将结算价格传递给DSP。

${AUCTION_PRICE}

含义:未加密的结算价格

宏替换前:

<img src="http://www.dsp.com/view?p=${AUCTION_PRICE}">

宏替换后:

<img src="http://www.dsp.com/view?p=50">
${AUCTION_PRICE:CUSTOM}

含义:加密的结算价格,解密算法参见“价格加密”一节

宏替换前:

<img src="http://www.dsp.com/view?p=${AUCTION_PRICE:CUSTOM}">

宏替换后:

<img src="http://www.dsp.com/view?p=dSb6akl0RpyWJ2m55BjuLq41NTebYI1QTTqBeg%3d%3d">

点击宏

DSP必须在广告中按照一定方式使用点击宏,以便SAX跟踪广告的点击情况。 使用点击宏时,DSP需要对广告的点击地址进行签名,计算并生成sina_sign参数,签名算法参见“点击签名”一节

${CLICK_URL_UNESC}

含义:未编码的点击监测

宏替换前:

<a href="${CLICK_URL_UNESC}http%3a%2f%2fwww.dsp.com%2fclick%3fa%3d1%26b%3d2&sina_sign=06bd0572edc1fef6"><img src="http://imgpath"></a>

宏替换后:

<a href="http://sax.sina.com.cn/click?url=http%3a%2f%2fwww.dsp.com%2fclick%3fa%3d1%26b%3d2&sina_sign=06bd0572edc1fef6"><img src="http://imgpath"></a>
${CLICK_URL_ESC}

含义:编码的点击监测

宏替换前:

<iframe src=”http://www.dsp.com/ad.php?click=${CLICK_URL_ESC}http%253a%252f%252fwww.dsp.com%252fclick%253fa%253d1%2526b%253d2%26sina_sign%3d06bd0572edc1fef6”></iframe>

宏替换后:

<iframe src=”http://www.dsp.com/ad.php?click=http%3a%2f%2fsax.sina.com.cn%2fclick%3furl%3dhttp%253a%252f%252fwww.dsp.com%252fclick%253fa%253d1%2526b%253d2%26sina_sign%3d06bd0572edc1fef6”></iframe>

设备信息宏

__MD5_IDFA__

含义:对曝光和点击监测中设备IDFA进行宏替换

说明:对dsp返回的曝光和点击监控中的该宏进行IDFA替换,替换为原始IDFA经过MD5加密,再进行BASE64加密后的值

__MD5_IMEI__

含义:对曝光和点击监测设备IMEI进行宏替换

说明:对dsp返回的曝光和点击监控中的该宏进行IMEI替换,替换为原始IMEI经过MD5加密,再进行BASE64加密后的值

__IP__

含义:对曝光和点击监测中ip进行宏替换

__IDFA__

含义:对曝光和点击监测中设备IDFA进行宏替换

说明:对dsp返回的曝光和点击监控中的该宏进行IDFA替换,替换为原始的IDFA值

__OAID__

含义:对曝光和点击监测中设备OAID进行宏替换

说明:对dsp返回的曝光和点击监控中的该宏进行OAID替换,替换为原始的OAID值

价格加密

加密串格式:

initialization_vector(16 bytes)encrypted_price(8 bytes)integrity_signature(4 bytes)

加密算法

输入:

iv16字节,UUID的二级制串,转化为字符串后即为BID
price8字节,待加密的价格
e_key32字节,价格加密key
i_key32字节,完整性校验key

伪代码:

pad = hmac_sha1(e_key, iv) //take first 8 bytes
enc_price = pad <xor> price
signature = hmac_sha1(i_key, price || iv) //take first 4 bytes
message= encode_base64(iv || enc_price || signature)

解密算法

输入:

message40字节,base64编码的加密串
e_key32字节,待加密的价格
i_key32字节,完整性校验key

伪代码:

str = decode_base64(message)
iv, enc_price, signature = split(str)
pad = hmac_sha1(e_key, iv) //take first 8 bytes
price = enc_price<xor> pad
conf_sig = hmac_sha1(i_key, price || iv) //take first 4 bytes
success = (conf_sig == signature)

点击签名

签名算法

输入:

s_key32字节,点击签名key
url广告的点击地址

伪代码:

digest = hmac_sha1(s_key, url)
sina_sign = to_lowercase_hex(digest) //take first 16 bytes