06.04.2026 22:55

Add

[POST] .../v1/chat/add

Создает новый чат и добавляет участников.

Входные параметры

Название Тип данных Обязательность Описание
name String Необязательный Название чата
logo_url String Необязательный URL логотипа чата
participants Array of ChatParticipantAddEdit Необязательный Список участников для добавления
ChatParticipantAddEdit
Название Тип данных Описание
entity_type Enum Тип участника: User, Client
entity_id Int64 ID сущности участника
role Enum Роль участника: Staff или Member

Ограничения и проверки

  • Поле participants необязательно.
  • Если participants не передан, в чат автоматически добавляется создатель чата как User/Staff.
  • Если participants передан, для каждого участника обязательны корректные значения entity_type, entity_id и role; entity_id должен быть больше 0, а дубликаты (entity_type + entity_id) недопустимы.
  • Через Chat/Add нельзя добавлять ChatBot (используется отдельный метод Chat/AddBot).
  • На сервере роль нормализуется по типу участника: User -> Staff, Client -> Member.
  • Поля name и logo_url можно не передавать.
  • Если передается набор данных, совпадающий с уже существующим чатом (по составу участников и основным параметрам), API может вернуть UUID уже существующего чата (идемпотентное поведение).

Пример запроса

{
  "name": "Чат поддержки",
  "logo_url": "https://example.com/chat/logo.png",
  "participants": [
    {
      "entity_type": "User",
      "entity_id": 15,
      "role": "Staff"
    },
    {
      "entity_type": "User",
      "entity_id": 21,
      "role": "Member"
    }
  ]
}

Выходные параметры

Название Тип данных Описание
result.new_uuid String UUID созданного чата

Пример ответа

{
  "ok": true,
  "result": {
    "new_uuid": "6f6fdb2f-7d0b-4c34-b6fd-1fbcf40d37ef"
  }
}