As a Web Developer, I am frequently asked by my clients to develop applications that integrate with the external online services that their business or customers are already using.
In these situations, I need to work with an API – API stands for Application Programming Interface and acts as a communication gateway between by clients project and the external service.
API’s are used all over the web, they allow you to sign in to websites, make purchases, interact with your social media unique ways and have many more uses.
Why use an API?
Making us of an API for your project is an attractive option for developers and their clients alike when planning their application or website.
API’s save time as developers do not need to build every aspect of a project from scratch and get can support for the original developers to integrate.
Developers have more options to build a more useful project by using API’s – example integrating with a payment option like PayPal
There is no need to pay extra for similar services to be built by the developer.
The final website or application will be more powerful and often easier to use, example, allowing their customers to register using their social media.
Can continue to use popular online services they are familiar with without retraining staff.
Working with an API
Most creators of API’s offer support and guidance to the developers that are interested in integrating with their services. No two API’s are alike and this means that there can be a wide variation of the support available and the quality of the API.
As powerful as they can be for your project it is a good idea to be selective when choosing an API to work with. Usefulness, security and ease of implementation are all key considerations.
If your working with an API you can expect to read through plenty of documentation. Your experience will probably depend on the quality of this, many API’s could benefit from improving this area.
Examples of an API in practical use
The following four example are API providers/types that are frequently used in web Development projects.
I will describe these as how they could be of benefit in your web development project and link to their developer area as each of these API provide a guide of how to integrate and access support.
Social Media with Facebook and Twitter API’s
With so many people having a social media these can be especially useful. Both Twitter and Facebook will allow developers to use the API to make posts to accounts which is great for automating tasks when maintaining a blog.
It is possible to let users create accounts and log into their account by using the API. This is something I do when using social coding services like Github.com
Facebook especially has a wide range of API’s, some of these can be used for the purpose of granting access to a user’s social media data known as data stored in their social data. Users will need to click to grant permission to access this of course.
Make the most of the web with Google API
Google is a major influencer on the internet and therefore collects a significant amount of data. Google provides a wide variety of interesting API’s putting this data to use.
An interesting use for Google API is to use Google’s vast database to provide an auto-complete just like on their own search input box.
Google also allows access to Google Analytics to analyse your website data in graphs. As well as this there is access to Google Maps, Google Drive and Gmail to integrate those features into projects too.
Payments with PayPal API
A payment API like PayPal provides a convenient way for users to pay for services and for website owners it is equally convenient as there is no need to bother with the time, expense and risk of handling their online customer’s credit card data.
PayPal has been around for a long time and has developed a reputation as the Gold Standard for online Payments without the worry of handing over credit card details to unknown websites.
Over time similar services have emerged that have their own merits like a lower cost per transaction, this may be worth looking into. Be aware that as a website owner, not all alternatives offer protection against fraud in the way PayPal does so all options should be scrutinized.
Storage with Dropbox API
If your website or application is going to involve a high volume of data uploads then you may be wondering how you’re going to store it all. Using a cloud solution like Dropbox is a good option for automatically storing uploaded files
This not only reduces the burden on your hosting package it also minimizes the risk of data loss.
Creating your own API
When working with API’s you are not just restricted to adding to your own project. It’s not just about embedding interesting features into your own website. Perhaps you have something special to offer the World Wide Web yourself and can create an API yourself.
Learning about HTTP Web Services and concepts like REST is a great place to start.