@salesforce/b2c-tooling-sdk / clients / createOcapiClient
Function: createOcapiClient()
createOcapiClient(
hostname,auth,options?):OcapiClient
Defined in: packages/b2c-tooling-sdk/src/clients/ocapi.ts:119
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 }
});