---
title: "Comparaison de façade avec Street View"
method: POST
path: "/annonces/{id}/localisation/street-view"
---

# Comparaison de façade avec Street View

`POST /annonces/{id}/localisation/street-view`

## Request

- Base URL: `https://pillr.fr/api/v1`
- URL: `https://pillr.fr/api/v1/annonces/{id}/localisation/street-view`
- Auth: HTTP bearer

Compare par vision (Gemini) la façade des 4 premières photos de l'annonce aux images Google Street View de 1 à 3 adresses candidates, en une seule passe : verdict (oui, non, incertain), confiance, raison et classement des candidats. Un candidat sans couverture Street View n'est pas comparé ni payé. Les images Street View ne sont jamais servies ni gardées : seul un lien l'est. Rien n'est débité sans photo d'annonce, sans couverture ou si le service est coupé. Coût : 40 crédits par appel réussi.

## Path parameters

- `id` string, required: Identifiant de l'annonce : lbc:<numéro>, bienici:<identifiant>, seloger:<numéro> ou identifiant Pillr.

## Request body

- object
  - `candidats` object[]: Les adresses candidates.
    - `lat` number, required
    - `lon` number, required
    - `libelle` string: Adresse ou nom du candidat, repris dans le classement.
  - `lat` number: Un seul candidat : sa latitude (sans candidats).
  - `lon` number: Un seul candidat : sa longitude (sans candidats).
  - `cap` number: Cap de la prise de vue Street View, en degrés.

## Response `200`

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

- object
  - `id` string, nullable, required: Identifiant Pillr de l'annonce dans la base servie ; null quand l'annonce n'est connue que des archives du lac.
  - `id_portail` string, nullable, required: Identifiant de l'annonce chez son portail : lbc:<n>, bienici:<id> ou seloger:<id>.
  - `correspondance` 'oui' | 'non' | 'incertain', required: Verdict du candidat retenu : oui, non ou incertain.
  - `confiance` number, nullable, required: Confiance déclarée par le modèle, de 0 à 1.
  - `raison` string, nullable, required
  - `lien_street_view` string, nullable, required: Lien Google Street View du candidat retenu (aucune image n'est servie).
  - `images_comparees` integer, required: Images Street View réellement comparées (un candidat sans couverture n'est pas payé).
  - `classement` object[], required
    - `candidat` integer, required: Rang du candidat dans la demande, à partir de 1.
    - `libelle` string, nullable, required
    - `correspondance` 'oui' | 'non' | 'incertain', required
    - `confiance` number, nullable, required
    - `raison` string, nullable, required
    - `lat` number, nullable, required
    - `lon` number, nullable, required
    - `lien_street_view` string, 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.
  - `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)
