This workflow automatically runs at a scheduled time (daily at 8 AM by default), calculates the current day's date range, fetches all calendar events from a specified Microsoft Outlook account for that day, formats these events into a user-friendly HTML email, and then sends this digest to a designated email address.
n8n-nodes-base.scheduleTrigger
n8n-nodes-base.code
today
to beginning of current day (00:00:00).tomorrow
to beginning of next day (00:00:00).2023-10-27T00:00:00Z
).today
and tomorrow
ISO date strings.n8n-nodes-base.microsoftOutlook
start/dateTime ge '{{$json.today}}' and start/dateTime lt '{{$json.tomorrow}}'
n8n-nodes-base.set
id
subject
description
(from bodyPreview
)meeting_start
meeting_end
attendees
meeting_organizer
meeting_organizer_email
meeting_link
n8n-nodes-base.code
generateMeetingReminderEmail
function to format each meeting into an HTML "card."{
"subject": "email subject string",
"html": "generated HTML content string"
}
n8n-nodes-base.emailSend
[email protected]
[email protected]
{{ $json.subject }}
(dynamic from Generate HTML node){{ $json.html }}
(dynamic from Generate HTML node)Schedule (Schedule Trigger node):
Modify the trigger hour, minutes, or days of week to change when the workflow runs.
Date Range (Code node):
Adjust JS to change date range (e.g., next business day, upcoming week).
Outlook Calendar (Microsoft Outlook node):
Specify Calendar ID or refine OData filters for event selection.
Event Details (Edit Fields node):
Add/remove/modify event fields extracted.
Email Appearance and Content (Generate HTML node):
Change CSS styling, meeting details, or subject line logic.
No Meetings Scenario:
Use an "If" node after "Edit Fields" to handle no-meeting days (e.g., send "No meetings today!" email or skip email).
Email Recipients (Send Email node):
Update "From" and "To" emails; multiple recipients separated by commas.
Add these credentials in your n8n instance under Credentials:
Microsoft Outlook (OAuth2 API):
Outlook
(ID: JcYqVJwcwZIhB8oy
)Calendars.Read
permission.SMTP:
SMTP account
(ID: vCexcphurglwGBfk
)Ensure these credentials are configured correctly with required permissions. Activate the workflow for scheduled execution.
Made with ❤️ using n8n by Akhil.