task_set_alarms
Replace all alarms on a task with new relative or absolute alarms. Provide task ID and alarm array to overwrite existing notifications.
Instructions
Replace the alarm/notification set on an OmniFocus task atomically. Pass an array of alarms; this overwrites any existing alarms in full. Each alarm is one of: {kind:'due-relative', offsetSeconds:N} (positive = before due date, negative = after), {kind:'defer-relative', offsetSeconds:N} (relative to defer date), or {kind:'absolute', fireAt:ISO-8601 string}. Relative kinds require the task to already have the corresponding date set, or the call returns a VALIDATION error. Use task_clear_alarms to remove all alarms with no payload. Returns the updated task. Mutations do not sync automatically — call sync_trigger if cross-device visibility matters. Example: task_set_alarms({ id: "abc123", alarms: [{ kind: "due-relative", offsetSeconds: 3600 }] }) Example: task_set_alarms({ id: "abc123", alarms: [{ kind: "absolute", fireAt: "2026-05-01T09:00:00Z" }] })
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ID of the task to update. Get from task_list or search_query. | |
| alarms | Yes | Full replacement set of alarms. Empty array is permitted and equivalent to task_clear_alarms. |