Перейти к содержанию

Статистика

Получение информации о чатах

Получение связанных чатов

Для получения связанных чатов по контактным данным пользователя необходимо вызвать GET ​/api​/related-conversations​/{organizationId}, передавая данные авторизации и параметры поиска в заголовке.

Параметры запроса

Внимание

В параметрах запроса обязательно должен быть указан либо email, либо номер телефона пользователя.

Параметр Тип данных Описание
organizationId
обязательный
integer

ID организации. Path-параметр.

Для получения можно обратиться к менеджеру компании или в техническую поддержку.

currentCustomerId integer ID пользователя, для которого нужно получить диалог. У пользователя может быть несколько ID даже если его номер телефона и email будут совпадать.
phoneNumber string Номер телефона пользователя.
email string Email пользователя.

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

curl -X GET "https://chat.devinotele.com/api/related-conversations/1?currentCustomerId=234345&phoneNumber=79263035444" \
  -H "accept: */*" \
  -H "authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==

Параметры ответа

Параметр Тип данных Описание
customerId integer ID пользователя.
channelType string

Тип канала чата. Доступны значения:

VIBER
TELEGRAM
WEBSITE_CHAT - чат в виджете на веб-сайте.
EMAIL
WHATSAPP
VKONTAKTE

channelName string Название чата.
conversationState string Статус чата.
lastActivityDateTime string Дата и время последнего обновления чата.

Пример ответа

{
  "result": [
    {
      "customerId": "42551",
      "channelType": "VIBER",
      "channelName": "Viber chat",
      "conversationState": "CLOSED_BY_CUSTOMER",
      "lastActivityDateTime": "2023-08-29T05:03:05.687192"
    },
    {
      "customerId": "103252",
      "channelType": "WEBSITE_CHAT",
      "channelName": "Widget for BC",
      "conversationState": "CLOSED_BY_TIMEOUT",
      "lastActivityDateTime": "2023-05-17T08:24:13.775101"
    },
    {
      "customerId": "103397",
      "channelType": "WEBSITE_CHAT",
      "channelName": "Widget for BC",
      "conversationState": "CLOSED_BY_CSI",
      "lastActivityDateTime": "2023-07-04T15:30:28.718501"
    }
  ]
}

Получение количества активных пользователей за последний месяц

Для получения количества активных пользователей за последние 30 дней необходимо вызвать GET /api​/customers-active​/{organizationId}, передавая данные авторизации и параметры организации в заголовке.

Параметры запроса

Параметр Тип данных Описание
organizationId integer

ID организации. Path-параметр.

Для получения можно обратиться к менеджеру компании или в техническую поддержку.

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

curl -X GET "https://chat.devinotele.com/api/customers-active/1" \
  -H "accept: */*" \
  -H "authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ=="

Параметры ответа

Параметр Тип данных Описание
result string Количество активных пользователей за последние 30 дней.

Пример ответа

{
  "result": "4577"
}

Получение всех новых чатов

Для получения информации по открытым чатам, к которым еще не подключился агент, необходимо вызвать GET ​/api​/extended-customers​/new, передавая данные авторизации и дополнительные параметры в заголовке.

Параметры запроса

Примечание

Если вы хотите получить параметры всех открытых чатов, указывать в запросе дополнительные параметры не нужно.

Параметр Тип данных Описание
channelIds array[integer] ID каналов чата. Соответствует параметру channelProfileId из результатов запроса. Можно указать несколько.
size integer Количество записей в результате поиска.
page integer Страница результатов поиска. При этом должен быть указан параметр size: в таком случае число записей делится на size, и получившееся число - это итоговое количество страниц. То есть, если общее число записей будет 200, в size будет указано 10, а в page - 8, то мы получим диапазон записей с 81 по 90.
sortDirection string

В каком порядке выводить результаты запроса.

Возможные значения:

asc - в возрастающем порядке.
desc- в убывающем порядке.

tagIds array[integer] ID тэгов, прикрепленных к чату. Можно указать несколько.
titleLike string Поиск ключевого слова в текстах заголовков чатов.
customerId integer ID пользователя, если нужно получить чаты, привязанные только к одному пользователю.

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

curl -X GET "https://chat.devinotele.com/api/extended-customers/new?page=3&size=10&sortDirection=asc&tagIds=13&customerId=623" \
  -H "accept: */*" \
  -H "authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ=="

Параметры ответа

Параметр Тип данных Описание
id integer ID чата с пользователем, который совпадает с ID этого пользователя. 
externalId string ID пользователя из канала, который инициировал переписку. 
creationDateTime string Дата и время создания чата.
channelProfileId integer ID канала чата.
channelType string

Тип канала чата. Доступны значения:

VIBER
TELEGRAM
WEBSITE_CHAT - чат в виджете на веб-сайте.
EMAIL
WHATSAPP
VKONTAKTE

channelProfileName string Название профиля пользователя.
title string Заголовок диалога. Содержит ID пользователя.
additionalInfo object Дополнительная информация о пользователе, автоматически полученная через канал общения. В зависимости от канала общения, эта информация будет отличаться.
agentAdditionalInfo object

