Pump.fun API: what it covers, and what a Solana DEX API adds
Pump.fun publishes two Solana programs and an SDK, not a REST API. On 23 September 2026, Pump.fun and PumpSwap together carried 69.65% of Solana DEX volume in DexPaprika's index.

The short answer. According to DexPaprika data, on 23 September 2026 Pump.fun's bonding curve and PumpSwap together carried 69.65% of Solana DEX volume. Yet Pump.fun does not run a REST API. What it publishes is a program interface: two on-chain Solana programs, an Anchor IDL for each, a TypeScript SDK and a Rust crate, all in one public GitHub repository. There is no endpoint that returns JSON over HTTP with a documented shape.
An undocumented frontend API exists behind the website and answers some calls, but it is unofficial, it has no candle endpoint, and a trades path from a community-documented list returned an error every time I tried it. For price history and a swap feed you go elsewhere.
Pump.fun is a strange case for an API article, because the product most people mean by "the Pump.fun API" was never built for outside developers. It is the interface the pump.fun website itself calls, found by reading network requests rather than a docs page, because there is no docs page for it.
What Pump.fun does publish for developers is a program interface: two Solana programs, an Anchor IDL and official SDKs. Below is what that surface contains, what the unofficial frontend calls look like today, how a coin moves from the bonding curve to PumpSwap, and what Solana's DEX volume looked like on 23 September 2026. Method at the end.
What Pump.fun actually publishes for developers
The official source is a GitHub organization, github.com/pump-fun, and inside it one repository, pump-public-docs. It documents two on-chain programs rather than a hosted service:
I searched every file in that repository for the words a market-data API would use. None of the docs, the FAQ, the CPI guide or the SDK readme contain "ohlcv", "candle", "kline", "chart", "rest api" or "market data". What they do contain, in detail, is fee structure, holder-reward accounting and the exact accounts each instruction expects. This is a repo for people sending transactions.
There is no key and no header, because there is nothing to call over HTTP. The closest thing to a keyless request is reading a program account straight off Solana's public RPC:
curl https://api.mainnet-beta.solana.com -X POST -H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"getAccountInfo","params":["ADyA8hdefvWN2dbGGWFotbzWxrAvLW83WG6QCVXvJKqw",{"encoding":"jsonParsed"}]}'That address is PumpSwap's GlobalConfig account, and the call answers with raw account bytes, a base64 blob you decode yourself against pump_amm.json. It works, it needs no key, and it is also the whole distance between Pump.fun's "keyless" and an actual keyless JSON API: one gives you a price, the other gives you a byte string and an IDL to read it with.
How a coin graduates from the bonding curve to PumpSwap
Every coin launches on the Pump program's bonding curve, which prices trades off synthetic reserves modeled on Uniswap v2 rather than a real pool, so there is liquidity from the first buy with nothing seeded up front. Once a coin's bonding curve reaches the market cap Pump.fun's own configuration sets as the migration point, the migrate instruction moves the curve's reserves into a new PumpSwap pool and burns the LP tokens that pool issues, so nobody, including Pump.fun, holds a redeemable claim on that liquidity afterward. From that point the coin trades on a standard constant-product AMM, which is why the same token shows up as two different venues, bonding curve and PumpSwap, depending on which side of graduation you catch it on.
The unofficial frontend API, and where it broke today
Pump.fun's own website calls a set of undocumented endpoints under frontend-api-v3.pump.fun. They are not in the GitHub repo and not covered by any support channel. Community projects have reverse-engineered and published lists of them, which is how I knew where to look. Label everything below unofficial: it can change or disappear without a changelog entry.
A per-coin lookup works. Calling it for a live bonding-curve token on 23 September 2026:
curl "https://frontend-api-v3.pump.fun/coins/DJZF7e7MtR5XLFBJy9oaPQqLJwh1MVrVxFfB7hgvpump"
HTTP 200, fields include: mint, bonding_curve, complete, virtual_sol_reserves,
virtual_token_reserves, real_sol_reserves, real_token_reserves, market_cap, usd_market_capThat is a real-time snapshot of one bonding curve, useful if you already know the mint, but a snapshot with no history behind it. I found no candlestick endpoint at any guessed path, and a per-trade endpoint from a widely used community spec, /trades/all/{mint}, answered HTTP 400 on every call I made that day, asking for a chainId parameter it would not accept in any form I tried, including the one its error message describes. A second undocumented host, advanced-api-v2.pump.fun, answered every request with HTTP 530, a Cloudflare origin error. On the day I checked, part of it did not work.
Pump.fun and PumpSwap were 69.65% of Solana DEX volume on 23 September 2026
DexPaprika indexes the bonding curve and PumpSwap as two separate DEXes on Solana, which is the direct consequence of graduation splitting a coin's life into two venues. Here is every DEX its index carried for Solana that day, by 24 hour volume:
PumpSwap alone was 67.54% of the day. Add the bonding curve's $91,374,415 and the Pump ecosystem, launchpad plus AMM, reached $3,017,213,078, which is 69.65% of DexPaprika-indexed Solana DEX volume. Pump.fun also ran more pools than anyone else on the list, 45,362 of them, which tracks with what the bonding curve is for: a constant stream of new coins, most of which never graduate.
That split matters for anyone building on this data. A tool that only watches PumpSwap sees every graduated coin and misses every coin still on the curve, which on pool count is most of them. A tool that only watches the bonding curve loses every coin the moment it succeeds enough to migrate. Covering the Pump ecosystem means covering both DEX ids.
Candles and swaps for a Pump.fun pool
This is the pair of calls neither Pump.fun's official docs nor its unofficial frontend answer. Both work without a key. I ran them on 23 September 2026 against a live bonding-curve pool.
Hourly candles for that pool:
curl "https://api.dexpaprika.com/networks/solana/pools/Fbvf7aSUHK7QjPgde5U4vjPXzKsTeQn9ERBpUVFEwmMA/ohlcv?start=2026-09-23T12:00:00Z&interval=1h&limit=5"That returns candles carrying time_open, time_close, open, high, low, close and volume, the exact shape Pump.fun's own docs never define because the bonding curve never defines it either: price there is whatever the curve's reserves compute for the next trade, not a stored series.
Individual swaps for the same pool:
curl "https://api.dexpaprika.com/networks/solana/pools/Fbvf7aSUHK7QjPgde5U4vjPXzKsTeQn9ERBpUVFEwmMA/transactions?limit=3"Each row carries sender and recipient, token_0_symbol and token_1_symbol, both trade amounts, price_0_usd and price_1_usd, plus created_at and factory_id. That last field read 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P on every row, the same Pump program address published in Pump.fun's own repo, a useful cross-check that the index and the chain agree. Swap the pool address for a PumpSwap pool and the same two calls return the same shape, with factory_id reading PumpSwap's program address instead.
No key is needed to try both. A free key from console.dexpaprika.com raises the rate and the quota, and current numbers for every tier are on the pricing page rather than in this article, because they move. Free-tier data can be up to 60 seconds behind, and real-time is the paid tier.
Common questions
Is there a Pump.fun API?
Not a REST one that Pump.fun documents. What it publishes is two Solana programs, an Anchor IDL for each and official TypeScript and Rust SDKs, all built for sending transactions rather than reading market data.
Is there a PumpSwap API?
The same answer applies. PumpSwap is a Solana program, pAMMBay6oceH9fJKBRHGP5D4bD4sWpmSwMn52FMfXEA, documented with an IDL in the same repository as the bonding curve. There is no PumpSwap-specific REST endpoint.
Do you need an API key for Pump.fun?
No, because there is no hosted API to key. Interacting with the programs means signing Solana transactions with a wallet, not authenticating an HTTP request.
Does Pump.fun's API give historical prices or OHLCV?
No candle, OHLCV or kline endpoint appears anywhere in Pump.fun's official documentation, and I could not find one on the unofficial frontend host either. A per-coin snapshot exists there, current reserves and market cap, but it is not a time series.
Can I get Pump.fun swap history from an API?
Not a reliable one directly from Pump.fun. A trades endpoint is documented in third-party community references, but it returned HTTP 400 on every call I made on 23 September 2026. Parsing the Pump and PumpSwap programs' own transaction logs, or reading them from an index that already does, are the working options.
Should I index the bonding curve, PumpSwap, or both?
Both, on the evidence of 23 September 2026. PumpSwap carried 67.54% of Solana DEX volume that day and Pump.fun's bonding curve held more pools than any other venue, 45,362 of them. Watching one side misses either the volume or the long tail of coins that have not graduated yet.
How these numbers were measured
Everything above was read off a live source on 23 September 2026, UTC.
The program addresses, IDL filenames and SDK package names come from github.com/pump-fun/pump-public-docs, read directly, since no rendered docs site exists. The no-market-data-terms claim is a case-insensitive search across every markdown file in docs/ and the README for "ohlcv", "candle", "kline", "chart", "rest api", "swap history" and "market data", all zero matches. The Solana RPC call is a real POST to api.mainnet-beta.solana.com that returned HTTP 200.
The unofficial frontend calls, the coin lookup, the trades endpoint and the second host, are quoted as they answered that day. The coin lookup used a real, currently active bonding-curve mint found through a DexPaprika pool query. The trades endpoint path came from a public community specification, not my own guess, and the 400 is its live response to that documented format.
The Solana DEX table is one call to DexPaprika's DEX list for Solana (GET /networks/solana/dexes), which returns all nine DEXes in one response. Every figure in the table and the total come from that same response, so the rows agree. Shares are each DEX's volume divided by the sum of those nine rows, so they are shares of DexPaprika-indexed Solana DEX volume. The OHLCV and transaction calls are quoted verbatim and both returned HTTP 200.
Every volume figure is a 24 hour window closing on the measurement, so it will have moved by the time you read this. The bonding curve to PumpSwap split is the number most likely to look different in a month, since it tracks how many coins graduate and when, not something either program fixes in place.
Full REST reference at docs.dexpaprika.com. There are per-DEX pages with a live swap feed for Pump.fun and PumpSwap.
The same question for two other DEXes: what the Raydium API covers on Solana, and what the Uniswap API returns.
Related articles
- Orca API: 14 keyless endpoints, no candles, no trade feed
- Meteora API for DLMM, DAMM and DBC pools on Solana
- DEX market share by chain: who led each blockchain on 23 Sep 2026
- DexScreener API rate limits: the numbers and what stops you first
- Balancer API: what it covers, and a wind-down vote ahead
- PancakeSwap API: what exists, what is archived, and what to call
Latest articles
- Why Chainlink (LINK) has 70 prices: DEX pool prices explained
- Fake liquidity pool: how NSTR's oracle price was fooled at Nostra
- How to Backtest a Crypto Strategy: Data, Pitfalls & Overfitting
- Crypto Market Cycles: Accumulation, Markup, Distribution & Decline
- Top On-Chain Metrics Every Crypto Trader Should Track
- On-Chain Analytics Explained: Glassnode, Nansen & Arkham
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.