Dokumentation

Ein Urteil in unter einer Minute.

Alles hier funktioniert ohne Anmeldung — deine ersten 5 Scans pro Monat sind gratis, kein API-Key nötig — und 250 pro Monat mit einem kostenlosen Key. Wähle unten deinen Weg.

Hol dir einen kostenlosen API-Key

250 Scans pro Monat, für immer kostenlos. Ohne Karte, ohne Kosten.

Deine E-Mail wird nur für deinen Key und Service-Hinweise genutzt. Sonst nichts.

Why we ask. 98.5% of the addresses that scan here use exactly one scan and never come back — and 1,656 of them share a single identical browser fingerprint, one request each. Limits counted per address cannot see a pattern like that, because every request looks like a different person. One email keeps the free tier genuinely free for people actually using the tool.

Für alle · kein Code

Prüfe einen Token im Browser

Du musst kein Entwickler sein, um Cabal-Hunter zu nutzen. Die Diamond Map ist gratis und zeigt dir den Wallet-Graph visuell.

  1. Kopiere den Mint-Address des Tokens — die lange Zeichenkette von DexScreener, GMGN, pump.fun oder deiner Wallet (sieht aus wie Ad3w…pump).
  2. Öffne cabal-hunter.com/map und füge ihn in die Suchleiste ein.
  3. Lies die Map. Jede Diamond ist eine Wallet (Größe = Bestand). Linien sind Funding-Links — verbundene Diamonds wurden aus derselben Quelle finanziert. Rote Cluster sind die Cabal. Klick auf eine Diamond, um sie auf Solscan zu prüfen.
Faustregel: ein gesunder Token sieht aus wie verstreute, unverbundene Diamonds. Ein wartender Rug sieht aus wie ein Spinnennetz — viele Holder an eine einzige Funding-Quelle verdrahtet, oft im selben Block erstellt.
Für Bot-Builder

REST-API

Ein GET-Request, jede Sprache. Kein Auth für deine 250/Monat gratis — der Zähler ist pro IP.

cURL — probier es gleich aus

curl "https://api.cabal-hunter.com/api/scan-cabal?mintAddress=<MINT>"

Python

import requests

r = requests.get(
    "https://api.cabal-hunter.com/api/scan-cabal",
    params={"mintAddress": mint},
    timeout=30,
).json()

if r["recommendation"] == "AVOID" or r["cabal_score"] >= 65:
    abort_buy()

JavaScript / TypeScript

const r = await (await fetch(
  `https://api.cabal-hunter.com/api/scan-cabal?mintAddress=${mint}`
)).json()

if (r.recommendation === "AVOID" || r.cabal_score >= 65) {
  abortBuy()
}

複数トークンを一度に — /api/scan-batch

フィードを選別中ですか。ループせず、1 リクエストで最大 25 件のミントを送れます。送った順に 1 件 1 行で返り、分析できないミントはバッチを落とさずエラー行になります。1 ミントにつき 1 スキャン、キーが必要です(無料キーで可)。

curl -X POST "https://api.cabal-hunter.com/api/scan-batch" \
  -H "X-API-Key: <YOUR_KEY>" \
  -H "Content-Type: application/json" \
  -d '{"mints":["<MINT>","<MINT>"]}'

Telegram — インストール不要

@TheCabalHunter_Bot にミントを貼るだけで、同じ判定・開発者の履歴・保有者分析がチャットに返ります。/watch <mint> で、協調売りや流動性の引き抜きが始まった瞬間に通知します。 t.me/TheCabalHunter_Bot

Nützliche Response-Header

HeaderBedeutung
X-Free-Queries-RemainingGratis-Scans, die diesen Monat für deine IP übrig sind — beobachte das in deinem Bot und lade auf, bevor es null erreicht.
X-Cabal-Risk-LevelHIGH / ELEVATED / LOW_SIGNAL — lies es ohne den Body zu parsen.
X-Cabal-RecommendationSAFE / REVIEW / AVOID — veraltet. Nutze X-Cabal-Risk-Level.
X-Cabal-ScoreDer 0–100-Score.
X-Key-Credits-RemainingVerbleibendes Guthaben auf deinem Prepaid-Key (beim Senden von X-API-Key).
Ebenfalls gratis: GET /api/cex-funding?mint= (welche Exchanges die Holder finanziert haben), GET /api/trade-analysis?mint= (Kohorten-PnL + Wash-Trade-Score) und POST /api/watch (Webhook-Push in dem Moment, in dem ein koordinierter Dump auf einem Token startet, den du hältst). Maschinenlesbare Spec: openapi.json.
Für Agent-Entwickler

