> ## Documentation Index
> Fetch the complete documentation index at: https://docs.oddspapi.io/llms.txt
> Use this file to discover all available pages before exploring further.

# 赛事频道 - 实时比赛元数据流

> 通过WebSocket流式传输实时赛事元数据。比赛状态、开始时间、参赛方、比分和供应商ID映射，用于体育博彩数据集成。

## 数据流内容

给定 `fixtureId` 的元数据 — 包括比赛状态、开始时间、参赛方和赛事/运动信息。
还包括可选的 `scores` 和映射的供应商ID。

这是用于将赔率/比分映射到实际赛事的**锚定数据流**。

***

## 路由

* 实体键：`payload.fixtureId`
* 过滤器：`sportIds`、`tournamentIds`、`fixtureIds`
* 访问权限：由您的 `apiKey` 决定直播/赛前

***

## 负载字段

| 字段                                   | 类型                | 描述                         |
| ------------------------------------ | ----------------- | -------------------------- |
| `fixtureId`                          | `string`          | 赛事唯一ID                     |
| `status`                             | `object`          | 比赛状态信息                     |
| `status.live`                        | `boolean`         | 是否正在直播                     |
| `status.statusId`                    | `number \| null`  | 可选状态码                      |
| `status.statusName`                  | `string \| null`  | 状态名称（如 "Live"、"Postponed"） |
| `sport`                              | `object`          | 运动元数据                      |
| `sport.sportId`                      | `number`          | 运动唯一ID                     |
| `sport.sportName`                    | `string`          | 运动名称                       |
| `tournament`                         | `object`          | 赛事元数据                      |
| `tournament.tournamentId`            | `number`          | 赛事唯一ID                     |
| `tournament.tournamentName`          | `string`          | 赛事名称                       |
| `tournament.categoryName`            | `string`          | 地理/组织分类                    |
| `season`                             | `object`          | 赛季元数据                      |
| `season.seasonId`                    | `number \| null`  | 赛季ID（可为空）                  |
| `season.seasonName`                  | `string \| null`  | 赛季名称                       |
| `season.seasonRound`                 | `number \| null`  | 赛季中的轮次/比赛日                 |
| `venue`                              | `object`          | 场馆元数据                      |
| `venue.venueId`                      | `number \| null`  | 场馆ID                       |
| `venue.venueName`                    | `string \| null`  | 场馆名称（翻译）                   |
| `venue.venueLocation`                | `string \| null`  | 场馆位置（翻译）                   |
| `startTime`                          | `number`          | 预定开始时间（UTC纪元秒）             |
| `trueStartTime`                      | `string \| null`  | 实际开始时间（ISO 8601）           |
| `trueEndTime`                        | `string \| null`  | 实际结束时间（ISO 8601）           |
| `participants`                       | `object`          | 参赛方元数据                     |
| `participants.participant1Id`        | `number`          | 队伍/选手1 ID                  |
| `participants.participant1Name`      | `string`          | 队伍/选手1 名称                  |
| `participants.participant1ShortName` | `string \| null`  | 简称（如 "Hawks"）              |
| `participants.participant1Abbr`      | `string \| null`  | 可选缩写                       |
| `participants.participant1RotNr`     | `number \| null`  | 可选轮换号                      |
| `participants.participant2Id`        | `number`          | 队伍/选手2 ID                  |
| `participants.participant2Name`      | `string`          | 队伍/选手2 名称                  |
| `participants.participant2ShortName` | `string \| null`  | 简称（如 "Heat"）               |
| `participants.participant2Abbr`      | `string \| null`  | 可选缩写                       |
| `participants.participant2RotNr`     | `number \| null`  | 可选轮换号                      |
| `scores`                             | `object`          | 可选比分对象（与 `scores` 流格式相同）   |
| `clock`                              | `object \| null`  | 实时比赛时钟数据                   |
| `clock.currentPeriod`                | `string \| null`  | 当前节（如 "p2"）                |
| `clock.currentTime`                  | `string \| null`  | 当前比赛时间                     |
| `clock.remainingTime`                | `string \| null`  | 比赛剩余时间                     |
| `clock.remainingTimeInPeriod`        | `string \| null`  | 当前节剩余时间                    |
| `clock.stopped`                      | `boolean \| null` | 时钟是否暂停                     |
| `expectedPeriods`                    | `number \| null`  | 预定节数（如半场/盘/节）              |
| `periodLength`                       | `number \| null`  | 每节时长（分钟）                   |
| `externalProviders`                  | `object`          | 映射的供应商ID                   |
| `externalProviders.betradarId`       | `number \| null`  | Betradar 赛事ID              |
| `externalProviders.flashscoreId`     | `string \| null`  | Flashscore ID              |
| `externalProviders.pinnacleId`       | `number \| null`  | Pinnacle 赛事ID              |
| `externalProviders.sofascoreId`      | `number \| null`  | Sofascore ID               |
| `externalProviders.oddinId`          | `number \| null`  | Oddin ID                   |
| `externalProviders.mollybetId`       | `string \| null`  | Mollybet ID                |
| `externalProviders.opticoddsId`      | `string \| null`  | Opticodds ID               |
| `externalProviders.lsportsId`        | `number \| null`  | LSports ID                 |
| `externalProviders.txoddsId`         | `number \| null`  | TXOdds ID                  |

