Skip to content

@salesforce/b2c-tooling-sdk / clients / CipClient

Class: CipClient ​

Defined in: packages/b2c-tooling-sdk/src/clients/cip.ts:191

CIP Avatica client with protobuf transport.

Use this client for raw SQL execution against B2C Commerce Intelligence (CIP/CCAC) data.

See createCipClient for the recommended construction helper.

Example ​

ts
import {OAuthStrategy} from '@salesforce/b2c-tooling-sdk/auth';
import {createCipClient} from '@salesforce/b2c-tooling-sdk/clients';

const auth = new OAuthStrategy({
  clientId: process.env.SFCC_CLIENT_ID!,
  clientSecret: process.env.SFCC_CLIENT_SECRET!,
});

const cip = createCipClient({instance: 'zzxy_prd'}, auth);

const result = await cip.query(
  'SELECT submit_date, num_orders FROM ccdw_aggr_sales_summary LIMIT 10',
  {fetchSize: 500},
);

console.log(result.rowCount, result.columns, result.rows[0]);

Constructors ​

Constructor ​

new CipClient(config, auth): CipClient

Defined in: packages/b2c-tooling-sdk/src/clients/cip.ts:199

Parameters ​

config ​

CipClientConfig

auth ​

AuthStrategy

Returns ​

CipClient

Methods ​

closeConnection() ​

closeConnection(): Promise<void>

Defined in: packages/b2c-tooling-sdk/src/clients/cip.ts:223

Closes the current Avatica connection (no-op if not open).

Returns ​

Promise<void>


closeStatement() ​

closeStatement(statementId): Promise<void>

Defined in: packages/b2c-tooling-sdk/src/clients/cip.ts:259

Closes a statement.

Parameters ​

statementId ​

number

Returns ​

Promise<void>


createStatement() ​

createStatement(): Promise<number>

Defined in: packages/b2c-tooling-sdk/src/clients/cip.ts:242

Creates a statement in the currently open connection.

Returns ​

Promise<number>


execute() ​

execute(statementId, sql, firstFrameMaxSize): Promise<CipExecuteResponse>

Defined in: packages/b2c-tooling-sdk/src/clients/cip.ts:275

Executes SQL and returns the first decoded frame.

Parameters ​

statementId ​

number

sql ​

string

firstFrameMaxSize ​

number = 1000

Returns ​

Promise<CipExecuteResponse>


fetch() ​

fetch(statementId, offset, fetchMaxRowCount): Promise<CipFetchResponse>

Defined in: packages/b2c-tooling-sdk/src/clients/cip.ts:315

Fetches an additional frame for an existing statement.

Parameters ​

statementId ​

number

offset ​

number

fetchMaxRowCount ​

number = 1000

Returns ​

Promise<CipFetchResponse>


openConnection() ​

openConnection(info): Promise<void>

Defined in: packages/b2c-tooling-sdk/src/clients/cip.ts:210

Opens a new Avatica connection.

Parameters ​

info ​

Record<string, string> = {}

Returns ​

Promise<void>


query() ​

query(sql, options): Promise<CipQueryResult>

Defined in: packages/b2c-tooling-sdk/src/clients/cip.ts:337

Executes SQL and returns the full decoded row set.

This helper opens and closes the connection automatically.

Parameters ​

sql ​

string

options ​

CipQueryOptions = {}

Returns ​

Promise<CipQueryResult>

Released under the Apache-2.0 License.