GET
/v1/fnd/dex/wallet/:chain/:addressWallet portfolio
Native-coin and ERC-20 token holdings for one wallet on one EVM chain. The native row only appears when the wallet has a non-zero native balance.
- Auth
X-API-Keyheader- Format
- JSON
- Rate limits
- Per-key, see limits
Example
request · shell
curl -H "X-API-Key: $KEY" \
"https://api.sifting.io/v1/fnd/dex/wallet/eth/0x742d35cc6634c0532925a3b844bc9e7595f0beb1"200OKapplication/json
{ "chain": "eth", "address": "0x742d35cc6634c0532925a3b844bc9e7595f0beb1", "tokens": [ { "symbol": "ETH", "name": "Ether", "decimals": 18, "logo": "https://assets.sifting.io/crypto/logo/eth.png", "raw_balance": "2345600000000000000", "balance": "2.3456", "native": true }, { "contract_address": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", "symbol": "USDC", "name": "USD Coin", "decimals": 6, "logo": "https://assets.sifting.io/crypto/logo/usdc.png", "raw_balance": "5000000", "balance": "5" }, { "contract_address": "0x6b175474e89094c44da98b954eedeac495271d0f", "symbol": "DAI", "name": "Dai Stablecoin", "decimals": 18, "logo": "https://assets.sifting.io/crypto/logo/dai.png", "raw_balance": "1250000000000000000000", "balance": "1250" } ], "count": 3, "updated_at": 1746230400}Loading runner…
First load onlyParameters
ParameterDescription
Parameter
chainrequiredenum · path- eth | base | arbitrum | bsc | polygon.
addressrequiredstring · path- EVM wallet address. Must be 0x followed by 40 hex characters. Case-insensitive.
Response fields
FieldDescription
Field
chainstring- Echoed chain segment, lowercase.
addressstring- Echoed wallet address, lowercase.
tokens[]array- One row per non-zero holding; the native coin appears first when present.
tokens[].contract_addressstring- ERC-20 contract address; omitted for the native row.
tokens[].symbolstring- Token symbol, e.g. USDC, WETH. Rows with no resolvable symbol are dropped.
tokens[].namestring- Full token name.
tokens[].decimalsinteger- Decimal places for converting raw_balance to balance.
tokens[].logostring- Token logo URL when known; may be empty.
tokens[].raw_balancestring- On-chain integer balance as a decimal string, unscaled. Use big-integer math.
tokens[].balancestring- Human-readable balance: raw_balance / 10^decimals, trailing zeros trimmed.
tokens[].nativeboolean- true for the chain's native gas coin; omitted for ERC-20 rows.
countinteger- Number of token rows.
updated_atinteger- Unix epoch seconds (UTC) when the snapshot was assembled.
Reference
v1 caveatsDescription
v1 caveats
- Precision
- raw_balance and balance are strings to preserve precision. Don't parse as floats; use a big-integer / decimal library for math.
- No USD valuation
- balance is denominated in the token's own units. USD valuation is a planned follow-up that bolts onto the existing rows.
- One chain per call
- A multi-chain portfolio means one call per chain in eth | base | arbitrum | bsc | polygon.
- Spam tokens
- Rows with no resolvable metadata are dropped. No spam filter is applied beyond that.
- No NFTs
- ERC-721 / ERC-1155 are not included.