api.dexscreener.com answers 429
Check How many requests per minute does the script send to that endpoint?
Fix Slow down to the listed limit and cache results. More IPs are not the fix for a published limit.
Research DEX markets from networks that block them — and match every token by its contract address, not its name.
DEX sites are blocked in mainland China: GreatFire's latest tests fail for app.uniswap.org, uniswap.org and dexscreener.com, and every geckoterminal.com URL it has tested is listed as blocked. Researchers there need an exit abroad just to read pools and charts.
The data comes through an API with per-minute limits. DexScreener's API at api.dexscreener.com returns pairs by chain and pair address and the pools of a token by its address, and endpoints such as token profiles are limited to 60 requests per minute. Its website answered a plain script request with 403 in our check, so automate through the API and keep the site for the browser.
Names mislead; addresses don't. In our check a DexScreener search for “WETH USDC” returned 30 pairs, none of them on Ethereum and several with spam token names, while a lookup by WETH's contract address returned its real pools. Match every token by chain and contract address before you trust a price.
Scroll horizontally with the arrow keys to read all content.
| Criterion | Choose | Why |
|---|---|---|
| Product | Rotating residential proxy | A household IP in the country you choose |
| Billing | By traffic, Premium or Budget line | API replies and charts are light; you pay per GB used |
| How many endpoints | One per researcher or script | Each keeps its own sticky session |
| Country | Where DexScreener and the DEX front end load | Nothing is preselected for Web3 — choose before you generate |
| Protocol | HTTP (preselected) or SOCKS5 | HTTP works in browsers, Python and curl |
| IP changes | Sticky in the chosen country, not permanently fixed | With a wallet connected, use a static ISP IP instead |
The “Configure DEX research proxies” button opens rotating residential proxies for the Web3 use case, billed by traffic. Buy traffic for the line you choose, then pick the region before you generate.
Scroll horizontally with the arrow keys to read all content.
| Criterion | Static ISP | Rotating residential | Datacenter |
|---|---|---|---|
| What you get | A home-broadband IP fixed to you for the whole term | Household IPs: a sticky session in the country you pick, or rotation on the Budget line | Fixed IPs in data centres — the console's fastest and cheapest option |
| Price | Per IP and term, shown in PTC before you pay (1 PTC = US$1) | Per GB: Budget US$1.50, Premium US$5.00, from 1 GB | Per IP and term, shown in PTC before you pay |
| Best for DEX research | Using a DEX front end with your wallet connected — one fixed IP | Reading DexScreener, GeckoTerminal and DEX pages from blocked networks | Polling the DexScreener API from your own server within its limits |
Prices in US dollars; you pay with PTC credit (1 PTC = US$1). Top up your wallet, then buy the line you need. Auto-renew isn't available yet, so renew static IPs in My assets before their term ends.
The “Configure DEX research proxies” button opens Rotating Residential Proxies with the Web3 use case selected. Choose the Line, then under Traffic allowance click Add traffic and buy a package or enter Custom GB. Under Connection settings keep Exit mode at Choose region / sticky IP, pick the Region and Protocol, and click Review cost and generate.
Expected result Your configuration lists By traffic, Web3, Choose region / sticky IP and the region.
After payment the console opens My assets. Choose View credentials on the new proxy and copy the endpoint (host:port), username and password.
Call the token-pairs endpoint with the chain and token address, as in the example below, or open dexscreener.com in a browser profile that uses the same proxy. Keep a list of the contract addresses you track.
Stay under the per-minute limit DexScreener lists for each endpoint, cache results, refresh them on a schedule and back off on 429.
Expected result The script lists pools with DEX, pair address, price and liquidity, without 429 errors.
Scroll horizontally with the arrow keys to read all content.
# pip install requests
import requests
PROXY = "http://USERNAME:PASSWORD@HOST:PORT" # residential endpoint from My assets
PROXIES = {"http": PROXY, "https": PROXY}
CHAIN = "ethereum"
TOKEN = "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2" # WETH: match tokens by address, not by name
r = requests.get(f"https://api.dexscreener.com/token-pairs/v1/{CHAIN}/{TOKEN}", proxies=PROXIES, timeout=30)
r.raise_for_status()
pairs = sorted(r.json(), key=lambda p: (p.get("liquidity") or {}).get("usd") or 0, reverse=True)
for p in pairs[:5]:
print(p["dexId"], p["pairAddress"], f'{p["baseToken"]["symbol"]}/{p["quoteToken"]["symbol"]}',
"price USD", p.get("priceUsd"), "liquidity USD", (p.get("liquidity") or {}).get("usd"))
Lists the most liquid pools for one token on one chain. Replace CHAIN and TOKEN with what you research, and pace requests to the per-minute limit DexScreener lists for each endpoint.
Check How many requests per minute does the script send to that endpoint?
Fix Slow down to the listed limit and cache results. More IPs are not the fix for a published limit.
Check Is it the token's real contract address on that chain?
Fix Look it up by address. Search results include look-alike tokens with copied or spam names.
Check Does ipinfo.io in the same browser show the proxy's country? On a mainland China network, is the Proxy302 Helper running?
Fix Fix the browser's proxy or start the Helper. If a front end restricts your region under its own terms, follow those terms.
This setup is for research. If a DEX front end restricts your country under its terms, a proxy doesn't change who you are — follow the terms and your local rules. For wallet sessions, use a static ISP IP.
Anyone can deploy a token with any name. In our check a DexScreener search for “WETH USDC” returned no Ethereum pairs and several spam names, so always filter by chain and contract address.
Each endpoint lists its own; endpoints such as token profiles allow 60 requests per minute. Cache results and back off on 429.
Residential for browser work and API calls from blocked networks, billed per GB; datacenter for a server that polls the API all day within its limits.
No. Prices and pools come from the chain and the data provider; the proxy only changes where your request comes from.
Third-party source · Checked:
Read on 2026-10-18: app.uniswap.org (latest conclusive test 2026-09-24), uniswap.org (2026-08-20) and dexscreener.com (2026-08-28) were blocked; every tested URL on geckoterminal.com is listed as blocked.
Independent connection tests; individual networks can differ.
Official documentation · Checked:
Base URL https://api.dexscreener.com; endpoints include /latest/dex/search, /latest/dex/pairs/{chainId}/{pairId} and token pairs by chain and token address; endpoints such as /token-profiles/latest/v1 are rate-limited to 60 requests per minute.
Local example · Checked:
On 2026-10-18 a search for “WETH USDC” returned 30 pairs, none on Ethereum and several with spam token names; GET /token-pairs/v1/ethereum/0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2 returned 30 WETH pairs with chainId, dexId, pairAddress, baseToken, quoteToken, priceUsd and liquidity. The same day dexscreener.com answered a plain curl request with 403 behind Cloudflare, and api.dexscreener.com is served through Cloudflare.
Responses change with the market; checked without a proxy.
Product observation · Checked:
Read in the console source on 2026-10-18: for the Web3 use case the rotating residential page bills by traffic on a Premium or Budget line (a prepaid package, or PTC wallet debit where your account offers it), starts in Choose region / sticky IP mode — a sticky session in the chosen country, not a permanently fixed IP — and allows Global rotation only on the Budget line with prepaid traffic. HTTP or SOCKS5; each generation creates one endpoint. Its Web3 note reads “Public information research: Actual traffic billing · HTTP CONNECT / SOCKS5 · choose region · respect service limits”.
Product observation · Checked:
Budget rotating residential US$1.50 per GB and Premium US$5.00 per GB, both from 1 GB; account credit in PTC at 1 PTC = US$1.00; static ISP and datacenter leases depend on region, quantity and term and are shown before you pay — as published on the pricing page (checked against the production catalogue on 2026-10-09).
Create an account, top up once and pick rotating residential, static ISP or datacenter. Rotating residential exits cover 195+ countries and regions.