想快速获取某地址在全链的详细交易记录?本篇将带你 10 分钟上手 DEX API 的「By Address 交易历史接口」,覆盖请求/响应字段、分页策略、时间过滤与实操技巧,让数据查询更高效、对接更轻松。核心关键词:DEX API、交易历史接口、地址维度查询、多链解析、交易数据、API 文档、区块链查询、Web3 开发者。
1. 接口定位与使用场景
该接口按时间倒序拉取目标地址的交易历史,可用于以下场景:
- 钱包应用实时展示用户 区块链资产 变化;
- DEX 数据分析平台统计大户地址资金动向;
- 追踪内存池中 交易状态 从
pending→success的完整生命周期; - 审计或风控系统快速定位与黑名单地址的交互记录。
支持多链查询,无需逐个链调接口即可获得统一格式数据,大幅降低集成成本。
2. 请求格式详解
2.1 通用路径
GET https://web3.okx.com/api/v5/dex/post-transaction/transactions-by-address必填头部:
Content-Type: application/json
2.2 参数速查(1 行秒懂)
| 参数字段 | 作用 | 限制 |
|---|---|---|
| address | 必传,目标钱包地址 | 小于 48 字符 |
| chains | 可选,指定链 ID,多链用英文逗号分隔 | ≤50 条 |
| tokenContractAddress | 若填则仅查看指定代币交易 | 需合法合约地址 |
| begin / end | Unix 毫秒级时间戳,控制查询区间 | 单链最多 7 天跨度 |
| limit | 单次返回条数 | 单链 ≤20,多链 ≤100 |
| cursor | 分页游标,用于上次数据翻页 | 游标 24h 有效 |
2.3 时间戳小贴士
想查询昨晚 8 点到今晨 8 点的数据?把 begin 设为昨晚的 Unix 毫秒值,end 设为今晨的毫秒值即可。👉 手把手教你生成 Unix 时间戳
3. 响应字段全解析
核心返回节点 transactions 中,每条记录包含:
- chainIndex 链唯一标识,方便多链合并后定位来源;
- txHash 交易哈希值,用于外链浏览器跳转;
- itype 交易层级:
0单笔主网币转账,1合约内部主网币,2Token 转移; - methodId 函数签名,配合 ABI 即可判断是 swap 还是质押操作;
- txStatus 交易者必备字段,实时显示
success、fail、pending; - hitBlacklist 布尔值,风控维度一键识别风险交互;
- 其余如 amount、symbol、txFee 一目了然,不再赘述。
对于高频读者,可采用工单策略:本地维护链 ID→链名映射表,做到显示层面自动翻译为中文名(如 324 ⇒ zkSync)。
4. 调用实例(实战)
4.1 单链 + 时间过滤
假设只想查 ethereum 链(链 ID 1)上 0x123A... 地址近 24h 的 Token 转账:
GET /api/v5/dex/post-transaction/transactions-by-address?address=0x123A…&chains=1&begin=1688200000000&end=1688286400000&limit=20返回 20 条记录,按 txTime 倒序排列。
4.2 多链聚合 + 游标分页
查 50 条(5 链 × 10 条)以最快了解地址分布:
GET /api/v5/dex/post-transaction/transactions-by-address?address=0x123A…&chains=1,56,324,42161,137&limit=50- 首 100 条后服务器给出
cursor, - 前端存储 cursor,滚动加载全部交易历史。
5. 性能 & 限制
- QPS:公网默认 10 次/秒,可申请升级;
- 翻页限速:同地址 1 秒内不得再发含 cursor 的请求;
- 黑名单缓存:标签更新为 5 分钟粒度。
若遭遇 429,可在客户端做指数退避:retryAfter = 当前间隔 ×2。
6. 开发调试表(FAQ)
Q1:tokenContractAddress 和留空有什么区别?
A:留空表示返回“主网币 + 全部 Token”混合数据,而填入值后只看该 Token 的交易记录,利于计算持仓波动。
Q2:单次返回条数能否超过官方限制?
A:不可;请结合 cursor 分页实现全量获取,既稳定又不触发限流。
Q3:响应里没有合约方法名?
A:methodId 给出 4 字节函数签名字符串,本地再查 ABI 即可解析到人类易读名称,如 swapExactTokensForTokens、 transferFrom 等。
Q4:如何快速确认交易是否失败?
A:Check Some Code:
if tx['txStatus'] == 'fail':
alert_user(tx['txHash'], '交易执行失败')Q5:为什么查到 7 天前历史会被截断?
A:免费账号默认保存 7 天窗口,如需更长历史可提交工单申请 历史镜像库。
Q6:cursor 24h 后失效怎么办?
A:以该 cursor 继续向前翻页时,若发现 400 错误,取最后一条的 txTime 当新的 end 重新发起子查询即可。
7. 小结与下一步
通过 1 个地址、1 次网络请求,即可拿到全链、全类型、后缀带黑名单标记的交易 区块链查询 数据。本篇已将 API 文档 精简到实战可用,下一步你可:
- 在前端生成 Hyperlink,点击 txHash 直达区块浏览器;
- 用 methodId 维度做聚类,自动生成仪表盘;
- 把
cursor持久化至本地 IndexedDB,实现秒级冷启动。
Web3 数据浩瀚,愿你用上 DEX API 后,高效洞察每笔 交易数据 的价值。