Skip to main content
Our curated calls, live. Every call that goes to the CabalSpy Discord arrives on this stream at the same moment, with the token, the market cap at the call, the wallets that triggered it and trading links. Calls follow fixed rules per tier, so you do not configure thresholds, you only pick chains and tiers. If you want your own cluster rules, use the Signal Stream. For past calls and their performance, use Calls and Call Stats.

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. With the public demo key, calls arrive 15 minutes late.

Chains and tiers

Subscribe

Send a subscribe message after the connection opens. The channel is call. followed by a chain, or call.* for every chain. tiers is optional, without it you get every tier.
One chain, two tiers
Every chain, every tier
The same with separate fields
string
required
subscribe, unsubscribe or subscriptions.
string
call.solana, call.bnb, call.eth, call.rh or call.*. Alternatively send stream call with a blockchain field.
array
Any of gamble, moderate, good, big, whale. Omit for every tier.
One subscription per channel: subscribing to the same channel again replaces its tiers. The reply confirms the channel and the tiers it parsed.
Reply

Unsubscribe and other operations

Unsubscribe
List your call subscriptions
The call stream runs next to every other stream on the same connection, so you can combine it with tx, count or signal subscriptions.

Event

Each call delivers a call event. The data object is the same call object that Calls returns, without the performance block, because performance is only known 24 hours later.
string
call.
string
call. followed by the chain of the call, for example call.solana.
object

Billing

Like signals, every delivered call deducts a fixed number of credits and is logged. Subscribing is free.

Heartbeat

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