Статистика¶
Получение информации о чатах¶
Получение связанных чатов¶
Для получения связанных чатов по контактным данным пользователя необходимо вызвать GET /api/related-conversations/{organizationId}, передавая данные авторизации и параметры поиска в заголовке.
Параметры запроса¶
Внимание
В параметрах запроса обязательно должен быть указан либо email, либо номер телефона пользователя.
| Параметр | Тип данных | Описание |
|---|---|---|
| organizationId обязательный |
integer | ID организации. Path-параметр. Для получения можно обратиться к менеджеру компании или в техническую поддержку. |
| currentCustomerId | integer | ID пользователя, для которого нужно получить диалог. У пользователя может быть несколько ID даже если его номер телефона и email будут совпадать. |
| phoneNumber | string | Номер телефона пользователя. |
| 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 | Тип канала чата. Доступны значения: ○ |
| 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 | В каком порядке выводить результаты запроса. Возможные значения: ○ |
| 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 | Тип канала чата. Доступны значения: ○ |
| channelProfileName | string | Название профиля пользователя. |
| title | string | Заголовок диалога. Содержит ID пользователя. |
| additionalInfo | object | Дополнительная информация о пользователе, автоматически полученная через канал общения. В зависимости от канала общения, эта информация будет отличаться. |
| agentAdditionalInfo | object | Дополнительная информация о пользователе, которую вручную добавил агент. В личном кабинете из данного объекта отображаются только три поля: ○ |
| externalAdditionalInfo | object | Дополнительная информация о пользователе, которую можно добавить через отдельный метод. Рекомендуется использовать этот объект для загрузки данных из CRM-систем. |
| avatarUrl | string | Ссылка на аватар пользователя. |
| hints | array[object] | Список быстрых ответов, использовавшихся в чате. Каждый объект содержит в себе параметр: ○ |
| unreadMessagesCount | integer | Количество непрочитанных сообщений в чате. |
| lastConversation | object | Данные последнего диалога с пользователем. |
| tags | array[object] | Список объектов тэга, прикрепленных к пользователю. Каждый объект содержит в себе параметры: ○ |
| 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 | В каком порядке выводить результаты запроса. Возможные значения: ○ |
| 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 | Тип канала чата. Доступны значения: ○ |
| channelProfileName | string | Название профиля пользователя. |
| title | string | Заголовок диалога. Содержит ID пользователя. |
| additionalInfo | object | Дополнительная информация о пользователе, автоматически полученная через канал общения. В зависимости от канала общения, эта информация будет отличаться. |
| agentAdditionalInfo | object | Дополнительная информация о пользователе, которую вручную добавил агент. В личном кабинете из данного объекта отображаются только три поля: ○ |
| externalAdditionalInfo | object | Дополнительная информация о пользователе, которую можно добавить через отдельный метод. Рекомендуется использовать этот объект для загрузки данных из CRM-систем. |
| avatarUrl | string | Ссылка на аватар пользователя. |
| hints | array[object] | Список быстрых ответов, использовавшихся в чате. Каждый объект содержит в себе параметр: ○ |
| unreadMessagesCount | integer | Количество непрочитанных сообщений в чате. |
| lastConversation | object | Данные последнего диалога с пользователем. |
| tags | array[object] | Список объектов тэга, прикрепленных к пользователю. Каждый объект содержит в себе параметры: ○ |
| 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 | В каком порядке выводить результаты запроса. Возможные значения: ○ |
| 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] | Список объектов тэга, прикрепленных к пользователю. Каждый объект содержит в себе параметры: ○ |
| 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 | В каком порядке выводить результаты запроса. Возможные значения: ○ |
| 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 | Тип канала чата. Доступны значения: ○ |
| channelProfileName | string | Название профиля пользователя. |
| title | string | Заголовок диалога. Содержит ID пользователя. |
| additionalInfo | object | Дополнительная информация о пользователе, автоматически полученная через канал общения. В зависимости от канала общения, эта информация будет отличаться. |
| agentAdditionalInfo | object | Дополнительная информация о пользователе, которую вручную добавил агент. В личном кабинете из данного объекта отображаются только три поля: ○ |
| externalAdditionalInfo | object | Дополнительная информация о пользователе, которую можно добавить через отдельный метод. Рекомендуется использовать этот объект для загрузки данных из CRM-систем. |
| avatarUrl | string | Ссылка на аватар пользователя. |
| hints | array[object] | Список быстрых ответов, использовавшихся в чате. Каждый объект содержит в себе параметр: ○ |
| unreadMessagesCount | integer | Количество непрочитанных сообщений в чате. |
| lastConversation | object | Данные последнего диалога с пользователем. |
| tags | array[object] | Список объектов тэга, прикрепленных к пользователю. Каждый объект содержит в себе параметры: ○ |
| 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 | Тип учета времени. Доступны значения: ○ По умолчанию учет времени идет в секундах. |
Пример запроса¶
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 |
Чат закрыт, опрос пользователя окончен. |