Summary
Adds the ability to configure custom (granular) deletion policies for posts for specific teams and/or channels. When the daily retention job runs it selectively deletes posts by age based on the configuration.
...
Request:
Code Block |
---|
{ "team_idids": ["z7rxbxbfb7yxdydxzi8pestath"] } |
Response:
Code Block |
---|
{ "success_ids": ["z7rxbxbfb7yxdydxzi8pestath"], "failure_ids": [] } |
Because a teams can only be associated to a single granular retention policy, we must specify which teams failed.
...
DELETE /api/v4/retention_policies/:policy_id/teams/:team_id
removes a team from a retention policy.
...
Request:
Code Block |
---|
{ "channel_idids": ["z7rxbxbfb7yxdydxzi8pestath"] } |
Response:
Code Block |
---|
{ "success_ids": ["z7rxbxbfb7yxdydxzi8pestath"], "failure_ids": [] } |
Because a channel can only be associated to a single granular retention policy, we must specify which channels failed.
...
DELETE /api/v4/retention_policies/:policy_id/channels/:channel_id
deletes a channel from a retention policy.
...
Column name | Description |
---|---|
| varchar, the RetentionPolicies.Id foreign key |
| varchar, the Channels.Id foreign key |
TBD: Does ChannelId
need to be indexed?
RetentionPoliciesTeams
table
Column name | Description |
---|---|
| varchar, the RetentionPolicies.Id foreign key |
| varchar, the Teams.Id foreign key |
TBD: Does TeamId
need to be indexed?
Model
Rename
DataRetentionPolicy
toGlobalDataRetentionPolicy
Add
RetentionPolicy
representing a record in theRetentionPolicies
table.Add
RetentionPolicyChannel
representing a record in theRetentionPoliciesChannels
table.Add
RetentionPolicyTeam
representing a record in theRetentionPoliciesTeams
table.
...
Reactions
Preferences
(ofCategory
‘flagged_post’)Threads
ThreadMemberships
LinkMetadata
TBD: these aren’t currently purged via data retention, but they probably should be.
FileInfo
(and their associated files on disk) and ChannelMemberHistory
continue to be deleted system-wide with no new granularity.
TBD: Why is ChannelMemberHistory
currently deleted as part of message retention days settings?
Mobile
No changes. Existing file-deleted and post-deleted UX covers all.