I have a travel app that, used to, pull events from Facebook using the GET /search?q=tokyo&type=event enpoint. I understand this endpoint is now deprecated per this.
So I started to use this endpoint from my Facebook PHP SDK: GET /me/events where in order to pull an event from the API, I'd have to manually set my self as going on my personal Facebook account. Just yesterday I noticed that it now returns 200 response with an empty JSON.
I also saw this post that suggested that access to user_events will face more scrutiny in the App Review process. However, I already went through an app review last year and I can see this in my dashboard:
Hovering over the green circle says: Live and Available to all Users.
So what's wrong?
Also, I can see this note in the App Review process docs:
You do not need to submit your app if it will only be used by you or
by a reduced number of people. Any account listed in the Roles tab in
your App Dashboard, such as admins, developers and testers, can access
all permissions and generate a user or page access token.
You can use any of these accounts to test your app and create a
screencast.
And that's exactly what I do, I pull the events that belong to my account, that is registered as a Developer on the app's dashboard. However, trying to pull my own events even from the Graph Explorer returns empty JSON.
My last resort seems to be to resubmit an App Review. However, given that I already went through late last year, I receive this warning when clicking Start Over:
Is it safe to do or will current permissions be revoked in any way? If so how long will this process take?
AND MOST IMPORTANTLY
How do I pull events right now in the wake of these updates, and is my issue really related to Cambridge Analytica incident or am I missing something? And do I really have to resubmit for an app review?
Related
I have a pre-existing Facebook Business Page set up on Facebook and I just registered my website (App) on the Facebook Developers Console using the same Business name as the Facebook Page name. I am an admin on both the App account and the Business Page. My app is also on the list of “subscribed apps” for the Page. Even still, Facebook doesn’t see the app and page as the same business, and I still don’t see my page in the “App Pages” section of my App Settings like it says I should.
Ultimately, my goal is to be able to establish a communication between my web server and my Facebook Page in order to READ posts on my page using the Graph API. However, when I try accessing the page node or any of its edges using my App Token (via Graph Explorer OR my web server), it’s telling me I need an App review before I can read the public data on my own Facebook page.
My guess is that this is happening because there is still no established connection between the app and the page... and if that’s the case, what more can I do to make the connection? Anyone have any experience with this?
FYI: I’ve read many other posts on this issue and most of them are outdated or don’t give any clear answers to the question. I feel this question is valid due to the privacy changes introduced by Facebook last March.
You need to have your App reviewed, older apps work till August 2018. But as now every review takes a month and there is high change that you are not approved for "Page Public Content Access". Reason for approve denial is "it doesn't appear to enhance the user experience". And after that, there is not much you can do. You can make another app and submit it to the review, with info that might pass the review process.
As for now, i do not know the correct phrases to use in review-form, but if some-one gets "Page Public Content Access"-approval, please let us know how.
I've faced with problem a week ago
Details:
Have already created a many years ago Application (just for posting)
Through this app I've send request to Graph Api, POST /GroupID/feed
Problem appeared on 11th of April, but this affected only groups, for example the same app using for posting to another open pages and my profile - without any problem
Application have enough rights - manage_pages and etc, i've tested many many time with Graph API Explorer and every time the same error for my groups, but for pages - no problem
Response from GraphAPI
Unsupported get request. Object with ID 'GroupID' does not exist, cannot be loaded due to missing permissions, or does not support this operation. Please read the Graph API documentation at https://developers.facebook.com/docs/graph-api
I am the owner of all groups and pages and account with admin rights
Is any restriction from Facebook? I could not find any information about it
Facebook has temporarily suspended all parts of the Graph API that deal with groups. It's supposed to return in coming weeks, but all apps using it will be required to re-apply for the user_groups permission.
https://developers.facebook.com/blog/post/2018/04/04/facebook-api-platform-product-changes/
As we begin enhancing our new app review process and make changes to our platform, the Events, Groups, Pages and Instagram APIs will no longer be available to new developers. Testing of our more robust process starts today and the new process should resume in a few weeks, but apps currently accessing Events and Groups APIs will lose access today. Going forward, access to these APIs will require a formal app review and for apps using the Pages API, submission is required within 90 days once app review resumes or access will be removed.
Using the latest version (2.12) of the Facebook API I'm trying to get (public) events for a page, using the Graph API Explorer.
However, I can't seem to get it working:
When I hover over the greyed out "id" or "name" on the left, it says "Field is empty or disallowed by the access token".
Now the page I'm using as an exmple here is Techcrunch, and they have plenty of events coming up. So "empty" doesn't seem to be the issue.
On the "disallowed" side I've checked the API reference on https://developers.facebook.com/docs/graph-api/reference/page/events/.
However, I can't seem to find any issue here either. It says "Reading Page events requires a valid Page access token or User access token with basic permissions.".
What am I missing here? Any hints are greatly appreciated!
Visit https://developers.facebook.com/docs/graph-api/changelog/breaking-changes#pages-4-4
Currently Facebook is not returning events for pages using Pages API unless you use an user accesss token and that user has been invited to any of the events of the page or is attending/interested in any of the events of the page.
As unknow_b said :
currently to access events you can also use a user endpoint such as ‘/me/events’ or ‘/me/events/not-replied’ using an access token valid for that user. you can get the events that the user was invited to or is going/interested
But the access token user, is only working for 1 hour !
Does someone have another better idea?
I'm trying to do the same thing: getting public events from a page. Related to the above suggestions:
I tried the short-lived user access token two weeks ago, which worked for a short time. Now it does not anymore. Does it for any of you?
Both the long-lived user token, a page token generated with either a short- or long-lived user token do also not return any events.
At https://developers.facebook.com/docs/apps/review/#platforms, Facebook states:
Beginning April 4, 2018, all apps, including those formerly approved, must undergo App Review in order to gain access to the Events API, Groups API, and Pages API. Apps accessing the Events API and Groups API will lose access and require review once App Review resumes.
So being reviewed might help. I will report further.
Update 1: an answer on this related bug reports states it more clearly:
App review required to use the following edges: GET /page/events and GET /me/events
Meanwhile they cancelled all pending review requests for the Graph API 3.0 changes, so I have to resubmit.
Update 2: My project got rejected & I'm not bothering to continue it now.
Yep. Facebook has taken down the Graph API for page access tokens. I had this code in production for 2 years and it worked great. The only way to retrieve data (or was a week or so ago), was a temporary user token that lasts about 2 hours. It's totally broken my band's schedule page. I've been through every avenue and even spoke with a facebook ad team employee on the phone that was aware of it. She seemed to empathize but had no solution for me. I would count on it being down for a while.
I just created a python script, you can see here. It queries the given facebook page and it's events, and puts the data into a mysql table.
It looks like it won't be working anymore due to the scandal with Facebook Analytics (see Why does Facebook Graph API say my account is non-active?).
In the popular plugin facebook-events-by-location-core, you can take a look into the issue#29 discussion. It's well explained there, and I don't think so there's a way we'll get the data in a public API available anymore.
There were also some rumours it was a competition for their (dead?) Facebook Local app, but not sure about this.
I have finally figured out a work around for this. On your fb application, you have to disable the secret key requirement. This can be found under the advance settings of your fb application console. It's called " Require App Secret".
Once you generate a fb PAGE access token, you get a fb page token, and then extend it. here is the token debugger: https://developers.facebook.com/tools/explorer/
You can extend the access token programmatically as explained here: https://developers.facebook.com/docs/facebook-login/access-tokens/expiration-and-extension
AND
https://developers.facebook.com/docs/facebook-login/access-tokens/#pagetokens
OR
There is also an extend tool in the access token debugger (just click on the debug and the extend button is bottom left): https://developers.facebook.com/tools/accesstoken/
Yes , we had a working product back in 2016 ( almost like it's successor Fb Local ) . We were monetised and ready and selling events tickets on the messenger chatbot.
Idea was to solve discovery + booking for hyperlocal events. We went out of business and now its a heart ache to see Fb local.
enter image description here
I've been working on a platform similar to http://vonvon.me and http://wittybunny.com which consists of little apps which users can try out with their facebook account logged in.
However I'm extremely annoyed that facebook is not approving the user_posts permission giving the following reason everytime:
I also created a video walking through how the app uses the permission at the backend to access user posts to determine number of likes on them and randomly choosing a friend on that basis, or maybe just determine the count of posts. I've submitted it 3 times but they have still the same response. What do I have to fix? My site: http://abfb.ml
Yes, it's bit difficult to get this permission approved.
I had this same problem in one of my projects few months back. I used following steps carefully to get this approved.
First, create a video that you can upload to facebook which contains the complete flow of your application.
Start video with first home screen then go to login page.
Then show how user will link his facebook account with your application. Show how user allow the different permissions
Then go back to your application and try to show how you are going to use this permission. For eg if you are going to use this for post then try to show posting by your app.
Last point, steps you are showing in the video should also be sent as text written when you submit it for app review.
This way i got my user_posts permission in my project.
I just created last week an App and I've read that offline access doesn't work with newly created apps.(I haven't found any tutorial on the web. I am really new to facebook apps)
with this new change in facebook, I don't know how to use the current thing.
I badly need this feature because I don't want the user keeps logging-in in facebook everytime he visits and posts a status in my site as well in his facebook wall. I just want the user to be stayed connected and be able to post on his wall automatically thru my site once he authorized my app.
Thank you.
There are very clear and simple instructions on the following documentation to explain what you need to do to switch to long-life access tokens:
https://developers.facebook.com/roadmap/offline-access-removal/
Also, from your description, it sounds like you are spamming and breaking Facebook Platform Policies. Users will hate any app that automatically posts on their behalf, so I recommend you do not do that, as either people will stop using your app or they'll report it and it'll get banned.