La API te permite crear, medir y optimizar fácilmente anuncios con vídeo y por secuencia en Facebook. Consulta Anuncios por secuencia en Facebook para empresas. Para ver los formatos de vídeo que se admiten para los anuncios, consulta la documentación Vídeos en el servicio de ayuda para anunciantes.
Para crear un anuncio con vídeo en un objetivo VIDEO_VIEWS
y optimizar la puja para el alcance, sigue los pasos que se indican a continuación:
Crea un anuncio con vídeo mediante un identificador de vídeo existente y un vídeo subido a Facebook.
Necesitarás lo siguiente:
pages_read_engagement
y ads_management
act_{ad-account-id}/advideos
curl \
-F 'name=Sample Creative' \
-F 'object_story_spec={
"page_id": "<PAGE_ID>",
"video_data": {"image_url":"<THUMBNAIL_URL>","video_id":"<VIDEO_ID>"}
}' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0
/act_<AD_ACCOUNT_ID>/adcreatives
Open In Graph API Explorer
Si quieres ampliar o lanzar campañas de marca para teléfonos básicos en mercados emergentes o crear un vídeo sencillo, prueba las películas con imágenes (deberás incluir como mínimo tres imágenes). Sube imágenes a un activo de vídeo. Por ejemplo:
curl \
-F 'slideshow_spec={
"images_urls": [
"<IMAGE_URL_1>",
"<IMAGE_URL_2>",
"<IMAGE_URL_3>"
],
"duration_ms": 2000,
"transition_ms": 200
}' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph-video.facebook.com/v21.0
/act_<AD_ACCOUNT_ID>/advideos
Open In Graph API Explorer
Consulta Prácticas recomendadas para contenido de vídeo y Referencia: Vídeos publicitarios.
Establece el objetivo en VIDEO_VIEWS
:
curl -X POST \
-F 'name="Video Views campaign"' \
-F 'objective="OUTCOME_ENGAGEMENT"' \
-F 'status="PAUSED"' \
-F 'special_ad_categories=[]' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0
/act_<AD_ACCOUNT_ID>/campaigns
Open In Graph API Explorer
Consulta Referencia: Campaña, AdObjectives en PHP y AdObjectives en Python
Si tu objetivo es lograr el menor coste posible por reproducción, debes emparejar el objetivo de la campaña de reproducción de vídeo con el elemento optimization_goal=THRUPLAY
de un conjunto de anuncios. Puedes establecer bidding_event
en IMPRESSIONS
o THRUPLAY
para que el pago se realice por impresión o reproducción de vídeo. Consulta la documentación Pujas de CPV.
curl \
-F 'name=A CPV Ad Set' \
-F 'campaign_id=<CAMPAIGN_ID>' \
-F 'daily_budget=500' \
-F 'start_time=2024-05-06T04:45:29+0000' \
-F 'end_time=2024-06-06T04:45:29+0000' \
-F 'billing_event=THRUPLAY' \
-F 'optimization_goal=THRUPLAY' \
-F 'bid_amount=100' \
-F 'targeting={
"device_platforms": ["mobile"],
"geo_locations": {"countries":["US"]},
"publisher_platforms": ["facebook"]
}' \
-F 'status=PAUSED' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0
/act_<AD_ACCOUNT_ID>/adsets
Open In Graph API Explorer
Las tarifas de coste por reproducción son inferiores para los conjuntos de anuncios con optimization_goal=THRUPLAY
en comparación con los CPV de compra de alcance y frecuencia optimizada para las reproducciones de vídeo. La fecha de finalización debe establecerse en el futuro. Consulta la documentación Referencia: Conjunto de anuncios.
Usa el conjunto de anuncios y el contenido del anuncio que ya tienes:
curl -X POST \
-F 'name="My Ad"' \
-F 'adset_id="<AD_SET_ID>"' \
-F 'creative={
"creative_id": "<CREATIVE_ID>"
}' \
-F 'status="PAUSED"' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0
/act_<AD_ACCOUNT_ID>/ads
Open In Graph API Explorer
Si el objetivo de campaña es VIDEO_VIEWS
, de manera predeterminada, el anuncio obtiene las especificaciones de seguimiento adecuadas que definen las acciones de las que se realiza un seguimiento para un anuncio. Por ejemplo, las reproducciones de vídeo:
{'action.type':'video_view','post':'POST_ID','post.wall':'PAGE_ID'}
Consulta Administrador de anuncios: Mis campañas y Referencia: Anuncio.
Para crear un anuncio con vídeo para el reconocimiento de marca, consulta el blog de reconocimiento de marca.
Para conseguir que un vídeo llegue a más personas, utiliza el objetivo de la campaña de reproducción de vídeo con Alcance y frecuencia. Deberás crear una predicción, reservarla y asignarla a tu conjunto de anuncios.
Sigue el proceso de creación de reproducción de vídeo, pero aplica el alcance y frecuencia al conjunto de anuncios. Especifica estos parámetros adicionales:
-F "rf_prediction_id=<RESERVATION_ID>" \
Para animar a las personas a pasar del reconocimiento a la acción, consulta Contenido del vídeo en el formato por secuencia.
El remarketing de anuncios con vídeo ayuda a los anunciantes a llegar a ciertas audiencias personalizadas creadas a partir de vídeos orgánicos o patrocinados en Facebook e Instagram. Usa esta función para que las personas avancen desde la fase de reconocimiento hasta otras más avanzadas del embudo, como la afinidad y la consideración. Consulta Investigación: combinaciones de contenido que funcionan.
Si deseas crear una audiencia para un vídeo incluido en una página, necesitas permisos de anunciante en la página.
Para la audiencia, establece subtype=ENGAGEMENT
. A continuación, escribe las reglas para la audiencia que quieras crear. Cada regla tiene un valor de object_id
, como el identificador de vídeo y event_name
. El elemento event_name
es uno de los siguientes:
video_watched
: número de veces que se ha reproducido tu vídeo durante un total de tres segundos como mínimo, o casi en su totalidad, lo que ocurra primero.video_completed
: número de veces que se ha reproducido tu vídeo hasta el 95 % de su duración, incluidas las reproducciones en las que se avanzó hasta este punto.video_view_10s
: número de veces que se ha reproducido tu vídeo durante un total de 10 segundos como mínimo, o casi en su totalidad, lo que ocurra primero. video_watched
: número de veces que se ha reproducido tu vídeo durante un total de 15 segundos como mínimo, o casi en su totalidad, lo que ocurra primero.video_view_25_percent
: número de veces que se ha reproducido tu vídeo hasta el 25 % de su duración, incluidas las reproducciones en las que se avanzó hasta este punto.video_view_50_percent
: número de veces que se ha reproducido tu vídeo hasta el 50 % de su duración, incluidas las reproducciones en las que se avanzó hasta este punto.video_view_75_percent
: número de veces que se ha reproducido tu vídeo hasta el 75 % de su duración, incluidas las reproducciones en las que se avanzó hasta este punto.Puedes combinar vídeos para crear una audiencia basada en diferentes vídeos y acciones. Por ejemplo, una audiencia puede contener reproducciones de tres segundos del vídeo A y reproducciones completas de los vídeos B y C.
Así se crea una audiencia con los espectadores de los últimos 14 días que han visto el vídeo 1 durante al menos tres segundos y los que han visto el vídeo 2 completo. La audiencia también se rellena automáticamente con los espectadores anteriores a la creación de la audiencia mediante prefill=true
.
curl \
-F 'name=Video Ads Engagement Audience' \
-F 'subtype=ENGAGEMENT' \
-F 'description=Users who watched my video' \
-F 'prefill=1' \
-F 'rule=[
{"object_id":"%video_id_1","event_name":"video_watched"},
{"object_id":"%video_id_2","event_name":"video_completed"}
]' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0
/act_<AD_ACCOUNT_ID>/customaudiences
Open In Graph API Explorer
El relleno retrospectivo se admite para las reproducciones de vídeo realizadas a partir del 16 de octubre de 2015.
Los vídeos con llamada a la acción (CTA) invitan a las personas a obtener más información y visitar una página concreta de un sitio web. Se mejora el rendimiento cuando el objetivo principal es aumentar las reproducciones de vídeo o el reconocimiento de marca y, el secundario, generar más clics fuera del sitio web. En el segundo caso, usa un anuncio con vídeo y enlace. Cómo se representan las llamadas a la acción:
Solo puedes usar vídeos con llamadas a la acción con los siguientes objetivos de campaña:
PAGE_LIKES
LINK_CLICKS
CONVERSIONS
VIDEO_VIEWS
BRAND_AWARENESS
Consulta Expansión de vídeo para objetivos adicionales. De este modo, se crea un anuncio con vídeo con la llamada a la acción GET_DIRECTIONS
:
curl \
-F 'object_story_spec={
"page_id": "<PAGE_ID>",
"video_data": {
"call_to_action": {
"type": "GET_DIRECTIONS",
"value": {
"link": "fbgeo:\/\/37.48327, -122.15033, \"1601 Willow Rd Menlo Park CA\""
}
},
"image_url": "<THUMBNAIL_URL>",
"link_description": "Come check out our new store in Menlo Park!",
"video_id": "<VIDEO_ID>"
}
}' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0
/act_<AD_ACCOUNT_ID>/adcreatives
Open In Graph API Explorer
Obtén más información sobre el rendimiento de tus vídeos en Facebook y toma decisiones más fundamentadas sobre tu contenido de vídeo. En este momento, solo proporcionamos los resultados correspondientes a cuando se inicia la visualización de los vídeos: reproducciones de vídeo, reproducciones de vídeo únicas, duración promedio de la reproducción de vídeo y retención de la audiencia. Descubre en qué momento las personas dejan de ver tus vídeos y las partes que posiblemente les parecen más interesantes.
Utiliza la API de insights de anuncios. La respuesta contiene varias métricas de vídeo.
Obtén las estadísticas de los anuncios con vídeo agrupadas por tipo de vídeo (por ejemplo, de reproducción automática o con clic). Incluye action_video_type
en action_breakdowns
. Los valores esperados para action_video_type
son total
, click_to_play
y auto_play
.
Actualmente, nos encontramos en fase de pruebas limitadas para la opción action_video_type
. Para identificar a los clientes con el desglose, consulta CAN_USE_VIDEO_METRICS_BREAKDOWN
para la cuenta publicitaria.
curl -G \
-d 'action_breakdowns=action_video_type' \
-d 'date_preset=last_30_days' \
-d 'fields=actions,video_avg_pct_watched_actions,video_complete_watched_actions' \
-d 'access_token= <ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0
/act_<AD_ACCOUNT_ID>/insights
Open In Graph API Explorer
La respuesta incluye objetos con action_type
como video_view
y contiene una clave action_video_type
:
{ "data": [ { "actions": [ ... { "action_type": "video_play", "value": 9898 }, { "action_type": "video_view", "action_video_type": "total", "value": 921129 }, { "action_type": "video_view", "action_video_type": "auto_play", "value": 915971 }, { "action_type": "video_view", "action_video_type": "click_to_play", "value": 5158 } ], "video_avg_pct_watched_actions": [ { "action_type": "video_view", "action_video_type": "total", "value": 60.59 }, { "action_type": "video_view", "action_video_type": "auto_play", "value": 60.47 }, { "action_type": "video_view", "action_video_type": "click_to_play", "value": 80.63 } ], "video_complete_watched_actions": [ { "action_type": "video_view", "action_video_type": "total", "value": 156372 }, { "action_type": "video_view", "action_video_type": "auto_play", "value": 154015 }, { "action_type": "video_view", "action_video_type": "click_to_play", "value": 2357 } ], "date_start": "2014-12-26", "date_stop": "2015-03-25" } ], "paging": { "cursors": { "before": "MA==", "after": "MA==" } } }
Consulta la API de insights de anuncios.
Obtén más espacio para contenido en la sección de noticias y dirige a las personas a tu sitio web o aplicación para móviles para que realicen una conversión. Puedes crear un anuncio por secuencia de dos formas:
Los anuncios por secuencia no son compatibles con Facebook Stories.
Crea una publicación de la página del anuncio por secuencia mientras creas el contenido del anuncio. Especifica el contenido de la publicación de la página en object_story_spec
. De este modo, se crea una publicación de la página oculta desde adcreatives
. Consulta la documentación Contenido del anuncio. Por ejemplo:
curl \
-F 'name=Sample Creative' \
-F 'object_story_spec={
"link_data": {
"child_attachments": [
{
"description": "$8.99",
"image_hash": "<IMAGE_HASH>",
"link": "https:\/\/www.link.com\/product1",
"name": "Product 1",
"video_id": "<VIDEO_ID>"
},
{
"description": "$9.99",
"image_hash": "<IMAGE_HASH>",
"link": "https:\/\/www.link.com\/product2",
"name": "Product 2",
"video_id": "<VIDEO_ID>"
},
{
"description": "$10.99",
"image_hash": "<IMAGE_HASH>",
"link": "https:\/\/www.link.com\/product3",
"name": "Product 3"
}
],
"link": "<URL>"
},
"page_id": "<PAGE_ID>"
}' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0
/act_<AD_ACCOUNT_ID>/adcreatives
Open In Graph API Explorer
La respuesta es un identificador de contenido:
{"id":"<CREATIVE_ID>"}
Crea una publicación de la página oculta. child_attachments
es una matriz de objetos de enlace. En cada objeto de enlace, picture
, name
y description
son opcionales. Para publicarlos en nombre de la página, necesitas el identificador de acceso a esta.
curl -X GET \
-d 'message="Browse our latest products"' \
-d 'published=0' \
-d 'child_attachments=[
{
"link": "<APP_STORE_URL>",
"name": "Product 1",
"description": "$4.99",
"image_hash": "<IMAGE_HASH>"
},
{
"link": "<APP_STORE_URL>",
"name": "Product 2",
"description": "$4.99",
"image_hash": "<IMAGE_HASH>"
},
{
"link": "<APP_STORE_URL>",
"name": "Product 3",
"description": "$4.99",
"image_hash": "<IMAGE_HASH>"
},
{
"link": "<APP_STORE_URL>",
"name": "Product 4",
"description": "$4.99",
"image_hash": "<IMAGE_HASH>"
}
]' \
-d 'caption="WWW.EXAMPLE.COM"' \
-d 'link="http://www.example.com/products"' \
-d 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0
/<PAGE_ID>/posts
Open In Graph API Explorer
Después, proporciona el contenido del anuncio con la publicación de la página oculta. Utiliza el valor de id
para object_story_id
en el contenido del anuncio.
curl -X POST \
-F 'object_story_id="<PAGE_ID>_<POST_ID>"' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0
/act_<AD_ACCOUNT_ID>/adcreatives
Open In Graph API Explorer
Los anuncios por secuencia con vídeo pueden tener texto en el archivo adjunto dependiente para personalizar la URL de visualización en la pantalla final:
"child_attachments": [ { "link": "https://www.facebookmarketingdevelopers.com/", "name": "Facebook Marketing Developers", "description": "Facebook Marketing Developers", "call_to_action": { "type": "APPLY_NOW", "value": { "link_title": "Facebook Marketing Developers" } }, "video_id": "123", "caption": "mycustomlinkcaption.com" }, ]
Para obtener detalles de los archivos adjuntos dependientes, utiliza el identificador y llama a la API Graph, Vídeo, Referencia.
Limitaciones:
child_attachment
. No tienes que volver a especificar el enlace en call_to_action:{'value':{'link':... }}}
.Por ejemplo, para crear un anuncio por secuencia para obtener descargas de aplicaciones para móviles:
\
curl -X POST \
-F 'name="Carousel app ad"' \
-F 'object_story_spec={
"page_id": "<PAGE_ID>",
"link_data": {
"message": "My message",
"link": "http://www.example.com/appstoreurl",
"caption": "WWW.ITUNES.COM",
"name": "The link name",
"description": "The link description",
"child_attachments": [
{
"link": "http://www.example.com/appstoreurl",
"image_hash": "<IMAGE_HASH>",
"call_to_action": {
"type": "USE_MOBILE_APP",
"value": {
"app_link": "<DEEP_LINK>"
}
}
},
{
"link": "http://www.example.com/appstoreurl",
"image_hash": "<IMAGE_HASH>",
"call_to_action": {
"type": "USE_MOBILE_APP",
"value": {
"app_link": "<DEEP_LINK>"
}
}
},
{
"link": "http://www.example.com/appstoreurl",
"image_hash": "<IMAGE_HASH>",
"call_to_action": {
"type": "USE_MOBILE_APP",
"value": {
"app_link": "<DEEP_LINK>"
}
}
},
{
"link": "http://www.example.com/appstoreurl",
"image_hash": "<IMAGE_HASH>",
"call_to_action": {
"type": "USE_MOBILE_APP",
"value": {
"app_link": "<DEEP_LINK>"
}
}
}
],
"multi_share_optimized": true
}
}' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0
/act_<AD_ACCOUNT_ID>/adcreatives
Solo puedes realizar una publicación como la página de Facebook asociada con la aplicación para móviles y deberás usar un identificador de acceso a esta.
curl \
-F 'message=My description' \
-F 'link=<APP_STORE_URL>' \
-F 'caption=WWW.ITUNES.COM' \
-F 'child_attachments=[
{
"link": "<APP_STORE_URL>",
"image_hash": "<IMAGE_HASH_I>",
"call_to_action": {
"type": "USE_MOBILE_APP",
"value": {"app_link":"<DEEP_LINK_I>","link_title":"<LINK_TITLE_I>"}
}
},
{
"link": "<APP_STORE_URL>",
"image_hash": "<IMAGE_HASH_I>",
"call_to_action": {
"type": "USE_MOBILE_APP",
"value": {"app_link":"<DEEP_LINK_I>","link_title":"<LINK_TITLE_I>"}
}
},
{
"link": "<APP_STORE_URL>",
"image_hash": "<IMAGE_HASH_I>",
"call_to_action": {
"type": "USE_MOBILE_APP",
"value": {"app_link":"<DEEP_LINK_I>","link_title":"<LINK_TITLE_I>"}
}
},
{
"link": "<APP_STORE_URL>",
"image_hash": "<IMAGE_HASH_I>",
"call_to_action": {
"type": "USE_MOBILE_APP",
"value": {"app_link":"<DEEP_LINK_I>","link_title":"<LINK_TITLE_I>"}
}
}
]' \
-F 'multi_share_optimized=1' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0
/<PAGE_ID>/feed
Utiliza id
desde la respuesta para crear el contenido del anuncio:
curl -X POST \
-F 'object_story_id="<PAGE_ID>_<POST_ID>"' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0
/act_<AD_ACCOUNT_ID>/adcreatives
Open In Graph API Explorer
Este es un anuncio por secuencia en iOS que ilustra el uso de los campos descritos.
Nombre | Descripción |
---|---|
Tipo: objeto | Se precisa una matriz de dos a diez elementos de enlace para los anuncios por secuencia. Debes utilizar como mínimo 3 objetos para obtener un rendimiento óptimo; 2 objetos sirven para activar las integraciones ligeras y, si solo utilizas 2, es posible que obtengas resultados de la campaña poco óptimos. |
Tipo: cadena | URL del enlace o de la tienda de aplicaciones adjunta a la publicación. Obligatorio. |
Tipo: URL | Imagen de vista previa asociada al enlace. Usa una relación de aspecto de 1:1 y un tamaño mínimo de 458 x 458 píxeles para obtener una mejor visualización. Se debe especificar |
Tipo: cadena | Hash de la imagen de vista previa asociada con el enlace de tu biblioteca de imágenes. Usa una relación de aspecto de 1:1 y un tamaño mínimo de 458 x 458 píxeles para obtener una visualización óptima. Se debe especificar |
Tipo: cadena | Título de la vista previa del enlace. Si no se especifica, se usará el título de la página vinculada. Normalmente, se trunca después de 35 caracteres. Debes establecer un valor de |
Tipo: cadena | Puede ser un precio, un descuento o un dominio de sitio web. Si no se especifica, se extrae y se usa el contenido de la página vinculada. Normalmente, se trunca después de 30 caracteres. |
Tipo: objeto | Llamada a la acción opcional. Consulta la documentación sobre la llamada a la acción. No tienes que especificar el enlace en |
Tipo: cadena | Identificador del vídeo del anuncio. Se puede usar en cualquier elemento secundario. Si se especifica, también se debe establecer |
Tipo: cadena | Cuerpo principal de la publicación, denominado también “mensaje de estado”. |
Tipo: cadena | URL de un enlace para “Ver más”. Obligatorio. |
Tipo: cadena | URL de visualización en el enlace “Ver más”. No se aplica en los anuncios sobre una aplicación para móviles por secuencia. |
Tipo: booleano | Si se establece en |
Tipo: booleano | Si se establece en |
Agrupa las acciones de los anuncios por secuencia según cada producto con actions_breakdown=['action_carousel_card_id', 'action_carousel_card_name']
. Cada child_attachment
tiene un identificador de tarjeta distinto. action_carousel_card_id
y action_carousel_card_name
solo son para los anuncios por secuencia.
Obtén las siguientes estadísticas para cada tarjeta:
website_ctr
: disponible cuando se especifica fields=['website_ctr']
app_install
, app_use
, apps.uses
, credit_spent
, mobile_app_install
, tab_view
, link_click
, mobile_app_install
, app_custom_event.*
, offsite_conversion.*
: disponible cuando se especifica fields=['actions']
. No hay otras acciones disponibles con desglose por tarjeta.
curl -G \
-d 'action_breakdowns=["action_type","action_carousel_card_id"]' \
-d 'level=ad' \
-d 'date_preset=last_30_days' \
-d 'time_increment=all_days' \
-d 'breakdowns=placement' \
--data-urlencode 'filtering=[
{
"field": "action_type",
"operator": "IN",
"value": ["link_click"]
}
]' \
-d 'fields=impressions,inline_link_clicks,actions,website_ctr' \
-d 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0
/act_<AD_ACCOUNT_ID>/insights
Open In Graph API Explorer
Respuesta:
{ ... "website_ctr": [ { "action_carousel_card_id": "1", "action_type": "link_click", "value": 51.401869158878 }, { "action_carousel_card_id": "2", "action_type": "link_click", "value": 50.980392156863 } ], "placement": "mobile_feed", "date_start": "2015-05-25", "date_stop": "2015-05-28" }
También puedes solicitar cost_per_action_type
para obtener un desglose de los costes según el tipo de acción:
curl -G \
-d 'action_breakdowns=["action_type","action_carousel_card_name"]' \
-d 'level=ad' \
-d 'breakdowns=placement' \
-d 'fields=impressions,campaign_name,cost_per_action_type' \
-d 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0
/act_<AD_ACCOUNT_ID>/insights
Open In Graph API Explorer
Ejemplo de respuesta:
{ "data": [ { "impressions": "1862555", "campaign_name": "My Campaign", "cost_per_action_type": [ { "action_carousel_card_name": "My Carousel Card 1", "action_type": "app_custom_event.fb_mobile_activate_app", "value": 0.093347346315861 }, { "action_carousel_card_name": "My Carousel Card 2", "action_type": "app_custom_event.fb_mobile_activate_app", "value": 0.38324089579301 }, ... ], } ] }
action_report_time=impression
son imprecisas antes del 20 de junio de 2015. action_report_time=conversion
son imprecisas antes del 20 de julio de 2015.Si solo seleccionas right_hand_column
como ubicación, solo puedes utilizar un vídeo o un formato por secuencia en tu grupo de anuncios. No admitimos el formato de vídeo con una sola ubicación right_hand_column
seleccionada. Consulta Ubicación y segmentación avanzadas.
Por ejemplo, crea un conjunto de anuncios con right_hand_column
como tu única ubicación:
curl \
-F 'name=RHS only Ad Set' \
-F 'campaign_id=<CAMPAIGN_ID>' \
-F 'daily_budget=500' \
-F 'start_time=2017-11-21T15:41:36+0000' \
-F 'end_time=2017-11-28T15:41:36+0000' \
-F 'billing_event=IMPRESSIONS' \
-F 'optimization_goal=LINK_CLICKS' \
-F 'bid_amount=100' \
-F 'targeting={
"device_platforms": ["mobile"],
"geo_locations": {"countries":["US"]},
"publisher_platforms": ["facebook"] ,
"facebook_positions": ["right_hand_column"] ,
}' \
-F 'status=PAUSED' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0
/act_<AD_ACCOUNT_ID>/adsets
Open In Graph API Explorer
Proporciona el contenido del anuncio con vídeo:
curl \
-F 'name=Sample Creative' \
-F 'object_story_spec={
"page_id": "<PAGE_ID>",
"video_data": {"image_url":"<THUMBNAIL_URL>","video_id":"<VIDEO_ID>"}
}' \
-F 'access_token=ACCESS_TOKEN' \
https://graph.facebook.com/v21.0
/act_<AD_ACCOUNT_ID>/adcreatives
Open In Graph API Explorer
O bien proporciona un formato de anuncio de Canvas para el contenido del anuncio:
curl \
-F 'image_hash=<IMAGE_HASH>' \
-F 'object_story_spec={
"link_data": {
"call_to_action": {"type":"LEARN_MORE"},
"image_hash": "<IMAGE_HASH>",
"link": "CANVAS_LINK",
"name": "Creative message"
},
"page_id": "<PAGE_ID>"
}' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0
/act_<AD_ACCOUNT_ID>/adcreatives
Open In Graph API Explorer
Con el código siguiente, se intenta crear un anuncio con el conjunto de anuncios y el contenido del anuncio:
curl \
-F 'name=My Ad' \
-F 'adset_id=<AD_SET_ID>' \
-F 'creative={"creative_id":"<CREATIVE_ID>"}' \
-F 'status=ACTIVE' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0
/act_<AD_ACCOUNT_ID>/ads
Open In Graph API Explorer
En caso de obtener un código de error, deberás proporcionar un contenido compatible o cambiar la segmentación.