RESTRobotExecutor
The RESTRobotExecutor is a RESTful API that allows for on-demand RPA robot execution from other systems, allowing for greater flexibility when designing automations.
Problem
In the Kofax RPA system, robots can be triggered via a REST API, however this can easily use up all available system capacity, making robot scheduling difficult to manage.
Solution
To address this issue, I developed the RESTRobotExecutor, which is another REST API that will queue requests for on-demand robots instead of simply executing them straight away, making system load much easier to manage. This has enabled us to develop robots that are executed in real-time throughout the day, resulting in a much better user experience.
The RESTRobotExecutor is a Windows Service written in C#.

Process Map

Technologies
I used several technologies to develop this service:
Microsoft .NET Framework / C#
I used the Microsoft .NET Framework to develop a RESTful Windows service written in C#:

Microsoft SQL Server
This application uses a Microsoft SQL Server database to store information:

Nginx
For improved security, I used an Nginx reverse proxy to provide an HTTPS service, then disabled all plain-text HTTP requests made to the RESTRobotExecutor.
JSON
TODO
Leave a Reply