跳至主要内容

要求

广告投放应用程序接口可从客户端或服务器端调用。

使用客户端实现时,浏览器可能会执行预飞行请求。如果希望避免这种情况,可在请求标头中使用 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
}
]
}