Статистика

На этой странице

По API статистику можно забирать программой, не открывая кабинет. Например, чтобы вывести цифры на своей панели или сверить расход с рекламной сетью. Для этого есть две функции приложения wm. wm/stats отдаёт итоги по дням: по умолчанию за неделю, при желании за любой период. wm/click собирает те же числа в любом другом разрезе: по офферам, потокам, странам, устройствам, меткам кампаний. Строки у них одинаковые: клики, заказы по фазам и статусам, вознаграждение и расход на трафик.

Правила запроса, токен и формат ответа описаны на странице Общие правила API. Фазы и статусы заказа смотрите в справочниках значений. В кабинете те же цифры собраны в разделе «Статистика», как читать колонки, написано на странице Показатели и формулы.

Что можно получить#

Найдите свою задачу в таблице: справа указано, какую функцию взять и что ей передать.

Задача Функция Что передать
Итоги по дням за последнюю неделю wm/stats только токен
Итоги по дням за нужный период wm/stats from и to вместе
Итоги по дням для одного потока или оффера wm/stats flow или offer
Какие кампании и креативы приносят заказы wm/click item=utmc или item=utmn
Какой источник трафика лучше wm/click item=utms
Какие метки subid окупаются wm/click item=subid
Из каких стран и с каких устройств идёт трафик wm/click item=geo, item=mobile, item=os, item=browser
В какие часы трафик конвертируется лучше всего wm/click item=hour
Какой оффер, поток или лендинг лучше wm/click item=offer, item=flow, item=site, item=space
Кампании только из одной страны или одного потока wm/click item=utmc и фильтр geo или flow

Какую функцию взять.

Статистика заказы только считает. Сами заказы, каждый со статусом и причиной отказа, отдаёт leads/list. Потоки и их настройки отдаёт wm/flows. Расход попадает в статистику из wm/cost или из макроса цены клика в ссылке потока.

Период и даты#

Обе функции принимают период в параметрах from и to. Даты пишутся только в виде ГГГГ-ММ-ДД с дефисами, например 2026-10-30. День берётся целиком, от 00:00:00 до 23:59:59 по времени сети. Без параметров приходит статистика за семь дней: от шести дней назад до сегодняшнего дня включительно.

Если период задан странно, функции не возвращают ошибку, а подправляют его по правилам из таблицы. Поэтому пустой ответ [] не всегда значит «данных нет».

Что передано Какой период считается
Ничего Семь дней: от шести дней назад до сегодня.
Только from От from до сегодня.
Только to не старше шести дней назад От шести дней назад до to.
Только to старше шести дней назад Пусто: начало периода по умолчанию оказывается позже конца. Передайте и from.
from позже to Один день — to.
to в будущем to заменяется сегодняшним днём.
Дата записана без дефисов: 20261030, 2026/10/30, 30.10.2026 Дата не распознаётся. Такой from заменяется на to, а такой to — на сегодня, так что период обычно сжимается до одного дня.
from без единой цифры: abc, yesterday Дата превращается в нулевую (00000000), и период начинается с самого начала данных: вместо недели приходят все дни до to (или до сегодня).
to без единой цифры: abc, yesterday Пусто: конец периода оказывается раньше любого дня, и приходит [].

Как функции выбирают период.

Передавайте обе даты

Для статистики за прошлое указывайте from и to вместе и пишите даты через дефис. Иначе ошибки не будет, но отчёт может оказаться пустым, слишком коротким или слишком длинным. Например, from=abc отдаёт всю историю.

