MadeOnSolMade on Sol
RobinhoodBlogAdvertise
Sign in
MadeOnSolMade on Sol

Solana and Robinhood Chain intelligence — KOL wallet tracking, deployer intelligence, all-DEX trade streams, and a developer API. Discover, compare, and build.

Discover

  • All Tools
  • Stacks
  • KOL Tracker
  • Deployer Hunter
  • KOL Scout Leaderboard
  • Robinhood Chain
  • Robinhood Wallet Scanner
  • Robinhood API
  • Solana API
  • Token Surge Alerts
  • WebSocket Streaming
  • Sniper Deploy Alerts
  • MCP Servers & SDKs
  • Datasets
  • API Pricing
  • Enterprise API
  • x402 for AI agents
  • Robinhood Chain x402
  • Yields
  • Blog
  • Blog Archive
  • Solana Glossary

Best Of

  • Best Trading Bots
  • Best DEXs
  • Best Wallets
  • Best Analytics
  • Best DeFi
  • Best Snipers

Compare

  • Wallets
  • DEXs
  • Snipers
  • TG Bots
  • Terminals
  • Analytics
  • Portfolio
  • Copy Trading
  • Security
  • Liquid Staking
  • RPC Providers
  • Bridges
  • Launchpads
  • NFT Marketplaces
  • Lending
  • Bot Calculator
  • Perps
  • Scanners
  • Data APIs

Resources

  • Submit a Tool
  • API Docs
  • Get an API Key
  • For Businesses
  • Affiliate Program
  • Changelog
  • API Status
  • Tool Uptime
  • Signal Scorecard
  • Compare KOLs
  • Leaderboard
  • Community
  • Site Stats
  • Advertise

Legal

  • About
  • Contact
  • Terms
  • Privacy
  • Security
  • DPA
  • Disclaimer

© 2026 MadeOnSol

MadeOnSol — eenmanszaak, Hulshout, Belgium · KBO/BTW BE 1039.535.538 (art. 56bis, no VAT charged)

Follow us on XPowered by:constant·k — Private Solana RPC Services
Solana APIPre-confirmation deploy alerts

Head-start measurement, caveats and payload verified 2026-08-28.

Solana API · sniper

pump.fun deploy alerts
before the chain confirms them.

Every new pump.fun token, reconstructed from the shred stream (Yellowstone SubscribeDeshred) and pushed ~500–800 ms before confirmation— measured in production against our own confirmed-stream alerts. Each alert carries the deployer's reputation so you can decide in the same millisecond whether it is worth a priority fee. About 1–3 % of detected deploys never settle; the payload says confidence: "deshred" so you never forget it.

Get access (PRO, €43/mo) WebSocket · webhook · REST

WS sniper:deploys · webhook sniper:deploy · GET /api/v1/sniper/recent · x402 /api/x402/sniper/recent ($0.01)

The numbers

Measured, not marketed.

500–800 ms
Head start

vs confirmed-stream alerts

1–3 %
Abandon rate

shreds that never confirm

2
Detection regions

dual-region delivery confirm

15 min
Attribution re-check

unverified → confirmed / corrected

How it works

Shreds first, then the chain catches up.

A validator gossips a block as shreds before it is voted on. Yellowstone's SubscribeDeshred reassembles transactions from those shreds; we consume it in two regions, keep only pump.fun bonding-curve interactions, and push the create the moment it is reconstructed. Detection is restart-safe and deployer enrichment is served from an in-memory cache so the alert never waits on a database.

1 · Detect

Deshred, two regions, pump.fun only.

The detector filters the shred stream server-side to pump.fun bonding-curve creates. Two regions see the same shred; detection_confirmed marks a dual-region confirm. No other launchpad is covered pre-confirmation.

2 · Enrich

Deployer reputation from cache.

Tier, lifetime bond rate, last-10 outcome bitmap, runner rate and its denominator ride on the alert from an in-memory snapshot of the deployer engine — the same reputation that powers Deployer Hunter.

