23

As stated in the API docs for /user, the link field contains the user's profile URL. However, this URL commonly redirects to a different URL (i.e. the one that shows up in Google results).

Is there any way to determine the final redirect location (the "real" URL) of a given profile via the Facebook API?

For example, given:

"link":"https://www.facebook.com/1091552020"

I want to retrieve https://www.facebook.com/sbhutiani from the API

1
  • 6
    Not possible and it is by design Commented Mar 19, 2015 at 18:54

2 Answers 2

25

You can´t get the real ID or the username of users anymore, so there is no way to get the "real URL". More information: https://developers.facebook.com/docs/apps/changelog

You can get a link to the user profile with the following API call though: /me?fields=link

Check out "App Scoped IDs" in the Facebook docs.

Update: It seems that linking to the user profile is not possible anymore: https://developers.facebook.com/blog/post/2018/04/19/facebook-login-changes-address-abuse/

Sign up to request clarification or add additional context in comments.

8 Comments

thanks. so is there any way to link back to the person's facebook page from your app? ive seen a bit about app scoped IDs but I'm still unsure. thanks
there you go: /me?fields=link - with this api call, you will get a link to the user profile.
you just add all the fields you want, separated with a comma, just as you wrote it. you can test it in the api explorer: developers.facebook.com/tools/explorer/… how exactly you use it depends on the sdk (if you even use any sdk).
Getting the profile URL using the link parameter doesn't work anymore according to this post: developers.facebook.com/blog/post/2018/04/19/… as ASIDs currently aren't resolved due to abuse.
thanx, i will add it to the answer!
|
7

It looks like Facebook has created a separate permission (which user needs to approve) called user_link for you to be able to fetch that. You can see more details here: https://developers.facebook.com/docs/facebook-login/permissions/#reference-user_link

When you query metadata about available fields for the endpoint using /me?metadata=1 this is what the link description says:

{
  "name": "link",
  "description": "A link to the person's Timeline. The link will only resolve if the person clicking the link is logged into Facebook and is a friend of the person whose profile is being viewed.",
  "type": "string"
}

If user has approved that permission, you will be able to fetch the link as before:

/me?fields=link

{
  "link": "https://www.facebook.com/app_scoped_user_id/SOME_TOKEN/",
  "id": "USER_ID"
}

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.