Utrecht Province geoservices (ArcGIS REST)
The ArcGIS server of the province of Utrecht. On 16 October 2026 we counted 115 layers in 11 queryable services; the folders medewerkers, review and review_medewerkers return 502. The largest service is Tygron_Basisdata (60 layers), input for the Tygron planning model, including a solar map of 681,784 buildings. Besides that: the Cultural History Atlas (CHAT: military heritage, country estates, agricultural landscape), the Nature Network and the Green contour for the Informatiekaart Nederland, and geographic keys such as 33,162 six-digit postcode areas. The province publishes far more through the National Georegister (495 records).

Everything that's in it115
All services and layers on this ArcGIS server, fetched every night. Every layer has its own page with fields, geometry and a query call.
arcgis online3
Military heritage in the Utrecht Cultural History Atlas (polygons) by type: most bomkrater (3,917 features), then schuilplaats and militair groen
Military heritage in the Utrecht Cultural History Atlas (polygons) by type, oktober 2026, in features. Total: 8,206; the largest 12 of 115 categories are shown. Bomkrater is 48% of the total. Counted with one statistics query on the layer (field klasse2). 110 features have no value in this field. Layer CHAT - militair erfgoed (vlakken); points and lines are separate layers of the same service.
What can you do with it?3 ideas
Bomb craters and casemates
The layer CHAT - militair erfgoed (vlakken) has 8,206 features; almost half (3,917) are bomb craters, plus shelters, trenches and 102 casemates. Put them on a map.
Postcodes as a key
GeoSleutels has the boundaries of the province, municipalities, water authorities, towns and 33,162 six-digit postcode areas. Handy for putting your own address data on a map.
Solar potential per building
Tygron_Basisdata contains zonnekaart_panden (681,784 buildings) and energy labels (622,720). These are working files for a planning model: check them against the original source before drawing conclusions.
How to process it4 steps
Read the directory
The root has the usable services. Folders such as review return a list, but the services inside answer with 502.
https://geoservices.provincie-utrecht.nl/arcgis/rest/services?f=json
Fetch features as GeoJSON
Filter with where and request degrees with outSR=4326. maxRecordCount is 1,000 for most services; page with resultOffset.
https://geoservices.provincie-utrecht.nl/arcgis/rest/services/tercera_ro/MapServer/6/query?where=klasse2%3D%27kazemat%27%20AND%20plaats%3D%27Utrecht%27&outFields=naam,plaats,klasse2,waarde&outSR=4326&resultRecordCount=5&f=geojson
Count by type
Statistics work; one call returns the number of features per class of military heritage.
https://geoservices.provincie-utrecht.nl/arcgis/rest/services/tercera_ro/MapServer/6/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=klasse2&orderByFields=n%20DESC&f=json
The nature network
WFS_IKN contains the Nature Network Netherlands, the Green contour, quiet areas and six other layers for the Informatiekaart Nederland.
https://geoservices.provincie-utrecht.nl/arcgis/rest/services/WFS_IKN/MapServer?f=json
Interesting combinations

Which military heritage is also a national monument?
Put the CHAT features next to the national monuments and look for overlap; the rest is heritage without national protection.