Что считается#

  • Обе функции работают только с вашими данными. Командного режима тут нет.
  • Деньги в ответе — вознаграждение вебмастера в основной валюте сети по текущему курсу.
  • Названия строк приходят на языке вашего кабинета. Там, где названия нет, подставляется «Не определено». Исключение — группировка по потокам: клики и заказы удалённого потока собираются в строку с id 0 и name, равным false.
  • Клик попадает в строку по времени и меткам клика, заказ — по времени создания и меткам, записанным в самом заказе. Метки заказа передаёт ваш скрипт или лендинг вместе с лидом (leads/add). Поэтому клик и созданный по нему заказ могут оказаться в разных строках: на границе суток или часа, а также если заказ пришёл без меток. Заказ без utm_campaign попадёт в строку «Не определено», а его клики — в строку своей кампании.
  • Фильтры складываются по «и»: чем их больше, тем уже выборка. Числовой фильтр включается только ненулевым числом: 0, пустое значение и текст его не включают. Текстовые фильтры сравниваются целиком и с учётом регистра (utms=TGADS не найдёт tgads), поиска по части значения нет. Код страны geo регистр не учитывает.
  • Поля по кликам (clicks, unique, good и остальные) считают все визиты подряд, в том числе отсечённые фильтрами трафика (боты, чёрные списки, страны и другие). В кабинете по умолчанию так же (Только целевые клики). Чистые визиты — строка с id 0 («Целевой визит») в отчёте item=filter. Фильтра по результату фильтрации у функции нет.
  • Клики за прошедшие дни платформа берёт из суточных итогов, собранных по дате, офферу и потоку. Любая другая группировка и любой другой фильтр переводят расчёт на журнал кликов, а он хранится ограниченное время: по умолчанию около года, точный срок задаёт администратор сети. Заказы считаются по самим заказам и от срока хранения кликов не зависят.
  • Состав полей зависит от настроек сети. Поля по кликам есть в каждой строке, но если администратор отключил показатели по кликам, они равны нулю. Какие поля приходят в строке, описано в разделе Строка статистики. Отсутствующее поле читайте как ноль.
  • Берите формат JSON. В XML ключ строки становится именем элемента (а числовой ключ — именем функции), поэтому отчёт по меткам с пустым значением или с пробелом в значении в XML не собирается.

Строка статистики#

Обе функции возвращают строки одного вида. Поля по кликам есть в каждой строке. Поля по заказам приходят только в строках, где есть хотя бы один заказ (кроме пустых часов в item=hour). Заказ учитывается в одном статусе и в одной фазе, поэтому счётчики фаз не пересекаются. Сумму ct можно проверить сложением cw, ch, ca и cc.

Поле Описание
id ID строки: значение, по которому собран отчёт (дата, ID оффера, код страны, текст метки). Совпадает с ключом строки в ответе.
name Название строки.
space Число кликов по прелендингам.
suni Число уникальных кликов по прелендингам.
sgood Число кликов по прелендингам без отказа.
stime Среднее время на прелендинге в пятисекундных интервалах: умножьте на пять, чтобы получить секунды.
clicks Число кликов по лендингам.
unique Число уникальных кликов по лендингам.
good Число кликов по лендингам без отказа.
time Среднее время на лендинге, тоже в пятисекундных интервалах.
cw Число заказов в фазе «Ожидает».
ch Число заказов в фазе «Холд».
ca Число заказов в фазе «Принят».
cc Число заказов в фазе «Отмена».
cx Число заказов в фазе «Треш».
ct Число заказов без треша: сумма фаз «Ожидает», «Холд», «Принят» и «Отмена».
c2, c4, c5, c10, c12 Число заказов в основных статусах: «Обработка» (2), «Холд» (4), «Отменён» (5), «Оплачен» (10) и «Удалён» (12). Число в поле c<код> относится к статусу с этим кодом.
mw Вознаграждение по заказам в фазе «Ожидает».
mh Вознаграждение по заказам в фазе «Холд».
ma Вознаграждение по заказам в фазе «Принят».
mc Вознаграждение по заказам в фазе «Отмена».
mx Вознаграждение по заказам в фазе «Треш».
mt Вознаграждение по заказам без треша.
mi Приход: начисления по заказам в фазе «Принят».
mo Расход: отрицательные начисления по заказам в фазе «Принят» — списания и корректировки. Число отрицательное.

Основные поля строки статистики.

Фазы заказа для вебмастера описаны в справочнике.

Уникальный клик — первый визит посетителя по этому потоку в течение суток, повторные переходы уникальными не считаются. Клик без отказа — визит, который длился не меньше времени отказа, заданного в настройках сети (по умолчанию 10 секунд). Если у потока нет прелендинга, поля space, suni, sgood и stime равны нулю.

Дополнительные поля#

