# Импорт и экспорт
# Формат экспорта элемента
Элементы экспортируются в JSON следующей структуры:
{
"id": "5db2ddf6-580b-4eb8-bd5b-9f6989d7b3ee", // Идентификатор элемента
"projectId": "FPX6pFkX", // Идентификатор проекта
"title": "Воин", // Название
"ownTitle": "Воин", // Тоже название... но используйте то, что выше 🤪
"name": "", // Служебное имя
"creatorUserId": 28, // Кто создал
"isAbstract": false, // Является абстрактным или нет
"parentIds": [...], // Первый уровень родителей (идентификатор базового элемента/шаблона)
"typeIds": [...], // Идентификаторы всей цепочка родителей
"createdAt": "2024-02-15T03:42:27.297Z", // Когда создан
"updatedAt": "2024-05-24T16:43:35.181Z", // Когда обновлен
"workspaceId": "aa0f0949-53b2-47ef-b7ca-2fb4cc1d36f5", // Идентификатор папки
"ownIcon": null, // Переопределение иконки
"icon": "walk-fill", // Иконка
"index": 4, // Порядок отображения (вещенственное число)
"values": { // Значения блоков со служебным именем
"characteristics": { // Итоговые значения блока под служебным именем 'characteristics'
"health": 100
"attack": 10
},
...
},
"blocks": [ // Массив блоков, из которых состоит элемент
{
"id": "d452c1c0-0a38-483d-91c3-41b376e14c74", // Идентификатор блока
"name": "", // Служебное имя блока
"title": "Описание", // Заголовок блока
"own": false, // Является ли блок собственным или он унаследован
"type": "text", // Тип блока
"props": { ... } // Собственные значения блока
"inherited": { ... }, // Собственные значения блока
"computed": { ... }, // Итоговые значения блока
"index": 3.42, // Порядок отображения (вещенственное число)
"createdAt": "2024-02-17T10:05:04.952Z", // Когда создан
"updatedAt": "2024-05-24T16:43:35.181Z", // Когда обновлен
},
],
"references": [ // Прикрепленные к элементу ссылки
{
"sourceBlockId":"d452c1c0-0a38-483d-91c3-41b376e14c74", // Идентификатор блока, к которому прикреплен элемент
"targetAssetId":"7eecaf25-26c0-478b-a1cf-7445b776be72", // Идентификатор прикрепленного элемента
"targetBlockId":null, // Идентификатор блока, который был прикреплен
"createdAt":"2024-09-27T06:52:04.733Z" // Когда создана ссылка
},
...
],
}
Мы рекомендуем назначать важным блокам служебные имена. Тогда их значения будут вставляться в поле values
объекта. Структура поля зависит от типа блока
Например, вы создаете описание некоторого персонажа, которому хотите задать два атрибута: health
(жизни) и attack
(сила аттаки). Для этого создаете блок "Таблица свойств" с двумя полями:
Задаете ему служебное имя chracteristics
. Тогда в values
у элемента будет:
"values": {
"characteristics": {
"health": 100
"attack": 10
},
},
TIP
Чтобы назначить блоку служебное имя, нажмите на три точки в правой части блока
Обратите внимание, что введенное имя поля было "нормализовано": буквы верхнего регистра заменены на нижний, убраны служебные символы, пробелы заменены на знаки подчеркивания
TIP
Вы можете писать названия свойств и на русском. При необходимости можно переопределить имена свойств, задав им служебные имена
WARNING
Обратите внимание, что по умолчанию все поля в таблице не типизированы, поэтому в зависимости от того, что будет введено в поле, вы можете получать разные типы значений в JSON. Чтобы это предотвратить, задайте нужный тип в настройках поля