Approval-режим (заявки на вступление)
Чат можно перевести в режим, где новые участники должны быть одобрены админом перед вступлением.
Включение
В настройках чата (для админа) → «Тип ссылки» → «Заявка на вступление». Или программно через createChatInviteLink:
POST /createChatInviteLink
{
"chat_id": -100123,
"creates_join_request": true
}
Поток
- Юзер кликает invite-ссылку с
creates_join_request: true. - Создаётся заявка. Юзер видит «Заявка отправлена».
- Бот получает обновление
chat_join_request:
{
"update_id": 123,
"chat_join_request": {
"chat": {"id": -100123, "type": "supergroup", "title": "..."},
"from": {"id": 999, "first_name": "Иван", "username": "ivan"},
"date": 1735689600,
"bio": "Привет, я хочу вступить",
"invite_link": {"invite_link": "https://..."}
}
}
- Бот / админ-человек одобряет или отклоняет.
Одобрение
POST /approveChatJoinRequest
{
"chat_id": -100123,
"user_id": 999
}
Юзер становится участником, получает уведомление.
Отклонение
POST /declineChatJoinRequest
{
"chat_id": -100123,
"user_id": 999
}
Юзер видит «Заявка отклонена», может попробовать снова.
Use cases
- Закрытые комьюнити: одобряет владелец вручную или бот по правилам.
- Капча: бот шлёт юзеру в ЛС задачу, при правильном ответе одобряет автоматически.
- Ограниченный поток: одобряет N человек в день.