Skip to main content

Invitations

An invitation is an object used to represent a request or proposal for a person to attend or participate in an event. This object encapsulates all the necessary information for the recipient to understand what they are being invited to through 4 fields: summary, subtitle, description, and Event Times.

Invitations are automatically generated when adding the invitation field to an attendee in an event. Invitations expose a series of endpoints through which guests can confirm or decline their attendance at an event.

Schema

FieldTypeDescription
idStringA unique uid for the invitation.
summaryStringA brief overview of the invitation.
subtitleStringA secondary title providing additional information.
descriptionStringDetailed information about the event.
eventObject<Event>The event related to the invitation.
displayTimeFUZZY | EXACT | START_DATEIndicates if the invitation will display the exact time, the starting day, or a fuzzy version. By default is EXACT

Event

The event field within the invitation object includes a time specification which can be configured as either an exact or a fuzzy time interval, depending on the requirements of the event.

FieldTypeDescription
intervalInterval|FuzzyTimeAn object indicating when the event starts. If the invitation displayTime is set to EXACT this will be an interval. When the displayTime is FUZZY this will contain a FuzzyTime

FuzzyTime

This schema allows for a flexible interpretation of time slots throughout the day, accommodating various activities or appointments that do not require precise scheduling. Instead containing an exact interval it includes the Date, the TimeZone and a string representing a fuzzy moment of the day.

NameTypeDescription
typeFuzzyCalendarEventInvitationInterval
dateStringThe date of the invitation.
timeZoneStringA string representing the time zone of the given date (e.g., "UTC", "America/New_York").
valueENUMA string representing a fuzzy time of the day.
  • MORNING: From 08:00 to 12:00.
  • AFTERNOON: From 12:00 to 16:00.
  • EVENING: From 16:00 to 20:00.
  • NIGHT: From 20:00 onwards.

StartDate

Another option is to just show the day in which the event happens. As multi-day events are a thing, we call this display mode Start Date. Instead containing an exact interval it includes just the date, and the TimeZone.

NameTypeDescription
typeStartDateCalendarEventInvitationInterval
dateStringThe date of the invitation.
timeZoneStringA string representing the time zone of the given date (e.g., "UTC", "America/New_York").

Getting an invitation

You can obtain the details of an invitation using its unique identifier. To find the unique identifier, you can check the invitation field in the attendees list of an event.

GET
/calendar-event-invitations/{id}API DOCS

Replying to an invitation

An invitation can be accepted or rejected using the /replies path on the invitation. When the response is created the invitation will change its state according to the latests response.

POST
/calendar-event-invitations/{invitationId}/repliesAPI DOCS
{
type: "EventInvitationAccept" | "EventInvitationDecline";
}