dexpaprika-api

Installation
SKILL.md

DexPaprika API Skill

Free DEX data API covering 34 blockchains, 213 DEXes, 30M+ liquidity pools, and 27.7M+ tokens. Built by the CoinPaprika team (operating since 2018). No API key, no registration. Free public tier: 10,000 requests/day. Enterprise tier (api-pro.dexpaprika.com): unlimited requests with API key.

Field naming note: URL paths use network and token_address, but JSON responses return chain and id for the same values.


Integration options

Option 1: CLI (recommended for agents)

Install and query in seconds. Best for agents that can run shell commands.

curl -sSL https://raw.githubusercontent.com/coinpaprika/dexpaprika-cli/main/install.sh | sh

Always use --output json --raw for machine-readable output. Run dexpaprika-cli onboard for an interactive quick-start guide.

Common commands:

# Search for a token
dexpaprika-cli search USDC --output json --raw

# Get token price
dexpaprika-cli token ethereum 0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 --output json --raw

# Top pools on a network
dexpaprika-cli pools ethereum --limit 10 --output json --raw

# Historical OHLCV for a pool
dexpaprika-cli pool-ohlcv ethereum 0x88e6a0c2ddd26feeb64f039a2c41296fcb3f5640 --start 2025-01-27 --output json --raw

# Top tokens on a network (ranked, with multi-timeframe metrics)
dexpaprika-cli top-tokens ethereum --limit 20 --output json --raw
dexpaprika-cli top-tokens solana --order-by price_change --sort asc --output json --raw

# Filter tokens by volume, FDV, liquidity, txns
dexpaprika-cli filter-tokens ethereum --volume-24h-min 100000 --output json --raw
dexpaprika-cli filter-tokens solana --fdv-min 1000000 --liquidity-usd-min 50000 --output json --raw

# Filter pools by volume, liquidity, txns, creation date
dexpaprika-cli pool-filter ethereum --volume-24h-min 500000 --liquidity-usd-min 50000 --output json --raw

# Batch token prices
dexpaprika-cli prices ethereum --tokens 0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 --output json --raw

# Stream real-time prices (~1s updates)
dexpaprika-cli stream ethereum 0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2

# API health check
dexpaprika-cli status

For the full CLI command reference, read references/cli-reference.md.

Option 2: REST API

Base URL: https://api.dexpaprika.com

No authentication required. All responses are JSON.

curl -s "https://api.dexpaprika.com/networks/ethereum/tokens/0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" | jq

Endpoint table

Need Endpoint
List all networks GET /networks (returns volume_usd_24h, txns_24h, pools_count per network)
DEXes on a network GET /networks/{network}/dexes (returns volume_usd_24h, txns_24h, pools_count per DEX)
Top pools on network GET /networks/{network}/pools
Filter pools GET /networks/{network}/pools/filter (volume, liquidity, txns, creation date filters)
Pool details GET /networks/{network}/pools/{pool_address}
Pool OHLCV (charts) GET /networks/{network}/pools/{pool_address}/ohlcv
Pool transactions GET /networks/{network}/pools/{pool_address}/transactions
Token price + data GET /networks/{network}/tokens/{token_address}
Pools containing token GET /networks/{network}/tokens/{token_address}/pools
Filter tokens GET /networks/{network}/tokens/filter (volume, liquidity, FDV, txns, creation date filters)
Top tokens on network GET /networks/{network}/tokens/top (ranked by volume, price, liquidity, txns, or price change)
Batch token prices GET /networks/{network}/multi/prices?tokens={addr1},{addr2}
Pools for a DEX GET /networks/{network}/dexes/{dex}/pools
Search tokens/pools/DEXes GET /search?query={term}
Platform statistics GET /stats

For the full OpenAPI 3.1 specification with all schemas, parameters, and response types, read references/openapi.yml.

Option 3: MCP Server (for AI IDEs)

Hosted MCP server for Claude Desktop, Cursor, Windsurf, and any MCP client.

Add to claude_desktop_config.json or equivalent:

{
  "mcpServers": {
    "dexpaprika": {
      "url": "https://mcp.dexpaprika.com/sse"
    }
  }
}

No API key needed. Provides tools for querying networks, pools, tokens, OHLCV, transactions, and search.

Documentation: https://docs.dexpaprika.com/ai-integration/hosted-mcp-server

Option 4: Streaming API (real-time prices)

Base URL: https://streaming.dexpaprika.com

Stream live token prices via Server-Sent Events (SSE). ~1 second updates, 1-2,000 tokens per connection.

Single token (GET):

curl --http1.1 -N "https://streaming.dexpaprika.com/stream?method=t_p&chain=ethereum&address=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2"

