Decor8AI Virtual Staging & Interior Design API (1.0)

Download OpenAPI specification:Download

Decor8 AI is a virtual staging API that uses AI to transform empty rooms into beautifully furnished spaces. Designed for real estate professionals, property managers, and app developers, this interior design AI generates photorealistic room designs in seconds. Whether you need AI virtual staging for property listings, AI interior design for client presentations, or AI room design for renovation planning, our API delivers professional results. Create stunning living rooms, bedrooms, kitchens, and more with AI home design technology that helps properties sell faster.

Please reach out to Decor8 AI Team with questions or suggestions. Additional license information can be found here.


Try It Now - API Playground

Don't just read the docs - try the APIs interactively! Visit the Decor8 AI API Playground to test all APIs directly in your browser with your API key. No coding required to get started.


Getting Started

  • Authentication: Each API request requires two headers:

    • Content-Type: application/json
    • Authorization: Bearer <API_KEY>
  • API Key: Get your <API_KEY> from your account at prod-app.decor8.ai.

    Sign in to Decor8 AI and Click on APIs from the Left Side-menu

    Click Generate API Key

    Test Your API Key Once you have the key, you can test it in two ways:

    Option 1: Use the API Playground (Recommended) Visit api-docs.decor8.ai/playground, enter your API key, and test any endpoint interactively. Option 2: Use curl curl -X GET "https://api.decor8.ai/speak_friend_and_enter" -H "Authorization: Bearer <API_KEY>"

Test Authentication

This endpoint is used to test whether the provided API key in the Authorization header is valid.

Authorizations:
apiKeyAuth

Responses

Response samples

Content type
application/json
{
  • "error": "",
  • "message": "The doors of Durin open for you. Welcome, friend of Moria.",
  • "Status": 1
}

Virtual Staging & Interior Design

Generate stunning room designs from any interior photo using virtual staging AI technology. Upload an empty room or a furnished space, and our AI will create photorealistic designs based on your chosen room type and style. Ideal for real estate agents, interior designers, and homeowners exploring AI room design options.

Authorizations:
apiKeyAuth
Request Body schema: application/json
required
input_image_url
required
string

URL of the input image. Make sure the image is accessible over the internet. Supported formats are - PNG, JPEG, HEIF/HEIC.

room_type
required
string (RoomType)
Enum: "livingroom" "kitchen" "diningroom" "bedroom" "bathroom" "kidsroom" "familyroom" "readingnook" "sunroom" "walkincloset" "mudroom" "toyroom" "office" "foyer" "powderroom" "laundryroom" "gym" "basement" "garage" "balcony" "cafe" "homebar" "study_room" "front_porch" "back_porch" "back_patio" "openplan" "boardroom" "meetingroom" "openworkspace" "privateoffice"

Choose from the supported room types.

design_style
required
string (DesignStyle)
Enum: "minimalist" "scandinavian" "industrial" "boho" "traditional" "artdeco" "midcenturymodern" "coastal" "tropical" "eclectic" "contemporary" "frenchcountry" "rustic" "shabbychic" "vintage" "country" "modern" "asian_zen" "hollywoodregency" "bauhaus" "mediterranean" "farmhouse" "victorian" "gothic" "moroccan" "southwestern" "transitional" "maximalist" "arabic" "japandi" "retrofuturism" "artnouveau" "urbanmodern" "wabi_sabi" "grandmillennial" "coastalgrandmother" "newtraditional" "cottagecore" "luxemodern" "high_tech" "organicmodern" "tuscan" "cabin" "desertmodern" "global" "industrialchic" "modernfarmhouse" "europeanclassic" "neotraditional" "warmminimalist"

Choose from the supported design styles.

num_images
required
integer (NumImages) [ 1 .. 4 ]
scale_factor
integer (ScaleFactor) [ 1 .. 8 ]

Scale factor determines the image resolution. By default, the API uses scale_factor = 2 (producing images up to 1536 pixels) with no additional charge. See the table below for more details:

Scale Factor Image Dimensions (max) Design Credits Used
1 Max 768 pixels 0 credits
2 Max 1536 pixels 0 credits
3 Max 2304 pixels 1 credit
4 Max 3072 pixels 1 credit
5 Max 3840 pixels 2 credits
6 Max 4608 pixels 2 credits
7 Max 5376 pixels 3 credits
8 Max 6144 pixels 3 credits

Notes:

  1. Credits are calculated based on the image resolution requested.
  2. Resolutions above 2x (scale factor > 2) incur additional credits when using the generate_designs_for_room or upscale_image API.
  3. The "Max pixels" refers to the longest side of the image, while the shorter side may have equal or smaller number of pixels depending upon image's aspect ratio.
  4. Credits mentioned are cumulative for each request depending on the chosen resolution.
  5. If num_images > 1, then the total credits used will be num_images * credits per upscale.
  6. Pricing: Pay-As-You-Go pricing uses a credit-based system where 1 credit = $0.20 per generated image (up to 1536 pixels on either dimension). By default, the API uses scale_factor = 2, producing images with maximum 1536 pixels. There is no additional charge for scale_factor ≤ 2. When scale_factor > 2, additional credits are required as shown in the table above.
