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

# API Ameublement

> Documentation de l'API pour le service d'ameublement d'espaces

# API Ameublement

Le service d'ameublement vous permet de meubler virtuellement des espaces vides ou de remplacer le mobilier existant dans vos images.

## Générer un ameublement

<ParamField path="POST /api/furnish/v4/generate" />

### Paramètres de la requête

<ParamField body="user_id" type="string" required>
  L'identifiant unique de l'utilisateur (UUID)
</ParamField>

<ParamField body="image_url" type="string" required>
  URL de l'image d'espace à meubler
</ParamField>

<ParamField body="theme" type="string" required>
  Le thème d'ameublement souhaité. Valeurs acceptées: MODERN, SCANDINAVIAN,
  COASTAL, FARMHOUSE, LUXURY, AMERICAN.
</ParamField>

<ParamField body="room_type" type="string" required>
  Le type de pièce à meubler. Valeurs acceptées: LIVING\_ROOM, BEDROOM, DINING,
  HOME\_OFFICE, OFFICE, KIDS, OUTDOOR.
</ParamField>

<ParamField body="generation_mode" type="string">
  Le mode de génération (optionnel). Valeurs acceptées: "creative" (par défaut),
  "realist". - "creative": Ameublement créatif "realist": Ameublement réaliste
</ParamField>

<ParamField body="prompt" type="string">
  Prompt personnalisé pour l'ameublement (optionnel).
</ParamField>

<ParamField body="webhook" type="string">
  URL du webhook pour les notifications (optionnel)
</ParamField>

### Valeurs disponibles pour room\_type

Les valeurs suivantes sont acceptées pour le paramètre `room_type` :

* `LIVING_ROOM` - Salon
* `BEDROOM` - Chambre
* `DINING` - Salle à manger
* `HOME_OFFICE` - Bureau
* `OFFICE` - Bureau d'entreprise
* `KIDS` - Chambre d'enfant
* `OUTDOOR` - Espace extérieur

### Valeurs disponibles pour theme

Les valeurs suivantes sont acceptées pour le paramètre `theme` :

* `MODERN` - Style moderne
* `SCANDINAVIAN` - Style scandinave
* `COASTAL` - Style bord de mer
* `FARMHOUSE` - Style champêtre
* `LUXURY` - Style luxueux
* `AMERICAN` - Style américain

### Réponse

<ResponseField name="generation_id" type="string">
  L'identifiant unique de la génération (UUID)
</ResponseField>

<ResponseField name="remaining_photos" type="number">
  Le nombre de crédits photos restants pour l'utilisateur
</ResponseField>

<ResponseField name="project_id" type="string">
  L'identifiant unique du projet (UUID)
</ResponseField>

### Exemple de requête

```bash theme={null}
curl -X POST https://api.iacrea.ai/api/furnish/v4/generate \
  -H "Authorization: Bearer VOTRE_CLE_API" \
  -H "Content-Type: application/json" \
  -d '{
    "user_id": "123e4567-e89b-12d3-a456-426614174000",
    "image_url": "https://exemple.com/espace-vide.jpg",
    "theme": "MODERN",
    "room_type": "LIVING_ROOM",
  }'
```

### Exemple de réponse

```json theme={null}
{
  "generation_id": "123e4567-e89b-12d3-a456-426614174001",
  "remaining_photos": 7,
  "project_id": "123e4567-e89b-12d3-a456-426614174002"
}
```

## Générer une variation

<ParamField path="POST /api/furnish/v4/generate-variation" />

Cette API vous permet de générer des variations à partir d'un résultat précédent.

### Paramètres de la requête

<ParamField body="user_id" type="string" required>
  L'identifiant unique de l'utilisateur (UUID)
</ParamField>

<ParamField body="generation_id" type="string" required>
  L'identifiant de la génération précédente dont vous souhaitez créer une
  variation
</ParamField>

<ParamField body="theme" type="string" required>
  Le thème d'ameublement souhaité. Valeurs acceptées: MODERN, SCANDINAVIAN,
  COASTAL, FARMHOUSE, LUXURY, AMERICAN.
</ParamField>

<ParamField body="room_type" type="string" required>
  Le type de pièce à meubler. Valeurs acceptées: LIVING\_ROOM, BEDROOM, DINING,
  HOME\_OFFICE, OFFICE, KIDS, OUTDOOR.
</ParamField>

<ParamField body="generation_mode" type="string">
  Le mode de génération (optionnel). Valeurs acceptées: "creative" (par défaut),
  "realist". - "creative": Ameublement créatif "realist": Ameublement réaliste
</ParamField>

<ParamField body="prompt" type="string">
  Prompt personnalisé pour l'ameublement (optionnel).
</ParamField>

<ParamField body="webhook" type="string">
  URL du webhook pour les notifications (optionnel)
</ParamField>

### Réponse

<ResponseField name="generation_id" type="string">
  L'identifiant unique de la nouvelle génération (UUID)
</ResponseField>

### Exemple de requête

```bash theme={null}
curl -X POST https://api.iacrea.ai/api/furnish/v4/generate-variation \
  -H "Authorization: Bearer VOTRE_CLE_API" \
  -H "Content-Type: application/json" \
  -d '{
    "user_id": "123e4567-e89b-12d3-a456-426614174000",
    "generation_id": "123e4567-e89b-12d3-a456-426614174001",
    "theme": "SCANDINAVIAN",
    "room_type": "LIVING_ROOM"
  }'
```

### Exemple de réponse

```json theme={null}
{
  "generation_id": "123e4567-e89b-12d3-a456-426614174003"
}
```

## Récupérer un ameublement

<ParamField path="POST /api/furnish/v4/get" />

### Paramètres de la requête

<ParamField body="user_id" type="string" required>
  L'identifiant unique de l'utilisateur (UUID)
</ParamField>

<ParamField body="generation_id" type="string" required>
  L'identifiant unique de la génération (UUID) retourné par l'endpoint
  `/api/furnish/v4/generate` ou `/api/furnish/v4/generate-variation`
</ParamField>

### Réponse

L'endpoint retourne l'état de la génération et les URLs des images résultantes lorsque le traitement est terminé.

<ResponseField name="status" type="string">
  État de la génération: "starting", "in\_progress", "succeeded", "failed"
</ResponseField>

<ResponseField name="urls" type="array">
  URLs des images meublées (uniquement présent si status="succeeded")
</ResponseField>

<ResponseField name="variationNumber" type="number">
  Numéro de la variation (optionnel)
</ResponseField>

### Exemple de requête

```bash theme={null}
curl -X POST https://api.iacrea.ai/api/furnish/v4/get \
  -H "Authorization: Bearer VOTRE_CLE_API" \
  -H "Content-Type: application/json" \
  -d '{
    "user_id": "123e4567-e89b-12d3-a456-426614174000",
    "generation_id": "123e4567-e89b-12d3-a456-426614174001"
  }'
```

### Exemple de réponse

```json theme={null}
{
  "status": "succeeded",
  "urls": [
    "https://storage.iacrea.ai/output/123e4567-e89b-12d3-a456-426614174001.jpg"
  ],
  "variationNumber": 1
}
```
