Аналитика

Семь отчётов о том, как работает поддержка: сколько обращений, как быстро

отвечают, что приносит деньги и как справляется ИИ-оператор. Это те же цифры, что вы видите в разделе «Аналитика» кабинета — считает их один и тот же код.

Нужна область доступа analytics:read.

Зачем это, если есть список диалогов

Затем, что считать самому — долго и неверно. Выдача диалогов постраничная, и попытка посчитать «сколько закрыли за неделю» перебором упрётся в размер страницы и даст неправильное число. Один запрос к отчёту даёт точный ответ сразу.

curl -H "Authorization: Bearer $TYGY_API_KEY" \
  "https://api.tygy.ru/v1/analytics/overview?from=2026-09-01&to=2026-09-13"

Период и фильтры

Все отчёты принимают одинаковые параметры.

ПараметрЧто значит
from, toначало и конец периода в формате ISO-8601. По умолчанию — последние 30 дней
channelоставить только эти каналы
teamоставить только эти команды
operatorоставить только этих сотрудников

Фильтры перечисляются через запятую или повторением параметра — как удобнее:

?channel=telegram,website
?channel=telegram&channel=website

Период не длиннее 366 дней. Более длинный запрос отклоняется с ошибкой validation_failed, а не подрезается молча: подрезанный ответ отвечал бы на другой вопрос, и вы бы об этом не узнали.

Чтобы не гадать со значениями фильтров, спросите их:

curl -H "Authorization: Bearer $TYGY_API_KEY" \
  https://api.tygy.ru/v1/analytics/filters

Вернутся только те каналы, команды и сотрудники, которые реально встречаются в ваших данных.

Отчёты

АдресО чём
GET /v1/analytics/overviewсводка: сколько открыли и решили, очередь, время первого ответа, загрузка по дням и часам
GET /v1/analytics/channelsпо каналам: объём, доля, доля решённых, среднее время решения
GET /v1/analytics/teamsто же по командам, плюс разбивка команда × канал
GET /v1/analytics/operatorsпо сотрудникам: взято, закрыто, ответов
GET /v1/analytics/revenueвыручка, конверсия, разбивка по каналам и сотрудникам
GET /v1/analytics/qualityоценка диалогов: среднее, распределение, динамика по неделям
GET /v1/analytics/botработа ИИ-оператора и чем закончились его диалоги
GET /v1/analytics/filtersдопустимые значения фильтров

Отчёт — это готовый ответ целиком, а не страница списка, поэтому курсора здесь нет.

Что важно понимать про цифры

`null` — это не ноль. Где величину честно посчитать нельзя, приходит null, и это не то же самое, что «ноль». Доля решённых за день, когда не открыли ни одного диалога — null, а не 0 %. Средняя оценка недели без оценённых диалогов — null, и график должен разорваться, а не упасть в ноль.

Самый показательный случай — autonomous_share в отчёте по ИИ-оператору. Пока агент работает в режиме черновиков, каждое сообщение отправляет человек, и доля «закрыто без человека» не равна нулю — её просто невозможно измерить. Поэтому приходит null, а рядом лежит autonomous_share_blocked_reason со значением draft_mode_only, чтобы вы могли это объяснить, а не нарисовать 0 %.

Доли приходят числом от 0 до 1, не процентом. 0.6 значит 60 %.

Выручка не конвертируется между валютами. В by_currency каждая валюта лежит отдельной строкой. Складывать их — ваше решение и ваш курс.

У выручки есть ось признания. Параметр recognition выбирает, по какой дате считать деньги: won — по дате выигрыша сделки (по умолчанию), dialog — по дате диалога, created — по дате создания сделки.

Права и видимость

Ключ видит отчёты по всему проекту. Поэтому создать ключ с этой областью доступа может только сотрудник, который сам видит все диалоги: если в его правах стоит «только свои» или «своя команда», выдача такого ключа будет отклонена. Иначе через API можно было бы посмотреть то, чего не видно в кабинете.

Область analytics:read включает и выручку. Сотрудник без права на денежные отчёты такой ключ создать не сможет.