Weird Facebook API behavior, read group feed - facebook

I've got strange behavior when using the FB Graph API to read the feed of a group I am administrating. Everybody in this group is posting YouTube links and I wanted to write an App to crawl them all into a nice list.
But depending on the user who posted I get one of the following results:
a) type=video and everything is fine
b) type=status and I have to parse the link from the message instead of having a link field
c) type=status and the link is not even in the message
d) some users' postings are not in the feed at all
Does anybody know how to really obtain all message? I can see those posts including the links perfectly well using the Facebook web site...
Already tried to give each and every access right to my app, didn't help either.

I think I found the "problem": The result depends on the privacy settings of the user. Don't know why I can see the posts in the group but cannot automatically crawl it, only thing that happens now: I can't use the Facebook API but have to use some kind of HTML-parsing-crawler. Don't know why FB forces me to do that.

Related

Facebook Graph API insights

I'm new on working with Facebook and honestly I found it very confusing, terminology and documentation seems to be very ambiguous in many cases. Can somebody please help me out with a plain english explanation on how I can achive the following?
Post and image to Facebook (on the user page) and then check the stats (insights) of that post.
Till now I have managed to:
1) Create an app
2) Post the image on the user page with the desired message
I'm not able to understand how I can retrieve information about the particular image which was uploaded through my app. I want to know how many people have viewed that image, how many likes did it get, how many times it was re-shared.
Is it possible at all?
I'm posting to /photo not too /feed and I will like to keep it this way if it is possible.
Sorry if this was answered already but I spent a few hours trying to find an appropriate answer but wasn't able to get the right documentation.
UPDATE 1
After having a couple of days off from this topic and receiving the first 2 answers, I took another dive into this. Now I have tried the Graph API Explorer as suggested, and using the ID of a POST I can get some details about the POST, but the insights aren't showing anything, just next and previous.
My goal is to be able to gatther some stats about the pictures uploaded through the app. If this is not possible directly what should be the approach I need to take?
I don't believe a personal /photo has /insights attached to it - the Insights Object documentation page suggests that they do not - but you should be able to get likes, shares, and comments via the API.
It would appear FB has launched a redesign/reorganization of its documentation in the last couple of weeks, but the documentation for the /photo graph object is here -- you will need the user's Access Token, and the API endpoints you're looking for each have links to their own documentation pages there, including example code for each type of request.
Edit (summarizing discussion in comments):
There is no method via the Facebook API to gather insights for all photos posted to individual user timelines via an app. The app can gather likes, shares, and comments for each of those objects individually via API requests, and can make API requests for insights for photos posted to its own timeline. Neither of those options solves the intended use case here.
I'd recommend a solution that uses Sharing rather than an app integration, as this allows for better access to insights on the photos being shared. This is also a much simpler integration, and less brittle wrt future Platform changes. The main tradeoff is that the original photos being shared are expected to expire after a couple of months -- if this is unavoidable, I'd suggest implementing a redirect for requests for expired objects on the site.
We are able to get different kind of photos or picture Using Graph API
like as below:
1.Page Photos
Photos for a Facebook Page.A Page Access Token is required for all methods.Find here
2.Page Picture
Picture belonging to a Facebook Page. Find here
3.Photo
Represents an individual photo on Facebook. Find here
4.User Photos
Photos for a person.Find here
I hope it's helps you.

Facebook Graph Api me/home Seems To Return Same as me/feed

I know there have already been a lot of questions asked about replicating the users home feed and using me/home, but my question is slightly different.
A few months ago I wrote code to authenticate with Facebook (get user access token) and then retrieve their home feed with me/home. This worked fine at the time as far as I can recall. I've just gone back to the code today, and it doesn't appear to work. The result I get back looks almost the same as me/feed, which is to say it is almost entirely posts from the same account and not posts from 'friends'. Just one post from someone else, a change to their profile pic, shows up but the rest are all 'self posts'.
This only happens with tokens for my own app. If I use graph explorer using the same token, I get the same result. If I use graph explorer with it's own token then it shows me something much more like the actual home feed on the Facebook site. Generating new tokens doesn't help. I have checked the permissions on the tokens used are the same, in fact I even copied the permission list from the generated graph token into my app and re-authenticated, but it didn't help. If my app does the request, then I get almost nothing from other people from me/home. This is the same if I use myuserid/home. Makes no difference.
So my question is, why? Have Facebook changed something and is there a way to change my app so it gets a better version of the home feed?
Secondly, while researching this I've discovered posts saying read_stream won't be granted by Facebook to any app on any platform that has an 'official facebook app'. Does this mean I'm out of luck anyway, even if I get this working for testing purposes using the account that owns the app, I won't actually be able to publish it so others can use it?
Thanks.