MCP — Claude, Cursor, VS Code

Cabal-Hunter ist ein gehosteter MCP-Server unter https://api.cabal-hunter.com/mcp und exponiert ein Tool: check_cabal_risk(mintAddress). Dein Agent ruft es vor jedem Swap auf — automatisch.

Ein-Klick-Installationen

⚡ In VS Code installieren ⚡ In Cursor installieren

Claude Code (CLI)

claude mcp add --transport http cabal-hunter https://api.cabal-hunter.com/mcp

Claude Desktop claude_desktop_config.json

{
  "mcpServers": {
    "cabal-hunter": {
      "command": "npx",
      "args": ["mcp-remote", "https://api.cabal-hunter.com/mcp"]
    }
  }
}

Dann einfach fragen

"Check the cabal risk on Ad3wM19jfM6DGbGaoswz3orJ5WHXWEjBGKpRZ2ggpump before I buy."
System-Prompt-Tipp für Trading-Agents: füge hinzu "Rufe check_cabal_risk vor jedem Solana-Kauf auf. Kaufe nicht, wenn risk_level HIGH ist oder cabal_score ≥ 65." — diese eine Zeile macht das Gate automatisch.
Für ElizaOS-Builder

ElizaOS-Plugin

Ein veröffentlichtes npm-Plugin fügt jedem Eliza-Agent die Aktion CHECK_CABAL_RISK hinzu.

npm install elizaos-plugin-cabal-hunter

Registriere es in deinem Character

import { cabalHunterPlugin } from "elizaos-plugin-cabal-hunter"

export const character = {
  ...
  plugins: [cabalHunterPlugin],
}
Für dein Dashboard

Live-Badge-Widget

Zwei Zeilen HTML rendern eine Live-Urteil-Karte — Score-Kreis, Flags, Live-Map-Link — für jeden Token, auf jeder Seite. Funktioniert in reinem HTML, React, überall.

<div class="cabal-hunter-badge" data-mint="YOUR_TOKEN_MINT"></div>
<script src="https://api.cabal-hunter.com/widget.js" defer></script>

Optionen

AttributWas es tut
data-mintErforderlich. Der Solana-Mint zum Scannen und Anzeigen.
data-refresh="120"Re-scan alle N Sekunden (min. 60) — Live-Urteile während du tradest.
data-api-key="ch_live_…"Nutze deinen Prepaid-Key, sobald du über dem Gratis-Tier bist.
Referenz

Response-Felder

Die Felder, die dein Code tatsächlich nutzt. Vollständiges Schema: openapi.json.

FeldBedeutung
cabal_score0–100. ≥65 = HOHES Risiko, ≥35 = CAUTION, darunter = schwaches Signal.
risk_levelHIGH / ELEVATED / LOW_SIGNAL — was wir beobachtet haben. LOW_SIGNAL heißt, unsere Prüfungen haben nicht angeschlagen; es ist keine Sicherheitsbewertung.
recommendationSAFE / REVIEW / AVOID — veraltet, bleibt damit bestehende Bots weiterlaufen. Nutze risk_level.
riskHIGH / MEDIUM / CLEAN.
verdictKlartext-Zusammenfassung von allem Gefundenen — menschenlesbar, logge es.
time_synctrue = Holder kauften im exakt selben Block (gebundelter Launch).
coordinated_exittrue = mehrere Holder dumpen im selben Block, gerade jetzt.
top_holder_pctAnteil des größten einzelnen Nicht-LP-Holders am Supply.
deployer.verdictFIRST_LAUNCH / NORMAL / POOR_TRACK_RECORD / SERIAL_LAUNCHER — plus deren Launch-Historie.
coordinated_clusters[]Jeder Cluster: type (funding / time_sync / coordinated_exit), kombinierter % des Supplys, und evidence_txs[] — die Beweis-Transaktionen.
filtered_clusters[]Cluster, die wir als CEX-Rauschen ausgeschlossen haben (z. B. geteiltes Binance-Funding) — angezeigt, damit du prüfen kannst, dass wir nichts verstecken.
honeypot_riskSolana-native Honeypot-Signale: aktive Freeze Authority, Token-2022-Fallen.
liquidity_usd · market_capLive von DexScreener zum Scan-Zeitpunkt.
free_queries_remainingGratis-Scans, die diesen Monat für deine IP übrig sind.
Preise & Keys

