OpenRTB竞价响应校验工具

检查竞价响应里缺失的字段、类型不对的价格和漏掉的宏。

OpenRTB竞价响应校验工具完全在浏览器中运行,含有真实成交id和价格的响应也只在你的设备上被检查。

校验竞价请求

关于 OpenRTB竞价响应校验

竞价响应是OpenRTB对话中较短的那一半,而它出的问题几乎都很结构化,而不是多么精巧:没有impid把竞价挂到某次展示上、价格用字符串发送、创意始终不声明广告主域名,或者胜出通知漏掉了成交价宏,于是回报的成交价是错的。这个校验工具像交易平台那样逐层走查响应,把规范要求的字段和买方与媒体在实践中会拒绝的字段分开列出,每一条结论都带JSON路径。

功能特性

如何使用 OpenRTB竞价响应校验

  1. 粘贴你的竞价服务返回的JSON
  2. 选择交易平台运行的协议版本
  3. 先处理错误,再看警告
  4. 沿着每条结论的JSON路径定位对应的竞价

示例

输入

{ "id": "1", "seatbid": [{ "bid": [{ "id": "b1", "impid": "1", "price": "2.15" }] }] }

输出

error seatbid[0].bid[0].price — price has to be a number, not a string

价格被引号括起来,是竞价被悄悄丢弃的最常见原因。

常见错误与故障排除

常见问题

OpenRTB竞价响应里哪些字段是必填的?
响应需要回传请求id的id字段。每条竞价需要id、能对上某次展示的impid、价格,以及以adm或nurl形式提供的创意。
nbr字段是什么意思?
无竞价原因。这是一个整数代码,说明为什么没有出价——2表示请求无效,8表示用户无法识别,便于交易平台统计。
nurl为什么需要AUCTION_PRICE宏?
因为胜出时交易平台会把成交价代入其中。没有这个宏,胜出通知就不带价格,你的日志记录的会是出价而不是实际支付。
adm和nurl有什么区别?
adm把创意直接放进响应,nurl是胜出后交易平台去抓取创意的URL。如今内联更常见,因为它省掉了渲染路径上的一次往返。
mtype取代了2.5里的什么?
它把过去靠推断的信息写明了。2.5里媒体类型来自展示携带的对象,多格式展示时就失灵了;2.6让竞价直接声明。

相关工具

全部 ArrayKit 工具