turbot/microsoft365
steampipe plugin install microsoft365

Table: microsoft365_my_calendar_event - Query Microsoft365 Calendar Events using SQL

Microsoft365 Calendar is a time-management and scheduling service within Microsoft365. It allows users to create, manage, and track appointments and meetings. Calendar Events are individual instances of appointments or meetings in a user's primary calendar.

Table Usage Guide

The microsoft365_my_calendar_event table provides insights into Calendar Events within Microsoft365. As a project manager or team lead, explore event-specific details through this table, including event schedules, attendees, and locations. Utilize it to manage and track appointments and meetings, ensuring efficient time-management and scheduling.

Important Notes

  • If not authenticating with the Azure CLI, this table requires the user_id argument to be configured in the connection config.

Examples

Basic info

Explore upcoming events in your Microsoft365 calendar to prepare for your day. This query helps you identify the subject, online meeting URL, and the start and end times of your next 10 events.

select
subject,
online_meeting_url,
start_time,
end_time
from
microsoft365_my_calendar_event
order by
start_time
limit
10;
select
subject,
online_meeting_url,
start_time,
end_time
from
microsoft365_my_calendar_event
order by
start_time
limit
10;

List upcoming events scheduled in next 4 days

Explore your upcoming online events for the next four days, including their subject and timings, to effectively plan and manage your schedule.

select
subject,
online_meeting_url,
start_time,
end_time
from
microsoft365_my_calendar_event
where
start_time >= current_date
and end_time <= (current_date + interval '4 days')
order by
start_time;
select
subject,
online_meeting_url,
start_time,
end_time
from
microsoft365_my_calendar_event
where
start_time >= date('now')
and end_time <= date('now', '+4 days')
order by
start_time;

List upcoming events scheduled in current month

Gain insights into upcoming events scheduled for the current month. This query is useful for planning and managing your time efficiently by providing a comprehensive view of your calendar events in the near future.

select
subject,
online_meeting_url,
start_time,
end_time
from
microsoft365_my_calendar_event
where
start_time >= date_trunc('month', current_date)
and end_time <= date_trunc('month', current_date) + interval '1 month'
order by
start_time;
select
subject,
online_meeting_url,
start_time,
end_time
from
microsoft365_my_calendar_event
where
start_time >= date('now', 'start of month')
and end_time <= date('now', 'start of month', '+1 month')
order by
start_time;

List events scheduled in current week

Explore which online meetings are scheduled for the current week. This is useful for planning ahead and ensuring you are prepared for upcoming commitments.

select
subject,
online_meeting_url,
start_time,
end_time
from
microsoft365_my_calendar_event
where
start_time >= date_trunc('week', current_date)
and end_time < (date_trunc('week', current_date) + interval '7 days')
order by
start_time;
select
subject,
online_meeting_url,
start_time,
end_time
from
microsoft365_my_calendar_event
where
start_time >= date('now', 'weekday 0', '-7 days')
and end_time < date('now', 'weekday 0', '+7 days')
order by
start_time;

Schema for microsoft365_my_calendar_event

NameTypeOperatorsDescription
_ctxjsonbSteampipe context in JSON form, e.g. connection_name.
allow_new_time_proposalsbooleanTrue if the meeting organizer allows invitees to propose a new time when responding; otherwise, false. Default is true.
attendeesjsonbThe collection of attendees for the event.
bodyjsonbThe body of the message associated with the event. It can be in HTML or text format.
body_previewtextThe preview of the message associated with the event in text format.
categoriesjsonbThe categories associated with the event.
change_keytextIdentifies the version of the event object. Every time the event is changed, ChangeKey changes as well. This allows Exchange to apply changes to the correct version of the object.
created_date_timetimestamp with time zoneThe Timestamp type represents date and time information using ISO 8601 format and is always in UTC time.
endjsonbThe date, time, and time zone that the event ends. By default, the end time is in UTC.
end_timetimestamp with time zone>, >=, =, <, <=The end date and time of the event. By default, the end time is in UTC.
has_attachmentsbooleanTrue if the event has attachments.
hide_attendeesbooleanIf set to true, each attendee only sees themselves in the meeting request and meeting Tracking list. Default is false.
ical_uidtextA unique identifier for an event across calendars. This ID is different for each occurrence in a recurring series.
idtext=Unique identifier for the event.
importancebigintThe importance of the event. The possible values are: low, normal, high.
is_all_daybooleanTrue if the event lasts all day. If true, regardless of whether it's a single-day or multi-day event, start and end time must be set to midnight and be in the same time zone.
is_cancelledbooleanTrue if the event has been canceled.
is_draftbooleanTrue if the user has updated the meeting in Outlook but has not sent the updates to attendees.
is_online_meetingbooleanTrue if this event has online meeting information (that is, onlineMeeting points to an onlineMeetingInfo resource), false otherwise. Default is false (onlineMeeting is null).
is_organizerbooleanTrue if the calendar owner (specified by the owner property of the calendar) is the organizer of the event (specified by the organizer property of the event).
is_reminder_onbooleanTrue if an alert is set to remind the user of the event.
last_modified_date_timetimestamp with time zoneThe Timestamp type represents date and time information using ISO 8601 format and is always in UTC time.
locationjsonbThe location of the event.
locationsjsonbThe locations where the event is held or attended from.
online_meetingjsonbDetails for an attendee to join the meeting online. Default is null.
online_meeting_providertextRepresents the online meeting service provider. By default, onlineMeetingProvider is unknown. The possible values are unknown, teamsForBusiness, skypeForBusiness, and skypeForConsumer.
online_meeting_urltextA URL for an online meeting. The property is set only when an organizer specifies in Outlook that an event is an online meeting such as Skype.
organizerjsonbThe organizer of the event.
original_end_time_zonetextThe end time zone that was set when the event was created.
original_start_time_zonetextThe start time zone that was set when the event was created.
recurrencejsonbThe recurrence pattern for the event.
reminder_minutes_before_startbigintThe number of minutes before the event start time that the reminder alert occurs.
response_requestedbooleanIf true, it represents the organizer would like an invitee to send a response to the event.
response_statusjsonbIndicates the type of response sent in response to an event message.
sensitivitytextThe sensitivity of the event. Possible values are: normal, personal, private, confidential.
series_master_idtextThe ID for the recurring series master item, if this event is part of a recurring series.
show_astextThe status to show. Possible values are: free, tentative, busy, oof, workingElsewhere, unknown.
startjsonbThe start date, time, and time zone of the event. By default, the start time is in UTC.
start_timetimestamp with time zone>, >=, =, <, <=The start date and time of the event. By default, the start time is in UTC.
subjecttextThe text of the event's subject line.
tenant_idtextThe Azure Tenant ID where the resource is located.
titletextTitle of the resource.
transaction_idtextA custom identifier specified by a client app for the server to avoid redundant POST operations in case of client retries to create the same event.
user_idtextID or email of the user.
web_linktextThe URL to open the event in Outlook on the web.

Export

This table is available as a standalone Exporter CLI. Steampipe exporters are stand-alone binaries that allow you to extract data using Steampipe plugins without a database.

You can download the tarball for your platform from the Releases page, but it is simplest to install them with the steampipe_export_installer.sh script:

/bin/sh -c "$(curl -fsSL https://steampipe.io/install/export.sh)" -- microsoft365

You can pass the configuration to the command with the --config argument:

steampipe_export_microsoft365 --config '<your_config>' microsoft365_my_calendar_event