Thursday, December 15, 2011

Factual, 1 API for 55 million places


Factual API is another big data API for querying places. It even includes countries such as China.

However, it is currently under Beta so not everyone gets access.

Wednesday, December 14, 2011

HipChat - An IM for companies at work

HipChat is an IM, similar to Skype, MSN, Yahoo messenger, and 100 other IM services.

However, they are largely focused for providing IM for work, with features such as file sharing (like dropbox), and concept of group chat (rooms). They charge $2 per person per month.

HipChat API looks neat too!

National University of Singapore (NUS) has an API for querying courses information

This API is created by nushackers, and provides querying of courses information such as the module description, timetable and pre-requisites.

I was a graduate from NUS, so I could see that an API would be very useful when it comes to a new semester where students spend a huge amount of time searching and bidding for their modules.

It is also enlightening to learn that the project is built using Python, Flask and Scrapy.

Tuesday, December 13, 2011

Best Analytics SDK for Mobile is still Flurry

Flurry is one of the pioneer in analytics for mobile apps, and still remain king in this area.

It provides SDKs for iOS, Android, BlackBerry, Windows Phone - the 4 major platforms! Not forgetting also Java ME!

It measured a lot of stuff, such as:

  • Total number of users
  • Growth per day
  • Duration of each session
  • Device hardware
  • Device OS
  • Particular action on the app (as specified by developers)

Thursday, December 1, 2011

Zappos has an API, and organizes a winter Hackathon


Zappos API can be used to search products. The API returns complete products details including the different styles, images, reviews and statistics. There is even an AutoComplete API for you to implement search auto-complete (like how Google search did)!

Pretty fun API for an online store.

What can spotify API and apps do?

Spotify has recently launched their app platform. It is basically a way for developers to use HTML5 to integrate into their desktop app.

Using their API and app platform, developers can creating streaming apps. Also discovering of music and playlists.

What you can't do, of course, is to download the songs.

Wednesday, November 30, 2011

Free SMS API - Zeepmobile

SMS does have a cost and so a free SMS API that sends everywhere is impossible.

But Zeepmobile claims that. They have a catch of course.

Ads will be appended to the SMS send. To use an ad-free version, you have to subscribe to $9.95/month.

Zeepmobile is also not suitable to be used for SMS marketing. This is because to use the API, the users need to explicitly subscribe first. Developers are required to implement this subscription step.

Thursday, November 24, 2011

Cappuccino API, is for making website in Objective-J

Let me ascertain 2 facts first:

  1. This API does not make cappuccino
  2. It is Objective-J, not Objective-C (the iOS/Mac programming language)
Cappuccino an API for making websites that runs like desktop apps. For example, Mockingbird, a wireframe web app, uses it.

The framework is modeled like Objective-C, but it is in fact using Javascript. Awesome API!

Wednesday, November 23, 2011

Dictionary API - looking up words with Wordnik

We mentioned Wordnik and their awesome interactive doc a posts ago.

Their API helps to lookup meanings of words, like a traditional dictionary.

They encourage commercial use of their API, though it is not free once you exceed 5000 requests/hour. If you thinking of caching, that is not allow as stated in their TOS.

Tuesday, November 22, 2011

Postgre on a cloud platform, by Heroku

You can now create Postgre SQL database on Heroku, and built on any programming platform.

Check out Herokupostgres.

Wednesday, November 16, 2011

Free Video Conferencing API

This is an awesome API provided by tokbox, aka opentok platform.

Using their API, developers are able to create free video to video conferencing. It is even used by big players such as ebuddy!

They business model is on a freemium model, which is always free for basic use. Their premium chargable services would be archiving, which is still in beta.

Monday, November 14, 2011

Google OAuth 2.0 Playground

Google has published a nice tools for OAuth 2.0. They call it OAuth 2.0 Playground.

It provides an Interface for 3-steps to calling an OAuth powered API.

First, you get require the authorization code with a certain scope of use. Second, you exchange an access token with the code. Lastly, you call the RESTful API with the access token.

Thursday, October 20, 2011

Self-Service is Key to Success

Twilio CEO Jeff Lawson argued that two of the ways APIs can be successful in courting new developers are by being self-service and by having a freemium option.

I couldn't agree more.

Developers should be able to visit your website and get started right away, without paying a thing first. And, the documentation must be readable.

Source: API Evangelist

Heroku PHP now supports MongoDB

Previously, I posted about Heroku NOT supporting MongoDB.

However, their support got back to me after 1 week, and now its supported. I have verified :)

Instructions at github here

Thursday, October 13, 2011

