Notion Roadmap to Stakeholder Email
Weekly, the flow reads a Notion product roadmap database, builds a formatted stakeholder update (shipped, in-progress, upcoming), emails it to a distribution list, and posts the highlights to a Teams channel. Turns a living Notion roadmap into a polished recurring stakeholder communication with no manual prep.
Provided as-is, without warranty of any kind. Review and test each pattern in a non-production environment before deploying it to live automations. See our Terms.
Overview
This flow turns a living Notion product roadmap into a recurring stakeholder update. Every Thursday at 15:00 it reads the roadmap database, groups items by status (Shipped / In Progress / Upcoming), builds a formatted HTML summary, emails it to a stakeholder distribution list, and posts a highlights card to a Teams channel.
Why it matters: stakeholder updates are valuable but tedious to assemble. Generating them from the single source of truth keeps everyone informed with zero manual prep and no drift between the roadmap and the update.
Ships Off (Stopped).
Use Case
A product/PMO team maintains the roadmap in Notion and wants a consistent weekly stakeholder email plus Teams highlights, generated automatically from the current roadmap state.
Flow Architecture
Weekly Thursday 15:00 Recurrence
RecurrenceWeekly update cadence (Thursday 15:00 Eastern).
Initialize Config & Accumulators
Initialize variableBinds the stakeholder list and Teams group/channel, computes the report date, and seeds per-status HTML row accumulators and counters.
Query Roadmap
Notion - Query_a_databaseReads all roadmap rows (the IP connector has no server-side filter).
For Each Roadmap Item
Apply to each (concurrency 1)Reads name, status, quarter, and target date, then a Switch routes the row into the Shipped / In Progress / Upcoming bucket and appends an HTML row.
Build Update HTML
ComposeAssembles the full stakeholder email (three status sections plus a summary line).
Email Stakeholders
Outlook - SendEmailV2Sends the HTML update to the distribution list.
Post Highlights to Teams
Teams - PostMessageToConversationPosts a highlights card (counts plus an email pointer).
Environment Variables
| Schema name | Type | Default | Description |
|---|---|---|---|
| flowlibs_NotionRoadmapDatabaseId | String | 00000000000000000000000000000000 | The 32-char Notion database ID of the roadmap DB. Replace before turning on. |
| flowlibs_StakeholderDistList | String | stakeholders@contoso.com | Recipient(s) of the weekly update (semicolon-separated for multiple). |
| flowlibs_TeamsGroupId | String | <your-team-id> | Teams team (group) ID for highlights. |
| flowlibs_TeamsChannelId | String | <your-channel-id> | Teams channel ID for highlights. |
Connectors & Connections
| Connector | API name | Actions used |
|---|---|---|
| Notion | shared_notionip | Query_a_database |
| Office 365 Outlook | shared_office365 | SendEmailV2 |
| Microsoft Teams | shared_teams | PostMessageToConversation |
Note — All connections are referenced as solution connection references; the flow is portable between environments as long as a connection is mapped at import time.
Customization Guide
Almost every realistic variant of this flow can be implemented by changing environment variable values. A few cases require small edits inside the flow definition — those are called out explicitly below.
- Audience tailoring
- Produce a short exec version (themes/counts only) vs a detailed PM version (per-item table) by branching the email body.
- Change highlight
- Call out items whose status changed since last week by storing last week's snapshot in Dataverse/SharePoint and diffing.
- Status labels
- The Switch keys are shipped and in progress (lowercased); everything else falls through to Upcoming. Add cases like at risk or blocked as needed.
- Cadence
- Adjust the recurrence (day/time/timezone) for a different reporting rhythm.
- Public roadmap
- Mirror the generated HTML to a SharePoint page or Power Pages public view.
Key Expressions
The flow is intentionally light on Power Fx / WDL gymnastics — the heaviest expressions are the branch-name concatenation and the approval outcome check. They are listed below in the order they appear in the flow.
EXPR.01Status normalization
Reads a Status or Select property and lowercases it for the Switch.
EXPR.02Roadmap loop source
The rows returned by the Notion query.
EXPR.03Report date
Human-readable date shown on the update.
EXPR.04Row append (per bucket)
One HTML table row per roadmap item.
Comments
Sign in to join the conversation.
Sign inNo comments yet. Be the first to share your experience with this flow.