要求
广告投放应用程序接口可从客户端或服务器端调用。
使用客户端实现时,浏览器可能会执行预飞行请求。如果希望避免这种情况,可在请求标头中使用 Content-Type: text/plain。这将确保浏览器将请求视为 "简单 "请求,从而跳过预飞行请求。
此外,在客户端调用应用程序接口时,实际上并不需要**IP,因为使用前端和 Javascript 很难检测 IP。相反,我们的应用程序接口会在发出请求时从连接中检测 IP。
在使用服务器端实现时,为确保正确定位,应明确传递用户的正确 IP。否则,广告将以服务器位置为目标,这可能导致日后因 IP 不匹配而使广告效果失效。
无论使用的是客户端还是服务器,如果通过了一个 IP,它将优先于我们检测到的 IP。
要向广告投放 API 执行请求,您需要传递两个对象: 用户和区域**。请求使用 HTTP POST 方式以 JSON 格式发出。
用户
| 参数 | 是否需要? | 说明 |
|---|---|---|
| 本我 | 没有 | 用户 ID |
| ip | 推荐 | 用户 IP 地址。 |
| a | 是 | 用户代理:包含用户浏览器/应用程序和设备/操作系统的字符串。 |
| 语言 | 没有 | 使用标准双字符 ISO 代码加上可选的双字符地区代码设置请求的语言。例如,"en-us "表示美国英语。 |
| 推荐人 | 没有 | 显示广告的网站地址。 |
| el | 没有 | 用户的 Base64 编码电子邮件。 |
| 屏幕分辨率 | 没有 | 用户所用设备的屏幕分辨率 |
| 窗口方向 | 没有 | 如果网站采用移动布局,则应为 "纵向";如果采用桌面布局,则应为 "横向"。 |
| gdpr | 没有 | 隐私建议扩展(对象)。 |
user.gdpr
| 参数 | 说明 |
|---|---|
| gdpr | 如果呼叫方认为用户不在 GDPR 范围内,则该值应为 0;如果用户在 GDPR 范围内,则该值应为 1。 |
| 同意 | 这是 IAB 标准所要求的同意字符串。 |
区段
| 参数 | 是否需要? | 说明 |
|---|---|---|
| 本我 | 是 | 广告区的 ID |
| 字幕 | 没有 | 广告区的子 ID |
| 关键词 | 没有 | 与流量相关联的任何[关键词](using-tags.md),这些关键词可能与特定类型的广告相匹配。如果没有关键字,网站的 URL 将用于匹配 |
| 自定义目标 | 没有 | 自定义区域值(对象) |
zones.custom_targeting
| 参数 | 说明 |
|---|---|
| ex_av | 如果未定义,则应为 0;如果年龄已核实,则应为 1;如果年龄未核实,则应为 2。 |
示例
一次请求可以申请多个广告区。如下图所示,每个广告区都有一个不同的 ID。
{
"user": {
"id": "abdef8u9",
"ip": "10.42.0.1",
"ua": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.63 Safari/537.36",
"language": "en-US",
"referer": "https://blabla.com",
"gdpr" : {
"gdpr" : 1,
"consent": "CPAoZRHPArq3hBcADBENBJCgAAAAAAAAAAqIHKQAAOUgAAAA"
}
},
"zones": [
{
"id": 4031007,
"sub": 111,
"keywords": "humour, general"
},
{
"id": 4031015,
"sub": 222
},
{
"id": 4031019,
"sub": 222
}
]
}