Deleting data from COmanage Registry turns out to be a surprisingly complicated issue. To start, it is first necessary to understand different types of delete operations.
- Deactivation: A deactivated record is still visible, it is just no longer in effect. For example, setting a CO Person or CO Person Role to expired or suspended will leave the record in place, but it will be deprovisioned from downstream systems. A deactivated record can easily be reactivated.
- Soft Delete: When a record is soft deleted, it is no longer visible. However, the physical record remains in the database, and the record can even be undeleted.
- Hard Delete: When a record is hard deleted, it is no longer visible, and the physical record is also removed from the database. The only way to restore a record that has been hard deleted is from backups. (You are maintaining backups of your database, right?)
Deactivation is currently supported in various places through Registry. Adjust the relevant records status to Suspended, Expired, or another appropriate value and the record will be deactivated.
As of v0.9.4, many (but not all) Delete operations are now Soft Deletes. (No undelete is currently available; CO-1104.) These are largely around People attributes, but also those involving Enrollment Flows and Enrollment Attributes. Future planned changes will introduce more Soft Delete capabilities (CO-95), including for Groups and configurations.
Note that Expunge is and will remain a Hard Delete operation, as is deleting a CO.