shori-sdk-ts
v1.2.7
Published
SDK TypeScript para integrar aplicaciones JS/TS con la plataforma Shori BPM de NTT DATA
Downloads
619
Maintainers
Readme
Shori SDK para TypeScript / JavaScript
SDK desarrollado por Jerson Omar Ramírez Ortiz de AITO Perú - NTT DATA para facilitar la integración de aplicaciones JavaScript/TypeScript con la plataforma Syntpony Process Management (Shori).
Proporciona una API sencilla y tipada para interactuar con los servicios de Shori, incorporando autenticación, renovación automática de tokens, filtros, paginación y builders fluidos para una experiencia consistente de desarrollo.
Documentación
La documentación completa del SDK, incluyendo configuración, módulos disponibles, ejemplos de uso y referencia de la API, se encuentra disponible en:
Shori SDK — Multi-plataforma | Shori SDK — NTT DATA
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 — API consistente con el SDK Java
- ✅ TypeScript primero — tipos completos e 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
