Метод: POST
URL: https://analyse.twin24.ai/api/v1/reports
Метод позволяет создать новый отчет. После успешного выполнения запроса будет возвращен идентификатор созданного отчета.
curl --request POST
--url https://analyse.twin24.ai/api/v1/reports
--header 'accept: application/json'
--header 'authorization: Bearer ТОКЕН'
--header 'content-type: application/json' --data '
{
"service": "CIS",
"parameters": {
"params": {
"fields": "callId,autoCallCandidateId,clientExternalId,number,timezone,regionName,callingNumber,startedAt,humanStatusName,amd,duration,mainCallTotalCost,robotCallDuration,robotCallTotalCost,transferCallDuration,transferCallTotalCost,totalCost,hungUpBy,isAssistantRequest,recordPath,messagesAsString,results-confirmation,results-nps,results-result1,results-result2,markers,results-status,results-statusName,results-statusIsEffective,results-evaluation,results-date,amdTryTotalCost,amdDetectedTotalCost,macCallCost,labelCallCost,aiCallSttTotalCost,aiCallLlmTotalCost,aiCallTtsTotalCost",
"filename": "Call Task Report",
"isNewLinkFormat-1": true,
"language": "ru",
"output": "EXCEL",
"taskId": "",
"from": "2026-06-01T00:00:00+07:00",
"to": "2026-06-04T23:59:59+07:00"
},
"method": "GET",
"url": "/api/v1/statistics/cis/outgoing/sessions"
},
"name": "отчет по телефонии за период",
"type": "call_outgoing"
}'
| Заголовок | Значение | Обязательный |
|---|---|---|
accept |
application/json |
Да |
authorization |
Bearer <ВАШ_ТОКЕН> |
Да |
content-type |
application/json |
Да |
| Поле | Тип | Описание |
|---|---|---|
service |
string | Код сервиса. Возможные варианты: IAM, BOT, CHAT, CIS, MESSAGING, ANALYTICS, PLATFORM, AUDIO |
parameters |
object | Параметры формирования отчёта |
name |
string | Название отчёта |
type |
string | Тип отчета. На фронте отображаются в 3 вкладке. На русском, например «Исходящие звонки», «Биллинг чаты». Принимает только латиницу |
parameters| Поле | Тип | Описание |
|---|---|---|
params |
object | Параметры полей отчета и настройки выгрузки |
method |
string | HTTP-метод для получения данных (всегда GET) |
url |
string | Путь к API аналитики, откуда информация будет записана в отчет: - для звонков: /api/v1/statistics/cis/outgoing/sessions- для чатов: /api/v1/statistics/chat/sessions |
params| Поле | Тип | Описание |
|---|---|---|
fields |
string | Список запрашиваемых полей через запятую |
filename |
string | Имя выходного файла. Поддерживается кириллица и латиница |
isNewLinkFormat-1 |
bool | Использовать новый формат ссылок (true/false) |
language |
string | Язык отчёта (ru/en) |
output |
string | Формат выгрузки. С вариантом "output":"EXCEL" запускается генерация EXCEL отчета |
taskId |
string | Идентификатор задачи |
from |
string | Начало периода (ISO 8601 с часовым поясом) Пример: 2026-06-01T00:00:00+07:00 |
to |
string | Конец периода (ISO 8601 с часовым поясом) Пример: 2026-06-04T23:59:59+07:00 |
fieldsid,taskName,taskId,createdAt,startedAt,finishedAt,billedAt,updatedAt,speakerFinishedAt,number,callingNumber,botId,botName,timezone,messagesAsString,resultsString,variablesString,clientExternalId,dialogResult,advStatus_ru,nps,duration,externalId,recordPath,currentStatusName,mainCallDiscount,mainCallDuration,robotCallDuration,transferCallDuration,companyId,companyName,price,resellerPrice,resellerCompanyId,resellerCompanyName,mainCallCost,mainCallTotalCost,robotCallCost,robotCallTotalCost,transferCallCost,transferCallTotalCost,isIncoming,amd,autoCallCandidateId
Возвращает ID отчета, который начал генерироваться в личном кабинете.
{
"id": "019e920a-1234-1234-1234-7a5ffdca5fd5"
}
| Название | Тип | Описание |
|---|---|---|
id |
string | Уникальный идентификатор созданного отчета |
Неверный JSON или параметры.
Невалидный или отсутствует Bearer-токен.
Внутренняя ошибка сервера.
Метод: GET
URL: https://analyse.twin24.ai/api/v1/reports/{reportId}/file
Этот метод позволяет скачать сгенерированный файл отчета по его идентификатору.
Файл доступен для скачивания только после того, как отчет получит статус
GENERATED.
curl --location 'https://analyse.twin24.ai/api/v1/reports/019e807d-1234-1234-1234-8a9e21db1795/file' \
--header 'accept: application/json' \
--header 'authorization: Bearer ТОКЕН'
| Параметр | Тип | Описание | Пример |
|---|---|---|---|
reportId |
string | Уникальный идентификатор отчёта (UUID) | 019e807d-1234-1234-1234-8a9e21db1795 |
| Заголовок | Значение | Обязательный |
|---|---|---|
accept |
application/json |
Да |
authorization |
Bearer <ВАШ_ТОКЕН> |
Да |
Код 200. Если сохранить ответ в файл, будет архив с Excel-файлом.
Отчет не найден или файл еще не сгенерирован.
Невалидный или отсутствует Bearer-токен.
Метод: GET
URL: https://analyse.twin24.ai/api/v1/reports
Метод позволяет получить список всех отчетов из личного кабинета. Если нет под рукой ID отчета для скачивания, можно получить список и взять из него нужный ID.
curl --location 'https://analyse.twin24.ai/api/v1/reports?withoutCount=false&withoutItems=false&limit=10&status=GENERATED&from=2026-06-01T00%3A00%3A00%2B00%3A00&to=2026-06-03T00%3A00%3A00%2B00%3A00&service=CIS&withoutEmpty=true' \
--header 'accept: application/json' \
--header 'authorization: Bearer ТОКЕН'
| Заголовок | Значение | Обязательный |
|---|---|---|
accept |
application/json |
Да |
authorization |
Bearer <ВАШ_ТОКЕН> |
Да |
| Параметр | Тип | Описание | Обязательный |
|---|---|---|---|
withoutCount |
boolean | Исключить поле totalCount из ответа |
Нет |
withoutItems |
boolean | Исключить массив items из ответа |
Нет |
limit |
integer | Максимальное количество отчётов в ответе. По умолчанию 10 | Нет |
status |
string | Фильтр по статусу отчёта. Возможные варианты: CREATED, GENERATING, GENERATED, DELAYED, CANCELED, ERROR | Нет |
from |
string | Начало периода (по дате создания, ISO 8601) Пример: 2026-06-01T00:00:00+00:00 |
Нет |
to |
string | Конец периода (по дате создания, ISO 8601) Пример: 2026-06-03T00:00:00+00:00 |
Нет |
service |
string | Фильтр по сервису. Возможные варианты: IAM, BOT, CHAT, CIS, MESSAGING, ANALYTICS, PLATFORM, AUDIO | Нет |
withoutEmpty |
boolean | Исключить ли пустые отчёты | Нет |
{
"count": 1,
"items": [
{
"id": "019e807d-be53-763a-97c9-8a9e21db1795",
"name": "Ежемесячный отчёт по телефонии CIS с 2026-05-01 03:00 по 2026-06-01 02:59",
"createdBy": null,
"status": "GENERATED",
"service": "CIS",
"type": "billing_cis_call",
"parameters": {
"url": "/local/api/v1/statistics/cis/billing/calls",
"body": "",
"files": [],
"method": "GET",
"params": {
"to": "2026-06-01T02:59:59+03:00",
"all": 1,
"from": "2026-05-01T03:00:00+03:00",
"limit": 200000,
"fields": "callId,taskId,startedAt,number,callingNumber,duration,clientExternalId,isIncoming,humanStatusName,recordPath,mainCallDuration,mainCallTotalCost,mainCallCost,robotCallDuration,robotCallTotalCost,robotCallCost,transferCallDuration,transferCallTotalCost,transferCallCost,amdTryTotalCost,amdDetectedTotalCost,macCallCost,labelCallCost,,aiCallDuration,aiCallTotalCost,aiCallCost,aiCallLlmTotalCost,aiCallTtsTotalCost,aiCallSttTotalCost,totalCost,companyId",
"filename": "Monthly CIS report from 2026-05-01 03:00 to 2026-06-01 02:59",
"language": "ru",
"withPrice": 1,
"notifyPermissionSetting": "notifications.regular.report.cis.email"
},
"cookies": [],
"headers": []
},
"fileId": "08be6c94-384f-4753-9756-9d10afe01a70",
"createdAt": "2026-06-01 00:03:04.918225+00",
"updatedAt": "2026-06-01 00:40:47.434937+00",
"startedAt": "2026-06-01 00:21:01.489676+00",
"finishedAt": "2026-06-01 00:40:47.421742+00",
"progressTotal": 8,
"progressCurrent": 8
}
]
}
Невалидный или отсутствует Bearer-токен.
| Статус | Описание |
|---|---|
CREATED |
Отчет создан, ожидает начала генерации |
GENERATING |
Отчет в процессе генерации |
GENERATED |
Отчет успешно сгенерирован, файл доступен для скачивания |
DELAYED |
Генерация отчета задержана |
CANCELED |
Генерация отчета отменена |
ERROR |
Произошла ошибка при генерации отчета |