Export your workspace data
An owner or admin can download a copy of everything in the workspace as a single ZIP file. Every plan includes it. Use it as your own backup, or to answer a data portability request.
Download the export
Section titled “Download the export”- Open Settings and select the Data tab.
- Under Export workspace data, click Download ZIP.
The file is named keel-workspace-export- followed by the date. Keel builds it while it downloads,
so a large workspace can take a few minutes. Keep the tab open until the download finishes.
Members and auditors see the Data tab with a note that only an owner or admin can export the workspace. An auditor who needs evidence files can download the evidence package from the Evidence page instead.
What is in the ZIP
Section titled “What is in the ZIP”| Path | What it holds |
|---|---|
data/<table>.json |
Every row of one table, as a JSON array. Values keep their database types, and timestamps are in UTC. |
data/<table>.csv |
The same rows as CSV, ready to open in a spreadsheet. Nested values are written as JSON text. |
files/evidence/ |
Evidence files you uploaded, plus files Keel stored as evidence for you, such as training certificates. |
files/trust-docs/ |
Documents uploaded to your Trust Center. |
files/answer-files/ |
Completed questionnaire files Keel produced for you. |
manifest.json |
When the export ran, which workspace it came from, and the details for each table and file folder. |
There is one JSON file and one CSV file for every table that holds workspace data, including
organizations, which holds the workspace record itself. A table with nothing in it still gets
both files, so an empty file means the table was read and had no rows.
For each table, manifest.json lists the columns exported, the columns left out, and how many
rows went into the JSON file and the CSV file. For each file folder it lists how many files and
bytes it holds, and any file that could not be found.
What is left out
Section titled “What is left out”Credentials and secrets are not exported. They are useless outside Keel, and a backup copy gets emailed and shared in ways the workspace itself does not. Keel drops the column rather than blanking it, so the value never leaves the database. The columns left out include:
- hashes of API keys, invite links, portal links and one-time codes
- webhook signing secrets
- connector credentials, which Keel stores encrypted
- Slack and Teams channel URLs and outbound webhook URLs, which work as credentials on their own
- mobile push tokens, unsubscribe tokens and domain verification tokens
- the subject and contents of emails Keel sent, which carry invite links, portal links and verification codes. The email log still shows who each email went to, which kind of email it was, and whether it was sent.
The redactedColumns list for each table in manifest.json names exactly what was left out.
Reading the CSV files
Section titled “Reading the CSV files”A CSV cell that begins with =, +, - or @ gets a leading apostrophe, so a spreadsheet shows
it as text rather than running it as a formula. That includes negative numbers. When you need
exact values, read the JSON file for the same table.
Limits
Section titled “Limits”- Size. A single ZIP cannot reach 4 GiB or hold more files than the ZIP format allows, and one download can only read so many records and files. If the workspace is past any of these limits, Keel says so before the download starts and nothing is downloaded. Contact support for help with a workspace that size.
- Read failures. Keel reads every table and lists every storage folder before the download starts. If any of them cannot be read, you get a message instead of a ZIP, and nothing in the workspace has changed. Try again a moment later. If storage fails partway through, the browser reports the download as failed rather than saving part of it.
- Missing files. If a file a record points to is no longer in storage, the ZIP holds a
.missing.txtnote at that path, andMISSING-FILES.txtlists every such path. - Changes during the export. Keel reads each table twice, once for the JSON file and once for the CSV file. If someone edits the workspace while the export runs, the two files can differ by those edits. The manifest records each file’s own row count so you can see it.
- Activity history. The export includes the workspace activity log as a table. For the audit log export on Enterprise, see Workspace settings.