Эти поля приходят вместе с основными, но заполнены только в сетях, где ведут расход на трафик, включают дополнительные статусы заказа и учитывают чеки покупателей и себестоимость. В остальных сетях они равны нулю. Поля по заказам (c1, c3, c6–c9, c11, bills, bill, cost, goal-<код>) есть только в строках с заказами (кроме пустых часов в item=hour), cpv и cpc — в каждой строке.

Поле Описание
cpv Число кликов, у которых задана цена.
cpc Суммарный расход по этим кликам в основной валюте сети. Это общая сумма, цену одного клика считайте сами.
c1, c3, c6–c9, c11 Число заказов в дополнительных статусах: «Новый» (1), «Перезвонить» (3), «Упаковка» (6), «Отправка» (7), «В пути» (8), «Доставлен» (9) и «Возврат» (11). Это подробные шаги обзвона и доставки. Их используют не все сети.
bills Число заказов, дошедших до этапов доставки: в статусах с 6 по 11.
bill Сумма чеков покупателей по этим заказам в основной валюте сети.
cost Себестоимость этих заказов в основной валюте сети.
goal-<код> Разбивка строки по цели: объект с полями cw, ch, ca, cc, cx, ma и mh в том же смысле, что и в самой строке. Приходит, когда в сети настроена дополнительная статистика по целям. <код> — код этой статистики.

Дополнительные поля строки статистики.

В кабинете те же показатели собраны в группах «Чек и выкуп» и «Трафик и ROI»: Показатели и формулы.

Что посчитать самому#

Готовых процентов в ответе нет, считайте их по полям строки. Сеть в своих таблицах считает так (base — большее из suni и unique). Если знаменатель равен нулю, показатель равен нулю.

  • конверсия (CR): ct / base * 100
  • средний доход с клика (EPC): (ma + mh) / base
  • аппрув: (ca + ch) / ct * 100
  • аппрув с учётом треша: (ca + ch) / (ct + cx) * 100
  • процент отказов по лендингам: (clicks - good) / clicks * 100
  • процент отказов по прелендингам: (space - sgood) / space * 100
  • переходы с прелендинга на лендинг: unique / suni * 100

Для дополнительных полей:

  • средняя цена клика: cpc / cpv
  • профит по кликам: ma + mh - cpc
  • ROI: (ma + mh) / cpc * 100
  • средний чек: bill / bills
  • профит по чекам: bill - cost
  • выкуп: c10 / (c6 + c7 + c8 + c9 + c10 + c11) * 100

Кабинет показывает округлённые значения. CR и EPC он округляет до двух знаков. Аппрув, процент отказов и переходы с прелендинга показывает целым числом, отбрасывая дробную часть (аппрув 66,7 % выглядит как 66 %). В ответе API значения сырые, поэтому ваш расчёт по формулам может слегка расходиться с кабинетом.

wm/statsИтоги по дням#

GETPOSThttps://lk.dalead.pro/api/wm/stats.json?id={token}

Возвращает итоги по дням за период: клики, заказы по фазам и статусам, вознаграждение и расход за каждый день. Группировка одна, по датам. Другие срезы собирает wm/click. По составу ответа функция совпадает с wm/click при item=date, отличаются только набор фильтров и проверка потока.

Как задавать период и что происходит при неверной дате, описано в разделе Период и даты. Ошибки токена (key, ban) описаны в общих правилах.

Параметры

ПараметрТипОбяз.Описание
fromdate—Начало периода, ГГГГ-ММ-ДД. День берётся целиком, с 00:00:00. По умолчанию шесть дней назад, так что без обеих дат приходит статистика за неделю.
todate—Конец периода, ГГГГ-ММ-ДД. День берётся целиком, до 23:59:59. По умолчанию — сегодня. Дата в будущем заменяется сегодняшней, а начало периода позже конца — концом. Один to старше шести дней назад даёт пустой ответ: передавайте его вместе с from.
offerint—ID оффера. Названия и ID — в offer/names.
flowint—ID потока. Ваши потоки — в wm/flows. Поток должен принадлежать вам, иначе ответ access.

Запрос

Статистика оффера за неделю
https://lk.dalead.pro/api/wm/stats.json?id={token}&from=2026-10-24&to=2026-10-30&offer=31

Ответ

