दस्तावेज़ पर जाएँ
API

कैलेंडर

इस समूह का हर ऑपरेशन: वह क्या लेता है, क्या लौटाता है और किन त्रुटियों के साथ जवाब दे सकता है।

ऑपरेशन

Events and invitations, as the Calendar page of the app shows them: list a window, read an event or the one a thread carries, put events on the calendar and change them, call off a meeting, and answer an invitation. A change that invites, updates or cancels attendees, and every answer, goes out by email, so it also needs emails:send.

GET/calendar/events

List occurrences in a window

स्कोपcalendar:readपढ़ता है

from and to are REQUIRED. Occurrences are expanded from recurrence rules, so a calendar has no meaningful unbounded listing. A default window would turn an infinite series into a question with no answer. At most a year apart.

Requires the calendar:read scope.

क्वेरी पैरामीटर

fromstringआवश्यक

Start of the window.

फ़ॉर्मैटdate-time
tostringआवश्यक

End of the window, after from and at most 366 days later.

फ़ॉर्मैटdate-time
timezonestringआवश्यक

IANA zone. Decides what an all-day event means.

limitinteger

Rows per page, 1 to 100.

कम से कम 1अधिकतम 100डिफ़ॉल्ट25
cursorstring

The previous page's nextCursor, passed back as it came. It is opaque: it holds where the last row sat in this list's order, so a row deleted or edited between pages never breaks the walk, and the next page starts at the first row that sorts after it. A value this list did not hand out is a 400 invalid_cursor.

लौटाता है

200

A page of occurrences, sorted by start and then by event id, with hasMore and nextCursor. Send the same from, to and timezone with every cursor. Nothing in the window is dropped: a series repeats at most once a day, so it gives at most one occurrence per day of the window, and every one is reachable through the pages. The cursor holds the start and event id of the last row, so an event deleted or moved between pages never breaks the walk.

त्रुटियाँ

वे त्रुटियाँ जो कोई भी ऑपरेशन लौटा सकता है400401403404422500त्रुटि सूची

इनमें भी उपलब्ध

SDK
calendar.listEvents()calendar.listAllEvents()calendar.iterateEvents()
CLI
openemail calendar list-events
MCP
listCalendarEvents

POST/calendar/events

Create an event

स्कोपcalendar:writeमेल भेजता है

Puts an event on the calendar, as New event on the Calendar page of the app does. start and end are ISO 8601 with a zone, and timezone is the IANA zone the event belongs to, UTC unless you say. recurrence takes an RRULE such as FREQ=WEEKLY;BYDAY=MO, and reminders the minutes before the start.

With attendees, an invitation goes to each of them from the address in from, which has to be one the key or app may send as, so the call also needs emails:send. sendInvites: false keeps the change to your own calendar.

Requires the calendar:write scope.

अनुरोध बॉडी

summarystringआवश्यक

The title, 1 to 255 characters.

1 से 255 वर्ण
descriptionstring

Notes about the event, up to 8,000 characters.

अधिकतम 8000 वर्ण
locationstring

Where it is: a room, an address or a link.

अधिकतम 255 वर्ण
urlstring

A link that belongs to the event.

अधिकतम 2000 वर्णफ़ॉर्मैटuri
startstringआवश्यक

When it starts, a Date or ISO 8601 with a zone.

फ़ॉर्मैटdate-time
endstringआवश्यक

When it ends, after start and at most two years later.

फ़ॉर्मैटdate-time
allDayboolean

Whether it fills whole days. start and end then mark the days.

timezonestring

The IANA zone the event belongs to, UTC unless you say.

1 से 64 वर्ण
recurrencestring

An RRULE such as FREQ=WEEKLY;BYDAY=MO when it repeats.

अधिकतम 512 वर्ण
attendeesobject[]

Up to 200 people to invite, each { email, name?, optional? }.

अधिकतम 200 आइटम
emailstringआवश्यक
अधिकतम 320 वर्णफ़ॉर्मैटemail
namestring
अधिकतम 128 वर्ण
optionalboolean
remindersobject[]

Up to five reminders, each { minutesBefore, action? }.

अधिकतम 5 आइटम
minutesBeforeintegerआवश्यक
कम से कम 0अधिकतम 40320
actionstring
इनमें से एक"DISPLAY""EMAIL""AUDIO"
transparencystring

OPAQUE shows you busy and TRANSPARENT free.

इनमें से एक"OPAQUE""TRANSPARENT"
visibilitystring

PUBLIC, PRIVATE or CONFIDENTIAL.

इनमें से एक"PUBLIC""PRIVATE""CONFIDENTIAL"
sendInvitesboolean

False keeps the change to your own calendar, and sends nothing.

fromstring

The address the invitations come from. It has to be one the key may send as.

अधिकतम 320 वर्ण

लौटाता है

The event, with its attendees.

त्रुटियाँ

403

from_address_forbidden: the key or app may not send as from. insufficient_scope when invitations would go out and emails:send is missing.

वे त्रुटियाँ जो कोई भी ऑपरेशन लौटा सकता है400401404422500त्रुटि सूची

