SmartQuery /ВОПРОС → ПРИМЕР → ПОНЯТНЫЙ ОТВЕТ
Веб-разработка

Telegram Bot API: изменить подпись к медиа

В Telegram caption — подпись к поддерживаемому медиа, например фото. Обычное текстовое сообщение редактируют другим методом. Кнопки не становятся частью строки caption: inline-клавиатура передаётся отдельной структурой reply_markup.

Параметры

Для обычного сообщения нужны chat_id и message_id, для inline-сообщения используется inline_message_id. Передавайте новый caption в пределах текущего лимита API и согласованно используйте parse_mode либо caption_entities.

{
  "chat_id": 123456789,
  "message_id": 42,
  "caption": "Обработка завершена"
}

Это пример JSON-тела запроса к editMessageCaption, а не реальные идентификаторы. Токен бота хранится на сервере; не помещайте его в публичную страницу или клиентский JavaScript.

Статус, ссылки и кнопки

  • Подпись может показывать этап обработки, но не обновляйте её на каждый процент без необходимости.
  • Ссылки оформляйте допустимыми entities/разметкой и проверяйте недоверенный текст.
  • Для «Подтвердить» или «Отклонить» задайте InlineKeyboardMarkup отдельно и обрабатывайте callback query.

Ошибки

Проверьте доступ бота к сообщению и возможность редактирования его типа. Обрабатывайте отказ API, повтор с неизменившейся подписью и rate limits. Если обновление не удалось, не отмечайте задачу как успешно опубликованную только потому, что сервер обработал исходную работу.

Документация