API RESTful para integrar tus herramientas con Kolva. Gestiona clientes, negocios, visitas y contactos mediante programación. Webhooks en tiempo real para cada evento.
Especificación OpenAPI 3.1Autenticación
Genera claves API desde Ajustes → Desarrollador en tu panel de administración de Kolva. Cada clave tiene permisos acotados y se puede revocar en cualquier momento.
Método recomendado
Permisos granulares
read:clientswrite:clientsread:dealswrite:dealsread:visitswrite:visitsread:finance* (all)Endpoints
Todos los endpoints siguen las convenciones REST. Las respuestas usan JSON. Paginación con ?page= y ?limit= (máx. 100).
/api/v1/clientsGestiona tu base de clientes: listar, crear, actualizar, desactivar.
/api/v1/contactsCRUD de contactos dentro de las fichas de cliente (array de contactos JSONB).
/api/v1/dealsPedidos y negocios: crear, actualizar estado, seguir los ingresos.
/api/v1/visitsVisitas de campo: planificar, registrar entradas y salidas, gestionar horarios.
Límites de uso
100
solicitudes / minuto
429
estado al superar el límite
Retry-After
cabecera incluida
Webhooks
Suscríbete a los eventos desde Ajustes → Desarrollador → Webhooks. Kolva envía solicitudes POST a tu URL con verificación de firma HMAC-SHA256.
deal_createdSe activa cuando se crea un nuevo negocio/pedido
deal_updatedSe activa cuando cambia el estado o el importe de un negocio
client_createdSe activa cuando se añade un nuevo cliente
client_updatedSe activa cuando se modifican los datos de un cliente
visit_completedSe activa cuando un comercial de campo registra su salida
invoice_createdSe activa cuando se genera una factura
order_createdSe activa cuando se realiza un pedido
contact_updatedSe activa cuando se modifica un contacto de cliente
Cada POST de webhook incluye una cabecera X-Kolva-Signature . Verifícala con HMAC-SHA256 usando tu secreto de webhook.
Política de reintentos: 3 intentos con retroceso exponencial (1 min, 5 min, 30 min). Tras 10 fallos consecutivos, el webhook se desactiva automáticamente.
Ejemplos
curl -X GET "https://kolva.ai/api/v1/clients?page=1&limit=10" \ -H "X-Kolva-Key: kolva_sk_your_key_here"
curl -X POST "https://kolva.ai/api/v1/deals" \
-H "X-Kolva-Key: kolva_sk_your_key_here" \
-H "Content-Type: application/json" \
-d '{"client_id": "uuid", "total_ht": 1500, "currency": "EUR"}'const response = await fetch("https://kolva.ai/api/v1/visits?status=completed", {
headers: { "X-Kolva-Key": process.env.KOLVA_API_KEY },
});
const { data, total } = await response.json();
console.log(`Found ${total} completed visits`);const visit = await fetch("https://kolva.ai/api/v1/visits", {
method: "POST",
headers: {
"X-Kolva-Key": process.env.KOLVA_API_KEY,
"Idempotency-Key": crypto.randomUUID(),
"Content-Type": "application/json",
},
body: JSON.stringify({
client_id: "client-uuid",
commercial_id: "rep-uuid",
planned_date: "2026-03-15",
type: "routine",
}),
});
const { data } = await visit.json();
// Retry the same operation with the same UUID. A replay returns HTTP 200;
// the initial creation returns HTTP 201.Crea tu clave API en los ajustes de Kolva, o consulta la especificación OpenAPI para la referencia completa.