Get real data in 60 seconds
No account, no API key, no signup. Two free endpoints cover most needs: resolve an identity, and pull real market prices. Copy, paste, done.
01 · Resolve one device
Ask what a CVIN actually is. This endpoint is free forever and unlimited:
curl -s "https://cvin.org/v1/resolve/cvin:nv.h100.sxm.80g:3ij511ie1hb8e1r6" | jq '{exists, level: .identity.level, observations: .delayed_summary.observation_count}'
You get exists, the identity grade, and how many observations exist. Important: if the device has never been registered, encumbrance.has_active_lien is null — that means "unknown", not "no lien". Do not treat null as a green light.
02 · Pull real market prices
Device-level listings, already normalised: whole-machine price ÷ card count, per-day price ÷ 24, duplicate listings de-duplicated by CVIN.
curl -s "https://cvin.org/v1/market/models" \
| jq '.models[] | select(.model == "nv.rtx5090") | {model, machines, median: .per_gpu_usd_h.median}'
import requests, statistics
r = requests.get("https://cvin.org/v1/market/models", timeout=30).json()
rows = [(m["model"], m["machines"], m["per_gpu_usd_h"]["median"]) for m in r["models"]]
for model, machines, median in sorted(rows, key=lambda x: -x[1])[:10]:
print(f"{model:24} {machines:>5} machines median USD {median}/GPU/hr")
03 · Read the four rules that come with these numbers
① Listed price, not transacted price. ② Extremes are not trimmed — P10/median/P90 are distribution references, not quotes. ③ Device-level data is identity grade L0 — not usable for collateral or underwriting. ④ Never add device-level machine counts to model-level quotes; they are different scopes.
04 · When you need more
Full observation timelines and continuity proofs are metered: $0.05 per call via x402, or a $10 30-day key. Formal reports (serial number + signature + content hash) are $2. See Pricing.
curl -i "https://cvin.org/v1/history/cvin:nv.h100.sxm.80g:3ij511ie1hb8e1r6"
05 · For agents
MCP endpoint: POST https://cvin.org/mcp (JSON-RPC 2.0; tools include cvin_resolve, cvin_history, cvin_market_models). A machine-readable description of every endpoint is at /openapi.json (OpenAPI 3.1).