I've been reading up on the new documentation, and I've found out how to post a status as a user, and how to read a status and all it's comments, but I haven't found a way yet to post a comment. My goal is to have the backend of my application mirror exactly the interaction on Facebook, such that if a user (whose access token we have) comments on a post in our iOS app's custom UI, our server can update the mirrored post on Facebook by adding the comment as that user. It's sounds like it's possible from what I've read, but I can't figure out exactly how to do it from the documentation. Can someone explain more clearly how to post comments, and what access privileges I need to do so?
You need to have publish_stream permissions from the user and then you just issue an HTTP POST to https://graph.facebook.com/postID/comments?access_token=... with a "message" post parameter equal to the comment you want to post. Its documented here under the section titled "comments".
Related
I have a Facebook comment and I would like to get the user ID of the author of the comment. I am able to get this information when the comment is posted on the page that I own with this query:
https://graph.facebook.com/v2.11/comment_id?fields=from&access_token=access_token
However, the same does not work when I am accessing a comment that is not posted on my own page, the from field is never returned. Is it possible to get the author of a comment that is posted on a different page?
Is it possible to get the author of a comment that is posted on a different page?
No, that information is not available to you any more.
https://developers.facebook.com/docs/graph-api/changelog/version2.11#gapi-90-pages:
/page/* — User information will not be included in GET responses for any objects owned by (on) a Page unless the request is made with a Page access token. This affects all nodes and edges that return data for objects owned by a Page.
If you are using a development account you cannot get the from user details of a user who comments on your posts. You can however create test users from your developer account, login with the test account, comment and retrieve their from details.
I have a Facebook comment and I would like to get the user ID of the author of the comment. I am able to get this information when the comment is posted on the page that I own with this query:
https://graph.facebook.com/v2.11/comment_id?fields=from&access_token=access_token
However, the same does not work when I am accessing a comment that is not posted on my own page, the from field is never returned. Is it possible to get the author of a comment that is posted on a different page?
Is it possible to get the author of a comment that is posted on a different page?
No, that information is not available to you any more.
https://developers.facebook.com/docs/graph-api/changelog/version2.11#gapi-90-pages:
/page/* — User information will not be included in GET responses for any objects owned by (on) a Page unless the request is made with a Page access token. This affects all nodes and edges that return data for objects owned by a Page.
If you are using a development account you cannot get the from user details of a user who comments on your posts. You can however create test users from your developer account, login with the test account, comment and retrieve their from details.
I'm trying to post a comment to my facebook using facebook API.
I'm trying to send this request:
https://graph.facebook.com/{post id}/comments/?access_token={token}&message=hello
This return to me list of comments but doesn't post the message I sent.
What should I do to post my message?
Thanks.
Update
As of April 24,2018, the publish_actions permission has been removed. Please see the Breaking Changes Changelog for more details. To provide a way for your app users to share content to Facebook, we encourage you to use our Sharing products instead.
You should make a POST request and make sure you have all the permissions required to publish. Docs here.
I am new to Facebook API. I am building a Facebook app to fetch all the name of people who shared, commented and liked a post in a tabular format. I am able to get the like and comment details through Facebook API but can not find and proper API to get the share details.
I am using
https://graph.facebook.com/post_id?fields=sharedposts&access_token=my_access_token.
This API is returning an empty result set. And I have granted all the available permission to the access_tokn. Can anyone tell me ,Is there any other API that I can use. I saw a option of scraping the Facebook page for share,but I don't want to go that way because Facebook keeps on updating every thing.
I'm having the same problem as you, but I think I'm going a little step forward.
Try adding a limit to your sharedposts and maybe it will return some data:
Try this way:
https://graph.facebook.com/post_id/sharedposts?access_token=my_access_token&limit=1000
That should work for a regular post.
EDIT: Maybe the problem could be that althought you have granted all the perms to the token, the people who share that posts have to accept that permission too.
Otherway your JSON won't return any data.
The /sharedposts endpoint will -only- retrieve posts from users who have -also- granted your app. This means that even though a post might be public on a users' timeline, unless they have also granted your app permissions, you will not be able to retrieve that post.
For example: a user posted to a page and the post is public. This post can be retrieved with an access token. Let's assume that the user also shared this post to their own timeline. But, since the user has not granted permissions to your app, you will not be able to see this post using the /sharedposts edge on the original post (on the page). This also holds if the user shared their post publicly to his timeline.
This behaviour is by design; the API is more restrictive in returning user data than the website is. This holds for multiple endpoint and this is one of the examples where it is the case.
Source: https://developers.facebook.com/bugs/1404733043148335
I've created an app which enables business to post links to their Facebook wall as the business (have proper business auth tokens, etc.).
However the links posted via the app do not have a share link, only comments and like. When a link is posted through the Facebook UI to the business wall it does contain a share link along with comments and like.
What am I missing to enable the link posted via my app to have a share link?
I am currently issuing a POST request to the following URL to create the posts:
https://graph.facebook.com/[profileId]/feed?message=[message]&link=[link]&...
this is a reported bug and have not been fixed yet. have a look (http://developers.facebook.com/bugs/307556529334653)
I think you will need publish_stream permission for that and publish what they write. IMO Facebooks makes difference between feed and stream. Just my thoughts :)
that's the standard procedure when you have a user post via app. I don't think there's a way to have users post as themselves, as far as links are concerned. What you can do is have them post a status update and that one will be seen as posted by the user (no app information).
There's no other procedure I am aware of that can do that. I hope this helps