Добавить файл в чат im.disk.file.commit
Scope:
imКто может выполнять метод: участник чата
Метод im.disk.file.commit добавляет файл в чат.
Для добавления файла укажите:
- один из параметров идентификатора чата —
CHAT_IDилиDIALOG_ID - один из параметров идентификатора файла —
FILE_IDилиUPLOAD_ID
Если передать несколько параметров одновременно, метод обрабатывает только первый.
Получить идентификатор нового файла можно после загрузки методом disk.folder.upload.file. Получить идентификатор существующего файла можно методом:
- disk.storage.getchildren — если файл находится в корне хранилища
- disk.folder.getchildren — если файл находится в папке
Параметры метода
Обязательные параметры отмечены *
|
Название |
Описание |
|
CHAT_ID* |
Идентификатор чата. Обязателен, если не передан |
|
DIALOG_ID* |
Идентификатор диалога в формате:
Обязателен, если не передан |
|
FILE_ID* |
Идентификатор файла на Диске. Можно передать массив. Обязателен, если не передан |
|
UPLOAD_ID* |
Идентификатор файла на Диске. Можно передать массив. Поддерживает дополнительный параметр Обязателен, если не передан |
|
MESSAGE |
Текст сообщения с файлом |
|
SILENT_MODE |
Параметр для чата Открытых линий Возможные значения:
|
|
AS_FILE |
Отправить как файл. Только для Возможные значения:
|
Примеры кода
Как использовать примеры в документации
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"CHAT_ID":1489,"FILE_ID":[5249,5250],"MESSAGE":"Документы по проекту"}' \
https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webhook_here**/im.disk.file.commit
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"CHAT_ID":1489,"FILE_ID":[5249,5250],"MESSAGE":"Документы по проекту","auth":"**put_access_token_here**"}' \
https://**put_your_bitrix24_address**/rest/im.disk.file.commit
try
{
const response = await $b24.callMethod(
'im.disk.file.commit',
{
CHAT_ID: 1489,
FILE_ID: [5249, 5250],
MESSAGE: 'Документы по проекту',
}
);
console.log(response.getData().result);
}
catch (error)
{
console.error(error);
}
try {
$response = $b24Service
->core
->call(
'im.disk.file.commit',
[
'CHAT_ID' => 1489,
'FILE_ID' => [5249, 5250],
'MESSAGE' => 'Документы по проекту',
]
);
$result = $response
->getResponseData()
->getResult();
echo 'Success: ' . print_r($result, true);
} catch (Throwable $e) {
error_log($e->getMessage());
echo 'Error: ' . $e->getMessage();
}
BX24.callMethod(
'im.disk.file.commit',
{
CHAT_ID: 1489,
FILE_ID: [5249, 5250],
MESSAGE: 'Документы по проекту',
},
function(result)
{
if (result.error())
{
console.error(result.error());
}
else
{
console.log(result.data());
}
}
);
require_once('crest.php');
$result = CRest::call(
'im.disk.file.commit',
[
'CHAT_ID' => 1489,
'FILE_ID' => [5249, 5250],
'MESSAGE' => 'Документы по проекту',
]
);
echo '<PRE>';
print_r($result);
echo '</PRE>';
Обработка ответа
HTTP-статус: 200
{
"result": {
"FILES": {
"upload5249": {
"id": 5249,
"chatId": 1489,
"date": {},
"type": "file",
"name": "image.png",
"extension": "png",
"size": 2144,
"image": {
"height": 61,
"width": 72
},
"status": "done",
"progress": 100,
"authorId": 503,
"authorName": "Иван Иванов",
"urlPreview": "https://mysite.ru/bitrix/services/main/ajax.php?action=disk.api.file.download&SITE_ID=s1&humanRE=1&fileId=5249&exact=N&_esd=hpbccd%2FZFlCVMvT8%2FoXYU%2FfMrCjiXqxIAf6V4Sv1rR0euQRiW7%2BsdhF7n1QGRL8ZBBmpuiVaX9sY2NbsyigTzBiykXGbFEbXUAmoPO8IvcdVkdoD5n6CJHZG9DZ0DRpH6i5goVbMdjo%3D&fileName=image.png",
"urlShow": "https://mysite.ru/bitrix/services/main/ajax.php?action=disk.api.file.showImage&SITE_ID=s1&humanRE=1&fileId=5249&width=1280&height=1280&signature=9f56cfa3412e55679012a6c3bef9ff391f1fc7becf6dc42bea2b8d68656934ce&exact=N&_esd=hpbccd%2FZFlCVMvT8%2FoXYU%2FfMrCjiXqxIAf6V4Sv1rR0euQRiW7%2BsdhF7n1QGRL8ZBBmpuiVaX9sY2NbsyigTzBiykXGbFEbXUAmoPO8IvcdVkdoD5n6CJHZG9DZ0DRpH6i5goVbMdjo%3D&fileName=image.png",
"urlDownload": "https://mysite.ru/bitrix/services/main/ajax.php?action=disk.api.file.download&SITE_ID=s1&humanRE=1&fileId=5249&exact=N&_esd=hpbccd%2FZFlCVMvT8%2FoXYU%2FfMrCjiXqxIAf6V4Sv1rR0euQRiW7%2BsdhF7n1QGRL8ZBBmpuiVaX9sY2NbsyigTzBiykXGbFEbXUAmoPO8IvcdVkdoD5n6CJHZG9DZ0DRpH6i5goVbMdjo%3D&fileName=image.png",
"viewerAttrs": {
"viewer": "",
"viewerType": "image",
"src": "https://mysite.ru/bitrix/services/main/ajax.php?action=disk.api.file.download&SITE_ID=s1&humanRE=1&fileId=5249&exact=N&_esd=hpbccd%2FZFlCVMvT8%2FoXYU%2FfMrCjiXqxIAf6V4Sv1rR0euQRiW7%2BsdhF7n1QGRL8ZBBmpuiVaX9sY2NbsyigTzBiykXGbFEbXUAmoPO8IvcdVkdoD5n6CJHZG9DZ0DRpH6i5goVbMdjo%3D&fileName=image.png",
"viewerResized": "",
"objectId": "5249",
"viewerGroupBy": "1489",
"imChatId": 1489,
"title": "image.png",
"actions": "[{\"type\":\"download\"},{\"type\":\"copyToMe\",\"text\":\"Сохранить на Диск\",\"action\":\"BXIM.disk.saveToDiskAction\",\"params\":{\"fileId\":\"5249\"},\"extension\":\"disk.viewer.actions\",\"buttonIconClass\":\"ui-btn-icon-cloud\"}]"
},
"mediaUrl": {
"preview": {
"250": "https://mysite.ru/bitrix/services/main/ajax.php?action=disk.api.file.download&SITE_ID=s1&humanRE=1&fileId=5249&exact=N&_esd=hpbccd%2FZFlCVMvT8%2FoXYU%2FfMrCjiXqxIAf6V4Sv1rR0euQRiW7%2BsdhF7n1QGRL8ZBBmpuiVaX9sY2NbsyigTzBiykXGbFEbXUAmoPO8IvcdVkdoD5n6CJHZG9DZ0DRpH6i5goVbMdjo%3D&fileName=image.png"
}
},
"isTranscribable": false,
"isVideoNote": false,
"isVoiceNote": false
}
},
"DISK_ID": [
"5249"
],
"FILE_MODELS": {
"upload5249": {
"id": 5249,
"name": "image.png",
"createTime": {},
"updateTime": {},
"deleteTime": null,
"code": "media_original",
"xmlId": null,
"storageId": 663,
"realObjectId": 5249,
"parentId": 4821,
"deletedType": 0,
"createdBy": "503",
"updatedBy": "503",
"deletedBy": "0",
"uniqueCode": "k7lj3sQxTRWSi6K93Vyh",
"typeFile": 2,
"globalContentVersion": 2,
"fileId": 57077,
"size": 2144,
"etag": "73c045036a9e96943fa57316371655c2",
"links": {
"download": "/bitrix/services/main/ajax.php?action=disk.file.download&SITE_ID=s1&fileId=5249",
"showInGrid": "/bitrix/tools/disk/focus.php?objectId=5249&action=showObjectInGrid&ncc=1",
"preview": "/bitrix/services/main/ajax.php?action=disk.api.file.showImage&SITE_ID=s1&humanRE=1&width=640&height=640&signature=8e152b3f4820b07a3f8ea79a6de60b0ae5a82a57467d08d1e8a8a399afb0330f&fileId=5249"
}
}
},
"MESSAGE_ID": 84779
},
"time": {
"start": 1772451339,
"finish": 1772451339.658828,
"duration": 0.6588280200958252,
"processing": 0,
"date_start": "2026-03-02T14:35:39+03:00",
"date_finish": "2026-03-02T14:35:39+03:00",
"operating_reset_at": 1772451939,
"operating": 0
}
}
Возвращаемые данные
|
Название |
Описание |
|
result |
Корневой объект результата (подробное описание) |
|
time |
Информация о времени выполнения запроса |
Объект result-item
|
Название |
Описание |
|
FILES |
Данные добавленных файлов (подробное описание) |
|
DISK_ID |
Массив идентификаторов файлов на Диске |
|
FILE_MODELS |
Модели добавленных файлов на Диске (подробное описание) |
|
MESSAGE_ID |
Идентификатор сообщения с файлами |
Объект FILES
|
Название |
Описание |
|
upload{id} |
Объект файла, где |
Объект FILES.upload
|
Название |
Описание |
|
id |
Идентификатор файла на Диске |
|
chatId |
Идентификатор чата |
|
date |
Дата создания файла |
|
type |
Тип элемента |
|
name |
Имя файла |
|
extension |
Расширение файла |
|
size |
Размер файла в байтах |
|
image |
Параметры изображения (подробное описание) |
|
status |
Статус обработки файла |
|
progress |
Прогресс обработки файла в процентах |
|
authorId |
Идентификатор автора файла |
|
authorName |
Имя автора файла |
|
urlPreview |
Ссылка на превью файла |
|
urlShow |
Ссылка на просмотр файла |
|
urlDownload |
Ссылка на скачивание файла |
|
viewerAttrs |
Параметры просмотрщика файла (подробное описание) |
|
mediaUrl |
Ссылки на медиафайл (подробное описание) |
|
isTranscribable |
Доступна ли расшифровка файла |
|
isVideoNote |
Является ли файл видеосообщением |
|
isVoiceNote |
Является ли файл голосовым сообщением |
Объект image
|
Название |
Описание |
|
height |
Высота изображения |
|
width |
Ширина изображения |
Объект viewerAttrs
|
Название |
Описание |
|
viewer |
Идентификатор просмотрщика |
|
viewerType |
Тип просмотрщика |
|
src |
Источник файла для просмотрщика |
|
viewerResized |
Источник уменьшенной версии файла |
|
objectId |
Идентификатор объекта в просмотрщике |
|
viewerGroupBy |
Идентификатор группы просмотра |
|
imChatId |
Идентификатор чата для просмотрщика |
|
title |
Заголовок в просмотрщике |
|
actions |
Список действий в просмотрщике в формате JSON-строки |
Объект mediaUrl
|
Название |
Описание |
|
preview |
Набор ссылок на превью файла по размерам (подробное описание) |
Объект mediaUrl.preview
|
Название |
Описание |
|
250 |
Ссылка на превью шириной 250 px |
Объект FILE_MODELS
|
Название |
Описание |
|
upload{id} |
Объект модели файла, где |
Объект FILE_MODELS.upload
|
Название |
Описание |
|
id |
Идентификатор файла на Диске |
|
name |
Имя файла |
|
createTime |
Дата создания файла |
|
updateTime |
Дата обновления файла |
|
deleteTime |
Дата удаления файла, может быть |
|
code |
Код типа файла |
|
xmlId |
Внешний идентификатор, может быть |
|
storageId |
Идентификатор хранилища |
|
realObjectId |
Идентификатор реального объекта |
|
parentId |
Идентификатор родительской папки |
|
deletedType |
Тип удаления |
|
createdBy |
Идентификатор автора создания |
|
updatedBy |
Идентификатор автора обновления |
|
deletedBy |
Идентификатор автора удаления |
|
uniqueCode |
Уникальный код файла |
|
typeFile |
Числовой код типа файла |
|
globalContentVersion |
Глобальная версия контента |
|
fileId |
Идентификатор связанного файла |
|
size |
Размер файла в байтах |
|
etag |
ETag файла |
|
links |
Ссылки для работы с файлом (подробное описание) |
Объект links
|
Название |
Описание |
|
download |
Ссылка на скачивание файла |
|
showInGrid |
Ссылка на показ файла в сетке |
|
preview |
Ссылка на превью файла |
Обработка ошибок
HTTP-статус: 400
{
"error": "CHAT_ID_EMPTY",
"error_description": "Chat ID can't be empty"
}
|
Название |
Описание |
|
error |
Строковый код ошибки. Может состоять из цифр, латинских букв и знака подчеркивания |
|
error_description |
Текстовое описание ошибки. Описание не предназначено для показа конечному пользователю в необработанном виде |
Возможные коды ошибок
|
Статус |
Код |
Описание |
Значение |
|
|
|
Chat ID can't be empty |
Возможные причины:
|
|
|
|
Dialog ID can't be empty |
Передан пустой или некорректный |
|
|
|
List of files in not specified |
Не передан один из обязательных параметров |
|
|
|
Error during saving file to chat |
Возможные причины:
|
|
|
|
You do not have access to the specified dialog |
Недостаточно прав на просмотр диалога или передан несуществующий диалог |
Статусы и коды системных ошибок
HTTP-статус: 20x, 40x, 50x
Описанные ниже ошибки могут возникнуть при вызове любого метода
|
Статус |
Код |
Описание |
|
|
|
Возникла внутренняя ошибка сервера, обратитесь к администратору сервера или в техническую поддержку Битрикс24 |
|
|
|
Возникла внутренняя ошибка сервера, обратитесь к администратору сервера или в техническую поддержку Битрикс24 |
|
|
|
Превышен лимит на интенсивность запросов |
|
|
|
Текущий метод не разрешен для вызова с помощью batch |
|
|
|
Превышена максимальная длина параметров, переданных в метод batch |
|
|
|
Неверный access-токен или код вебхука |
|
|
|
Для вызовов методов требуется использовать протокол HTTPS |
|
|
|
REST API заблокирован из-за перегрузки. Это ручная индивидуальная блокировка, для снятия необходимо обращаться в техническую поддержку Битрикс24 |
|
|
|
REST API доступен только на коммерческих планах |
|
|
|
У пользователя, с чьим access-токеном или вебхуком был вызван метод, не хватает прав |
|
|
|
Манифест недоступен |
|
|
|
Запрос требует более высоких привилегий, чем предоставляет токен вебхука |
|
|
|
Предоставленный access-токен доступа истек |
|
|
|
Пользователь не имеет доступа к приложению. Это означает, что приложение установлено, но администратор портала разрешил доступ к этому приложению только конкретным пользователям |
|
|
|
Публичная часть сайта закрыта. Чтобы открыть публичную часть сайта на коробочной установке отключите опцию «Временное закрытие публичной части сайта». Путь к настройке: Рабочий стол > Настройки > Настройки продукта > Настройки модулей > Главный модуль > Временное закрытие публичной части сайта |
Продолжите изучение
- Сохранить файл на свой диск im.disk.file.save
- Удалить файл из папки чата im.disk.file.delete
- Получить папку хранения файлов чата im.disk.folder.get