Scan Wallet
POST /v1/scan/wallet
Analyze a blockchain address for quantum vulnerability across 19 supported chains. Returns a risk score (W1-W4), chain readiness grade, and detailed risk factors.
Authentication: Publishable or Secret key (qs_pub_* or qs_sec_*)
Request
Parameters
| Field | Type | Required | Description |
|---|---|---|---|
address | string | Yes | Blockchain address to scan |
chain | string | No | Chain identifier (default: auto-detect) |
Supported Chains (19)
| Value | Category | Description |
|---|---|---|
ethereum | Major | Ethereum mainnet |
bitcoin | Major | Bitcoin mainnet |
solana | Major | Solana mainnet |
base | EVM L2 | Base (Coinbase L2) |
arbitrum | EVM L2 | Arbitrum One |
optimism | EVM L2 | Optimism mainnet |
polygon | EVM L2 ZK | Polygon PoS |
zksync | EVM L2 ZK | zkSync Era |
linea | EVM L2 | Linea mainnet |
scroll | EVM L2 | Scroll mainnet |
gnosis | EVM L1 | Gnosis Chain |
celo | EVM L1 | Celo mainnet |
mantle | EVM L2 | Mantle mainnet |
blast | EVM L2 | Blast mainnet |
sonic | EVM L2 | Sonic (prev. Fantom) |
bsc | EVM L1 | BNB Smart Chain |
avalanche | EVM L1 | Avalanche C-Chain |
cosmos | Non-EVM | Cosmos Hub |
tron | Non-EVM | Tron mainnet |
Address Validation Rules
| Chain Type | Format | Example |
|---|---|---|
| EVM chains | 0x + 40 hex chars | 0x742d35Cc6634C0532925a3b844Bc9e7595f2bD18 |
| Solana | Base58, 32-44 chars | 9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM |
| Bitcoin | 1/3/bc1 prefix | bc1qxy2kgdygjrsqtzq2n0yrf2493p83kkfjhx0wlh |
| Cosmos | cosmos1 prefix (bech32) | cosmos1xy2kgdygjrsqtzq2n0yrf2493p83kkfj6mvnqd |
| Tron | T prefix (base58check) | TJCnKsPa7y5okkXvQAidZBzqx3QyQ6sxMW |
Request Examples
EVM Chain (Ethereum)
Solana
Bitcoin
Cosmos
Tron
Response 200 OK
EVM Chain Response
Solana Response (Non-EVM Differences)
Bitcoin Response (UTXO Model)
Response Fields
| Field | Type | Description |
|---|---|---|
address | string | Scanned address |
chain | string | Detected or specified chain |
riskScore | string | Risk category: W1, W2, W3, or W4 |
riskLabel | string | Human-readable label: Low, Medium, High, Critical |
riskValue | number | Numeric risk score (0-100) |
chainGrade | string | Chain readiness grade: A, B, C, D, or F |
chainGradeLabel | string | Human-readable grade description |
publicKeyExposed | boolean | Whether the public key has been revealed on-chain |
balanceAtRisk | string | Native token balance in the address |
balanceAtRiskUsd | number | USD equivalent of balance at risk |
riskFactors | array | Detailed breakdown of address-level risk factors |
chainFactors | array | Chain-level PQC readiness factors |
scannedAt | string | ISO 8601 scan timestamp |
Risk Factor Object
| Field | Type | Description |
|---|---|---|
factor | string | Factor identifier |
weight | number | Weight in composite score (0-1) |
score | number | Individual score (0-100) |
detail | string | Human-readable explanation |
Chain Factor Object
| Field | Type | Description |
|---|---|---|
factor | string | Factor identifier |
status | string | Status: active, planned, none, vulnerable, protective |
detail | string | Human-readable explanation |
Errors
| Code | Description |
|---|---|
AUTH_001 | Missing API key |
SCAN_001 | Invalid address format |
SCAN_002 | Unsupported chain |
SCAN_003 | Address not found (no on-chain activity) |
SCAN_004 | Chain data temporarily unavailable |
RATE_001 | Rate limit exceeded |