Retention Policy, or not REST/Client

I have a room, which I want to only retain the last day’s worth of messages, which shouldn’t be that hard. According to the documentation I need to set the global retention policy, done, and then I can change the room retention policy using the ‘Prune messages’ option.

This option just gives the same as without global retention enabled and only allows me to delete manually.

Ah, I thought, maybe this is an API only feature, let’s give that a shot, I do have permissions (checked).

Using REST I call /api/v1/rooms.saveRoomSettings with

{ 
"rid": "65eaec4c1f7c25d24a19f68a", 
"retentionEnabled": true,
"retentionOverrideGlobal": true,
"retentionMaxAge": 36000 
}

and I get a success:true, which is nice. There is some conflict about retentionMaxAge as to whether this is days, seconds or milliseconds. I’ve tried both 1 for 1 day, and an hour in seconds and milliseconds, all the same.

In the client, I get

Messages older than invalid date are automatically pruned here.

And nothing ever prunes anyway.

So now I’m stuck. I could of course write something to iterate through the messages via REST and just delete them one by one, but since Rocket has a retention feature I’d like to use that if possible.

Anyone been here before? Any help or pointers appreciated.