Every public numeric or textual claim on this site has a permanent URI, a traffic-light
sovereignty tier, and links to the walker code, methodology, and manifest entry that back it.
Fetch any URI below with Accept: application/json or append .json
for the machine-readable status.
/claims/xrpl.<domain>.<series> — permanent.
Additions are additive; existing URIs never change or delete. Machine-readable index:
/claims/index.json. Full manifest source:
CLAIMS.yaml on GitHub.
Sovereignty tier is derived from each claim's Layer 3 source per
/methodology.
Four self-contained snippets you can paste into a terminal or notebook.
The first three fetch a claim envelope and print its proof fields
(source, as_of, freshness_contract,
claims_ref) — the same shape agents receive through the MCP
tools. The fourth verifies a daily signed snapshot end-to-end (leaf hash,
Ed25519 signature, Merkle audit path) against our pinned public key, so
no trust in the network path is required.
# curl (shell)
curl -s https://xrpldashboard.com/claims/xrpl.rlusd.xrpl_supply.json | jq '.proof'
# Python (stdlib only)
import json, urllib.request
url = "https://xrpldashboard.com/claims/xrpl.rlusd.xrpl_supply.json"
env = json.loads(urllib.request.urlopen(url).read())
p = env["proof"]
print(f"source={p['source']} as_of={p['as_of']}")
print(f"freshness_contract={p['freshness_contract']}")
print(f"claims_ref={p['claims_ref']}")
// JavaScript (any modern runtime with fetch)
const url = "https://xrpldashboard.com/claims/xrpl.rlusd.xrpl_supply.json";
const env = await (await fetch(url)).json();
const p = env.proof;
console.log(`source=${p.source} as_of=${p.as_of}`);
console.log(`freshness_contract=${p.freshness_contract}`);
console.log(`claims_ref=${p.claims_ref}`);
# Python — requires `cryptography`. Prints "verified: True" or raises.
import hashlib, json, urllib.request
from cryptography.hazmat.primitives.serialization import load_pem_public_key
BASE = "https://xrpldashboard.com/.well-known/snapshots"
chain = json.loads(urllib.request.urlopen(f"{BASE}/chain.json").read())
date = chain["leaves"][-1]["date"]
env = json.loads(urllib.request.urlopen(f"{BASE}/{date}.json").read())
pub = load_pem_public_key(urllib.request.urlopen(f"{BASE}/pubkey.pem").read())
def canonical(o):
return json.dumps(o, sort_keys=True, separators=(",", ":"), allow_nan=False).encode()
leaf_fields = ("signing_domain", "schema_version", "snapshot_date_utc", "metrics")
leaf = {k: env[k] for k in leaf_fields}
assert hashlib.sha256(b"\x00" + canonical(leaf)).hexdigest() == env["leaf_hash"]
summary_fields = (*leaf_fields[:3], "leaf_hash", "leaf_index",
"leaves_total", "chain_root", "previous_root")
summary = {k: env[k] for k in summary_fields}
pub.verify(bytes.fromhex(env["signature_ed25519"]), canonical(summary))
print(f"verified: True (date={date}, chain_root={env['chain_root'][:16]}…)")
Every snippet on this page was run against live prod before shipping. Full envelope shape, canonical-JSON contract, and Merkle rules are documented at /methodology#signed-snapshots.
Sovereignty classification and freshness contract last verified 2026-08-05. This page is Layer 4 of the four-layer truth audit — see TRUTH_AUDIT_DESIGN.md.