---
title: "Indice Travaux et état du parc en vente, en lot"
method: POST
path: "/travaux/lot"
---

# Indice Travaux et état du parc en vente, en lot

`POST /travaux/lot`

## Request

- Base URL: `https://pillr.fr/api/v1`
- URL: `https://pillr.fr/api/v1/travaux/lot`
- Auth: HTTP bearer

Indice Travaux et état du parc en vente pour 100 éléments au plus en un appel : chaque élément est servi ou refusé seul, avec son code d'erreur, et seuls les éléments servis sont débités. Pour un code postal ou une commune, un mois d'entrée au catalogue et un type de bien : biens lus (une fiche par bien), état visuel médian lu sur les photos, part des biens à rénover, coût médian des travaux et au m², avec l'incertitude mesurée du chiffrage. Le coût vient du barème déterministe d'artisans appliqué aux postes vus sur les photos, jamais d'un montant écrit par le modèle ; les annonces aux photos de catalogue sont écartées et comptées. Par défaut le dernier mois calculé et tous les types. Rien n'est masqué : une maille à peu de biens est servie avec le drapeau peu_d_observations. Maille inconnue : 404 ressource_absente, rien n'est débité. Coût : 2 crédits par élément rendu.

## Request body

- object
  - `elements` object[], required: Les entrées de l'opération unitaire, 100 au plus.
    - `maille` string, required: Code postal ou code INSEE de la commune.
    - `type_maille` 'code_postal' | 'insee': code_postal ou insee ; sans lui, le code est lu comme un code postal s'il en est un, sinon comme un code INSEE.
    - `mois` string: Mois d'entrée des annonces au catalogue (AAAA-MM) ; par défaut le dernier calculé.
    - `type` 'appartement' | 'maison': appartement ou maison ; par défaut, les deux et leur ensemble.

## Response `200`

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

- object
  - `resultats` union[], required: Un résultat par élément, dans l'ordre de l'entrée : la sortie de l'opération, ou l'erreur de cet élément.
    - union
      - object
        - `index` integer, required
        - `ok` true, required
        - `donnees` object, required
          - `maille` object, required
            - `type` 'code_postal' | 'insee', required
            - `code` string, required
          - `mois` string, required: Mois d'entrée des annonces au catalogue (AAAA-MM).
          - `segments` object[], required
            - `type_bien` 'appartement' | 'maison' | 'tous', required
            - `n` integer, required: Biens distincts lus (une fiche par bien, empreinte de diffusion).
            - `n_annonces` integer, required: Annonces analysées avant le dédoublonnage.
            - `etat_median` number, nullable, required: État visuel médian lu sur les photos, de 0 (à reprendre) à 100 (neuf).
            - `part_a_renover_pct` number, nullable, required: Part des biens à rénover d'après leurs photos, en %.
            - `cout_median` number, nullable, required: Coût médian des travaux (milieu de la fourchette du barème), en euros.
            - `cout_min_median` number, nullable, required
            - `cout_max_median` number, nullable, required
            - `cout_median_m2` number, nullable, required: Coût médian des travaux rapporté à la surface, en euros par m².
            - `incertitude_pct` object, required: Écart médian mesuré entre deux analyses d'un même bien sur le chiffrage, en % : l'incertitude du coût.
              - …
            - `photos_catalogue_exclues` integer, required: Annonces écartées parce que leurs photos sont des photos de catalogue.
            - `qualite` object, required: Ce qui permet de juger la valeur : nombre, provenance, incertitude, drapeaux, date et source.
              - …
          - `methode` string, required
          - `donnees_du` string, nullable, required: Date du calcul de l'indice (horodatage ISO 8601).
      - object
        - `index` integer, required
        - `ok` false, required
        - `erreur` object, required
          - `code` string, required: Code stable de l'erreur (lib/api/v1/erreurs.ts).
          - `detail` string, required
  - `n_ok` integer, required
  - `n_erreurs` integer, 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

- `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)
