核心概念
预言机与结算
预言机是 SatoriEx 透明的结算接口。三个公开接口让任何人——用户、开发者、记者、审计人员——无需账户、API 密钥或信任我们的承诺,即可核验每个待处理和已完成的裁决。
想了解概念背景?
如果您想了解裁决作为平台功能的含义——阶段、争议窗口期、支付——请先阅读裁决概念页面。 阅读:裁决与结算
Coming from Polymarket?
Polymarket's resolution uses UMA's Optimistic Oracle — anyone can propose with a $750 bond, anyone can dispute, escalations route to a DVM token-holder vote. SatoriEx uses an optimistic-bonded model with similar mechanics scaled for our market: any KYC-verified user can propose an outcome under bond, anyone can file a $10 dispute (refunded + $5 reward if upheld), and a tier-2 escalation routes to an independent voter panel — not the original proposer — for the final decision. Public endpoints make every step auditable, and the proposer's bond is slashed to the dispute reserve when an upheld escalation overturns the outcome.
为何设置公开接口
预测市场只有在交易者能自行核验结果时才有效。解决结果由版主(或更高权限)提议,由独立管理员(或超级管理员)确认。我们公开裁决流程,使其不依赖于对 SatoriEx 的信任。
- 任何人都可以列出当前在争议窗口期内的市场并读取提案胜者。
- 任何人都可以列出已关闭但尚未裁决的市场——适用于监督机构。
- 任何人都可以列出历史上每个已裁决和已结算的市场及其胜出结果。
公开接口
三个 GET 接口承载整个透明度接口。均无需身份验证。所有接口支持标准 page 和 size 参数分页;结果可按分类和搜索词过滤。
| 接口 | 返回内容 | 适用场景 |
|---|---|---|
| GET /oracle/propose | 已过关闭时间、等待提案胜者的活跃市场。 | 监控即将裁决的市场。 |
| GET /oracle/verify | 2 小时争议窗口期内的市场及其提案胜者。 | 审计待处理裁决;如有异议可提出争议。 |
| GET /oracle/settled | 已裁决和已结算的市场,包含胜出结果和裁决时间戳。 | 用于分析、报告或第三方数据源的历史记录。 |
# All three endpoints are public — no auth required. curl https://staging.satoriex.io/api/v1/oracle/verify?page=1&size=50 curl https://staging.satoriex.io/api/v1/oracle/propose curl https://staging.satoriex.io/api/v1/oracle/settled?category=politics
这些接口设计为可缓存。监督服务通常在争议窗口期内每隔几分钟轮询 /verify。
响应结构
三个接口返回相同的响应格式——分页的市场列表,每个市场包含其结果、当前价格、争议数量和争议截止时间。字段名称与底层市场模型一致。
{
"code": 0,
"data": {
"markets": [{
"id": "mkt_01H...",
"title": "Will the central bank cut rates in May?",
"status": "resolved",
"winning_outcome_id": "out_01H...",
"resolved_at": "2026-05-08T14:02:31Z",
"dispute_end_time": "2026-05-09T14:02:31Z",
"dispute_count": 0,
"outcomes": [{ "id": "out_01H...", "label": "Yes", "price_bps": 7400 }]
}],
"total": 1247,
"page": 1,
"size": 50
}
}裁决操作
读取预言机是开放的,但对其进行操作则不然。唯一的写入接口 POST /oracle/resolve 接受胜出结果和对裁决载荷的 HMAC-SHA256 签名。
POST /api/v1/oracle/resolve
Content-Type: application/json
{
"market_id": "mkt_01H...",
"winning_outcome_id": "out_01H...",
"timestamp": "2026-05-11T14:02:31Z",
"signature": "<HMAC-SHA256 over: market_id:winning_outcome_id:unix_ts>"
}
# Signature pre-image uses ':' as delimiter and the unix epoch
# seconds form of timestamp. Requests older than 5 minutes are
# rejected as replay-suspect.- 需要服务端共享密钥——切勿在客户端代码中暴露签名密钥。
- 签名覆盖 market_id、winning_outcome_id 和新鲜随机数;重放尝试将被拒绝。
- 只有超级管理员或受信任的预言机 Webhook 才能生成有效签名。
- 双人审批仍然适用——完整生命周期请参阅裁决概念页面。
信任模型概览
不同操作需要不同权限。可读取的内容均为公开;可写入的内容需要缴纳保证金的用户账户(争议)或签名的管理员操作(裁决)。
| 能力 | 谁可以执行 |
|---|---|
| 读取待处理和已结算的裁决 | 任何人——无需账户 |
| 读取针对任何裁决的未决争议 | 任何人——无需账户 |
| 对提案裁决提出争议 | 任何持有 $10 USDC 保证金的用户 |
| 为市场提案胜出结果 | 版主或更高权限(首位提议者) |
| 确认提案裁决 | 独立管理员(或更高权限)——与提案人不同 |
双人审批在服务端强制执行。同一管理员账户不能同时提案和确认。
相关内容
概念生命周期——暂停、提案、批准、争议窗口期、结算——请参阅: 裁决与结算