So archivieren und dearchivieren Sie Projekte in Blue.
Ein Projekt archivieren
Das Archivieren von Projekten ist nützlich, wenn Sie ein Projekt vorübergehend ausblenden möchten, ohne es dauerhaft zu löschen. Archivierte Projekte:
- Sind aus aktiven Projektlisten ausgeblendet
- Können nicht bearbeitet oder verändert werden
- Können weiterhin von Projektmitgliedern eingesehen werden
- Können jederzeit dearchiviert werden
Einfaches Beispiel
mutation {
archiveProject(id: "project-123")
}
Verwendung des Projektkontext-Headers
# With header: x-bloo-project-id: project-123
mutation {
archiveProject
}
Mit Variablen
mutation ArchiveProject($projectId: String!) {
archiveProject(id: $projectId)
}
Variablen:
{
"projectId": "abc123-project-id"
}
Ein Projekt dearchivieren
Um ein archiviertes Projekt wieder in den aktiven Status zu versetzen:
mutation {
unarchiveProject(id: "project-123")
}
Mutationsparameter
archiveProject
Parameter | Typ | Erforderlich | Beschreibung |
---|---|---|---|
id |
String | Nein | Die Projekt-ID, die archiviert werden soll. Wenn nicht angegeben, wird das Projekt aus den Kontext-Headern verwendet. |
unarchiveProject
Parameter | Typ | Erforderlich | Beschreibung |
---|---|---|---|
id |
String | Nein | Die Projekt-ID, die dearchiviert werden soll. Wenn nicht angegeben, wird das Projekt aus den Kontext-Headern verwendet. |
Antwort
Beide Mutationen geben einen Boolean zurück, der den Erfolg anzeigt:
Feld | Typ | Beschreibung |
---|---|---|
Boolean |
Boolean! | Gibt true zurück, wenn die Operation erfolgreich ist |
Erforderliche Berechtigungen
Projektrolle | Kann archivieren/dearchivieren |
---|---|
OWNER |
✅ Ja |
ADMIN |
✅ Ja |
MEMBER |
❌ Nein |
CLIENT |
❌ Nein |
COMMENT_ONLY |
❌ Nein |
VIEW_ONLY |
❌ Nein |
Projekt-ID-Auflösung
Die Projekt-ID kann auf zwei Arten angegeben werden:
-
Als Parameter (empfohlen):
archiveProject(id: "project-123")
-
Über den HTTP-Header:
x-bloo-project-id: project-123
(bevorzugt)x-project-id: project-123
(veraltet)
Wenn beide angegeben sind, hat der Parameter Vorrang.
Fehlermeldungen
Projekt nicht gefunden
{
"errors": [{
"message": "Project was not found.",
"extensions": {
"code": "PROJECT_NOT_FOUND"
}
}]
}
Unzureichende Berechtigungen
{
"errors": [{
"message": "You don't have permission to archive this project",
"extensions": {
"code": "UNAUTHORIZED"
}
}]
}
Was passiert beim Archivieren
Wenn Sie ein Projekt archivieren:
- Projektstatus: Das Projekt wird als archiviert markiert
- Sichtbarkeit: Aus aktiven Projektlisten ausgeblendet
- Vorlagen: Wenn das Projekt eine Vorlage war, verliert es den Vorlagenstatus
- Position: An das Ende der Projektliste des Benutzers verschoben
- Ordner: Aus allen Projektordnern entfernt
- Aktivitätsprotokoll: Archivierungsaktion wird aufgezeichnet
- Echtzeit-Updates: Alle verbundenen Benutzer werden benachrichtigt
Wichtige Hinweise
- Idempotente Operation: Das Archivieren eines bereits archivierten Projekts gibt
true
ohne Änderungen zurück - Rückgängig: Verwenden Sie
unarchiveProject
, um das Projekt wiederherzustellen - Zugriffsrechte: Archivierte Projekte bleiben für bestehende Mitglieder einsehbar
- Kein Datenverlust: Das Archivieren bewahrt alle Projektdaten, im Gegensatz zur Löschung
- Alternative zur Löschung: Ziehen Sie in Betracht, Projekte anstelle von Löschungen vorübergehend zu archivieren