The average Pump.fun token bonding rate is 1–3%. The top tracked deployers average 15–40%. That gap — between a random wallet and a serial deployer with a proven track record — is the entire edge the Deployer Hunter API surfaces.
This post covers the full Deployer Hunter API: what data it exposes, every endpoint, how alerts work, and what you can build with it.
What problem this solves
When a new Pump.fun token launches, the only public information at deploy time is the token mint and the deployer wallet. Everything else — momentum, community, whether it bonds — comes later.
But the deployer wallet has a history. If it's launched 40 tokens before and 18 of them bonded, that's a 45% bonding rate — fifteen times the baseline. That history is knowable at deploy time; most traders just don't have easy access to it.
The Deployer Hunter API makes that history queryable in milliseconds, and delivers real-time alerts the moment a tracked deployer fires a new launch.
The data model
Every deployer in the system gets a tier based on their historical bonding rate:
| Tier | Bonding rate | What it means |
|---|
| Elite | ~30%+ | Consistent top performers; alerts on these are highest-signal |
| Good | ~15–30% | Solid track record, above-baseline |
| Moderate | ~5–15% | Better than average, worth watching |
| Rising | New but showing promise | Recent deploys trending positive |
| Cold | Declining or inactive | Historical performance deteriorating |
Tiers update as new deploys complete or fail. A deployer who starts cold can graduate to elite over time.
Beyond the tier, each profile includes: total tokens deployed, total bonded, bonding rate, recent outcomes (last-N success/fail bitmap), last deploy timestamp, and a trajectory — whether performance is improving, declining, or stable over time. The tier thresholds come straight from our study of 561k deployer wallets.
REST endpoints
All endpoints require Authorization: Bearer msk_.... Get a free key at /pricing. If you run this API in production, you can wire its health into your own monitoring — our guide on the public status endpoint and uptime monitoring with UptimeRobot or StatusCake shows how.
Global stats
GET /api/v1/deployer-hunter/stats
Returns: total deployers tracked, count per tier, total alerts generated, and (new in v1.6) avg_mc_at_alert_usd_30d per tier — so you can see whether elite deployers are launching at micro-cap or already-pumped prices.
Useful for calibration: if elite deployers have been alerting at an average MC of $45K in the last 30 days, alerts that land at $200K are already late by comparison.
Leaderboard
GET /api/v1/deployer-hunter/leaderboard?tier=elite&sort=bonding_rate&limit=50
Top deployers ranked by your chosen metric. Parameters:
| Param | Values |
|---|
tier | elite, good, moderate, rising, cold |
sort | bonding_rate, recent_bond_rate, total_bonded, last_deploy_at |
limit | 1–100 |
offset | for pagination |
Use sort=recent_bond_rate to find deployers who are on a hot streak recently, regardless of their all-time record. Use sort=last_deploy_at to identify deployers who just became active again after a gap.
Deployer profile
GET /api/v1/deployer-hunter/{wallet}
Full profile for any wallet. If the wallet hasn't deployed any indexed tokens, returns { is_deployer: false, deployer: null, pump_tokens: [] } — branch on is_deployer rather than checking HTTP status (always 200).
Response shape:
{
"is_deployer": true,
"deployer": {
"wallet_address": "...",
"tier": "elite",
"total_tokens_deployed": 47,
"total_bonded": 16,
"bonding_rate": 0.34,
"recent_outcomes": [1,1,0,1,1,0,1,1,1,0],
"recent_bond_rate": 0.70,
"last_deploy_at": "2026-05-28T14:22:00Z"
},
"pump_tokens": [...]
}
recent_outcomes is a bitmap of the last N deploys (1 = bonded, 0 = failed), newest first. A deployer with [1,1,1,1,1,0,0,0,0,0] is currently on fire; [0,0,0,0,0,1,1,1,1,1] peaked earlier and has gone cold.
Bonded tokens by deployer
GET /api/v1/deployer-hunter/{wallet}/tokens?limit=20&offset=0
Paginated list of tokens this deployer has successfully bonded, with peak MC and bond timing per token. Good for auditing the quality of a deployer's wins — a 45% bonding rate is less impressive if all the bonds were at $30K MC with no run.
Deployer trajectory
GET /api/v1/deployer-hunter/{wallet}/trajectory
The skill curve over time. Returns:
- Current streak (consecutive bonds or fails)
- Longest bond/fail streaks ever
- Rolling 10-token bond rate windows (how has rate changed over the last 10, 20, 30 tokens)
- Improvement trend:
improving, declining, or stable
- Avg days between deploys
- Avg recovery tokens (how many failures before the next bond)
A deployer with an improving trend and a 6-token current bond streak is more interesting than one with a better all-time rate that's been failing for the last 15 launches.
Real-time alerts
GET /api/v1/deployer-hunter/alerts?tier=elite,good&min_kol_buys=2&limit=50
Alerts fire when a tracked deployer launches a new token. Each alert includes:
- Token mint, name, symbol
- Deployer wallet, tier, bonding rate
market_cap_at_alert — MC when the alert was generated
- KOL cross-reference — which of the 2,000+ tracked KOL wallets bought the token, how much SOL, and when
The min_kol_buys=2 filter is particularly useful: it returns only alerts where at least 2 KOLs have already bought in, combining the deployer signal with early smart-money confirmation.
Filter parameters:
| Param | Values |
|---|
tier | elite, good, moderate, rising, cold (comma-separated) |
min_kol_buys | integer — require N KOL buys on the token |
alert_type | new_launch, bond |
priority | high, medium, low |
before | ISO 8601 timestamp cursor for pagination |
since | ISO 8601 for incremental polling |
Alert performance stats
GET /api/v1/deployer-hunter/alert-stats?period=7d
Aggregate performance: bond rate on alerts, total fired, and multiplier hit rates (2×, 5×, 10×, 50× from MC at alert time). Useful for backtesting the value of different tier combinations over rolling windows.
Best tokens from alerts
GET /api/v1/deployer-hunter/best-tokens?period=30d&limit=20
Best-performing tokens (by MC multiplier from alert price) across the last N days. Useful for demonstrating ROI of the deployer signal to yourself or your users.
Recent bonds
GET /api/v1/deployer-hunter/recent-bonds?tier=elite&peak_mc_min=500000&since=2026-05-28T00:00:00Z
Recently bonded tokens with time-to-bond, MC at alert, and deployer tier. The since cursor enables incremental polling without re-processing old data. peak_mc_min filters out micro-bonds that barely graduated.
Push delivery: WebSocket and webhooks
Polling the alerts endpoint works, but adds latency. For trading workflows where sub-second matters, push delivery is the right path.
WebSocket (real-time):
// 1. Get stream token
const { token, ws_url } = await fetch('/api/v1/stream/token', {
headers: { Authorization: `Bearer ${API_KEY}` }
}).then(r => r.json());
// 2. Connect and subscribe
const ws = new WebSocket(ws_url);
ws.onopen = () => ws.send(JSON.stringify({
type: 'subscribe',
channels: ['deployer:alerts']
}));
ws.onmessage = ({ data }) => {
const event = JSON.parse(data);
if (event.channel === 'deployer:alerts') {
const { deployer, token, kol_buys } = event.data;
console.log(`${deployer.tier} deployer launched ${token.symbol} — ${kol_buys} KOL buys`);
}
};
Webhooks (PRO/ULTRA):
Register an endpoint and receive deployer:alert events as HMAC-signed POST requests within ~1s of the alert firing. Configure at /pricing or via the webhooks API:
POST /api/v1/webhooks
Content-Type: application/json
{
"url": "https://your-server.com/hooks/deployer",
"events": ["deployer:alert"],
"name": "Elite deployer alerts"
}
Payload includes the full alert with deployer profile, token data, market_cap_at_alert, and KOL cross-reference. Signed with x-madeonsol-signature (HMAC-SHA256 over <timestamp>.<body>).
Sniper pre-confirm alerts (ULTRA)
For the lowest possible latency, the Sniper API delivers alerts via deshred stream — ~500–800ms before chain confirmation:
GET /api/v1/sniper/recent?limit=50
Each sniper event includes mint, deployer_wallet, deployer_tier, deployer_bond_rate, detected_at, and detection_region (Frankfurt or New York, dual-region coverage). PRO tier receives elite/good deployers only; ULTRA receives every tier plus custom watchlists.
Custom watchlist (ULTRA): add specific deployer wallets you want to track regardless of their tier, and receive alerts narrowed to only those wallets:
POST /api/v1/sniper/watchlist
{ "wallets": ["wallet1...", "wallet2..."], "label": "my watchlist" }
Example: deployer-gated scanner
Combining deployer data with the token directory for a quality-filtered launch scanner:
import { MadeOnSol } from 'madeonsol';
const client = new MadeOnSol({ apiKey: 'msk_...' });
// Get recent bonds from elite/good deployers with >$500K peak MC
const bonds = await client.getRecentBonds({
tier: 'elite,good',
peak_mc_min: 500_000,
limit: 20
});
// For each, get full token data with KOL activity
for (const bond of bonds.tokens) {
const token = await client.getToken(bond.token_mint);
console.log({
symbol: token.symbol,
deployer_tier: token.deployer?.tier,
kol_buyers: token.kol_activity?.buying_kols,
mc: token.market_cap_usd,
mc_change_1h: token.mc_change_1h_pct
});
}