获取聚合器支持的链
返回 DEX 聚合服务当前支持的所有区块链信息。支持链列表由服务端动态配置,可能随时变更。
传入 binanceChainId 仅返回该链信息;不传则返回全量列表。
获取聚合器支持的链 › 授权
请求头
X-OC-APIKEYBinance Web3 API 颁发的用于鉴权的 API Key。
X-OC-TIMESTAMP当前 UTC 时间,ISO 8601 格式,精确到毫秒,例如 2026-05-11T10:08:57.715Z。
X-OC-SIGN请求签名(Base64 编码)。
X-OC-RECV-WINDOW允许的时间偏差(毫秒),默认值 5000,最大值 60000。
X-OC-NONCE唯一请求标识符,用于防重放攻击;省略时使用 X-OC-SIGN 代替。
获取聚合器支持的链 › 响应
成功返回支持的链列表。
code业务状态码,0 表示成功,非 0 表示业务错误。
msg状态描述信息。
支持的区块链网络列表。
binanceChainId链唯一标识(EVM 链遵循 EIP-155 chainId)。
name链全称。
shortName链简称。
logoUrl链 Logo 图片 URL。
timestamp服务端响应时间戳(毫秒)。
success由 code == 0 派生的便捷布尔值。
获取 ERC-20 代币授权交易数据
在执行 DEX 兑换前,生成授权 DEX Router 操作用户 ERC-20 代币的链上交易数据。 Calldata 按 ERC-20 ABI 标准编码(approve 函数选择器 + spender + 授权数量)。
获取 ERC-20 代币授权交易数据 › 授权
请求头
X-OC-APIKEYBinance Web3 API 颁发的用于鉴权的 API Key。
X-OC-TIMESTAMP当前 UTC 时间,ISO 8601 格式,精确到毫秒,例如 2026-05-11T10:08:57.715Z。
X-OC-SIGN请求签名(Base64 编码)。
X-OC-RECV-WINDOW允许的时间偏差(毫秒),默认值 5000,最大值 60000。
X-OC-NONCE唯一请求标识符,用于防重放攻击;省略时使用 X-OC-SIGN 代替。
查询参数
binanceChainId链唯一标识(如 "1"=Ethereum,"56"=BSC)。
tokenContractAddress待授权的 ERC-20 代币合约地址(0x + 40 位 hex)。
approveAmount授权数量,含精度的正整数字符串。如授权 1 USDT(精度 6)传 "1000000"。
vendorRFQ vendor 名称。权益 / RWA 代币(Ondo、BStock)时必填,传入 /quote 响应中的 vendorName (如 InchFusion、CowSwap、PcsXRfq)。指定后,后端返回对应 vendor 合约地址(如 1inch Router、 PcsX Permit2、CowSwap VaultRelayer)的授权 calldata,而非默认 DEX Router。
普通(非 RWA)代币可不传:省略时后端使用标准 DEX Router;若传入合法 RFQ vendor,后端会按该 vendor 解析 spender——用于「用稳定币买入 Ondo/BStock」场景,此时 fromToken(如 USDT)本身不是 RFQ 代币, 但需要 approve 给 RFQ vendor 的 router 才能继续走 RFQ swap 流程。
获取 ERC-20 代币授权交易数据 › 响应
成功返回授权交易数据。
codemsg兑换前需提交的授权交易列表。
dataABI 编码的 ERC-20 approve() calldata。函数选择器 + spender 地址 + 授权数量。
dexContractAddressDEX 合约地址,即 approve() 中的 spender。按链动态配置。
gasLimit授权交易的 gas limit 上限(整数字符串,单位 gas)。
gasPrice授权交易的 gas price(整数字符串,单位 wei)。
timestampsuccess获取聚合交易报价
向多个 vendor 并发询价,返回按 toTokenAmount 降序排列的路由列表。 每条路由携带独立的 quoteId(TTL 约 30 秒),swap 接口通过它定位要构造 calldata 的路由。
获取聚合交易报价 › 授权
请求头
X-OC-APIKEYBinance Web3 API 颁发的用于鉴权的 API Key。
X-OC-TIMESTAMP当前 UTC 时间,ISO 8601 格式,精确到毫秒,例如 2026-05-11T10:08:57.715Z。
X-OC-SIGN请求签名(Base64 编码)。
X-OC-RECV-WINDOW允许的时间偏差(毫秒),默认值 5000,最大值 60000。
X-OC-NONCE唯一请求标识符,用于防重放攻击;省略时使用 X-OC-SIGN 代替。
查询参数
binanceChainId链唯一标识(如 "56"=BSC,"1"=Ethereum,"CT_501"=Solana)。
amount卖出币种数量,含精度的正整数字符串(不允许小数)。如兑换 1 USDT(精度 6)传 "1000000"。
fromTokenAddress卖出币种合约地址。EVM 链格式 0x + 40 位 hex;非 EVM 链使用对应链的地址格式。
toTokenAddress买入币种合约地址,必须与 fromTokenAddress 不同。
vendor可选的询价 vendor。传入后仅向指定 vendor 询价,走单 vendor 快速路径,不经过多 vendor 双窗口、早返和价格检查逻辑。大小写敏感,仅支持 LiquidMesh、Pancake、Jupiter; 同时要求该 vendor 支持请求的链。传入不支持的值,或该 vendor 不支持当前链时,返回 PARAM_ERROR(40001)。省略时,接口并发查询所有适用 vendor,并返回聚合路由。
userWalletAddress用户钱包地址。询价 RFQ 路由(Ondo、BStock 等权益 / RWA 代币)时必填。 该地址将作为 RFQ 订单的接收方,须与后续 /swap 中签名 rfq.typedDataToSign 的钱包一致。
feePercent自定义手续费(分佣 / Add Fee)百分比,十进制字符串。必须与 feeSource 搭配使用—— 二者要么同时传入,要么同时省略。
**范围按链区分:**EVM 链(BSC、Ethereum、Base 等)(0, 5],Solana(CT_501)(0, 10] (大于 0、到链上限含边界),最多 2 位小数。"1.5" 表示 1.5%,超过 2 位小数返回 INVALID_FEE_PERCENT(40466)。
four.meme 代币不支持——当交易对任意一侧为 four.meme 代币时,请勿传入 fee 相关参数。
feeSource手续费扣减方向。FROM_TOKEN = 从卖出币种扣 fee(传给 DEX 的金额会扣减为净额); TO_TOKEN = 从买入币种输出扣 fee(用户实际到手金额会扣减)。必须与 feePercent 搭配使用。
获取聚合交易报价 › 响应
成功返回询价路由。
codemsg每个返回有效报价的 vendor 对应一条路由,按 toTokenAmount 降序排列。
quoteId单条路由的询价 ID(UUID,无连字符)。在 swap 接口中传入以锁定该路由。
vendorName询价来源 vendor 展示名,可能值:LiquidMesh、Lifi、1inch、Pancake、Jupiter。
binanceChainId链唯一标识,回显请求值。
fromTokenAmount卖出币种数量(最小单位整数字符串)。
toTokenAmount估算的买入币种数量(最小单位整数字符串)。
tradeFee该路由预估的网络费用(USD 计价)。vendor 未返回时为 null。
estimateGasFee预估消耗的 Gas(链最小单位,如 wei)。Solana 链可能为 null。
priceImpactPercent价格影响百分比。vendor 未返回时为 null。
router兑换路径描述,地址间用 "--" 连接。
卖出币种信息。
tokenContractAddress代币合约地址。
tokenSymbol代币简称(ticker)。
tokenUnitPrice代币美元单价(十进制字符串)。
decimal代币精度(小数位数)。
isHoneyPot是否为貔貅币(只能买不能卖的蜜罐合约)。
taxRate代币税率,取值范围 0–1,"0.01" 表示 1%。
买入币种信息,结构同 fromToken。
tokenContractAddress代币合约地址。
tokenSymbol代币简称(ticker)。
tokenUnitPrice代币美元单价。
decimal代币精度。
isHoneyPot是否为貔貅币。
taxRate代币税率。
询价路径数据集合。每跳 × 每 DEX 展平为一条记录。
该路径段使用的 DEX 协议信息。
dexNameDEX 协议名称。
percent该 DEX 在整条路径中的流量百分比(2 位小数)。
该路径段的卖出币种信息,结构同顶层 fromToken。
tokenContractAddresstokenSymbolfromTokenIndex卖出币种全局去重后的索引(字符串形式)。
该路径段的买入币种信息。
tokenContractAddresstokenSymboltoTokenIndex买入币种全局去重后的索引。
executionMode该路由的执行模式。SWAP = 标准链上兑换(签名 /swap 返回的 tx 对象后广播)。 RFQ = 签名订单流程(对 /swap 返回的 rfq.typedDataToSign 做 EIP-712 签名, 通过 POST /order/submit 提交,轮询 GET /order/{orderId})。 权益 / RWA 代币始终返回 RFQ。
approveTarget后端将为该路由编码进授权 calldata 的 spender 合约地址。 如需获取授权 calldata,请调用 /approve-transaction 并传入 vendor=<vendorName>(vendor 名字字符串,如 "PcsXRfq")——后端会根据 vendor 名字 在内部解析出 spender 地址。本字段仅供参考(例如不经 /approve-transaction 直接调用 ERC-20 approve() 时使用)。无需授权时为 null(如原生代币兑换或已授权)。
isBest该路由是否为本次响应所有路由中 toTokenAmount 最高的最优路由。 每次响应至多一条路由的 isBest 为 true。
feeAmount本次兑换扣除的手续费金额(含精度整数字符串)。仅在请求开启自定义手续费 (feePercent + feeSource 同时传入)时返回,否则为 null。 FROM_TOKEN 方向 = 原始卖出额 × feePercent/100(HALF_UP); TO_TOKEN 方向 = DEX 原始买入额 × feePercent/100(HALF_DOWN)。
feeToken手续费计价币种合约地址。FROM_TOKEN 方向为卖出币种地址,TO_TOKEN 方向为买入币种 地址。未开启自定义手续费时为 null。
actualSwapAmount实际参与 DEX 兑换的金额(含精度整数字符串)。FROM_TOKEN 方向为扣减手续费后的净额 (fromTokenAmount − feeAmount,即传给 DEX 的 amountIn);TO_TOKEN 方向为原始输入额 (fee 从输出端扣,输入端全额参与兑换)。未开启自定义手续费时为 null。
timestampsuccess执行代币兑换(构造链上交易数据)
基于先前的询价路由构造链上 swap 交易的 calldata。请求按 quoteId 命中 Redis 缓存(TTL 约 30 秒);缓存过期返回 QUOTE_EXPIRED(40401), 参数与缓存不一致返回 SWAP_QUOTE_MISMATCH(40462)。
执行代币兑换(构造链上交易数据) › 授权
请求头
X-OC-APIKEYBinance Web3 API 颁发的用于鉴权的 API Key。
X-OC-TIMESTAMP当前 UTC 时间,ISO 8601 格式,精确到毫秒,例如 2026-05-11T10:08:57.715Z。
X-OC-SIGN请求签名(Base64 编码)。
X-OC-RECV-WINDOW允许的时间偏差(毫秒),默认值 5000,最大值 60000。
X-OC-NONCE唯一请求标识符,用于防重放攻击;省略时使用 X-OC-SIGN 代替。
查询参数
binanceChainId链唯一标识。
amount卖出币种数量(含精度的正整数字符串)。
fromTokenAddress卖出币种合约地址。
toTokenAddress买入币种合约地址。
userWalletAddress用户钱包地址。
quoteId/quote 返回的 quoteId,用于定位要执行的路由。TTL 约 30 秒,过期返回 QUOTE_EXPIRED(40401)。
slippagePercent最大滑点容忍度(百分比字符串)。autoSlippage=true 时可不传,否则必填。
按链区分范围:
- EVM 链(BSC、Ethereum、Base 等):
0到100(含边界) - Solana(
CT_501):0到小于100(即< 100)
按 vendor 区分范围:
- 1inch、PancakeSwap:
0到50(超过 50 会报参数错误) - LiFi、LiquidMesh:
0到100(EVM)或0到小于100(Solana) - Jupiter(Solana):
0到小于100;传入值会换算为 basis points(slippageBps = ceil(slippagePercent × 100))并作用于链上 swap
"0.5" 表示最大滑点 0.5%。autoSlippage=true 时,此字段会被自动计算的滑点值覆盖。
approveTransaction为 "true" 时在 signatureData 内返回授权地址及授权 calldata,便于客户端在 swap 前提交授权。默认 false。
approveAmount授权数量(含精度的正整数字符串)。默认与本次交易数量相同。
gasLimitGas limit 上限(正整数字符串)。仅 EVM 链生效。
gasLevelGas 价格档位,默认 "average"。
priceImpactProtectionPercent允许的价格影响百分比(0–100)。默认 90,设为 100 时禁用此功能。
autoSlippage为 "true" 时,基于市场数据自动计算滑点并覆盖 slippagePercent。 slippagePercent 与 autoSlippage=true 二选一必填,两者均不传时返回参数错误。 默认 "false"。
maxAutoSlippagePercent自动滑点上限,仅在 autoSlippage=true 时生效。
computeUnitLimitSolana 专用 — 限制本次交易最大可消耗的 Compute Units,类比 EVM 的 gasLimit。仅 binanceChainId=CT_501 时生效。
computeUnitPriceSolana 专用 — 每个 Compute Unit 的优先费(micro-lamports),类比 EVM 的 gasPrice。未传入时由平台动态计算。仅 binanceChainId=CT_501 时生效。
tipsSolana 专用 — Jito tips 小费(单位 SOL),用于 MEV 保护。有效范围 [0.000000001, 2](最小 1 lamport)。指定后建议将 computeUnitPrice 设为 0。仅 binanceChainId=CT_501 时生效。
feePercent自定义手续费(分佣 / Add Fee)百分比,十进制字符串。必须与 fromTokenReferrerWalletAddress 或 toTokenReferrerWalletAddress 中的一个搭配(两个 referrer 地址互斥,二选一)。
**范围按链区分:**EVM 链(BSC、Ethereum、Base 等)(0, 5],Solana(CT_501)(0, 10] (大于 0、到链上限含边界),最多 2 位小数。"1.5" 表示 1.5%,超过 2 位小数返回 INVALID_FEE_PERCENT(40466)。
four.meme 代币不支持——当交易对任意一侧为 four.meme 代币时,请勿传入 fee 相关参数。
fromTokenReferrerWalletAddress从卖出币种扣减手续费的接收钱包地址(FROM_TOKEN 方向)。与 toTokenReferrerWalletAddress 互斥,同时传入返回 CONFLICT_REFERRER_PARAMS(40468)。地址格式按链区分:EVM 链为 0x + 40 位 hex,Solana(CT_501)为 Base58 公钥,格式非法返回 INVALID_REFERRER_ADDRESS(40467)。必须与 feePercent 搭配。
toTokenReferrerWalletAddress从买入币种输出扣减手续费的接收钱包地址(TO_TOKEN 方向)。与 fromTokenReferrerWalletAddress 互斥,同时传入返回 CONFLICT_REFERRER_PARAMS(40468)。地址格式按链区分:EVM 链为 0x + 40 位 hex,Solana(CT_501)为 Base58 公钥,格式非法返回 INVALID_REFERRER_ADDRESS(40467)。必须与 feePercent 搭配。Solana 链要求该地址已激活 (持有少量 SOL 余额),否则返回 REFERRER_NOT_ACTIVATED(40469)。
执行代币兑换(构造链上交易数据) › 响应
成功返回兑换交易数据。
codemsg路由结果,包含本次 swap 使用的 vendor 及报价信息。
binanceChainId链唯一标识。
vendorName提供本次 swap 报价的 vendor。
fromTokenAmount卖出币种数量(最小单位整数字符串)。
toTokenAmount估算的买入币种数量。
tradeFee询价路径预估消耗的网络费用(USD 计价)。
estimateGasFee预估消耗的 Gas(链最小单位)。
router兑换路径描述。
priceImpactPercent价格影响百分比。计算公式:(接收价值 - 支付价值)/ 支付价值。
询价路径数据集合,结构同 /quote 接口的 dexRouterList。
dexNamepercenttokenContractAddresstokenSymbolfromTokenIndextokenContractAddresstokenSymboltoTokenIndex卖出币种信息。
tokenContractAddresstokenSymboltokenUnitPricedecimalisHoneyPottaxRate买入币种信息。
tokenContractAddresstokenSymboltokenUnitPricedecimalisHoneyPottaxRatefeeAmount本次兑换扣除的手续费金额(含精度整数字符串)。仅在请求开启自定义手续费时返回, 否则为 null。FROM_TOKEN 方向 = 原始卖出额 × feePercent/100(HALF_UP); TO_TOKEN 方向 = DEX 原始买入额 × feePercent/100(HALF_DOWN)。
feeToken手续费计价币种合约地址。FROM_TOKEN 方向为卖出币种地址,TO_TOKEN 方向为买入币种 地址。未开启自定义手续费时为 null。
actualSwapAmount实际参与 DEX 兑换的金额(含精度整数字符串)。FROM_TOKEN 方向为扣减手续费后的净额 (fromTokenAmount − feeAmount);TO_TOKEN 方向为原始输入额(fee 从输出端扣)。 未开启自定义手续费时为 null。
待签名并提交的链上交易数据。
from用户钱包地址(交易发起方)。
toDEX Router 合约地址(链上交易的 to 字段)。
data交易 calldata(ABI 编码的合约调用数据)。
value交易携带的原生代币数量(wei)。ERC-20 兑换时为 "0"。
gasGas Limit 估算值。
gasPriceGas Price(wei)。
maxPriorityFeePerGasEIP-1559 优先费(wei)。
minReceiveAmount目标币种最小收到数量(达到滑点限制时的最小到账数量)。
slippagePercent当前交易使用的滑点值(百分比字符串)。
signatureData额外签名数据。开启 approveTransaction 时,内含授权地址及授权 calldata。
computeUnitPriceSolana 优先费(micro-lamports per Compute Unit)。用户传入时回显;未传入时由平台动态计算。EVM 链此字段为 null。
computeUnitLimitSolana 最大可消耗的 Compute Units。用户传入时回显;未传入时不返回。EVM 链此字段为 null。
executionMode本次 swap 的执行模式。SWAP = 签名 tx 对象后广播到链上。 RFQ = 对 rfq.typedDataToSign 做 EIP-712 签名(eth_signTypedData_v4), 通过 POST /order/submit 提交,轮询 GET /order/{orderId} 获取结算状态。 权益 / RWA 代币始终返回 RFQ。
rfqRFQ 订单载荷,仅 executionMode=RFQ 时存在。包含用户须签名的 EIP-712 typed data、 目标 vendor、签名方案,以及(按需返回的)授权交易数据。
timestampsuccess一步询价并构造交易(Flash API)
单次调用同时完成询价与 swap 交易构造。与两步走的 /quote + /swap 不同,本接口无需前置 /quote 调用,不依赖 quoteId,直接返回可上链 执行的 calldata / swapTransaction,减少一次 HTTP 往返。
适合对延迟敏感且已知 vendor 的交易场景。响应结构与 /swap 完全一致, 客户端可复用同一套响应解析逻辑。
一步询价并构造交易(Flash API) › 授权
请求头
X-OC-APIKEYBinance Web3 API 颁发的用于鉴权的 API Key。
X-OC-TIMESTAMP当前 UTC 时间,ISO 8601 格式,精确到毫秒,例如 2026-05-11T10:08:57.715Z。
X-OC-SIGN请求签名(Base64 编码)。
X-OC-RECV-WINDOW允许的时间偏差(毫秒),默认值 5000,最大值 60000。
X-OC-NONCE唯一请求标识符,用于防重放攻击;省略时使用 X-OC-SIGN 代替。
查询参数
binanceChainId链唯一标识。
amount卖出币种数量(含精度的正整数字符串)。
fromTokenAddress卖出币种合约地址。
toTokenAddress买入币种合约地址。
userWalletAddress用户钱包地址(交易发起方)。Solana 链需为 Base58 的 system-account 地址且持有足够 SOL 付 gas。
vendor本次 swap 使用的 vendor。必填,大小写敏感,需与 enum 列表一致, 其他值返回 PARAM_ERROR(40001)。多 vendor 聚合请改用 /swap + quoteId。
slippagePercent最大滑点容忍度(百分比字符串)。autoSlippage=true 时可不传,否则必填。
按链区分范围:
- EVM 链(BSC、Ethereum、Base 等):
0到100(含边界) - Solana(
CT_501):0到小于100(即< 100)
"0.5" 表示最大滑点 0.5%。autoSlippage=true 时,此字段会被自动计算的滑点值覆盖。
excludeDexes屏蔽的协议(DEX)列表,逗号分隔。请直接传响应 routerResult.dexRouterList 里返回的 dexName,以响应返回的格式为准:EVM/Sui/Tron 链会自动归一化; Solana 链原样透传且大小写敏感。不传或为空则不屏蔽任何 DEX。
enableRFQ是否启用路由中的 RFQ 流动性来源。默认值按 token 类型区分:BStock 交易对默认 "true"(放开 RFQ),其他 token 默认 "false"(RFQ 关闭,仅走 AMM 路由); 显式传参时以参数为准。设为 "true" 可能获得更好成交价,但返回的 calldata 可能 内嵌带短 deadline(约 30s)的 RFQ 结算。
approveTransaction为 "true" 时在 signatureData 内返回授权地址及授权 calldata,便于客户端在 swap 前提交授权。默认 false。
approveAmount授权数量(含精度的正整数字符串)。默认与本次交易数量相同。
gasLimitGas limit 上限(正整数字符串)。仅 EVM 链生效。
gasLevelGas 价格档位,默认 "average"。
priceImpactProtectionPercent允许的价格影响百分比(0–100)。默认 90,设为 100 时禁用此功能。
autoSlippage为 "true" 时,基于市场数据自动计算滑点并覆盖 slippagePercent。 slippagePercent 与 autoSlippage=true 二选一必填,两者均不传时返回参数错误。 默认 "false"。
maxAutoSlippagePercent自动滑点上限,仅在 autoSlippage=true 时生效。
computeUnitLimitSolana 专用 — 限制本次交易最大可消耗的 Compute Units,类比 EVM 的 gasLimit。仅 binanceChainId=CT_501 时生效。
computeUnitPriceSolana 专用 — 每个 Compute Unit 的优先费(micro-lamports),类比 EVM 的 gasPrice。未传入时由平台动态计算。仅 binanceChainId=CT_501 时生效。
tipsSolana 专用 — Jito tips 小费(单位 SOL),用于 MEV 保护。有效范围 [0.000000001, 2](最小 1 lamport)。指定后建议将 computeUnitPrice 设为 0。仅 binanceChainId=CT_501 时生效。
feePercent自定义手续费(分佣 / Add Fee)百分比,十进制字符串。必须与 fromTokenReferrerWalletAddress 或 toTokenReferrerWalletAddress 中的一个搭配(两个 referrer 地址互斥,二选一)。
**范围按链区分:**EVM 链(BSC、Ethereum、Base 等)(0, 5],Solana(CT_501)(0, 10] (大于 0、到链上限含边界),最多 2 位小数。"1.5" 表示 1.5%,超过 2 位小数返回 INVALID_FEE_PERCENT(40466)。
four.meme 代币不支持——当交易对任意一侧为 four.meme 代币时,请勿传入 fee 相关参数。
fromTokenReferrerWalletAddress从卖出币种扣减手续费的接收钱包地址(FROM_TOKEN 方向)。与 toTokenReferrerWalletAddress 互斥,同时传入返回 CONFLICT_REFERRER_PARAMS(40468)。地址格式按链区分:EVM 链为 0x + 40 位 hex,Solana(CT_501)为 Base58 公钥,格式非法返回 INVALID_REFERRER_ADDRESS(40467)。必须与 feePercent 搭配。
toTokenReferrerWalletAddress从买入币种输出扣减手续费的接收钱包地址(TO_TOKEN 方向)。与 fromTokenReferrerWalletAddress 互斥,同时传入返回 CONFLICT_REFERRER_PARAMS(40468)。地址格式按链区分:EVM 链为 0x + 40 位 hex,Solana(CT_501)为 Base58 公钥,格式非法返回 INVALID_REFERRER_ADDRESS(40467)。必须与 feePercent 搭配。Solana 链要求该地址已激活 (持有少量 SOL 余额),否则返回 REFERRER_NOT_ACTIVATED(40469)。
一步询价并构造交易(Flash API) › 响应
成功返回兑换交易数据。
codemsg路由结果,包含本次 swap 使用的 vendor 及报价信息。
binanceChainId链唯一标识。
vendorName提供本次 swap 报价的 vendor。
fromTokenAmount卖出币种数量(最小单位整数字符串)。
toTokenAmount估算的买入币种数量。
tradeFee询价路径预估消耗的网络费用(USD 计价)。
estimateGasFee预估消耗的 Gas(链最小单位)。
router兑换路径描述。
priceImpactPercent价格影响百分比。计算公式:(接收价值 - 支付价值)/ 支付价值。
询价路径数据集合,结构同 /quote 接口的 dexRouterList。
dexNamepercenttokenContractAddresstokenSymbolfromTokenIndextokenContractAddresstokenSymboltoTokenIndex卖出币种信息。
tokenContractAddresstokenSymboltokenUnitPricedecimalisHoneyPottaxRate买入币种信息。
tokenContractAddresstokenSymboltokenUnitPricedecimalisHoneyPottaxRatefeeAmount本次兑换扣除的手续费金额(含精度整数字符串)。仅在请求开启自定义手续费时返回, 否则为 null。FROM_TOKEN 方向 = 原始卖出额 × feePercent/100(HALF_UP); TO_TOKEN 方向 = DEX 原始买入额 × feePercent/100(HALF_DOWN)。
feeToken手续费计价币种合约地址。FROM_TOKEN 方向为卖出币种地址,TO_TOKEN 方向为买入币种 地址。未开启自定义手续费时为 null。
actualSwapAmount实际参与 DEX 兑换的金额(含精度整数字符串)。FROM_TOKEN 方向为扣减手续费后的净额 (fromTokenAmount − feeAmount);TO_TOKEN 方向为原始输入额(fee 从输出端扣)。 未开启自定义手续费时为 null。
待签名并提交的链上交易数据。
from用户钱包地址(交易发起方)。
toDEX Router 合约地址(链上交易的 to 字段)。
data交易 calldata(ABI 编码的合约调用数据)。
value交易携带的原生代币数量(wei)。ERC-20 兑换时为 "0"。
gasGas Limit 估算值。
gasPriceGas Price(wei)。
maxPriorityFeePerGasEIP-1559 优先费(wei)。
minReceiveAmount目标币种最小收到数量(达到滑点限制时的最小到账数量)。
slippagePercent当前交易使用的滑点值(百分比字符串)。
signatureData额外签名数据。开启 approveTransaction 时,内含授权地址及授权 calldata。
computeUnitPriceSolana 优先费(micro-lamports per Compute Unit)。用户传入时回显;未传入时由平台动态计算。EVM 链此字段为 null。
computeUnitLimitSolana 最大可消耗的 Compute Units。用户传入时回显;未传入时不返回。EVM 链此字段为 null。
executionMode本次 swap 的执行模式。本接口固定返回 SWAP:签名 tx 对象后广播到链上,不会返回 RFQ 模式。
rfq本接口固定为 null(仅返回 SWAP 模式)。
timestampsuccess构造 Solana 交易指令
/swap 的 Solana 专用对偶接口。共享完整的 quote → route → vendor buildSwapTx → priceImpact → minReceive → 指令组装 流水线;唯一区别 在响应:本接口不返回签名序列化后的 base64 完整交易,而是返回 未编译 (uncompiled) 的指令列表 + Address Lookup Table (ALT) 地址列表, 由调用方自行完成 v0 交易编译、签名、上链。
适用场景:
- 调用方需在签名前追加 / 前置自定义指令(例如手续费拆分、自定义日志);
- 复用平台策划好的路由、滑点、PS 变体重写、ALT 注入、ComputeBudget 覆盖、ATA 合批,同时自行掌控最终上链字节。
仅支持 binanceChainId=CT_501(Solana),其他链返回 CHAIN_NOT_SUPPORTED (40411)。参数与 /swap 的 Solana 子集对齐 (不含 EVM 专用的 approveTransaction / approveAmount / gasLimit)。支持自定义手续费(Add Fee / 分佣)参数(feePercent + fromTokenReferrerWalletAddress / toTokenReferrerWalletAddress), 语义与 /swap 一致——fee 指令会注入到返回的未编译指令列表中。
构造 Solana 交易指令 › 授权
请求头
X-OC-APIKEYBinance Web3 API 颁发的用于鉴权的 API Key。
X-OC-TIMESTAMP当前 UTC 时间,ISO 8601 格式,精确到毫秒,例如 2026-05-11T10:08:57.715Z。
X-OC-SIGN请求签名(Base64 编码)。
X-OC-RECV-WINDOW允许的时间偏差(毫秒),默认值 5000,最大值 60000。
X-OC-NONCE唯一请求标识符,用于防重放攻击;省略时使用 X-OC-SIGN 代替。
查询参数
binanceChainId链唯一标识。仅接受 CT_501(Solana),其他值返回 CHAIN_NOT_SUPPORTED(40411)。
amount卖出币种数量(含精度的正整数字符串)。
fromTokenAddress卖出币种 mint 地址(Solana Base58,大小写敏感)。
toTokenAddress买入币种 mint 地址(Solana Base58,大小写敏感)。
slippagePercent最大滑点百分比。Solana 链范围 0–小于 100。"0.5" 表示 0.5%。
userWalletAddress用户钱包地址(Solana Base58),作为 v0 交易的 feePayer。
quoteId/quote 返回的 quoteId,用于定位要执行的路由。TTL 约 30 秒,过期返回 QUOTE_EXPIRED(40401)。
priceImpactProtectionPercent允许的价格影响百分比(0–100)。默认 90,设为 100 时禁用此功能。
autoSlippage为 "true" 时基于市场数据自动设定滑点,覆盖 slippagePercent。默认 false。
maxAutoSlippagePercent自动滑点上限,仅在 autoSlippage=true 时生效。
computeUnitLimit限制本次交易最大可消耗的 Compute Units,类比 EVM 的 gasLimit。未传入时使用平台默认值。
computeUnitPrice每个 Compute Unit 的优先费(micro-lamports)。未传入时,平台根据 gasLevel 档位或链级默认值动态计算。
gasLevel优先费档位,仅在未传入 computeUnitPrice 时生效。默认 "average"。
tipsJito tips 小费(单位 SOL),用于 MEV 保护。有效范围 [0.000000001, 2](最小 1 lamport)。指定后建议将 computeUnitPrice 设为 0。平台按 Jito 协议在每次请求中随机选取一个 tip 账户。
feePercent自定义手续费(分佣 / Add Fee)百分比,十进制字符串。必须与 fromTokenReferrerWalletAddress 或 toTokenReferrerWalletAddress 中的一个搭配(两个 referrer 地址互斥,二选一)。语义与 /swap 一致。
范围(Solana):(0, 10](大于 0、最多 10),最多 2 位小数。"1.5" 表示 1.5%,超过 2 位小数返回 INVALID_FEE_PERCENT(40466)。
four.meme 代币不支持——当交易对任意一侧为 four.meme 代币时,请勿传入 fee 相关参数。
fromTokenReferrerWalletAddress从卖出币种扣减手续费的接收钱包地址(FROM_TOKEN 方向)。与 toTokenReferrerWalletAddress 互斥,同时传入返回 CONFLICT_REFERRER_PARAMS(40468)。Solana 格式为 Base58 公钥,格式非法 返回 INVALID_REFERRER_ADDRESS(40467)。必须与 feePercent 搭配。
toTokenReferrerWalletAddress从买入币种输出扣减手续费的接收钱包地址(TO_TOKEN 方向)。与 fromTokenReferrerWalletAddress 互斥,同时传入返回 CONFLICT_REFERRER_PARAMS(40468)。Solana 格式为 Base58 公钥,格式非法 返回 INVALID_REFERRER_ADDRESS(40467)。必须与 feePercent 搭配。该地址必须已激活 (持有少量 SOL 余额),否则返回 REFERRER_NOT_ACTIVATED(40469)。
构造 Solana 交易指令 › 响应
成功返回未编译的 Solana 指令列表与 ALT 地址。
codemsgaddressLookupTableAccount交易引用的 Address Lookup Table 地址列表(Base58),含平台注入的自定义 ALT。调用方在编译 v0 message 前需自行 getAccountInfo 拉取每个 ALT 账户并填充查表数据。
按执行顺序排列的未编译指令列表,组装 v0 交易时按本顺序加入。
programId指令所属的 Program ID(Base58)。
data指令数据(Base64 编码)。无数据指令返回空字符串。
指令涉及的账户列表(按指令 ABI 顺序)。
pubkey账户公钥(Base58)。
isSigner是否为签名者。
isWritable是否可写。
路由结果,结构与语义同 /swap 的 routerResult。
binanceChainId链唯一标识(恒为 CT_501)。
vendorName提供本次 swap 报价的 vendor(Solana 链支持 Jupiter、LiquidMesh)。
fromTokenAmount卖出币种数量(最小单位整数字符串)。
toTokenAmount估算的买入币种数量(最小单位整数字符串)。
tradeFee询价路径预估消耗的网络费用(USD 计价)。
estimateGasFee估算的 Compute Units(回显 computeUnitLimit)。
router兑换路径描述。
priceImpactPercent价格影响百分比。
询价路径数据集合,结构同 /quote。
dexNamepercenttokenContractAddresstokenSymbolfromTokenIndextokenContractAddresstokenSymboltoTokenIndex卖出币种信息。
tokenContractAddresstokenSymboldecimal买入币种信息。
tokenContractAddresstokenSymboldecimalfeeAmount本次兑换扣除的手续费金额(含精度整数字符串)。仅在请求开启自定义手续费时返回, 否则为 null。FROM_TOKEN 方向 = 原始卖出额 × feePercent/100(HALF_UP); TO_TOKEN 方向 = DEX 原始买入额 × feePercent/100(HALF_DOWN)。
feeToken手续费计价币种合约地址。FROM_TOKEN 方向为卖出币种地址,TO_TOKEN 方向为买入币种 地址。未开启自定义手续费时为 null。
actualSwapAmount实际参与 DEX 兑换的金额(含精度整数字符串)。FROM_TOKEN 方向为扣减手续费后的净额 (fromTokenAmount − feeAmount);TO_TOKEN 方向为原始输入额(fee 从输出端扣)。 未开启自定义手续费时为 null。
交易摘要(无 data 字段,已由 instructionLists 替代),含调用方在签名前需展示或审计的关键字段。
from用户钱包地址(交易发起方 / fee payer)。
to平台 Router 程序地址(即 swap 执行的目标 program)。
minReceiveAmount目标币种最小收到数量(达到滑点限制时的最小到账数量)。
slippagePercent当前交易使用的滑点值(百分比字符串)。
timestampsuccess查询交易状态
根据 binanceChainId + txHash 查询链上 DEX 兑换交易的详细状态。
响应说明:
-
交易不存在:
data为null(非 HTTP 404)。 -
交易失败:
status=failed,含errorMsg;聚合业务字段(txType、dexRouter、fromTokenDetails、toTokenDetails)为null。 -
交易成功:
status=success,有聚合事件时包含完整 token 详情。
查询交易状态 › 授权
请求头
X-OC-APIKEYBinance Web3 API 颁发的用于鉴权的 API Key。
X-OC-TIMESTAMP当前 UTC 时间,ISO 8601 格式,精确到毫秒,例如 2026-05-11T10:08:57.715Z。
X-OC-SIGN请求签名(Base64 编码)。
X-OC-RECV-WINDOW允许的时间偏差(毫秒),默认值 5000,最大值 60000。
X-OC-NONCE唯一请求标识符,用于防重放攻击;省略时使用 X-OC-SIGN 代替。
查询参数
binanceChainId链唯一标识。
txHash链上交易 Hash。
查询交易状态 › 响应
交易详情。未找到记录时 data 为 null。
codemsgdata交易详情。两表均无记录时为 null。
timestampsuccess提交 RFQ 订单
将已签名的 RFQ 订单提交至后端,由后端转发给对应 vendor relayer 完成链上撮合。 仅当 executionMode=RFQ(Ondo、BStock 等权益 / RWA 代币)时使用。
流程:GET /quote → 选择 RFQ 路由 → GET /swap → 对 rfq.typedDataToSign 做 EIP-712 签名(eth_signTypedData_v4)→ 调用本接口 → 轮询 GET /order/{orderId} 直到 FILLED 或 FAILED。
幂等性:30 分钟内相同 requestId 重复提交直接返回首次结果,不重复调 vendor。 每次新提交生成新 UUID;重试时复用同一 UUID。
提交 RFQ 订单 › 授权
请求头
X-OC-APIKEYBinance Web3 API 颁发的用于鉴权的 API Key。
X-OC-TIMESTAMP当前 UTC 时间,ISO 8601 格式,精确到毫秒,例如 2026-05-11T10:08:57.715Z。
X-OC-SIGN请求签名(Base64 编码)。
X-OC-RECV-WINDOW允许的时间偏差(毫秒),默认值 5000,最大值 60000。
X-OC-NONCE唯一请求标识符,用于防重放攻击;省略时使用 X-OC-SIGN 代替。
提交 RFQ 订单 › 请求体
requestId幂等键(UUID v4)。30 分钟内相同 requestId 重复提交直接返回首次结果,不重复调 vendor。 每次新提交生成新 UUID;重试同一次提交时复用同一 UUID。
userSignature对 /swap 响应中 rfq.typedDataToSign 做 EIP-712 签名的结果。须为 0x 前缀的 hex 字符串 (132 字符 = 0x + 65 字节)。签名钱包须与 /quote 时的 userWalletAddress 一致。 后端自动修正 Ethereum v 值 00/01 → 1b/1c。
vendorRFQ vendor 名称,须与 /swap 响应中 rfq.vendor 一致。后端结合 quoteId 做强校验,防止错误路由。
quoteId/swap 响应中 rfq.orderId 的值。后端据此反查 vendor 及链上下文后转发签名订单。
signingScheme/swap 响应中 rfq.signingScheme 的值。可选,省略时后端按 vendor 推断默认值。
提交 RFQ 订单 › 响应
RFQ 订单提交成功。
codemsg提交订单结果。
orderId平台生成的订单 ID,用于轮询 GET /order/{orderId} 获取最终结算状态。
status提交后的初始订单状态,通常为 PENDING_VENDOR(已转发至 vendor,等待结算)。
createdAt订单创建时间(Unix 时间戳毫秒)。
timestampsuccess查询 RFQ 订单状态
按平台 orderId(由 POST /order/submit 返回)查询 RFQ 订单的结算状态。 持续轮询直到 status 到达终态:FILLED(链上已结算)或 FAILED(结算失败)。
查询 RFQ 订单状态 › 授权
请求头
X-OC-APIKEYBinance Web3 API 颁发的用于鉴权的 API Key。
X-OC-TIMESTAMP当前 UTC 时间,ISO 8601 格式,精确到毫秒,例如 2026-05-11T10:08:57.715Z。
X-OC-SIGN请求签名(Base64 编码)。
X-OC-RECV-WINDOW允许的时间偏差(毫秒),默认值 5000,最大值 60000。
X-OC-NONCE唯一请求标识符,用于防重放攻击;省略时使用 X-OC-SIGN 代替。
查询 RFQ 订单状态 › 响应
成功返回订单状态。
codemsg订单状态详情。
orderId平台订单 ID。
status当前订单状态。
- 终态:
FILLED(链上已结算)、FAILED(结算失败)、EXPIRED(vendor 在订单截止前未撮合成功)、CANCELLED(用户或 vendor 主动取消)。 - 中间状态:
PENDING_VENDOR(已转发给 vendor,等待撮合)、PENDING_ONCHAIN(vendor 已发出链上交易,等待区块确认)。
txHash链上交易 Hash,仅 status=FILLED 时有值。
fromAmount实际结算的卖出币种数量(最小单位整数字符串),成交后有值。
toAmount实际收到的买入币种数量(最小单位整数字符串),成交后有值。
filledAt成交时间(Unix 时间戳毫秒),成交后有值。
createdAt订单创建时间(Unix 时间戳毫秒)。
timestampsuccess