skills/create-calendar-event/SKILL.md
# Create Calendar Event Creates a new event in a specified calendar. Use this operation when you need to schedule a meeting or event in a particular calendar with attendees, location, and time details. ## API Details - **API**: Microsoft Outlook Calendar API - **Method**: POST - **Path**: `/me/calendars/{calendarId}/events` - **Operation ID**: `createCalendarEvent` - **Tag**: Events - **OpenAPI**: [microsoft-outlook-calendar-api.yaml](../../openapi/microsoft-outlook-calendar-api.yaml) ## San
npx skillsauth add naftiko/microsoft-outlook-sandbox skills/create-calendar-eventInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Creates a new event in a specified calendar. Use this operation when you need to schedule a meeting or event in a particular calendar with attendees, location, and time details.
/me/calendars/{calendarId}/eventscreateCalendarEventMock server URL: http://localhost:8080/rest/microsoft-outlook-calendar-api/1.0.0/me/calendars/{calendarId}/events
Authorization: Bearer {access-token}Content-Type: application/jsonCalendars.ReadWrite| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| calendarId | string | Yes | The unique identifier of the calendar to create the event in |
| Property | Type | Required | Description |
|----------|------|----------|-------------|
| subject | string | Yes | The subject/title of the event |
| start | object | Yes | Start date/time with dateTime and timeZone properties |
| end | object | Yes | End date/time with dateTime and timeZone properties |
| attendees | array | No | List of attendees with emailAddress and type |
| location | object | No | Location with displayName property |
| body | object | No | Event body with contentType and content |
| isAllDay | boolean | No | Whether the event lasts all day |
curl -X POST "http://localhost:8080/rest/microsoft-outlook-calendar-api/1.0.0/me/calendars/AAMkAGI1AAA=/events" \
-H "Authorization: Bearer {access-token}" \
-H "Content-Type: application/json" \
-d '{
"subject": "Project Review",
"start": {
"dateTime": "2025-06-20T14:00:00",
"timeZone": "Pacific Standard Time"
},
"end": {
"dateTime": "2025-06-20T15:00:00",
"timeZone": "Pacific Standard Time"
},
"attendees": [
{
"emailAddress": {
"name": "John Doe",
"address": "[email protected]"
},
"type": "required"
}
],
"location": {
"displayName": "Conference Room B"
}
}'
{
"id": "AAMkAGI1NEW=",
"subject": "Project Review",
"start": {
"dateTime": "2025-06-20T14:00:00",
"timeZone": "Pacific Standard Time"
},
"end": {
"dateTime": "2025-06-20T15:00:00",
"timeZone": "Pacific Standard Time"
},
"organizer": {
"emailAddress": {
"name": "Jane Smith",
"address": "[email protected]"
}
},
"isAllDay": false,
"isCancelled": false,
"type": "singleInstance",
"attendees": [
{
"emailAddress": {
"name": "John Doe",
"address": "[email protected]"
},
"type": "required",
"status": {
"response": "none",
"time": "0001-01-01T00:00:00Z"
}
}
],
"location": {
"displayName": "Conference Room B"
}
}
Use this operation when you need to create a new event in a specific calendar. You must provide the calendar ID, subject, start time, and end time at minimum. Optionally include attendees, a location, and a body. The response returns a 201 status code with the created event object. Meeting invitations are automatically sent to attendees.
tools
# Update Open Extension Update an existing open type extension on a message. ## API Details - **API**: Microsoft Outlook Mail API - **Method**: PATCH - **Path**: `/me/messages/{message-id}/extensions/{extension-id}` - **Operation ID**: `updateOpenExtension` - **Tag**: Extensions - **OpenAPI**: [microsoft-outlook-mail-api.yaml](../../openapi/microsoft-outlook-mail-api.yaml) ## Sandbox Mock server URL: `http://localhost:8080/rest/microsoft-outlook-mail-api/1.0.0/me/messages/{message-id}/exten
development
# Update Message Updates the properties of an existing message in the signed-in user's mailbox, such as marking it as read or changing its importance. ## API Details - **API**: Microsoft Outlook Mail API - **Method**: PATCH - **Path**: `/me/messages/{message-id}` - **Operation ID**: `updateMessage` - **Tag**: Messages - **OpenAPI**: [microsoft-outlook-mail-api.yaml](../../openapi/microsoft-outlook-mail-api.yaml) ## Sandbox Mock server URL: `http://localhost:8080/rest/microsoft-outlook-mail-
development
# Update Inbox Rule Update the properties of an existing inbox message rule. ## API Details - **API**: Microsoft Outlook Mail API - **Method**: PATCH - **Path**: `/me/mailFolders/inbox/messageRules/{messageRule-id}` - **Operation ID**: `updateMessageRule` - **Tag**: InboxRules - **OpenAPI**: [microsoft-outlook-mail-api.yaml](../../openapi/microsoft-outlook-mail-api.yaml) ## Sandbox Mock server URL: `http://localhost:8080/rest/microsoft-outlook-mail-api/1.0.0/me/mailFolders/inbox/messageRule
development
# Update Mailbox Settings Update the user's mailbox settings such as automatic replies, locale, time zone, or working hours. ## API Details - **API**: Microsoft Outlook Mail API - **Method**: PATCH - **Path**: `/me/mailboxSettings` - **Operation ID**: `updateMailboxSettings` - **Tag**: MailboxSettings - **OpenAPI**: [microsoft-outlook-mail-api.yaml](../../openapi/microsoft-outlook-mail-api.yaml) ## Sandbox Mock server URL: `http://localhost:8080/rest/microsoft-outlook-mail-api/1.0.0/me/mail