构建 DeFi 存入交易
构建 DeFi 存入 / 质押的未签名交易 calldata。返回有序 dataList(通常为 [APPROVE, DEPOSIT],已有足够授权时为 [DEPOSIT]),由调用方按序签名广播。
调用方无需传 binanceChainId——由服务根据 investmentId 反查。设 simulate=true 可在不广播的 情况下同时返回 preview(预估余额变动、预估 gas、借贷 health-factor 变化)。
构建 DeFi 存入交易 › 授权
请求头
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 代替。
构建 DeFi 存入交易 › 请求体
address用户钱包地址(签名 / 发送方)。
investmentId投资品 ID(跨链通用),服务据此反查链。
(tokenAddress, amount) 二元组。amount 为人类可读的小数字符串(非代币最小单位),服务按代币精度自动换算。 主链币使用 sentinel 0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee(40 个 e)。
tokenAddress代币合约地址;主链币使用 sentinel 地址。
amount人类可读数量(十进制字符串),如 "1.5"、"100"。
simulate为 true 时响应同时返回 preview 对象,默认 false。若模拟交易 revert,请求将返回 40485(匹配到特定归类的 revert 原因)或 40484(其它任意 revert)错误码(见错误码文档)。
构建 DeFi 存入交易 › 响应
成功返回存入交易 calldata。
code业务状态码,0 表示成功。
msg状态说明。
5 个交易构建接口(deposit / redeem / lp-add / lp-remove / claim)的统一返回。dataList 有序: APPROVE 在前、主交易在后,调用方需按序签名广播。preview 仅当请求 simulate=true 时非空。 redeemDelayDays 仅 /transaction/redeem 填充。
有序的未签名交易列表,APPROVE 在前、主交易在后。
callDataType本条目的操作类型:
APPROVE:ERC-20 授权,须在主交易前签名广播并确认DEPOSIT/REDEEM/LP_ADD/LP_REMOVE/CLAIM:主交易。LP_ADD/LP_REMOVE为 LP 加 / 减流动性段(与流动性池投资品的 deposit / redeem 同一构建路径;此字段反映链上动作,而非调用入口)。
from用户钱包地址(签名 / 发送方)。EIP-55 校验和格式——若签名库要求,签名前请用 to_checksum_address 规范化。
to目标合约地址。EIP-55 校验和格式,与 from 一致。BSC 上每个主交易项均非空。
value原生币金额(0x 前缀的 hex 字符串)。BSC 上主交易项均非空。
data序列化交易数据,0x 前缀的 hex calldata。
gasLimit建议 gas limit(十进制字符串),估算失败为 null。
gasPriceLegacy gas price(十进制字符串)。BSC 等 EIP-1559 链为 null(改用 maxFeePerGas / maxPriorityFeePerGas)。
maxPriorityFeePerGasEIP-1559 优先费(wei,十进制字符串);非 1559 链为 null。
maxFeePerGasEIP-1559 单笔最大 gas 费(wei,十进制字符串);非 1559 链为 null。
当 simulate=true 时构建接口返回的预览结果。包含操作是否预期成功、预估余额变动、预估网络费用, 以及借贷协议的 health factor 变化。balanceChange、feeAndContract、healthFactor、warnings 均有固定结构(见下);条目数量与部分内部取值因协议而异。
success模拟交易是否会在链上执行成功。
模拟得到的签名代币余额变动列表。每项含 tokenType、tokenSymbol、tokenAddress、 tokenDecimals、amount(正=收到,负=支出)、valueUsd、可选 tokenId。
tokenType模拟返回的代币角色 / 类型标记。
tokenSymbol代币符号。
tokenAddress代币合约地址。
tokenDecimals代币精度。
amount有符号变动量(正=收到,负=支出)。
valueUsd该变动的美元价值。
tokenId可选的 NFT / 仓位 token ID。
预估网络费用与交互对手合约。含 estimatedNetworkFee 与 interactWith。
该操作的预估 gas 成本。估算不可用(如模拟失败)时字段为 null。
amount预估 gas 费(以支付 gas 的代币计,人类可读)。
tokenSymbol支付 gas 的代币符号(主链币,如 BNB)。
valueUsd预估费用的美元价值。
rentFeeAmount存储 / 租金费部分(人类可读),适用时。
rentFeeValueUsd存储 / 租金费的美元价值,适用时。
priorityFeeAmount优先费部分(人类可读),单列时。
该操作交互的对手合约。
address目标合约地址。
借贷协议 health factor 变化。借贷类协议(如 Aave / Venus)返回 before / after 变化前后的值;非借贷协议或健康因子不可用时为 null。
before本交易前的健康因子,不可用时为 null。
after本交易后的健康因子,不可用时为 null。
非阻断式风险提示,无风险时为空数组。
code提示代码。已知取值:HEALTH_FACTOR_WARNING、HEALTH_FACTOR_DANGER、HIGH_SLIPPAGE、 DELAYED_REDEMPTION、LP_OUT_OF_RANGE。按 code 分支控制流,message 原样展示。
level严重级别 — INFO / WARN / DANGER。
message可读的提示文案。
errorMessage模拟交易失败时的错误信息。
redeemDelayDays赎回等待天数,[min, max] 十进制字符串对。仅 /transaction/redeem 填充,其余构建接口或不支持时为 null。含义: [](空数组)= 即时到账,无等待期; ["7","7"] = 固定 7 天; ["7","10"] = 7–10 天。 等待期自赎回交易链上确认后起算。
timestamp服务端时间戳(毫秒)。
success请求是否成功(等价于 code == 0)。
构建 DeFi 赎回交易
构建 DeFi 赎回 / 提取的未签名交易 calldata。返回有序 dataList(通常为 [REDEEM] 或 [APPROVE, REDEEM])。
赎回金额由 ratio 与 token 二选一决定(互斥): - ratio 省略 / 为空 → 精确金额赎回:金额取自 token(tokenAddress + amount),不查仓位。
此模式下 token 必填(省略 token 或 amount 为空将被拒,40001,Parameter error;ratio 与
token 同时缺省同样返回 40001)。
ratio传值 → 按比例赎回:必须为(0, 1]内的十进制数。服务查询用户在该investmentId下的 链上仓位,按ratio折算每个 token 的 amount(按 token 精度向下取整)。ratio="1"等价全额 赎回。此模式下token被忽略——输出 token 与金额均由仓位推导。
slippageBps 为滑点容忍度(基点,如 300 表示 3%)。调用方无需传 binanceChainId——由 investmentId 反查。设 simulate=true 可同时返回 preview。
响应同时携带 redeemDelayDays——赎回等待天数,[min, max] 天数对(如 ["7","10"] 表示 7–10 天, [] 表示即时)。请在用户签名前向其展示,告知赎回资金何时可领取;等待期自赎回交易链上确认后起算。 字段定义见 DefiTxResponse 的 redeemDelayDays。
构建 DeFi 赎回交易 › 授权
请求头
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 代替。
构建 DeFi 赎回交易 › 请求体
address用户钱包地址(签名 / 发送方)。
investmentId投资品 ID(跨链通用),服务据此反查链。
(tokenAddress, amount) 二元组。amount 为人类可读的小数字符串(非代币最小单位),服务按代币精度自动换算。 主链币使用 sentinel 0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee(40 个 e)。
tokenAddress代币合约地址;主链币使用 sentinel 地址。
amount人类可读数量(十进制字符串),如 "1.5"、"100"。
ratio赎回比例,与 token 互斥。省略 / 为空 → 按 token(tokenAddress + amount)精确赎回, 不查仓位。传值 → 必须为 (0, 1] 内的十进制数;服务查询 investmentId 下的链上仓位, 按 ratio 折算每个 token 的 amount(按精度向下取整)。"1" = 全额(max)赎回;此模式下 token 被忽略。
slippageBps滑点容忍度(基点),如 300 表示 3%。
simulate为 true 时响应同时返回 preview 对象,默认 false。若模拟交易 revert,请求将返回错误码 而非 preview.success=false 的 200:赎回金额超过当前持仓返回 40485,其它 revert 返回 40484(见错误码文档)。
构建 DeFi 赎回交易 › 响应
成功返回赎回交易 calldata。
code业务状态码,0 表示成功。
msg状态说明。
5 个交易构建接口(deposit / redeem / lp-add / lp-remove / claim)的统一返回。dataList 有序: APPROVE 在前、主交易在后,调用方需按序签名广播。preview 仅当请求 simulate=true 时非空。 redeemDelayDays 仅 /transaction/redeem 填充。
有序的未签名交易列表,APPROVE 在前、主交易在后。
callDataType本条目的操作类型:
APPROVE:ERC-20 授权,须在主交易前签名广播并确认DEPOSIT/REDEEM/LP_ADD/LP_REMOVE/CLAIM:主交易。LP_ADD/LP_REMOVE为 LP 加 / 减流动性段(与流动性池投资品的 deposit / redeem 同一构建路径;此字段反映链上动作,而非调用入口)。
from用户钱包地址(签名 / 发送方)。EIP-55 校验和格式——若签名库要求,签名前请用 to_checksum_address 规范化。
to目标合约地址。EIP-55 校验和格式,与 from 一致。BSC 上每个主交易项均非空。
value原生币金额(0x 前缀的 hex 字符串)。BSC 上主交易项均非空。
data序列化交易数据,0x 前缀的 hex calldata。
gasLimit建议 gas limit(十进制字符串),估算失败为 null。
gasPriceLegacy gas price(十进制字符串)。BSC 等 EIP-1559 链为 null(改用 maxFeePerGas / maxPriorityFeePerGas)。
maxPriorityFeePerGasEIP-1559 优先费(wei,十进制字符串);非 1559 链为 null。
maxFeePerGasEIP-1559 单笔最大 gas 费(wei,十进制字符串);非 1559 链为 null。
当 simulate=true 时构建接口返回的预览结果。包含操作是否预期成功、预估余额变动、预估网络费用, 以及借贷协议的 health factor 变化。balanceChange、feeAndContract、healthFactor、warnings 均有固定结构(见下);条目数量与部分内部取值因协议而异。
success模拟交易是否会在链上执行成功。
模拟得到的签名代币余额变动列表。每项含 tokenType、tokenSymbol、tokenAddress、 tokenDecimals、amount(正=收到,负=支出)、valueUsd、可选 tokenId。
tokenType模拟返回的代币角色 / 类型标记。
tokenSymbol代币符号。
tokenAddress代币合约地址。
tokenDecimals代币精度。
amount有符号变动量(正=收到,负=支出)。
valueUsd该变动的美元价值。
tokenId可选的 NFT / 仓位 token ID。
预估网络费用与交互对手合约。含 estimatedNetworkFee 与 interactWith。
该操作的预估 gas 成本。估算不可用(如模拟失败)时字段为 null。
amount预估 gas 费(以支付 gas 的代币计,人类可读)。
tokenSymbol支付 gas 的代币符号(主链币,如 BNB)。
valueUsd预估费用的美元价值。
rentFeeAmount存储 / 租金费部分(人类可读),适用时。
rentFeeValueUsd存储 / 租金费的美元价值,适用时。
priorityFeeAmount优先费部分(人类可读),单列时。
该操作交互的对手合约。
address目标合约地址。
借贷协议 health factor 变化。借贷类协议(如 Aave / Venus)返回 before / after 变化前后的值;非借贷协议或健康因子不可用时为 null。
before本交易前的健康因子,不可用时为 null。
after本交易后的健康因子,不可用时为 null。
非阻断式风险提示,无风险时为空数组。
code提示代码。已知取值:HEALTH_FACTOR_WARNING、HEALTH_FACTOR_DANGER、HIGH_SLIPPAGE、 DELAYED_REDEMPTION、LP_OUT_OF_RANGE。按 code 分支控制流,message 原样展示。
level严重级别 — INFO / WARN / DANGER。
message可读的提示文案。
errorMessage模拟交易失败时的错误信息。
redeemDelayDays赎回等待天数,[min, max] 十进制字符串对。仅 /transaction/redeem 填充,其余构建接口或不支持时为 null。含义: [](空数组)= 即时到账,无等待期; ["7","7"] = 固定 7 天; ["7","10"] = 7–10 天。 等待期自赎回交易链上确认后起算。
timestamp服务端时间戳(毫秒)。
success请求是否成功(等价于 code == 0)。
构建 LP 添加流动性交易
构建添加流动性的未签名交易 calldata。tokenList 支持多 token。返回有序 dataList(通常为 [APPROVE, LP_ADD])。
tick 区间来源(恰好提供一组):
nftId——追加已有 LP 仓位(沿用原仓位范围)。priceRange——价格范围百分比(如"5"表示 ±5%),新建仓位。tickLower+tickUpper——显式原始int24对,新建仓位。 规则:
-
同时传入多组时,仅取上述优先级最高的一组、其余被静默忽略 (优先级:
nftId>priceRange> 显式 tick 对)。 -
一组都不传,请求被拒(
40453)。 -
tickLower/tickUpper为原始int24,必须对齐池子的tickSpacing, 否则请求被拒(40453)。 -
调用方无需传
binanceChainId——由investmentId反查。
构建 LP 添加流动性交易 › 授权
请求头
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 代替。
构建 LP 添加流动性交易 › 请求体
address用户钱包地址(签名 / 发送方)。
investmentIdLP 投资品 ID(跨链通用)。
投入 token 列表。标准 LP-add 为双 token。
tokenAddress代币合约地址;主链币使用 sentinel 地址。
amount人类可读数量(十进制字符串),如 "1.5"、"100"。
tickLower新建仓位的下限 tick(原始 int24),必须对齐池子的 tickSpacing。tick 区间来源三选一: tickLower+tickUpper、priceRange、或 nftId(追加已有仓位)。若同时传入多个, 低优先级的会被忽略(优先级:nftId > priceRange > 显式 tick 对)。
tickUpper新建仓位的上限 tick(原始 int24),必须对齐池子的 tickSpacing。三选一规则见 tickLower。
priceRange价格范围百分比(如 "5" 表示 ±5%),新建仓位时可替代 tickLower+tickUpper;三选一规则见 tickLower。
nftIdLP NFT tokenId,十进制字符串(如 "7225901" 或 "#7225901")。追加已有 LP 仓位时 必填(沿用原仓位范围);新建仓位不填。优先级最高的 tick 区间来源——三选一规则见 tickLower。持仓列表返回的 # 前缀可原样传入——服务会自动去除。
slippageBpsLP 段滑点容忍度(基点),如 300 表示 3%。
simulate为 true 时响应同时返回 preview 对象,默认 false。若模拟交易 revert,请求将返回 40485(匹配到特定归类的 revert 原因)或 40484(其它任意 revert)错误码(见错误码文档)。
构建 LP 添加流动性交易 › 响应
成功返回 LP 添加流动性交易 calldata。
code业务状态码,0 表示成功。
msg状态说明。
5 个交易构建接口(deposit / redeem / lp-add / lp-remove / claim)的统一返回。dataList 有序: APPROVE 在前、主交易在后,调用方需按序签名广播。preview 仅当请求 simulate=true 时非空。 redeemDelayDays 仅 /transaction/redeem 填充。
有序的未签名交易列表,APPROVE 在前、主交易在后。
callDataType本条目的操作类型:
APPROVE:ERC-20 授权,须在主交易前签名广播并确认DEPOSIT/REDEEM/LP_ADD/LP_REMOVE/CLAIM:主交易。LP_ADD/LP_REMOVE为 LP 加 / 减流动性段(与流动性池投资品的 deposit / redeem 同一构建路径;此字段反映链上动作,而非调用入口)。
from用户钱包地址(签名 / 发送方)。EIP-55 校验和格式——若签名库要求,签名前请用 to_checksum_address 规范化。
to目标合约地址。EIP-55 校验和格式,与 from 一致。BSC 上每个主交易项均非空。
value原生币金额(0x 前缀的 hex 字符串)。BSC 上主交易项均非空。
data序列化交易数据,0x 前缀的 hex calldata。
gasLimit建议 gas limit(十进制字符串),估算失败为 null。
gasPriceLegacy gas price(十进制字符串)。BSC 等 EIP-1559 链为 null(改用 maxFeePerGas / maxPriorityFeePerGas)。
maxPriorityFeePerGasEIP-1559 优先费(wei,十进制字符串);非 1559 链为 null。
maxFeePerGasEIP-1559 单笔最大 gas 费(wei,十进制字符串);非 1559 链为 null。
当 simulate=true 时构建接口返回的预览结果。包含操作是否预期成功、预估余额变动、预估网络费用, 以及借贷协议的 health factor 变化。balanceChange、feeAndContract、healthFactor、warnings 均有固定结构(见下);条目数量与部分内部取值因协议而异。
success模拟交易是否会在链上执行成功。
模拟得到的签名代币余额变动列表。每项含 tokenType、tokenSymbol、tokenAddress、 tokenDecimals、amount(正=收到,负=支出)、valueUsd、可选 tokenId。
tokenType模拟返回的代币角色 / 类型标记。
tokenSymbol代币符号。
tokenAddress代币合约地址。
tokenDecimals代币精度。
amount有符号变动量(正=收到,负=支出)。
valueUsd该变动的美元价值。
tokenId可选的 NFT / 仓位 token ID。
预估网络费用与交互对手合约。含 estimatedNetworkFee 与 interactWith。
该操作的预估 gas 成本。估算不可用(如模拟失败)时字段为 null。
amount预估 gas 费(以支付 gas 的代币计,人类可读)。
tokenSymbol支付 gas 的代币符号(主链币,如 BNB)。
valueUsd预估费用的美元价值。
rentFeeAmount存储 / 租金费部分(人类可读),适用时。
rentFeeValueUsd存储 / 租金费的美元价值,适用时。
priorityFeeAmount优先费部分(人类可读),单列时。
该操作交互的对手合约。
address目标合约地址。
借贷协议 health factor 变化。借贷类协议(如 Aave / Venus)返回 before / after 变化前后的值;非借贷协议或健康因子不可用时为 null。
before本交易前的健康因子,不可用时为 null。
after本交易后的健康因子,不可用时为 null。
非阻断式风险提示,无风险时为空数组。
code提示代码。已知取值:HEALTH_FACTOR_WARNING、HEALTH_FACTOR_DANGER、HIGH_SLIPPAGE、 DELAYED_REDEMPTION、LP_OUT_OF_RANGE。按 code 分支控制流,message 原样展示。
level严重级别 — INFO / WARN / DANGER。
message可读的提示文案。
errorMessage模拟交易失败时的错误信息。
redeemDelayDays赎回等待天数,[min, max] 十进制字符串对。仅 /transaction/redeem 填充,其余构建接口或不支持时为 null。含义: [](空数组)= 即时到账,无等待期; ["7","7"] = 固定 7 天; ["7","10"] = 7–10 天。 等待期自赎回交易链上确认后起算。
timestamp服务端时间戳(毫秒)。
success请求是否成功(等价于 code == 0)。
计算 LP 添加配对金额
根据单边输入 token 计算 LP-add 所需的配对 token 数量。纯计算接口,不上链、不扣费。在调用 /transaction/lp-add 前,当只提供单边 token 时用于确定配对额度。
tick 区间来源规则同 /lp-add——恰好提供一组:nftId(已有仓位)、priceRange、或 tickLower+tickUpper。
-
同时传入多组时,仅取优先级最高的一组、其余被静默忽略 (优先级:
nftId>priceRange> 显式 tick 对)。 -
一组都不传,请求被拒。
-
调用方无需传
binanceChainId——由investmentId反查。
计算 LP 添加配对金额 › 授权
请求头
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 代替。
计算 LP 添加配对金额 › 请求体
address用户钱包地址。
investmentIdLP 投资品 ID(跨链通用)。
(tokenAddress, amount) 二元组。amount 为人类可读的小数字符串(非代币最小单位),服务按代币精度自动换算。 主链币使用 sentinel 0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee(40 个 e)。
tokenAddress代币合约地址;主链币使用 sentinel 地址。
amount人类可读数量(十进制字符串),如 "1.5"、"100"。
tickLower下限 tick(原始 int24),对齐池子的 tickSpacing。
tickUpper上限 tick(原始 int24),对齐池子的 tickSpacing。
priceRange价格范围百分比(如 "5" 表示 ±5%)。
nftId为已有 LP 仓位计算时必填。
计算 LP 添加配对金额 › 响应
成功返回配对 token 数量。
code业务状态码,0 表示成功。
msg状态说明。
/transaction/lp-add/calculate 的返回结果。根据单边输入 token 计算并返回配对 token 数量。纯计算接口, 不上链、不扣费。
inputTokenAmount输入 token 数量(人类可读)。
pairedTokenAddress根据投资品推导出的配对 token 合约地址。
pairedTokenAmount计算得到的配对 token 数量(人类可读)。
timestamp服务端时间戳(毫秒)。
success请求是否成功(等价于 code == 0)。
构建 LP 移除流动性交易
构建移除流动性的未签名交易 calldata。按 nftId + ratio(范围 (0, 1])移除,无需 tokenList——各 token 数量按链上仓位算出。返回有序 dataList(通常为 [LP_REMOVE])。
slippageBps 为 LP 段滑点容忍度(基点)。调用方无需传 binanceChainId——由 investmentId 反查。
构建 LP 移除流动性交易 › 授权
请求头
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 代替。
构建 LP 移除流动性交易 › 请求体
address用户钱包地址(签名 / 发送方)。
investmentIdLP 投资品 ID(跨链通用)。
nftId要移除的 LP 仓位 NFT tokenId,十进制字符串(如 "7225901" 或 "#7225901")。持仓 列表返回的 # 前缀可原样传入——服务会自动去除。
ratio移除比例,范围 (0, 1],十进制字符串,如 "0.04"、"1"。
slippageBpsLP 段滑点容忍度(基点),如 300 表示 3%。
simulate为 true 时响应同时返回 preview 对象,默认 false。若模拟交易 revert,请求将返回 40485(匹配到特定归类的 revert 原因)或 40484(其它任意 revert)错误码(见错误码文档)。
构建 LP 移除流动性交易 › 响应
成功返回 LP 移除流动性交易 calldata。
code业务状态码,0 表示成功。
msg状态说明。
5 个交易构建接口(deposit / redeem / lp-add / lp-remove / claim)的统一返回。dataList 有序: APPROVE 在前、主交易在后,调用方需按序签名广播。preview 仅当请求 simulate=true 时非空。 redeemDelayDays 仅 /transaction/redeem 填充。
有序的未签名交易列表,APPROVE 在前、主交易在后。
callDataType本条目的操作类型:
APPROVE:ERC-20 授权,须在主交易前签名广播并确认DEPOSIT/REDEEM/LP_ADD/LP_REMOVE/CLAIM:主交易。LP_ADD/LP_REMOVE为 LP 加 / 减流动性段(与流动性池投资品的 deposit / redeem 同一构建路径;此字段反映链上动作,而非调用入口)。
from用户钱包地址(签名 / 发送方)。EIP-55 校验和格式——若签名库要求,签名前请用 to_checksum_address 规范化。
to目标合约地址。EIP-55 校验和格式,与 from 一致。BSC 上每个主交易项均非空。
value原生币金额(0x 前缀的 hex 字符串)。BSC 上主交易项均非空。
data序列化交易数据,0x 前缀的 hex calldata。
gasLimit建议 gas limit(十进制字符串),估算失败为 null。
gasPriceLegacy gas price(十进制字符串)。BSC 等 EIP-1559 链为 null(改用 maxFeePerGas / maxPriorityFeePerGas)。
maxPriorityFeePerGasEIP-1559 优先费(wei,十进制字符串);非 1559 链为 null。
maxFeePerGasEIP-1559 单笔最大 gas 费(wei,十进制字符串);非 1559 链为 null。
当 simulate=true 时构建接口返回的预览结果。包含操作是否预期成功、预估余额变动、预估网络费用, 以及借贷协议的 health factor 变化。balanceChange、feeAndContract、healthFactor、warnings 均有固定结构(见下);条目数量与部分内部取值因协议而异。
success模拟交易是否会在链上执行成功。
模拟得到的签名代币余额变动列表。每项含 tokenType、tokenSymbol、tokenAddress、 tokenDecimals、amount(正=收到,负=支出)、valueUsd、可选 tokenId。
tokenType模拟返回的代币角色 / 类型标记。
tokenSymbol代币符号。
tokenAddress代币合约地址。
tokenDecimals代币精度。
amount有符号变动量(正=收到,负=支出)。
valueUsd该变动的美元价值。
tokenId可选的 NFT / 仓位 token ID。
预估网络费用与交互对手合约。含 estimatedNetworkFee 与 interactWith。
该操作的预估 gas 成本。估算不可用(如模拟失败)时字段为 null。
amount预估 gas 费(以支付 gas 的代币计,人类可读)。
tokenSymbol支付 gas 的代币符号(主链币,如 BNB)。
valueUsd预估费用的美元价值。
rentFeeAmount存储 / 租金费部分(人类可读),适用时。
rentFeeValueUsd存储 / 租金费的美元价值,适用时。
priorityFeeAmount优先费部分(人类可读),单列时。
该操作交互的对手合约。
address目标合约地址。
借贷协议 health factor 变化。借贷类协议(如 Aave / Venus)返回 before / after 变化前后的值;非借贷协议或健康因子不可用时为 null。
before本交易前的健康因子,不可用时为 null。
after本交易后的健康因子,不可用时为 null。
非阻断式风险提示,无风险时为空数组。
code提示代码。已知取值:HEALTH_FACTOR_WARNING、HEALTH_FACTOR_DANGER、HIGH_SLIPPAGE、 DELAYED_REDEMPTION、LP_OUT_OF_RANGE。按 code 分支控制流,message 原样展示。
level严重级别 — INFO / WARN / DANGER。
message可读的提示文案。
errorMessage模拟交易失败时的错误信息。
redeemDelayDays赎回等待天数,[min, max] 十进制字符串对。仅 /transaction/redeem 填充,其余构建接口或不支持时为 null。含义: [](空数组)= 即时到账,无等待期; ["7","7"] = 固定 7 天; ["7","10"] = 7–10 天。 等待期自赎回交易链上确认后起算。
timestamp服务端时间戳(毫秒)。
success请求是否成功(等价于 code == 0)。
构建 DeFi 领取交易
构建 4 种领取类型之一的未签名 claim calldata——每种类型所需的必填字段及协议限制见 DefiClaimType(如 REWARD_PROTOCOL 不支持 LP 协议;PancakeSwap V3 farming 用 LP_FEE 而非 REWARD_INVESTMENT)。返回有序 dataList(通常为 [CLAIM])。
binanceChainId 解析规则:
-
通常由
investmentId反查,调用始终在该链上执行。 -
对
REWARD_PROTOCOL以外的 claim 类型,客户端传入的binanceChainId会被静默忽略 ——传别的 chainId 不会改变领取所在的链。 -
例外:
REWARD_PROTOCOL且未提供investmentId——客户端必须传binanceChainId(它是唯一的链信号)。
tokenAddressList 可选,缩小领取目标范围。设 simulate=true 可同时返回 preview。
构建 DeFi 领取交易 › 授权
请求头
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 代替。
构建 DeFi 领取交易 › 请求体
address用户钱包地址(签名 / 发送方)。
claimType领取类型,决定必填字段:
REWARD_PROTOCOL:协议全局奖励(如 Aave incentive、Radiant),需defiProtocolId+binanceChainIdREWARD_INVESTMENT:单个 investment 维度奖励,需investmentIdLP_FEE:Uniswap V3/V4 LP 手续费,需investmentId+nftIdREDEMPTION:赎回本金(Lista / Aster / Solv 等),需investmentId+redemptionId
协议限制——并非每种 claimType 都适用于所有协议,不匹配的组合会被拒(40453 或 40454):
REWARD_PROTOCOL本期不支持 LP(流动性池)协议。REWARD_INVESTMENT不支持 PancakeSwap V3 farming 仓位;领取挖矿激励请改用LP_FEE。LP_FEE仅适用于集中流动性(V3/V4)LP 仓位。REDEMPTION仅适用于带赎回 / 锁仓流程的协议(Lista、Aster、Solv)。
某仓位可用的 claimType 由该仓位的 positionDetail.claimTypes 返回(见持仓列表)——请据此分支,
不要硬编码映射。注意:错误信息里的协议 ID 可能带链前缀(如 bsc_pancakeswap4),
而接口字段中的规范 ID 是无前缀形态(如 pancakeswap4)。
binanceChainIdBinance 链 ID。REWARD_PROTOCOL 不使用 investmentId,故此字段是唯一的链信号、必填; 其余 claim 类型由 investmentId 反查链,客户端传入会被静默忽略——调用仍按 investmentId 反查的链执行,传别的 chainId 不会改变领取所在的链。
investmentIdREWARD_INVESTMENT、LP_FEE、REDEMPTION 时必填;REWARD_PROTOCOL 不用(以 defiProtocolId 为键)。
defiProtocolIdREWARD_PROTOCOL 时必填,如 pancakeswap3。
nftIdLP_FEE 时必填。NFT tokenId,十进制字符串(如 "7225901" 或 "#7225901")。持仓 列表返回的 # 前缀可原样传入——服务会自动去除。
redemptionIdREDEMPTION 时必填,对应 position/list 中返回的 redemptionId(即线上 position index)。
tokenAddressList可选的 token 地址过滤,缩小 claim 目标范围。
simulate为 true 时响应同时返回 preview 对象,默认 false。若模拟交易 revert,请求将返回 40485(匹配到特定归类的 revert 原因)或 40484(其它任意 revert)错误码(见错误码文档)。
构建 DeFi 领取交易 › 响应
成功返回领取交易 calldata。
code业务状态码,0 表示成功。
msg状态说明。
5 个交易构建接口(deposit / redeem / lp-add / lp-remove / claim)的统一返回。dataList 有序: APPROVE 在前、主交易在后,调用方需按序签名广播。preview 仅当请求 simulate=true 时非空。 redeemDelayDays 仅 /transaction/redeem 填充。
有序的未签名交易列表,APPROVE 在前、主交易在后。
callDataType本条目的操作类型:
APPROVE:ERC-20 授权,须在主交易前签名广播并确认DEPOSIT/REDEEM/LP_ADD/LP_REMOVE/CLAIM:主交易。LP_ADD/LP_REMOVE为 LP 加 / 减流动性段(与流动性池投资品的 deposit / redeem 同一构建路径;此字段反映链上动作,而非调用入口)。
from用户钱包地址(签名 / 发送方)。EIP-55 校验和格式——若签名库要求,签名前请用 to_checksum_address 规范化。
to目标合约地址。EIP-55 校验和格式,与 from 一致。BSC 上每个主交易项均非空。
value原生币金额(0x 前缀的 hex 字符串)。BSC 上主交易项均非空。
data序列化交易数据,0x 前缀的 hex calldata。
gasLimit建议 gas limit(十进制字符串),估算失败为 null。
gasPriceLegacy gas price(十进制字符串)。BSC 等 EIP-1559 链为 null(改用 maxFeePerGas / maxPriorityFeePerGas)。
maxPriorityFeePerGasEIP-1559 优先费(wei,十进制字符串);非 1559 链为 null。
maxFeePerGasEIP-1559 单笔最大 gas 费(wei,十进制字符串);非 1559 链为 null。
当 simulate=true 时构建接口返回的预览结果。包含操作是否预期成功、预估余额变动、预估网络费用, 以及借贷协议的 health factor 变化。balanceChange、feeAndContract、healthFactor、warnings 均有固定结构(见下);条目数量与部分内部取值因协议而异。
success模拟交易是否会在链上执行成功。
模拟得到的签名代币余额变动列表。每项含 tokenType、tokenSymbol、tokenAddress、 tokenDecimals、amount(正=收到,负=支出)、valueUsd、可选 tokenId。
tokenType模拟返回的代币角色 / 类型标记。
tokenSymbol代币符号。
tokenAddress代币合约地址。
tokenDecimals代币精度。
amount有符号变动量(正=收到,负=支出)。
valueUsd该变动的美元价值。
tokenId可选的 NFT / 仓位 token ID。
预估网络费用与交互对手合约。含 estimatedNetworkFee 与 interactWith。
该操作的预估 gas 成本。估算不可用(如模拟失败)时字段为 null。
amount预估 gas 费(以支付 gas 的代币计,人类可读)。
tokenSymbol支付 gas 的代币符号(主链币,如 BNB)。
valueUsd预估费用的美元价值。
rentFeeAmount存储 / 租金费部分(人类可读),适用时。
rentFeeValueUsd存储 / 租金费的美元价值,适用时。
priorityFeeAmount优先费部分(人类可读),单列时。
该操作交互的对手合约。
address目标合约地址。
借贷协议 health factor 变化。借贷类协议(如 Aave / Venus)返回 before / after 变化前后的值;非借贷协议或健康因子不可用时为 null。
before本交易前的健康因子,不可用时为 null。
after本交易后的健康因子,不可用时为 null。
非阻断式风险提示,无风险时为空数组。
code提示代码。已知取值:HEALTH_FACTOR_WARNING、HEALTH_FACTOR_DANGER、HIGH_SLIPPAGE、 DELAYED_REDEMPTION、LP_OUT_OF_RANGE。按 code 分支控制流,message 原样展示。
level严重级别 — INFO / WARN / DANGER。
message可读的提示文案。
errorMessage模拟交易失败时的错误信息。
redeemDelayDays赎回等待天数,[min, max] 十进制字符串对。仅 /transaction/redeem 填充,其余构建接口或不支持时为 null。含义: [](空数组)= 即时到账,无等待期; ["7","7"] = 固定 7 天; ["7","10"] = 7–10 天。 等待期自赎回交易链上确认后起算。
timestamp服务端时间戳(毫秒)。
success请求是否成功(等价于 code == 0)。