Quickstart
Analyze your first token for scam and rug-pull risk in under five minutes. The fastest path is the CLI, but you can call the REST API directly too.
Option A — The CLI
Install the csds command-line tool with pipx (recommended) and run a quick check. A quick check returns a 0–100 risk score and the top red flags.
# Install the CLI (isolated environment)
$ pipx install csds-cli
# Analyze a token — chain is auto-detected when omitted
$ csds check 0x6982508145454ce325ddbe47a25d4ec3d2311933 --chain ethereum
Token PEPE (Pepe)
Chain ethereum
Risk score 18 / 100 LOW
Verdict SAFE — no critical red flags detected
Prefer JSON for scripting? Every command supports --format:
$ csds check 0x6982… --format json | jq '.risk_score'
The process exit code mirrors the risk level (0 low/medium · 1 high · 2 critical · 3 error), so you can gate CI pipelines on it. See the CLI reference for every command and flag.
Option B — The REST API
The API is plain HTTPS + JSON. The base URL is:
https://csds.blockchainrangers.com/api
Send a POST to /api/v1/standard-report with your API key, a contract address, and a chain. First create a key in the dashboard (API Keys → Create key), then replace YOUR_API_KEY below. Pick your language:
curl -X POST https://csds.blockchainrangers.com/api/v1/standard-report \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"project_address": "0x6982508145454ce325ddbe47a25d4ec3d2311933",
"chain": "ethereum"
}'
$apiKey = "YOUR_API_KEY"
$headers = @{ Authorization = "Bearer $apiKey" }
$body = @{ project_address = "0x6982508145454ce325ddbe47a25d4ec3d2311933"; chain = "ethereum" } | ConvertTo-Json
Invoke-RestMethod "https://csds.blockchainrangers.com/api/v1/standard-report" `
-Method Post -Headers $headers -Body $body -ContentType "application/json"
import httpx
API_KEY = "YOUR_API_KEY" # from your dashboard
resp = httpx.post(
"https://csds.blockchainrangers.com/api/v1/standard-report",
headers={"Authorization": f"Bearer {API_KEY}"},
json={
"project_address": "0x6982508145454ce325ddbe47a25d4ec3d2311933",
"chain": "ethereum",
},
)
data = resp.json()
print(data["risk_score"], data["risk_level"])
const API_KEY = "YOUR_API_KEY"; // from your dashboard
const resp = await fetch(
"https://csds.blockchainrangers.com/api/v1/standard-report",
{
method: "POST",
headers: {
"Authorization": `Bearer ${API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
project_address: "0x6982508145454ce325ddbe47a25d4ec3d2311933",
chain: "ethereum",
}),
},
);
const data = await resp.json();
console.log(data.risk_score, data.risk_level);
csds config set api-key YOUR_API_KEY # one-time; stored locally
csds check 0x6982508145454ce325ddbe47a25d4ec3d2311933 \
--chain ethereum --format json
402 Payment Required until the account behind it has a balance. See Authentication for how billing and the x402 flow work.Read the result
Every quick check returns a risk_score (0–100) and a risk_level. Higher means riskier:
| Score | Level | What it means |
|---|---|---|
| 0–25 | LOW | Appears legitimate — still do your own research. |
| 26–50 | MEDIUM | Some concerns; investigate before interacting. |
| 51–75 | HIGH | Multiple red flags; treat with strong caution. |
| 76–100 | CRITICAL | Strong scam indicators; avoid. |
A typical quick-check response body looks like this:
{
"risk_score": 18,
"risk_level": "LOW",
"recommendation": "SAFE",
"confidence": 0.88,
"top_flags": [],
"token": { "name": "Pepe", "symbol": "PEPE", "chain": "ethereum" }
}