Facebook - Requires either publish_actions permission - facebook

For my personal account on Facebook, I asked for the following permissions as scopes: publish_actions, manage_pages, publish_pages.
When I publish from the site I develop a lambda publication:
POST https://graph.facebook.com/v3.0/me/feed
{
"message": "Lorem ipsum dolor sit amet",
"link": "https://www.google.fr/"
}
I receive this error:
Requires either publish_actions permission, or manage_pages and
publish_pages as an admin with sufficient administrative permission
However, it seems to me that it is possible not to submit requests for permissions when it comes to the administrator account that has the Facebook application.

With the Graph API 3.0 release this permission disappeared from the Graph API Explorer and the permission documentation.

Related

manage_pages permission for an app which uses Graph API but needs no users

I have had an app working for literally years. It ran about 150 pages which I set up and had the manage_pages permission to write to it. It had no users apart from me. Indeed keeping it in "development mode" would work fine. But it isn't allowed to work that way it seems
I could generate the page tokens successfully and then use some PHP to update many of the pages at the same time.
Manage_pages seems to have stopped working.
Now the API reports:
OAuthException: (#200) Requires manage_pages and publish_pages to manage the object
Did not work: OAuthException: (#200) Requires manage_pages and publish_pages to manage the object
Turning off "Make appname public?" I get this:
No known Facebook user
OAuthException: (#200) Requires publish_stream permission
Didn't work: OAuthException: (#200) Requires publish_stream permission
I do not need the page to be public-facing but I do want to continue to use the PHP code to write to the pages.
Facebook keeps on refusing to approve the app since:
"Your app doesn't need to submit for manage_pages or publish_pages to post to Pages or blogs that you admin. As an app admin, you can already access these permissions and post to your own timeline, pages and groups. You can provide access to additional users by adding them to your app as admin or developers. Only apply for manage_pages or publish_pages if your app uses a public-facing login that third party users will access externally."
Well I can, but the app can't.

Update Facebook token for additional permissions

My application authenticates users via Facebook. It requests user token for permissions public_profile and user_photos.
One day I found that all registered users have only public_profile, and application have no access to their photos, because I did not get approve from Facebook for user_photos permission.
After all I got this approve, and tokens of new users logged in via Facebook have user_photos permission.
But legacy users have no, their tokens did not updated automatically to obtain additional user_photos permission.
Is there a way to refresh a Facebook token, without logout and login again?
You canĀ“t just refresh a Token without user interaction, that would make the whole point of permission authorization pointless. You can just check for the granted permissions and call FB.login (if using the JS SDK) again if some permission is missing: https://developers.facebook.com/docs/graph-api/reference/user/permissions/
This may be interesting for you too: https://developers.facebook.com/docs/facebook-login/handling-declined-permissions/

Facebook API Error: "User does not have sufficient administrative permission for this action on this page."

I'm using a Facebook app (in development mode) to generate a page access token so that my personal web app can schedule/edit/delete posts on a Facebook fan page.
I'm using the Graph Explorer to generate the token while logged in as the admin of the fan page.
When I use that token, I'm able to GET a list of the scheduled posts, but whenever I try to edit or delete a post, I get this error:
"User does not have sufficient administrative permission for this action on this page."
Here is the debug of the token:
Any ideas on how to fix this?
Here according to the documentation
DELETING YOUR POST
These are the permissions you need in the scope of your token.
To delete a user's post, a user access token with publish_actions permission is required.
To delete a Page's post a Page access token and publish_pages permission is required.
To delete a User's post on Page a Page access token is required.
To delete another User's post on a Page-owned event the user_managed_groups permission is required.
UPDATING YOUR POST
A user access token with publish_actions permission.
SO you need publish_actions permission within the scope of your token.
Update 1
Also check here if you have the valid page role

Cannot grant permissions when facebook desktop app perform login process

I'm newbie in facebook api. I follow this docs https://developers.facebook.com/docs/facebook-login/manually-build-a-login-flow/v2.3
when I pass this link https://www.facebook.com/dialog/oauth?app_id=617640518361609&redirect_uri=https://www.facebook.com/connect/login_success.html&scope=manage_pages,publish_pages to webview
and login with a facebook account, it's not grant manage_pages and publish_pages to my app, just public_profie
where am I wrong?
Here:
https://developers.facebook.com/docs/facebook-login/review/what-is-login-review
Which Permissions Require Review?
Review is not required to ask for the three basic permissions: public_profile, user_friends and email.
Review is required to ask for any other permissions when people log into your app
If you're using a admin/developer/tester user of your app, you should be able to request the permissions anyway.

Facebook API 2.3's new publish_pages permission - do I need it?

I'm quite confused about Facebook's new publish_pages permission.
My Facebook app allows our CMS users to post to their Facebook pages via our CMS, posing as the page.
We have been granted (via the login review process) the manage_pages and publish_actions permissions.
The API change log states this:
publish_pages Permission - This new permission is required to publish as a Page. Previously publish_actions was required. People who granted manage_pages and publish_actions before v2.3 have automatically been granted publish_pages. If anyone logs in via v2.3, you'll need to request publish_pages explicitly in addition to manage_pages.
We have not been granted the publish_pages permission automatically.
The blog post here states:
For Page developers, we've added the ability to deliver more content on a Page via real-time updates (RTUs). A new Login permission, publish_pages , is now required for apps to publish on behalf of Pages; previously, this required publish_actions.
So it sounds to me like if we upgrade to use API 2.3, our service will no longer work, because we haven't been granted publish_pages.
The documentation states this:
A user access token with publish_actions permission can be used to publish new posts on behalf of that person. Posts will appear in the voice of the user.
A page access token with publish_pages permission can be used to publish new posts on behalf of that page. Posts will appear in the voice of the page.
We do want to post in the voice of the page, as we do currently.
Therefore I opened a new login review request and summarised all of the above, quoting their changelog. Facebook's response was this:
You don't need the publish_pages permission because you already have the publish_actions and manage_pages permissions granted. Publish_pages is a new feature that allows an app to publish to a managed Facebook fan page, but your previously granted permissions contain this functionality already.
Is it just me, or does that response conflict with everything else they've written?
So my question is simply, do we need this new permission going forward or not, and have they wrongly not automatically granted it to us?
Well apparently Facebook's supports response is in some manner wrong.
If you want to post on Page on behalf of the user manage_pages and publish_actions publish permissions are passable for post action.
If you want to post on behalf of the page you also need publish_pages permission, without this all v2.3 api calls will return OAuth Error. There might be other privileges for managing your pages under this permission i don't know