color_scheme
string (ColorScheme)
Enum: "COLOR_SCHEME_0" "COLOR_SCHEME_1" "COLOR_SCHEME_2" "COLOR_SCHEME_3" "COLOR_SCHEME_4" "COLOR_SCHEME_5" "COLOR_SCHEME_6" "COLOR_SCHEME_7" "COLOR_SCHEME_8" "COLOR_SCHEME_9" "COLOR_SCHEME_10" "COLOR_SCHEME_11" "COLOR_SCHEME_12" "COLOR_SCHEME_13" "COLOR_SCHEME_14" "COLOR_SCHEME_15" "COLOR_SCHEME_16" "COLOR_SCHEME_17" "COLOR_SCHEME_18" "COLOR_SCHEME_19" "COLOR_SCHEME_20"

Preferred color scheme, optional. Default is COLOR_SCHEME_0. Here are the possible values:

Value Color Scheme
COLOR_SCHEME_0 Default
COLOR_SCHEME_1 Moss Green, Tan, White
COLOR_SCHEME_2 Gray, Sand, Blue
COLOR_SCHEME_3 Hunter Green, Red
COLOR_SCHEME_4 White, Pops of Color
COLOR_SCHEME_5 Blue, Neon
COLOR_SCHEME_6 Light Blue, Emerald
COLOR_SCHEME_7 Blue, Grass Green
COLOR_SCHEME_8 Blue, Beige
COLOR_SCHEME_9 Gray, Brown
COLOR_SCHEME_10 Black, Red
COLOR_SCHEME_11 Gray-Green, White, Black
COLOR_SCHEME_12 Blue, Gray, Taupe
COLOR_SCHEME_13 Black, Navy
COLOR_SCHEME_14 Emerald, Tan
COLOR_SCHEME_15 Forest Green, Light Gray
COLOR_SCHEME_16 Yellow, Gray
COLOR_SCHEME_17 Pink, Green
COLOR_SCHEME_18 Blush Pink, Black
COLOR_SCHEME_19 Black, White
COLOR_SCHEME_20 Blue, White
speciality_decor
string (SpecialityDecor)
Enum: "SPECIALITY_DECOR_0" "SPECIALITY_DECOR_1" "SPECIALITY_DECOR_2" "SPECIALITY_DECOR_3" "SPECIALITY_DECOR_4" "SPECIALITY_DECOR_5" "SPECIALITY_DECOR_6" "SPECIALITY_DECOR_7"

Details about any specialty decor elements, optional. Default is SPECIALITY_DECOR_0. Here are the possible values:

Value Speciality Decor
SPECIALITY_DECOR_0 None
SPECIALITY_DECOR_1 Halloween Decor with Spooky Ambiance, Eerie Elements, Dark Colors, and Festive Accents
SPECIALITY_DECOR_2 Christmas Decor with Christmas Tree, Ornaments, and Lights
SPECIALITY_DECOR_3 Thanksgiving Decor, Fall Season Decor
SPECIALITY_DECOR_4 Fall Season Decor
SPECIALITY_DECOR_5 Spring Season Decor
SPECIALITY_DECOR_6 Summer Season Decor
SPECIALITY_DECOR_7 Winter Season Decor
mask_info
string

Additional masking information, optional. This string is returned by this end-point. You may store it and use it for future requests. This usually speeds up the process of generating images.

prompt
string

(Optional) Custom prompt for image generation. If provided, room_type, design_style, color_scheme, and speciality_decor values are ignored as the prompt field is used directly for image generation. If prompt is not provided, then room_type and design_style must be provided and will be used to generate a system-selected prompt. Note: Using custom prompts provides more control over image generation but may require experimentation to achieve desired results.

seed
integer >= 0

(Optional) Seed for reproducible results. Using the same seed with identical parameters will generate similar images. Default is random. Note: Useful for consistency across generations but results may still vary slightly.

guidance_scale
number <float> [ 1 .. 20 ]
Default: 15

(Optional) Controls how closely the model follows the prompt. Higher values result in images that more strictly follow the prompt but may be less natural. Lower values allow more creative freedom but may deviate from the prompt. Default is 15. Note: Finding the right balance requires experimentation.

num_inference_steps
integer [ 1 .. 75 ]
Default: 50

(Optional) Number of denoising steps. Higher values can produce better quality images but take longer to generate. Lower values are faster but may reduce quality. Default is 50. Note: Balance between quality and generation time requires experimentation.