Gratis für die meisten. 9 $/Mon., wenn dein Bot nie stoppt.

Ein Token, das in den letzten 8 Stunden getraced wurde, wird aus diesem Trace beantwortet (computed_at zeigt wann); jedes andere läuft als Live-On-Chain-Trace. Es wird nie automatisch abgebucht: Krypto-Zahlungen sind Push-only, du bleibst immer in Kontrolle.

Gratis-Tier — die meisten bleiben hier

5 Scans pro Monat ganz ohne Anmeldung, dann 250 mit einem kostenlosen Key. Eine E-Mail, keine Karte. Das Feld free_queries_remaining und der Header X-Free-Queries-Remaining zeigen dein Guthaben bei jeder Response, und ein warning-Feld erscheint bei 20 übrig.

Über gratis hinaus — zwei Optionen

9 $/Monat Unbegrenzt (faire Nutzung, 50k/Mon.) für 24/7-Bots — oder nach Verbrauch für 0,001 $/Scan, jeder Betrag ab 1 $. So oder so eine USDC-Zahlung aus jeder Solana-Wallet.

Einen Key holen (60 Sekunden, kein Konto)

  1. Sende USDC auf Solana an die auf /pricing gezeigte Wallet — 9 $ für Unbegrenzt, oder jeder Betrag ≥ 1 $ für Verbrauchs-Credits.
  2. Löse die Transaktion ein: füge die Tx-Signatur auf /pricing ein, oder per Code: POST /api/buy-key {"tx_signature": "…"}
  3. Nutze den zurückgegebenen Key als Header bei jedem Scan: X-API-Key: ch_live_… — prüfe das Guthaben jederzeit unter GET /api/key-balance.
Für autonome Agents: der x402-Pay-per-Call-Flow wird ebenfalls unterstützt — der Body der 402-Response enthält vollständige maschinenlesbare Zahlungsanweisungen (Empfänger, Betrag, Memo), sodass ein Agent ohne Mensch zahlen und erneut versuchen kann.
LIVE MONITORING

Watch a token you already hold

A scan answers what is behind a token right now — a question you ask once. A watch answers whether it is still safe to hold, which is a question that never stops being worth asking. We poll the token continuously and POST your webhook the moment a coordinated dump or a liquidity drain begins.

Register a watch

Needs a key so that only you can see or remove your own watches. A free key is enough.

curl -X POST https://api.cabal-hunter.com/api/watch -H "X-API-Key: YOUR_KEY" -H "Content-Type: application/json" -d '{"mint":"<MINT>","webhook_url":"https://your-bot.example.com/hook"}'

Your webhook must resolve to a public address. Loopback, private ranges, link-local and cloud-metadata targets are refused — that field is a common way to attack the server receiving it, and we do not accept it on ours.

Manage them

GET /api/watch lists only your own watches, with used and limit so your client never has to guess its headroom. DELETE /api/watch removes one; omit webhook_url to remove every watch you hold on that mint.

Re-registering the same mint and URL is idempotent and does not consume another slot. If you reach your plan limit the API answers 429 and tells you the limit and how many you are using.

What arrives when it fires

Every claim comes with the transactions that prove it. evidence_txs are Solscan-verifiable signatures, so your bot can confirm the alert on-chain instead of trusting us — the same principle as the scanner.

