ShoriException
Excepción base del SDK de Shori.
Todas las excepciones lanzadas por el SDK extienden de esta clase,
lo que permite capturar cualquier error del SDK con un único catch.
Jerarquía de excepciones
ShoriException (RuntimeException)
├── AuthenticationException → Error de autenticación (credenciales inválidas)
├── ApiException → Error HTTP del API (4xx, 5xx)
│ └── getStatusCode() → Código HTTP (400, 403, 500, etc.)
├── ResourceNotFoundException → Recurso no encontrado (HTTP 404)
└── ValidationException → Parámetro inválido en el SDK
Ejemplo de manejo de errores
try {
CasoResponse caso = client.caso().findById("documentId");
} catch (ResourceNotFoundException e) {
// 404 - El caso no existe
log.warn("Caso no encontrado: {}", e.getMessage());
} catch (AuthenticationException e) {
// Credenciales inválidas o token no renovable
log.error("Error de autenticación: {}", e.getMessage());
} catch (ApiException e) {
// 400, 500, etc.
log.error("Error HTTP {}: {}", e.getStatusCode(), e.getMessage());
} catch (ShoriException e) {
// Cualquier otro error del SDK
log.error("Error del SDK: {}", e.getMessage());
}