Facebook Graph API 2.9 ChangeLog - 90-Day Deprecations - facebook

The 90-Day Deprecations in Graph API Changelog states that:
The following fields are deprecated for edges and dialogs that allow attaching links to posts:
picture
name
caption
thumbnail
description
The edges and dialogs for which these are deprecated include POST /{user-id}/feed, /{page-id}/feed, /{event-id}/feed, and /{group-id}/feed as well as the share and feed dialogs.
I am creating an app that uses Graph API v2.9 to fetch posts from a public page using app access token and includes these fields in the request e.g.
GET https://graph.facebook.com/v2.9/{page-id}/posts?access_token={app-token}&limit=10&fields=created_time,message,caption,description,icon,likes.limit(0).summary(total_count),comments.limit(0).summary(total_count),link,name,picture,status_type,type,updated_time,id
Does it imply that after 90 days of release of v2.9, graph API GET calls like these will also not return the values for these fields in the response?

Related

Create multi-photo post on Facebook page using Graph API 7.0 or newer

I'm looking for a way to create a multi-photo story on a Page feed. Before Aug 3, it was possible to create an album using POST /page-id/albums endpoint. I would then upload multiple photos to the album using POST /album-id/photos and Facebook would automatically show a story on the page feed about the new album with pictures in it. This functionality has now been deprecated: https://developers.facebook.com/docs/graph-api/changelog/version7.0#pages.
Given the deprecation above, is it still possible to create a multi-photo story on a page feed? If yes, please provide the specific endpoints and request structure to use.
It is impossible to create a new album via Graph API as of v7.0+. What can be done instead, is to upload multiple pictures to the page in unpublished state using POST /page-id/photos and then creating a feed story with the unpublished pictures as attachments, using POST /page-id/feed. This workflow, with examples, is explained in detail here: https://developers.facebook.com/docs/graph-api/photo-uploads/

Graph API Page Mentions

How can I retrieve Page mentions made by user in their own wall (both comments & posts).
When I query the Page's feed those mentions aren't retrieved and I cannot find Page's edges that can retrieve those posts/comments
This API call gets you all the public mentions of your page: {page_id}/tagged.

Photo post insights with Facebook Graph API v2.4

We are using version 2.3 of the FB graph API to get insights (specifically viral impressions, reach, engaged, talking about, and impressions) for a page photo post. It works without issue. However when we try to make this same call in version 2.4, it fails. See an example call we used in the Graph API explorer below
/1129724967054634_1214739968553133/insights/?metric=['post_impressions_unique']
We've tried both PageID_ObjectID and PageID_Photo ID in the call, but neither returns the insights data mentioned above. We can get likes and comments for the Object, but nothing at all for the Photo. Are we missing some change in the way Facebook treats page photo posts between versions?

How to count likes/comments of a photo/post using new Facebook Graph API 2.1?

I tried for several hours to get the total number of likes/comments of a photo/post using the new Facebook Graph API 2.1 but I didn't find how to do it.
I am able to photo and post details through the API but it contains only an subarray with some likes and comments (ID/Name pair), but no the total number. Graph API Reference for object/likes mention a total_count field but is not able to found in API response.
Can you please suggest me a way to do it?
I am using latest Facebook PHP SDK 4.
I faced this situation before. Facebook Graph API Explorer, in the Fields dropdown list, you can not find any field related to total_like or total_comment of a specific post ( via its object_id). That means Facebook Graph API does not support getting the total likes, comments of a specific post.
But, it support to get likes, comments data of a post via likes, comments fields. So by this way, you can get the entire data about likes, comments, therefore, you can get the total number of likes/comments. This solution is not good, I think. I think in the near feature, Facebook Graph API support the fields total_likes, total_comments.
/object_id?fields=comments.limit(1000),likes.limit(1000)

How can I make my timeline with Graph API?

I've studied Facebook API for several hours, and googled lots of pages. But I can not find the way get posts list just like my timeline on Facebook app.
I would like to make a Web app that show my timeline posts just like Flipboard. I found an API to get my "story" and "my friends list". But I can not even imagine how to retrieve my friend post that shown on my timeline.
Is it impossible to replicate my timeline on my web app? Only Flipboard can do that? Do you have any hint?
To access the current User's News Feed use the "User/Home" request as described in the API Documentation.
In order to gain access to the User's News Feed you will be required to gain the "read_stream" permission. For information on how to request the appropriate permission, read the Login, authorization and permissions section of the Getting Started guide.
The request to me/home will return an array of News Feed items, which are comprised of statuses, pictures, likes, etc. You can see an example of the result by using the Graph API Explorer.
Compare the results to your Timeline and they should be nearly identical (currently I believe Ads/Promoted Posts are excluded from the API)"
Play around with the Graph API Explorer:
https://developers.facebook.com/tools/explorer/?method=GET&path=me%2Fhome
I had to change the permissions within the App and specifically give myself 'read_stream' access, but once that was complete I was able to run a '/me/home' Graph API GET Request and return a representation of my timeline. Good luck!
You can get the timeline this way:
$fb = new Facebook('{config}');
$fb->setDefaultAccessToken('{getAccesstoken}');
$request = $fb->get('/me?fields=feed.limit(10000){link}');
//
$graphObject = $request->getGraphNode();
return $graphObject;