1. 网站广告 SDK(仅 WEB 资产)
在页面中放置一个或多个广告位容器,并只引入一次脚本。SDK 异步加载、3 秒超时、无广告时隐藏容器,单页应用路由变化自动处理,不执行广告主脚本。
<div data-linkad-zone="<ZONE_ID>" style="min-height:90px"></div> <script async src="https://staging.177-2-187-2.nip.io/sdk/linkad.js" data-api="https://staging.177-2-187-2.nip.io"></script>
CSP:script-src 放行 SDK 域名,connect-src 与 img-src 放行广告服务域名;投放接口不使用 Cookie 凭据。
强制底部标识:每条广告底部由 SDK 输出「广告 · 已接入 达客 AD · 投诉广告」,链接目标由平台下发,不可删除、隐藏、遮挡或修改。SDK 在展示时检测该标识是否可见;被隐藏/遮挡的展示不计费、不计收益,并进入风控复核。自行调用 /v1/delivery/ad 的手动接入必须使用响应中的 compliance.home_url 与 compliance.complaint_url 原样渲染两个独立链接,并在上报曝光时提交 footer_ok: true;未上报的展示不计入有效曝光。详见 广告规范。
投放域名规则
| 页面所在地址 | 是否出广告 | 是否计费、计收益 |
|---|---|---|
| 资产已验证的域名及其子域名 | 是 | 是 |
localhost、127.0.0.1(任意端口) | 是,用于接入测试 | 否 |
192.168.*.* 局域网地址 | 否 | 否 |
| 其他任何域名或 IP | 否 | 否 |
容器的 data-linkad-reason 属性会给出无广告原因:DOMAIN_NOT_BOUND 域名未绑定,LAN_NOT_ALLOWED 局域网地址,ORIGIN_MISSING 无法识别页面来源(如沙箱 iframe)。测试地址上的容器带有 data-linkad-mode="TEST"。
禁止放入 iframe:广告和 SDK 只能直接运行在页面中,不允许放到内置 iframe(包括同域 iframe)。SDK 在 iframe 中不会请求广告,容器的 data-linkad-reason 为 IFRAME_NOT_ALLOWED。自行调用接口绕过此限制属于违规,相关流量可被判定无效。
标识被遮挡的风险:同意弹窗、吸底栏等固定元素压住底部标识时,该次展示同样无效并进入风控复核,详见 流量主常见问题。
2. 推广链接与 ClickID
访客打开 /r/{slug} 时服务端生成 linkad_click_id 并 302 到已审核落地页。请在您的服务端或一方 Cookie 中保存该 ID,成交后随回传提交。
3. S2S 签名回传
在广告主后台“转化追踪”创建密钥(secret 仅显示一次,只能保存在服务端)。签名:hex(HMAC_SHA256(secret, timestamp + "\n" + nonce + "\n" + rawBody)),时间误差 ±300 秒,nonce 10 分钟内不可重复,同一 event_id 幂等。
POST /v1/postbacks/conversions
X-LinkAd-Key-Id: lk_xxx
X-LinkAd-Timestamp: 1793340000
X-LinkAd-Nonce: 3f1c...
X-LinkAd-Signature: <hex>
Content-Type: application/json
{"event_id":"evt_1","click_id":"01K...","program_id":"01K...","order_id":"ORD_1","subscription_id":"SUB_1","event_type":"PURCHASE","event_status":"PAID","gross_amount_minor":9900,"refund_amount_minor":0,"currency":"CNY","occurred_at":"2026-10-30T02:00:00Z"}- 续费:
event_type=RENEWAL+subscription_id+billing_period=YYYY-MM,同一订阅同一账期只计一次。 - 退款/拒付:
REFUND/CHARGEBACK,refund_amount_minor为累计退款额,系统生成冲正流水。 - 202 仅表示已可靠接收,不代表已确认成交或可结算。测试环境使用
/v1/postbacks/test(沙盒)。
4. CSV 对账
表头:order_id,status,gross_amount_minor,refund_amount_minor,billing_period。运营上传后逐行比对,差异进入风控复核,不会自动改写订单。