Skip to content

How to read and change reminders and calendars

View as Markdown

Find reminders with a query for a reminders provider, such as iCloud, across every authorized account. Ignore generic plugin catalogs and old unrouted records. Fetch the exact schema from the directory before you send, and use only the commands the route declares. Do not substitute a ChatGPT scheduled task for a named service.

Reminders

The reminders-provider interface declares list-reminders, create-reminder, update-reminder and delete-reminder. Older iCloud routes may declare listing only. The Port OS task guide portos://guides/reminders, bundled with the connected-home skill, covers lists, due dates, time zones, pagination and read-back.

  • Reading needs no confirmation. An empty result proves only that the queried selection is empty.
  • Ask first before you delete, and before a bulk change. Creating or completing a single reminder the customer asked for needs no extra confirmation.
  • Send each change once and re-list to verify. Accepted control proves dispatch only. A timeout leaves the outcome unknown, so inspect before you retry.

Calendars

A calendar-provider interface exists, but it is a gap. It declares one message, list-events, with an empty request, and a response of events that carry only an ID, title, location, description and an all-day flag. The event schema has no start or end time, and the request has no date filter. No real calendar plugin implements it, only the simulators. If the customer has no calendar endpoint, say that calendar access is not available yet. Do not guess commands such as create-event, and do not read a date out of a title.

Read authorization rules and async outcomes.