design_style_image_url
string

(Optional) URL of the image file to use as a style reference for the generated design. Additional 1 credit / per image is used for this request. Refer to https://www.decor8.ai/api-pricing for credit pricing. If you generate more than 1 image, then the additional credits used will be equal to the value of num_images parameter.

design_style_image_strength
number <float> [ 0 .. 1 ]
Default: 0.82

(Optional) Controls how strongly the design style image influences the final output. Higher values (closer to 1.0) give more weight to the style image than other inputs like room_type, design_style, or custom prompt.

design_creativity
number <float> [ 0 .. 1 ]
Default: 0.39

(Optional) Controls the level of creative improvements in the final image. Higher values result in more creative alterations to the overall look and feel.

webhooks_data
string

(Optional) Webhook configuration for asynchronous notifications as a stringified JSON string. When provided, the API will send a POST request to the specified URL when the image generation is complete.

The JSON string must have this structure:

{
  "url": "https://your-callback-url.com/webhook",  // Required
  "token": "your-auth-token",                      // Optional
  "context": "Custom context for this request"     // Optional
}

Example in JavaScript:

webhooks_data: JSON.stringify({
  url: "https://your-callback-url.com/webhook",
  token: "your-auth-token",
  context: "Custom context"
})

Example in Python:

webhooks_data = json.dumps({
  "url": "https://your-callback-url.com/webhook",
  "token": "your-auth-token",
  "context": "Custom context"
})
decor_items
string

(Optional) A JSON string containing an array of decor items (furniture, accessories, etc.) to be placed in the room. Each decor item entry must specify an image URL and a descriptive name.

Important Note: When decor_items is provided, the num_images parameter is ignored and the API always returns only 1 image. This behavior may change in future versions.

Image Requirements:

  • Each url must be either an HTTPS URL or a Data URL (base64 encoded) pointing to an image
  • The image should clearly identify the item in its center
  • Preferred: Image containing only that item with no other items in the background
  • Ideal: Object has no busy background and one can clearly see the object
  • Supported image formats: PNG, JPEG, HEIF/HEIC

Name Requirements:

  • The name parameter should clearly identify the object (e.g., "sofa", "blue sofa", "modern coffee table")
  • You can add descriptive adjectives which help drive better outputs (e.g., "large brown leather sectional sofa", "round glass coffee table", "vintage wooden side table")
  • More descriptive names with relevant adjectives typically produce better results

Data Structure: The JSON string must have this structure:

[
  {
    "url": "https://example.com/images/sofa.jpg",  // Required: HTTPS URL or Data URL
    "name": "blue sofa"                             // Required: Clear descriptive name
  },
  {
    "url": "data:image/jpeg;base64,/9j/4AAQ...",   // Data URL example
    "name": "round coffee table"
  }
]

Example in JavaScript:

decor_items: JSON.stringify([
  {
    url: "https://example.com/images/sofa.jpg",
    name: "blue sectional sofa"
  },
  {
    url: "https://example.com/images/table.jpg",
    name: "round glass coffee table"
  },
  {
    url: "data:image/png;base64,iVBORw0KG...",
    name: "vintage wooden side table"
  }
])

Example in Python:

decor_items = json.dumps([
  {
    "url": "https://example.com/images/sofa.jpg",
    "name": "blue sectional sofa"
  },
  {
    "url": "https://example.com/images/table.jpg",
    "name": "round glass coffee table"
  },
  {
    "url": "data:image/png;base64,iVBORw0KG...",
    "name": "vintage wooden side table"
  }
])

Best Practices:

  1. Use high-quality images with the item clearly visible and centered
  2. Avoid images with cluttered backgrounds or multiple items
  3. Use descriptive names with relevant adjectives (color, material, style, size)
  4. For local files, convert them to Data URLs before sending the request
  5. Ensure image URLs are publicly accessible if using HTTPS URLs

Responses

Request samples

Content type
application/json
{
  • "room_type": "livingroom",
  • "design_style": "minimalist",
  • "num_images": 1,
  • "scale_factor": 1,
  • "color_scheme": "COLOR_SCHEME_0",
  • "speciality_decor": "SPECIALITY_DECOR_0",
  • "mask_info": "mask_info_string",
  • "prompt": "string",
  • "seed": 0,
  • "guidance_scale": 15,
  • "num_inference_steps": 50,
  • "design_style_image_url": "string",
  • "design_style_image_strength": 0.82,
  • "design_creativity": 0.39,
  • "webhooks_data": "{\"url\":\"https://your-callback-url.com/webhook\",\"token\":\"your-auth-token\",\"context\":\"Custom context\"}",
  • "decor_items": "[{\"url\":\"https://example.com/images/sofa.jpg\",\"name\":\"blue sectional sofa\"},{\"url\":\"https://example.com/images/table.jpg\",\"name\":\"round coffee table\"}]"
}