Дополнительная информация о пользователе, которую вручную добавил агент. В личном кабинете из данного объекта отображаются только три поля:

phone - номер телефона пользователя.
email - email пользователя.
note - внутренний комментарий от агента.

externalAdditionalInfo object Дополнительная информация о пользователе, которую можно добавить через отдельный метод. Рекомендуется использовать этот объект для загрузки данных из CRM-систем.
avatarUrl string Ссылка на аватар пользователя.
hints array[object]

Список быстрых ответов, использовавшихся в чате.

Каждый объект содержит в себе параметр:

answer- быстрый ответ, использованный в чате.

unreadMessagesCount integer Количество непрочитанных сообщений в чате.
lastConversation object Данные последнего диалога с пользователем.
tags array[object]

Список объектов тэга, прикрепленных к пользователю.

Каждый объект содержит в себе параметры:

id - ID тэга.
name - название тэга.

previewMessage string Превью последнего непрочитанного сообщения в чате.
isAttachmentPreview boolean Отображается ли превью прикрепленных к сообщениям файлов.
lastConversation
Параметр Тип данных Описание
id integer ID последнего диалога с пользователем.
agentId integer ID агента, который общался с пользователем в последний раз.
lastActivityDateTime string Дата и время последнего обновления чата.
state string Статус чата с пользователем. В данном случае все чаты будут со статусом NEW - новый чат, агент еще не назначен.
teamId integer ID группы, которая будет обслуживать пользователя.

Пример ответа

{
  "result": [
    {
      "id": 90834,
      "externalId": "f0ad6e8c-1673-4119-8442-85b3c0a5c9f4",
      "creationDateTime": "2023-02-06T08:16:32.100197",
      "channelProfileId": 14,
      "channelType": "WEBSITE_CHAT",
      "channelProfileName": "User Name",
      "title": "#90834 Anonymous User",
      "additionalInfo": {
        "name": "Anonymous User",
        "country": "Russia",
        "language": "English"
      },
      "unreadMessagesCount": 1,
      "lastConversation": {
        "id": 229568,
        "state": "NEW",
        "teamId": "25",
        "lastActivityDateTime": "2023-02-06T08:27:19.738114"
      },
      "previewMessage": "Hello.",
      "isAttachmentPreview": false
    },
    {
      "id": 137971,
      "externalId": "78428348823",
      "creationDateTime": "2023-10-24T11:06:54.454023",
      "channelProfileId": 10064,
      "channelType": "WHATSAPP",
      "channelProfileName": "User",
      "title": "#137971 abonent",
      "additionalInfo": {
        "name": "abonent",
        "phone": "78428348823"
      },
      "unreadMessagesCount": 262,
      "lastConversation": {
        "id": 276908,
        "state": "NEW",
        "lastActivityDateTime": "2023-10-24T10:56:43"
      },
      "previewMessage": "Please answer",
      "isAttachmentPreview": false
    }
  ]
}

Получение всех активных чатов

Для получения информации по активным чатам, к которым уже подключился агент, необходимо вызвать GET /api​/extended-customers​/in_progress, передавая данные авторизации и дополнительные параметры в заголовке.

Параметры запроса

Примечание

Если вы хотите получить параметры всех активных чатов, указывать в запросе дополнительные параметры не нужно.

Параметр Тип данных Описание
agentIds array[integer] ID агентов, назначенных на чат. Можно указать несколько.
channelIds array[integer] ID каналов чата. Соответствует параметру channelProfileId из результатов запроса. Можно указать несколько.
size integer Количество записей в результате поиска.
page integer Страница результатов поиска. При этом должен быть указан параметр size: в таком случае число записей делится на size, и получившееся число - это итоговое количество страниц. То есть, если общее число записей будет 200, в size будет указано 10, а в page - 8, то мы получим диапазон записей с 81 по 90.
sortDirection string

В каком порядке выводить результаты запроса.

Возможные значения:

asc - в возрастающем порядке.
desc- в убывающем порядке.

tagIds array[integer] ID тэгов, прикрепленных к чату. Можно указать несколько.
titleLike string Поиск ключевого слова в текстах заголовков чатов.
customerId integer ID пользователя, если нужно получить чаты, привязанные только к одному пользователю.

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

curl -X GET "https://chat.devinotele.com/api/extended-customers/in_progress?agentIds=377&channelIds=3&page=2&size=10&sortDirection=acs&tagIds=23" \
  -H "accept: */*" \
  -H "authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ=="

Параметры ответа

Параметр Тип данных Описание
id integer ID чата с пользователем, который совпадает с ID этого пользователя. 
externalId string ID пользователя из канала, который инициировал переписку. 
creationDateTime string Дата и время создания чата.
channelProfileId integer ID канала чата.
channelType string

Тип канала чата. Доступны значения:

VIBER
TELEGRAM
WEBSITE_CHAT - чат в виджете на веб-сайте.
EMAIL
WHATSAPP
VKONTAKTE

