Power Automate: Ribbon Call in Model App
Power Automate
5. Apr 2026 10:20

Power Automate: Ribbon Call in Model App

von HubSite 365 über Microsoft

Software Development Redmond, Washington

Invoke Power Automate from Model-driven App ribbon via JavaScript for bulk actions and timeline updates in Power Apps

Key insights

  • Power Automate flow: Michael Nielsen’s demo shows how to call a Power Automate flow directly from a Model-driven app command bar using a JavaScript approach that works with modern HTTP trigger URLs.
    It enables quick in-app actions without leaving the record view.
  • HTTP trigger: Build the flow with the "When an HTTP request is received" trigger and a clear JSON request schema to accept record IDs and entity names.
    End the flow with a Response action so the app can get success or error feedback, and remember the trigger URL is public unless you add protections.
  • command bar: Add a custom button in the Power Apps maker portal by editing the command bar for a form, view, or grid; set label, icon, and visibility rules to control when the button appears.
    This keeps the action native and easy for users to find and run.
  • JavaScript web resource: Use a lightweight web resource (for example, flowcaller.js) to call the flow URL, send selected record IDs, and handle confirmations and responses; this approach supports bulk operations and timeline refreshes.
    Alternative options include opening a custom page and using Power Fx for UI-driven logic when needed.
  • bulk actions: Pass multiple selected record IDs in the JSON payload to let the flow process several records at once; show a confirmation dialog before running the flow and refresh the grid or timeline after completion to reflect changes.
    Design the flow to handle batching and partial failures gracefully.
  • security: Validate inputs in JavaScript, enforce a strict JSON schema in the flow, and check record status before acting to avoid unintended changes.
    Use environment permissions, connector limits, and logging for audit and troubleshooting to keep integrations safe and reliable.

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.

Overview of the Demo

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.

Demonstration Highlights

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.

Technical Approach and Options

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.

Tradeoffs and Practical Challenges

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.

Implications for Makers and Next Steps

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 - Power Automate: Ribbon Call in Model App

Keywords

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