# true402 Whale Swaps Feed

> true402 Whale Swaps Feed is a paid API for AI agents from true402.dev, paid per call via x402, $0.005/call, status unknown (last checked 2026-09-15).

Returns recent large on-chain token swaps (whale trades) filtered by DEX, minimum USD size, direction, and block range

## Facts

- Endpoint: POST https://true402.dev/api/v1/base/whale-swaps
- Price: $0.005/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/true402-whale-swaps-feed-fdd9f1f3
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_QftUIazDsJkcVn85JYkhS

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 true402-whale-swaps-feed-fdd9f1f3 -d '<json body>'
```

Example prompt: Show me the last 100 whale swaps on Uniswap v3 where someone bought at least $50,000 worth, starting from block 20000000.

## When to prefer this

Use this endpoint when you need real-time or recent on-chain large-trade data from Uniswap v3 or Aerodrome, especially for whale-tracking, market sentiment, or DeFi arbitrage signal use cases. Prefer this over CEX trade feeds when you specifically need DEX on-chain swap data with block-level granularity.

## Known failure modes

- Invalid DEX value (not 'uniswap-v3' or 'aerodrome') returns error
- Limit outside 1–200 range may return validation error
- Invalid or future block number in 'since' returns empty or error
- Payment failure (HTTP 402) if wallet has insufficient USDC balance
- Network or indexer downtime returns 5xx error

## How this service works

The machine-native marketplace. Wallet = identity. Pay per call with HTTP 402.

## Output

A list of whale swap records matching the filters, each likely containing swap size in USD, DEX name, token pair, direction (buy/sell), and block number — up to the specified limit.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "dex": {
   "enum": [
    "uniswap-v3",
    "aerodrome"
   ],
   "type": "string",
   "description": "Filter: 'uniswap-v3' | 'aerodrome'"
  },
  "min": {
   "type": "number",
   "description": "Only swaps of at least this USD size (default 10000)"
  },
  "limit": {
   "type": "number",
   "description": "Max swaps (1–200, default 50)"
  },
  "since": {
   "type": "number",
   "description": "Only swaps at or after this block"
  },
  "direction": {
   "enum": [
    "buy",
    "sell"
   ],
   "type": "string",
   "description": "Filter: 'buy' | 'sell' (of the non-quote token)"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "chain": {
   "type": "string"
  },
  "count": {
   "type": "number"
  },
  "swaps": {
   "type": "array",
   "description": "dex, pool, token, quote (WETH/USDC), usdValue, direction (buy/sell of the token), amountQuote, block, ageBlocks, ageSecondsApprox, txHash"
  },
  "latestBlock": {
   "type": "number",
   "description": "Highest block the watcher has indexed"
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/true402-whale-swaps-feed-fdd9f1f3/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from true402.dev](https://www.zero.xyz/host/true402.dev/llms.txt)
