An application programming interface (API) is code that enables two software programs to communicate. An API defines how an API developer should request services from an operating system (OS) or other application, and expose data within different contexts and across multiple channels.

Any data can be shared with an application programming interface. APIs are implemented by function calls composed of verbs and nouns; the required syntax is described in the documentation of the application being called.

For example, on a real estate website, one API might publish available real estate properties by geography, while a second API provides current interest rates and a third offers a mortgage calculator.

In the early days of Web 2.0, the concept of integrating data and applications from different sources was called a mashup.

The web, software designed to exchange data via the internet and cloud computing have all combined to increase the interest in APIs and services.

How do APIs work?

APIs are made up of two related elements:

  • a specification that describes how information is exchanged between programs in the form of a request for processing and a return of the necessary data; and
  • a software interface written to that specification and published in some way for use.

The software that wants to access the API is said to call it, and the software that creates the API is said to publish it.

APIs authorize and grant access to data that users and other applications request. Access is authenticated to a service using predefined roles that govern who can access specific actions and data.

APIs also provide an audit trail that details who and what have had system access and when it happened.

Applications that call APIs were traditionally written in specific programming languages. Web APIs can be called through any programming language. Web pages created in Hypertext Markup Language (HTML) or application generator tools can also access them.

The most common architectures for APIs are Representational State Transfer (REST) and Simple Object Access Protocol (SOAP). They define a standard communication protocol specification for a message exchange based on Extensible Markup Language or XML.

SOAP requires less low-level infrastructure-related code than REST. However, REST APIs are easier to scale and redeploy, and simpler to implement and integrate with websites and services. REST APIs are most often used today, particularly for web interactions.


3 Comments

Jaco Esterhuizen · 27th June 2023 at 11:11 am

Thank you for this. Iv’e been trying to find out about API’s and your article explains it really well. Your blog is a treasure trove for me as a beginner developer.

Emily · 25th November 2023 at 9:07 am

Hi Brian, not sure if you remember me. I took one of your web design courses about 5 years ago. I just wanted to say thank you. The course was amazing., I am full-time employed as a web designer and earning a great income all thanks to you and the quality courses you offer. Nice post. I love your blog, really nice posts and a good place to stay up to date with tech we are working with every day. Keep them coming… Thanks again, Ems.

    WDA Digital · 31st December 2023 at 2:21 am

    Hi Emily, Yes, I remember you. That’s great news, really glad for you. Always a pleasure ;). PS: We are launching new courses next year for AI development, Python and also a few new frontend courses with React and NextJS. Check out our training website at https://webdesignacademy.co.za for more info. Take care.

Leave a Reply

Your email address will not be published. Required fields are marked *