Overview
Roles group permissions together and can be assigned to users. This provides a centralized way to manage access control across your organization.
List Roles
Retrieve all available roles.
Endpoint
Response
Success message: “Roles recuperados”
Example Request
curl -X GET http://localhost:8081/comialex/api/integra/roles \
-H "Authorization: Bearer YOUR_JWT_TOKEN"
Example Response
{
"data": [
{
"id": 1,
"nombre": "Administrador",
"descripcion": "Acceso completo al sistema"
},
{
"id": 2,
"nombre": "Supervisor",
"descripcion": "Gestión de empleados y reportes"
},
{
"id": 3,
"nombre": "Empleado",
"descripcion": "Acceso básico para registro de asistencia"
}
],
"message": "Roles recuperados",
"success": true
}
Create Role
Create a new role.
Endpoint
Request Body
Response
The newly created role object
Success message: “Rol agregado”
Example Request
curl -X POST http://localhost:8081/comialex/api/integra/roles \
-H "Authorization: Bearer YOUR_JWT_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"nombre": "Gerente de RH",
"descripcion": "Gestión completa de recursos humanos"
}'
Example Response
{
"data": {
"id": 4,
"nombre": "Gerente de RH",
"descripcion": "Gestión completa de recursos humanos"
},
"message": "Rol agregado",
"success": true
}
Get Role with Permissions
Retrieve a role along with its assigned permissions.
Endpoint
Path Parameters
Response
Show Role with Permissions
Array of permission objects or identifiers
Success message: “Rol con permisos”
Example Request
curl -X GET http://localhost:8081/comialex/api/integra/roles/1/permisos \
-H "Authorization: Bearer YOUR_JWT_TOKEN"
Example Response
{
"data": {
"id": 1,
"nombre": "Administrador",
"descripcion": "Acceso completo al sistema",
"permisos": [
{
"id": 1,
"codigo": "asistencia.ver",
"nombre": "Ver asistencias"
},
{
"id": 2,
"codigo": "asistencia.registrar",
"nombre": "Registrar asistencias"
},
{
"id": 3,
"codigo": "empleados.ver",
"nombre": "Ver empleados"
}
]
},
"message": "Rol con permisos",
"success": true
}
Update Role
Update role details (name and description).
Endpoint
Request Body
Response
No data returned on success
Success message: “Rol actualizado”
Example Request
curl -X PATCH http://localhost:8081/comialex/api/integra/roles/actualizar \
-H "Authorization: Bearer YOUR_JWT_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"id": 4,
"nombre": "Gerente de Recursos Humanos",
"descripcion": "Gestión completa de RH y nómina"
}'
Update Role Permissions
Update the permissions assigned to a role.
Endpoint
Request Body
Array of permission IDs or codes to assign to this role
Response
No data returned on success
Success message: “Permisos actualizados”
Example Request
curl -X PUT http://localhost:8081/comialex/api/integra/roles/permisos \
-H "Authorization: Bearer YOUR_JWT_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"rolId": 4,
"permisos": [1, 2, 3, 5, 7]
}'
Updating role permissions affects all users assigned to that role. Changes take effect on their next authentication or token refresh.
Delete Role
Delete a role from the system.
Endpoint
Path Parameters
Response
Success message: “Rol eliminado”
Example Request
curl -X DELETE http://localhost:8081/comialex/api/integra/roles/4 \
-H "Authorization: Bearer YOUR_JWT_TOKEN"
Deleting a role that is assigned to users may cause access issues. Ensure users are reassigned to other roles before deletion.