I'm new to Facebook's Graph API and I have an app idea that involves using the relationship status field on people's profiles. But it appears that Facebook no longer supports giving out this data because the permissions for it are all deprecated according to this page https://developers.facebook.com/docs/facebook-login/permissions#extended_perms.
user_relationship_details
This permission was deprecated on April 4, 2018.
user_relationships
This permission was deprecated on April 4, 2018.
Is there still a way for me to get the relationship status of the individual and their friends?
Related
I've searched through all of the documentation from Instagram's APIs and I can't find a single mention about posting unfollow / follow. If you could point me in the right direction I would very much appreciate it. Thank you.
This endpoint was available I believe through the legacy Instagram API. However, that was decommissioned a year and a half ago. The replacement Instagram Graph API did bring over these endpoints but they have been decommissioned as well. So I'm afraid it's not possible to follow or unfollow an account using the Instagram API.
https://developers.facebook.com/blog/post/2018/01/30/instagram-graph-api-updates/
Instagram API Platform: Deprecation
We will be deprecating the older Instagram API Platform in three phases with complete deprecation occurring in early 2020.
The following will be available until July 31, 2018:
Follower List - to read the list of followers and followed-by users
Relationships - to follow and unfollow accounts on a user’s behalf
Commenting on Public Content - to post and delete comments on a user’s behalf on public media
Sharing to a user's Facebook timeline without the user leaving your app used to be simple through a server-to-server API request. This is all it took before:
Permission: publish_actions
Request:
POST /me/feed?access_token={access_token}
message={message}&link={link}
This all changed on August 1, 2018 when Facebook removed the publish_actions permission. Their breaking changes page https://developers.facebook.com/docs/graph-api/changelog/breaking-changes mentions this a couple of times:
The publish_actions permission has been removed. Apps that have
already been approved for publish_actions can continue using the
permission until August 1st, 2018. If you want to provide a way for
your app users to share content to Facebook and Instagram beyond this
date, we encourage you to use our Sharing products instead.
90-Day Breaking Change — On August 1st, 2018, the Live API
publish_actions permission, which allows an app to publish on behalf
of its Users, will be reserved for approved partners. In the coming
weeks, a new permission model that allows apps to publish Videos to
their User's Groups and Timelines will be announced.
So they clearly want us to use the share dialog, but that doesn't work in my scenario. I'd love to have the old server-to-server share capability back. Is there any way around this? They mention that the old feature is still available for approved partners. How do you become an approved partner? There's also mention of a new permission model that's coming. I can't find any reference to that. Has that been published?
Update
Interestingly, if you use a Facebook test user, the publish_actions permission is still allowed and posting to /me/feed still works. Strange.
Facebook recently (4th of April) deprecated the education and work nodes on the user object in their graph api.
I am creating an app which requires a user's previous education and work experience. The only data I really need is name of the institution/place of work and dates that the person was there.
I can't see anywhere in the changelog how to access education and work data now. Is it still possible to access that data and if so, how?
If it is not, do you know if support for getting this data is going to be re-added?
As of April 2019, there's no way to retrieve that information.
There's no mention in the documentation or the changelog why the API was removed, but looking at the timeline it could indeed be related to the Cambridge Analytica scandal.
This node is deprecated
https://developers.facebook.com/docs/graph-api/reference/education-experience/
This node has been deprecated as of April 4, 2018 and will return no data. Please see the changelog for more information.
Deprecated Permissions — The following permissions are deprecated: [...]
user_education_history
I am working on a project that requires getting the number of Likes and Shares of various links.
This can be done either by calling api.facebook.com or Graph API v1.0 in the public with no app and token required at all.
http://api.facebook.com/restserver.php?method=links.getStats&urls=http://www.example.com/
http://graph.facebook.com/http://www.example.com/
However, Facebook has started deprecating apps using Graph API v1.0, and their Platform Upgrade Guide makes no mention of api.facebook.com which predates Graph API v1.0.
Developers should expect apps calling API v1.0 to be migrated at any time after April 30th, 2015. The migration will roll out to all apps over the course of a few weeks.
Should I expect api.facebook.com to be deprecated along with Graph API v1.0, or will it be another sharer.php and be kept indefinitely?
It's announced as deprecated since a long time ago. Probably nobody will be able to tell you WHEN or IF Facebook will shut it down. But assume that this can happen anytime.
So, if you don't want to have your app suddenly break, then you should migrate to Graph API v2.3.
Have a look at
Migrating Facebook API for URL share count from v1.0 to v2.0+
So, apparantly the api.facebook.com server is regarded as v2.0, which is no longer available as of August 7th, 2016. All methods on api.facebook.com now return the REST API is deprecated for versions v2.1 and higher (12) error message.
I know about the whole April 30 policy of big brother doom that Facebook has introduced, but I read this somewhere:
"For apps which were active before April 30th, these apps can call
either Graph API v2.0 or Graph API v1.0, but Graph API v1.0 will be
deprecated on April 30th 2015."
Does this mean that if I have an app active before April 30th 2014, that I am still able to use API v1.0 to get all the users friends until next year?
I also have read that it depends if the user logs into the app with API1.0 or API2.0 ... How do users have the ability to choose the API, and does this mean that I will have access to some user's friends if they use V1.0, but not if they use V2.0?
Apps created before April 30th 2014 can still get all friends, until April 30th 2015.
You can force older Apps to use a newer API version:
https://developers.facebook.com/docs/javascript/quickstart/v2.1
(see the "version" parameter in the init-function)
You can also add the version tag in an API call, see changelog for more information about that: https://developers.facebook.com/docs/apps/changelog
Keep in mind that you can´t force a new App to use an older version of the API.