shori-sdk-ts
v1.2.3
Published
SDK TypeScript para integrar aplicaciones JS/TS con la plataforma Shori BPM de NTT DATA
Downloads
2,151
Maintainers
Readme
Shori SDK para TypeScript / JavaScript
SDK desarrollado por el equipo AITO PERÚ de NTT DATA para integrar aplicaciones JS/TS con la plataforma Syntpony Process Management (Shori).
Características
- ✅ fetch nativo — sin dependencias externas (Node 18+, browser, Edge Runtime)
- ✅ Auto-renovación de tokens — el Bearer token se renueva automáticamente al expirar
- ✅ Builder fluido — igual que el SDK Java
- ✅ TypeScript primero — tipos completos, IntelliSense incluido
- ✅ Dual ESM + CJS — compatible con
importyrequire - ✅ Compatible con Next.js, NestJS, Express, React, Vite, etc.
Instalación
npm install shori-sdk-tsInicio rápido
import { ShoriClientBuilder, ShoriEnvironment } from "shori-sdk-ts";
const client = new ShoriClientBuilder()
.environment(ShoriEnvironment.PROD)
.portalId("tu-portal-id")
.tenantId("tu-tenant-id")
.apiKey("tu-api-key")
.build();Uso en Next.js
// lib/shori.ts
import { ShoriClientBuilder, ShoriEnvironment } from "shori-sdk-ts";
export const shoriClient = new ShoriClientBuilder()
.environment(ShoriEnvironment.PROD)
.portalId(process.env.SHORI_PORTAL_ID!)
.tenantId(process.env.SHORI_TENANT_ID!)
.apiKey(process.env.SHORI_API_KEY!)
.build();Uso en NestJS
// shori.module.ts
import { Module, Global } from "@nestjs/common";
import { ShoriClientBuilder, ShoriEnvironment } from "shori-sdk-ts";
@Global()
@Module({
providers: [
{
provide: "SHORI_CLIENT",
useFactory: () =>
new ShoriClientBuilder()
.environment(ShoriEnvironment.PROD)
.portalId(process.env.SHORI_PORTAL_ID!)
.tenantId(process.env.SHORI_TENANT_ID!)
.apiKey(process.env.SHORI_API_KEY!)
.build(),
},
],
exports: ["SHORI_CLIENT"],
})
export class ShoriModule {}Variables de entorno recomendadas
SHORI_PORTAL_ID=tu-portal-uuid
SHORI_TENANT_ID=tu-tenant-uuid
SHORI_API_KEY=tu-api-keyManejo de errores
import {
ResourceNotFoundException,
AuthenticationException,
ApiException,
} from "shori-sdk-ts";
try {
// const caso = await client.caso().findById("uuid");
} catch (err) {
if (err instanceof ResourceNotFoundException) {
// 404 — el recurso no existe
} else if (err instanceof AuthenticationException) {
// credenciales inválidas
} else if (err instanceof ApiException) {
console.error(`HTTP ${err.statusCode}:`, err.message);
}
}Compatibilidad
| Entorno | Versión mínima | |---|---| | Node.js | 18+ | | Next.js | 13+ | | NestJS | 9+ | | TypeScript | 5.0+ |
AITO PERÚ — NTT DATA