JSON
{
  "20261030": {
    "space": 0,
    "suni": 0,
    "sgood": 0,
    "stime": 0,
    "clicks": 13,
    "unique": 0,
    "good": 0,
    "time": 0,
    "cpc": 0,
    "cpv": 0,
    "c1": 0,
    "c2": 12,
    "c3": 0,
    "c4": 0,
    "c5": 0,
    "c6": 0,
    "c7": 0,
    "c8": 0,
    "c9": 0,
    "c10": 0,
    "c11": 0,
    "c12": 0,
    "ca": 0,
    "cw": 12,
    "ch": 0,
    "cc": 0,
    "cx": 0,
    "ct": 12,
    "ma": 0,
    "mw": 144,
    "mh": 0,
    "mc": 0,
    "mx": 0,
    "mt": 144,
    "mi": 0,
    "mo": 0,
    "bill": 0,
    "bills": 0,
    "cost": 0,
    "goal-reg": {
      "cw": 12,
      "ch": 0,
      "ca": 0,
      "cc": 0,
      "cx": 0,
      "ma": 0,
      "mh": 0
    },
    "goal-dep": {
      "cw": 0,
      "ch": 0,
      "ca": 0,
      "cc": 0,
      "cx": 0,
      "ma": 0,
      "mh": 0
    },
    "id": 20261030,
    "name": "2026-10-30"
  }
}
Ничего не найдено
[]
Ошибка: чужой или удалённый поток
{
  "status": "error",
  "error": "access"
}

В ответе нет конверта со статусом, приходит сам отчёт: объект, в котором ключ строки равен дате в виде ГГГГММДД. Поля строки описаны в разделах Строка статистики и Дополнительные поля. Строки идут от новых к старым. Дни без кликов и заказов в ответе не появляются, поэтому строк может быть меньше, чем дней в периоде. Итоговой строки нет, суммируйте нужные показатели сами. Если под фильтры ничего не подошло, приходит пустой массив [].

Ошибки приходят в обычном конверте со статусом.

Ошибки

КодЧто случилосьЧто делать
accessПоток из фильтра flow вам не принадлежит или не существует.Возьмите ID потока из wm/flows.

wm/clickСтатистика с группировкой#

GETPOSThttps://lk.dalead.pro/api/wm/click.json?id={token}

Отдаёт ту же статистику, что и сводная по дням, но группирует её по срезу из параметра item и принимает полный набор фильтров: оффер, поток, лендинг, прелендинг, страну, час и метки источника трафика. Так строят отчёты по кампаниям, креативам и гео.

Параметр item обязателен. Значение регистрозависимо, пишите его строчными буквами. Без item или с неизвестным значением ошибки нет, приходит пустой массив [].

Метки в этой функции называются коротко: utms, utmc, utmn, utmt, utmm. Длинные имена вроде utm_source, которые принимает leads/list, здесь не работают. Фильтров по устройству, браузеру, операционной системе, источнику трафика, домену, метке клиента, subid и результату фильтрации у функции нет, эти срезы доступны только как группировка. Группировки по sub1–sub5 нет. Для своих разбивок используйте subid или utm_*.

Правила периода — в разделе Период и даты, правила фильтров — в разделе Что считается.

Параметры

ПараметрТипОбяз.Описание
itemstringдаСрез, по которому группируется статистика (таблица ниже).
fromdate—Начало периода, ГГГГ-ММ-ДД. День берётся целиком. По умолчанию — шесть дней назад.
todate—Конец периода, ГГГГ-ММ-ДД. По умолчанию — сегодня. Дата в будущем заменяется сегодняшней. Один to старше шести дней назад даёт пустой ответ: передавайте его вместе с from.
offerint—ID оффера. Названия и ID — в offer/names.
flowint—ID потока. Ваши потоки — в wm/flows. Чужой или несуществующий поток не вызывает ошибку: под фильтр не подходит ни одна запись, и приходит [].
siteint—ID лендинга. Лендинги оффера — в offer/sites.
spaceint—ID прелендинга.
geostring—Двухбуквенный код страны, например ru. Регистр не важен. У кликов это страна по IP-адресу, у заказов — страна заказа.
hourint—Час суток по времени сети, число от 1 до 23. Нулевой час фильтром не задать: чтобы увидеть его отдельно, группируйте статистику по часам.
utmsstring—Значение метки utm_source.
utmcstring—Значение метки utm_campaign.
utmnstring—Значение метки utm_content.
utmtstring—Значение метки utm_term.
utmmstring—Значение метки utm_medium.
extustring—Только агентство: идентификатор заказа на стороне агентства.
extsstring—Только агентство: идентификатор источника трафика на стороне агентства.

