Calendar Event (Apple)
Triggercalendar
trigger.calendar_event_apple
Fires when an event in macOS Apple Calendar is created, edited, or deleted. It reads your calendars through native EventKit — there's no API key or account to set up. The first time the trigger runs, macOS shows its standard Full Calendars access permission prompt; grant it once and the trigger arms.
This is a Trigger (outlet only): it starts a workflow and emits the changed event as the payload, so downstream nodes can reference fields like the title, start time, or location with {{calendarEvent.title}}.
Use the Change Type setting to listen for just new events, just edits, just deletions, or all of them. Optionally limit monitoring to a single named calendar and control how far ahead the trigger looks with Look-Ahead (days).
A few behaviors worth knowing: events that already exist when the trigger first arms do not fire as "created"; an event that merely slides out of the look-ahead window is not reported as deleted; and each occurrence of a recurring event is tracked independently.
Ports
| Direction | Name | Data Type | Description |
|---|---|---|---|
| Outlet | Output | Any | Payload emitted when a calendar event is created, edited, or deleted |
Configuration
| Field | Type | Default | Description |
|---|---|---|---|
| Change Type | Dropdown |
Created | Which change fires the trigger: Created, Edited, Deleted, or All Changes |
| Calendar | Text |
— | Limit monitoring to a named calendar; leave blank to watch all calendars |
| Look-Ahead (days) | Number |
30 | How many days ahead to monitor for event changes |
| Custom Arguments | Key-Value |
— | Additional key-value pairs included in the output payload Advanced / optional |
Output Variables
| Variable | Type | Description |
|---|---|---|
calendarEvent.title |
String | Title of the event |
calendarEvent.startISO |
String | Event start time (ISO 8601) |
calendarEvent.endISO |
String | Event end time (ISO 8601) |
calendarEvent.location |
String | Event location (empty if none) |
calendarEvent.calendarName |
String | Name of the calendar the event belongs to |
calendarEvent.eventID |
String | EventKit identifier (series-level for recurring events) |
calendarEvent.isAllDay |
Bool | Whether the event is an all-day event |
calendarEvent.notes |
String | Event notes (empty if none) |
calendarEvent.changeKind |
String | What happened: created, edited, or deleted |
timestamp |
String | ISO 8601 timestamp of when the change was detected |
Example
Get a notification whenever a new event is added to your calendar: