Late last year, Facebook announced its move to an API versioning model. Facebook has now adopted a versioning and migration strategy for its Marketing API. The approach allows app builders to roll out changes over time. Breaking changes are rolled into a newer version, which allows multiple versions of an API to exist at the same time with different functionality in each version. Under the versioning scheme, developers can better manage when to migrate to a newer version.
Facebook will stick to a 90-day deprecation period. However, during the 90-day period, both a new version of the Marketing API and the last version of the Marketing API will be available. For instance, the current version of the Marketing API is version 2.2, which was originally available on Oct. 14. From Oct. 14 to March 11, both v2.1 and v2.2 are available. However, come March 11, calls made to v2.1 will fail.
Developers utilizing SDKs should also be aware of API versioning schedules. Although SDKs are downloadable packages and will remain available for download, many rely on Facebook APIs. Thus, if an outdated SDK utilizes an end-of-life API, the method will no longer work.
An additional change surrounding versioning and the transition to v2.2 relates to unversioned calls. Prior to v2.2, unversioned calls defaulted to the latest version. However, after March 11, unversioned calls will fail. Facebook's position on unversioned calls furthers its commitment to simple migration from version to version, and developers should get in the habit of versioning integration with Facebook APIs.