| Health |
| GET |
/ping |
Público |
Health check — retorna { "message": "Pong!" } |
| Auth — /auth |
| POST |
/auth/google |
Público |
Registro / login con Google OAuth |
| POST |
/auth/manual |
Público |
Envía un Magic Link por email (passwordless) |
| GET |
/auth/verify-magic-link |
Público |
Verifica el token del Magic Link y completa el login |
| GET |
/auth/me |
Autenticado |
Devuelve los datos de la sesión actual |
| POST |
/auth/logout |
Público |
Cierra la sesión actual |
| User — /user |
| GET |
/user/dashboard |
Autenticado |
Datos agregados del dashboard del usuario |
| PUT |
/user/profile |
Autenticado |
Actualiza perfil y preferencias de notificación |
| POST |
/user/membership/cancel |
Autenticado |
Cancela la membresía activa |
| POST |
/user/membership/upgrade |
Autenticado |
Upgrade de plan de membresía |
| POST |
/user/request-deletion |
Autenticado |
Solicita el código de eliminación de cuenta |
| POST |
/user/confirm-deletion |
Autenticado |
Confirma y ejecuta la eliminación de cuenta |
| PATCH |
/user/notifications/:id/read |
Autenticado |
Marca una notificación como leída |
| GET |
/user/vip/status |
Autenticado |
Estado de la solicitud / acceso VIP |
| POST |
/user/vip/request |
Autenticado |
Envía documentación para solicitar acceso VIP (multipart) |
| GET |
/user/admin/vip-requests |
Manager |
Listado de solicitudes VIP pendientes (módulo Masajes) |
| POST |
/user/admin/vip-review |
Manager |
Aprueba o rechaza una solicitud VIP (módulo Masajes) |
| Payments — /payments |
| GET |
/payments/plans |
Público |
Lista los planes de membresía disponibles |
| GET |
/payments/status |
Autenticado |
Estado del pago / membresía actual del usuario |
| POST |
/payments/create-preference |
Autenticado |
Crea una preferencia de pago en MercadoPago |
| POST |
/payments/transfer |
Autenticado |
Sube comprobante de transferencia (multipart) |
| POST |
/payments/webhook |
Webhook |
Recibe notificaciones IPN de MercadoPago |
| POST |
/payments/transfer/:id/approve |
Owner |
Aprueba una transferencia de membresía (legacy — usar /admin/transfers) |
| Reservations — /reservations |
| GET |
/reservations/schedule |
Público |
Horario semanal de clases (leído desde DB) |
| GET |
/reservations/masaje/booked-slots |
Público |
Slots ocupados para reservar masajes |
| POST |
/reservations/masaje |
Público |
Reserva un masaje (auto-registra al usuario si hace falta) |
| POST |
/reservations/masaje/:id/receipt |
Público |
Sube comprobante de pago de un masaje |
| POST |
/reservations/evento |
Público |
Inscribe a un evento o retiro |
| POST |
/reservations/evento/:id/receipt |
Público |
Sube comprobante de pago de un evento |
| POST |
/reservations/enroll |
Autenticado |
Inscribe al usuario en una o varias clases del ciclo |
| GET |
/reservations/my-classes |
Autenticado |
Clases en las que está inscripto el usuario |
| GET |
/reservations/check-subscription |
Público |
Verifica si un email tiene membresía activa (biblioteca) |
| POST |
/reservations/:id/approve |
Owner |
Aprueba una reserva con pago por transferencia (legacy) |
| Courses On Demand — /courses |
| GET |
/courses/active |
Público |
Lista los cursos on-demand activos |
| POST |
/courses/webhook |
Webhook |
Notificación de pago de cursos (MercadoPago) |
| GET |
/courses/:id/access |
Autenticado |
Verifica si el usuario tiene acceso al curso |
| GET |
/courses/:id/purchase-status |
Autenticado |
Estado de compra del curso para el usuario |
| POST |
/courses/:id/progress |
Autenticado |
Marca progreso de una lección (idempotente) |
| POST |
/courses/:id/create-preference |
Autenticado |
Crea preferencia MP para comprar el curso |
| POST |
/courses/:id/transfer |
Autenticado |
Sube comprobante de transferencia para comprar el curso |
| GET |
/courses/admin/list |
Manager |
Listado de cursos (módulo Cursos) |
| GET |
/courses/admin/:id |
Manager |
Detalle completo de un curso (módulo Cursos) |
| POST |
/courses/admin |
Manager |
Crea un nuevo curso (módulo Cursos) |
| PUT |
/courses/admin/:id |
Manager |
Actualiza un curso (módulo Cursos) |
| DELETE |
/courses/admin/:id |
Manager |
Elimina un curso (módulo Cursos) |
| PUT |
/courses/admin/:id/activate |
Manager |
Marca un curso como activo (módulo Cursos) |
| POST |
/courses/admin/upload-image |
Manager |
Sube imagen del curso (módulo Cursos) |
| POST |
/courses/admin/upload-video |
Manager |
Sube video de una lección (módulo Cursos) |
| POST |
/courses/admin/transfer/:txId/approve |
Manager |
Aprueba una transferencia de curso (legacy — usar /admin/transfers) |
| Contenido público — /admin/public |
| GET |
/admin/public/eventos |
Público |
Eventos y retiros activos / pasados |
| GET |
/admin/public/formaciones |
Público |
Programas de formación publicados |
| GET |
/admin/public/faqs |
Público |
Preguntas frecuentes |
| GET |
/admin/public/testimonios |
Público |
Testimonios de alumnas |
| GET |
/admin/public/journal |
Público |
Documentos de la biblioteca |
| POST |
/admin/public/newsletter/subscribe |
Público |
Suscribe un email al newsletter |
| POST |
/admin/public/newsletter/unsubscribe |
Público |
Da de baja un email del newsletter |
| Gestión de Clases — /admin/clases |
| GET |
/admin/clases |
Manager |
Listado de clases (módulo Clases) |
| GET |
/admin/clases/stats |
Manager |
Estadísticas de inscripciones (módulo Clases) |
| POST |
/admin/clases |
Manager |
Crea una clase (módulo Clases) |
| PUT |
/admin/clases/:id |
Manager |
Actualiza una clase (módulo Clases) |
| DELETE |
/admin/clases/:id |
Manager |
Elimina una clase (módulo Clases) |
| GET |
/admin/clases/:id/enrolled |
Manager |
Inscriptas a una clase (módulo Clases) |
| POST |
/admin/clases/:id/email |
Manager |
Envía un email a las inscriptas (módulo Clases) |
| Eventos y Retiros — /admin/eventos |
| GET |
/admin/eventos |
Manager |
Listado de eventos (módulo Eventos) |
| POST |
/admin/eventos |
Manager |
Crea un evento (módulo Eventos) |
| POST |
/admin/eventos/upload-image |
Manager |
Sube imagen de un evento (módulo Eventos) |
| PUT |
/admin/eventos/:id |
Manager |
Actualiza un evento (módulo Eventos) |
| DELETE |
/admin/eventos/:id |
Manager |
Elimina un evento (módulo Eventos) |
| GET |
/admin/eventos/:id/enrolled |
Manager |
Inscriptas a un evento (módulo Eventos) |
| Formaciones — /admin/formaciones |
| GET |
/admin/formaciones |
Manager |
Listado de programas de formación (módulo Formaciones) |
| POST |
/admin/formaciones |
Manager |
Crea un programa (módulo Formaciones) |
| PUT |
/admin/formaciones/:id |
Manager |
Actualiza un programa (módulo Formaciones) |
| DELETE |
/admin/formaciones/:id |
Manager |
Elimina un programa (módulo Formaciones) |
| GET |
/admin/formaciones/:id/enrolled |
Manager |
Inscriptas en un programa (módulo Formaciones) |
| Contenido (FAQs / Testimonios / Biblioteca) — /admin |
| GET |
/admin/faqs |
Manager |
Listado de FAQs (módulo FAQs) |
| POST |
/admin/faqs |
Manager |
Crea una FAQ (módulo FAQs) |
| PUT |
/admin/faqs/:id |
Manager |
Actualiza una FAQ (módulo FAQs) |
| DELETE |
/admin/faqs/:id |
Manager |
Elimina una FAQ (módulo FAQs) |
| GET |
/admin/testimonios |
Manager |
Listado de testimonios (módulo Testimonios) |
| POST |
/admin/testimonios |
Manager |
Crea un testimonio (módulo Testimonios) |
| PUT |
/admin/testimonios/:id |
Manager |
Actualiza un testimonio (módulo Testimonios) |
| DELETE |
/admin/testimonios/:id |
Manager |
Elimina un testimonio (módulo Testimonios) |
| GET |
/admin/journal |
Manager |
Listado de documentos de biblioteca (módulo Biblioteca) |
| POST |
/admin/journal |
Manager |
Crea un documento (módulo Biblioteca) |
| POST |
/admin/journal/upload |
Manager |
Sube un archivo a la biblioteca (módulo Biblioteca) |
| PUT |
/admin/journal/:id |
Manager |
Actualiza un documento (módulo Biblioteca) |
| DELETE |
/admin/journal/:id |
Manager |
Elimina un documento (módulo Biblioteca) |
| Newsletter — /admin/newsletter |
| GET |
/admin/newsletter/subscribers |
Manager |
Listado de suscriptas (módulo Newsletter) |
| POST |
/admin/newsletter/add |
Manager |
Añade una suscripta manual (módulo Newsletter) |
| DELETE |
/admin/newsletter/:id |
Manager |
Elimina una suscripta (módulo Newsletter) |
| POST |
/admin/newsletter/send |
Manager |
Envía una campaña (módulo Newsletter) |
| Masajes — /admin/masajes |
| GET |
/admin/masajes/reservations |
Manager |
Listado de reservas de masaje (módulo Masajes) |
| PUT |
/admin/masajes/reservations/:id |
Manager |
Actualiza el estado de una reserva (módulo Masajes) |
| Transferencias — /admin/transfers |
| GET |
/admin/transfers?status=pending|approved|rejected|all |
Owner |
Lista unificada de pagos por transferencia (membresías, cursos y reservas) |
| POST |
/admin/transfers/:kind/:id/approve |
Owner |
Aprueba un pago manual y provisiona el acceso correspondiente (kind: membership, course, reservation) |
| POST |
/admin/transfers/:kind/:id/reject |
Owner |
Rechaza un pago manual y notifica a la usuaria (body opcional: { reason }) |
| Gestión de equipo — /admin/admins |
| GET |
/admin/admins |
Owner |
Listado del equipo del panel |
| GET |
/admin/admins/search-users |
Owner |
Busca usuarias para sumar al equipo |
| POST |
/admin/admins/set-role |
Owner |
Asigna o quita el rol de Manager |
| POST |
/admin/admins/set-permissions |
Owner |
Configura los módulos a los que accede una Manager |
| Upload — /admin/upload |
| POST |
/admin/upload?folder=... |
Manager |
Subida genérica de archivos a Cloudinary |