"An Application Programming Interface (API) is a specification intended to be used as an interface by software components to communicate with each other. An API may include specifications for routines, data structures, object classes, and variables." — Wikipedia
In other words, an API is an easy way to share data, content and functionalities with everyone. APIs allow us to build new services based on content, and these services can be made by one or several APIs.
Think about a mesh network, when every API is connected to another and connected with you and with your services. Everything is connected, everything is business value. This ability to mix data and provide smarter services with added value is a big deal.
Forget the “How will I reach other applications and services?”, just create your own API and share it with whoever can use it. Private, Partner/Restricted and Public, all scenarios can be contemplated, at various levels. This means that you can have a certain set of features for a certain audience, and other for different audiences.
To showcase the true potential of API's, let's think about Twitter and Facebook, and all the applications that exist around these social networks (hootsuite, instagram, foursquare...). Now imagine what would be of these same applications if the aforementioned social networks wouldn’t make their APIs available, or just not allow any data sharing? Clearly, these applications would not have the impact they have, and social networks would not be expanding at the rate we’re seeing.
Using APIs, this is much easier: all you need to do is understand the partner/client business and create an API that allows you to make use of them to design new products and services. You no longer need to have a "door-to-door" approach to find new partners or clients, they will use your API and create new products and services.
At DRI, we use a lot of APIs in our projects, in fact, almost all of our projects have one or more APIs, and this improves the way we see the future and the relationship with customers and partners. One example would be the integration between Get Satisfaction and SugarCRM, a perfect example of a partner API. You can read more about that here.
We recently embarked on another adventure that allows us not only unleash the full potential of social networks’ API's but also create our own API.
We’ve built a platform for Social Media Monitoring, where one can, well, Monitor Social Media. This framework gives you all sorts of information, allows you to generate graphs of various types (geographical, demographical, sociological, ...), see the interactions of people in desired social networks and interact with them in other social networks. All this is done, of course, through the API's of those social networks.
So it is possible for us to filter out the most relevant data from social networks, enrich that data and store and display it to users. We also built an API that allows other applications to fetch specific bits of information from our framework. This has the potential to add tremendous business value to several applications.
So, APIs unlock the bridge between your business and the users, and across channels by allowing data, content and services to be accessible and usable by any device, anywhere. Any use case that involves data can be tackled with API, with developers building apps for each use case that can spawn from the same information.