Начало работы

Следуйте этим указаниям, чтобы создать объявление с помощью API Marketing.

Прежде чем начать

Ознакомьтесь с возможностями API Graph и структурой рекламных кампаний Facebook. Для выполнения вызовов вам понадобятся:

После этого можно начинать работу. Советуем ознакомиться с рекомендациями по использованию Marketing API.

Шаг 1. Создание кампании

Создайте объект кампании (объект класса 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/v<API_VERSION>/act_<AD_ACCOUNT_ID>/campaigns

В случае успеха возвращается ID созданной рекламной кампании. Сохраните его. Чтобы убедиться, что кампания создана, можно также найти ее в Ads Manager.

Ресурсы:

Шаг 2. Настройка таргетинга

Перед созданием групп объявлений следует определить целевую аудиторию. Затем вы сможете создать группу объявлений и настроить атрибуты аудитории.

Существует множество параметров таргетинга. В этом примере мы используем поиск для таргетинга, чтобы найти предустановленные значения, которые можно использовать для настройки аудитории.

Сначала выполняется поиск среди доступных стран по запросу 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

Затем выполняется поиск среди интересов по запросу 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'}]
}

Шаг 3. Создание группы объявлений и выбор бюджета, биллинга, параметров оптимизации и продолжительности

Группа объявлений — это набор объявлений с общим бюджетом (дневным или на весь срок действия группы), графиком показа, биллингом, а также параметрами оптимизации и таргетинга. На этом шаге нужно создать новый объект класса AdSet и задать для него следующие параметры:

  • Продолжительность — как долго будет показываться реклама. Задайте ее в параметрах start_time и end_time.
  • Бюджет — сумма, которую вы готовы потратить. Используйте daily_budget или lifetime_budget.
  • Оптимизация — результаты, которые вы хотите получить. Для настройки используйте optimization_goal.
  • Биллинг — как вы собираетесь оплачивать расходы на рекламу. Используйте billing_event.
  • Ставка — какую ценность имеет для вас событие оптимизации. Используйте поле bid_amount.
  • Таргетинг — используйте параметры таргетинга, созданные на шаге 2.

Для создания группы объявлений также необходим ID рекламной кампании, сохраненный на шаге 1:

curl \
  -F 'name=My Ad Set' \
  -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"]}, "interests": [{id: 6003139266461, "name": "Movies"}]}' \
  -F 'start_time=2024-10-06T04:45:17+0000' \
  -F 'status=PAUSED' \
  -F 'access_token=<ACCESS_TOKEN>' \
  https://graph.facebook.com/v<API_VERSION>/act_<AD_ACCOUNT_ID>/adsets

Рекомендуем создать группу объявлений со статусом PAUSED, чтобы избежать списания средств при тестировании.

Шаг 4. Предоставление рекламного креатива

Справочная документация

На этом шаге нужно настроить визуальные элементы объявления с помощью объекта 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

Убедитесь, что вы загрузили изображение. Для этого перейдите в Библиотеку медиафайлов в Ads Manager.

На этом этапе AdCreative с вашей ссылкой ещё не отображается в Ads Manager. Вы увидите их, когда закажете рекламу. Выполнить отладку рекламного креатива и указать поля для чтения можно с помощью Graph API Explorer:

GET /{my-creative-id} HTTP/1.1
Host: graph.facebook.com/?fields=object_story_spec

Шаг 5. График показа

Теперь создайте объект объявления, с которым будут связаны AdCreative и AdSet. Для параметра status объекта Ad необходимо задать значение paused. В противном случае заказ будет оформлен сразу же.

curl -X POST \
  -F 'name="My Ad"' \
  -F 'adset_id="&lt;AD_SET_ID&gt;"' \
  -F 'creative={
       "creative_id": "<CREATIVE_ID>"
     }' \
  -F 'status="PAUSED"' \
  -F 'access_token=<ACCESS_TOKEN>' \
  https://graph.facebook.com/v<API_VERSION>/act_<AD_ACCOUNT_ID>/ads

Убедитесь, что реклама добавлена в Ads Manager. Нажмите созданную кампанию, затем группу объявлений, а затем объявление.

Когда вы будете готовы заказать рекламу через API, выберите для нее статус active. Реклама пройдет проверку, на время которой для нее будет установлен статус PENDING_REVIEW. Когда проверка завершится, статус ACTIVE будет восстановлен.

Копирование рекламы

Вы также можете скопировать существующие объявления, объекты или кампании. Эта функция позволяет продублировать кампанию, чтобы изменить ее настройки или создать тестовые группы для оценки результативности. Подробнее см. в следующих разделах: