I have a specific reminder that runs every day. The time at which that reminder should fire changes frequently (about once a week). instead of manually changing it every time, I’d like to run a script to modify the reminder.

So far, I’m having no luck. Can reminder due dates be modified programatically, or do I need to delete and recreate the reminder every time?

In either case, I’m not even being successful in zeroing in on the exact reminder. Since it runs every day, every time I mark it completed it creates a completed copy that is archived. When I try to get to it via whose({completed: true}), I can get all the correct reminders in a list but then cannot specify the one I want (byName doesn’t work).

When I can get to the reminder (with non-adequate methods, like using it’s array position when I can return it), I’m not being successful in changing its properties.

But deleting and recreating the reminder seems like it won’t work either, because I see noting in its properties() that indicates it’s a recurring reminder, which suggests we may not be able to set recurring reminders programatically.

  • 1
    Attention: Close Voters - JavaScript for Automation (JXA) is on-topic since scripting is specifically listed as being on-topic. For those who do not know, JXA is an Apple technology that provides users with the ability to use JavaScript for interapplication communication between apps in macOS. – Monomeeth Feb 20 '18 at 23:04
  • I think you are going to have to use AppleScriptObjC. – user3439894 Feb 21 '18 at 3:35

You must log in to answer this question.

Browse other questions tagged .