Eliminar usuarios de proyectos o empresas utilizando la API de Blue.
Eliminar Usuarios
Esta página cubre cómo eliminar usuarios de proyectos y empresas. La eliminación de usuarios es una acción permanente que desasigna al usuario de todos los registros y elimina su acceso, aunque sus datos históricos se conservan para fines de auditoría.
Eliminar Usuario de Proyecto
Elimina un usuario de un proyecto específico mientras mantiene su acceso a la empresa.
Ejemplo Básico
mutation {
removeProjectUser(
input: {
projectId: "project-id"
userId: "user-id"
}
) {
success
operationId
}
}
Ejemplo de Respuesta
{
"data": {
"removeProjectUser": {
"success": true,
"operationId": null
}
}
}
Nota: El campo operationId
actualmente no está poblado por esta mutación y devolverá null
.
Eliminar Usuario de Empresa
Elimina un usuario de toda la empresa, lo que se propaga a todos los proyectos.
Ejemplo Básico
mutation {
removeCompanyUser(
input: {
companyId: "company-id"
userId: "user-id"
}
)
}
Ejemplo de Respuesta
{
"data": {
"removeCompanyUser": true
}
}
Parámetros de Entrada
RemoveProjectUserInput
Parámetro | Tipo | Requerido | Descripción |
---|---|---|---|
projectId |
String! | ✅ Sí | El ID del proyecto (no slug) |
userId |
String! | ✅ Sí | El ID del usuario a eliminar |
RemoveCompanyUserInput
Parámetro | Tipo | Requerido | Descripción |
---|---|---|---|
companyId |
String! | ✅ Sí | El ID o slug de la empresa |
userId |
String! | ✅ Sí | El ID del usuario a eliminar |
Campos de Respuesta
Respuesta RemoveProjectUser
Campo | Tipo | Descripción |
---|---|---|
success |
Boolean! | Si la operación fue exitosa |
operationId |
String | Identificador único para la operación (actualmente devuelve null ) |
Respuesta RemoveCompanyUser
La mutación removeCompanyUser
devuelve un simple valor Boolean
:
true
- El usuario fue eliminado con éxito
Permisos Requeridos
Eliminación de Usuario de Proyecto
Rol | Puede Eliminar Usuarios |
---|---|
OWNER |
✅ Sí |
ADMIN |
✅ Sí |
MEMBER |
❌ No |
READ_ONLY |
❌ No |
Notas Importantes:
- No puedes eliminar usuarios con rol
OWNER
de un proyecto - El sistema impide la eliminación de propietarios de proyectos para mantener la integridad de la propiedad del proyecto
Eliminación de Usuario de Empresa
Rol | Puede Eliminar Usuarios |
---|---|
OWNER |
✅ Sí |
ADMIN |
❌ No |
MEMBER |
❌ No |
READ_ONLY |
❌ No |
Nota: Solo los propietarios de la empresa pueden eliminar usuarios de la empresa. El resolver aplica un acceso estricto solo para PROPIETARIOS en las operaciones de eliminación de usuarios de la empresa.
Efectos Secundarios
Eliminación de Proyecto
- Elimina todas las asignaciones de tareas para el usuario en ese proyecto
- Elimina las carpetas del proyecto del usuario
- Elimina la relación de usuario del proyecto
- Envía actualizaciones en tiempo real para notificar a otros usuarios
- Crea una entrada en el registro de auditoría
Eliminación de Empresa
- Eliminación en cascada a través de todos los proyectos:
- Elimina todas las asignaciones de tareas en todos los proyectos de la empresa
- Elimina todas las carpetas de usuarios del proyecto
- Elimina al usuario de todos los proyectos de la empresa
- Elimina las carpetas de usuarios de la empresa
- Elimina al usuario de la empresa
- Envía un correo electrónico de notificación de eliminación al usuario eliminado
- Actualiza la facturación (si el precio es por usuario):
- Recalcula la cantidad de usuarios activos
- Actualiza la cantidad de suscripción de Stripe
- Crea una entrada en el registro de auditoría
Respuestas de Error
Proyecto No Encontrado
{
"errors": [{
"message": "Project was not found.",
"extensions": {
"code": "PROJECT_NOT_FOUND"
}
}]
}
Usuario No Encontrado
{
"errors": [{
"message": "User was not found.",
"extensions": {
"code": "USER_NOT_FOUND"
}
}]
}
Error No Autorizado
{
"errors": [{
"message": "You are not authorized.",
"extensions": {
"code": "FORBIDDEN"
}
}]
}
Empresa No Encontrada (removeCompanyUser solo)
{
"errors": [{
"message": "Company was not found.",
"extensions": {
"code": "COMPANY_NOT_FOUND"
}
}]
}
Este error ocurre cuando:
- Careces del rol requerido (PROPIETARIO/ADMIN para proyectos, PROPIETARIO para la empresa)
- Intentas eliminar a un PROPIETARIO de proyecto
- El usuario no forma parte del proyecto/empresa
Consideraciones Importantes
- Preservación de Datos: La eliminación de usuarios no es reversible. Mientras el usuario pierde el acceso, sus datos históricos (comentarios, registros de actividad, etc.) se conservan para fines de auditoría.
- Protección de Propietarios: Los propietarios de proyectos no pueden ser eliminados de los proyectos. Transfiere la propiedad primero si es necesario.
- Impacto en la Facturación: La eliminación de usuarios de la empresa actualiza automáticamente tu suscripción si estás en un precio por usuario.
- Notificación por Correo Electrónico: La eliminación de la empresa envía un correo electrónico de notificación al usuario eliminado.
- Efecto Cascada: La eliminación de la empresa afecta a todos los proyectos, mientras que la eliminación de proyectos está aislada a ese proyecto específico.
Operaciones Relacionadas
- Listar Usuarios - Ver usuarios antes de la eliminación
- Recuperar Rol Personalizado - Verificar permisos de usuario
- Crear Proyecto - Agregar usuarios a nuevos proyectos