---
metadata:
  - name: generator
    content: Diplodoc Platform v5.50.6
alternate:
  - https://yandex.com/dev/messenger/doc/ru/api-requests/message-share-file.md
---
> **Documentation Index:** Fetch the complete configuration index at https://yandex.com/dev/messenger/doc/ru/llms.txt

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

Метод позволяет отправлять ранее загруженный файл в приватные или групповые чаты по его идентификатору (`file_id`), без повторной загрузки содержимого файла. Идентификатор файла можно получить из [обновлений](https://yandex.com/dev/messenger/doc/ru/api-requests/update-polling.md#priem-fajla) или из ответа метода [отправки файла](https://yandex.com/dev/messenger/doc/ru/api-requests/message-send-file.md).

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](../data-types.md#file)## в [обновлении](update-polling.md#priem-fajla) или из ответа метода [отправки файла](message-send-file.md) | — |
| `filename`    | Нет  | `string` | Имя файла | — |
| `thread_id`   | Нет  | `integer` | Идентификатор треда (timestamp сообщения) | — |
| `message_id`  | Нет  | `integer` | ID сообщения для редактирования | Сообщение должно быть из того же чата |
| `reply_message_id` | Нет  | `integer` | ID сообщения, на которое будет ответ | Сообщение должно быть из того же чата |
| `reply_quote` | Нет  | `string` | Фрагмент сообщения, на который будет ответ | Требует `reply_message_id`. Текст должен быть подстрокой исходного сообщения |
| `forwards`    | Нет  | ##[Forward](../data-types.md#forward)##`[]` | Сообщения, которые нужно переслать в целевой чат | Нельзя передавать одновременно с `reply_message_id` |
| `disable_notification` | Нет  | `boolean` | Нужно ли отключить уведомление | Значение по умолчанию: `false` |
| `important`            | Нет  | `boolean` | Является ли сообщение важным | Значение по умолчанию: `false` |
| `suggest_buttons`          | Нет          | ##[SuggestButtons](../data-types.md#suggestbuttons)## |Клавиатура с кнопками под сообщением         | Не более 100 кнопок                                                                                            |
| `action_buttons`           | Нет          | ##[ActionButtons](../data-types.md#actionbuttons)## | Кнопки действий под сообщением | Не более 6 кнопок |

(*) Параметры `chat_id` и `login` являются необязательными, но необходимо заполнить хотя бы один из двух:
- При заполнении `chat_id` файл будет отправлен в групповой чат, заданный этим ID.
- При заполнении `login` файл будет отправлен пользователю в приватный чат.

## Ограничения
Ограничения аналогичны [ограничениям](https://yandex.com/dev/messenger/doc/ru/api-requests/message-send-text.md#restriction) для метода отправки текстового сообщения.

## Результат
Результатом успешного запроса является ответ с кодом 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"}
```
