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
Field | Type | Description |
---|---|---|
id | String | A unique uid for the invitation. |
summary | String | A brief overview of the invitation. |
subtitle | String | A secondary title providing additional information. |
description | String | Detailed information about the event. |
event | Object<Event> | The event related to the invitation. |
displayTime | FUZZY | EXACT | START_DATE | Indicates 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.
Field | Type | Description |
---|---|---|
interval | Interval|FuzzyTime | An 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.
Name | Type | Description |
---|---|---|
type | FuzzyCalendarEventInvitationInterval | |
date | String | The date of the invitation. |
timeZone | String | A string representing the time zone of the given date (e.g., "UTC" , "America/New_York" ). |
value | ENUM | A string representing a fuzzy time of the day.
|
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.
Name | Type | Description |
---|---|---|
type | StartDateCalendarEventInvitationInterval | |
date | String | The date of the invitation. |
timeZone | String | A 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.
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.
{
type: "EventInvitationAccept" | "EventInvitationDecline";
}