An API is an Application Programming Interface. It is a defined set of rules that dictates the way applications interact with each other, enabling them to communicate. Thanks to APIs, modern computer systems can automatically exchange data in a highly controlled way, opening up new opportunities within organisations as well as with external third parties.
APIs are analogous to the User Interfaces (UIs) people use when accessing software programs or applications. Where UIs act as an intermediary between humans and computers, systems with APIs allow computers to interact with other computers. This occurs via a request and response system.
A benefit of upgrading from legacy IT systems, which tended not to include APIs, is a decreased reliance on people to manually transfer data. APIs have also made new kinds of business possible, such as booking sites which gather the latest availability and price information from accommodation or travel providers and present this to a consumer.
There are four main types of API:
- Open or Public APIs: these are open source, and publicly available for any software engineer to use. A good example of an open API is Google Maps.
- Partner APIs: these are strategically exposed to or by an organisations' business partners. Software engineers must go through an onboarding process to access these APIs.
- Internal or Private APIs: these APIs are not exposed beyond an organisation's internal system. They are used by internal software teams within an organisation to improve collaboration and productivity.
- Composite APIs: made up of multiple other APIs, these APIs enable software engineers to access several different endpoints with a single information request.
A useful tool
APIs offer many benefits to the software engineering process. They make systems and applications interoperable, as they enable applications built using different technologies to communicate with each other via a common language.
They help to avoid the use of integrations where data is accessed directly via a database; they also prevent the need for tight coupling - or high levels of interdependence between different software modules. Finally, APIs also provide an application-level abstraction between the front end of a system and its database. This means that the engineer doesn't have to worry about the internals of an application.
On top of all of this, APIs also have security benefits. With an API acting as an intermediary between different systems, there is no direct connection between the application making a request and the one providing the information. Calls to APIs usually require authorisation, making it possible to control who can access data on the applications they are connected to.
Naming services in complex situations
How we use naming workshops as part of best practice for services in complex situations.
Read moreOur recent insights
Budget 2025 reveals how digital funding really works
Background: The Budget was announced yesterday, it’s not announcing big new programmes of work - it’s fine tuning how the government's fiscal policy supports existing policy objectives. There’s takeaways for all digital leaders from this announcement and some thoughts about that to do next.
Read more
Unlocking the benefits of AI for charities
How human-AI collaboration can help charities get true value from their data, turning insights into impact.
Read more
What's the future for open data in the UK?
A decade ago, the UK was a leader in open data, but its prominence has faded. We examine why the focus has shifted and what the future holds for the role of open data in the public sector.
Read more