Overijssel Province geoportal (ArcGIS REST)
The ArcGIS REST server of the province of Overijssel: 45 services, each a theme with a B code (B22 roads, B42 energy, B46 nature and landscape, B73 culture …). On 16 October 2026 our index held 436 map layers, together over 20 million features (duplicate layers included), from energy labels of 503,016 homes to 4,040 national monuments. About 60 percent of the layers are also in the National Georegister, as WMS/WFS on the province's GeoServer; this server mainly adds per-feature queries and counts.

Everything that's in it439
All services and layers on this ArcGIS server, fetched every night. Every layer has its own page with fields, geometry and a query call.
Map layers on the Overijssel ArcGIS server by service: most wegen (B22) (64 layers), then natuur en landschap (B46) and BGT BRMO (B08)
Map layers on the Overijssel ArcGIS server by service, oktober 2026, in layers. Total: 442; the largest 12 of 40 categories are shown. Wegen (B22) is 14% of the total. Counted in the server's own services directory: 442 leaf layers in 40 services with layers. Group layers, tables, tile services and system folders are not counted.
What can you do with it?4 ideas
Energy labels per municipality
The layer B42_Energielabel_woningen has 503,016 homes with label, construction year, dwelling type and municipality. Fetch one municipality and chart the labels.
Browse by theme
Each service is a theme with a B code. Roads (B22) has the most layers (62), followed by nature and landscape (B46). The folder tree below lists every layer per service.
Asbestos roofs next to energy labels
B41_bodem contains an inventory of asbestos roofs (798,807 polygons). Overlay it on the energy labels to find areas where insulation and asbestos removal could be combined.
Link to the National Georegister
Strip the B42_ prefix and replace _ with a space: the layer names then match the titles in the NGR almost one-to-one, with metadata and licence.
How to process it4 steps
Read the directory
All services sit in the root, without folders. Per service, ?f=json lists the layers with their ids.
https://arcgisrest.geodataoverijssel.nl/arcgis/rest/services/B42_energie/FeatureServer?f=json
Query features, in degrees
Filter with where, pick fields with outFields and request longitude/latitude with outSR=4326. Use f=json: f=geojson returns 400 here, even though the layer lists geoJSON.
https://arcgisrest.geodataoverijssel.nl/arcgis/rest/services/B42_energie/FeatureServer/926/query?where=GEMEENTE%3D%27Zwolle%27%20AND%20ENERGIELAB%3D%27A%27&outFields=ENERGIELAB,BOUWJAAR,WONINGTYPE&outSR=4326&resultRecordCount=5&f=json
Page by 10,000
maxRecordCount is 10,000. Loop with resultOffset and resultRecordCount and sort by OBJECTID so nothing is missed. Set returnGeometry=false if you only need attributes.
https://arcgisrest.geodataoverijssel.nl/arcgis/rest/services/B42_energie/FeatureServer/926/query?where=1%3D1&outFields=OBJECTID,ENERGIELAB&returnGeometry=false&orderByFields=OBJECTID&resultOffset=10000&resultRecordCount=10000&f=json
Count yourself
returnCountOnly always returns the layer total, even with a filter, and statistics (outStatistics) return an error. So count by paging with only the fields you need.
https://arcgisrest.geodataoverijssel.nl/arcgis/rest/services/B42_energie/FeatureServer/926/query?where=1%3D1&returnCountOnly=true&f=json
Interesting combinations

Which homes have no energy label yet?
Put the labelled homes next to all residential units in the BAG; the difference are homes without a registered label.

