Uniswap v4 position data, without running an indexer

One JSON API for liquidity positions and pools — underlying value, uncollected fees, PnL, APR and in-range state — covering Uniswap v4 on Ethereum and Avalanche. Skip the subgraph, the archive-node bill and the tick maths.

Free tier, no card. Positions re-price roughly every 5 minutes; on-chain fee state refreshes about hourly on Ethereum.

What you get

The same data that powers the public dashboard at /explore — that page is the demo, and it runs on these endpoints.

Positions, already priced

Underlying value, uncollected fees, collected fees, gas cost, PnL, APR and in-range state per position — open and closed.

Pools, ranked

TVL, volume, fee APR, fee tier and token metadata for every v4 pool we index, sortable and paginated.

Keys for servers and browsers

Server keys are rejected when a request carries an Origin header. Browser keys are bound to the site URLs you list, so a leaked key is useless elsewhere.

Metered in units

Endpoints cost different amounts — a chart costs more than a list. Your plan buys units per calendar month, and every response carries the quota headers.

Five minutes to your first call

  1. Create an account — you land on the Free plan straight away.
  2. Create an API key in your dashboard, and copy it. It is shown exactly once.
  3. Send it as the KC-APIKey header on any /v1 endpoint.
  4. Watch the units land in your dashboard, and upgrade when you outgrow Free.
curl -H "KC-APIKey: $COPYPOOLS_KEY" \
  "https://copypools-backend.easyfi.tech/v1/positions?chainId=1&protocol=uniswap-v4&limit=20"

Coverage, stated plainly

Uniswap v4 on Ethereum and Avalanche. That is the whole list — a request for another protocol version is rejected rather than quietly served from thin data. Position charts are reconstructed from transaction amounts and are indicative, not an audit trail.