How can i show the wall (feed) of my page to app on facebook?

How can i show the wall (feed) of my page to app on facebook? As i see in the page
www.facebook.com/kesha?sk=app_178091127385 and
www.facebook.com/pages/Khanduna-Yengu-Nangsu-Amuktang/187317137978077
I want show the wall(feed) of my page to my app of facebook. Please Help me.
I also try and see graph api as below
graph.facebook.com//feed
But Fail,
Please Help any one.
As I understand your question, you want to take the wall of your page and show the content of that on another page controlled by an app you have made, so that is the question I will answer.
There are a couple of things you need to do.
Facebook now requires you to have an access_token to get that information. You can get this in two different ways. Either you get your users permission to grab an access_token for them, or you create an access_token for one of the admin users with offline_access and manage_pages permissions.
There are problems with both cases:
1: Getting an access_token per user requires people to give permissions to your app which is quite annoying if they just gain access to the contents of the feed.
2: Having one access_token is also a problem seeing as Facebook puts a limit on how many requests you can make per access_token in a given time.
You need to balance these things out if you want the feed to be shown. Which case would you most likely use? If you don't have many users the second case might be the best, but if you go over the request limit no content will be shown and that could confuse your users.
Anyways.. Once you are past the access_token problem, you can access the information by getting the content from the page:
https://graph.facebook.com/YOUR_PAGE_ID/feed?access_token=YOUR_ACCESS_TOKEN.
You then get a nice json output you can use. If you are using the Javascript API you can simply use the information here:
http://developers.facebook.com/docs/reference/javascript/FB.api/
If you are ever unsure how to get the information you need there is a nice tool for that developed by Facebook called Graph API Explorer which you can find here:
http://developers.facebook.com/tools/explorer/

Why Facebook Graph Api or FQL does not work for high traffic pages?

I am having this problem. When I try to get the links posted by the user or page it works fine for all, except for high traffic users or pages like 'thebeatles' or 'ladygaya' or'machaeljackson' etc.
One thing we found out was that when you fetch links through graph api, it gives all the comments and evrythign back. In case of celebrity pages, there are thousands of comments, whcih are returned back, and cause to throw a curl exception.
So we switched using FQL and its better as it just provides the links, but in this case also FQL does not work for celebrity accounts. We just can't seem to understand why?
Did anyone come across this problem or know of any way to solve this?
Is it possible that you're trying to retrieve so many comments that it's timing out on Facebook's side?
Have you tried asking for a subset of the comments using offsets or timestamps? Check the 'searching' section of https://developers.facebook.com/docs/reference/api/ for more information
(disclosure: I work for Facebook in the Developer Relations team)

How to enable comments and likes for my posts made with my Facebook app?

When my Facebook app posts to the users stream those posts do not get links for Like and Comment. Other Facebook publishing apps, like Instagram, get these links.
I can't find it in my Facebook application's settings. Anyone knows how to do it?
(I think this is the same question as this one: Facebook : Like and Comment Functionality against Wall Post but I'm not sure.)
See Traroth's comment to get a more to the point description of what it is I'm asking about.
It seems Nathat Totten is right about how these links are defaults and that they are controlled by Facebook. There are three things that confuses this issue.
One is that Facebook Test Users behave a bit more special than you might think. Even when they are friends, they are not fully so. Making these default links turn up only for the user that posts them (for Test Users, mind you, I'm hoping it'll work all right for real users).
Another is the documentation for actions in the Facebook Graph API documentation for publishing Post objects:
A list of available actions on the post (including commenting, liking, and an optional app-specified action). read_stream. A list of JSON objects containing the 'name' and 'link'.
Which made me start to try find out how to include the commenting and liking links myself. I can't find this info anywhere, so maybe that changed without the above quoted documentation reflecting the change.
Anyway, if, indeed this is a Test User issue, then I don't need to do anything special to fix this. I'll try to remember to come back here when my (iPhone) app is ready for the real Facebook world and I get to see if it works in that environment or not.