Multiple tokens (POST):

curl --http1.1 -N -X POST "https://streaming.dexpaprika.com/stream" \
  -H "Accept: text/event-stream" -H "Content-Type: application/json" \
  -d '[{"chain":"ethereum","address":"0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2","method":"t_p"}]'

Response fields: a = token address, c = chain, p = price USD (string), t = server timestamp, t_p = price timestamp.

Important: Streaming requires HTTP/1.1. Add --http1.1 with curl. One invalid asset cancels the entire stream.

For full streaming docs, read references/streaming-api.md.

Option 5: SDKs

Language Repository
Go https://github.com/coinpaprika/dexpaprika-sdk-go
Python https://github.com/coinpaprika/dexpaprika-sdk-python
TypeScript https://github.com/coinpaprika/dexpaprika-sdk-ts
PHP https://github.com/coinpaprika/dexpaprika-sdk-php
Rust https://github.com/coinpaprika/dexpaprika-sdk-rust

Common workflows

Get a token price

CLI:

dexpaprika-cli token ethereum 0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 --output json --raw

curl:

curl -s "https://api.dexpaprika.com/networks/ethereum/tokens/0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" | jq '.summary.price_usd'

Python:

import requests
r = requests.get("https://api.dexpaprika.com/networks/ethereum/tokens/0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2")
token = r.json()
print(f"{token['symbol']}: ${token['summary']['price_usd']}")

Search for a token

curl -s "https://api.dexpaprika.com/search?query=PEPE" | jq '.tokens[:5]'

Note: Search uses fuzzy name+symbol matching. "UNI" returns "Uniswap", "United Stables", etc. Filter by exact symbol match client-side.

Get historical OHLCV for a pool

curl -s "https://api.dexpaprika.com/networks/ethereum/pools/0x88e6a0c2ddd26feeb64f039a2c41296fcb3f5640/ohlcv?start=2025-01-01&interval=1h&limit=24" | jq

OHLCV params: start (required), end, interval (1m|5m|10m|15m|30m|1h|6h|12h|24h), limit (max 366), inversed (boolean, inverts price ratio for USD-denominated prices from stablecoin-paired pools).

Batch prices for multiple tokens

curl -s "https://api.dexpaprika.com/networks/ethereum/multi/prices?tokens=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48" | jq

Returns an ARRAY (not a keyed object). Max 10 tokens per request.

Stream real-time prices (Python)

import requests, json

assets = [
    {"chain": "ethereum", "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", "method": "t_p"},
    {"chain": "solana", "address": "So11111111111111111111111111111111111111112", "method": "t_p"}
]

r = requests.post("https://streaming.dexpaprika.com/stream",
    headers={"Accept": "text/event-stream", "Content-Type": "application/json"},
    json=assets, stream=True)

for line in r.iter_lines():
    if line and line.startswith(b'data:'):
        data = json.loads(line[5:])
        print(f"{data['c']} {data['a']}: ${data['p']}")

Common token addresses

Do not guess addresses. Use search to find tokens, or use these known addresses:

Token Chain Address
WETH ethereum 0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
USDC ethereum 0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48
USDC polygon 0x2791bca1f2de4661ed88a30c99a7a9449aa84174
USDC solana EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v
SOL solana So11111111111111111111111111111111111111112

Common network IDs

Always lowercase: ethereum, solana, bsc, polygon, arbitrum, base, avalanche, optimism, sui, ton, tron.

Full list: GET /networks or dexpaprika-cli networks.

Pagination

All list endpoints support: ?page=1&limit=10&order_by=volume_usd&sort=desc

Pages are 1-indexed (first page is page=1). Max 1000 pages. Available order_by values: volume_usd, liquidity_usd, price_usd, transactions, last_price_change_usd_24h, created_at. Filter endpoints use sort_by/sort_dir instead of order_by/sort.

Timestamps

All timestamps support Unix, RFC3339, or yyyy-mm-dd format. OHLCV data limited to 366 data points per request.

Rate limits and errors

  • Free tier: 10,000 requests/day. Enterprise (api-pro.dexpaprika.com): unlimited with API key.
  • HTTP errors: 200 OK | 400 bad params | 404 not found | 429 rate limited | 500 server error
  • On 429 rate limit: Wait a few seconds/minutes, then retry. Blocks are temporary. If persistent, contact support@coinpaprika.com.
  • Check API health: dexpaprika-cli status or GET https://api.dexpaprika.com/stats
  • Full docs: https://docs.dexpaprika.com
Related skills
Installs
8
GitHub Stars
5
First Seen
Apr 9, 2026