Copyright Accentuate.Me LLCDo you allow others to plug in to your architecture however they’d like?
API stands for Application Programming Interface. Basically an API is a way for other people to write code to access your application or your website. The funny thing is that when I explain this to people they tend to immediately ask me: “Why would I want that??”. Well, let us start with a small website that exploded in popularity almost overnight: Twitter.
The idea of Twitter is very simple: post what you are doing in 140 characters or less. You can follow what others do, and they can follow what you do. Doesn’t sound like much, and really the idea is very simple. However, the implementation was much more than just that. One of the key features that contributed to the Twitter’s success was its ability for users to send messages however they liked: through the website, through text messaging, or by accessing the service through its API. Many users do not access this API directly, rather they access it through applications written by other people which use the API. For example: I can access Twitter using an application on my desktop called Tweetie. Tweetie was not originally written by the Twitter team, but it keeps track of my accounts and I can check it much more easily and quickly than going to the website. I would probably not be using the services if I did not have this application.
If you have a website that directly provides a service, look into creating an interface for other programs to use it. We get stuck in the mindset that we have to do all the work ourselves. Twitter currently has 70,000 registered applications. That’s not even counting the people using these applications. If you can make it easier for others to build on what you’ve done, you will get many more people using what you have to offer.
A good example of a company that needs an API is a print shop. Rather than do all the marketing themselves and force everyone to use the same piece of software or submit their orders manually, their website could be opened up to allow anyone to submit and manage their orders programmatically. This way if someone wishes to build a different interface and make use of the print services, they can easily do it.
There is no absolute standard way to do an API, except whatever you or your developer decides. One way that is easy for potential partners to access an API is through the Internet and address based mappings. For example, after logging in an application could query your website by going to http://yourwebsite.com/orders.json and your website would respond with something like this:
[
{
'order_id' : 'a384-321',
'line_items' : [ { 'item_id' : 'desk-01', 'description' : 'Sights of Maui (Desktop)', 'price' : 11.82, 'quantity' : 1 } ],
'shipping_address' : { ... }
}
]
Such a thing might look a bit like nonsense to you, but this is in a format that programmers use to extend the functionality of your company. In the end, it means more customers using your services as people develop applications that interface with your service. Back to the print shop example: if you allow someone to build a website for photographers that automatically sends in orders to your print shop both you and the other website builder win. They get customers for their application, you get additional printing business. It’s an easy way to get others working for you by making their lives easier as well.



Pingback: Tweets that mention Why You Might Need an API | Making it Personal -- Topsy.com