facebook publish_action default public - facebook-graph-api

I have a php script that post content users choose to post to their facebook timeline but I want to default the post the users post to their timeline public unless they change it... how do I go by doing that I am using the oldest facebook sdk.

This field cannot be used to set a more open privacy setting than the
one granted
Source: https://developers.facebook.com/docs/graph-api/reference/v2.5/user/feed#pubfields
In other words, it is not possible if the user did not choose "public" when he installed your App.

Related

Is possible to use Facebook's (Page) Graph API without having an role in that page?

For example, let's say I need to "crawl" (not manually since it looks against Facebook's policies but via graph API) some information from a Facebook's brand page (e.g. https://www.facebook.com/nike/ ).
For example I may need to collect the following fields from a set of brand pages (not just one, such as the one mentioned above, for which I could definitely do it manually), when they are publicly available:
("About tab")
- description
- address
- website
- ...
I was reading Facebook's graph API docs and permissions.
However these permissions are related to users and I already worked with that. What I learned it that it works by
Facebook login --> auth the app to use my data --> the app has access to my data as a Facebook user.
However I'm now interested in brand pages for which I found this docs and this (access token). However it seems that to be able to use this access token I need to be a user with some role in the page (e.g. admin) and not any user who just liked that page.
So, is it possible to access brand pages' data (read-only, i.e. GET) via graph API without actually owning/admin/publishing on that page?
Apparently no "special" access token is required to access pages' public info.
For example I can create any page (not app) in my Facebook account and then use
GET https://graph.facebook.com/(*1)/feed?access_token=(*2)
(*1) the page's name (nike) or ID
(*2)my "bridge" page (i.e. empty page, only used to have an access token. not the page I'm using the graph api on)'s access token
Similarly for /posts/ etc.

How to use complex search phrase in Facebook Graph API?

The Facebook site allows to search for phrases like:
Pages liked by people who are older than 50 and live in Munich,
Germany.
How can I do that with the Graph API?
If this is not possible, do you know a workaround to do such searches automatically?
You can not do this at all.
The reason: Privacy.
You can not search all users of Facebook for demographic data this detailed.
In order to get what a user like you'll need the user to authorize your app to use "user_likes", which requires review. Source: Scroll down to "user_likes" section
In order to get anything other then under 18, or under/over 21 you'll need "user_birthday", which requires review. Source: Scroll down to "Guidelines" on load then "ctrl+F" for "user_birthday"
You can use "age_range" from public profile, doesn't require review, but this will only be for users that have authorized your app. Source: Age Range.
In order to get a user location you'll need the user to authorize your app to use "user_location", which requires review. Source: ctrl+F type "user_loction"
You can use "locale" from public profile, doesn't require review, but this will only be for users that have authorized your app, and it will only show what language they use FB in. Source: Scroll down to "gender & locale" under "Public Profile"
All of what you want to do requires a Facebook review I doubt it will be approved. Next even if it did only those users that have installed/authorized your app will be available to your app. You absolutely can not open search user data like that with out the users permission.

Request additional permissions only for specific users in Meteor

I have an application allowing users to sign in using their Facebook and Twitter accounts. I only need a very basic information like their email address and full name. Everything works fine and as planned.
Accounts.ui.config({
requestPermissions: {
facebook: ['email'],
github: ['user:email']
}
});
But, now I need to implement a feature posting to a Facebook page and Twitter on behalf of the admin users only. So, I need to get additional permissions from specific users only.
Admin users are eligible to manage our page at Facebook. The app needs to request additional permissions to be able to post to the page. I wan't to keep those basic permissions for regular users.
How can I accomplish that?
One way you can do is,
If you know that logged in user is Admin, put the re-authenticate button in user-dashboard (or somewhere which makes sense) that will do authentication user of user for whatever permissions as required by application.
This will basically do, oauth with social service like usual and upon completion you will get aceess code and against this code get the re-newed access token from social service. (This is normal , how you basically do the oauth manually) Now, use this access token to post to social services.
For this, you will need to use node modules such as for facebook -fb_graph , for twitter- twiiter
Hope this helps

Facebook Graph API: Explain permissions to user?

Is it possible to ask for the wanted permissions and displaying some individual text in the permissions-dialogue that's showed to the user? E.g. "We use the permission to read your mail address to create a new account in our community."?
Thanks,
indect
Earlier the Login Dialog would have the option to display the app description that developers could use to inform the Users about the need for the specific permissions. Which looked like following and was described in this blog post
But the Login Dialog has then seen few modifications, as outlined by this blog post for grater clarity and control due to which the Login Dialog has changed to its current form which has no option for the developers to inform Users about the request. If you want to inform about it, do it prior to sending the User to authorization, as the new Login Dialog looks like
No, these messages are default by the facebook.

Facebook Graph API- bypass privacy warning modal?

Built an application that uploads videos to a users timeline.
The first time they use the app and log in to their facebook account they are presented with a 2nd facebook Privacy modal.
<appname> would like to access your public profile, friend list and photos
Is there a way to somewho bypass this modal by changing the facebook application security settings?
Simple answer: no.
This is the basic scope that is implicitly added by Facebook to your request. Each scope has to be approved by the user. There is no way to programmatically or configurably skip this dialog on your side.