Docs / Data
Solana
This page lists what Farbeam reads on Solana. Live values are on the Solana data page. The API returns the same facts from Get a chain.
| Property | Value |
|---|---|
| API chain id | solana |
| Chain id | None (not an EVM chain) |
| Family | svm |
| Native asset | SOL |
| Poll wait | 30 s after each finished poll, 60 s after a failure |
large_transfer_index | true |
native_transfers | true |
sampled | true |
| Explorer used in links | solscan.io |
#What is indexed
Two reads feed the Solana rows. Both look for balance changes of the tokens below and native SOL, at $100,000 or more. All rows carry sampled: true. This is not a complete index.
| Read | What it does |
|---|---|
| Block sample | One finalized block per poll |
| Exchange watch list | Every 120 s, recent transactions of 7 public exchange wallets. The list is in watch_list from Status. |
#Curated tokens
| Symbol | Address | Decimals |
|---|---|---|
| USDC | EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v | 6 |
| USDT | Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB | 6 |
| wSOL | So11111111111111111111111111111111111111112 | 9 |
| JUP | JUPyiwrYJFskUPiHa7hkeR8VUtAeFoSYbKedZNsDvCN | 6 |
| BONK | DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263 | 5 |
| WIF | EKpQGSJtjMFqKZ9KQanSqYXRcF8fBopzLHYxdM65zcjm | 6 |
| JTO | jtojtomepa8beP8AuQc6eXt5FriJwfFMwQx2v2f9mCL | 9 |
| PYTH | HZ1JovNiVvGrGNiiYvEozEVgZ58xaU3RKwX8eACQBCt3 | 6 |
| RAY | 4k3Dyjzvzp8eMZWUXbBCjEvwSkkk59S5iCNLY3QrkX6R | 6 |
| JitoSOL | J1toso1uCk3RLmjorhTtrVwY9HJ7X8V9yYac6Y7kGCPn | 9 |
| mSOL | mSoLzYCxHdYgdzU16g5QSh3i5K3z3KZK7ytfqcJm7So | 9 |
The curated tokens page explains the list and its prices.
#Sources
| Purpose | Source |
|---|---|
| Lookups | Helius first, when configured, then https://solana-rpc.publicnode.com |
| Poller | https://solana-rpc.publicnode.com first, then Helius when configured |
| Exchange watch list | https://solana-rpc.publicnode.com only |
| DEX market data | DexScreener, id solana |
| Contract checks | GoPlus, Solana token security endpoint |
| Extra checks | RugCheck |
| Trending pools | GeckoTerminal, id solana |
| TVL and stablecoin matching | DefiLlama, name Solana |
#Measured values
These figures are a snapshot from the API at 2026-11-04T19:33:40.040Z UTC. They are examples, and they change on every poll. They are not targets.
| Field | Value |
|---|---|
status | ok |
head | 465420519 |
lag_seconds | 2.3 |
rpc_latency_ms | 379 |
tx_count of the last block read | 621 |
tps | 2228 |
priority_fee_microlamports | 0 |
| Seconds between reads, from the recent blocks list | 31.8 |
| Slots between reads | 148.0 |
#Quirks
- Sampled. About 1 slot in 148 was read in the measurement above. Read sampling first. A wallet alert on Solana will miss nearly everything, except partial coverage of the 7 watched exchange wallets.
- No chain id.
chain_idisnull, andfamilyissvm. In Wallet overview,familyreadssolana. Handle both spellings. - Balance changes, not logs. The poller compares pre and post balances.
fromis the owner with the largest decrease, andtois the owner with the largest increase.amountis the smaller of the two, so a transaction with many parties reduces to one pair. - SOL and wSOL can double up. One transaction can produce both rows. Group by
txbefore you sum. - Different fee fields.
base_fee_gwei,gas_price_gweiandgas_used_ratioarenull.priority_fee_microlamportsis the 75th percentile ofgetRecentPrioritizationFees, andtpscomes fromgetRecentPerformanceSamples. - Addresses are case sensitive. They are stored as base58, and they are not lowercased. Beamline string comparison still ignores case.
- **Holder checks can read
unknown.**getTokenLargestAccountsfails on some large tokens at the RPC, so thetop10check readsunknown. This happened for USDC and wSOL on 2026-11-04 UTC. - Daily budget for the keyed RPC. The service limits its own Helius use per UTC day, and background work may use half.
keyed_rpc_daily_limit_reachedin Status readstruewhen the budget is spent. Lookups then use the public endpoint. - Helius and fallback. With Helius, wallet token lists use
getAssetsByOwner(token_source: helius-das). On fallback they usegetTokenAccountsByOwner, which reads the classic SPL Token program only.
#Try it
curl -s "https://farbeamlabs.com/api/v1/chains/solana"const res = await fetch("https://farbeamlabs.com/api/v1/chains/solana");
const { data } = await res.json();
console.log(data.status.status, data.status.head, data.tokens.length);import requests
data = requests.get("https://farbeamlabs.com/api/v1/chains/solana", timeout=30).json()["data"]
print(data["status"]["status"], data["status"]["head"], len(data["tokens"]))A rule for this chain, from the Beamline examples style: chain == "solana" and token == "USDC" and usd >= 500k.