A calendar which is a container for events. It can be a calendar for a user, or the default calendar of an Office 365 group.
Note: There are a few minor differences in the way you can interact with user calendars and group calendars:
| Method | Return Type | Description |
|---|---|---|
| List calendars | calendar collection | Get all the user's calendars, or the calendars in the default or other specific calendar group. |
| Create calendar | calendar | Create a new calendar in the default calendar group or specified calendar group for a user. |
| Get calendar | calendar | Get the properties and relationships of a calendar object. The calendar can be one for a user, or the default calendar of an Office 365 group. |
| Update | calendar | Update the properties of a calendar object. The calendar can be one for a user, or the default calendar of an Office 365 group. |
| Delete | None | Delete calendar object. |
| List calendarView | event collection | Get the occurrences, exceptions, and single instances of events in a calendar view defined by a time range, from the user's primary calendar (../me/calendarview) or from a specified calendar. |
| List events | event collection | Retrieve a list of events in a calendar. The list contains single instance meetings and series masters. |
| Create event | event | Create a new event in the default or specified calendar. |
| findMeetingTimes | meetingTimeSuggestionsResult | Suggest meeting times and locations based on organizer and attendee availability, and time or location constraints. |
| Create single-value extended property | calendar | Create one or more single-value extended properties in a new or existing calendar. |
| Get calendar with single-value extended property | calendar | Get calendars that contain a single-value extended property by using $expand or $filter. |
| Create multi-value extended property | calendar | Create one or more multi-value extended properties in a new or existing calendar. |
| Get calendar with multi-value extended property | calendar | Get a calendar that contains a multi-value extended property by using $expand. |
| Property | Type | Description |
|---|---|---|
| canEdit | Boolean | True if the user can write to the calendar, false otherwise. This property is true for the user who created the calendar. This property is also true for a user who has been shared a calendar and granted write access. |
| canShare | Boolean | True if the user has the permission to share the calendar, false otherwise. Only the user who created the calendar can share it. |
| canViewPrivateItems | Boolean | True if the user can read calendar items that have been marked private, false otherwise. |
| changeKey | String | Identifies the version of the calendar object. Every time the calendar is changed, changeKey changes as well. This allows Exchange to apply changes to the correct version of the object. Read-only. |
| color | calendarColor | Specifies the color theme to distinguish the calendar from other calendars in a UI. The property values are: LightBlue=0, LightGreen=1, LightOrange=2, LightGray=3, LightYellow=4, LightTeal=5, LightPink=6, LightBrown=7, LightRed=8, MaxColor=9, Auto=-1 |
| id | String | The group's unique identifier. Read-only. |
| name | String | The calendar name. |
| owner | emailAddress | If set, this represents the user who created or added the calendar. For a calendar that the user created or added, the owner property is set to the user. For a calendar shared with the user, the owner property is set to the person who shared that calendar with the user. |
| Relationship | Type | Description |
|---|---|---|
| calendarView | Event collection | The calendar view for the calendar. Navigation property. Read-only. |
| events | Event collection | The events in the calendar. Navigation property. Read-only. |
| multiValueExtendedProperties | multiValueLegacyExtendedProperty collection | The collection of multi-value extended properties defined for the calendar. Read-only. Nullable. |
| singleValueExtendedProperties | singleValueLegacyExtendedProperty collection | The collection of single-value extended properties defined for the calendar. Read-only. Nullable. |
Here is a JSON representation of the resource
{
"canEdit": "boolean",
"canShare": "boolean",
"canViewPrivateItems": "boolean",
"changeKey": "string",
"color": "String",
"id": "string (identifier)",
"name": "string",
"owner": {"@odata.type": "microsoft.graph.emailAddress"}
}