Что приходит в id и name строки, зависит от item. Пустое значение метки собирается в одну строку: id пустой, name — «Не определено».

item Группировка Строка
date Дата. id — ГГГГММДД, name — ГГГГ-ММ-ДД. Строки идут от новых к старым.
hour Час суток по времени сети. id — число от 0 до 23, name — интервал вида 14:00-14:59. Приходят все 24 часа, в том числе пустые.
offer Оффер. id — ID оффера, name — его название.
flow Поток. id — ID потока, name — его название. У удалённого потока id равен 0, а name — false: «Не определено» здесь не подставляется.
site Лендинг. id — ID лендинга, name — его адрес без http://. В строке лендинга space — клики по прелендингам, с которых пришли на него.
space Прелендинг. id — ID прелендинга, name — его адрес. В строке прелендинга clicks — клики по лендингам, на которые перешли с него.
geo Страна. id — двухбуквенный код (zz — страна не определена), name — название страны.
src Источник трафика из справочника сети. id — ID источника, name — его название, 0 — «Не определено».
mobile Тип устройства. 0 — «Десктоп», 1 — «Мобильный».
os Операционная система. name — Windows, MacOS, Linux, iOS, Android, Windows Mobile, Symbian, BlackBerry или Other.
browser Браузер. name — Chrome, Firefox, MSIE, Safari, Opera, Edge, Facebook, Instagram, Tik-Tok, WebView, Bot или Other.
filter Результат фильтрации трафика. 0 — «Целевой визит», 1–8 — причина, по которой визит отсечён: «Бан: фильтр», «Бан: бот», «Бан: чёрный список», «Бан: страна», «Бан: язык», «Бан: ID рекламы», «Бан: устройство», «Бан: трафикбек».
subid Метка subid. id и name — значение метки.
utms Метка utm_source. id и name — значение метки.
utmc Метка utm_campaign. id и name — значение метки.
utmn Метка utm_content. id и name — значение метки.
utmt Метка utm_term. id и name — значение метки.
utmm Метка utm_medium. id и name — значение метки.
utmd Домен ссылки: метка utm_domain, а если её нет — домен, через который прошёл клик. id и name — домен.
utmu Метка клиента: параметр customer (или utm_user) в ссылке. id и name — значение метки.
extu Только агентство: идентификатор заказа на стороне агентства. id и name — идентификатор.
exts Только агентство: идентификатор источника трафика на стороне агентства. id и name — идентификатор.

Значения параметра item.

Запрос

Кампании оффера за неделю
https://lk.dalead.pro/api/wm/click.json?id={token}&item=utmc&from=2026-10-24&to=2026-10-30&offer=31
Типы устройств оффера
https://lk.dalead.pro/api/wm/click.json?id={token}&item=mobile&offer=31

Ответ

