Endpoint Overview
/api/calendar/v4/calendar/me/events/api/calendar/v4/calendar/me/events/api/calendar/v4/calendar/me/events/overview/api/calendar/v4/calendar/me/events/{event_id}/api/calendar/v4/calendar/me/events/{event_id}/api/calendar/v4/calendar/me/events/api/calendar/v4/calendar/me/events/api/calendar/v4/calendar/me/events/overview/api/calendar/v4/calendar/me/events/{event_id}/api/calendar/v4/calendar/me/events/{event_id}Returns a paginated summary list of events for the authenticated user's calendar.
The user must be a participant of the returned events (either as organizer or invitee). Results can be filtered by time range and RSVP status, and are ordered by start date.
Time Range Filtering:
start_after and start_before filter by the event's start time: event.start >= start_after AND event.start <= start_beforeend_after and end_before filter by the event's end timeDefault Behavior:
START_DATE_ASCstart_after stringFilters events whose start time is at or after this value (inclusive).
start_before stringFilters events whose start time is at or before this value (inclusive). Can be combined with start_after to define a start-time window.
end_after stringFilters events whose end time is after this value.
end_before stringFilters events whose end time is before this value.
rsvp_status string[]The participant's RSVP response to an event invitation:
ACCEPTED: The participant has accepted the invitation.DECLINED: The participant has declined the invitation.TENTATIVE: The participant has tentatively accepted but is not yet confirmed.NEEDS_ACTION: The participant has not yet responded to the invitation.order_by stringSort options for the event list. Each option has ascending (_ASC) and descending (_DESC) variants:
START_DATE: Sort by the event's start date and time chronologically.page_cursor stringA cursor pointing to the first item to be contained in the response array. Refer to our general "pagination" concept for more information.
page_limit integerThe maximum number of items to be contained in the response array. Refer to our general "pagination" concept for more information.
200 OKCreates a new event, adds it to the current user's calendar, and sends invitations to other participants.
Organizer:
The authenticated user is automatically added as a participant with ACCEPTED RSVP status.
All other participants receive NEEDS_ACTION RSVP status and are sent invitation notifications.
Channel Participants:
When a channel is specified in participants, all members of that channel are resolved and added
as individual participants. Channels the actor does not have permission to assign to a calendar
are silently skipped — no error is returned, but their members are not added.
Idempotency:
The optional id field in the request body is a client-provided idempotency key. If an event
with that ID already exists and the caller is the organizer, the existing event is returned
without creating a duplicate. If the caller is not the organizer of the existing event, a 403
error is returned.
Language Detection: If a body is provided, the event's source language is detected asynchronously and stored on the event.
id stringOptional client-provided idempotency key. If an event with this ID already exists and the caller is the organizer, the existing event is returned without creating a duplicate. If omitted, a new ID is generated automatically.
title stringrequiredThe title of the event. Maximum 200 characters.
time_slot objectrequiredThe time slot defining when the event starts and ends.
location stringOptional physical or virtual location for the event. Maximum 1000 characters.
body objectOptional rich-text body content for the event description.
participants object[]Event participants. Max number of users allowed is 500 and max number of channels allowed is 10.
attachments object[]a single attachment which shall be attached to an entity
show_participant_list booleanIf disabled, only the organizer will be able to see the list of users invited to an event.
201 CreatedReturns counts of upcoming events for the authenticated user, grouped by time period.
Only events with an RSVP status other than DECLINED are counted (i.e. ACCEPTED, TENTATIVE,
and NEEDS_ACTION). Events that have already ended are excluded.
The time_zone parameter is used to determine local day boundaries for "today" and "tomorrow".
time_zone stringrequiredIANA time zone identifier used to determine local day boundaries for grouping events into
"today" and "tomorrow" periods (e.g. Europe/Berlin, America/New_York).
200 OKRetrieves full details of a single calendar event by its ID.
The authenticated user must be a participant of the event (either as organizer or invitee).
event_id stringrequiredbody_format string[]restricts the returned formatted content to the specified formats
PLAIN: the plain content is returned.DELTA: the content is returned in delta formatHTML: the content is returned in html format200 OKPartially updates a calendar event using JSON Merge Patch semantics (RFC 7396).
Only the event organizer can update the event. At least one field must be present in the request body.
Participant Notifications (participants_notification):
Controls whether and how participants are notified after the update. Defaults to UPDATE_NOTIFICATION.
NO_NOTIFICATION: Saves changes silently — no notifications are sent and no real-time updates are dispatched.UPDATE_NOTIFICATION: Sends an update notification to all participants.RESET_NOTIFICATION: Resets all participants' RSVP status to NEEDS_ACTION (except the organizer's) and sends a re-invite notification, prompting them to respond again.Cancellation:
Setting status to CANCELLED triggers cancellation notifications to all participants.
This is equivalent to deleting the event from participants' calendars.
event_id stringrequiredtitle stringThe updated title of the event. Maximum 100 characters.
time_slot objectThe updated time slot for the event.
location stringThe updated location. Set to null to remove the location.
status stringThe updated status of the event. Setting to CANCELLED sends cancellation notifications to all participants.
body objectThe updated rich-text body content. Set to null to remove the body.
attachments object[]a single attachment which shall be attached to an entity
show_participant_list booleanControls whether participants other than the organizer can see the participant list.
participants_notification stringControls whether and how participants are notified about the update. Defaults to UPDATE_NOTIFICATION.
200 OK