Developer news
Platform Updates: Operation Developer Love

f8 Videos Available

We had an awesome f8 conference in San Francisco last week. Thanks for everyone who attended or participated via one of the many viewing parties. Videos of all of the f8 sessions are now available online at https://f8.facebook.com/.

Scraping OG Objects

We’re already hard at work improving the Open Graph since last week’s announcement. This week, to make updating Open Graph objects easier, we’ve released the ability to scrape objects at the same time as you publish actions. Just add scrape=true to the POST parameters when publishing the action:

https://graph.facebook.com/me/recipebox:cook?
  scrape=true&
  method=POST&
  recipe=http://www.example.com/pumpkinpie.html&
  access_token=YOUR_ACCESS_TOKEN

Note that you only need to scrape an object if the meta tags have changed. If we ever encounter an URL that we've never scraped, we will scrape it regardless of the absence (or presence) of the scrape parameter. We also automatically scrape objects approximately every seven days, though we will respect Expires: headers. See the Open Graph documentation on Creating and Using Actions for the full details.

Reminder: Breaking Changes coming on Oct 1st

The following breaking changes are slated to go into effect on the 1st of October:

  1. OAuth 2.0 Migration

    All apps must migrate to OAuth 2.0 for authentication. The old SDKs, including the old JavaScript SDK (FeatureLoader.js) and old iOS SDK (facebook-iphone-sdk) will no longer work.

  2. Apps on Facebook authentication and security migration

    All Canvas and Page tab apps must convert to process signed_request (fb_sig will be removed) and obtain an SSL certificate for use in Secure Canvas URL and Secure Page Tab URL (unless you are in Sandbox mode).

  3. Auth 1.0 deprecation

    Auth.promotesession, auth.createtoken, auth.expiresession, auth.getsession will be removed on Oct 1st. Details on support for OAuth 2.0.

  4. manage_pages permission required to access user accounts (/me/accounts)

    We are modifying access to the FQL page_admin table and the graph.facebook.com/me/accounts endpoint. Previously, with basic permissions granted, an app could go to this endpoint or the FQL table to access the list of a users’ apps and Pages. We are going to require that apps have the manage_pages permission in order to obtain access to this information.

We will post an update on the rollout plan on Monday, Oct 3rd (the changes themselves will proceed as planned).

Canvas Ticker Flyouts

Last week, we launched flyouts for the Canvas ticker. These flyouts appear when a user hovers over or clicks on a ticker story. They provide richer information to users about what's going on with their friends, and often allow users to like and comment on the story.




For games, we have also launched “passing stories” in the Canvas ticker. These are stories in which gamers are informed when one friend gets a new high score which exceeds another friend's high score. This is most appropriate for arcade-style games where you get a score each time you play. To have these stories appear for your app, make sure to use the scores method in the Graph API each time your user gets a new high score.




One important side effect of this change, for apps using Adobe Flash, is that it is more important than ever that your app use "opaque" mode for any flash objects occurring within the iframe. If you don't, your game will be hidden when a popup occurs. Please see Special Considerations For Flash Developers for more information.

Support for Multiple Domains in the Developer App

We have heard from developers that only being able to set one App Domain in the Developer App is sometimes not enough. For example, if you are redirecting users for geographic distribution of load, you may want to redirect some users to a URL in the myapp.com domain, while redirecting others to a URL in the myapp.co.jp domain. Now, you can do this in the Developer App. Simply set multiple domains in the App Domain field:




Now, you can specify a redirect_uri in either domain. Each domain specified in the App Domain field must be derived from your App’s URL (Website and/or Mobile Web URL). That is, each domain in this field must share the same 'base' part of the domain name - 'myapp' in the above example.

Resources from “Making Fast Social Apps” talk at f8

After last week’s f8 conference, several people asked for references to the resources mentioned during this talk. Here are the links mentioned in the presentation:

Bugs

A couple of weeks ago, we introduced a new bugs tool. In the past week in the new bugs tools there were:

  • 381 bugs reported
  • 22 bugs accepted
  • 7 bugs fixed

Although no new bugs can be filed in Bugzilla, we will continue working on closing out the remaining open bugs in Bugzilla. The total number of open bugs in Bugzilla is now 1,381 (up 56 from last week, due to re-opened bugs).

Facebook Stack Overflow activity

Activity on facebook.stackoverflow.com this week:

  • 574 questions asked
  • 178 answered, 31% answered rate
  • 316 replied, 55% reply rate