Превью каналов¶
Превью — это краткие сводки о каналах, взятые с главной страницы канала
https://t.me/<channel>: дешевле полной страницы канала и по умолчанию
кэшируются на час
(PREVIEW_CACHE_TTL).
Оба эндпоинта отвечают 503, если превью отключены через
ENABLE_PREVIEWS=false.
GET /v1/preview/{channel}¶
{
"channel": {
"title": "Pavel Durov",
"subscribers": "10 281 023 subscribers",
"description": "Founder of Telegram.",
"avatar": "https://cdn4.telesco.pe/file/TUoXCel1JUtqk….jpg",
"is_verified": true
}
}
| Поле | Тип | Примечания |
|---|---|---|
title |
string | Название канала |
subscribers |
string | Так, как показывает Telegram, включая слово «subscribers» |
description |
string | null | Простой текст; от ссылок остаётся их текст, <br> превращается в \n |
avatar |
URL | null | null, если Telegram встраивает изображение прямо в страницу |
is_verified |
boolean | Значок верификации |
404 возвращается для несуществующих каналов, приватных каналов,
пользователей и ботов. Неизвестные каналы запоминаются на 60 секунд, так что
повторные запросы не доходят до t.me.
POST /v1/previews¶
Превью до 100 каналов за один вызов, загружаемые параллельно.
curl -X POST http://localhost:8000/v1/previews \
-H 'content-type: application/json' \
-d '{"channels": ["durov", "telegram", "nosuchchannel123"]}'
{
"durov": {"channel": {"title": "Pavel Durov", "subscribers": "10 281 023 subscribers", "description": "Founder of Telegram.", "avatar": "https://…", "is_verified": true}},
"telegram": {"channel": {"title": "Telegram News", "subscribers": "9 257 928 subscribers", "description": "The official Telegram on Telegram. Much recursion. …", "avatar": "https://…", "is_verified": true}}
}
- Ключи — имена пользователей в том виде, в каком они были отправлены; дубликаты загружаются один раз.
- Несуществующие каналы в результат не включаются.
- Если все каналы не удалось загрузить по другой причине (например, t.me
недоступен), запрос завершается этой ошибкой (
503).
Изменено в 2.0
В 1.x весь запрос получал 404, если не находился хотя бы один канал.
2.0 возвращает те каналы, которые удалось загрузить.
Тело запроса: {"channels": [string, …]} с 1–100 корректными именами
пользователей; голый JSON-массив отклоняется с 422.