@salesforce/b2c-tooling-sdk / instance / B2CInstance
Class: B2CInstance
Defined in: packages/b2c-tooling-sdk/src/instance/index.ts:85
Represents a connection to a B2C Commerce instance.
Provides lazy-loaded, typed API clients for WebDAV and OCAPI operations. Authentication is handled automatically based on the configured credentials.
Example
// From configuration (recommended)
import { resolveConfig } from '@salesforce/b2c-tooling-sdk/config';
const config = resolveConfig({
clientId: process.env.SFCC_CLIENT_ID,
clientSecret: process.env.SFCC_CLIENT_SECRET,
});
const instance = config.createB2CInstance();
// WebDAV uses Basic auth if available, falls back to OAuth
await instance.webdav.mkcol('Cartridges/v1');
// OCAPI always uses OAuth
const { data } = await instance.ocapi.GET('/sites', {});Constructors
Constructor
new B2CInstance(
config,auth):B2CInstance
Defined in: packages/b2c-tooling-sdk/src/instance/index.ts:95
Creates a new B2CInstance.
Parameters
config
Instance configuration (hostname, code version)
auth
Authentication configuration
Returns
B2CInstance
Properties
auth
readonlyauth:AuthConfig
Defined in: packages/b2c-tooling-sdk/src/instance/index.ts:97
Authentication configuration
config
readonlyconfig:InstanceConfig
Defined in: packages/b2c-tooling-sdk/src/instance/index.ts:96
Instance configuration (hostname, code version)
Accessors
ocapi
Get Signature
get ocapi():
OcapiClient
Defined in: packages/b2c-tooling-sdk/src/instance/index.ts:139
OCAPI Data API client.
Returns the openapi-fetch client directly with full type safety. Always uses OAuth authentication.
Example
const { data, error } = await instance.ocapi.GET('/sites', {});
const { data, error } = await instance.ocapi.PATCH('/code_versions/{code_version_id}', {
params: { path: { code_version_id: 'v1' } },
body: { active: true }
});Returns
webdav
Get Signature
get webdav():
WebDavClient
Defined in: packages/b2c-tooling-sdk/src/instance/index.ts:119
WebDAV client for file operations.
Uses Basic auth if username/password are configured, otherwise falls back to OAuth.
Example
await instance.webdav.mkcol('Cartridges/v1');
await instance.webdav.put('Cartridges/v1/app.zip', content);
const entries = await instance.webdav.propfind('Cartridges');Returns
webdavHostname
Get Signature
get webdavHostname():
string
Defined in: packages/b2c-tooling-sdk/src/instance/index.ts:104
The hostname to use for WebDAV operations. Falls back to main hostname if not specified.
Returns
string