工作原理
relayer 充当交易赞助者:- 你的应用创建一笔交易
- 用户用私钥签名
- 你的应用将交易发送到 Polymarket 的 relayer
- relayer 将交易提交到链上并支付 gas 费
- 交易从用户钱包执行
免 gas 交易需要使用 Builder API Keys 或 Relayer API Keys 进行身份验证。
覆盖范围
Polymarket 为通过 relayer 路由的所有操作支付 gas:| 操作 | 说明 |
|---|---|
| Wallet deployment | 为新用户部署 Safe 或 Proxy 钱包 |
| Token approvals | 授权合约使用 USDC.e 或结果代币 |
| CTF operations | 拆分、合并和兑换仓位 |
| Transfers | 在地址之间转移代币 |
身份验证
Relayer 支持两种身份验证方式。选择适合你用例的方式。使用 Builder API Keys
Builder API Keys 适用于 Builder Program 成员。通过 HMAC-SHA256 签名 header 进行身份验证,使用 relayer SDK 时需要此方式。 所有请求必须包含以下 header:| Header | 说明 |
|---|---|
POLY_BUILDER_API_KEY | 你的 Builder API key |
POLY_BUILDER_TIMESTAMP | Unix 时间戳 |
POLY_BUILDER_PASSPHRASE | 你的 Builder passphrase |
POLY_BUILDER_SIGNATURE | HMAC-SHA256 签名 |
BuilderConfig 提供凭证时,SDK 会自动处理 header 生成。
使用 Relayer API Keys
Relayer API Keys 适用于做市商以及需要更简单方式的用户,无需 HMAC 签名。你可以在 Polymarket 网站的 Settings > API Keys 中创建。 请求中需要包含以下 header:| Header | 说明 |
|---|---|
RELAYER_API_KEY | 你的 Relayer API key |
RELAYER_API_KEY_ADDRESS | 拥有该 key 的地址 |
前置要求
使用 relayer 之前,你需要:| 要求 | 来源 |
|---|---|
| Builder API 凭证或 Relayer API key | Builder Profile 或 Settings > API Keys |
| 用户的私钥或签名器 | 你的钱包集成 |
| USDC.e 余额 | 用于交易(不是用于 gas) |
安装
客户端设置
使用你的签名配置初始化 relayer 客户端:- 本地签名
- 远程签名
当你的后端安全地处理所有交易时,使用本地签名。
钱包类型
初始化客户端时选择钱包类型:| 类型 | 部署方式 | 最适用于 |
|---|---|---|
| Safe | 在首次交易前调用 deploy() | 大多数 builder 集成 |
| Proxy | 首次交易时自动部署 | Magic Link 用户 |
执行交易
使用execute 方法通过 relayer 发送交易:
代币授权
授权合约使用代币:兑换仓位
市场判定后,将获胜代币兑换为 USDC.e:批量交易
在单次调用中原子性地执行多个操作:交易状态
通过这些状态跟踪交易进度:| 状态 | 终态 | 说明 |
|---|---|---|
STATE_NEW | 否 | relayer 已收到交易 |
STATE_EXECUTED | 否 | 已提交到链上 |
STATE_MINED | 否 | 已打包进区块 |
STATE_CONFIRMED | 是 | 成功确认 |
STATE_FAILED | 是 | 永久失败 |
STATE_INVALID | 是 | 被拒绝为无效 |
合约地址
所有 Polymarket 智能合约地址详见合约地址。资源
- Builder Relayer Client (TypeScript)
- Builder Relayer Client (Python)
- Builder Signing SDK (TypeScript)
- Builder Signing SDK (Python)
下一步
Negative Risk Markets
了解多结果事件的资本高效交易。
Positions & Tokens
理解拆分、合并和兑换等代币操作。