July 1, 2015 | Written by: Belinda Vennam
Categorized: What's New
Share this post:
At Interconnect 2015, you heard us talk about it, you saw the Twittersphere light up in anticipation, and now the time has arrived: API Harmony is available in the Bluemix Labs. API Harmony allows you to search Public APIs and find interesting relationships amongst them.
API Harmony searches curated APIs looking for those compatible with your app requirements
Until today, finding the most suitable APIs to use in an application was burdensome, requiring manual and time-consuming searches across a diverse set of web sites. Most commonly cited API directories often included stale information, making them unreliable and hard to utilize. Furthermore, the information was primarily limited to a single API, with no indication available about how multiple APIs could work together – any notion of compatibility between APIs was non-existent.
This is about to change. With IBM API Harmony, developers can determine a bag of APIs that best suits their needs during their requirement gathering process. Developers can also examine and learn how others have used APIs in their applications. With API Harmony, you can search the ever-growing corpus of APIs, curated by IBM, see new implementations sourced from GitHub, and get an idea of API compatibility!
Let’s find an API match for you!
You’ll find the link to API Harmony in the Bluemix Lab Catalog, here. The API Harmony service is categorized under Integration:
Select the API Harmony service and provision an instance. Once provisioned, click the provisioned service tile in your dashboard to be taken to API Harmony:
Let’s find an API! We know we want OAUTH1 Authentication supported, so we’ll search by Authentication Mode first. Just start typing OAUTH1, and select the associated Authentication Mode from the autocomplete options.
Filter by social bookmark APIs
We may now add additional filters – regarding API characteristics, names, descriptions, or combinations of those. We’re interested in finding APIs related to Bookmarks for our new social bookmarking app — let’s see what’s available. We start typing in Bookmarks and select “Category: Bookmarks” from the autocomplete options. Subsequently API Harmony presents all APIs that have OAUTH1 authentication and are related to bookmarks.
Great, there’s Instaper and the Pocket API. Clicking on one of these APIs allows us to view details about it, including a description, base URL, and characteristics. If we like what we see, we can “select” the API.
Filter by payment APIs
Selected APIs are considered in subsequent searches. We selected the Instapaper API. Now, we want to add payments to monetize our app. We can next delete the filter for “Category: Bookmarks” and instead add one for “Category: Payments.” As we can see, a relationship analysis is included in the results. It shows, for example, that the PayPal API has one common usage with the already selected Instapaper API and they share 6 characteristics.
Clicking on the PayPal API, we see more details about it and its relationship to the Instapaper API. The two graphs show how the APIs relate:
From here, we can also select the PayPal API, so that it will also be considered in future searches for relationship analyses. Overall, in this iterative process, API Harmony supports developers in finding a bag of APIs to use for specific requirements.
In the future, we want to make the information provided in API Harmony even more actionable, for example, by providing code snippets on how to use APIs, deriving artifacts like workflows, or allowing users to maintain a catalog of private APIs in the system. If you have feedback or any ideas you would like to see in API Harmony, please add them to our forum.
—Erik Wittern, Research Staff Member
—Jim Laredo, Senior Technical Staff Member