Для AI-агентов: markdown этой страницы — /docs-content/chats/management/folder-sources-update.md индекс документации — /llms.txt
Задать источники папки «Все»
Метод в процессе раскатки — выходит в обновлении
im 26.1300.0. Доступен не на всех порталах Битрикс24. Если на вашем портале метод ещё не доступен, API вернёт422 METHOD_NOT_YET_AVAILABLE— это не ошибка интеграции, а признак того, что обновление пока не приехало на портал.
PUT /v1/chats/folders/:folderId/sources
Задаёт полный набор включённых источников папки «Все». Работает только с этой папкой. Что такое источники, их текущий набор и коды — GET /v1/chats/folders/:folderId/sources.
Параметры
| Параметр | Тип | Обяз. | Описание |
|---|---|---|---|
folderId (path) |
number | да | ID папки «Все» — поле id папки с type: "system" и code: "all" из GET /v1/chats/folders |
Поля запроса (body)
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
sourceCodes |
string[] | да | Коды источников, которые должны быть включены, — значения data.sources[].code из GET /v1/chats/folders/:folderId/sources. Элемент — непустая строка до 64 символов. [] выключает все источники, которые можно выключить |
Параметров запроса нет. Любой параметр запроса или другое поле тела отклоняется с 400 INVALID_PARAMS.
Примеры
curl — личный ключ
# Оставить включёнными задачи и коллабы в папке «Все» (ID 7)
curl -X PUT "https://vibecode.bitrix24.tech/v1/chats/folders/7/sources" \
-H "X-Api-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"sourceCodes": ["tasksTask", "collab"]}'
curl — OAuth-приложение
# Оставить включёнными задачи и коллабы в папке «Все» (ID 7)
curl -X PUT "https://vibecode.bitrix24.tech/v1/chats/folders/7/sources" \
-H "X-Api-Key: YOUR_APP_KEY" \
-H "Authorization: Bearer USER_SESSION_TOKEN" \
-H "Content-Type: application/json" \
-d '{"sourceCodes": ["tasksTask", "collab"]}'
JavaScript — личный ключ
const base = 'https://vibecode.bitrix24.tech/v1/chats/folders/7/sources'
const headers = { 'X-Api-Key': 'YOUR_API_KEY', 'Content-Type': 'application/json' }
const { data } = await fetch(base, { headers }).then((r) => r.json())
// Выключить коллабы, остальное оставить как есть
const sourceCodes = data.sources
.filter((s) => s.togglable && s.enabled && s.code !== 'collab')
.map((s) => s.code)
const saved = await fetch(base, {
method: 'PUT',
headers,
body: JSON.stringify({ sourceCodes }),
}).then((r) => r.json())
console.log('Включены:', saved.data.sourceFolders)
JavaScript — OAuth-приложение
const base = 'https://vibecode.bitrix24.tech/v1/chats/folders/7/sources'
const headers = {
'X-Api-Key': 'YOUR_APP_KEY',
'Authorization': 'Bearer USER_SESSION_TOKEN',
'Content-Type': 'application/json',
}
const { data } = await fetch(base, { headers }).then((r) => r.json())
// Выключить коллабы, остальное оставить как есть
const sourceCodes = data.sources
.filter((s) => s.togglable && s.enabled && s.code !== 'collab')
.map((s) => s.code)
const saved = await fetch(base, {
method: 'PUT',
headers,
body: JSON.stringify({ sourceCodes }),
}).then((r) => r.json())
console.log('Включены:', saved.data.sourceFolders)
Поля ответа
| Поле | Тип | Описание |
|---|---|---|
success |
boolean | Всегда true при успехе |
data.sourceFolders |
string[] | Коды источников, включённых после записи, — с учётом обязательного |
Пример ответа
{
"success": true,
"data": {
"sourceFolders": ["default", "tasksTask", "collab"]
}
}
Пример ответа при ошибке
400 — не передан sourceCodes:
{
"success": false,
"error": {
"code": "INVALID_PARAMS",
"message": "`sourceCodes` is missing: pass the full list of enabled source codes (`[]` switches every optional source off)."
}
}
Ошибки
| HTTP | Код | Описание |
|---|---|---|
| 400 | INVALID_PARAMS |
folderId не положительное целое, нет sourceCodes, sourceCodes не массив или его элемент некорректен, передан параметр запроса или неизвестное поле тела, тело — не JSON-объект. Проверяется до обращения к Битрикс24 |
| 404 | ENTITY_NOT_FOUND |
Битрикс24 вернул «не найдено», код портала — в error.b24Code |
| 422 | METHOD_NOT_YET_AVAILABLE |
На портале ещё не установлено обновление im 26.1300.0 — см. заметку в начале страницы |
| 422 | BITRIX_ERROR |
Битрикс24 вернул ошибку, код портала — в error.b24Code: FOLDER_OPERATION_NOT_SUPPORTED — у папки нет источников или идёт параллельная запись той же папки. Во втором случае ничего не записано, и вызов можно повторить. FOLDER_NOT_FOUND — папки нет, FOLDER_ACCESS_DENIED — папка другого пользователя |
| 502 | BITRIX_UNAVAILABLE |
Битрикс24 недоступен или вернул ошибку сервера |
| 403 | SCOPE_DENIED |
API-ключ не имеет скоупа im |
| 403 | WRITE_BLOCKED_READONLY_KEY |
Ключ только для чтения |
| 401 | TOKEN_MISSING |
API-ключ не имеет настроенных токенов Битрикс24 |
Полный список общих ошибок API — Ошибки.
Известные особенности
- Закрепление в папке «Все» следует за источниками. Выключение источника снимает закрепление его чатов в этой папке. При обратном включении закреплёнными снова становятся те чаты источника, что закреплены в общем списке чатов.
- Применяйте ответ, а не запрос. Неизвестный код отбрасывается без ошибки, а обязательный источник добавляется, даже если его нет в
sourceCodes. Итоговый набор — вdata.sourceFolders. - Порядок элементов
sourceCodesне меняет порядокdata.sourcesв ответе чтения источников.