Overview
Microsoft’s calendar application for scheduling and managing events.. Through Langdock’s integration, you can access and manage Outlook Calendar directly from your conversations.Authentication: OAuth
Category: Productivity & Collaboration
Availability: All workspace plans
Available Actions
Get today’s events
outlook_calendar.get_todays_events
Retrieve all calendar events for today from your calendar or a shared calendar. Always include the user’s timezone. If not provided, first call ‘Get calendar settings’ to fetch the current timezone and pass it using the timezone field to avoid UTC results.
Requires Confirmation: No
Parameters:
timezone(TEXT, Optional): IANA timezone identifier for proper time display (e.g. ‘Europe/Berlin’). If omitted, results may be in UTC. Use ‘Get calendar settings’ to retrieve it.calendarowner(TEXT, Optional): Email address to view someone else’s calendar events. Leave empty for your own events.includeFields(TEXT, Optional): Comma-separated list of fields to return. Use to reduce response size if truncation occurs. Default fields: id, subject, bodyPreview, body, start, end, location, organizer, attendees, isAllDay, isCancelled, importance, sensitivity, showAs, webLink, recurrence, responseStatus, categories
Get events for specific date
outlook_calendar.get_date_events
Retrieve all calendar events for a specific date only. Always include the user’s timezone. If not provided, first call ‘Get calendar settings’ to fetch the current timezone and pass it using the timezone field to avoid UTC results.
Requires Confirmation: No
Parameters:
date(TEXT, Required): The specific date to retrieve events for in ISO format.calendarowner(TEXT, Optional): Email address to view someone else’s calendar events. Leave empty for your own events.timezone(TEXT, Optional): IANA timezone identifier for proper time display (e.g. ‘Europe/Berlin’ or ‘America/New_York’). If not provided, UTC is used.includeFields(TEXT, Optional): Comma-separated list of fields to return. Use to reduce response size if truncation occurs. Default fields: id, subject, bodyPreview, body, start, end, location, organizer, attendees, isAllDay, isCancelled, importance, sensitivity, showAs, webLink, recurrence, responseStatus, categories
Create events
outlook_calendar.create_events
Creates outlook calendar events.
Requires Confirmation: Yes
Parameters:
eventSubject(TEXT, Required): The subject or title of the eventstartingTime(TEXT, Required): When the event starts in ISO 8601 format like “2025-03-11T12:00:00”endingTime(TEXT, Required): When the event ends in ISO 8601 format like “2025-03-11T12:00:00”timezone(TEXT, Required): The timezone of the outlook calendar of the user use the get calendar settings action to retrieve it or ask the user to go to outlook -> settings -> calendar -> view -> timezoneeventDescription(MULTI_LINE_TEXT, Optional): Description of what is planned for the eventlocationName(TEXT, Optional): Event locationattendees(TEXT, Optional): Comma- or semicolon-separated list of REQUIRED attendee emails.optionalAttendees(TEXT, Optional): Comma- or semicolon-separated list of OPTIONAL attendee emails.calendarId(ID, Optional): The unique ID of the calendar to schedule the event in. Leave empty to use default calendar.isonlinemeeting(BOOLEAN, Optional): Set to true to create an online meeting with video conferencing detailsonlinemeetingprovider(TEXT, Optional): Online meeting provider: ‘teamsForBusiness’, ‘skypeForBusiness’, or ‘skype’recurrence(TEXT, Optional): Recurrence pattern as JSON. Example: {“pattern”:{“type”:“weekly”,“interval”:1,“daysOfWeek”:[“Tuesday”]},“range”:{“type”:“endDate”,“startDate”:“2025-07-15”,“endDate”:“2025-12-31”}}allowNewTimeProposals(BOOLEAN, Optional): If true, invitees can propose alternative times when respondingshowAs(SELECT, Optional): Set to busy by default, can be set to free, tentative, oof (out of office) or workingElsewhere
Update event
outlook_calendar.update_event
Update an existing calendar event.
Requires Confirmation: Yes
Parameters:
eventId(ID, Required): The unique ID of the event to updateeventSubject(TEXT, Optional): The subject or title of the eventstartingTime(TEXT, Optional): When the event starts in ISO 8601 format like “2025-03-11T12:00:00”endingTime(TEXT, Optional): When the event ends in ISO 8601 format like “2025-03-11T12:00:00”timezone(TEXT, Optional): The timezone for the eventeventDescription(TEXT, Optional): Description of what is planned for the eventlocationName(TEXT, Optional): Event locationattendees(TEXT, Optional): Comma- or semicolon-separated REQUIRED attendee emails to add or update to required.optionalAttendees(TEXT, Optional): Comma- or semicolon-separated OPTIONAL attendee emails to add or update to optional.removeAttendees(TEXT, Optional): Comma- or semicolon-separated attendee emails to remove from the event.replaceAttendees(BOOLEAN, Optional): If true, replace the entire attendee list with the attendees and optionalAttendees provided.isonlinemeeting(BOOLEAN, Optional): Set to true to make this an online meeting with video conferencing detailsonlinemeetingprovider(TEXT, Optional): Online meeting provider: ‘teamsForBusiness’, ‘skypeForBusiness’, or ‘skype’recurrence(TEXT, Optional): Recurrence pattern as JSON. Example: {“pattern”:{“type”:“weekly”,“interval”:1,“daysOfWeek”:[“Monday”,“Tuesday”,“Wednesday”,“Thursday”,“Friday”]},“range”:{“type”:“endDate”,“startDate”:“2025-07-14”,“endDate”:“2025-07-18”}}allowNewTimeProposals(BOOLEAN, Optional): If true, invitees can propose alternative times when respondingshowAs(SELECT, Optional): Set to busy by default, can be set to free, tentative, oof (out of office) or workingElsewhere
List calendars
outlook_calendar.list_calendars
Retrieve accessible calendars including your own and shared calendars
Requires Confirmation: No
Parameters:
calendarowner(TEXT, Optional): Email address to view someone else’s calendars. Leave empty for your own calendars.sortby(TEXT, Optional): Sort calendars by fieldincludefields(TEXT, Optional): Comma-separated list of fields to includetop(TEXT, Optional): Maximum number of calendars to return
List calendar events
outlook_calendar.list_calendar_events
Search and filter calendar events from your own or a shared calendar. Accepts an email address (for another user’s calendar), a calendar ID, or a calendar name. Filter by subject, date range, organizer, or status. Always include the user’s timezone via ‘Get calendar settings’ to avoid UTC results.
Requires Confirmation: No
Parameters:
timezone(TEXT, Optional): IANA timezone identifier for proper time display (e.g. ‘Europe/Berlin’). If omitted, results may be in UTC. Use ‘Get calendar settings’ to retrieve it.datefrom(TEXT, Optional): Start date for events in ISO format. If only this is provided without ‘Date to’, events for that single day will be returned.dateto(TEXT, Optional): End date for events in ISO format. Optional - if omitted, defaults to end of the ‘Date from’ day.subjectcontains(TEXT, Optional): Filter events where subject contains this textorganizeremail(TEXT, Optional): Filter events by organizer email addresscalendarIdentifier(ID, Optional): Email address for another user’s calendar, OR a calendar ID, OR a calendar name. Leave empty for your own default calendar.showas(TEXT, Optional): Filter by availability status: ‘free’, ‘busy’, ‘tentative’, ‘outOfOffice’includecancelled(TEXT, Optional): Include cancelled events in resultssortby(TEXT, Optional): Sort events by fieldmaxEvents(TEXT, Optional): Maximum number of events to returnincludebody(BOOLEAN, Optional): Include full body content (HTML) in the response. Default is false to keep responses lean.
Get event
outlook_calendar.get_event
Retrieve a specific event by its ID
Requires Confirmation: No
Parameters:
eventId(ID, Required): The unique ID of the event
Delete event
outlook_calendar.delete_event
Deletes a calendar event by its ID. For recurring events: pass the series master ID to delete all occurrences, or pass a single occurrence ID to delete only that instance
Requires Confirmation: Yes
Parameters:
eventId(ID, Required): The unique ID of the event to deletecalendarId(ID, Optional): The unique ID of the calendar to delete the event from
Get calendar settings
outlook_calendar.get_calendar_settings
Retrieve calendar settings including timezone, working hours, and other configurations
Requires Confirmation: No
Parameters: None
Output: Returns the operation result
Find meeting times
outlook_calendar.find_meeting_times
Find available meeting times for yourself and additional participants.
Requires Confirmation: No
Parameters:
participantEmail(TEXT, Optional): Email address of one additional participant. Your own availability is automatically included.additionalParticipants(TEXT, Optional): Comma-separated email addresses for multiple participantsstartTime(TEXT, Required): Specify the earliest possible start time for the search, formatted in ISO 8601 Date-Time format: ‘2025-05-22T09:00:00’.endTime(TEXT, Required): Latest possible end time in ISO 8601 formatduration(TEXT, Required): Specify the duration of the available slot using ISO 8601 format. For example, use ‘PT2H’ for a duration of 2 hours, ‘PT30M’ for 30 minutes, or ‘P1DT3H’ for 1 day and 3 hours.)timezone(TEXT, Required): The timezone of the outlook calendar of the user use the get calendar settings action to retrieve it or ask the user to go to outlook -> settings -> calendar -> view -> timezoneminimumAttendeePercentage(NUMBER, Optional): Minimum percentage of attendees that must be available (1-100)maxSuggestions(NUMBER, Optional): Maximum number of meeting time suggestions to return (1-20)activityDomain(TEXT, Optional): Time search scope: ‘work’ (business hours), ‘personal’ (includes weekends), ‘unrestricted’ (all hours)
Propose new time
outlook_calendar.propose_new_time
Tentatively accept the event and propose a different time.
Requires Confirmation: Yes
Parameters:
eventId(ID, Required): Target event IDstartingTime(TEXT, Required): When the event starts in ISO 8601 format like “2025-03-11T12:00:00”endingTime(TEXT, Required): When the event ends in ISO 8601 format like “2025-03-11T12:00:00”timezone(TEXT, Required): The timezone of the outlook calendar of the user use the get calendar settings action to retrieve it or ask the user to go to outlook -> settings -> calendar -> view -> timezonecomment(TEXT, Optional): Optional response commentsendResponse(BOOLEAN, Optional): Whether to send a response message
List proposed times
outlook_calendar.list_proposed_times
Retrieve attendee proposed times for an event.
Requires Confirmation: No
Parameters:
eventId(ID, Required): Target event ID
Apply proposed time
outlook_calendar.apply_proposed_time
Update the event to a proposed start and end time.
Requires Confirmation: Yes
Parameters:
eventId(ID, Required): Target event IDstartingTime(TEXT, Optional): New start in ISO 8601 (optional if selecting attendee proposal)endingTime(TEXT, Optional): New end in ISO 8601 (optional if selecting attendee proposal)timezone(TEXT, Optional): IANA timezone identifier for proper time display (e.g. ‘Europe/Berlin’). If omitted and selecting an attendee proposal, the proposal’s timezone is used; otherwise, results may be in UTC.attendeeEmail(TEXT, Optional): Pick the proposal from this attendee (alternative to providing times explicitly)
Triggers
New event matching search
outlook_calendar.new_event_matching_search
Triggers when new calendar events matching the specified search query are created
Parameters:
searchQuery(TEXT, Required): Text to search for in event subjects. Example: ‘Meeting’, ‘Review’, ‘Project kickoff’calendarNames(TEXT, Optional): Comma-separated list of calendar names to monitor for new events. Defaults to ‘Calendar’ if not specifieddaysToInclude(NUMBER, Optional): Number of days in the future to look for events. Default is 30 days
New event
outlook_calendar.new_event
Triggers when new calendar events are created in specified calendars
Parameters:
calendarNames(TEXT, Optional): Comma-separated list of calendar names to monitordaysToInclude(NUMBER, Optional): Number of days in the future to look for events