接口说明
App Key(pk_ 开头)是给没有服务端的页面用的公开嵌入 Key:只能加载动画直播组件,不能调数据接口,必须绑定域名白名单。嵌入方式、参数和被拒原因见「动画直播组件接入」。这组管理接口用 API Key 调用,控制台「动画直播组件 → App Key」用的是同一组。
新建 / 修改:POST 同一路径,JSON 请求体 name(1~40 字)、config_id、domains(至少一个,最多 20 个,须在 grant_domains 之内)、match_scope(all / live)、daily_limit、max_concurrent、signed;修改时再带 id。新建的返回里有 secret(签名模式用的 App Secret),只显示这一次。
操作:POST /api/v1/widget/app-keys/<id>/<action>,action 为 disable 停用、enable 恢复、rotate 轮换(换新的 pk_ 和 App Secret,旧的立即失效)、secret 只重新生成 App Secret、delete 删除。
被平台停用的 App Key 只能查看:启用、修改、轮换、重新生成 App Secret、删除都回 403;另建或修改别的 Key 去接同一个网站(域名有重叠)也回 403。要恢复请联系商务。
新建 / 修改:POST 同一路径,JSON 请求体 name(1~40 字)、config_id、domains(至少一个,最多 20 个,须在 grant_domains 之内)、match_scope(all / live)、daily_limit、max_concurrent、signed;修改时再带 id。新建的返回里有 secret(签名模式用的 App Secret),只显示这一次。
操作:POST /api/v1/widget/app-keys/<id>/<action>,action 为 disable 停用、enable 恢复、rotate 轮换(换新的 pk_ 和 App Secret,旧的立即失效)、secret 只重新生成 App Secret、delete 删除。
被平台停用的 App Key 只能查看:启用、修改、轮换、重新生成 App Secret、删除都回 403;另建或修改别的 Key 去接同一个网站(域名有重叠)也回 403。要恢复请联系商务。
调用信息
- 请求
GET https://api.sports.csap.ai/api/v1/widget/app-keys- 鉴权
- 请求头 X-API-Key: <你的 key>(也支持 Authorization: Bearer <key>;?key= 仍可用但不建议,key 会留在地址和日志里)
- 外部 key
- 需单独开通需要为 key 开通对应的接口和数据域,未开通时返回 403。
- 频率限制
- 每分钟 3000 次 · 每天 200000 次 · 按 key 配置(以 /api/v1/account 返回的 rate_per_min、quota_daily 为准;上面是试用 key 的值),超出回 429。另外整表快照、不带比赛 id 的统计列表等重型请求全站同时只处理 2 个,排不上回 429 + Retry-After。响应里暂时没有 X-RateLimit-* 头。 详见通用说明
请求参数 0
该接口无请求参数。
请求示例
curl "https://api.sports.csap.ai/api/v1/widget/app-keys" \ -H "X-API-Key: YOUR_API_KEY"
在线调试
示例返回
{
"code": 0,
"data": {
"grant_domains": [
"example.com",
"*.example.com"
],
"keys": [
{
"config_id": "wgt_1cc93950",
"config_name": "比赛页 2.5D",
"created_at": "2026-11-09T23:02:44.525587-08:00",
"created_by": "api",
"daily_limit": 50000,
"denied": {
"concurrent": 0,
"config": 0,
"disabled": 0,
"domain": 0,
"quota": 0,
"rate": 0,
"scope": 0,
"signature": 0
},
"denied_today": 0,
"disabled_at": null,
"disabled_by": "",
"domains": [
"www.example.com",
"*.example.com"
],
"enabled": true,
"id": "wak_de1ac32c",
"key": "pk_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"match_scope": "all",
"max_concurrent": 5,
"name": "官网比赛页",
"online": 0,
"organization_id": 1,
"organization_name": "Example Co",
"signed": false,
"updated_at": "2026-11-10T00:43:01.628914-08:00",
"view": "2.5d",
"views_7d": 0,
"views_today": 0
}
]
},
"message": "success",
"success": true
}返回字段 2
grant_domainsarray平台给本组织开通的组件域名(App Key 的域名白名单必须在这之内)
keysarray<object>App Key 列表· 24
错误码
| HTTP | message | 场景 |
|---|---|---|
| 401 | missing API key / unauthorized | 没带 X-API-Key 或 key 无效、已停用 |
| 403 | 动画直播组件未开通,请联系商务 | 这个组织没开通动画直播组件,或开通已停用 |
| 400 | 名称 1~40 个字 / 至少填一个允许嵌入的域名 / 域名格式不对 | 新建或修改时请求体不合要求 |
| 400 | 域名 … 不在平台给你开通的组件域名里 | 白名单里的域名不在 grant_domains 之内 |
| 403 | 这个 App Key 已被平台停用,请联系商务 | 对一把被平台停用的 App Key 做启用、修改、轮换、重新生成 App Secret 或删除 |
| 403 | 域名 … 属于被平台停用的 App Key,请联系商务 | 新建或修改的 Key 的域名,和一把被平台停用的 Key 的域名有重叠 |
| 404 | 配置不存在 / App Key 不存在 | config_id 或 App Key 的 id 不对,或不属于这个组织 |
| 409 | 平台还没给你的组织配置组件域名,请联系商务 | 组织的组件开通里还没有登记嵌入域名 |
| 429 | rate limit exceeded / daily quota exceeded | 超过 key 的每分钟次数或每日配额 |
| 429 | server busy, retry later | 服务端并发名额已满(重型请求同时只有 2 个),按 Retry-After 秒后重试 |
| 500 | query error | 服务端查询失败,可重试 |