Описание API ЛК сервиса Team

Примеры даны с использованием Linux утилиты curl. Вы можете использовать любой аналогичный удобный вам инструмент.

Логин и получение токена

Выполните запрос с выводом результата:

curl -d "{\"login\":\"{YOUR_EMAIL}\",\"password\":\"{YOUR_PASS}\"}" -H "Content-Type: application/json" -H "Accept: application/json, text/plain, */*" -H "Referer: https://{YOUR_TENANT}.softphone.pro/login/" -k -X POST "https://{YOUR_TENANT}.softphone.pro/login/api/auth" -v

где:

Параметр Описание Пример
{YOUR_TENANT} Адрес вашего ЛК в сервисе Team, строка после https:// до первой точки. company
{YOUR_EMAIL} Почта администратора ЛК. admin@company.ru
{YOUR_PASS} Пароль администратора ЛК. password

В результате запроса ищем строку начинающуюся с:

< Set-Cookie: jwt

Из этой строки берём токен (далее по тексту {YOUR_TOKEN}) - всё, что находится между знаком = и символом ;.

Создание пользователя

Выполните запрос:

curl -X POST -H "Content-Type: application/json" -H "Authorization: Bearer {YOUR_TOKEN}" -d "{\"usesSoftphone\":true,\"name\":\"John\",\"surname\":\"Doe\",\"email\":\"user@company.ru\",\"password\":\"123456\",\"role\":\"EMPLOYEE\",\"groups\":[1,2],\"config\":\"{% include \\\"_Restrictions\\\" %}\n{% include \\\"_SipSettings\\\" %}\n{% include \\\"_Account1\\\" %}\n{% include \\\"_ACW\\\" %}\n{% include \\\"_Statuses\\\" %}\n{% include \\\"_Camera\\\" %}\n{% include \\\"_ScreenRecording\\\" %}\n{% include \\\"Default\\\" %}\"}" https://{YOUR_TENANT}.softphone.pro/api/settings/users/save

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

Параметр Описание Пример
usesSoftphone Использует ли пользователь Softphone.Pro. true
name Имя пользователя (непустая строка, длиной до 256 символов). John
surname Фамилия пользователя (непустая строка, длиной до 256 символов). Doe
email Электронная почта пользователя. user@company.ru
password Пароль пользователя (непустая строка, длиной от 6 до 256 символов). 123456
role Роль пользователя.

EMPLOYEE - оператор;

MANAGER - руководитель;

RESTRICTED_ADMIN - администратор (без управления подпиской).

groups

ID групп, в которых пользователь будет состоять, один или несколько через запятую. Параметр задаётся в квадратных скобках.

ID групп можно получить в адресной строке браузера во время настройки группы.

[1] - пользователь состоит в группе с ID 1;

[2,4,7] - пользователь состоит в группах с ID 2, 4 и 7.

manageGroups

ID групп, которыми пользователь будет управлять, если его роль MANAGER или RESTRICTED_ADMIN, один или несколько через запятую. Параметр задаётся в квадратных скобках.

ID групп можно получить в адресной строке браузера во время настройки группы.

[1] - пользователь управляет группой с ID 1;

[2,4,7] - пользователь управляет группами с ID 2, 4 и 7.

config Конфигурация Softphone.Pro. Пример конфигурации вы можете найти в поле Конфигурационный файл на странице настроек пользователя сервиса Team. {% include "_Restrictions" %}\n{% include "_SipSettings" %}\n{% include "_Account1" %}\n{% include "_ACW" %}\n{% include "_Statuses" %}\n{% include "_Camera" %}\n{% include "_ScreenRecording" %}\n{% include "Default" %}

После удачного выполнения запроса на добавление вам вернётся ID созданного пользователя, вы можете сохранить его для того, чтобы использовать при удалении.

Удаление пользователя

Выполните запрос:

curl -X POST -H "Content-Type: application/json" -H "Authorization: Bearer {YOUR_TOKEN}" -d "{USER_ID}" https://{YOUR_TENANT}.softphone.pro/api/settings/users/delete
Параметр Описание Пример
{USER_ID}

ID пользователей для удаления, один или несколько через запятую. Значение параметра задаётся в квадратных скобках.

ID пользователя можно получить в ответе на запрос на добавление или в адресной строке браузера во время настройки пользователя.

[1] - удалить пользователя с ID 1;

[2,4,7] - удалить пользователей с ID 2, 4 и 7.

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

Выполните запрос:

curl.exe -b "jwt={YOUR_TOKEN}" -k -X GET "https://{YOUR_TENANT}.softphone.pro/api/reports/agents/worktime/raw?from=2019-01-01T00:00:00&to=2020-01-02T00:00:00&format=csv"

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

Параметр Описание Пример
from Дата и время в формате UTC, с которого надо получить данные. 2019-01-01T00:00:00
to Дата и время в формате UTC, по которое надо получить данные. 2019-12-31T23:59:59
format Формат полученных данных. Необязательный параметр. csv или tsv

Получение истории звонков

Выполните запрос:

curl.exe -b "jwt={YOUR_TOKEN}" -k -X GET "https://{YOUR_TENANT}.softphone.pro/api/history/calls/export?dateFrom=2021-10-13T00:00:00+05:00&dateTo=2021-10-14T00:00:00+05:00&localTimeZoneOffset=%2B300"

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

Параметр Описание Пример
dateFrom Дата и время в формате UTC, с которого надо получить историю. 2021-10-13T00:00:00
dateTo Дата и время в формате UTC, по которое надо получить историю. 2021-10-14T00:00:00
localTimeZoneOffset Сдвиг времени от нулевого часового пояса в минутах. Положительный сдвиг задаётся знаком %2B (+ в кодировке), отрицательный - знаком -. %2B180
или
-300
lang Язык экспортируемого файла. По умолчанию английский (en). Необязательный параметр. ru или en