Beta · Public Preview

Stream
on-chain activity
in real time.

A single WebSocket connection. Pre-parsed transfers, swaps and exchange events streamed from every Pinax-supported chain — ready to render the moment they confirm.

<200ms
P95 push latency
10
Chains at launch
$0.50
Per 10K messages
wss://ws.pinax.network
Sample replay
Solana

Replay of real frames captured from the live streams — click any row to view the transaction in its explorer. msgs = billable WebSocket frames · events = trades / transfers unpacked from each frame. Typically one message per block per table — many events inside.

Stream
Why WebSockets

Push, don’t poll.

RPC polling burns requests, capacity and your roadmap. Open one socket, subscribe to what you care about, and let Pinax push fresh data the instant a block lands.

Sub-second push
<200msP95 from on-chain finality to your client. Transfers, swaps and exchange events arrive the moment they’re confirmed.
Persistent connection
One socket, many subscriptions. Multiplex blocks, transfers and swaps over a single TLS-encrypted connection — reconnect any time and pick the live stream back up.
Skip the polling tax
Stop spamming eth_getBlockByNumber. One subscription replaces hundreds of throwaway requests and dramatically lowers your egress bill.
How it works

Three lines. Live data.

Your app
new WebSocket(...)
subscribe───────►events ◄───
Pinax WS Gateway
subscribe · filter · fan-out
read───────►blocks ◄───
10 chains
archive nodes
Available streams

Pre-parsed streams,
one socket.

Live today: DEX swaps and token transfers across Solana and 8 EVM chains, plus HyperLiquid perp fills and Polymarket prediction-market orders. Each subscription is independently billed only for messages it actually pushes — more stream types coming.

Solana DEX Swaps
Normalized DEX swaps across Raydium, Orca, Meteora, Pump.fun and more — pre-parsed per trade.
Tables
swaps
Networks · 1
Solana
e.g. solana@swaps
Solana SPL & Native Transfers
SPL, SPL-2022 and native SOL transfers with parsed amounts, mints and owner accounts.
Tables
spl_transfersystem_transfer
Networks · 1
Solana
e.g. solana@spl_transfer
EVM DEX Swaps
Normalized DEX swaps across Uniswap, SunSwap and major AMMs.
Tables
swaps
Networks · 8
EthereumBaseArbitrumOptimismPolygonBSCAvalancheUnichain
e.g. mainnet@swaps
EVM ERC-20 & Native Transfers
ERC-20 transfers, ERC-20 token events and native asset movements.
Tables
erc20_transfers
Networks · 8
EthereumBaseArbitrumOptimismPolygonBSCAvalancheUnichain
e.g. mainnet@erc20_transfers
HyperLiquid Fills & Liquidations
Every Hypercore perp & spot fill with direction, size, price and closed PnL — plus a dedicated liquidations feed.
Tables
fillsfills_liquidation
Networks · 1
HyperLiquid
e.g. hyperliquid@fills
Polymarket CTF Exchange Orders
Prediction-market order flow from the CTF Exchange — maker/taker fills with share amounts and USDC notional.
Tables
ctfexchange_order_filledctfexchange_orders_matched
Networks · 1
Polymarket
e.g. polymarket@ctfexchange_order_filled
New · Market streams

Markets, streamed.

The latest additions to the gateway: HyperLiquid perp fills & liquidations and Polymarket CTF Exchange order flow. Here’s a replay of real events captured from the live streams.

HyperLiquid
Hypercore perp & spot fills · liquidations

Every fill on Hypercore with direction, size, price and closed PnL — and a dedicated stream that carries liquidations only.

/ws/hyperliquid@fills
Sample replay
Polymarket
CTF Exchange order flow

Prediction-market order fills from the CTF Exchange — outcome-token shares, implied odds and USDC notional per trade.

/ws/polymarket@ctfexchange_order_filled
Sample replay
Quickstart

Connect in three lines.

Bring your own client — any standard WebSocket library works. Authenticate with your Pinax API key, send one JSON-RPC subscription, and read messages off the socket.

import WebSocket from "ws";

// Subscribe via path: wss://<host>/ws/<chain>@<topic>?token=<API_KEY>
const ws = new WebSocket(
  `wss://ws.pinax.network/ws/solana@swaps?token=${process.env.PINAX_KEY}`
);

ws.on("open", () => console.log("connected"));

ws.on("message", (msg) => {
  const event = JSON.parse(msg.toString());
  console.log("swap →", event);
});
Server-side SQE filters

Cut bandwidth and billing by asking the gateway to drop non-matching events before they reach you — the same Substreams Query Expression language as Firehose substreams run -t. Pass ?filter= (alias ?sqe=) on connect, or send a SET_FILTER message to narrow live. Only matching events are delivered and billed.

  • tx_from:0xW || maker:0xW || taker:0xW — track one wallet across every role
  • 0xWALLET1 || 0xWALLET2 || … — watch many wallets at once (up to 512 terms)
  • protocol:raydium_cpmm && user:<addr> — a single protocol for a single user

field:value is case-insensitive equality on an events[*] column; a bare value matches any column. Combine with || (OR), && or whitespace (AND), ! (NOT) and ( ) grouping.

vs. RPC Polling

A better way
to read chains.

For anything resembling real-time, polling is a tax. Here’s what changes when you move to WebSockets.

Pinax WebSockets
RPC polling
Event latency
<200ms after confirmation
2–12s, bounded by your polling interval
Pre-parsed events
Transfers, swaps, perps decoded server-side
Raw logs only — decode & normalize yourself
Server-side filtering
SQE expression filters by address & field at the edge
Client-side after fetching full blocks
Connection overhead
One TLS connection, multiplexed
A request & response per poll
Live resume
Reconnect and pick the live stream back up
Manual cursor management
Best for
Live UIs, alerts, trading bots, indexers
Batch reads, historical queries
Pricing

Pay per message.
Nothing else.

No connection fees. No idle charges. No per-chain markup. You pay only for messages we actually deliver to your socket.

Usage-based pricing
$0.50
per 10K messages.

$0.00005 per message, billed alongside your other Pinax usage. Every account gets a generous free tier to get started.

  • Billed per message, not per event.
  • Heartbeats and protocol frames are free.
  • Same API key as RPC, Firehose, Token API.
Estimate your monthly bill
Messages / second
2
Hours per day connected
4h
Messages / month
864.0K
Effective rate
$0.50 per 10K
Est. monthly
$43.20
Available now

10 chains, day one.

Live across Ethereum, Base, Arbitrum, Optimism, Polygon, BSC, Avalanche, Unichain, Solana and HyperEVM. More chains turn on as their indexers come online.

EthereumBaseArbitrumOptimismPolygonBSCAvalancheUnichainSolanaHyperEVM
Stream
the power of
real-time blockchain data

Join Our Newsletter

Signup today to learn about our beta programs for your chain.