L'API
Les mêmes faits que les pages, en JSON. Sans clé, sans quota, sans compte : les sources sont ouvertes, le site les lit au chargement et ne stocke rien. Les chemins et les noms de champs sont en anglais ; les valeurs des sources restent telles quelles.
Les quatre adresses
/api/street/{id}tout ce que le site sait d'une voie : la parcelle et sa contenance, le zonage et les destinations autorisées, les servitudes, les risques, le terrain, les permis de la voie, les ventes, les diagnostics, ce qu'il y a autour. L'identifiant est celui de la Base Adresse Nationale ; ?number= recentre sur un numéro.
Essayer : https://aucadastre.fr/api/street/94081_7125?number=60
/api/commune/{insee}une commune : son marché, son document d'urbanisme, sa zone A/B/C, la fibre, ses risques, et chacune de ses voies adressées avec son adresse machine.
Essayer : https://aucadastre.fr/api/commune/94081
/api/commune/{insee}/permitsles autorisations d'urbanisme délivrées dans la commune (Sitadel), par pages de 1000 avec limit et offset.
/api/parcel/{id}une parcelle par sa référence cadastrale, son contour, sa contenance, et la voie la plus proche de son centre.
Le contrat OpenAPI 3.1, généré depuis le code qui sert ces adresses : https://aucadastre.fr/api/openapi.json. Chaque réponse porte un en-tête Link vers ce contrat et vers cette page.
Ce qu'une réponse porte
- Chaque chiffre nomme sa source, et
nullveut dire « la source ne le dit pas », jamais une chaîne vide ni un zéro. Une commune sans permis répond 200 avec une liste vide : c'est un fait, pas une erreur. - Un montant voyage avec sa devise (
{ value, currency }), jamais convertie. Les prix au mètre carré sont ceux du bâti déclaré, et les médianes d'une commune ne sont jamais des moyennes. - La parcelle est celle qui contient le point, ou la plus proche quand le point de l'adresse est sur la voie :
contains_pointetdistance_mle disent. Une parcelle à 16 m est une hypothèse, pas une réponse. - Une collection qui grandit se pagine : les permis portent un bloc
pageavec le total et les adresses absolues de la page suivante et de la précédente, les mêmes en en-têteLink. Un paramètre illisible retombe sur le défaut, jamais 400. - La même enveloppe sur chaque succès :
source,served_by,terms,documentation,notice. Ces noms sont réservés. - Toute adresse est absolue, et chaque réponse nomme la page HTML (
page_url) et son jumeau Markdown (markdown_url).
La promesse
- Additive, sans numéro de version. Un champ peut apparaître ; aucun ne disparaît ni ne change de sens sous un appelant, et une adresse ne bouge pas.
- Un ETag faible sur chaque réponse,
If-None-Matchhonoré, 304 vide. Chaque réponse se range une journée au bord, comme les pages. - CORS ouvert,
etagetlinkexposés. Pas de borne de débit : rien n'est à protéger. - Hors index (
x-robots-tag: noindex) : lisible par une machine, pas indexable comme une page. - Le propriétaire d'une parcelle n'est servi nulle part : les fichiers fonciers sont sous convention. La démarche pour l'obtenir.
Les refus
Tout refus est un application/problem+json (RFC 9457), sans enveloppe et no-store. Son champ type est l'une des ancres ci-dessous ; instance porte le chemin demandé, et received ce qui a été lu.
invalid-insee-code400- le code INSEE ne fait pas cinq caractères (2A et 2B en Corse). Un code postal n'est pas un code INSEE.
municipality-not-found404- aucune commune ne porte ce code à la Base Adresse Nationale. Paris, Marseille et Lyon répondent par leurs arrondissements.
invalid-street-id400- l'identifiant de voie n'a pas la forme code INSEE, souligné, code de voie.
street-not-found404- aucune voie ne porte cet identifiant à la Base Adresse Nationale.
invalid-parcel-id400- l'identifiant de parcelle ne fait pas quatorze caractères.
parcel-not-found404- aucune parcelle ne porte cet identifiant au plan cadastral.
method-not-allowed405- la méthode n'est ni GET, ni HEAD, ni OPTIONS. La réponse porte Allow.
not-found404- rien n'est servi à cette adresse sous /api/.
Les autres formes des mêmes faits
- Le jumeau Markdown de chaque page. Toute page de commune, de voie ou de permis existe aussi à la même adresse suivie de
.md: /vitry-sur-seine-94081.md, /vitry-sur-seine-94081/rue-pasteur-7125.md, /vitry-sur-seine-94081/permis.md. C'est la forme la plus simple à lire pour un agent, et chaque page HTML la déclare enrel="alternate". - Le serveur MCP, à https://aucadastre.fr/mcp (alias
/api/mcp) : sans état, POST seulement, révisions 2026-07-28, 2025-11-25, 2025-06-18, 2025-03-26. 4 outils, qui rendent le même texte que les jumeaux : get_french_address_facts, get_french_commune_facts, get_french_building_permits, get_french_parcel. Déclaré à l'annuaire officiel sous le nomfr.aucadastre/aucadastre. - /llms.txt, ce que le site sert, pour les assistants.
Citer
Base Adresse Nationale, plan cadastral informatisé (DGFiP), Géoportail de l'urbanisme, Géorisques, Demandes de valeurs foncières, ADEME, Sitadel, IGN, PVGIS, Arcep, sous Licence Ouverte 2.0 (Etalab) : la réutilisation est libre, en citant la source. Le champ source de chaque réponse porte la phrase à recopier.