Skip to main content
The live counterpart to the Bundle Snapshot endpoint. Subscribe to a token and receive its bundles as they are detected and as the wallets trade, a KOL plus the side wallets buying alongside it in the same block. Each wallet carries a full live position, and side wallets carry the on-chain proof fields. This stream is Solana only. On subscribe to a concrete token you get an init snapshot with the current bundles, then kol_bundle events as the detector and the market cap update.

Endpoint

Connect to wss://stream.cabalspy.xyz.

Authentication

Provide your API key as a query parameter, wss://stream.cabalspy.xyz?apiKey=YOUR_KEY, or as a header, Authorization: Bearer YOUR_KEY. Invalid keys are closed with code 1008.

Subscribe

To start receiving data, send a subscribe message after the connection opens. You choose which token to watch.
Subscribe to one token
The token field decides what you watch. Use a token mint address to follow one token, or the value "" to follow every tracked token. Following one token also gives you an initial snapshot of its current bundles, "" does not.
string
required
The operation. Use subscribe to start.
string
required
Set to bundle for this stream.
string
required
Which token to watch. Either a token mint address for one token, or ”*” for all tracked tokens. A single mint also returns a starting snapshot of its bundles.
string
default:"full"
How much you want to receive. See the modes below.
integer
Optional. Only used with mode full. See the modes below.

Choosing a mode

The mode decides whether you also receive live price driven updates, not just detection and trade events. This is the main control over how many messages, and how many credits, you use. With mode full you can slow down the market cap updates to save credits. Set mc_interval to a number of seconds from 1 to 30, and you get at most one price update per token in that window. Leave mc_interval out to get every update live.
Full, but at most one price update every 5 seconds
Events only, no price updates at all
Setting mc_interval together with mode events does nothing, because events never sends price updates in the first place.

Unsubscribe and other operations

To stop receiving a token, send the same token with op unsubscribe.
Unsubscribe
To see what you are currently subscribed to, send op subscriptions. To check the connection is alive, send op ping and you get a pong back.
List your subscriptions

Events

init on subscribe to a concrete token, then kol_bundle as bundles change.
string
init or kol_bundle.
object

Billing

Each delivered event counts against your plan. In mode full a busy token can produce frequent updates as the market cap moves, use mc_interval to throttle them or mode events to receive only detection and trade events.

Heartbeat

The server sends WebSocket pings and expects pong, which standard clients answer automatically. You can also send op ping at any time.