Audit log export
GET /v1/audit/export?from=2026-01-01T00:00:00Z&to=2026-04-01T00:00:00Z&format=csvAuthorization: Bearer fmk_...Streams a downloadable file with one row per chain operation:
| Column | Notes |
|---|---|
id | Internal audit row UUID. Use for deduplication if reconciling against the chain. |
createdAt | ISO 8601 (UTC). |
eventType | attestation.created, attestation.revoked, or batch.completed. |
mode | onchain or offchain. |
schemaType | human or ai. |
uid, contentHash, attester | EAS fields. |
modelId, provider, promptHash | AI Proof fields. |
refUID | Parent attestation, if any. |
txHash | On-chain transaction hash. Empty for off-chain envelopes. |
Range and pagination
Section titled “Range and pagination”- Defaults: last 90 days → now.
- Maximum range per request: 90 days. Paginate older history by adjusting
fromandto. - Order: oldest-first inside the response.
Format
Section titled “Format”?format=csv # default; comma-separated, RFC 4180 escaping?format=json # { range: { from, to }, items: [...] }Per-key isolation is enforced: you only see your own key’s events. The exported records are derived from the API’s local DB; the chain remains the source of truth, and the on-chain record can always be cross-checked via verify(uid) or block explorers.
EU AI Act alignment
Section titled “EU AI Act alignment”The columns are chosen to satisfy the documentation requirements of EU AI Act Art. 12 (record-keeping) and Art. 50 (transparency obligations for AI-generated content). Each AI Proof row carries modelId, provider, and promptHash: sufficient to demonstrate which model produced which artifact and that the prompt has been preserved (hashed) for downstream audit.
Disclaimer: this is implementation-aligned, not legally certified. Get your own counsel.