What is a snapshot?
A snapshot is the structured output of a single scan: one self-contained view of the regulatory landscape for a specific configuration of jurisdictions, topics, and time horizon. Everything you see on the dashboard and everything the API returns is some projection of a snapshot.
If you have used the app, you have already read several snapshots. If you have called GET /v1/snapshots/{id} from the API, you have a snapshot envelope sitting in your response. They are the same object.
The shape
A snapshot is made up of five things:
Snapshot
├── Items individual regulatory findings
├── Trends cross-cutting patterns (convergence, divergence, …)
├── Executive Summary structured: bottom-line + priorities
├── Executive Narrative long-form prose briefing
└── Changes vs the prior comparable snapshot (when one exists)Plus a small _meta block with engine and cost telemetry. That is the entire object.
Items
The atomic unit. Each item is one regulatory development — a consultation, a proposal, a final rule, an enforcement action, a deadline — sitting at the intersection of one jurisdiction (UK, EU, US, Singapore, …) and one regulatory area (AML / KYC, Capital Markets, ESG / Sustainable Finance, …). Items carry an expected date, an impact rating, a likelihood rating, a one-paragraph summary, and a link back to the regulator’s primary source.
In the product, items show up as cards on the dashboard’s detail panel and as cells on the heatmap. In the API, items are what
GET /v1/snapshots/{id}/itemsreturns.
Trends
A typed observation about a pattern across items — five or six per scan is typical. Trend types: convergence (jurisdictions moving toward each other on a topic), divergence (splitting apart), emerging (a topic surfacing for the first time), acceleration (an existing topic moving faster), and interconnected (two topics increasingly treated as one). Trends are the analysis’s read on what the items mean together, not just what each one is.
In the product, trends appear on the Trends tab. In the API, they are at
GET /v1/snapshots/{id}/trends.
Executive Summary
A structured digest: a one-line bottom line plus an ordered list of priorities, each one or two sentences. The shape you would render as bullets in your UI or hand to a chart.
In the product, the executive summary drives the Executive Intelligence card at the top of the Overview tab. In the API, it is at
GET /v1/snapshots/{id}/executive-summary.
Executive Narrative
The long-form briefing. A multi-paragraph piece of prose written for a busy reader, opening with Bottom Line Up Front, walking through each priority, and closing with Trend Analysis, Key Deadlines, and a Watch List. This is what most downstream artifacts (audio briefings, slide intros, tearsheets) consume.
In the product, the narrative is the Briefing tab, with an inline Listen affordance. In the API, it is at
GET /v1/snapshots/{id}/executive-narrative, with an optional?language=parameter for translations.
Changes (and the drift field)
On the second and subsequent scans of a given configuration, the snapshot also includes a change overlay — a structured comparison against the most recent comparable prior snapshot. New items, updated items, unchanged items, and items that have aged out of scope are each labelled. The first scan in a series will not have one; come back after the second run with the same configuration.
In the product, changes drive the heatmap’s change markers and the “What’s Changed” panel under the Overview tab. In the API, this resource is named
driftfor legacy reasons — you read it atGET /v1/snapshots/{id}/drift. The user-facing language across the rest of the product is “changes”; the API field name has been kept stable across versions.
See Changes between scans for the full discussion of how change detection works.
How the API surfaces map to the product
Every part of the snapshot has both a product surface and an API resource. Here is the rosetta stone:
| Concept | Product surface | API resource |
|---|---|---|
| The whole envelope | A snapshot loaded onto the dashboard | GET /v1/snapshots/{id} |
| Items | Heatmap cells, timeline bars, detail panel cards | GET /v1/snapshots/{id}/items |
| Trends | Trends tab | GET /v1/snapshots/{id}/trends |
| Executive summary | Executive Intelligence card on Overview | GET /v1/snapshots/{id}/executive-summary |
| Executive narrative | Briefing tab | GET /v1/snapshots/{id}/executive-narrative |
| Changes | Change markers + “What’s Changed” panel | GET /v1/snapshots/{id}/drift |
What you see on the Trends tab is, byte-for-byte, what the API returns from the /trends sub-resource. Pick the surface you prefer; the data is the same.
Why snapshots are immutable
A snapshot captures the regulatory picture at the moment the scan ran. Once produced, it does not change. If a regulator publishes a new consultation tomorrow, that does not retroactively edit a snapshot from yesterday — you would re-run the scan to produce a new snapshot that includes it.
This is what makes the change overlay possible. Comparing yesterday’s snapshot to today’s only makes sense if each one is a stable record of what it knew when it ran.
What comes next
- Scans and snapshots — the lifecycle that produces a snapshot.
- Changes between scans — how the change overlay is built.
- Reading the dashboard — the product walk-through of these surfaces.
- Snapshots — the full API reference for the envelope and its sub-resources.