Oh boy, Facebook sure knows how to deliver a belated Easter egg! Yesterday night, the company announced and immediately deployed a variety of API changes (limitations, really) for both the Instagram and Facebook platform. Some of the changes that have been set into effect tonight were expected only months down the road, others are completely unexpected. Therefore, our development team has been busy all morning, evaluating the scope of these API changes and how they affect Swat.io today and in the coming future. This blog post, which we plan to update regularly in the coming days and weeks, should help our community to keep a clear head in these confusing times.
As always, feel free to reach out to email@example.com if you have any further questions regarding this matter!
Hint: An Application Programming Interface (API) is an official and documented way for 3rd parties like Swat.io to access data from Facebook or Instagram. As such, it also defines what feature set Swat.io can legitimately offer on those platforms.
Facebook API Changes
The Facebook API changes that went live on April 4th are documented here. We’ll list all relevant changes and how they affect Swat.io:
- Events API: According to the announcement, the events API will be mostly deprecated (this includes fetching posts and comments from an event).
Status: Deprecated Our tests have shown that these API endpoints are not working anymore. Therefore, Swat.io lost the ability to include events in our ticket inbox. 😭
- Search API: This API endpoint enables Swat.io users to search for places and pages – a crucial feature when it comes to Tagging Pages and Branded Content. We’re very worried about this deprecation since it would immediately render these features obsolete.
Status: Deprecated After testing, it seems this endpoint is not working anymore. However, for Branded Content and Tagging Pages, we found a temporary solution. These features are working again in Swat.io!
- Pages API: we are not affected by most changes, but will have to adapt some code regarding private message conversations (“API must migrate to a new thread_id”) within 90 days – which is sufficient time for our dev team.
Status: Migration pending
- App Review Requirements: it seems as if all existing Facebook Apps (including Swat.io) will have to go through review again. This will happen within a 90 days timeframe. Since we’re a long-standing member of the Facebook Marketing Partners program, we expect no difficulties on this matter.
Status: Workaround pending
Other announced changes won’t affect Swat.io: Groups API, Pages API (all except thread_id), Games API, App Insights API
Moreover, we’re currently seeing some significant issues which are not directly mentioned in yesterdays announcement, but obviously, are connected:
- Facebook Real-time Updates for Pages were not available for most of April – we’ve reported the bug and contacted the Facebook direct support repeatedly. For Swat.io, this meant that tickets (comments, posts, private messages) would arrive in your inbox with a significant delay. As of April 30th, this is working again!
- Facebook Login for new users resulted in an unexpected error message (“Platform access disabled”). This seems to have been a bug rather than a deprecation, it was fixed May 2nd.
- Profile pictures & -links unavailable: We currently can’t display profile pictures and link Facebook profiles for most of our tickets. According to this announcement, this might be by design. Luckily we’ve found a workaround for profile pictures, but we don’t expect the ability to link profiles to come back.
Instagram API Changes
The Instagram legacy API changes that were announced on April 4th are documented here. Most of these changes have originally been anticipated for July, when switching to the new Graph API becomes mandatory. Interestingly, most endpoints are still working at the time of this writing.
- Follows and relationship: this change will deprecate the ability to fetch the list of accounts followed by an Instagram profile managed on Swat.io. Since auto-complete when mentioning other profiles is based on this info, we’ll most likely lose this feature (you will still be able to mention users by manually entering the complete username).
- Commenting on Public Content: this change will deprecate the ability to comment on posts which are not published on your own Instagram account. In other words, this removes the ability to reply to Instagram posts in monitoring tickets.
- Likes: this change will deprecate the ability to fetch the no. of likes of a photo. We’ve reviewed our code and can confirm that this will not affect the Swat.io calendar and analytics! 😜
- Public Content: For Instagram posts not created by your own account, we’ll not be able to fetch the profile picture and full name of the post’s creator (we’ll still be able to display the @username though).
Status: Evaluating We’re still evaluating whether this will affect monitoring tickets or not.
Other announced changes won’t affect Swat.io: User Search, API Rate Limits
Swat.io Monitoring & Ubermetrics
Many of the mentioned deprecations and limitations are also affecting our partner Ubermetrics, who is our primary source for monitoring tickets. While we’ve seen a complete outage in Instagram search results during the night (hardly a surprise, given the vast scope of unexpected changes), results are coming in again since late morning. As our own development team, Ubermetrics engineers are currently adapting their product to the API changes.
Finally: Don’t Panic!
Yes, this is bad. We’re really sorry our product will be losing some functionality, at least for the foreseeable future. On the bright side: all Swat.io core features remain intact. ☀️
On a personal note: while I applaud Facebook’s efforts in improving user privacy, I’m having a hard time following the argument for some of the measures taken tonight. A little heads-up would have been appreciated, too. However, we’ve been working with the Facebook API for more than 10 years, we sure know its ups and downs. Rest assured that the whole Swat.io team will be working relentlessly to help you navigate these stormy times. ⛵️Again, contact firstname.lastname@example.org if we can help in any way!