> For the complete documentation index, see [llms.txt](https://docs.graspil.com/ru/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.graspil.com/ru/app/reports/events.md).

# Список событий

На этой странице собраны все **стандартные события**, которые graspil создаёт автоматически — без какой-либо настройки с вашей стороны. Кроме них вы можете создавать собственные (пользовательские) события — через [API](/ru/api/send-events.md), [триггеры](/ru/app/actions.md), [автоматизацию](/ru/app/broadcast.md), [мини-апп](/ru/connect-bot/mini-app.md#svoi-sobytiya) или [цели/конверсии](/ru/api/send-event.md). Такие события здесь не описаны, так как они уникальны для каждого продукта.

{% hint style="info" %}
У части событий (например, нажатие кнопки, текстовая команда, emoji-реакция) название события **динамическое** — это означает, что вместо фиксированного `event_name` подставляется конкретное значение (текст кнопки, название команды, символ эмодзи и т.д.). Такие случаи отдельно отмечены в таблицах ниже.
{% endhint %}

***

## События бота — жизненный цикл пользователя

Базовые события, которые отражают, как пользователь взаимодействует с ботом в приватном чате: первый запуск, повторный запуск, блокировка и возврат.

| Событие                    | Когда срабатывает                                                                            |
| -------------------------- | -------------------------------------------------------------------------------------------- |
| `new_user`                 | Пользователь впервые отправил `/start` боту                                                  |
| `start_repeat`             | Пользователь, который уже был в боте, повторно отправил `/start` (например, по новой ссылке) |
| `user_left`                | Пользователь заблокировал бота                                                               |
| `user_return`              | Пользователь, ранее заблокировавший бота, разблокировал его                                  |
| `connected_website`        | Пользователь впервые подключил веб-сайт/виджет (через `write_access_allowed`)                |
| `connected_website_repeat` | Пользователь повторно подключил тот же веб-сайт/виджет                                       |

## События канала и группы

Аналогичные события, но для пользователей канала или группы, в которой состоит ваш бот (через права администратора).

| Событие                | Когда срабатывает                                                                                                                                   |
| ---------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user_chat_new`        | Пользователь впервые присоединился к каналу/группе                                                                                                  |
| `user_chat_return`     | Пользователь вернулся в канал/группу после того, как покинул его ранее                                                                              |
| `user_chat_left`       | Пользователь самостоятельно покинул канал/группу                                                                                                    |
| `user_chat_kicked`     | Пользователь был исключён из канала/группы администратором                                                                                          |
| `chat_member_<status>` | Изменение статуса участника на любой другой (например `chat_member_administrator`, `chat_member_restricted`) — `<status>` подставляется динамически |
| `channel_post`         | В канале опубликован новый пост                                                                                                                     |

## События мини-приложения (Mini App)

| Событие                | Когда срабатывает                                                                               |
| ---------------------- | ----------------------------------------------------------------------------------------------- |
| `web_app_new_init`     | Пользователь впервые открыл мини-приложение бота                                                |
| `web_app_init`         | Пользователь повторно открыл мини-приложение (уже открывал его ранее)                           |
| `web_app_anon_init`    | Мини-приложение открыто анонимно, без идентификатора Telegram-пользователя                      |
| `new_user_webapp`      | Новый пользователь подтвердил доступ к данным (`write_access_allowed`) внутри мини-приложения   |
| `write_access_allowed` | Пользователь разрешил боту доступ к отправке сообщений (по запросу из мини-приложения или бота) |

## Входящие сообщения и контент

Любое сообщение, полученное от пользователя, создаёт событие. Если текст сообщения совпал с настроенной [командой](/ru/app/actions.md) или [целью](/ru/api/send-event.md), вместо базового события будет создано соответствующее им событие.

| Событие          | Когда срабатывает                                                                                              |
| ---------------- | -------------------------------------------------------------------------------------------------------------- |
| `message`        | Получено текстовое сообщение                                                                                   |
| `photo`          | Получено фото                                                                                                  |
| `video`          | Получено видео                                                                                                 |
| `audio`          | Получено аудио                                                                                                 |
| `document`       | Получен документ/файл                                                                                          |
| `voice`          | Получено голосовое сообщение                                                                                   |
| `video_note`     | Получена видеозаметка (круглое видео)                                                                          |
| `animation`      | Получена анимация/GIF                                                                                          |
| `sticker`        | Получен стикер                                                                                                 |
| `poll`           | Получен опрос                                                                                                  |
| `location`       | Получена геолокация                                                                                            |
| `contact`        | Получен контакт                                                                                                |
| `edited_message` | Пользователь отредактировал ранее отправленное сообщение                                                       |
| `/<команда>`     | Вызвана команда, отличная от `/start` — название команды подставляется динамически (например `/help`, `/menu`) |

## Кнопки и инлайн-режим

| Событие                              | Когда срабатывает                                                              |
| ------------------------------------ | ------------------------------------------------------------------------------ |
| текст кнопки (динамически)           | Нажата inline-кнопка с коротким текстом — название события равно тексту кнопки |
| `callback_query`                     | Нажата inline-кнопка без текста или с длинным текстом                          |
| `InlineQuery`                        | Пользователь воспользовался inline-режимом бота (`@botusername запрос`)        |
| `chosen_inline_result`               | Пользователь выбрал один из вариантов inline-поиска                            |
| текст кнопки мини-аппа (динамически) | Мини-приложение отправило данные через `web_app_data`                          |

## Платежи

| Событие              | Когда срабатывает                                              |
| -------------------- | -------------------------------------------------------------- |
| `pre_checkout_query` | Пользователь инициировал оплату (подтверждение перед платежом) |
| `successful_payment` | Платёж успешно завершён                                        |
| `refunded_payment`   | Платёж был возвращён                                           |
| `shipping_query`     | Пользователь выбрал способ доставки при оформлении оплаты      |

## Реакции и прочие действия

| Событие                                   | Когда срабатывает                               |
| ----------------------------------------- | ----------------------------------------------- |
| эмодзи (динамически), например `👍`, `❤️` | Пользователь поставил реакцию на сообщение бота |
| `custom_emoji`                            | Пользователь поставил кастомную emoji-реакцию   |
| `business_connect`                        | К боту подключён бизнес-аккаунт Telegram        |
| `business_disconnect`                     | Бизнес-аккаунт Telegram отключён от бота        |

## Исходящие сообщения от бота

Создаются при каждой успешной отправке сообщения ботом (на ошибочные отправки события не создаются).

| Событие          | Когда срабатывает                |
| ---------------- | -------------------------------- |
| `sendmessage`    | Бот отправил текстовое сообщение |
| `sendphoto`      | Бот отправил фото                |
| `sendvideo`      | Бот отправил видео               |
| `sendaudio`      | Бот отправил аудио               |
| `senddocument`   | Бот отправил документ            |
| `sendvoice`      | Бот отправил голосовое сообщение |
| `sendvideonote`  | Бот отправил видеозаметку        |
| `sendanimation`  | Бот отправил анимацию/GIF        |
| `sendsticker`    | Бот отправил стикер              |
| `sendinvoice`    | Бот отправил счёт на оплату      |
| `sendlocation`   | Бот отправил геолокацию          |
| `sendmediagroup` | Бот отправил группу медиафайлов  |
| `forwardmessage` | Бот переслал сообщение           |

## Рассылки

| Событие           | Когда срабатывает                                |
| ----------------- | ------------------------------------------------ |
| `gs_mailing_send` | Сообщение рассылки успешно доставлено получателю |

## Реферальная программа

| Событие           | Когда срабатывает                                           |
| ----------------- | ----------------------------------------------------------- |
| `referral_signup` | Новый пользователь активировался по реферальной ссылке/коду |
| `referral_reward` | Рефереру начислена награда за приведённого пользователя     |
| `referral_payout` | Рефереру выплачено вознаграждение из реферальной программы  |

## Автоматизация (workflow)

Эти события создаёт сам движок автоматизации — независимо от того, что настроено внутри конкретной цепочки. Они позволяют строить отчёты по работе самих автоматизаций (сколько пользователей попало в цепочку, на каком шаге чаще всего отваливаются, как часто случаются ошибки).

| Событие            | Когда срабатывает                                                                     |
| ------------------ | ------------------------------------------------------------------------------------- |
| `workflow_started` | Сработал триггер автоматизации, и для пользователя запущено новое прохождение цепочки |
| `node_executed`    | Успешно выполнен шаг автоматизации (условие или действие, кроме самого триггера)      |
| `workflow_failed`  | Выполнение шага автоматизации завершилось ошибкой, и цепочка остановилась             |

Дополнительно автоматизация может создавать события и другими способами:

| Событие                        | Когда срабатывает                                                                                                                                          |
| ------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
| произвольное имя (динамически) | Workflow-автоматизация выполнила действие «Создать событие» — имя и значение события задаются в настройке действия и могут содержать подстановки из данных |
| произвольное имя (динамически) | Событие отправлено через [API `/v1/send-event`](/ru/api/send-events.md) — имя задаёт тот, кто отправляет событие                                           |

> Целевые события (достижение «цели»/конверсии) и события из настроенных вами команд (fake commands) тоже попадают в общую таблицу событий, но их название и смысл зависят от того, что вы сами настроили в личном кабинете — поэтому единого списка для них нет.
