---
title: "Comparaison de communes"
method: GET
path: "/communes/comparaison"
---

# Comparaison de communes

`GET /communes/comparaison`

## Request

- Base URL: `https://pillr.fr/api/v1`
- URL: `https://pillr.fr/api/v1/communes/comparaison`
- Auth: HTTP bearer

De deux à quatre communes côte à côte, avec les chiffres des pages communes : prix au m² des appartements et des maisons avec leur provenance et leur nombre de ventes, loyer, rendements, évolutions sur 1 et 3 ans, zone ABC, population, score Pillr, part de passoires et verdict d'investissement sans IA. Pour chaque indicateur, la commune la mieux placée est désignée. Paris, Lyon et Marseille sont comparées sur l'agrégat de leurs arrondissements. Coût : 1 crédit par élément rendu.

## Query parameters

- `insee` union, required: Deux à quatre codes INSEE, séparés par des virgules (35238,44109) ou en liste.
  - string[]
  - string
- `optique` 'achat' | 'rendement': achat (par défaut) ou rendement : oriente le verdict.

## Response `200`

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

- object
  - `optique` 'achat' | 'rendement', required
  - `communes` object[], required
    - `insee` string, required
    - `commune` string, nullable, required
    - `agrege` boolean, required
    - `prix_m2` object, required
      - `appartement` number, nullable, required
      - `maison` number, nullable, required
      - `provenance_appartement` 'mesure' | 'estime', nullable, required: mesure : mesuré sur les ventes DVF de la commune ; estime : estimé par le barème sur trop peu de ventes pour une mesure, à lire avec le nombre de ventes ; null : non étiquetée.
      - `provenance_maison` 'mesure' | 'estime', nullable, required: mesure : mesuré sur les ventes DVF de la commune ; estime : estimé par le barème sur trop peu de ventes pour une mesure, à lire avec le nombre de ventes ; null : non étiquetée.
      - `ventes_appartement` integer, nullable, required
      - `ventes_maison` integer, nullable, required
    - `loyer_m2` number, nullable, required
    - `rendement_brut_pct` object, required
      - `appartement` number, nullable, required
      - `maison` number, nullable, required
    - `evolution_pct` object, required
      - `un_an` number, nullable, required
      - `trois_ans` number, nullable, required
      - `confiance` string, nullable, required
    - `zone_abc` string, nullable, required
    - `population` integer, nullable, required
    - `score_pillr` number, nullable, required
    - `passoires_dpe_fg_pct` number, nullable, required
    - `verdict` object, required
      - `niveau` 'acheter' | 'surveiller' | 'cher', required
      - `label` string, required
      - `raisons` string[], 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.
    - `donnees_du` string, nullable, required
  - `meilleure_par_indicateur` object, required: Code INSEE de la commune la mieux placée sur chaque indicateur ; null quand aucune commune ne le porte.
    - `prix_appartement_le_plus_bas` string, nullable, required
    - `prix_maison_le_plus_bas` string, nullable, required
    - `rendement_appartement_le_plus_haut` string, nullable, required
    - `rendement_maison_le_plus_haut` string, nullable, required
    - `evolution_3_ans_la_plus_haute` string, nullable, required
    - `score_pillr_le_plus_haut` string, nullable, required
    - `passoires_les_moins_nombreuses` string, nullable, required
  - `introuvables` 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)
