常见问题解答
如何查找相关赛事?
可以使用 Get Fixtures 中的 parentId 将相关赛事分组到“parent”赛事。
以下几点可以帮到你:
- 我们有不同的赛事,分别是赛前和实时赛,二者可通过
liveStatus区分。 - 在某些情况下,在一场赛事中可能会有多个实时赛事,但我们不会同时在这两个赛事上提供相同的盘口。
- Parent赛事是指没有
parentId的赛事。 - Parent赛事始终是赛前赛事(
liveStatus= 0 或liveStatus= 2),但 MLB 联赛和电子竞技除外,其中直播赛事(liveStatus=1)可能缺少parentid
示例:
{
"sportId": 29,
"last": 148671597,
"league": [
{
"id": 2331,
"name": "Norway - 1st Division",
"events": [
{
"id": 837721686,
"starts": "2018-04-10T17:00:00Z",
"home": "Viking Fk",
"away": "Mjondalen",
"rotNum": "6751",
"liveStatus": 1,
"status": "O",
"parlayRestriction": 2,
"parentId": 834342247,
"altTeaser": false
},
{
"id": 834342247,
"starts": "2018-04-10T17:00:00Z",
"home": "Viking Fk",
"away": "Mjondalen",
"rotNum": "6751",
"liveStatus": 2,
"status": "I",
"parlayRestriction": 2,
"altTeaser": false
}
]
},
{
"id": 6816,
"name": "Norway - 1st Division Corners",
"events": [
{
"id": 837721684,
"starts": "2018-04-10T17:00:00Z",
"home": "Viking Fk (角球)",
"away": "Mjondalen (角球)",
"rotNum": "6751",
"liveStatus": 1,
"status": "O",
"parlayRestriction": 1,
"parentId": 834342247,
"altTeaser": false
},
{
"id": 837721615,
"starts": "2018-04-10T17:00:00Z",
"home": "Viking Fk (角球)",
"away": "Mjondalen (角球)",
"rotNum": "6751",
"liveStatus": 2,
"status": "I",
"parlayRestriction": 1,
"parentId": 834342247,
"altTeaser": false
}
]
}
]
}
此处有一个赛前的Parent赛事id为834342247,它与现场赛事 id 837721686 相关联,还包括两个角球赛事,分别属于不同的联赛—— 一个是实时赛事(837721684),另一个是赛前赛事(837721615)。
引入Parent赛事消除了对轮换号码的需求。请注意,在下一个版本的 /fixtures 中,rotNum 属性将被停用。
盘口何时开放投注?
当 Get Odds响应中所有以下条件都成立时,某一周期的盘口(如moneyline、spread、totals、teamtotal)才开放进行投注:
- 周期状态 = 1
- 盘口存在
- 周期的截止时间在未来。
示例: 当不提供 moneyline 盘口时,整个对象将丢失。其他盘口类型也是如此。
{
"lineId": 527557614,
"number": 1,
"cutoff": "2018-06-30T21:00:00Z",
"maxSpread": 250,
"maxTotal": 250,
"status": 1,
"spreads": [
{
"hdp": -0.25,
"home": 140,
"away": -172
}
],
"totals": [
{
"points": 0.75,
"over": -128,
"under": 107
}
]
}
请注意,对于现场赛事,赔率和时段状态变化相当频繁。由于这些频繁变化,您在 Get Line 响应中获得 NOT_EXISTS 状态的频率可能比赛前赛事更高。
如何在实时赛事中下注?
对直播延迟赛事的下注与其他投注的处理方式不同。只有在下注被接受后,才会为其分配betId。
要查找此类下注的状态,唯一方法是通过 uniqueRequestIds 查询 Get Bets:
/v1/bets?uniqueRequestIds=86a90ab9-fca1-4703-a11c-ce329a85584e
只要投注处于PENDING_ACCEPTANCE状态,响应将是:
{
"straightBets": [
{
"uniqueRequestId": "86a90ab9-fca1-4703-a11c-ce329a85584e",
"betStatus": "PENDING_ACCEPTANCE"
}
]
}
注意:状态可以从“待接受”变为“未接受”或“已接受”。
如果投注为“未接受”,则响应将是:
{
"straightBets": [
{
"uniqueRequestId": "86a90ab9-fca1-4703-a11c-ce329a85584e",
"betStatus": "NOT_ACCEPTED"
}
]
}
如果投注被接受,响应将包括完整的下注详情:
{
"straightBets": [
{
"betId": 800110193,
"uniqueRequestId": "86a90ab9-fca1-4703-a11c-ce329a85584e",
"wagerNumber": 1,
"placedAt": "2017-12-20T21:57:22Z",
"betStatus": "ACCEPTED",
"betType": "MONEYLINE",
"win": 2519.25,
"risk": 11991.63,
"oddsFormat": "AMERICAN",
"updateSequence": 175277412,
"sportId": 29,
"leagueId": 5595,
"eventId": 799939900,
"price": -476,
"teamName": "Universitario",
"team1": "Universitario",
"team2": "Club Petrolero",
"periodNumber": 0,
"isLive": "TRUE"
}
]
}
我们实施大约6秒的实时延迟,因此第一次调用Get Bets V2接口时应在下注后6秒进行。
下注30分钟后,我们将停止返回提供的 uniqueRequestId 的响应。这是由于缓存清理以保持最佳性能。
另请注意,正在运行的投注列表不会返回任何 PENDING_ACCEPTANCE 或 NOT_ACCEPTED 的实时延迟投注。
我可以多久刷新一次赔率?
请参阅我们的合理使用政策。
你们会缓存响应吗?缓存多久?
所有具有相同参数(例如相同的客户端ID/API密钥/运动ID)feed命令请求都会缓存一分钟。
Get Odds和Get Fixtures的snapshot快照调用会缓存60秒。
Get Odds和Get Fixtures的delta增量调用不会被缓存。
如何只返回有数据的体育项目和联赛?
Get Sports和Get Leagues操作具有hasOfferings属性,该属性指示盘口的可用性。
如何计算非美元货币的最大投注金额?
我们遵循oanda.com,每24小时更新一次汇率。请注意,对于非美元货币,我们将其四舍五入为小于或等于货币转换后指定小数的最大整数。例如,最大投注金额 345.23 英镑将四舍五入为 345 英镑。
API使用的是哪个时区?
所有时间均为GMT格林威治标准时间。
如何知道某个赛事是被删除或结算?
请使用Get Settled Fixtures接口查看赛事的时间段是否已结算或赛事是否被删除。
支持哪些TLS(传输层安全性)版本?
为了符合安全要求,API仅支持TLS 1.2(最好)和TLS 1.1。
为什么我在 API 中找不到某个特定的体育项目或盘口?
我们保留在任何时间、无需事先通知的情况下,限制或终止对任何体育项目、盘口、赛事或投注类型在 API 中的访问权限的权利。
如何获取赔率变化?
1) 调用snapshot快照接口/odds(没有since参数)— 这将返回缓存的赔率快照。
2) 调用delta增量接口/odds(带有since参数,从快照响应中获取)— 获取自快照以来的所有更改。
Delta增量响应随着当前所有盘口的变化而变化。例如,如果我们在某个赛事上提供了周期0和周期1的赔率,并且周期1的某个盘口发生了变化,则Delta调用将仅返回周期1,包含当前提供的所有盘口,而周期0不会出现在Delta响应中。
示例:
1) 快照调用返回周期1和周期0,且两者都有moneyline和spread赔率。
2) 随后的增量调用仅返回周期1,包括moneyline和totals。
=> 这意味着周期0没有任何变化,而在周期1中,spread不再提供,totals现在提供,moneyline可能有新的赔率。
如何根据 /odds 中的最大交易量限制计算最大风险?
/odds操作返回最大投注量限制。
要根据最大交易量计算最大风险,对于十进制赔率格式的价格,可以使用以下公式:
如果价格 > 2,则:
maxRisk = maxVolume
, 否则,当价格 < 2 时:
maxRisk = maxVolume/(price - 1)
示例:
当/odds返回以下moneyline报价时:
{
"lineId": 242220498,
"number": 1,
"cutoff": "2019-08-30T21:00:00Z",
"maxMoneyline": 250,
"status": 1,
"moneyline": {
"home": 1.819,
"away": 2.03
}
}
最大投注量为250。 主队的最大风险为305。 客队的最大风险为250。
使用 API 时允许的最小投注金额是多少?
使用我们的 API 时,每次投注的最小投注金额为 10 美元(或您账户货币的等值金额)。此规定旨在确保所有自动投注行为的一致性与公平性。请确保你的接口集成遵守此限制,低于最低金额的投注可能会被拒绝或不予处理。