Отправка файла по идентификатору

Метод позволяет отправлять ранее загруженный файл в приватные или групповые чаты по его идентификатору (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"}
Предыдущая