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

[@salesforce/b2c-tooling-sdk](../../modules.md) / operations/sites

# operations/sites

Site operations for B2C Commerce instances.

This module provides functions for managing site cartridge paths
on B2C Commerce instances. Operations use SCAPI first, with temporary
OCAPI and site-archive fallbacks. Business Manager (Sites-Site) is
supported via the import/export mechanism.

## Cartridge Path Functions

- [getCartridgePath](functions/getCartridgePath.md) - Get the current cartridge path for a site
- [addCartridge](functions/addCartridge.md) - Add a cartridge at a specific position
- [removeCartridge](functions/removeCartridge.md) - Remove a cartridge from the path
- [setCartridgePath](functions/setCartridgePath.md) - Replace the entire cartridge path

## Usage

```typescript
import {getCartridgePath, addCartridge, setCartridgePath} from '@salesforce/b2c-tooling-sdk/operations/sites';
import {resolveConfig} from '@salesforce/b2c-tooling-sdk/config';

const config = resolveConfig();
const instance = config.createB2CInstance();

// List cartridge path
const result = await getCartridgePath(instance, 'RefArch');
console.log(result.cartridgeList);

// Add a cartridge
await addCartridge(instance, 'RefArch', { name: 'my_cartridge', position: 'first' });

// Business Manager
await addCartridge(instance, 'Sites-Site', { name: 'bm_ext', position: 'first' });
```

## Authentication

Cartridge path operations require OAuth authentication. For SCAPI direct updates,
grant `sfcc.sites.rw`; for OCAPI grant POST/PUT/DELETE on `/sites/∗/cartridges`. For import/export fallback,
grant job execution permissions and WebDAV write access.

## Classes

- [OcapiSitesBackend](classes/OcapiSitesBackend.md)
- [ScapiSitesBackend](classes/ScapiSitesBackend.md)

## Interfaces

- [AddCartridgeOptions](interfaces/AddCartridgeOptions.md)
- [CartridgePathResult](interfaces/CartridgePathResult.md)
- [CartridgeUpdateOptions](interfaces/CartridgeUpdateOptions.md)
- [ListSitesOptions](interfaces/ListSitesOptions.md)
- [SiteInfo](interfaces/SiteInfo.md)
- [SitesBackend](interfaces/SitesBackend.md)

## Type Aliases

- [CartridgePosition](type-aliases/CartridgePosition.md)
- [SitesBackendConfig](type-aliases/SitesBackendConfig.md)

## Variables

- [BM\_SITE\_ID](variables/BM_SITE_ID.md)

## Functions

- [addCartridge](functions/addCartridge.md)
- [createSitesBackend](functions/createSitesBackend.md)
- [getCartridgePath](functions/getCartridgePath.md)
- [removeCartridge](functions/removeCartridge.md)
- [setCartridgePath](functions/setCartridgePath.md)
