Следуйте этим указаниям, чтобы создать объявление с помощью Marketing API.
Ознакомьтесь с возможностями Graph API и структурой рекламных кампаний Facebook. Для выполнения вызовов вам понадобятся:
После этого можно начинать работу. Советуем ознакомиться с рекомендациями по использованию Marketing API.
Создайте объект кампании (объект класса Campaign
). На этом этапе нужно указать цель рекламы, которая совпадает с общей целью кампании. Рекомендуем сначала создать кампанию со статусом PAUSED
, чтобы избежать выставления счетов при тестировании.
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
В случае успеха возвращается ID созданной рекламной кампании. Сохраните его. Чтобы убедиться, что кампания создана, можно также найти ее в Ads Manager.
Перед созданием групп объявлений следует определить целевую аудиторию. Затем вы сможете создать группу объявлений и настроить атрибуты аудитории.
Существует множество параметров таргетинга. В этом примере мы используем поиск для таргетинга, чтобы найти предустановленные значения, которые можно использовать для настройки аудитории.
Сначала выполняется поиск среди доступных стран по запросу 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
Затем выполняется поиск среди интересов по запросу movie (фильм):
curl -G \ -d 'type=adinterest' \ -d 'q=movie' \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v<API_VERSION>/search
На основании значений, полученных через вызовы выше, мы можем создать аудиторию людей, которые интересуются фильмами и проживают в США. Параметры таргетинга выглядят следующим образом:
targeting={ "geo_locations": {"countries":["US"]}, "interests": [{id: 6003139266461, 'name': 'Movies'}] }
Группа объявлений — это набор объявлений с общим бюджетом (дневным или на весь срок действия группы), графиком показа, биллингом, а также параметрами оптимизации и таргетинга. На этом шаге нужно создать новый объект класса AdSet
и задать для него следующие параметры:
start_time
и end_time
.optimization_goal
.billing_event
.bid_amount
.Для создания группы объявлений также необходим ID рекламной кампании, сохраненный на шаге 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
Рекомендуем создать группу объявлений со статусом PAUSED
, чтобы избежать списания средств при тестировании.
На этом шаге нужно настроить визуальные элементы объявления с помощью объекта AdCreative
. Информация, которую нужно указать, зависит от выбранной цели. Чаще всего используются:
Для некоторых целей нужно настроить дополнительные поля. Например, чтобы рекламировать приложение для iOS, нужно указать его URL в магазине приложений.
Креатив можно задать как принадлежащий группе объявлений или как независимый. В обоих случаях рекламный креатив сохраняется в библиотеке креативов рекламного аккаунта и используется в объявлениях.
В этом примере показано, как предоставить изображение и создать объект AdCreative
.
Сначала создайте объект AdImage
из файла изображения:
curl \ -F 'filename=@<IMAGE_PATH>' \ -F 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v<API_VERSION>/act_<AD_ACCOUNT_ID>/adimages
Затем создайте 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
Убедитесь, что вы загрузили изображение. Для этого перейдите в Библиотеку медиафайлов в Ads Manager.
На этом этапе AdCreative
с вашей ссылкой ещё не отображается в Ads Manager. Вы увидите эти данные, когда закажете рекламу. Выполнить отладку рекламного креатива и указать поля для чтения можно с помощью Graph API Explorer:
GET /{my-creative-id} HTTP/1.1
Host: graph.facebook.com/?fields=object_story_spec
Теперь создайте объект объявления, с которым будут связаны AdCreative
и AdSet
. Для параметра status
объекта Ad
необходимо задать значение paused
. В противном случае заказ будет оформлен сразу же.
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
Убедитесь, что реклама добавлена в Ads Manager. Нажмите созданную кампанию, затем группу объявлений, а затем объявление.
Когда вы будете готовы заказать рекламу через API, выберите для нее статус active
. Реклама пройдет проверку, на время которой для нее будет установлен статус PENDING_REVIEW
. Когда проверка завершится, статус ACTIVE
будет восстановлен.
Вы также можете скопировать существующие объявления, объекты или кампании. Эта функция позволяет продублировать кампанию, чтобы изменить ее настройки или создать тестовые группы для оценки результативности. Подробнее см. в следующих разделах: