With the understanding that I know just about nothing about Javascript… can someone point me in the direction of a script that would delete all Completed reminders?
I have found when the database gets large the “Find Reminders” action in shortcuts slows down considerably. Clearing out the deleted helps but I was hoping to automate something and doing so via Shortcuts requrire me to confirm it. Toolbox Pro doesn’t work because (per the developer on twitter) it can’t get the UUID it needs of completed reminders to interact with them.
I have scriptable however and would love to just drop that action into a Shortcut if I can get it figured out.
Note that this doesn’t clear all completed reminders, just those that are in my “Invoices” list and were completed more than a week ago. You can set the filters in the third step to whatever you need (and if you don’t need a date filter, you can delete the first two steps).
It’s true that if you wanted to run these steps automatically at a set time, you’d have to confirm the action, but that restriction is supposed to be going away in iOS 14.
Funny, but I didn’t see the confirmation when I had just a few to delete and ran the Shortcut on my iPad. But I did just run a test on my iPhone and had to confirm. Maybe the difference is that the iPad test was run with Shortcuts and Reminders side by side.
Ultimately I prefer ios… but I have an always on mac available to me so I will look at this. Thank you for the help. Much appreciated
In my testing a script in scriptable I was coming up with I managed to delete ALL of my reminders Luckily, I have ways to re-generate most of it. It’ll take time but I’ll recover. And it’s what I get for testing my own scripts. Ultimately I’m trying to learn. This script seems to work in my testing now. I assume it could be better?
let all = await Reminder.allCompleted();
for (let r of all)
{
r.remove();
}
Never entered my mind to delete these.
This would explained why trying to get all uncompleted reminders for the past week in Shortcuts took so long to the point that I used Scriptable to get the reminders. For some reason it worked way faster. I just used Scriptable to delete all my completed reminders. Took about 5 minutes to delete over 3000. Reminders app should have some kind of “Delete completed reminders” action.
After I finished deleting the completed reminders I test my Shortcut to find all uncompleted reminders before today. It used to take about 5 minutes to get them. Now it’s almost instantaneous. I guess the Find reminders action must go through all of the reminders before it can hand off just the uncompleted ones. So if you have thousands of them it will take awhile. I will now have a schedule to delete all the completed ones in my Work and Family reminders groups. And have Pushcut run it on the 1st day of every month.