Запросить формирование отчета

Метод для запроса на формирование отчета по reportName.

В отличие от POST /api/v2/reports в теле не принимаются dimensions, metrics, filters: они берутся из конфигурации отчета.

POST /api/v2/reports/{reportName}

Характеристика

Значение

Метод

POST

Путь

/api/v2/reports/{reportName}

Заголовки

Content-Type: application/json (обязателен)

Успех

200 OK

Параметры

Поле

Тип

Обязательность

Описание

dateRange

object

Да

Период отчета. Поля from и to в формате YYYY-MM-DD.

level для fixed отчетов

string

Да

Доступные уровни отчета:

  • owner — общий отчет;
  • supercampaign — на уровне суперкампании;
  • campaign — на уровне кампании;
  • banner — на уровне баннера;
  • site — на уровне сайта;
  • section — на уровне раздела;
  • place — на уровне рекламного места.

level для custom отчетов

string

Да

level = owner

objectId

integer

Опционально

Идентификатор объекта уровня (для campaign — id кампании и т. д.); для уровня owner обычно опускается.

ownerId

integer

Опционален для администратора / ассистента, обязателен для рекламодателя / владельца сайта.

Аккаунт администратора (см. раздел Авторизация).

Поведение по reportName:

  • если reportName совпадает с одним из предзаданных названий отчета — запускается предзаданный отчет;
  • если reportName имеет форму custom_<id> и принадлежит пользователю — запускается сохраненный отчет;
  • level и objectId из тела игнорируются (для конструктора всегда OWNER);
  • иначе возвращается 404 REPORT_NOT_FOUND.

Объект dateRange

Поле

Тип

Описание

from

string

Обязательно, не пусто: дата YYYY-MM-DD (календарная).

to

string

Должно выполняться from ≤ to.

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

curl --request POST \
  --url https://adfox.yandex.ru/api/v2/reports/custom_1809 \
  --header 'authorization: OAuth y0_AgAA***' \
  --header 'content-type: application/json' \
  --data '{
  "dateRange": {
    "from": "2026-01-01",
    "to": "2026-05-31"
  },
  "level": "owner"
}'

Успешный ответ (200 OK)

{
  "result": {
    "taskId": "umr-a-rsr-b5555555-…",
    "status": "PENDING"
  }
}

Дальнейший процесс: