API

Live data (websocket)

New pons coins, graduations and trades as they happen.

Also on Solana

Same messages as the Solana websocket (subscribeNewToken, subscribeMigration, subscribeTokenTrade, subscribeAccountTrade). Events use EVM names.

Trades follow the coin across its whole life: on the pons bonding curve they come from the curve's Buy / Sell logs (venue: "pons", with the curve address); after graduation they come from the coin's Uniswap V4 pool on the PoolManager (venue: "uniswap-v4", with the poolId). Same shape either way: txType, token, trader (the wallet that sent the transaction, never the router), ethAmount, tokenAmount, priceEth, hash, block. Subscribe once with subscribeTokenTrade; nothing to re-subscribe at graduation.

WSwss://api.trenchy.tools/api/rh/data
JavaScript
const ws = new WebSocket('wss://api.trenchy.tools/api/rh/data?api-key=YOUR_API_KEY')
ws.onopen = () => ws.send(JSON.stringify({ method: 'subscribeNewToken' }))
ws.onmessage = (msg) => {
  const e = JSON.parse(msg.data)
  if (e.txType === 'create') console.log('new pons coin', e.symbol, e.token)
  else if (e.txType === 'buy' || e.txType === 'sell') console.log(e.txType, e.ethAmount, 'ETH by', e.trader)
}
Events
{ "txType": "create", "token": "0x…", "creator": "0x…", "name": "…", "symbol": "…", "image": "…", "curve": "0x…", "hash": "0x…", "block": 94883891 }
{ "txType": "buy", "token": "0x…", "trader": "0x…", "ethAmount": 0.01, "tokenAmount": 5823, "priceEth": 1.7e-6, "venue": "pons", "curve": "0x…", "hash": "0x…", "block": 94883902 }
{ "txType": "migrate", "token": "0x…", "venue": "uniswap-v4", "poolId": "0x…", "hash": "0x…" }
{ "txType": "sell", "token": "0x…", "trader": "0x…", "ethAmount": 0.0124, "tokenAmount": 599731, "priceEth": 2.06e-8, "venue": "uniswap-v4", "poolId": "0x…", "hash": "0x…", "block": 95697301 }