SDKs & Libraries
Official client libraries for the OBERON Financial OS platform.
TypeScript / Node.js
@oberon/sdknpm install @oberon/sdk
import { OberonClient } from "@oberon/sdk";
const oberon = new OberonClient({
apiKey: "your-api-key",
baseUrl: "https://gateway.oberon.services",
});
// Orchestrate a workflow
const result = await oberon.orchestrate("multi-provider-scoring", {
userId: "usr-123",
country: "MX",
});
// Credit scoring
const score = await oberon.creditScoring.calculate({
userId: "usr-123",
model: "FICO",
});
// Consent management
const consent = await oberon.consents.create({
endUserId: "eu-456",
templateKey: "open-banking-psd2",
});
// Revenue simulation
const fees = await oberon.revenue.simulate({
tenantId: "your-tenant-id",
workflowCode: "pos-bnpl",
transactionAmount: 5000,
providers: [
{ providerId: "prov-1", capabilityCode: "bnpl_pos" },
],
});
// VIS query
const accounts = await oberon.vis.query("bank_account", {
filters: { status: "ACTIVE" },
});Provider SDK (Adapter Kit)
@oberon/provider-sdkBuild and register your own provider capabilities with the OBERON ecosystem.
npm install @oberon/provider-sdk
import { OberonProvider } from "@oberon/provider-sdk";
import { z } from "zod";
const provider = new OberonProvider({
providerId: "my-provider",
apiKey: "provider-api-key",
baseUrl: "https://gateway.oberon.services",
});
// Register a capability
provider.registerCapability("credit_scoring_custom", {
inputSchema: z.object({
userId: z.string(),
dataPoints: z.array(z.string()).optional(),
}),
async handler(request) {
const score = await myInternalScoring(request.input.userId);
return {
success: true,
data: { score, confidence: 0.85, model: "custom-v2" },
};
},
async healthCheck() {
return { healthy: true, latencyMs: 50 };
},
});
// Start listening for orchestration requests
provider.start({ port: 8080 });Python
oberon-sdkComing soon — Python SDK in development.
pip install oberon-sdk
from oberon import OberonClient
client = OberonClient(
api_key="your-api-key",
base_url="https://gateway.oberon.services"
)
# Orchestrate
result = client.orchestrate("multi-provider-scoring", {
"user_id": "usr-123",
"country": "MX"
})
# Credit scoring
score = client.credit_scoring.calculate(
user_id="usr-123",
model="FICO"
)