Install Dexscreener API
Pick your agent. Every command is ready to paste.
npx skills add agiprolabs/claude-trading-skills --skill dexscreener-apiThe open skills CLI detects your agents (Claude Code, Cursor, Codex and 70+ more) and installs to the right folder. Add -g to install globally.
01
Install it
Run the command above, or upload the folder in Claude.
02
Ask naturally
Describe the task. Your agent loads dexscreener-api when the request matches its description.
03
Name it if needed
If it does not trigger, say “use the dexscreener-api skill”. In Codex, type $dexscreener-api.
The skill itself
SKILL.md
DexScreener API — Free Multi-Chain DEX Data
DexScreener provides DEX pair data across 80+ chains with no API key required. Prices, volume, liquidity, transaction counts, and token profiles — all free. Best for quick lookups, cross-chain comparison, and lightweight monitoring.
Quick Start
No authentication needed. Just make requests:
import httpx
# Search for a token
resp = httpx.get("https://api.dexscreener.com/latest/dex/search", params={"q": "BONK"})
pairs = resp.json()["pairs"]
for p in pairs[:3]:
print(f"{p['baseToken']['symbol']}/{p['quoteToken']['symbol']} on {p['chainId']}: ${p['priceUsd']}")
# Or with curl
curl "https://api.dexscreener.com/latest/dex/search?q=BONK"
Base URL
https://api.dexscreener.com
No API key, no headers required. Rate limits: ~300 req/min for DEX data endpoints, 60 req/min for profile/boost endpoints.
Core Endpoints
Search Pairs
# Search by token name, symbol, or address (returns ~30 pairs across all chains)
GET /latest/dex/search?q=BONK
GET /latest/dex/search?q=So11111111111111111111111111111111111111112
Get Pairs by Chain + Pair Address
# Single pair
GET /latest/dex/pairs/solana/PAIR_ADDRESS
# Multiple pairs (comma-separated)
GET /latest/dex/pairs/solana/PAIR1,PAIR2,PAIR3
Get Pairs by Token Address
# All pairs containing this token across all chains
GET /latest/dex/tokens/TOKEN_MINT_ADDRESS
# Chain-specific (v1)
GET /token-pairs/v1/solana/TOKEN_MINT
# Multiple tokens on one chain (v1)
GET /tokens/v1/solana/TOKEN1,TOKEN2,TOKEN3
Token Profiles & Boosts
# Latest token profiles (60 req/min)
GET /token-profiles/latest/v1
# Latest boosted tokens
GET /token-boosts/latest/v1
# Top boosted tokens (sorted by total boost amount)
GET /token-boosts/top/v1
# Token orders (ads, profile claims)
GET /orders/v1/solana/TOKEN_ADDRESS
# Community takeovers
GET /community-takeovers/latest/v1
Pair Response Schema
{
"chainId": "solana",
"dexId": "raydium",
"url": "https://dexscreener.com/solana/PAIR_ADDR",
"pairAddress": "3nMFwZX...",
"labels": ["CLMM"],
"baseToken": { "address": "So11...", "name": "Wrapped SOL", "symbol": "SOL" },
"quoteToken": { "address": "EPjF...", "name": "USD Coin", "symbol": "USDC" },
"priceNative": "86.08",
"priceUsd": "86.08",
"txns": {
"m5": { "buys": 25, "sells": 18 },
"h1": { "buys": 916, "sells": 1282 },
"h6": { "buys": 11309, "sells": 12661 },
"h24": { "buys": 27974, "sells": 31475 }
},
"volume": { "m5": 41680, "h1": 6773038, "h6": 71628073, "h24": 167164493 },
"priceChange": { "m5": -0.01, "h1": -0.36, "h6": 0.82, "h24": 0.25 },
"liquidity": { "usd": 28168478, "base": 232348, "quote": 8167805 },
"fdv": 8171740,
"marketCap": 8171740,
"pairCreatedAt": 1688106058000,
"info": {
"imageUrl": "https://cdn.dexscreener.com/...",
"websites": [{ "url": "https://...", "label": "Website" }],
"socials": [{ "url": "https://x.com/...", "type": "twitter" }]
}
}
Key notes:
priceNativeandpriceUsdare strings (preserves precision)pairCreatedAtis milliseconds (divide by 1000 for unix timestamp)labels:"CLMM"(concentrated),"DLMM"(dynamic),"wp"(whirlpool)infois optional — only present if the token profile has been claimedfdv/marketCapmay be absent for tokens without supply data
Common Patterns
Quick Token Lookup
def lookup_token(address: str) -> dict | None:
"""Get the best pair for a token by liquidity."""
resp = httpx.get(f"https://api.dexscreener.com/latest/dex/tokens/{address}")
pairs = resp.json().get("pairs", [])
if not pairs:
return None
# Sort by liquidity (highest first)
pairs.sort(key=lambda p: p.get("liquidity", {}).get("usd", 0), reverse=True)
return pairs[0]
Cross-Chain Price Check
def find_best_price(symbol: str) -> list[dict]:
"""Find a token across all chains and compare prices."""
resp = httpx.get("https://api.dexscreener.com/latest/dex/search", params={"q": symbol})
pairs = resp.json().get("pairs", [])
results = []
for p in pairs:
if p["baseToken"]["symbol"].upper() == symbol.upper():
results.append({
"chain": p["chainId"],
"dex": p["dexId"],
"price": float(p.get("priceUsd", 0)),
"liquidity": p.get("liquidity", {}).get("usd", 0),
"volume_24h": p.get("volume", {}).get("h24", 0),
})
return sorted(results, key=lambda x: x["liquidity"], reverse=True)
Monitor New Tokens via Boosts
def get_newly_boosted() -> list[dict]:
"""Get tokens that were recently boosted (paid promotion)."""
resp = httpx.get("https://api.dexscreener.com/token-boosts/latest/v1")
return [
{
"chain": t["chainId"],
"address": t["tokenAddress"],
"boost_amount": t.get("amount", 0),
"total_boost": t.get("totalAmount", 0),
"description": t.get("description", ""),
}
for t in resp.json()
]
Buy/Sell Ratio Analysis
def analyze_pressure(pair: dict) -> dict:
"""Analyze buy/sell pressure from transaction counts."""
txns = pair.get("txns", {})
result = {}
for tf in ["m5", "h1", "h6", "h24"]:
data = txns.get(tf, {})
buys = data.get("buys", 0)
sells = data.get("sells", 0)
total = buys + sells
result[tf] = {
"buys": buys, "sells": sells, "total": total,
"buy_ratio": buys / total if total > 0 else 0.5,
}
return result
Supported Chains
Major chains: solana, ethereum, base, arbitrum, bsc, polygon, avalanche, optimism, zksync, scroll, linea, tron, near, aptos, ton, sui, hyperliquid
80+ chains total. The chainId matches the URL path on dexscreener.com.
Limitations
- No OHLCV/candle data — Use Birdeye or SolanaTracker for historical candles
- No pagination — Search returns ~30 results max
- No wallet/trader data — Use Birdeye or Helius for wallet analysis
- No token security data — Use Birdeye
token_securityendpoint - Snapshot data only — Current state, not historical time series
- No WebSocket — Polling only
When to Use DexScreener vs Alternatives
| Need | Use |
|---|---|
| Quick free token lookup | DexScreener |
| Cross-chain comparison | DexScreener |
| Historical OHLCV for backtesting | Birdeye or SolanaTracker |
| Wallet/trader analysis | Helius or SolanaTracker |
| Real-time streaming | Yellowstone gRPC or Birdeye WebSocket |
| Token security check | Birdeye or SolanaTracker risk score |
Files
References
references/endpoints.md— Complete endpoint listing with response schemasreferences/error_handling.md— Rate limits, error codes, best practices
Scripts
scripts/token_lookup.py— Look up any token across all chains with liquidity analysisscripts/boost_monitor.py— Monitor newly boosted/promoted tokens
Tips for Dexscreener API
- • Start a fresh session after installing so your agent picks up the new skill.
- • This skill ships scripts. Read them before the first run, and run it in a project without secrets first.
- • It bundles reference files. The agent reads them only when needed, so they cost no context until then.
- • It is part of a pack with 40 skills. Install only the ones you need with --skill to keep triggers precise.
- • If two skills overlap, mention the one you want by name.
Questions about Dexscreener API
What does the Dexscreener API skill do?
Free, no-auth multi-chain DEX pair data — prices, volume, liquidity, transactions, and token profiles
How do I install Dexscreener API?
Run "npx skills add agiprolabs/claude-trading-skills --skill dexscreener-api" in your project. The skills CLI installs it for Claude Code, Cursor, Codex and 70+ other agents. In Claude on the web, upload the skill folder as a ZIP under Customize > Skills.
Does Dexscreener API work in Cursor and Codex?
Yes. Dexscreener API uses the open SKILL.md format, so it works in Claude Code, Claude, Cursor, OpenAI Codex, Gemini CLI, GitHub Copilot and other agents that support agent skills.
Is Dexscreener API free?
Dexscreener API is open source on GitHub under the MIT license. It is free to install; check the license before commercial use.
Who made Dexscreener API?
Dexscreener API is published by agiprolabs in the agiprolabs/claude-trading-skills repository, together with 39 other skills.


