What an export contains
Each row is one team aggregate over a period: the last 7 days in one summary, or one row per UTC day.
Every export also states the organization’s
cohort_floor (the privacy floor), the aei_version and the granularity.
A metric with no value is an empty cell, never 0, so a gap can’t be read as a score.
When team human-state views are off under Trust → Privacy controls, the human-state columns (
deep_work_availability, focus_fragmentation, capacity_coverage, alignment_rate and related) are blank in every export, and the export’s human_state_withheld_reason says so. Work and AI-adoption columns are still filled in. They fill in once the setting is turned on.What an export never contains
- Per-person rows. Not available on any plan: an export can only be built from team aggregates, so there is no individual row to unlock.
- Raw human-state scores or body signals. Human-state columns are team totals, and only when enough people contributed to meet the privacy floor. Work and AI-adoption columns have no contributor floor, because they never contain human state.
- Prompts, code or content. AI adoption is measured from tool names and counts only.
Download a CSV
Under Team export, choose a Range (7, 30 or 90 days) and the Rows (one summary for the whole range, or one row per day). The preview below shows the rows exactly as your BI tool will get them, including empty periods and withheld human-state columns. Then select Download CSV. Each download is recorded in the organization’s audit log.Send to a webhook
- Select Add destination.
- Enter an
https://URL. Plainhttp://addresses are refused, since exports are only delivered over an encrypted connection. - Choose a cadence (daily or weekly) and a granularity (the last 7 days in one summary, or one row per day).
- Select Add destination and copy the signing secret. It’s shown once and can’t be retrieved later. If you lose it, remove the destination and add it again.
Schedule
A new destination receives its first export within the hour. After that, daily destinations receive one roughly every 24 hours and weekly ones every 7 days, each covering the 7 days before delivery. A failed delivery isn’t retried. The next one follows the destination’s usual schedule, so check Last delivery if your data stops arriving. Pause stops deliveries without deleting the destination; Remove deletes it and its signing secret.The request
Each delivery is aPOST with a JSON body and these headers:
2xx status within 30 seconds. Any other answer, or no answer in time, is recorded as a failed delivery.