Does this happen to just your user or are you aware of other users which (with your app) got the same results? Also, with the same user, do you get the mail address here? (use the Graph API Explorer and just add the email permission)

No.. don't get the email address in the API explorer either

In the API explorer the email permission is part of extended permissions, but in the app edit page, it's part of the normal permissions. When I add the email extended permission in api explorer, i'm able to fetch the email address

App edit page? What do you mean? How are you asking for the permissions? Are you referring to the Authenticated Referrals?

Yes. In authenticated referrals email is part of User & Friend Permissions list, but in the Graph API Explorer the email is part of extender permissions. I'm able to get the email address in the Graph API Explorer but not through the app even though I've requested permission for email in the Authenticated Referrals page.

Best Answer

I don't know why the Authenticated Referrals approach is not working for you, but here's how you can ask for the email address and get it in 2 other ways (you'll need to deactivate the authenticated referrals though):

(1) Serveri-Side Authentication - When facebook load your canvas page it's doing that by POSTing to your canvas url, providing the *signed_request* parameter. With that you can check if the user is authenticated or not (if he is, you get the access token and other things about the user such as his fb user id). If the user is not authenticated you send him to the following url:

Can you please shift the above comment to the answer so that I can accept it

Done. Though I think that it's ok to accept an answer if the actual thing you need is in the comments.

I ask you to shift it to the answers section for the benefit of others. Not everybody reads the comments. They might be confused why an accepted answer didn't work for them. Might lead to a down vote later on.. :)

Other Answer1

This is how I finally got it working. Couldn't get it working through the Authentication Referrals so had to do this