Create Calendar

Use this API to create a new Calendar in a calendar group.


One of the following permissions is required to call this API. To learn more, including how to choose permissions, see Permissions.

Permission type Permissions (from least to most privileged)
Delegated (work or school account) Calendars.ReadWrite
Delegated (personal Microsoft account) Calendars.ReadWrite
Application Calendars.ReadWrite

HTTP request

A user's default calendarGroup.

POST /me/calendarGroup/calendars
POST /users/{id | userPrincipalName}/calendarGroup/calendars

Any calendarGroup of a user.

POST /me/calendarGroups/{id}/calendars
POST /users/{id | userPrincipalName}/calendarGroups/{id}/calendars

Request headers

Header Value
Authorization Bearer {token}. Required.
Content-Type application/json. Required.

Request body

In the request body, supply a JSON representation of Calendar object.


If successful, this method returns 201, Created response code and Calendar object in the response body.



Here is an example of the request.

Content-type: application/json
Content-length: 78

  "name": "name-value",
  "color": {

In the request body, supply a JSON representation of calendar object.


Here is an example of the response. Note: The response object shown here may be truncated for brevity. All of the properties will be returned from an actual call.

HTTP/1.1 200 OK
Content-type: application/json
Content-length: 98

  "name": "name-value",
  "color": {
  "changeKey": "changeKey-value",
  "id": "id-value"