channelProfileName string Название профиля пользователя.
title string Заголовок диалога. Содержит ID пользователя.
additionalInfo object Дополнительная информация о пользователе, автоматически полученная через канал общения. В зависимости от канала общения, эта информация будет отличаться.
agentAdditionalInfo object

Дополнительная информация о пользователе, которую вручную добавил агент. В личном кабинете из данного объекта отображаются только три поля:

phone - номер телефона пользователя.
email - email пользователя.
note - внутренний комментарий от агента.

externalAdditionalInfo object Дополнительная информация о пользователе, которую можно добавить через отдельный метод. Рекомендуется использовать этот объект для загрузки данных из CRM-систем.
avatarUrl string Ссылка на аватар пользователя.
hints array[object]

Список быстрых ответов, использовавшихся в чате.

Каждый объект содержит в себе параметр:

answer- быстрый ответ, использованный в чате.

unreadMessagesCount integer Количество непрочитанных сообщений в чате.
lastConversation object Данные последнего диалога с пользователем.
tags array[object]

Список объектов тэга, прикрепленных к пользователю.

Каждый объект содержит в себе параметры:

id - ID тэга.
name - название тэга.

previewMessage string Превью последнего непрочитанного сообщения в чате.
isAttachmentPreview boolean Отображается ли превью прикрепленных к сообщениям файлов.
lastConversation
Параметр Тип данных Описание
id integer ID последнего диалога с пользователем.
agentId integer ID агента, который общался с пользователем в последний раз.
lastActivityDateTime string Дата и время последнего обновления чата.
state string Статус чата с пользователем. В данном случае все чаты будут со статусом IN_PROGRESS - чат с пользователем открыт, идет диалог с агентом.
teamId integer ID группы, к которой принадлежит агент.

Пример ответа

{
  "result": [
    {
      "id": 103396,
      "externalId": "cafe2627-b394-4b1d-88dc-41c7b3c50cf0",
      "creationDateTime": "2023-06-29T12:38:38.882808",
      "channelProfileId": 14,
      "channelType": "WEBSITE_CHAT",
      "channelProfileName": "User",
      "title": "#103396 Anonymous User",
      "additionalInfo": {
        "name": "Anonymous User",
        "country": "United States",
        "language": "English"
      },
      "agentAdditionalInfo": {
        "name": "Anonymous User",
        "email": "myemail@nogmail.com",
        "agentNote": "123"
      },
      "unreadMessagesCount": 0,
      "lastConversation": {
        "id": 242274,
        "state": "IN_PROGRESS",
        "agentId": "3",
        "lastActivityDateTime": "2023-07-13T11:23:23.181"
      },
      "tags": [
        {
          "id": 1,
          "name": "SVD"
        }
      ],
      "isAttachmentPreview": true
    },
    {
      "id": 137973,
      "externalId": "78428348823",
      "creationDateTime": "2023-11-01T17:20:13.468249",
      "channelProfileId": 10064,
      "channelType": "WHATSAPP",
      "channelProfileName": "User",
      "title": "#137973 User",
      "additionalInfo": {
        "name": "User",
        "phone": "78428348823"
      },
      "unreadMessagesCount": 0,
      "lastConversation": {
        "id": 276912,
        "state": "IN_PROGRESS",
        "agentId": "3",
        "lastActivityDateTime": "2023-11-01T17:22:06.136"
      },
      "previewMessage": "123123123",
      "isAttachmentPreview": false
    }
  ]
}

Получение всех архивных чатов

Для получения информации по архивным или закрытым чатам необходимо вызвать GET /api​/extended-customers​/archived, передавая данные авторизации и дополнительные параметры в заголовке.

Параметры запроса

Примечание

Если вы хотите получить параметры всех архивных чатов, указывать в запросе дополнительные параметры не нужно.

Параметр Тип данных Описание
agentIds array[integer] ID агентов, назначенных на чат. Можно указать несколько.
channelIds array[integer] ID каналов чата. Соответствует параметру channelProfileId из результатов запроса. Можно указать несколько.
size integer Количество записей в результате поиска.
page integer Страница результатов поиска. При этом должен быть указан параметр size: в таком случае число записей делится на size, и получившееся число - это итоговое количество страниц. То есть, если общее число записей будет 200, в size будет указано 10, а в page - 8, то мы получим диапазон записей с 81 по 90.
sortDirection string

В каком порядке выводить результаты запроса.

Возможные значения:

asc - в возрастающем порядке.
desc- в убывающем порядке.

tagIds array[integer] ID тэгов, прикрепленных к чату. Можно указать несколько.
titleLike string Поиск ключевого слова в текстах заголовков чатов.
customerId integer ID пользователя, если нужно получить чаты, привязанные только к одному пользователю.

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

curl -X GET "https://chat.devinotele.com/api/extended-customers/archived?agentIds=329&agentIds=213&channelIds=2&page=2&size=12&sortDirection=desc&customerId=193" \
  -H "accept: */*" \
  -H "authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ=="

Параметры ответа

Параметр Тип данных Описание
id integer ID чата с пользователем, который совпадает с ID этого пользователя. 
channelProfileId integer ID канала чата.
conversationId integer ID последнего диалога с пользователем.
title string Заголовок диалога. Содержит ID пользователя.
lastActivityDateTime string Дата и время последнего обновления чата.
tags array[object]

