How to use CabalSpy: the keyless demo, where to get a free API key (1000
requests, no cost), pricing, documentation, and what the data covers. Call
this first if you do not have a key yet, or if another tool returned an auth
error or 'demo_limit_reached'.
无需输入参数。
Service health and current coverage: chains, wallet types, periods, limits and
how many wallets are tracked per chain. Useful when a query returns nothing and
it is unclear whether the data exists at all.
无需输入参数。
Identify a wallet address: is it tracked, and by what name. Returns the label
CabalSpy attached to it — name, Twitter, Telegram, wallet type and chain.
Start here when a user pastes an address and asks who it is.
On EVM chains the same address can be tracked on several of them and only the
first match is returned, so the reported chain may not be the intended one.
address: the wallet address to look up
输入参数address必填
Period statistics for ONE wallet: realized PnL, win rate, volume, trade counts,
active tokens and win-rate distribution. The main tool for "how is this trader
doing".
blockchain: solana, bnb, base, eth or rh
address: the wallet address
period: 6h, 1d, 7d or 30d (default 1d). Longer periods return far more data
and are trimmed harder; prefer the shortest period that answers it.
输入参数periodaddress必填blockchain必填
Top tracked wallets ranked by performance for a chain, wallet type and period.
Use for "best Solana KOLs today", "top whales this week", and similar.
blockchain: solana, bnb, base, eth or rh
wallet_type: kol, smart or whale. whale is Solana only.
period: 6h, 1d, 7d or 30d (default 1d)
limit: how many wallets (default 20)
输入参数limitperiodblockchain必填wallet_type
Browse the wallets CabalSpy tracks for a chain and wallet type. Use this to
answer which KOLs or smart money wallets are covered at all. Always pass a
limit; the full list runs into the thousands.
blockchain: solana, bnb, base, eth or rh
wallet_type: kol, smart or whale
limit: wallets per page (default 50)
cursor: pagination cursor from the previous response
输入参数limitcursorblockchain必填wallet_type必填
Lifetime trading history of a wallet: aggregate stats, a per-token overview and
the individual trades. Use for what a wallet traded historically, rather than
how it is doing now.
This endpoint returns its pagination inside the payload rather than alongside
it; follow pagination.next_cursor until it is null for a full export.
blockchain: solana, bnb, base, eth or rh
address: the wallet address
cursor: pagination cursor from the previous response
limit: trades per page, 1-1000 (default 50; higher values get trimmed anyway)
输入参数limitcursoraddress必填blockchain必填
Current onchain token holdings of a wallet, read live rather than derived from
tracked trades. Slower than the other wallet tools, often over a second. If
'loading' is true the data is still warming up — call again shortly.
blockchain: solana, bnb, base, eth or rh
address: the wallet address
输入参数address必填blockchain必填
Daily and monthly realized profit and loss for a wallet across its tracked
history. Use for when a wallet made or lost money, and for spotting streaks.
blockchain: solana, bnb, base, eth or rh
address: the wallet address
输入参数address必填blockchain必填
Other tracked wallets that traded the same tokens as this one over the last 30
days, ranked by overlap. Useful for finding groups that move together, which
can indicate coordination.
blockchain: solana, bnb, base, eth or rh
address: the source wallet address
limit: how many connections (default 25)
输入参数limitaddress必填blockchain必填
Statistics for up to 100 wallets in a single request. Much cheaper than calling
get_wallet_tracker repeatedly. Use when the user names several wallets, or to
follow up on a leaderboard.
blockchain: solana, bnb, base, eth or rh
addresses: up to 100 wallet addresses
wallet_type: kol, smart or whale (default kol)
period: 6h, 1d, 7d or 30d (default 7d)
输入参数periodaddresses必填blockchain必填wallet_type
Who is trading a token: how many KOLs, smart money wallets and whales hold it,
total bought and sold, buying pressure, first and latest entry, and the
individual traders with their positions. The main tool for "is anyone notable
in this token".
Note that market cap in USD comes back empty on this endpoint even for Solana;
get_token_holders reports it.
blockchain: solana, bnb, base, eth or rh
mint: token mint address on Solana, contract address on the EVM chains
wallet_type: restrict to kol, smart or whale. Omit to merge all types.
输入参数mint必填blockchain必填wallet_type
The tracked wallets holding a token, sorted by balance, with market cap and
price in USD on Solana. Use when the user asks who is still holding, rather
than who ever traded it.
blockchain: solana, bnb, base, eth or rh
mint: token address
wallet_type: restrict to kol, smart or whale. Omit to merge all types.
limit: how many holders (default 25)
输入参数mint必填limitblockchain必填wallet_type
Individual buys and sells by tracked wallets in one token, most recent first.
Use for the sequence of events, for example whether KOLs bought before or after
a price move.
blockchain: solana, bnb, base, eth or rh
mint: token address
wallet_type: restrict to kol, smart or whale. Omit to merge all types.
limit: how many transactions (default 25)
输入参数mint必填limitblockchain必填wallet_type
Statistics for up to 100 tokens in a single request. Use for shortlists, or to
follow up on the most-traded analytics view.
blockchain: solana, bnb, base, eth or rh
mints: up to 100 token addresses
wallet_type: kol, smart or whale (default kol)
输入参数mints必填blockchain必填wallet_type
Check whether KOL wallets bought a Solana token through Jito bundles together
with side wallets they control, which hides the real size of their position.
Returns each detected bundle with a confidence score and the evidence behind
it: matching transaction fees, block index, and adjacency to the KOL's own
transaction. Use this when a user asks whether a launch was bundled,
insider-heavy, sniped or manipulated.
Solana only, because it depends on Jito bundles.
mint: the Solana token mint address
输入参数mint必填
The live feed: what tracked wallets are buying and selling right now, across
every token or filtered to one. Use for "what are KOLs buying at the moment".
blockchain: solana, bnb, base, eth or rh
wallet_type: kol, smart or whale (default kol)
minutes: only trades from the last N minutes, at most 60. Leave at 0 for the
most recent trades regardless of age.
mint: restrict to one token
limit: how many trades (default 25)
输入参数mintlimitminutesblockchain必填wallet_type
How many trades happened and how much value moved over a window of up to 24
hours, plus how many distinct wallets were involved. Use for how busy the
market or a single token is, rather than for the individual trades.
blockchain: solana, bnb, base, eth or rh
wallet_type: kol, smart or whale (default kol)
hours: window in hours, at most 24 (default 1)
mint: restrict to one token
输入参数minthoursblockchain必填wallet_type
Tokens where several tracked wallets acted within the same window.
'cluster' means multiple wallets bought the same token, which is the strongest
signal. 'entry' marks fresh positions, 'exit' marks wallets selling out. Use
this for "what should I be looking at right now".
Only the first page is reachable: this endpoint reports that more results
exist but does not return a usable cursor, so raise the limit rather than
trying to paginate. Smart money signals are unavailable on eth.
blockchain: solana, bnb, base, eth or rh
wallet_type: kol, smart or whale (default kol)
mode: cluster, entry or exit (default cluster)
hours: observation window (default 6)
min_wallets: minimum wallets in a cluster; higher means fewer, stronger signals
min_win_rate: only count wallets above this historical win rate, 0-100
limit: how many signals (default 15)
输入参数modehourslimitblockchain必填min_walletswallet_typemin_win_rate
Past signals, for checking whether a kind of signal has worked historically
before acting on a live one.
blockchain: solana, bnb, base, eth or rh
wallet_type: kol, smart or whale (default kol)
days: 7, 30, 90 or "all" (default 30)
mode: cluster, entry or exit. Omit for all modes.
limit: how many signals (default 25)
输入参数daysmodelimitblockchain必填wallet_type
The curated CabalSpy calls, the same ones posted in the CabalSpy Discord, newest
first. Each call has the token, the market cap at the call, the KOL and Smart
Money wallets behind it, trading links, and its performance over the 24 hours
after the call (peak multiple, minutes to peak, multiple after 24 h).
Use this for "what did CabalSpy call" or "how did the call on this token do".
These are fixed picks per tier; for wallet clusters with your own thresholds use
get_signals instead. performance.status 'pending' means the call is younger than
about two days and not measured yet, which is not a bad result.
blockchain: solana, bnb, eth, rh, comma separated (default all)
tier: gamble, moderate, good, big, whale, comma separated (default all)
since / until: time window, ISO 8601 or Unix seconds
limit: how many calls (default 15)
cursor: next_cursor from the previous page
输入参数tierlimitsinceuntilcursorblockchain
How well the curated CabalSpy calls performed: per chain and tier the number of
calls, the share that reached 2x, 5x and 10x within 24 hours, the median peak
multiple and minutes to peak, plus the best calls of the period.
Use this for "how good are CabalSpy calls" or "which tier works best". Only the
first call per token, tier and day counts; calls without price data are left out
of the hit rate. Calls from the last one to two days count as pending.
period: 1d, 7d, 30d or 90d (default 7d)
blockchain: solana, bnb, eth, rh, comma separated (default all)
tier: gamble, moderate, good, big, whale, comma separated (default all)
输入参数tierperiodblockchain
Four aggregate views over the tracked wallets.
volume_trend shows activity over time. most_traded lists the tokens getting the
most attention. win_rate gives the distribution of outcomes. top_performers
ranks wallets by profit. Use for the overall picture rather than one wallet or
token.
blockchain: solana, bnb, base, eth or rh
mode: volume_trend, most_traded, win_rate or top_performers
wallet_type: kol, smart or whale (default kol)
period: 6h, 1d, 7d or 30d (default 7d)
limit: how many entries (default 20)
输入参数mode必填limitperiodblockchain必填wallet_type
CabalSpy ID profile of a crypto trader: X account (followers, age), Telegram,
KOL badge, the wallets they verified by an on-chain payment (per chain), and
7-day trading activity. Use it to check who someone is and whether a trader
really owns the wallets they claim, e.g. "Is @CabalSpySol verified?",
"Which wallets does this KOL trade with?".
Pass exactly one of: username (X handle), csid_id, x_id, or address (looks up
the owner of a wallet). Works on the keyless demo with sandbox identities only
(try username 'csid_sandbox_kol').
输入参数x_idaddresscsid_idusername
Who owns a wallet? Returns the CabalSpy ID user who proved ownership with an
on-chain payment (X handle, KOL badge, verified chains), or verified=false.
Use it when a user pastes an address and asks who is behind it — e.g. "Who
owns wallet X?" — and to find verified traders among a token's holders.
Complements lookup_wallet (CabalSpy's own wallet labels). Several addresses at
once count as one batch request.
输入参数addresses必填
KOLs with a verified CabalSpy ID badge (reviewed: real X account with reach,
wallets proven on-chain), newest badge first. Each entry has the X handle,
followers, verified wallets and 7-day activity. Use for "Which KOLs are
verified on Base?" or to get wallets of verified influencers. For performance
rankings of tracked KOL wallets use get_leaderboard instead.
chain: solana, bnb, base, eth or rh — only KOLs with a wallet verified there.
输入参数chainlimitcursor
What do verified holders think about a token? Returns the bull/bear summary
and the latest (or top) theses: short posts that only people holding the token
in a CabalSpy ID verified wallet can write, each with the author's live
position (holding or sold, invested, PnL). Use for "What do holders say about
$BONK?" or "Is sentiment on this token bullish?".
Needs your own CabalSpy API key with a CabalSpy ID instance (no demo).
Example: blockchain='solana', mint='DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263'.
Page with the returned next_cursor.
输入参数mint必填sortlimitscopecursorstanceinstanceblockchain必填
The newest theses across all tokens: a live feed of what verified holders are
posting, each with token, stance, author and position. Use for "What are
verified traders talking about right now?" or to discover tokens with fresh
conviction. For one token use csid_token_theses.
Needs your own CabalSpy API key with a CabalSpy ID instance (no demo).
输入参数limitscopeuserscursorinstanceblockchain
All theses one CabalSpy ID user has posted, newest first, with token and the
position they hold. Use to judge a caller's track record: "What has
@CabalSpySol been bullish on, and did it work out?".
Needs your own CabalSpy API key with a CabalSpy ID instance (no demo).
输入参数limitcursorcsid_idinstanceusername
One thesis in full with its discussion: body, stance, author, the author's
position, reactions and the replies (oldest first). Use after another csid_
tool when the user wants to read a thread. cursor pages through the replies.
Needs your own CabalSpy API key with a CabalSpy ID instance (no demo).
输入参数cursorinstancethesis_id必填replies_limit
Ranking of CabalSpy ID verified traders by their tracked trades: volume,
realized PnL, win rate and trade count for a period. Covers the users of YOUR
CabalSpy ID instance (the people who signed in on your platform);
scope='global' ranks every CabalSpy ID user and needs the Enterprise plan.
Use for "Who are the best traders on my platform this week?". For KOLs and
smart money tracked by CabalSpy use get_leaderboard.
Needs your own CabalSpy API key with a CabalSpy ID instance (no demo).
输入参数sortlimitscopecursorperiodinstanceblockchain必填
One user of YOUR platform (white-label), looked up by your own user id: display
name, wallets with their trust status, X/Telegram/KOL badge, trading stats per
chain for the period (volume, realized PnL, win rate), the latest trades and
theses. Use for "How is user 42 on my platform doing this week?".
Only for platforms that import their users into a CabalSpy ID instance
(white-label). For CabalSpy ID users who signed in themselves use csid_profile.
Needs your own CabalSpy API key with a CabalSpy ID instance (no demo).
输入参数periodinstanceexternal_id必填
csid_platform_leaderboard
Ranking of the users of YOUR platform (white-label) by their trades on one
chain: realized PnL, volume, win rate and trade count for a period, each entry
with your own user id (external_id). Use for "Who are the top traders on my
platform this week?" when your users are imported into a CabalSpy ID instance.
For users who sign in with CabalSpy ID themselves use csid_leaderboard.
Needs your own CabalSpy API key with a CabalSpy ID instance (no demo).
输入参数sortlimitcursorperiodinstanceblockchain必填verified_only
Competitions of YOUR platform (white-label): without competition_id the list
(name, kind, chain, metric, status, start and end, participants); with it the
rules, every rule change and the current standings with your own user ids
(standings are recomputed every 5 minutes, final once ended). Use for "Who is
leading the competition?" or "Which competitions are running?".
'kind' is 'trading' (ranked on trades: pnl_usd, pnl, volume, trades, win_rate;
min_trades / min_volume_usd) or 'callouts' (ranked on the callouts made during
the competition, each scored by its peak multiple: avg_peak_x, best_peak_x,
sum_peak_x, hit_rate, callouts; min_callouts to qualify, hit_x = the multiple
that counts as a hit).
Needs your own CabalSpy API key with a CabalSpy ID instance (no demo).
输入参数limitstatusinstancecompetition_id
Callouts on YOUR CabalSpy ID instance, newest first: users call a token and
CabalSpy stamps the price and market cap and tracks it. Without filters the
latest callouts of your platform; with chain + mint the callouts of one token
("Who called this token and how did it do?"); with external_id or csid_id the
callouts of one user. Each entry: token, author (your user id), called_at,
market cap at the call, now_x and peak_x (multiples since the call), score_x
(the peak multiple the callout is scored by) and the tracking phase
(first_day: every minute for 24 h, then scored on candles; extended: every
5 minutes while active; stopped: after 24 h in a row below a $10k market cap).
Callouts are an extra switched on per instance on request; otherwise this
returns feature_not_enabled. Needs your own CabalSpy API key with a CabalSpy
ID instance (no demo).
输入参数mintchainlimitcursorcsid_idinstanceexternal_id
The best callers of YOUR CabalSpy ID instance for a period (6h, 1d, 7d, 30d):
each user's callouts in the period, scored by their peak multiples (score_x),
with average, median, best and summed peak multiple, hits and hit rate (share
of callouts that reached hit_x), and their best call. Entries carry your own
user id (external_id). Use for "Who are the best callers this week?".
Callouts are an extra switched on per instance on request; otherwise this
returns feature_not_enabled. Needs your own CabalSpy API key with a CabalSpy
ID instance (no demo).
输入参数sortchainhit_xlimitcursorperiodinstancemin_callouts
The callout track record of ONE user of YOUR CabalSpy ID instance, per period
(callouts made in the last 6h, 1d, 7d and 30d): number of callouts, average,
median, best and summed peak multiple (score_x), hits and hit rate (share that
reached hit_x), the average multiple right now and how many are still being
tracked, plus the all-time count. Use for "How good are this user's calls?".
Pass external_id (your user id) or csid_id.
Callouts are an extra switched on per instance on request; otherwise this
returns feature_not_enabled. Needs your own CabalSpy API key with a CabalSpy
ID instance (no demo).
输入参数hit_xcsid_idinstanceexternal_id
Copy trading on YOUR CabalSpy ID instance. Copy trading turns every trade of a
trader in a user's Trade Feed into a ready-to-execute instruction: token,
chain, side, the amount in USD (buys) or the share of the copied position to
sell (sells), and a price limit. Your platform executes it with the user's own
wallet and reports it back as executed, failed or skipped. CabalSpy never
holds keys and never trades. Instructions are meant to be executed within
120 seconds; a pending one past that reads as 'expired'.
view=instructions (default): the latest instructions of your platform, or of
one user (external_id or csid_id), optionally by status. Each: id, status,
created_at, user, trader, side, token, chain, mint, amount_usd or
sell_percent, price_usd and the max/min price limit, plus what your platform
reported (executed_amount_usd, tx_signature, note). Use for "Which copy
trades failed today?".
view=settings: one user's copy settings per trader (enabled, mode fixed_usd or
percent, amount_usd, percent, max_usd cap, sides buys or both, slippage_bps,
and managed_by_other_platform when another platform copies that trader).
Part of every CabalSpy ID instance (no extra needed); users need the
'trade_feed' consent (otherwise consent_required). Read-only: changing
settings and reporting status stays in the Data API. Needs your own CabalSpy
API key with a CabalSpy ID instance (no demo).
输入参数viewlimitcursorstatuscsid_idinstanceexternal_id