Veicule anúncios em posicionamentos específicos, como apenas no feed do desktop ou do celular e nos vídeos com incentivo do Audience Network. Dependendo do objetivo da campanha, você só poderá usar algumas opções de posicionamento. Consulte Campanha, objetivos e posicionamento para mais informações.
As plataformas e as posições disponíveis são device_platforms
, publisher_platforms
, facebook_positions
, audience_network_positions
, instagram_positions
e messenger_positions
. Para mais informações, consulte a seção Dispositivo, publisher e posições.
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
Se você não especificar um determinado campo de posicionamento, o Facebook considerará todas as posições-padrão possíveis para esse campo. Por exemplo, se você selecionar publisher_platforms
para facebook
, mas não selecionar nada para facebook_positions
, o Facebook considerará todas as posições-padrão possíveis do Facebook, como feed
, right_hand_column
, entre outras. Se você não selecionar uma opção de publisher_platforms
, o Facebook considerará todas aspublisher_platforms
-padrão. O Facebook também pode considerar automaticamente novas posições ou plataformas disponíveis.
No Audience Network, é possível limitar quais publishers exibem os anúncios. Exclua publishers por categoria ou crie uma lista customizada das URLs da app store ou das URLs de domínio que deseja remover.
Não é possível usar apenas right_hand_column
como posicionamento para vídeo, coleção ou anúncios de canvas.
O filtro de inventário ajuda você a controlar se a publicidade será exibida ao lado de diferentes tipos anúncios no conteúdo (vídeos in-stream do Facebook, anúncios no Facebook Reels e anúncios no Instagram Reels), do Audience Network e de feed (Facebook, Instagram, Facebook Reels e Instagram Reels). Para saber mais sobre as categorias de conteúdo, consulte Como usar o filtro de inventário no Gerenciador de Anúncios da Meta. Você pode escolher valores específicos para anúncios no conteúdo, do Audience Network e de feed. As opções incluem Expanded
, Moderate
e Limited
. Para mais detalhes, veja brand_safety_content_filter_levels
abaixo:
Nome | Descrição |
---|---|
matriz<string> | Para anúncios no conteúdo (in-stream do Facebook e anúncios no Facebook Reels), permitimos estes valores:
Permitimos os seguintes valores para o Audience Network:
Para anúncios de feed (Facebook, Instagram, Facebook Reels e Instagram Reels), permitimos estes valores:
Exemplo: Observação: quando um filtro é aplicado no nível da conta de anúncios, apenas opções mais restritivas ficam disponíveis no nível da campanha. Por exemplo, se a conta estiver definida como |
matriz<string> | Inclui: |
matriz<strings numéricas> | Cada string é a identificação de uma lista de exclusões. Crie listas personalizadas no Gerenciador de Anúncios ou na API de Marketing, lista de bloqueio de publisher. Exemplo: |
Por exemplo, 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
Para o Audience Network e o vídeo in-stream, também é possível excluir publishers por categoria:
Nome | Descrição |
---|---|
matriz<string> | Inclui:
Exemplo: |
Nome: opções | Descrição |
---|---|
| Opcional. |
| Opcional. |
| Opcional. Observações:
|
| Opcional. |
| Opcional. |
| Opcional. Observações:
|
OR
.publisher_platforms=['facebook','instagram']
significa veicular anúncio no Facebook e no Instagram. AND
.publisher_platforms=['facebook']&device_platforms=['mobile']
significa veicular os anúncios apenas no Facebook para dispositivos móveis. publisher_platforms=['instagram']& device_platforms=['desktop']
, você verá um erro.publisher_platforms: audience_network
não pode ser selecionado sozinho. audience_network
com o objetivo VIDEO_VIEWS
precisa ser usado com a meta de otimização THRUPLAYS
.story
para facebook_positions
sozinho. Se você selecionar story
para facebook_positions
, será necessário selecionar também o feed
do Facebook ou o story
do Instagram.story
para messenger_positions
sozinho. Caso selecione story
para messenger_positions
, você também precisará selecionar o feed
do Facebook ou o story
do Instagram.stream
, e a elegibilidade deles é verificada para exibição em feeds da web para desktop e dispositivos móveis. Os objetivos compatíveis são BRAND_AWARENESS
, REACH
, LINK_CLICKS
, POST_ENGAGEMENT
, VIDEO_VIEWS
e CONVERSIONS
.Para usar o Facebook Stories como posicionamento:
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 criar um conjunto de anúncios com apenas o posicionamento instream_video
direcionado a um dos países da lista acima:
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 fazer o direcionamento do posicionamento dos vídeos de incentivo do 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
Retorna:
{ "targeting": { "audience_network_positions": [ "classic", "rewarded_video" ], "effective_audience_network_positions": [ "classic", "rewarded_video" ] }, "id": "<AD_SET_ID>" }
Para usar o Facebook Reels como posicionamento:
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 criar um conjunto de anúncios com o posicionamento explore_home
direcionado a um dos países compatíveis (por exemplo, "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 criar um conjunto de anúncios com o posicionamento ig_search
direcionado a um dos países compatíveis (por exemplo, "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
Você cria conjuntos de anúncios com posicionamentos nas especificações de direcionamento. Entretanto, nem sempre você sabe se o Facebook veiculou o anúncio aos posicionamentos especificados. Isso ocorre porque a seleção de posicionamento talvez não se aplique ao objetivo de publicidade escolhido. Com a API de posicionamentos efetivos para direcionamento, você pode determinar em quais posicionamentos o anúncio será veiculado (considerando as opções de direcionamento) e receber mensagens de validação sobre por que alguns direcionamentos não estão sendo exibidos. Se você não fizer o direcionamento, ainda será possível determinar o posicionamento efetivo com base nas configurações dos conjuntos e das campanhas de anúncio.
Para ler um posicionamento efetivo com base no direcionamento, insira effective_
antes do nome do campo de posicionamento. Por exemplo:
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 que alguns posicionamentos não são exibidos, use o campo recommendation
:
curl -G \ -d "fields=recommendations" \ -d "access_token=<access_token>" \ https://graph.facebook.com/<VERSION>/23842573364570019
Com os posicionamentos efetivos, você pode determinar quais deles o anúncio veiculará com base em billing_event
, optimization_goal
e promoted_object
do seu conjunto de anúncios, bem como buying_type
e objective
da sua campanha de anúncios. Todos os parâmetros para /ad_campaign_placement
incluem o seguinte:
account_id
e token de acesso do anúnciobilling_event
, como IMPRESSIONS
AUCTION
POST_ENGAGEMENT
POST_ENGAGEMENT
PIXEL_ID
Todos os parâmetros são obrigatórios, exceto promoted_object
e optimization_goal
. Se você fornecer o direcionamento, poderá usar a API de Marketing para determinar o posicionamento efetivo com base nos que são permitidos para suas configurações. Consulte Posicionamento efetivo com direcionamento. Por exemplo:
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>
A chamada retorna:
{ "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" } ], } }
É possível usar o campo code
desse resultado em uma chamada a /ad-recommendation
para ver um motivo detalhado. Por exemplo, você pode obter estas informações:
[{“code”: 1815610, “summary”: “Device Platform Not Supported By Objective”},]
Para mais informações, consulte as referências Ad Recommendation e Direcionamento avançado.