Response samples

Content type
application/json
{}

Generate Inspirational Designs

Generate unique room design concepts without needing a photo. This AI interior design feature is perfect for creating mood boards, exploring design possibilities, or showcasing interior styles to clients. The interior design AI creates original room visualizations based on your specified room type and design style.

Authorizations:
apiKeyAuth
Request Body schema: application/json
required
room_type
required
string (RoomType)
Enum: "livingroom" "kitchen" "diningroom" "bedroom" "bathroom" "kidsroom" "familyroom" "readingnook" "sunroom" "walkincloset" "mudroom" "toyroom" "office" "foyer" "powderroom" "laundryroom" "gym" "basement" "garage" "balcony" "cafe" "homebar" "study_room" "front_porch" "back_porch" "back_patio" "openplan" "boardroom" "meetingroom" "openworkspace" "privateoffice"

Choose from the supported room types.

design_style
required
string (DesignStyle)
Enum: "minimalist" "scandinavian" "industrial" "boho" "traditional" "artdeco" "midcenturymodern" "coastal" "tropical" "eclectic" "contemporary" "frenchcountry" "rustic" "shabbychic" "vintage" "country" "modern" "asian_zen" "hollywoodregency" "bauhaus" "mediterranean" "farmhouse" "victorian" "gothic" "moroccan" "southwestern" "transitional" "maximalist" "arabic" "japandi" "retrofuturism" "artnouveau" "urbanmodern" "wabi_sabi" "grandmillennial" "coastalgrandmother" "newtraditional" "cottagecore" "luxemodern" "high_tech" "organicmodern" "tuscan" "cabin" "desertmodern" "global" "industrialchic" "modernfarmhouse" "europeanclassic" "neotraditional" "warmminimalist"

Choose from the supported design styles.

num_images
required
integer (NumImages) [ 1 .. 4 ]
color_scheme
string (ColorScheme)
Enum: "COLOR_SCHEME_0" "COLOR_SCHEME_1" "COLOR_SCHEME_2" "COLOR_SCHEME_3" "COLOR_SCHEME_4" "COLOR_SCHEME_5" "COLOR_SCHEME_6" "COLOR_SCHEME_7" "COLOR_SCHEME_8" "COLOR_SCHEME_9" "COLOR_SCHEME_10" "COLOR_SCHEME_11" "COLOR_SCHEME_12" "COLOR_SCHEME_13" "COLOR_SCHEME_14" "COLOR_SCHEME_15" "COLOR_SCHEME_16" "COLOR_SCHEME_17" "COLOR_SCHEME_18" "COLOR_SCHEME_19" "COLOR_SCHEME_20"

Preferred color scheme, optional. Default is COLOR_SCHEME_0. Here are the possible values:

Value Color Scheme
COLOR_SCHEME_0 Default
COLOR_SCHEME_1 Moss Green, Tan, White
COLOR_SCHEME_2 Gray, Sand, Blue
COLOR_SCHEME_3 Hunter Green, Red
COLOR_SCHEME_4 White, Pops of Color
COLOR_SCHEME_5 Blue, Neon
COLOR_SCHEME_6 Light Blue, Emerald
COLOR_SCHEME_7 Blue, Grass Green
COLOR_SCHEME_8 Blue, Beige
COLOR_SCHEME_9 Gray, Brown
COLOR_SCHEME_10 Black, Red
COLOR_SCHEME_11 Gray-Green, White, Black
COLOR_SCHEME_12 Blue, Gray, Taupe
COLOR_SCHEME_13 Black, Navy
COLOR_SCHEME_14 Emerald, Tan
COLOR_SCHEME_15 Forest Green, Light Gray
COLOR_SCHEME_16 Yellow, Gray
COLOR_SCHEME_17 Pink, Green
COLOR_SCHEME_18 Blush Pink, Black
COLOR_SCHEME_19 Black, White
COLOR_SCHEME_20 Blue, White
speciality_decor
string (SpecialityDecor)
Enum: "SPECIALITY_DECOR_0" "SPECIALITY_DECOR_1" "SPECIALITY_DECOR_2" "SPECIALITY_DECOR_3" "SPECIALITY_DECOR_4" "SPECIALITY_DECOR_5" "SPECIALITY_DECOR_6" "SPECIALITY_DECOR_7"

Details about any specialty decor elements, optional. Default is SPECIALITY_DECOR_0. Here are the possible values:

