1
Open Changes
From the project sidebar, go to Monitor → Changes.
2
Pick a time range
Use the range selector (Last 24 Hours, Last 7 Days, Last 30 Days) to set the window. The feed is sorted newest-first.
3
Filter by kind
Click any kind chip to narrow the feed to just that kind — click again to remove it. Chips are additive: select two kinds to see both.
4
Report your own deploys (optional)
Wire your CI pipeline to
POST /v1/projects/:id/changes so pipeline deploys show up on the same timeline as everything else. See Reporting changes from CI below.The eight change kinds
Every event on the timeline has one of eight kinds:
Each row also carries a severity (
info, notable, or high), shown as a colored left border, and — where the underlying source captured one — a View diff popover showing the before/after values.
Filters
If any underlying source doesn’t respond in time, a banner marks the result as partial rather than silently showing an incomplete list as complete. The banner names which source(s) were slow.
ChangeEvent fields
Changes around an incident
The incident detail page has its own “Changes around this incident” panel — the same feed, pivoted on an incident’s start time instead of a date range, split into Before and After columns. See Changes around this incident on the Incidents page for details.Reporting changes from CI
Anything your own deploy pipeline does — a Kubernetes rollout, a feature-flag flip, an infra change — is invisible to Zespan unless you tell it. Report it withPOST /v1/projects/:id/changes and it shows up on the timeline (and in the incident panel’s before/after split) as an external event, right alongside prompt deploys and policy edits.
$ZESPAN_API_URL defaults to https://api.zespan.com — only set it if you’re self-hosting. $ZESPAN_API_KEY is a project-scoped API key (see API Keys). An API key has no role attached — it’s already scoped to exactly one project — so any valid key for the target project works; there’s no separate permission check for API-key callers on this route.
Request body
A successful call returns
201 with { id, title, occurredAt }.

