Как работать с медийными кампаниями

Медийная кампания — это реклама с оплатой за показы в Директе. Объявления показываются в Рекламной сети Яндекса на десктопах и мобильных устройствах, а также на цифровых билбордах.

Медийная кампания может содержать группы объявлений разных форматов. API Директа в настоящее время поддерживает медийные баннеры и медийные видеообъявления. Подробнее об этих форматах читайте в разделе Медийные баннеры и Видеореклама помощи Директа.

Управление кампаниями

Ограничение. Создание креативов в конструкторе и загрузка креативов в настоящее время доступны только в веб-интерфейсе.
  1. Создайте кампанию с типом CPM_BANNER_CAMPAIGN: в методе Campaigns.add передайте структуру CpmBannerCampaign.

    Об особенностях работы с этим типом кампаний читайте в разделе Тип кампании.

    О доступных стратегиях показа читайте в разделе Стратегии показа.

    О других параметрах кампаний читайте в разделе Параметры кампаний.

  2. В медийную кампанию вы можете добавить группы медийных баннеров и группы видеообъявлений.

Медийные баннеры

  1. Создайте группу объявлений.

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

    • Чтобы создать группу с условием нацеливания по профилю пользователей, в методе AdGroups.add передайте пустую структуру CpmBannerUserProfileAdGroup.
      Примечание. В группе с условием нацеливания по профилю пользователей не допускаются минус-фразы.
    • Чтобы создать группу с ключевыми фразами, в методе AdGroups.add передайте пустую структуру CpmBannerKeywordsAdGroup.

    Изменить подтип группы в дальнейшем невозможно.

  2. Добавьте в группу условия показа.

    1. Получите справочники сегментов Крипты по социально-демографическим характеристикам и поведенческим признакам, а также справочники сегментов Крипты по интересам пользователя: метод Dictionaries.get, в запросе укажите имена справочников AudienceDemographicProfiles и AudienceInterests.
    2. Создайте профиль пользователей: метод RetargetingLists.add.

      Профиль пользователей реализован как условие ретаргетинга и подбора аудитории с типом AUDIENCE. Подробнее о профиле читайте в разделе Условие ретаргетинга и подбора аудитории (RetargetingList).

    3. Добавьте профиль пользователей в группу объявлений: метод AudienceTargets.add.

      В случае если в кампании выбрана ручная стратегия показа, назначить ставку на профиль пользователей можно сразу при добавлении профиля в группу объявлений или в дальнейшем с помощью метода AudienceTargets.setBids.

  3. Добавьте в группу объявления:

    1. Создайте креативы в конструкторе креативов или загрузите готовые креативы в веб-интерфейсе Директа. См. раздел Как запустить медийную кампанию помощи Директа.
    2. Получите идентификаторы доступных креативов с типом HTML5_CREATIVE и IMAGE_CREATIVE: метод Creatives.get.
    3. Добавьте одно или несколько объявлений с типом CPM_BANNER_AD: метод Ads.add. Параметры объявления нужно передать в структуре CpmBannerAdBuilderAd.
  4. Отправьте объявления на модерацию: метод Ads.moderate.

Видеообъявления

  1. Создайте группу объявлений: в методе AdGroups.add передайте пустую структуру CpmVideoAdGroup.
  2. Добавьте в группу условие нацеливания по профилю пользователей.
    Профиль пользователей
    1. Получите справочники сегментов Крипты по социально-демографическим характеристикам и поведенческим признакам, а также справочники сегментов Крипты по интересам пользователя: метод Dictionaries.get, в запросе укажите имена справочников AudienceDemographicProfiles и AudienceInterests.
    2. Создайте профиль пользователей: метод RetargetingLists.add.

      Профиль пользователей реализован как условие ретаргетинга и подбора аудитории с типом AUDIENCE. Подробнее о профиле читайте в разделе Условие ретаргетинга и подбора аудитории (RetargetingList).

    3. Добавьте профиль пользователей в группу объявлений: метод AudienceTargets.add.

      В случае если в кампании выбрана ручная стратегия показа, назначить ставку на профиль пользователей можно сразу при добавлении профиля в группу объявлений или в дальнейшем с помощью метода AudienceTargets.setBids.

  3. Добавьте в группу объявления:
    1. Создайте креативы в конструкторе креативов в веб-интерфейсе Директа. См. раздел Видеореклама / Как запустить кампанию помощи Директа.
    2. Получите идентификаторы доступных креативов с типом CPM_VIDEO_CREATIVE: метод Creatives.get.
    3. Добавьте одно или несколько объявлений с типом CPM_VIDEO_AD: метод Ads.add. Параметры объявления нужно передать в структуре CpmVideoAdBuilderAd.
  4. Отправьте объявления на модерацию: метод Ads.moderate.

Получение статистики

Статистику кампаний с типом «Медийная кампания» можно получить с помощью сервиса Reports. В отчете можно получить среднюю стоимость тысячи показов, среднюю частоту показа одному пользователю и количество уникальных пользователей, которым был показан баннер.

В запросе на формирование отчета укажите:

  • В параметре Type — тип отчета REACH_AND_FREQUENCY_PERFORMANCE_REPORT.
  • В структуре Filter — один или несколько идентификаторов медийных кампаний. Фильтр по кампаниям обязателен для этого типа отчета.
  • В массив FieldNames добавьте значения CampaignId, AvgCpm, AvgImpressionFrequency, ImpressionReach.

Пример запроса

curl \
  -H 'Authorization: Bearer 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f' \
  -H 'Accept-Language: en' \
  -H 'Client-Login: agrom' \
  -H 'returnMoneyInMicros: false' \
  -d '{
    "params": {
      "SelectionCriteria": {
        "Filter": [{
          "Field": "CampaignId",
          "Operator": "IN",
          "Values": [ "10012", "10017" ]
        }]
      },
      "FieldNames": [ "CampaignId", "Impressions", "Clicks", "Cost", "AvgCpm", "AvgImpressionFrequency", "ImpressionReach" ], 
      "OrderBy": [{
        "Field": "CampaignId"
      }],
      "ReportName": "Display campaigns",
      "ReportType": "REACH_AND_FREQUENCY_PERFORMANCE_REPORT",
      "DateRangeType": "LAST_WEEK",
      "Format": "TSV",
      "IncludeVAT": "YES",
      "IncludeDiscount": "YES"
    }
  }' \
  https://api.direct.yandex.com/json/v5/reports