On May 24, Facebook officially released its
Developer API. It’s probably one of the first (and definitely one of the biggest communities) to open a social network up to the development community. It’s also a sharp contrast to MySpace’s tactics in blocking widgets (See:
MySpace security measure disables viral spread of widgets).At first, I thought it was just a proprietary widget API. In fact, the most used feature will probably be it’s hook for placing an object on a user’s profile page. But on closer inspection, you’ll see that the API is powerful. You can host ‘canvas’ pages on Facebook using its navigati

on and your object pulled from your server in a frame. There are interface points for some transactions like adding and dropping your Facebook application. You can use their markup language, FBML, for publishing dynamic content or query their data objects using FQL, a query language similar to SQL. There are development kits for just about every web development platform.
TripConnect launched its first application this week. Facebook users can
add the TripConnect application, register or login with TripConnect and then build a simple travel profile of places they’ve been, places they want to go, and travel interests. An object on the user’s Facebook page highlights their travel profile and a link in the left hand rail shows a page with travel updates. Users can enhance their profile by
rating places or by
adding reviews. Enhancements are in the works…
It took us just a few days of development time to roll out this application, but we had to wrestle with the API. The API can be powerful, but it looks like it was rushed out the door. There are significant details with authentication, session management, and cache’ing that are not described well in the developer documentation. There are some optional application parameters that have no documentation and several fbml tags are also lacking docs. The JAVA API which we used is fairly complete, but has several quirks you need to work around. Much of this is discussed inside Facebook’s Developer forum.
I will post details in an upcoming post, but for now, my advice to those tinkering with this API is to proceed slowly. Prototype out the functionality in small pieces. Document your use cases and test frequently. This is good general advice but since this API is still a 1.0, you have to work around the gaps in functionality and documentation.
Leave a Reply