Skip to main content
EgisAI ships a built-in Audit Evidence Export that produces a single downloadable archive describing every governed call, every policy decision, every operator action, and every drift event in a chosen window. The archive is the answer to the procurement question “show me your audit evidence package.” This page is the field-level reference: what’s in the ZIP, what each CSV column means, which framework controls the dataset satisfies, and how the plan’s retention horizon clamps the window.

When to use the export

  • A SOC 2 / ISO 27001 / HIPAA / GDPR / NIST CSF auditor asks for evidence that policies actually fired on traffic in a given window.
  • Your SIEM (Splunk, Datadog, Sentinel) needs a periodic ingest of governance telemetry.
  • You’re handing a procurement reviewer a single artefact and want it framework-mapped so they don’t have to back-translate.
  • You’re running your own fairness or anomaly analytics offline.

Archive format

The export is a single .zip containing:
  • manifest.txt — human-readable header (organization, plan, window, retention, generated-by, datasets, framework-control mapping).
  • manifest.json — same metadata as manifest.txt but machine-readable, designed for SIEM auto-tagging.
  • One *.csv per evidence dataset (see below).
Files are RFC 4180 CSV, UTF-8, with the first row containing column headers. The format is identical to what AWS CloudTrail, Datadog audit exports, and Splunk audit dumps use — every modern SIEM has a single “add data” action that ingests it without configuration.
Why ZIP-of-CSVs and not multi-tab XLSX: CSV is a single-table format and every SIEM, lineage tool, and compliance-evidence platform (Vanta, Drata, Secureframe) ingests CSV files as separate evidence objects. XLSX collapses the per-file evidence model into one opaque container — useful for spreadsheet inspection, but worse for auditing.

Manifest

The manifest is the single most-read file in the archive. Auditors open it first. It lists every CSV, the count of rows, and a per-file mapping to the controls that file satisfies under each framework.
manifest.json carries the same data in a machine-readable form for SIEM auto-tagging:

Datasets

There are eight evidence domains in the export. Operators can include or exclude any subset from the export modal — the manifest reflects exactly what was included.

audit_log.csv — operator-action audit trail

One row per dashboard action your team performed in the window. Primary evidence for change management, access reviews, and operator accountability. Controls satisfied: SOC2:CC6.1, SOC2:CC6.6, SOC2:CC7.2, SOC2:CC8.1, ISO27001:A.5.16, ISO27001:A.8.15, ISO27001:A.9.2, HIPAA:164.312(b), GDPR:Article-30, GDPR:Article-32, NIST-CSF:DE.AE, NIST-CSF:PR.AC.

request_logs.csv — per-call governance log

One row per model call evaluated by the SDK gate. The richest dataset in the archive — full schema documented in Audit-event schema. Notable compliance-safe fields:
  • verdict (allow | sanitize | block) and risk_level.
  • enforcement_status (enforced | advisory) — distinguishes policies that physically prevented an action from policies that fired too late to intervene.
  • prompt_verdict / response_verdict — per-phase outcomes.
  • matched_policies_json — every policy that fired, preserved even if a more restrictive verdict dominated.
  • sanitizations_json — count + mask shape per PII type, never the original value.
  • request_text / response_preview / intent_summary — all post-redaction, capped at 2 KB.
  • tokens_in / tokens_out / policy_tokens_in / policy_tokens_out / cost_usd — billing accuracy.
Controls satisfied: SOC2:CC7.2, SOC2:CC7.3, ISO27001:A.8.15, ISO27001:A.8.16, HIPAA:164.312(b), HIPAA:164.312(c)(1), GDPR:Article-30, GDPR:Article-32, NIST-CSF:DE.AE, NIST-CSF:PR.DS.

runs.csv — agent runs

One row per logical agent task. The roll-up captures rolled-up tokens, latency, cost, and the worst-of-steps verdict across every model and tool call inside the run. See the Run roll-up section in the audit-event schema for the field list. Controls satisfied: SOC2:CC7.2, ISO27001:A.8.15, HIPAA:164.312(b), NIST-CSF:DE.AE.

