Unified Identity Management logo figure Unified Identity Management logo figure
Поиск Поиск по документации

API контакт-центра

API предназначено для реализации типовых операций в интерфейсе сотрудников контакт-центра. Также может использоваться и в других бизнес-процессах, требующих аналогичной функциональности. Методы предполагают использование системной авторизации. Для некоторых методов есть аналоги, которые позволяют вызывать их от имени пользователя.

Предупреждение
Документ находится в разработке

Авторизация

Для выполнения запросов к данному API интегрируемое приложение должно пройти системную аутентификацию в соответствии с Аутентификация системы (OAuth Client Credentials Flow) . В свойствах у используемого oauth2 агента должна быть установлена роль ROLE_SYSTEM, для этого в конфигурационных файлах UIDM для данного агента должна присутствовать строка вида

sunIdentityServerDeviceKeyValue[<index>]=ROLE=ROLE_SYSTEM

Получение информации о пользователе

Получение информации о пользователе выполняется с помощью API управления пользователями.

Работа с пользовательскими сессиями

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

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

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

GET /sso/api/sessionList/сс-process?msisdn={msisdn}&service={service}&size={size}&page={page}
Host: {sso_host}
Content-Type: application/json
Accept: application/json
Authorization: Bearer sso_1.0_eyAiY3R5IjogIkpXVCIsICJ0eXAiOiAiand0IiwgImVuYyI6ICJBMTI4Q0JDX0hTMjU2IiwgImFsZyI6ICJSU0FFU19QS0NTMV9WMV81IiB9.Ed7JMXgqmqYzJ9SXNwVzJ5uuepKwdI5F8i6mG9zknaPcAizSU1XU7E892iXjJWOYcvPbe6FDQyhPIDcNw0lCoS157nJR6LTle7K79hy-NTQwuL8zDjjj8221WuJTaDAlwKssmY8d0xKxIBsHjYVRSmtBVJwK0zRt9FRxcSDMwrM.JXn8xuLqhdJSPai7nWnleA
Параметры запроса
  • msisdn - номер телефона, необязательный параметр

  • service - идентификатор OAuth2-агента (client_id), необязательный параметр

  • size - количество записей на страницу, необязательный параметр

  • page - номер страницы, необязательный параметр

В случае успешного получения списка сессий, будет возвращён постраничный список текущих активных сессий.

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

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 638
{
  "content": [
    {
      "executionId": "b77a11ae-231b-4115-9756-2454dfc1b5f1",
      "ipAddress": "194.44.214.32",
      "startDate": "2017-12-06T15:03:06.160Z",
      "device": "Asus",
      "os": "Microsoft Windows 10",
      "city": "UA Львов",
      "authMethod": "login_password",
      "userAgent": "Google Chrome 47",
      "browser": "Chrome/40.0.2214.115",
      "msisdn": "79876543210"
    },
    {
      "executionId": "a37b95de-496b-4115-9756-0ba309b5b5f1",
      "ipAddress": "194.44.214.32",
      "startDate": "2017-12-06T15:03:06.160Z",
      "device": "Asus",
      "os": "Microsoft Windows 10",
      "city": "UA Львов",
      "authMethod": "login_password",
      "userAgent": "Google Chrome 47",
      "browser": "Chrome/40.0.2214.115",
      "msisdn": "79876543210"
    }
  ],
  "last": true,
  "totalPages": 1,
  "totalElements": 2,
  "first": true,
  "numberOfElements": 2,
  "size": 20,
  "number": 0
}
Параметры ответа
  • content - содержит в себе список полученных сессий, где:

    • executionId - уникальный идентификатор токена, не отображается, если currentSession = true

    • ipAddress - IP адрес, с которого был запрошен токен

    • startDate - дата получения токена

    • device - устройство с которого был запрошен токен

    • os - операционная система, которая установлена на устройстве

    • browser - браузер

    • city - город

    • msisdn - MSISDN

    • authMethod - способ аутентификации

    • userAgent - устройство

  • last - указывает, что текущая страница в ответе является последней

  • totalPages - количество страниц доступных для просмотра

  • totalElements - общее количество сессий доступных для просмотра

  • first - указывает, что текущая страница в ответе первая

  • numberOfElements - количество сессий в текущем ответе

  • size - размер страницы

  • number - номер текущей страницы, начинается с 0

Завершение активных сессий по идентификаторам сессий

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

DELETE /sso/api/sessionList/cc-process?executionIds={executionIds}
Host: {{sso_host}}
Authorization: Bearer sso_1.0_eyAiY3R5IjogIkpXVCIsICJ0eXAiOiAiand0IiwgImVuYyI6ICJBMTI4Q0JDX0hTMjU2IiwgImFsZyI6ICJSU0FFU19QS0NTMV9WMV81IiB9.Ed7JMXgqmqYzJ9SXNwVzJ5uuepKwdI5F8i6mG9zknaPcAizSU1XU7E892iXjJWOYcvPbe6FDQyhPIDcNw0lCoS157nJR6LTle7K79hy-NTQwuL8zDjjj8221WuJTaDAlwKssmY8d0xKxIBsHjYVRSmtBVJwK0zRt9FRxcSDMwrM.JXn8xuLqhdJSPai7nWnleA
Параметры запроса

{executionIds} - список UUID’ов сессий, которые требуется завершить, разделённых запятой

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

HTTP/1.1 200 OK
Content-Length: 1

2

В ответе приходит количество удалённых сессий.

Завершение активных сессий по идентификатору пользователя

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

DELETE /sso/api/sessionList/cc-process?principalId={principalId}
Host: {{sso_host}}
Authorization: Bearer sso_1.0_eyAiY3R5IjogIkpXVCIsICJ0eXAiOiAiand0IiwgImVuYyI6ICJBMTI4Q0JDX0hTMjU2IiwgImFsZyI6ICJSU0FFU19QS0NTMV9WMV81IiB9.Ed7JMXgqmqYzJ9SXNwVzJ5uuepKwdI5F8i6mG9zknaPcAizSU1XU7E892iXjJWOYcvPbe6FDQyhPIDcNw0lCoS157nJR6LTle7K79hy-NTQwuL8zDjjj8221WuJTaDAlwKssmY8d0xKxIBsHjYVRSmtBVJwK0zRt9FRxcSDMwrM.JXn8xuLqhdJSPai7nWnleA
Параметры запроса

{principalId} - идентификатор пользователя, все активные сессии которого необходимо завершить

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

HTTP/1.1 200 OK
Content-Length: 1

2

В ответе приходит количество удалённых сессий.