Facebook’s Powerful New Open Graph API
Facebook recently unveiled the beta version of their next generation Open Graph API at the f8 conference in San Francisco. Originally debuted in 2010, the Open Graph Protocol was an attempt to organize large swaths of the internet via meta tags, enabling Facebook to better contextualize the content that people share and connect with (http://ogp.me).
While a very interesting concept, OGP didn’t necessarily take hold the way that Facebook would have liked. However, with this most recent iteration of the platform and API, Open Graph could be positioned to gain explosive adoption and usher in a new generation of Facebook Apps. At its core, this change enables developers to easily design and implement rich, social interactions with an unlimited set of objects, bounded only by the imagination.
The documentation and tutorial (http://developers.facebook.com/docs/beta/opengraph/tutorial/) rely on a sample application called Recipe Box, which allows a user access to a database of cooking recipes. The highlights are as follows:
- An application can define new object types (in this case called Recipe) as first order entities in the Facebook social graph
- Actions are defined to interact with the new graph object; in this case the primary action is Cook.
- The app can create new instances of a Recipe by simply publishing a HTML page with the appropriate Open Graph Protocol meta tags; these tags indicate things like the type of object, title, image, as well as any custom properties defined by the app.
- The platform provides a simple API to publish interactions with an object instance. For example, to indicate the current user Cooked a specific Recipe: graph.facebook.com/me/recipebox:cook?recipe=SPECIFIC_RECIPE_URL
- Successfully published actions will show up in the user’s news feed, as well as the new Timeline section (if the user so chooses).
- The application can leverage built-in summary reports of interactions to display in the Timeline, such as most recent, most frequent, total count, etc.
- Friends can view these interactions and summaries, and click-through to any new OGP object such as Recipe, where they can interact with the object as desired (usually by adding the relevant App to their Timeline first)
It is easy to imagine the countless applications that can (and soon will) be developed to take advantage of this API. Certainly, existing Facebook applications can already offer robust, engaging functionality to users, but this change provides the ability to expose a deeper view of App interactions and activities to their friends. This will almost certainly lead to greater viral adoption of successful apps, which is the dream of any developer. It should also entice even more people to enter the FB app arena, which is the one of the goals of Facebook.
Another goal, that I am sure the company will highlight to the user community, is to create a richer, more engaging, ultimately more interesting Facebook. However, I think the real pay dirt for Facebook will come as developers launch more and more Open Graph applications, because the amount of interactive, OGP enabled content on the web will expand and grow exponentially. Since the platform requires publicly accessible pages, they will be fully exposed to search engines and draw more people into the Facebook platform (for greater periods of time), thus increasing its already impressive reach.
For more information, see: http://developers.facebook.com/docs/beta/