Skip to main content

Crypto Market API

Crypto-native market data endpoints: newly launched tokens and pairs, CEX listing/delisting signals, and on-chain rug/honeypot security scans with a risk score. Same auth and error format as the rest of the API — see API Overview.

All examples assume a local instance at http://localhost:8005 (Docker) with a PRY_API_KEY set.

GET /v1/crypto/token-launches

New token / pair / trending discovery across supported chains.

Query parameters:

FieldTypeDefaultDescription
chainstringRequired. Chain slug, e.g. solana, ethereum, base
kindstringtokensResult kind: tokens (new token contracts), pairs (new DEX pairs), trending (rising tokens)
limitinteger25Max results (1–100)

Example:

curl -X GET "http://localhost:8005/v1/crypto/token-launches?chain=solana&kind=tokens&limit=3" \
-H "Authorization: Bearer <key>"

Response (200):

{
"success": true,
"data": {
"chain": "solana",
"kind": "tokens",
"count": 3,
"launches": [
{
"address": "7xKXtg2CW87d97TXJSDpbD5jBkheTqA83TZRuJosgAsU",
"symbol": "PUMP",
"name": "PumpExample",
"created_at": "2026-08-16T13:58:00Z",
"pair": "PUMP/SOL",
"dex": "raydium",
"liquidity_usd": 12400,
"initial_market_cap": 185000
}
]
}
}

With kind=pairs the same envelope returns pairs (pair address, base/quote, DEX, liquidity, first-seen time). With kind=trending it returns launches ranked by short-window volume/momentum instead of newest-first.

GET /v1/crypto/cex-listings

CEX listing and delisting signals for exchange announcement tracking.

Query parameters:

FieldTypeDefaultDescription
exchangesstringComma-separated exchange slugs, e.g. binance,coinbase,kraken. Omit for all tracked exchanges
lookback_hoursinteger24Hours of signal history to return (1–168)

Example:

curl -X GET "http://localhost:8005/v1/crypto/cex-listings?exchanges=binance,coinbase&lookback_hours=48" \
-H "Authorization: Bearer <key>"

Response (200):

{
"success": true,
"data": {
"count": 2,
"signals": [
{
"exchange": "binance",
"symbol": "PUMP/USDT",
"event": "listing",
"status": "announced",
"announced_at": "2026-08-16T12:00:00Z",
"source_url": "https://www.binance.com/en/support/announcement/..."
},
{
"exchange": "coinbase",
"symbol": "OLDS/USDT",
"event": "delisting",
"status": "scheduled",
"announced_at": "2026-08-15T09:30:00Z",
"source_url": "https://www.coinbase.com/..."
}
]
}
}

event is listing or delisting; status is announced, scheduled, or live (for listings) / completed (for delistings).

GET /v1/crypto/token-security/{chain}/{address}

Rug / honeypot / mint / LP-lock scan with a composite risk score.

Path parameters:

FieldTypeDescription
chainstringRequired. Chain slug, e.g. solana, ethereum, base
addressstringRequired. Token contract address

Example:

curl -X GET "http://localhost:8005/v1/crypto/token-security/solana/7xKXtg2CW87d97TXJSDpbD5jBkheTqA83TZRuJosgAsU" \
-H "Authorization: Bearer <key>"

Response (200):

{
"success": true,
"data": {
"chain": "solana",
"address": "7xKXtg2CW87d97TXJSDpbD5jBkheTqA83TZRuJosgAsU",
"risk_score": 82,
"risk_band": "critical",
"checks": {
"is_rug": true,
"is_honeypot": true,
"can_mint": true,
"lp_locked": false,
"owner_can_blacklist": false,
"top_10_holders_pct": 68.4
},
"scanned_at": "2026-08-16T14:00:00Z"
}
}

Risk-score scale

risk_score is 0–100. The higher the score, the higher the risk. risk_band is derived from the score:

BandScoreMeaning
low0–19Looks safe: verified source, LP locked, no mint authority, no honeypot traits
moderate20–49Minor concerns (concentration, unverified source) — investigate before trading
high50–79Strong red flags (mint authority, low LP lock, holder concentration)
critical80–100Rug / honeypot indicators confirmed — do not trade

The score is composite: rug-pattern heuristics, honeypot sell-simulation, mint authority, LP-lock status, owner privileges, and holder concentration. Flag semantics:

FlagMeaning
is_rugDeployer or liquidity behavior matches known rug patterns
is_honeypotSell-side simulation fails (cannot sell)
can_mintMint authority exists and is not renounced
lp_lockedLiquidity is locked / burned
owner_can_blacklistOwner can freeze or blacklist holders
top_10_holders_pctPercentage of supply held by top 10 holders

MCP tools

The three endpoints are exposed as MCP tools on the Pry MCP server — see MCP Integration for server setup.

ToolBacking endpoint
pry_token_launchesGET /v1/crypto/token-launches
pry_cex_listingsGET /v1/crypto/cex-listings
pry_token_securityGET /v1/crypto/token-security/{chain}/{address}

Example tool call (JSON-RPC):

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "pry_token_security",
"arguments": {
"chain": "solana",
"address": "7xKXtg2CW87d97TXJSDpbD5jBkheTqA83TZRuJosgAsU"
}
}
}

Who should use this

  • Sniper botstoken-launches with kind=tokens|pairs for new contract/pair discovery, then token-security to filter out honeypots and rugs before entry.
  • Trading agentscex-listings for listing/delisting momentum signals, trending launches for short-window momentum plays.
  • Security toolstoken-security as a pre-trade screening layer or user-facing risk display (scan links, portfolio guards, alerting).

Next steps