createchatinvitelink
createchatinvitelink — создаёт новую дополнительную (вторичную) пригласительную ссылку для чата с возможностью установки ограничений.
📝 Назначение
Используется для создания дополнительных пригласительных ссылок с ограничениями по времени, количеству участников или с требованием одобрения заявок. В отличие от exportchatinvitelink (основная ссылка), эти ссылки можно создавать в неограниченном количестве, настраивать и отзывать.
Когда это нужно:
- Создать временную ссылку для мероприятий (действует только 2 часа)
- Ограничить количество участников, которые могут присоединиться по ссылке
- Создать ссылку с требованием одобрения заявок
- Создать разные ссылки для разных каналов привлечения
💡 Совет: В отличие от основной ссылки (которая одна на чат), дополнительных ссылок можно создать сколько угодно. Они не аннулируют друг друга.
⚙️ Параметры
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
| chat_id | Integer/String | ✅ Да | ID группы/канала или @username |
| name | String | ❌ Нет | Название ссылки (0–32 символа). Видно только в интерфейсе администратора |
| expire_date | Integer | ❌ Нет | Unix timestamp, когда ссылка истечёт |
| member_limit | Integer | ❌ Нет | Максимальное количество участников (1–99999) |
| creates_join_request | Boolean | ❌ Нет | Если true — при переходе по ссылке требуется одобрение заявки |
⚠️ Важно: Параметры
member_limitиcreates_join_requestвзаимоисключающие. Еслиcreates_join_requestвключён,member_limitуказывать нельзя.
📍 Результат
После выполнения реакции результат доступен в переменной:
${response.result}
Структура результата — объект ChatInviteLink с полями:
| Поле | Описание |
|---|---|
invite_link |
Ссылка-приглашение |
name |
Название ссылки |
expire_date |
Дата истечения (Unix timestamp) |
member_limit |
Лимит участников |
creates_join_request |
Требуется ли одобрение заявки |
is_primary |
Основная ли ссылка (false для создаваемых) |
is_revoked |
Отозвана ли ссылка |
🔐 Требуемые права бота
| Право | Описание |
|---|---|
| Бот — администратор чата | Обязательное условие |
| can_invite_users | Право приглашать пользователей |
⚠️ Важно: Без права
can_invite_usersреакция вызовет ошибку.
🧪 Примеры использования
Пример 1: Создание простой дополнительной ссылки
Задача: Создать ссылку без ограничений.
Параметры createchatinvitelink:
chat_id:${chat.id}
Пример 2: Ссылка с ограничением по времени
Задача: Создать ссылку, действительную только 2 часа.
Параметры createchatinvitelink:
chat_id:${chat.id}expire_date:!{time|value:now; plus:2h; output_format:unix}
Пример 3: Ссылка с лимитом участников
Задача: Создать ссылку, по которой могут присоединиться не более 10 человек.
Параметры createchatinvitelink:
chat_id:${chat.id}member_limit:10
Пример 4: Ссылка с названием и требованием одобрения
Задача: Создать ссылку для партнёров, где каждый запрос требует одобрения администратора.
Параметры createchatinvitelink:
chat_id:${chat.id}name:Партнёрская ссылкаcreates_join_request:true
Пример 5: Комбинированная ссылка
Задача: Ссылка на 1 день, не более 50 участников.
Параметры createchatinvitelink:
chat_id:${chat.id}expire_date:!{time|value:now; plus:1d; output_format:unix}member_limit:50
🔄 Особенности поведения
| Ситуация | Поведение |
|---|---|
| member_limit и creates_join_request одновременно | Telegram вернёт ошибку |
| name длиннее 32 символов | Telegram вернёт ошибку |
| expire_date в прошлом | Ссылка будет недействительной с момента создания |
| Бот не администратор | Реакция вызовет ошибку |
| У бота нет права can_invite_users | Реакция вызовет ошибку |
🔗 Связанные реакции
| Реакция | Назначение |
|---|---|
| exportchatinvitelink | Получить основную ссылку |
| editchatinvitelink | Изменить параметры дополнительной ссылки |
| revokechatinvitelink | Отозвать дополнительную ссылку |