Tenants are the operational units of UniEvents. Each tenant represents a faculty, department, or student organization within a university and operates as an isolated environment with its own spaces, events, users, and event managers. Categories provide a cross-cutting taxonomy that groups tenants by discipline — making it easy for end-users to browse by area of interest.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/Edfermachado/proyectoSistemas/llms.txt
Use this file to discover all available pages before exploring further.
What Is a Tenant?
A tenant corresponds to a single faculty or student organization. ItstenantId is embedded in the JWT session for every tenant_admin, event_manager, and access_control account associated with it, ensuring complete data isolation at the row level.
| Field | Details |
|---|---|
name | Display name of the faculty. Must be unique across the platform. |
slug | Auto-generated URL identifier — never set manually. |
description | Optional description shown on the faculty’s public page. |
universityId | References the parent university (nullable — a tenant can exist without a university). |
categoryId | References a category used to classify the tenant (e.g., “Ingeniería”, “Deportes”). |
Creating a Tenant
Open the Tenants list
Navigate to
/admin/tenants. If no tenants exist, an empty state is shown with an Add Faculty button.Click Nueva Facultad
Click the Nueva Facultad button in the top-right corner. This navigates to
/admin/tenants/new.Fill in the form
- Name (required, unique) — the official faculty or organization name.
- Description (optional) — a short summary.
- University (optional) — select the parent university from the dropdown.
- Category (optional) — select the disciplinary category (must exist before creating the tenant).
API — Create a Tenant
201 Created:
Editing and Deleting Tenants
Editing
Navigate to/admin/tenants/[id]/edit or click the edit icon on the tenants table. The PUT endpoint accepts partial updates for name, description, and categoryId. The slug is regenerated if the name changes.
200 OK — returns the updated tenant object.
Deleting
Click the delete icon in the tenants table. TheDELETE endpoint returns 204 No Content on success.
Tenant Isolation
Every resource (spaces, events, attendees, scan logs) is scoped to atenantId. When a tenant_admin logs in, the tenantId is written into the JWT cookie by createSession. All subsequent API calls in the faculty-admin portal read session.tenantId to filter data — no cross-tenant data is ever exposed.
The
tenantId field is null for superadmin accounts because they operate across all tenants globally.Managing Categories
Categories classify tenants so end-users can filter faculties and events by discipline. Navigate to/admin/categories to view, create, and delete categories.
| Field | Details |
|---|---|
name | Category label (e.g., “Ingeniería”, “Medicina”, “Deportes”). Must be unique. |
slug | Auto-generated from the name. |
icon | A Google Material Symbols icon name rendered as <span class="material-symbols-outlined">{icon}</span>. |
Creating a Category
Click Nueva Categoría
Click the Nueva Categoría button to open the creation form at
/admin/categories/new.200 OK:
Deleting a Category
{ "success": true } on success.