Got a spare minute? Learn about our me, Cat, and our site in Google's latest video »

Undocumented Facebook API Could Mean Buttons for Everything

Facebook are working on an API to configure Open Graph objects and actions. Two new (undocumented) properties, button_text and button_icons might hint at new social plugins

Facebook code showing button_text configuration

The New API

Note: This is all undocumented. Don’t rely on it until it’s confirmed and documented by Facebook!

With an application access token, you can access a list of all configured open graph actions at /{app_id}/connections, or all open graph objects at /{app_id}/object_types

Here’s an example from a project I’m working on.

{
  "id": "341378772565972", 
  "name": "Add", 
  "type": "lookatmyroom:add", 
  "object_types": [
    341378775899305
  ], 
  "property_config": {
    "room": {
      "type": "reference", 
      "display_name": "Room", 
      "formal_name": "room", 
      "reference_object_type": 341378775899305, 
      "required_group": "primary_objects", 
      "reference_assoc_type": 325449854178103
    }
  }, 
  "allow_multiple_references": false, 
  "singular_present": "is adding", 
  "plural_present": "are adding", 
  "singular_past": "added", 
  "plural_past": "added", 
  "button_text": "Add", 
  "app_preposition": "using", 
  "is_app_secret_required": false
}

The output from this should be pretty familiar to anybody who has already set up their actions and objects on the developer site.

Each action and object has a unique id, which can be used to view, edit and delete - in exactly the same way as the rest of the Graph API.

Button Text & Button Icons

There are two new properties which only appear through the API (and not on the developer site), button_text and button_icons. The schema entries confirm these additions. If they were only for internal use, I doubt they’d be configurable. The wording isn’t a lot to go on, and I haven’t found any evidence (yet) of where these could be used for. But, here’s an idea:

Could Facebook be working on a ‘button’ social plugin?

I’d suggest that Facebook might release a variant of the Like button, but configurable to show any action from your app.

It might make sense:

  • No need to login A button is served from Facebook.com, with built-in clickjacking and security features
  • Consistent user experience No more surprise spam entries on your timeline
  • Consistent display - Facepile, ‘3 other friends also action’d this’ etc.

What do you think?