NEXOLABOR API V1

Documentación API REST para integraciones profesionales

Conecta NexoLabor con asesorías, ERPs, herramientas de nóminas, apps móviles, sistemas de presencia, clientes, proyectos y soluciones externas.

Base URL https://nexolabor.com/api/v1/ Formato JSON · UTF-8 · HTTPS obligatorio
INTRODUCTION

API REST NexoLabor

La API permite consultar y crear datos laborales desde aplicaciones externas. Está pensada para integraciones con asesorías, ERPs, sistemas de nóminas, apps móviles, BI y conectores privados.

VersiónV1
Base URLhttps://nexolabor.com/api/v1/
FormatoJSON
CodificaciónUTF-8
SeguridadToken API por empresa
AUTH

Autenticación

Los endpoints protegidos aceptan token mediante cabecera Authorization: Bearer o cabecera compatible token.

Accept: application/json
Content-Type: application/json; charset=utf-8
Authorization: Bearer nl_TU_TOKEN_API

También se admite el formato usado por muchas APIs de control horario:

token: nl_TU_TOKEN_API
ADMIN API

Endpoints de administrador

Operaciones para la empresa: empleados, clientes, proyectos, fichajes, vacaciones, gastos y datos de empresa.

POST

Login / Token

Los tokens se generan desde el panel interno: Integraciones API. Por seguridad, la creación de tokens desde API debe limitarse a administradores autorizados.

Panel: /integraciones/index.php
Cabecera: Authorization: Bearer nl_TU_TOKEN

Users / Empleados

GET/api/v1/empleados.php

Get All Users / empleados de la empresa.

POST/api/v1/empleados.php

Add User / alta de empleado.

GET/api/v1/empleados.php?id=15

Get User / detalle de empleado.

curl --location 'https://nexolabor.com/api/v1/empleados.php' \
  --header 'Accept: application/json' \
  --header 'token: nl_TU_TOKEN'
{
  "ok": true,
  "empleados": [
    {"id": 15, "nombre": "Empleado Demo", "dni": "00000000X", "correo": "empleado@empresa.com", "estado": "activo"}
  ]
}

Clients

GET/api/v1/clientes.php

Get Clients.

POST/api/v1/clientes.php

Add Client / Edit Client enviando id.

DEL/api/v1/clientes.php?id=3

Delete Client.

curl --location 'https://nexolabor.com/api/v1/clientes.php' \
  --header 'token: nl_TU_TOKEN'

Projects

GET/api/v1/proyectos.php

Get Projects.

POST/api/v1/proyectos.php

Add/Edit Project.

GET/api/v1/proyectos.php?id=10

Get Project.

DEL/api/v1/proyectos.php?id=10

Delete Project.

Clockings

GET/api/v1/fichajes.php?desde=2026-06-01&hasta=2026-06-30

Listado de fichajes.

POST/api/v1/fichajes.php

Crear fichaje: entrada, salida, inicio_pausa o fin_pausa.

curl --location 'https://nexolabor.com/api/v1/fichajes.php' \
  --header 'Content-Type: application/json' \
  --header 'token: nl_TU_TOKEN' \
  --data '{"id_empleado":15,"tipo":"entrada","latitud":36.43,"longitud":-5.45}'

Expenses List

GET/api/v1/gastos.php

Listado de gastos, dietas e importes.

POST/api/v1/gastos.php

Crear gasto.

curl --location 'https://nexolabor.com/api/v1/gastos.php' \
  --header 'Accept: application/json' \
  --header 'token: nl_TU_TOKEN'
{
  "ok": true,
  "gastos": [
    {"id": 1, "concepto": "Comidas", "importe": "12.50", "estado": "pendiente"}
  ]
}

Vacaciones

GET/api/v1/vacaciones.php

Listado de solicitudes de vacaciones.

POST/api/v1/vacaciones.php

Crear solicitud de vacaciones.

USER API

Endpoints orientados al empleado

Consultas de perfil, fichajes del usuario, gastos y solicitudes. En esta versión se usa el token de empresa y el parámetro id_empleado para integraciones controladas.

GET

My-Profile

Devuelve los datos básicos del empleado.

GET https://nexolabor.com/api/v1/my-profile.php?id_empleado=15
GET

User Clockings

Endpoint compatible con filtros tipo IntraTime: last, maxResult, from, to y type.

ParámetroEjemploDescripción
lasttrueOrdena últimos fichajes primero.
maxResult2Máximo de resultados.
from2026-06-01 00:00:00Fecha inicial.
to2026-06-30 23:59:59Fecha final.
type0,1,2,30 entrada, 1 salida, 2 inicio pausa, 3 fin pausa.
id_empleado15Empleado concreto.
curl --location 'https://nexolabor.com/api/v1/user-clockings.php?last=true&maxResult=2&from=2026-06-01%2000:00:00&type=0,1,2,3' \
  --header 'Accept: application/json' \
  --header 'Content-Type: application/json; charset=utf-8' \
  --header 'token: nl_TU_TOKEN'
[
  {
    "INOUT_ID": 9641714,
    "INOUT_USER_ID": 15,
    "INOUT_USER_NAME": "Empleado Demo",
    "INOUT_TYPE": 0,
    "INOUT_TYPE_NAME": "entrada",
    "INOUT_DATE": "2026-06-10 09:18:16",
    "INOUT_SOURCE": "pwa",
    "INOUT_COORDINATES": "36.4300000,-5.4500000",
    "INOUT_COMMENTS": null
  }
]
GET

Clocking Requests

Devuelve incidencias o solicitudes relacionadas con fichajes por año.

curl --location 'https://nexolabor.com/api/v1/clocking-requests.php?year=2026' \
  --header 'token: nl_TU_TOKEN'
{
  "ok": true,
  "clocking_requests": [
    {"id": 1, "id_fichaje": 25, "estado": "pendiente", "comentario": "Olvido de fichaje"}
  ]
}

Permisos de token

Los tokens pueden limitarse por módulos para evitar accesos innecesarios.

empresa:leerempleados:leerempleados:crearclientes:leerclientes:crearclientes:editarclientes:eliminarproyectos:leerproyectos:crearproyectos:editarproyectos:eliminarfichajes:leerfichajes:crearvacaciones:leervacaciones:creargastos:leergastos:crear*

Códigos de respuesta

CódigoUso
200 OKOperación completada.
201 CreatedRegistro creado.
400 Bad RequestFaltan datos o formato no válido.
401 UnauthorizedToken no enviado o inválido.
403 ForbiddenPermiso insuficiente.
404 Not FoundRegistro no encontrado.
405 Method Not AllowedMétodo HTTP no permitido.
{
  "ok": false,
  "error": "Token API no válido o inactivo"
}