Для AI-агентов: markdown этой страницы — /docs-content/chats/members/member-entities.md индекс документации — /llms.txt
Состав чата по сущностям
GET /v1/chats/:dialogId/member-entities
Возвращает, из кого состоит чат, парами «тип — ID»: пользователи и подразделения, подключённые к чату. Подходит, чтобы показать состав в форме выбора участников; карточки пользователей даёт список участников.
Параметры
| Параметр | Тип | Обяз. | Описание |
|---|---|---|---|
dialogId (path) |
string | да | Идентификатор диалога: chatXXX для группового чата, ID пользователя для личного диалога с ним или алиас me для личного диалога с собой |
Query-параметры не принимаются: любой отклоняется с 400 INVALID_PARAMS.
Примеры
curl — личный ключ
curl "https://vibecode.bitrix24.tech/v1/chats/chat42/member-entities" \
-H "X-Api-Key: YOUR_API_KEY"
curl — OAuth-приложение
curl "https://vibecode.bitrix24.tech/v1/chats/chat42/member-entities" \
-H "X-Api-Key: YOUR_APP_KEY" \
-H "Authorization: Bearer USER_SESSION_TOKEN"
JavaScript — личный ключ
const res = await fetch('https://vibecode.bitrix24.tech/v1/chats/chat42/member-entities', {
headers: { 'X-Api-Key': 'YOUR_API_KEY' },
})
const { data } = await res.json()
const userIds = data.memberEntities.filter(([type]) => type === 'user').map(([, id]) => id)
JavaScript — OAuth-приложение
const res = await fetch('https://vibecode.bitrix24.tech/v1/chats/chat42/member-entities', {
headers: {
'X-Api-Key': 'YOUR_APP_KEY',
'Authorization': 'Bearer USER_SESSION_TOKEN',
},
})
const { data } = await res.json()
const userIds = data.memberEntities.filter(([type]) => type === 'user').map(([, id]) => id)
Поля ответа
| Поле | Тип | Описание |
|---|---|---|
success |
boolean | Всегда true при успехе |
data.memberEntities |
array | Пары [тип, ID]. user — участник с его ID. department — подключённое подразделение: ID числом, если вместе с подчинёнными, и строкой <ID>:F, если только само подразделение. Боты и гости в список не входят |
data.userCount |
number | Число участников, включая ботов и гостей |
data.areUsersCollapsed |
boolean | true — участников 1000 и больше, и пользователи в memberEntities не перечислены |
Пример ответа
{
"success": true,
"data": {
"memberEntities": [
["user", 5],
["user", 7],
["department", 12]
],
"userCount": 2,
"areUsersCollapsed": false
}
}
Пример ответа при ошибке
422 — чата нет на портале:
{
"success": false,
"error": {
"code": "BITRIX_ERROR",
"message": "CHAT_NOT_FOUND",
"b24Code": "CHAT_NOT_FOUND"
}
}
Ошибки
| HTTP | Код | Описание |
|---|---|---|
| 400 | INVALID_PARAMS |
Передан query-параметр — эндпоинт их не принимает. Проверяется до обращения к Битрикс24 |
| 403 | SCOPE_DENIED |
API-ключ не имеет скоупа im |
| 401 | TOKEN_MISSING |
API-ключ не имеет настроенных токенов Битрикс24 |
| 404 | ENTITY_NOT_FOUND |
Битрикс24 вернул «не найдено»; код портала — в error.b24Code |
| 422 | BITRIX_ERROR |
Битрикс24 вернул ошибку; код портала — в error.b24Code. Отсутствующий чат приходит сюда с кодом CHAT_NOT_FOUND |
| 502 | ME_ALIAS_RESOLUTION_FAILED |
Не удалось определить пользователя при использовании алиаса me |
Полный список общих ошибок API — Ошибки.
Известные особенности
Чтение может сделать вас участником. Если чат разрешает автовступление, Битрикс24 может добавить текущего пользователя в участники. Ключу READONLY это чтение разрешено по узкому исключению; оно не отмечает сообщения прочитанными. Права пользователя в Битрикс24 и скоуп im сохраняются.