0
votes

I'm new to Facebook's Query Language and am currently having an issue getting data to return from my queries. I'm using an application token to query Facebook about a user who has given permissions to the application. What follows are the permissions requested, the JavaScript implementation, and the returned output (sanitized to cover personal info):

Permissions:

user_about_me, user_activities, user_birthday, user_education_history, user_friends, user_hometown, user_interests, user_likes, user_location, user_photos, user_religion_politics, user_work_history, email, read_friendlists

JavaScript:

FB.api(
{
    access_token : accessToken,
    method: 'fql.query',
    query: 'SELECT uid, name, email, pic, about_me, activities, books, education, hometown_location, interests, movies, music, political, profile_blurb, religion, tv, work' + 
        ' FROM user' +  
        ' WHERE uid IN (' + tokens + ')'
    },
    function(response) {
        alert(JSON.stringify(response));
    }
);

Output:

[{
    "uid": ID,
    "name": NAME,
    "email": EMAIL,
    "pic": PIC,
    "about_me": null,
    "activities": "",
    "books": "",
    "education": [],
    "hometown_location": null,
    "interests": "",
    "movies": "",
    "music": "Disturbed, System of a Down, The Bouncing Souls",
    "political": null,
    "profile_blurb": null,
    "religion": null,
    "tv": "",
    "work": []
}]

This data set is returned when I run the query from my site or via the Graph API Explorer using the application token. However, when I use the Graph API Explorer with an access token, I receive more information back (education,hometown, religion, politcal, work, etc).

My question is am I doing something wrong or cannot I not access certain data with an application token? The documentation (https://developers.facebook.com/docs/opengraph/using-actions/#appaccesstoken - Other Capabilities of an App Access Token) led me to believe I could access this data without issue seeing as how the application was granted permission. Any help would be greatly appreciated.

1

1 Answers

1
votes

It explicitly says there:

 “While an App Access Token is largely for the purposes of publishing information back to Facebook on behalf of the user, there is a limited set of information that can be retrieved from Facebook using an App Access Token.”

  • Basic Profile Info of a User (ID, Name, Username, Gender)
  • A User’s Friends and their IDs
  • Permissions granted by the User to your App

So it clearly says that you can not access everything that you can access with a user access token with an app access token instead.