Список объектов тэга, прикрепленных к пользователю.

Каждый объект содержит в себе параметры:

id - ID тэга.
name - название тэга.

previewMessage string Превью последнего непрочитанного сообщения в чате.
isAttachmentPreview boolean Отображается ли превью прикрепленных к сообщениям файлов.

Пример ответа

{
  "result": [
    {
      "id": 123391,
      "channelProfileId": 14,
      "title": "#123391 Anonymous User",
      "conversationId": 262205,
      "lastActivityDateTime": "2023-10-23T19:31:53.052786",
      "previewMessage": "2",
      "isAttachmentPreview": false
    },
    {
      "id": 133393,
      "channelProfileId": 10057,
      "title": "#133393 Anonymous User",
      "conversationId": 272213,
      "lastActivityDateTime": "2023-09-16T05:57:18.766143",
      "tags": [
        {
          "id": 1,
          "name": "SVD"
        }
      ]
    },
    {
      "id": 133397,
      "channelProfileId": 10061,
      "title": "#133397 Anonymous User",
      "conversationId": 272282,
      "lastActivityDateTime": "2023-10-19T08:13:27.439608",
      "previewMessage": "Thank you!",
      "isAttachmentPreview": false
    }
  ]
}

Получение всех чатов с ботами

Для получения информации по чатам с ботами необходимо вызвать GET ​/api​/extended-customers​/bots, передавая данные авторизации и дополнительные параметры в заголовке.

Параметры запроса

Примечание

Если вы хотите получить параметры всех чатов с ботами, указывать в запросе дополнительные параметры не нужно.

Параметр Тип данных Описание
agentIds array[integer] ID агентов, назначенных на чат. Можно указать несколько.
channelIds array[integer] ID каналов чата. Соответствует параметру channelProfileId из результатов запроса. Можно указать несколько.
size integer Количество записей в результате поиска.
page integer Страница результатов поиска. При этом должен быть указан параметр size: в таком случае число записей делится на size, и получившееся число - это итоговое количество страниц. То есть, если общее число записей будет 200, в size будет указано 10, а в page - 8, то мы получим диапазон записей с 81 по 90.
sortDirection string

В каком порядке выводить результаты запроса.

Возможные значения:

asc - в возрастающем порядке.
desc- в убывающем порядке.

tagIds array[integer] ID тэгов, прикрепленных к чату. Можно указать несколько.
titleLike string Поиск ключевого слова в текстах заголовков чатов.

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

curl -X GET "https://chat.devinotele.com/api/extended-customers/bots?agentIds=2324&agentIds=342342&page=3&size=10&sortDirection=asc&tagIds=3&tagIds=59" \
  -H "accept: */*" \
  -H "authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ=="

Параметры ответа

Параметр Тип данных Описание
id integer ID чата с пользователем, который совпадает с ID этого пользователя. 
externalId string ID пользователя из канала, который инициировал переписку. 
creationDateTime string Дата и время создания чата.
channelProfileId integer ID канала чата.
channelType string

Тип канала чата. Доступны значения:

VIBER
TELEGRAM
WEBSITE_CHAT - чат в виджете на веб-сайте.
EMAIL
WHATSAPP
VKONTAKTE

channelProfileName string Название профиля пользователя.
title string Заголовок диалога. Содержит ID пользователя.
additionalInfo object Дополнительная информация о пользователе, автоматически полученная через канал общения. В зависимости от канала общения, эта информация будет отличаться.
agentAdditionalInfo object

Дополнительная информация о пользователе, которую вручную добавил агент. В личном кабинете из данного объекта отображаются только три поля:

phone - номер телефона пользователя.
email - email пользователя.
note - внутренний комментарий от агента.

externalAdditionalInfo object Дополнительная информация о пользователе, которую можно добавить через отдельный метод. Рекомендуется использовать этот объект для загрузки данных из CRM-систем.
avatarUrl string Ссылка на аватар пользователя.
hints array[object]

Список быстрых ответов, использовавшихся в чате.

Каждый объект содержит в себе параметр:

answer- быстрый ответ, использованный в чате.

unreadMessagesCount integer Количество непрочитанных сообщений в чате.
lastConversation object Данные последнего диалога с пользователем.
tags array[object]

Список объектов тэга, прикрепленных к пользователю.

Каждый объект содержит в себе параметры:

id - ID тэга.
name - название тэга.

previewMessage string Превью последнего непрочитанного сообщения в чате.
isAttachmentPreview boolean Отображается ли превью прикрепленных к сообщениям файлов.
lastConversation
Параметр Тип данных Описание
id integer ID последнего диалога с пользователем.
agentId integer ID агента, который общался с пользователем в последний раз.
lastActivityDateTime string Дата и время последнего обновления чата.
state string Статус чата с пользователем. В данном случае все чаты будут со статусом NEW - новый чат, агент еще не назначен.
teamId integer ID группы, к которой принадлежит агент.

