API de la firma
Las rutas del motor de firma, con lo que espera y lo que devuelve cada una.
Todo cuelga de https://firma.vanycorp.com. Las peticiones van como multipart/form-data y las respuestas son texto plano, no JSON: es la forma del servicio original y se mantuvo para no romper a quien ya lo usaba.
POST /getjwt
Cambia la clave de un consumidor por un token de corta duración.
| Cabecera | X-API-KEY: <clave del consumidor> |
Campo base64 | El JSON {"sistemaTransversal":"<nombre>"} en base64 |
| Devuelve | El token, en texto plano |
Errores: 401 sin X-API-KEY, 400 si falta o no decodifica el base64, 429 si esa dirección agotó sus intentos.
POST /appfirmardocumento
Firma un PDF con un certificado que tú aportas.
| Campo | Qué es |
|---|---|
jwt | El token de /getjwt |
pkcs12 | Tu certificado .p12 en base64 |
password | La clave del certificado |
documento | El PDF en base64 |
json | Dónde va la firma: {"llx":100,"lly":100,"pagina":1} |
base64 | true para recibir el resultado en base64 |
Cada llamada que termina bien cuenta uno contra documentos_mes.
POST /serviciofirmar
Lo mismo, pensado para llamarse desde un servicio en lugar de desde una aplicación de escritorio. Mismos campos.
POST /appfirmardocumentotransversal
La variante para sistemas que firman en nombre de varias entidades. Mismos campos, más los datos de la entidad.
POST /appverificardocumento
Comprueba las firmas de un PDF.
| Campo | Qué es |
|---|---|
documento | El PDF en base64 |
Devuelve las firmas encontradas, de quién son y si son válidas. No gasta cupo: verificar es consultar.
POST /appvalidarcertificadodigital
Comprueba un certificado suelto: si es válido, de quién es y hasta cuándo sirve.
GET /certificado/revocado/{serial}
Dice si ese certificado está revocado. Hay también GET /certificado/fechaRevocado/{serial} para la fecha.
POST /fecha-hora
La hora del servidor. Sirve para comprobar que el reloj de tu sistema y el nuestro coinciden antes de investigar un problema de sellos de tiempo.
Cosas que conviene saber
- El certificado no se guarda. Se usa para esa firma y se descarta.
- Hay un freno por dirección de red en las rutas que autentican. Un sistema bien configurado no lo toca nunca; uno con la clave mal puesta, sí.
- Todo queda en la bitácora de tu organización: qué consumidor, cuándo, con qué resultado. Se consulta desde la consola.
- Si tu plan lo permite, puedes restringir un consumidor a ciertos orígenes, para que su clave no sirva desde cualquier sitio.