Which Facebook APIs can be used to programatically post a message? - facebook

I have an application that allows a user to post messages. I'd like to give an option to users to propagate the same posts on their Facebook wall / status. Which Facebook APIs can I leverage, including the ones that are need to authenticate the user?

You can use Facebook's JS API (useful for client-side), the new Graph API, or the old REST API. Facebook has extensive documentation at http://developers.facebook.com/docs/

The easiest path is probably to use the Facebook.streamPublish() function through the FBJS API.
You can also use streamPublish() through direct Facebook API calls, but you need extended permissions. Using FBJS, Facebook will display their own prompt to the user, so you do not need extended permissions.

Related

Facebook Graph API - Deprecated publish_actions alternative

We have an application that uses the Graph API to publish content on a FB User account using publish_actions permission. This is now deprecated and I am trying to figure out if there is an alternative way to make this happen. After searching for answers in SO I am still not sure if this is possible. According to this post it is not - however other posts and FB documentation itself indicate that the Sharing API is a valid option, although I am not sure if that's totally true. What I need to do is publish a post with no user interaction other than authorizing the app to publish content. Is this possible with this new security model?
Thanks

How to post on friend's wall using facebook API without logging in to facebook?

After latest Facebook API changes, is there any way to post on friend's wall, using authenticated access_token?
I have tried using Feed Dialog, but redirects to facebook login page. I want to bypass the login step.
Unfortunately not. From the Facebook API documentation on publishing:
"Note: If you are posting to a friend's timeline or wall, you must use the Feed Dialog."
Full details: https://developers.facebook.com/docs/reference/api/publishing/
No,You Cant
Currently, Facebook allows to post by two ways:
Using FacebookAPI
Using Facebook SDK (depends on your requirement)
And in both these methods its must that you should be an authorised user to perform the action, authentication is a must.So you can't do this without a login.
NB: As per the Facebook Developer docs, graph API no longer works .(But I would like to add on that many of the iOS apps which used this service are still functioning well). So, I prefer to use Facebook SDK.
Hope my answer is clear.

Post status update to Page Wall

I'am really new to all this Facebook development, and I wanted to integrate Facebook within my personal website.
I am now trying to test if what I want is possible.
I want to post a status from my server, via php/js to my Page in Facebook.
How can I do so?
B.W.
I saw that there is this FBJS function called "Facebook.streamPublish"
But I don't know how to integrate it.
Is there any possible way to do so?
Can you give me an example?
-Secondly, what is an access token?
You get an access_token after facebook authenticates you. You will need this access_token for all subsequent API calls. You can find the details here:
http://developers.facebook.com/docs/authentication/
You can use graph API for publishing on the wall and doing other allowed actions. Details of publishing api can be found here:
http://developers.facebook.com/docs/reference/api/post/
But do have a look on the facebook policy, because publishing automatically to a wall is considered violation.
http://developers.facebook.com/policy/

Facebook Graph API

Can I use the Facebook Graph API without the creation of my Facebook Application? As I understand it, for each operation I need to use the OAuth key. And I can only get user OAuth key if they authorize my Facebook application. Am I right?
I need to get user feed, and post to it.
Facebook Graph Api needs your APP ID which you can only get from your Facebook application. So i think its not possible to post data on facebook without having Application ID.
You can use this tool to dynamically generate an access_token for testing: https://developers.facebook.com/tools/explorer/
Also, check out RapidAPI here. I've specifically linked you to the FacebookGraphAPI block. Here you can instantaneously connect to numerous Facebook endpoints. The platform will generate a code snippet that you can directly insert into your code.
Depends on what you want to do, for most tasks you have to have an app id... but If you want to get the amount of shares for a certain page, for example, you can do it with no app ID.
I think there is FBML (facebooks mark up language) which you can embed on your site which can handle some basic tasks like commenting or liking.
No, You can't do that as Facebook Graph API needs access token which u can get only by authorising your logged-in user by your (Created) App in Facebook.

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!