We have a tool connecting with the Facebook Insights API to grab various metrics (Likes, Comments, etc).
One such metric is the Lifetime Engaged Users.
However, we've looked at many FB pages (not going through the API) and the insights numbers seem to be different.
I have used the Graph Explorer to check if there is an error in our request, and this is not the case. For example, in one case, the call returns "13480".
Here is the screenshot from the Insights page:
FB Insights Page
I may not be checking at the correct numbers, but can someone help me out?
I would like to figure out how I can find this particular metric, other than using our tool or using the Graph Explorer.
Thank you!
Try this: go recheck your call to API, remove that S from "metricS=metricName".
I met this problem today, and find that there are two ways to get object insight data:
object-id/insights/metricNameA,metricNameB
object-id/insights/?metric=metricNameA,metricNameB
I happened to use the 2nd way, and wrongly typed metricS instead of metric, which led to return an array of data for all metrics, and my code data[0].values[0].value therefore got the first metric in that array which is "post_story_adds_unique", if you have same mistake as mine, that 13480 could be this 1st metric return by default from FB.
Related
I am trying to fetch all of my instagram page's posts (around 57k posts) from facebook's graph API. using the 'media' endpoint described here:
https://developers.facebook.com/docs/instagram-api/getting-started
I have managed to get around 12k posts using it using the query below:
https://graph.facebook.com/v3.3/{ig-user-id}/media?access_token=XXX&pretty=0&fields=timestamp,caption,comments_count,like_count,media_type,media_url,owner,permalink,shortcode,thumbnail_url,username&limit=200
when using this link returning result contains a data part which is for posts' data and a pagination section which includes next and previous urls and cursors for after and before. I used next and got remaining posts each time, until the result didn't have a next url but it had an after cursor but when I used it the data returned was empty.
I thought there might be some kind of limitation, but couldn't find anything so far except for the API rate limits which I don't exceed.
I also tried the graph API explorer and got the same result.
The problem was not solved but I found something I hadn't seen before, it might help people confused like me.
in the endpoint documentation it is declared that this endpoint has a 10k recent posts limitation, therefor we cannot get any more of our posts.
How can I query facebook's graph API to retrieve all user's likes (not only pages but also photos and others)?
For instance, how could I get all the pictures a user has liked? Using facebook's search bar you can find them easily by clicking on "photos has liked".
I wrote a script that scrapes the page content and does that but it's not very efficient.
I have recently come accross a similar problem, maybe this helps you solve it.
https://graph.facebook.com/v2.5/{page_id}/feed?fields=likes.limit(1).summary(true)&since={start_date}&until={end_date}&access_token={access_token}
This will give you a list of all posts that received likes during the specified time period. If you manage to write a code summing up the following JSON path you got your sum for "all user's likes":
data[0].likes.summary.total_count
Not entirely sure is this is exactly what you were searching for, hope it helps you though - and if not you, someone else.
As for likes you can also use the same way to extract Shares and Comments:
Shares
https://graph.facebook.com/v2.5/{page_id}/feed?fields=shares&since={start_date}&until={end_date}&access_token=
Comments
https://graph.facebook.com/v2.5/{page_id}/feed?fields=comments.limit(1).summary(true)&since={start_date}&until={end_date}&access_token=
Best regards
There isn't to my knowledge any way to get this from the API without grabbing every type of response from the API and then sorting through for likes. Facebook search bar uses an internal API different from the Graph API.
So I am trying to retrieve some insights information and noticed there was a connection within the posts field of a page. When I use this connection, it retrieves all of the insights information, all metrics. I only want to limit myself to a few that I need, instead of getting the overhead of searching it out myself after I pick it up.
This is the URL I have tried to limit myself to only the post_consumptions metric
https://graph.facebook.com/v2.0/<page_id>/posts?fields=insights{post_consumptions}
This doesn't work, it still returns every metric, so I thought maybe I can't choose the metric, but only the fields. Then I tried this:
https://graph.facebook.com/v2.0/<page_id>/posts?fields=insights{id, name}
But there were no changes in results, I can't seem to find any documentation about this connection either in the documentation of Facebook Graph API, which doesn't really surprise me as Facebook does this quite a lot.
The documentation about it, which I could find, are here:
https://developers.facebook.com/docs/graph-api/reference/v2.0/insights
https://developers.facebook.com/docs/graph-api/reference/v2.0/post#edges
I dont know if you still have this problem but i solved it like this
https://graph.facebook.com/v2.2/<page_id>/posts?fields=insights.metric(post_impressions_unique)
As we all know the Facebook documentation is not the best. It's internally inconsistent, ever changing, riddled with broken links and often out of date or just plain wrong. I've searched and searched and I cannot seem to find the answer to a very simple question: Can you get Insights data for an open graph object INSTANCE, e.g., "Blowing in the Wind" (instance) vs. Songs (type).
This seems like it should be an obvious use-case for Insights but it does not appear to be possible from what I can muster. Facebook's Insights documentation says:
Once you select an action filter, you have the option of further
filtering by objects.
and they show this screenshot underneath this text which seems to show that you can filter Insights by open graph object TYPE not by individual object INSTANCE. So, which is it?! They are very loosey-goosey with their terminology which makes understanding the documentation that much harder...
Through the Graph API it appears that the only Insights data you can get is at the Application, Domain or Page (Facebook page not web page) level as stated in their docs:
API Reference › Graph API › Insights:
An object containing statistics about applications, pages, and domains.
...and the same seems true of FQL:
API Reference › FQL › insights:
An FQL table containing statistics about Applications, Pages, and Domains with 30 or more connections.
So, my guess is that it's not possible, but, the need to get analytics on an open-graph object instance seems so obvious that I feel I must be missing something here. I mean wouldn't Spotify want to know which songs in their catalog are being shared/seen more often in Facebook?
Any help would be much appreciated.
I don't think the interface or API supports object instance level insights, only object-type / action type.
If it did work, a call to /OBJECT_ID/insights with the app access token is the most logical place for them to be
I'm experimenting with the Graph API, specifically the News Feed query (me/home). And right off the bat, I can see that the JSON returned does not match what I see on my own facebook page. The API returns some objects that are not on the page, and vice versa. I can't figure out what's going on here. I don't think it's about people I've unsubscribed from or anything like that.
Is this expected behavior, or am I doing something wrong? Is there documentation somewhere that explains what the difference is?
edit 22-Nov-11: this is never going to be answered, is it.
NewsFeed via api ordered by time but on facebook.com ordered by top stories
Open your recent news feed > https://www.facebook.com/?sk=h_chr
you will find that it's the same as api (y)