
Geoservices Provincie Noord-Holland (ArcGIS REST)
De ArcGIS-server van de provincie Noord-Holland, met bijna 200 diensten in de hoofdmap en zes submappen. Op 16 oktober 2026 telden we 3.843 bladlagen op de server; omdat dezelfde laag in veel verzameldiensten terugkomt, houden we er na ontdubbelen 2.683 bij in onze index. Drie kwart staat in de map oi_op (omgevingsinformatie), met onder meer een tijdreeks van de omgevingsverordening, de provinciale monumenten en de Natuurbeheerplannen per jaar. Bijna niets hiervan staat in data.overheid.nl of het Nationaal Georegister.

Wat er allemaal in zit2.732
Alle diensten en lagen op deze ArcGIS-server, elke nacht opgehaald. Elke laag heeft een eigen pagina met velden, geometrie en een query-aanroep.
Provinciale monumenten in Noord-Holland naar soort: het meest kleine objecten (275 objecten), dan Stelling van Amsterdam en keringselementen
Provinciale monumenten in Noord-Holland naar soort, oktober 2026, in objecten. Totaal: 761; de grootste 6 van 6 categorieën staan in de grafiek. Kleine objecten is 36% van het totaal. Geteld met één statistiekaanroep op de laag (veld srt_monume). Een monument kan uit meer objecten (vlakken) bestaan. De gemeentenamen in de laag zijn deels van voor herindelingen (Zeevang, Graft-De Rijp).
Wat kun je ermee?3 ideeën
Provinciale monumenten op de kaart
De laag Provinciale monumenten INSPIRE heeft 761 objecten: 275 kleine objecten, 224 delen van de Stelling van Amsterdam, 150 keringselementen en 102 waterstaatkundige werken. Haal ze op als GeoJSON en maak een wandelroute.
Kaartbeeld zonder code
Elke MapServer heeft ook een WMS. Plak de GetCapabilities-url in QGIS en je hebt de lagen als kaart.
Hoe veranderde de omgevingsverordening?
De dienst oi_povnh_tijdreeks bevat versies van de provinciale omgevingsverordening naast elkaar. Vergelijk twee versies van dezelfde laag en zie welke gebieden erbij kwamen of verdwenen.
Zo verwerk je het4 stappen
Blader per map
Let op het pad: /ags/rest/services, niet /arcgis/. De map oi_op heeft de meeste diensten; ondergronden bevat luchtfoto's (rasters, niet te bevragen).
https://geoservices.noord-holland.nl/ags/rest/services/oi_op?f=json
Haal een laag op als GeoJSON
Filter met where en vraag graden met outSR=4326. maxRecordCount verschilt per dienst (meestal 1.000 of 2.000); kijk in de laag-JSON en pagineer met resultOffset.
https://geoservices.noord-holland.nl/ags/rest/services/oi_dataservice_alg/MapServer/31/query?where=srt_monume%3D%27Stelling+van+Amsterdam%27&outFields=element,plaats,gemeente&outSR=4326&resultRecordCount=5&f=geojson
Tel per categorie
Statistieken werken: één aanroep geeft het aantal monumentobjecten per soort.
https://geoservices.noord-holland.nl/ags/rest/services/oi_dataservice_alg/MapServer/31/query?where=1%3D1&outStatistics=%5B%7B%22statisticType%22%3A%22count%22%2C%22onStatisticField%22%3A%22objectid%22%2C%22outStatisticFieldName%22%3A%22n%22%7D%5D&groupByFieldsForStatistics=srt_monume&f=json
Of als WMS
Dezelfde dienst als WMS 1.3.0 voor QGIS of een webkaart.
https://geoservices.noord-holland.nl/ags/services/oi_dataservice_alg/MapServer/WMSServer?request=GetCapabilities&service=WMS
Interessante koppelingen


Welke provinciale monumenten liggen naast rijksmonumenten?
Leg de provinciale monumenten naast de rijksmonumenten van de RCE; samen geven ze een vollediger beeld van het erfgoed per gemeente.


