Entrega anuncios en ubicaciones específicas, por ejemplo, el feed de la computadora o el feed del celular y el video con premio de Audience Network. Solo puedes usar determinadas opciones de ubicación según el objetivo de la campaña. Consulta Campaña, Objetivo y ubicaciones para obtener más información.
Las plataformas y posiciones disponibles son device_platforms
, publisher_platforms
, facebook_positions
, audience_network_positions
, instagram_positions
y messenger_positions
. Consulta la sección Dispositivo, editor y posiciones para obtener más información.
curl -X POST \
-F 'name="My AdSet"' \
-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"
]
},
"publisher_platforms": [
"facebook"
],
"facebook_positions": [
"feed"
]
}' \
-F 'promoted_object={
"page_id": "<PAGE_ID>"
}' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0
/act_<AD_ACCOUNT_ID>/adsets
Si no especificas nada en un determinado campo de ubicación, Facebook considera todas las posiciones predeterminadas posibles para ese campo. Por ejemplo: si configuras publisher_platforms
en facebook
, pero no seleccionas nada en facebook_positions
, Facebook considera todas las posiciones predeterminadas de Facebook, como feed
, right_hand_column
, etc. O, si no seleccionas ninguna opción en publisher_platforms
, Facebook tiene en cuenta todas las publisher_platforms
predeterminadas. Facebook también podría tener en cuenta, de manera automática, todas las nuevas posiciones y plataformas a medida que estén disponibles.
En Audience Network, puedes limitar qué editores pueden mostrar tus anuncios. Excluye editores por categoría o crea una lista personalizada de URL de tiendas de apps o URL de dominio que deseas excluir.
No puedes usar solamente right_hand_column
como ubicación de anuncios de video, colección o Canvas.
El filtro de inventario te ayuda a determinar si tus anuncios se muestran junto a diferentes tipos de contenido en relación con los anuncios en el contenido (videos instream de Facebook, anuncios en Facebook Reels y anuncios en Instagram Reels), anuncios en Audience Network y anuncios en el feed (feed de Facebook, feed de Instagram, feed de Facebook Reels y feed de Instagram Reels). Para obtener más información sobre estas categorías de contenido, consulta el servicio de ayuda para anunciantes, filtro de inventario. Puedes elegir valores distintos para anuncios en el contenido, en Audience Network y en el feed. Las opciones son Expanded
, Moderate
y Limited
. Para obtener más información, consulta a continuación brand_safety_content_filter_levels
:
Nombre | Descripción |
---|---|
matriz <string> | En el caso de los anuncios en el contenido (instream de Facebook y anuncios en Facebook Reels), permitimos estos valores:
Permitimos estos valores de Audience Network:
En el caso de anuncios en el feed (feed de Facebook, feed de Instagram, feed de Facebook Reels y feed de Instagram Reels), permitimos estos valores:
Ejemplo: Nota: Cuando se aplique un filtro en el nivel de la cuenta publicitaria, solo habrá opciones más restrictivas disponibles en el nivel de campaña. Por ejemplo, si la cuenta se configuró en |
matriz <string> | Incluye: |
matriz de <cadenas numéricas> | Cada cadena es un identificador de lista con exclusiones. Crea listas personalizadas en el administrador de anuncios o en la API de marketing, lista de bloqueo de editores. Ejemplo: |
Por ejemplo, para usar brand_safety_content_filter_levels
:
curl \ -F 'name=My AdSet' \ -F 'optimization_goal=REACH' \ -F 'billing_event=IMPRESSIONS' \ -F 'bid_amount=2' \ -F 'daily_budget=1000' \ -F 'campaign_id=CAMPAIGN_ID' \ -F 'targeting= { "geo_locations":{"countries":["US"]}, "brand_safety_content_filter_levels":["FACEBOOK_STRICT","AN_STANDARD"]}' \ -F 'status=ACTIVE' \ -F 'access_token=ACCESS_TOKEN' \ https://graph.facebook.com/VERSION/AD_ACCOUNT_ID/adsets
En Audience Network, y videos instream, también puedes excluir editores por categoría:
Nombre | Descripción |
---|---|
matriz <string> | Incluye:
Ejemplo: |
Nombre: opciones | Descripción |
---|---|
| Opcional. |
| Opcional. |
| Opcional. Notas:
|
| Opcional. |
| Opcional. |
| Opcional. Notas:
|
OR
. publisher_platforms=['facebook','instagram']
significa "entregar anuncios en Facebook e Instagram". AND
. publisher_platforms=['facebook']&device_platforms=['mobile']
significa "entregar estos anuncios solo en Facebook para celulares". publisher_platforms=['instagram']& device_platforms=['desktop']
, se mostrará un error.publisher_platforms: audience_network
no se puede seleccionar por sí solo. audience_network
con el objetivo VIDEO_VIEWS
se debe usar con el objetivo de optimización THRUPLAYS
.story
para facebook_positions
por sí solo. Si seleccionas story
para facebook_positions
, también debes seleccionar feed
de Facebook o story
de Instagram.story
para messenger_positions
por sí solo. Si seleccionas story
para messenger_positions
, también debes seleccionar feed
de Facebook o story
de Instagram.stream
. Además, se comprueba su elegibilidad web para entregarse a feeds web en computadoras y celulares. Los objetivos compatibles son BRAND_AWARENESS
, REACH
, LINK_CLICKS
, POST_ENGAGEMENT
, VIDEO_VIEWS
y CONVERSIONS
.Para usar Facebook Stories como tu ubicación:
curl \ -F 'name=My Ad Set' -F 'optimization_goal=CONVERSIONS' -F 'billing_event=IMPRESSIONS' -F 'bid_amount=2' -F 'daily_budget=1000' -F 'campaign_id=<AD_CAMPAIGN_ID>' -F 'targeting={"geo_locations":{"countries":["US"]}, "publisher_platforms":["messenger", "facebook"], "facebook_positions":["story"], "messenger_positions":["story"]}' -F 'status=ACTIVE' -F 'access_token=<ACCESS_TOKEN>' https://graph.facebook.com/API_VERSION/act_AD_ACCOUNT_ID/adsets
Para crear un conjunto de anuncios con instream_video
como única ubicación que se dirija a uno de los países admitidos mencionados anteriormente:
curl \ -F 'name=My AdSet' \ -F 'optimization_goal=REACH' \ -F 'billing_event=IMPRESSIONS' \ -F 'bid_amount=2' \ -F 'daily_budget=1000' \ -F 'campaign_id=CAMPAIGN_ID' \ -F 'targeting={"geo_locations":{"countries":["US"]},"publisher_platforms":["facebook"], "facebook_positions":["instream_video"]}' \ -F 'status=ACTIVE' \ -F 'access_token=ACCESS_TOKEN' \ https://graph.facebook.com/API_VERSION/act_AD_ACCOUNT_ID/adsets
Para entregar los anuncios en la ubicación de videos con premio de Audience Network:
curl \ -F 'name=My Ad Set' \ -F 'optimization_goal=OFFSITE_CONVERSIONS' \ -F 'billing_event=IMPRESSIONS' \ -F 'is_autobid=true' \ -F 'daily_budget=40000' \ -F 'campaign_id=<AD_CAMPAIGN_ID>' \ -F 'targeting={"app_install_state": "not_installed","geo_locations":{"countries":["US"]},"facebook_positions":["feed"],"device_platforms": ["mobile"],"audience_network_positions": ["classic","rewarded_video"],"user_device": ["Android_Smartphone","Android_Tablet"],"user_os": ["Android_ver_4.4_and_above"]}' \ -F 'promoted_object={"application_id": "<APPLICATION_ID>","custom_event_type": "PURCHASE","object_store_url": "<OBJECT_STORE_URL>"}' \ -F 'status=ACTIVE' \ -F 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/<APIVERSION>/<AD_ACCOUNT_ID>/adsets
Se devuelve lo siguiente:
{ "targeting": { "audience_network_positions": [ "classic", "rewarded_video" ], "effective_audience_network_positions": [ "classic", "rewarded_video" ] }, "id": "<AD_SET_ID>" }
Para usar Facebook Reels como tu ubicación:
curl \ -F 'name=My AdSet' \ -F 'optimization_goal=REACH' \ -F 'billing_event=IMPRESSIONS' \ -F 'bid_amount=2' \ -F 'daily_budget=1000' \ -F 'campaign_id=CAMPAIGN_ID' \ -F 'targeting={"geo_locations":{"countries":["US"]},"publisher_platforms":["facebook"], "facebook_positions":["facebook_reels"]}' \ -F 'status=ACTIVE' \ -F 'access_token=ACCESS_TOKEN' \ https://graph.facebook.com/API_VERSION/act_AD_ACCOUNT_ID/adsets
Para crear un conjunto de anuncios con la ubicación explore_home
que se dirija a uno de los países admitidos (p. ej., "US"):
curl -X POST \
-F 'name="My AdSet"' \
-F 'optimization_goal="LINK_CLICKS"' \
-F 'billing_event="IMPRESSIONS"' \
-F 'bid_amount=2' \
-F 'daily_budget=1000' \
-F 'campaign_id="<AD_CAMPAIGN_ID>"' \
-F 'targeting={
"geo_locations": {
"countries": [
"US"
]
},
"publisher_platforms": [
"instagram"
],
"instagram_positions": [
"stream",
"explore",
"explore_home"
],
}' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0
/act_<AD_ACCOUNT_ID>/adsets
Para crear un conjunto de anuncios con la ubicación ig_search
que se dirija a uno de los países admitidos (p. ej., "US"):
curl -X POST \
-F 'name="My AdSet"' \
-F 'optimization_goal="LINK_CLICKS"' \
-F 'billing_event="IMPRESSIONS"' \
-F 'bid_amount=2' \
-F 'daily_budget=1000' \
-F 'campaign_id="<AD_CAMPAIGN_ID>"' \
-F 'targeting={
"geo_locations": {
"countries": [
"US"
]
},
"publisher_platforms": [
"instagram"
],
"instagram_positions": [
"stream",
"ig_search"
],
}' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0
/act_<AD_ACCOUNT_ID>/adsets
Puedes crear conjuntos de anuncios con ubicaciones en la especificación de segmentación; sin embargo, no siempre sabes si Facebook entregó tu anuncio en las ubicaciones especificadas. Esto se debe a que es posible que la ubicación que seleccionaste no se aplique al objetivo publicitario que elegiste. Con la API de ubicaciones efectivas para segmentación, puedes determinar en qué ubicaciones se entregará tu anuncio según las opciones de segmentación que indicaste, y recibir mensajes de validación para que puedas comprender por qué algunas ubicaciones quedan excluidas. Si no proporcionas segmentación, de todos modos puedes determinar la ubicación efectiva en función de la configuración del conjunto de anuncios y la campaña publicitaria.
Para leer una campaña efectiva según tu segmentación, coloca effective_
delante del nombre del campo de ubicación. Por ejemplo:
curl -G \ -d "fields=targeting{effective_publisher_platforms,effective_facebook_positions,effective_device_platforms,effective_audience_network_positions,effective_instagram_positions}" \ -d "access_token=<access_token>" \ https://graph.facebook.com/<VERSION>/<AD_SET_ID>
Para ver por qué algunas ubicaciones quedaron excluidas, usa el campo recommendation
:
curl -G \ -d "fields=recommendations" \ -d "access_token=<access_token>" \ https://graph.facebook.com/<VERSION>/23842573364570019
Con las publicaciones eficaces, puedes determinar en qué ubicaciones se entrega tu anuncio, en función del billing_event
, el optimization_goal
y el promoted_object
del conjunto de anuncios, y también del buying_type
y el objective
de la campaña. Los parámetros de /ad_campaign_placement
incluyen:
account_id
de la cuenta publicitaria y token de accesobilling_event
, como IMPRESSIONS
AUCTION
POST_ENGAGEMENT
POST_ENGAGEMENT
PIXEL_ID
Se necesitan todos los parámetros, con excepción de promoted_object
y optimization_goal
. Si especificas la segmentación, puedes usar la API de marketing para determinar la ubicación eficaz en función de aquellas compatibles con tu configuración. Consulta Ubicación eficaz con segmentación. Por ejemplo:
curl -G \ -d 'account_id=<ACCOUNT_ID>' \ -d 'billing_event=IMPRESSIONS' \ -d 'buying_type=AUCTION' \ -d 'objective=PAGE_LIKES' \ -d 'optimization_goal=IMPRESSIONS' \ https://graph.facebook.com/<VERSION>/ad_campaign_placement?access_token=<TOKEN>
La llamada devuelve lo siguiente:
{ "effective_device_platforms": [ "mobile", "desktop" ], "effective_facebook_positions": [ "feed", "right_hand_column" ], "effective_publisher_platforms": [ "facebook" ], "recommendations": [ { "title": "Placement Not Supported By Objective", "message": "Ads with PAGE_LIKES objective do not support facebook.instream_video, facebook.suggested_video, facebook.marketplace, audience_network.classic, audience_network.instream_video, audience_network.rewarded_video, instagram.stream, instagram.story, messenger.messenger_home.", "code": 1815609, "importance": "LOW", "confidence": "HIGH", "blame_field": "targeting" }, { "title": "Device Platform Not Supported By Objective", "message": "Ads with PAGE_LIKES objective do not support connected_tv.", "code": 1815610, "importance": "LOW", "confidence": "HIGH", "blame_field": "targeting" } ], } }
Puedes usar el campo code
del resultado en una llamada a /ad-recommendation
para acceder a una explicación detallada. Por ejemplo, puedes obtener esta información:
[{“code”: 1815610, “summary”: “Device Platform Not Supported By Objective”},]
Si quieres obtener más información, consulta Recomendación de anuncios, Referencia y Ubicación eficaz con segmentación.