> ## Documentation Index
> Fetch the complete documentation index at: https://docs.immoteur.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Signaler une anomalie avec l’API

> Choisissez un exemple pour POST /issues, remplacez ses ID, puis envoyez le signalement

Choisissez le bon exemple, remplacez ses ID, puis envoyez la requête à `POST /issues` pour signaler une anomalie observée.

Immoteur enregistre le signalement ; l’API ne corrige ni les données, ni le statut des annonces, ni leur regroupement.

## Choisir le signalement et l’exemple

<Tabs>
  <Tab title="Données">
    ```mermaid theme={null}
    flowchart TD
      accTitle: Choisir un signalement de données
      accDescr: Diagramme de décision pour signaler une donnée erronée sur un bien ou sur une annonce.
      A[Donnée erronée] --> B{Où est le problème ?}
      B -->|Bien| C[Bien immobilier]
      B -->|Annonce| D[Annonce]
    ```
  </Tab>

  <Tab title="Statut">
    ```mermaid theme={null}
    flowchart TD
      accTitle: Choisir un signalement de statut
      accDescr: Diagramme de décision pour signaler le statut incorrect d’une ou de plusieurs annonces.
      A[Statut incorrect] --> B[Une ou plusieurs annonces]
    ```
  </Tab>

  <Tab title="Regroupement">
    ```mermaid theme={null}
    flowchart TD
      accTitle: Choisir un signalement de regroupement
      accDescr: Diagramme de décision pour signaler une fusion ou une scission de biens immobiliers.
      A[Regroupement incorrect] --> B{Quelle correction ?}
      B -->|Fusion| C[Réunir des biens]
      B -->|Scission| D[Séparer des annonces]
    ```
  </Tab>

  <Tab title="Autre">
    ```mermaid theme={null}
    flowchart TD
      accTitle: Choisir un autre signalement
      accDescr: Diagramme de décision pour signaler une autre anomalie sur un bien ou sur une annonce.
      A[Autre anomalie] --> B{Où est le problème ?}
      B -->|Bien| C[Bien immobilier]
      B -->|Annonce| D[Annonce]
    ```
  </Tab>
</Tabs>

Les onglets correspondent aux valeurs de `issueKind` : `data`, `status`, `clustering` et `other`.

| Vous constatez                                                         | Utilisez     |
| ---------------------------------------------------------------------- | ------------ |
| Une information erronée sur un bien ou une annonce, y compris `status` | `data`       |
| Un statut erroné sur une ou plusieurs annonces                         | `status`     |
| Des biens ou des annonces à fusionner ou à séparer                     | `clustering` |
| Un autre problème sur un bien ou une annonce                           | `other`      |

Utilisez `data` pour signaler une information incorrecte, et `status` pour indiquer le statut de cycle de vie attendu des annonces choisies. Choisissez `other` seulement si aucun des trois autres types ne décrit le problème.

Dans l’API, un `Property` est un bien immobilier regroupé par Immoteur. Un `Classified` est une annonce source de ce bien.

Ouvrez les [sept exemples de requête de `POST /issues`](/api-reference/issue/create-an-issue-report) et copiez celui qui correspond à votre problème. Chaque exemple contient déjà le bon `issueKind` et les champs nécessaires.

Ne mélangez pas deux exemples. Gardez uniquement les champs de l’exemple choisi et n’envoyez pas de valeur `null`.

## Remplacer les ID et vérifier la sélection

Remplacez chaque UUID fictif par un ID auquel votre intégration a accès. Un ID de `Property` désigne le bien et toutes les annonces qui lui sont alors rattachées ; un ID de `Classified` désigne uniquement cette annonce.

* Pour `data`, choisissez l’exemple « bien » ou « annonce » : son `targetType` indique ce choix. Remplacez `propertyId` ou `classifiedId` et indiquez les `issueFacets` concernées, y compris `status`.
* Pour `status`, remplacez `classifiedIds` par les annonces concernées et choisissez un `expectedStatus` différent du statut actuel de chacune.
* Pour une fusion, fournissez une liste de biens dans `propertyIds`, une liste d’annonces dans `classifiedIds`, ou les deux. La sélection doit concerner au moins deux `Property` actuels.
* Pour une scission, renseignez un `propertyId` et les `classifiedIds` encore rattachés à ce bien.
* Pour une fusion ou une scission, chaque liste d’ID fournie contient de 1 à 100 éléments.
* Pour `other`, choisissez aussi l’exemple « bien » ou « annonce », dont `targetType` indique le choix. Remplacez l’ID de l’exemple et rédigez un `comment` non vide.

Vous pouvez combiner des biens et des annonces dans une fusion. Si une annonce figure déjà dans un bien sélectionné, les deux ID sont conservés dans le signalement ; Immoteur ne compte ce bien qu’une fois.

Pour `data`, `status` et `clustering`, `comment` est facultatif et limité à 4 000 caractères. Pour `other`, il est obligatoire et doit contenir au moins un caractère autre qu’un espace.

## Envoyer la requête ou la corriger

Envoyez l’exemple complété à `POST /issues`. Une réponse `201` renvoie le reçu du signalement.

Une réponse `422` signifie que la requête ou les relations actuelles entre les biens et les annonces ne conviennent plus. Repartez de l’exemple adapté au problème et remplacez les ID plutôt que d’ajouter des champs au hasard.

* Si un ID n’est pas accessible, choisissez un bien ou une annonce auquel votre intégration a accès.
* Si une annonce de `status` a déjà `expectedStatus`, ou si un seul ID de la liste est invalide, la requête entière est refusée : choisissez un statut attendu qui diffère pour chaque annonce et corrigez toute la liste.
* Si les éléments d’une fusion ne concernent plus deux biens distincts, actualisez la sélection.
* Si une annonce de scission n’est plus rattachée au bien choisi, actualisez le bien et les annonces avant d’envoyer la requête.

La [référence de `POST /issues`](/api-reference/issue/create-an-issue-report) reste la source des sept exemples JSON, de tous les champs et des réponses de validation. Revenez-y si vous devez choisir une autre requête ou vérifier un champ.
