# Что такое BotProtection?

**BotProtection** - это эффективное решение SDK & Backend для защиты вашей компании от вредоносных атак ботов.

**BotProtection** состоит из двух частей: BotProtection SDK (клиент) и BotProtection machine (сервер). Также присутствует Dashboard для визуализации и статистики.

* BotProtection SDK - это модуль, который включается в платформу
* BotProtection Machine - это сервер, который поднимается в инфраструктуре компании
* BotProtection Dashboard - это веб-страница для мониторинга запросов

BotProtection Machine получает анонимные поведенческие данные с мобильных устройств, а затем анализирует их, чтобы получить результат.

* Если результат меньше 50, то клиент считается человеком.
* Если результат больше 50, то клиент считается ботом.
* Если результат NA, то девайс, с которого собираются данные, неактивен.

При этом коэффициент может варьироваться в зависимости от потребностей компании.

Также BotProtection также при необходимости может регулярно отправлять события в аналитические системы с помощью [отправки метрик](https://docs.mobguards.com/ru/backend-integration/podklyuchenie-metrik).

Для получения дополнительной информации об инфраструктуре — раздел [Архитектура](https://docs.mobguards.com/ru/backend-integration/architecture).

## Взаимодействие с Backend компании

BotProtection работает в двух режимах:

* Активный режим (отсеивание ботов в реальном режиме)
* Пассивный режим (агрегирование статистики и мониторинг)

### Пассивный режим

BotProtection SDK внедряется в платформу и собирает данные о поведении пользователя каждый установленный интервал времени.

### Активный режим

BotProtection SDK внедряется на клиенте и запускается на определенной части вашего приложения. Например, сканирование страницы регистрации.

Когда пользователь или бот входит в защищенную часть приложения, BotProtection SDK запускается и собирает поведенческие данные, отправляя их на BotProtection Machine. Затем, если это злонамеренный пользователь, у компании появляется несколько возможностей блокировки пользователя - синхронный или асинхронный.

#### Синхронный метод проверки

Клиенту отправляется зашифрованное решение BotProtection (бот или не бот), а затем приложение пересылает его на бэкенд-сервер компании в виде JWT-токена.

Чтобы увидеть точную структуру JWT и расшифровать ее, необходимо ознакомится с разделом [Работа с JWT](https://docs.mobguards.com/ru/backend-integration/jwt-token).

#### Асинхронный метод проверки

Если компании не нужны проверки в реальном времени, можно запросить решения BotProtection только для определенных UUID (уникальный идентификатор пользователя).

В этой схеме сервер отправляет POST-запрос на компьютер BotProtection. Дополнительная информация об этом API приведена в разделе [Описание асинхронного API](https://docs.mobguards.com/ru/backend-integration/api-description).


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.mobguards.com/ru/master.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
