Naar inhoud
Identix.org Vraag het platform
Architectuur

Hoe het werkt

live from the source, in one fixed format — and a handful of hard rules to keep it. This page explains exactly how the platform works, so you know what you get and what you can trust.">>Eén belofte — live vanaf de bron, in één vast formaat — en een handvol harde regels om die te houden. Deze pagina legt uit hoe het platform precies werkt, zodat u weet wat u krijgt en wat u kunt vertrouwen.


Van bron tot antwoord

1 · Broninstantie

>PDOK, CBS, RDW, RCE, JenV, Rechtspraak, Gemeente Amsterdam, of een van de 20.000 catalogus-datasets. Hun API, hun regels.

2 · Adapter

>Per bron een eigen adapter die de brontaal spreekt: OData, CKAN, XML, JSON-LD, HTML — en de eigenaardigheden afvangt.

3 · Normalisatie

>Alles wordt snake_case, ISO-8601, WGS84. Onbekend wordt null — nooit een puntje of een lege string.

4 · U

>Eén envelop met data, herkomst, licentie en meetmoment. Zelfde vorm, elke bron, elke keer.

Geen datastore in het midden. Behalve voor query-bare datasets bestaat er een 24-uursmateriaallaag (hieronder). Caching is kort en eerlijk vermeld: uit_cache in bronnen[] zegt per bron of uw antwoord vers gemeten is.


De envelop

Elk antwoord — bron-API, dataset of eigen dienst — heeft dezelfde zeven vaste onderdelen:

GET /v1/bag/adressen?q=Dam 1 — respons (ingekort)
{
  "api": "Identix.org",
  "onderdeel": "bag.adressen",          // welke dienst antwoordde
  "bron_type": "bron-api",              // bron-api | dataset | eigen-dienst
  "gegenereerd_op": "2026-08-21T11:22:03Z",  // peilmoment, ISO-8601
  "duur_ms": 184.5,                     // eerlijk gemeten totaltijd
  "integriteit": { "algoritme": "sha-256", "hash": "145afe…" },
  "bronnen": [ { "naam": "PDOK BAG", "licentie": "CC0 1.0",
                 "duur_ms": 181.2, "uit_cache": false, "status": "ok" } ],
  "data": { … }                          // genormaliseerde inhoud
}

Volledige specificatie, inclusief foutformaat en de enterprise-laag: de documentatie.


Integriteit: het antwoord bewijst zichzelf

Hash over de data

sha-256 over de canonieke JSON van data. Ontvang je iets anders dan je verwachtte, dan zie je dat — letterlijk — in het antwoord.

ETag / 304

De hash is tevens de ETag. Onveranderd antwoord? Dan krijgt u een 304 zonder data — bandwidth en tijd bespaard, bewijs in handen.

bron_url per antwoord

Elke respons verwijst naar de pagina of call bij de broninstantie zelf: controleer ons altijd, rechtstreeks.

Standaarden: ISO-8601 voor tijden, WGS84 voor coördinaten, RFC 7807 voor fouten, RFC 9110 voor voorwaardelijke verzoeken.


Materiaal: query-baar zonder datastore

Een CSV van 40.000 rijen is geen API — filteren kan niet op een bestand. Daarom heeft elke query-bare dataset een materiaallaag: een 24-uursmomentopname die 's nachts en op verzoek ververst, en waar u met echte queries op werkt:

filteren, sorteren, pagineren — op elke dataset
GET /v1/datasets/{id}/query?waar=TYPE_PO=BO&sorteer=AANTAL_LEERLINGEN&richting=desc&rijen=50
GET /v1/datasets/{id}/schema        // velddocumentatie: typen + voorbeeldwaarden

Ouder dan 24 uur bestaat niet; wie de actuele bron wil, krijgt de actuele bron. Zo blijft het platform een façade en nooit een kopie waar data gaat doodliggen.


Fouten, ook als de bron uitvalt

Bron onbereikbaar

Bij een enkele bron-API: RFC 7807 met status, title en detail — gestructureerd, niet een leeg scherm.

Deelfout in een eigen dienst

Diensten die meerdere bronnen combineren blijven leveren: de uitgevallen bron staat in bronnen[] met status: "onbeschikbaar", de rest van het antwoord staat er gewoon.


De enterprise-laag: overal hetzelfde

FunctieWerking
waar / velden / sorteerFilters, veldselectie en sortering op élke lijstrespons — ook op lijstvelden zoals percelen en kerncijfers.
rijen / start + LinkPaginering met RFC 5988 Link-headers; tot 500 rijen per call.
ETag / 304 + gzipVoorwaardelijke verzoeken en compressie, standaard aan.
POST /v1/batchTot 25 calls parallel in één verzoek, met de antwoorden in volgorde terug.
Rate limiting600 calls per uur anoniem; 100.000 per uur met een gratis sleutel. Grenzen staan in respons-headers.
SleutelsVrij aan te vragen via POST /v1/sleutels — voor hogere limieten en gebruiksinzicht.

Het landschap

Welke techniek Nederland spreekt — en hoe wij dat trechteren

Alle live bronnen plus de geclassificeerde werklijst, geteld per protocol. REST domineert, maar eenderde van het landschap spreekt iets anders — OData, SPARQL, OGC, SRU, CKAN, GraphQL of gewone bestanden. Elk protocol krijgt hier zijn eigen adapter; achter de gevel spreekt alles één envelop.

aantal bronnen per protocol · live register + werklijst

Laden uit het register…

Bron: GET /v1/bronnen + GET /v1/backlog · onbekend = nog niet geclassificeerd