# Обработка параметров start (UTM)

## **Что такое параметр start?**

Параметр start - это единственный способ передать данные в бот при его запуске. Чтобы его использовать нужно к обычной ссылке на бот добавить строку `?start={ ваши данные }`, такие ссылки называются Deep links.

С его помощью вы можете сделать реферальную программу или добавить параметры для отслеживания источника пользователей. Подробнее про отслеживание можно прочитать в нашем [блоге](https://graspil.com/ru/post/utm_for_telegram_bot).

<details>

<summary>Как получить эти данные в боте?</summary>

Пример ссылки на бот: `https://t.me/Graspil_bot?start=docs`

Значение, которое получит бот `docs`

Когда пользователь запускает бот, вам приходит [Update](https://core.telegram.org/bots/api#update) типа \
[Message](https://core.telegram.org/bots/api#message). В нем есть параметр `text` который равен `/start`, в случае с deep link параметр `text` будет равен  `/start docs`

**Пример**

{% code overflow="wrap" lineNumbers="true" %}

```json
{
   update_id":10000,
   "message":{
     "date":1441645532,
     "chat":{
        "last_name":"Test Lastname",
        "id":1111111,
        "first_name":"Test",
        "username":"Test"
     },
     "message_id":1365,
     "from":{
        "last_name":"Test Lastname",
        "id":1111111,
        "first_name":"Test",
        "username":"Test"
     },
     "text":"/start docs" // <----- данные переданные в start
   }
}
```

{% endcode %}

</details>

{% hint style="info" %}
Существует ограничение в 64 символа на длину строки в параметре start
{% endhint %}

### Как graspil обрабатывает параметр start?

Graspil использует этот параметр для [отслеживания источника пользователей](https://graspil.com/ru/post/utm_for_telegram_bot). Телеграм не поддерживает дополнительных параметров, поэтому мы добавили возможность настроить логику обработки данного параметра.

Так как в start можно передать только одну строку, мы добавили правила с помощью которых такую строку можно разделить на разные параметры.&#x20;

Например, вам нужно передать источник перехода по ссылке и тип источника (например email). Для этого вы можете использовать строку такого вида `start=source-news1_medium-email` и задать нужные настройки для ее обработки.

В graspil все такие параметры преобразовываются в `параметр=значение` иными словами в таблицу, с которыми в дальнейшем можно работать (строить отчеты, фильтровать данные).

| Параметр | Значение |
| -------- | -------- |
| source   | news1    |
| medium   | email    |

{% hint style="info" %}
О том как настроить обработку параметра start вы можете прочитать в [следующем разделе](https://docs.graspil.com/ru/app/start-utm/configuring-start)
{% endhint %}
