Exports
Verified against v0.10.0 · internal/api/export.go, internal/poker/csv.go, internal/standup/csv.go, internal/plugin/csv.go
Any session exports to CSV from a link in its own room, or directly:
GET /api/sessions/{id}/export.csvYou must be a member of the space to fetch it. The file is named after the session title, sanitised.
Finding the session to export is the space page’s job: search the titles and filter by kind, then open the one you want and take the CSV from its room.


Columns
Section titled “Columns”Poker — ticket, story, status, estimate, votes, detail. votes is how many
people voted; detail spells out who voted what, and is only present for the
current story once it has been revealed.
Standup — name, yesterday, today, blockers, skipped.
Plugin-provided kinds — id,kind,title,phase plus one column per top-level
field of the ceremony’s wire state. The retrospective plugin’s document is
revealed, columns, cards, groups, actionItems; authorship is absent
from cards until the facilitator reveals.
Full column semantics are in the CSV reference.
It exports what you were allowed to see
Section titled “It exports what you were allowed to see”The CSV is rendered from the same redacted view the WebSocket sends, not from raw storage. An unrevealed vote is therefore structurally absent from the export — you cannot use the export as a side channel to read votes early.
Formula injection is escaped
Section titled “Formula injection is escaped”Any cell beginning =, +, -, @, tab or carriage return is prefixed with a
single quote before it is written.
Without this, a story titled =HYPERLINK("http://evil.example","click") becomes a
live formula the moment someone opens the file in Excel, Sheets or LibreOffice.
Parley writes CSV that a spreadsheet will treat as text.
What is not here
Section titled “What is not here”| Capability | Status | What to do instead |
|---|---|---|
| JSON, Markdown or PDF export | Not built | Parse the CSV, or read the session over the API. A general export framework is on the roadmap. |
| Exporting a whole space at once | Not built | Export sessions individually, or query Postgres directly — the schema is documented. |
| Scheduled or automatic export | Not built | Call the endpoint from cron with a member's session cookie. |