Heroku PHP does NOT support MongoDB

This is a personal experience. As of 14th Oct 2011, Heroku PHP does not support MongoDB.

You might expect it to just work, since MongoHQ is listed as an add-on in Heroku.

However, when I use Mongo php class, it gave me a fatal error "Mongo class not found".

I contacted Heroku support, and this is verified - their PHP instance still do not support MongoDB.

Duh.. that's pretty dumb. Looks like Heroku support for it's new languages is still lagging.

Wednesday, October 12, 2011

TalkSpace let you call between users for free

Create a TalkSpace (aka a conference room), and let participants talk for free!

The API/SDK can be used for iOS clients, or even Facebook platform. So if you are developing on these platforms, throw in the SDK and let your users chatter!

API Documentation here.

Friday, October 7, 2011

Google Cloud SQL (with App Engine)

Google has announced their Cloud SQL API.

Up till now, Google has only offer Datastore API on App Engine. Datastore is based on big table database, and is unlike the more commonly known MySql database.

With this Cloud SQL, Google is offering a MySql database on their infrastructure. It is simple to use. Simply setup an instance, and do your SQL in Java or Python!

This API is currently in Beta and is free. It will be paid someday.

Graph API for Travel

Facebook Open Graph API is the king to building social graph, with friend, group, event, etc as key objects.

The king for travel API would have to be Add to Trip. It let developers build social travel graph by populating with flight, hotel, itinerary, participants, etc.

Cool API, since that means developers don't have to design the same data model (again).

However, Add to Trip API is not free.

Tuesday, October 4, 2011

What is (Facebook) Signed Request?

Facebook continues to improve their API and move towards a modern platform, and in the process not supporting for OAuth 1.x and unsecure HTTP.

Signed Request is another new improvement. Now, Facebook use signed_request, and drop fb_sig. Read this what what signed request do for you.

I am going to explain in short what Signed Request do.

When a user use your Facebook app, Facebook will make a http post to your canvas URL. In this http post (a call back notification), Facebook will provide you with information such as the user's country and oauth_token.

In order to secure this payload information, Signed Request is used. Using your app's secret, which ONLY you and Facebook know, the payload is hashed with the secret to produce a signature.

sign_request = signature.payload

When you receive the sign_request, you can hash the payload with your app's secret, and then compare to  the signature. If it doesn't match, that means someone is modifying the content (eg. man-in-the-middle attack).


Monday, October 3, 2011

Heroku Pricing Explained

For newbies to Heroku, the pricing is not easy to understand at first.

You can refer to the article: how much a dyno cost?

In short, you need to know Heroku charge by dyno hours. And there are 2 type of dyno:

  1. Web Dyno
  2. Worker Dyno
And for each app, you are given 750 free dyno hours!

So if you run 1 web dyno for 400 hours, and 1 worker dyno for 400 hours, that means you spend 800 dyno hours. Subtracting from the free 750 hours, you would therefore be billed 50 hours. 

Dynos cost $0.05 per hour, so 50 hours cost you $2.50.

Search Deals with Groupon API

A little known API from a huge commerce company: https://sites.google.com/site/grouponapiv2/home

Yeah I know their documentation is hosted on elementary Google Sites. But what can you expect from a company that has majority salesman, few developers.

Thursday, September 29, 2011

BlackBerry Hackathon in 8 Cities

This is RIM's BBM app hackathon in


  • Toronto: October 6th and 7th
  • Chicago: October 10th and 11th
  • San Francisco: October 16th and 17th (just in time for BlackBerry DevCon Americas 2011!)
  • Boston: November 3rd and 4th
  • Jakarta: November 14th and 15th
  • Bangkok: November 17th and 18th
  • London, England: November 19th and 20th
  • Amsterdam: November 23rd and 24th

Tuesday, September 27, 2011

AR.Drone API Platform

I bet you didn't know there is even an API for AR.Drone! (in case you didn't know what that cool toy is, it is a remote control quadricopter with video feedback)

Check it out at https://projects.ardrone.org/ if you want to develop apps that controls your AR.Drone. It even supports iPhone platform.

Monday, September 26, 2011

Square COO: There’s no value in NFC, and not Square API yet

The COO of Square, a mobile payment startup, talked about NFC's zero value proposition, and claimed no merchant he talked to wants this NFC thingy.

He also said:
But don’t expect Square to be a platform or API any time soon — Rabois said that because they are trying to make the transaction as simple as possible, it might not lend itself to an open API.
So no open API yet as they try to redefine the product.

That is a correct strategy for any product that wants to become a platform/API. Make your product really simple and tuned for the market FIRST.

