With all the buzz around APIs these days, its easy to get swept up in all the hype around open APIs, and miss the mark with your own API deployment.
So what do I mean by Open APIs? Open APIs are like Twitter, Twilio and many of Google APIs that are available for anyone to register for a key, and start programming against.
Discussions around APIs tend to start here. People often hear about the popularity of these APIs and want to emulate that.
If you don't directly have experience with API deployment, I recommend getting your feet wet with a more closed API deployment.
Immediately, calling APIs closed sounds bad. Sounds like you are being selfish or exclusive and don't want anyone touching your APIs. Because of this closed APIs don't get the press coverage and discussion they deserve.
In reality very few APIs find success in being open. Most API projects will get traction in sharing data and resources with business partners, and even internally between departments within a company.
Closed APIs enable you to serve a very limited audience, maintaining control over your data and resources, which is a common concern with API deployment.
Within this closed or controlled environment you can get your feet wet with API deployment, gain some experience, then maybe someday the right opportunity for an open API will come along.
It's not about Open vs. Closed, its about doing what makes sense and possibly doing both in the long run. I would also like to see more open discussion around best practices with closed API deployment in the press an blogosphere.