<340 ns Por decisão
<600 ps Op. lógica
2.9M/sec Débito
On-premise nativo Sem runtime na nuvem

Esta página pode estar parcialmente traduzida. Alguns conteúdos são apresentados em inglês.

Conformidade em 10 linhas de código

SDK TypeScript sem dependências. Fetch nativo, erros tipados, cobertura completa da API.
Do npm install à primeira decisão em menos de um minuto.

Início rápido

Instalar, configurar, resolver. A sua primeira decisão auditável em segundos.

resolve.ts
import { OmegaClient } from '@omegaos/sdk';

const client = new OmegaClient({
  baseUrl: 'https://your-instance.example.com',
  apiKey: 'delk_your_api_key',
  tenantId: 'your-tenant-id',
});

const decision = await client.resolve({
  evidenceList: [
    { key: 'credit_score', state: 'Indeterminate', source: 'bureau' },
    { key: 'identity_verified', state: 'True', source: 'kyc_provider' },
  ],
  policy: { threshold: 2, requiredSources: ['bureau', 'kyc_provider'] },
});

console.log(decision.state); // "True" | "False" | "Indeterminate"

Cobertura completa da API

Cada endpoint. Entradas tipadas, saídas tipadas. Uma única instância de cliente para toda a superfície.

MétodoDescrição
client.resolve(request)Resolução de decisão única
client.resolveBatch(request)Resolução em lote (até 1000)
client.resolveMulti(request)Resolução multi-regulamentação
client.getDecision(id)Obter decisão com provas
client.listDecisions(params)Lista paginada por cursor
client.createVerificationToken(req)Criar token vfy_
client.listVerificationTokens()Listar tokens ativos
client.revokeVerificationToken(id)Revogar um token
OmegaClient.verify(baseUrl, token)Verificação pública (sem auth)
client.health()Verificação de estado

Erros tipados

Cada erro é uma classe tipada, não uma string.

401

OmegaAuthError

Credenciais inválidas ou expiradas

403

OmegaForbiddenError

Permissões insuficientes

404

OmegaNotFoundError

Recurso não encontrado

400

OmegaBadRequestError

Pedido inválido

422

OmegaValidationError

Erro de validação do esquema

429

OmegaRateLimitError

Limite de taxa excedido

Princípios de design

Zero dependências

Utiliza fetch() nativo. Sem axios, sem node-fetch. Funciona em Node.js 18+, Deno, Bun e navegadores.

Tipagem segura

Tipos TypeScript completos que espelham a API Rust. TrileanState, Evidence, Policy, ResolveResult — tudo tipado.

Fail-Fast

Classes de erro tipadas para cada código HTTP. Sem falhas silenciosas, sem erros genéricos.

Autenticação

Três métodos de autenticação. Escolha o correto para o seu contexto.

MétodoHeaderCaso de uso
API KeyX-API-Key: delk_...Servidor-a-servidor, scripts, CI/CD
JWT BearerAuthorization: Bearer eyJ...Sessões de utilizador, dashboard
Tenant IDX-Tenant-Id: uuidIsolamento multi-tenant

Verificação pública

Sem autenticação necessária. Verifique qualquer decisão com um único token.

verify.ts
// No authentication required
const result = await OmegaClient.verify(
  'https://your-instance.example.com',
  'vfy_abc123...'
);

console.log(result.valid);     // true
console.log(result.state);     // "True"
console.log(result.decidedAt); // "2026-01-15T10:30:00Z"

Disponível durante o piloto

Pacote npm completo com licença de produção. Comece a integração durante o seu programa piloto.