This is probably a very noob question, but I've wasted the last day over it, so here goes:
Using Facebook's Graph API, I want my app's server to be able to retrieve all conversations from my page. As per the docs, I should be able to do so by calling
GET /<MY_PAGE_ID>/conversations?access_token=<MY_ACCESS_TOKEN>
However, I get an error
(#279) Requires read_page_mailboxes permission to manage the object
Which makes sense, since I never granted the read_page_mailbox permission.
However, I can't find a way (either through the API or the developer management interface) to grant it. How on Earth can I do it?
Thanks!
Related
I'm spinning my wheels over here and could use some help.
For our internal app analytics system, I have a script that currently uses the FB App Insights Reporting API to get basic Fb Audience Network ad metric data (requests, impressions, revenue, etc.):
https://developers.facebook.com/docs/graph-api/reference/v2.6/application/app_insights
It only reports data by day though (even though it misleadingly returns a Timestamp with the response), and we now have a business need to collect this data by hour, so we can accurately generate reports for any time zone.
I came across another part of the Graph API that seems built for this specific reporting purpose, and, according to the documentation, does support hourly granularity:
https://developers.facebook.com/docs/graph-api/reference/v2.6/user/adnetworkanalytics
I am moderately familiar/comfortable with FB API security and design, but for the life of me I cannot get anything but an empty data list back from this API edge. Sample request:
https://graph.facebook.com/v2.6/<user_id>/adnetworkanalytics?since=1467176400&until=1467262800&event_name=fb_ad_network_request&aggregateBy=COUNT&breakdowns[0]=country&breakdowns[1]=placement&breakdowns[2]=app&period=hourly&access_token=<user_token>
From what I can tell this means that the 'User' (me, or technically the dummy app I have set up to access Insight API data through) does not have correct permissions to access this data, and indeed when I check my permissions I do not see the associated permission, read_audience_network_insights listed.
I have tried to add the permission to the app I am accessing this through by adding the permission through the Graph API Explorer in the dialog that pops up when you select 'Get User Access Token.' However, even after adding there I still do not have the associated permission granted, even though it shows in the dialog if I go through the process again:
I think this is because I have to submit this App to FB Review for that specific permission, but when I try that, I do not see the permission available to be selected for review.
SUMMARY:
Like my title says, my goal is just to get my FB Audience Network data by hour. I'm open to any programmatic way of doing this (preferably something I can implement in a python script). If that means someone helping me get permission and successfully use the adnetworkanalytics edge that is great. If it is through other means I am not aware of yet, that is great too. Thank you!
I am trying to get a list of posts in a particular group on facebook that is closed, also I am not the admin, just a member in this group. When I am trying to access the group's posts via graph explorer (I checked all the permissions) I am getting an empty list returned.
What is facebook's reason for not allowing this access? If I am a member of this group I have access to this information anyway via browser/scraping...
Your thoughts and suggestions are appreciated.
What is facebook's reason for not allowing this access? If I am a member of this group I have access to this information anyway via browser
That would be only you being able to see the posts then, fine. Two parties involved - you, and the other group members; everyone aware of who will be able to read the posts, all good.
But with an app, a third party gets involved - the app developer. And they could theoretically do anything with that data, that the app reads from the API on your behalf. (Sure, the app developer might be you in this special case here - but that is not the normal use case.)
And in a closed group people might discuss topics that are a little more sensitive than the current weather; think f.e. health problems or something like that. For sure not the stuff you’d want exposed to any third parties.
And therefor, the decision whether an app should be able to read the group’s feed posts, has been placed in the hands of the group admin(s).
If you would like to access the data use api version 2.3, the only downside is that it will be deprecated.
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.
I'm an administrator of a group where my friends and I post music. It's a private group.
I want to get my own USER access token to get the JSON of the posts to this wall. I don't need to post to it, I just want to retrieve the contents so i can stick it on a tumblr.
As I recall from a couple of years ago, the Facebook API is a completely bloated, convoluted pile of crap with little in the way of simple documentation, so I don't know why I'm surprised at the difficulty in getting such a simple piece of information.
I have used an existing old app that I created a while ago to request my access token (I just used the object that was output by with_js_sdk.php when I put in the appid and secretid) and what I received gave me an empty data json - which means the access token didn't work. I retrieved the app access token using grant_type=client_credentials and that also didn't work. Is there a version of Grant_type that will give me an up to date access token for myself? Or do I need to grant something permission to see the posts on this page (even tho I'm accessing it as myself), so I've no idea what I'd grant permissions for.
Can someone just tell me how to get my own access token to see the posts in this group? It's driving me mad. One site told me I had to get an SSL certificate, which is bonkers.
This is my current request:
https://graph.facebook.com/171089229612510/feed?format=json&limit=25&since=1334425968&__previous=1&access_token=[ACCESS_TOKEN]
Or just this
https://graph.facebook.com/171089229612510/feed?access_token=[ACCESS_TOKEN]
Maybe you'll be happy to learn that the docs and the API are way improved compared to a couple of years ago.
To read the feed for a group, you'll need to request the user_groups permission as described in the graph api documentation for the group object.
Try it out using the graph explorer before writing any code.
And then, since you are using an old app, you'd do well to make sure you are using the latest version of the SDK.
After looking for ways to check if a user has a given permission, I stumbled upon some obscure reference to /me/permissions, which, lo and behold, works!
For the life of me, I can't find the documentation on the Facebook Documentation - is it deprecated, or simply undocumented?
Given how often facebook changes things, should I even be using this?
They blogged about that:
As part of our efforts to transition
functionality from legacy REST APIs to
the Graph API, we added the ability to
retrieve the list of permissions users
have granted your app by adding the
permissions connection to the User
object.
And is part of the docs on the User object, under connections.