> ## 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.

# Renovation API

> API documentation for the space renovation service

# Renovation API

The renovation service allows you to visualize how a space might appear after renovation work, without performing the actual renovations.

## Generate a renovation

<ParamField path="POST /api/renovate/generate" />

### Request Parameters

<ParamField body="user_id" type="string" required>
  The unique user identifier (UUID)
</ParamField>

<ParamField body="image_url" type="string" required>
  URL of the image of the space to be renovated
</ParamField>

<ParamField body="theme" type="string" required>
  The desired decoration theme for the renovation. Accepted values: MODERN, SCANDINAVIAN, INDUSTRIAL, LUXURIOUS, FARMHOUSE\_CHIC, KIDS\_ROOM (for BEDROOM only), MODERN\_POP (for LIVING\_ROOM and VERANDA only).
</ParamField>

<ParamField body="room_type" type="string" required>
  The room type. Accepted values: LIVING\_ROOM, BEDROOM, BATHROOM, SHOWEROOM, HOME\_OFFICE, EMPTY, VERANDA, KITCHEN, DINING\_ROOM.
</ParamField>

<ParamField body="photo_360" type="boolean">
  If the image is a 360° panoramic photo
</ParamField>

<ParamField body="keep_ceiling" type="boolean">
  Preserve the original ceiling
</ParamField>

<ParamField body="keep_floor" type="boolean">
  Preserve the original floor
</ParamField>

<ParamField body="keep_wall" type="boolean">
  Preserve the original walls
</ParamField>

<ParamField body="keep_door" type="boolean">
  Preserve the original doors
</ParamField>

<ParamField body="keep_window" type="boolean">
  Preserve the original windows (enabled by default)
</ParamField>

<ParamField body="furnish" type="boolean">
  Furnish the renovated room. Works only with: BEDROOM, DINING\_ROOM, LIVING\_ROOM, HOME\_OFFICE.
</ParamField>

<ParamField body="webhook" type="string">
  Webhook URL for notifications (optional)
</ParamField>

### Available values for room\_type

The following values are accepted for the `room_type` parameter:

* `LIVING_ROOM` - Living room
* `BEDROOM` - Bedroom
* `BATHROOM` - Bathroom
* `SHOWEROOM` - Shower room
* `HOME_OFFICE` - Home office
* `EMPTY` - Empty room
* `VERANDA` - Veranda
* `KITCHEN` - Kitchen
* `DINING_ROOM` - Dining room

### Available values for theme

The following values are accepted for the `theme` parameter (note that not all themes are available for all room types):

* `MODERN` - Modern style
* `SCANDINAVIAN` - Scandinavian style
* `INDUSTRIAL` - Industrial style
* `LUXURIOUS` - Luxurious style
* `FARMHOUSE_CHIC` - Farmhouse/rustic style
* `KIDS_ROOM` - Kids room (for BEDROOM type only)
* `MODERN_POP` - Colorful modern style (only for LIVING\_ROOM and VERANDA)

### Rooms compatible with the furnish option

The `furnish` option works only with the following room types:

* `BEDROOM`
* `DINING_ROOM`
* `LIVING_ROOM`
* `HOME_OFFICE`

### Response

<ResponseField name="generation_id" type="string">
  The unique generation identifier (UUID)
</ResponseField>

<ResponseField name="remaining_photos" type="number">
  The number of photo credits remaining for the user
</ResponseField>

<ResponseField name="project_id" type="string">
  The unique project identifier (UUID)
</ResponseField>

### Request Example

```bash theme={null}
curl -X POST https://api.iacrea.ai/api/renovate/generate \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "user_id": "123e4567-e89b-12d3-a456-426614174000",
    "image_url": "https://example.com/kitchen-before.jpg",
    "theme": "MODERN",
    "room_type": "KITCHEN",
    "photo_360": false,
    "keep_ceiling": false,
    "keep_floor": false,
    "keep_wall": false,
    "keep_door": true,
    "keep_window": true,
    "furnish": true
  }'
```

### Response Example

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

## Generate a variation

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

This API allows you to generate variations from a previous result.

### Request Parameters

<ParamField body="user_id" type="string" required>
  The unique user identifier (UUID)
</ParamField>

<ParamField body="generation_id" type="string" required>
  The identifier of the previous generation you want to create a variation of
</ParamField>

<ParamField body="theme" type="string" required>
  The new desired decoration theme. Accepted values: MODERN, SCANDINAVIAN, INDUSTRIAL, LUXURIOUS, FARMHOUSE\_CHIC, KIDS\_ROOM (for BEDROOM only), MODERN\_POP (for LIVING\_ROOM and VERANDA only).
</ParamField>

<ParamField body="room_type" type="string" required>
  The room type. Accepted values: LIVING\_ROOM, BEDROOM, BATHROOM, SHOWEROOM, HOME\_OFFICE, EMPTY, VERANDA, KITCHEN, DINING\_ROOM.
</ParamField>

<ParamField body="photo_360" type="boolean">
  If the image is a 360° panoramic photo
</ParamField>

<ParamField body="keep_ceiling" type="boolean">
  Preserve the original ceiling
</ParamField>

<ParamField body="keep_floor" type="boolean">
  Preserve the original floor
</ParamField>

<ParamField body="keep_wall" type="boolean">
  Preserve the original walls
</ParamField>

<ParamField body="keep_door" type="boolean">
  Preserve the original doors
</ParamField>

<ParamField body="keep_window" type="boolean">
  Preserve the original windows (enabled by default)
</ParamField>

<ParamField body="furnish" type="boolean">
  Furnish the renovated room. Works only with: BEDROOM, DINING\_ROOM, LIVING\_ROOM, HOME\_OFFICE.
</ParamField>

<ParamField body="webhook" type="string">
  Webhook URL for notifications (optional)
</ParamField>

### Response
