ВАЖНО

Масимум за один период можно получить не более 50 000 записей!!!
Если необходимо получить большее количество записей, то нужно брать меньший период времени. 


API
. Получение статистики об обзвонах.

 

Метод: GET

Authorization: Bearer Token (Метод для получения токена по логину и паролю)

 

URL: https://analyse.twin24.ai/api/v1/search/cis/calls? После "?" нужно подставить имя полей данных, которые вы хотите получить в статистике. Поля перечисляются через запятую и разделяются знаком "&". По полю доступна фильтрация данных, для этого через = укажите какое значение должно содержать поле. Список параметров и пример запроса с подставленными параметрами находится ниже. 

Описание параметров метода:

Параметр ОбязательноОписание
fieldsНетСписок полей:
id – идентификатор звонка;
phone – номер телефона клиента;
duration – длительность диалога;
taskId – идентификатор задания на обзвон;
taskName – имя задания на обзвон;
botId – идентификатор работавшего бота;
botName – имя работавшего бота;
regionId – идентификатор региона, в котором оформлен номер телефона клиента;
timezone – часовой пояс номера телефона клиента;
status – статус результата дозвона телефонии (Статусы вызовов для старой телефонии);
responder – тип ответившего на звонок, при работающем модуле определения автоответчиков;
shortNumber - 
transferredToOperator – признак отвечающий за то, был перевод звонка на оператора КЦ или нет;
linkToLog – ссылка на лог звонка, по которой разбирают различные ситуации наши инженеры;
createdAt – дата и время создания записи;
updatedAt – дата и время обновления любой информации по записи;
startedAt – дата и время запуска звонка;
price – стоимость диалога;
messages – текстовая транскрибация всего диалога, по ролям и доп информацией о реплике каждого участника диалога;
messagesAsString - текстовая транскрибация всего диалога, по ролям, без доп информации;
recordPath – ссылка на аудиозапись диалога;
externalId – информация, переданная в информации о клиенте, на этапе загрузки;
additional – дополнительная информация, переданная в информации о клиенте, на этапе загрузки;
dialogResults – результат диалога бота, указанный в поле «Подтверждения» в сценарии диалога;
nps - результат диалога бота, указанный в поле «NPS» в сценарии диалога;
isFinished – признак отвечающий за то, будут ли на данного клиента еще попытки дозвона, или текущая попытка была последней.
botDuration - время, которое работал бот, без учета времени разговора оператора.
operatorDuration - время, которое работает оператор(принимающий перевод диалога с бота), без учета времени разговора бота.
fromнетДата и время, начала диапазона времени, за которое нужно получить статистику. 
!!! Необходима конвертация в url (например метод в Python: urllib.parse.quote(test_str))
Для примера: 2022-03-01T21%3A30%3A54%2B00%3A00
toнетДата и время, окончания диапазона времени, за которое нужно получить статистику. 
!!! Необходима конвертация в url (например метод в Python: urllib.parse.quote(test_str))
Для примера: 2022-03-01T21%3A30%3A54%2B00%3A00
limitнетОграничение количества данных, которые нужно получить.
Максимум: 1 000
offsetнетСмещение по позиции полученной информации.
Например, в заданное временное окно было 4 050 звонков. Сделав запрос, вы получили доступный максимум в виде 1 000 записей. Тогда вам нужно повторить запрос, с указанием последней полученной позиции. После получения 1 000 записей "1 000" и есть наша последняя позиция. Получив еще раз максимальное количество, повторяем запрос указав смешение уже на 2 000 позиций. 
Делаем смещение до тех пор, пока количество возвращенных данных не будет меньше запрошенному лимиту.
sortнет

Поле, по которому вы хотите отсортировать получаемые данные. 
Сортировка доступна по полям: createdAt(время добавления клиента в задание обзвона), updatedAt(время обновления информации о кандидате или попытки звонка), startedAt(время, когда платформа запустила звонок на клиента), duration(длительность разговора).
«+» сортировка по возрастанию;
«-» сортировка по убыванию.

