Export
Stream your full ledger history as NDJSON for audit and reconciliation.
Export streams your entire ledger history as newline-delimited JSON (NDJSON) — one transaction per line. It's audit-grade: replaying the exported entries reconstructs live balances exactly, and two exports of the same state are byte-identical.
Stream the export
GET /api/v1/ledger/exportThe response body is the artifact: application/x-ndjson, one transaction per line,
delivered as a download. The stream is tenant-scoped to your verified credential.
Optional query parameters bound the window by commit time:
?since=— ISO-8601 lower bound?until=— ISO-8601 upper bound
True streaming
The export streams with bounded memory — each transaction is written as it's read, never materializing the whole ledger at once. This means an arbitrarily large history exports without ballooning memory, and the connection stays open until the full stream has flushed.
Reconstructable by design
Replaying the exported entries reconstructs your live balances exactly. This is the reconciliation guarantee: the export is a complete, faithful record, not a summary.
Operational endpoints
Ledger also exposes unauthenticated operational endpoints for monitoring:
GET /api/v1/ledger/metrics— Prometheus metrics (aggregate event counts only, never tenant data)GET /api/v1/ledger/ready— readiness check (200 ready / 503 not-ready)
Next
- Transactions — what the export records.
- One API — reaching Ledger through the gateway.