Value Speciality Decor
SPECIALITY_DECOR_0 None
SPECIALITY_DECOR_1 Halloween Decor with Spooky Ambiance, Eerie Elements, Dark Colors, and Festive Accents
SPECIALITY_DECOR_2 Christmas Decor with Christmas Tree, Ornaments, and Lights
SPECIALITY_DECOR_3 Thanksgiving Decor, Fall Season Decor
SPECIALITY_DECOR_4 Fall Season Decor
SPECIALITY_DECOR_5 Spring Season Decor
SPECIALITY_DECOR_6 Summer Season Decor
SPECIALITY_DECOR_7 Winter Season Decor
prompt
string

(Optional) Custom prompt for image generation. If provided, room_type, design_style, color_scheme, and speciality_decor values are ignored as the prompt field is used directly for image generation. If prompt is not provided, then room_type and design_style must be provided and will be used to generate a system-selected prompt. Note: Using custom prompts provides more control over image generation but may require experimentation to achieve desired results.

seed
integer >= 0

(Optional) Seed for reproducible results. Using the same seed with identical parameters will generate similar images. Default is random. Note: Useful for consistency across generations but results may still vary slightly.

guidance_scale
number <float> [ 1 .. 20 ]
Default: 15

(Optional) Controls how closely the model follows the prompt. Higher values result in images that more strictly follow the prompt but may be less natural. Lower values allow more creative freedom but may deviate from the prompt. Default is 15. Note: Finding the right balance requires experimentation.

num_inference_steps
integer [ 1 .. 75 ]
Default: 35

(Optional) Number of denoising steps. Higher values can produce better quality images but take longer to generate. Lower values are faster but may reduce quality. Default is 35. Note: Balance between quality and generation time requires experimentation.

Responses

Request samples

Content type
application/json
{
  • "room_type": "livingroom",
  • "design_style": "minimalist",
  • "num_images": 1,
  • "color_scheme": "COLOR_SCHEME_0",
  • "speciality_decor": "SPECIALITY_DECOR_0",
  • "prompt": "string",
  • "seed": 0,
  • "guidance_scale": 15,
  • "num_inference_steps": 35
}

Response samples

Content type
application/json
{}

Prime Room Walls

Apply a clean, neutral finish to room walls by removing existing colors, patterns, or textures. Creates a blank canvas for virtual staging or helps visualize rooms with fresh, painted walls.

Authorizations:
apiKeyAuth
Request Body schema: application/json
required
input_image_url
required
string

URL of the room image where the walls need to be primed. Ensure the image is accessible over the internet. Supported formats are PNG, JPEG, HEIF/HEIC.

Responses

Request samples

Content type
application/json

Response samples

Content type
application/json
{}

Replace Sky in Property Photos

Enhance real estate exterior photos by replacing overcast or dull skies with beautiful day, dusk, or night scenes. Perfect for improving curb appeal in property listings and marketing materials.

Authorizations:
apiKeyAuth
Request Body schema: application/json
required
input_image_url
required
string

The URL of the house image where the sky should be replaced. Must be a publicly accessible URL.

sky_type
required
string
Enum: "day" "dusk" "night"

The type of sky to replace in the image. Valid options are 'day', 'dusk', or 'night'.

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{}

Upscale Image Resolution

Increase image resolution up to 8x for print-quality output. Upload any room design or property photo and get a high-resolution version suitable for large format printing, marketing brochures, or detailed presentations.

Authorizations:
apiKeyAuth
Request Body schema: multipart/form-data
required
input_image
required
string <binary>

The image file to upscale. Max file size is 4MB.

scale_factor
required
integer [ 1 .. 8 ]

Scale factor determines the image resolution. See the table below for more details:

Scale Factor Image Dimension (Max) Design Credits Used
1 Max 768 pixels 0 credits
2 Max 1536 pixels 0 credits
3 Max 2304 pixels 1 credit
4 Max 3072 pixels 1 credit
5 Max 3840 pixels 2 credits
6 Max 4608 pixels 2 credits
7 Max 5376 pixels 3 credits
8 Max 6144 pixels 3 credits

Notes:

  1. Credits are calculated based on the image resolution requested.
  2. Resolutions above 2x (scale factor > 2) incur additional credits when using the generate_designs_for_room or upscale_image API.
  3. The "Max pixels" refers to the longest side of the image, while the shorter side may have equal or smaller number of pixels depending upon image's aspect ratio.
  4. Credits mentioned are cumulative for each request depending on the chosen resolution.
  5. If num_images > 1, then the total credits used will be num_images * credits per upscale.
  6. Pricing: Pay-As-You-Go pricing uses a credit-based system where 1 credit = $0.20 per generated image (up to 1536 pixels on either dimension). By default, the API uses scale_factor = 2, producing images with maximum 1536 pixels. There is no additional charge for scale_factor ≤ 2. When scale_factor > 2, additional credits are required as shown in the table above.

Responses

Request samples

"""
Upscale Image - Increase image resolution.

Uses multipart/form-data to upload the image file.
Returns base64-encoded upscaled image.

Scale factors: 1-8 (higher = larger output, more credits)

Requirements: pip install requests
"""
import os
import base64
import requests
from io import BytesIO

