There is a term you may have started to hear more of recently, perhaps in the news or when talking with your web developer about something you’d love for your site to do.
What is an API?
An API, or application programming interface, is a way for two different and separate applications to talk with each other. An API provides the building blocks for communication and cooperation between two or more applications. In the recent Oracle v Google case, the judge used a clever analogy liking an API to how a bookshelf is organized. Programmers use it to find the information they need, and write the essays and books themselves. (see also WIRED).
Do you need one?
Unless you are building a new platform such as the next great image sharing app, you don’t need to create an API of your own, but you very likely need to interact with them to take your website to the next level.
Why do you care?
APIs assist a good portion of your technology today. Perhaps you use a service such as IFTTT to help automate a portion of your social media. These services use APIs to help get information from point A to point B and in the correct format.
For example, I have found it challenging to keep my Instagram and Facebook connected (that’s a story for another day). I post about lots of different things from swatches I’ve knit, to my morning coffee & planning, to adorable kittens. I like my photos organized. It’s not possible to automatically upload an Instagram pic into a specific Facebook album based on a hashtag, but with the those APIs talking to each other and IFTTT adding its own extra layer, it’s possible.
There are other concerns with IFTTT and connecting your social media accounts, but security and privacy are topics for a future post. Please note that my calling out this specific tool is not to be seen as an endorsement or a criticism. I’ll explain why I’m hesitant to specify any one technology over any other in a future post.
Let’s look into another example. Your WordPress website likely has Jetpack enabled. One new feature that arrived back in April with Jetpack 4.0 is that social sharing icons are now on product pages, no more custom code and extra plugins to keep up-to-date! So if you show the social sharing counts on your products, posts, or pages, that is done using the APIs of those social media sites.
Within WooCommerce, there’s also a new way to connect services, this new service is currently in testing.
There’s more going on with the WordPress REST API, though I think there’s enough here for this initial post on the topic!
Are there challenges and concerns?
Yes, there are several. There are some for the developers of the applications you want to integrate. There are other decisions you need to make and to understand tradeoffs in using an API.
On the developer side, there is a great article on API challenges from the application developer viewpoint at the WordPress developers’ blog.
On your side of the technology equation, if you don’t import and incorporate all the information directly into your technology ecosystem, you do run a risk of the application or service not always being available. Yet, by incorporating APIs you can reduce duplication and repetition of tasks.
Things to remember
Yes, APIs can add value to your technology, but will they really solve your problems or add headaches of their own?