API Graph versión

Este perímetro quedó obsoleto y ya no se puede usar.

Videos de eventos /{event-id}/videos

Usa este punto de conexión para publicar videos de un evento. Para eliminar o actualizar un video, usa el nodo /{video-id}.

Creación

Para publicar el video de un evento, envía una solicitud POST al perímetro /{event-id}/videos en graph-video.facebook.com.

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

source=%7Bvideo-data%7D
/* PHP SDK v5.0.0 */
/* make the API call */
try {
  // Returns a `Facebook\FacebookResponse` object
  $response = $fb->post(
    '/{event-id}/videos',
    array (
      'source' => '{video-data}',
    ),
    '{access-token}'
  );
} catch(Facebook\Exceptions\FacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(Facebook\Exceptions\FacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
$graphNode = $response->getGraphNode();
/* 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();
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
}];

Limitaciones

  • Los videos deben estar codificados como multipart/form-data.
  • Si subes un video mediante una solicitud HTTP de varias partes o por medio de la URL de un video, este no puede exceder el tamaño de 1 GB ni puede durar más de 20 minutos.
  • Los videos que se suben pueden ser de 1,75 GB y pueden durar hasta 45 minutos.

Formatos admitidos

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.

Permisos

El 24 de abril de 2018, se eliminó el permiso pubish_actions. Consulta el registro de cambios radicales para obtener más información. Si necesitas que los usuarios de la app compartan contenido en Facebook, te recomendamos que uses los productos con la función de compartir.

Este punto de conexión requiere un token de acceso de usuario con el permiso publish_actions.

Campos

Nombre Descripción Tipo

id

La identificación de destino en donde se publica el video.

numeric string

title

El título del video.

string

description

La descripción del video, que se usa como el mensaje de estado que acompaña a cualquier historia de feed. Este parámetro puede incluir menciones de otras páginas de Facebook por medio de la siguiente sintaxis:

@[page-id]

Por ejemplo, la siguiente descripción mencionaba la página en línea de los desarrolladores de Facebook:

Test message @[19292868552] tag

El uso de esta función está sujeto a revisión, pero, si usas las páginas que administras (tanto para la llamada a la API como para ser usada en una mención) y una aplicación que tú hayas desarrollado, puedes probarla por tu cuenta antes de la revisión.

string

source

El video, codificado como datos de forma. Este campo es obligatorio.

multipart/form-data

file_url

URL accesible de un archivo de video. No se puede usar con upload_phase.

string

thumb

Los datos sin procesar de la imagen en miniatura del video se subirán y vincularán a un video.

image

upload_phase

Tipo de solicitud de carga por partes.

enum{start, transfer, finish}

file_size

El tamaño del archivo de video completo en bytes.

unsigned int32

start_offset

Posición inicial del byte de la parte del archivo.

unsigned int32

video_file_chunk

La parte del archivo, codificada como datos de forma. Este campo es obligatorio durante la fase de carga transfer.

multipart/form-data

upload_session_id

Identificación de la sesión subida en partes.

numeric string

Respuesta

Si la operación se realiza correctamente:

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,
}

Lectura

No puedes reproducir los videos de un evento que se subieron con este perímetro.

Actualización

No puedes realizar la actualización si usas este perímetro.

Eliminación

No puedes eliminar nada con este perímetro.