API Documentation
Public REST API for the Verus blockchain explorer. No authentication required for basic access.
https://scan.verus.cx Chains: VRSC, vARRR, vDEX, CHIPS Rate: 100 req/min LLM/curl: curl scan.verus.cx/api/Need higher limits or a personal key?
Log in with your VerusID to generate, regenerate, or revoke API keys. Keys are tied to your VerusID — no email needed.
Access Tiers
Rate limits use a weighted credit system. Light endpoints (cached) cost 1 credit, DB queries cost 2, RPC-backed cost 5.
60 credits/min
- All explorer endpoints (blocks, tx, addresses, identities)
- Market data, oracle prices, volume, baskets
- Network stats, search
- No conversion estimates (RPC-backed)
150 credits/min
- All endpoints including conversion estimates
- Usage tracking + dashboard
- = 150 cached reads, or 75 DB queries, or 30 RPC calls per minute
500 credits/min
- All endpoints + webhook notifications
- Priority queue, higher concurrency
- = 500 cached reads, or 250 DB queries, or 100 RPC calls per minute
Endpoint weights
market/protocol, currencies, baskets, volume, vrsc-pools, oracle/prices, stats, search, health
blocks, tx, address history, identity, conversions, bridge, richlist, stakes, pairs, reserve history
address/balance (RPC), market/estimate, market/best-conversion, /raw endpoints
Market Data & DeFi
Prices, baskets, volume, liquidity — powered by the oracle and conversion database.
/api/market/protocol Protocol summary: TVL, identities, currencies, baskets, chains, VRSC in pools, volume, trades, fees
/api/market/overview Dashboard data with top movers, top baskets, and volume history
/api/market/currencies All priced currencies with price, 24h change, volume, liquidity, sparkline
/api/market/pairs All trading pairs with price, OHLC, volume, liquidity
/api/market/baskets All active baskets sorted by TVL with full reserve breakdown
/api/market/baskets/:id/reserves?days=7 Reserve balance time series (up to 200 data points)
/api/market/baskets/:id/volume?days=30 Daily volume and fees through a specific basket
/api/market/volume?period=daily|weekly|monthly Volume time series for the markets chart (default daily, 30 days)
/api/market/prices/:name/history?days=N Per-currency USD price history (used by the markets currencies chart)
/api/market/vrsc-pools VRSC distribution across all baskets with USD values
/api/market/estimate?from=VRSC&to=tBTC.vETH&amount=100 Estimate conversion output (RPC-backed)
/api/market/best-conversion?from=VRSC&to=tBTC.vETH&amount=100 Compare rates across all eligible baskets
/api/oracle/prices All oracle-priced currencies with confidence and depth
/api/oracle/prices/:id Single currency price with per-basket breakdown
/api/oracle/prices/:id/history?hours=24 Price history snapshots
Explorer
Block, transaction, address, identity, and currency data. Compatible with existing Verus explorer APIs.
/api/blocks/?chain=vrsc&page=1&pageSize=25 Paginated block list
/api/blocks/:height?chain=vrsc Block detail by height
/api/blocks/:height/raw?chain=vrsc Raw block with decoded transactions
/api/tx/:txid?chain=vrsc Transaction detail
/api/tx/:txid/raw?chain=vrsc Raw transaction (RPC-compatible format)
/api/address/:addr?chain=vrsc Address transaction history
/api/address/:addr/balance Address balance
/api/address/:addr/rewards Mining and staking rewards
/api/address/:addr/conversions DeFi conversions with full filter support
/api/identity/ Paginated identity list
/api/identity/stats Identity counts per chain
/api/identity/:nameOrId Identity detail by name or i-address
/api/identity/:nameOrId?height=&key= Identity detail with optional historical state and multimap key filter
/api/identity/:nameOrId/multimap?key=&height= ContentMultimap data with optional key filter and historical state
/api/identity/:nameOrId/changes Audit trail: diffs of what changed at each identity update
/api/identity/:nameOrId/referrals Sub-ID referral tree (3 levels)
/api/currency/:nameOrId Currency definition detail
/api/conversions/ Conversion list with USD values and filters
/api/conversions/filters Available filter options
/api/bridge/recent VRSC-ETH bridge transfers
/api/richlist/top?limit=100 Top VRSC holders
/api/stakes/ Staking transactions
/api/search/?q=query Universal search
Network Stats
Chain sync status, mining stats, charts, and service health.
/api/stats/ Sync height and transaction count
/api/stats/network Hashrate, difficulty, PoS/PoW ratio, block time
/api/stats/charts?metric=difficulty&period=30d Chart data for difficulty, transactions, conversions
/api/stats/pulse Live block feed across all chains
/api/stats/status Service health and indexer state
/api/health Health check
JSON-RPC
Wire-compatible drop-in for api.verus.services.
Same method shapes, same error codes, same JSON-RPC 1.0/2.0 envelope.
Works with verusid-ts-client, Verus-Mobile, verus-desktop, and any client that already speaks verusd.
~90 whitelisted methods, plus extensions only scan can serve.
Endpoints — one per chain
https://rpc.verus.cx/ VRSC (short form — default chain)
https://vrsc.rpc.verus.cx/ VRSC
https://varrr.rpc.verus.cx/ vARRR
https://vdex.rpc.verus.cx/ vDEX
https://chips.rpc.verus.cx/ CHIPS
Alternate paths on scan.verus.cx (same handlers)
https://scan.verus.cx/ VRSC (drop-in for api.verus.services — same wire format, just a hostname change)
/api/ws WebSocket — real-time block notifications across all chains
curl -X POST https://rpc.verus.cx/ \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"1.0","id":1,"method":"getblockcount","params":[]}'
→ {"id":1,"result":4068463} Content-Type: both application/json and text/plain accepted. Batch up to 5 requests per call.
All methods (87)
3 served from scan's Postgres index · 84 proxied to verusd.
coinsupply daemonconvertpassphrase daemoncreatemultisig daemoncreaterawtransaction daemondecoderawtransaction daemondecodescript daemondecryptdata daemondefinecurrency daemonestimateconversion daemonestimatefee daemonestimatepriority daemongetaddressbalance daemongetaddressdeltas daemongetaddressmempool daemongetaddresstxids daemongetaddressutxos daemongetbestblockhash DBgetbestproofroot daemongetblock daemongetblockchaininfo daemongetblockcount DBgetblockdeltas daemongetblockhash DBgetblockhashes daemongetblockheader daemongetblocksubsidy daemongetchaintips daemongetchaintxstats daemongetcurrency daemongetcurrencybalance daemongetcurrencyconverters daemongetcurrencystate daemongetcurrencytrust daemongetdeprecationinfo daemongetdifficulty daemongetexports daemongetidentitieswithaddress daemongetidentitieswithrecovery daemongetidentitieswithrevocation daemongetidentity daemongetidentitycontent daemongetidentitytrust daemongetimports daemongetinfo daemongetinitialcurrencystate daemongetlastimportfrom daemongetlaunchinfo daemongetlocalsolps daemongetmempoolinfo daemongetminingdistribution daemongetmininginfo daemongetnetworkhashps daemongetnetworkinfo daemongetnetworksolps daemongetnotarizationdata daemongetnotarizationproofs daemongetoffers daemongetpendingtransfers daemongetrawmempool daemongetrawtransaction daemongetreservedeposits daemongetsaplingtree daemongetsnapshot daemongetspentinfo daemongettxout daemongettxoutproof daemongettxoutsetinfo daemongetvdxfid daemonhashdata daemonhelp daemonlistcurrencies daemonlistidentities daemonlistopenoffers daemonrecoveridentity daemonregisteridentity daemonregisternamecommitment daemonrevokeidentity daemonsendcurrency daemonsendrawtransaction daemonsetidentitytimelock daemonupdateidentity daemonvalidateaddress daemonverifychain daemonverifyhash daemonverifymessage daemonverifysignature daemonverifytxoutproof daemonVerus Scan only (6)
Extension methods only scan serves. A stock verusd doesn't have these.
| Method |
|---|
getbalanceall |
getbridgetransfers |
getidentityhistory |
getoptimalroute |
getsubidentities |
gettxhistoryrich |
USD Pricing Methodology
How USD values are derived for all conversions, prices, and volume data.
Price Derivation (tiered, in priority order)
Key Design Decisions
priceinreserve is used instead of raw reserve ratios — it correctly handles unequal basket weights (e.g. Floralis has VRSC at 20%, scrvUSD at 5%).
Per-trade stamping — each conversion is stamped with USD at the exact block height, not hourly or daily averages.
UTC day boundaries ��� all volume, trade counts, and fees use midnight-to-midnight UTC for CMC/CoinGecko compatibility.
Validation — every price is cross-checked: if from_usd and to_usd disagree by more than 10%, the stablecoin-derived side is preferred.
Oracle accuracy — reserve-derived pricing gives ~0.3% error vs trade execution pricing (~2%+ error from AMM slippage).
Live vs Historical Stamping
Live (2026-04-24 onward) — conversions are stamped at index time using the on-chain pricing oracle. Both sides priced independently per currency; spread between sides is near-zero by construction.
Historical (before 2026-04-24) — stamped via a one-time backfill using chain-internal basket math, since the oracle did not yet exist. The tiered methodology above applies, with these additional rules:
- For convs where one side is VRSC or a stablecoin (a deep external anchor), that side's USD is treated as truth.
- When a basket itself appears as a currency (preconvert / redeem), the basket's NAV is computed from its at-target reserves.
- When chain math gives a per-unit price outside real-world bounds (e.g. VRSC>$8, tBTC>$150K), the trustworthy anchor side is mirrored to both columns.
- If the chain executed at >50% off-market and no anchor exists, the conv is marked refunded if no delivery was found at the destination address.
Best-effort caveat — historical stamps reflect the chain's view of value at each block. They can diverge from external market prices during off-target basket periods. Aggregate accuracy is high (verified per-currency against Binance/external sources within ±5% for tBTC/vETH/MKR); individual conversion stamps may vary on thin-liquidity baskets.
Coverage
2.27M+ conversions stamped with USD values across 4 chains. 100% coverage of completed conversions.
Oracle prices update every 60 seconds from on-chain basket reserves.
Reserve state snapshots every 5 minutes for historical trend analysis.