***

## 示例消息（JSON）

```json theme={null}
{
  "channel": "fixtures",
  "type": "UPDATE",
  "payload": {
    "fixtureId": "id1100013270505056",
    "status": {
      "live": true,
      "statusId": 1,
      "statusName": "Live"
    },
    "sport": {
      "sportId": 11,
      "sportName": "Basketball"
    },
    "tournament": {
      "tournamentId": 132,
      "tournamentName": "NBA",
      "categoryName": "USA"
    },
    "season": {
      "seasonId": 131631,
      "seasonName": "NBA 25/26",
      "seasonRound": null
    },
    "venue": {
      "venueId": 6054,
      "venueName": "Madison Square Garden",
      "venueLocation": "New York, NY, USA"
    },
    "startTime": 1776729600,
    "trueStartTime": "2026-04-21T00:09:08+00:00",
    "trueEndTime": null,
    "participants": {
      "participant1Id": 3421,
      "participant1RotNr": 303,
      "participant1Name": "New York Knicks",
      "participant1ShortName": "New York",
      "participant1Abbr": "NYK",
      "participant2Id": 3423,
      "participant2RotNr": 302,
      "participant2Name": "Atlanta Hawks",
      "participant2ShortName": "Atlanta",
      "participant2Abbr": "ATL"
    },
    "scores": {
      "p1": {
        "period": "p1",
        "participant1Score": 32,
        "participant2Score": 23,
        "updatedAt": "2026-04-21T00:59:42.287458+00:00"
      },
      "p2": {
        "period": "p2",
        "participant1Score": 29,
        "participant2Score": 31,
        "updatedAt": "2026-04-21T01:25:05.532295+00:00"
      },
      "result": {
        "period": "result",
        "participant1Score": 61,
        "participant2Score": 54,
        "updatedAt": "2026-04-21T01:24:37.154297+00:00"
      }
    },
    "clock": {
      "currentPeriod": null,
      "currentTime": null,
      "remainingTime": null,
      "remainingTimeInPeriod": null,
      "stopped": null
    },
    "expectedPeriods": 4,
    "periodLength": 12,
    "externalProviders": {
      "betgeniusId": 13808265,
      "betradarId": 70505056,
      "flashscoreId": "nTPkYS3K",
      "mollybetId": "2026-04-21,29093,29096",
      "oddinId": null,
      "opticoddsId": "20260421A1AB4678",
      "pinnacleId": 1628730839,
      "sofascoreId": 15935017,
      "lsportsId": null,
      "txoddsId": null
    },
    "bookmakers": {}
  },
  "ts": 1776729608000,
  "entryId": "1776729608000-4273"
}
```

## 示例：包含 `scores.result` 的赛事更新

某些赛事更新包含 `scores` 对象（例如赛前或结果快照）。

```json theme={null}
{
  "channel": "fixtures",
  "type": "UPDATE",
  "payload": {
    "fixtureId": "id1000070367118324",
    "status": {
      "live": true,
      "statusId": 1,
      "statusName": "Live"
    },
    "sport": {
      "sportId": 10,
      "sportName": "Soccer"
    },
    "tournament": {
      "tournamentId": 703,
      "tournamentName": "Primera Nacional",
      "categoryName": "Argentina"
    },
    "season": {
      "seasonId": 138218,
      "seasonName": "Primera Nacional 2026",
      "seasonRound": 10
    },
    "venue": {
      "venueId": 12720,
      "venueName": "Estadio Don Leon Kolbovsky",
      "venueLocation": "Buenos Aires, Argentina"
    },
    "startTime": 1776729600,
    "trueStartTime": "2026-04-21T00:06:06.546877+00:00",
    "trueEndTime": null,
    "participants": {
      "participant1Id": 53799,
      "participant1RotNr": 210458,
      "participant1Name": "CA Atlanta",
      "participant1ShortName": "Atlanta",
      "participant1Abbr": "ATL",
      "participant2Id": 3214,
      "participant2RotNr": 210457,
      "participant2Name": "Chacarita Juniors",
      "participant2ShortName": "Chacarita Juniors",
      "participant2Abbr": "CAC"
    },
    "scores": {
      "p1": {
        "period": "p1",
        "participant1Score": 0,
        "participant2Score": 0,
        "updatedAt": "2026-04-21T00:55:10.401457+00:00"
      },
      "result": {
        "period": "result",
        "participant1Score": 1,
        "participant2Score": 0,
        "updatedAt": "2026-04-21T01:13:15.757548+00:00"
      }
    },
    "clock": {
      "currentPeriod": null,
      "currentTime": null,
      "remainingTime": null,
      "remainingTimeInPeriod": null,
      "stopped": null
    },
    "expectedPeriods": 2,
    "periodLength": 45,
    "externalProviders": {
      "betgeniusId": 13767372,
      "betradarId": 67118324,
      "flashscoreId": null,
      "mollybetId": "2026-04-21,10097858,10097878",
      "oddinId": null,
      "opticoddsId": "202604183517C8A7",
      "pinnacleId": 1628328116,
      "sofascoreId": 15275552,
      "lsportsId": null,
      "txoddsId": null
    },
    "bookmakers": {}
  },
  "ts": 1776729666000,
  "entryId": "1776729666000-4278"
}
```
