Graph API 'likes', publish_stream permission, app unapproved - facebook

I have a website that does the following:
Retrieve Facebook Page posts from a specific Page.
Display posts on website.
If a visitor is not logged in to Facebook, display a custom 'log in with Facebook' button next to each post. Otherwise display a custom 'thumbs up' button.
By clicking the 'thumbs up' button, the user is able to like the specific Facebook page post with their own Facebook account. Nothing should show on the user's timeline other than the regular posts that Facebook displays whenever a user likes something on Facebook.
I'm using the Graph API likes method (https://developers.facebook.com/docs/graph-api/reference/v2.2/object/likes/) which requires the publish_actions permission.
Everything is working great, users are able to like posts on the Facebook page from the website, and the action shows up in their Activity Log.
The problem is the app is rejected for the following reasons:
Notes from our review team (Web)
The expected story doesn't publish back to Facebook. I've tried with different test users to reproduce the publish_actions, but nothing is publishing. Please check links and resubmit. Also provide a timeline screenshot of the publish story. Thank you.
publish_actions (Web)
We could not reproduce the requested permission. Please submit a timeline screenshot of a successful publish on Facebook, as well as detailed, step-by-step English instructions in the "Add Notes" section of the permission.
See here for additional information on login permission requirements.
I've provided step by step instructions, screenshots of the website as well as a screenshot of the user's Activity Log that shows them liking the post. Still no luck.
I think the problem may be that they are expecting some sort of story to be displayed on the user's timeline, which I don't need or want. I just want to let the user like the post from a Facebook page which DOES work and confirmed by everyone who's tested it on my end.
If anyone can point me in the right direction (I'm unable to provide screenshots or code here, sorry), it would be greatly appreciated. Thanks in advance!

Related

Facebook App Review Page Public Content got rejected due to bad screencast

I want to create a website where users can like one-another's Facebook page posts and get points. After getting points, they can use these points to add their own Facebook page post. When users want to add their post from their page, they select their page and all their posts are displayed so that they can easily choose which post to add. For this purpose, I made use of the Page Public Content Access feature. However, when I submit my app for review I am getting the following:
Not Approved
Your screencast doesn't show how the use of this permission directly improves the user experience in your app. Unfortunately, we also weren't able to determine this from testing your app manually.
All permissions data must be visibly used within your app. We do not accept permission requests for data that you may decide to use later.
Please see our Examples page to learn more about making and submitting a successful screencast.
Learn more about testing permissions prior to approval.
but I can't find what is wrong with my submission. I would be glad if you can help. This is how my submission looks like:
Tell us how you're using this permission or feature
My app is for new starters who want their Facebook page to address greater audience. In this app, users can earn points liking posts of one-another's Facebook pages and use these points to advertise posts of their Facebook Pages. I use Page Public Content Access to help people choose post from all posts that they shared in their Facebook Page. They choose post that they want to display in my website and in this way this post addresses greater audience. First, user chooses his or her Facebook page which the post belongs to, then, all the posts of this Facebook Page are displayed using Page Public Content Access, so that they can choose easily. They choose the post that they want to add to website.
Demonstrate how your selected platforms will use this permission or feature
1.Click Login in Home page
2.Click Facebook and Login your Facebook
3.Confirm your Username
4.Click Facebook in navbar and Choose "Add Post"
5. Choose your page in which you shared the post
6. Click "Choose Post" which will display your posts where you can select the post which you want to add to the website
7. Choose 10 Points and click Add Post
MY SCREENCAST VIDEO:
https://youtu.be/cFTXz8o5cqo
EDIT: I am using page access token:
PICTURE SHOWING THAT I AM USING PAGE ACCESS TOKEN

Facebook - tag people in posts by a page using API

I have a page and I have an iPad app. I am using the graph API to login to facebook as a user and post a photo taken from the iPad to the page. The thing is that the photos are shown in "Posted by others" section, which doesn't show detail by default.
So what am I doing is posting on the page itself with administrator privileges. My question is - how do I mention/tag people in the post?
They have logged themselves in the app already so I can use their credentials but the post has to be done by the page admin.
Anybody has an idea of how to do such thing?

Facebook Open Graph not showing on timeline

I'm using FB Open Graph in my application. It's not fully working. When I post a object it appears in the user's recent activity; however, it doesn't appear on their timeline. The metadata has no errors and I'm using the FBGraph gem but it also doesn't work when I do it using curl. Any advise to fix this?
Have you tried to use 'fb:explicitly_shared=true' in your URL. Refer: https://developers.facebook.com/docs/technical-guides/opengraph/explicit-sharing/
When you are in development mode, and your actions have not yet been approved by Facebook, the posted actions are only visible to you and to others with developer, admin or tester privileges for your FB app.
See: Facebook action submission
Also, open graph actions will no longer appear in users' news feeds or even the Ticker: http://developers.facebook.com/bugs/398546930211799/. So you shouldn't expect activities performed in your app to appear in users' timelines, unless these activities are tagged as 'explicitly shared', and even then there's no guarantee they'll show up.
Only direct, active shares are more or less guaranteed to show up in the Timeline.
Did you submit your action to get approved by facebook? If you did not do this, it will only work on your facebook account.
Also, are you sure you request the correct permission when the user authenticates, such as 'publish_stream'?

Post on a company facebook page wall on behalf of a user

I have a wp7 app that connect with facebook and lets assume i have the users access token
I am wondering if it is possible to write on the wall of some company facebook page as the user. (i have no ownership of the facebook page and not affiliated with it in any way)
If it is, do you know which permission do i need to obtain ? would love to get any kind of code snippet or a direction i should follow.
Thanks.
it's not possible to write on the wall on behave of the user. You always get a token in the context of a Facebook application - so it will be the app posting on the wall, not the user. And the maximum permission app can ask a user for is publish_stream which allows you (your app actually) to:
Enables your app to post content, comments, and likes to a user's
stream and to the streams of the user's friends.
so in order to post to the company wall, you need to:
Request publish_stream permission from the user
Issue a post request to https://graph.facebook.com/<>/feed url with your message
It's really easy to test. Go to https://developers.facebook.com/tools/explorer, click on "Get access token", select "publish_stream" permission in "Extended" tab, set action to POST, enter "LGUSA/feed" into URL field, click on "Add a field", enter "message: test" and click POST. You will get ID of your post back. See screenshot attached
Sorry this is going to be a bit vauge, but here goes:
First the user is going to have to be authenticated to facebook. There is a good example here. This will give you an authentication tolken to allow you to interact with the API.
The user is going to need facebook permissions to write to the wall. Facebook permissions are described here. I don't know about the specifics of your problem, but with more details I may be able to help more.
then you shoud be able to post to the appropiate wall using the facebook graph api (you'll probably need to be signed up to facebook with a developer account to get to this page).

Facebook API: Authorizing App to post on a second Fan Page

Over PHP we're posting already on a wall of a fan page. Now I created another fan page and I want the same app to post on this wall as well. However, it gives me the same error all the time:
'FacebookRestClientException' with message 'The user hasn't authorized the application to perform this action'
The script perfectly posts with the same app on the old page.
I've used already all the links I could find to give permissions to the app for posting on the page's wall. I even got a "Success" but the PHP script answers still with the same error. I know that FB changes the links sometimes.
Apparently they're trying to make it harder and harder, so maybe someone knows links that work giving the right permissions!?
I've already used the links stated here:
facebook c# sdk - The user hasn't authorized the application to perform this action
Authorizing a Facebook Fan Page for Status Updates
Thank you!!!
The following link did the job:
www.facebook.com/login.php?api_key=YOURAPIID&next=http://www.facebook.com/connect/login_success.html&req_perms=read_stream,publish_stream,manage_pages,offline_access
The key was probably the permission to manage_pages because it then asks you again to give the permission for all the pages you currently have.
Good luck everyone!