In my canvas app, I make a call to https://graph.facebook.com/<fbid> and the return value is, as expected, in the following format:
{
"id": "123456789",
"name": "John Doe",
"first_name": "John",
"last_name": "Doe",
"link": "https://www.facebook.com/johndoe",
"username": "johndoe",
"gender": "male",
"timezone": 1,
"locale": "en_US",
"verified": true,
"updated_time": "2012-03-02T12:13:41+0000",
"type": "user"
}
The problem is, for some users the link field is missing. I’ve looked around the developer docs but couldn’t find any reason why it would be missing. Any help is appreciated.
Edit: Well, I’ve spent the last 2 hours looking through the docs and googling. Nothing, nobody seems to be having this problem. Any ideas what I might be doing wrong here?
This depends on user privacy settings.
This is what I experienced.
For my account once I tried ‘https://graph.facebook.com/’ in the response ‘link’ field was there.
Then I changed following setting in my account privacy settings
changed from ‘everyone’ to ‘friends of friends’
Then I tried ‘https://graph.facebook.com/’ and ‘link’ field was not in the response.
Then again I changed mentioned privacy setting to ‘everyone’.
But even after that I’m still not receiving ‘link’ field in the response.
Best way to overcome this issue is ask the user to give access for your application with appropriate privileges.