taskIdнет

Фильтр по идентификатору задания на обзвон, по которому нужна статистика

pageнет

"Страница" отчета. Каждая страница содержит limit записей. Первая страница начинается с позиции offset

outputнет

Формат вывода файла: CSV, EXCEL. Если не задан, то JSON

filenameнет

Имя файла (без расширения), если нужно сохранение в файл

archiveнет

Bool значение: true – архивировать файл, false - не архивировать

phoneнет

Фильтр по номеру телефона, по которому нужно выгрузить статистику

statusнет

Фильтр по статусу звонка: CANCEL, ANSWER, NOANSWER, BUSY, CONGESTION, CHANUNAVAIL, FAILED, BLACKLIST, DIAL, INPROGRESS, FZ230, INVALID, UNAVAILABLE

idнет

Фильтр по идентификатору звонка

filterPeriodByнет

Выбор поля, по которому будет происходить фильтрация параметров from и to. 

  • createdAt (По умолчанию, если не задавать параметр)
  • updatedAt
  • startedAt

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

https://analyse.twin24.ai/api/v1/search/cis/calls?fields=id,phone,duration,taskId,taskName,botId,botName,regionId,timezone,status,responder,shortNumber,transferredToOperator,linkToLog,createdAt,updatedAt,startedAt,price,messages,messagesAsString,recordPath,externalId,additional,dialogResults,nps,isFinished&from=2022-06-29T00%3A00%3A00%2B00%3A00&to=2022-06-30T00%3A00%3A00%2B00%3A00&sort=-updatedAt&limit=1000&offset=0


Ответ в формате Json
{
    "count": 2,
    "items": [
        {
            "timezone": 3,
            "additional": "",
            "startedAt": "2022-06-29T08:44:26.000000Z",
            "transferredToOperator": false,
            "dialogId": "9e0b5349-9cb5-44a9-b5f4-bbec60ceff01",
            "duration": 18,
            "createdAt": "2022-06-29T05:44:14.000000Z",
            "price": "1.79",
            "dialogResults": "Приветствие",
            "id": "99c5b0fe-fa95-40e8-8a47-f90774c336cd",
            "botId": "c837b555-5d79-4c9a-940d-84814a0d6fb9",
            "recordPath": "https://minio.twin24.ai/twin-cabinet-prod/public/records//1758/2022/06/29/99c5b0fe-fa95-40e8-8a47-f90774c336cd.mp3",
            "updatedAt": "2022-06-29T08:45:01.000000Z",
            "botName": "Скрипт_тест",
            "externalId": null,
            "responder": "Human",
            "isFinished": true,
            "nps": null,
            "shortNumber": null,
            "phone": "79999999999",
            "regionId": 5026,
            "taskName": "29.6.2022 тестирование метода создания задания на обзвон",
            "taskId": "71c30c27-4211-4e96-8ce7-fbb459aee6fe",
            "linkToLog": "/ab37a460-9cdd-491b-9e91-a888fed03194/general.log",
            "status": "ANSWERED",
            "messages": [
                {
                    "text": "Ало! Здравствуйте, меня хорошо слышно?",
                    "author": "robot",
                    "created_at": "2022-06-29T08:44:39Z"
                },
                {
                    "text": "угу",
                    "author": "user",
                    "created_at": "2022-06-29T08:44:46Z"
                },
                {
                    "text": "Отлично! Меня зовут Иван. Я менеджер по работе с клиентами компании Тест. Я не отниму много вашего времени. Вам удобно сейчас разговаривать?",
                    "author": "robot",
                    "created_at": "2022-06-29T08:44:46Z"
                }
            ],
            "messagesAsString": "Робот: Ало! Здравствуйте, меня хорошо слышно?\nЧеловек: угу\nРобот: Отлично! Меня зовут Иван. Я менеджер по работе с клиентами компании Тест. Я не отниму много вашего времени. Вам удобно сейчас разговаривать?"
        },
        {
            "timezone": 3,
            "additional": "",
            "startedAt": "2022-06-29T07:15:50.000000Z",
            "transferredToOperator": false,
            "dialogId": "35541af1-ed44-447a-9312-0377462247fd",
            "duration": 5,
            "createdAt": "2022-06-29T04:10:31.000000Z",
            "price": "0.40",
            "dialogResults": "Начало диалога",
            "id": "819206ed-2391-4e8d-b8c3-8ec6ebf08f20",
            "botId": "c837b555-5d79-4c9a-940d-84814a0d6fb9",
            "recordPath": "https://minio.twin24.ai/twin-cabinet-prod/public/records//1758/2022/06/29/819206ed-2391-4e8d-b8c3-8ec6ebf08f20.mp3",
            "updatedAt": "2022-06-29T07:16:13.000000Z",
            "botName": "Скрипт_тест",
            "externalId": null,
            "responder": "AnsweringMachine",
            "isFinished": false,
            "nps": null,
            "shortNumber": null,
            "phone": "79999999999",
            "regionId": 5026,
            "taskName": "29.6.2022 тестирование метода создания задания на обзвон",
            "taskId": "71c30c27-4211-4e96-8ce7-fbb459aee6fe",
            "linkToLog": "/ed7168f7-0e1b-41dc-bab3-8f6047a9146b/general.log",
            "status": "ANSWERED",
            "messages": [
                {
                    "text": "Ало! Здравствуйте, меня хорошо слышно?",
                    "author": "robot",
                    "created_at": "2022-06-29T07:16:04Z"
                }
            ],
            "messagesAsString": "Робот: Ало! Здравствуйте, меня хорошо слышно?"
        }
    ]
}

