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.scheduleTriggern8n-nodes-base.codetoday 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.microsoftOutlookstart/dateTime ge '{{$json.today}}' and start/dateTime lt '{{$json.tomorrow}}'
n8n-nodes-base.setidsubjectdescription (from bodyPreview)meeting_startmeeting_endattendeesmeeting_organizermeeting_organizer_emailmeeting_linkn8n-nodes-base.codegenerateMeetingReminderEmail 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.