Для AI-агентов: markdown этой страницы — /docs-content/chats/management/owner.md индекс документации — /llms.txt

Передать владение чатом

POST /v1/chats/:chatId/owner

Передаёт права владельца группового чата другому участнику. Новый владелец должен уже состоять в чате.

Параметры

Параметр Тип Обяз. Описание
chatId (path) number да ID чата (положительное целое)
format (query) string нет v2 включает режим v2 — см. «Режим v2» ниже. Любое другое значение игнорируется, ответ прежний. Повтор format не отклоняется: из format=v1&format=v2 берётся последнее значение, то есть режим v2, а format=v2&format=v1 даёт прежний ответ. Форма format[]=v2 включает режим v2, если все её значения — v2

Поля запроса (body)

Поле Тип Обяз. Описание
userId number да ID пользователя, которому передаётся владение. Пользователь должен быть участником чата. Список участников: GET /v1/chats/:chatId/users

Режим v2. format=v2 передаёт владение через мессенджер v2 с тем же телом { "userId": … } и тем же ответом true. Написание Битрикс24 USER_ID, другие поля тела и query-параметры отклоняются с 400 INVALID_PARAMS. Перед передачей API проверяет, что новый владелец состоит в чате: пользователь не из чата получает 400 INVALID_PARAMS, и владение не меняется.

Примеры

curl — личный ключ

Terminal
curl -X POST https://vibecode.bitrix24.tech/v1/chats/456/owner \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "userId": 42 }'

curl — OAuth-приложение

Terminal
curl -X POST https://vibecode.bitrix24.tech/v1/chats/456/owner \
  -H "X-Api-Key: YOUR_APP_KEY" \
  -H "Authorization: Bearer USER_SESSION_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ "userId": 42 }'

JavaScript — личный ключ

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/chats/456/owner', {
  method: 'POST',
  headers: {
    'X-Api-Key': 'YOUR_API_KEY',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({ userId: 42 }),
})

const { success, data } = await res.json()

JavaScript — OAuth-приложение

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/chats/456/owner', {
  method: 'POST',
  headers: {
    'X-Api-Key': 'YOUR_APP_KEY',
    'Authorization': 'Bearer USER_SESSION_TOKEN',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({ userId: 42 }),
})

const { success, data } = await res.json()

curl — режим v2

Terminal
curl -X POST "https://vibecode.bitrix24.tech/v1/chats/456/owner?format=v2" \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "userId": 42 }'

Поля ответа

Поле Тип Описание
success boolean Всегда true при успехе
data boolean true при успешной передаче владения

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

JSON
{
  "success": true,
  "data": true
}

Пример ответа при ошибке

422 — нарушено условие передачи владения:

JSON
{
  "success": false,
  "error": {
    "code": "BITRIX_ERROR",
    "message": "Change owner can only owner and user must be member in chat"
  }
}

Ошибки

HTTP Код Описание
400 INVALID_CHAT_ID chatId не является положительным целым числом — проверяется до обращения в Битрикс24
400 MISSING_PARAMS Поле userId отсутствует или не является положительным целым числом
400 INVALID_PARAMS Только режим v2: query-параметр кроме format, поле тела кроме userId, тело не JSON-объект или userId не состоит в чате. Владение не меняется
403 BITRIX_ACCESS_DENIED Нет права передать владение этим чатом
403 WRITE_BLOCKED_READONLY_KEY Ключ только для чтения — см. права доступа
422 BITRIX_ERROR Передать владение может только текущий владелец, новый владелец должен быть участником чата. В режиме v2 — Битрикс24 не сохранил изменение; код портала — в error.b24Code
502 BITRIX_UNAVAILABLE Битрикс24 недоступен или вернул ошибку сервера
403 SCOPE_DENIED API-ключ не имеет скоупа im
401 TOKEN_MISSING API-ключ не имеет настроенных токенов

Полный список общих ошибок API — Ошибки.

Известные особенности

Если нужный участник ещё не состоит в чате, добавьте его через POST /v1/chats/:chatId/users перед вызовом этого эндпоинта.

Выход владельца из чата. Создатель чата остаётся владельцем даже после вызова POST /v1/chats/:chatId/leave — выход не снимает статус владельца. Чтобы покинуть чат полностью: сначала передайте владение другому участнику этим эндпоинтом, затем вызовите выход.

Передача необратима для вас. Прежний владелец остаётся в чате, но вернуть владение может только новый владелец: повторный вызов от прежнего получает 403 BITRIX_ACCESS_DENIED.

Смотрите также