About our crawler
We collect public permit, tender and grant data from the authorities listed below, in 10 countries. This page explains exactly what we do, so that anyone at any of them can see it without having to ask. Belgium is covered through one of its regions, Flanders, which is listed under that name below.
Identity
Our fetcher sends this user agent:
Mozilla/5.0 (compatible; PlanningIntelligence/0.1; +contact@planningintel.com)
One identity for every country. We do not present ourselves as a browser, and we do not use a name that could be mistaken for another organisation’s crawler.
What we fetch, by country
Lithuania
Published by Valstybinė teritorijų planavimo ir statybos inspekcija (VTPSI).
- Infostatyba — galiojantys projektai (data.gov.lt) — CC-BY-4.0, updated irregular — newest document 2025-04-01 when read
https://get.data.gov.lt/datasets/gov/vtpsi/galiojantys_projektai/GaliojantisProjektas
Netherlands
Published by Gemeenteblad — officiële bekendmakingen van de Nederlandse gemeenten.
- Officiële bekendmakingen — Gemeenteblad (SRU) — Public domain (Auteurswet art. 11), updated continuous
https://repository.overheid.nl/sru
Latvia
Published by Būvniecības valsts kontroles birojs (Building State Control Office).
- BIS — Būvniecības lietu saraksts (construction cases) — CC0-1.0, updated daily (observed 2026-08-19) — held snapshot, not a current feed
https://data.gov.lv/dati/lv/dataset/buvniecibas-lietu-saraksts - BIS — Būvniecības lietu objekti (case objects) — CC0-1.0, updated daily (observed 2026-08-19) — held snapshot, not a current feed
https://data.gov.lv/dati/lv/dataset/buvniecibas-lietu-objekti - BIS — Mājas lietu remontdarbi + Mājas lietas + Dzīvojamo māju pārvaldnieku saraksts — CC0-1.0, updated daily (observed 2026-08-19) — held snapshot, not a current feed
https://data.gov.lv/dati/lv/dataset/dzivojamo-maju-parvaldnieku-saraksts - BIS — Būvspeciālistu reģistrs (certified specialists, and the cases each has worked on) — Public register, Cabinet regulation 298177 s35.4, updated enumerated once, refreshed periodically at 1 request / 2 seconds
https://bis.gov.lv/bisp/lv/specialist_certificates
Germany
Published by TED — Tenders Electronic Daily, Publications Office of the European Union.
- TED notices API v3 - documentation (CPV 45000000, organisation-country-buyer DEU) — CC BY 4.0, updated continuous
https://docs.ted.europa.eu/api/latest/index.html - NUTS 2024 classification, Europe-wide attribute table (GISCO) — CC BY 4.0, updated annual
https://gisco-services.ec.europa.eu/distribution/v2/nuts/csv/NUTS_AT_2024.csv
Spain
Published by Plataforma de Contratación del Sector Público (Ministerio de Hacienda).
- PLACSP - Licitaciones publicadas en la Plataforma, excluyendo los contratos menores (sindicación ATOM, archivos mensuales) — Reuse under Real Decreto 1495/2011 (datos.gob.es general conditions) - "Origen de los datos: Ministerio de Hacienda", updated daily
https://www.hacienda.gob.es/es-ES/GobiernoAbierto/Datos%20Abiertos/Paginas/LicitacionesContratante.aspx - INE - Relación de municipios y códigos por provincias (diccionario26.xlsx) — Reuse under Real Decreto 1495/2011 (datos.gob.es general conditions) - "Origen de los datos: Ministerio de Hacienda", updated annual
https://www.ine.es/daco/daco42/codmun/diccionario26.xlsx - NUTS 2024 label points (GISCO) — Reuse under Real Decreto 1495/2011 (datos.gob.es general conditions) - "Origen de los datos: Ministerio de Hacienda", updated annual
https://gisco-services.ec.europa.eu/distribution/v2/nuts/geojson/NUTS_LB_2024_4326_LEVL_3.geojson
Flanders
Published by Departement Omgeving, Vlaanderen.
- Omgevingsloket (WFS lu:lu_omv_gd_v2) - dataset catalogue — Modellicentie Gratis Hergebruik, updated continuous
https://metadata.vlaanderen.be/srv/dut/catalog.search#/metadata/34dcadb1-2f82-5a76-a578-f1f7020008cd - VRBG Refgem (NIS) — Modellicentie Gratis Hergebruik, updated annual
https://geo.api.vlaanderen.be/VRBG/wfs
Malta
Published by Planning Authority (PA).
- ArcGIS MapServer — case polygons — robots: Allow, search=yes, use=reference, ai-train=no, updated continuous
https://mapserver.pa.org.mt/hosting/rest/services - PlanningMT mobile API — CaseInfoProvider — public, undocumented terms, updated continuous
https://mobileapp.pa.org.mt/CaseInfoProvider.pa - Government Gazette PA notices — official publication, updated weekly
https://www.gov.mt/en/Government/DOI/Government Gazette/pa/Documents/
Poland
Published by GUNB — Główny Urząd Nadzoru Budowlanego.
- RWDZ — Rejestr Wniosków, Decyzji i Zgłoszeń w sprawach budowlanych — CC0 1.0 (public domain), updated weekly
https://wyszukiwarka.gunb.gov.pl/pliki_pobranie/rwdz.xml
Ireland
Published by Department of Housing, Local Government and Heritage.
- National Planning Applications (ArcGIS FeatureServer) — CC-BY-4.0, updated continuous
https://services.arcgis.com/NzlPQPKn5QF9v2US/arcgis/rest/services/IrishPlanningApplications/FeatureServer/1
France
Published by SDES — Ministère de la Transition écologique.
- Sitadel — liste des permis de construire — Licence Ouverte 2.0, updated monthly
https://www.data.gouv.fr/datasets/liste-des-permis-de-construire-et-autres-autorisations-durbanisme
What we deliberately do not do
- We do not fetch the
www.pa.org.mtwebsite, which is protected by bot management, and we do not attempt to work around that. We do read the Planning Authority’s public case-information API — the documented, unauthenticated backend of the authority’s own mobile app — at a minimum of 2.5 seconds between requests, backing off automatically whenever the service signals it is busy. - We do not access anything behind a login — an eID, an account, or a portal that asks us to register.
- We do not bulk-harvest per-case pages. Where a subscriber asks who is behind one specific permit, we fetch that one public page on their behalf — the request a person would otherwise make by hand — and we store the answer so it is never fetched twice.
- We do not use this data to train AI models, and we honour content signals that ask us not to.
- We do not retain personal data of private individuals: they are discarded when data enters our systems, not hidden afterwards — and we honour erasure requests permanently. See privacy.
How politely
- One request at a time — never parallel.
- At least 1.2 seconds between requests.
- Exponential backoff on any error, and we stop rather than hammer.
- A full refresh is a small number of requests: we page 2,000 records at a time.
- Where a source offers a bulk file, we take the file rather than paging an API — it is one request instead of thousands, and it is what the publisher intended.
Ask us to stop
Email contact@planningintel.com and we will stop. No argument, no delay.
Planning IntelligenceConstruction leads from public permits, tenders and grants