接口说明
返回最近120min内的比赛事件、技术统计、文字直播数据(全量更新)
ps:非120min内的比赛数据有更新,也会同步返回
建议请求频次:2s/次
比赛进行分钟数获取公式
上半场:比赛进行分钟数=(当前时间戳-上半场开球时间戳) / 60 + 1
下半场:比赛进行分钟数=(当前时间戳-下半场开球时间戳) / 60 + 45 + 1
加时:比赛进行分钟数=(当前时间戳-加时开球时间戳) / 60 + 90 + 1
stats 比赛统计字段说明
包含:角球、黄牌、红牌、点球、射正、射偏、进攻、危险进攻、控球率、射门被阻挡
incidents 比赛事件字段说明
包含:黄牌、两黄变红、红牌、进球(助攻)、换人、点球、点球未进、乌龙球、VAR、中场、伤停补时、结束、加时结束、点球大战结束、补水
tlive 文字直播字段说明
包含:黄牌、红牌、进球、换人、角球、越位、助攻、比赛开始、中场、结束等
ps:非120min内的比赛数据有更新,也会同步返回
建议请求频次:2s/次
比赛进行分钟数获取公式
上半场:比赛进行分钟数=(当前时间戳-上半场开球时间戳) / 60 + 1
下半场:比赛进行分钟数=(当前时间戳-下半场开球时间戳) / 60 + 45 + 1
加时:比赛进行分钟数=(当前时间戳-加时开球时间戳) / 60 + 90 + 1
stats 比赛统计字段说明
包含:角球、黄牌、红牌、点球、射正、射偏、进攻、危险进攻、控球率、射门被阻挡
incidents 比赛事件字段说明
包含:黄牌、两黄变红、红牌、进球(助攻)、换人、点球、点球未进、乌龙球、VAR、中场、伤停补时、结束、加时结束、点球大战结束、补水
tlive 文字直播字段说明
包含:黄牌、红牌、进球、换人、角球、越位、助攻、比赛开始、中场、结束等
调用信息
- 请求
GET https://api.sports.csap.ai/api/v1/matches/realtime/events- 鉴权
- 请求头 X-API-Key: <你的 key>(也支持 Authorization: Bearer <key>;?key= 仍可用但不建议,key 会留在地址和日志里)
- 外部 key
- 可调用(数据有范围)外部 key 可以调用,但只返回开放范围内的数据,见「通用说明 · 外部 key 的数据范围」。
- 频率限制
- 每分钟 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/matches/realtime/events" \ -H "X-API-Key: YOUR_API_KEY"
在线调试
示例返回
{
"code": 0,
"data": [
{
"add_time": null,
"added_time": null,
"assist2_name": null,
"assist_name": null,
"away": null,
"away_score": null,
"confirmed": null,
"data": null,
"home": null,
"home_score": null,
"id": 1,
"incident_class": null,
"incident_type": "goal",
"incidents": null,
"injury_length": null,
"is_home": false,
"main": null,
"match_source": "S3",
"player_id": null,
"player_in": null,
"player_name": null,
"player_out": null,
"position": null,
"reason": null,
"reason_type": null,
"score": null,
"second": null,
"seq": 7337779521,
"stats": null,
"text": null,
"time": 8,
"tlive": null,
"type": null,
"updated_at": 1793771299665,
"var_reason": null,
"var_result": null
},
{
"add_time": null,
"added_time": null,
"assist2_name": null,
"assist_name": null,
"away": null,
"away_score": null,
"confirmed": null,
"data": null,
"home": null,
"home_score": null,
"id": 2,
"incident_class": null,
"incident_type": "corner_kick",
"incidents": null,
"injury_length": null,
"is_home": true,
"main": null,
"match_source": "S3",
"player_id": null,
"player_in": null,
"player_name": null,
"player_out": null,
"position": null,
"reason": null,
"reason_type": null,
"score": null,
"second": null,
"seq": 7317951341,
"stats": null,
"text": null,
"time": 12,
"tlive": null,
"type": null,
"updated_at": 1793771299666,
"var_reason": null,
"var_result": null
}
],
"message": "success",
"success": true
}返回字段 37
add_timenull可为空补时(伤停补时事件、伤停补时中发生的事件存在)
added_timenull可为空补时分钟
assist2_namenull可为空
assist_namenull可为空
awaynull可为空客队值
away_scorenull可为空客队比分(常规时间,含补时)
confirmednull可为空是否为确认阵容
datanull可为空事件内容
homenull可为空主队值
home_scorenull可为空主队比分(常规时间,含补时)
idinteger记录 id;翻页游标(id 参数取 >= 此值的记录)。比赛类接口里是我方比赛 id(gmid)
示例: 1incident_classnull可为空
incident_typestring事件类型
示例: "goal"incidentsnull可为空比赛事件字段说明,可能不存在
injury_lengthnull可为空伤停补时分钟
is_homeboolean
示例: falsemainnull可为空是否重要事件,1-是、0-否
match_sourcestring这行数据的来源代号
示例: "S3"gmidinteger可为空我方比赛 id(gmid,全平台唯一)
player_idnull可为空球员 id
player_innull可为空换上球员
player_namenull可为空球员名
player_outnull可为空换下球员
positionnull可为空位置
reasonnull可为空原因
reason_typenull可为空红黄牌、换人事件原因,详见状态码->事件原因(红黄牌、换人事件存在)
scorenull可为空比分
secondnull可为空时间
seqinteger序号
示例: 7337779521statsnull可为空统计项
textnull可为空
timeinteger时间 / 分钟
示例: 8tlivenull可为空文字直播字段说明,可能不存在
typenull可为空类型
updated_atinteger最后更新时间(UTC,ISO 8601;增量同步用 time 参数按它取)
示例: 1793771299665var_reasonnull可为空VAR原因(VAR事件存在) · 1-进球判定 · 2-进球未判定 · 3-点球判定 · 4-点球未判定 · 5-红牌判定 · 6-出牌处罚判定 · 7-错认身份 · 8-角球判定 · 9-角球未判定 · 0-其他
var_resultnull可为空VAR结果(VAR事件存在) · 1-进球有效 · 2-进球无效 · 3-点球有效 · 4-点球取消 · 5-红牌有效 · 6-红牌取消 · 7-出牌处罚核实 · 8-出牌处罚更改 · 9-维持原判 · 10-判罚更改 · 11-角球有效 · 12-角球无效 · 0-未知
错误码
| HTTP | message | 场景 |
|---|---|---|
| 401 | missing API key / unauthorized | 没带 X-API-Key 或 key 无效、已停用 |
| 429 | rate limit exceeded / daily quota exceeded | 超过 key 的每分钟次数或每日配额 |
| 429 | server busy, retry later | 服务端并发名额已满(重型请求同时只有 2 个),按 Retry-After 秒后重试 |
| 500 | query error | 服务端查询失败,可重试 |