
Software Development Redmond, Washington
The Microsoft-produced YouTube video demonstrates how to call a Power Automate flow directly from the ribbon, now called the command bar, inside a Model-driven App. The short demonstration, presented by Michael Nielsen during a community call, focuses on a JavaScript-based approach that works with modern HTTP trigger URLs and supports both bulk actions and timeline refreshes. Consequently, the video offers practical steps for makers who want to add automated actions to app interfaces without heavy redevelopment.
The video opens by setting the problem: users often need to run Power Automate flows from within a model-driven interface to update records, send notifications, or refresh the UI. Michael Nielsen shows a method that passes record context from the app into an HTTP-triggered flow, enabling logic that acts on single or multiple selected records. Additionally, the demo highlights timeline updates so users see action results immediately in the app’s activity feed.
Furthermore, the presenter frames the approach as compatible with modern Power Platform practices while still offering a migration path for legacy scripts and integrations. He emphasizes that makers can use the built-in command bar editor or paste a small JavaScript library as a web resource to invoke flows. Therefore, organizations can choose a path based on their comfort with code, need for bulk operations, and desire to keep flows secure.
First, the demo walks through creating a flow with the When an HTTP request is received trigger and shows how to define a simple JSON schema to accept parameters like record IDs and entity names. Then, Nielsen demonstrates a JavaScript function that collects selected record IDs from a grid, calls the flow URL, and finally refreshes the timeline so the app reflects flow updates. This sequence clarifies how context travels from the UI into the flow and back to the user interface.
Importantly, the video illustrates bulk processing by selecting multiple rows and sending them to the same HTTP endpoint, which then iterates or batches actions server-side. Nielsen also uses confirmation dialogs and status feedback to reduce accidental actions and to give users clear results. As a result, the demo balances convenience and user control, showing a workflow that feels native to the app.
The core technique uses three pieces: a flow with an HTTP trigger, a custom button on the command bar, and a small JavaScript caller that posts the context to the flow. Makers first define the flow payload schema and include a response action so the app can receive success or error information. Next, the command bar is edited to add a command which runs the JavaScript function and passes the primary control or selected row IDs as arguments.
Meanwhile, the presenter contrasts the JavaScript web resource approach with alternatives such as custom pages and Power Fx. For example, a canvas custom page can present richer UI and built-in validation, while Power Fx provides low-code expressiveness but may lack some bulk-processing flexibility. Thus, teams should pick the approach that fits their skills, governance rules, and performance needs.
Calling flows from the command bar offers speed and user convenience, but it introduces tradeoffs around security and maintainability. For instance, HTTP trigger URLs are callable by anyone who has the URL, so teams must lock down flows using environment controls, authenticated requests, or proxy logic to avoid exposure. Additionally, embedding JavaScript into solutions improves power and control but increases long-term maintenance costs, especially when makers change entity schemas or update app layouts.
Performance and error handling also present challenges when processing many records at once, since flows can hit concurrency or throttling limits in high-volume scenarios. Moreover, keeping UI state consistent after asynchronous flow actions can require extra steps like timeline refreshes or optimistic updates, which complicate the client logic. Therefore, developers must design flows with retries, batching, and clear user feedback to create a robust experience.
Overall, the video gives makers a practical pattern to extend model-driven apps with server-side automation while keeping users in context. It also encourages a thoughtful choice between low-code and pro-code methods, noting that custom pages and Power Fx may suit some teams while JavaScript-based callers remain best for bulk and legacy use cases. Consequently, makers should prototype, test for scale, and document their chosen pattern before rolling it into production.
Finally, the presenter points viewers to additional resources mentioned during the community call, including example repositories and community learning materials that illustrate the implementation details. Since the demo comes from a Microsoft community program, it also invites makers to experiment and share back improvements, which helps the broader community evolve secure and maintainable patterns.
Power Automate ribbon integration, Model-driven app invoke flow, Call cloud flow from ribbon, Add ribbon button Power Automate, Run Power Automate from command bar, Dynamics 365 model-driven app flow, Ribbon button trigger flow Dynamics 365, Invoke Power Automate from model-driven app