Your own data per municipality or postcode
Use the boundaries from GeoSleutels to group addresses, then join the CBS key figures per municipality.
Similar sources
- PUProvincie Utrecht in het Nationaal Georegister not in the index yet
495 records with metadata and licence (mostly public domain), with WMS/WFS. The main entry point for this province's data.
data.overheid.nl426 datasets from the province of Utrecht, almost all public domain.
What to watch out for
- Licence not established
The server says nothing about reuse. In the NGR, Utrecht publishes mostly as public domain, but that is not stated with the layers here.
- Folders that do not work
Ten services in medewerkers, review and review_medewerkers return 502. We do not count them or report them as removed.
- Working files and demos
Tygron_* are working files for a planning model and SampleWorldCities is an Esri sample service. The layer CHAT - archeologie (punten) has 0 features.
- Not only the province of Utrecht
The Cultural History Atlas extends beyond the border: it also has features in places such as Woudrichem and Nederhorst den Berg.
APIArcGIS REST · read 16 Oct 2026
No key or token: the directory and all calls below worked anonymously. tested
layers in 12 queryable services (largest: Tygron_Basisdata 60, tercera_ro 20, WFS_IKN 9) tested
jsongeojsonpbfpng (export, WMS)
Base URL
https://geoservices.provincie-utrecht.nl/arcgis/rest/services
Endpoints 9
- GET
?f=jsonDirectory: version, folders and services (name + type). - GET
/{map}?f=jsonServices in one folder. - GET
/{dienst}/MapServer?f=jsonService: layers and tables (id, name, group layer or not), maxRecordCount, capabilities, projection, description. - GET
/{dienst}/MapServer/{laag}?f=jsonLayer: fields (name, type, alias, length), geometry type, maxRecordCount, supportedQueryFormats and advancedQueryCapabilities (pagination, statistics, orderBy, distinct). - GET
/{dienst}/MapServer/{laag}/queryQuery features with a where clause or spatial filter; also count (returnCountOnly) and group (outStatistics). Response in JSON, GeoJSON or PBF. - GET
/{dienst}/MapServer/legend?f=jsonLegend per layer: labels and symbols (PNG as base64). - GET
/{dienst}/MapServer/export?bbox=…&bboxSR=4326&size=600,400&format=png&f=imageMap image as PNG for a rectangle; with f=json you get a link to the image. Without bbox: error 'bbox must be specified'. - GET
https://geoservices.provincie-utrecht.nl/arcgis/services/{dienst}/MapServer/WMSServer?request=GetCapabilities&service=WMSWMS 1.3.0 of the same MapServer: path without /rest/ and with /WMSServer. Only for services whose supportedExtensions lists WMSServer. - GET
https://geoservices.provincie-utrecht.nl/arcgis/services/WFS_IKN/MapServer/WFSServer?service=WFS&request=GetCapabilitiesWFS 2.0 of the same MapServer (only if supportedExtensions lists WFSServer); GetFeature with outputFormat=GEOJSON.
Filtering platform
SQL-like where clause on the layer's fields, plus an optional spatial filter (geometry). Group and count with outStatistics.
Parameters 13
where | Condition in SQL-92 style: 1=1 for everything, text in single quotes (GEMEENTE='Zwolle'), LIKE with %, AND/OR, dates as DATE 'YYYY-MM-DD'. Required when there is no other filter. | tested |
outFields | Fields in the response, comma-separated, or * for all fields. | tested |
returnGeometry | false = attributes only (much smaller response). | tested |
outSR | Projection of the geometry in the response; 4326 = degrees (WGS84). Default is the layer's projection, here RD (28992). | tested |
f | Format: json (Esri JSON), geojson, pbf (protobuf), pjson (indented) or html (browse in the browser). | tested |
resultOffset | Pagination: number of features to skip (from 0). Use together with orderByFields for a stable order. | tested |
resultRecordCount | Maximum number of features in this response (capped at the layer's maxRecordCount). | tested |
orderByFields | Sort order, e.g. 'OBJECTID' or 'n DESC' (also on a statistics field). | tested |
returnCountOnly | true = only the number of features matching where: {"count": …}. | tested |
outStatistics | Server-side statistics: list of {statisticType, onStatisticField, outStatisticFieldName}; statisticType count, sum, min, max, avg, stddev or var. URL-encode it. | tested |
groupByFieldsForStatistics | Fields to group by with outStatistics (like GROUP BY). | tested |
returnDistinctValues | true with outFields and returnGeometry=false: the unique values of those fields. | tested |
geometry | Spatial filter: a point 'x,y' or envelope 'xmin,ymin,xmax,ymax', with geometryType (esriGeometryPoint, esriGeometryEnvelope), inSR (input projection), spatialRel (esriSpatialRelIntersects) and optionally distance + units (esriSRUnit_Meter) for a radius. | platform |
Fields of the example layer 10 · tercera_ro/MapServer/6 (8.206 objecten)
| Name | Type | Meaning |
|---|---|---|
objectid | OID | Objectsleutel |
naam | String | Naam van het object |
plaats | String | Plaats |
klasse1 | String | Hoofdklasse |
klasse2 | String | Soort (bomkrater, schuilplaats, militair groen, kazemat …) |
waarde | String | Waardering |
status | String | Status |
beschrijving | String | Beschrijving (lange tekst) |
ontstaan | String | Periode van ontstaan |
toegevoegd | Date | Datum van toevoegen aan de kaart |
Limits and pitfalls
- At most 1.000 features per response (the layer's maxRecordCount; varies per layer, see /{layer}?f=json). If there are more, the response has exceededTransferLimit: true: fetch the rest with resultOffset and resultRecordCount. tested
- No key and no documented rate limit. Take it easy (a few requests per second) and prefer statistics or counts over fetching all features. experience
- The review and review_medewerkers folders list services, but those services return HTTP 502 (Azure Application Gateway). Only the root and arcgis_online are usable; medewerkers is not public. tested
- WFS_IKN has a WFSServer extension with the 9 IKN layers (green contour, NNN, quiet areas …); the other services WMS only. tested
- Errors come back with HTTP 200 and a JSON object {"error": {"code": 400, …}} ('Failed to execute query.' for an unknown field in where). Always check for an error field, not just the status code. tested
- Tygron_* are working files for a calculation model and SampleWorldCities is an Esri sample; both are public but not a provincial publication. tercera_ro/10 (CHAT archaeology, points) has 0 features. experience
- The server gives no modification date per service or layer (no editingInfo). How current a layer is, is not stated. tested
- Group layers (with subLayerIds) have no query; query the leaf layers below them. Raster layers have no fields and no count. platform
Try it HTTP 200 · 1,474 ms · 16 Oct
https://geoservices.provincie-utrecht.nl/arcgis/rest/services/tercera_ro/MapServer/6/query?where=1%3D1&outStatistics=[{"statisticType"%3A"count"%2C"onStatisticField"%3A"objectid"%2C"outStatisticFieldName"%3A"n"}]&groupByFieldsForStatistics=klasse2&orderByFields=n DESC&f=json
{
"displayFieldName": "",
"fieldAliases": {
"klasse2": "klasse2",
"n": "n"
},
"fields": [
{
"name": "klasse2",
"type": "esriFieldTypeString",
"alias": "klasse2",
"length": 50
},
{
"name": "n",
"type": "esriFieldTypeBigInteger",
"alias": "n"
}
],
"features": [
{
"attributes": {
"klasse2": "bomkrater",
"n": 3917
}
},
{
"attributes": {
"klasse2": "schuilplaats",
"n": 706
}
}
]
}Shortened response, saved at harvest time. Click the URL for the real, current response.
Read from Directory: 5 folders and 10 services in the root · Layer CHAT - militair erfgoed (vlakken): fields · Esri: query operation (all parameters). Labels: from the description stated in what the api itself publishes. tested from our own small call. platform applies to every api on this platform, per its documentation. experience learned while building open data index.
How to fetch it
curl "https://geoservices.provincie-utrecht.nl/arcgis/rest/services/tercera_ro/MapServer/6/query?where=klasse2%3D%27bomkrater%27&outFields=plaats,klasse2&outSR=4326&resultRecordCount=1000&f=geojson"
Used by
- Informatiekaart NederlandThe WFS_IKN service supplies Utrecht's nature network and Green contour for the national map
More from Provincie Utrecht in our index
1,036 datasets in Nationaal Georegister, data.overheid.nl, Geoservices Provincie Utrecht. These changed most recently.
- Warmteatlas - Seismiek2026-10-27
- Cultuurhistorische Atlas Provincie Utrecht (CHAT) - vlakken2026-10-23
- Cultuurhistorische Atlas Provincie Utrecht (CHAT) - vlakken2026-10-22
- Toeristische Overstap Punten (TOP)2026-10-06
- Toeristische Overstap Punten (TOP)2026-10-05
- Meetpunten voertuig en fiets2026-10-04
More in this topic
See how this page is built
bron: geoservices-provincie-utrecht
blokken: []
secties:
- ideeen
- verwerken
- koppelingen
- vergelijkbaar
- beperkingen
- code
- gebruiktDoor
cache:
tag: bron:geoservices-provincie-utrecht
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
Source: content/bronnen/geoservices-provincie-utrecht.yaml · Markdown


