Skip to main content
Callouts are switched on per instance on request. Contact us (contact@cabalspy.xyz) to enable them. Without them every endpoint answers 403 feature_not_enabled.

Make a callout

POST /v1/callouts Makes a callout on a token in the name of one of your users, from your backend. The token’s current price and market cap are stamped on it and tracking starts at once. A callout.created event goes out on the stream and as a webhook.
Your instance’s settings decide who can call: everyone or KOLs only, holders only (the default), and a cooldown between two callouts of a user (6 hours by default). A user can call the same token once per 24 hours.
Take the user’s id from your own session, never from the browser request: whoever controls it makes callouts in that user’s name.

Body

Send JSON with Content-Type: application/json.
string
required
Your id of the user, a platform user. Alternatively pass csid_id.
string
The user’s CabalSpy ID: a platform user, or a person who signed in to your app with the scope thesis.
string
required
Chain of the token. One of solana, bnb, base, eth, rh.
string
required
Token address: a Solana mint or a 0x contract address.
string
Optional text shown with the callout, up to 280 characters. Whitespace is collapsed, at most one link, no blocked words.
string
Your Instance ID. Only needed when your account has several instances.
string
required
Your API key. Alternatively pass it as an Authorization Bearer header.

Usage Example

Response

201 with the callout object, as in List callouts. Right after the call, now and peak equal the price at the call, and peak.x and score_x are exactly 1.0.

Errors

The checks run in this order, so the first rule a callout breaks is the one you see. Messages are written for end users, you can show them as they are.
callout_cooldown

Remove a callout

POST /v1/callouts/remove Takes a callout down, for moderation. It disappears from every list, statistic, leaderboard and competition standing, and a callout.removed event goes out on the stream. There is no webhook for removals. Removing cannot be undone. A removed callout no longer counts for the 24-hour rule or the cooldown, so the user can call again.

Body

string
required
The callout id.
string
Your reason, up to 200 characters. Stored, not shown.

Usage Example

Response

string
The callout id.
boolean
Always true.
Response

Errors

See Errors for the full list.