Energy labels per resident or per dwelling
Count labels per municipality or neighbourhood and divide by the number of dwellings from the CBS key figures.
Similar sources
data.overheid.nlOverijssel lists 337 datasets on data.overheid.nl, with a licence (mostly CC0 and public domain) but without per-feature queries.
Gelderland Province geoportal (ArcGIS REST)The same kind of server at the neighbouring province, with a Portal that gives dates and readable titles.
- GOGeoServer Overijssel (WMS/WFS) not in the index yet
The same themes as WMS/WFS, as referenced by the NGR. That host's robots.txt disallows all automated access (16 Oct 2026).
What to watch out for
- Licence not established
The server says nothing about reuse. The same layers in the NGR are mostly CC0 or public domain, but that is not stated here.
- Not a genuine ArcGIS server
A proxy sits in front (version 10.51): f=geojson returns 400, outStatistics 500, returnCountOnly ignores the filter and numbers come back as text ('1989'). Plain JSON queries with where, outSR and paging do work.
- Layer ids shift
The ids are global (B42_energie runs from 172 to 2494) and change on republication: Watergebonden bedrijventerreinen moved from /2579 to /2588. Look layers up by name, not by id.
- No dates
Layers and services carry no modification date. How current a layer is can at most be found in the matching NGR record.
- Duplicate layers
The same layer sometimes appears in several services (BAG addresses in B02, B08 BGT points and B08 BGT polygons). Deduplicate on layer name.
APIArcGIS REST (nagebootst, beperkt) · read 16 Oct 2026
No key or token: the directory and all calls below worked anonymously. tested
layers in 45 FeatureServers (388 unique names) tested
json
Base URL
https://arcgisrest.geodataoverijssel.nl/arcgis/rest/services
Endpoints 4
- GET
?f=jsonDirectory: 45 services (B42_energie, B61_economie …), version 10.51, no folders. - GET
/{dienst}/FeatureServer?f=jsonService: layers, maxRecordCount (10,000), serviceDescription with the theme. - GET
/{dienst}/FeatureServer/{laag}?f=jsonLayer: fields and geometry type. Layer ids are global numbers (926, 2588 …). - GET
/{dienst}/FeatureServer/{laag}/query?where=…&outFields=…&f=jsonQuery features: where, outFields, outSR, orderByFields, resultOffset/resultRecordCount and returnDistinctValues work. Esri JSON only.
Filtering tested
where works for ordinary feature queries (GEMEENTE='Zwolle' AND ENERGIELAB='A'), but not with returnCountOnly and returnIdsOnly: those always return the whole layer. Server-side statistics and spatial filtering do not work.
Parameters 12
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: only json (Esri JSON) works; geojson and pbf return HTTP 400. | 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 | Always returns the total of the whole layer: where is ignored. | tested |
outStatistics | Does not work here: HTTP 500. Count yourself after fetching. | tested |
returnDistinctValues | true with outFields and returnGeometry=false: the unique values of those fields. | tested |
geometry | Spatial filtering does not work here: an envelope with geometryType=esriGeometryEnvelope returned HTTP 500. Filter on a field (GEMEENTE) or on the coordinates yourself. | tested |
Fields of the example layer 10 · B42_energie/FeatureServer/926 (503.016 woningen)
| Name | Type | Meaning |
|---|---|---|
OBJECTID | OID | Objectsleutel (komt als tekst terug: '6') |
ENERGIELAB | String | Energielabel (A … G; ook een spatie als er geen label is) |
BOUWJAAR | Integer | Bouwjaar (komt als tekst terug: '1989') |
BOUWJAARKL | String | Bouwjaarklasse |
WONINGTYPE | String | Woningtype als code (A, V …) |
GEMEENTE | String | Gemeente (25 in Overijssel) |
NAAM_CORPO | String | Woningcorporatie |
TYPE_EIGEN | String | Soort eigenaar |
REG_DATUM_ | String | Registratiedatum van het label, als tekst |
VBO_ID | String | BAG-verblijfsobject-id (koppelen aan de BAG) |
Limits and pitfalls
- maxRecordCount 10,000 per response. No exceededTransferLimit is returned: page yourself with resultOffset until a page has fewer than resultRecordCount features. 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
- This is not a real ArcGIS Server but a Spring proxy imitating the ArcGIS format (errors in Spring JSON with timestamp and path). Not everything the layer JSON promises (supportedQueryFormats JSON, geoJSON; supportsStatistics true) is true. tested
- Measured: f=geojson and f=pbf return HTTP 400, outStatistics en een ruimtelijk filter HTTP 500, /MapServer and /WMSServer 404. returnCountOnly and returnIdsOnly ignore where (the Zwolle filter still returned 503,016). tested
- Numbers come back as text ('BOUWJAAR': '1989', 'OBJECTID': '6'), and the response always lists all fields in fields, even if you restrict outFields. tested
- Layer ids shift on republishing (B61_economie/2579 became /2588). Look up a layer by name via /{service}/FeatureServer?f=json. experience
- The same themes are also published as real OGC services on GeoServer (services.geodataoverijssel.nl/geoserver/<theme>/wfs), but robots.txt there disallows everything; we do not call it. experience
- The server gives no modification date per service or layer (no editingInfo). How current a layer is, is not stated. tested
Try it HTTP 200 · 642 ms · 16 Oct
https://arcgisrest.geodataoverijssel.nl/arcgis/rest/services/B42_energie/FeatureServer/926/query?where=GEMEENTE%3D'Zwolle' AND ENERGIELAB%3D'A'&outFields=ENERGIELAB,BOUWJAAR,WONINGTYPE,GEMEENTE&returnGeometry=false&resultRecordCount=5&f=json
{
"objectIdFieldName": "OBJECTID",
"globalIdFieldName": "",
"geometryType": "esriGeometryPoint",
"spatialReference": {
"wkid": 28992,
"latestWkid": 28992
},
"fields": [
{
"name": "VLP_LABEL",
"type": "esriFieldTypeInteger",
"alias": "VLP_LABEL",
"sqlType": "sqlTypeInteger",
"nullable": true,
"editable": false,
"domain": null,
"defaultValue": null
},
{
"name": "GEM_LABEL",
"type": "esriFieldTypeInteger",
"alias": "GEM_LABEL",
"sqlType": "sqlTypeInteger",
"nullable": true,
"editable": false,
"domain": null,
"defaultValue": null
}
],
"features": [
{
"attributes": {
"ENERGIELAB": "A",
"GEMEENTE": "Zwolle",
"BOUWJAAR": "1989",
"WONINGTYPE": "V"
}
},
{Shortened response, saved at harvest time. Click the URL for the real, current response.
Read from Directory: 45 FeatureServers, no folders · Layer B42_Energielabel_woningen: fields and (claimed) capabilities · 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://arcgisrest.geodataoverijssel.nl/arcgis/rest/services/B42_energie/FeatureServer/926/query?where=GEMEENTE%3D%27Zwolle%27&outFields=ENERGIELAB,BOUWJAAR&returnGeometry=false&resultRecordCount=100&f=json"
Used by
- Nationaal GeoregisterMetadata for the same themes (via the province's GeoServer)
More from Overijssel in our index
1,022 datasets in Geoportaal Provincie Overijssel, data.overheid.nl, Nationaal Georegister. These changed most recently.
- Samengevoegde kadastrale percelen in eigendom van de provincie Overijssel (BRK)2026-10-30
- Kasten wildwaarschuwingssystemen2026-10-28
- Bodembemonstering in acht Natura 2000-gebieden - voorjaar 20262026-10-28
- Kasten pollers2026-10-28
- Wegen met geluidproductieplafonds2026-10-28
- Openbare verlichting kasten2026-10-28
More in this topic
See how this page is built
bron: geoportaal-overijssel
blokken: []
secties:
- ideeen
- verwerken
- koppelingen
- vergelijkbaar
- beperkingen
- code
- gebruiktDoor
cache:
tag: bron:geoportaal-overijssel
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/geoportaal-overijssel.yaml · Markdown


