REST API

A straightforward JSON API for scoring crypto setups and querying incident history. All endpoints accept and return application/json.

Authentication: Currently open. API keys coming soon.
Rate limiting: Currently unrestricted. Rate limits coming soon.
POST/api/score

Score a crypto setup for security health. Returns a 0–100 score, letter grade, risk breakdown, and actionable recommendations.

Platform fields

namestringrequiredDisplay name, e.g. “My Ledger”
typestringrequiredOne of: exchange, hardware_wallet, software_wallet, defi, bridge
brandstringrequiredBrand slug, e.g. coinbase, ledger, metamask
assets_usdnumberrequiredApproximate USD value held on this platform
has_2faboolean | nullrequirednull if not applicable (e.g. hardware wallets)
firmware_versionstringHardware wallet firmware version
open_approvalsnumberNumber of open token approvals (DeFi)
last_audit_datestringISO 8601 date of last security audit

Platform types

exchangeCentralised exchanges (Coinbase, Kraken…)
hardware_walletHardware wallets (Ledger, Trezor…)
software_walletSoftware wallets (MetaMask, Phantom…)
defiDeFi protocols
bridgeCross-chain bridges

Request body

json
{
  "platforms": [
    {
      "name": "Coinbase",
      "type": "exchange",
      "brand": "coinbase",
      "assets_usd": 12000,
      "has_2fa": true
    },
    {
      "name": "My Ledger",
      "type": "hardware_wallet",
      "brand": "ledger",
      "assets_usd": 38000,
      "has_2fa": null,
      "firmware_version": "2.3.0"
    }
  ]
}

Response

json
{
  "score": {
    "score": 76,
    "grade": "B+",
    "total_risks": 2,
    "risks_by_severity": {
      "critical": 0,
      "high": 0,
      "medium": 2,
      "low": 0
    },
    "top_risks": [
      {
        "severity": "medium",
        "type": "hygiene",
        "title": "Outdated firmware on My Ledger",
        "description": "Current firmware 2.3.0 is behind the latest 2.4.0."
      },
      {
        "severity": "medium",
        "type": "diversity",
        "title": "No hardware wallet",
        "description": "Your setup does not include a hardware wallet for cold storage."
      }
    ],
    "recommendations": [
      "Update firmware on My Ledger to 2.4.0.",
      "Consider adding a second platform to reduce concentration risk."
    ]
  },
  "platform_risks": {
    "My Ledger": [
      {
        "severity": "medium",
        "type": "hygiene",
        "title": "Outdated firmware on My Ledger",
        "description": "Current firmware 2.3.0 is behind the latest 2.4.0."
      }
    ]
  }
}

curl example

bash
curl -X POST https://assetalert.dev/api/score \
  -H "Content-Type: application/json" \
  -d '{
    "platforms": [
      { "name": "Coinbase", "type": "exchange", "brand": "coinbase", "assets_usd": 12000, "has_2fa": true },
      { "name": "My Ledger", "type": "hardware_wallet", "brand": "ledger", "assets_usd": 38000, "has_2fa": null, "firmware_version": "2.3.0" }
    ]
  }'
GET/api/incidents

Retrieve security incidents for a platform by its brand slug.

Query parameters

brandstringrequiredPlatform brand slug, e.g. coinbase, binance, ledger

Response

json
{
  "brand": "coinbase",
  "incidents": [
    {
      "title": "Account takeover via SIM swap",
      "severity": "high",
      "incident_date": "2023-08-14",
      "resolved": true,
      "funds_lost_usd": null
    }
  ]
}

curl example

bash
curl "https://assetalert.dev/api/incidents?brand=coinbase"