Описание полей ответа:

 

Поле

Тип

Описание

count

int

Общее количество звонков

items

itemsInfo[

]

Массив информации по каждому звонку

timezone

int

Часовой пояс номера телефона клиента

additional

string

Дополнительная информация, переданная в информации о клиенте, на этапе загрузки

startedAt

string

Дата и время запуска звонка

transferredToOperator

bool

Признак, отвечающий за то, был перевод звонка на оператора КЦ или нет

dialogId

string

Идентификатор диалога

duration

int

Длительность диалога в секундах

createdAt

string

Дата и время создания записи

price

string

Стоимость диалога

dialogResults

string

Результат диалога бота, указанный в поле «Подтверждения» в сценарии диалога

id

string

Идентификатор звонка

botId

string

Идентификатор работавшего бота

recordPath

string

Ссылка на аудиозапись диалога

updatedAt

string

Дата и время обновления информации по записи

botName

string

Имя работавшего бота

externalId

string

Информация, переданная в информации о клиенте, на этапе загрузки

responder

string

Тип ответившего на звонок, при работающем модуле определения автоответчиков

isFinished

bool

Признак, отвечающий за то, будут ли на данного клиента еще попытки дозвона, или данная попытка была последней

nps

string

Результат диалога бота, указанный в поле «NPS» в сценарии диалога

shortNumber

string

"Короткий" номер клиента (используется для sip-телефонии)

phone

string

Номер телефона клиента

regionId

int

Идентификатор региона, в котором оформлен номер телефона клиента

taskName

string

Имя задания на обзвон

taskId

string

Идентификатор задания на обзвон

linkToLog

string

Ссылка на лог звонка, по которой разбирают различные ситуации наши инженеры

status

string

Статус результата дозвона телефонии (Статусы вызовов для старой телефонии)

messages

messagesInfo[

]

Массив с транскрибацией диалога по ролям и с доп информацией

text

string

Транскрибация реплики author

author

string

Роль того, кто произнес реплику (клиент или робот)

created_at

string

Дата начала озвучивания реплики

messagesAsString

string

Текстовая транскрибация всего диалога, по ролям, без доп информации

  • Нет меток