Skip to main content

Deleted records

It is possible to access previously deleted records in the "Deleted" section. Ended executions are automatically deleted after a configurable timeout and subsequently permanently deleted after a configurable timeout.

danger

If not configured otherwise, der default, ended executions will be deleted after 2 weeks. Deleted executions will remain deleted for another 2 weeks before being permanently deleted from the Cloudomation database.

Concept

Ended executions are automatically marked as deleted after a timeout. Manually deleting a record will mark it as deleted. Records which are marked as deleted can be restored. After a timeout deleted records are permanently deleted from the database.

deletedExecutionsExecutionsDeletedDeletedExecutions->Deletedauto expiryDeleted->Executionsmanual restoreRecordsRecordsDeleted->Recordsmanual restorePermanently\nDeletedPermanentlyDeletedDeleted->Permanently\nDeletedauto expiryDeleted->Permanently\nDeletedmanual permanent deleteRecords->Deletedmanual deleteRecords->Permanently\nDeletedmanual permanent delete

Configuration

The behaviour can be configured using the Workspace Configuration. Please refer to Trash bin for configuration options.

Deleting Records

info

Deleting a project will also delete all records of that project.

Via the User-Interface

Deleting Individual Records

Open the record and click on "Delete" in the "More Actions" popover.

The delete action in the more actions popover

The record will be moved to the "Deleted" secion.

Bulk-Delete many Records

Open the workspace dashboard, project dashboard, or execution live monitor. In the resoures list check the records and click on "Delete" in the "More Actions" popover.

The bulk-delete action in the more actions popover

The records will be moved to the "Deleted" section.

Via the Flow-API

Use the delete method on any record.

example

Delete a setting.

import flow_api

def handler(system: flow_api.System, this: flow_api.Execution):
system.setting('the-setting').delete()
return this.success('all done')

Via the REST-API

Make a HTTP DELETE request.

example

Delete a setting

curl -X DELETE https://your-workspace-name.cloudomation.com/api/latest/setting/the-setting?by=name

Permanently Deleting Records

danger

Permanently deleting a record from Cloudomation is permanent. The record cannot be restored afterwards!

info

Permanently deleting a project will also permanently delete all records of that project.

Via the User-Interface

Permanently Deleting Individual Records

Open the record and click on "Delete Permanently" in the "More Actions" popover.

The delete permanently action in the more actions popover

Bulk-Permanently-Delete many Records

Open the workspace dashboard, project dashboard, or execution live monitor. In the resoures list check the records and click on "Delete Permanently" in the "More Actions" popover.

The bulk-delete action in the more actions popover

Via the Flow-API

Use the delete method with the permanently=True argument on any record.

example

Delete a setting.

import flow_api

def handler(system: flow_api.System, this: flow_api.Execution):
system.setting('the-setting').delete(permanently=True)
return this.success('all done')

Via the REST-API

Make a HTTP DELETE request.

example

Delete a setting

curl -X DELETE https://your-workspace-name.cloudomation.com/api/latest/setting/the-setting?by=name\&permanently=true

Accessing Deleted Records

Via the User-Interface

List Deleted Resources

Deleted resources are listed in the "Deleted" section at the bottom of the left-hand navigation.

List Deleted Activities

Deleted activities can be listed using the advanced search. Please refer to Advanced Search for details.

Access Deleted Records

Clicking on a deleted record in the "Deleted" section or the advanced search will open it. Opened deleted records are marked with a badge.

The deleted badge

Deleted records cannot be modified and all actions are disabled, except "Delete permanently" and "Restore".

Via the Flow-API

List Deleted Records

Listing methods can be configured to access deleted records. To include deleted records in the listing the allow_deleted argument must be set to True.

example

List all deleted settings.

import flow_api

def handler(system: flow_api.System, this: flow_api.Execution):
for setting in system.settings(
# do not include "Normal" (not deleted) records in the lising
allow_normal=False,
allow_deleted=True,
):
this.log(setting.get_dict('name', 'deleted_at'))
return this.success('all done')

Access Deleted Records

Individual deleted records can be accessed using the Flow-API. The allow_deleted argument must be set to True.

example

Read value of a deleted setting.

import flow_api

def handler(system: flow_api.System, this: flow_api.Execution):
value = system.setting(
'the-deleted-setting',
allow_deleted=True,
).get('value')
this.log(value=value)
return this.success('all done')
note

Trying to access deleted records without using the allow_deleted flag will result in a PermissionDeniedError:

Traceback (most recent call last):
File "example-read-deleted-with-permission-error (4c886cf9-61cc-41ab-b3a2-c6fdad5a334c)", line 4, in handler
flow_api.exceptions.PermissionDenied: {"operation": "read", "by": "name", "ids": ["the-deleted-setting"], "table": "setting", "message": "No permission to read setting in project 239dface-c437-488f-9390-42c70483c3b6 with name(s) {'the-deleted-setting'}: Cannot access deleted record without `allow_deleted` flag.", "reason": "Cannot access deleted record without `allow_deleted` flag."}

Via the REST-API

List Deleted Records

Use the allow_deleted flag with any listing request.

example

List only deleted settings.

curl https://your-workspace-name.cloudomation.com/api/latest/setting?allow_normal=false\&allow_deleted=true

Please refer to Accessing and Manipulating Records for details on how to use the REST API.

Access deleted records

Use the allow_deleted flag.

example

Access a deleted setting.

curl https://your-workspace-name.cloudomation.com/api/latest/setting/the-deleted-setting?by=name\&allow_deleted=true

Restoring Records

info

Restoring a project will also restore all records of that project.

Via the User-Interface

Restoring Individual Records

Open a record from the "Deleted" section and click on "Restore" in the "More Actions" popover.

The restore action in the more actions popover

The record will be restored and moved to the project it is associated with.

Bulk-Restore many Records

Open the "Deleted" section. In the list check the records and click on "Restore".

The bulk-restore action

The records will be restored and moved to the projects they are associated with.

Via the Flow-API

Use the restore method on any record.

note

To be able to access a record which is deleted the allow_deleted argument must be used.

example

Restore a setting.

import flow_api

def handler(system: flow_api.System, this: flow_api.Execution):
system.setting('the-deleted-setting', allow_deleted=True).restore()
return this.success('all done')

Via the REST-API

Make a HTTP PATCH request to restore.

example

Restore a setting

curl -X PATCH https://your-workspace-name.cloudomation.com/api/latest/setting/the-deleted-setting/restore?by=name\&allow_deleted=true

Learn More

Workspace Configuration
Workspace Configuration Options
Accessing and Manipulating Records