API_KEY = os.getenv("DECOR8AI_API_KEY")
SERVER_URL = "https://api.decor8.ai/upscale_image"

# Download a sample image to upscale
sample_image_url = "https://prod-files.decor8.ai/test-images/sdk_test_image.png"
image_response = requests.get(sample_image_url)
image_data = BytesIO(image_response.content)

# Prepare multipart form data
files = {
    "input_image": ("image.jpg", image_data, "image/jpeg")
}

data = {
    "scale_factor": 2  # 2x upscale (max 1536px, no extra credits)
}

headers = {
    "Authorization": f"Bearer {API_KEY}"
}

response = requests.post(SERVER_URL, headers=headers, data=data, files=files)

if response.status_code == 200:
    result = response.json()
    # Decode and save the upscaled image
    upscaled_data = base64.b64decode(result["info"]["upscaled_image"])
    with open("upscaled_image.jpg", "wb") as f:
        f.write(upscaled_data)
    print("Upscaled image saved to upscaled_image.jpg")
else:
    print(f"Error {response.status_code}: {response.text}")

Response samples

Content type
application/json
{
  • "error": "",
  • "message": "Successfully upscaled image.",
  • "info": {
    }
}

Remove Objects from Room

Remove furniture and decor from room photos to create empty spaces ready for AI virtual staging. The AI preserves architectural elements like walls, ceiling, windows, doors, and built-in fixtures while removing movable objects. Essential for preparing occupied properties before applying AI home design transformations.

Objects Preserved: wall, ceiling, door, windowpane, floor, railing, column, blind, light, stove, kitchen island, oven, microwave, dishwasher, hood, fan, radiator, refrigerator, sink, chandelier, fireplace, mirror, tree, curtain

Authorizations:
apiKeyAuth
Request Body schema: application/json
required
input_image_url
string

URL of the input image. Ensure the image is accessible over the internet. Supported formats are - PNG, JPEG, HEIF/HEIC.

mask_image_url
string

Optional URL of a mask image to specify which objects to remove. The mask must be a black and white image where white pixels identify the objects to remove and black pixels identify areas to preserve. The mask image must have the same aspect ratio as the input image. If mask is not provided, all furniture and decor objects are removed from the room. Supported formats are - PNG, JPEG, HEIF/HEIC.

Responses

Request samples

Content type
application/json

Response samples

Content type
application/json
{}

Change Wall Color

Visualize any wall color before painting. Upload a room photo and specify a hex color code to see how different paint colors would look. The AI maintains realistic lighting and shadows for accurate previews.

Credit Usage:

Authorizations:
apiKeyAuth
Request Body schema: application/json
required
input_image_url
required
string

URL of the input image. Can be either a https:// URL or a data:// base64 encoded string. Supported formats are PNG, JPEG, HEIF/HEIC.

Note: When using data:// URLs, there is a 4MB limit on the file size.

Examples:

wall_color_hex_code
required
string^#[0-9A-Fa-f]{6}$

The hex color code for the new wall color. Must be a valid hex color code starting with # followed by 6 hexadecimal characters.

Examples:

  • "#FF5733" (Orange-Red)
  • "#4CAF50" (Green)
  • "#2196F3" (Blue)
  • "#9C27B0" (Purple)
  • "#FFC107" (Amber)

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{}

Change Kitchen Cabinet Color

Preview cabinet refinishing or replacement colors before committing. Upload a kitchen photo and specify any hex color to see how new cabinet colors would look with realistic lighting and shadows.

Credit Usage:

Authorizations:
apiKeyAuth
Request Body schema: application/json
required
input_image_url
required
string

URL of the input image. Can be either a https:// URL or a data:// base64 encoded string. Supported formats are PNG, JPEG, HEIF/HEIC.

Note: When using data:// URLs, there is a 4MB limit on the file size.

Examples:

cabinet_color_hex_code
required
string^#[0-9A-Fa-f]{6}$

The hex color code for the new cabinet color. Must be a valid hex color code starting with # followed by 6 hexadecimal characters.

Examples:

  • "#8B4513" (Saddle Brown)
  • "#5C4033" (Rich Brown)
  • "#F5F5DC" (Beige)
  • "#FFFFFF" (White)
  • "#2F4F4F" (Dark Slate Gray)

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{}

Generate Landscaping Designs (Beta)

Transform front yards, backyards, and outdoor spaces with AI-generated landscaping designs. Upload a photo of any yard and see it with new gardens, plants, and outdoor features in various styles.

Credit Usage:

Request Body schema: application/json
required
input_image_url
required
string

URL of the input image. Can be either a https:// URL or a data:// base64 encoded string. Supported formats are PNG, JPEG, HEIF/HEIC.

