Формат данных
Выгруженный архив будет содержать файл import.jsonl
в формате JSONL со следующими типами объектов
Команда
Поле | Тип | Описание |
---|---|---|
name | string | Имя команды. |
display_name | string | Отображаемое имя команды. |
type | string | Тип команды. Должно быть одним из следующих значений: O - для открытых команд, I - для команд доступных только по приглашению. |
description | string | Описание команды. |
allow_open_invite | boolean | Флаг, указывающий, что команда открыта и пользователи могут приглашать других пользователей в команду. |
Пример
{
"type": "team",
"team": {
"name": "team_name",
"display_name": "Team display name",
"type": "O",
"description": "Team description",
"allow_open_invite": true
}
}
Канал
Поле | Тип | Описание |
---|---|---|
team | string | Имя команды, к которой принадлежит канал. |
name | string | Имя канала. |
display_name | string | Отображаемое имя канала. |
type | string | Тип канала. Должно быть одним из следующих значений: O - для публичных каналов, P - для приватных каналов. |
header | string | Заголовок канала. |
purpose | string | Цель канала. |
Пример
{
"type": "channel",
"channel": {
"team": "team_name",
"name": "channel_name",
"display_name": "Channel display name",
"type": "O",
"header": "Channel header",
"purpose": "Channel purpose"
}
}
Пользователь
Поле | Тип | Описание |
---|---|---|
username | string | Имя пользователя. |
email | string | Email пользователя. |
auth_service | string | Имя сервиса авторизации. Может иметь следующие значения:"" или отсутствует - аутентификация по паролю;"ldap" - аутентификация через LDAP;"saml" - аутентификация через SAML;"openid" - аутентификация через OpenID. |
auth_data | string | Данные для аутентификации пользователя. Обязательно если auth_service установлен и не "" . |
nickname | string | Никнейм пользователя. |
first_name | string | Имя пользователя. |
last_name | string | Фамилия пользователя. |
position | string | Должность пользователя. |
roles | string | Роли пользователя. Может иметь следующие значения: "system_user" , "system_admin system_user" , "system_guest" , "system_restricted_guest" . |
locale | string | Язык пользователя. |
delete_at | int64 | Время удаления пользователя, количество timestamp миллисекунд. |
teams | array | Массив объектов UserTeamMembership, описывает команды в которых состоит пользователь. |
use_markdown_preview | bool | Использовать форматирование markdown при просмотре превью сообщений. Допустимые значения: "true" , "false" . |
use_formatting | bool | Включить форматирование сообщений для ссылок, эмоджи, стилей текста и разрывов строк. Допустимые значения: "true" , "false" . |
show_unread_section | string | Включить показ непрочитанных сообщений в верху сайдбара. Может иметь следующие значения: "true" , "false" . |
theme | string | Тема пользователя. |
military_time | string | Какой формат времени отображать пользователю. "true" - 24 часовой, "false" - 12 часовой. |
collapse_previews | string | Сворачивать превью ссылок по умолчанию. Может иметь следующие значения: "true" - сворачивать, "false" - не сворачивать. |
message_display | string | В каком стиле отображать сообщения: "clean" - стандартный стиль, "compact" - компактный. |
channel_display_mode | string | В каком стиле отображать каналы: "full" - полной длинны, "centered" - блок фиксированной ширины, расположенный по центру. |
email_interval | string | Интервал отправки email уведомлений. Может иметь следующие значения:"immediate" - email отправляются немедленно;"fifteen" - email отправляются батчем, каждый 15 минут;"hour" - email отправляются батчем каждый час. |
notify_props | UserNotifyProps object | Настройки уведомлений пользователя. |
UserNotifyProps
Поле | Тип | Описание |
---|---|---|
desktop | string | Уведомления для десктоп версии приложения. Может иметь следующие значения: "all", "mention", "none" |
desktop_sound | string | Включение звука уведомлений для десктоп версии приложения. Может иметь следующие значения: "true", "false" |
email | string | Включение email уведомлений. Может иметь следующие значения: "true", "false" |
mobile | string | Уведомления для мобильных устройств. Может иметь следующие значения: "all", "mention", "none" |
mobile_push_status | string | Настройка когда push уведомления должны отправляться. Может иметь следующие значения: "online" - когда пользователь онлайн, отошел и оффлайн; "away" - когда пользователь отошел и оффлайн; "offline" - когда пользователь оффлайн. |
channel | string | Запускают @all, @channel и @here упоминание. Может иметь следующие значения: "true", "false" |
comments | string | Предпочтение уведомлений об ответах. Может иметь следующие значения: "any" - отправляется уведомление на сообщения в тредах, если пользователь начал тред или является его участником; "root" - отправляется уведомление на сообщения в тредах, если пользователь начал тред; "never" - не отправлять уведомление на сообщения в тредах, если пользователь не упомянут. |
mention_keys | string | Набор слов, через запятую, которые вызывают упоминания для пользователя. |
UserTeamMembership
Поле | Тип | Описание |
---|---|---|
name | string | Имя команды. |
theme | string | Тема пользователя для определенной команды. |
roles | string | Роли пользователя для определенной команды. Может иметь следующие значения: "team_user", "team_admin team_user", "team_guest", "team_restricted_guest" |
channels | array | Массив объектов UserChannelMembership, описывает каналы, в которых состоит пользователь. |
UserChannelMembership
Поле | Тип | Описание |
---|---|---|
name | string | Имя канала. |
roles | string | Роли пользователя для определенного канала. Может иметь следующие значения: "channel_user", "channel_admin channel_user", "channel_guest", "channel_restricted_guest" |
notify_props | ChannelNotifyProps object | Настройки уведомлений пользователя для определенного канала. |
favorite | boolean | Является ли канал избранным. "true" "false" |
ChannelNotifyProps
Поле | Тип | Описание |
---|---|---|
desktop | string | Уведомления для десктоп версии приложения. Может иметь следующие значения: "default", "all", "mention", "none" |
mobile | string | Уведомления для мобильных устройств. Может иметь следующие значения: "default", "all", "mention", "none" |
mark_unread | string | Помечать канал как непрочитанный. Может иметь следующие значения: "all" - для всех непрочитанных сообщений; "mention" - только для упоминаний. |
Пример
{
"type": "user",
"user": {
"username": "username",
"email": "email@example.ru",
"teams": [
{
"name": "team_name",
"theme": "team_theme",
"roles": "team_user",
"channels": [
{
"name": "channel_name",
"roles": "channel_user",
"notify_props": {
"desktop": "all"
}
}
]
}
]
}
}
Message
Поле | Тип | Описание |
---|---|---|
team | string | Имя команды, в котором находится сообщение. |
channel | string | Имя канала, в котором находится сообщение. |
user | string | Имя пользователя, который отправил сообщение. |
type | string | Тип сообщения. Если не пустая строка, значит сообщение отправлено системой и как правило информирует о системных событиях. |
message | string | Текст сообщения. |
props | object | Свойства сообщения. |
create_at | int64 | timestamp создания сообщения миллисекундах. |
edit_at | int64 | timestamp редактирования сообщения в миллисекундах. |
replies | array | Массив объектов Reply, в которых содержатся ответы на сообщение. |
reactions | array | Массив объектов Reaction, в которых содержатся реакции на сообщение. |
attachments | array | Массив объектов Attachment, в которых содержатся вложения к сообщению. |
Reply
Поле | Тип | Описание |
---|---|---|
user | string | Имя пользователя, который ответил на сообщение. |
message | string | Текст ответа на сообщение. |
create_at | int64 | Время создания ответа, количество timestamp миллисекунд. |
reactions | array | Массив объектов Reaction, в которых содержатся реакции на ответ. |
attachments | array | Массив объектов Attachment, в которых содержатся вложения к ответу. |
Reaction
Поле | Тип | Описание |
---|---|---|
user | string | Имя пользователя, который добавил реакцию. |
create_at | int64 | Время создания реакции, количество timestamp миллисекунд. |
emoji_name | string | Имя эмоджи, который добавил пользователь. |
Attachment
Поле | Тип | Описание |
---|---|---|
path | string | Путь к файлу. |
Пример
{
"type": "post",
"post": {
"team": "team_name",
"channel": "channel_name",
"user": "username",
"message": "message",
"props": {
"attachments": [
{"text": "attachment_text", "pretext": "attachment_pretext"}
]
},
"create_at": 1547561600000,
"replies": [
{
"user": "username",
"message": "message",
"create_at": 1547561600000,
"flagged_by": ["username11"]
}
],
"reactions": [
{
"user": "username",
"create_at": 1547561600000,
"emoji_name": "emoji_name"
}
],
"attachments": [
{
"path": "path"
}
]
}
}
Личный канал
Поле | Тип | Описание |
---|---|---|
members | array | Массив имен пользователей, которые входят в личный канал. |
header | string | Заголовок личного канала. |
Пример
{
"type": "direct_channel",
"direct_channel": {
"members": ["username1", "username2"],
"header": "header"
}
}
Сообщение в личном канале
Поле | Тип | Описание |
---|---|---|
channel_members | array | Массив имен пользователей, которые входят в личный канал. |
user | string | Имя пользователя, который отправил сообщение. |
message | string | Текст сообщения. |
create_at | int64 | timestamp создания сообщения в миллисекундах. |
edit_at | int64 | timestamp редактирования сообщения в миллисекундах. |
replies | array | Массив объектов Reply, в которых содержатся ответы на сообщение. |
reactions | array | Массив объектов Reaction, в которых содержатся реакции на сообщение. |
attachments | array | Массив объектов Attachment, в которых содержатся вложения к сообщению. |
Пример
{
"type": "direct_post",
"direct_post": {
"channel_members": ["username1", "username2"],
"user": "username",
"message": "message",
"create_at": 1547561600000,
"replies": [
{
"user": "username",
"message": "message",
"create_at": 1547561600000
}
],
"reactions": [
{
"user": "username",
"create_at": 1547561600000,
"emoji_name": "emoji_name"
}
],
"attachments": [
{
"path": "path"
}
]
}
}
Эмоджи
Поле | Тип | Описание |
---|---|---|
name | string | Имя эмоджи. |
image | string | Путь до файла с изображением для эмоджи. |
Пример
{
"type": "emoji",
"emoji": {
"name": "emoji_name",
"image": "emojis/emoji_name.png"
}
}