debank
DeBank OpenAPI
Query wallet portfolios, token balances, DeFi protocol positions, NFTs, and transaction history across 100+ EVM chains.
Base URL
https://pro-openapi.debank.com/v1
Requires API key: set DEBANK_API_KEY. Paid plans at https://cloud.debank.com/open-api
Pass via header: AccessKey: {key}
Endpoints
Total Balance
GET /user/total_balance?id={address}
Returns total USD value across all chains.
Chain Balances
GET /user/chain_list?id={address}
Returns per-chain balance breakdown with chain name, logo, and USD value.
Token List
GET /user/all_token_list?id={address}&is_all=true
Returns all token holdings across all chains with:
chain— chain identifiername,symbol,decimalsamount— raw balanceprice— current USD pricelogo_url
Filter by chain: GET /user/token_list?id={address}&chain_id={chain}
Chain IDs: bsc, eth, matic, arb, op, base, avax, ftm
DeFi Protocol Positions
GET /user/all_complex_protocol_list?id={address}
Returns all DeFi positions grouped by protocol:
- Lending (supply/borrow)
- Liquidity pools (LP positions)
- Farming (staked tokens + rewards)
- Vesting / locked tokens
Each position includes USD value, APY (when available), and health factor for lending.
Filter by chain: GET /user/complex_protocol_list?id={address}&chain_id={chain}
NFT List
GET /user/all_nft_list?id={address}&is_all=true
Returns NFT holdings with collection name, floor price, and image.
Transaction History
GET /user/history_list?id={address}&chain_id={chain}&page_count=20
Returns parsed transaction history with human-readable descriptions:
- Swap, Send, Receive, Approve, Contract Interaction
- Token amounts and counterparties
- Pagination via
start_timeparameter
Token Info
GET /token?id={address}&chain_id={chain}
Returns token metadata: name, symbol, price, market cap, holders, logo.
Protocol Info
GET /protocol?id={protocol_id}
Returns protocol details: TVL, chains, site URL, logo.
Protocol List
GET /protocol/list
Returns all tracked protocols. Large payload — filter output.
Usage Notes
- DeBank tracks 100+ EVM chains automatically — no need to query each chain separately when using
all_*endpoints - Always use
all_token_listandall_complex_protocol_listfor full portfolio overview - For transaction history,
chain_idis required — ask user which chain or iterate through their active chains - DeFi positions include detailed breakdowns (supply vs borrow, LP composition) — present clearly
- Combine with
coingeckofor price charts andsecurity-checkfor token risk assessment - Rate limits depend on plan tier — avoid unnecessary repeated calls
Example Interactions
User: "What's in my wallet?"
→ Call all_token_list for active wallet, present holdings sorted by USD value
User: "Show my DeFi positions"
→ Call all_complex_protocol_list, group by protocol, show value and APY
User: "What's the portfolio of 0x...?"
→ Call total_balance for overview, then all_token_list for details
User: "Show my recent transactions on BSC"
→ Call history_list with chain_id=bsc, present last 20 parsed transactions