curl --request GET \
--url https://pro-api.coingecko.com/api/v3/onchain/wallets/{address}/balances \
--header 'x-cg-pro-api-key: <api-key>'{
"data": {
"id": "0x9642b23ed1e01df1092b92641051881a322f5d4e",
"type": "wallet_balance",
"attributes": {
"wallet_address": "0x9642b23ed1e01df1092b92641051881a322f5d4e",
"total_value_usd": "91333695.8924553249294795652",
"total_holdings": 3235,
"networks": [
{
"network": "eth",
"value_usd": "91333647.2139247191042473531",
"holdings": 2784,
"last_updated_at": "2026-09-09T04:53:53Z"
},
{
"network": "base",
"value_usd": "48.6785306058252322121",
"holdings": 451,
"last_updated_at": "2026-09-09T04:54:00Z"
}
],
"balances": [
{
"network": "eth",
"address": "0xae7ab96520de3a18e5e111b5eaab095312d7fe84",
"token_type": "erc20",
"name": "Liquid staked Ether 2.0",
"symbol": "stETH",
"decimals": 18,
"coingecko_coin_id": "staked-ether",
"balance_raw": "1285426654835126578249",
"balance": "1285.426654835126578249",
"price_usd": "2505.0197550041",
"value_usd": "3220019.16397083",
"h24_price_change_percentage": "1.1092026358",
"total_reserve_in_usd": "76309888.5752643"
},
{
"network": "base",
"address": "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",
"token_type": "native",
"name": "Ether",
"symbol": "ETH",
"decimals": 18,
"coingecko_coin_id": "ethereum",
"balance_raw": "5689474631933105",
"balance": "0.005689474631933105",
"price_usd": "2509.94",
"value_usd": "14.2802399576741775637",
"h24_price_change_percentage": "1.1788611331",
"total_reserve_in_usd": "278512639.26086519127010524563602976339460900489983579581997256928854127324623998556078866976287286661445830154567340658840423188339231363233349708668987943412959855507040548920851997937663037191656718770585834579091087234485520736930186246070127797108954047881409466115545016797903075072"
}
]
}
}
}Token Balances by Wallet Address
To query the token balances of a wallet address across networks
curl --request GET \
--url https://pro-api.coingecko.com/api/v3/onchain/wallets/{address}/balances \
--header 'x-cg-pro-api-key: <api-key>'{
"data": {
"id": "0x9642b23ed1e01df1092b92641051881a322f5d4e",
"type": "wallet_balance",
"attributes": {
"wallet_address": "0x9642b23ed1e01df1092b92641051881a322f5d4e",
"total_value_usd": "91333695.8924553249294795652",
"total_holdings": 3235,
"networks": [
{
"network": "eth",
"value_usd": "91333647.2139247191042473531",
"holdings": 2784,
"last_updated_at": "2026-09-09T04:53:53Z"
},
{
"network": "base",
"value_usd": "48.6785306058252322121",
"holdings": 451,
"last_updated_at": "2026-09-09T04:54:00Z"
}
],
"balances": [
{
"network": "eth",
"address": "0xae7ab96520de3a18e5e111b5eaab095312d7fe84",
"token_type": "erc20",
"name": "Liquid staked Ether 2.0",
"symbol": "stETH",
"decimals": 18,
"coingecko_coin_id": "staked-ether",
"balance_raw": "1285426654835126578249",
"balance": "1285.426654835126578249",
"price_usd": "2505.0197550041",
"value_usd": "3220019.16397083",
"h24_price_change_percentage": "1.1092026358",
"total_reserve_in_usd": "76309888.5752643"
},
{
"network": "base",
"address": "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",
"token_type": "native",
"name": "Ether",
"symbol": "ETH",
"decimals": 18,
"coingecko_coin_id": "ethereum",
"balance_raw": "5689474631933105",
"balance": "0.005689474631933105",
"price_usd": "2509.94",
"value_usd": "14.2802399576741775637",
"h24_price_change_percentage": "1.1788611331",
"total_reserve_in_usd": "278512639.26086519127010524563602976339460900489983579581997256928854127324623998556078866976287286661445830154567340658840423188339231363233349708668987943412959855507040548920851997937663037191656718770585834579091087234485520736930186246070127797108954047881409466115545016797903075072"
}
]
}
}
}Notes
-
total_value_usdandtotal_holdingsare scoped to the request, not to the wallet’s whole portfolio:- Only the networks named in
networksare counted. token_type,value_usd_minandreserve_in_usd_minfilters are applied first.
- Only the networks named in
-
price_usdandvalue_usdcome backnullrather than omitted when a token has no price. -
balanceis full precision and never rounded, but comes backnullwhen the token cannot be resolved.balance_rawis always present, so fall back to it and convert withdecimals:balance_raw / 10^decimals. -
Filtering by
token_typereturns thesebalances.token_typevalues:token_typeparambalances.token_typefieldnativenativenon_nativeerc20,splomitted all of the above
Supported networks
Supported networks
| Chain | Network id |
|---|---|
| Ethereum | eth |
| Base | base |
| BNB Chain | bsc |
| Polygon | polygon_pos |
| Arbitrum | arbitrum |
| Optimism | optimism |
| Avalanche | avax |
| Stable | stable |
| Robinhood | robinhood |
400.- For example,
networks=eth,base,arbitrumis valid because all three are EVM. - Networks from different VM families must be queried in separate calls.
Authorizations
Learn how to set up your API key
Path Parameters
Wallet address.
Query Parameters
Query balances by networks, comma-separated if more than one. *refers to supported networks.
Sort the holdings by field.
Default: value_usd_desc
value_usd_desc, value_usd_asc Filter holdings by token type. Omit to return both.
native, non_native Minimum holding value in USD.
Minimum total reserve in USD of the holding's token.
Page through results. Default value: 1
Total results per page. Default value: 50 Valid values: 1...100
Response
Wallet token balances data
Hide child attributes
Hide child attributes
Wallet address
Response type
Hide child attributes
Hide child attributes
Wallet address queried
Total value of matching holdings in USD, across the requested networks only
Number of matching holdings across the requested networks only
Value and holding count per network, listing only networks holding a matching balance
Hide child attributes
Hide child attributes
Network ID
Total value of matching holdings on this network in USD
Number of matching holdings on this network
Last updated timestamp
Token holdings, one entry per token
Hide child attributes
Hide child attributes
Network ID
Token contract address
Token type, such as native, erc20 or spl
Token name
Token symbol
Token decimals
CoinGecko coin ID
Token balance in the smallest unit, before decimals are applied
Token balance at full precision
Token price in USD
Value of the holding in USD
24hr price change percentage
Total reserve in USD across all pools of the token
Was this page helpful?

