In this blog post, we'll discuss how two of the most used API methods — SOAP and REST — affect an organization’s ability to derive business value from APIs and join the API economy.
SOAP versus REST. Why Does it Matter?
At Boomi, we look at APIs from the perspective of business value. That's because delivering business value is the overarching goal of the entire Boomi Platform. When we modify and enhance the platform, we’re always trying to achieve three things: increased ease of use, accelerated business outcomes, and maintained hyper-scalability.
In 1998, those goals weren't important. Dave Winer, Don Box, Bob Atkinson, and Mohsen Al-Ghose designed Simple Object Access Protocol (SOAP) as a specification to facilitate exchange of structured information between two applications or devices. This was before every enterprise had an eCommerce site, a mobile application, and numerous global partners. (Walmart, for example, didn’t have a mobile app until well into the 2000s.)
Enterprise APIs developed with SOAP were intended for internal use as well as for use with a few very close partners — certainly not for a fluid environment where data needs to be shared quickly and easily with both internal and external parties. Ease of use, speed, and scalability simply weren't high priorities.
But times have changed. Today, these qualities define the startup mentality. They’re also highly prized by established enterprises that want to digitally transform their legacy operations to protect and grow their businesses. With few exceptions, APIs that can meet these demands require Representational State Transfer (REST) interfaces. REST is an architectural software style defining a set of constraints for creating web services that provide interoperability between computer systems on the Internet.
The Fundamental Differences Between SOAP and REST
Where SOAP takes a function-centric view of the world, REST has a resource-centric view. So with SOAP, when you want to communicate with another machine or send your business logic to someone, you’re sending the whole function definition to that machine or person. When using REST and the RESTful paradigm, you are only sending the resource definition.
So what is the impact of that? When you send a function, the interoperability of the code is lost. That's because there are rigid and precise communication protocols that control that communication. But with the loss of interoperability comes the potential for a richer connection.
This richer connection might be necessary for transactions with financial services institutions (FSIs) that require very robust security and ACID compliance. ACID (atomicity, consistency, isolation, durability) is a set of properties of database transactions intended to guarantee validity even in the event of errors, power failures, etc.
With REST, we're extracting only a layer of code that other parties can easily understand. In other words, while interoperability is preserved, some richness is lost. But in most cases, interoperability has more value than richness. Moreover, REST APIs can scale easily, but SOAP APIs cannot scale at all.
As noted in Gurpreet's excellent blog, “One of the most crucial aspects is when to use REST or when to use SOAP for creating web services. REST comes out to be a lot easier to work with. SOAP does an excellent job in heavyweight workloads.”
SOAP, REST and Boomi API Management
Boomi API Management was added to the Boomi Platform in 2015. At the time, it allowed organizations to move data between endpoints with APIs created in SOAP. Today, more than 700 customers use SOAP APIs with Boomi.
Then, Boomi provided the capability for users to easily create APIs with RESTful interfaces that offered ease of use, faster time to value, and scalability. Now, with our new release, users can use the API Gateway and the Developer Portal to easily secure their APIs and engage with a broader ecosystem.
Creating a new SOAP or REST API in Boomi API Management
To be sure, implementing REST may initially be a challenge for enterprise architects and integration developers at large enterprises who are accustomed to using SOAP. That's because REST is more of an architectural paradigm than a protocol and requires a shift in mindset when designing scalable systems. For these developers and administrators, using REST will require more work at the back end.
Nevertheless, RESTful services talk to each other in just one language, primarily using only four words: GET, POST, PUT, and DELETE. While a REST API can be difficult to create the first time, once you're familiar with the language, you can communicate with anyone, anywhere.
Adding a REST endpoint in Boomi API Management
This is why REST is becoming the de facto standard for the modern, connected business. As this Google Trends report illustrates, searches for SOAP are decreasing, while REST is on the rise.
Boomi makes it easy to modernize your infrastructure. You can use your existing SOAP APIs while you create and manage new REST APIs — all through the same unified platform.
Find out how Boomi can help you create a modern API platform with microservices and continuous integration / continuous delivery (CI/CD).
About the AuthorMore Content by Rahul Agarwal