Both RPA platforms and APIs are used to integrate applications together as part of digital transformation initiatives. There are merits to each approach when considered from the classical definition. That said, the scope of both approaches is starting to blur into a broader set of automation technologies, which raises new questions.
"Classically, RPA [robotic process automation] means surface automation or screen scraping," said Ted Shelton, an independent RPA consultant.
This includes emulating a human moving a mouse, clicking and typing in data to interact with the application. In contrast, API integration has broadly referred to coding integration logic to automatically pass data between applications. From this perspective, they can both complement each other.
"It is fine to use RPA platforms for simple integration tasks, with low-risk potentials and small data volumes," said Renat Zubairov, CEO and co-founder of Elastic.io, a German iPaaS provider. "For complex integrations with large amounts of data and high-risk potentials, API-based integration is a safer and much more reliable approach."
"RPA and APIs are complementary technologies," said Herve Coureil, chief digital officer at Schneider Electric. While Schneider has adopted an API-first strategy, it uses RPA as an immediate, short-term solution for business cases for which there is no API available. Additional benefits of RPA platforms include quick and easy implementation and low maintenance cost, without the need to change the applications.
Coureil said the company's integration adoption policy starts off with a capability analysis to determine if an RPA or API is the better option. For example, if there is a large integration effort or a constrained budget with a proposed API, then RPA offers a better immediate solution. By contrast, APIs are the preferred path for long-term, strategic business use cases.
"Additionally, sometimes a hybrid approach is the right choice," he said.
For example, RPA tools are better able to transform data captured from optical character recognition (OCR) into the right formats for applications like SAP. From there, API integration can improve the flow of data into other business processes.
RPA platforms help legacy systems
"Many older legacy systems, whether commercial software or homegrown applications, do not expose APIs," said John Thielens, CTO of Cleo, an integration software and services company based in Rockford, Ill.
RPA's ability to simulate human interactions with legacy systems allows them to be included in automation and modernization efforts, thus effectively encapsulating them instead of replacing them.
RPA projects well defined
One of the most challenging aspects of IT projects is getting the requirements right.
"Since RPA is applied to processes that are already institutionalized and integrates applications that are well understood, RPA has a high success rate," Thielens said.
API projects are often new, involving new applications or new processes; therefore, it may take several cycles to achieve the desired outcome.
RPA platforms can help to overcome conflict between business users and the IT department.
"The IT organization doesn't want to make the API available, and so the business creates a shadow IT function to use RPA to work around IT to get their work done," Shelton said.
This is a common dysfunctional state in businesses, which speaks more to governance than the merits of RPA vs. APIs themselves.
Modeling business processes
RPA can model a business process with speed and ease just by recording and emulating the human action against a UI. According to Shelton, the cost to model the business process and develop a service using APIs can end up being a lot more expensive. As a result, RPA can simply win from a total-cost-of-ownership perspective.
Packaging business problems
"RPAs offer a packaged solution to a particular business problem that you want to solve," said Sebastian Dolber, CEO of Astor, a cloud solutions consultancy based in Tysons, Va.
From that standpoint, you don't need to worry about the inner workings, because RPA platforms will take care of getting you from A to B in a single run. However, they lack the flexibility that an API can give you.
RPA is not process improvement
RPA can be viewed as a form of streamlining. It can streamline processes that are already in place, but does not necessarily improve them, Thielens said.
RPA can be brittle
As dependent systems change, RPA-powered processes may not be able to absorb the small changes that human beings would absorb without noticing. Changes like colors, button labels or menus can cripple RPA integration.
"Thus, RPA can actually be less flexible than APIs," Thielens said.
However, Coureil said he expects better OCR and machine learning capabilities will reduce these problems by discovering changes and adjusting configurations.
"This potential self-healing property of future RPA could ease the workload of change requests and enhancements," he said.
RPA is not integration
Integration is a structured discipline that puts the power to automate and evolve the business in the hands of domain experts, while retaining governance and performance. While RPA is a useful tool in the IT arsenal, it isn't really integration, Thielens argued.
"APIs are a cohesive collection of methods that execute a single action and can be the foundation of an application, service or even an RPA," Dolber said.
Enterprises can gain a lot in portability, because they can reuse them for multiple purposes, as opposed to an RPA that only serves one purpose.
APIs are everywhere
APIs are ubiquitous in life, as well as in business. Because many modern software applications publish their APIs, it's easy to build connectors that integrate those applications, Thielens said.
APIs are fast
APIs are hailed for their real-time connectivity advantages, as they are able to connect with partner and SaaS applications quickly and efficiently.
Better for nuanced problems
"The utility of RPA ends with trivial business processes, such as swivel chair data entry tasks or simple point-to-point orchestrations," said Ross Garrett, chief product officer at Cloud Elements, an API integration platform based in Denver.
Most enterprise business processes are far more nuanced than this and rely upon complex data and application integration scenarios to work as required. This problem is compounded by the fact that enterprise IT landscapes are adapting more cloud applications, which creates a need for better data management and governance that are being baked into API management tools.
Connecting the dots
A downside of APIs is, in order to use them, developers have to connect the dots and chain the API method calls so they can solve a particular business problem, Dolber said. APIs are a collection of programming methods available to be invoked by developers when required. These are often simple functions that can be called.
"In order to achieve a result similar to what you'd have with an RPA, there's plenty of effort involved since you have to manually coordinate and orchestrate the API method calls to produce value," he said.
Cumbersome change process
"Changes made to the API need to be tied into a formal IT change process," said Graeme Provan, global director of business automation at Genesys, a customer experience solutions provider based in Daly City, Calif. This can be costly in terms of time and resources.
APIs not standardized
"It may come as a surprise that there are currently no widely accepted API standards, making the promise of APIs and their real-time processing capabilities slow to realize," Thielens said.
John ThielensCTO of Cleo
APIs can be poorly designed
"Less than stellar API design has impeded the use of APIs," Thielens said.
Many organizations have put in place good tools for API management and even tools for API design. However, the process for designing an API is frequently given to the application team.
At the end of the day, RPA platforms vs. APIs is not an either/or choice, Thielens said. "CIOs need an arsenal of tools and approaches as they balance optimization of their current infrastructure with the modernization and innovation required to grow the business."
Certainly, integration needs to be an organizational core competency, but both RPA and APIs have roles in meeting integration needs.
Thielens advocated that CIOs bring developer disciplines to both RPA platforms and APIs.
"The 'P' in API is for programming, and the 'R' in RPA is for robotic. But, in many cases, integration projects involving API and RPA require neither programmers nor robots," he said.
However, getting integration right requires the disciplines of a developer: requirements analysis, function and nonfunctional design, lifecycle planning, governance and compliance. Tool selection needs to take these disciplines into account.