Home » July 5 Breaking Changes on Facebook

July 5 Breaking Changes on Facebook

Have you noticed in the advanced section of your Facebook apps that there is a couple of radio buttons under “migrations” for ‘Breaking Changes’? Below is the information that you should be aware of with regard to July. The August 2012 are not so critical if you enact the July changes. You best do that now – time is a wastin’.

And yes folks we did talk about this in April.

July 5, 2012

The following changes will go into effect on July 5, 2012:

Removing FB.Canvas.setAutoResizeOriginally scheduled for January 1, 2011
We have renamed FB.Canvas.setAutoResize to FB.Canvas.setAutoGrow so that the method more accurately represents its function. FB.Canvas.setAutoResize will stop working on July 5th. We will completely delete the function on August 1st.

Event GETs from Graph API/FQL Will Require an Access Token
All calls to get events from the Graph API or FQL will now require an access token to be used.

Removal of FBML
FBML apps will no longer work on Platform. All FBML endpoints will be removed and the “FBML Removal” migration added June 6th will be removed.

The following changes can all be enabled/disabled using their specified migrations until July 5th when they will go into effect permanently for everyone:

Updating Page Hours Property
The hours property of Pages will return times in the format HH:MM (e.g. “14:23″) rather than the old format (a Unix time). This change can be enabled/disabled using the “Page Hours Format” migration until July 5th when it will go into effect permanently for everyone.

Batch API Exception Format
Errors from the Batch API will return errors in a new format. Previously, errors would take the format:

{"error_code": "", "error_description": ""}

With this change, they will now be formatted in-line like the rest of the Graph API:

{"error": {"message": "", "type": ""}}

This change can be enabled/disabled using the “Graph Batch API Exceptions Format” migration until July 5th when it will go into effect permanently for everyone.

Removing Timezone From Event Times
We have had a migration titled “Timezone-less Events” out for a while now which removes timezones from event start and end times. This migration was originally created because in the past, events have been intended to be created with start and end times that are specific to the location of the event so including a timezone in the API simply led to confusion. Until now, this migration never had a date set for when it would go into full effect. That date is now July 5th. This change can be enabled/disabled using the “Timezone-less Events” migration.

Since this migration was originally created, we have added a timezone field to events which indicates the name of the timezone (as defined here) where the event is expected to happen. FYI, developers reading time in ISO 8601 should be supporting the full standard when reading event times. Most events return local times (no GMT offset), but in the future events likely will return other formats (namely date-only and precise).

offline_access Permission Removal
The offline_access permission is deprecated and will be removed July 5, 2012. Until then, you can turn this change on or off using the “Remove offline_access permission” migration. On May 2, 2012, we will automatically turn the migration to “enabled” for all apps. If this breaks your app, you can turn the migration back to “disabled” until July 5, 2012 when it will be permanently “enabled” for all apps. Please see the Removal of offline_access Permission doc for more details.

The following changes can all be enabled/disabled using the “July 2012 Breaking Changes” migration until July 5th when they will go into effect permanently for everyone:

Removing display=wap Dialogs
The wap dialog display mode will be removed.

Removing Some Event FQL Object Fields
We will be removing the following legacy fields from the event FQL object.

  • show_in_search
  • show_wall
  • show_photos
  • show_videos
  • show_posts
  • nid
  • tagline
  • event_type
  • event_subtype

Coordinate-less Tags
Tags previously could only exist on photos and always included x,y coordinates. On Facebook it is now possible to tag people in photos and statuses with no coordinates (example). These people show up as being “with” the actor. The potential breaking change is that it will be possible for the tags parameter of any photo object to return objects with no x or y parameters.

Removing Bookmark.Add and Profile.AddTab Dialogs
We will be removing the bookmark.add and profile.addtab dialogs from the Javascript SDK. These dialogs already don’t do anything as the concepts of manually adding bookmarks and profile tabs have already been removed.

Moving Type Property Into Metadata Array
When querying the Graph API with a metadata=1 parameter, we append a metadata array and a type property to the response. We will be moving the type property into the metadata array.

[Breaking Change Policy – Facebook Developers]