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.
A callout competition ranks your platform users on the callouts they make while it runs, instead of on their trades. It is a competition like any other: the same endpoints, lifecycle, enrollment, participant limits, rule changes, standings every 5 minutes and webhooks. Only what counts and how it is scored differ. Create one with POST /v1/competitions and "kind": "callouts". kind cannot be changed later. Without callouts switched on, the request is refused with feature_not_enabled. Callout competitions count towards the same limit of 5 open competitions.

What counts

Every callout a participant makes on your instance while the competition runs, from started_at to ends_at, on the competition’s chain, or on any chain with "chain": "all". A participant who joined after the start counts only the callouts made after joining, so earlier callouts do not count for late joiners. Removed callouts do not count. Each callout is counted with its current score, its peak multiple so far. A callout made during the competition keeps improving its participant’s score while its token makes new highs, until the competition ends. At the end the standings are frozen, later highs no longer change the results. Wallets play no part: wallet_trust has no effect on a callout competition.

Metrics

Highest score ranks first. Ties are broken by more callouts, then by who joined first.

Fields

Callout competitions take the fields of Create a competition, with these differences: min_callouts and hit_x in turn are refused on trading competitions. Both can be changed at any time with Update, like every other rule. If callouts were switched off for your instance in the meantime, updating a callout competition is refused with 403 feature_not_enabled. The competition object returns kind, plus min_callouts and hit_x in place of min_trades and min_volume_usd. With "chain": "all", chain_name is All chains.

Create one

Response

Standings

Standings of a callout competition carry callout stats instead of trading stats in each entry: Participants below min_callouts, or without any callout, are listed after the ranked ones with rank: null and ranked: false. The same entries appear in top of competition.standings and results of competition.ended.
Standings entry