---
title: "Volumes et prix des ventes d'une commune"
method: GET
path: "/codes-postaux/{code_postal}/ventes"
---

# Volumes et prix des ventes d'une commune

`GET /codes-postaux/{code_postal}/ventes`

## Request

- Base URL: `https://pillr.fr/api/v1`
- URL: `https://pillr.fr/api/v1/codes-postaux/{code_postal}/ventes`
- Auth: HTTP bearer

Les volumes et les prix des ventes DVF d'une commune, par son code INSEE ou par un code postal (la commune la plus peuplée du code postal) : ventes par trimestre (total, appartements, maisons) et médiane au m² ; série annuelle du prix au m² (appartement, maison, ensemble) avec transactions, minimum, maximum et drapeaux de basse confiance ; vélocité au code postal, année par année, évolution du volume et sa lecture, comme l'outil de vélocité du Hub. La vélocité compte des lignes DVF d'appartements et de maisons (une par lot), pas des mutations. Chaque valeur porte son nombre d'observations. Coût : 2 crédits par appel réussi.

## Path parameters

- `code_postal` string, required: Code postal.

## Response `200`

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

- object
  - `commune` object, required
    - `insee` string, required
    - `nom` string, nullable, required
    - `code_postal` string, nullable, required: Code postal principal de la commune, celui de la vélocité.
  - `par_trimestre` object[], required: Ventes DVF de la commune par trimestre, le plus ancien d'abord.
    - `trimestre` string, required: Trimestre, ex. 2025-T4.
    - `debut` string, required: Premier jour du trimestre.
    - `ventes` integer, required
    - `appartements` integer, nullable, required
    - `maisons` integer, nullable, required
    - `prix_m2_median` number, nullable, required: Médiane du prix au m² des ventes du trimestre, en euros.
    - `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.
  - `par_annee` object[], required: Série annuelle du prix au m² et des transactions de la commune, la plus ancienne d'abord.
    - `annee` integer, required
    - `transactions_appartements` integer, nullable, required
    - `transactions_maisons` integer, nullable, required
    - `transactions_total` integer, nullable, required
    - `prix_m2_appartement` number, nullable, required
    - `prix_m2_maison` number, nullable, required
    - `prix_m2_global` number, nullable, required
    - `min_appartement` number, nullable, required
    - `max_appartement` number, nullable, required
    - `min_maison` number, nullable, required
    - `max_maison` number, nullable, required
    - `basse_confiance_appartement` boolean, nullable, required
    - `basse_confiance_maison` boolean, 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.
  - `velocite` object, nullable, required: Vélocité au code postal principal ; null sans code postal connu.
    - `code_postal` string, required
    - `par_annee` object[], required
      - `annee` integer, required
      - `ventes` integer, required
    - `evolution_volume_pct` number, nullable, required: Évolution du volume de la première année à la dernière année pleine, en %.
    - `lecture` string, required: Ce que dit l'évolution du volume sur la liquidité du marché (même lecture que le Hub).
    - `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)
