Aprende a implementar la administración de contenido creativo.
La gestión de contenido creativo solo está disponible para un grupo selecto de socios. Ponte en contacto con tu socio de Meta para obtener más información.
Para usar esta API, necesitarás lo siguiente:
Después de iniciar sesión en tu app, tendrás que pedir a tus usuarios los siguientes permisos:
business_creative_management
: permite administrar carpetas de contenido del negocio y contenido del negocio. Obligatorio para todos los puntos de conexión de la API del administrador de activos de contenido. business_creative_insights
: permite acceder a estadísticas de activos de contenido del negocio.business_management
: permite administrar usuarios empresariales y aceptar solicitudes de acuerdo de colaboración.Crea una carpeta de contenido del negocio en representación del negocio del anunciante realizando una solicitud POST
al punto de conexión {business-id}/creative_folders
. En este caso, {business-id}
es el identificador del negocio del anunciante.
Se necesita el permiso business_creative_management
para realizar esta acción.
curl -X POST \ -F 'name={folder-name}' \ -F 'access_token={access-token}' \ https://graph.facebook.com/<API_VERSION>/<BUSINESS_ID>/creative_folders
{ “id”: “{business-creative-folder-id}” }
También puedes crear subcarpetas.
Agrega activos de contenido existentes a una carpeta realizando una solicitud POST
a {business-id}/images
o {business-id}/videos
. Necesitas el permiso business_creative_management
para realizar esta acción.
Ejemplo; para agregar una imagen:
curl -X POST \ -F 'bytes={image-content-in-bytes-format}' \ -F 'name={image-name}' \ -F 'access_token={access-token}' \ -F 'creative_folder_id={business-creative-folder-id}' \ https://graph.facebook.com/{version}/{business-id}/images
Respuesta
{ "images":{ "{image-name}":{ "id":"{business-image-id}", "hash":"{hash}", "url":"{image-url}" } } }
Sube un video en una sola solicitud si su tamaño es de unos pocos megabytes o súbelo en segmentos. Haz la llamada a la API para subir video en graph-video.facebook.com
en lugar de graph.facebook.com
.
Ejemplo: envía una solicitud POST
a {business-id}/video
e incluye el nombre de tu video, el origen y el identificador de la carpeta de contenido del negocio.
curl -X POST \ -F 'name={video-name}' \ -F 'source='@{video-path}'' \ -F 'access_token={access-token}' \ -F 'creative_folder_id={business-creative-folder-id}' \ https://graph-video.facebook.com/{version}/{business-id}/videos
Respuesta
{ "success": true, "business_video_id": "{business-video-id}" }
Para vídeos más grandes, envía una solicitud start
, una o varias solicitudes transfer
y una solicitud finish
.
Para realizar una solicitud start
y crear una sesión de subida de video, envía una solicitud POST
a /{business-id}/videos
, establece el campo upload_phase
en start
y especifica file_size
, en bytes.
curl -X POST \ -F 'title={video-name}' \ -F 'creative_folder_id={business-creative-folder-id}' \ -F 'access_token={access-token}' \ -F 'upload_phase=start' \ -F 'file_size={video_file_size_in_bytes}' \ https://graph-video.facebook.com/<API_VERSION>/<BUSINESS_ID>/videos
Ejemplo de respuesta
{ "upload_session_id": "{session-id}", "business_video_id": "{business-video-id}", "video_id": "{video-id}", "start_offset": "0", "end_offset": "52428800" }
Para subir [0, 52428800]
de tu video, segmenta el archivo según los intervalos de inicio y finalización, y, a continuación, envía esos segmentos con solicitudes transfer
. Te enviamos nuevos intervalos por cada segmento. Usa estos nuevos intervalos para subir cada segmento.
Ejemplo: envía tu primer segmento
curl -X POST \ -F 'title={video-name}' \ -F 'access_token={access-token}' \ -F 'creative_folder_id={business-creative-folder-id}' \ -F 'upload_phase=transfer' \ -F 'upload_session_id={session-id}' \ -F 'start_offset=0' \ -F 'video_file_chunk=@{binary-chunk-filename}' \ https://graph-video.facebook.com/<API_VERSION>/<BUSINESS_ID>/videos
Si la operación se realiza correctamente, responderemos con los intervalos de tu próximo segmento:
{ "start_offset": "52428800", //Start byte position of the next file chunk. "end_offset": "104857601" //End byte position of the next file chunk. }
Corta y sube el segundo segmento con el intervalo [52428800, 104857601]
de tu archivo y envíalo:
curl -X POST \ -F 'title={video-name}' \ -F 'access_token={access-token}' \ -F 'creative_folder_id={business-creative-folder-id}' \ -F 'upload_phase=transfer' \ -F 'start_offset=52428801' \ -F 'upload_session_id={your-upload-sesson-id}' \ -F 'video_file_chunk={binary-chunk-filename}' \ https://graph-video.facebook.com/<API_VERSION>/<BUSINESS_ID>/videos
Envía todos los segmentos adicionales hasta que start_offset
sea equivalente a end_offset
:
{ "start_offset": "152043520", "end_offset": "152043520" }
Esto querrá decir que subiste todo el archivo. Ahora debes publicar este video y cerrar la sesión de subida.
curl -X POST \ -F 'title={video-name}' \ -F 'access_token={access-token}' \ -F 'creative_folder_id={business-creative-folder-id}' \ -F 'upload_phase=finish' \ -F 'upload_session_id={session-id}' \ https://graph-video.facebook.com/<API_VERSION>/<BUSINESS_ID>/videos
Si recibes errores durante una subida, puedes intentar subirlo de nuevo. Normalmente, los errores se deben a problemas en respuestas. Intenta nuevamente subir el segmento que falló. Para obtener más información sobre errores, consulta:
Una vez que subas contenido a una carpeta, los anunciantes con acceso a ella pueden crear anuncios en el administrador de anuncios o con la API de marketing.
Todo el contenido subido aparece en Administrador de anuncios > Selección de contenido multimedia de la UI. Puedes usarlo en Creación de anuncios y Edición de anuncios. Además, las carpetas y los activos de contenido están disponibles en la herramienta de la biblioteca de contenido multimedia del administrador comercial, en Administrador comercial > Biblioteca multimedia.
Para obtener la URL del enlace profundo de un activo específico, realiza una consulta al campo media_library_url
de la imagen o del activo de video subido:
curl -X GET \ -F 'access_token={partner-access-token}' \ https://graph.facebook.com/v<API_VERSION>/<asset_id>?fields=media_library_url
Para usar tu enlace profundo y crear un anuncio o una publicación de página, agrega &action=CREATE_AD
o &action=CREATE_POST
al final del enlace:
https://business.facebook.com/asset_library/business_creatives/?object_id=<OBJECT_ID>&action=CREATE_AD