Calendar
Events and invitations.
Calendar tools
| Tool | What it does |
|---|---|
| listCalendarEvents | Every occurrence between two moments, a repeating event once for each time it happens, with its place, status and your answer. |
| getCalendarEvent | One event in full, by id or by the threadId of the conversation that carries its invitation: the attendees and their answers, how it repeats and its reminders. |
| createCalendarEvent | Put an event on the calendar and invite the attendees from an address you may send as. In the app’s chat it asks first unless you asked for it. |
| updateCalendarEvent | Change an event you organise, and send the update to everyone invited. In the app’s chat it asks first unless you asked for it. |
| cancelCalendarEvent | Call off a meeting you organise and tell everyone invited. In the app’s chat it always asks first. |
| deleteCalendarEvent | Take an event off the calendar without telling anybody. In the app’s chat it always asks first. |
| respondToCalendarEvent | Accept, decline or tentatively accept an invitation, and tell the organiser. In the app’s chat it asks first unless you asked for it. |
Reading needs calendar:read and every change needs calendar:write. Anything that emails somebody also needs emails:send: inviting, updating or cancelling a meeting with attendees, and every answer to an invitation.
A client limited to some addresses sees and changes only the events one of them organises or attends, and sends only from them.
Reference
listCalendarEvents
The calendar between two moments, as the Calendar page of the app shows it: every occurrence in the window, a repeating event once for each time it happens, sorted by start, with its event id, place, status and your answer. from and to are ISO 8601 with a zone, at most a year apart, and timezone (an IANA zone, UTC unless you say) decides what an all-day event means. When more follow, the last line gives the offset to pass back.
Inputs
fromstringRequired- Format
date-time tostringRequired- Format
date-time timezonestring- 1 to 64 characters
limitinteger- At least 1At most 200
offsetinteger- At least 0
Also available in
getCalendarEvent
One calendar event in full: when it is, where, who organised it, every attendee and their answer, your own answer, how it repeats and its reminders. Pass id for an event from listCalendarEvents, or threadId for the invitation a conversation carries.
Inputs
idstring- 1 to 64 characters
threadIdstring- 1 to 256 characters
Also available in
createCalendarEvent
Put an event on the calendar, as New event on the Calendar page does. start and end are ISO 8601 with a zone. With attendees, an invitation goes to each of them from the address in from, which has to be one you may send as, unless sendInvites is false. reminders takes minutes before the start, and recurrence an RRULE such as FREQ=WEEKLY;BYDAY=MO.
Inputs
summarystringRequired- 1 to 255 characters
startstringRequired- Format
date-time endstringRequired- Format
date-time descriptionstring- Up to 8000 characters
locationstring- Up to 255 characters
urlstring- Up to 2000 charactersFormat
uri allDaybooleantimezonestring- 1 to 64 characters
recurrencestring- Up to 512 characters
attendeesobject[]- Up to 200 items
emailstringRequired- Up to 320 charactersFormat
email namestring- Up to 128 characters
optionalboolean
remindersobject[]- Up to 5 items
minutesBeforeintegerRequired- At least 0At most 40320
sendInvitesbooleanfromstring- Up to 320 characters
Also available in
updateCalendarEvent
Change an event you organise: its title, time, place, attendees, reminders or repeating. A field left out keeps its value, and attendees replaces the whole list. Everyone invited gets the updated invitation unless sendInvites is false.
Inputs
idstringRequired- 1 to 64 characters
summarystring- 1 to 255 characters
startstring- Format
date-time endstring- Format
date-time descriptionstring- Up to 8000 characters
locationstring- Up to 255 characters
urlstring- Up to 2000 charactersFormat
uri allDaybooleantimezonestring- 1 to 64 characters
recurrencestring- Up to 512 characters
attendeesobject[]- Up to 200 items
emailstringRequired- Up to 320 charactersFormat
email namestring- Up to 128 characters
optionalboolean
remindersobject[]- Up to 5 items
minutesBeforeintegerRequired- At least 0At most 40320
sendInvitesbooleanfromstring- Up to 320 characters
Also available in
cancelCalendarEvent
Call off a meeting you organise, as Cancel meeting does in the app: it stays on the calendar marked cancelled, and everyone invited is told it is off, from the address in from. A chat always asks first.
Inputs
idstringRequired- 1 to 64 characters
fromstring- Up to 320 characters
Also available in
deleteCalendarEvent
Remove an event from the calendar for good, as Remove does in the app. Nobody else is told, so call off a meeting with others in it with cancelCalendarEvent instead. A chat always asks first.
Inputs
idstringRequired- 1 to 64 characters
Also available in
respondToCalendarEvent
Answer an invitation: ACCEPTED, DECLINED or TENTATIVE. The answer goes to the organiser by email from the invited address you may send as, or from respondingAs when the invitation went to more than one of yours.
Inputs
idstringRequired- 1 to 64 characters
responsestringRequired- One of
"ACCEPTED""DECLINED""TENTATIVE" respondingAsstring- Up to 320 characters