Fitly Public API

Documentación completa de la API pública para gestión de entrenamientos personales.

Autenticación

Todos los endpoints requieren autenticación mediante API Key. Incluye tu API Key en el header Authorization como: Bearer pk_YOUR_API_KEY

Base URL

/api/public/v1

Formato

JSON (application/json)

Rate Limit

1000 requests/hour

Recursos Disponibles

👤 Clientes

Gestión completa de clientes (CRUD)

/clients, /clients/:id

💪 Ejercicios

Librería de ejercicios (global, empresa, personal)

/exercises, /exercises/:id

📅 Entrenamientos

Entrenamientos asignados por fecha

/workouts, /workouts/:id

📊 Resultados

Resultados de ejercicios completados

/results, /results/:id

📋 Plantillas

Plantillas reutilizables de entrenamientos

/templates, /templates/:id

🏢 Empresas

Gestión de empresas (admin/gestor)

/companies, /companies/:id

🏷️ Tipos de clase

Catálogo de tipos por empresa (Yoga, CrossFit, Spinning...).

/class-types, /class-types/:id

📆 Clases

Plantillas de clase (recurrentes o puntuales) con docente, cupo y ventanas de reserva.

/classes, /classes/:id

🗓️ Ocurrencias

Instancias materializadas en fechas concretas con contadores de cupo y lista de espera.

/class-instances, /class-instances/:id

🎟️ Reservas

Reservar plaza, lista de espera, cancelar (con devolución de crédito si se cancela dentro de plazo).

/class-instances/:id/bookings, /class-bookings/mine, /class-bookings/:id

Control de Permisos por Rol

RolDescripciónAcceso Principal
adminAdministrador del sistemaAcceso total a todas las entidades y empresas
gestorGestor de empresaGestiona su empresa, entrenadores y clientes
entrenadorEntrenadorGestiona sus clientes, plantillas y ejercicios
clienteClienteVe sus entrenamientos y añade resultados
personal-trainerEntrenador personal independienteCombina gestor + entrenador para su empresa
autoentrenadorCliente que se entrena a sí mismoCrea y gestiona sus propios entrenamientos