The dashboard API: readiness, evidence, policies, and the disclaimer. Base URL defaults to http://127.0.0.1:8741.
PROOFLANE_API_KEY to require the X-API-Key header on every /api/* endpoint except /api/disclaimer. With no key set, bind to localhost or use a trusted reverse proxy.Run the scheduler against fixtures — no credentials needed.
export PROOFLANE_MOCK=1
python3 -c "
from prooflane.scheduler import Scheduler
s = Scheduler()
s.run_due(mock=True, force=True)
print(len(s.latest_evidence()), 'evidence rows')
"Serves readiness, evidence, policies, and the disclaimer.
python -m prooflane.dashboard
# -> http://127.0.0.1:8741/api/readinessHonest denominator included in every response.
curl -H "X-API-Key: $PROOFLANE_API_KEY" \
http://127.0.0.1:8741/api/readiness | python3 -m json.toolMarkdown, bannered DRAFT, with your company details substituted.
curl -H "X-API-Key: $PROOFLANE_API_KEY" \
"http://127.0.0.1:8741/api/policies/information-security?name=Acme&domain=acme.com&employees=12"| Method | Endpoint | What it does |
|---|---|---|
| GET | /health | Liveness. Public. |
| GET | /api/readiness | Readiness report: passing/applicable, criteria with per-check detail. |
| GET | /api/evidence | Latest evidence rows with artifact sources. |
| GET | /api/policies | Available policy templates. |
| GET | /api/policies/<key>?name=..&domain=..&employees=.. | Generated policy draft (Markdown, DRAFT banner). |
| GET | /api/disclaimer | The mandatory disclaimer. Public. |
How evidence is collected, what every check proves and cannot prove, how the hash chain works, and what ProofLane cannot prove: Verification methodology.
Full reference with request/response examples ships in the repo as
OPENAPI.md.