Facebook: Is there a way to check that I have certain permissions? - facebook

I started developing a Facebook app using the new Graph API.
I want to check if I have certain permissions, (say publish_stream for example) for a certain user. I know that the old REST API had users.hasAppPermission, but I don't see anything parallel to that in the new Graph API.
How can I do this?

You will need to run FQL on permissions table. If you are using JS SDK you can run it with FB.Data.query().

Yes. In the new Graph API use "/[user]/permissions". See also detailed explanation here and here.

Related

Facebook Marketing API - no app?

I want to pull ad data (campaigns, ad sets, & metrics like clicks/impressions/ctr) from Facebook using their API and put it into a database. Facebook's documentation says I need to create an app on their site in order to access the API, but that doesn't seem right. I'm not trying to create an app for my fb page, just want to extract data.
My first choice was to use an ODBC driver from
CData
, which does allowed me to successfully pull data from AdAccounts but threw an error when trying to get AdSets or AdStatistics:
OAuthException Code 10: You do not have sufficient permissions to perform this action.
I made sure to add in a target='act_{myAdAccountId}' parameter to the query, as per their documentation, but it didn't help. I figured this meant I didn't configure the driver properly, so maybe I'd have better luck just coding up a solution in python or php.
Next, I tried to run similar API calls using the Graph API Explorer and got the same error message. I created an access token that had all the extended permissions and then made a request to
GET /v2.4/act_{myAdAccountId}/adcampaigns.
This gave me the exact same OAuthException Code 10 error that I was getting through the ODBC Driver.
Can someone confirm whether it's possible to pull data from the API without building an app? If so, what permissions do I need to enable for my account? I'm already an Ad Account Admin in the "Ads Manager", and couldn't find anywhere else to set permissions.
Thanks!
Apps have no direct relation to Pages. You need to create an App for any API access. I did not use the Ads API yet, but i assume you need to use the ads_management permission with your App.
How to create Apps and authorize with the required permissions is explained in the docs: https://developers.facebook.com/docs
Since you asked about Login Review, all the information you need about that can be found in the docs too: https://developers.facebook.com/docs/facebook-login/review
I understand this is an old post, but in case if anyone was looking at a similar situation, I was able to call the Facebook Marketing API without building an app.
I posted a similar answer on another more recent question (Do I need a publicly accessible webserver in order to user Facebook's marketing API?), and was curious if this situation puzzled anyone else, which led me to here.
I wrote my API calls using Python 2.7 on Juypter notebook, and I just followed Facebook's Marketing API documentation and examples, modifying with my access tokens and account information.

how to get music.listens data using FQL

I want to integrate spotify data to my application which is posted in Facebook.
I am tried that using Graph API Explorer by https://developers.facebook.com/tools/explorer?method=GET&path=me%2Fmusic.listens.
In order to get the brief information about individual music it takes too long time..
So can anyone help to continue this functionality in FQL..
Regards
Rajapandi
AFAIK you can't do this using FQL.
You need to use the Graph API and have the user_actions.music and friends_actions.music permissions.
Then you can do - graph.facebook.com/USER_ID/music.listens?access_token=

Offline access to FB graph api from Javascript SDK

How do you query facebook's graph api via the javascript sdk for users that have allready given you permissions (offline access) and whose auth data you have stored, but who are not currently logged in to facebook?
To answer my question, you can in fact do so. You can use FB.api calls and include the access token at the end of the URL with ?access_token=
I'm not 100% sure of the code you'd need to actually do it, but I think one of the key elements to this would be logging in to the SDK as an application, rather than a Facebook User, as detailed in the documentation # http://developers.facebook.com/docs/authentication
Have you got an example query that you'd like to make with the SDK?

Using both Facebook Graph API and Old Rest API? Please help!

I am developing a Facebook application that will use Facebook events.
I want to be able to create and edit event as well as invite users friends to the event.
I prefer to use the new Graph API to handle all connections with Facebook and I many ways I am able too, but, the Graph API cannot send invites.
I saw that the Old Rest API got far more ways to interact with Facebook so I tried to use both systems on the same time but when I send the Access token that I have created with the Graph API a long with a call to the old API it says "Invalid OAuth 2.0 Access Token".
My question is, is there a way to convert the new Graph API access token to be used with the old rest API? Is there perhaps another way to get both systems to work in the same application?
Please help! All input are welcome.
I´d recommend against the old REST api. Support will be canceled sooner or later and then you will have to port to graph api anyway.
To send invites to your app you can use fbml/xfbml. try the http://developers.facebook.com/docs/reference/fbml/multi-friend-selector togehter with the JavaScript SDK as described here: http://www.takwing.idv.hk/tech/fb_dev/jssdk/learning_jssdk_11.html
good luck!

What is the equivalent of status.get in Facebook Graph API

Can anyone tell me what is the equivalent of status.get of the Old REST API in the new Graph API.
The page http://developers.facebook.com/docs/reference/rest/ says "If you are new to the Facebook Platform, we recommend you use our new Graph API instead." so I'm trying to figure out the newer version.
Basically, what I want is to retrieve the status messages that a user has updated.
Thanks
http://graph.facebook.com/<USER_ID>/statuses
You can also use FBML or FQL.