2016-04-01 5 views
3

So weiß ich, wie man jede Seite überprüft, um eine Liste aller abonnierten Anwendungen zu erhalten.Facebook graph api. Wie listet man alle Seiten auf, die meine App abonniert hat?

Aber ich möchte eine Liste aller Seiten erhalten, für die meine App Echtzeit-Update-Abonnements hat?

so habe ich diese

https://graph.facebook.com/v2.5/ $ app_id/Abonnements? Access_token = $ app_token versucht, aber das bringt nur grundlegende Informationen über die App zurück.

Ich möchte eine Liste der Seiten, die es bereits abonniert hat?

Kann jemand helfen?

Antwort

1

Dies scheint nicht möglich zu sein.

Endpunkt, den Sie verwenden - https://developers.facebook.com/docs/graph-api/reference/v2.8/app/subscriptions - ist eine Liste der Anwendung Webhooks (callback_url und Art der Änderungen), die aus irgendeinem Grund Abonnements genannt werden. Es geht nicht um Seiten, die diesen Webhook abonniert haben (oder diese App im Allgemeinen).

Insgesamt sogar in https://developers.facebook.com/apps/ für Ihre App unter z. Messenger Registerkarte, sehen Sie nur Teilmenge von allen Seiten, die diese App abonniert haben. Die sichtbare Teilmenge wird durch Ihre Facebook-Benutzerkontoberechtigungen eingeschränkt. Vermutlich zeigen Sie nur Seiten an, die Sie entweder als Administrator oder als Redakteur verwenden.

Wenn also ein solcher Aufruf möglich wäre, wäre er irgendwie mit dem Benutzerzugriffstoken verbunden, nicht nur mit dem App-Token.

0

Sie können dies hier tun: https://developers.facebook.com/tools/explorer

Einmal angemeldet, können Sie auf die rechte Maustaste klicken und wählen Sie "User Access Token Get". Sie benötigen mindestens die Berechtigung manage_pages oder pages_show_list, um dies zu erreichen.

Jetzt müssen Sie nur noch diesen Endpunkt aufrufen:/me/accounts.

Es sollte alle abonnierten Seiten in Ihrer App auflisten.

Ich hoffe, es hilft.

0

Per https://developers.facebook.com/docs/facebook-login/access-tokens/#apptokens es möglich ist (Diagramm api):

GET /oauth/access_token 
?client_id={app-id} 
&client_secret={app-secret} 
&grant_type=client_credentials 

Und dann /<app_id>/subscriptions

die liefert so etwas wie:

{ 
    "data": [ 
    { 
     "object": "application", 
     "callback_url": "https:...", 
     "active": true, 
     "fields": [ 
     { 
      "name": "ads_rules_engine", 
      "version": "v2.9" 
     } 
     ] 
    }, 
    { 
     "object": "page", 
     "callback_url": "https://...", 
     "active": true, 
     "fields": [ 
     { 
      "name": "leadgen", 
      "version": "v2.5" 
     } 
     ] 
    } 
    ] 
}