revokechatinvitelink
revokechatinvitelink — отзывает (аннулирует) пригласительную ссылку, созданную ботом.
📝 Назначение
Используется для немедленного аннулирования пригласительной ссылки, после чего она становится недействительной. Если отзывается основная ссылка чата, Telegram автоматически генерирует новую основную ссылку.
Когда это нужно:
- Ссылка была скомпрометирована (попала в открытый доступ)
- Нужно срочно прекратить доступ по старой ссылке
- Обновление пригласительной ссылки для безопасности чата
⚠️ Важно:
- Для основной ссылки (получаемой через
exportchatinvitelink) — после отзыва старая ссылка аннулируется, создаётся новая. - Для дополнительных ссылок (созданных через
createchatinvitelink) — ссылка просто аннулируется без автоматической замены.
⚙️ Параметры
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
| chat_id | Integer/String | ✅ Да | ID группы/канала или @username |
| invite_link | String | ✅ Да | Полная ссылка-приглашение для отзыва |
📍 Результат
После выполнения реакции результат доступен в переменной:
${response.result}
Структура результата — объект ChatInviteLink с полями:
| Поле | Описание |
|---|---|
invite_link |
Ссылка-приглашение (новая, если отозвана основная) |
name |
Название ссылки |
expire_date |
Дата истечения (Unix timestamp) |
member_limit |
Лимит участников |
creates_join_request |
Требуется ли одобрение заявки |
is_primary |
Основная ли ссылка |
is_revoked |
true (ссылка отозвана) |
🔐 Требуемые права бота
| Право | Описание |
|---|---|
| Бот — администратор чата | Обязательное условие |
| can_invite_users | Право приглашать пользователей |
⚠️ Важно: Без права
can_invite_usersреакция вызовет ошибку.
🧪 Примеры использования
Пример 1: Отзыв основной ссылки
Задача: Аннулировать основную ссылку чата (новая создастся автоматически).
Параметры revokechatinvitelink:
chat_id:${chat.id}invite_link:${response.result.invite_link}(из ранее полученной ссылки)
Пример 2: Отзыв дополнительной ссылки
Задача: Аннулировать временную ссылку, созданную для мероприятия.
Параметры revokechatinvitelink:
chat_id:${chat.id}invite_link:https://t.me/joinchat/ABC123def456
Пример 3: Отзыв ссылки по команде администратора
Обработчик: Команда /revoke https://t.me/joinchat/...
Реакции:
revokechatinvitelink→
chat_id:${chat.id}invite_link:${update.match.1}
SendMessage→ текст:Ссылка отозвана.
Пример 4: Отзыв и получение новой основной ссылки
Задача: Перевыпустить основную ссылку и отправить новую администратору.
Реакции:
revokechatinvitelink→
chat_id:${chat.id}invite_link:${old_invite_link}
SendMessage→ текст:Новая основная ссылка: ${response.result.invite_link}
🔄 Особенности поведения
| Ситуация | Поведение |
|---|---|
| Отзыв основной ссылки | Старая аннулируется, новая создаётся автоматически |
| Отзыв дополнительной ссылки | Ссылка аннулируется без автоматической замены |
| Отзыв уже отозванной ссылки | Telegram вернёт ошибку |
| Отзыв ссылки, созданной не ботом | Невозможно (ошибка) |
| Бот не администратор | Реакция вызовет ошибку |
| У бота нет права can_invite_users | Реакция вызовет ошибку |
🔗 Связанные реакции
| Реакция | Назначение |
|---|---|
| createchatinvitelink | Создать новую дополнительную ссылку |
| exportchatinvitelink | Получить основную ссылку |
| editchatinvitelink | Изменить параметры дополнительной ссылки |