इनमें भी उपलब्ध

SDK
calendar.createEvent()
CLI
openemail calendar create-event
MCP
createCalendarEvent

GET/calendar/events/{id}

Retrieve an event

स्कोपcalendar:readपढ़ता है

The event with its attendees and their responses. rawIcs is omitted. Everything understood in it is already structured here, and /ics serves the document.

Requires the calendar:read scope.

पाथ पैरामीटर

idstringआवश्यक

Event id, the eventId of an occurrence, such as cal_ followed by 24 hex characters.

लौटाता है

200

The event.

त्रुटियाँ

वे त्रुटियाँ जो कोई भी ऑपरेशन लौटा सकता है400401403404422500त्रुटि सूची

इनमें भी उपलब्ध

SDK
calendar.getEvent()
CLI
openemail calendar get-event
MCP
getCalendarEvent

PATCH/calendar/events/{id}

Change an event

स्कोपcalendar:writeमेल भेजता है

Changes an event you organise. A field left out keeps its value, and attendees replaces the whole list. Everyone invited gets the updated invitation.

With attendees, an invitation goes to each of them from the address in from, which has to be one the key or app may send as, so the call also needs emails:send. sendInvites: false keeps the change to your own calendar.

Requires the calendar:write scope.

पाथ पैरामीटर

idstringआवश्यक

The event id from GET /calendar/events.

अनुरोध बॉडी

summarystring

The title, 1 to 255 characters.

1 से 255 वर्ण
descriptionstring

Notes about the event, up to 8,000 characters.

अधिकतम 8000 वर्ण
locationstring

Where it is: a room, an address or a link.

अधिकतम 255 वर्ण
urlstring

A link that belongs to the event.

अधिकतम 2000 वर्णफ़ॉर्मैटuri
startstring

When it starts, a Date or ISO 8601 with a zone.

फ़ॉर्मैटdate-time
endstring

When it ends, after start and at most two years later.

फ़ॉर्मैटdate-time
allDayboolean

Whether it fills whole days. start and end then mark the days.

timezonestring

The IANA zone the event belongs to, UTC unless you say.

1 से 64 वर्ण
recurrencestring

An RRULE such as FREQ=WEEKLY;BYDAY=MO when it repeats.

अधिकतम 512 वर्ण
attendeesobject[]

Up to 200 people to invite, each { email, name?, optional? }. It replaces the whole list.

अधिकतम 200 आइटम
emailstringआवश्यक
अधिकतम 320 वर्णफ़ॉर्मैटemail
namestring
अधिकतम 128 वर्ण
optionalboolean
remindersobject[]

Up to five reminders, each { minutesBefore, action? }.

अधिकतम 5 आइटम
minutesBeforeintegerआवश्यक
कम से कम 0अधिकतम 40320
actionstring
इनमें से एक"DISPLAY""EMAIL""AUDIO"
transparencystring

OPAQUE shows you busy and TRANSPARENT free.

इनमें से एक"OPAQUE""TRANSPARENT"
visibilitystring

PUBLIC, PRIVATE or CONFIDENTIAL.

इनमें से एक"PUBLIC""PRIVATE""CONFIDENTIAL"
sendInvitesboolean

False keeps the change to your own calendar, and sends nothing.

fromstring

The address the invitations come from. It has to be one the key may send as.

अधिकतम 320 वर्ण

लौटाता है

The event as it stands now.

त्रुटियाँ

403

not_organizer: the event was organised by somebody else, so you can only answer it. from_address_forbidden: the key or app may not send as from.

409

event_cancelled: the meeting was called off.

वे त्रुटियाँ जो कोई भी ऑपरेशन लौटा सकता है400401404422500त्रुटि सूची

इनमें भी उपलब्ध

SDK
calendar.updateEvent()
CLI
openemail calendar update-event
MCP
updateCalendarEvent

DELETE/calendar/events/{id}

Remove an event

स्कोपcalendar:writeहटाता है

Removes an event from the calendar for good, as Remove does in the app. Nobody else is told: to call off a meeting with others in it, use POST /calendar/events/{id}/cancel.

Requires the calendar:write scope.

पाथ पैरामीटर

idstringआवश्यक

The event id from GET /calendar/events.

लौटाता है

The event is gone.

त्रुटियाँ

403

not_organizer: the event was organised by somebody else.

वे त्रुटियाँ जो कोई भी ऑपरेशन लौटा सकता है400401404422500त्रुटि सूची

इनमें भी उपलब्ध

SDK
calendar.deleteEvent()
CLI
openemail calendar delete-event
MCP
deleteCalendarEvent

GET/calendar/events/{id}/ics

The event as an .ics document

स्कोपcalendar:readपढ़ता है

Served as text/calendar with NO METHOD parameter. A METHOD makes a document actionable (a client seeing method=REQUEST draws accept/decline and can reply to the organiser), and this endpoint has no authority to invite anybody on the workspace behalf. It states what the event currently is.

Requires the calendar:read scope.

पाथ पैरामीटर

idstringआवश्यक

Event id, the eventId of an occurrence.

लौटाता है

200stringtext/calendar

