---
title: "Tous les DPE d'une adresse, logement par logement"
method: GET
path: "/adresses/{cle_ban}/dpe"
---

# Tous les DPE d'une adresse, logement par logement

`GET /adresses/{cle_ban}/dpe`

## Request

- Base URL: `https://pillr.fr/api/v1`
- URL: `https://pillr.fr/api/v1/adresses/{cle_ban}/dpe`
- Auth: HTTP bearer

Tous les DPE d'une adresse de la Base Adresse Nationale, logement par logement : numéro, dates, étiquettes énergie et GES, consommation et émissions, surface, type, étage et complément d'adresse, méthode, fin de validité, DPE remplacé, échéance d'interdiction de louer. Sources : DPE de logements existants et neufs et DPE tertiaires portant la clé BAN, DPE d'avant juillet 2021 rapprochés par position (30 m au plus). S'y ajoutent l'historique des étiquettes de l'adresse, ses audits énergétiques (classe visée, coût maximal) et la répartition des DPE de sa commune. Aucun DPE, aucun audit ni aucun historique : 404 ressource_absente, rien n'est débité. Coût : 3 crédits par appel réussi.

## Path parameters

- `cle_ban` string, required: Clé d'interopérabilité de la Base Adresse Nationale, ex. 69383_1234_00012.

## Query parameters

- `sources` union: Les sources à lire (existant, neuf, tertiaire, ancien), séparées par des virgules ; toutes par défaut.
  - string[]
  - string

## Response `200`

Réponse servie et débitée (sauf réponse identique déjà servie dans les 24 h).

