303.525 datasets geïndexeerd1.419 uitgevers
Open Data IndexDe index van open data over Nederland
Bronnen›Verkeer en vervoer

Verkeersborden en bereikbaarheidskaart (NDW)

Het Nationaal Dataportaal Wegverkeer houdt een landelijk bestand bij van verkeersborden: per bord de RVV-code (A1 voor een snelheidslimiet, C22a voor een milieuzone …), onderborden, kant van de weg, het NWB-wegvak, gemeente, verkeersbesluit en sinds wanneer het bord gezien is. Alleen al in Amsterdam stonden er op 16 oktober 2026 97.175 borden in. De verkeersborden-API v4 geeft het actuele beeld (dagelijks bijgewerkt) en alle wijzigingen; het hele bestand is ook te downloaden. Daarnaast een bereikbaarheidskaart die per gemeente berekent welke wegen open zijn voor een voertuig met bepaalde afmetingen, nog in bèta.

Verkeer en vervoerOpenAPIDownloadNederland · verkeersbord
Actueel · bijgewerkt 5 uur geleden · gecontroleerd 17:23
docs.ndw.nu
Schermafbeelding van docs.ndw.nu

Verkeersborden C22a (milieuzone) per gemeente: het meest Amsterdam (91 borden), dan Rotterdam en Arnhem

