versión API Graph

Este perímetro se ha retirado y ya no se puede utilizar.

Vídeos de eventos /{event-id}/videos

Usa este extremo para publicar vídeos en un evento. Para eliminar o actualizar un vídeo existente, utiliza el nodo /{video-id}.

Creación

Para publicar un vídeo en 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 vídeos se deben codificar como multipart/form-data.
  • Si subes un vídeo mediante una solicitud HTTP de varias partes o proporcionando una URL a un vídeo, el tamaño del vídeo no puede superar 1 GB de tamaño y 20 minutos de duración.
  • Las subidas de vídeo reanudables pueden ser de hasta 1,75 GB y 45 minutos de duración.

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 y .wmv.

Permisos

A partir del 24 de abril de 2018, el permiso pubish_actions está eliminado. Consulta el registro de cambios disruptivos para obtener más detalles. Si quieres proporcionar a los usuarios de la aplicación una forma de compartir contenido en Facebook, te recomendamos que, en su lugar, utilices nuestros productos para compartir contenido.

Este extremo necesita un identificador de acceso de usuario con el permiso publish_actions.

Campos

Nombre Descripción Tipo

id

Identificador de destino en el que se publica el vídeo.

numeric string

title

Título del vídeo.

string

description

Descripción del vídeo, que se usa como mensaje de estado adjunto en cualquier historia del feed. Este parámetro puede contener menciones de otras páginas de Facebook con la sintaxis siguiente:

@[page-id]

Por ejemplo, la descripción siguiente mencionaría la página de Facebook Developers:

Test message @[19292868552] tag

El uso de esta función está sujeto a revisión, pero si utilizas páginas que administras (tanto para realizar la llamada a la API como para mencionarlas) y una aplicación de la que eres desarrollador, puedes testearla antes de la revisión.

string

source

El vídeo codificado como datos de formulario. Este campo es obligatorio.

multipart/form-data

file_url

URL accesible de un archivo de vídeo. No se puede usar con upload_phase.

string

thumb

Datos sin formato de la miniatura de vídeo que se van a subir y asociar a un vídeo.

image

upload_phase

Tipo de solicitud de subida segmentada.

enum{start, transfer, finish}

file_size

Tamaño del archivo de vídeo completo en bytes.

unsigned int32

start_offset

Posición de byte de inicio del fragmento de archivo.

unsigned int32

video_file_chunk

Fragmento del archivo de vídeo codificado como datos de formulario. Este campo es obligatorio durante la fase de subida transfer.

multipart/form-data

upload_session_id

Identificador de la sesión de subida segmentada.

numeric string

Respuesta

Si la operación se completa 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 leer los vídeos que se han subido a un evento con este perímetro.

Actualización

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

Eliminación

No puedes eliminar mediante este perímetro.