Статистика Директа по API
Выгружает статистику Яндекс Директа для анализа, автоматизации и внешних дашбордов.
Что можно получить
- · Статистику по кампаниям и группам объявлений за выбранный период
- · Данные по дням, неделям, месяцам или суммарно
- · Показы, клики, расходы, конверсии, доход и другие доступные показатели
- · Несколько целей и моделей атрибуции в одной логической выгрузке
Как пользоваться
- · Через скилл: опишите нужные данные обычным или точным запросом
- · Через API: создавайте разовые выгрузки и расписания из своих инструментов
- · PerfOps сам разбивает большую выгрузку на части и собирает единый результат
Регулярное обновление
- · Расписание запускает выгрузку автоматически
- · Постоянная ссылка всегда отдаёт последний успешный результат
- · Ошибка новой попытки не заменяет предыдущий успешный файл
Надёжное выполнение
- · После запуска выгрузка продолжается в фоне — страницу можно закрыть
- · Состояние выгрузки обновляется автоматически до успешного завершения или ошибки
- · При ошибке PerfOps возвращает безопасный код, сообщение, подсказку и признак возможности повтора
Отличие от «Отчётов Директа»
- · Этот продукт предназначен для получения статистики по API и автоматического обновления данных
- · «Отчёты Директа» нужны для работы с таблицей в PerfOps и массовых действий в рекламном кабинете
Как получить статистику
Используйте скилл, если нужно описать данные обычными словами. Используйте API, если ваш инструмент уже знает точный запрос. PerfOps проверяет запрос, показывает нормализации, сам делит работу по ограничениям Директа и возвращает один результат.
Надёжное выполнение
После принятия запроса PerfOps продолжает выгрузку в фоне. Закрытая вкладка не останавливает выгрузку, а проверка состояния не запускает её заново.
Проверяйте links.self с интервалом poll_after_seconds, пока состояние не станет succeeded, failed, cancelled или expired. Готовый файл доступен по links.result.
При ошибке используйте безопасные поля error.code, error.message, error.hint и error.retryable. Ответ не содержит токен или исходный ответ Директа.
Работа через скилл
Опишите данные, которые нужны: кабинет, период, кампании, уровни, показатели, цели и модели атрибуции. Скилл соберёт точный запрос и покажет все нормализации.
Для разовой выгрузки скилл создаёт один export. Для внешнего дашборда скилл один раз создаёт расписание и отдельный ключ чтения. После этого PerfOps обновляет данные сам.
Штатный helper сам ждёт завершения разовой выгрузки и показывает итог. Если процесс прервался, команда resume продолжает тот же export и не создаёт новый. CSV скачивается только по явной команде пользователя.
Пакет скилла временно недоступен. Работайте через API или повторите попытку позже.
Код нужен только при настройке: для разовой выгрузки или при первом создании расписания. После создания расписания PerfOps обновляет его сам. Внешний дашборд не вводит код и не запускает скилл. Он использует отдельный ключ только для чтения последнего успешного результата одного расписания.
Source-session не является общим server-to-server ключом.
Cookie, пароль и source-session не передаются агенту. Право source_export:writeуправляет только выгрузками PerfOps и не даёт доступ на изменение объектов Директа.
Пример точного запроса
Передайте этот объект в POST /api/source-exports/preflight. LSC будет явно нормализована в LSCCD.
{
"recipe": {
"consumer": "api_client",
"source": "direct",
"connection_id": "dcn_example",
"account_login": "example-account",
"capability_id": "direct.reports.performance",
"params": {
"date_from": "2026-06-01",
"date_to": "2026-07-31",
"campaign_selector": {
"kind": "name_filter",
"include_mode": "any",
"include_terms": ["search"],
"exclude_terms": ["referral", "education", "bnp"]
},
"views": [
{"id": "adgroups_monthly", "level": "adgroup", "granularity": "monthly"}
],
"metrics": ["Impressions", "Clicks", "Cost", "Conversions"],
"goal_ids": ["123456789", "987654321"],
"attribution_models": ["LC", "LSC"]
},
"destination": {"kind": "object_storage", "format": "csv"},
"request_context": {}
}
}Пример ежедневного полного снимка
Сначала передайте объект в POST /api/source-export-schedules/preflight, затем создайте расписание по полученному preflight_id.
{
"recipe": {
"consumer": "api_client",
"source": "direct",
"connection_id": "dcn_example",
"account_login": "example-account",
"capability_id": "direct.reports.performance",
"params": {
"date_from": "2026-01-01",
"date_to": "{{schedule.interval_end_date_minus_1d}}",
"campaign_selector": {"kind": "all"},
"views": [{"id": "campaign_daily", "level": "campaign", "granularity": "daily"}],
"metrics": ["Impressions", "Clicks", "Cost"]
},
"destination": {"kind": "object_storage", "format": "csv"},
"request_context": {}
},
"schedule": {"kind": "daily", "time": "06:00", "timezone": "Europe/Moscow"}
}Описание доступно без входа. Войдите, чтобы управлять выгрузками и расписаниями.
Войти