3 · Correct

The REST record is the corrected one.

Deshred-speed attribution is a heuristic. Every 15 min it is cross-checked against the confirmed on-chain create; a mismatch re-snapshots the deployer (attribution_status: corrected) while the WebSocket push stays pre-confirmation by design.

Honest caveats

What a pre-confirmation alert cannot promise.

These are required by the deshred contract and repeated in the payload.

Abandonment

~1–3 % of detected deploys never confirm.

The stream fires before chain settlement; some shreds never confirm. Treat the alert as buy intent observed, not a guaranteed deploy. Size the first leg accordingly and confirm the mint exists before the second.

No execution metadata

No balances, logs or inner instructions.

Deshred carries no meta. The mint, deployer and signature are always present; anything derived from execution (dev buy size, initial reserves) is not, and is not invented.

Attribution

The deployer is a heuristic until checked.

attribution_status is unverified for rows younger than ~15 min (or when no confirmable create exists), then confirmed or corrected. Distinct from detection_confirmed, which is the delivery confirm.

Footprint timing

footprint is null for 10 minutes.

The slot-window snipe rollup needs confirmed trades to settle. data_available: false means outside the capture window — not zero snipes. Use it for post-hoc auditing, not the entry decision.

Tier policy

PRO is curated. ULTRA is everything plus watchlists.

Curation runs per deploy at delivery time across REST, WebSocket and webhooks, so a PRO subscriber cannot widen past elite/good through a filter or a stale rule.

CapabilityPRO · €43/moULTRA · €131/mo
Deployer tiers receivedelite + good onlyevery tier, incl. unranked ("all" scope)
GET /sniper/recentyes (curated)yes
GET /sniper/by-deployer/{wallet}—yes
Custom deployer watchlist (max 50)—yes — watchlist scope overrides tier on REST, WS and webhooks
WS sniper:deploysyes (curated per message)yes
Webhook sniper:deployyes (curated at delivery)yes
Filterssince, deployer_tier, min_bond_rate, limit 1–200same + watchlist=true / sniper_scope: "watchlist"

Payload

What rides on every alert.

The webhook / WebSocket event and the REST row share the core fields; footprint, attribution and confirmation fields are REST-only because they need settled data.

FieldMeaning
mint · name · symbolThe new token. Always present.
deployer / deployer_walletThe deployer wallet (same value on both keys — parity between the event and the REST row).
signature · slot · detected_at · detection_regionThe create transaction as seen in the shred stream, the slot, when and where we saw it.
confidence: "deshred"Explicit on every push: this is pre-execution. Treat it as buy intent observed, not a guaranteed deploy.
deployer_tierelite · good · moderate · rising · cold · unranked — from the reputation engine over every pump.fun deployer we have indexed.
deployer_bond_rate · deployer_total_bondedLifetime graduation rate and count for the deployer.
deployer_recentLast-10 outcome bitmap, newest first — e.g. BBBBBFBBB (bonded / failed). A string of D's is a near-certain skip.
deployer_runner_rate · deployer_labeled_tokensFraction of the deployer's labeled tokens that ran (peak ≥ 60 min after deploy) and the denominator — gate on labeled_tokens ≥ 3 before trusting the rate.
footprint (REST)Slot-window snipe rollup over slots deploy−1..+3: buys, buyers, sol, supply_pct, sniper_wallet_buys, data_available, as_of. null for deploys younger than the 10-minute settle window.
attribution_status · attribution_checked_at (REST)The deshred-speed deployer attribution is a heuristic, cross-checked every 15 min against the confirmed create: unverified → confirmed or corrected (deployer re-snapshotted from the confirmed create; the original heuristic wallet is kept server-side).
detection_confirmed · confirmed_on_chain · confirmed_at (REST)Dual-region delivery confirm, and whether/when the deploy settled on-chain.
webhook · sniper:deploy
{
  "mint": "…pump", "name": "…", "symbol": "…",
  "deployer": "Aqje…SMXk", "deployer_wallet": "Aqje…SMXk",
  "signature": "5Kd…", "slot": 371254112,
  "detected_at": "2026-08-28T11:56:51.205Z", "detection_region": "Frankfurt",
  "confidence": "deshred",
  "deployer_tier": "good", "deployer_bond_rate": 0.62, "deployer_total_bonded": 31,
  "deployer_recent": "BBBBBFBBBB", "deployer_runner_rate": 0.41, "deployer_labeled_tokens": 17
}

