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

[@salesforce/b2c-tooling-sdk](../../../modules.md) / [operations/bm-users](../index.md) / UsersBackend

# Interface: UsersBackend

Defined in: [packages/b2c-tooling-sdk/src/operations/bm-users/types.ts:104](https://github.com/SalesforceCommerceCloud/b2c-developer-tooling/blob/2feab01f654eec77c6d702777ec2818472f131f1/packages/b2c-tooling-sdk/src/operations/bm-users/types.ts#L104)

Backend contract for BM user operations.

Merchant Users has no server-side search endpoint, so the SCAPI backend
implements portable search criteria over its paginated user listing.
Raw OCAPI query DSL, access keys, and `whoami` remain OCAPI-only.

## Extends

- [`BackendBase`](../../../clients/interfaces/BackendBase.md)

## Properties

### name

> `readonly` **name**: `"ocapi"` \| `"scapi"`

Defined in: [packages/b2c-tooling-sdk/src/clients/scapi-backend-utils.ts:36](https://github.com/SalesforceCommerceCloud/b2c-developer-tooling/blob/2feab01f654eec77c6d702777ec2818472f131f1/packages/b2c-tooling-sdk/src/clients/scapi-backend-utils.ts#L36)

#### Inherited from

[`BackendBase`](../../../clients/interfaces/BackendBase.md).[`name`](../../../clients/interfaces/BackendBase.md#name)

## Methods

### createOrReplaceUser()

> **createOrReplaceUser**(`login`, `input`): `Promise`\<[`UserInfo`](UserInfo.md)\>

Defined in: [packages/b2c-tooling-sdk/src/operations/bm-users/types.ts:108](https://github.com/SalesforceCommerceCloud/b2c-developer-tooling/blob/2feab01f654eec77c6d702777ec2818472f131f1/packages/b2c-tooling-sdk/src/operations/bm-users/types.ts#L108)

#### Parameters

##### login

`string`

##### input

[`CreateUserInput`](CreateUserInput.md)

#### Returns

`Promise`\<[`UserInfo`](UserInfo.md)\>

***

### deleteUser()

> **deleteUser**(`login`): `Promise`\<`void`\>

Defined in: [packages/b2c-tooling-sdk/src/operations/bm-users/types.ts:110](https://github.com/SalesforceCommerceCloud/b2c-developer-tooling/blob/2feab01f654eec77c6d702777ec2818472f131f1/packages/b2c-tooling-sdk/src/operations/bm-users/types.ts#L110)

#### Parameters

##### login

`string`

#### Returns

`Promise`\<`void`\>

***

### getUser()

> **getUser**(`login`): `Promise`\<[`UserInfo`](UserInfo.md)\>

Defined in: [packages/b2c-tooling-sdk/src/operations/bm-users/types.ts:107](https://github.com/SalesforceCommerceCloud/b2c-developer-tooling/blob/2feab01f654eec77c6d702777ec2818472f131f1/packages/b2c-tooling-sdk/src/operations/bm-users/types.ts#L107)

#### Parameters

##### login

`string`

#### Returns

`Promise`\<[`UserInfo`](UserInfo.md)\>

***

### listUsers()

> **listUsers**(`options?`): `Promise`\<[`ListUsersResult`](ListUsersResult.md)\>

Defined in: [packages/b2c-tooling-sdk/src/operations/bm-users/types.ts:105](https://github.com/SalesforceCommerceCloud/b2c-developer-tooling/blob/2feab01f654eec77c6d702777ec2818472f131f1/packages/b2c-tooling-sdk/src/operations/bm-users/types.ts#L105)

#### Parameters

##### options?

[`ListUsersOptions`](ListUsersOptions.md)

#### Returns

`Promise`\<[`ListUsersResult`](ListUsersResult.md)\>

***

### searchUsers()

> **searchUsers**(`options?`): `Promise`\<[`ListUsersResult`](ListUsersResult.md)\>

Defined in: [packages/b2c-tooling-sdk/src/operations/bm-users/types.ts:106](https://github.com/SalesforceCommerceCloud/b2c-developer-tooling/blob/2feab01f654eec77c6d702777ec2818472f131f1/packages/b2c-tooling-sdk/src/operations/bm-users/types.ts#L106)

#### Parameters

##### options?

[`SearchUsersOptions`](SearchUsersOptions.md)

#### Returns

`Promise`\<[`ListUsersResult`](ListUsersResult.md)\>

***

### updateUser()

> **updateUser**(`login`, `changes`): `Promise`\<[`UserInfo`](UserInfo.md)\>

Defined in: [packages/b2c-tooling-sdk/src/operations/bm-users/types.ts:109](https://github.com/SalesforceCommerceCloud/b2c-developer-tooling/blob/2feab01f654eec77c6d702777ec2818472f131f1/packages/b2c-tooling-sdk/src/operations/bm-users/types.ts#L109)

#### Parameters

##### login

`string`

##### changes

[`UpdateUserChanges`](UpdateUserChanges.md)

#### Returns

`Promise`\<[`UserInfo`](UserInfo.md)\>
