Room Creation API

The Room Creation service allows you to generate realistic interior visualizations from a designated area in an image.

Generate a room creation

POST /api/create_room/generate

This endpoint initiates a new generation to create a room in an area specified by a mask. This operation also creates a new project.

Request Parameters

user_id
string
required

The unique user identifier (UUID) that you can retrieve from your Developer Space

image_url
string
required

URL of the base image for creation (format: jpg, png)

mask_url
string
required

URL of the mask indicating the area where the room should be generated

room_type
string
required

Type of room to generate. Possible values: “BATHROOM”, “KITCHEN”, “SHOWEROOM”

theme
string
required

Design theme for the room. Possible values: “MODERN”, “INDUSTRIAL”, “SCANDINAVIAN”, “LUXURIOUS”

width
number
required

Width of the image in pixels

height
number
required

Height of the image in pixels

webhook
string

The URL we call once the generation is complete

Response

generation_id
string

The unique generation identifier (UUID) to use with the retrieval API

remaining_photos
number

The number of photos remaining after this generation

project_id
string

The unique project identifier (UUID)

Request Example

curl --request POST \
--url 'https://iacrea.com/api/create_room/generate' \
--header 'x-api-key: YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
  "user_id": "uuid",
  "image_url": "https://example.com/image.jpg",
  "mask_url": "https://example.com/mask.png",
  "room_type": "KITCHEN",
  "theme": "MODERN",
  "width": 1024,
  "height": 768
}'

Response Example

{
  "generation_id": "uuid",
  "remaining_photos": 100,
  "project_id": "uuid"
}

Generate a room variation

POST /api/create_room/generate-variation

This endpoint allows you to generate a variation of a previously created room.

Request Parameters

user_id
string
required

The unique user identifier (UUID)

generation_id
string
required

The unique identifier of the previous generation

original_url
string
required

URL of the original image used for the previous generation

mask_url
string

Optional URL of a new mask. If not provided, the mask from the previous generation will be used

room_type
string
required

Room type for this variation. Possible values: “BATHROOM”, “KITCHEN”, “SHOWEROOM”

theme
string
required

Design theme for this variation. Possible values: “MODERN”, “INDUSTRIAL”, “SCANDINAVIAN”, “LUXURIOUS”

webhook
string

The URL we call once the generation is complete

Response

generation_id
string

The unique identifier of the new generation

Request Example

curl --request POST \
--url 'https://iacrea.com/api/create_room/generate-variation' \
--header 'x-api-key: YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
  "user_id": "uuid",
  "generation_id": "uuid",
  "original_url": "https://example.com/image.jpg",
  "mask_url": "https://example.com/new-mask.png",
  "room_type": "BATHROOM",
  "theme": "SCANDINAVIAN"
}'

Response Example

{
  "generation_id": "uuid"
}

Retrieve a room creation

POST /api/create_room/get

This endpoint allows you to obtain the result of a previously performed generation.

Request Parameters

user_id
string
required

The unique user identifier (UUID)

generation_id
string
required

The unique identifier of the generation to retrieve

Response

status
string

The generation status: “STARTING”, “PROCESSING”, “SUCCEEDED”, “FAILED”

urls
array

An array containing the URLs of generated images (present only if status=“SUCCEEDED”)

variationNumber
number

The number of variations already performed on this project

Request Example

curl --request POST \
--url 'https://iacrea.com/api/create_room/get' \
--header 'x-api-key: YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
  "user_id": "uuid",
  "generation_id": "uuid"
}'

Response Example

{
  "status": "SUCCEEDED",
  "urls": ["https://generated-image-url"],
  "variationNumber": 2
}

Important note: In case of “FAILED” status, your photos are automatically refunded.