Osmi
Справочник API

Инструменты

Создать новый инструмент

HTTP
POST /toolsСоздаёт новый инструмент.
Авторизация
string required
bearerAuth (JWT)
Тело запроса (application/json):
  • id (string · uuid) — уникальный идентификатор инструмента
  • name (string) — имя инструмента (напр.: date_time_tool)
  • description (string) — описание
  • color (string) — цвет, связанный с инструментом (hex)
  • iconSrc (string | nullable) — URL иконки инструмента
  • schema (string | nullable) — JSON-схема, связанная с инструментом
  • func (string | nullable) — описание функциональности или код
  • createdDate (string · date-time) — дата/время создания
  • updatedDate (string · date-time) — дата/время обновления
Пример запроса
{
  "id": "cfd531e0-82fc-11e9-bc42-526af7764f64",
  "name": "date_time_tool",
  "description": "A tool used for date and time operations",
  "color": "#FF5733",
  "iconSrc": "https://example.com/icons/date.png",
  "schema": "text",
  "func": "text",
  "createdDate": "2024-08-24T14:15:22Z",
  "updatedDate": "2024-08-24T14:15:22Z"
}

Коды ответов:

  • 200 — инструмент успешно создан (application/json)
  • 400 — некорректное тело запроса
  • 422 — ошибка валидации
  • 500 — внутренняя ошибка сервера
Пример ответа (200)
{
  "id": "cfd531e0-82fc-11e9-bc42-526af7764f64",
  "name": "date_time_tool",
  "description": "A tool used for date and time operations",
  "color": "#FF5733",
  "iconSrc": "https://example.com/icons/date.png",
  "schema": "text",
  "func": "text",
  "createdDate": "2024-08-24T14:15:22Z",
  "updatedDate": "2024-08-24T14:15:22Z"
}

Получить список инструментов

HTTP
GET /toolsВозвращает список всех инструментов.
Авторизация
string required
bearerAuth JWT-токен

Коды ответов:

  • 200 — успешная операция (application/json, массив объектов)
  • 500 — внутренняя ошибка сервера
Пример ответа:
[
  {
    "id": "cfd531e0-82fc-11e9-bc42-526af7764f64",
    "name": "date_time_tool",
    "description": "A tool used for date and time operations",
    "color": "#FF5733",
    "iconSrc": "https://example.com/icons/date.png",
    "schema": "text",
    "func": "text",
    "createdDate": "2024-08-24T14:15:22Z",
    "updatedDate": "2024-08-24T14:15:22Z"
  }
]

Получить инструмент по ID

HTTP
GET /tools/{id}Возвращает данные инструмента по его ID.
Авторизация
string required
bearerAuth JWT-токен
Параметры пути
id (string) — Tool ID

Коды ответов:

  • 200 — успешная операция (application/json)
  • 400 — некорректный ID
  • 404 — инструмент не найден
  • 500 — внутренняя ошибка сервера
Тело ответа
{
  "id": "cfd531e0-82fc-11e9-bc42-526af7764f64",
  "name": "date_time_tool",
  "description": "A tool used for date and time operations",
  "color": "#FF5733",
  "iconSrc": "https://example.com/icons/date.png",
  "schema": "text",
  "func": "text",
  "createdDate": "2024-08-24T14:15:22Z",
  "updatedDate": "2024-08-24T14:15:22Z"
}

Обновить инструмент по ID

HTTP
PUT /tools/{id}Обновляет существующий инструмент.
Авторизация
string required
bearerAuth JWT-токен
Параметры пути
id (string) — Tool ID
Тело запроса (application/json):
Те же поля, что и при создании (id, name, description, color, iconSrc, schema, func, createdDate, updatedDate).

Коды ответов:

  • 200 — инструмент успешно обновлён (application/json)
  • 400 — некорректный ID или тело запроса
  • 404 — инструмент не найден
  • 500 — внутренняя ошибка сервера
Пример запроса и ответа (фрагмент)
{
  "id": "cfd531e0-82fc-11e9-bc42-526af7764f64",
  "name": "date_time_tool",
  "description": "A tool used for date and time operations",
  "color": "#FF5733",
  "iconSrc": "https://example.com/icons/date.png",
  "schema": "text",
  "func": "text",
  "createdDate": "2024-08-24T14:15:22Z",
  "updatedDate": "2024-08-24T14:15:22Z"
}

Удалить инструмент по ID

HTTP
DELETE /tools/{id}Удаляет инструмент.
Авторизация
string required
bearerAuth JWT-токен
Параметры пути
required
id (string) — Tool ID

Коды ответов:

  • 200 — инструмент успешно удалён (без содержимого)
  • 400 — некорректный ID
  • 404 — инструмент не найден
  • 500 — внутренняя ошибка сервера