Вы можете использовать следующее решение
$photo = './images/logo-square.png';// Must be an image on your server
$event_info = array(
"privacy_type" => "OPEN",
"name" => "Event Title",
"page_id" => YOUR_PAGE_ID,
"start_time" => "2012-01-22 09:00:00",
"end_time" => "2012-02-22 09:00:00",
"description" => "Event Description"
);
//The key part - The path to the file with the CURL syntax
$event_info[basename($photo)] = '@' . realpath($photo);
//Make the call and get back the event ID
$result = $this->facebook->api($this->id.'/events','post',$event_info);
Если вы абсолютно хотите сделать это в JS, создайте ajax для выполнения этого кода и возврата идентификатора события ($ result ["id"])
Я сделал это, и это сработало отлично.
ps: Спасибо Адаму Хиту, который нашел решение на Прикрепить изображение к событию Facebook (php sdk, rest или graph api)