Daily Task Summary Push Notification
Every morning, count your open Planner tasks and send a push notification with the total and top 3 priorities for the day.
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 runs on a daily morning recurrence and sends a push notification to the owner's Power Automate mobile app summarizing their open Microsoft Planner tasks for the day. It pulls every task from a configured Planner plan, filters out completed work, counts what's still open, identifies the top 3 priorities, and pushes the digest as a single mobile alert at 8:00 AM Eastern.
Use Case
Knowledge workers often start their day juggling multiple Planner buckets across plans without a clear view of what is on their plate. Email digests get buried, and Planner's native notifications are too granular to scan quickly. This flow delivers a single, mobile-friendly push notification each morning with the count of open tasks, the count of overdue items, and the names of the top 3 ranked tasks — all before the user even opens their laptop.
The flow is ideal for teams that:
- One-glance daily standup at 8:00 AM, delivered to the mobile device
- Surfaces top 3 priorities so the user knows where to start
- Highlights overdue work separately to drive immediate action
- Uses environment variables for Group/Plan IDs so the same flow can be redeployed across environments without editing actions
- Lightweight: no email, no Teams card — just a tap-to-open mobile push
Flow Architecture
Daily Morning Recurrence
RecurrenceFires every day at 8:00 AM Eastern Standard Time.
Initialize varGroupId
Initialize variableString — reads the flowlibs_PlannerGroupID environment variable.
Initialize varPlanId
Initialize variableString — reads the flowlibs_PlannerPlanID environment variable.
Initialize varOpenTaskCount
Initialize variableInteger counter, starts at 0.
Initialize varOverdueCount
Initialize variableInteger counter, starts at 0.
Initialize varTopTasksSummary
Initialize variableString accumulator for the top 3 task titles.
Initialize varTaskRank
Initialize variableInteger rank counter, starts at 0.
List All Plan Tasks
Planner — List tasksCalls Planner ListTasksByPlan using varPlanId to retrieve every task in the configured plan.
Filter Open Tasks
Filter arrayKeeps only tasks where percentComplete is less than 100.
Set Open Task Count
Set variableSets varOpenTaskCount to the length of the filtered open tasks array.
Loop Through Open Tasks
Apply to eachEnvironment Variables
| Schema name | Type | Default | Description |
|---|---|---|---|
| flowlibs_PlannerGroupID | String | <configure> | Office 365 Group ID that owns the target Planner plan. |
| flowlibs_PlannerPlanID | String | <configure> | The specific Planner plan whose tasks should be summarized each morning. |
Connectors & Connections
| Connector | API name | Actions used |
|---|---|---|
| Microsoft Planner | shared_planner | ListTasksByPlan (Retrieves every task in the configured plan.) |
| Notifications | shared_flowpush | SendNotification (Sends the daily digest push to the flow owner's Power Automate mobile app.) |
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.
- Deploy to another environment
- Import the solution into the target environment, set flowlibs_PlannerGroupID to the Office 365 Group ID that owns the plan, set flowlibs_PlannerPlanID to the Planner plan ID, point the Planner connection at a user account that has access to the plan, point the Notifications connection at the account whose mobile app should receive the digest, and turn the flow on.
- Change delivery time
- Edit the Recurrence trigger's hours array (default 8) and time zone so the push fires at the user's preferred local morning time.
- Run on weekdays only
- Add a weekDays clause to the trigger's recurrence schedule (Monday–Friday) so the digest skips weekends.
- Show more than 3 tasks
- Bump the rank threshold inside the Loop's condition (e.g., varTaskRank ≤ 5) and adjust the notification copy so the body reflects the new top-N count.
- Sort by priority or due date
- Replace the Filter Array with a sorted output (use the sort() expression on dueDateTime or priority) before the Loop so the top-N tasks reflect business priority instead of API return order.
- Add an email fallback
- Drop a Send Email (V2) action after Send Push Notification so users who don't have the mobile app installed still receive the morning digest.
- Multi-plan support
- Convert varPlanId to an array environment variable, wrap the List/Filter steps in a Foreach over plan IDs, and aggregate the results before composing the notification.
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.01Read Plan ID env var
Reads the configured Planner plan ID at runtime so the flow can be redeployed without editing the action.
EXPR.02Read Group ID env var
Reads the owning Office 365 Group ID at runtime.
EXPR.03Filter open tasks
Used in the Filter Array to keep only tasks that are not yet complete.
EXPR.04Open task count
Sets varOpenTaskCount to the number of items returned by the Filter Array action.
EXPR.05Increment task rank
Bumps the rank counter on every iteration of the Apply to each.
EXPR.06Top 3 gate
Only the first three iterations contribute their title to the notification summary.
EXPR.07Overdue check
Counts a task as overdue when it has a due date and that date is in the past.
Comments
Sign in to join the conversation.
Sign inNo comments yet. Be the first to share your experience with this flow.