RPA or API Integration: Choosing the Right Tool for Each System
Screen-level robots and API integration are not competing philosophies. They are tools with different cost curves and different ways of breaking. Choose per system, and plan the migration from the start.
The argument about whether robotic process automation is a legitimate technique or an expensive workaround has produced a great deal of heat and very little useful guidance. Both positions are defensible in the abstract and neither helps when you are looking at a specific system on a Tuesday and need to decide how to connect to it.
The useful framing is narrower. An API integration talks to a system through an interface designed for programs. A robot operates the system through an interface designed for people. Everything else follows from that one difference.
How each one breaks
The failure modes are what should drive the decision, because they determine what running the thing costs you in year two.
API integrations break loudly and specifically. A contract changes, a field is deprecated, authentication is tightened, and you get an error with a status code, a message and usually a deprecation notice weeks in advance. Failures are detectable, attributable and testable.
Robots break quietly and vaguely. A button moves twelve pixels. A confirmation dialog is added. A supplier portal is restyled overnight with no notice given to anyone. The robot clicks the wrong thing, or clicks nothing, and unless you have built explicit verification it may report success while having achieved nothing at all. That last scenario is the genuinely dangerous one, and it is the strongest argument for defaulting to APIs wherever a real one exists.
When an API is clearly the right answer
- The system exposes a documented, supported interface with a versioning policy
- The volume is high, or the operation must complete in seconds rather than minutes
- The process is business critical and a silent failure would be expensive
- You need transactional behaviour, idempotency or reliable retries
- The vendor is actively developing the product, so its user interface will keep moving
When a robot is the right answer
- The system genuinely has no interface, which is common in older line-of-business software
- An interface exists but is licensed separately at a price that dwarfs the value of the process
- The system belongs to a third party, such as a supplier or government portal, with no partner integration available
- The system is being retired within a year or two and does not merit a durable integration
- You need to prove value quickly, with an explicit plan to replace the robot later
A robot deployed with an agreed replacement date is a sound engineering decision. A robot deployed because integration felt like too much effort becomes technical debt with a running cost.
The cost curve nobody models
An API integration is more expensive to build and much cheaper to run. A robot is cheaper to build and considerably more expensive to run, because it needs monitoring, periodic repair after interface changes, and an environment kept stable enough that a software update does not silently disable it.
For a process running a few times a month against a system that has not changed in a decade, the robot is comfortably the better economics. For a process running thousands of times a day against an actively developed product, the robot will cost more within a year, and the cost arrives as unplanned interruptions rather than as a budget line, which is the worst way for cost to arrive.
Design robots as if they are temporary
The most valuable practice here is to isolate every robot behind the same internal interface you would use for an API. The workflow should call something like submitSupplierRecord and neither know nor care whether that is fulfilled by a REST call or by a robot driving a portal.
This costs almost nothing at build time and changes the economics of replacement entirely. When the vendor eventually ships an API, you swap the implementation behind the interface and the workflow is untouched. Without that separation, robot logic spreads through the process definition and replacing it becomes a rebuild, which is why so many organisations are still running robots they decided to retire three years ago.
Verify, do not assume
Whatever a robot does, it should afterwards confirm independently that the intended change actually happened: read the record back, check for the reference number, confirm the status field. Robots that report success on the basis of having completed their click sequence are the source of the worst automation failures, because the error is invisible until a reconciliation weeks later.
Alongside verification, treat robots as first-class citizens of your governance model. Each one gets its own named service identity rather than borrowing a person's credentials, permissions scoped to exactly what it needs, and monitoring that alerts on unusual duration as well as outright failure. A robot that suddenly takes three times as long is telling you the interface has changed, usually before anything has actually broken.