# RoomleConfiguratorApi.default

[Embedding API Reference](https://docs.roomle.com/rubens/rubens-products/rubens-products-reference) / [Modules](https://docs.roomle.com/rubens/rubens-products/rubens-products-reference/modules) / [roomle-configurator-api](https://docs.roomle.com/rubens/rubens-products/rubens-products-reference/modules/roomle_configurator_api) / default

## Class: default\<SdkType, SdkCallbacks>

[roomle-configurator-api](https://docs.roomle.com/rubens/rubens-products/rubens-products-reference/modules/roomle_configurator_api).default

### Type parameters

| Name           |
| -------------- |
| `SdkType`      |
| `SdkCallbacks` |

### Implements

* [`RoomleEmbeddingApiKeys`](https://docs.roomle.com/rubens/rubens-products/rubens-products-reference/interfaces/roomle_configurator_api.roomleembeddingapikeys)

### Table of contents

#### Properties

* [analytics](#analytics)
* [extended](#extended)
* [global](#global)
* [ui](#ui)

#### Methods

* [teardown](#teardown)
* [create](#create)
* [createConfigurator](#createconfigurator)
* [createPlanner](#createplanner)
* [createViewer](#createviewer)

### Properties

#### analytics

• **analytics**: `Object`

**Type declaration**

| Name        | Type                                                                                                                                                                  |
| ----------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `callbacks` | [`ExposedAnalyticsCallbacks`](https://docs.roomle.com/rubens/rubens-products/rubens-products-reference/classes/exposed_analytics_callbacks.exposedanalyticscallbacks) |

**Implementation of**

[RoomleEmbeddingApiKeys](https://docs.roomle.com/rubens/rubens-products/rubens-products-reference/interfaces/roomle_configurator_api.roomleembeddingapikeys).[analytics](https://docs.roomle.com/rubens/rubens-products/interfaces/roomle_configurator_api.roomleembeddingapikeys#analytics)

***

#### extended

• **extended**: `SdkType`

**Implementation of**

[RoomleEmbeddingApiKeys](https://docs.roomle.com/rubens/rubens-products/rubens-products-reference/interfaces/roomle_configurator_api.roomleembeddingapikeys).[extended](https://docs.roomle.com/rubens/rubens-products/interfaces/roomle_configurator_api.roomleembeddingapikeys#extended)

***

#### global

• **global**: `Object`

**Type declaration**

| Name        | Type             |
| ----------- | ---------------- |
| `callbacks` | `GlobalCallback` |

**Implementation of**

[RoomleEmbeddingApiKeys](https://docs.roomle.com/rubens/rubens-products/rubens-products-reference/interfaces/roomle_configurator_api.roomleembeddingapikeys).[global](https://docs.roomle.com/rubens/rubens-products/interfaces/roomle_configurator_api.roomleembeddingapikeys#global)

***

#### ui

• **ui**: [`ExposedApi`](https://docs.roomle.com/rubens/rubens-products/rubens-products-reference/classes/exposed_api.exposedapi)

**Implementation of**

[RoomleEmbeddingApiKeys](https://docs.roomle.com/rubens/rubens-products/rubens-products-reference/interfaces/roomle_configurator_api.roomleembeddingapikeys).[ui](https://docs.roomle.com/rubens/rubens-products/interfaces/roomle_configurator_api.roomleembeddingapikeys#ui)

### Methods

#### teardown

▸ **teardown**(): `void`

**Returns**

`void`

***

#### create

▸ **create**(`configuratorId`, `container`, `initData`): `Promise`<[`RoomleConfiguratorApi`](https://docs.roomle.com/rubens/rubens-products/modules/roomle_configurator_api#roomleconfiguratorapi)>

Method to create a new instance of a Roomle Configurator

**Parameters**

| Name             | Type                                                                                                                 | Description                                                                                     |
| ---------------- | -------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- |
| `configuratorId` | `string`                                                                                                             | the id which identifies your configurator, you will get this ID from your Roomle Contact Person |
| `container`      | `HTMLElement`                                                                                                        | DOM container in which the configurator should be placed                                        |
| `initData`       | [`UiInitData`](https://docs.roomle.com/rubens/rubens-products/rubens-products-reference/interfaces/types.uiinitdata) | settings with which the configurator should be started                                          |

**Returns**

`Promise`<[`RoomleConfiguratorApi`](https://docs.roomle.com/rubens/rubens-products/modules/roomle_configurator_api#roomleconfiguratorapi)>

**`Deprecated`**

please use "createConfigurator"

***

#### createConfigurator

▸ **createConfigurator**(`configuratorId`, `container`, `initData`): `Promise`<[`RoomleConfiguratorApi`](https://docs.roomle.com/rubens/rubens-products/modules/roomle_configurator_api#roomleconfiguratorapi)>

Method to create a new instance of a Roomle Configurator

**Parameters**

| Name             | Type                                                                                                                 | Description                                                                                     |
| ---------------- | -------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- |
| `configuratorId` | `string`                                                                                                             | the id which identifies your configurator, you will get this ID from your Roomle Contact Person |
| `container`      | `HTMLElement`                                                                                                        | DOM container in which the configurator should be placed                                        |
| `initData`       | [`UiInitData`](https://docs.roomle.com/rubens/rubens-products/rubens-products-reference/interfaces/types.uiinitdata) | settings with which the configurator should be started                                          |

**Returns**

`Promise`<[`RoomleConfiguratorApi`](https://docs.roomle.com/rubens/rubens-products/modules/roomle_configurator_api#roomleconfiguratorapi)>

***

#### createPlanner

▸ **createPlanner**(`configuratorId`, `container`, `initData`): `Promise`<[`RoomlePlannerApi`](https://docs.roomle.com/rubens/rubens-products/modules/roomle_configurator_api#roomleplannerapi)>

**Parameters**

| Name             | Type                                                                                                                 |
| ---------------- | -------------------------------------------------------------------------------------------------------------------- |
| `configuratorId` | `string`                                                                                                             |
| `container`      | `HTMLElement`                                                                                                        |
| `initData`       | [`UiInitData`](https://docs.roomle.com/rubens/rubens-products/rubens-products-reference/interfaces/types.uiinitdata) |

**Returns**

`Promise`<[`RoomlePlannerApi`](https://docs.roomle.com/rubens/rubens-products/modules/roomle_configurator_api#roomleplannerapi)>

***

#### createViewer

▸ **createViewer**(`configuratorId`, `container`, `initData`): `Promise`<[`RoomleViewerApi`](https://docs.roomle.com/rubens/rubens-products/modules/roomle_configurator_api#roomleviewerapi)>

Method to create a new instance of a Roomle Viewer

**Parameters**

| Name             | Type                                                                                                                 | Description                                                                                     |
| ---------------- | -------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- |
| `configuratorId` | `string`                                                                                                             | the id which identifies your configurator, you will get this ID from your Roomle Contact Person |
| `container`      | `HTMLElement`                                                                                                        | DOM container in which the configurator should be placed                                        |
| `initData`       | [`UiInitData`](https://docs.roomle.com/rubens/rubens-products/rubens-products-reference/interfaces/types.uiinitdata) | settings with which the configurator should be started                                          |

**Returns**

`Promise`<[`RoomleViewerApi`](https://docs.roomle.com/rubens/rubens-products/modules/roomle_configurator_api#roomleviewerapi)>
