Zum Inhalt springen

Was Löschen wirklich bedeutet, je Ressource

„Löschen” bedeutet in der RealityConnect API je nach Ressource etwas anderes. Manche Ressourcen landen in einem wiederherstellbaren Papierkorb, die meisten werden endgültig entfernt. Diese Seite ist die Referenz je Ressource für die Planung von Bereinigungs- oder Sync-Abgleichlogik.


RessourceLöschenWiederherstellenEndgültig entfernen
Datenknoten (Division, Site, Ordner, Twin, Projekt, Data Bundle, Asset Library usw.)Soft (wandert in den Papierkorb)PATCH /v1/nodes/{nodeId}/restoreAutomatisch 30 Tage nach dem Löschen, oder sofort über DELETE /v1/nodes/{nodeId}/hard
POIHardNicht verfügbarSofort
ZoneHardNicht verfügbarSofort
Box assetHardNicht verfügbarSofort
Model asset (RealityPlan)HardNicht verfügbarSofort
Asset-Library-ModellHard (blockiert, solange ein Asset noch darauf verweist)Nicht verfügbarSofort nach Freigabe
Asset-Library-TagHardNicht verfügbarSofort
GruppeHardNicht verfügbarSofort
GruppenmitgliedschaftHardNicht verfügbarSofort
Einladung (Organisation oder Knoten)Hard (widerrufen)Nicht verfügbarSofort
Objekt-AnhangHard (entfernt nur die gespeicherte Datei)Nicht verfügbarSofort

Nur Datenknoten haben einen Papierkorb. Jede andere Ressource in dieser Tabelle ist sofort weg, sobald der Löschaufruf erfolgreich war, ohne serverseitige Wiederherstellungsmöglichkeit.

DELETE /v1/nodes/{nodeId} löscht einen Knoten weich: Er wandert in den Papierkorb der Organisation, statt entfernt zu werden. Ein Knoten im Papierkorb:

  • Wird von GET /v1/trash gelistet (paginiert, sortierbar nach deletedAt oder name).
  • Kann mit PATCH /v1/nodes/{nodeId}/restore wiederhergestellt werden, was mit 409 StorageLimitExceeded fehlschlagen kann, falls die Wiederherstellung das Speicherkontingent der Organisation überschreiten würde.
  • Wird mit DELETE /v1/nodes/{nodeId}/hard endgültig entfernt, oder automatisch 30 Tage nachdem er in den Papierkorb verschoben wurde.

Sowohl Wiederherstellen als auch endgültiges Löschen geben 409 NoNodeRemoved zurück, wenn sich der Knoten gerade nicht im Papierkorb befindet; das gilt auch für eine Knoten-ID, die nie gelöscht wurde, und für eine, die bereits endgültig gelöscht oder automatisch entfernt wurde.

Das endgültige Löschen eines Knotens entfernt außerdem dessen im Papierkorb befindliche Nachfahren sowie alle Ableitungs-Einträge, die Knoten in diesem Teilbaum betreffen. Knoten außerhalb des Teilbaums, die zufällig von etwas darin abgeleitet sind, bleiben unberührt.

DELETE /v1/nodes/{nodeId} kann aus drei Gründen mit 409 Conflict abgelehnt werden:

CodeBedeutungMit ?force=true umgehbar?
NodeHasDerivativesDer Knoten hat abgeleitete Ausgaben (z. B. verarbeitete Ergebnisse), die zuerst entfernt werden müssen. Die Antwort listet in derivatives[] genau, welche Knoten blockieren.Nein
NodeHasBundleDependantsDas Data Bundle des Knotens hat abhängige Objekte.Nein
NodeNotInDeletableStateDer Knoten wird gerade verarbeitet, oder die Verarbeitung ist fehlgeschlagen (isProcessing / isFailed).Ja

force=true (ein Query-String, exakt "true" oder "false") umgeht ausschließlich NodeNotInDeletableState. Ein Knoten mit abgeleiteten Objekten oder Bundle-Abhängigkeiten muss zuerst bereinigt werden; dafür gibt es kein Override. Siehe Fehlercodes für das vollständige Antwortformat und die empfohlene Behandlung.

Asset-Library-Modelle haben eine eigene, einfachere Variante dieser Sperre: DELETE /v1/asset-library/{ownerContextId}/models/{libraryModelId} gibt 409 Conflict zurück, solange noch ein Asset auf das Modell verweist. Sobald der letzte Verweis entfernt ist, ist das Löschen eine harte, nicht wiederherstellbare Entfernung, kein Soft-Delete wie bei einem Knoten.

Ein soft-gelöschter Knoten fällt sofort und ausnahmslos aus GET /v1/nodes/{id}/browse und GET /v1/nodes/search heraus: keiner der beiden Endpunkte hat einen Parameter, um Knoten im Papierkorb einzuschließen. Der einzige Weg, einen Knoten im Papierkorb zu sehen, ist GET /v1/trash; erst die Wiederherstellung macht ihn wieder durchsuch- und auffindbar.

Wie die Knotenhierarchie und die Suche selbst funktionieren, steht unter Knotentypen und Hierarchie und Business-Objekte und Knoten durchsuchen.

  • Fehlercodes für die vollständige Liste der benannten Fehlercodes, einschließlich aller auf dieser Seite referenzierten.
  • Was contextId akzeptiert zur Auflösung der contextId, mit der POIs, Zonen, Assets und Anhänge adressiert werden.