实时网球数据

实时网球数据,与每场比赛相连。

通过 WebSocket 接收比分、逐分事件与比赛状态更新。用一致的网球实体标识连接你的记分板、比赛时间线与预测。

从一个事件到你的比赛视图。

查看事件封装及其比赛状态。事件标识、修订版本与游标让应用能够按顺序应用更新并恢复数据流。

WebSocket 消息 · V2

比赛事件与可恢复的数据投递

消息字段

type
match.point.upserted
match_id
mat_00000000-0000-4000-8000-000000000001
cursor
9876543210123456
data.revision
1
事件示例
{
  "schema_version": "2.0",
  "event_id": "evt_00000000-0000-4000-8000-000000000042",
  "cursor": "9876543210123456",
  "type": "match.point.upserted",
  "match_id": "mat_00000000-0000-4000-8000-000000000001",
  "source_observed_at": "2026-10-07T12:00:00.000Z",
  "published_at": "2026-10-07T12:00:00.000Z",
  "data": {
    "id": "pnt_00000000-0000-4000-8000-000000000042",
    "match_id": "mat_00000000-0000-4000-8000-000000000001",
    "revision": 1,
    "sequence": 42,
    "set_no": 1,
    "game_no": 8,
    "point_no": 5,
    "score_before": [
      "30",
      "30"
    ],
    "score_after": [
      "30",
      "40"
    ],
    "server_side": 1,
    "winner_side": 2,
    "serve_number": 2,
    "result_code": "winner",
    "rally_length": 6
  },
  "state": null
}

示例 ID 与时间戳用于展示 V2 消息格式。

为每个事件保留标识与顺序。

使用事件 ID 去重、游标重放及逐分修订版本处理更正。同一比赛 ID 将数据流与 REST 查询关联起来。

type
本条消息承载的已提交变更。
event_id
对同一事件的重复投递进行去重,包括重连后的投递。
cursor
用于有序重放的十进制字符串检查点。应用事件后保存该值。
match_id
实时状态与已保存记录的查询共同使用的规范比赛标识。
data.id / data.revision
根据逐分记录自身的 ID 与修订版本插入或更新。更正时保留其逻辑 ID。

从比赛上下文到你的应用。

  1. 查找你的比赛。

    列出跟踪中的比赛,使用其规范 ID 进行 REST 查询与数据流订阅。

    阅读文档
  2. 使用凭证订阅。

    创建限定范围的流访问凭证并验证连接。将 API 密钥保留在你的服务器上。

    查看 SDK 示例
  3. 保留上下文后恢复。

    保留游标与修订版本,然后重新连接,同时保留每次更新所对应的比赛标识。

    查看重连指南

常见问题

让你的应用与比赛相连。

创建 API 密钥,选择所需比赛,并按照 WebSocket 快速入门完成身份验证、订阅与更新恢复。