Query DeFi positions (LPs, lending, yield farming) for any wallet across 60+ chains via x402 micropayment.
What it does
The Zapper DeFi Balances endpoint returns DeFi positions — liquidity pools, yield farming, lending, and other app-based balances — for one or more wallet addresses. It is part of the broader Zapper API suite, which covers onchain data across 60+ chains including token prices, NFTs, portfolios, transactions, and identity resolution.
You send a POST request with an array of 0x wallet addresses and optionally filter by chain IDs and limit the number of positions returned (max 50). The response includes a total USD balance for all DeFi app positions, broken down by app (e.g., Aave, Uniswap, Compound) with each app's category, USD balance, and detailed position data. Payment is handled via the x402 protocol on Base using USDC at $0.001125 per call (1125 base units, USDC 6 decimals). The endpoint also supports MPP (Tempo) settlement.
This endpoint is live, returning a proper 402 x402 challenge. The full OpenAPI spec is available with detailed input/output schemas. It is one of 17 paid tools in the Zapper x402 API, alongside token-price, search, NFT metadata, portfolio-totals, token-balances, transaction-history, and more.
Capabilities
Use cases
- —Retrieve all DeFi positions (LPs, lending, staking) for a wallet to display in a portfolio dashboard
- —Aggregate DeFi balances across multiple wallets for a fund or DAO treasury view
- —Filter DeFi positions by specific chains to analyze exposure on a single network
- —Power an AI agent that monitors DeFi positions and alerts on changes
- —Build accounting or tax tools that need per-app DeFi balance breakdowns
Fit
Best for
- —Agents or apps that need structured DeFi position data across many protocols and chains
- —Portfolio trackers that want per-app breakdowns (Aave, Uniswap, etc.) with USD values
- —Multi-wallet aggregation for DAOs, funds, or power users
Not for
- —Simple ERC-20 token balance lookups (use the token-balances endpoint instead)
- —Historical DeFi position snapshots (this returns current state only)
- —Free/unauthenticated bulk data scraping — every call costs $0.001125 via x402
Quick start
curl -X POST https://public.zapper.xyz/x402/defi-balances \
-H 'Content-Type: application/json' \
-H 'X-Payment: <x402-payment-token>' \
-d '{"addresses":["0xd8da6bf26964af9d7eed9e03e53415d37aa96045"],"first":10}'Example
Request
{
"first": 10,
"chainIds": [
1,
8453
],
"addresses": [
"0xd8da6bf26964af9d7eed9e03e53415d37aa96045"
]
}Response
{
"data": {
"portfolioV2": {
"appBalances": {
"byApp": {
"edges": [
{
"node": {
"app": {
"category": {
"name": "Lending"
},
"displayName": "Aave V3"
},
"balanceUSD": 8000,
"positionBalances": {}
}
},
{
"node": {
"app": {
"category": {
"name": "Liquidity Pool"
},
"displayName": "Uniswap V3"
},
"balanceUSD": 4345.67,
"positionBalances": {}
}
}
],
"totalCount": 3
},
"totalBalanceUSD": 12345.67
}
}
}
}Endpoint
Quality
Full OpenAPI schema with input/output descriptions, live 402 challenge captured, clear pricing ($0.001125/call in USDC on Base), and example request body provided. Docked slightly because no actual 200 response sample is available and the crawled docs pages returned 404s, so output structure is inferred from schema only.
Warnings
- —The legacy Zapper API at /api shows a deprecation notice directing users to build.zapper.xyz; the x402 endpoints appear to be the current offering.
- —No actual 200 response body was captured; the output schema is inferred from the OpenAPI extensions.
- —Crawled /docs, /pricing, and /README all returned 404; documentation beyond the OpenAPI spec is unavailable.
Citations
- —Enterprise grade onchain data across 60+ chains — token prices, NFTs, portfolios, transactions, and more.https://public.zapper.xyz/x402/defi-balances
- —Price is 1125 base units of USDC (6 decimals) on Base (eip155:8453), equaling $0.001125 per call.https://public.zapper.xyz/x402/defi-balances
- —Endpoint supports both x402 and MPP payment protocols.https://public.zapper.xyz/x402/defi-balances
- —The legacy Zapper API has a deprecation notice directing users to build.zapper.xyz.https://public.zapper.xyz/api