Duzzit, a Yahoo! Pipes Framework


If you have seen Yahoo! Pipes before, you would have wondered how they do it.

Look forward to http://www.itduzzit.com/, which is a framework that let developers create this kind of rewiring of components.

Thursday, September 22, 2011

Twilio Connect, is similar to Facebook Connect

Twilio has been leading the communication space. Their value proposition has always been making it dead easy for developers to build Voice & SMS apps.

Today, they are making it even easier by introducing Twilio Connect. Just like Facebook Connect (also an OAuth login), you can use Twilio Connect to log in a Twilio account, and make phone calls and send SMS via that account. Of course, you charge to that account.

Developers can now build their apps, and let users pay via their own Twilio account. This solve a billing problem to developers.

This sounds like a great feature. However, this also means developers would not be able to markup for the voice minutes and SMS sent from the app. Moreover, Twilio is not doing any revenue share with developers using Twilio Connect.

This is unlike BlueVia Connect, which does revenue sharing.

Find out more about Twilio Connect here: http://www.twilio.com/api/connect

Tuesday, September 20, 2011

Google+ Hangout API

Google just announced their Hangout API for Google+.

Checkout how to write an app from their documentation. Includes sample code for a voting widget.

Friday, September 16, 2011

Live Chat on a Website

There are many services providing live chat plugin to a website. Live chat is pretty useful for connecting to your website visitors. A website owner can use it to chat with visitors, or to provide sales support etc.

There is a comprehensive list at socialcompare. Missing from the list is Meebo, who has also jump onto the bandwagon.

I have tried a few in my websites. If I were to recommend, it would be Olark.

Wednesday, September 14, 2011

Free API management tool


When designing API for a web service, the first decision is not about trivial things such as to use JSON or XML, or to use RESTful or SOAP. 

API providers should first decide about using API management tools that offers them a package –  developer portal, security access control, analytics & reporting, billing, etc

http://www.3scale.net/ is one tool that provides that. At less than 50 requests per day, it is free. Pretty meager, but ya, it is free.

(anway, JSON and RESTful should be the modern way to go)

Fly Letter (China 飞信) SMS API


Fly Letter (飞信) is a China telecom service.

They have an SMS API too! With that, SMS can be sent for free to China mobile subscribers!

Monitor 51 Popular APIs, including Amazon, Google, Twilio


Developers constantly need to care about API uptime. 

If you use popular APIs such as Amazon, Google, twitter, etc.. then http://api-status.com/ is a website that you want to bookmark.

Of course, they provide an api to query their api-status too.

Wednesday, September 7, 2011

Realtime Mobile Marketing using Playhaven

Playhaven is a platform that helps iPhone developer that drives app marketing.

An app developer usually find themselves needing to send promotional messages to their users – to increase usage, or to have them download a new app.

Playhaven helps to do these cross promotions easily by providing their platform.

If you an iPhone developer, I highly recommend you think about how you want to send marketing message to your users, and take a look at Playhaven. It saves you hell out of developing a marketing mechanism.

Wiring Library (like Yahoo Pipes)

If you have played with services such as Yahoo! Pipes, you would be amazed at how the website is created.

Coding is not easy, but Yahoo! Pipes has made it seems easy, by using a drag-and-drop graphical interface, piping components to components, feeding inputs and getting outputs. It is one of the most awesome tool I have seen.

To create such service, you can take a look at WireIt, a javascript wiring library.

WireIt is an open-source javascript library to create web wirable interfaces for dataflow applications, visual programming languages, graphical modeling, or graph editors. With the library, you can create apps such as Interactive Voice Responses (IVR) phone menu.

Monday, September 5, 2011

Global AWS Start-Up Challenge 2011


Amazon Web Services (AWS) is organizing a startup challenge.

The entry period is from August 1, 2011 and ends on October 2, 2011.

If you have any idea that uses Amazon cloud product, you are in for the grand prize of $50,000 cash, and another $50,000 AWS credits.

Sunday, September 4, 2011

Google Data API - New Objective-C Library



In this release, they have added new services – Tasks, Books, Latitude and URL shortener.

If you are building iPhone/iPad apps, or Mac apps, you ought to check out this library.


Friday, September 2, 2011

InfoChimps + Geo Data

InfoChimps is a great API provider, with lots of data.

They have recently announced a huge API release with Geo Data

They is a pretty exciting release. Now, with an API request, you can get Wiki articles, Foursquare places, weather, etc, of a particular place!

Profanity Word Check API


Yes, there is even an API for that.

Instead of checking up a word in the dictionary, and asking experts in English vocabulary if the word is a profanity, you can check up with a simple API.


