What is an Application Programming Interface? #
An application programming interface (API) consists of a set of commands that allows companies to expose certain data and functionality contained within their software, applications or web services with other third-party systems. An API enables systems, applications, and services to talk to each other which enables them to transfer and synchronise data.
Each piece of software or web service will have its own dedicated set of commands and code to enable this.
An application programming interface allows connectivity between two or more business applications, such as an ERP or CRM system and an eCommerce webstore. The commands then permit the different business systems to talk to each other by calling back and forth – querying data, analysing responses and sending instructions.
What types of API are there? #
There are four different types of API that are widely used, which are determined by their usage and the access they provide.
Open APIs #
Open APIs are publicly available (external) meaning they can be used by anyone. Software makers will make these APIs available on their websites making it easy for any developer to grab the coding to enable the transfer of data from the software to their desired application or system. Some will require registration and or passwords, others will have no security measures in place, to provide complete access.
Internal APIs #
Internal APIs are the opposite to Open APIs. They are created to connect internal business systems and departments and can only be used by internal developers / IT team. Usually, they also have strict security measures in place.
Partner APIs #
Partner APIs are a mix of the two APIs above. Some APIs are made available to the partner business so that data can be shared between each other’s systems. However, this is as far as it goes, providing limited access to data and only to those with authorised access and/or licenses. This option is often favoured by businesses that rely on supply chain management.
Composite APIs #
Composite APIs are extremely useful for gathering data from multiple APIs, without increasing server load and slowing down systems. Commonly used for microservices, Composite APIs make a call or request to multiple servers and receive one response, thus reducing the number of API calls that have to be made.
API example #
A common API integration scenario could be the synchronisation and reading and writing of data from an eCommerce platform, such as Shopify, into an ERP or CRM system.
A dedicated Shopify connector can use the Shopify REST API to facilitate system integration and to expose the objects and operations available within the Shopify API.
The Shopify API will then provide XML responses which can passed to another tool for further processing or automation and then pushed into the ERP or CRM system.
In this example, the connector could be set up to automate common, manual eCommerce tasks, such as downloading and uploading customer details, sales orders, products, stock, and pricing.
For example, a new sales orders could be downloaded from the eCommerce store and processed in real-time to an ERP system. The data transferred can include all the details of the product or service purchased, as well as the relevant customer information, such as name, address, payment details, order number etc. This information can then be pushed into a CRM system or courier service to completely remove manual and repetitive bi-directional data entry processes.