Privacy

Data map

Ingest a Fideslang manifest, explore systems and datasets, and compare data map versions.

RolesViewerEditorAdminRoute/privacy/data-mapShown toPrivacy organizations

What it is

The data map is the observed picture of what your software processes. It is built from Fideslang manifests your engineers publish from CI: one file per repository listing each system, the personal data it stores, and why. From that evidence Noru derives systems, datasets, processing activities, purposes, data categories, and data subjects, and it is the raw material for records of processing, regulation coverage, and transfer analysis. Legal fields are never derived here; they are confirmed on the record.

Where to find it

PrivacyData map
Data map explorer with six columns from Systems to Data subjects and a selected node traced across themData map explorer with six columns from Systems to Data subjects and a selected node traced across them
Select a node to trace a data flow. Solid edges are the processing chain; dashed edges are storage.

With nothing connected yet the page reads Nothing mapped yet and offers Get the setup instructions (editors) or a read-only note. Once a source has pushed, the header counts nodes and holds a Sources button.

The explorer has six columns, left to right: Systems, Datasets, Processing activities, Purposes, Data categories, Data subjects. Solid edges join system to activity to purpose, category, and subject; dashed edges join system to dataset and dataset to category. The toolbar has a search box, one chip per column to hide or show it, a Filters popover (Sensitive data only, Sale, sharing & transfers), and Clear selection. Everything is in the URL: ?node=, ?q=, ?category=, ?sensitive=1, ?transfers=1.

Key actions

Connect a source

Connecting needs the editor or admin role and an API key with the write:datamaps scope from Settings → Developer.

Click Sources, then Connect (or open /privacy/data-map?connect=true). The Connect a source dialog opens.
In each repository, generate a Fideslang manifest with the Privacy Taxonomy plugin (github.com/noru-tech/privacy-taxonomy). It writes .fides/datamap.yml.
Copy the snippet from the dialog into your pipeline. It converts the YAML to JSON and posts a body with the source slug, commit SHA, branch, and manifest to $NORU_API_URL/v1/privacy/datamaps with a Bearer token.
Click Done. The source appears in the Sources sheet after its first push.
The Connect a source dialog with the CI snippetThe Connect a source dialog with the CI snippet
The snippet is meant to be handed to whoever owns the pipeline.

Trace a data flow

Click any node. The bottom bar shows its label, column, badges (Special category, Third party), and what it is connected to, grouped by column. An activity also shows Legal basis, Retention, and the badges Cross-border transfer, Sale / sharing, Targeted ads, Profiling, and DPIA required or Assessment recommended. Edit in Records opens the record drawer at /privacy/ropa?activity=[id].

Inspect a source and its versions

Click Sources. Each row shows the name, slug, branch and last commit (or "No pushes yet"), counts of systems, datasets, and processing activities, change chips, a freshness badge, and the relative time of the last push.
Click a row. The drawer's Properties list Systems, Datasets, Activities, Last push, Branch, and Last commit, and Version history lists every push with its taxonomy warnings.
Click a version. The diff shows Initial data map or Changes in this push: added, removed, and changed rows under Systems, Datasets, and Processing activities, plus Newly special category, Newly cross-border / shared, and Taxonomy warnings.
The Sources sheet listing connected repositories with counts and freshnessThe Sources sheet listing connected repositories with counts and freshness
One row per repository that pushes a manifest.
Version diff dialog listing systems, datasets, and processing activities added, removed, and changedVersion diff dialog listing systems, datasets, and processing activities added, removed, and changed
Every push keeps an immutable version and a diff against the previous one.

Delete a source

The trash icon on a source row opens "Delete this source?". Deleting removes the source, its version history, and every system, dataset, and processing activity built from it. Records that referenced those activities lose their observed facts.

Statuses and fields

ElementMeaning
Freshness badgeHow recently the source last pushed
Change chipsWhat the last push added, removed, or changed
"N taxonomy warnings"Manifest entries that did not validate against the taxonomy; they are kept, not dropped
Special categoryThe category is Article 9 data
Third partyThe system belongs to someone else

What a push changes

Every push is checked against the previous checksum and ignored if identical; validated against the taxonomy, with problems stored as warnings; stored as an immutable version with a diff; materialised into systems, datasets, and activities; and reconciled so that items missing from the new manifest are soft-archived rather than deleted. Approved records whose facts changed become Changed after approval in the inbox.

Tips and gotchas

Push from the default branch only. Each push is a version, and feature branches will churn the diff and the inbox.

The context line on the page says it plainly: confirm purpose, lawful basis, recipients, retention, and approval in Records before treating the map as legal analysis.

What Noru does not do

Noru does not scan your code. The map contains exactly what the manifest says; a system your engineers left out is not on it. It does not infer lawful basis, retention, or recipients from the manifest, and it does not delete records when a manifest shrinks.

Last updated on