Cabal-Hunter · Schema

CabalReport

SolanaCryptocurrencySecurityAnalytics

Properties

Name Type Description
mint string
risk_level string What we observed. HIGH = strong coordinated-control signals. LOW_SIGNAL = our checks did not fire, which is NOT a safety rating: most tokens lose value anyway.
disclaimer string Always returned. On-chain signals, not financial advice.
recommendation string DEPRECATED — prefer risk_level. Values are frozen because existing agents gate on the literal string AVOID; renaming them would fail open.
cabal_score integer 0-100. >=65 HIGH risk, >=35 caution.
risk string
is_controlled boolean true when score >= 35 (insiders positioned to dump).
confidence string Confidence in THIS scan's completeness (HIGH when wallets_checked >= 5). Check the validator's own output, not just the verdict.
scan_complete boolean True only when the trace had enough coverage. A SAFE result with scan_complete=false is auto-downgraded to REVIEW — never trust a clean verdict from an incomplete scan.
wallets_checked integer Holder wallets actually traced — the scan-depth signal. Low = shallow/sparse trace, treat a clean result as suspect.
analysis_time_ms integer Processing latency; with 'source', lets the caller gauge data completeness.
liquidity_usd number Live liquidity (USD) on the deepest pair.
market_cap number Live market cap (USD).
honeypot_risk string Solana-native honeypot verdict: live freeze authority or Token-2022 fee/hook/delegate traps
mint_authority_revoked boolean
freeze_authority_revoked boolean
token2022_risks array
exit_liquidity_risk boolean True when liquidity is too thin vs market cap to exit without heavy slippage — the soft-rug / dev-dump risk, independent of cabal coordination.
verdict string Plain-English summary.
time_sync boolean Same-block bundled buy group detected.
coordinated_exit boolean Same-block coordinated dump detected.
top_holder_pct number
deployer object { creator, tokens_launched, dead, sampled, dead_pct, verdict, reputation, best_peak_usd, median_peak_usd, pump_and_dumps, dead_on_arrival, still_alive }. Launch history covers pump.fun, Raydium, Orca,
coordinated_clusters array Scored coordination groups with evidence_txs[].
filtered_clusters array CEX/infra groups excluded from the score.
top_reasons array
free_queries_remaining integer
source string
computed_at number
View JSON Schema on GitHub

JSON Schema

cabal-hunter-com-cabal-report-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/cabal-hunter-com/json-schema/cabal-hunter-com-cabal-report-schema.json",
  "title": "CabalReport",
  "x-generated": "2026-11-03",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/cabal-hunter-com-openapi.json#/components/schemas/CabalReport",
  "type": "object",
  "properties": {
    "mint": {
      "type": "string"
    },
    "risk_level": {
      "type": "string",
      "enum": [
        "HIGH",
        "ELEVATED",
        "LOW_SIGNAL"
      ],
      "description": "What we observed. HIGH = strong coordinated-control signals. LOW_SIGNAL = our checks did not fire, which is NOT a safety rating: most tokens lose value anyway."
    },
    "disclaimer": {
      "type": "string",
      "description": "Always returned. On-chain signals, not financial advice."
    },
    "recommendation": {
      "type": "string",
      "enum": [
        "SAFE",
        "REVIEW",
        "AVOID"
      ],
      "description": "DEPRECATED — prefer risk_level. Values are frozen because existing agents gate on the literal string AVOID; renaming them would fail open."
    },
    "cabal_score": {
      "type": "integer",
      "description": "0-100. >=65 HIGH risk, >=35 caution."
    },
    "risk": {
      "type": "string",
      "enum": [
        "HIGH",
        "MEDIUM",
        "CLEAN"
      ]
    },
    "is_controlled": {
      "type": "boolean",
      "description": "true when score >= 35 (insiders positioned to dump)."
    },
    "confidence": {
      "type": "string",
      "enum": [
        "HIGH",
        "LOW"
      ],
      "description": "Confidence in THIS scan's completeness (HIGH when wallets_checked >= 5). Check the validator's own output, not just the verdict."
    },
    "scan_complete": {
      "type": "boolean",
      "description": "True only when the trace had enough coverage. A SAFE result with scan_complete=false is auto-downgraded to REVIEW — never trust a clean verdict from an incomplete scan."
    },
    "wallets_checked": {
      "type": "integer",
      "description": "Holder wallets actually traced — the scan-depth signal. Low = shallow/sparse trace, treat a clean result as suspect."
    },
    "analysis_time_ms": {
      "type": "integer",
      "description": "Processing latency; with 'source', lets the caller gauge data completeness."
    },
    "liquidity_usd": {
      "type": "number",
      "description": "Live liquidity (USD) on the deepest pair."
    },
    "market_cap": {
      "type": "number",
      "description": "Live market cap (USD)."
    },
    "honeypot_risk": {
      "type": "string",
      "enum": [
        "LOW",
        "HIGH"
      ],
      "description": "Solana-native honeypot verdict: live freeze authority or Token-2022 fee/hook/delegate traps"
    },
    "mint_authority_revoked": {
      "type": "boolean"
    },
    "freeze_authority_revoked": {
      "type": "boolean"
    },
    "token2022_risks": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "exit_liquidity_risk": {
      "type": "boolean",
      "description": "True when liquidity is too thin vs market cap to exit without heavy slippage — the soft-rug / dev-dump risk, independent of cabal coordination."
    },
    "verdict": {
      "type": "string",
      "description": "Plain-English summary."
    },
    "time_sync": {
      "type": "boolean",
      "description": "Same-block bundled buy group detected."
    },
    "coordinated_exit": {
      "type": "boolean",
      "description": "Same-block coordinated dump detected."
    },
    "top_holder_pct": {
      "type": "number"
    },
    "deployer": {
      "type": "object",
      "description": "{ creator, tokens_launched, dead, sampled, dead_pct, verdict, reputation, best_peak_usd, median_peak_usd, pump_and_dumps, dead_on_arrival, still_alive }. Launch history covers pump.fun, Raydium, Orca, Meteora and PumpSwap; a launch counts only where the transaction created the mint, so re-minting an existing token is never counted. verdict FIRST_LAUNCH = checked, no earlier launches found; verdict UNKNOWN = the history could not be established and is NOT a clean record. Paid: launches[] — full per-launch trajectory (mint, symbol, peak_mcap_usd, now_mcap_usd, drawdown_from_peak, status)."
    },
    "coordinated_clusters": {
      "type": "array",
      "items": {
        "type": "object"
      },
      "description": "Scored coordination groups with evidence_txs[]."
    },
    "filtered_clusters": {
      "type": "array",
      "items": {
        "type": "object"
      },
      "description": "CEX/infra groups excluded from the score."
    },
    "top_reasons": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "free_queries_remaining": {
      "type": "integer"
    },
    "source": {
      "type": "string",
      "enum": [
        "pre_indexed",
        "real_time"
      ]
    },
    "computed_at": {
      "type": "number"
    }
  }
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/cabal-hunter-com-cabal-report"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.