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

Изменить папку чатов

PATCH /v1/chats/folders/:folderId

Переименовывает личную папку чатов текущего пользователя и заменяет её состав.

Добавить или убрать отдельные чаты, не передавая весь состав, — Добавить чаты в папку и Убрать чаты из папки.

Параметры

Параметр Тип Обяз. Описание
folderId (path) number да ID личной папки — поле id в GET /v1/chats/folders. Положительное целое

Параметров запроса нет: любой отклоняется с 400 INVALID_PARAMS.

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

Поле Тип Обяз. Описание
title string нет Новое название папки, от 1 до 30 символов после обрезки пробелов. Название вне этих границ отклоняется с 422 BITRIX_ERROR, а не 400
chatIds number[] нет ID чатов нового состава. Каждый элемент — положительное целое: число или строка из цифр. ID чата — поле id в последних диалогах
dialogIds string[] нет Идентификаторы диалогов нового состава: chatXXX или ID пользователя для личного диалога. Элемент — непустая строка до 64 символов без запятых и пробелов по краям. Алиас me не принимается — передайте ID пользователя. Идентификатор — поле dialogId в последних диалогах

Нужно хотя бы одно из полей title, chatIds, dialogIds. Переданный состав — объединение chatIds и dialogIds — заменяет прежний целиком. Пустой состав — chatIds: [], dialogIds: [] или оба — очищает папку. Любое другое поле тела отклоняется с 400 INVALID_PARAMS.

Примеры

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

Terminal
curl -X PATCH "https://vibecode.bitrix24.tech/v1/chats/folders/127" \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"title": "Ключевые клиенты", "chatIds": [5287]}'

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

Terminal
curl -X PATCH "https://vibecode.bitrix24.tech/v1/chats/folders/127" \
  -H "X-Api-Key: YOUR_APP_KEY" \
  -H "Authorization: Bearer USER_SESSION_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"title": "Ключевые клиенты", "chatIds": [5287]}'

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

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/chats/folders/127', {
  method: 'PATCH',
  headers: {
    'X-Api-Key': 'YOUR_API_KEY',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({ title: 'Ключевые клиенты', chatIds: [5287] }),
})

const { success, data } = await res.json()
console.log(data.folder.definition.chats)

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

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/chats/folders/127', {
  method: 'PATCH',
  headers: {
    'X-Api-Key': 'YOUR_APP_KEY',
    'Authorization': 'Bearer USER_SESSION_TOKEN',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({ title: 'Ключевые клиенты', chatIds: [5287] }),
})

const { success, data } = await res.json()
console.log(data.folder.definition.chats)

Поля ответа

Поле Тип Описание
success boolean Всегда true при успехе
data.folder object Папка после изменения
data.folder.id number ID папки
data.folder.type string Всегда personal
data.folder.title string Название
data.folder.sort number Порядок папки в интерфейсе
data.folder.visible boolean Папка показывается в интерфейсе
data.folder.description null У личной папки описания нет
data.folder.displaysNestedInRoot boolean Вложенные чаты показываются и в корневом списке
data.folder.definition.chats array Состав папки после изменения, список { chatId, dialogId }

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

JSON
{
  "success": true,
  "data": {
    "folder": {
      "id": 127,
      "type": "personal",
      "title": "Ключевые клиенты",
      "sort": 12,
      "visible": true,
      "description": null,
      "displaysNestedInRoot": false,
      "definition": {
        "chats": [{ "chatId": 5287, "dialogId": "chat5287" }]
      }
    }
  }
}

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

400 — не передано ни одного поля:

JSON
{
  "success": false,
  "error": {
    "code": "INVALID_PARAMS",
    "message": "Nothing to change: pass `title`, `chatIds` or `dialogIds`."
  }
}

Ошибки

HTTP Код Описание
400 INVALID_PARAMS folderId не положительное целое, не передано ни одного поля, title не строка, некорректный элемент chatIds или dialogIds, передан параметр запроса или неизвестное поле тела, тело — не JSON-объект. Проверяется до обращения к Битрикс24
422 BITRIX_ERROR Битрикс24 вернул FOLDER_NOT_FOUND — папки нет. Код портала — в error.b24Code
422 BITRIX_ERROR Битрикс24 вернул FOLDER_ACCESS_DENIED — папка другого пользователя. Код портала — в error.b24Code
422 BITRIX_ERROR Битрикс24 вернул FOLDER_SYSTEM_MUTATION_FORBIDDEN — системную папку менять нельзя. Код портала — в error.b24Code
422 BITRIX_ERROR Битрикс24 вернул FOLDER_CHATS_LIMIT_EXCEEDED — в составе больше 50 чатов. Код портала — в error.b24Code
422 BITRIX_ERROR Битрикс24 вернул FOLDER_CHAT_NOT_ELIGIBLE — в составе есть чат, который нельзя положить в папку, например, чат, в котором пользователь не участвует. Код портала — в error.b24Code
422 BITRIX_ERROR Битрикс24 вернул title — название пустое после обрезки пробелов или длиннее 30 символов. Код портала — в error.b24Code
404 ENTITY_NOT_FOUND Битрикс24 вернул «не найдено», код портала — в error.b24Code
403 SCOPE_DENIED API-ключ не имеет скоупа im
403 WRITE_BLOCKED_READONLY_KEY Ключ только для чтения: изменение папки — запись, см. права доступа
401 TOKEN_MISSING API-ключ не имеет настроенных токенов Битрикс24
502 BITRIX_UNAVAILABLE Битрикс24 недоступен или вернул ошибку сервера

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

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

  • Один неподходящий чат отклоняет весь состав. Если пользователь не участник хотя бы одного чата из chatIds или dialogIds, вызов возвращает FOLDER_CHAT_NOT_ELIGIBLE, а прежний состав остаётся, даже когда остальные чаты подходят.
  • ID пользователя в dialogIds создаёт личный диалог. Если с пользователем ещё нет личного чата, вызов его создаёт и кладёт в папку.
  • dialogIds работает начиная с обновления im 26.1000.0. В облачном Битрикс24 оно уже установлено. Коробочный Битрикс24 без этого обновления пропускает dialogIds и не возвращает ошибку: вызов с одними dialogIds не изменит состав. На таком портале передавайте chatIds.
  • FOLDER_NOT_FOUND приходит в error.b24Code ответа 422 BITRIX_ERROR. Не путайте его с 404 FOLDER_NOT_FOUND на странице Загрузить файл в чат.

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