This service is provided by WDYL (What Do You Love), which is basically a search among Google. Not surprisingly, the profanity dictionary is determined by Google.

Google App Engine: Increased Pricing


Google App Engine has announced going out of preview (when were they considered a preview anyway?). 

In doing so, they have introduced a new pricing – in other words, increased pricing.

Some developers felt they are forced to leave the service, because for them, the cost would have increased threefold, or 30 folds which killed service like PlusFeed. If you are one of the "victim", you might want to share your experience in this discussion.

Personally, I use App Engine for various small web apps and websites. Fortunately, I am not affected, because my apps have small usage.. If this change affected me, say if I need to pay $9/mth, I will feel cheated by Google. This is because App Engine has been widely regarded as a cloud platform offered by Google, for free. 

Thursday, September 1, 2011

Interactive Doc Framework by Mashery

We covered a cool interactive doc by Wordnik not long ago.

The trend seems to be building awesome documentation, which not only contains necessary information, but also pleasing to test with. Welcome to the world of interactive documentation!

Wordnik ain't the only one. Posterous has a good one too. And Mashery makes life easier for API provider, creating a framework – IO Docs.

The awesome news is here: IO Docs is open sourced.

Therefore, go ahead and create your interactive doc. You can refer to more Mashery's demo, or also showcase such as SimpleGeo and YellowApi.


Wednesday, August 31, 2011

How much does it cost to advertise on ProgrammableWeb?

When it comes to the king of APIs website, it is not killerapi.blogspot.com, it is ProgrammableWeb.

ProgrammableWeb has a comprehensive directory of APIs, and mashups created. It also regularly blogs on API news. It draws in huge traffic from developers, the number one website where developers go to. That makes it the undisputed king.

Because of how good they are, they naturally becomes the number one choice for advertising API products.

I thought it is good to share information about advertising on ProgrammableWeb:

  • 550,000 pageviews per month
  • 170,000 unique visitors per month
  • For a tiny 125x125 ad on the right side, it costs $2,500 per mth, that is $4.50 CPM. There are other banners, of course, at higher price
  • 40% of traffic comes from US
That makes ProgrammableWeb a pretty good place for advertising your APIs.

Ah.. lastly, I hope this website will one day be the king of APIs :)

Tuesday, August 30, 2011

The Trend is JSON as Response Format

Many API providers are adopting JSON as the standard, and only, format in API.

Take twitter trends API for example, which they have announced they will switch the API to JSON only.

The reason quoted is that the usage for XML format is significantly low. So if you are designing an API today, you can consider support just JSON. That's the trend.

Sunday, August 28, 2011

Free Conference API from Speek


Speek provides a simple API for doing free conferencing, that is speaking to multiple people on a line.

It is interesting that they are adopting a free model, with brief audio advertisements inserted into the call. 

A promising API provider in the voice communication space. Watch out for the monkeys!


Friday, August 26, 2011

Google Translate is Now a Paid API

Google has announced a paid version.

The language translation service costs $20 per million characters of text (or approximately $0.05/page, assuming 500 words/page). To use, look at their v2 doc.

While Google is coming up with paid APIs, developers are digging out secret, free APIs, like the speech recognition API in Chrome.

Thursday, August 25, 2011

Lessons from Stack Exchange

Kevin Montrose has posted on the history of Stack Exchange API and a subsequent post on the mistakes.

One cool thing about their API design is that they have mandated using Gzip in their response. The reason is that they felt compression/decompression using CPU resources is cheaper than bandwidth. 

Refer to their gzip usage.


Wednesday, August 24, 2011

Vectorized Requests in API

Vectorized requests is an API technique that is becoming more popular these days. It is a way of requesting a multiple resources in a single http request

For example, you can request multiple users with the following:
http://myapi.com/users/1001;1002;1003/
These technique is seen in twitter API and StackExchange API.

It is an efficient technique if your API usually results in developers calling the same resource multiple times. Why make 100 request for 100 users, when you can make just 1 request?

Monday, August 22, 2011

Developer Contest

Box Mobile Dev Challenge
Box.net provides API for sharing files on their platform. A mobile dev challenge is now open, with 1st prize $25,000 cash! You have up till Sept 9 to submit an app.


twilio & Box
twilio regularly organize developer contest. For this week, they have partnered with Box to organize one. By using twilio API and Box API, you are eligible for twilio contest. There will be 3 winners, and the first will get an 11" macbook air!


Kik Awards
Kik provides SDK for Android and iOS to share content via Kik messenger. They are giving out 3 cash award of $5,000 each for apps submitted by Sep 5th.

