Successful APIs tend to have MIT-style open-source software licenses; the World Bank, for example, uses an Open Source Attribution License. O'Grady says one key to success is being very clear about the terms of service, and not having an overly restrictive license that discourages use.
He says Stack Overflow, a collaboratively edited question-and-answer site for programmers, has a very nice API, for instance, but that the terms of using it are difficult to navigate. Twitter irritated some developers, he adds, by being too insistent about issues such as how the time stamp was formatted, or insisting that the word "tweet" must be capitalized. While developers are unlikely to shun Twitter for being difficult to work with, O'Grady says, "Certainly in some cases if your product isn't that popular people will abandon it."
Another non-technological challenge to creating an open API is getting other people in the organization, who are used to dealing in proprietary information and maintaining authority over their brand, to cede some control. "I had to do a lot of convincing," Bloomberg's Edwards says. "It's a different way of thinking, when you've been controlling your product." But he says it was important to distinguish between the market data Bloomberg sells and things like the symbology and software that the company doesn't need to control. "The time for all these proprietary interfaces is gone," he says. "It doesn't add value anymore."
Best Buy's Bendt also faced concerns. "It was tough when we first started talking about an API platform," he says. Colleagues wondered, "What are they going to build? What if they create a bad experience?" The company addressed that with rules about how developers could use the data; they must attribute it to Best Buy, for instance, and can't appropriate it for other purposes. There's no pre-approval of apps, but the company does regular audits to make sure the apps comply with the terms of service.
At the World Bank there was worry that giving away data would mean giving up the revenue that paid for curation of the data. Fantom says the bank decided that a free model would actually be better for the bank's main objective of fighting poverty. "By making these data available for free and using these tools, we've seen a massive increase in the use of our data," he says. "Once you start getting into this, it's pretty clear that this is the right thing to do."
All these organizations say their APIs continue to evolve, adding new functionality, responding to feedback from developers and customers and figuring out what data to make available. "You've got to release the right kind of data with the right documentation. Really, it comes down to what customer problems are you going to solve by doing what you do," Bendt says. "It's not a launch-it-and-leave-it type of capability. It's constant learning and constant improvement."
Neil Savage is a freelance science and technology writer in Lowell, Mass. He can be reached at email@example.com.
Read more about applications in Computerworld's Applications Topic Center.