Медиа

Загрузка

Сначала загрузите файл multipart-запросом POST /v1/bot/media. Максимальный размер — 200 МБ. Ответ содержит безопасный media URL, имя, MIME-тип и размер.

curl -X POST https://chat.wokey.pro/_keychat/v1/bot/media \
  -H "Authorization: Bearer $KEYCHAT_BOT_TOKEN" \
  -F "file=@photo.jpg"

Вложение

В сообщении media.type принимает image, video или file. Для галереи передайте несколько элементов; клиент сам строит сетку и сохраняет исходные пропорции при загрузке.

Внешние URL

Не передавайте произвольные внешние ссылки вместо загрузки. Это защищает пользователей от трекинга, исчезающих файлов и смешанного содержимого.

Практика с SDK

Сначала загрузите бинарные данные через SDK, затем используйте возвращённый media descriptor в attachments. Не подменяйте его произвольным внешним URL.

Сохраняйте width, height и duration_ms, когда они известны: клиент сможет зарезервировать место и избежать скачков интерфейса.

Примеры использования

const bytes = await readFile('photo.png');
const media = await bot.uploadMedia(new Blob([bytes], { type: 'image/png' }), 'photo.png');
await bot.sendMessage({ chat_id: chatId, content: {
  attachments: [{ type: 'image', ...media }]
}});
© 2026. Key Chat.