How to consume

Push for the trade, REST for the audit.

Live alerts belong on the WebSocket or a webhook — pushed frames never spend quota (see /streaming). The read API is the corrected record for backtests and post-hoc auditing.

WebSocket · wss://madeonsol.com/ws/v1/stream
{ "type": "subscribe", "channels": ["sniper:deploys"],
  "filters": { "deployer_tier": ["elite", "good"] } }
// ULTRA, watchlist only:
{ "type": "subscribe", "channels": ["sniper:deploys"],
  "filters": { "sniper_scope": "watchlist" } }
Webhook · POST /api/v1/webhooks
{ "url": "https://your.bot/hooks/deploys",
  "events": ["sniper:deploy"],
  "filters": { "deployer_tier": ["elite"] } }
// HMAC-SHA256 header x-madeonsol-signature · retries 5s / 30s / 2min
REST · corrected record for backtests
curl "https://madeonsol.com/api/v1/sniper/recent?deployer_tier=elite&min_bond_rate=0.5&limit=100" \
  -H "Authorization: Bearer msk_YOUR_KEY"
# ULTRA: ?watchlist=true · GET /api/v1/sniper/by-deployer/{wallet}
# ULTRA: POST /api/v1/sniper/watchlist {"wallets":["…"],"label":"tier-1"}
SDKs · TypeScript madeonsol 2.26 · Python madeonsol-x402 1.28 · Rust madeonsol 0.27
// TypeScript
const { deploys } = await client.sniper.recent({ limit: 20, min_bond_rate: 0.5 });
const stream = await client.stream.connect();
stream.on("sniper:deploy", (d) => console.log(d.symbol, d.deployer_tier, d.deployer_recent));

# Python
deploys = client.sniper_recent(limit=20, min_bond_rate=0.5)

// Rust
let res = client.sniper.recent(&SniperRecentParams::default()).await?;

MCP: tool madeonsol_sniper_recent in mcp-server-madeonsol. Keyless agents: GET /api/x402/sniper/recent at $0.01 USDC per call (elite/good feed).

Where this sits

Raw deshred versus a curated alert.

If your edge is your own decoding, buy the shred stream from an RPC provider (Helius, Shyft, Triton) and reconstruct creates yourself — that is the flexible, unmetered path and it will always be a few milliseconds ahead of any vendor that does the decoding for you. This feed is for teams that would rather spend those milliseconds on the reputation check than on maintaining a deshred consumer: the tier, bond rate, last-10 bitmap and runner rate are the part nobody else attaches at shred speed, and among the memecoin data APIs we audited on 2026-08-16 none sold a pre-confirmation deploy feed with deployer reputation on it.

FAQ

Sniper questions, answered.

