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
Paid endpoints require funding. A bare API request returns 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:

ScoreLevelWhat it means
0–25LOWAppears legitimate — still do your own research.
26–50MEDIUMSome concerns; investigate before interacting.
51–75HIGHMultiple red flags; treat with strong caution.
76–100CRITICALStrong 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" }
}

Next steps

API reference Endpoints, parameters, responses, and error codes. CLI reference Every command, flag, and output format. Authentication Balance billing, the x402 flow, and API keys. How scoring works The risk dimensions behind every score.