Отправка файла по идентификатору
Метод позволяет отправлять ранее загруженный файл в приватные или групповые чаты по его идентификатору (file_id), без повторной загрузки содержимого файла. Идентификатор файла можно получить из обновлений или из ответа метода отправки файла.
HTTP метод: POST
URL: https://botapi.messenger.yandex.net/bot/v1/messages/shareFile/
Заголовки
Authorization: OAuth <токен>
Content-Type: application/json
Тело запроса (JSON)
| Имя параметра | Обязательный | Тип | Описание | Ограничения, значение по умолчанию |
|---|---|---|---|---|
chat_id |
Нет* | string |
ID чата, в который нужно отправить файл | Бот должен состоять в чате |
login |
Нет* | string |
Логин пользователя, которому нужно отправить файл | Бот должен состоять в чате |
document |
Да | object |
Информация о файле для отправки | — |
document.file_id |
Да | string |
Идентификатор ранее загруженного файла. Значение можно взять из поля id объекта File в обновлении или из ответа метода отправки файла |
— |
filename |
Нет | string |
Имя файла | — |
thread_id |
Нет | integer |
Идентификатор треда (timestamp сообщения) | — |
message_id |
Нет | integer |
ID сообщения для редактирования | Сообщение должно быть из того же чата |
reply_message_id |
Нет | integer |
ID сообщения, на которое будет ответ | Сообщение должно быть из того же чата |
suggest_buttons |
Нет | SuggestButtons | Клавиатура с кнопками под сообщением | Не более 100 кнопок |
(*) Параметры chat_id и login являются необязательными, но необходимо заполнить хотя бы один из двух:
- При заполнении
chat_idфайл будет отправлен в групповой чат, заданный этим ID. - При заполнении
loginфайл будет отправлен пользователю в приватный чат.
Ограничения
Ограничения аналогичны ограничениям для метода отправки текстового сообщения.
Результат
Результатом успешного запроса является ответ с кодом 200 и телом с JSON, где содержится информация об отправленном файле.
| Имя параметра | Обязательный | Тип | Описание |
|---|---|---|---|
ok |
Да | boolean |
Флаг успешности выполнения |
message_id |
Да | integer |
ID сообщения в чате |
file_id |
Да | string |
Идентификатор файла |
В случае ошибки возвращается соответствующий статус HTTP. Описание ошибки приходит в поле description.
| Имя параметра | Обязательный | Тип | Описание |
|---|---|---|---|
ok |
Да | boolean |
Флаг успешности выполнения |
description |
Да | string |
Описание ошибки |
Пример запроса
curl -X POST -H 'Authorization: OAuth AtXXXXXXXXXXX' -H "Content-Type: application/json" -d '{"chat_id":"0/0/4f24b544-697c-4e18-a9c1-b39432ee9bf9", "document": {"file_id": "<file_id>"}}' 'https://botapi.messenger.yandex.net/bot/v1/messages/shareFile/'
Пример успешного ответа
{"ok": true, "message_id": 1647523230504005, "file_id": "<new_file_id>"}
Пример ответа с ошибкой
{"ok": false, "description": "Bot is not a member of the chat"}
Была ли статья полезна?
Предыдущая
Следующая