- object
  - `cle_ban` string, required
  - `adresse` object, nullable, required
    - `insee` string, nullable, required
    - `code_postal` string, nullable, required
    - `commune` string, nullable, required
    - `lat` number, nullable, required
    - `lon` number, nullable, required
  - `dpe` object[], required: Tous les DPE de l'adresse, logement par logement, le plus récent d'abord.
    - `numero` string, required
    - `source` 'existant' | 'neuf' | 'tertiaire' | 'ancien', required: existant, neuf, tertiaire (depuis juillet 2021) ou ancien (avant juillet 2021).
    - `etabli_le` string, nullable, required
    - `fin_validite` string, nullable, required
    - `remplace` string, nullable, required: Numéro du DPE que celui-ci remplace.
    - `etiquette` 'A' | 'B' | 'C' | 'D' | 'E' | 'F' | 'G', nullable, required
    - `ges` 'A' | 'B' | 'C' | 'D' | 'E' | 'F' | 'G', nullable, required
    - `conso_kwh_m2` number, nullable, required: Consommation d'énergie primaire, en kWh par m² et par an.
    - `ges_kg_m2` number, nullable, required: Émissions de gaz à effet de serre, en kg de CO2 par m² et par an.
    - `surface` number, nullable, required: Surface habitable du logement (surface utile pour un DPE tertiaire), en m².
    - `type` string, nullable, required: Type de bâtiment (maison, appartement, immeuble), ou secteur d'activité d'un DPE tertiaire.
    - `etage` integer, nullable, required
    - `complement` string, nullable, required: Complément d'adresse du logement (porte, bâtiment), tel que le diagnostiqueur l'écrit.
    - `methode` string, nullable, required
    - `periode` string, nullable, required: Période de construction.
    - `annee_construction` integer, nullable, required
    - `chauffage` string, nullable, required: Énergie principale du chauffage.
    - `rattachement` 'cle_ban' | 'position', required: cle_ban : le DPE porte la clé BAN de l'adresse ; position : DPE d'avant juillet 2021 rapproché par sa position.
    - `distance_m` integer, nullable, required: Distance à l'adresse d'un DPE rapproché par position ; null sinon.
    - `interdiction_location` string, nullable, required: Premier jour où la location d'un logement de cette classe est interdite (AAAA-MM-JJ), selon le calendrier de la loi Climat et résilience en métropole (G 2025, F 2028, E 2034). null : classe sans échéance, DPE absent, ou adresse hors de la métropole (le calendrier des outre-mer n'est pas servi).
    - `mois_restants` integer, nullable, required: Mois pleins avant l'échéance ; 0 quand l'interdiction est déjà en vigueur ; null sans échéance.
    - `qualite` object, required: Ce qui permet de juger la valeur : nombre, provenance, incertitude, drapeaux, date et source.
      - `n` integer, nullable, required: Nombre d'observations derrière la valeur ; null si sans objet.
      - `provenance` 'mesure' | 'estime', nullable, required: mesure : observé sur la donnée ; estime : modèle, barème ou imputation ; null : sans objet.
      - `incertitude` object, nullable, required: Incertitude de la valeur : fourchette et demi-largeur.
        - `demi_largeur_pct` number, nullable, required: Demi-largeur de la fourchette, en % de la valeur.
        - `bas` number, nullable, required
        - `haut` number, nullable, required
      - `drapeaux` string[], required: Ce qui doit faire lire la valeur avec prudence ; vide si rien.
      - `methode` string, nullable, required: Méthode de calcul ou de rattachement, en clair.
      - `donnees_du` string, nullable, required: Date de la donnée (AAAA-MM-JJ ou horodatage ISO 8601).
      - `source` string, required: Source publique ou moteur Pillr, en clair.
  - `historique` object[], required: Les étiquettes successives de l'adresse, la plus ancienne d'abord.
    - `date` string, required
    - `etiquette` 'A' | 'B' | 'C' | 'D' | 'E' | 'F' | 'G', nullable, required
  - `audits` object[], required
    - `n_audit` string, required
    - `etabli_le` string, nullable, required
    - `classe_depart` 'A' | 'B' | 'C' | 'D' | 'E' | 'F' | 'G', nullable, required: Classe du logement à l'état initial de l'audit.
    - `classe_visee` 'A' | 'B' | 'C' | 'D' | 'E' | 'F' | 'G', nullable, required: Meilleure classe atteinte par une étape de l'audit.
    - `cout_max` number, nullable, required: Coût cumulé le plus élevé chiffré par l'audit, en euros.
    - `etapes` integer, required
    - `qualite` object, required: Ce qui permet de juger la valeur : nombre, provenance, incertitude, drapeaux, date et source.
      - `n` integer, nullable, required: Nombre d'observations derrière la valeur ; null si sans objet.
      - `provenance` 'mesure' | 'estime', nullable, required: mesure : observé sur la donnée ; estime : modèle, barème ou imputation ; null : sans objet.
      - `incertitude` object, nullable, required: Incertitude de la valeur : fourchette et demi-largeur.
        - `demi_largeur_pct` number, nullable, required: Demi-largeur de la fourchette, en % de la valeur.
        - `bas` number, nullable, required
        - `haut` number, nullable, required
      - `drapeaux` string[], required: Ce qui doit faire lire la valeur avec prudence ; vide si rien.
      - `methode` string, nullable, required: Méthode de calcul ou de rattachement, en clair.
      - `donnees_du` string, nullable, required: Date de la donnée (AAAA-MM-JJ ou horodatage ISO 8601).
      - `source` string, required: Source publique ou moteur Pillr, en clair.
  - `contexte_commune` object, nullable, required: Les DPE de la commune de l'adresse : répartition des étiquettes et part de passoires ; null si indisponible.
    - `insee` string, required
    - `total` integer, nullable, required
    - `repartition` object, required
      - `A` integer, nullable, required
      - `B` integer, nullable, required
      - `C` integer, nullable, required
      - `D` integer, nullable, required
      - `E` integer, nullable, required
      - `F` integer, nullable, required
      - `G` integer, nullable, required
      - `non_renseigne` integer, nullable, required
    - `part_passoires_pct` number, nullable, required
    - `part_f_g_pct` number, nullable, required
    - `qualite` object, required: Ce qui permet de juger la valeur : nombre, provenance, incertitude, drapeaux, date et source.
      - `n` integer, nullable, required: Nombre d'observations derrière la valeur ; null si sans objet.
      - `provenance` 'mesure' | 'estime', nullable, required: mesure : observé sur la donnée ; estime : modèle, barème ou imputation ; null : sans objet.
      - `incertitude` object, nullable, required: Incertitude de la valeur : fourchette et demi-largeur.
        - `demi_largeur_pct` number, nullable, required: Demi-largeur de la fourchette, en % de la valeur.
        - `bas` number, nullable, required
        - `haut` number, nullable, required
      - `drapeaux` string[], required: Ce qui doit faire lire la valeur avec prudence ; vide si rien.
      - `methode` string, nullable, required: Méthode de calcul ou de rattachement, en clair.
      - `donnees_du` string, nullable, required: Date de la donnée (AAAA-MM-JJ ou horodatage ISO 8601).
      - `source` string, required: Source publique ou moteur Pillr, en clair.
  - `limites` string[], required
  - `credits` object, required: Crédits débités par cet appel (réservés, pour une tâche en cours), et crédits encore utilisables ce mois avant la coupure : crédits offerts, crédits inclus du mois et crédits facturables sous le plafond de dépense (null si inconnus ou en bac à sable).
    - `debites` integer, required
    - `restants` integer, nullable, required

## Other responses

- `304`: Non modifiée depuis l'ETag fourni : rien n'est débité.
- `400`: Paramètres invalides
- `401`: Clé d'API absente
- `402`: Crédits insuffisants ; Carte requise ; Plafond mensuel de dépense atteint
- `403`: Portée insuffisante
- `404`: Ressource absente : rien n'est débité
- `429`: Trop de requêtes par minute
- `500`: Erreur interne
- `503`: API indisponible ; Donnée momentanément indisponible

---

[API](https://skmtc.dev/pillr/apis/api-pillr.md) · [All operations](https://skmtc.dev/pillr/apis/api-pillr/llms.txt) · [OpenAPI document](https://skmtc.dev/pillr/apis/api-pillr/revisions/218b2866bd6c?raw)
