[POST] .../v1/chatmessage/addfile
Загружает новый файл в системную папку чата для последующего использования в сообщении.
Метод поддерживает два формата запроса:
application/json для обратной совместимости, когда файл передается в data как Base64.multipart/form-data для потоковой загрузки бинарного файла без Base64 в клиентском запросе.Входные параметры
Для application/json:
| Название | Тип данных | Обязательность | Описание |
|---|---|---|---|
| chat_id | String | Обязательный | UUID чата |
| name | String | Обязательный | Отображаемое имя файла |
| extension | String | Обязательный | Расширение файла без точки |
| data | String | Обязательный | Содержимое файла в Base64, допускается формат data:*;base64,... |
Для multipart/form-data:
| Название | Тип данных | Обязательность | Описание |
|---|---|---|---|
| chat_id | String | Обязательный | UUID чата |
| name | String | Необязательный | Имя файла. Если не передано, сервер возьмет его из имени загружаемого файла |
| extension | String | Необязательный | Расширение без точки. Если не передано, сервер возьмет его из имени загружаемого файла |
| file | File | Обязательный | Бинарный поток файла |
Ограничения и проверки
chat_id обязателен всегда.name, extension, data.multipart/form-data обязателен file; name и extension можно не передавать, если они есть в имени файла.name не длиннее 200 символов.extension не длиннее 10 символов.file_add (655) и доступ к чату.chat_message_add (685).Lead/Deal/Ticket/Task, право загрузки наследуется от сущности: требуется Edit у связанной сущности.closed = true) загрузка файла отклоняется с ошибкой 1220.chat_manage_all (688) запись файла доступна только участнику чата.chat_manage_all (688) участником чата быть не обязательно (только для обычных чатов).folder_id и access_level извне не принимаются и задаются сервером.access_level = system.Пример запроса
{
"chat_id": "6f6fdb2f-7d0b-4c34-b6fd-1fbcf40d37ef",
"name": "hello.txt",
"extension": "txt",
"data": "SGVsbG8gQ2hhdCE="
}
Пример multipart-запроса
curl -X POST "https://example.com/v1/chatmessage/addfile" \
-H "Authorization: Bearer <token>" \
-F "chat_id=6f6fdb2f-7d0b-4c34-b6fd-1fbcf40d37ef" \
-F "file=@hello.txt"
Выходные параметры
| Название | Тип данных | Описание |
|---|---|---|
| result.file_id | Int64 | Идентификатор созданного файла в CommonFile |
Пример ответа
{
"ok": true,
"result": {
"file_id": 12051
}
}