Monumenten per gemeente, met de huidige indeling
De gemeentenamen in de monumentenlaag zijn deels oud (Zeevang, Graft-De Rijp). Bepaal de gemeente opnieuw met de gemeentegrenzen van CBS via PDOK.
Vergelijkbare bronnen
data.overheid.nlNoord-Holland zet 94 datasets in data.overheid.nl (vooral publiek domein); slechts enkele lagen van deze server staan daar ook.
- DNDataportaal Noord-Holland nog niet uitgelegd
De eigen viewer van de provincie op dezelfde diensten, om te kijken en te downloaden zonder API.
Waar je op moet letten
- Licentie niet vastgesteld, deels Geo Gedeeld
De server zegt niets over hergebruik. In het NGR staan 50 van de 61 records van Noord-Holland onder de Geo Gedeeld-licentie, en die is niet open. Controleer per laag.
- Veel dubbele lagen
Dezelfde laag zit in meerdere verzameldiensten (oi_dataportaal_geoweb, oi_ilc, oi_gezonde_leefomgeving …). Ontdubbel op laagnaam plus velden: van 3.843 bladlagen blijven er 2.683 over.
- Datums alleen in de beschrijving
Lagen hebben geen wijzigingsdatum. Een paar diensten zeggen in de beschrijving 'De publicatie van deze service is scriptmatig gedaan op 07-07-2025'; dat is de publicatie, niet de inhoud.
- Oude gemeentenamen
In de monumentenlaag staan gemeenten die niet meer bestaan (Zeevang, Graft-De Rijp) en bij 382 objecten is de gemeente leeg.
APIArcGIS REST · gelezen 16 okt 2026
Geen sleutel of token: de directory en alle aanroepen hieronder werkten anoniem. getest
bladlagen in 194 bevraagbare diensten; ongeveer 2.140 unieke laagnamen (dezelfde laag zit in meerdere diensten) getest
jsongeojsonpbfpng (export, WMS)xml/geojson (WFS)
Basisadres
https://geoservices.noord-holland.nl/ags/rest/services
Endpoints 9
- GET
?f=jsonDirectory: versie, mappen en diensten (naam + type). - GET
/{map}?f=jsonDiensten in één map. - GET
/{dienst}/MapServer?f=jsonDienst: lagen en tabellen (id, naam, groeplaag of niet), maxRecordCount, capabilities, projectie, beschrijving. - GET
/{dienst}/MapServer/{laag}?f=jsonLaag: velden (naam, type, alias, lengte), geometrietype, maxRecordCount, supportedQueryFormats en advancedQueryCapabilities (paginering, statistiek, orderBy, distinct). - GET
/{dienst}/MapServer/{laag}/queryObjecten opvragen met een where-voorwaarde of ruimtelijk filter; ook tellen (returnCountOnly) en groeperen (outStatistics). Antwoord in JSON, GeoJSON of PBF. - GET
/{dienst}/MapServer/legend?f=jsonLegenda per laag: labels en symbolen (PNG als base64). - GET
/{dienst}/MapServer/export?bbox=…&bboxSR=4326&size=600,400&format=png&f=imageKaartbeeld als PNG voor een rechthoek; met f=json krijg je een link naar het beeld. Zonder bbox: fout 'bbox must be specified'. - GET
https://geoservices.noord-holland.nl/ags/services/{map}/{dienst}/MapServer/WMSServer?request=GetCapabilities&service=WMSWMS 1.3.0 van dezelfde MapServer: pad zonder /rest/ en met /WMSServer. Alleen bij diensten waar supportedExtensions WMSServer noemt. - GET
https://geoservices.noord-holland.nl/ags/services/{map}/{dienst}/MapServer/WFSServer?service=WFS&request=GetCapabilitiesWFS 2.0 van dezelfde MapServer (alleen als supportedExtensions WFSServer noemt); GetFeature met outputFormat=GEOJSON.
Filteren platform
SQL-achtige where-voorwaarde op de velden van de laag, plus een optioneel ruimtelijk filter (geometry). Groeperen en tellen met outStatistics.
Parameters 13
where | Voorwaarde in SQL-92-stijl: 1=1 voor alles, tekst tussen enkele aanhalingstekens (GEMEENTE='Zwolle'), LIKE met %, AND/OR, datums als DATE 'JJJJ-MM-DD'. Verplicht als er geen ander filter is. | getest |
outFields | Velden in het antwoord, gescheiden door komma's, of * voor alle velden. | getest |
returnGeometry | false = alleen attributen (veel kleiner antwoord). | getest |
outSR | Projectie van de geometrie in het antwoord; 4326 = graden (WGS84). Standaard de projectie van de laag, hier RD (28992). | getest |
f | Formaat: json (Esri-JSON), geojson, pbf (protobuf), pjson (ingesprongen) of html (bladeren in de browser). | getest |
resultOffset | Paginering: aantal objecten overslaan (vanaf 0). Gebruik samen met orderByFields voor een vaste volgorde. | getest |
resultRecordCount | Maximaal aantal objecten in dit antwoord (afgekapt op maxRecordCount van de laag). | getest |
orderByFields | Sorteren, bv. 'OBJECTID' of 'n DESC' (ook op een statistiekveld). | getest |
returnCountOnly | true = alleen het aantal objecten dat aan where voldoet: {"count": …}. | getest |
outStatistics | Statistiek op de server: lijst van {statisticType, onStatisticField, outStatisticFieldName}; statisticType count, sum, min, max, avg, stddev of var. URL-coderen. | getest |
groupByFieldsForStatistics | Velden om op te groeperen bij outStatistics (zoals GROUP BY). | getest |
returnDistinctValues | true met outFields en returnGeometry=false: de unieke waarden van die velden. | getest |
geometry | Ruimtelijk filter: een punt 'x,y' of rechthoek 'xmin,ymin,xmax,ymax', met geometryType (esriGeometryPoint, esriGeometryEnvelope), inSR (projectie van de invoer), spatialRel (esriSpatialRelIntersects) en eventueel distance + units (esriSRUnit_Meter) voor een straal. | platform |
Velden van de voorbeeldlaag 10 · oi_op/oi_dataportaal_geoweb/MapServer/23 (66 zonneparken)
| Naam | Type | Betekenis |
|---|---|---|
objectid | OID | Objectsleutel |
naam | String | Naam van het park |
categorie | String | Zonnepark op veld of op parkeren |
gemeentenaam | String | Gemeente |
ingebruikname_jaar | Integer | Jaar van ingebruikname |
netto_opp_park_ha | String · ha | Netto oppervlakte (tekstveld) |
geschatte_vermogen_mw | String · MW | Geschat vermogen (tekstveld: '0.08') |
geschatte_opbrengst_gwh_jr | String · GWh | Geschatte opbrengst per jaar (tekstveld) |
sde_vermogen_mw | String · MW | Vermogen volgens de SDE-projectenlijst |
peildatum | String | Herkomst en peildatum als tekst ('SDE-lijst (jan 2022), OSM (juli 2022) …') |
Limieten en valkuilen
- Hoogstens 1.000 tot 2.000.000 (oi_dataportaal_geoweb: 2.000.000; per laag nakijken) objecten per antwoord (maxRecordCount van de laag; verschilt per laag, staat in /{laag}?f=json). Is er meer, dan staat exceededTransferLimit: true in het antwoord: haal de rest op met resultOffset en resultRecordCount. getest
- Geen sleutel en geen gedocumenteerde rate limit. Doe rustig aan (een paar verzoeken per seconde) en vraag liever statistieken of tellingen op dan alle objecten. ervaring
- Let op /ags/ in het adres (niet /arcgis/). WMS en WFS staan op /ags/services/…/MapServer/WMSServer en /WFSServer, alleen bij diensten waar supportedExtensions ze noemt (oi_dataservice_alg: beide; oi_dataportaal_geoweb: alleen WFS). getest
- Op 16 okt 2026 rond 23:30 gaf elke query op oi_dataservice_alg 'Underlying DBMS error [no connection to the server]' (met HTTP 200), terwijl andere diensten werkten. Losse diensten kunnen dus tijdelijk uitvallen. getest
- Fouten komen terug met HTTP 200 en een JSON-object {"error": {"code": 400, …}} ('Failed to execute query.' bij een onbekend veld in where). Controleer altijd op een veld error, niet alleen op de statuscode. getest
- Getallen staan soms als tekst (Zonneparken: geschatte_vermogen_mw '0.08'): sum in outStatistics werkt dan niet. Tel of groepeer op tekstvelden, reken zelf met de getallen. getest
- Dezelfde laag staat in meerdere verzameldiensten (oi_dataportaal_geoweb, oi_dataservice_alg, thematische atlasdiensten). Ontdubbel op laagnaam en velden. ervaring
- Datums staan alleen soms in de dienstbeschrijving ('scriptmatig gepubliceerd op 07-07-2025 16:05:15'); verder geen editingInfo. ervaring
- Groeplagen (met subLayerIds) hebben geen query; vraag de bladlagen eronder op. Rasterlagen hebben geen velden en geen telling. platform
Probeer het HTTP 200 · 411 ms · 16 okt
https://geoservices.noord-holland.nl/ags/rest/services/oi_op/oi_dataportaal_geoweb/MapServer/23/query?where=1%3D1&outStatistics=[{"statisticType"%3A"count"%2C"onStatisticField"%3A"objectid"%2C"outStatisticFieldName"%3A"n"}]&groupByFieldsForStatistics=categorie&orderByFields=n DESC&f=json
{
"displayFieldName": "",
"fieldAliases": {
"categorie": "categorie",
"n": "n"
},
"fields": [
{
"name": "categorie",
"type": "esriFieldTypeString",
"alias": "categorie",
"length": 200
},
{
"name": "n",
"type": "esriFieldTypeBigInteger",
"alias": "n"
}
],
"features": [
{
"attributes": {
"categorie": "Zonnepark op veld",
"n": 59
}
},
{
"attributes": {
"categorie": "Zonnepark op parkeren",
"n": 7
}
}
]
}Ingekort antwoord, opgeslagen bij het oogsten. Klik op het adres voor het echte, actuele antwoord.
Gelezen uit Directory: 7 mappen en 9 diensten in de root · Verzameldienst van het dataportaal (214 lagen) · Laag Zonneparken: velden · Esri: query-operatie (alle parameters). 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://geoservices.noord-holland.nl/ags/rest/services/oi_dataservice_alg/MapServer/31/query?where=1%3D1&outFields=element,srt_monume,plaats&outSR=4326&resultRecordCount=1000&f=geojson"
Gebruikt door
- Dataportaal Noord-HollandDe kaartviewer en het dataportaal van de provincie
Meer van Noord-Holland in onze index
2.887 datasets in Geoservices Provincie Noord-Holland, data.overheid.nl, Nationaal Georegister. Dit zijn de laatst gewijzigde.
- Werkingsgebied - Permanente bollenteelt2026-08-19
- Werkingsgebied - Zaadveredelingsconcentratiegebied2026-08-19
- Werkingsgebied - Vaarwegbeheer2026-08-19
- Werkingsgebied - Nautisch beheer2026-08-19
- vlakdekkende weidevogeltellingen2026-08-19
- Meetplots boerenlandvogels2026-08-18
Meer in dit thema
Bekijk hoe deze pagina is opgebouwd
bron: geoservices-noord-holland
blokken: []
secties:
- ideeen
- verwerken
- koppelingen
- vergelijkbaar
- beperkingen
- code
- gebruiktDoor
cache:
tag: bron:geoservices-noord-holland
ververs: na statuscheck, als de bron nieuwer is
statuscheck:
methode: services-directory (?f=json) bereikbaar, aantal diensten als noot; de
server geeft geen datums
verwacht: jaarlijks
Bron: content/bronnen/geoservices-noord-holland.yaml · Markdown