JSON
{
  "": {
    "space": 0,
    "suni": 0,
    "sgood": 0,
    "stime": 0,
    "clicks": 0,
    "unique": 0,
    "good": 0,
    "time": 0,
    "cpc": 0,
    "cpv": 0,
    "c2": 8,
    "ca": 0,
    "cw": 8,
    "ch": 0,
    "cc": 0,
    "cx": 0,
    "ct": 8,
    "ma": 0,
    "mw": 96,
    "mh": 0,
    "mc": 0,
    "mx": 0,
    "mt": 96,
    "mi": 0,
    "mo": 0,
    "bill": 0,
    "bills": 0,
    "cost": 0,
    "id": "",
    "name": "Not set"
  },
  "cathulhu-ru-01": {
    "space": 0,
    "suni": 0,
    "sgood": 0,
    "stime": 0,
    "clicks": 8,
    "unique": 0,
    "good": 0,
    "time": 0,
    "cpc": 0,
    "cpv": 0,
    "c2": 3,
    "ca": 0,
    "cw": 3,
    "ch": 0,
    "cc": 0,
    "cx": 0,
    "ct": 3,
    "ma": 0,
    "mw": 36,
    "mh": 0,
    "mc": 0,
    "mx": 0,
    "mt": 36,
    "mi": 0,
    "mo": 0,
    "bill": 0,
    "bills": 0,
    "cost": 0,
    "id": "cathulhu-ru-01",
    "name": "cathulhu-ru-01"
  },
  "purr-us-02": {
    "space": 0,
    "suni": 0,
    "sgood": 0,
    "stime": 0,
    "clicks": 5,
    "unique": 0,
    "good": 0,
    "time": 0,
    "cpc": 0,
    "cpv": 0,
    "c2": 1,
    "ca": 0,
    "cw": 1,
    "ch": 0,
    "cc": 0,
    "cx": 0,
    "ct": 1,
    "ma": 0,
    "mw": 12,
    "mh": 0,
    "mc": 0,
    "mx": 0,
    "mt": 12,
    "mi": 0,
    "mo": 0,
    "bill": 0,
    "bills": 0,
    "cost": 0,
    "id": "purr-us-02",
    "name": "purr-us-02"
  }
}
Массив строк: item=mobile
[
  {
    "space": 0,
    "suni": 0,
    "sgood": 0,
    "stime": 0,
    "clicks": 7,
    "unique": 0,
    "good": 0,
    "time": 0,
    "cpc": 0,
    "cpv": 0,
    "c2": 11,
    "ca": 0,
    "cw": 11,
    "ch": 0,
    "cc": 0,
    "cx": 0,
    "ct": 11,
    "ma": 0,
    "mw": 132,
    "mh": 0,
    "mc": 0,
    "mx": 0,
    "mt": 132,
    "mi": 0,
    "mo": 0,
    "bill": 0,
    "bills": 0,
    "cost": 0,
    "id": 0,
    "name": "Desktop"
  },
  {
    "space": 0,
    "suni": 0,
    "sgood": 0,
    "stime": 0,
    "clicks": 6,
    "unique": 0,
    "good": 0,
    "time": 0,
    "cpc": 0,
    "cpv": 0,
    "c2": 1,
    "ca": 0,
    "cw": 1,
    "ch": 0,
    "cc": 0,
    "cx": 0,
    "ct": 1,
    "ma": 0,
    "mw": 12,
    "mh": 0,
    "mc": 0,
    "mx": 0,
    "mt": 12,
    "mi": 0,
    "mo": 0,
    "bill": 0,
    "bills": 0,
    "cost": 0,
    "id": 1,
    "name": "Mobile"
  }
]

Состав строки, формулы и правила по фазам и статусам те же, что у сводной статистики: поля описаны в разделах Строка статистики и Дополнительные поля. В примерах для краткости опущены нулевые поля c1, c3–c12 и goal-…. Названия «Desktop», «Mobile» и «Not set» в примерах английские, потому что примеры сняты с кабинета на английском. Ваши названия приходят на языке кабинета. Строка с пустым id в отчёте по кампаниям собирает заказы без utm_campaign и клики без этой метки. Клики таких заказов записаны в строках их кампаний, поэтому если все клики пришли с метками, кликов в этой строке нет. Сама строка появится, когда придут заказы или клики без метки. Отличий от сводной статистики четыре.

  • Ключ строки и поля id и name зависят от item (таблица выше).
  • Строки отсортированы по названию естественным порядком. Исключения: по дате строки идут от новых к старым, а по часам всегда возвращаются все 24 часа по порядку, в том числе без кликов и заказов. В часе без кликов и заказов поля по заказам приходят нулями, и есть goal-…. В часе только с кликами полей по заказам нет, как в любой другой строке без заказов.
  • Если ID строк идут подряд, начиная с нуля, отчёт приходит массивом строк без ключей, а не объектом. Так бывает при группировке по часам, по типу устройства и по результату фильтрации, а также когда в отчёте одна строка с id, равным 0. Берите значение из поля id внутри строки, на ключ строки полагаться нельзя.
  • Своих кодов ошибок у функции нет. Чужой или несуществующий оффер, поток и сайт в фильтрах ошибки не вызывают: под них не подходит ни одна запись, и приходит пустой результат []. Ошибки токена (key, ban) описаны в общих правилах.