Cómo archivar y desarchivar proyectos en Blue.
Archivar un Proyecto
Archivar proyectos es útil cuando deseas ocultar temporalmente un proyecto sin eliminarlo permanentemente. Los proyectos archivados:
- Están ocultos de las listas de proyectos activos
- No pueden ser editados o modificados
- Aún pueden ser vistos por los miembros del proyecto
- Pueden ser desarchivados en cualquier momento
Ejemplo Básico
mutation {
archiveProject(id: "project-123")
}
Usando el Encabezado de Contexto del Proyecto
# With header: x-bloo-project-id: project-123
mutation {
archiveProject
}
Con Variables
mutation ArchiveProject($projectId: String!) {
archiveProject(id: $projectId)
}
Variables:
{
"projectId": "abc123-project-id"
}
Desarchivar un Proyecto
Para restaurar un proyecto archivado a estado activo:
mutation {
unarchiveProject(id: "project-123")
}
Parámetros de Mutación
archiveProject
Parámetro | Tipo | Requerido | Descripción |
---|---|---|---|
id |
String | No | El ID del proyecto a archivar. Si no se proporciona, utiliza el proyecto de los encabezados de contexto. |
unarchiveProject
Parámetro | Tipo | Requerido | Descripción |
---|---|---|---|
id |
String | No | El ID del proyecto a desarchivar. Si no se proporciona, utiliza el proyecto de los encabezados de contexto. |
Respuesta
Ambas mutaciones devuelven un Booleano que indica éxito:
Campo | Tipo | Descripción |
---|---|---|
Boolean |
Boolean! | Devuelve true cuando la operación es exitosa |
Permisos Requeridos
Rol del Proyecto | Puede Archivar/Desarchivar |
---|---|
OWNER |
✅ Sí |
ADMIN |
✅ Sí |
MEMBER |
❌ No |
CLIENT |
❌ No |
COMMENT_ONLY |
❌ No |
VIEW_ONLY |
❌ No |
Resolución del ID del Proyecto
El ID del proyecto se puede especificar de dos maneras:
-
Como un parámetro (recomendado):
archiveProject(id: "project-123")
-
A través del encabezado HTTP:
x-bloo-project-id: project-123
(preferido)x-project-id: project-123
(obsoleto)
Si ambos son proporcionados, el parámetro tiene prioridad.
Respuestas de Error
Proyecto No Encontrado
{
"errors": [{
"message": "Project was not found.",
"extensions": {
"code": "PROJECT_NOT_FOUND"
}
}]
}
Permisos Insuficientes
{
"errors": [{
"message": "You don't have permission to archive this project",
"extensions": {
"code": "UNAUTHORIZED"
}
}]
}
Qué Ocurre Al Archivar
Cuando archivas un proyecto:
- Estado del Proyecto: El proyecto se marca como archivado
- Visibilidad: Oculto de las listas de proyectos activos
- Plantillas: Si el proyecto era una plantilla, pierde el estado de plantilla
- Posición: Se mueve al final de la lista de proyectos del usuario
- Carpetas: Se elimina de cualquier carpeta de proyectos
- Registro de Actividad: La acción de archivado se registra
- Actualizaciones en Tiempo Real: Todos los usuarios conectados son notificados
Notas Importantes
- Operación Idempotente: Archivar un proyecto ya archivado devuelve
true
sin cambios - Reversible: Usa
unarchiveProject
para restaurar el proyecto - Acceso de Visualización: Los proyectos archivados siguen siendo visibles para los miembros existentes
- Sin Pérdida de Datos: Archivar preserva todos los datos del proyecto, a diferencia de la eliminación
- Alternativa a la Eliminación: Considera archivar en lugar de eliminar para una eliminación temporal