What is API First thinking - for non developers
Lately, I've been surprised how relevant API-first strategy still is —not just as a tech buzzword, but as a launchpad for new features in the channels that my team and I are responsible for, also for consistent cross channel customer experience and possibly, most importantly as preparation of the wave of AI innovation that is sweeping our industries.
In the coming week’s I’ll post a series of short articles on API First strategy. Firstly, what “API First” means for non developers (this article) , then why it is still important in 2024, finally how I believe AI will revolutionise the system integration space. Let me know in the comments if you are looking forward to the next topics.
If you are a software architect or engineer, chances are this first article is not for you. Then look out for the next one.
What is an API?
An API is simply a standard like the power socket that your computer is plugged into. Chances are you are using a EU, UK or USA plug type for one of your appliances right now. If you are using a US plug, your power adaptor won’t fit the EU socket I’m using right now. The power socket type was defined so that companies can build appliances and know with what standard to talk to the power grid. APIs are the same but for software systems. Simply put an API is a agreement (called contract) between one system and another system which allows a client system (kettle) to plug into a hosting system (the power grid) and make requests (give me power). If you know the API specification (socket type) of a hosting system (your latest cloud system you purchased or use), you know how to plug into that system and make requests to the system in an automated way between systems, instead of using a website as a human to make such requests. Developers use APIs each day to make requests from their client system, to other systems.
What are RESTFul APIs and do I need to know about them?
A modern, easy to use API concept has existed since 2000, when the RESTful API approach was defined by Roy Fielding. This concept got wide adoption since late 2000’s and early 2010’s to replace the aging and more complex SOAP protocol. The new RESTful way has gained high adoption because it is so much easier to define, read and implement in a human way – even for non developers.
A key aspect of this approach is that the interface abstracts away complexity, and represents data in a way that should be understandable to the client (human) reading the interface without knowledge of the host system behind the API. The older SOAP standard was too hard to understand and only readable by programmers with experience in that specific system. It also requires many to-and-fro meetings to fully understand. Yes, it’s important for you to know about RESTFul, because RESTful APIs lay the foundation for API first thinking and your team can integrate with a new system using RESTFul APIs with less or no meetings needed to understand the new system.
What happened to the older generation APIs?
We still have many older SOAP generation APIs, especially in the finance industry, but they are rapidly being replaced with the new generation of simpler RESTful APIs.
What is API first strategy?
Since Jeff Bezoz memo about service based thinking in 2002, technology strategists and consultants have been talking about “API First” approaches in terms of building software systems. Since 2016, this concept has become more and more realistic - or even imperative - as a fundamental concept of how we build software in large enterprises. The concept revolves around building with a re-use mentality, with the future in mind. Think of it as careful thinking by an architect designing your dream house: putting power sockets at strategic locations in your future house, where you might have a TV, kettle, or other appliance. While you could just hack at the wall and connect your TV to the wires in the wall, it just is so much faster and less problematic if an architect designed your power socket layout with some common sense thinking up front. API first strategy is that, but with a software architect instead of a building architect.
How does this apply to the real world?
The most common example is “Getting some customer information”. Chances are that your company has an API to get a customer’s personal details from your main system. In the past systems were built directly integrated to the customer database in a way that was bespoke for some frontend system being built at the time. Not only that, but many systems would even talk in different standards (think plug type A,C, or even direct wired connections, etc) to the system main system, creating a spaghetti environment of many clients systems using many interfaces for the same thing.
Recommended by LinkedIn
With an “API First” strategy
Just like the dream house example - you would have thought through how customer data needs to be used in future, and would have created a clean and simple central Customer API (power grid) that has sockets (API endpoints) for getting or updating customer info. For example so that a new call center agent system, a new web portal or new back office system, can quickly integrate to your systems and call center agents can work with most up to date customer data, or customers can quickly apply for new products.
Without an “API First” strategy
Without an “API First “strategy, you could spend months with your new third party system providers in technical calls with your development team, figuring out how to integrate systems. This typically results in many professional services consulting days for custom development. In my experience most third party providers say that they can integrate with the systems my teams have worked on within 3 weeks if we have a well-defined API for them to call. Without it, discussions quickly become 3 months or more for a simple feature.
Visa versa, when exploring new software suppliers I always ask in first meetings "Do you have API docs available online?". Those suppliers that answer yes and pop us the link in the meeting to a simple API docs page, are typically must faster for us to integrate with, then those that don't.
Stay Tuned for More on API-First Strategy
I’m passionate about API First thinking because I’ve seen first hand how it can revolutionize not only how we build software, but how the businesses we support launch new products and features and how we maintain what we have built. Where my teams and I have built clean and simple APIs, we’ve seen how we quickly we – and other teams - re-use those APIs to build future features we didn’t even think about at the time. Another benefit is also how non developers in your business can get excited about APIs when they are socialized in a human way. It just makes sense. “Hey Julia, here is a bullet list new list of actions that can be done in our system”. That kind of talk gets people in the business thinking about what they can do next to improve customer experience.
In my next post I will write about what experiences I had with API first thinking, and why I think API First strategy is more relevant than ever in 2024.
Are your teams building with API first in mind? Do you have a list of available APIs discoverable in your organisation? Let me know in the comments.
About Eric Clements
Eric is the Head of Digital Channels at BAWAG GROUP in Vienna, Austria. Eric helps BAWAG deliver on a great customer experience in their Mobile Banking Apps and Internet Banking since 2022. Previously, Eric worked for Accenture in Telco, he consulted on Digital Transformation for Financial Services & Media companies and lived the tech startup dream - reaching 3 million users in his startup - before taking the challenge to move to a new country - and so joining BAWAG Group in 2018.
References:
I recall even before the world coined API’s me and you lived in a time of open services, who would have thought all these years later the world is going gaga over API’s, about time. Well done Eric great post.
Well put Eric, looking forward to more articles.
Thanks, Eric, for shedding light on API-first thinking. I wholeheartedly agree on the significance of embracing this mindset for enhancing process optimization and, consequently, the customer experience. Your article insightfully illustrates how adopting an API-first approach is not just pivotal for building new „dreamhouses“ but also for „renovations“ of existing systems. The analogy of technical optimization pipelines requiring „grid plugs“ resonates well, emphasizing how each improvement brings incremental benefits. Truly, an eye-opening read that underscores the transformative power of API-first thinking in today’s digital landscape. Great work!