Referencia de API e integración¶
Alcance¶
SSigner Cliente consume una API remota y acepta invocaciones mediante un protocolo de Windows. Esta referencia documenta el contrato observado en el cliente.
Base URL:
En desarrollo local, la API REST usa por defecto http://localhost:8087. El cliente consume principalmente endpoints bajo /api/v2/ssigner.
Todas las solicitudes usan:
API interna
Los esquemas pueden incluir propiedades adicionales definidas por el servidor. No elimine campos desconocidos al implementar una integración intermedia.
Protocolo ssigner://¶
Formato¶
Parámetros¶
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
dni | string | Sí | Identificador del firmante |
cod-operation | string numérico | Sí | Grupo u operación de firma |
token | string | Condicional | Token Bearer para la API |
tipo-repo | string | No | Windows-MY, PKCS11, PKCS12 o JKS |
filter-by-dni | boolean | No | Filtra certificados por dni |
filterByDni | boolean | No | Alias de filter-by-dni |
debug | boolean | No | Habilita logs desde el inicio |
Ejemplo:
Obtener configuración¶
Solicitud¶
Respuesta esperada¶
{
"estado": true,
"propiedades": {
"firma.repositorio": "Windows-MY",
"firma.motivo": "Aprobación",
"firma.locacion": "Lima",
"debug": "true"
}
}
Si la respuesta HTTP no es 200, el cliente continúa con Windows-MY como repositorio predeterminado.
Generar hashes¶
Solicitud¶
{
"idGP": "1001",
"idFirmante": "12345678",
"certifcadoPublicoFirmante": "MIIC...BASE64...",
"userMotivo": "Aprobación",
"userLocacion": "Lima"
}
Nombre del campo
El cliente envía certifcadoPublicoFirmante con esa ortografía exacta.
Respuesta esperada¶
{
"estado": true,
"mensaje": "OK",
"algoritmo": "SHA256",
"campo": "__signature__",
"hashes": [
"BASE64_DEL_HASH"
],
"nombresDocumentos": [
"contrato.pdf"
],
"propiedades": {
"firma.repositorio": "Windows-MY",
"documento": "documentos.txt"
},
"configuracionesIndividuales": {
"contrato.properties": {
"firma.motivo": "Aprobación"
}
}
}
hashes y nombresDocumentos deben mantener el mismo orden.
Insertar hashes firmados¶
Solicitud¶
Respuesta esperada¶
Códigos HTTP tratados¶
| Código | Comportamiento |
|---|---|
200 | Procesa la respuesta |
401 | Falló la autenticación |
403 | El usuario no tiene acceso |
501 | Error técnico del servidor |
| Otro | Incluye el cuerpo de error en la excepción interna |
Tiempos de espera¶
| Operación | Conexión | Lectura |
|---|---|---|
| Obtener configuración | 10 s | 10 s |
| Generar hashes | 30 s | 120 s |
| Insertar firmas | 60 s | 600 s |