Skip to main content
The Provenance API is the machine-readable side of Decision Provenance: pull the sealed lineage of any decision, and collect the PII reveal audit ledger on a schedule. All endpoints authenticate with an API key and return the standard {result, data} envelope.

Get a Decision’s Lineage

Roles: Admin, User, Viewer, API client.
Response, abridged — facts marked as PII arrive masked, and maskedKeys names them:
The full payload additionally carries the decision outcome, the deterministic reason for every evaluated rule, and the rule snapshot fingerprint.

PII Reveal — Not an API Surface

Revealing a masked value is deliberately console-only (Admin and User roles). API keys calling POST /provenance/{traceId}/reveal receive 403 — an integration or agent can never pull PII plaintext. Every console reveal writes an audit row before the value is shown, and revealing a fact that is not marked as PII fails with AN-027.

List Reveal Audits

Roles: Admin, User, Viewer, API client — the ledger is readable by more roles than can reveal, because oversight is broader than the act. Results are fixed to reverse-chronological order.
Values are never present — the ledger stores who revealed which fact of which trace, and when. Nothing else exists to leak.
SIEM collection — schedule this endpoint with an API key (for example, daily with yesterday’s date range) to automate the periodic access-log inspection that privacy regulations commonly require. The response is already the report.

Retention Guarantees

Lineage stays resolvable because audit retention refuses to delete what it references: a version with recorded executions cannot be removed (AN-028), and if an audit record cannot be sealed, the operation itself is rejected (AN-029). See the error reference for the full code table.