- Go to the Graph API Explorer
- Choose your app from the dropdown menu
- Click "Get Access Token"
- Choose the
manage_pages
permission (you may need theuser_events
permission too, not sure) - Now access the
me/accounts
connection and copy your page'saccess_token
- Click on your page's id
- Add the page's
access_token
to the GET fields - Call the connection you want (e.g.:
PAGE_ID/events
)
See here if you want to grant a Facebook App permanent access to a page (even when you / the app owner are logged out):
http://developers.facebook.com/docs/opengraph/using-app-tokens/
"An App Access Token does not expire unless you refresh the application secret through your app settings."
The documentation for this is good if not a little difficult to find.
Facebook Graph API - Page Tokens
After initializing node's fbgraph, you can run:
var facebookAccountID = yourAccountIdHere graph .setOptions(options) .get(facebookAccountId + "/accounts", function(err, res) { console.log(res); });
and receive a JSON response with the token you want to grab, located at:
res.data[0].access_token
I was attempting to retrieve the Page access token from Graph API Explorer, but I did not have the option to select the Page.
It turns out that I was not an admin of the page. I was an admin of the Facebook App, and the App had access to the Facebook page, enabling me to access the page as well. This caused the confusion and chaos.