I would like to be able to use the Facebook APIs to create events for facebook pages. From this link it seems to not be allowed: https://developers.facebook.com/docs/graph-api/reference/v2.0/event
Am I missing something? It seems like this was available in the past and I have no idea why it would not be available now.
Creating events via the API was allowed in v1.0, but has been removed in the newer Graph API v2.0. Facebook has removed several permission permissions from various end-points, including events, to prevent abuse.
Related
I'm building an app that has the user log in through instagram, it then reads their feed and uses that information for the app. Instagram has a page that says their API's will be deprecated in 2020 but some things will still work. It's not straightforward as to what is being deprecated and what isn't, and I have not found any way to contact them directly. Does anyone know if the following URL will continue working, and if not if this type of app will even be viable in the future? Why is IG and Facebook becoming much more closed platforms to 3rd party integrations?
https://api.instagram.com/v1/users/self/media/recent/
Deprecation notice:
https://www.instagram.com/developer/
The legacy Instagram API - https://www.instagram.com/developer/ will be deprecated in favor of Instagram Graph API provided by Facebook - https://developers.facebook.com/docs/instagram-api
In order to use https://api.instagram.com/v1/users/self/media/recent/ this endpoint you need Basic permission. As documentation says, it will be deprecated in early 2020, which means that the legacy API will be most probably shut down, since there will be no more capabilities to request for.
You should most definitely start building your app with Graph API. Please keep in mind that it takes some time before you can go live with your app. It requires couple of things like Business Verification, review of requested permissions in App review and it can take some time to be able to go live.
Please keep in mind that the Graph API works only for Instagram Business type of accounts. You can't use it for regular accounts at the moment. It is not clear yet if it will be available for all accounts, but most probably it will be in the future. It was the same as with deprecating Public Content permission on Instagram legacy API. They added similar functionality in Graph API.
If you plan to support all users, you will also have to apply for Basic capability in legacy API. In other words, you need to support both Instagram API and Instagram Graph API if you plan to target all Instagram users, both regulars and Business profiles.
Another thing to keep in mind is that you can't really report bugs or get any help from legacy Instagram API. If you will find the bug you can't report it as they do not accept it due to deprecation.
So start building with Instagram Graph API, once you will be good to go, try to add Instagram legacy API support. If everything will be fine and Facebook will add support for legacy accounts, your Graph API should easily take over Instagram legacy API functionality.
Most probably the reason why they are tightening the integrations and makes it harder for the developers is user privacy. They do not want to have yet another incident like Cambridge Analytica for instance.
It does not make sense to build something with the old API, that old API URL will definitely stop working (with all the old api.instagram.com endpoints). There is a new API though: https://developers.facebook.com/products/instagram/
According to the FB graph API documentation: https://developers.facebook.com/docs/graph-api/reference/event/#Creating
Creating
Permissions
An access token of an Admin of the Event if required.
You can make a POST request to live_videos edge from the following paths:
/{event_id}/live_videos
When posting to this edge, an Event will be created.
However this is ambiguous - it seems like its referring to live videos, not creating an event itself.
So my question is, in 2018 after all the Cambridge Analytica API shutdowns and permissions changes, how do I programatically create a Facebook event in Javascript having access to the admin page token?
Thanks
Hitting /me/events, I get this return:
(#12) events management API is deprecated for versions v2.0 and higher"
Similar post here: OAuthException: (#12) events management API is deprecated for versions v2.0 and higher
Live videos can be created on existing events (as you have pointed out). But not the ability to create/manage events.
There're lots of events for this venue:
https://www.facebook.com/pg/ClubRoxyPrague/events/
However when requesting with Graph API we only get a few. Here's link to Graph API explorer:
https://developers.facebook.com/tools/explorer?method=GET&path=ClubRoxyPrague%2Fevents&version=v2.12
Until recently this worked well for us. Maybe it's data access restrictions Facebook announced few days ago: https://newsroom.fb.com/news/2018/04/restricting-data-access/
Why the API returns only some events? Is there any way to fetch all public events hosted by a certain page?
Due to the breaking data access changes you mentioned, it already wasn't possible to access events directly (also see: Unsupported get request in get Facebook event).
It seems like your specific issue is a logical consequence of that decision (although the /{page-id}/events was still available up to today, I personally already found it pretty strange that events were still accessible indirectly).
I set up a Facebook Webhook to notify my app of changes to my business page. Then I did the same with the Messenger platform. Then when I started posting as a user of my page, and sending messages, I found out that the user IDs are different across different pages and apps.
So, facebook provides two endpoints: ids_for_apps, and ids_for_pages. There are quite a few "but"s to use these endpoints, but at least in development mode, and for IDs sent by the Messenger webhook, it works. I get the notification and I'm able too look up the IDs and match to an app id (because maybe the user commented on a photo before contacting me via Messenger)
Now if I try to do the same with a sender_id that I got from the Facebook Webhooks, "feed" subscription, I get the "singular links API is deprecated for versions v2.4 and higher"
The url I try to access, even with Graph API Explorer tool is GET /2.9/{sender_id}/ids_for_apps
What's going on here?
Note: dont think it as repeat of any other similar questions.
We have options to display the 'Invite Friends' dialog using Legacy FBML and javascript (it also uses FBML) and they are working fine.
As facebook states that these FBML are going to be deprecated, is there any other better to way to Invite/ send requests to friends to join an application ..
I'm in the initial phase of my db app development and dont want to use the to be deprecated stuffs.. Is there any option using GRAPH Api?
Edit: I'm using PHP SDK for this app development and is there any function we could use from that?
The requests dialog is currently the only non-deprecated method of inviting your friends to a Facebook application. I doubt there will be a graph api method to create them as it would seem to be too easy to abuse, but getting, clearing and deleting them are available with the graph api.