Documentation Index
Fetch the complete documentation index at: https://docs.nexfi.robert.dpdns.org/llms.txt
Use this file to discover all available pages before exploring further.
Wallet 交易与风控
本页覆盖历史记录、单链交易、Gas 估算和地址/域名/交易风险检查接口。
GET /api/v1/history/{address}
获取多链聚合历史,用于钱包首页活动流与历史列表页。
Path / Query 参数
| 参数 | 类型 | 必填 | 说明 | 示例 |
|---|
address | String | 是 | 钱包地址 | 0xabc... |
chainIds | String | 否 | 链过滤 | 8453,1 |
cursor | String | 否 | 分页游标 | cursor_20 |
limit | String | 否 | 单页条数 | 20 |
status | Enum | 否 | 交易状态:success pending failed | success |
kind | Enum | 否 | 交易类型:send receive approval contract_interaction | send |
请求示例
GET /api/v1/history/0xabc...?chainIds=8453&limit=20&status=success&kind=send
响应字段
| 字段路径 | 类型 | 说明 | 示例 |
|---|
data.items | Array | 历史列表 | [] |
data.items[].hash | String | 交易哈希 | 0x123 |
data.items[].chainId | Integer | 链 ID | 8453 |
data.items[].from | String | 发起地址 | 0xabc... |
data.items[].to | String | 目标地址 | 0xdef... |
data.items[].value | String | 原始金额 | 1000000000000000000 |
data.items[].tokenAddress | String | 资产地址或 native | native |
data.items[].symbol | String | 资产符号 | ETH |
data.items[].status | String | 交易状态 | success |
data.items[].timestamp | String | 交易时间 | 2026-05-11T10:00:00.000Z |
data.items[].kind | String | 交易类型 | send |
data.items[].blockNumber | Integer | 区块号 | 29123456 |
data.items[].explorerUrl | String | 浏览器链接 | https://basescan.org/tx/0x123 |
data.nextCursor | String | Null | 下一页游标 | cursor_20 |
响应示例
{
"code": 0,
"msg": "ok",
"data": {
"items": [
{
"hash": "0x123",
"chainId": 8453,
"from": "0xabc...",
"to": "0xdef...",
"value": "1000000000000000000",
"tokenAddress": "native",
"symbol": "ETH",
"status": "success",
"timestamp": "2026-05-11T10:00:00.000Z",
"kind": "send",
"blockNumber": 29123456,
"explorerUrl": "https://basescan.org/tx/0x123"
}
],
"nextCursor": "cursor_20"
}
}
GET /api/v1/transactions/{chainId}/{address}
获取单条链上的交易历史,适用于链详情页或按链筛选后的活动流。
Path / Query 参数
| 参数 | 类型 | 必填 | 说明 | 示例 |
|---|
chainId | Integer | 是 | 目标链 ID | 8453 |
address | String | 是 | 钱包地址 | 0xabc... |
cursor | String | 否 | 分页游标 | cursor_40 |
limit | String | 否 | 单页条数 | 20 |
响应说明
返回结构与 /api/v1/history/{address} 一致,但结果限定在单条链内。
GET /api/v1/transactions/{chainId}/hash/{hash}
通过链 ID 和交易哈希获取单笔交易详情。
Path 参数
| 参数 | 类型 | 必填 | 说明 | 示例 |
|---|
chainId | Integer | 是 | 目标链 ID | 8453 |
hash | String | 是 | 交易哈希 | 0x123... |
响应字段
返回单个 TransactionItem,字段与历史列表项一致。
异常说明
- 未找到交易时返回 HTTP
404。
- 若链浏览器或索引源不可用,可返回业务错误码并提示稍后重试。
POST /api/v1/transactions/estimate-gas
对转账交易进行 Gas 估算,供发送确认页展示矿工费。
Body 参数
| 参数 | 类型 | 必填 | 说明 | 示例 |
|---|
chainId | Integer | 是 | 链 ID | 8453 |
from | String | 是 | 发起地址 | 0xabc... |
to | String | 是 | 目标地址 | 0xdef... |
amount | String | 是 | 转账金额 | 0.1 |
tokenAddress | String | 否 | 代币地址;为空表示原生币 | 0x8335... |
请求示例
{
"chainId": 8453,
"from": "0xabc...",
"to": "0xdef...",
"amount": "0.1"
}
响应字段
| 字段路径 | 类型 | 说明 | 示例 |
|---|
data.chainId | Integer | 链 ID | 8453 |
data.gasLimit | Integer | 估算 Gas 上限 | 21000 |
data.gasPriceGwei | Number | Gas Price | 1.2 |
data.estimatedFeeNative | Number | 原生币计价手续费 | 0.0000252 |
data.estimatedFeeUsd | Number | Null | 美元计价手续费 | 0.09 |
data.confidence | String | 估算可信度 | high |
data.updatedAt | String | 估算时间 | 2026-05-11T10:00:00.000Z |
响应示例
{
"code": 0,
"msg": "ok",
"data": {
"chainId": 8453,
"gasLimit": 21000,
"gasPriceGwei": 1.2,
"estimatedFeeNative": 0.0000252,
"estimatedFeeUsd": 0.09,
"confidence": "high",
"updatedAt": "2026-05-11T10:00:00.000Z"
}
}
POST /api/v1/risk/check-address
校验地址风险,用于转账前校验、地址簿提示和恶意地址拦截。
Body 参数
| 参数 | 类型 | 必填 | 说明 | 示例 |
|---|
chainId | Integer | 是 | 链 ID | 8453 |
address | String | 是 | 待检测地址 | 0xdef... |
响应字段
| 字段路径 | 类型 | 说明 | 示例 |
|---|
data.riskLevel | String | 风险等级 | low |
data.labels | String[] | 风险标签 | [] |
data.reasons | String[] | 风险原因说明 | [] |
data.source | String | 风险来源 | internal |
响应示例
{
"code": 0,
"msg": "ok",
"data": {
"riskLevel": "low",
"labels": [],
"reasons": [],
"source": "internal"
}
}
POST /api/v1/risk/check-domain
检测 DApp 来源域名是否存在钓鱼、仿冒或已知恶意风险。
Body 参数
| 参数 | 类型 | 必填 | 说明 | 示例 |
|---|
origin | String | 是 | DApp 域名或来源地址 | https://app.uniswap.org |
响应字段
| 字段路径 | 类型 | 说明 | 示例 |
|---|
data.riskLevel | String | 风险等级 | low |
data.labels | String[] | 风险标签 | ["dex"] |
data.reasons | String[] | 风险原因列表 | [] |
POST /api/v1/risk/check-transaction
对待签名交易做风控预检查,适用于 DApp 授权、合约交互和可疑转账提醒。
Body 参数
| 参数 | 类型 | 必填 | 说明 | 示例 |
|---|
chainId | Integer | 是 | 链 ID | 8453 |
from | String | 是 | 发起地址 | 0xabc... |
to | String | 是 | 目标地址 | 0xrouter... |
value | String | 是 | 交易附带原生币金额 | 0 |
data | String | 否 | 交易 calldata | 0xa9059cbb... |
origin | String | 否 | 交易发起来源域名 | https://app.uniswap.org |
响应字段
| 字段路径 | 类型 | 说明 | 示例 |
|---|
data.riskLevel | String | 风险等级 | medium |
data.warnings | Array | 告警列表 | [] |
data.warnings[].type | String | 告警类型 | approval_unlimited |
data.warnings[].message | String | 告警描述 | Unlimited approval detected |
data.decoded | Object | Null | 解析后的交易摘要 | { "method": "approve" } |
响应示例
{
"code": 0,
"msg": "ok",
"data": {
"riskLevel": "medium",
"warnings": [
{
"type": "approval_unlimited",
"message": "Unlimited approval detected"
}
],
"decoded": {
"method": "approve",
"token": "USDC",
"spender": "0xrouter..."
}
}
}
业务说明
- 地址、域名、交易风控结果应作为提示与拦截依据之一,不应替代用户最终确认。
decoded 适合作为签名前的人类可读摘要。
- 对高风险返回建议前端增加二次确认或阻断流程。