An iCalendar document.

त्रुटियाँ

वे त्रुटियाँ जो कोई भी ऑपरेशन लौटा सकता है400401403404422500त्रुटि सूची

इनमें भी उपलब्ध

SDK
calendar.getEventIcs()
CLI
openemail calendar get-event-ics

POST/calendar/events/{id}/cancel

Cancel a meeting

स्कोपcalendar:writeमेल भेजता है

Calls off a meeting you organise, as Cancel meeting does in the app. It stays on the calendar with status CANCELLED, and everyone invited is told it is off, from the address in from, so a meeting with attendees also needs emails:send. The body is optional.

Requires the calendar:write scope.

पाथ पैरामीटर

idstringआवश्यक

The event id from GET /calendar/events.

अनुरोध बॉडी

fromstring

The address the cancellation comes from. It has to be one the key may send as.

अधिकतम 320 वर्ण

लौटाता है

The event, cancelled.

त्रुटियाँ

403

not_organizer: the event was organised by somebody else. from_address_forbidden: the key or app may not send as from.

वे त्रुटियाँ जो कोई भी ऑपरेशन लौटा सकता है400401404422500त्रुटि सूची

इनमें भी उपलब्ध

SDK
calendar.cancelEvent()
CLI
openemail calendar cancel-event
MCP
cancelCalendarEvent

POST/calendar/events/{id}/respond

Answer an invitation

स्कोपcalendar:writeemails:sendमेल भेजता है

Accepts, declines or tentatively accepts an invitation, as the buttons of an invitation in the app do. The answer goes to the organiser by email from the invited address the key or app may send as, or from respondingAs when the invitation went to more than one of yours.

Requires the calendar:write and emails:send scopes.

पाथ पैरामीटर

idstringआवश्यक

The event id from GET /calendar/events.

अनुरोध बॉडी

responsestringआवश्यक

ACCEPTED, DECLINED or TENTATIVE.

इनमें से एक"ACCEPTED""DECLINED""TENTATIVE"
respondingAsstring

Which of your invited addresses answers, when there is more than one.

अधिकतम 320 वर्ण

लौटाता है

The event, with your answer.

त्रुटियाँ

403

not_invited: the event did not invite respondingAs, or any address the key or app may send as.

409

event_cancelled: the meeting was called off. reply_not_sent: the answer could not be sent to the organiser, so nothing changed.

वे त्रुटियाँ जो कोई भी ऑपरेशन लौटा सकता है400401404422500त्रुटि सूची

इनमें भी उपलब्ध

SDK
calendar.respondToEvent()
CLI
openemail calendar respond-to-event
MCP
respondToCalendarEvent

GET/threads/{id}/event

The event a thread carries

स्कोपcalendar:readपढ़ता है

The calendar event that came with an invitation in the thread, as the invitation card of the reading pane shows it. A thread with no event, or one the key or app does not reach, is a 404. Answer it with POST /calendar/events/{id}/respond.

Requires the calendar:read scope.

पाथ पैरामीटर

idstringआवश्यक

The thread id.

लौटाता है

The event.

त्रुटियाँ

वे त्रुटियाँ जो कोई भी ऑपरेशन लौटा सकता है400401403404422500त्रुटि सूची

इनमें भी उपलब्ध

SDK
threads.getEvent()
CLI
openemail threads get-event
MCP
getCalendarEvent

ऑब्जेक्ट

CalendarEventobject

objectstringआवश्यक
इनमें से एक"calendar_event"
idstringआवश्यक
uidstringआवश्यक

The iCalendar UID every copy of the event shares.

sequenceinteger
कम से कम 0
summarystring
null हो सकता है
descriptionstring
null हो सकता है
locationstring
null हो सकता है
urlstring
null हो सकता है
startstringआवश्यक
फ़ॉर्मैटdate-time
endstringआवश्यक
फ़ॉर्मैटdate-time
allDayboolean
timezonestring
null हो सकता है
recurrencestring

The RRULE, when it repeats.

null हो सकता है
exdatesstring[]
statusstringआवश्यक

CONFIRMED, TENTATIVE or CANCELLED.

transparencystring
visibilitystring
organizerobject
null हो सकता है
emailstring
namestring
null हो सकता है
isOrganizerboolean

Whether you organise it, and so may change it.

sourcestring
messageIdstring
null हो सकता है
threadIdstring
null हो सकता है
alarmsobject[]
minutesBeforeinteger
actionstring
attendeesobject[]आवश्यक
objectstring
इनमें से एक"calendar_attendee"
emailstring
namestring
null हो सकता है
partstatstring

NEEDS-ACTION, ACCEPTED, DECLINED or TENTATIVE.

rolestring
rsvpboolean
cutypestring
null हो सकता है
respondedAtstring
null हो सकता हैफ़ॉर्मैटdate-time
createdAtstring
फ़ॉर्मैटdate-time
updatedAtstring
फ़ॉर्मैटdate-time

DeletedCalendarEventobject

objectstringआवश्यक
इनमें से एक"calendar_event"
idstringआवश्यक
deletedbooleanआवश्यक
इनमें से एकtrue