Sigue estos pasos para crear tu primer anuncio con la API de marketing.
Familiarízate con la API Graph y la estructura de campañas publicitarias de Facebook. Una vez que esté todo listo para empezar con las llamadas, necesitarás lo siguiente:
Cuando tengas todo esto, podrás empezar. No olvides consultar las prácticas recomendadas generales para usar la API de marketing.
Para empezar el proceso, crea un objeto de campaña nuevo desde la clase Campaign
. Debes definir un objetivo para los anuncios, que corresponde al objetivo general de la campaña. Te recomendamos usar el estado PAUSED
cuando crees la campaña para que no se te facture nada mientras haces 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 realizó correctamente, te proporcionaremos un identificador para la campaña publicitaria nueva que creaste. Recuerda guardar el identificador. También puedes verificar si se creó la campaña en el administrador de anuncios.
Antes de empezar a crear conjuntos de anuncios, debes definir el público objetivo. En el próximo paso, debes crear el conjunto de anuncios y especificar los atributos del público.
Tienes muchas opciones de segmentación. En este ejemplo, usamos la búsqueda de segmentación para buscar valores predefinidos que se puedan usar para configurar el público.
Primero, busquemos países disponibles que incluyan la palabra "unido(s)":
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
Luego, podemos buscar intereses que incluyan la palabra "película":
curl -G \ -d 'type=adinterest' \ -d 'q=movie' \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v<API_VERSION>/search
De acuerdo con los valores que devolvieron las búsquedas anteriores, sabemos que podemos crear un público de personas en los Estados Unidos que estén interesadas en películas. La especificación de la segmentación tiene el siguiente aspecto:
targeting={ "geo_locations": {"countries":["US"]}, "interests": [{id: 6003139266461, 'name': 'Movies'}] }
Un conjunto de anuncios es un grupo de anuncios que comparte el presupuesto (diario o total), el calendario, la facturación, la optimización y los datos de segmentación. En este paso, debes crear un objeto nuevo a partir de la clase AdSet
y especificar los siguientes valores:
start_time
y end_time
para definir esta opción.optimization_goal
para configurar este valor.billing_event
.bid_amount
.Para crear tu conjunto de anuncios, también necesitas el identificador de la campaña 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
Recomendamos crear un conjunto de anuncios con el estado PAUSED
para evitar que se te cobre durante las pruebas.
En este paso, usarás el objeto AdCreative
para proporcionar los elementos visuales de tu anuncio. La información que deberás proporcionar dependerá de tu objetivo, pero los atributos más comunes son los siguientes:
Según tu objetivo, es posible que debas completar campos avanzados. Por ejemplo, los anuncios sobre una app para iOS requieren que agregues una URL de la tienda de apps.
Puedes definir contenido como parte de un conjunto de anuncios o de manera independiente. En cualquier caso, almacenamos el contenido del anuncio en la biblioteca de contenido de tu cuenta publicitaria para que lo uses en los anuncios.
En el siguiente ejemplo se muestra cómo proporcionar una imagen y crear el objeto AdCreative
.
Primero, crea el 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
Después, usa el hash de 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 comprobar que la imagen se haya subido, ve a tu biblioteca multimedia en el administrador de anuncios.
En este momento, los datos de AdCreative
con tu enlace aún no pueden verse en el administrador de anuncios. Verás los datos cuando reserves el anuncio. Puedes depurar los errores del contenido de tu anuncio con el explorador de la API Graph y especificar todos los campos que desees leer:
GET /{my-creative-id} HTTP/1.1
Host: graph.facebook.com/?fields=object_story_spec
Por último, crea el objeto anuncio de modo que quede vinculado con AdCreative
y AdSet
. Define el valor status
de tu Ad
como paused
para no realizar un pedido en ese momento.
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 que el anuncio exista en el administrador de anuncios. Haz clic en la campaña que creaste; en el conjunto de anuncios; y, por último, en el anuncio.
Cuando te hayas familiarizado con el proceso de reservar anuncios con la API, define el estado como active
. Primero, el anuncio se somete a una revisión de anuncios, y tiene el estado PENDING_REVIEW
. Cuando finaliza la revisión, recupera el estado ACTIVE
.
Como alternativa, puedes copiar un anuncio, un activo o una campaña preexistente. De esa forma, puedes duplicar una campaña rápidamente para cambiar la configuración o crear grupos de prueba que brinden información sobre el rendimiento. Para obtener más información, consulta: