Тема
Структуры данных 
Response 
Объект ответа от API Эсборд.
Содержит следующие поля:
| Название | Описание | Обязательный | 
|---|---|---|
| status | Статус ответа. | Да | 
| data | Объект, содержащий результат запроса или подробности об ошибке. | Нет | 
| error | Сообщение об ошибке. | Нет | 
Response status 
Числовое значение, определяющее успешность запроса.
Допустимые значения:
| Значение | Описание | 
|---|---|
| 0 | Успех | 
| 1 | Ошибка | 
Drawing 
Элемент доски.
Свойства:
| Название | Описание | Обязательный | 
|---|---|---|
| id | Идентификатор элемента. | Да | 
| mode | Тип элемента. | Да | 
| textPayload | Текстовая информация элемента. | Нет | 
| graphicsPayload | Графическая информация элемента. | Да | 
| graphicsProps | Графические свойства элемента. | Да | 
| incId | Числовое значение, соответствующее элементу. Используется для пагинации. | Да | 
| frameId | Идентификатор фрейма, к которому прикреплён элемент. | Нет, требует запроса с флагом withFrameId | 
| board | Идентификатор доски, на которой расположен элемент. | Да | 
| linkSrc | Значение ссылки, установленной на элемент. | Нет | 
Пример объекта Drawing
json
{
  "id": "b6b60e1b-f7ef-4065-9c1f-398c326e487f",
  "mode": "rectangle",
  "textPayload": {
    "textOps": [
      {
        "insert": "Default text, "
      },
      {
        "insert": "styled text",
        "attributes": {
          "color": "#90be6d",
          "italic": true
        }
      },
      {
        "insert": "\n"
      }
    ]
  },
  "graphicsPayload": {
    "position": {
      "x": 581.8920288085938,
      "y": 360.9859924316406
    },
    "graphicsParams": {}
  },
  "graphicsProps": {
    "color": "#000000",
    "fillColor": "#00000000"
  },
  "incId": 64,
  "frameId": "938c8ee2-8f41-4c81-9d59-e3bd3d00b2da",
  "board": "a4728a3f-514e-4be5-b98d-bd014d09cfa6"
}Drawing modes 
Перечисление, определяющее тип элемента доски.
Допустимые значения:
| Значение | Описание | 
|---|---|
| sticker | Стикер | 
| text | Текст | 
| image | Изображение | 
| frame | Фрейм | 
| pencil | Карандаш | 
| line | Линия | 
| bezierCurve | Кривая линия | 
| polyLine | Ломаная линия | 
| rectangle | Прямоугольник | 
| roundedRectangle | Округлённый прямоугольник | 
| ellipse | Эллипс | 
| triangle | Треугольник | 
| rhombus | Ромб | 
| hexagon | Шестиугольник | 
Drawing text payload 
Объект, содержащий текстовую информацию элемента доски.
Свойства:
| Название | Описание | Обязательный | 
|---|---|---|
| textOps | Массив фрагментов текста. | Нет | 
Свойства фрагмента текста:
| Название | Описание | Обязательный | 
|---|---|---|
| insert | Текст фрагмента. | Да | 
| attributes | Атрибуты фрагмента. | Нет | 
Свойства атрибутов фрагмента текста:
| Название | Описание | Обязательный | 
|---|---|---|
| color | Цвет фрагмента текста. | Нет | 
| bold | Логическое значение. Определяет, является ли фрагмент текста жирным. Значение по умолчанию: false. | Нет | 
| italic | Логическое значение. Определяет, является ли фрагмент текста курсивом. Значение по умолчанию: false. | Нет | 
| underline | Логическое значение. Определяет, является ли фрагмент текста подчеркнутым. Значение по умолчанию: false. | Нет | 
Пример объекта Drawing text payload
json
{
  "textOps": [
    {
      "insert": "Default text, "
    },
    {
      "insert": "styled text",
      "attributes": {
        "color": "#90be6d",
        "italic": true
      }
    },
    {
      "insert": "\n"
    }
  ]
}Drawing graphics payload 
Объект, содержащий графическую информацию элемента доски.
Свойства:
| Название | Описание | Обязательный | 
|---|---|---|
| position | Координаты элемента на доске. Представляет собой объект с полями xиy. | Да | 
| graphicsParams | Дополнительные графические параметры. Используется для фреймов и представляет собой объект с полем label(заголовок фрейма). | Нет | 
Пример объекта Drawing graphics payload
json
{
  "position": {
    "x": 580.3920288085938,
    "y": 352.9859924316406
  },
  "graphicsParams": {
    "label": "Frame title"
  }
}Drawing graphics props 
Объект, содержащий графические свойства элемента доски.
Свойства:
| Название | Описание | Обязательный | 
|---|---|---|
| color | Основной цвет элемента. Для фигур фреймов - цвет рамки. Для стикеров - цвет стикера. | Да | 
| fillColor | Цвет заливки элемента. | Да | 
Пример объекта Drawing graphics props
json
{
  "color": "#90BE6D",
  "fillColor": "#F58176"
}Board member role 
Перечисление, определяющее роль участника доски.
Допустимые значения:
| Значение | Описание | 
|---|---|
| owner | Владелец | 
| editor | Редактор | 
| spectator | Зритель | 
Board member 
Объект, содержащий информацию об участнике доски.
Свойства:
| Название | Описание | Обязательный | 
|---|---|---|
| userId | Идентификатор пользователя. | Да | 
| role | Роль участника на доске. | Да | 
| name | Имя участника. | Да | 
| color | Цвет курсора участника на данной доске. | Да | 
| accessRestricted | Логическое значение. Определяет, заблокирован ли участник. | Да | 
| incId | Числовое значение, соответствующее элементу. Используется для пагинации. | Да | 
Пример объекта Board member
json
{
  "incId": 920,
  "userId": 2,
  "role": "owner",
  "name": "Username",
  "color": "#9BD8DA",
  "accessRestricted": false
}User role 
Перечисление, определяющее роль пользователя системы.
Допустимые значения:
| Значение | Описание | 
|---|---|
| ADMIN | Администратор | 
| CREATOR | Создатель | 
| GUEST | Гость | 
User 
Объект, содержащий информацию о пользователе системы.
Свойства:
| Название | Описание | Обязательный | 
|---|---|---|
| id | Идентификатор пользователя. | Да | 
| email | E-mail пользователя. | Нет | 
| role | Роль пользователя в системе. | Да | 
| name | Имя пользователя. | Да | 
Пример объекта User
json
{
  "id": 2,
  "email": "example@example.example",
  "role": "CREATOR",
  "name": "Username"
}