SuperAPI AI 工具集

debank

数据与分析

查看项目

更新于 10-16 02:43

技能介绍

DeBank 是一个多链钱包数据查询技能,通过 Python 脚本调用 DeBank Cloud API,为任意 EVM 地址返回资产组合、交易历史、DeFi 持仓、NFT 与交易模拟等数据。

用途

该技能用于检查任意 EVM 地址的链上资产状况,包括代币余额、交易记录、DeFi 协议头寸、NFT 持有情况,以及代币详情、价格、持有者分布和交易预执行分析。典型场景包括查看某地址(如 vitalik.eth)在多条链上的余额、解码交易记录、追踪 DeFi 仓位,以及提交交易前的模拟验证。

主要能力

  • 链与代币参考:列出支持的链(db_chain_list)、查询单链信息(db_chain)、Gas 行情(db_gas_market)、代币详情(db_token)、批量查询(db_token_list_by_ids)、历史价格(db_token_history_price)、头部持有者(db_token_top_holders)。
  • 单链用户资产组合:单链 USD 估值(db_user_chain_balance)、单链代币列表(db_user_token_list)、单一代币余额(db_user_token)、简化 DeFi 持仓(db_user_simple_protocol_list)、详细 DeFi 持仓(db_user_complex_protocol_list)、NFT 列表(db_user_nft_list)、交易历史(db_user_history_list)、净资产曲线(db_user_chain_net_curve)、代币授权(db_user_token_authorized_list)、NFT 授权(db_user_nft_authorized_list)。
  • 全链用户资产组合(调用较重):全链总余额及构成(db_user_total_balance)、全链净资产曲线(db_user_total_net_curve)、使用过的链列表(db_user_used_chain_list)、全链代币列表(db_user_all_token_list)、全链简化 DeFi 持仓(db_user_all_simple_protocol_list)、全链详细 DeFi 持仓(db_user_all_complex_protocol_list)、全链 NFT 列表(db_user_all_nft_list)、全链交易历史(db_user_all_history_list)、应用级持仓(db_user_complex_app_list)。
  • 协议参考:协议详情(db_protocol)、单链协议列表(db_protocol_list)、全链协议列表(db_protocol_all_list)、应用级协议分组(db_app_protocol_list)、用户在单个协议中的持仓(db_user_protocol)、单个池子详情(db_pool)。
  • 交易模拟:提交前模拟交易(db_pre_exec_tx)、生成人类可读的交易解释(db_explain_tx)。

使用方式

该技能为脚本模式:先阅读技能文件,然后在 bash 代码块中调用。示例如下:

python3 - <<'EOF'
import sys, json
sys.path.insert(0, "/data/workspace/skills/debank")
from exports import db_chain_list, db_user_total_balance, db_user_all_token_list

print(db_chain_list()[:3])
print(db_user_total_balance(user_addr="0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045"))
EOF

所有函数位于 exports.py,需查阅该文件获取完整的 db_* 函数列表与精确签名。常用函数包括 db_chain_list、db_chain、db_token、db_user_total_balance、db_user_all_token_list、db_user_all_simple_protocol_list、db_user_all_complex_protocol_list、db_user_history_list、db_protocol、db_pre_exec_tx、db_explain_tx。

常见工作流

  • 获取用户资产组合:调用 db_user_total_balance、db_user_all_token_list、db_user_all_nft_list。
  • 查询指定链代币余额:使用 db_user_token_list 并传入 chain_id(如 eth、bsc)。
  • 获取交易历史:使用 db_user_history_list(单链)或 db_user_all_history_list(全链)。
  • 查看 DeFi 协议持仓:使用 db_user_simple_protocol_list 或 db_user_complex_protocol_list,全链使用 db_user_all_complex_protocol_list。
  • 代币信息:使用 db_token、db_token_history_price、db_token_top_holders。
  • 交易模拟:使用 db_pre_exec_tx 与 db_explain_tx。
  • 协议数据与链信息:使用 db_protocol、db_protocol_list、db_protocol_all_list、db_chain_list、db_chain、db_gas_market。

适用场景与限制

适用于多链钱包盘点、链上交易追踪、DeFi 头寸查看、代币分析与交易前预览等场景。需要注意:需要配置 DEBANK_API_KEY 环境变量(DeBank Cloud API);大多数端点要求有效的区块链地址(0x 格式);chain_id 使用 DeBank 的小写代号(eth、bsc、arb、op、base、matic、avax、sol、era、scrl、linea、mnt、blast 等),可用 db_chain_list() 枚举完整列表;地址须为 0x 加 40 个十六进制字符。API 存在速率限制与不同端点的单位成本差异,应留意调用频率与成本。返回数据使用 snake_case(total_usd_value、chain_id、usd_value),USD 数值与代币数量均为浮点数,代币数量已按精度调整,无需再除以 10**decimals。