Aller au contenu principal

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

  1. Comment fonctionne la recherche
  2. Le score de risque assurance
  3. Les zones d'aléa d'inondation
  4. L'historique des inondations
  5. Le cadastre et le bâtiment
  6. La carte interactive
  7. Sources de données et licences
  8. Altitude relative
  9. La modale "Comprendre ce score"
  10. Sinistres assureur (tenant)
  11. Analyse visuelle du batiment (IA)
  12. 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 ?"

FacteurDescription
Zone d'aléaLe 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'eauY a-t-il un cours d'eau à proximité ? De quel type (rivière, ruisseau) ? À quelle distance ?
TopographieLe terrain présente-t-il des caractéristiques défavorables (cuvette, pente vers le bien) ?
Altitude relativeLe 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é ?"

FacteurDescription
Profondeur d'eauHauteur d'eau observée lors d'inondations passées (données AZI IDW 2021)
Niveau d'aléaNiveau théorique de l'aléa (Faible / Moyen / Élevé)
Terrain en cuvetteLe terrain favorise-t-il l'accumulation d'eau ?
Fréquence historiqueCombien d'événements d'inondation ont été recensés à proximité ?

Exposition (E) — "Le bâtiment est-il vulnérable ?"

FacteurDescription
Type de bienMaison individuelle (plus exposée) vs immeuble à appartements (moins exposé)
Nombre de niveaux1 seul niveau = tout au rez-de-chaussée (plus exposé). Plusieurs niveaux = étages protégés
Surface habitableSurface estimée du bien (plus grand = plus de valeur exposée)
Altitude du bienAltitude absolue (bien en zone basse = plus exposé)

Étiquettes

ScoreÉtiquetteInterprétation
0–14FaibleRisque limité
15–34ModéréRisque existant mais contenu
35–59ÉlevéRisque significatif, précautions nécessaires
60–100CritiqueRisque 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

NiveauPériode de retourSignification
ÉlevéT10 (1/10 ans)Zone inondée statistiquement tous les 10 ans
MoyenT100 (1/100 ans)Zone inondée statistiquement tous les 100 ans
FaibleT1000 (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

CouchePériode de retourSignification
FLU — FluvialeT10 / T100 / T1000Inondations par débordement de rivières
PLU — PluvialeT10 / T100 / T1000Inondations par précipitations extrêmes
KUST — CôtièreT10 / T100 / T1000Inondations 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

ChampValeur
SourceCopernicus Emergency Management Service
ÉvénementInondations catastrophiques — juillet 2021
AOI01Liège et vallée de la Vesdre
AOI02Rochefort et province de Namur
GravitéCatastrophique
LicenceOpen 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)

ChampValeur
SourceService Public de Wallonie — Atlas des Zones Inondées
MéthodeModélisation IDW (Inverse Distance Weighting)
DateJuillet 2021 — inondations de la Vesdre
Volume59 059 polygones
Hauteur d'eauOui — stockée en base (fetched depuis raster SPW au moment de l'ingestion)
LicenceCC-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

BadgeGravitéDescription
🔴 CatastrophiquecatastrophicDommages massifs, décès, évacuations
🟠 MajeurmajorDommages importants, inondations étendues
🟡 ModérémoderateInondations localisées, dommages limités
🟢 MineurminorDé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 OpenStreetMap
  • levels : nombre d'étages (tag OSM building: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 levels est 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

CoucheReprésentationSource
Fond de carteTuiles vectorielles OSMOpenFreeMap (liberty style)
Analyse visuellePhotos multi-angles + IAGoogle Street View Static API + OpenAI Vision
Zones d'aléaPolygones colorés (rouge/orange/jaune)Données locales PostGIS via /geo/zones
Historique inondationsPolygones rougesflood_events (rayon 2 km autour du point)
Parcelle cadastralePolygone jaune (contour orange)parcels — BPNCAPA
Bâtiment évaluéPolygone bleu (2D) / extrusion (3D)buildings — OSM
MarqueurÉpingle bleuePoint é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

DatasetOrganismeLicenceFréquence MàJ
ALEA_INOND (Wallonie)SPW — Service Public de WallonieCC-BY 4.0Manuelle
OGRK FLU/PLU/KUST (Flandre)VMM — Vlaamse MilieumaatschappijOpen Data VlaanderenManuelle
Zones inondation (Bruxelles)Bruxelles EnvironnementCC-BY 4.0Manuelle
AZI IDW 2021 (Wallonie)SPW — Atlas Zones InondéesCC-BY 4.0Statique (juillet 2021)
EMSR518 (Copernicus EMS)Union Européenne / CopernicusOpen Data CopernicusStatique (juillet 2021)
BâtimentsOpenStreetMap contributorsODbLManuelle
Cours d'eauOpenStreetMap contributorsODbLManuelle
Parcelles cadastralesSPF Finances — BPNCAPAOpen Data BelgiqueManuelle
GéocodageNominatim / OSMODbLTemps réel
ÉlévationOpen-MeteoCC-BY 4.0Temps réel
Fond de carteOpenFreeMap / OSMODbLContinu

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

SituationMultiplicateurEffet
Bien 5 m au-dessus×0.37Score réduit de 63%
Bien 10 m au-dessus×0.14Score réduit de 86%
Même niveau (±1 m)×1.0Pas de changement
Bien 5 m en dessous×2.0Score doublé
Bien 2 m en dessous×1.4Score 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 /assess est 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 :

DonneeDescription
< 200 mNombre de sinistres dans un rayon de 200 m
< 500 mNombre de sinistres dans un rayon de 500 m
< 2 kmNombre de sinistres dans un rayon de 2 km
Total portefeuilleNombre total de sinistres du tenant
Dommage moyenMontant moyen des dommages declares
Dommages totauxSomme totale des dommages
Premier / Dernier sinistreDates extremes
CausesTags 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 localStorage et envoyee via le header X-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

  1. 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)
  2. Photo historique : si des donnees Time Machine sont disponibles (plusieurs dates), une 4eme photo est capturee depuis le plus ancien panorama pour comparaison

  3. 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
  4. 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 :

  1. Sur les photos actuelles : signes de renovation recente (crepi neuf, fenetres PVC modernes, couleurs fraiches) ou de degradation ancienne (mousses, decoloration, peinture ecaillee)

  2. 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

BadgeCouleurSignification
Renovation recenteVertTravaux recents visibles
Bien entretenuBleuBon etat, pas de degradation
VieillissantOrangeSignes d'usure, pas critique
DegradeRougeDegradation 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.