agents.csv — agent inventory snapshot

Snapshot of every registered AI agent at export time. The asset register SOC 2 auditors want for CC6.1 (logical access — what’s in scope). Controls satisfied: SOC2:CC6.1, SOC2:CC6.2, ISO27001:A.5.9, ISO27001:A.8.1, NIST-CSF:ID.AM.

policies.csv — policy inventory snapshot

Snapshot of every policy in your org — type, phase, priority, target agents/groups, enabled state, and the full configuration JSON. Controls satisfied: SOC2:CC7.1, SOC2:CC8.1, ISO27001:A.5.31, ISO27001:A.8.16, NIST-CSF:PR.IP, NIST-CSF:PR.DS.

api_keys.csv — API key inventory snapshot

Every issued API key in the workspace. Secrets are never included — only the prefix, metadata, and lifecycle timestamps. Controls satisfied: SOC2:CC6.1, SOC2:CC6.6, ISO27001:A.5.16, ISO27001:A.5.18, NIST-CSF:PR.AC.

users.csv — operator roster snapshot

Workspace membership at export time. Controls satisfied: SOC2:CC6.1, SOC2:CC6.2, SOC2:CC6.3, ISO27001:A.5.15, ISO27001:A.5.16, GDPR:Article-30, NIST-CSF:PR.AC.

anomalies.csv — behavioral anomalies

Drift events surfaced in the window — cadence shifts, model affinity changes, block-rate spikes, geo drift. The anomaly evidence column carries only aggregated metrics (counts, rates) — never raw prompt or response text. Controls satisfied: SOC2:CC7.3, SOC2:CC7.4, ISO27001:A.5.24, ISO27001:A.5.25, ISO27001:A.8.16, HIPAA:164.308(a)(6), GDPR:Article-33, NIST-CSF:DE.AE, NIST-CSF:RS.AN.

Retention clamp

Every export is clamped at the floor to your plan’s retention horizon so the archive cannot claim coverage of data the platform has already deleted: The clamp is silent (the preview shows the clamped lower bound and the operator never sees an error). The manifest records the effective window so auditors can verify after the fact.

Row cap

Each dataset is capped at 250,000 rows per export to keep archives under the size threshold most spreadsheet and SIEM ingest tools handle gracefully. The preview surfaces the capped count so operators see what will land in the archive. Customers who legitimately need more should contact us — we run scheduled exports off the same pipeline for very high-volume tenants.

Privacy guarantees

  • No raw PII in any column. Text-bearing fields (request_text, response_preview, intent_summary, error) are sampled from the post-sanitization payload — typed labels (<SSN>, <EMAIL>) in place of values.
  • Sanitization records are count-only (sanitizations_json): { type, count, pattern }. The original value never appears anywhere in the archive.
  • API keys carry the prefix only — secrets are never persisted in plaintext beyond issuance and are never included in any export.
  • Anomaly evidence is aggregated — counts, rates, hashes — never raw prompts.
These invariants match the SDK’s runtime contract; the export does not re-introduce data the SDK boundary already kept out.

Verifying an export

Every row in the archive is sourced from the same database the dashboard renders to your operators. Any discrepancy between the export and the live dashboard is a bug — please report it to support so it can be reconciled before the auditor sees it. To verify the manifest matches the archive contents on your own machine:

Plan gating

The export is available on the Enterprise plan. On other plans the export modal renders an upsell — the preview endpoint surfaces feature_enabled = False so the UI knows to redirect to the pricing page without building an empty archive. See Pricing for the full plan comparison.

What’s next

Audit-event schema

Field-by-field reference for the rows inside request_logs.csv.

Policy change control

How operator actions surface in audit_log.csv and what that means for SOC 2 change management.

Privacy and security

The runtime privacy contract that makes the export compliance-safe.

Trust Center

Live certifications, security posture, and downloadable evidence.