calendar_move_event
Move an iCloud calendar event to another calendar, keeping its uid, time, place, alarms, notes and guests. Use it to re-file an event, not to reschedule or delete it.
Instructions
Move an event to another of the owner's calendars, a repeating one as a whole series, keeping its uid, times, place, alarms, notes and guests.
Use when: the owner wants an event filed under a different calendar, e.g. from 'Calendar' to 'Work'. Not for changing its time or details (use calendar_update_event) or for removing it (use calendar_delete_event); never delete and recreate an event to move it. Parameters:
uid: the opaque uid string from calendar_list_events or a calendar_create_event result, copied exactly. A series moves as a whole; one date alone cannot be moved.
to_calendar: a name (any case) or id from calendar_list_calendars. An unknown value fails with "No calendar named ..." plus the valid names.
calendar: where the event is now, only to narrow the lookup. Naming the wrong one fails with "No event with uid" instead of searching further. Behavior:
iCloud relocates the stored event, so nothing is recreated, the uid stays and guests get no new invitation.
An event with guests is refused unless the server allows calendar invites (ALLOW_CALENDAR_INVITES), as for edits.
On a server without WebDAV MOVE it copies first and deletes the original after, removing the copy again if that delete fails, so the event never ends up in two calendars.
Moving to the calendar it is already in changes nothing, so a repeat is safe. Returns: {moved: true, uid, summary, from, to}, or {moved: false, uid, summary, calendar, note} when it was already there. Errors (in every case nothing was moved):
"No event with uid": list events again.
an unknown calendar: the message lists valid names.
"Blocked: ... ALLOW_CALENDAR_INVITES=false": ask the owner to move it in the Calendar app.
the target already holds an event stored under the same name, or the server refused.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| uid | Yes | Event uid (from calendar_list_events). | |
| calendar | No | Calendar name (calendar_list_calendars); omit for all. | |
| to_calendar | Yes | The calendar to move it to, by name from calendar_list_calendars (e.g. 'Personal', 'Work', 'Health'). |