You may have already seen that I attended API Days London last week. The first day was more of an introduction to APIs in the banking industry, the second day really got down to the nitty gritty – REST APIs!
Why the focus on REST for banking APIs?
I actually put this question to a number of delegates at the API Days event – and the general consensus was:
‘When we first started thinking about APIs it was 2005, REST was pretty much all there was in terms of standards. Once APIs in general are accepted and adopted, we can move to more responsive, real-time and reactive APIs and applications.’
I found this so interesting because while REST APIs are tried and trusted for downloading web pages, most mobile and web app users are used to having information delivered to them proactively when events or changes happen. Twitter, Facebook, Instagram, most trading apps, auction sites, news apps, gaming apps as well as email, SMS and IM all proactively push information to users without them needing to constantly refresh their screens or perform background polling. Whether they use in-app messaging, push notifications, web sockets or server-sent events, they all give the user live updates to the information they have expressed an interest in.
But with REST, every time you want an update, the user (or the app they are running) must issue another get request, and then wait for a response – hopefully – or maybe a timeout… eventually. Also, each one of these requests consumes bandwidth, and needs to be processed by the backend system to return data – often the same data that was returned the last time the user repeatedly jabbed the refresh button, or the app repeatedly polled the server.
Virtually every speaker highlighted the importance of putting the customer first, understanding the end-to-end user journey, focusing on the user experience and ensuring APIs are easy to use for developers. However, no one seemed to focus on responsive app design or reactive data updates as a goal that banks should be aiming for? Is REST really the right option?
Only one organization discussed real-time APIs, but they use one-way, server sent events that mapped polled REST APIs to try and push data to clients. But this is still polling. Although it does go some way to turn them into real-time APIs, it will still struggle in the real world of mobile networks with its frequent disconnections, variable bandwidths and mixture of devices and app types – especially at the levels of scale required to operate over the Internet.
Build Reactive Apps
So why not build your application to be reactive? What do I mean? Make it engaging, immediate, interactive and responsive. If a bank’s priorities are the consumer and user experience, use push APIs not REST. Here at Push Technology our belief is that building event based, push APIs is the future.
The Diffusion® Intelligent Event-Data Platform makes it easy to consume, enrich and deliver event-data in real-time across all network conditions. Push Technology pioneered and is the sole provider of real-time delta data streaming™ technology that powers mission-critical business applications worldwide. Leading brands use Push Technology to bring innovative products to market faster by reducing the software development efforts using the low-code features. The Diffusion® Intelligent Event-Data Platform is available on-premise, in-the-cloud, or in a hybrid configuration. Learn how Push Technology can reduce infrastructure costs, and increase speed, efficiency, and reliability, of your web, mobile, and IoT application.