Перейти к основному содержимому

Подключение нового профиля

Новый профиль содержит расширенную информацию о пользователе.

Часть информации завязана на интеграции и недоступна для редактирования пользователем.

Данные зависящие от интеграции:

  • отдел
  • должность
  • место работы
  • день рождения – заполняется при интеграции, но на UI не отображается
  • режим работы – гибрид/офис/удаленный
  • номер телефона

Данные поля не будут отображаться в UI, если не настроена интеграция или данные поля не были заполнены.

подсказка

Интеграция разрабатывается и настраивается на стороне компании, использующей мессенджер

Другая часть информации доступна для ручного заполнения в разделе Профиль -> Настройки профиля.

Данные, заполняемые пользователем:

  • дополнительные контакты
  • график работы

Интеграция

Для интеграции необходимо использовать метод API (ниже приведено описание метода).

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

Обновление профиля пользователя

Требует авторизацию от бота и права update_user_profiles (по умолчанию роль system_admin)

Метод запроса

PATCH /users/{user_id}/profile

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

НазваниеТипОбязательностьОписание
user_idstringдаid пользователя
Тело JSON-запроса
{
"phone": "string",
"additional_contact_name": "string",
"additional_contact": "string",
"hide_additional_contact": false,
"schedule": "string",
"hide_schedule": false,
"work_place": "string",
"work_scheme": "string",
"department": "string",
"position": "string",
"birthday": "string",
"profile_url": "string"
}

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

НазваниеТипОбязательностьОписание
phonestringнетНомер телефона пользователя, в произвольном формате.
schedulestringнетГрафик работы пользователя, в произвольном формате.
hide_schedulebooleanнетУстановите значение в true, чтобы скрыть время работы от других пользователей, false — показывать для всех. По умолчанию — false.
work_placestringнетМесто работы, в произвольном формате.
work_schemestringнетРежим работы, в произвольном формате. Например: гибрид/офис/удаленный.
departmentstringнетОтдел пользователя.
positionstringнетДолжность пользователя.
birthdaystringнетДень рождения пользователя в формате RFC3339. Данный параметр не отображается на UI.
profile_urlstringнетСсылка на профиль пользователя в другой системе. Например, в той, с которой настроена интеграция.
additional_contactstringнетДополнительный контакт. Например: ссылка на соц. сети.
additional_contact_namestringнетНазвание дополнительного контакта. Например: telegram.
hide_additional_contactbooleanнетДля скрытия дополнительного контакта от других пользователя установите значение в true, для показа — true. По умолчанию false.

Пример ответа кодом 200

200 Response
{
"user_id": "string",
"phone": "string",
"is_public_phone": false,
"additional_contact_name": "string",
"additional_contact": "string",
"hide_additional_contact": false,
"schedule": "string",
"hide_schedule": false,
"work_place": "string",
"work_scheme": "string",
"department": "string",
"position": "string",
"birthday": "string",
"profile_url": "string"
}

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

Код ответаЗначениеОписание
200OKЗапрос выполнен успешно
400Bad RequestОшибка в запросе
401UnauthorizedПредоставлен неверный токен
403ForbiddenДоступ запрещен

Ответ для кода 200

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

НазваниеТипОбязательностьОписание
user_idstringдаИдентификатор пользователя.
phonestringнетНомер телефона пользователя, в формате E.164.
is_public_phonebooleanнетДля показа номера телефона другим пользователям установите параметр в true, чтобы скрыть — false. По умолчанию: false.
schedulestringнетВремя работы пользователя, в произвольном формате.
hide_schedulebooleanнетУстановите значение в true, чтобы скрыть время работы от других пользователей, false — показывать для всех. По умолчанию: false.
work_placestringнетРасположение рабочего места, офис, в произвольном формате.
work_schemestringнетСхема работы, в произвольном формате.
departmentstringнетДепартамент работы пользователя.
positionstringнетРоль или должность пользователя.
birthdaystringнетДень рождения пользователя в формате RFC3339.
profile_urlstringнетСсылка пользователя во внешней системе.
additional_contactstringнетДополнительный контакт, например ссылка на соц. сети.
additional_contact_namestringнетНазвание дополнительного контакта, например Telegram.
hide_additional_contactbooleanнетДля скрытия дополнительного контакта от других пользователя установите значение в true, для показа — true. По умолчанию: false

Ответ для кода 400

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

НазваниеТипОбязательностьОписание
status_codeintegerнетКод ответа.
idstringнетid ответа.
messagestringнетСообщение ответа.
request_idstringнетid запроса.

Ответ для кода 401

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

НазваниеТипОбязательностьОписание
status_codeintegerнетКод ответа.
idstringнетid ответа.
messagestringнетСообщение ответа.
request_idstringнетid запроса.

Ответ для кода 403

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

НазваниеТипОбязательностьОписание
status_codeintegerнетКод ответа.
idstringнетid ответа.
messagestringнетСообщение ответа.
request_idstringнетid запроса.

Ответ для кода 404

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

НазваниеТипОбязательностьОписание
status_codeintegerнетКод ответа.
idstringнетid ответа.
messagestringнетСообщение ответа.
request_idstringнетid запроса.

Включение нового профиля

Для включения нового профиля пользователя необходимо:

  • в конфигурации сервера установить переменную среды (env): TIME_SERVICESETTINGS_ENABLENEWPROFILE: true
  • перезагрузить клиенты webapp, desktop и mobile
примечание

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

Новый профиль будет доступен и отображать всю информацию, которая была передана через API в пункте Обновить профиль пользователя.