---
metadata:
  - name: generator
    content: Diplodoc Platform v5.52.0
alternate:
  - https://yandex.com/dev/direct/doc/en/best-practice/cpm-banner.md
  - https://yandex.com/dev/direct/doc/ru/best-practice/cpm-banner.md
  - href: ru/best-practice/cpm-banner.md
    type: text/markdown
    title: Markdown version
  - href: ../llms.txt
    type: text/markdown
    title: llms.txt
sourcePath: ru/dg/best-practice/cpm-banner.md
---
> **Documentation Index:** Fetch the complete configuration index at https://yandex.com/dev/direct/doc/ru/llms.txt

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

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

Медийная кампания может содержать группы объявлений разных форматов. API Директа в настоящее время поддерживает медийные баннеры и медийные видеообъявления. Подробнее об этих форматах читайте в разделе [Медийные баннеры](https://yandex.ru/support/direct/products-cpm-campaign/about.html) и [Видеореклама](https://yandex.ru/support/direct/products-cpm-campaign-video/about.html) Справки Директа.

## Управление кампаниями {#feed}

{% note alert %}

Создание креативов в конструкторе и загрузка креативов в настоящее время доступны только в веб-интерфейсе.

{% endnote %}

1. Создайте кампанию с типом `CPM_BANNER_CAMPAIGN`: в методе [Campaigns.add](https://yandex.ru/dev/direct/doc/ref-v5/campaigns/add.html) передайте структуру [CpmBannerCampaign](https://yandex.ru/dev/direct/doc/ref-v5/campaigns/add-cpm-banner-campaign.html).

   Об особенностях работы с этим типом кампаний читайте в разделе [Тип кампании](https://yandex.com/dev/direct/doc/ru/objects/campaign.md#type).

   О доступных стратегиях показа читайте в разделе [Стратегии показа](https://yandex.com/dev/direct/doc/ru/objects/campaign-strategies.md).

   О других параметрах кампаний читайте в разделе [Параметры кампании](https://yandex.com/dev/direct/doc/ru/objects/campaign-params.md).

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

### Медийные баннеры {#feed}

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

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

   - Чтобы создать группу с условием нацеливания по профилю пользователей, в методе [AdGroups.add](https://yandex.ru/dev/direct/doc/ref-v5/adgroups/add.html) передайте пустую структуру `CpmBannerUserProfileAdGroup`.

   {% note info %}

   В группе с условием нацеливания по профилю пользователей не допускаются минус-фразы.

   {% endnote %}

   - Чтобы создать группу с ключевыми фразами, в методе [AdGroups.add](https://yandex.ru/dev/direct/doc/ref-v5/adgroups/add.html) передайте пустую структуру `CpmBannerKeywordsAdGroup`.

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

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

   {% list tabs %}

   - Профиль пользователей

      1. Получите справочники сегментов Крипты по социально-демографическим характеристикам и поведенческим признакам, а также справочники сегментов Крипты по интересам пользователя: метод [Dictionaries.get](https://yandex.ru/dev/direct/doc/ref-v5/dictionaries/get.html), в запросе укажите имена справочников `AudienceDemographicProfiles` и `AudienceInterests`.

      1. Создайте профиль пользователей: метод [RetargetingLists.add](https://yandex.ru/dev/direct/doc/ref-v5/retargetinglists/add.html).

         Профиль пользователей реализован как условие ретаргетинга и подбора аудитории с типом `AUDIENCE`. Подробнее о профиле читайте в разделе [Условие ретаргетинга и подбора аудитории (RetargetingList)](https://yandex.com/dev/direct/doc/ru/objects/retargeting-list.md).

      1. Добавьте профиль пользователей в группу объявлений: метод [AudienceTargets.add](https://yandex.ru/dev/direct/doc/ref-v5/audiencetargets/add.html).

         В случае если в кампании выбрана ручная стратегия показа, назначить ставку на профиль пользователей можно сразу при добавлении профиля в группу объявлений или в дальнейшем с помощью метода [AudienceTargets.setBids](https://yandex.ru/dev/direct/doc/ref-v5/audiencetargets/setBids.html).

   - Ключевые фразы

      Добавьте ключевые фразы: метод [Keywords.add](https://yandex.ru/dev/direct/doc/ref-v5/keywords/add.html).

      Ставки и приоритеты можно назначить сразу при создании ключевых фраз или в дальнейшем с помощью метода [KeywordBids.set](https://yandex.ru/dev/direct/doc/ref-v5/keywordbids/set.html) или [KeywordBids.setAuto](https://yandex.ru/dev/direct/doc/ref-v5/keywordbids/setAuto.html).

      Добавление автотаргетингов в группу медийных объявлений не допускается.

   {% endlist %}

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

   1. Создайте креативы в конструкторе креативов или загрузите готовые креативы в веб-интерфейсе Директа. См. раздел [Как запустить медийную кампанию](https://yandex.ru/support/direct/products-cpm-campaign/create.html) Справки Директа.
   1. Получите идентификаторы доступных креативов с типом `HTML5_CREATIVE` и `IMAGE_CREATIVE`: метод [Creatives.get](https://yandex.ru/dev/direct/doc/ref-v5/creatives/get.html).
   1. Добавьте одно или несколько объявлений с типом `CPM_BANNER_AD`: метод [Ads.add](https://yandex.ru/dev/direct/doc/ref-v5/ads/add.html). Параметры объявления нужно передать в структуре `CpmBannerAdBuilderAd`.

1. Отправьте объявления на модерацию: метод [Ads.moderate](https://yandex.ru/dev/direct/doc/ref-v5/ads/moderate.html).

### Видеообъявления {#video-ads}

1. Создайте группу объявлений: в методе [AdGroups.add](https://yandex.ru/dev/direct/doc/ref-v5/adgroups/add.html) передайте пустую структуру `CpmVideoAdGroup`.

1. Добавьте в группу условие нацеливания по профилю пользователей.

   1. Получите справочники сегментов Крипты по социально-демографическим характеристикам и поведенческим признакам, а также справочники сегментов Крипты по интересам пользователя: метод [Dictionaries.get](https://yandex.ru/dev/direct/doc/ref-v5/dictionaries/get.html), в запросе укажите имена справочников `AudienceDemographicProfiles` и `AudienceInterests`.

   1. Создайте профиль пользователей: метод [RetargetingLists.add](https://yandex.ru/dev/direct/doc/ref-v5/retargetinglists/add.html).

   Профиль пользователей реализован как условие ретаргетинга и подбора аудитории с типом `AUDIENCE`. Подробнее о профиле читайте в разделе [Условие ретаргетинга и подбора аудитории (RetargetingList)](https://yandex.com/dev/direct/doc/ru/objects/retargeting-list.md).

   1. Добавьте профиль пользователей в группу объявлений: метод [AudienceTargets.add](https://yandex.ru/dev/direct/doc/ref-v5/audiencetargets/add.html).

   В случае если в кампании выбрана ручная стратегия показа, назначить ставку на профиль пользователей можно сразу при добавлении профиля в группу объявлений или в дальнейшем с помощью метода [AudienceTargets.setBids](https://yandex.ru/dev/direct/doc/ref-v5/audiencetargets/setBids.html).

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

   1. Создайте креативы в конструкторе креативов в веб-интерфейсе Директа. См. раздел [Видеореклама / Как запустить кампанию](https://yandex.ru/support/direct/products-cpm-campaign-video/create.html) Справки Директа.

   1. Получите идентификаторы доступных креативов с типом `CPM_VIDEO_CREATIVE`: метод [Creatives.get](https://yandex.ru/dev/direct/doc/ref-v5/creatives/get.html).

   1. Добавьте одно или несколько объявлений с типом `CPM_VIDEO_AD`: метод [Ads.add](https://yandex.ru/dev/direct/doc/ref-v5/ads/add.html). Параметры объявления нужно передать в структуре `CpmVideoAdBuilderAd`.

1. Отправьте объявления на модерацию: метод [Ads.moderate](https://yandex.ru/dev/direct/doc/ref-v5/ads/moderate.html)..

## Получение статистики {#stat}

Статистику кампаний с типом «Медийная кампания» можно получить с помощью сервиса [Reports](https://yandex.ru/dev/direct/doc/reports/reports.html). В отчете можно получить среднюю стоимость тысячи показов, среднюю частоту показа одному пользователю и количество уникальных пользователей, которым был показан баннер.

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

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

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

```javascript translate=no
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/v501/reports
```
