# AI Interior Design

## Explanation

This API endpoint allows users to submit new orders within the `service-creative-designer` service.

***

<mark style="color:green;">**`POST`**</mark> **`https://api.aihomedesign.com/v1/order`**

***

## Request Body

Ensure that your request body is in the <mark style="color:red;">**RAW-JSON**</mark> format.

The `service-creative-designer` requires `style` as a mandatory widget and `color` as an optional widget. To include a widget in the request body, set the widget’s ID in the `id` field of `selected_widgets` and the ID of the chosen widget item in the `item_id` field.

```json
{
    "order_id": string,
    "space_name": string,
    "selected_widgets" : 
    [
        {
            "id" : string,
            "item_id" : string
        }
    ]
}
```

* **`order_id`**: This should match the `order_id` returned by the Image Upload API.
* **`space_name`**: Retrieve the `space_name` using the `service_name` from the [Get Spaces endpoint](https://doc.aihomedesign.com/api-endpoints/get-spaces).
* **`selected_widgets`**:
  * **`id`**: Retrieve the `id` for `selected_widgets` based on the `service_name` from the [Get Widgets and Items endpoint](https://doc.aihomedesign.com/api-endpoints/get-widgets-and-items).
  * **`item_id`**: Retrieve the `item_id` for each widget by using its `id` in `items` key from the [Get Widget and Items endpoint](https://doc.aihomedesign.com/api-endpoints/submit-order/broken-reference).

{% hint style="info" %}
**What is a Space?**

A **Space** refers to a specific area or room associated with the service you’re requesting. For certain services, such as AI Interior Design or Virtual Staging, the **space\_name** field may be required to identify the room type (e.g., living room, bedroom, kitchen) or a specific project associated with the uploaded image.

Using the [**Get Spaces API**](https://doc.aihomedesign.com/api-endpoints/get-spaces), you can fetch all possible **spaces** based on the service.
{% endhint %}

<figure><img src="https://1694203522-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fanw8A7ZZEFkicjKXkFik%2Fuploads%2FVgiJkbm1NzH5ibCv6IQI%2Fspace.png?alt=media&#x26;token=5b1cc547-9888-4aa0-8025-2a19d5fce28f" alt=""><figcaption><p>AI Interior Design - Spaces<br><em>(Images shown in this documentation may not reflect the latest updates or design changes on the website.)</em></p></figcaption></figure>

{% hint style="info" %}
**What are Widgets and Items?**

**Widgets** are options that enhance your order. Depending on the service, widgets can either be optional or mandatory. For example, a widget might let you choose a design style or color or add specific enhancements to your image.

**Items** are the specific values or choices available for each widget. For instance, if a widget allows you to select a **style**, the widget items could be options like "Modern," "Contemporary," or "Scandinavian."

Use the [**Get Widgets and Items API**](https://doc.aihomedesign.com/api-endpoints/get-widgets-and-items) to see the available widgets and the items for each widget, ensuring your order is perfectly tailored to your needs.
{% endhint %}

<figure><img src="https://1694203522-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fanw8A7ZZEFkicjKXkFik%2Fuploads%2FZm78WhHu4a27bliU8CSx%2Fwidgets%20and%20items.png?alt=media&#x26;token=2e33d16b-e7d1-4062-89fd-ac02fed20bd3" alt=""><figcaption><p>AI Interior Design - Style and Color Widgets &#x26; Items<br><em>(Images shown in this documentation may not reflect the latest updates or design changes on the website.)</em></p></figcaption></figure>

## Headers

<table><thead><tr><th>Key</th><th>Value</th><th data-hidden>Type</th></tr></thead><tbody><tr><td>x-api-key<mark style="color:red;">*</mark></td><td>{your_api_key_here}</td><td>string</td></tr></tbody></table>

## Response

{% tabs %}
{% tab title="200: OK " %}

```json
{
   "order_id": string,
   "image_id": string,
   "eta": integer
}
```

{% endtab %}

{% tab title="400: Bad Request " %}

```json
{
    "error": string,
    "key": string
}
```

{% endtab %}
{% endtabs %}
