---
title: "Marché de la courte durée d'une commune"
method: GET
path: "/communes/{insee}/courte-duree"
---

# Marché de la courte durée d'une commune

`GET /communes/{insee}/courte-duree`

## Request

- Base URL: `https://pillr.fr/api/v1`
- URL: `https://pillr.fr/api/v1/communes/{insee}/courte-duree`
- Auth: HTTP bearer

Marché de la location courte durée d'une commune : profil AirDNA (annonces actives, revenu, occupation, prix de nuit, revenu par nuit disponible, évolutions sur un an, score de marché et sous-scores), à la maille de la commune, de la ville pour un arrondissement, du département ajusté à la part de résidences secondaires ou de la France, avec sa confiance ; rentabilité de la courte durée, scores Pillr de courte durée, de longue durée et de tourisme, part de résidences secondaires, et statut réglementaire de la courte durée. Mêmes profils que le simulateur de pillr.fr. Données aspirées des pages publiques d'AirDNA. Coût : 2 crédits par appel réussi.

## Path parameters

- `insee` string, required: Code INSEE de la commune ou de l'arrondissement (5 caractères, 2A ou 2B pour la Corse).

## Response `200`

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

- object
  - `insee` string, required
  - `commune` string, nullable, required
  - `profil` object, nullable, required: null : aucun profil, même départemental ou national.
    - `maille` 'commune' | 'ville' | 'departement' | 'france' | 'anciennes_donnees', required: commune : marché AirDNA de la commune ; ville : marché de la ville d'un arrondissement ; departement : profil du département ajusté à la part de résidences secondaires ; france : profil national ; anciennes_donnees : colonnes du jeu de 2025.
    - `marche` string, nullable, required: Nom du marché ou du profil source.
    - `annonces_actives` number, nullable, required: Annonces actives sur le marché, douze derniers mois.
    - `revenu_annuel` number, nullable, required: Revenu annuel de l'annonce type du marché, en euros, avant charges.
    - `occupation_pct` number, required: Part des nuits ouvertes réservées, en %.
    - `prix_nuit` number, required: Prix de nuit moyen payé, en euros.
    - `revpar` number, required: Revenu par nuit disponible : prix de nuit multiplié par l'occupation, en euros.
    - `evolution_annonces_1an_pct` number, nullable, required
    - `evolution_revenu_1an_pct` number, nullable, required
    - `score_marche` number, nullable, required: Score de marché AirDNA, 40 à 100.
    - `scores_airdna` object, required
      - `demande` number, nullable, required
      - `saisonnalite` number, nullable, required
      - `croissance` number, nullable, required
      - `reglementation` number, nullable, required
    - `confiance` 'mesure' | 'estime' | 'faible', required: mesure : marché AirDNA d'au moins 20 annonces ; estime : petit marché lissé avec son département, ou profil départemental ; faible : profil national ou anciennes données.
    - `millesime` string, nullable, required: Millésime de l'aspiration des pages marché AirDNA.
    - `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.
  - `rentabilite_lcd_pct` object, required: Rentabilité brute de la courte durée publiée par market_data (colonne héritée du jeu de 2025).
    - `valeur` 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.
  - `scores` object, required: Scores Pillr de la commune sur 100 : courte durée, longue durée, tourisme.
    - `lcd` number, nullable, required
    - `lld` number, nullable, required
    - `tourisme` 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.
  - `part_residences_secondaires_pct` object, required
    - `valeur` 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.
  - `reglementation` object, required: Statut de la courte durée pour un investisseur (hors résidence principale) dans la commune, sans DPE donné.
    - `niveau` 'libre' | 'declaration' | 'autorisation' | 'compensation' | 'dpe', required: libre : déclaration en mairie ; declaration : zone tendue, déclaration et numéro d'enregistrement ; autorisation : changement d'usage à obtenir ; compensation : changement d'usage avec compensation ; dpe : DPE qui ferme le meublé de tourisme.
    - `recommandable` boolean, required: Faux quand la courte durée ne peut pas être conseillée en l'état (compensation, DPE).
    - `titre` string, required
    - `texte` string, required
  - `limites` string[], required
  - `source` 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)
