# GraphAdvocate Uniswap Trader Profiler

> GraphAdvocate Uniswap Trader Profiler is a paid API for AI agents from graphadvocate.com, paid per call via x402, $0.02/call, status unknown (last checked 2026-09-14).

Identifies who is buying and selling a specific token on Uniswap, profiling each wallet's buy/sell volumes and net position stance (accumulator, distributor, accumulating, or distributing).

## Facts

- Endpoint: POST https://graphadvocate.com/uniswap/traders
- Price: $0.02/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/graphadvocate-uniswap-trader-profiler-4ab65bfc
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_xyUVXjgTuasFhZUWECJEu

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability graphadvocate-uniswap-trader-profiler-4ab65bfc -d '<json body>'
```

Example prompt: Who is trading PEPE on Uniswap right now — show me the top 20 wallets, whether they're buyers or sellers, and their net positions so I can see who's accumulating vs distributing.

## When to prefer this

Use this endpoint when you need to understand the composition of traders for a specific Uniswap token — who is accumulating versus distributing — especially as a precursor to feeding wallets into a reputation or skill scoring pipeline. Prefer this over generic DEX analytics when you need per-wallet stance classification rather than aggregate volume stats.

## Known failure modes

- Token not found or insufficient liquidity on Uniswap returns empty results
- Invalid token address format returns a 400-level error
- Unsupported chain returns an error or empty dataset
- limit parameter out of range may be capped or rejected
- Network or RPC timeout may result in partial data or failure

## How this service works

Who is trading a token on Uniswap, and which way. POST {token, chain?, limit?}. Aggregates a recent swap sample on the deepest venue by trader EOA and returns per-wallet buys/sells/volume_usd/net_token plus a stance (accumulator / distributor / accumulating / distributing). Wallets are profiling input — feed them to /agent/score to find out who is on the other side.

## Output

Returns a list of wallet EOA addresses each with: buy volume (USD), sell volume (USD), total volume (USD), net token amount, and a stance classification (accumulator, distributor, accumulating, or distributing). Covers recent swaps on the deepest Uniswap venue for the token.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "chain": {
   "type": "string"
  },
  "limit": {
   "type": "integer"
  },
  "token": {
   "type": "string"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "token": {
   "symbol": "WETH"
  },
  "venue": {
   "pair": "USDC/WETH",
   "fee_tier": 500
  },
  "sample": {
   "swaps_scanned": 200,
   "unique_wallets": 131
  },
  "traders": [
   {
    "buys": 3,
    "sells": 10,
    "stance": "distributing",
    "wallet": "0x5b43453f…",
    "volume_usd": 222360
   }
  ]
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/graphadvocate-uniswap-trader-profiler-4ab65bfc/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from graphadvocate.com](https://www.zero.xyz/host/graphadvocate.com/llms.txt)
