Action guide
Answer 'where did my file go' with certainty
POST
/v1/events · file.deletedEmit a `file.deleted` event whenever a file is removed from your storage, whether by a user or a retention job.
When to emit
After the storage object is deleted or marked for deletion, regardless of who triggered it.
Example payload
await recalled.events.create({
action: "file.deleted",
actor: { id: user.id, email: user.email },
organization: user.organizationId,
metadata: {
filename: "value",
triggeredBy: "value",
storageKey: "value"
},
});Metadata to include
Keep metadata flat and consistent across your service so it plays well with search and CSV exports.
| Key | Purpose |
|---|---|
filename | Original filename |
triggeredBy | user, admin, retention_policy, cascade_parent |
storageKey | Object key that was removed |
Suggested retention
Keep for at least 18 months, 'where did my file go' is a common support question.