Node Scorecard API
Independent measurement and scoring of the Sentinel dVPN network. Pay per call in USDC over x402 — no account, no API key, no signup.
Paid endpoints
| Endpoint | Price | Returns |
|---|---|---|
GET /scorecard/network-stats | $0.010 | Network-wide Sentinel dVPN health report: ASN concentration and HHI index, verified residential share, protocol mix, censorship-resistance mix, country distribution, SLA speed percentiles, P2P price percentiles. Also returns chain_registry: lifetime node registrations on the Sentinel chain versus nodes currently in active status, counted directly on-chain — the gap shows how much of the advertised network is actually alive. Pass network=akash for the Akash DePIN compute aggregate instead, which also returns trends_summary: how many providers are improving or declining in score over the tracked history.network — Which network's stats: 'sentinel' (default) or 'akash' (DePIN compute aggregate: GPU capacity, country distribution, score percentiles). For akash, the response also includes a historical trend block (score, uptime and free GPU over time, with direction and delta). |
GET /scorecard/recommend | $0.010 | Ranked node recommendations for a stated need, diversified across ASNs and countries so the result is not concentrated on one provider. Returns one recommendation plus three alternatives.need — Free text describing the requirement, e.g. "privacy residential" or "speed europe". Matched case-insensitively.country — Restrict candidates to a single country, exact name, case-insensitive, e.g. "Germany". |
GET /scorecard/nodes | $0.005 | Snapshot of nodes with composite score, reliability, uptime, SLA speed, price, ASN, jurisdiction freedom and residential verification. Returns active nodes by default. Pass network=akash for DePIN compute providers (Akash).all — Set to 1 to return every tracked node instead of only the active ones.network — Which network to score: 'sentinel' (dVPN nodes, default) or 'akash' (DePIN compute providers; native GPU/uptime/audit shape, online providers only). |
GET /scorecard/nodes/top | $0.005 | Top nodes by composite score, with filtering and anti-concentration controls. Pass network=akash for top DePIN compute providers (Akash).n — How many nodes to return. Values outside the range are clamped.max_per_asn — Anti-concentration cap: maximum number of returned nodes sharing one ASN.min_score — Minimum composite score, 0 to 100.country — Exact country name, case-insensitive.protocol — Filter by protocol. Also matches multi-protocol nodes that advertise it.sla_only — Set to true to return only nodes that passed the SLA speed test.network — Which network to score: 'sentinel' (dVPN nodes, default) or 'akash' (DePIN compute providers; native GPU/uptime/audit shape, online providers only). |
GET /scorecard/node/:address | $0.003 | Full scorecard for a single node, addressed by its sentnode1... bech32 (Sentinel) or akash1... owner (Akash) address. For akash the response also carries a trends block: score, uptime and free-GPU history for that provider, with direction, delta, min and max over the tracked window, so an agent can tell whether it is improving or declining before committing spend.network — Which network to score: 'sentinel' (dVPN nodes, default) or 'akash' (DePIN compute providers; native GPU/uptime/audit shape, online providers only). |
Free endpoints
GET /— This page (HTML for browsers, JSON for agents).GET /manifest— This document.GET /llms.txt— Plain-text summary.GET /scorecard/health— Liveness and configuration.POST /mcp— Model Context Protocol server (stateless, 2026-07-28 and 2025-11-25). Free tools: sentinel_network_overview, sentinel_node_lookup, sentinel_top_nodes.
Payment
- Protocol
- x402 v2
- Base mainnet
eip155:8453
USDC0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913
pay to0x0fcc5724d2dddf79ce1af1f091a823fd6438ef73- Solana mainnet
solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp
USDCEPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v
pay to7KjmSaLhpJJScHEdmUV2CDR47FVxR7jv7DV8QEMszhDi- Polygon mainnet
eip155:137
USDC0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359
pay to0x0fcc5724d2dddf79ce1af1f091a823fd6438ef73- Arbitrum One
eip155:42161
USDC0xaf88d065e77c8cC2239327C5EDb3A432268e5831
pay to0x0fcc5724d2dddf79ce1af1f091a823fd6438ef73- Avalanche C-Chain
eip155:43114
USDC0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E
pay to0x0fcc5724d2dddf79ce1af1f091a823fd6438ef73- Facilitator
- https://facilitator.payai.network
Call any paid endpoint. The 402 response carries a PAYMENT-REQUIRED header with the full x402 payload. Sign and retry with the PAYMENT header. Failed requests (HTTP >= 400) are never settled.
Data
Independent collector polling every active node API directly, plus on-chain state. Not self-reported by node operators. Refresh: hourly. Responses cached 600s.