---
editLink: false
lastUpdated: false
---

[@salesforce/b2c-tooling-sdk](../../modules.md) / [config](../index.md) / createInstanceFromConfig

# Function: createInstanceFromConfig()

> **createInstanceFromConfig**(`config`, `options?`): [`B2CInstance`](../../instance/classes/B2CInstance.md)

Defined in: [packages/b2c-tooling-sdk/src/config/mapping.ts:545](https://github.com/SalesforceCommerceCloud/b2c-developer-tooling/blob/e7c16f1ae423da0aa47b3e10be88f9770b53619b/packages/b2c-tooling-sdk/src/config/mapping.ts#L545)

Creates a B2CInstance from a NormalizedConfig.

This utility provides a single source of truth for instance creation
from resolved configuration. It is used by both ConfigResolver.createInstance()
and CLI commands (e.g., InstanceCommand).

## Parameters

### config

[`NormalizedConfig`](../interfaces/NormalizedConfig.md)

The normalized configuration (must include hostname)

### options?

#### openBrowser?

(`url`) => `Promise`\<`void`\>

#### redirectUri?

`string`

## Returns

[`B2CInstance`](../../instance/classes/B2CInstance.md)

Configured B2CInstance

## Throws

Error if hostname is not available in config

## Example

```typescript
import { createInstanceFromConfig } from '@salesforce/b2c-tooling-sdk/config';

const config = { hostname: 'example.demandware.net', clientId: 'abc' };
const instance = createInstanceFromConfig(config);
await instance.webdav.mkcol('Cartridges/v1');
```
