As I was having the same issue and couldn't find help anywhere, I thought I'd necro this with an explanation on how to solve the problem, as requested by @DustyRoberts.
If you get an empty object when requesting me/groups
or {user-id}/groups
it's because you're lacking the user_managed_groups
permission (was user_groups
prior to Graph API version 2.3).
You can do this by adding the scope
parameter when logging in the user. It's a comma seperated list of permissions. You can see a full list of permissions here (v2.4).
public static Uri GetLoginUrl(bool rerequestPermissions)
{
var client = new FacebookClient();
dynamic para = new ExpandoObject();
para.client_id = Settings.AppId;
para.redirect_uri = Settings.LoginRedirUrl;
para.response_type = Settings.ResponseType;
para.scope = Settings.Scope; // Includes user_managed_groups
// true if you've detected that one or more permissions have been denied
// or revoked. It'll promt the user to grant the permissions again as when they
// first used your app.
if (rerequestPermissions)
para.auth_type = "rerequest";
return client.GetLoginUrl(para);
}
More on checking for permissions here (v2.4)
I hope this helps someone cause it's exactly the information I needed to make it work.