⬛ FichajeQR API — NT Couceiro

Sistema de fichaje por QR · Firebird nt_couceiro · Autenticación por PIN

SERVIDOR ACTIVO
Base URL
http://host:8080
BD
nt_couceiro
Auth
PIN numérico
Validez QR
60s
Radio GPS
200m
Formato
application/json
Endpoints
GET/api/healthEstado del servidor y la BD
GET/api/qr/generarGenera token QR temporal (%!d(MISSING)s, un solo uso)
Query param
ParamTipoDescripción
puestostringNombre del puesto. Opcional, default: "principal"
"ok": true, "token": "a3f9b2...", "qr_url": "fichajeqr://token=a3f9...&exp=...", "segundos": %!d(MISSING)
GET/api/fichajesLista fichajes de una fecha
Query param
ParamTipoDescripción
fechastringYYYY-MM-DD. Opcional, default: hoy
"ok": true, "fecha": "2026-02-27", "total": 4,
"fichajes": [{"nombre":"Juan","apellidos":"García","hora_entrada":"08:31:07","hora_salida":"17:02:11","tipo":""}]
POST/api/device/registerVincula dispositivo al empleado por PIN
Body JSON
CampoTipoDescripción
pinintPIN numérico del empleado (SIN$ORG_PERSONA.PIN)
device_idstringAndroid ID del dispositivo
marcastringFabricante del móvil
modelostringModelo del móvil
android_versionstringVersión Android
"ok": true, "token": "d4e5f6...", "nombre": "Juan", "apellidos": "García López"
POST/api/ficharRegistra entrada o salida
Body JSON
CampoTipoDescripción
token_qrstringToken del QR escaneado
device_idstringAndroid ID
auth_tokenstringToken obtenido al registrar
latitudfloatGPS latitud
longitudfloatGPS longitud
gps_disponiblebooltrue si GPS activo
biometria_okbooltrue si huella verificada
timestamp_clienteint64Unix ms del dispositivo
"ok": true, "tipo": "entrada", "hora": "08:31:07", "empleado": "Juan García"
Errores: 401 no autorizado · 403 fuera de rango GPS · 409 ya fichado hoy