Como arquivar e desarquivar projetos no Blue.
Arquivar um Projeto
Arquivar projetos é útil quando você deseja ocultar temporariamente um projeto sem excluí-lo permanentemente. Projetos arquivados:
- Estão ocultos das listas de projetos ativos
- Não podem ser editados ou modificados
- Podem ser visualizados pelos membros do projeto
- Podem ser desarquivados a qualquer momento
Exemplo Básico
mutation {
archiveProject(id: "project-123")
}
Usando o Cabeçalho de Contexto do Projeto
# With header: x-bloo-project-id: project-123
mutation {
archiveProject
}
Com Variáveis
mutation ArchiveProject($projectId: String!) {
archiveProject(id: $projectId)
}
Variáveis:
{
"projectId": "abc123-project-id"
}
Desarquivar um Projeto
Para restaurar um projeto arquivado para o status ativo:
mutation {
unarchiveProject(id: "project-123")
}
Parâmetros da Mutação
archiveProject
Parâmetro | Tipo | Obrigatório | Descrição |
---|---|---|---|
id |
String | Não | O ID do projeto a ser arquivado. Se não fornecido, usa o projeto dos cabeçalhos de contexto. |
unarchiveProject
Parâmetro | Tipo | Obrigatório | Descrição |
---|---|---|---|
id |
String | Não | O ID do projeto a ser desarquivado. Se não fornecido, usa o projeto dos cabeçalhos de contexto. |
Resposta
Ambas as mutações retornam um Booleano indicando sucesso:
Campo | Tipo | Descrição |
---|---|---|
Boolean |
Boolean! | Retorna true quando a operação é bem-sucedida |
Permissões Necessárias
Papel do Projeto | Pode Arquivar/Desarquivar |
---|---|
OWNER |
✅ Sim |
ADMIN |
✅ Sim |
MEMBER |
❌ Não |
CLIENT |
❌ Não |
COMMENT_ONLY |
❌ Não |
VIEW_ONLY |
❌ Não |
Resolução do ID do Projeto
O ID do projeto pode ser especificado de duas maneiras:
-
Como um parâmetro (recomendado):
archiveProject(id: "project-123")
-
Via cabeçalho HTTP:
x-bloo-project-id: project-123
(preferido)x-project-id: project-123
(obsoleto)
Se ambos forem fornecidos, o parâmetro tem precedência.
Respostas de Erro
Projeto Não Encontrado
{
"errors": [{
"message": "Project was not found.",
"extensions": {
"code": "PROJECT_NOT_FOUND"
}
}]
}
Permissões Insuficientes
{
"errors": [{
"message": "You don't have permission to archive this project",
"extensions": {
"code": "UNAUTHORIZED"
}
}]
}
O Que Acontece Ao Arquivar
Quando você arquiva um projeto:
- Status do Projeto: O projeto é marcado como arquivado
- Visibilidade: Oculto das listas de projetos ativos
- Modelos: Se o projeto era um modelo, perde o status de modelo
- Posição: Movido para o final da lista de projetos do usuário
- Pastas: Removido de quaisquer pastas de projetos
- Registro de Atividades: Ação de arquivamento é registrada
- Atualizações em Tempo Real: Todos os usuários conectados são notificados
Notas Importantes
- Operação Idempotente: Arquivar um projeto já arquivado retorna
true
sem alterações - Reversível: Use
unarchiveProject
para restaurar o projeto - Acesso de Visualização: Projetos arquivados permanecem visíveis para membros existentes
- Sem Perda de Dados: Arquivar preserva todos os dados do projeto, ao contrário da exclusão
- Alternativa à Exclusão: Considere arquivar em vez de excluir para remoção temporária