What is a pre-confirmation deploy alert?+
An alert for a new pump.fun token that fires while the create transaction is still propagating as shreds — before the block is confirmed. The detector consumes Yellowstone's SubscribeDeshred stream in two regions, filters server-side to pump.fun bonding-curve interactions and pushes the mint, deployer and signature the moment a create is reconstructed. Measured in production against our own CONFIRMED-stream deployer alerts, the head start is roughly 500–800 ms.
How reliable is it? What can go wrong?+
Two honest caveats, both required by the deshred contract. First, roughly 1–3% of detected deploys abandon: the shred stream fires before chain settlement and some shreds never confirm, so every push carries confidence: "deshred" and should be treated as buy intent observed, not a guaranteed deploy. Second, there is no execution metadata — deshred carries no meta, so balances, logs and inner instructions are unavailable in the alert; the mint, deployer and signature are always present. The deployer attribution at deshred speed is a heuristic, cross-checked every 15 minutes against the confirmed on-chain create and marked unverified, confirmed or corrected on the REST record.
What does PRO get versus ULTRA?+
PRO (€43/month) receives deploys from elite- and good-tier deployers only; the curation runs per message at delivery time across REST, WebSocket and webhooks, so a PRO consumer cannot widen it with a filter or a stale rule. ULTRA (€131/month) receives every tier including unranked, the "all" scope, a custom deployer watchlist of up to 50 wallets that overrides tier, and GET /api/v1/sniper/by-deployer/{wallet} for auditing a deployer before adding them. BASIC has no access to the sniper surface on the keyed API.
What deployer-reputation fields ride on each alert?+
deployer_tier (elite / good / moderate / rising / cold / unranked), deployer_bond_rate and deployer_total_bonded (lifetime graduation rate and count), deployer_recent (last-10 outcome bitmap, e.g. BBBBBFBBB), deployer_runner_rate (fraction of the deployer's labeled tokens whose peak came at least 60 minutes after deploy — the 'did it run' rate) and deployer_labeled_tokens (its denominator; gate on ≥ 3). A bitmap of ten D's is a near-certain skip; a bond rate under 0.5 is the common skip threshold in the operator playbook.
What is the footprint block?+
A slot-window snipe rollup for slots deploy−1 through deploy+3: how many buys and distinct buyers landed, how much SOL, what share of supply they took, and how many of those buys came from known sniper wallets. It is computed from confirmed trades, so it is null for deploys younger than the rollup's 10-minute settle window, and data_available: false means the window was outside capture — not zero snipes. The same rollup appears as inputs.sniper_footprint on the token risk endpoint, informationally.
How do I receive alerts — and does polling count?+
Live alerts come over the WebSocket channel sniper:deploys (subscribe after connecting; pushed frames do not spend your daily quota — see /streaming) or the webhook event sniper:deploy (HMAC-SHA256 signed). The read API, GET /api/v1/sniper/recent (newest first, filters since, deployer_tier, min_bond_rate, limit 1–200), is for backtesting and post-hoc auditing and is the corrected record; it counts as a normal request. Keyless AI agents can read the elite/good feed for $0.01 USDC per call at /api/x402/sniper/recent.
Does it cover LaunchLab, bonk.fun or other launchpads?+
No. The deshred detector is filtered to pump.fun bonding-curve interactions only. Launches on other launchpads appear in the confirmed-stream deployer alerts (deployer:alerts) and, for surges, in the momentum engine — but not pre-confirmation. If your strategy is LaunchLab-first, a confirmed-stream feed is the right tool today.
How much edge is left after my own latency?+
The operator playbook on the developer dashboard budgets under 100 ms typical and under 200 ms p95 client-side (pre-built, pre-signed transaction templates, priority fees, Jito tips, infrastructure close to leader concentration), which leaves roughly 300–600 ms of net edge over snipers that wait for confirmation. It also lists the reputation filters worth applying before you spend a priority fee: skip deployer_bond_rate < 0.5, skip an all-D recent bitmap, prefer labeled_tokens ≥ 3 with a real runner rate.

More for developers

Token surge & revival alerts

Momentum fires with risk flags and out-of-sample +1h outcomes.

WebSocket streaming

seq, replay, heartbeat, 19 channels — pushed events don't spend quota.

MCP servers & SDKs

Two MCP servers, 14 packages, one free key.

Full surface: Solana API overview, Robinhood Chain API, endpoint docs and the 9-provider data API comparison.

Start building

Half a second, with the deployer's record attached.

Elite/good deployers on PRO (€43/month); every tier, custom watchlists and by-deployer audits on ULTRA (€131/month).

See plans & pricing See the deployer reputation data