Skip to main content

ContextRuleEngineApi

@codebolt/client-sdk


Class: ContextRuleEngineApi

Defined in: CodeBolt/packages/clientsdk/src/api/context-rule-engine.api.ts:19

Manages context rules for intelligent behavior control.

Context rules define conditions and actions that determine how agents and systems respond in different scenarios. The rule engine evaluates these rules against runtime data to dynamically adjust behavior.

Constructors​

Constructor​

new ContextRuleEngineApi(http: HttpClient): ContextRuleEngineApi;

Defined in: CodeBolt/packages/clientsdk/src/api/context-rule-engine.api.ts:20

Parameters​

ParameterType
httpHttpClient

Returns​

ContextRuleEngineApi

Methods​

create()​

create(data: CreateContextRuleRequest): Promise<ContextRuleDefinition>;

Defined in: CodeBolt/packages/clientsdk/src/api/context-rule-engine.api.ts:137

Creates a new context rule.

Registers a new rule with the system using the provided configuration. The rule can be configured with conditions, priority, and actions to execute when the rule matches.

Parameters​

ParameterTypeDescription
dataCreateContextRuleRequestRequest containing the new rule configuration

Returns​

Promise<ContextRuleDefinition>

A promise that resolves to the created ContextRuleDefinition object

Example​

const newRule = await client.contextRuleEngine.create({
name: 'Admin Access Rule',
conditions: [{ field: 'userRole', operator: 'equals', value: 'admin' }],
actions: [{ type: 'grant', permission: 'all' }]
});

delete()​

delete(id: string): Promise<unknown>;

Defined in: CodeBolt/packages/clientsdk/src/api/context-rule-engine.api.ts:185

Deletes a context rule from the system.

Permanently removes the specified rule. Any behavior or logic dependent on this rule will no longer be executed. This operation cannot be undone.

Parameters​

ParameterTypeDescription
idstringThe unique identifier of the rule to delete

Returns​

Promise<unknown>

A promise that resolves when the rule has been deleted

Example​

await client.contextRuleEngine.delete('rule-123');
console.log('Rule deleted');

evaluate()​

evaluate(data: EvaluateAllRulesRequest): Promise<EvaluateRuleResult[]>;

Defined in: CodeBolt/packages/clientsdk/src/api/context-rule-engine.api.ts:89

Evaluates all context rules against provided data.

Runs every rule in the system against the supplied context data and returns the evaluation results. Useful for batch testing or determining which rules would trigger in a given scenario.

Parameters​

ParameterTypeDescription
dataEvaluateAllRulesRequestRequest containing context data for evaluation

Returns​

Promise<EvaluateRuleResult[]>

A promise that resolves to an array of evaluation results

Example​

const results = await client.contextRuleEngine.evaluate({
context: { userType: 'admin', region: 'us-east' }
});
results.forEach(r => console.log(r.ruleId, r.matched));

evaluateRule()​

evaluateRule(id: string, data: EvaluateRuleRequest): Promise<EvaluateRuleResult>;

Defined in: CodeBolt/packages/clientsdk/src/api/context-rule-engine.api.ts:209

Evaluates a specific rule against provided data.

Runs a single rule evaluation against the supplied context data and returns whether the rule matched and what actions should be executed. Useful for testing individual rules or targeted evaluation.

Parameters​

ParameterTypeDescription
idstringThe unique identifier of the rule to evaluate
dataEvaluateRuleRequestRequest containing context data for evaluation

Returns​

Promise<EvaluateRuleResult>

A promise that resolves to an evaluation result

Example​

const result = await client.contextRuleEngine.evaluateRule('rule-123', {
context: { userType: 'admin' }
});
console.log('Matched:', result.matched);

get()​

get(id: string): Promise<ContextRuleDefinition>;

Defined in: CodeBolt/packages/clientsdk/src/api/context-rule-engine.api.ts:111

Retrieves a specific context rule by its unique identifier.

Returns detailed information about a single rule including its conditions, actions, metadata, and evaluation configuration.

Parameters​

ParameterTypeDescription
idstringThe unique identifier of the context rule

Returns​

Promise<ContextRuleDefinition>

A promise that resolves to the ContextRuleDefinition object

Example​

const rule = await client.contextRuleEngine.get('rule-123');
console.log('Rule:', rule.name);

getVariables()​

getVariables(params?: Record<string, unknown>): Promise<ContextRuleVariable[]>;

Defined in: CodeBolt/packages/clientsdk/src/api/context-rule-engine.api.ts:61

Retrieves all available variables for rule evaluation.

Returns the list of context variables that can be referenced in rule conditions. Each variable includes its type, description, and available values, helping developers construct valid rule expressions.

Parameters​

ParameterTypeDescription
params?Record<string, unknown>Optional query parameters for filtering variables

Returns​

Promise<ContextRuleVariable[]>

A promise that resolves to an array of ContextRuleVariable objects

Example​

const variables = await client.contextRuleEngine.getVariables();
variables.forEach(v => console.log(v.name, v.type));

list()​

list(params?: Record<string, unknown>): Promise<ContextRuleDefinition[]>;

Defined in: CodeBolt/packages/clientsdk/src/api/context-rule-engine.api.ts:37

Lists all available context rules in the system.

Returns every context rule regardless of status or category. Use this for comprehensive rule browsing or to populate rule management UIs.

Parameters​

ParameterTypeDescription
params?Record<string, unknown>Optional query parameters for filtering rules

Returns​

Promise<ContextRuleDefinition[]>

A promise that resolves to an array of ContextRuleDefinition objects

Example​

const rules = await client.contextRuleEngine.list();
rules.forEach(r => console.log(r.name, r.active));

update()​

update(id: string, data: UpdateContextRuleRequest): Promise<ContextRuleDefinition>;

Defined in: CodeBolt/packages/clientsdk/src/api/context-rule-engine.api.ts:160

Updates an existing context rule.

Modifies the properties, conditions, or actions of a rule identified by its ID. Use this to make incremental changes to a rule without recreating it from scratch.

Parameters​

ParameterTypeDescription
idstringThe unique identifier of the rule to update
dataUpdateContextRuleRequestRequest containing the rule updates to apply

Returns​

Promise<ContextRuleDefinition>

A promise that resolves to the updated ContextRuleDefinition object

Example​

const updated = await client.contextRuleEngine.update('rule-123', {
name: 'Updated Rule Name',
active: false
});