user2426290
user2426290

Reputation: 382

facebook realtime subsciption API error

I'm using this link in order to add new subsciption entry:

https://graph.facebook.com/XXX/subscriptions?access_token=YYY&object=payments&callback_url=http://xxx/rlcallback.php&fields=actions,disputes&verify_token=ZZZ

For some reason, I get error:

{
   "error": {
      "message": "(#100) Invalid object. object should be url or open graph object id.",
      "type": "OAuthException",
      "code": 100
   }
}

But the object "payments" inside my link is clearly valid. What am I missing here?

Upvotes: 0

Views: 264

Answers (2)

andyrandy
andyrandy

Reputation: 74004

Make sure you are using the correct parameters: object, callback_url, fields, verify_token...and of course the access_token.

Also (and that may be the problem in this case), you have to use POST, not GET. You can either use CURL with POST to subscribe to the Realtime API, or you just use one of the SDKs as explained in the Facebook docs: https://developers.facebook.com/docs/graph-api/reference/v2.1/app/subscriptions

Here is one example with CURL:

$appsecretProof = hash_hmac('sha256', FBAPPID . '|' . FBSECRET, FBSECRET);
$ch = curl_init();
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
curl_setopt($ch, CURLOPT_TIMEOUT, 60);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_USERAGENT, 'facebook-php');
$postData = 'object=page' .
    '&callback_url=' . urlencode('http://yourdomain.com/callback.php') .
    '&fields=feed' .
    '&verify_token=somethingfancy' .
    '&access_token=' . FBAPPID . '|' . FBSECRET .
    '&appsecret_proof=' . $appsecretProof;
curl_setopt($ch, CURLOPT_URL, 'https://graph.facebook.com/' . FBAPPID . '/subscriptions');
curl_setopt($ch, CURLOPT_POSTFIELDS, $postData);
$curlResult = curl_exec($ch);

Upvotes: 1

David
David

Reputation: 532

you need to specify object, callback_url, fields and verify_token parameters as your curl post parameters

example: curl -F 'object=user' \ -F 'callback_url=' \ -F 'fields=checkins' \ -F 'verify_token=' \ "https://graph.facebook.com//subscriptions?access_token=

Upvotes: 0

Related Questions