Monday, August 15, 2011

Wait, What Does Your Startup Do?

It is always easy to explain what your startup do in terms of "X for Y", where is X is a well known business. For example:



This idea generation service is provided by itsthisforthat.

They even cheekily created an API for that.

Friday, August 12, 2011

Interactive API Doc from Wordnik

Wordnik have created a one of a kind API Doc. It is not only descriptive, but also at the same time interactive (API Explorer).

Take a look at its interactivity.

They have also provided Swagger, a framework that style your API Doc like Wordnik's.


Tuesday, August 9, 2011

9 API Lessons from Foursquare Engineering Team

Foursquare is going to sunset their v1. With their new v2, they have blogged about their experience in designing API – Woulda, coulda, shoulda.

They are very valuable lessons for anyone designing API.

I sum up the 9 lessons:

  1. OAuth and HTTPS-only: OAuth is easy to implement on both server and client. Offloading encryption to HTTPS is a no brainer.
  2. REST lite: Resource-ful for key objects, with associated actions. Avoid deeply nested URLs. Avoid having multiple ways to do the same thing. Use only POST and GET. Avoid PUT and DELETE.
  3. Generic structures and indirection: Wordier and more explicit JSON, but less likely to break with future changes.
  4. Documentation: API explorer is good. It is worth hacking up a simple documentation generation system for the endpoints.
  5. Timestamps as seconds since epoch: Not human-readable, but so easy to parse, and nobody has complained.
  6. Versioning: Sometimes, you need to take back some decisions, sunsetting certain a old version, and out with a new version. It is needed.
  7. Category representation: Should have
  8. Object consistency and level of detail: Having a "compact" and "full" representation
  9. Envelope: Wrap responses in a meta block 

Monday, August 8, 2011

Phoneify API: Verify Phone Number With SMS or Call

Phonesify provides a plugin for website to verify a user's phone number. This can done either via sending an SMS with a verification code, or making a voice call and reading out the code.

Verifying phone number, especially on mobile apps, is getting more popular. WhatsApp, Viber, Blogger, Facebook.. to name a few. Verifying phone number is also more popular because email verification is not very strong to be used as an identity anymore. However, a trade off is that phone number verification is more costly.

The price of using Phoneify doesn't come cheap. Right now, they have not provide their pricing model, but they claimed to give 50 free verifications, which upon sign up will show a $20 credits. Hence, I estimate it to be 40 cents per verification. If it is 40 cents, it is a very costly verification, considering that SMS is as cheap as 1 cent.


Sunday, August 7, 2011

FullContact API: Know more about a contact

FullContact is 1 simple API that query with a person email, and returns with more information – name, phone number, organizations, social network profiles, etc..

If your application requires retrieving more info from an email, there is a chance this API will help.

They claim to have over 1 million contacts in their database. Impressive, but still not quite a lot, considering there are 6 billion people in the world. 

It cost 3 cents per contact.

fullcontact

Saturday, August 6, 2011

Google Acquired Dealmap, with API for Local Coupons

With the recent acquisition of The Dealmap, Google now adds to its arsenal another great API.

The Dealmap API let developers add and search local deals.

Google might not have a successful Groupon product, but acquiring such an API now could help path it's way to that market.

Friday, August 5, 2011

What is an API Developer Advocate?

In my first introduction post, I introduced myself as a Developer Advocate.

So what is an API developer advocate?

He is a mix of a few personalities:

  • Developer – He has to know how to write codes. He might not be the best coder, but he needs to know the basic. After all, he talks to developers. Speaking a common language is a big plus.
  • Hacker – He must have a love for hacking. Given knowledge of an API, he should know what fun apps he can "hack up". There must be elements of both love and fun during hacking.
  • Business Development – He needs to understand how APIs can evolve businesses for others. He needs to be able to step into their shoes, and think how an API can benefit others.
  • Sales and Marketing – He also needs to help convert leads to sales. Attending developer conference/workshop and drinking beer are common activities.
A good example of developer advocates comes from Google. They have a big team to advocate on their products.

Thursday, August 4, 2011

What is Killer API?

Killer APIs are awesome, cool, powerful, new, or innovative APIs that all developers should know.

Everyday, I come across all sorts of APIs. Some are pretty cool, some are pretty handy, some can earn you big bucks by writing a couple lines of codes.. I wanted to share these APIs.

In my day job, I am a Developer Advocate, and I know the API business pretty well. I know how APIs are designed, I know the business model that drives API providers, and I see how API benefits developers.

This is a blog I have setup to talk just about API.

Specifically killer API.