Пример ответа

{
  "result": [
    {
      "id": 123392,
      "externalId": "78428348823",
      "creationDateTime": "2023-09-01T08:04:25.156238",
      "channelProfileId": 10064,
      "channelType": "WHATSAPP",
      "channelProfileName": "User",
      "title": "#123392 User",
      "additionalInfo": {
        "name": "User",
        "phone": "78428348823"
      },
      "externalAdditionalInfo": {
        "additionalProp1": "string"
      },
      "unreadMessagesCount": 0,
      "lastConversation": {
        "id": 276911,
        "state": "NEW",
        "agentId": "31642",
        "lastActivityDateTime": "2023-10-31T15:49:49.588463"
      }
    },
    {
      "id": 133391,
      "externalId": "248b4820-1c68-4f2f-b068-5693a16640b6",
      "creationDateTime": "2023-09-07T15:48:21.724973",
      "channelProfileId": 10043,
      "channelType": "WEBSITE_CHAT",
      "channelProfileName": "localhost",
      "title": "#133391 Anonymous User",
      "additionalInfo": {
        "name": "Anonymous User",
        "country": "Russia",
        "language": "Russian"
      },
      "agentAdditionalInfo": {
        "phone": "78428348823",
        "name": "Ivan"
      },
      "unreadMessagesCount": 2,
      "lastConversation": {
        "id": 272210,
        "state": "NEW",
        "agentId": "21627",
        "lastActivityDateTime": "2023-09-08T09:51:05.511065"
      },
      "previewMessage": "Hello! ChatBot by Devino.Chat",
      "isAttachmentPreview": false
    }
  ]
}

Статистика

Статистика по чатам

Для получения общей статистики по всем чатам за сегодняшний день необходимо вызвать GET /api​/conversations-statistics, передавая данные авторизации в заголовке.

Данный запрос не имеет дополнительных параметров.

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

curl -X GET "https://chat.devinotele.com/api/conversations-statistics" \
  -H "accept: */*" \
  -H "authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ=="

Параметры ответа

Параметр Тип данных Описание
countConversationsAgents integer Количество агентов, которые сегодня общались с пользователями.
countConversationsBots integer Количество ботов, которые сегодня общались с пользователями.
countCreatedConversations integer Количество созданных чатов.
countClosedByAgentConversations integer Количество чатов, закрытых агентом.
countClosedByTimeoutConversations integer Количество чатов, закрытых после истечения срока диалога.
countCreatedCustomers integer Количество созданных пользователей.

Пример ответа

{
  "result": {
    "countConversationsAgents": 23,
    "countConversationsBots": 10,
    "countCreatedConversations": 846,
    "countClosedByAgentConversations": 374,
    "countClosedByTimeoutConversations": 235,
    "countCreatedCustomers": 567
  }
}

Активность по каналам

Для получения активности по каналам чатов необходимо вызвать GET /api​/channel-activity, передавая данные авторизации и дополнительные параметры в заголовке.

Параметры запроса

Параметр Тип данных Описание
startDate
обязательный
date Дата начала сбора статистики. Формат YYYY-MM-DD.
finishDate
обязательный
date Дата окончания сбора статистики. Формат YYYY-MM-DD.
channelProfileId integer ID канала чата, для которого нужна статистика.

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

curl -X GET "https://chat.devinotele.com/api/channel-activity?channelProfileId=3242&finishDate=2023-10-24&startDate=2023-10-17" \
  -H "accept: */*" \
  -H "authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ=="

Параметры ответа

Параметр Тип данных Описание
countCreateConversations object Объект содержит в себе параметры в виде дат. Значение каждого параметра даты - количество открытых диалогов за этот день.
countClosedConversations object Объект содержит в себе параметры в виде дат. Значение каждого параметра даты - количество закрытых диалогов за этот день.

Пример ответа

{
  "result": {
    "countCreateConversations": {
      "2023-10-17": 54,
      "2023-10-18": 0,
      "2023-10-19": 11,
      "2023-10-20": 6,
      "2023-10-21": 0,
      "2023-10-22": 12,
      "2023-10-23": 38,
      "2023-10-24": 4570
    },
    "countClosedConversations": {
      "2023-10-17": 55,
      "2023-10-18": 0,
      "2023-10-19": 13,
      "2023-10-20": 1,
      "2023-10-21": 0,
      "2023-10-22": 11,
      "2023-10-23": 47,
      "2023-10-24": 0
    }
  }
}

Среднее время реакции по каналу

Для получения среднего времени реакции агента по каналу необходимо вызвать GET /api​/reaction-time, передавая данные авторизации и дополнительные параметры в заголовке.

Параметры запроса

Параметр Тип данных Описание
startDate
обязательный
date Дата начала сбора статистики. Формат YYYY-MM-DD.
finishDate
обязательный
date Дата окончания сбора статистики. Формат YYYY-MM-DD.
channelProfileId integer ID канала чата, для которого нужна статистика.
teamId integer ID группы, к которой принадлежат агенты.

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