Note: When using data:// URLs, there is a 4MB limit on the file size.

Examples:

yard_type
required
string
Enum: "Front Yard" "Backyard" "Side Yard"

The type of yard to design. Case-insensitive.

garden_style
required
string
Enum: "Garden" "Shade Garden" "Herb and Vegetable garden" "California Style Garden" "Evergreen Garden" "Aquatic Garden" "Picturesque Garden" "New England Style Garden" "Colonial Style Garden" "Terraced Garden" "Bamboo Garden" "Patio Garden" "Pollinators-Friendly Garden" "Drought Resistant Garden" "Container Garden" "Tropical Garden" "Japanese Zen Garden" "Mediterranean Garden" "Rock Garden" "Private Courtyard Garden" "Outdoor Staircase Garden" "Mounds or Berms" "Therapeutic Garden" "Alpine Garden" "Feng Shui Garden" "Vertical Garden" "Chinese Classical Garden" "Rain Garden" "English Cottage Garden" "French Formal Garden" "Italian Renaissance Garden" "Xeriscaping Garden"

The style of garden to implement. Case-insensitive.

num_images
integer [ 1 .. 4 ]
Default: 1

Number of design variations to generate. Each image costs 1 credit.

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{}

Remodel Kitchen

Visualize complete kitchen renovations before construction begins. Upload a photo of any kitchen and see it transformed with new cabinets, countertops, appliances, and layouts in your chosen design style.

Note: This endpoint performs full kitchen remodeling, not virtual staging. Use generate_designs_for_room if you only want to add or rearrange furniture and decor.

Credit Usage:

Authorizations:
apiKeyAuth
Request Body schema: application/json
required
input_image_url
required
string

URL of the kitchen image to remodel. Can be either a https:// URL or a data:// base64 encoded string. Supported formats are PNG, JPEG, HEIF/HEIC.

Note: When using data:// URLs, there is a 4MB limit on the file size.

Examples:

design_style
required
string (DesignStyle)
Enum: "minimalist" "scandinavian" "industrial" "boho" "traditional" "artdeco" "midcenturymodern" "coastal" "tropical" "eclectic" "contemporary" "frenchcountry" "rustic" "shabbychic" "vintage" "country" "modern" "asian_zen" "hollywoodregency" "bauhaus" "mediterranean" "farmhouse" "victorian" "gothic" "moroccan" "southwestern" "transitional" "maximalist" "arabic" "japandi" "retrofuturism" "artnouveau" "urbanmodern" "wabi_sabi" "grandmillennial" "coastalgrandmother" "newtraditional" "cottagecore" "luxemodern" "high_tech" "organicmodern" "tuscan" "cabin" "desertmodern" "global" "industrialchic" "modernfarmhouse" "europeanclassic" "neotraditional" "warmminimalist"

The design style to apply to the kitchen remodel.

num_images
integer (NumImages) [ 1 .. 4 ]

Number of design variations to generate. Default is 1.

scale_factor
integer [ 1 .. 4 ]
Default: 1

Scale factor determines the image resolution. See the table below for more details:

Scale Factor Image Dimension (Max) Design Credits Used
1 Max 768 pixels 0 credits
2 Max 1536 pixels 0 credits
3 Max 2304 pixels 1 credit
4 Max 3072 pixels 1 credit

Notes:

  1. Credits are calculated based on the image resolution requested.
  2. Resolutions above 2x (scale factor > 2) incur additional credits.
  3. The "Max pixels" refers to the longest side of the image, while the shorter side may have equal or smaller number of pixels depending upon image's aspect ratio.
  4. Credits mentioned are cumulative for each request depending on the chosen resolution.
  5. If num_images > 1, then the total credits used will be num_images * credits per upscale.

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{}

Remodel Bathroom

Visualize complete bathroom renovations before construction begins. Upload a photo of any bathroom and see it transformed with new fixtures, tiles, vanities, and layouts in your chosen design style.

Note: This endpoint performs full bathroom remodeling, not virtual staging. Use generate_designs_for_room if you only want to add or rearrange decor and accessories.

Credit Usage:

Authorizations:
apiKeyAuth
Request Body schema: application/json
required
input_image_url
required
string

URL of the bathroom image to remodel. Can be either a https:// URL or a data:// base64 encoded string. Supported formats are PNG, JPEG, HEIF/HEIC.

Note: When using data:// URLs, there is a 4MB limit on the file size.

Examples:

