Узнайте, как показывать рекламу в определенных местах размещения, например только в Ленте на ПК или в Ленте на мобильных устройствах, а также в качестве видео с вознаграждением для Audience Network. В зависимости от цели кампании можно использовать не все места размещения. Дополнительные сведения см. в статье о кампаниях, целях и местах размещения.
Доступны следующие платформы и позиции: device_platforms
, publisher_platforms
, facebook_positions
, audience_network_positions
, instagram_positions
и messenger_positions
. Дополнительные сведения см. в разделе об устройствах, издателях и позициях.
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
Если значение для определенного места размещения не указано, Facebook может использовать все возможные позиции по умолчанию для этого поля. Например, если задать для поля publisher_platforms
значение facebook
, но не задать никакого значения для поля facebook_positions
, Facebook может использовать все варианты по умолчанию для позиций Facebook, такие как feed
, right_hand_column
и т. д. Если же значение publisher_platforms
не указано, Facebook может использовать все варианты publisher_platforms
по умолчанию. Facebook также может автоматически учитывать новые позиции и платформы по мере их появления.
В Audience Network можно ограничить круг издателей, которые демонстрируют ваши объявления. Вы можете исключить издателей на основе категорий или создать собственный список с URL в каталоге приложений или URL доменов, которые требуется исключить.
Для видеорекламы, рекламы с подборкой и рекламы на холсте нельзя использовать в качестве места размещения только right_hand_column
.
Фильтр контента позволяет контролировать отображение рекламы рядом с контентом различного типа для рекламы в контенте (видеореклама In-Stream на Facebook, реклама в Facebook Reels и реклама в Instagram Reels), рекламы в Audience Network и рекламы в лентах (Лента Facebook, Лента Instagram, Лента Facebook Reels и Лента Instagram Reels). Дополнительные сведения об этих категориях контента см. в статье о фильтре контента в Справочном центре для бизнеса. Для рекламы в контенте, рекламы Audience Network и рекламы в ленте можно выбирать разные значения. Возможные варианты: Expanded
, Moderate
и Limited
. Подробные сведения см. в описании поля brand_safety_content_filter_levels
ниже.
Имя | Описание |
---|---|
Массив <string> | Для рекламы в контенте (реклама In-Stream Facebook и реклама в Facebook Reels) допускаются следующие значения:
Для Audience Network допускаются следующие значения:
Для рекламы в лентах (Лента Facebook, Лента Instagram, Лента Facebook Reels и Лента Instagram Reels) допускаются следующие значения:
Пример: Примечание. Если фильтр применяется на уровне рекламного аккаунта, на уровне кампании будут доступны только более жестко ограничивающие параметры. Например, если в аккаунте задано значение |
Массив <string> | Содержит: |
Массив <числовые строки> | Каждая строка представляет собой ID списка исключений. Собственные списки можно создавать в Ads Manager или с помощью инструкций из статьи о списке блокировки издателей в справке по Marketing API. Пример: |
Например, вот так можно использовать 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
Для Audience Network и видеорекламы In-Stream также можно исключать издателей по категориям:
Имя | Описание |
---|---|
Массив <string> | Содержит:
Пример: |
Имя: варианты | Описание |
---|---|
| Необязательный параметр. |
| Необязательный параметр. |
| Необязательный параметр. Примечания
|
| Необязательный параметр. |
| Необязательный параметр. |
| Необязательный параметр. Примечания
|
OR
.publisher_platforms=['facebook','instagram']
означает показ рекламы и на Facebook, и в Instagram. AND
.publisher_platforms=['facebook']&device_platforms=['mobile']
означает показ рекламы только на Facebook для мобильных устройств. publisher_platforms=['instagram']& device_platforms=['desktop']
, отобразится ошибка.publisher_platforms: audience_network
невозможно. audience_network
в сочетании с целью кампании VIDEO_VIEWS
необходимо использовать с целью оптимизации THRUPLAYS
.story
для facebook_positions
нельзя. Если выбран вариант story
для параметра facebook_positions
, необходимо также выбрать feed
для Facebook или story
для Instagram.story
для messenger_positions
нельзя. Если для параметра messenger_positions
выбран вариант story
, необходимо также выбрать feed
для Facebook или story
для Instagram.stream
, и она проверяется на соответствие, чтобы она могла показываться как на ПК, так и на мобильных устройствах. Совместимые цели: BRAND_AWARENESS
, REACH
, LINK_CLICKS
, POST_ENGAGEMENT
, VIDEO_VIEWS
и CONVERSIONS
.Использование историй на Facebook в качестве места размещения:
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
Создание группы объявлений только с местом размещения instream_video
и таргетингом на поддерживаемую страну из списка выше:
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
Использование видео с вознаграждением 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
Возвращаемый результат:
{ "targeting": { "audience_network_positions": [ "classic", "rewarded_video" ], "effective_audience_network_positions": [ "classic", "rewarded_video" ] }, "id": "<AD_SET_ID>" }
Использование Facebook Reels в качестве места размещения:
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
Создание группы объявлений с местом размещения explore_home
и таргетингом на поддерживаемую страну (например, 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
Создание группы объявлений с местом размещения ig_search
и таргетингом на поддерживаемую страну (например, 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
Вы указываете определенные места размещения в спецификациях таргетинга для своих групп объявлений, но не всегда бывает известно, действительно ли ваша реклама была показана на платформах Facebook в заданных местах размещения. Это связано с тем, что выбранное место размещения может не соответствовать указанной цели рекламы. Благодаря API фактических мест размещения для таргетинга можно определить, в каких местах размещения будет демонстрироваться ваша реклама с учетом параметров таргетинга, и вы будете получать подтверждающие сообщения, помогающие понять, почему те или иные места размещения не попали в список. Если таргетинг настраиваете не вы, вы всё равно можете определить фактическое место размещения с помощью группы объявлений или настроек кампании.
Чтобы узнать фактическое место размещения с учетом ваших параметров таргетинга, поставьте перед именем поля места размещения слово effective_
. Пример:
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>
Чтобы понять, почему те или иные места размещения были отфильтрованы, используйте поле recommendation
:
curl -G \ -d "fields=recommendations" \ -d "access_token=<access_token>" \ https://graph.facebook.com/<VERSION>/23842573364570019
Фактические места размещения позволяют определить, где именно будет показана ваша реклама, исходя из следующих параметров группы объявлений: billing_event
, optimization_goal
, promoted_object
, buying_type
и objective
. Параметры /ad_campaign_placement
:
account_id
и маркер доступа;billing_event
например IMPRESSIONS
;AUCTION
;POST_ENGAGEMENT
;POST_ENGAGEMENT
(необязательный параметр);PIXEL_ID
.Все параметры, кроме promoted_object
и optimization_goal
, обязательны. Если вы настроили таргетинг, фактическое место размещения можно определить с помощью Marketing API на основании разрешенных для ваших настроек мест размещения (см. раздел Фактические места размещения с таргетингом). Пример:
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>
Этот вызов возвращает следующее:
{ "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" } ], } }
Чтобы выяснить причину, добавьте поле code
из этого результата в вызов к /ad-recommendation
. Например, при этом можно получить следующую информацию:
[{“code”: 1815610, “summary”: “Device Platform Not Supported By Objective”},]
Подробнее см. в справке по рекомендациям для рекламы и в разделе Фактическое место размещения с таргетингом.