Solanatracker API
Solana token data, PnL, risk scores, 1-second OHLCV, wallet analytics, and self-hosted swap execution via Raptor
- Skill ID
- agiprolabs/claude-trading-skills/solanatracker-api
- Publisher
- agiprolabs
- Repository
- claude-trading-skills
- Installs
- 0
- Files
- 6
- Synced
- Sep 23, 2026
Open any RiverX project, open the Skills panel in the chat, and search for this identifier. The files are fetched from the source repository at install time.
agiprolabs/claude-trading-skills/solanatracker-apiInstalls these files- SKILL.md
- references/data_api_endpoints.md
- references/raptor_setup.md
- references/risk_and_pnl.md
- scripts/token_analysis.py
- scripts/wallet_pnl.py
What this skill tells the agent
SolanaTracker API — Token Data, Analytics & Raptor DEX Aggregator
SolanaTracker provides comprehensive Solana token data with unique features: 1-second OHLCV resolution, wallet PnL tracking, risk scoring, bundler/sniper detection, and a self-hosted DEX aggregator (Raptor) supporting 25+ DEXes with no rate limits.
Quick Start
import httpx
API_KEY = os.getenv("SOLANATRACKER_API_KEY", "")
BASE = "https://data.solanatracker.io"
HEADERS = {"x-api-key": API_KEY}
# Token info with risk score, pools, holders
resp = httpx.get(f"{BASE}/tokens/{mint}", headers=HEADERS)
token = resp.json()
print(f"Risk: {token['risk']['score']}/10, Pools: {len(token['pools'])}")
# Wallet PnL
resp = httpx.get(f"{BASE}/pnl/{wallet}", headers=HEADERS)
pnl = resp.json()
print(f"Win rate: {pnl['summary']['winPercentage']}%")Authentication & Pricing
- API Key: From your SolanaTracker dashboard, passed as
x-api-keyheader - Plans: Starting ~€50/mo (200K requests), €200/mo (higher volume), Enterprise custom
- Raptor: Free during public beta (self-hosted, no rate limits)
Core Data Endpoints
Token Data
# Full token info (metadata, pools, risk, events, holders summary)
GET /tokens/{tokenAddress}
# New tokens (paginated, pages 1-10)
GET /tokens/latest?page=1
# Trending by volume (default: past hour)
GET /tokens/trending
GET /tokens/trending/{timeframe} # 5m, 15m, 30m, 1h, 4h, 12h, 24h
# Top performers
GET /tokens/top
# Graduated from bonding curves (pump.fun → Raydium)
GET /tokens/graduated
GET /tokens/graduating
# Multiple tokens in one request
GET /tokens/multi?tokens=ADDR1,ADDR2
# Deployer's tokens
GET /tokens/deployer/{deployerAddress}
# Token by pool address
GET /tokens/pool/{poolAddress}
# All-time high
GET /tokens/{token}/athPrice Data
# Current price with liquidity and market cap
GET /price?token={address}
# Price with change percentages
GET /price?token={address}&priceChanges=true
# Historic prices (3d, 5d, 7d, 14d, 30d snapshots)
GET /price/history?token={address}
# Multiple token prices
GET /price/multi?tokens=ADDR1,ADDR2OHLCV Charts (1-second resolution)
# Candle data — supports 1s resolution (unique to SolanaTracker)
GET /chart/{token}?type=1s&time_from=UNIX&time_to=UNIX
# Timeframes: 1s, 5s, 15s, 1m, 3m, 5m, 15m, 30m, 1h, 2h, 4h, 6h, 8h, 12h, 1d, 3d, 1w, 1mn
# Optional: currency=usd|sol|eur, removeOutliers=true, marketCap=true
# Specialized charts
GET /chart/{token}/bundlers # Bundler activity overlay
GET /chart/{token}/holders # Holder count overlay
GET /chart/{token}/insiders # Insider activity overlay
GET /chart/{token}/snipers # Sniper activity overlayWallet PnL
# Full wallet PnL across all tokens
GET /pnl/{wallet}
# Token-specific PnL
GET /pnl/{wallet}/{token}
# First buyers with PnL
GET /first-buyers/{token}
# Optional params: showHistoricPnL=true (1d/7d/30d), holdingCheck=truePnL response summary fields: realized, unrealized, total, totalInvested, averageBuyAmount, totalWins, totalLosses, winPercentage, lossPercentage
Wallet Data
# All tokens held by wallet
GET /wallet/{owner}
# Paginated wallet tokens
GET /wallet/{owner}/paginated
# Trade history
GET /wallet/{owner}/trades
# Portfolio chart over time
GET /wallet/{owner}/chartHolder Analysis
# Paginated holder list
GET /tokens/{token}/holders?page=1
# Top 100 holders
GET /tokens/{token}/holders/top
# Top 20 holders (lighter)
GET /tokens/{token}/holders/top20
# Bundler detection
GET /tokens/{token}/bundlersTop Traders
# Global top traders
GET /top-traders/all
GET /top-traders/all/paginated?page=1
# Token-specific top traders
GET /top-traders/{token}
# Optional: expandPnl=true, sortBy=total|winPercentageRisk Assessment
Risk is included in the /tokens/{token} response:
{
"risk": {
"score": 7, // 1-10 (10 = safest)
"rugged": false,
"jupiterVerified": true,
"risks": [
{ "name": "Top 10 holders own 45%", "level": "warn" },
{ "name": "Freeze authority enabled", "level": "danger" }
]
}
}Risk factors: sniper/insider concentration, developer holdings, bundler activity, top 10 holder %, mint/freeze authority, social presence, metadata completeness, liquidity.
Search (30+ filters)
GET /search?query=BONK&minLiquidity=10000&minRiskScore=5&market=raydium&sortBy=volume&limit=50
# Key filters: query, symbol, minLiquidity, maxLiquidity, minMarketCap, maxMarketCap,
# minVolume, maxVolume, hasImage, hasSocials, minHolders, maxHolders, minRiskScore,
# freezeAuthority, mintAuthority, deployer, market, sortBy, sortOrder, limit (max 500), pageRaptor — Self-Hosted DEX Aggregator
See the dedicated `raptor-dex` skill for complete Raptor documentation including setup, API reference, deployment guides, WebSocket streaming, and execution scripts.
Raptor is SolanaTracker's self-hosted DEX aggregator: 25+ DEXes, no rate limits, no API key, Yellowstone Jet TPU submission. GitHub | Docs
DataStream WebSocket
Real-time streaming via WebSocket for 30+ event types:
import websockets, json
async def stream():
uri = f"wss://datastream.solanatracker.io/{DATASTREAM_KEY}"
async with websockets.connect(uri) as ws:
# Subscribe to token trades
await ws.send(json.dumps({"type": "join", "room": f"transaction:{token_addr}"}))
# Also: price:{token}, holders:{token}, latest_tokens, graduated, etc.
async for msg in ws:
data = json.loads(msg)
if data.get("type") != "joined":
print(data)Key channels: transaction:{token}, price:{token}, holders:{token}, latest_tokens, graduated, graduating, bundlers:{token}, insiders:{token}, snipers:{token}, wallet_transaction:{wallet}
When to Use SolanaTracker vs Alternatives
| Need | Use |
|---|---|
| 1-second OHLCV candles | SolanaTracker |
| Wallet PnL tracking | SolanaTracker |
| Token risk scoring | SolanaTracker |
| Bundler/sniper detection | SolanaTracker |
| Self-hosted swap execution | Raptor |
| Free no-auth quick lookup | DexScreener |
| Real-time gRPC streaming | Yellowstone |
| Parsed transaction history | Helius |
| Cross-chain data | DexScreener or CoinGecko |
Files
References
references/data_api_endpoints.md— Complete Data API endpoint reference with parameters and response schemasreferences/raptor_setup.md— Raptor quick-start reference (full docs in theraptor-dexskill)references/risk_and_pnl.md— Risk scoring methodology and PnL calculation details- docs.solanatracker.io/llms-full.txt — Complete SolanaTracker documentation (13K+ lines, LLM-optimized) covering Data API, Swap API, Datastream WebSocket, Solana RPC, Yellowstone gRPC, SDK libraries, and all endpoint schemas. Fetch on demand rather than embedding.
Scripts
scripts/token_analysis.py— Fetch token data, risk score, holders, and tradesscripts/wallet_pnl.py— Wallet PnL analysis with win rate and trade breakdown
More from agiprolabs
Use this skill in a project
Open any RiverX project, search the Skills panel for agiprolabs/claude-trading-skills/solanatracker-api, and install it in one click.
