Accounts & Balances
Chain coverage:
getBalanceandgetTokenBalanceare supported on EVM chains, Solana, Bitcoin (native only), Starknet (native STRK and Cairo ERC-20s), and the Cosmos SDK chains. On Cosmos chains, pass a base denom (e.g.uatom) or an IBC hash (ibc/...) as thetokenparameter. For Cosmos delegation, reward, and validator data see the Cosmos endpoints.
getBalance
Returns the native token balance (ETH, MATIC, SOL, etc.) for a wallet address. Returns the human-readable `balance`, the on-chain integer `balanceRaw` (in wei/lamports), and `decimals`.
curl -X POST https://your-endpoint.simplystaking.xyz/v1 \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"method": "getBalance",
"params": {
"chain": "ethereum",
"address": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
"blockHeight": 19834521
},
"id": 1
}'import { Spectrum } from '@spectrumnodes/sdk';
const spectrum = new Spectrum({ api: 'https://your-endpoint.simplystaking.xyz/YOUR_API_KEY/' });
const result = await spectrum.tokens.getBalance('ethereum', '0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045');
console.log(result);{
"jsonrpc": "2.0",
"result": {
"data": {
"chain": "0x1",
"address": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
"blockHeight": 19834521,
"token": "ETH",
"balance": "32.126799033316011",
"balanceRaw": "32126799033316011000",
"decimals": 18
}
},
"id": 1
}Parameters
| Name | Required | Description |
|---|---|---|
| chain | yes | Network slug |
| address | yes | Wallet address e.g. 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045 |
| blockHeight | no | Historical EVM block number (archive nodes only) e.g. 19834521 |
Response Fields
| Field | Type |
|---|---|
data | object |
chain | string |
address | string |
blockHeight | integer |
token | string |
balance | string |
balanceRaw | string |
decimals | integer |
Supported Networks
getTokenBalance
Returns the balance of a specific ERC-20 or SPL token. Pass the token contract (or mint) address. Response includes the decimal-adjusted `balance`, the on-chain integer `balanceRaw`, and the token `decimals` so integrators can do their own arithmetic without a separate metadata call.
curl -X POST https://your-endpoint.simplystaking.xyz/v1 \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"method": "getTokenBalance",
"params": {
"chain": "ethereum",
"address": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
"token": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
"blockHeight": 19834521
},
"id": 1
}'import { Spectrum } from '@spectrumnodes/sdk';
const spectrum = new Spectrum({ api: 'https://your-endpoint.simplystaking.xyz/YOUR_API_KEY/' });
const result = await spectrum.tokens.getTokenBalance('ethereum', '0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045', '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48');
console.log(result);{
"jsonrpc": "2.0",
"result": {
"data": {
"chain": "0x1",
"address": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
"token": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
"blockHeight": 19834521,
"balance": "1500.25",
"balanceRaw": "1500250000",
"decimals": 6
}
},
"id": 1
}Parameters
| Name | Required | Description |
|---|---|---|
| chain | yes | Network slug |
| address | yes | Wallet address e.g. 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045 |
| token | yes | Token contract address e.g. 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48 |
| blockHeight | no | Historical EVM block number (archive nodes only) e.g. 19834521 |
Response Fields
| Field | Type |
|---|---|
data | object |
chain | string |
address | string |
token | string |
blockHeight | integer |
balance | string |
balanceRaw | string |
decimals | integer |