CRIUS

WebSocket API

Robinhood Chain WebSocket API

The Crius WebSocket API pushes Robinhood Chain events to you as each block is decoded: trades, prices, live candles, new pools, new launches, graduations, liquidity and tax changes, and wallet activity. One connection carries many subscriptions, and missed messages can be replayed after a reconnect.

  • History from block 0
  • REST + WebSocket
  • Free plan: 1M credits / month
  • Robinhood Chain · chain ID 4663

Try it

A real request and its response

Captured from the live API, trimmed for length. Replace $CRIUS_API_KEY with your key; calls without that header work keyless at 2 requests a second.

Subscribe to WETH trades and every new pool Real response, trimmed
Request
wscat -c "wss://api.crius.sh/v1/robinhood/stream" -H "x-api-key: $CRIUS_API_KEY"
> {"op":"subscribe","channels":["trades:0x0bd7d308f8e1639fab988df18a8011f41eacad73","pools:new"]}
Response
{
  "block": 96714546,
  "ch": "trades:0x0bd7d308f8e1639fab988df18a8011f41eacad73",
  "data": {
    "amount_base": 0.000272253894809751,
    "amount_quote": 0.644478,
    "block": 96714546,
    "dex": "uniswap_v3",
    "id": "96714546-2-6",
    "pool": "0x52e65b17fb6e5ba00ed806f37afcd2daa50271ca",
    "price_usd": 2367.19,
    "signer": "0x0312f70169d6919a6e54c0c9b67ea554986e4980",
    "symbol": "WETH",
    "tax_pct": null,
    "token": "0x0bd7d308f8e1639fab988df18a8011f41eacad73",
    "trader": "0x0312f70169d6919a6e54c0c9b67ea554986e4980",
    "ts": 1792839690000,
    "type": "buy",
    "value_usd": 0.644478
  },
  "seq": 437,
  "ts": 1792839690000
}

{
  "block": 96714910,
  "ch": "pools:new",
  "data": {
    "dex": "uniswap_v4",
    "fee": 8388608,
    "hook": {
      "address": "0x4e3468951d49f2eea976ed0d6e75ffcb44a9a544",
      "permissions": [
        "beforeInitialize",
        "afterAddLiquidity",
        "afterRemoveLiquidity",
        "afterSwap",
        "afterSwapReturnDelta"
      ]
    },
    "pool": "0x2e697de04d495ccca24e86afcdc620f60879d01bab340979b58297d804a0167f",
    "tick_spacing": 8,
    "token0": "0x0bd7d308f8e1639fab988df18a8011f41eacad73",
    "token1": "0x5e7d3e41cfd21bc793db067d828675b23e9b13fa"
  },
  "seq": 40,
  "ts": 1792839727000
}

Two real messages: a trade and a new Uniswap v4 pool with its hook permissions. Every message has the same envelope (ch, seq, block, ts, data); seq lets you resume after a reconnect.

What you get

Built for Robinhood Chain, not bolted on

  • Channels for every need

    trades:, trades:pool:, price:, candles::, token:, tax:, lp:, wallet:

    , dev:
    .

  • New pools and launches

    pools:new (every v2/v3/v4 pool, with hook permissions), launches: and graduations: for Pons, Flap.sh and the others.

  • Resume after reconnects

    Send the last seq per channel and get the messages you missed (up to 60 seconds) before live data continues.

  • Reorg-aware

    A reorg message names the common ancestor; removed events are re-sent with removed: true. Or subscribe with finality: "safe" to get settled data only.

  • Sub-second

    Messages go out as soon as a block is decoded, typically well under a second after it was produced.

  • Browser-friendly

    Authenticate with the x-api-key header, or ?api_key= where headers can't be set.

Endpoints

The calls behind it

Base URL https://api.crius.sh, chain segment robinhood (or 4663). Every response is {data, meta} with the block it reflects.

EndpointReturnsPlanCredits
WS /v1/{chain}/stream One connection, many channels; subscribe, unsubscribe, resume, ping Free+ 1

Use cases

  • Trading terminals and bots
  • New pair and launch snipers' monitors
  • Live price tickers
  • Wallet watchers and alerts
  • Real-time dashboards

Plans and limits

Streaming needs a key on the Free plan or higher (1 credit per connection). Free: 1 connection and 10 subscriptions; Starter: 3 and 100; Pro: 10 and 1,000; Business: 50 and 10,000. The all-trades firehose is Enterprise.

Questions about the WebSocket API

Is there a free Robinhood Chain WebSocket API?

Yes. The free plan includes one WebSocket connection with up to 10 subscriptions, enough for a bot following a few tokens plus new launches.

What happens if my connection drops?

Reconnect and send {"op":"resume","seqs":{channel: lastSeq}}. You get the messages you missed (up to 60 seconds) and then live data.

Can I stream every trade on the chain?

The firehose:trades channel streams every trade and is part of the Enterprise plan. Most apps subscribe per token, pool or wallet instead.

How do I detect new pools?

Subscribe to pools:new. Every new Uniswap v2, v3 or v4 pool is pushed with its tokens, fee and, for v4, the hook and its decoded permissions.

How are chain reorganisations handled?

A reorg message names the common ancestor and removed events are re-sent with removed: true. If you only want settled data, subscribe with finality: safe.

Start with the free plan

1,000,000 credits a month, no card. Your key in under a minute.