Uniswap API: what it returns, and where market data comes from
On 22 September 2026 Uniswap v4 moved more Ethereum volume than v3, yet the Uniswap API returns no pool reserves, no history and no candles. Here is what it covers, where Uniswap points you for data, and what that costs.

The short answer. Uniswap does publish an API, and it is a trading API. It prepares approvals, returns quotes, builds orders and builds swap transactions. Nowhere in it will you find pool reserves, historical prices, OHLCV candles or a swap feed.
For market data, Uniswap points you at subgraphs on The Graph. Those are billed by The Graph rather than by Uniswap, and Uniswap labels the deployments it lists as not official and possibly unmaintained.
Search for the Uniswap API and every result in front of you is about swapping. The official docs, the routing-api repository, the app itself. All of them answer the question of how to trade through Uniswap, and none of them answer the question most people are actually asking, which is where the prices and the history come from.
Those are two different products with two different owners. Below is what each one covers, what the data path costs, and three things I measured across Uniswap's deployments on 22 September 2026. The method is at the end.
What the Uniswap API actually does
The product Uniswap calls its API is the Swapping API, documented at developers.uniswap.org. It has four documented endpoints and they are all steps in placing a trade.
Calls carry your key in an x-api-key header. The supported-chains page lists 21 mainnets: Ethereum, OP Mainnet, BNB Smart Chain, Unichain, Polygon, Monad, X Layer, zkSync, World Chain, Soneium, Tempo, MegaETH, Robinhood Chain, Arc, Base, Arbitrum, Celo, Avalanche, Ink, Linea and Zora, plus three testnets.
/quote is the one that gets mistaken for a price feed, and it is worth being precise about why it is not. It prices a trade: this much of this token, into that token, right now, on this route, with this slippage. Ask it the same question twice with different sizes and you get different numbers, because that is what a quote is for. It will not tell you what the pool did yesterday, how deep it is, or how many people traded it this morning.
Where Uniswap sends you for market data
Uniswap's answer to the data question is subgraphs, and its own documentation is blunt about the state of them. Two lines are worth quoting directly.
"Hosted subgraphs have been deprecated, so you'll need to call through the decentralized network."
"Create API keys in the Studio. Include this key in the endpoint to associate usage with your billing."
Read that second line again, because it is the part that surprises people. The key is not a Uniswap key and the billing is not a Uniswap bill. Both belong to The Graph. You sign up there, you pay there, and Uniswap is not in the transaction at all.
Uniswap also adds a disclaimer to the deployments it lists, saying they are "not official deployments and may not be actively maintained by Uniswap Labs", and recommending that anyone running this in production deploy their own subgraph. That is an honest warning and it should be taken at face value: the thing you are about to depend on is community-run infrastructure that Uniswap has told you it does not maintain.
What The Graph costs, and why the cost is not the problem
Read off The Graph's own pricing page on 22 September 2026: 100,000 queries a month at no charge, then $2 per 100,000 queries after that, payable by card or in GRT.
That is a low price for what it is, and any article that tried to attack it would be wrong and easy to disprove. If the only thing standing between you and Uniswap data were the bill, there would be nothing here worth writing about.
The friction is shape and upkeep. A subgraph is scoped to one protocol version on one chain, so covering Uniswap properly means one endpoint per version per chain, each with its own schema quirks, its own sync state and its own maintainer. You write GraphQL against every one of them, you find out separately when any one of them falls behind, and Uniswap has already told you it is not the party keeping them alive.
v4 passed v3 on Ethereum in September 2026
Here is why the version-by-version thing matters more than it used to. Uniswap's three live versions on Ethereum, 24 hour volume, measured 22 September 2026:
v4 is now the larger of the two on Ethereum. Anyone still pointing a v3-only subgraph at Ethereum, which was entirely reasonable a year ago, is reading the smaller half of the market and will see a token's real volume as roughly half of what it is. Nothing breaks, no error is raised, the numbers are simply wrong in a direction that is hard to notice.
That is the maintenance cost the pricing page does not show you. It is not the $2. It is knowing the day the split moved.
Every DEX on Robinhood Chain is Uniswap
The second thing that turned up while measuring. Ask for every DEX on Robinhood Chain and three rows come back. All three are Uniswap.
No competing protocol appears in the response at all. I re-ran the call before publishing, because a result that clean usually means a filter left on somewhere. It was not one.
Note what this does to the version question. A v3-only subgraph on Robinhood Chain would capture $672m and miss the $541m running through v4 and v2, which is roughly 45% of the chain. The v4 pools are also where the long tail lives: 20,536 of the chain's 24,263 pools sit on v4, against 2,920 on v3.
Reading Uniswap pools without a subgraph
The other route is a REST call against an index that already covers every version on every chain. This is what DexPaprika does, and the call below needs no key, no signup and no GraphQL:
curl "https://api.dexpaprika.com/networks/ethereum/pools/search?dex_name=uniswap_v4&limit=3"That returns HTTP 200 with an object shaped {results, has_next_page, next_cursor, query}. Each row carries id, dex_id, dex_name, chain, volume_usd_24h, volume_usd_7d, volume_usd_30d, liquidity_usd, transactions_24h, price_usd, fee, created_at, created_at_block_number, the four price_change_percentage_* windows and a tokens array.
Swap uniswap_v4 for uniswap_v3 or uniswap_v2 and the shape does not change, which is the actual point: one schema across versions and chains instead of one subgraph per pair of them.
Keyless calls work for trying this out. A free key from console.dexpaprika.com raises the rate and the quota, and the current numbers for every tier live on the pricing page rather than in this article, because they move. One thing worth knowing before you build on it: data on the free tier can be up to 60 seconds behind. Real-time is the paid tier.
Which chains carry which Uniswap versions
Uniswap's trading API supports 21 mainnets. DexPaprika indexes Uniswap market data on 13 of them, measured 22 September 2026:
Be clear about what that table does and does not claim. Uniswap's trading API reaches more chains than this list. The claim here is narrower: on these 13, the market-data question that Uniswap's API does not answer is answered, under one schema, without a subgraph per version.
There are per-chain pages with a live swap feed for Uniswap on Ethereum, Base, Arbitrum, Polygon and Monad.
Common questions
Does Uniswap have an API?
Yes, the Swapping API, with four documented endpoints for approvals, quotes, UniswapX orders and classic swaps. It is built for placing trades. It does not return pool reserves, historical prices, OHLCV candles or swap history.
Do you need an API key for Uniswap?
The Swapping API takes a key in an x-api-key header. For data, the key you need is a Graph API key created in The Graph's Studio, and it is The Graph that bills you for it.
Does the Uniswap API give historical prices?
No. Historical prices and candles come from a subgraph you query on The Graph, or from a market-data API that indexes Uniswap pools directly.
What happened to the Uniswap hosted subgraph?
It was deprecated. Uniswap's docs now direct you to the decentralized network, with a key from The Graph's Studio, and note that the deployments listed are not official and may not be actively maintained by Uniswap Labs.
Which Uniswap version should I index?
On Ethereum, as of 22 September 2026, v4 carries more 24 hour volume than v3, and v2 is still doing $62m a day. Indexing one version in isolation will understate any token that trades across several.
Is there a Uniswap API rate limit?
Uniswap documents its Swapping API limits against your key. For the data path there is no single Uniswap limit to quote, because you are querying The Graph under The Graph's terms, or a third-party API under theirs.
How these numbers were measured
Everything above was read off a live source on 22 September 2026.
The endpoint and chain lists come from developers.uniswap.org, read that day. The two quoted sentences are Uniswap's own wording from its subgraph documentation. The Graph's figures come from The Graph's pricing page.
The volume tables are one GET /networks/{chain}/dexes call per chain against api.dexpaprika.com, keyless and paced, summing the Uniswap entries on each chain. Every figure in a given table comes from the same response, which matters more than it sounds: the chain-level totals in GET /networks and the per-DEX totals in /dexes are computed separately and land about half a tenth of a percent apart, enough that dividing one by the other can produce a share above 100%. That is why the Robinhood Chain section states what the chain is made of rather than quoting a percentage.
Every number is a 24 hour window closing on the measurement, so expect it to have moved by the time you read this. The version split on Ethereum is the claim most likely to age, and it is the one worth re-running before you rely on it.
Two things I checked that came back negative, in case you go looking for them. /networks/{chain} is not an endpoint and returns 404 on every chain including Ethereum, so do not build against it. And the search results rows carry no pair field, whatever older examples elsewhere may show.
Full REST reference at docs.dexpaprika.com. If you want the consumer side of Uniswap instead, we have a step by step guide to swapping tokens on Uniswap.
The same question for two other DEXes: what the Raydium API covers on Solana, and what PancakeSwap documents for BNB Smart Chain.
Related articles
- Best Crypto API in 2026: Top 5 Data Providers Compared
- How to measure buy/sell pressure on a DEX pool
- How to get a token price by contract address (any chain)
- How to get live crypto prices into Claude and ChatGPT (MCP server setup)
- Free crypto historical data API: how far back can you actually go?
- How to detect liquidity drains on DEX pools
Latest articles
- PancakeSwap API: what exists, what is archived, and what to call
- Raydium API: what it covers, and what a Solana DEX API adds
- The Stablecoin Wars: Market Share, Strategy, and What Comes Next
- CBDCs vs. Stablecoins: Two Visions for the Future of Digital Money
- Stablecoin De-Pegging Events: When the Dollar Breaks and Why
- The Global Stablecoin Regulation Wave: US GENIUS Act, EU MiCA, and Beyond
Coinpaprika education
Discover practical guides, definitions, and deep dives to grow your crypto knowledge.
Cryptocurrencies are highly volatile and involve significant risk. You may lose part or all of your investment.
All information on Coinpaprika is provided for informational purposes only and does not constitute financial or investment advice. Always conduct your own research (DYOR) and consult a qualified financial advisor before making investment decisions.
Coinpaprika is not liable for any losses resulting from the use of this information.