How to send Live status of OpenRPA workflow through Rest API services using Node-Red

Hi Team,

I am currently integrating OpenRPA workflows with Node-RED using REST APIs.

My current flow is:

HTTP IN → RPA Workflow → HTTP RESPONSE

I am able to trigger the OpenRPA workflow successfully from Postman through Node-RED. However, my requirement is to provide live execution status updates back to the API caller, such as:

  • Bot Started

  • Running

  • Completed

  • Failed

  • Idle

I noticed that the OpenRPA workflow node provides separate outputs for:

  • Success

  • Status

  • Error

I want to understand the best architecture/pattern for handling live workflow execution updates in this scenario.

My questions are:

  1. What is the recommended way to send real-time workflow status updates to the API client?

There is no recommended way.

If REST is a requirement, you need to keep track of each request and implement a way for the client to poll for status. But then you are basically just implementing a work item queue, so you might as well just use that and get all the benefits like resilience, better tracking, and well-tested and well-known patterns.

If the client can use web sockets/gRPC, then skip Node-RED and talk directly to OpenRPA. Node-RED is simply talking to the RPA robot using message queues, and using the OpenIAP SDK, you can do the same from any programming language, but personally, I would recommend you use work item queues.

I have a few follow-up questions regarding above suggested architecture:

  1. Can I directly trigger an OpenRPA workflow/bot from a WebSocket connection using the OpenIAP SDK?

  2. Can the same WebSocket connection also be used to send input parameters dynamically to the bot during execution?

  3. Is it possible to receive live workflow execution updates/events (running, completed, failed, progress updates) over the same connection?

  4. Would this approach be considered better than REST polling for long-running workflows?

  5. Are there any sample implementations or recommended patterns for:

    • WebSocket → OpenIAP SDK → OpenRPA workflow execution

    • Bidirectional communication with robots

    • Real-time status tracking

My goal is to build a more real-time integration where:

  • Client triggers bot on demand

  • Sends inputs dynamically

  • Receives live execution status/results without polling

Any guidance or architecture recommendations would be greatly appreciated.

1 yes
2 yes
3 yes
4 using workitem queues is the best in 99% of cases, but if you really want live status, this is the only way ( but you can also combined it, use workitem queues for transactional state AND talk to the robots for status )
5 No. But you can find information “scattered” around on this forum,
like Can we see OpenRPA logs in OpenFlow and Start BOT via API call - #2 by Allan_Zimmermann