This Guest Post comes from Chuck White. He has worked with APIs for more than 15 years in a wide variety of capacities. He spent eight years as a Web developer at eBay and PayPal, and is currently consulting at Hewlett-Packard on its business-to-business e-commerce platform. He has published a number of books on Web development. His most recent book is Web Development in the Cloud: Bootstrapping an Enterprise-grade Website on a Shoestring.
So you’ve built a stellar API. Now what? How do you get the word out? First, throw everything you know about marketing out the window. Indeed, the old style of marketing doesn’t apply when it comes to APIs. The notion of building a marketing campaign replete with ads and PR fluff is virtually non-existent in the world of API marketing. Why? When you create an API, you are creating a community. This community of users will drive your marketing in a highly decentralized way.
This, of course, presents a challenge: How do you control the marketing if it’s in the hands of your users? The key is engagement. As long as you have a solid product, the most effective way to promote use of your API is by engaging with the community. If you want to get developers talking about your API, here are some principles to follow:
1. Make Sure Your API is as Easy to Implement as Possible
If your API is easy to use and works well, it won’t be long before language-specific SDKs begin to appear on GitHub. For example, this GitHub site includes a number of implementations for the Twilio API: https://github.com/twiliofaces. The author of the code didn’t find what he was looking for when implementing Twilio’s API code for Java Server Faces, so he rolled his own. Naturally, this benefits the developer community, but it also benefits Twilio, since every download can most likely be traced to a motivated customer for Twilio. This is organic growth, and this is what you want for your API.
2. Provide World-Class Documentation
Directly related to making an API easy to implement is offering good-quality documentation—on second thought, make that world-class documentation.
As a former PayPal software engineer, I can tell you that PayPal’s engineering staff is top-notch, including its API developers. However, for a long time this fact was obscured by less-than-stellar documentation. Even the most basic services were difficult to implement, mostly because the documentation was a mess. PayPal rival Stripe, on the other hand, demonstrated that a well-documented, easy-to-use API can quickly attract a loyal user base of developers.
Good documentation includes:
- 1) An easy-to-navigate developer website. This means developers need to be able to quickly find API keys, sign up for the API, access your API’s methods and navigate to SDK implementation libraries.
2) Access to any source code you can provide that won’t give away trade secrets. Code should be made available preferably on GitHub, which has become a default of sorts for many developers who want to share code.
3) Constant communication. API blogs, email newsletters that engage the community instead of acting as advertising mouthpieces, and a solid, constant presence on Twitter are all ways to maintain a high level of communication.
Remember, your API website has just a few seconds to gain and hold developers’ attention. It’s like a billboard. Especially if you are new, people are just passing through. They may click through to learn more, but they probably won’t. You need to work hard to convert those “probably won’ts.”
2. Help Developers Get Their Next Gig
One API manager I talked to said that he always thought of his company’s API in a way that would help the developers who use it get their next great gig. “If they can use our toolset to create a great app that they can either get onto an app store or at least as an open source GitHub project that people talk about, that buys us a lot of influence and good will,” said the manager, who declined to be identified.
3. Initiate Hackathons
One popular way for API developers to engage their developer community is to initiate hackathons. You can even offer a contest, but you need to make sure you have an independent judging infrastructure. You don’t want to spend a million dollars on a badly managed hackathon (unless you subscribe to the theory that bad publicity is better than no publicity, of course).
If you’re on a budget, you can still hold a hackathon and keep developers happy with a little beer and pizza. Keep in mind the developer mentality: Any opportunity to gain recognition for work they do will make them happy. Any prizes you give for a hackathon are really just extra sauce.
4. Host Meetups and Other Offline Venues
One great way to engage with developers is to either host a developer conference or participate in one (or more) of the many domain-based developer conferences that are held all over the world. If you are promoting an API for a well-known company, hosting an event will attract lots of traffic organically. The press is already watching you, as are hundreds (at least) of social media users who are talking about you, even if you’re not aware of it.
If you aren’t part of a large, well-known organization, there are plenty of developer conferences you can attend, including:
2) Platform-specific conferences: Reach those iOS and Android developers by holding a variety of events at conferences dedicated to those platforms.
3) Existing APIs: If your API integrates with another organization’s API, attend that organization’s conferences and provide insights on best practices.
You can gain some knowledge about what conferences are popular by staying in tune with the developer community via Twitter, Reddit and other online communities.
If you can’t find an event in your area, start your own. And don’t shy away from smaller crowds when starting your own events. Small groups of highly engaged developers can provide powerful and unbiased insights into the true state of your API.
Check out Meetup.com and Eventbrite.com to help you find and/or start up meetings.
Another great way to get a jump on trending hot topics in the API developer community is to find out which tech books are selling well. O’Reilly, for example, maintains a list of its hottest selling books.
5. Develop Open Source Code that Other Developers Can Leverage
PayPal recently released http://krakenjs.com/,which is an open source node.js-based web application framework. Even though there is documentation on the Kraken site on how to develop for the PayPal API, it’s not the central focus of the site. The main goal is to provide a web application framework for node.js developers. The kraken.js web application framework features such goodies as localization and a bcrypt-based authentication layer. This is the kind of engagement with the developer community that can help build developer good will.
6. Leverage Social Networks
Twitter is an obvious venue for growing your community, but avoid marketing spiels. Use Twitter to authentically grow the community by offering things developers want and need. Help them become better programmers, and they will return the love a thousand fold.
Show up on Reddit, too. Reddit users love to offer advice. But don’t market directly to them. They hate that. There are other social media avenues to consider, too. Quora, for example, is good place to hang out and offer expertise, and Sulia is a news website linked to various social networking services that allows you to write small articles and post photos associated with topics evelopers will be interested in.
7. Build a Sound Feedback Infrastructure
Don’t be afraid of criticism. In fact, early on, if you’re not getting at least a little negative feedback, it probably means your users aren’t very engaged with your API. Set up rock-solid and easy-to-use forums and mailing lists for your developers. Open up some source code on GitHub and provide a way there for your newly engaged developer community to report bugs in a public way. This provides a way for you to show that you are earnestly engaged. PayPal, for example, maintains a GitHub-based bug reporting area for its Kraken.js web application framework here.
9. Hire a Developer Community Evangelist
As soon as you can, hire or dedicate someone to manage events and oversee documentation efforts. Many companies fold these kinds of leadership roles into the responsibilities of technical managers who already owned an API’s development efforts. This is fine, as long as that person has the time to manage community outreach efforts. If you do need to split responsibilities down the road, make sure your API technical lead stays involved with the community. Any hints of brazen marketing--instead of genuine community involvement with the people at your company who know the ins and outs of the API--can be poisonous to your reputation. When your technical lead is active in the community, the community can feel the excitement because that API is your technical manager’s baby.
10. Don’t Forget the Swag
While many traditional marketing ploys will fall flat among the developer community, there’s one that still holds a lot of power: swag. Everyone loves T-shirts, water bottles and the like. Indeed, all it takes is one influential set of eyes to ask about your water bottle or T-shirt at a barbeque for things to suddenly go viral.