Verkeersborden C22a (milieuzone) per gemeente, oktober 2026, in borden. Totaal: 615; de grootste 12 van 64 categorieën staan in de grafiek. Amsterdam is 15% van het totaal. Alle borden met RVV-code C22a in het actuele beeld (status geplaatst). Dit telt borden, geen zones: een zone heeft een bord bij elke ingang. Gemeentenamen zoals NDW ze geeft ('s-Gravenhage = Den Haag).

Bron: NDW, verkeersborden-API v4 (actueel beeld) · opgehaald 25 oktober 2026Open de tabel Los blok

Wat je ermee kunt bouwen1

Wat kun je ermee?4 ideeën

Om te beginnen

Waar begint de milieuzone?

Er staan 615 borden C22a (milieuzone) in 64 gemeenten; Amsterdam heeft er 91, Rotterdam en Arnhem elk 73. Zet ze op de kaart en je ziet de grens van elke zone.

Om te beginnen

Hoeveel borden staan er in jouw gemeente?

Vraag het actuele beeld op met countyCode (bv. GM0599 voor Rotterdam) en tel per RVV-code.

Voor gevorderden

Van bord naar verkeersbesluit

Een deel van de borden heeft een trafficOrderUrl zoals gmb-2024-403036: het verkeersbesluit in het Gemeenteblad. Zo controleer je of er voor elk bord een besluit is.

Voor gevorderden

Wat verandert er op straat?

De events-dienst geeft elke gepubliceerde wijziging met een tijdstempel, ook borden die zijn weggehaald (status REMOVED). Volg zo een gemeente die naar 30 km per uur overstapt.

Zo verwerk je het4 stappen

  1. Altijd filteren

    current-state zonder filter geeft het hele land. Alleen rvvCode=A1 is al 97 MB, Amsterdam 56 MB. Filter op rvvCode, countyCode, roadAuthorityType (R, P, G, W, T), status of bbox. Een onbekende parameter wordt stil genegeerd.

    https://wegkenmerken.ndw.nu/api/rest/static-road-data/traffic-signs/v4/current-state?rvvCode=C22a&countyCode=GM0363
  2. Wijzigingen bijhouden

    events geeft maximaal 100 wijzigingen per keer, oudste eerst. offset is een tijdstempel: geef het tijdstip van de laatste ontvangen wijziging mee om verder te lezen.

    https://wegkenmerken.ndw.nu/api/rest/static-road-data/traffic-signs/v4/events?limit=100&countyCode=GM0363
  3. Het hele bestand

    Het actuele beeld als CSV (246 MB gezipt) of GeoJSON in RD en in graden, op opendata.ndw.nu.

    https://opendata.ndw.nu/verkeersborden_actueel_beeld.csv.gz
  4. Bereikbaarheidskaart (bèta)

    GET municipalities geeft de 342 gemeenten met hun grenzen; POST accessibility.geojson met voertuigkenmerken en een gemeente geeft de wegvakken die wel en niet toegankelijk zijn. Volgens de beschrijving alleen bedoeld voor wegbeheerders.

    https://data.ndw.nu/api/rest/static-road-data/accessibility-map/v2/municipalities

Interessante koppelingen

Vergelijkbare bronnen

  • OpenStreetMap

    OSM heeft maximumsnelheden en toegangsregels als kenmerk van de weg, ingevoerd door vrijwilligers; NDW heeft de borden zelf, met foto en verkeersbesluit.

  • Nationaal Wegenbestand (NWB) en weggegevens

    Het wegennet zelf; WEGGEG heeft maximumsnelheden alleen voor rijkswegen. De verkeersborden gelden voor alle wegen.

  • NDW actuele verkeersgegevens

    Live snelheden en intensiteiten van hetzelfde portaal; dit is de statische kant van de weg.

Waar je op moet letten

  • Bèta en zonder rechten

    De bereikbaarheidskaart is volgens de eigen beschrijving in bèta, alleen bedoeld voor wegbeheerders, en er kunnen geen rechten aan worden ontleend. De situatie op straat gaat altijd voor.

  • Niet gevalideerd

    Alle 615 milieuzoneborden hadden validated = n. De borden komen uit inwinning en meldingen; een bord kan ontbreken of al weg zijn.

  • Oude adressen werken niet meer

    De oude adressen data.ndw.nu/api/rest/static-road-data/traffic-signs/v1/… geven 404. Gebruik v4 op wegkenmerken.ndw.nu.

  • Grote antwoorden

    Er is geen paginering in current-state: een gemeente of een veelvoorkomende code levert tientallen MB's op. Voor heel Nederland is het downloadbestand beter.

APIREST (GeoJSON, JSON, CSV) · gelezen 16 okt 2026

StandaardREST (GeoJSON, JSON, CSV)documentatie
Toegang zonder sleutel

Geen sleutel of account; alle aanroepen werkten anoniem. getest

Omvang615

milieuzoneborden C22a in het actuele beeld, in 62 gemeenten (16 okt 2026); het hele bestand is 235 MB gezipt getest

Formaten

geojsonjsoncsv

Basisadres

https://wegkenmerken.ndw.nu/api/rest/static-road-data/traffic-signs/v4

Endpoints 5

  • GET/current-stateHet actuele beeld: elk bord als GeoJSON-feature (of CSV), dagelijks bijgewerkt. Met een filter wordt live gefilterd, inclusief wijzigingen van vandaag. Zonder status-filter alleen geplaatste borden (PLACED).
  • GET/eventsAlle gepubliceerde wijzigingen, oudste eerst, maximaal 100 per keer; verder lezen met offset (tijdstempel).
  • GET/collectionsDe ondersteunde coördinatenstelsels (CRS84 en RD, EPSG 28992).
  • GEThttps://wegkenmerken.ndw.nu/api/images/{id}Foto van het bord (JPEG, ~14 kB); het adres staat in imageUrl.
  • GEThttps://opendata.ndw.nu/verkeersborden_actueel_beeld.csv.gzHet hele actuele beeld als bestand: CSV (235 MB gezipt) of GeoJSON in RD (_rd.geojson.gz, 228 MB) en in graden (_wgs84.geojson.gz, 236 MB). Eén keer per dag rond 12:05.

De API's van deze bron 1 · uit de documentatie van de aanbieder uit de beschrijving

Bereikbaarheidskaart API (v2, bèta)

Berekent per gemeente of begrenzingskader welke wegvakken bereikbaar zijn voor een voertuig met bepaalde afmetingen, gewicht, brandstof en milieuklasse, op basis van het NWB en de verkeersborden. Geen sleutel. Volgens de eigen beschrijving alleen voor wegbeheerders en in bèta. Wij deden geen aanroepen: robots.txt van data.ndw.nu zegt Disallow: /.

https://data.ndw.nu/api/rest/static-road-data/accessibility-map/v2
  • POST/accessibility.geojsonBereikbare en niet-bereikbare wegvakken als GeoJSON. Body: area (type municipality met id GM0344, of boundingBox), vehicle (type bus/car/light_commercial_vehicle/motorcycle/tractor/truck, width, height, weight, length, axleLoad, hasTrailer, emissionClass, fuelTypes), optioneel destination, exclusions en effectivelyAccessible
  • GET/municipalitiesAlle gemeenten met hun begrenzing
  • GET/road-operatorsAlle wegbeheerders

Filteren uit de beschrijving

Elke voorwaarde is een eigen queryparameter; combinaties gelden als EN. Exacte overeenkomst, geen jokertekens.

=komma = OF binnen rvvCode en roadSectionId

Parameters 11

countyCodeGemeentecode, bv. GM0363 (Amsterdam). Ander formaat (GM363) geeft 400 met de regel ^GM\d{4}$. Ook op /events.getest
rvvCodeRVV-code van het bord (A1, C22a …); meerdere met komma's (C22a,C22c).getest
roadSectionIdNWB-wegvak-id's; geen limiet op het aantal.uit de beschrijving
statusStatus van het bord. Zonder deze parameter kreeg je alleen PLACED; status=REMOVED gaf 407 weggehaalde milieuzoneborden.getest
roadAuthorityTypeSoort wegbeheerder als letter uit de specificatie (die legt de letters niet uit). Met G bleven er in Rotterdam 72 van de 73 C22a-borden over.getest
roadAuthorityCodeCode van één wegbeheerder.uit de beschrijving
bboxBegrenzingskader; 4.88,52.36,4.92,52.38 met rvvCode=C22a gaf 2 borden.getest
bbox-crs / crsStelsel van de bbox en van de antwoorden: http://www.opengis.net/def/crs/OGC/1.3/CRS84 (standaard) of http://www.opengis.net/def/crs/EPSG/9.9.1/28992 (RD).getest
contentTypecontentType=csv (of de kop Accept text/csv) geeft een platte CSV met 36 kolommen.getest
offsetAlleen /events: publicatietijdstip vanaf waar je leest (yyyy-MM-ddTHH:mm:ss.SSSZ); standaard 1970.uit de beschrijving
limitAlleen /events: blokgrootte, standaard en maximaal 100 (101 geeft 400).getest

Velden per bord (current-state, GeoJSON-properties) 15

NaamTypeBetekenis
iduuidVaste id van het bord
rvvCodetekstBordcode volgens het RVV 1990 (A1, C22a …)
blackCodetekstDe waarde op het bord, bv. 50 bij een A1
zoneCodetekstZB, ZH, ZE, ZO of leeg (zonebord)
statustekstPLANNED, PLACED of REMOVED
validatedj/nGecontroleerd; alle 615 C22a-borden hadden n
textSignslijstOnderborden met type (VRIJ, EMIS, KEN, RICH, UIT, VOOR, TIJD), tekst en bij TIJD openingHours in OSM-notatie
placement / side / bearingtekst / gradenPlaatsing (L, B), kant (L, R, N, NO …) en kijkrichting 0–359
fractiongetalPositie op het wegvak, 0 tot 1
drivingDirectiontekstH of T: met of tegen de digitaliseerrichting van het NWB-wegvak
roadName / roadNumber / roadSectionId / nwbVersiontekst / getal / datumWeg en NWB-wegvak waar het bord bij hoort, met de NWB-versie
countyCode / countyName / townNametekstGemeente (GM-code) en woonplaats
Toon alle 15
NaamTypeBetekenis
imageUrlurlFoto van het bord
firstSeenOn / lastSeenOn / placedOn / removedOndatumWanneer het bord voor het eerst en laatst gezien, geplaatst of weggehaald is
trafficOrderUrltekstKenmerk van het verkeersbesluit, bv. gmb-2024-272098

Limieten en valkuilen

  • current-state heeft geen paginering: zonder filter krijg je het hele land. Alleen rvvCode=A1 is al 97 MB, Amsterdam 56 MB. Filter altijd, of neem het downloadbestand. ervaring
  • events: hoogstens 100 per aanroep (limit=101 geeft 400). getest
  • Geen sleutel en geen gedocumenteerde snelheidslimiet; antwoorden kwamen binnen 0,1 seconde voor een gefilterde vraag. getest
  • De documentatie noemt nog data.ndw.nu en de parameternamen rvv-code en road-section-ids. De OpenAPI-specificatie en de werkende API gebruiken wegkenmerken.ndw.nu/api met rvvCode en roadSectionId. De oude v1-adressen op data.ndw.nu geven 404. getest
  • Een onbekende parameter wordt stil genegeerd (foo=bar gaf gewoon 73 borden). Een tikfout in een filternaam levert dus ongemerkt het ongefilterde, veel grotere antwoord op. getest
  • events heeft geen publicatietijdstip in het antwoord, terwijl offset daarop werkt. Bewaar zelf het moment van je laatste aanroep en lees vanaf daar verder; een event kan dan dubbel binnenkomen. getest
  • In events heet de structuur anders dan in current-state: location.wgs84.latitude, location.road.roadSectionId, location.county.code, details.imageUrl. current-state is plat. getest
  • Koppel roadSectionId aan het NWB (wvk_id), maar let op nwbVersion: wegvakken veranderen tussen NWB-versies. ervaring
  • wegkenmerken.ndw.nu heeft geen robots.txt (de webapp geeft voor elk pad de startpagina terug); data.ndw.nu stuurt robots.txt door naar een pagina met Disallow: /. Daarom hebben wij de bereikbaarheidskaart niet aangeroepen. getest

Probeer het HTTP 200 · 386 ms · 16 okt

https://wegkenmerken.ndw.nu/api/rest/static-road-data/traffic-signs/v4/current-state?rvvCode=C22a&countyCode=GM0363
{
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "id": "061dc8bb-f323-48d7-bc5b-a03e6fa9187c",
      "geometry": {
        "type": "Point",
        "coordinates": "…"
      },
      "properties": {
        "validated": "n",
        "rvvCode": "C22a",
        "zoneCode": "ZB",
        "status": "PLACED",
        "textSigns": [
          {
            "type": "EMIS",
            "text": "[[c22a3]]"
          },
          {
            "type": "EMIS",
            "text": "[[c22a9]]"
          }
        ],
        "placement": "L",
        "side": "W",
        "bearing": 274,
        "fraction": 0.9918174,
        "drivingDirection": "T",
        "roadName": "Jan Vroegopsingel",
        "roadSectionId": 600980960,
        "nwbVersion": "2026-05-01",
        "countyName": "Amsterdam"
      }
    },
    {
      "type": "Feature",
      "id": "087aa8eb-2990-498e-af72-e185d1dfd664",
      "geometry": {

Ingekort antwoord, opgeslagen bij het oogsten. Klik op het adres voor het echte, actuele antwoord.

Gelezen uit NDW Docs: Verkeersborden download API 4.0, met alle velden, parameters en voorbeelden · OpenAPI 3-specificatie (versie 4.0, server wegkenmerken.ndw.nu/api) · NDW Docs: Bereikbaarheidskaart API (bèta) · Broncode van de bereikbaarheidskaart, met een kopie van de OpenAPI-specificatie v2. Labels: uit de beschrijving staat in wat de api zelf publiceert. getest uit onze eigen kleine aanroep. platform geldt voor elk api van dit platform, volgens de documentatie. ervaring zelf ondervonden bij het bouwen van open data index.

Zo haal je het op

curl "https://wegkenmerken.ndw.nu/api/rest/static-road-data/traffic-signs/v4/current-state?rvvCode=C22a"

Meer van NDW in onze index

4 datasets in data.overheid.nl, Nationaal Georegister. Dit zijn de laatst gewijzigde.

Alles over NDW

Meer in dit thema

Bekijk hoe deze pagina is opgebouwd
bron: ndw-wegkenmerken
blokken: []
secties:
  - ideeen
  - verwerken
  - koppelingen
  - vergelijkbaar
  - beperkingen
  - code
cache:
  tag: bron:ndw-wegkenmerken
  ververs: na statuscheck, als de bron nieuwer is
statuscheck:
  methode: Last-Modified van het downloadbestand verkeersborden_actueel_beeld.csv.gz
  verwacht: dagelijks

Bron: content/bronnen/ndw-wegkenmerken.yaml · Markdown