Para crear tu primer anuncio con la API de marketing, sigue los pasos siguientes.
Deberías familiarizarte con la API Graph y la estructura de las campañas publicitarias de Facebook. Cuando tengas todo listo para empezar a hacer llamadas, necesitarás lo siguiente:
Después, podrás empezar a trabajar. No te olvides de consultar las prácticas recomendadas generales sobre el uso de la API de marketing.
Para iniciar el proceso, crea un nuevo objeto de campaña a partir de la clase Campaign
. En esta fase, debes establecer un objetivo para tus anuncios, que será el objetivo general de la campaña. Te recomendamos crear una campaña que inicialmente tenga el estado PAUSED
para que no te facturemos mientras realizas las pruebas.
curl -X POST \
-F 'name="My campaign"' \
-F 'objective="OUTCOME_TRAFFIC"' \
-F 'status="PAUSED"' \
-F 'special_ad_categories=[]' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0/act_<AD_ACCOUNT_ID>/campaigns
Si la operación se realiza correctamente, se devuelve un identificador para la campaña publicitaria recién creada. No te olvides de guardarlo. También puedes verificar si se ha creado la campaña en el Administrador de anuncios.
Antes de crear tus conjuntos de anuncios, debes definir la audiencia objetivo. En el paso siguiente, crea un conjunto de anuncios y especifica los atributos de la audiencia.
Existen muchas opciones de segmentación. En este ejemplo, usamos la búsqueda de segmentación a fin de encontrar valores predefinidos que se puedan usar para configurar una audiencia.
En primer lugar, buscamos los países disponibles que incluyan la palabra “united”:
curl -G \ -d 'location_types=["country"]' \ -d 'type=adgeolocation' \ -d 'q=united' \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v<API_VERSION>/search Open In Graph API ExplorerOpen In Postman
Posteriormente, podemos buscar los intereses que incluyan la palabra “movie”:
curl -G \ -d 'type=adinterest' \ -d 'q=movie' \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v<API_VERSION>/search
Los valores que devuelven las llamadas anteriores determinan que se puede crear una audiencia de personas de los Estados Unidos a las que interesan las películas. La especificación de segmentación tiene un aspecto similar al siguiente:
targeting={ "geo_locations": {"countries":["US"]}, "interests": [{id: 6003139266461, 'name': 'Movies'}] }
Un conjunto de anuncios es un grupo de anuncios que comparten los mismos datos en lo que respecta al presupuesto diario o del conjunto de anuncios, la programación, la facturación, la optimización y la segmentación. En este paso, debes crear un nuevo objeto a partir de la clase AdSet
y especificar lo siguiente:
start_time
y end_time
.optimization_goal
.billing_event
.bid_amount
.Para crear el conjunto de anuncios, también necesitas el identificador de la campaña publicitaria que guardaste en el paso 1:
curl -X POST \
-F 'name="My Reach Ad Set"' \
-F 'optimization_goal="REACH"' \
-F 'billing_event="IMPRESSIONS"' \
-F 'bid_amount=2' \
-F 'daily_budget=1000' \
-F 'campaign_id="<AD_CAMPAIGN_ID>"' \
-F 'targeting={
"geo_locations": {
"countries": [
"US"
]
},
"facebook_positions": [
"feed"
]
}' \
-F 'status="PAUSED"' \
-F 'promoted_object={
"page_id": "<PAGE_ID>"
}' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0/act_<AD_ACCOUNT_ID>/adsets
Te recomendamos crear un conjunto de anuncios con el estado PAUSED
para evitar cargos durante las pruebas.
En este paso, usarás el objeto AdCreative
para proporcionar los elementos visuales del anuncio. La información que debes proporcionar dependerá de tu objetivo, pero los atributos más comunes son los siguientes:
En función de cuál sea tu objetivo, es posible que tengas que completar los campos de las opciones avanzadas. Por ejemplo, los anuncios dirigidos a aplicaciones para iOS requieren una URL de App Store.
Puedes definir contenido como parte de un conjunto de anuncios o independiente. En cualquier caso, el contenido del anuncio se almacena en la biblioteca de contenido de la cuenta publicitaria para usarlo en los anuncios.
En este ejemplo se muestra cómo proporcionar una imagen y crear el objeto AdCreative
.
Primero, crea un objeto AdImage
a partir de un archivo de imagen:
curl \ -F 'filename=@<IMAGE_PATH>' \ -F 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v<API_VERSION>/act_<AD_ACCOUNT_ID>/adimages
A continuación, usa el hash de la imagen para crear el objeto AdCreative
:
curl -X POST \ -F 'name="Sample Creative"' \ -F 'object_story_spec={ "page_id": "<PAGE_ID>", "link_data": { "image_hash": "<IMAGE_HASH>", "link": "https://facebook.com/<PAGE_ID>", "message": "try it out" } }' \ -F 'degrees_of_freedom_spec={ "creative_features_spec": { "standard_enhancements": { "enroll_status": "OPT_IN" } } }' \ -F 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v<API_VERSION>/act_<AD_ACCOUNT_ID>/adcreatives Open In Graph API ExplorerOpen In Postman
Para verificar si la imagen se ha subido, accede a la Biblioteca multimedia, en el Administrador de anuncios.
En este punto, el objeto AdCreative
con el enlace todavía no está visible en el Administrador de anuncios. Verás estos datos una vez reserves el anuncio. Puedes depurar el contenido del anuncio con el explorador de la API Graph y especificar los campos que quieras leer:
GET /{my-creative-id} HTTP/1.1
Host: graph.facebook.com/?fields=object_story_spec
Por último, crea el objeto de anuncio para enlazar los objetos AdCreative
y AdSet
. Establece el valor de status
del objeto Ad
en paused
para evitar hacer un pedido al instante.
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
Verifica si existe el anuncio en el Administrador de anuncios. Haz clic en la campaña que acabas de crear y, luego, en el conjunto de anuncios y en el anuncio.
Cuando estés completamente familiarizado con la reserva de anuncios mediante la API, establece el estado en active
. En primer lugar, el anuncio se somete a una revisión de anuncios y tiene el estado PENDING_REVIEW
. Cuando se completa la revisión, vuelve al estado ACTIVE
.
Como alternativa, puedes copiar un anuncio, un activo o una campaña existentes. De esta manera, puedes duplicar rápidamente una campaña para modificar las opciones de configuración o crear grupos de prueba y extraer información sobre el rendimiento. Para obtener más información, consulta las siguientes secciones: