OpenSocial is a set of three common APIs, defined by Google with input from
partners, that allow developers to access core functions and information at
- Profile Information (user data)
- Friends Information (social graph)
- Activities (things that happen, News Feed type stuff)
Hosts agree to accept the API calls and return appropriate data. Google
won’t try to provide universal API coverage for special use cases, instead
focusing on the most common uses. Specialized functions/data can be accessed
from the hosts directly via their own APIs.
Unlike Facebook, OpenSocial does not have its own markup language (Facebook
requires use of FBML for security reasons, but it also makes code unusable
can embed Flash elements). The benefit of the Google approach is that developers
can use much of their existing front end code and simply tailor it slightly for
OpenSocial, so creating applications is even easier than on Facebook.
Applications can have full functionality on profile and/or canvas pages,
subject to the specific rules of each host. Facebook, by contrast, limits most
functionality to the canvas page, allowing a widget on the profile page with
OpenSocial is silent when it comes to specific rules and policies of the
hosts, like whether or not advertising is accepted or whether any developer can
get in without applying first (the Facebook approach). Hosts set and enforce
their own policies. The APIs are created with maximum flexibility.