GET /ping
Comprueba que tu credencial es válida y devuelve los datos básicos de tu empresa y plan.
{
"ok": true,
"empresa": "Mi Empresa S.L.",
"cif": "B12345678",
"plan": "pro",
"fecha": "2026-06-18T13:30:00+02:00"
}
Conecta tus fichajes con tu ERP, tu cuadro de mando o tus propias herramientas. Una API JSON de solo lectura para consultar empleados, centros y fichajes. Disponible en el plan Pro.
Cada empresa genera su clave desde el panel, en Integraciones (/integraciones),
con sesión de RRHH o administración. Puedes crear y revocar claves cuando quieras; al revocarlas dejan de
funcionar al instante. Toda petición se filtra automáticamente por tu empresa — solo ves tus propios datos.
Envía la clave en la cabecera X-Api-Key en cada petición:
curl https://controlhorariolegal.com/api/v1/ping \ -H "X-Api-Key: chl_tu_clave_aqui"
También se acepta Authorization: Bearer chl_tu_clave_aqui. Las peticiones van siempre por HTTPS
y las respuestas son JSON con codificación UTF-8.
https://controlhorariolegal.com/api/v1/pingComprueba que tu credencial es válida y devuelve los datos básicos de tu empresa y plan.
{
"ok": true,
"empresa": "Mi Empresa S.L.",
"cif": "B12345678",
"plan": "pro",
"fecha": "2026-06-18T13:30:00+02:00"
}
/empleadosLista los empleados activos de tu empresa, ordenados por apellidos.
{
"ok": true,
"total": 2,
"empleados": [
{
"id": 14,
"nombre": "Ana",
"apellidos": "García López",
"dni": "12345678Z",
"email": "ana@empresa.es",
"rol": "empleado",
"id_centro": 3,
"requiere_fichaje": true,
"horas_semana": 40
}
]
}
/centrosLista los centros de trabajo de tu empresa.
{
"ok": true,
"total": 1,
"centros": [
{
"id": 3,
"nombre": "Oficina Central",
"direccion": "Calle Mayor 1",
"poblacion": "Madrid",
"codigo_postal": "28013",
"fichaje_activo": true
}
]
}
/fichajesLista fichajes en un rango de fechas. Parámetros opcionales por query string:
desde, hasta — formato YYYY-MM-DD. Por defecto, los últimos 30 días. Máximo 366 días por consulta.dni — filtra por un empleado (acepta DNI/NIE o email).id_centro — filtra por un centro.curl "https://controlhorariolegal.com/api/v1/fichajes?desde=2026-06-01&hasta=2026-06-18" \ -H "X-Api-Key: chl_tu_clave_aqui"
{
"ok": true,
"desde": "2026-06-01",
"hasta": "2026-06-18",
"total": 1,
"truncado": false,
"fichajes": [
{
"id": 9021,
"empleado": "Ana García López",
"dni": "12345678Z",
"centro": "Oficina Central",
"tipo": "entrada",
"ts": "2026-06-18 09:02:11",
"metodo": "kiosko_pin",
"hash": "a3f1c9..."
}
]
}
Una consulta devuelve como máximo 10.000 fichajes. Si se alcanza ese tope, truncado vale true; acota el rango de fechas para obtener el resto.
Cuando algo falla, la respuesta es { "ok": false, "error": "..." } con el código HTTP correspondiente:
| Código | Significado |
|---|---|
| 401 | Falta la API key o es inválida/revocada. |
| 403 | Tu plan no incluye la API (disponible en Pro). |
| 404 | Recurso no encontrado (p. ej. empleado inexistente). |
| 405 | Método HTTP no permitido en ese endpoint. |
| 422 | Datos inválidos (fechas mal formadas, rango excesivo, tipo erróneo…). |
Genera tu API key desde el panel, en Integraciones. La API se incluye en el plan Pro.
Ver planes →