Events
Captures core details of calendar events, such as start and end times, locations, organizers, and recurrence rules. Maps dynamically to API fields.
Table Specific Information
Select
By default, the driver uses the Microsoft Graph alias 'me' for the UserId input to return events for the signed-in user.
To override this, you can specify the UserId in the WHERE clause when returning events:
SELECT * FROM Events WHERE UserId = 'abc123' AND subject LIKE '%test%'
The GroupId can be a calendar type Id or a group Id. For example:
SELECT * FROM Events WHERE GroupId = 'enter your group Id here'
Insert
To create a new event, you must specify start_dateTime, start_timeZone, end_dateTime, and end_timeZone:
INSERT INTO Events (subject, body_content, start_DateTime, start_TimeZone, end_DateTime, end_TimeZone) VALUES ('New Test Event', 'Event created using Office365Provider', '2016-01-01T10:00:00', 'UTC', '2016-01-01T11:00:00', 'UTC')
Note: By default, this statement creates your event under the default calendar.
To create a new event using client credentials, you must specify UserId:
INSERT INTO Events (subject, body_content, start_dateTime, start_timeZone, end_dateTime, end_timeZone, UserId) VALUES ('New Test Event', 'Event created using Office365Provider', '2016-01-01T10:00:00', 'UTC', '2016-01-01T11:00:00', 'UTC', '92dfdfc6-f1d4-4965-9f71-30e4da4fa7fe')
Non-primitive collection fields such as attendees must be provided as full JSON aggregates when inserting events:
INSERT INTO Events (
attendees,
subject,
body_content,
start_dateTime,
start_timeZone,
end_dateTime,
end_timeZone,
UserId
)
VALUES (
'[{"emailAddress":{"address":"[email protected]","name":"Existing attendee"},"type":"required"},
{"emailAddress":{"address":"[email protected]","name":"Another New Person"},"type":"optional"}]',
'New Test Event',
'Event created using Office365Provider',
'2025-10-10T10:00:00',
'UTC',
'2025-10-10T11:00:00',
'UTC',
'a9920804-3212-4f9d-aac7-f55c697fa2bc'
);
Update
Non-primitive collection fields such as attendees must be provided as full JSON aggregates when updating events:
UPDATE Events
SET subject = 'Test subject',
attendees = '[{"emailAddress":{"address":"[email protected]","name":"Required attendee"},"type":"required"},
{"emailAddress":{"address":"[email protected]","name":"Another New Person"},"type":"optional"}]'
WHERE Id = 'AAMkADAxN2QyZTIwLTY0YjEtNDZiNy04ZjFhLTU2MzA0ZWNjMGNjYwBGAAAAAADpUZiyrqBVQpCowL_0uo9dBwBhzddEbK9VR5ygMcniqu-UAAAAAAENAABhzddEbK9VR5ygMcniqu-UAACrGWckAAA=';
Columns
| Name | Type | ReadOnly | References | Description |
| id [KEY] | String | True |
Unique identifier for the event record. | |
| Etag | String | False |
Entity tag used to identify changes to the event data since it was last retrieved. | |
| categories | String | False |
List of categories assigned to the event for organization or filtering. | |
| changeKey | String | False |
Version key that updates every time the event is changed. | |
| createdDateTime | Datetime | False |
Timestamp indicating when the event was created. | |
| lastModifiedDateTime | Datetime | False |
Timestamp indicating the most recent update to the event. | |
| allowNewTimeProposals | Bool | False |
Indicates whether attendees are allowed to propose a new meeting time. | |
| attendees | String | False |
List of attendees invited to the event. For example: [email protected], [email protected]. | |
| body_content | String | False |
Full message body or description of the event. | |
| body_contentType | String | False |
Format of the body content, such as text or HTML. | |
| bodyPreview | String | False |
Short preview or snippet from the event description. | |
| end_dateTime | Datetime | False |
End time of the event in local time. | |
| end_timeZone | String | False |
Time zone associated with the end time. | |
| hasAttachments | Bool | False |
Indicates whether the event has associated file attachments. | |
| hideAttendees | Bool | False |
True if attendee information is hidden from other participants. | |
| iCalUId | String | False |
Unique identifier used to synchronize the event across calendar systems. | |
| importance | String | False |
Importance level of the event, such as low, normal, or high. | |
| isAllDay | Bool | False |
True if the event spans the entire day without specific start or end times. | |
| isCancelled | Bool | False |
True if the event has been canceled. | |
| isDraft | Bool | False |
True if the event is a draft and has not been finalized. | |
| isOnlineMeeting | Bool | False |
True if the event includes an online meeting component. | |
| isOrganizer | Bool | False |
True if the current user is the organizer of the event. | |
| isReminderOn | Bool | False |
Indicates whether a reminder is enabled for the event. | |
| location_address_city | String | False |
City component of the event's location. | |
| location_address_countryOrRegion | String | False |
Country or region of the event's location. | |
| location_address_postalCode | String | False |
Postal code for the event location. | |
| location_address_state | String | False |
State or province of the event location. | |
| location_address_street | String | False |
Street address where the event takes place. | |
| location_coordinates_accuracy | Double | False |
Precision of the location's geographic coordinates in meters. | |
| location_coordinates_altitude | Double | False |
Altitude of the event location in meters above sea level. | |
| location_coordinates_altitudeAccuracy | Double | False |
Accuracy of the altitude measurement in meters. | |
| location_coordinates_latitude | Double | False |
Latitude coordinate of the event location. | |
| location_coordinates_longitude | Double | False |
Longitude coordinate of the event location. | |
| location_displayName | String | False |
Display name of the event location. | |
| location_locationEmailAddress | String | False |
Email address of the location resource, such as a meeting room. | |
| location_locationType | String | False |
Type of location, such as default, conference room, or home address. | |
| location_locationUri | String | False |
URI or web-based reference for the location, if available. | |
| location_uniqueId | String | False |
Unique identifier for the location object. | |
| location_uniqueIdType | String | False |
Source of the location ID, such as directory or locationStore. | |
| locations | String | False |
List of additional locations for the event. For example: Conference Room A, Main Hall. | |
| onlineMeeting_conferenceId | String | False |
Conference ID used by the online meeting provider. | |
| onlineMeeting_joinUrl | String | False |
Join URL used by participants to access the online meeting. | |
| onlineMeeting_phones | String | False |
Phone numbers available for dial-in access to the online meeting. | |
| onlineMeeting_quickDial | String | False |
Quick dial string that participants can use to join the meeting quickly. | |
| onlineMeeting_tollFreeNumbers | String | False |
Toll-free phone numbers for joining the online meeting. For example: 8001234567, 8887654321. | |
| onlineMeeting_tollNumber | String | False |
Standard toll number for dialing into the online meeting. | |
| onlineMeetingProvider | String | False |
Online meeting provider used for the event, such as Teams or Skype for Business. | |
| onlineMeetingUrl | String | False |
Full URL to the online meeting interface. | |
| organizer_emailAddress_address | String | False |
Email address of the event organizer. | |
| organizer_emailAddress_name | String | False |
Display name of the event organizer. | |
| originalEndTimeZone | String | False |
Time zone that was originally assigned to the event end time. | |
| originalStart | Datetime | False |
Original start time of the event before any changes were made. | |
| originalStartTimeZone | String | False |
Time zone that was originally assigned to the event start time. | |
| recurrence_pattern_dayOfMonth | Int | False |
Day of the month on which the event recurs, for monthly patterns. | |
| recurrence_pattern_daysOfWeek | String | False |
Days of the week when the event recurs. For example: Monday, Wednesday, Friday. | |
| recurrence_pattern_firstDayOfWeek | String | False |
Day considered the start of the week for recurrence calculations. | |
| recurrence_pattern_index | String | False |
Occurrence within the month for weekly patterns, such as first or last. | |
| recurrence_pattern_interval | Int | False |
Interval between recurrences, such as every 2 weeks or every 3 days. | |
| recurrence_pattern_month | Int | False |
Month of the year when the event occurs, used for yearly patterns. | |
| recurrence_pattern_type | String | False |
Pattern type for recurrence, such as daily, weekly, monthly, or yearly. | |
| recurrence_range_endDate | Datetime | False |
Date on which the recurring event ends. | |
| recurrence_range_numberOfOccurrences | Int | False |
Number of times the event is set to occur. | |
| recurrence_range_recurrenceTimeZone | String | False |
Time zone used for the recurrence pattern. | |
| recurrence_range_startDate | Datetime | False |
Start date of the recurrence range. | |
| recurrence_range_type | String | False |
Type of recurrence range, such as endDate, numberOfOccurrences, or noEnd. | |
| reminderMinutesBeforeStart | Int | False |
Number of minutes before the start time when a reminder is triggered. | |
| responseRequested | Bool | False |
True if the organizer has requested attendee responses. | |
| responseStatus_response | String | False |
The current response status from an attendee, such as accepted or declined. | |
| responseStatus_time | Datetime | False |
Timestamp of the attendee's most recent response. | |
| sensitivity | String | False |
Sensitivity level of the event, such as normal, personal, private, or confidential. | |
| seriesMasterId | String | False |
Identifier for the master event in a recurring series. | |
| showAs | String | False |
How the event is displayed on calendars, such as free, busy, or out of office. | |
| start_dateTime | Datetime | False |
Start time of the event in local time. | |
| start_timeZone | String | False |
Time zone associated with the start time. | |
| subject | String | False |
Subject or title of the event. | |
| transactionId | String | False |
Client-defined identifier to detect duplicate event submissions. | |
| type | String | False |
Type of event, such as singleInstance, occurrence, exception, or seriesMaster. | |
| webLink | String | False |
URL that opens the event in a web browser. | |
| UserId | String | False |
Identifier of the user who owns or created the event. | |
| GroupId | String | False |
Identifier of the Microsoft 365 group associated with the event. |