BYTETOOLS

DexPaprika API

Free DexPaprika API with no key: decentralised exchange networks, pools, tokens, prices and OHLCV across dozens of blockchains. Tested curl example and live response.

No API key requiredHTTPSFree tier

Endpoint tested and returned HTTP 200 on 2026-08-21

What is the DexPaprika API?

DexPaprika is a free API with no key covering decentralised exchange activity across dozens of blockchain networks. Endpoints expose networks, DEXes, liquidity pools, tokens, prices and OHLCV series.

Centralised exchange APIs cannot see on-chain trading, and on-chain data is fragmented across networks that each have their own explorers and conventions. DexPaprika normalises that: one interface covering dozens of networks with the same pool and token shapes throughout. The networks endpoint is the right starting point, because it returns the exact `id` strings every other endpoint expects.

Interpret the aggregates with care. `volume_usd_24h` and `pools_count` cover everything on a network, and on-chain volume can be inflated by wash trading, self-routing and pools with negligible real liquidity — a large number does not mean a large market. Values also come back as full-precision floats rather than rounded strings, so format for display rather than dumping them raw, and label prices derived from thin pools accordingly.

Quick facts

Base URL
https://api.dexpaprika.com
Authentication
No key or registration for the public endpoints.
Rate limit
No published limit on the free tier. Cache network and pool listings, which change slowly.
Pricing
Free for the public endpoints.
CORS
Not enabled — call it from your server
Official docs
Read the docs

How to use the DexPaprika API

Every request below was executed against the live API on 2026-08-21, and the response shown is the real body it returned — not an illustration.

1. Every supported DEX network with 24-hour volume

GET https://api.dexpaprika.com/networks

curl
curl 'https://api.dexpaprika.com/networks'
JavaScript (fetch)
const res = await fetch("https://api.dexpaprika.com/networks");
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);
Python (requests)
import requests

res = requests.get("https://api.dexpaprika.com/networks", timeout=20)
res.raise_for_status()
print(res.json())
Response — HTTP 200 (truncated)
[
  {
    "display_name": "Polygon",
    "id": "polygon",
    "volume_usd_24h": 115258674.67361617,
    "txns_24h": 828785,
    "pools_count": 3896
  },
  {
    "display_name": "Ton",
    "id": "ton",
    "volume_usd_24h": 544853.7214193395,
    "txns_24h": 9013,
    "pools_count": 347
  },
  {
    "display_name": "Ronin",
    "id": "ronin",
    "volume_usd_24h": 644182.6092901969,
    "txns_24h": 25405,
    "pools_count": 305
  },
  {
    "display_name": "Sei",
    "id": "sei",
    "volume_usd_24h": 6992370.012522196,
    "txns_24h": 11163,
    "pools_count": 18
  },
  {
    "display_name": "Arbitrum",
    "id": "arbitrum",
    "volume_usd_24h": 340404454.9711111,
    "txns_24h": 476214,
    "pools_count": 1823
  },
  {
    "display_name": "Base",
    "id": "base",
    "volume_usd_24h": 1269610917.0013578,
    "txns_24h": 2142588,
    "pools_count": 15833
  },
  {
    "display_name": "Avalanche",
    "id": "avalanche",
    "volume_usd_24h": 70368941.07495539,
    "txns_24h": 198690,
    "pools_count": 2095
  },
  {
    "display_name": "Blast",
    "id": "blast",
    "volume_usd_24h": 16058.759449919495,
    "txns_24h": 2011,
    "pools_count": 37
  },
  {
    "display_name": "Scroll",
    "id": "scroll",
    "volume_usd_24h": 619057.4470785024,
    "txns_24h": 8112,
    "pools_count": 24
  },
  {
    "display_name": "BOB Network",
    "id": "bob_network",
    "volume_usd_24h": 18799.703674405373,
    "txns_24h": 2112,
    "pools_count": 20
  },
  {
    "display_name": "x Layer",
    "id": "x_layer",
    "volume_usd_24h": 8979759.181806995,
    "txns_24h": 152118,
    "pool

Parameters

ParameterTypeRequiredDescription
/networkspathRequiredLists supported networks with their ids and headline aggregates.
/networks/{network}/poolspathOptionalLiquidity pools on a network, paginated. ethereum
/networks/{network}/tokens/{address}pathOptionalToken detail by contract address.
/pools/{network}/{address}/ohlcvpathOptionalOHLCV candles for a specific pool.
limit / pagequeryOptionalPagination on the collection endpoints. 50

Response fields

[].idstring
Network identifier such as `ethereum` or `base` — the exact string other endpoints expect.
[].display_namestring
Human-readable network name for display.
[].volume_usd_24hnumber
24-hour DEX volume across the network in US dollars, as a full-precision float.
[].txns_24hinteger
Swap transaction count over 24 hours.
[].pools_countinteger
Number of tracked liquidity pools on the network.

What you can build with the DexPaprika API

  • List supported networks before querying pools or tokens
  • Compare DEX activity across chains on a dashboard
  • Fetch OHLCV candles for a specific liquidity pool
  • Look up a token's on-chain price by contract address

Common errors and how to fix them

404 on a network path

The network id is wrong.

Fix: Take the `id` value from `/networks` rather than guessing. Display names and ids differ — `Ton` versus `ton`.

Empty pools list

The network has no tracked pools, or the page is past the end.

Fix: Check `pools_count` from the networks endpoint before paging.

Unwieldy numbers in the UI

Values are full-precision floats.

Fix: Round for display. A volume figure carrying twelve decimal places is noise, not precision.

DexPaprika API — frequently asked questions

Is DexPaprika free to use?

Yes, the public endpoints need no key or registration. Caching is worth doing anyway, since network and pool listings change slowly.

How many blockchains does it cover?

Dozens, and the list changes. Call `/networks` for the current set with the exact ids every other endpoint expects, rather than hard-coding a list.

Is DEX volume comparable to centralised exchange volume?

Not directly. On-chain volume can include wash trading, self-routing and activity in pools with negligible real liquidity, so a headline figure overstates genuine market depth.

Can I get historical price data?

Yes. The OHLCV endpoint returns candles for a specific pool, addressed by network and pool address. Prices from thin pools are volatile and should be labelled as such.

Tools that pair with this API

DexPaprika is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 2026-08-21; always check the official documentation before relying on this API in production, as terms and limits can change.