Skip to main content
速览 —**订单(order)**是你的指令;**投注(bet)**是在博彩商处实际成交的下注。标识符(fixtureIdoutcomeIdplayerIdparticipantId)与 OddsPapi v5 共享。每个订单都带有唯一的 requestUuid 用于幂等。三条独立的生命周期分别追踪订单、它的每个投注,以及每个投注的结算。

标识符

ABP 与 OddsPapi v5 共享标识符空间——你通过 OddsPapi 发现的 fixtureIdoutcomeId 就是发送给 ABP 的值,无需任何转换层。

盘口键(Market keys)

在内部,每个定价选项都由一个复合键寻址:
你很少需要手动构造它们——GET /betslip 会返回已键入、可直接使用的结构——但理解其形态有助于阅读 WebSocket 的 betslip 负载。

订单与投注

这是最重要的一个区分。 当涉及部分成交或多博彩商路由时,一个订单可能产生多个投注。例如,一个 5,000 USD 的订单可能在两家博彩商处成交为三笔投注。详见订单下注

幂等性与请求去重

网络重试不可避免,而重试的下单绝不能造成重复下注。ABP 通过请求去重来保证这一点。
1

为每个订单分配唯一的 requestUuid

POST /place-orders 批次中的每个订单都带有自己的 requestUuid(标准 8-4-4-4-12 UUID)。在客户端生成一次,并在每次重试该订单时复用同一个值。
2

服务端进行指纹识别

服务端会以 30 分钟 TTL 记录已见过的每个 requestUuid。在该窗口内,重复出现的相同 requestUuid 会被识别为重复。
3

重复项被静默跳过

重复的订单不会再次下注,也不会作为被拒原因返回,只是被跳过,批次中的其余订单照常处理。
4

整批均为重复时返回 409

如果请求中的每个订单都是重复项,则无事可做,请求返回 409 Conflict 并附上相关 UUID。
在 30 分钟内将某个 requestUuid 复用于不同的订单,会导致该订单被跳过。请始终为每次不同的下单生成新的 UUID,仅在重试同一次下单时原样复用它。

订单生命周期

投注生命周期

结算生命周期

投注 CONFIRMED 后,结算追踪资金结果:
结算变更通过 settlements WebSocket 频道推送。参见订单下注WebSocket

账户优先级与额度级联

每个博彩商账户都有 priority(越高越优先)。路由时,ABP 会为每家博彩商优先选择优先级最高的活跃账户。 下注额度按优先顺序解析——账户额度 > 博彩商额度 > 赔率额度——取第一个非空值:
完整细节与示例见币种与额度

术语表

后续步骤

订单下注

成交、定价与额度级联的运作方式。

币种与额度

计价、换算与额度详解。

快速开始

5 步完成首次下注。

博彩商

全部 32 家博彩商的能力矩阵。