curl -X GET "https://chat.devinotele.com/api/reaction-time?channelProfileId=3242&teamId=23&finishDate=2023-10-24&startDate=2023-10-17" \
  -H "accept: */*" \
  -H "authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ=="

Параметры ответа

Параметр Тип данных Описание
result object Объект содержит в себе параметры в виде дат. Значение каждого параметра даты - cреднее время от обращения к оператору в чате до того, как он отправит свое первое сообщение пользователю, в секундах.

Пример ответа

{
  "result": {
    "2023-09-03": 100,
    "2023-09-04": 3,
    "2023-09-05": 253,
    "2023-09-06": 0,
    "2023-09-07": 441,
    "2023-09-08": 78,
    "2023-09-09": 0,
    "2023-09-10": 0
  }
}

Среднее время ответа агента

Для получения среднего времени ответа на сообщения пользователей от агента необходимо вызвать GET /api​/average-agent-answer-time, передавая данные авторизации и дополнительные параметры в заголовке.

Параметры запроса

Параметр Тип данных Описание
startDate
обязательный
date Дата начала сбора статистики. Формат YYYY-MM-DD.
finishDate
обязательный
date Дата окончания сбора статистики. Формат YYYY-MM-DD.
channelProfileId integer ID канала чата, для которого нужна статистика.

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

curl -X GET "https://chat.devinotele.com/api/average-agent-answer-time?channelProfileId=3242&finishDate=2023-10-24&startDate=2023-10-17" \
  -H "accept: */*" \
  -H "authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ=="

Параметры ответа

Параметр Тип данных Описание
result object Объект содержит в себе параметры в виде дат. Значение каждого параметра даты - cреднее время ответа агента на сообщения пользователей в секундах.

Пример ответа

{
  "result": {
    "2023-10-17": 487,
    "2023-10-18": 0,
    "2023-10-19": 129,
    "2023-10-20": 130,
    "2023-10-21": 0,
    "2023-10-22": 567,
    "2023-10-23": 269,
    "2023-10-24": 508
  }
}

Средняя продолжительность диалога

Для получения среднюю продолжительность диалога с агентом необходимо вызвать GET ​/api​/average-dialog-duration, передавая данные авторизации и дополнительные параметры в заголовке.

Параметры запроса

Параметр Тип данных Описание
startDate
обязательный
date Дата начала сбора статистики. Формат YYYY-MM-DD.
finishDate
обязательный
date Дата окончания сбора статистики. Формат YYYY-MM-DD.
channelProfileId integer ID канала чата, для которого нужна статистика.

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

curl -X GET "https://chat.devinotele.com/api/average-dialog-duration?channelProfileId=3242&finishDate=2023-10-24&startDate=2023-10-17" \
  -H "accept: */*" \
  -H "authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ=="

Параметры ответа

Параметр Тип данных Описание
result object Объект содержит в себе параметры в виде дат. Значение каждого параметра даты - cредняя продолжительность диалога пользователя с агентом в секундах.

Пример ответа

{
  "result": {
    "2023-10-14": 0,
    "2023-10-15": 10348,
    "2023-10-16": 14332,
    "2023-10-17": 7094,
    "2023-10-18": 0,
    "2023-10-19": 15636,
    "2023-10-20": 0
  }
}

Отчеты

Групповой отчет

Для загрузки отчета по группам агентов в формате .csv необходимо вызвать GET ​/api​/reports​/team-conversations, передавая данные авторизации и дополнительные параметры в заголовке.

Параметры запроса

Параметр Тип данных Описание
startDateTime
обязательный
datetime Дата и время начала сбора данных для отчета. Формат YYYY-MM-DD%20hh%3Amm.
endDateTime
обязательный
datetime Дата и время окончания сбора данных для отчета. Формат YYYY-MM-DD%20hh%3Amm.
channelProfileIds
обязательный
integer ID каналов чатов с разделением запятой и пробелом в ASCII кодировке: %2C%20.
teamIds
обязательный
integer ID групп с разделением запятой и пробелом в ASCII кодировке: %2C%20.
zoneOffset
обязательный
integer Часовой пояс получателя. Формат - смещение в минутах, например, 180 для Москвы (GMT+3).

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

curl -X GET "https://chat.devinotele.com/api/reports/team-conversations?channelProfileIds=10064&endDateTime=2023-11-10%2000%3A00&startDateTime=2023-10-10%2000%3A00&teamIds=10%2C%2011%2C%2012&zoneOffset=30" \
  -H "accept: */*" \
  -H "authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ=="

Параметры ответа

Данные ответа отображаются в формате таблицы с параметрами:

Параметр Тип данных Описание
Team string Название группы агентов.
Channel string Название канала чата.
Received conversations integer Количество созданных чатов.
Resolved conversations integer Количество закрытых чатов.
Timeout Conversations integer Количество чатов, закрытых после истечения срока диалога.
Closed by customer integer Количество чатов, закрытых пользователем.
Closed by channel integer Количество чатов, закрытых агентом.
Average response time integer Среднее время ответа на сообщения пользователей от агента в секундах.
Average conversation duration integer Средняя продолжительность диалога агента с пользователем в секундах.

Пример ответа

