RealTime IT News

Making The Case For APIs

People are making a lot of fuss over application program interfaces (APIs) .

Nowhere is this more prevalent than the buzz generated earlier this week by auction giant eBay's intention to eliminate the membership fee to its developer program and any charges for API calls made through its unified schema.

EBay has allowed access to its APIs for years, but there's always been a fee attached for third-party developers, and a per-call charge for Web services requests to the company database. While the company surely got some bigger software development outfits to buy into the program, it left individual developers out in the cold.

The auction company is only the latest software vendor to discover that sometimes you just need to give a little to get a lot.

APIs come in different shapes and sizes ranging from libraries of functions, procedures and data structures wrapped in a software development kit (SDK ) to simple URLs describing a Web services call to back-end information.

With APIs, the returns are more than just an opportunity to collect revenues. They're a way to take your software in directions never intended. In the business world, they help vendors keep and retain customers who are demanding a means to extend and collaborate data on the different software applications within the enterprise.

In both cases, it extends the application to a greater audience of users. And the demand is only getting bigger, said Stephen O'Grady, an analyst with research firm RedMonk.

"What has been amply demonstrated, particularly in the Web services world, is that if you provide some platform technology -- that might mean an operating system, but that also might mean an application like Google Maps -- if you allow developers the ability to extend these applications in new and interesting ways, they will really surprise you with how creative they can be."

Google Maps is a good example of the power of APIs.

In and of itself, Google Maps isn't a groundbreaking application in terms of functionality, O'Grady said, it's a mapping program just like the others. But by taking the Google Maps API, developers have been able to do some pretty amazing things:

  • Chicagocrime.org takes police reports of recently reported crimes – first-degree murder, arson, gambling, assault -- from the past 90 days and maps them out.
  • SkiBonk.com gives terrain, weather and condition information of, you guessed it, ski resorts around the world.
  • MapYourAncestors.com maps out your family tree.

The list goes on, but you get the idea. Taking an application that's been used primarily to provide driving directions, developers have made Google Maps more than just any mapping application.

As popular as these applications are in the consumer world, APIs aren't just something neat-to-have in the business world, they're need-to-have for any software developer who wants to add to or keep its customer base.

"The fact of the matter is customers have a requirement that a product is extensible and 'integrateable,' and APIs are the most logical and common way to do that," said Eric Vishria, director of product marketing at IT automation vendor Opsware. "That's a customer requirement that directly impacts business."

Qualys is a Redwood Shores, Calif., developer that creates a software-as-a-service (SaaS) vulnerability management product called QualysGuard. The service monitors the assets on a network, prioritizes the vulnerabilities and ensures policy compliance.

But vulnerability management is only one piece of the security puzzle, so some customers are going to need a way to take Qualys' data and port it to another application.

Enter APIs, specifically a Web services call that allows a third-party application to make requests such as importing remediation reports into the patch management or intrusion detection system (IDS) /intrusion prevention system (IPS) offering.

For Qualys, each API is a tailored call that downloads an XML output upon request.

Jonathan Bitle, Qualys senior product manager, said customers drive the APIs that get built to access data.

"It has to be customer driven because this is a programmatic extension of the use of data and just a different methodology. So when they request something, it just makes more sense to add it into the API because of the use they're looking for."

APIs are getting a second look from many software developers, both on the side of those creating APIs and those who want to incorporate others' software components.

While APIs have been around for years, their adoption has been hindered or helped by the API's complexity or the documentation, or lack thereof, that accompanies the API.

There's been a tremendous increase in interest for APIs because of the increasing popularity of some Web services, such as Amazon, eBay and Google, RedMonk's O'Grady said.

"There has been a concerted effort to make sure that APIs are constructed in such a way that developers can work with them," he said. "Just providing an API, in and of itself, is not going to get developers to work on your software because APIs can be too complex, they can be under-documented. There's a lot of things that can go wrong."

APIs aren't always a company's first concern, especially in the case of startup companies that are more worried about getting their products sold in the first place than integrating with other applications.

That was the case for application "black box" developer Identify Software. The company's software monitors and records user interactions to discover the root cause of application failures.

Though the company had been providing a limited set of APIs to its customers since version 2 some seven years ago, the company didn't get serious about APIs until about three years ago, said Ran Gishri, Identify vice president of product marketing.

The company surpassed the point where they were comfortable with the level of value they delivered to its customers. Now, Gishri said, the priority was integrating the application and its central server product to customer applications and business partners.

They standardized their APIs, built up the documentation that accompanies them and began training people how to use the APIs. Gishri said the company now has an extensive set of APIs, which is necessary for a company's success.

"Because you don't want to be an exception-handling tool -- you don't want to be a tool that's used only when everything fails -- you want to become part of your customer and user process so that you're used day by day," he said. "That increases your value."

Increasing value also means striking business partnerships with other vendors. One of their top priorities right now, he said, is getting its console API to technology partners, which lets them embed the UI for their black box within the third-party application.

"We want to be integrated, we want to be part of your process," Gishri said of partnerships. "That also means that it is going to be more difficult for you to decide to replace us; from a vendor view that also makes a lot of sense."