I am in development mode of an Android app. I have successfully been able to generate an access token which is scoped to user_photos and user_videos. The https: endpoint I used to start the authentication process is in this form:
public static final String FACEBOOK_CODEREQUEST_URI = FACEBOOK_AUTH_ENDPOINT +
"?client_id=" + FACEBOOK_APP_ID +
"&redirect_uri=" + FB_BASE_REDIRECT_URI +
"&scope=user_photos,user_videos" +
"&response_type=code"+
"&state=%1$s";
I have been able to successfully get a code, which I then successfully exchange for a user access token.
Using this token with an https GET request for user photos in the form:
https://graph.facebook.com/<user id>?fields=photos.limit(5){id,created_time,images}
works perfectly. However the same approach for videos:
https://graph.facebook.com/<user id>?fields=videos.limit(5){id,created_time,source,picture}
causes the #100 error. Why? I am not requesting page access in my endpoint (unless somehow this is inferred by asking for videos?). The information on the permissions page states that The user_videos permission allows your app to read a list of videos uploaded by a person. This is exactly what I want to do.
Nevertheless after googling this error I saw some people got it because videos can be related to page posts (see this post), so I also updated the code request above to include "user_posts" in its scope, and I get the same error when using the subsequently generated access token. Is there some other scope I need to include?