Developer Preview — This project is in active development. APIs may change. Provide feedback
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.