This got me thinking - is it really possible for APIs alone to be sufficient? The answer is dependent on what you are trying to achieve...
I recently read an article that suggests apps these days should be integrated through the use of a single uniform application programming interfaces (API) rather than using an integration platform. The API provides the prebuilt integration that enables a connection into a specific cloud application or cloud service endpoint (e.g. Box, SharePoint, Dropbox):
“Cooperative apps reduce the need for integration Platform-as-a-Service (iPaaS) offerings by instantly working with the other apps in their ecosystem”
This got me thinking - is it really possible for APIs alone to be sufficient? The answer is dependent on what you are trying to achieve. If we’re building our own app which needs to integrate to multiple SaaS CRM providers, then yes a single unified API allowing me to integrate with multiple providers would be very helpful. If on the other hand we’re running an enterprise landscape and only have one or two systems in each segment (e.g. SAP CRM and Salesforce.com), then an integration platform that can cover cloud-to-cloud, cloud-to-on-premise, on-premise-to-on-premise, B2B messaging as well as API integration would be a much better fit.
Many Software-as-a-Service (SaaS) providers develop APIs for their products to enable integration. However accessing and managing data via an API can require a significant amount of coding as well as ongoing maintenance. This problem is made worse when consuming multiple APIs that use differing approaches. In most integration scenarios monitoring tools are required to provide logging to simplify error resolution as well as redundancy mechanisms to automatically handle scenarios where the applications being integrated become unavailable. Overlooking this critical functionality can lead to companies spending large amounts of time maintaining their custom code.
iPaaS solutions on the other hand are cost-effective, scalable, and flexible. The service is typically made available via a self-service model, and in many cases can be configured, deployed and managed right from the web browser without having to write custom code or install any software or hardware on-premise. It allows companies with limited or no IT resources the option of outsourcing their integration projects to either a Systems Integrator (SI) or electing to use a Managed Service from their integration provider. Best of breed iPaaS providers offer a single, seamless solution for a business’ entire application portfolio including on-premise, cloud-based, and SaaS applications. Many providers offer pre-built connectors to leading applications as well as the ability to develop your own custom connectors for integration with SaaS and on-premise applications, web services, and data sources (some even allow you to expose functionality as an API). They also offer a secure method of data transmission both in the cloud and behind the company’s firewall for on-premise systems.
In summary, when choosing an integration strategy we believe businesses need to be more aware of what they are trying to achieve, rather than focusing on the technical solution. Using API alone may be the right answer in some cases but not universally. Choosing the wrong integration path can result in an ongoing drain of IT resources and increasing cost to the business. It is also critical that businesses consider the need for scalability - both in terms of the growth of their customer base and the expansion of their SaaS and cloud computing applications.