How to activate Groups API - facebook-graph-api

This is about Control App demand,
I started my demand for
publish_to_groups,
pages_show_list,
pages_manage_posts,
pages_read_engagement
with text to describe how my software is about to use them, screen recording, test user etc. However I can't submit my demand, facebook say "You must enable Groups API".
This is where my problem is, when I try to request it, the button is disable. To make it clickable I have to make a successfull api call. How can I resolve this ?
I would like to do the same for groups_access_member_info, instagram_content_publish, instagram_basic
Thanks

Related

Google G-Suite API Console not showing Enable G Suite Domain-wide Delegation

I'm working with a client to setup service account credentials, for the purpose of reading G-Suite Directory information over API.
I've done this a dozen times before with no issues, and now I'm having a problem with a setting not showing up for the client.
Below is an image that shows what I would see normally. The area circled in read is where the ability to enable Domain-Wide Delegation exists.
However, the client does now see that section. Instead they see this button. And clicking the button just displays the Client ID's, but doesn't have an option to Enable Domain-Wide Delegation.
We haven't gone through the entire setup to test if this service account works, and I haven't been able to duplicate this UI interface with my testing accounts. I always get the "Show Domain-Wide Delegation" from the first image, and not the button.
The client says they are a Super Admin on the G-Suite Admin Console. I have detailed instructions for all the steps prior, which they said are exactly correct. The only difference is when they get to this page.
I was hoping someone would have some insight into why this interface would be different, and what might be some ways around fixing it?
If you don't see the checkbox, it means you don't need to enable it. You can get the client ID from the UI or by looking at the JSON private key you downloaded, and use that to authorize your scopes in the Admin console.
(thanks #kspearrin who also mentioned that in the comments)

Find out if you can post to users wall

I'm currently toying with the Facebook Graph Api and have been able to get some interesting results, I would like to be able to post to one of my Facebook App users pages. They have authenticated the app and confirmed the ability for my app to be able to post on there wall. I know there is the can_post check using FQL, but I haven't seen any information on this using the Graph API. Is there a possible check to make so I can see if I have the ability to post on there wall?
can_post
https://developers.facebook.com/docs/reference/fql/user/
This settings is actually a setting of the timeline:
This setting only affects the viewers of the specific timeline and does not apply to the owner of the timeline.
can_post - bool - Whether or not the viewer can post to the user's Wall
Beyond this settings, by authenticating an application and giving it certain publishing permissions, the application, using it's per-user per-app access token will be able to perform actions on behalf the actual user. Actions will be attributed to the user even though it is the application that initiated and published these stories.
To answer what I assume is your underlying question - your application, given the appropriate permissions, will always be able able to publish a story to the users timeline. The act of giving an application any permissions is the same as allowing the application to act as you and access everything you would be able to access. This includes posting a story to your own timeline (even if no other user would be able to).

How to create a facebook event on users behalf using javascript sdk

I'm trying to piece together information and different chunks of code scattered throughout the documentation on how to make this happen, since there aren't good examples.
I know I have to first get the create_event extended permission which I get with this code:
FB.login(function(response) {
// handle the response
}, {scope: 'create_event'})
;
I know that I also have to issue a HTTP POST request to 'PROFILE_ID/events' with the create_event permissions and the necessary parameters.
My problems are: 1. I don't know how to collect the create_event permission once it is given. If I run the code above, a dialog box will open asking for the permission but once I accept, only a blank page follows.
2. If everything works the way it supposed to with the permissions request and the post request, will my app see a create event page like I would if I were to create an event on my own from my profile? What interface gets seen from the app? Can I take a user from my app directly to the facebook create event page?
I don't know how to collect the create_event permission once it is given. If I run the code above, a dialog box will open asking for the permission but once I accept, only a blank page follows.
That’s how it works. Everything you want to show to the user after successful login, you have to implement yourself.
If everything works the way it supposed to with the permissions request and the post request, will my app see a create event page like I would if I were to create an event on my own from my profile? What interface gets seen from the app?
No “interface” at all – it’s up to you to build that.
Can I take a user from my app directly to the facebook create event page?
The user can go their by themselves. Why would the need your app for that?

Facebook Graph API - issues with the publish_actions permissions

Facebook official docs mention that the publish_actions permissions is needed to publish on your FB stream open graph features (actions + objects).
Well, I'm getting a problem to make it work. On the docs it is mentioned that these features are rolling out slowly to all users and will be available soon, but for now, they should be available for the developer and the test users (at least until my actions/objects are approved). Well, this doesn't work, I get an OAuthException ("(#200) Requires extended permission: publish_actions or App must be on whitelist").
So to make it work, I must first go to the Graph API explorer, grant myself manually a permission (publish_actions) to get the token and only then it works(maybe it is buggy?).
The other option is to categorize my app as "game" and then it behaves as expected. They also say we should enable the Enhanced Auth Dialog, so I did, but that didn't help.
Bump
Edit
This was actually in main docs (https://developers.facebook.com/docs/opengraph/tutorial/#authenticate)
To make it work, just use the FBML for the login button with the scope:
<fb:login-button width="200" max-rows="1" scope="publish_actions">
</fb:login-button>
Works only for test users and developers instantly, but I guess that when my actions/objects will be approved, I will be able to roll this to all of my users.

Other way to ask Request for Permission for authorize application

I want to know how to add this functionality (I don't know how it calls), when a user clicks on application in Facebook, this window is shown:
How to change traditional "Request for Permission" windows to this one?
In your application settings in Facebook you can configure the new authorization dialog:
https://developers.facebook.com/apps/APP_ID/auth
Just follow screen instructions, you can add a description, headline, extended permissions, etc. (If you add extended permissions, a second permissions screen will be shown to the user, so the user would have to go through 2 screens before actually entering your app).