SupplyChain 对象让买方和中间方能够了解正在销售/转售广告资源的各方。该对象可与 ads.txt
/ads.txt
和 ads.txt
结合使用,以提高广告生态系统的透明度。
- 发布商发送出价请求。
- 买方通过 SupplyChain 对象收到出价请求和相关数据。
- 买方查找转销广告资源的所有中间方的身份信息。
- 买方抓取并验证获权销售广告资源的供应商。
在适用的情境下,Google 会自动在 OpenRTB 请求或 Google RTB 协议中创建这类对象。
SupplyChain 对象的工作原理
SupplyChain 对象(也称为
)是 OpenRTB 出价请求的一部分,由多个“节点”构成。schain
schain
对象中的每个节点都代表一个参与出价请求的特定实体,出价请求则包含了广告资源的直接付款流程中涉及到的所有实体。
// 示例对象
"schain": {
"complete": 1,
"nodes": [{
"asi":"google.com",
"sid":"pub-1234567891234567", // 与 sellers.json 中发布商的 seller_id 相同
"hp":1
}],
"ver":"1.0"
}
如需了解更多详情,请阅读 OpenRTB 的开发者文档和 IAB 的文档。
SupplyChain 对象的外观会因您与买方的合作方式而异。
直接通过 Google 销售广告资源的发布商
对于直接通过 Ad Manager、AdMob 或 AdSense 销售广告资源的发布商,schain
对象仅包含 1 个代表“google.com”的节点,相应的 seller_id
可在 sellers.json 中找到。
使用公开出价的发布商
对于使用公开出价与第三方广告交易平台合作的发布商,schain
对象包含 2 个节点:一个节点代表 google.com(相应的 seller_id
可在 sellers.json 中找到),另一个节点代表广告交易平台收益合作伙伴。
就像 Google 会在发送出价请求之前创建代表 google.com 的节点一样,第三方广告交易平台会负责在传递请求之前添加自己的节点。
所有非付款中间方
不处理付款的中间方不会包含在 SupplyChain 对象中。这包括客户端标头出价、非付款标头出价和其他中介。
在发出请求之前使用支付中介的发布商
在向 Google Ad Manager 发出请求之前利用支付中间方的发布商必须根据 IAB 指南传递 SupplyChain
对象。SupplyChain
对象应仅包含直接参与广告资源支付流程的中间方。此类中间方可能包括发布商使用的第三方广告服务器技术。您可以使用 schain 参数在广告请求中发送 SupplyChain
对象。
SupplyChain
对象的任何其他节点也应在发布商的 ads.txt/app-ads.txt 文件中体现出来,否则买方可能会认为流量未经授权。使用“多客户管理”的发布商
通过多客户管理 (MCM),父级发布商可以逐个地(借助“管理帐号”这一委托类型)或批量地(借助“管理广告资源”这一委托类型)利用子发布商的广告资源创收。
对于使用“管理帐号”的合作伙伴
对于使用管理帐号这一委托类型的父级发布商和子发布商,schain
对象会有 1 个包含子发布商的卖方 ID 的节点,并且相应链会被标记为完成。对于使用“管理帐号”这一委托类型的发布商,创收是在子发布商的帐号中进行的。子发布商会被视为最终发布商。父级发布商的信息未包含在 schain
对象中。
对于使用“管理广告资源”的合作伙伴
SupplyChain 对象现已针对 MCM 管理广告资源发布商标记为已完成。MCM 中的子发布商会对应 1 个节点,MCM 中的父级发布商也会对应 1 个节点,整条供应链将得以成功闭合。
此次更新要求 MCM 工具中的“管理广告资源”父级必须通过 Ad Manager 前端或 API 共享其子发布商的卖方 ID (SID)。
完整 SupplyChain 对象示例
"schain" : {
"ver": "1.0",
"complete" : 1,
"nodes" : [
// MCM 子发布商的节点
{
"asi":"mcm-parent-example.com", // 这是一个示例。请务必输入父级的实际域名。
"sid":"52e41fac28963d1e058a106f", // 父级发布商的 seller.json 中的子卖方 ID
"hp":1,
},
// MCM MI 父级对应的节点
{
"asi":"google.com",
"sid":"pub-1234567891234567", // Google 的 seller.json 中的 MCM 父级发布商 ID
"hp":1,
}
]
}
常见问题解答
为什么 MCM 中的父级发布商需要创建 sellers.json 文件?
通过允许在 sellers.json 文件中列出合作伙伴的信息来公开这些信息,是帮助广告买方验证其广告资源的重要步骤。
详细了解 IAB sellers.json 规范。
我的所有子发布商是否都必须具备有效的 ads.txt 文件?
如果子发布商的 ads.txt 不包含将 MCM 中的父级发布商列为“DIRECT”的行(例如 MCM-parent-example.com, Seller-ID for the MCM child, DIRECT),但其中列出的 Google 行包含父级发布商 ID(例如 google.com, PUB ID for the MCM parent, RESELLER, f08c47fec0942fa0),收入是否会受到任何负面影响?供应链是否会被标记为完成?