{ "event": "dump_detected", "mint": "<MINT>", "reason": "price -34% since last check", "drop_pct": 34.2, "price_usd": 0.0000021, "previous_price_usd": 0.0000032, "liquidity_usd": 4200, "previous_liquidity_usd": 9100, "coordinated": true, "coordinated_detail": { "wallet_count": 7, "sold_pct": 41.2, "slot": "slot 298471123", "evidence_txs": ["...", "...", "..."] }, "verify": "https://cabal-hunter.com/map?mint=<MINT>", "action": "consider_immediate_exit" }
A watch reports what we observed on-chain. It is not a prediction, not financial advice and not a guarantee that you can still exit — liquidity may already be gone by the time anyone can act. Always do your own research.
KOSTENPFLICHTIGES ADD-ON

Deine eigene private Wallet-Liste

Führe eine Liste von Wallets, die dich interessieren — jeder Scan meldet dann zusätzlich, welche davon tatsächlich im Token stecken, im Feld screen_list des Ergebnisses. 9 $/Monat zusätzlich zu jedem Key, auch einem kostenlosen. Jederzeit kündbar.

Einschalten

Gibt einen Checkout-Link für den Key zurück, der den Aufruf gemacht hat. Es wird nichts Neues erzeugt — das Add-on wird für den vorhandenen Key aktiviert.

curl -X POST https://api.cabal-hunter.com/api/screen-list/checkout -H "X-API-Key: YOUR_KEY"

Eine Wallet hinzufügen

Das Label gehört nur dir und wird ausschließlich dir gezeigt. Eine Liste fasst bis zu 500 Wallets; Adressen werden geprüft, eine ähnlich aussehende Zeichenkette wird also mit Begründung abgelehnt statt still gespeichert.

curl -X POST https://api.cabal-hunter.com/api/screen-list -H "X-API-Key: YOUR_KEY" -H "Content-Type: application/json" -d '{"wallet":"<WALLET>","label":"for my eyes only"}' curl https://api.cabal-hunter.com/api/screen-list -H "X-API-Key: YOUR_KEY" curl -X DELETE https://api.cabal-hunter.com/api/screen-list/<WALLET> -H "X-API-Key: YOUR_KEY"

Was zurückkommt

Jeder Scan erhält ein screen_list-Objekt: checked, matches und hits[] — je Treffer die Wallet, dein Label, die Rolle (holder oder cluster_funder) und der Anteil am Angebot, sofern bekannt.

"screen_list": { "checked": true, "matches": 1, "hits": [ { "wallet": "<WALLET>", "label": "for my eyes only", "role": "holder", "pct": 4.1 } ] }

checked: true mit null Treffern heißt, die Prüfung LIEF und fand keine — das ist etwas anderes als gar keine Prüfung. Ein fehlender Treffer ist nie ein Freispruch für eine Wallet, die du nicht aufgelistet hast.

Deine Liste ist privat auf deinem Key. Wir veröffentlichen keine Wallet-Listen und behaupten nicht, wem eine Adresse gehört — ein Treffer ist eine On-chain-Beobachtung, nie eine Aussage über eine Person.
Fehlerbehebung

Schnelle Antworten

Ich bekomme HTTP 402

Deine IP hat ihre 250 Gratis-Scans diesen Monat aufgebraucht. Der Response-Body listet beide Wege weiterzumachen (9 $ Unbegrenzt oder 0,001 $/Scan). Die Zähler setzen am 1. zurück.

Der Scan dauert ein paar Sekunden

Kalte Tokens brauchen einen Live-On-Chain-Trace (15–20s). Bereits indexierte kommen in <100ms zurück. Übergib pairCreatedAt (DexScreener-ms-Timestamp), um kalte Scans zu beschleunigen.

Score sagt CLEAN, aber der Token hat geruggt

CLEAN bedeutet keine koordinierte Cabal — es kann keinen Solo-Dev vorhersagen, der mit sauberem Wallet-Graph Liquidität abzieht. Kombiniere es mit top_holder_pct, deployer.verdict und Liquidität für das Gesamtbild — und schau dir die Live-Demo an, wie es auf unserem eigenen Bot performt.

Etwas anderes?

Nutze das Feedback-Feld auf der Homepage — es kommt direkt zu uns — oder pinge @CabalhunterAPI.