🔑 Configurar API Key para probar los endpoints
Introduce tu API Key para probar los endpoints directamente desde esta documentación. La key se envía como header X-API-Key.
📊 Endpoints de Consulta
Endpoints de solo lectura para consultar ubicaciones, espacios, zonas y registros. Requieren API Key con permiso read. Los datos nunca se eliminan — se mantiene historial completo de 5+ años.
Devuelve la estructura completa de la red en forma de árbol. Ideal para configuración inicial de integraciones.
| Parámetro | Tipo | Descripción |
|---|---|---|
| Sin parámetros adicionales | ||
curl -H "X-API-Key: TU_API_KEY" \ "https://espacios.fitmetrics.es/api.php?action=get_estructura"
▶ Probar endpoint
Lista todas las ubicaciones de la red con contadores de espacios y zonas.
| Parámetro | Tipo | Descripción |
|---|---|---|
activa | 0 | 1 | Opcional Filtrar por estado activo/inactivo |
curl -H "X-API-Key: TU_API_KEY" \ "https://espacios.fitmetrics.es/api.php?action=get_ubicaciones" # Solo activas curl -H "X-API-Key: TU_API_KEY" \ "https://espacios.fitmetrics.es/api.php?action=get_ubicaciones&activa=1"
▶ Probar endpoint
Lista todos los espacios de la red. Se puede filtrar por ubicación.
| Parámetro | Tipo | Descripción |
|---|---|---|
ubicacion_id | string | Opcional ID de la ubicación |
activo | 0 | 1 | Opcional Filtrar por estado activo |
curl -H "X-API-Key: TU_API_KEY" \ "https://espacios.fitmetrics.es/api.php?action=get_espacios&ubicacion_id=UBI_ID"
▶ Probar endpoint
Lista todas las zonas. Se puede filtrar por espacio o ubicación.
| Parámetro | Tipo | Descripción |
|---|---|---|
espacio_id | string | Opcional ID del espacio |
ubicacion_id | string | Opcional ID de la ubicación (filtra zonas de todos sus espacios) |
activa | 0 | 1 | Opcional Filtrar por estado activo |
curl -H "X-API-Key: TU_API_KEY" \ "https://espacios.fitmetrics.es/api.php?action=get_zonas&ubicacion_id=UBI_ID"
▶ Probar endpoint
El endpoint principal para consultar el histórico de ocupación. Soporta filtrado por fechas, ubicación, espacio, zona, hora y tipo. Los resultados incluyen nombres enriquecidos y porcentaje de ocupación. Los registros nunca se borran — historial completo disponible.
| Parámetro | Tipo | Descripción |
|---|---|---|
fecha_desde | YYYY-MM-DD | Opcional Fecha inicio del rango |
fecha_hasta | YYYY-MM-DD | Opcional Fecha fin del rango |
ubicacion_id | string | Opcional Filtrar por ubicación |
espacio_id | string | Opcional Filtrar por espacio |
zona_id | string | Opcional Filtrar por zona específica |
hora | HH:00 | Opcional Filtrar por franja horaria (ej: 10:00) |
tipo | string | Opcional manual | sensor | camara | iot |
registrado_por | string | Opcional Nombre del usuario o dispositivo |
limit | int | Opcional Máx resultados (default 500, max 5000) |
offset | int | Opcional Saltar N resultados (paginación) |
orden | string | Opcional desc (defecto) | asc — por fecha+hora |
# Registros de hoy curl -H "X-API-Key: TU_API_KEY" \ "https://espacios.fitmetrics.es/api.php?action=get_registros&fecha_desde=2026-03-26&fecha_hasta=2026-03-26" # Últimos 7 días de una ubicación curl -H "X-API-Key: TU_API_KEY" \ "https://espacios.fitmetrics.es/api.php?action=get_registros&fecha_desde=2026-03-19&fecha_hasta=2026-03-26&ubicacion_id=UBI_ID" # Zona específica, franja de las 10h, paginado curl -H "X-API-Key: TU_API_KEY" \ "https://espacios.fitmetrics.es/api.php?action=get_registros&zona_id=ZONA_ID&hora=10:00&limit=50&offset=0"
▶ Probar endpoint
Devuelve los horarios definidos para las ubicaciones.
| Parámetro | Tipo | Descripción |
|---|---|---|
ubicacion_id | string | Opcional Filtrar por ubicación |
curl -H "X-API-Key: TU_API_KEY" \ "https://espacios.fitmetrics.es/api.php?action=get_horarios"
▶ Probar endpoint
Devuelve un resumen del día con personas por hora y totales globales de la red.
| Parámetro | Tipo | Descripción |
|---|---|---|
fecha | YYYY-MM-DD | Opcional Día a consultar (default: hoy) |
curl -H "X-API-Key: TU_API_KEY" \ "https://espacios.fitmetrics.es/api.php?action=get_resumen&fecha=2026-03-26"
▶ Probar endpoint
📈 KPIs y Agregaciones
Endpoint de analítica avanzada con agrupación por múltiples dimensiones.
Calcula métricas agregadas (total personas, medias, máximos, pico) y permite agrupar por fecha, hora, ubicación, espacio, zona, día de la semana o mes.
| Parámetro | Tipo | Descripción |
|---|---|---|
fecha_desde | YYYY-MM-DD | Opcional Inicio del periodo |
fecha_hasta | YYYY-MM-DD | Opcional Fin del periodo |
ubicacion_id | string | Opcional Filtrar por ubicación |
espacio_id | string | Opcional Filtrar por espacio |
zona_id | string | Opcional Filtrar por zona |
agrupar_por | string | Opcional fecha | hora | ubicacion | espacio | zona | dia_semana | mes |
# KPIs globales del último mes curl -H "X-API-Key: TU_API_KEY" \ "https://espacios.fitmetrics.es/api.php?action=get_kpis&fecha_desde=2026-02-26&fecha_hasta=2026-03-26" # Ocupación por día de la semana curl -H "X-API-Key: TU_API_KEY" \ "https://espacios.fitmetrics.es/api.php?action=get_kpis&agrupar_por=dia_semana" # Comparativa entre espacios curl -H "X-API-Key: TU_API_KEY" \ "https://espacios.fitmetrics.es/api.php?action=get_kpis&agrupar_por=espacio&ubicacion_id=UBI_ID" # Evolución mensual curl -H "X-API-Key: TU_API_KEY" \ "https://espacios.fitmetrics.es/api.php?action=get_kpis&agrupar_por=mes"
▶ Probar endpoint
🔢 Conteo Automático
Endpoints para registrar conteos desde sensores, cámaras y dispositivos IoT. Requieren API Key con permiso count.
Registra un conteo de personas en una zona. Si ya existe un registro para la misma zona+fecha+hora, lo actualiza (upsert).
| Campo (body JSON) | Tipo | Descripción |
|---|---|---|
zona_id | string | REQUERIDO ID de la zona |
personas | int | REQUERIDO Número de personas |
fecha | YYYY-MM-DD | Opcional Default: hoy |
hora | HH:00 | Opcional Default: hora actual |
device_id | string | Opcional Identificador del dispositivo |
tipo | string | Opcional sensor | camara | manual | iot |
curl -X POST -H "X-API-Key: TU_API_KEY" \
-H "Content-Type: application/json" \
-d '{"zona_id":"ZONA_ID","personas":25,"tipo":"sensor"}' \
"https://espacios.fitmetrics.es/api.php?action=count"Registra varios conteos en una sola petición. Ideal para dispositivos que acumulan datos offline.
curl -X POST -H "X-API-Key: TU_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"registros": [
{"zona_id":"Z1","personas":10,"hora":"09:00"},
{"zona_id":"Z1","personas":25,"hora":"10:00"},
{"zona_id":"Z2","personas":8,"hora":"09:00"}
]
}' \
"https://espacios.fitmetrics.es/api.php?action=count_batch"Devuelve la ocupación actual (último registro del día) de cada zona. Requiere permiso read o count.
| Parámetro | Tipo | Descripción |
|---|---|---|
ubicacion_id | string | Opcional Filtrar por ubicación |
curl -H "X-API-Key: TU_API_KEY" \ "https://espacios.fitmetrics.es/api.php?action=count_status"
▶ Probar endpoint
🔐 Gestión de API Keys
Endpoints para crear y gestionar claves de API. Estos endpoints se usan desde el panel de administración.
| Campo (body JSON) | Tipo | Descripción |
|---|---|---|
network_id | string | REQUERIDO ID de la red |
nombre | string | REQUERIDO Nombre descriptivo |
descripcion | string | Opcional |
permisos | array | Opcional ["read","write","count"] — default: ["read","count"] |
curl -X POST -H "Content-Type: application/json" \
-d '{"network_id":"enjoy","nombre":"Sensor Entrada","permisos":["read","count"]}' \
"https://espacios.fitmetrics.es/api.php?action=api_keys_create"Devuelve las keys de una red. Las keys se muestran enmascaradas por seguridad.
curl "https://espacios.fitmetrics.es/api.php?action=api_keys_list&network=enjoy"
📡 Dispositivos
Seguimiento del estado de dispositivos conectados (sensores, cámaras).
Los dispositivos pueden enviar heartbeats periódicos para monitoreo de estado.
curl -X POST -H "X-API-Key: TU_API_KEY" \
-H "Content-Type: application/json" \
-d '{"device_id":"cam-entrada-01","status":"online","metadata":{"temp":42,"uptime":86400}}' \
"https://espacios.fitmetrics.es/api.php?action=device_heartbeat"curl -H "X-API-Key: TU_API_KEY" \ "https://espacios.fitmetrics.es/api.php?action=devices_list"
▶ Probar endpoint
⚠️ Códigos de Error
| Código | Significado | Descripción |
|---|---|---|
400 | Bad Request | Faltan parámetros requeridos o JSON inválido |
401 | Unauthorized | API Key no proporcionada o inactiva |
403 | Forbidden | La API Key no tiene los permisos necesarios |
404 | Not Found | Red, zona o recurso no encontrado |
Todas las respuestas de error incluyen un campo "error" con un mensaje descriptivo:
{"error": "API key required with read permission"}
Permisos por endpoint
| Endpoint | Permiso requerido |
|---|---|
| get_ubicaciones, get_espacios, get_zonas, get_registros, get_kpis, get_estructura, get_horarios, get_resumen | read |
| count, count_batch | count o write |
| count_status | read o count |
| api_keys_* | Sin autenticación (gestión desde panel admin) |