@salesforce/b2c-tooling-sdk / instance / B2CInstance
Class: B2CInstance ​
Defined in: packages/b2c-tooling-sdk/src/instance/index.ts:88
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:98
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:100
Authentication configuration
config ​
readonlyconfig:InstanceConfig
Defined in: packages/b2c-tooling-sdk/src/instance/index.ts:99
Instance configuration (hostname, code version)
Accessors ​
ocapi ​
Get Signature ​
get ocapi():
OcapiClient
Defined in: packages/b2c-tooling-sdk/src/instance/index.ts:146
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:122
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:107
The hostname to use for WebDAV operations. Falls back to main hostname if not specified.
Returns ​
string