About

Public data exists. It does not connect.

Every public register was built as if it were the only one: different formats, different update rhythms and, most often, no shared reference by which one dataset could be placed next to another.

Our work is not obtaining the data — it is public, anyone can download it. It is making it coherent with itself and keeping it that way while the sources shift underneath us.

Independent sourcesOne contract
01 The problem

Nothing that is published was meant to be used together.

It is not ill will, it is history. Each institution published its dataset on its own, in whatever form suited it, without assuming anyone would want to put it beside another.

It breaks at

Shape

The same kind of information is published in incompatible structures, with conventions that differ from one source to the next and sometimes from one year to the next. Before anything else, you have to decide what “the same” means.

It breaks at

Rhythm

One set updates daily, another once a year, another when someone remembers. Put together carelessly they produce a picture that was never true at any moment — and that looks plausible.

It breaks at

Identity

The same entity appears in different sources spelled differently, and often none of them carries a shared identifier. To put them together you first have to prove they are talking about the same thing.

It breaks at

Absence

Part of what you need daily is not published anywhere, in any form. Not because it is hidden, but because it never existed as a ready-to-use dataset.

Every team that needs public data solves these four problems again, from scratch, for its own product. We solve them once and keep the result stable.

02 What we do

Four operations, in the same order, for any dataset.

The order is not arbitrary: you cannot link two sets before normalising them, and you cannot fill in what is missing before you know what connects to what.

A

Consolidate

We bring together the sets that describe the same thing from different angles and give them one structure. What the source splits across several files, published separately and at different times, becomes a coherent object with a documented schema.

B

Normalise

Every local convention becomes an explicit rule, applied the same way everywhere: consistent spelling, abbreviations resolved, categories reduced to fixed values instead of free text. This is not cosmetic cleanup — it is the condition without which nothing that follows works.

C

Link

Where a shared reference exists, we use it. Where it does not — and most of the time it does not — we rebuild the link from what can be deduced and verify it before publishing. We prefer an empty field to an invented link, because a wrong link does not show.

the hard part
D

Complete

We add what is missing but derivable: relationships the source leaves implicit, dimensions that only appear by comparing two sets, change over time built from successive imports. Everything we add is derived or declared. Never estimated.

03 How it happens

Five steps, identical for any dataset.

If one of them fails, the import does not reach production. We would rather have data that is a day old than data that is corrupt.

Step 1

Fetch

We take the set from the source at its declared frequency and keep the raw form, so any import can be redone.

Step 2

Process

The four operations, in order: consolidate, normalise, link, complete.

Step 3

Verify

We compare the result with the previous import. An unexpected deviation stops publication and alerts us.

Step 4

Publish

The data goes into production, the cache is invalidated, and the age of the set becomes visible in every response.

Step 5

Announce

Anything that changes substantively goes into the changelog, explained. We do not slip changes in quietly.

deviation = publication halted
04 Stability

What you build today has to still work in two years.

Sources change — that is the only certainty in public data. The point of a platform like ours is that the change stops with us.

90 days

Notice before breaking changes

Announced publicly before anything happens.

12 months

The previous version stays active

At minimum, from the announcement. We would rather maintain two versions than break someone’s production on a Tuesday morning.

∞

Identifiers are never reused

A code, once assigned, belongs to that record forever, even after the record becomes inactive.

1 field

Data age is visible

Every response tells you how old the set is. You do not have to ask us and you do not have to guess.

Public

Sources are declared

Every dataset states its provenance and licence. Partly so that migrating away is unpleasant, not impossible.

05 The contract

The catalog grows. The contract stays the same.

A second dataset is worth little if it forces a second integration. What you learn once applies everywhere.

The same shape

Response structure, error behaviour and how you page through results do not differ from one set to the next. Write the client once and reuse it.

The same gate

One way to authenticate, with access limited to exactly the sets you choose. No separate keys, no parallel accounts, no special rules per module.

The same limits

Volume, what is left and when it resets are visible on every response, the same way everywhere. You do not discover a limit by crossing it.

06 Boundaries

What we are not, so you do not waste time judging us wrong.

There are products that sound similar and differ sharply in intent. It is worth saying up front which side we are on.

We are not

A contact-data vendor

We do not sell lists for campaigns and we do not build prospecting products. What we publish exists for verification and for running your own product, and the terms say so explicitly.

We are not

A people search engine

We do not expose reverse lookup by person and we do not serve personal data without authentication. A query starts from the legal entity, not from the individual.

We are not

A proxy to the sources

We do not forward your request and we do not inherit the source’s limits. We import, process and serve from our own infrastructure — which is why the response is fast and does not go down with the source.

07 Questions

What you ask us most often.

The rest, in the frequently asked questions.

You can, it is public. But you take one set, in its own form, with no links to the others, and you take on all the reconciliation work. The cost is not the download, it is what follows — and especially what follows eight months later, when the source changes and nobody notices right away.

See what that means in practice. 3.000 requests a month, the whole catalog, no card.
Generate a token See the solutions