API REST de
Certifirm
Automatiza envíos certificados, sellos de tiempo y gestión de contactos directamente desde tu aplicación o ERP.
curl -X POST \ https://api-v2.certifirm.eu/envios/crear \ -H "Authorization: Bearer <tu_token>" \ -H "Content-Type: application/x-www-form-urlencoded" \ -d "id_plantilla=12" \ -d "destinos=cliente@empresa.com,612000111,false,false" \ -d "tipo_datos=XWWWFORMURLENCODED" \ -d "descripcion=Contrato+de+servicios+2024" \ -d "documento=<base64_urlencoded>"
Autenticación
Todos los endpoints requieren autenticación mediante token Bearer. Crea tus tokens desde el panel de control, en Mis Datos → Tokens.
URL base
https://api-v2.certifirm.euHeader de autenticación
Authorization: Bearer <token>Formato de datos
JSON o form-data (POST/PUT/PATCH) · query string (GET/DELETE).
Ejemplos
Ejemplos de uso
Una muestra de llamadas a la API — un ejemplo por cada método HTTP — sobre envíos y contactos. No son los endpoints más importantes ni la lista completa: la referencia de todos los endpoints está en el panel de control.
/envios/crearCrea un nuevo envío de Entrega CertificadaParámetros
| Campo | Tipo | Req. |
|---|---|---|
| id_plantilla | number | Sí |
| destinos | string | Sí |
| tipo_datos | string | No — BINARIO|XWWW… |
| tipo_firma | string | No — SIMPLE|MULTIPLE |
| descripcion | string | No |
| fecha_programada_envio | string | No — DD-MM-AAAA |
| documento | string | Solo XWWW — base64+URL |
destinos:Destinatarios separados por «
;». Cada uno, campos separados por «,» en este orden (solo el email es obligatorio):email,telefono,firma_manuscrita,documentacion,mrz,liveness,otpLos flags son
true o false. Ejemplo:ana@empresa.com,612000111,true,false,,false,true;luis@empresa.comEjemplo (binario)
curl -X POST https://api-v2.certifirm.eu/envios/crear \ -H "Authorization: Bearer <tu_token>" \ -F "id_plantilla=12" \ -F "destinos=ana@empresa.com,612000111,false,false" \ -F "descripcion=Contrato servicio 2024" \ -F "documento=@/ruta/al/contrato.pdf" // Respuesta 200 — array de envíos creados [ { "id": 1042, "email_destinatario": "ana@empresa.com" } ]
/envios/listarLista los envíos con paginación y filtrosParámetros (query string)
| Campo | Descripción |
|---|---|
| inicio | Offset (paginación), defecto 0 |
| filas | Número de resultados, defecto 10 |
| filtro_id | Filtrar por ID de envío |
| filtro_tipo_firma | SIMPLE o MULTIPLE |
| filtro_fecha_inicio | Fecha inicio DD/MM/AAAA |
Ejemplo
curl "https://api-v2.certifirm.eu/envios/listar?inicio=0&filas=5" \ -H "Authorization: Bearer <tu_token>" // Respuesta 200 { "listar_envios": [ { "id": 1042, "email_destinatario": "ana@empresa.com", "descripcion": "Contrato servicio 2024", "estado_actual": "EMAIL_ENVIADO", "estado_final": null, "createdAt": 1745488800000 } ], "total_envios": 1 }
/envios/cancelarCancela un envío antes de que sea firmadoParámetros (body JSON)
| Campo | Tipo | Req. |
|---|---|---|
| id_envio | number | Sí |
Ejemplo
curl -X PATCH https://api-v2.certifirm.eu/envios/cancelar \ -H "Authorization: Bearer <tu_token>" \ -H "Content-Type: application/json" \ -d '{"id_envio":1042}' // Respuesta 200 — envío actualizado { "id": 1042, "estado_actual": "CANCELADO_POR_EL_USUARIO", "estado_final": "CANCELADO" }
/contactos/modificarActualiza un contacto de la agendaParámetros (body JSON)
| Campo | Tipo | Req. |
|---|---|---|
| id | number | Sí |
| string | Sí | |
| nombre | string | No |
| empresa | string | No |
| telefono | string | No |
Ejemplo
curl -X PUT https://api-v2.certifirm.eu/contactos/modificar \ -H "Authorization: Bearer <tu_token>" \ -H "Content-Type: application/json" \ -d '{"id":58,"email":"ana@empresa.com","nombre":"Ana García López"}' // Respuesta 200 — contacto actualizado { "id": 58, "email": "ana@empresa.com", "nombre": "Ana García López", "empresa": "Empresa S.L.", "telefono": "612000111" }
/contactos/eliminarElimina un contacto de la agendaParámetros (query string)
| Campo | Tipo | Req. |
|---|---|---|
| id | number | Sí |
Ejemplo
curl -X DELETE "https://api-v2.certifirm.eu/contactos/eliminar?id=58" \ -H "Authorization: Bearer <tu_token>" // Respuesta 200 — contacto eliminado { "id": 58, "email": "ana@empresa.com", "nombre": "Ana García" }
Referencia
Documentación de la API
La referencia completa de endpoints — parámetros, tipos de datos, respuestas de ejemplo y explorador interactivo — está disponible dentro del panel de control.
Acceso disponible tras registro
El registro es gratuito.
Documentación interactiva
Desde el panel de control tienes acceso a la referencia completa de todos los endpoints, con parámetros, tipos de datos, respuestas de ejemplo y un explorador interactivo.
Ir al panel de control¿Necesitas ayuda?
Si tienes dudas sobre la integración o necesitas soporte técnico, nuestro equipo está disponible por email o desde la pestaña de soporte del panel.
Contactar con soporteEmpieza a integrar hoy
Crea tu cuenta, genera un token de acceso y realiza tu primera llamada a la API en minutos.