flood-risk-api — Guide utilisateur
Version : 1.3 — mars 2026 (analyse visuelle IA, evolution dans le temps, multi-tenant claims) Donnees : Belgique (Wallonie, Flandre, Bruxelles)
Table des matières
- Comment fonctionne la recherche
- Le score de risque assurance
- Les zones d'aléa d'inondation
- L'historique des inondations
- Le cadastre et le bâtiment
- La carte interactive
- Sources de données et licences
- Altitude relative
- La modale "Comprendre ce score"
- Sinistres assureur (tenant)
- Analyse visuelle du batiment (IA)
- Limites et avertissements
1. Comment fonctionne la recherche
Étapes d'une évaluation
Adresse saisie
│
▼
[Géocodage Nominatim / OSM]
│ Convertit "Rue de la Vesdre 1, Trooz" → lat/lon
│
▼
[assess_point(lat, lon) — PostGIS]
│ Interroge en parallèle :
│ ├─ flood_zones (23 M polygones — zones d'aléa actuelles)
│ ├─ buildings (7,4 M bâtiments OSM — bâtiment le plus proche ≤ 50 m)
│ ├─ parcels (9 M parcelles — parcelle cadastrale contenant le point)
│ ├─ waterways (151 K cours d'eau — le plus proche ≤ 2 km)
│ └─ flood_events (227 K polygones — événements historiques intersectant)
│
▼
[Calcul du score de risque assurance]
│ Pondération des facteurs (zones, altimétrie, cours d'eau, historique)
│
▼
[Mise en cache Redis — TTL 24 h]
│ Résultat stocké par lat/lon arrondi (précision ~11 m)
│ 2ème appel = < 100 ms
│
▼
Réponse JSON + carte MapLibre GL JS
Résolution des adresses
- Le géocodage utilise Nominatim (OpenStreetMap) — gratuit, pas de clé API
- Si lat/lon est saisi directement, l'étape Nominatim est sautée
- La précision dépend de la qualité de l'adresse OSM dans la zone
Cache Redis
- Chaque résultat d'évaluation est mis en cache pendant 24 heures
- La clé de cache est basée sur lat/lon arrondi à 4 décimales (~11 m de précision)
- Le cache est invalidé automatiquement après une nouvelle ingestion ETL
- Indicateur affiché :
⚡ Cache(résultat mis en cache) ou🔄 Temps réel(requête DB)
2. Le score de risque assurance
Principe
Le score varie de 0 (risque minimal) à 100 (risque maximal). Il est conçu pour refléter l'exposition réelle d'un bien immobilier au risque d'inondation, dans le but d'informer des décisions d'assurance ou d'investissement.
Le modèle actuariel (version 2) combine trois dimensions :
Score = Probabilité (P) × Sévérité (S) × Exposition (E)
Le résultat brut est transformé sur une échelle de 0 à 100.
Probabilité (P) — "Quelle chance qu'une inondation survienne ?"
| Facteur | Description |
|---|---|
| Zone d'aléa | Le bien est-il en zone inondable ? Si oui, à quel niveau (faible/moyen/élevé) ? Si non, à quelle distance est la zone la plus proche ? |
| Cours d'eau | Y a-t-il un cours d'eau à proximité ? De quel type (rivière, ruisseau) ? À quelle distance ? |
| Topographie | Le terrain présente-t-il des caractéristiques défavorables (cuvette, pente vers le bien) ? |
| Altitude relative | Le bien est-il au-dessus ou en dessous de la source de risque ? (voir section 8) |
Sévérité (S) — "Si ça arrive, quelle serait la gravité ?"
| Facteur | Description |
|---|---|
| Profondeur d'eau | Hauteur d'eau observée lors d'inondations passées (données AZI IDW 2021) |
| Niveau d'aléa | Niveau théorique de l'aléa (Faible / Moyen / Élevé) |
| Terrain en cuvette | Le terrain favorise-t-il l'accumulation d'eau ? |
| Fréquence historique | Combien d'événements d'inondation ont été recensés à proximité ? |
Exposition (E) — "Le bâtiment est-il vulnérable ?"
| Facteur | Description |
|---|---|
| Type de bien | Maison individuelle (plus exposée) vs immeuble à appartements (moins exposé) |
| Nombre de niveaux | 1 seul niveau = tout au rez-de-chaussée (plus exposé). Plusieurs niveaux = étages protégés |
| Surface habitable | Surface estimée du bien (plus grand = plus de valeur exposée) |
| Altitude du bien | Altitude absolue (bien en zone basse = plus exposé) |
Étiquettes
| Score | Étiquette | Interprétation |
|---|---|---|
| 0–14 | Faible | Risque limité |
| 15–34 | Modéré | Risque existant mais contenu |
| 35–59 | Élevé | Risque significatif, précautions nécessaires |
| 60–100 | Critique | Risque très élevé, conditions défavorables multiples |
Note : Ce score est indicatif. Il ne remplace pas une expertise d'assureur ni une étude hydrologique certifiée.
3. Les zones d'aléa d'inondation
Wallonie — SPW ALEA_INOND
Source : Service Public de Wallonie (SPW), Atlas de l'Aléa d'Inondation Licence : CC-BY 4.0 Mise à jour : manuelle via l'interface d'administration
| Niveau | Période de retour | Signification |
|---|---|---|
| Élevé | T10 (1/10 ans) | Zone inondée statistiquement tous les 10 ans |
| Moyen | T100 (1/100 ans) | Zone inondée statistiquement tous les 100 ans |
| Faible | T1000 (1/1000 ans) | Zone inondée statistiquement tous les 1000 ans |
Types d'aléa :
- Débordement de cours d'eau : zones riveraines en plaine alluviale
- Ruissellement : zones exposées au ruissellement sur versant
Volume de données : 5,2 millions de polygones (couverture complète Wallonie)
Flandre — VMM OGRK
Source : Vlaamse Milieumaatschappij (VMM), Overstromingsrisicokaarten Licence : Open Data Vlaanderen (réutilisation libre) Mise à jour : manuelle via l'interface d'administration
| Couche | Période de retour | Signification |
|---|---|---|
| FLU — Fluviale | T10 / T100 / T1000 | Inondations par débordement de rivières |
| PLU — Pluviale | T10 / T100 / T1000 | Inondations par précipitations extrêmes |
| KUST — Côtière | T10 / T100 / T1000 | Inondations côtières et par montée des eaux marines |
Les données FLU/PLU/KUST proviennent de rasters GeoTIFF vectorisés (pixel = période de retour). Volume : 18 millions de polygones — couverture complète Flandre.
Bruxelles — Bruxelles Environnement
Source : Bruxelles Environnement, données INSPIRE Licence : CC-BY 4.0 Volume : 206 zones
4. L'historique des inondations
Principe
L'historique répertorie les événements d'inondation réels qui ont affecté la zone dans le passé, contrairement aux zones d'aléa qui sont des projections statistiques.
Un point situé dans un polygone historique signifie que cette zone a physiquement été inondée lors de l'événement.
Sources disponibles
Copernicus EMS EMSR518 — Inondations Belgique juillet 2021
| Champ | Valeur |
|---|---|
| Source | Copernicus Emergency Management Service |
| Événement | Inondations catastrophiques — juillet 2021 |
| AOI01 | Liège et vallée de la Vesdre |
| AOI02 | Rochefort et province de Namur |
| Gravité | Catastrophique |
| Licence | Open Data Copernicus |
Ces polygones représentent l'emprise réelle des zones inondées cartographiée par satellite (Sentinel-1 SAR) dans les heures suivant l'événement.
AZI IDW — Atlas des Zones Inondées 2021 (SPW)
| Champ | Valeur |
|---|---|
| Source | Service Public de Wallonie — Atlas des Zones Inondées |
| Méthode | Modélisation IDW (Inverse Distance Weighting) |
| Date | Juillet 2021 — inondations de la Vesdre |
| Volume | 59 059 polygones |
| Hauteur d'eau | Oui — stockée en base (fetched depuis raster SPW au moment de l'ingestion) |
| Licence | CC-BY 4.0 SPW |
Chaque polygone AZI IDW dispose de la hauteur d'eau modélisée en mètres (water_height_m), calculée au centroïde du polygone depuis le service raster SPW lors de l'ingestion ETL. Couverture : 97,6% des polygones (57 658 / 59 059).
Hauteur d'eau : valeur affichée en bleu (💧 X.XX m d'eau) sur les cartes d'événements. Représente la profondeur d'eau modélisée au niveau du sol pour cet événement.
Gravité des événements
| Badge | Gravité | Description |
|---|---|---|
| 🔴 Catastrophique | catastrophic | Dommages massifs, décès, évacuations |
| 🟠 Majeur | major | Dommages importants, inondations étendues |
| 🟡 Modéré | moderate | Inondations localisées, dommages limités |
| 🟢 Mineur | minor | Débordements ponctuels, dommages faibles |
5. Le cadastre et le bâtiment
Parcelle cadastrale (CAPAKEY)
Source : SPF Finances — Banque de Données des Parcelles Cadastrales (BPNCAPA) Licence : Open Data (data.gov.be) Volume : ~9 millions de parcelles (couverture complète Belgique)
- La parcelle est identifiée par son CAPAKEY — référence unique belge (ex:
62096B0015/00S000) - Format CAPAKEY :
[commune][section][numéro]/[exposant][puissance][nature] - La surface affichée est calculée via PostGIS (
ST_Area::geography) en m² - Sur la carte : polygone jaune (contour orange)
Bâtiment OSM
Source : OpenStreetMap contributors Licence : ODbL (Open Database Licence) Volume : 7,4 millions de bâtiments (couverture Belgique)
- Le bâtiment affiché est le plus proche du point évalué dans un rayon de 50 mètres
osm_id: identifiant unique OpenStreetMaplevels: nombre d'étages (tag OSMbuilding:levels)area_m2: surface de l'empreinte au sol en m²- En mode 2D : polygone bleu plat
- En mode 3D : extrusion bleue — hauteur =
levels × 3,5 m
Si
levelsest absent dans OSM (courant pour de nombreux bâtiments), la hauteur est estimée à 1 étage = 3,5 m par défaut.
6. La carte interactive
Couches disponibles
| Couche | Représentation | Source |
|---|---|---|
| Fond de carte | Tuiles vectorielles OSM | OpenFreeMap (liberty style) |
| Analyse visuelle | Photos multi-angles + IA | Google Street View Static API + OpenAI Vision |
| Zones d'aléa | Polygones colorés (rouge/orange/jaune) | Données locales PostGIS via /geo/zones |
| Historique inondations | Polygones rouges | flood_events (rayon 2 km autour du point) |
| Parcelle cadastrale | Polygone jaune (contour orange) | parcels — BPNCAPA |
| Bâtiment évalué | Polygone bleu (2D) / extrusion (3D) | buildings — OSM |
| Marqueur | Épingle bleue | Point évalué |
Mode 3D
Le bouton 🏗 Vue 3D bascule la carte vers une vue inclinée à 60° :
- Les bâtiments OSM du fond de carte sont extrudés (données OpenFreeMap)
- Le bâtiment évalué est extrudé en bleu selon son nombre d'étages
- Cliquer sur 🗺 Vue 2D pour revenir à la vue orthogonale
Interactions
- Clic sur la parcelle : popup avec CAPAKEY et surface
- Clic sur le bâtiment : popup avec type, étages et surface
- La carte se recentre automatiquement à chaque nouvelle évaluation
Performance
- Les couches de la carte sont chargées en parallèle après l'évaluation principale
- La zone d'inondation historique est filtrée à 2 km autour du point (index GiST)
- Les résultats GeoJSON sont mis en cache Redis 24 heures
7. Sources de données et licences
| Dataset | Organisme | Licence | Fréquence MàJ |
|---|---|---|---|
| ALEA_INOND (Wallonie) | SPW — Service Public de Wallonie | CC-BY 4.0 | Manuelle |
| OGRK FLU/PLU/KUST (Flandre) | VMM — Vlaamse Milieumaatschappij | Open Data Vlaanderen | Manuelle |
| Zones inondation (Bruxelles) | Bruxelles Environnement | CC-BY 4.0 | Manuelle |
| AZI IDW 2021 (Wallonie) | SPW — Atlas Zones Inondées | CC-BY 4.0 | Statique (juillet 2021) |
| EMSR518 (Copernicus EMS) | Union Européenne / Copernicus | Open Data Copernicus | Statique (juillet 2021) |
| Bâtiments | OpenStreetMap contributors | ODbL | Manuelle |
| Cours d'eau | OpenStreetMap contributors | ODbL | Manuelle |
| Parcelles cadastrales | SPF Finances — BPNCAPA | Open Data Belgique | Manuelle |
| Géocodage | Nominatim / OSM | ODbL | Temps réel |
| Élévation | Open-Meteo | CC-BY 4.0 | Temps réel |
| Fond de carte | OpenFreeMap / OSM | ODbL | Continu |
8. Altitude relative
Principe
La distance horizontale seule ne suffit pas pour évaluer le risque. Un cours d'eau à 50 mètres mais situé 50 m plus bas dans une vallée ne présente pas le même risque qu'un cours d'eau à 50 mètres au même niveau.
Le système calcule automatiquement la différence d'altitude entre le bien évalué et :
- Le cours d'eau le plus proche
- La zone inondable la plus proche (si le bien est hors zone)
Comment c'est affiché
- Chip cours d'eau : "↑ 15.2m au-dessus" ou "↓ 3.1m en dessous" ou "≈ même niveau"
- KPI Zone inondable : la carte passe en vert avec flèche ↑ si le bien est nettement au-dessus
- Modale de score : phrases explicatives ("Le bien est 15 m au-dessus de cette zone, ce qui réduit fortement le risque")
Impact sur le score
| Situation | Multiplicateur | Effet |
|---|---|---|
| Bien 5 m au-dessus | ×0.37 | Score réduit de 63% |
| Bien 10 m au-dessus | ×0.14 | Score réduit de 86% |
| Même niveau (±1 m) | ×1.0 | Pas de changement |
| Bien 5 m en dessous | ×2.0 | Score doublé |
| Bien 2 m en dessous | ×1.4 | Score augmenté de 40% |
L'altitude est obtenue via le modèle numérique de terrain GLO-30 (Open-Meteo, résolution ~30 m). La zone morte de ±1 m absorbe les erreurs de précision du MNT.
9. La modale "Comprendre ce score"
Accès
Sous le score de risque, un bouton "Comprendre ce score" ouvre une fenêtre modale avec l'explication complète du calcul en langage courant (pas de jargon technique).
Contenu
La modale est organisée en 3 sections, une par dimension du score :
1. Quelle est la probabilité d'inondation ? (P%)
Phrases générées automatiquement selon les données :
- "Le bien est situé directement en zone d'aléa d'inondation (niveau élevé, fluvial)"
- "La zone d'aléa la plus proche est à 340 m (crue centennale, T100). Le bien est 15 m au-dessus de cette zone, ce qui réduit fortement le risque"
- "Le cours d'eau La Magne (ruisseau) passe à 74 m. Le bien est 5 m plus bas : l'eau pourrait descendre vers le bien"
- "Le terrain présente des caractéristiques défavorables (pente, cuvette)"
2. Si ça arrive, quelle serait la gravité ? (S%)
- "Lors d'inondations passées, l'eau a atteint 1.50 m à cet endroit"
- "Niveau d'aléa théorique : élevé (dégâts importants probables)"
- "2 événement(s) d'inondation recensé(s) à proximité — le risque de répétition est accru"
3. Le bâtiment est-il vulnérable ? (E%)
- "Type de bien : maison individuelle"
- "1 seul niveau : tout le bien est au rez-de-chaussée, directement exposé"
- "Surface habitable estimée : 120 m²"
Formule
En bas de la modale : P% × S% × E% = Score/100, avec la couverture des données (ex: "85% — 6/7 sources disponibles").
Fermeture
- Cliquer sur le × en haut à droite
- Ou cliquer en dehors de la fenêtre
10. Sinistres assureur (tenant)
Connexion tenant
En bas de la barre de recherche, un champ "Cle tenant (tk_...)" permet aux assureurs de se connecter avec leur cle API. Une fois connecte :
- Le nom du tenant s'affiche avec un badge bleu
- Chaque evaluation
/assessest automatiquement enrichie avec les sinistres du portefeuille de l'assureur
Carte "Sinistres declares a proximite"
Apres la section "Historique d'inondations", une carte bleue apparait si des sinistres du tenant sont detectes dans un rayon de 200 m :
- Nombre de sinistres dans un rayon de 200 m
- Cout moyen des dommages declares
- Indemnisation moyenne versee
Cette carte est de couleur bleu clair (informative), distincte des cartes rouges/oranges d'alea.
Accordion "Historique voisinage"
Dans la section "Analyse detaillee", un nouvel accordion "Historique voisinage (sinistres)" affiche :
| Donnee | Description |
|---|---|
| < 200 m | Nombre de sinistres dans un rayon de 200 m |
| < 500 m | Nombre de sinistres dans un rayon de 500 m |
| < 2 km | Nombre de sinistres dans un rayon de 2 km |
| Total portefeuille | Nombre total de sinistres du tenant |
| Dommage moyen | Montant moyen des dommages declares |
| Dommages totaux | Somme totale des dommages |
| Premier / Dernier sinistre | Dates extremes |
| Causes | Tags des causes predominantes (pluvial, fluvial, ruissellement...) |
Securite
- Regle absolue : si aucun tenant n'est connecte, aucune donnee sinistre n'est affichee
- Chaque tenant ne voit que ses propres sinistres — aucune agregation cross-tenant
- Les donnees sont protegees par 5 couches d'isolation (authentification, quota, WHERE, contexte transactionnel, Row-Level Security PostgreSQL)
- La cle tenant est stockee dans
localStorageet envoyee via le headerX-Tenant-Key
Deconnexion
Cliquer sur "Deconnecter" a cote du badge tenant pour supprimer la cle et masquer toutes les donnees sinistres.
11. Analyse visuelle du batiment (IA)
Acces
Dans le panneau Google Street View, un bouton "Analyser le batiment" apparait en haut a gauche. Ce bouton declenche une analyse visuelle automatique du batiment cible via intelligence artificielle.
Comment ca fonctionne
-
Capture multi-angles : 3 photos sont prises automatiquement depuis la position Street View actuelle :
- Vue facade (angle normal)
- Vue toiture (camera inclinee vers le haut)
- Vue large / dezoomee (champ large)
-
Photo historique : si des donnees Time Machine sont disponibles (plusieurs dates), une 4eme photo est capturee depuis le plus ancien panorama pour comparaison
-
Analyse IA : les images sont envoyees a un modele de vision artificielle (OpenAI GPT-4.1) qui evalue :
- Facade : fissures, humidite, proprete, joints, revetement
- Menuiseries : fenetres, portes, volets, materiau, double vitrage probable
- Toiture : tuiles/ardoises, gouttieres, cheminee, zinguerie
- Soubassement : humidite ascendante, fissures basses, soupiraux
-
Score : un score de 0 a 100 est attribue (100 = etat neuf/renove, 0 = tres degrade)
Resultat inline
Apres l'analyse, un bandeau apparait sous Street View avec :
- Score circle colore (vert >= 70, orange 40-69, rouge < 40)
- Resume en une phrase
- Sections detaillees : facade, menuiseries, toiture, soubassement
- Section Evolution : badge colore indiquant la tendance + estimation d'age + description des changements
Modale de detail
Un bouton info ouvre une modale complete avec :
- Les 4 sections ponderes (Facade 30%, Menuiseries 25%, Toiture 30%, Soubassement 15%)
- La section Evolution dans le temps avec :
- Badge tendance (Renovation recente / Bien entretenu / Vieillissant / Degrade)
- Estimation d'age du batiment ou de la derniere renovation
- Details par categorie (facade, menuiseries, toiture)
- Comparaison avant/apres si une photo historique est disponible (deux images cote a cote avec dates)
- La grille des images analysees (les photos Street View envoyees a l'IA)
- L'echelle de scoring et la formule de ponderation
Evolution dans le temps
L'IA detecte deux types d'indices :
-
Sur les photos actuelles : signes de renovation recente (crepi neuf, fenetres PVC modernes, couleurs fraiches) ou de degradation ancienne (mousses, decoloration, peinture ecaillee)
-
Par comparaison historique : si une photo ancienne est disponible, l'IA cherche UNIQUEMENT des changements majeurs et structurels :
- Ravalement de facade
- Remplacement de toiture
- Nouvelles fenetres
- Ajout d'etage
- Changement de revetement
Important : les differences de qualite d'image, de luminosite, de saison ou de resolution entre les photos anciennes et recentes sont dues aux cameras Street View de generations differentes et ne sont PAS considerees comme des changements du batiment.
Tendances
| Badge | Couleur | Signification |
|---|---|---|
| Renovation recente | Vert | Travaux recents visibles |
| Bien entretenu | Bleu | Bon etat, pas de degradation |
| Vieillissant | Orange | Signes d'usure, pas critique |
| Degrade | Rouge | Degradation avancee |
Cache
Les resultats d'analyse visuelle sont mis en cache pendant 7 jours. Une meme position/orientation ne sera pas reanalysee pendant cette periode.
Limites
- L'analyse depend de la qualite et de la disponibilite des images Street View (certaines zones rurales ou recentes peuvent ne pas etre couvertes)
- L'IA se concentre sur le batiment au centre de l'image — en rue etroite, les batiments voisins sont ignores
- Le score est indicatif et ne remplace pas une inspection physique par un expert
- Les images trop petites (< 5 KB, typiquement des erreurs Google) sont automatiquement exclues
12. Limites et avertissements
Ce que cette API ne remplace pas
- Une étude d'impact hydrologique réalisée par un bureau spécialisé
- Un rapport d'expert en inondation commandé par un assureur
- Une décision officielle de zonage émanant d'une autorité compétente
Limites techniques
- Précision géographique : les zones d'aléa sont des modèles statistiques, pas des relevés terrain. Un point situé en bordure de zone peut être mal classifié.
- Bâtiments : uniquement les bâtiments présents dans OpenStreetMap. Les constructions récentes non encore cartographiées ne seront pas trouvées.
- Hauteur d'eau AZI : calculée au centroïde du polygone, pas au point exact. Couverture : 97,6% des polygones (les ~1 400 restants sont en bordure du raster).
- Historique : uniquement les événements pour lesquels des données géospatiales sont disponibles. L'absence d'historique ≠ absence d'inondation passée.
- Parcelles : les données cadastrales peuvent avoir un décalage de quelques mois par rapport à la réalité.
Avertissement légal
Les informations fournies par flood-risk-api sont données à titre indicatif uniquement. Elles ne constituent pas un avis juridique, assurantiel ou technique certifié. VHASH GROUP SRL décline toute responsabilité quant à l'utilisation de ces informations dans le cadre de décisions financières, immobilières ou assurantielles.