@salesforce/b2c-tooling-sdk / clients / createOcapiClient
Function: createOcapiClient() ​
createOcapiClient(
hostname,auth,options?):OcapiClient
Defined in: packages/b2c-tooling-sdk/src/clients/ocapi.ts:138
Creates a typed OCAPI Data API client.
Returns the openapi-fetch client directly, with authentication handled via middleware. This gives full access to all openapi-fetch features with type-safe paths, parameters, and responses.
Note: This client is typically accessed via B2CInstance.ocapi rather than created directly. The B2CInstance class handles authentication setup.
Parameters ​
hostname ​
string
B2C instance hostname
auth ​
Authentication strategy (typically OAuth)
options? ​
Optional configuration including API version and middleware registry
string | OcapiClientOptions
Returns ​
Typed openapi-fetch client
Examples ​
ts
// Via B2CInstance (recommended)
import { resolveConfig } from '@salesforce/b2c-tooling-sdk/config';
const config = resolveConfig();
const instance = config.createB2CInstance();
const { data, error } = await instance.ocapi.GET('/sites', {});ts
// Direct instantiation (advanced)
const client = createOcapiClient('sandbox.demandware.net', authStrategy);
// Fully typed GET request
const { data, error } = await client.GET('/sites', {
params: { query: { select: '(**)' } }
});
// Path parameters are type-checked
const { data, error } = await client.GET('/sites/{site_id}', {
params: { path: { site_id: 'RefArch' } }
});
// Request bodies are typed
const { data, error } = await client.PATCH('/code_versions/{code_version_id}', {
params: { path: { code_version_id: 'v1' } },
body: { active: true }
});