# Авторизация, ввод кода на стороне клиента 1. **Сайт:** Пользователь вводит номер телефона. Сайт генерирует **временный уникальный `код` (случайное число)** и сохраняет его в сессии с временем жизни 5 минут. 2. **Сайт:** Через API отправляет это случайное число **в момент запроса** в бота пользователю (и выводит инструкцию как открыть бота). 3. **Бот:** При первом запуске запрашивает номер (чтобы привязать `user_id` Telegram/МАКС к номеру телефона). **При следующих запусках** номер телефона не запрашивается, пользователь находится по номеру телефона и сразу отправляется проверочный код. Код удаляется из чата с пользователем через 5 мин. 4. **Пользователь** вводит этот код на сайте. 5. **Сайт** сверяет введенный код с тем, что отправил в бота. # API Endpoint ## Отправить проверочный код Номер телефона нормализуется на клиенте до 79********* - 11 цифр, начиная с 7. ``` Curl curl -X POST "https://api.botboom.ru/shop/codeauth" \ -H "Authorization: Bearer your_token" \ -H "Content-Type: application/json" \ -d '{ "phone": "79204421997", \ "code": 1234 }' ``` # Овет: http 200 ```json { "is_registered": true, "tg_link": "https://t.me/Agrokomplexshop_bot?start=tgauth", "max_link": "https://max.ru/id2328000083_1_bot?start=tgauth" } ``` "is_registered": true - пользователь уже зарегистрирован, код успешно отправлен сразу "is_registered": false - пользователь ещё не регистрировался и должен при входе в бота поделиться номером телефона. Код присылается сразу после отправки номера. ## Проверить что номер телефона уже зарегистрирован. Номер телефона нормализуется на клиенте до 79********* - 11 цифр, начиная с 7. ``` Curl curl -X POST "https://api.botboom.ru/shop/codeauth" \ -H "Authorization: Bearer your_token" \ -H "Content-Type: application/json" \ -d '{ "phone": "79204421997" }' ``` # Овет: Номер зарегистрирован: http 200 ```json { "is_registered": true, "tg_link": "https://t.me/Agrokomplexshop_bot?start=tgauth", "max_link": "https://max.ru/id2328000083_1_bot?start=tgauth" } ``` Номер не зарегистрирован: http 404 ```json { "is_registered": false, "tg_link": "https://t.me/Agrokomplexshop_bot?start=tgauth", "max_link": "https://max.ru/id2328000083_1_bot?start=tgauth" } ```