APIs are everywhere. Their growth since their inception in software development decades ago has now become exponential. They are an essential tool for modern web developers to build powerful web applications. They are so prevalent that now usage has bled into other non-development business scenarios like marketing and data analytics. A popular aggregator for API services is Programmable Web, where currently there are over 20,000 unique API tools, and that number is growing faster and faster every day.
APIs have been a critical component of software development for years, but their contribution to web development is ramping up in both scope and proliferation. Every major Saas (Software as a Service) company, from Salesforce to Facebook to Google to Mailchimp, employs APIs for a vast amount of systems and software tools deployed on the web. These services provide rich ecosystems and new opportunities for deep customization for web developers.
What does this increased reliance and availability of APIs mean for your website? How can they be used, and how are they currently being used on your WordPress or Magento installation? And what possibilities are these software tools creating for the future of web development?
Before we dive too deep, lets get some definitions in place. What is an API?
Application Program Interface
API stands for “Application Program Interface” and it is a simple concept: a set of components or routines that serve as building blocks for a desktop or web application. In their humble beginnings, APIs were firmly in the world of operating systems and desktop applications, but this is changing quickly. There is a new paradigm of rapidly emerging web API ecosystems that shows no signs of slowing.
An API on the web mean the ability to work with any 3rd party web service from any web application. All the web application has to do is reach out to the API, send it a request (say, a request for a set of data for a given time period), and the API will execute your request (and in this instance, send your requested data back to your web application). There are many, many more requests and routines an API can satisfy, but the core concept is this: an API provides prebuilt solutions for you to utilize in your web site or application, greatly increasing the speed with which you can develop a new project.
This also means that APIs provide a huge amount of integration possibilities with your site and other 3rd parties that you may want to implement. It is becoming more and more common for vendors to provide these tools for their customers. This is where the true value of web APIs lie: bridging your business tools with the other tools you use in a way that reduces overhead, enhances data reporting, and ultimately ties all of your critical business data together. The possibilities are truly endless.
How do APIs work?
APIs on the web are essentially siloed points of entry to a web site or service. WordPress, for example, has had its own API for years, and is a good example of a simple API that can provide for any number of unique applications. You can send an API request to WordPress to get a list of blog posts, a list of users, a collection of uploaded media, or a set of comments on a blog post. You can send data to the WordPress API from a different application to automatically create a post, an event, or even upload new media. Features like this could allow you to build a native Android or iOS app, powered by data coming from WordPress. Suddenly your WordPress site is no longer a website, but a full fledged software application tool you can leverage anyway you like.
In fact, your WordPress site is probably using a number of APIs at any moment. For example, that Facebook feed scroller or the Twitter feed on your homepage is using API tools from those services to show their data on your site. API data is protected by way of authentication; in other words, you need to be able to login to the API in order for it to work. You login to Facebook to write a new post and you login to Instagram to view your friends’ photos; likewise, you need to login to your API get your data.
In short, API’s provide two substantial and invaluable features: Faster, modern web services for better quality applications on the web, and a better ecosystem for web developers to do their job building these powerful new web applications.
Both WordPress and Magento have APIs that can be leveraged to extend and enhance these systems for a wide variety of business applications. We have developed features with APIs to automate product imports and product updates, create point of sale (POS) system integrations, manage inventory from 3rd party databases and vendors, and distribute data across multisite platforms.
Here are some ideas that could easily be supported by APIs:
Allow you to work with external data, while keeping a consistent front end / brand theme for your site
You can leverage a web site or application to use data from any number of APIs, that can be displayed with your branding and theming in place. The API just sends you only the data you need to display in a universal format.
Interact with a variety of payment gateways and other eCommerce transaction features
It is now far easier to work with 3rd party payment gateways to allow even more options for transactions on your WooCommerce or Magento site. This is a huge boon to businesses that may have been stymied by the lack of support in the past, but now have these kinds of tools available for them.
Pull data from a sister site for inter-connectivity in an efficient manner
Run multiple sites and have content that needs to display across them all, but don’t want to enter that information in each individual site? An API request from one site can easily serve that content anywhere you need to show it.
Interact with business vendors like MailChimp, Salesforce, Marketo, etc.
It is only getting easier to get your data to and from the 3rd party vendors you rely on everyday. You can be as creative as you like with how you use this data in your customer facing site. Conversely, it is simple to send data coming in from your site anywhere else it needs to go.
Covert your site into a full fledged Web App
One of the most exciting aspects of using something like the WordPress API would be to create a native smartphone or tablet app that uses the data on your web site to create new, engaging tools for your customers or clients.
Ultimately, the opportunities this rise in API usage creates means a new frontier of possibilities for your customers, clients, and business operations. The business challenges you face now may be quickly mitigated and improved with these tools. APIs can bridge the gap into a new, modern approach to development that provides expansive potential for your business.