Facebook has announced a set of API calls to read from and update the user’s “stream” (what we knew as “the newsfeed” before the last homepage redesign).
The new API calls are some of the most powerful that Facebook has released and come close to allowing replication of much of the core Facebook experience from within applications or, most interestingly, Connect-enabled websites. The calls allow an application to query everything that’s visible in the user’s news feed (subject to being giving permission) and, unlike most API calls, the data that’s retrieved isn’t just limited to the calling application; links, videos, status updates, newsfeed stories from other applications and more are all available. Along with the raw content there’s also “likes” and comments from the user’s friends.
This functionality could be used to recreate the Facebook homepage on an external site and is likely to lead to mash-ups with Twitter and other sites streaming user-generated updates. Unfortunately for developers, as the permission is strictly opt-in then user take-up may be slow. However, as long as the tools which use the new calls are adding value we may see this type of permission-granting being more widely adopted.
The new openness doesn’t go quite as far as some hoped – it’s not possible to do Twitter-style hashtag searches across all users, for example – but it is a big step forward in terms of opening up Facebook. And the new functionality isn’t just limited to reading from the stream: there are also new API calls for posting updates and adding “likes” and comments to existing stream items. Updating is currently limited to developers of applications only while the tool is in beta (and presumably also while it’s trialled with a few higher-profile partners).
Connect was the first big step in really seeing Facebook operating as a platform – the application platform was always dangerously close to being a walled garden – and this could be another big one. With the roll-out of OpenID on the horizon it’s a sign of Facebook’s confidence in their position, and confidence in the loyalty of their user base, that they’re able to offer tools to external sites without fear of losing market share.
There are more technical details on a couple of Inside Facebook posts I’ve put together (linked below) or on the Facebook Developer Wiki.