How to guarantee the continued functionality of my website with external APIs e.g Facebook Graph [closed]

StackOverflow https://stackoverflow.com/questions/14296566

Question

With web APIs like Facebook constantly being updated and changed, any given change may take me a while to implement in terms of working out what has changed, and then updating it/correcting it.

If during this time a user cannot logon for example, they are not going to put their trust in my website.

So, how do you manage your dependencies on other services to ensure that if it works now it will work forever?

Was it helpful?

Solution

Well, frankly what you are asking for is that Facebook freeze their entire API and Graph implementation. This simply will not happen. In an ever changing technological world things are going to change. We as developers for a 3rd party platform are responsible for keeping up to date with any changes that 3rd party platform makes.

If you want to keep track of all the changes that Facebook are making to their API's then you should take a look at the Developers Roadmap. They list here all the changes that are being planned.

For serious changes, those what would essentially "break" the current functionality, Facebook guarantees at least a 90 day notification, before the changes are made.

Taken from the Facebook developers roadmap -

In the spirit of openness and transparency and to adhere to our Breaking Change Policy, we publish this roadmap to help developers plan for changes that may require code modifications. Like all roadmaps, it may shift slightly, but we will share insight into what is happening as details become available. We encourage developers to subscribe to our blog, where we announce rollout plans and timing.


Given all of this information, there are still things you can do to make sure your users always have access to your site. One thing would be to provide an alternative login method. It's really useful to be able to hitch a ride on Facebook authentication and seamlessly integrate your site's login with theirs, but what happens if one day Facebook (for some reason) goes down? That would mean that your users would be locked out of your site too! Consider offering an alternative if it is applicable to your situation.

OTHER TIPS

Communication is key.

Most respectable web API providers (like Facebook Graph) have a developers blog, as well as mailing lists that provide feedback regarding upcoming changes to the API. Chances are, they don't want to break your app as much as you don't want it to break. So read the blogs, and/or subscribe to the mailing lists. And take note about upcoming "breaking changes" (as they're called.)

Additionally, it is up to heed their warnings and suggestions. If they say that a particular API call is deprecated, then there is a good chance that it won't be there after the next update. If a call you're making is deprecated, then make early strides to find an alternative method.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top