design_style
required
string (DesignStyle)
Enum: "minimalist" "scandinavian" "industrial" "boho" "traditional" "artdeco" "midcenturymodern" "coastal" "tropical" "eclectic" "contemporary" "frenchcountry" "rustic" "shabbychic" "vintage" "country" "modern" "asian_zen" "hollywoodregency" "bauhaus" "mediterranean" "farmhouse" "victorian" "gothic" "moroccan" "southwestern" "transitional" "maximalist" "arabic" "japandi" "retrofuturism" "artnouveau" "urbanmodern" "wabi_sabi" "grandmillennial" "coastalgrandmother" "newtraditional" "cottagecore" "luxemodern" "high_tech" "organicmodern" "tuscan" "cabin" "desertmodern" "global" "industrialchic" "modernfarmhouse" "europeanclassic" "neotraditional" "warmminimalist"

The design style to apply to the bathroom remodel.

num_images
integer (NumImages) [ 1 .. 4 ]

Number of design variations to generate. Default is 1.

scale_factor
integer [ 1 .. 4 ]
Default: 1

Scale factor determines the image resolution. See the table below for more details:

Scale Factor Image Dimension (Max) Design Credits Used
1 Max 768 pixels 0 credits
2 Max 1536 pixels 0 credits
3 Max 2304 pixels 1 credit
4 Max 3072 pixels 1 credit

Notes:

  1. Credits are calculated based on the image resolution requested.
  2. Resolutions above 2x (scale factor > 2) incur additional credits.
  3. The "Max pixels" refers to the longest side of the image, while the shorter side may have equal or smaller number of pixels depending upon image's aspect ratio.
  4. Credits mentioned are cumulative for each request depending on the chosen resolution.
  5. If num_images > 1, then the total credits used will be num_images * credits per upscale.

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{}

Sketch to 3D Render

Transform hand-drawn sketches and floor plans into photorealistic 3D room renders using AI room design technology. Upload a simple line drawing and get a fully furnished, realistically lit interior visualization. Ideal for architects and interior designers using AI home design tools to present concepts to clients.

Credit Usage:

Authorizations:
apiKeyAuth
Request Body schema: application/json
required
input_image_url
required
string

URL of the sketch image to convert to 3D render. Can be either a https:// URL or a data:// base64 encoded string. Supported formats are PNG, JPEG, HEIF/HEIC.

Note: When using data:// URLs, there is a 4MB limit on the file size.

Examples:

design_style
required
string (DesignStyle)
Enum: "minimalist" "scandinavian" "industrial" "boho" "traditional" "artdeco" "midcenturymodern" "coastal" "tropical" "eclectic" "contemporary" "frenchcountry" "rustic" "shabbychic" "vintage" "country" "modern" "asian_zen" "hollywoodregency" "bauhaus" "mediterranean" "farmhouse" "victorian" "gothic" "moroccan" "southwestern" "transitional" "maximalist" "arabic" "japandi" "retrofuturism" "artnouveau" "urbanmodern" "wabi_sabi" "grandmillennial" "coastalgrandmother" "newtraditional" "cottagecore" "luxemodern" "high_tech" "organicmodern" "tuscan" "cabin" "desertmodern" "global" "industrialchic" "modernfarmhouse" "europeanclassic" "neotraditional" "warmminimalist"

The design style to apply to the 3D render.

num_images
integer (NumImages) [ 1 .. 4 ]
scale_factor
integer (ScaleFactor) [ 1 .. 8 ]

Scale factor determines the image resolution. By default, the API uses scale_factor = 2 (producing images up to 1536 pixels) with no additional charge. See the table below for more details:

Scale Factor Image Dimensions (max) Design Credits Used
1 Max 768 pixels 0 credits
2 Max 1536 pixels 0 credits
3 Max 2304 pixels 1 credit
4 Max 3072 pixels 1 credit
5 Max 3840 pixels 2 credits
6 Max 4608 pixels 2 credits
7 Max 5376 pixels 3 credits
8 Max 6144 pixels 3 credits

Notes:

  1. Credits are calculated based on the image resolution requested.
  2. Resolutions above 2x (scale factor > 2) incur additional credits when using the generate_designs_for_room or upscale_image API.
  3. The "Max pixels" refers to the longest side of the image, while the shorter side may have equal or smaller number of pixels depending upon image's aspect ratio.
  4. Credits mentioned are cumulative for each request depending on the chosen resolution.
  5. If num_images > 1, then the total credits used will be num_images * credits per upscale.
  6. Pricing: Pay-As-You-Go pricing uses a credit-based system where 1 credit = $0.20 per generated image (up to 1536 pixels on either dimension). By default, the API uses scale_factor = 2, producing images with maximum 1536 pixels. There is no additional charge for scale_factor ≤ 2. When scale_factor > 2, additional credits are required as shown in the table above.
render_type
string
Default: "perspective"
Enum: "perspective" "isometric"

(Optional) Type of render to generate. Default is "perspective".

  • "perspective": Generates a 3D perspective rendered design with realistic depth and perspective
  • "isometric": Generates a 3D isometric view of the room from an angled top-down perspective

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{}