Token buyers and sellers
Who bought and who sold a token lately: the wallets that took the most of an ERC-20 from DEX pools and routers (buyers) or sent the most to them (sellers) over recent blocks, from its live Transfer logs on Base (default), Ethereum, Arbitrum, Optimism or Polygon, with bought, sold, net and transfers. Contracts are left out; plain wallet-to-wallet moves only count in netAll. Use to see who accumulates or dumps a token before you trade it.
Guide: Token buyers and sellers API
Inputs
| Name | Type | Description |
|---|---|---|
token (required) | string | Token: 0x ERC-20 address, or a ticker such as AERO, DEGEN or USDC |
chain | string | base (default), ethereum, arbitrum, optimism or polygon |
blocks | integer | How many recent blocks to read, 100 to 10000 (default 1800: about an hour on Base, 6 hours on Ethereum) |
limit | integer | Buyers and sellers to return each, 1 to 20 (default 10) |
Request
Over HTTP, with a card key from /credits:
curl -H "Authorization: Bearer adt_…" "https://agent-data-tools.revmesh2074.workers.dev/token/buyers?token=0x940181a94A35A4569E4529A3CDfB74e38FD98631"
Or one of your 25 free calls, no key:
curl "https://agent-data-tools.revmesh2074.workers.dev/token/buyers?token=0x940181a94A35A4569E4529A3CDfB74e38FD98631&trial=1"
Without a key, the same URL answers 402 Payment Required with x402 and MPP terms, so an agent with a wallet pays per call in USDC (Base, Polygon, Arbitrum or Solana over x402; Base or Tempo over MPP) and retries.
Example result
{
"chain": "Base",
"token": {
"address": "0x940181a94A35A4569E4529A3CDfB74e38FD98631",
"symbol": "AERO",
"decimals": 18
},
"fromBlock": 37001200,
"toBlock": 37002999,
"transfersRead": 1840,
"truncated": false,
"dexContractsSeen": 12,
"buyers": [
{
"address": "0x3333333333333333333333333333333333333333",
"bought": "15230.5",
"sold": "0",
"netViaDex": "15230.5",
"netAll": "15230.5",
"transfers": 4
}
],
"sellers": [
{
"address": "0x4444444444444444444444444444444444444444",
"bought": "0",
"sold": "8800",
"netViaDex": "-8800",
"netAll": "-8800",
"transfers": 2
}
],
"note": "Bought and sold count transfers from and to DEX pools, routers and other busy contracts; netAll includes plain wallet-to-wallet moves. Contracts are left out of the lists."
}
From an AI agent (MCP)
Add the MCP server to Claude, Cursor or any MCP client. This tool is token_buyers, and the first 25 successful calls are free:
https://agent-data-tools.revmesh2074.workers.dev/mcp