Graph API Version

Graph API Reference /{event-id}/videos

All the videos uploaded to an event's wall.

Publishing

Videos must be encoded as multipart/form-data and published to graph-video.facebook.com instead of the regular Graph API URL.

POST /v2.10/{event-id}/videos HTTP/1.1
Host: graph-video.facebook.com

source=%7Bvideo-data%7D
/* PHP SDK v5.0.0 */
/* make the API call */
$request = new FacebookRequest(
  $session,
  'POST',
  '/{event-id}/videos',
  array (
    'source' => '{video-data}',
  )
);
$response = $request->execute();
$graphObject = $response->getGraphObject();
/* handle the result */
/* make the API call */
FB.api(
    "/{event-id}/videos",
    "POST",
    {
        "source": "{video-data}"
    },
    function (response) {
      if (response && !response.error) {
        /* handle the result */
      }
    }
);
Bundle params = new Bundle();
params.putString("source", "{video-data}");
/* make the API call */
new GraphRequest(
    AccessToken.getCurrentAccessToken(),
    "/{event-id}/videos",
    params,
    HttpMethod.POST,
    new GraphRequest.Callback() {
        public void onCompleted(GraphResponse response) {
            /* handle the result */
        }
    }
).executeAsync();
// For more complex open graph stories, use `FBSDKShareAPI`
// with `FBSDKShareOpenGraphContent`
NSDictionary *params = @{
  @"source": @"{video-data}",
};
/* make the API call */
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
                               initWithGraphPath:@"/{event-id}/videos"
                                      parameters:params
                                      HTTPMethod:@"POST"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection,
                                      id result,
                                      NSError *error) {
    // Handle the result
}];

We support the following formats for uploaded videos:

3g2, 3gp, 3gpp, asf, avi, dat, divx, dv, f4v, flv, m2ts, m4v, mkv, mod, mov, mp4, mpe, mpeg, mpeg4, mpg, mts, nsv, ogm, ogv, qt, tod, ts, vob, wmv.

The aspect ratio of the video must be between 9x16 and 16x9, and the video cannot exceed 1024MB or 20 minutes in length (this limit is 100MB or 10 minutes for un-verified users).

Permissions

To publish a video to a group node, you need publish_actions permission. You can get this from Graph API Explorer.

Limitations

If you upload a video with a multi-part HTTP request or by providing a URL to a video, the video cannot exceed 1024 MB in size and 20 minutes in duration.

When you upload a video as a resumable, chunked upload, your video can be up to 8 GB in size and 45 minutes in duration.

Fields

NameDescriptionType

id

The target ID where the video is posted to.

numeric string

title

The title of the video.

string

description

The description of the video, used as the accompanying status message in any feed story. This parameter can contain mentions of other Facebook Pages using the following syntax:

@[page-id]

For example the following description would mention the Facebook Developers page inline:

Test message @[19292868552] tag

Usage of this feature is subject to review but by using Pages you are an admin of (both to make the API call, and to be used in a mention), and an app you are a developer of, you can test it for yourself before review.

string

source

The video, encoded as form data. This field is required.

multipart/form-data

file_url

Accessible URL of a video file. Cannot be used with upload_phase.

string

thumb

The video thumbnail raw data to be uploaded and associated with a video.

image

upload_phase

Type of chunked upload request.

enum{start, transfer, finish}

file_size

The size of the entire video file in bytes.

unsigned int32

start_offset

Start byte position of the file chunk.

unsigned int32

video_file_chunk

The video file chunk, encoded as form data. This field is required during transfer upload phase.

multipart/form-data

upload_session_id

ID of the chunked upload session.

numeric string

Response

If successful:

Struct {
  id: numeric string,
  upload_session_id: numeric string,
  video_id: numeric string,
  start_offset: numeric string,
  end_offset: numeric string,
  success: bool,
  skip_upload: bool,
}

Reading

You can't read the videos uploaded to an event using this edge.

Deleting

You can't delete using this edge.

Updating

You can't update using this edge.