The QuantumLedger REST API. All responses are JSON. Authenticate with an API key as a bearer token — create one under Settings → API keys:
export QL_TOKEN=ql_live_...
curl https://quantumledger.ben.gy/api/v1/me -H "Authorization: Bearer $QL_TOKEN"Ingest
Ingest a run bundle from the SDK. Idempotent by run_hash — re-sending the same run is a no-op.
curl -X POST https://quantumledger.ben.gy/api/v1/ingest/runs \
-H "Authorization: Bearer $QL_TOKEN" \
-H "Content-Type: application/json" \
--data @run.qlprov.json{
"run_id": "01J...",
"run_hash": "b3f1...e9",
"deduplicated": false
}Runs
List runs in your workspace, most recent first.
curl https://quantumledger.ben.gy/api/v1/runs \
-H "Authorization: Bearer $QL_TOKEN"[
{ "run_id": "01J...", "backend": "ibm/ibm_kyiv", "shots": 4096, "status": "completed" }
]Fetch the full provenance document (qlprov/run/1.0) for a run. Verifies its own hash offline.
curl https://quantumledger.ben.gy/api/v1/runs/01J... \
-H "Authorization: Bearer $QL_TOKEN"Publish a run as a public, citable Result Card with provenance and badges.
Unpublish
Run report
Re-run the stored circuit against a drifted device state and score the result.
curl -X POST https://quantumledger.ben.gy/api/v1/runs/01J.../reproduce \
-H "Authorization: Bearer $QL_TOKEN" \
-d '{"days": 90, "profile": "bad_day"}'{
"reproduced_run_id": "01K...",
"verdict": "drifted",
"hellinger_fidelity": 0.947
}Result cards
Public Result Card metadata as JSON (no auth required).
curl https://quantumledger.ben.gy/api/v1/cards/ghz-3-ibm-kyivReady-made citation for a card in BibTeX, CSL-JSON or RIS (?format=bibtex|csl|ris).
Card embed
Submit reproduction
Badges
Badge json
Badge svg
Corpus & leaderboard
Device trend
Cross-vendor hardware ranking by a calibration metric (?metric=median_2q_error|...).
curl https://quantumledger.ben.gy/api/v1/leaderboard?metric=median_2q_errorCompliance
List frameworks
Get framework
Issue an Ed25519-signed attestation over the collected evidence for a framework.
Status
Evaluate every enabled framework against the workspace's runs. Safe to call repeatedly.
Enable
Gaps
Attestations
Public JWKS for verifying attestation signatures yourself.
Revoke
Verify an attestation's signature and evidence root (public — no auth).
curl https://quantumledger.ben.gy/api/v1/attestations/01J.../verify{
"valid": true,
"revoked": false,
"evidence_root": "9c2a...f0"
}Trust center
Trust center
Auth & accounts
Login
Logout
Register
Verify email
The authenticated principal: account, org, workspace, effective plan and features.
curl https://quantumledger.ben.gy/api/v1/me -H "Authorization: Bearer $QL_TOKEN"Create api key
Health
Health