SDKs
SDK JavaScript / TypeScript
The official SDK for JavaScript and TypeScript. Fully typed, ESM and CommonJS support.
Installation
bash
npm install reliant-js
Initialization
typescript
import { Reliant } from 'reliant-js'
const reliant = new Reliant({
apiKey: 'rel_...', // required
baseUrl: 'https://reliant-production.up.railway.app', // required
timeout: 120000, // optional, default 120s
})
Available methods
reliant.execute()
typescript
const result = await reliant.execute({
prompt: 'Your prompt here',
schemaId: 'sch_...',
provider: 'anthropic', // 'anthropic' | 'openai' | 'gemini'
model: 'claude-sonnet-4-20250514',
options: {
max_retries: 3, // optional
temperature: 0.2, // optional
}
})
// result.success: boolean
// result.output: object
// result.metadata.execution_id: string
// result.metadata.attempts: number
// result.metadata.latency_ms: number
// result.metadata.tokens_used: number
reliant.createSchema()
typescript
const schema = await reliant.createSchema({
name: 'Schema Name',
slug: 'schema-name',
description: 'Optional description',
definition: { /* JSON Schema */ },
safe_fallback: { /* fallback object */ },
})
reliant.listSchemas()
typescript
const { schemas } = await reliant.listSchemas()
schemas.forEach(s => console.log(s.id, s.name, s.version))
reliant.listExecutions()
typescript
const { executions, pagination } = await reliant.listExecutions({
page: 1,
limit: 20,
status: 'failed', // optional
schema_id: 'sch_...', // optional
})
reliant.getMetricsSummary()
typescript
const metrics = await reliant.getMetricsSummary(30) // last 30 days
console.log(metrics.total_executions)
console.log(metrics.success_rate) // percentage
console.log(metrics.avg_latency_ms)
console.log(metrics.total_tokens)
console.log(metrics.daily) // daily breakdown
Error handling
typescript
import { Reliant, ReliantError } from 'reliant-js'
try {
const result = await reliant.execute({ ... })
} catch (err) {
if (err instanceof ReliantError) {
console.error('Status:', err.status) // HTTP status code
console.error('Message:', err.message)
console.error('Data:', err.data) // full API response
}
}