跳转到主要内容
POST
提交已签名抽卡请求并流式接收结果
提交开发者密钥和买家对完整抽卡数据的 Permit2 签名。结果归属于该开发者和买家钱包。

请求

需要开发者密钥和钱包签名

响应

HTTP 200 事件流

每个 data 都是 JSON 对象。所有事件均按下表顺序包含这些字段,对应 GachaV2PullStreamProgressData。pull_started 的附加字段见 GachaV2PullStreamStartedData。payment_confirmed 的附加字段见 GachaV2PullStreamPaymentConfirmedData。draws_resolved 在通用字段之后返回以下字段,见 GachaV2PullStreamDrawsResolvedData。pull_failed 的附加字段见 GachaV2PullStreamFailedData。

事件流建立后的失败

收到 pull_failed 时,根据 data.code 处理失败,并用 data.message 展示原因。data.error 返回相同文本。若事件流失败或连接中断,先核对原请求,再决定是否签名。付款可能已经确认。如果 data.message 是 Unable to fund the pull.,请按 data.code 查下表。其他响应文本列在对应错误码旁。
主网的 USDT 转账因授权额度不足而失败时,也可能返回 INSUFFICIENT_USDT_AMOUNT。请同时检查钱包余额和授予 Permit2 的 USDT 额度。测试网上,余额充足但授权额度不足时会返回 INSUFFICIENT_ALLOWANCE。

错误码

以下 HTTP 错误可能在事件流建立前返回。有关各接口通用的处理建议,请参阅错误码含义与处理方式。

授权

x-builder-api-key
string
header
必填

已获准使用的开发者 API 密钥,仅在后端保存。抽卡和市场的写入操作还需钱包签名,实物兑换还需钱包签署登录消息后由 API 签发的 Bearer 令牌。

请求体

application/json
packId
string<uuid>
必填
numOfTokens
integer
必填
必填范围: 1 <= x <= 10
amountPerToken
string
必填
Pattern: ^\d+$
nonce
string
必填
Pattern: ^\d+$
deadline
integer
必填
buyerWalletAddress
string
必填
permitSignature
string
必填

对准备结果中结构化数据的签名,以最多 4,096 字节的十六进制表示。EOA 直接签署结构化数据;合约钱包提交其 isValidSignature 针对 EIP-712 摘要接受的数据,允许为空(0x)。调用方为 Permit2,签名在支付前及链上各验证一次。

响应

HTTP 200 表示事件流已建立。draws_resolved 表示抽卡成功,pull_failed 表示事件流以失败结束。以 : 开头的行用于保持连接。

The response is of type string.