Team;Channel;Received conversations;Resolved conversations;Timeout Conversations;Closed by customer;Closed by channel;Average response time;Average conversation duration;
TEAM_AGENTS;Channel_name;5;1;0;0;0;3 385;3423;
TEAM_AGENTS2;Channel_name;6;1;0;0;0;69;6565;
TEAM_AGENTS3;Channel_name;5;1;0;0;0;2;2344;
TEAM_AGENTS4;Channel_name;4;1;0;0;0;69;9345;

Отчет по агентам

Для загрузки отчета по агентам в формате .csv необходимо вызвать GET ​/api​/reports​/agent-conversations, передавая данные авторизации и дополнительные параметры в заголовке.

Параметры запроса

Параметр Тип данных Описание
startDateTime
обязательный
datetime Дата и время начала сбора данных для отчета. Формат YYYY-MM-DD%20hh%3Amm.
endDateTime
обязательный
datetime Дата и время окончания сбора данных для отчета. Формат YYYY-MM-DD%20hh%3Amm.
channelProfileIds
обязательный
integer ID каналов чатов с разделением запятой и пробелом в ASCII кодировке: %2C%20.
teamIds
обязательный
integer ID групп с разделением запятой и пробелом в ASCII кодировке: %2C%20.
zoneOffset
обязательный
integer Часовой пояс получателя. Формат - смещение в минутах, например, 180 для Москвы (GMT+3).
timeReportType string

Тип учета времени. Доступны значения:

MINUTE - в минутах.
SECOND - в секундах.

По умолчанию учет времени идет в секундах.

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

curl -X GET "https://chat.devinotele.com/api/reports/agent-conversations?agentIds=11620%2C%2011621%2C%201620%2C%203&endDateTime=2023-11-10%2000%3A00&startDateTime=2023-10-10%2000%3A00&timeReportType=MINUTE&zoneOffset=30" \
  -H "accept: */*" \
  -H "authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ=="

Параметры ответа

Данные ответа отображаются в формате таблицы с параметрами:

Подсказка

Последняя строка таблицы - статистика за весь указанный период.

Параметр Тип данных Описание
Agent email string Email агента.
Received conversations integer Количество созданных чатов.
Reassigned conversations integer Количество чатов, перенаправленных на группу агентов.
Resolved conversations integer Количество закрытых чатов.
Timeout Conversations integer Количество чатов, закрытых после истечения срока диалога.
Closed by customer integer Количество чатов, закрытых пользователем.
Closed by channel integer Количество чатов, закрытых агентом.
Average response time integer Среднее время ответа на сообщения пользователей от агента в секундах.
Average conversation duration integer Средняя продолжительность диалога агента с пользователем в секундах.
Average first response time integer Среднее время реакции агента по каналу.

Пример ответа

Agent email;Received conversations;Reassigned conversations;Resolved conversations;Timeout Conversations;Closed by customer;Closed by channel;Average response time;Average conversation duration;Average first response time;
team_leader@devinotele.com;1;0;0;0;0;0;103;0;2;
agent1@devinotele.com;17;2;5;0;0;0;308;0;18;
agent2@devinotele.com;0;0;0;0;0;0;0;0;0;
agent3@devinotele.com;72;0;32;0;0;0;0;0;4;
Total;90;2;37;0;0;0;411;0;24;

Отчет по боту

Для загрузки отчета по сценариям бота в формате .csv необходимо вызвать GET ​/api​/reports​/bot-steps​/{botId}, передавая данные авторизации и дополнительные параметры в заголовке.

Подсказка

Сценарии ботов можно настраивать в личном кабинете.

Параметры запроса

Параметр Тип данных Описание
botId
обязательный
integer ID бота. Path-параметр.
startDate datetime Дата и время начала сбора данных для отчета. Формат YYYY-MM-DD%20hh%3Amm.
endDate datetime Дата и время окончания сбора данных для отчета. Формат YYYY-MM-DD%20hh%3Amm.
timezoneOffsetMinutes integer Часовой пояс получателя. Формат - смещение в минутах, например, 180 для Москвы (GMT+3).

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

curl -X GET "https://chat.devinotele.com/api/reports/bot-steps/11624?endDate=2023-11-10%2000%3A00&startDate=2022-10-10%2000%3A00&timezoneOffsetMinutes=30" \
  -H "accept: */*" \
  -H "authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ=="

Параметры ответа

Данные ответа отображаются в формате таблицы с параметрами:

Параметр Тип данных Описание
Scenario string Название сценария бота.
Block string Название блока сценария.
Total forward count integer Сколько раз бот использовал данный блок в чатах с пользователями.

Пример ответа

Scenario;Block;Total forward count
scenario_1;start;86
scenario_1;default;25
scenario_1;answer;74
scenario_1;block;3
scenario_1;email;5
scenario_1;phone;5

Отчет по каналам

Для загрузки отчета по каналам чатов в формате .csv необходимо вызвать GET ​/api​/reports​/channel-conversations, передавая данные авторизации и дополнительные параметры в заголовке.

Параметры запроса

