Skip to content

@fathom-rules/sdk


@fathom-rules/sdk / FathomClient

Class: FathomClient

Defined in: client.ts:145

Promise-based client for the Fathom policy engine.

Example

const client = new FathomClient({
  baseURL: "http://localhost:8000",
  bearerToken: "my-token",
});
const result = await client.evaluate({
  ruleset: "",
  facts: [{ template: "agent", data: { id: "a1", clearance: "secret" } }],
});
console.log(result.decision); // "allow" | "deny" | "escalate" | null

Constructors

Constructor

new FathomClient(options): FathomClient

Defined in: client.ts:149

Parameters

options

FathomClientOptions

Returns

FathomClient

Methods

assertFact()

assertFact(req): Promise\<AssertFactResponse>

Defined in: client.ts:171

Assert a single fact into the session's working memory.

Parameters

req

AssertFactRequest

Returns

Promise\<AssertFactResponse>


evaluate()

evaluate(req): Promise\<EvaluateResponse>

Defined in: client.ts:166

Send facts to the engine and return the policy decision.

Parameters

req

EvaluateRequest

Returns

Promise\<EvaluateResponse>


query()

query(req): Promise\<QueryResponse>

Defined in: client.ts:176

Retrieve facts from the session's working memory.

Parameters

req

QueryRequest

Returns

Promise\<QueryResponse>


retract()

retract(req): Promise\<RetractResponse>

Defined in: client.ts:184

Retract facts matching the request's template + optional filter from the session's working memory. Returns the number of facts removed.

Parameters

req

RetractRequest

Returns

Promise\<RetractResponse>