Depuis le 30 avril 2015, Facebook a mis à jour son API en version 2.0. Cela implique des changements majeurs et nécessite une mise à jour des applications l’utilisant. En effet, avec plus d’un milliard d’utilisateurs, la plupart des applications actuelles proposent une connexion via cette plate-forme afin d’améliorer l’expérience utilisateur et de constituer rapidement une base de données des informations personnelles de ses utilisateurs.
Si vous n’avez pas encore réalisées les modifications nécessaires sur vos applications et que vous n’avez à ce jour rencontré aucun problème, deux solutions:
Voici les changements majeurs que nous allons aborder dans cet article :
Pour plus d’information veuillez retrouver la documentation complète ici.
Cette mise à jour donne aux utilisateurs plus de contrôle sur leurs données personnelles qu’ils acceptent de partager avec les applications utilisées.
Un système de permissions permettant de sélectionner en détails les informations autorisées pour l’application a été mis en place. Lorsque l’utilisateur décide d’autoriser l’application il peut choisir les informations qu’il autorise ou non.
La permission par défaut est dorénavant appelée public_profile
et ne donne plus accès aux mêmes informations que l’ancien attribut basic_info
. Retrouvez la liste des informations collectées par défaut ici.
Si votre application demande l’utilisation d’autres informations que public_profile
, email
et user_friends
Facebook devra valider votre application avant de pouvoir l’utiliser en mode public (sans l’autorisation seuls les emails renseignés en tant que propriétaire ou développeurs pourront l’utiliser). Cette validation se réalise sous un délai de 7 à 14 jours. Plus d’informations ici.
Comme vous avez pu le constater, l’adresse email de l’utilisateur n’est plus dans les informations par défaut. Comme pour Twitter, la connexion à votre application pourra donc se faire sans obtenir l’adresse email de l’utilisateur. Ceci peut être à l’origine du premier problème que vous avez ou allez rencontrer sur la création d’un utilisateur au sein de votre application (validation de l’adresse email à la création d’un utilisateur).
Une chose importante à penser pour vos développements: l’utilisateur peut à tout moment modifier les informations qu’il permet à votre application d’exploiter (attention aux validations).
Dans la version 1 de l’API Facebook, chaque utilisateur avait un certain nombre d’ID pré-définis qui pouvaient être utilisés sur différentes applications de manière aléatoire. Dans la version 2, toutes les données fournies par l’utilisateur utilisent un identifiant spécifique et unique à l’application. Vous ne pouvez donc plus partager d’ID entre application. Facebook fournit une API pour la cartographie entre les applications qui font parties d’une seule organisation ou d’un propriétaire.
Ce qui est très bien pour les utilisateurs mais beaucoup moins intéressant pour les développeurs. En effet, les identifiants des utilisateurs reconnus par les applications Facebook utilisées en développement ne seront pas reconnus en production et vice-versa. A l’heure actuelle il n’y a pas de moyen de contourner cela.
Pour vous rassurer, les utilisateurs ayant autorisée votre application en version 1 ne vont heureusement pas changer d’ID !
Cette partie de l’API Facebook fut beaucoup utilisée dans sa version 1 car elle permettait d’obtenir la liste des amis de votre utilisateur, soit autant de personnes susceptibles d’être intéressées par votre application (e-commerce ou pas d’ailleurs). Facebook a décidé de prendre partie en faveur de la protection des données de ses utilisateurs et permet dorénavant d’obtenir la liste des amis Facebook de votre utilisateur qui se sont déjà connectés à votre application.
Comme nous avons pu le voir ci-dessus les endpoints suivants ont changés :
/me/friends
/me/friendlists
/me/permissions
Certains endpoints ont été ajoutés :
/me/taggable_friends
qui vous permet de taguer plus facilement un ami dans un post (nécessite une validation de votre application par Facebook)/me/invitable_friends
renvoie une liste de personne que vous pouvez demander en ami (attention les ID renvoyés sont des jetons temporaires et ne correspondent pas aux IDs spécifiques à votre application)/me/tagged_places
renvoie un tableau des lieux ou vous avez été identifiés (par un post, photo etc …)Et d’autres ont été supprimés :
/me/username
/me/locations
/me/checkins
/me/questions
/me/subscribers
/me/subscribedto
/me/notes
/{page-id}/note
/{page-id}/question
Parmi les autres changements, nous pouvons parler du changement de design concernant les plugins Facebook les plus utilisés, à savoir :
le plugin Live Box
devient le plugin Page Plugin
le plugin Comments
qui s’est vu ajouté une fonctionnalité plutôt sympa, la fonctionnalité mirroir. Les commentaires émis depuis Facebook apparaissent sur votre site et vice-versa.
En conclusion Facebook a fait un très bon travail pour protéger les informations de ses utilisateurs. Il a également très bien documenté toutes les nouvelles fonctionnalités, les autorisations mais également les méthodes de migration. Si vous êtes utilisateur de l’API Facebook pour vos développements, autant prendre toute de suite l’habitude de mettre à jour vos applications et de se familiariser avec la documentation Facebook car cette version ne durera certainement pas plus d’un an.
L’équipe Synbioz.
Libres d’être ensemble.