Параметр Тип данных Описание
startDateTime
обязательный
datetime Дата и время начала сбора данных для отчета. Формат YYYY-MM-DD%20hh%3Amm.
endDateTime
обязательный
datetime Дата и время окончания сбора данных для отчета. Формат YYYY-MM-DD%20hh%3Amm.
channelProfileIds
обязательный
integer ID каналов чатов с разделением запятой и пробелом в ASCII кодировке: %2C%20.
teamIds
обязательный
integer ID групп с разделением запятой и пробелом в ASCII кодировке: %2C%20.
zoneOffset
обязательный
integer Часовой пояс получателя. Формат - смещение в минутах, например, 180 для Москвы (GMT+3).

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

curl -X GET "https://chat.devinotele.com/api/reports/channel-conversations?channelProfileIds=14%2C%2010043%2C%2010057%2C%2010064&endDateTime=2023-11-10%2000%3A00&startDateTime=2023-10-10%2000%3A00&zoneOffset=30" \
  -H "accept: */*" \
  -H "authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ=="

Параметры ответа

Данные ответа отображаются в формате таблицы с параметрами:

Параметр Тип данных Описание
Channel string Название канала чата.
Received conversations integer Количество созданных чатов.
Resolved conversations integer Количество закрытых чатов.
Timeout Conversations integer Количество чатов, закрытых после истечения срока диалога.
Closed by customer integer Количество чатов, закрытых пользователем.
Closed by channel integer Количество чатов, закрытых агентом.
Average response time integer Среднее время ответа на сообщения пользователей от агента в секундах.
Average conversation duration integer Средняя продолжительность диалога агента с пользователем в секундах.

Пример ответа

Channel;Received conversations;Resolved conversations;Timeout Conversations;Closed by customer;Closed by channel;Average response time;Average reaction time;Average conversation duration;
Channel1;6;1;0;0;0;69;6565;
localhost;101;32;0;0;0;0;0;1;
Website_chat_channel;5;1;0;0;0;2;2344;
Viber_chat;4 579;2;0;0;0;14;751;193;

Отчет по опросам CSI

Для загрузки отчета по опросам CSI в формате .csv необходимо вызвать GET ​/api​/reports​/csi, передавая данные авторизации и дополнительные параметры в заголовке.

Параметры запроса

Параметр Тип данных Описание
startDateTime
обязательный
datetime Дата и время начала сбора данных для отчета. Формат YYYY-MM-DD%20hh%3Amm.
endDateTime
обязательный
datetime Дата и время окончания сбора данных для отчета. Формат YYYY-MM-DD%20hh%3Amm.
channelProfileIds
обязательный
integer ID каналов чатов с разделением запятой и пробелом в ASCII кодировке: %2C%20.
teamIds
обязательный
integer ID групп с разделением запятой и пробелом в ASCII кодировке: %2C%20.
zoneOffset
обязательный
integer Часовой пояс получателя. Формат - смещение в минутах, например, 180 для Москвы (GMT+3).

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

curl -X GET "https://chat.devinotele.com/api/reports/csi?channelProfileIds=14%2C%2010043%2C%2010057%2C%2010064&endDateTime=2023-11-10%2000%3A00&startDateTime=2023-10-10%2000%3A00&zoneOffset=30" \
  -H "accept: */*" \
  -H "authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ=="

Параметры ответа

Данные ответа отображаются в формате таблицы с параметрами:

Параметр Тип данных Описание
Channel string Название канала чата.
Agent string Email агента.
Customer integer ID пользователя, назначенный ему на момент прохождения опроса. В связанных диалогах пользователя у него будут другие ID.
Message string Текст ответа на вопрос.
Send time datetime Дата и время отправки сообщения с ответом на вопрос.

Пример ответа

Channel;Agent;Customer;Message;Send time;
Channel1;agent1@devinotele.com;103 367;Good;2023-10-17T11:35:16.877;
Channel1;agent1@devinotele.com;103 367;Not bad;2023-10-17T13:10:55.748;
Website_chat_channel;agent2@devinotele.com;103 367;Bad;2023-10-17T13:24:34.276;
Website_chat_channel;agent2@devinotele.com;103 367;Good;2023-10-23T21:20:44.269;
Website_chat_channel;agent3@devinotele.com;103 367;Didn't help;2023-10-23T21:30:37.406;

Возможные статусы

Статусы чатов

Статус Описание
NEW Новый чат, агент еще не назначен.
IN_PROGRESS Чат с пользователем открыт, идет диалог с агентом.
CLOSED_BY_CUSTOMER Пользователь закрыл чат.
CLOSED_AFTER_CHANNEL_PROFILE_CLOSE Чат закрыт автоматически при закрытии канала.
CLOSED_BY_REASSIGNING Чат закрыт, агент перенаправил чат на группу.
CLOSED_BY_AGENT Чат закрыт, диалог окончил агент.
CLOSED_BY_TIMEOUT Чат закрыт, так как время диалога истекло.
CSI Чат с пользователем открыт, идет опрос пользователя.
CLOSED_BY_CSI Чат закрыт, опрос пользователя окончен.