如何使用Graph API以编程方式将事件添加到页面?

fjs*_*jsj 5 events facebook http facebook-graph-api access-token

是否可以使用Facebook Graph API以编程方式将事件添加到页面?如果是,应该发出什么HTTP请求?

例如,Startup Weekend 在其Facebook页面上活动.可以使用Graph API Event对象添加这些事件吗?

ifa*_*our 9

UPDATE

在v2.0 +中不再可以使用API​​创建事件.检查:https://developers.facebook.com/docs/apps/changelog#v2_0


是的,这是可能的.

权限:

  1. create_event
  2. manage_pages

首先,您通过以下方式获取页面ID及其访问令牌:

$facebook->api("/me/accounts");
Run Code Online (Sandbox Code Playgroud)

结果将类似于:

Array
(
    [data] => Array
        (
            [0] => Array
                (
                    [name] => Page Name
                    [category] => Website
                    [id] => XXXXXX
                    [access_token] => XXXXX
                )

            [1] => Array
                (
                    [name] => Page Name 2
                    [category] => Company
                    [id] => XXXXXXX
                    [access_token] => XXXXXXXX
                )
        )

)
Run Code Online (Sandbox Code Playgroud)

更新:要检索页面,access_token您现在可以page直接调用对象,如:

$page_info = $facebook->api("/PAGE_ID?fields=access_token");
Run Code Online (Sandbox Code Playgroud)

如果成功调用,则访问令牌应该是可访问的: $page_info['access_token']

现在您获得了页面ID和访问令牌并使用了events连接:

$nextWeek = time() + (7 * 24 * 60 * 60);
$event_param = array(
    "access_token" => "XXXXXXXX",
    "name" => "My Page Event",
    "start_time" => $nextWeek,
    "location" => "Beirut"
);
$event_id = $facebook->api("/PAGE_ID/events", "POST", $event_param);
Run Code Online (Sandbox Code Playgroud)

你完成了!:-)