Docs/Акаунт

Регистрация и вход

Два начина да си направиш акаунт — email/парола или Google.

Кога правиш акаунт?

Setup wizard-ът ти позволява първо да попълниш конфигурацията на бота, без регистрация. След като свършиш и видиш preview-а, идва signup wall-ът — там те питаме за акаунт. Идеята е: първо виждаш стойността, после плащаш.

Email + парола

Полета на /register: • **Име** — опционално. • **Имейл** — задължителен; форматът се проверява, disposable домейни се блокират. • **Парола** — минимум **6** символа. • **Потвърждение на паролата** — трябва да съвпада. Има rate limit от 5 регистрации на минута на IP. След „Регистрация“ изпращаме 6-цифрен код на имейла — въвеждаш го на следващия екран. Под бутона „Създай акаунт“ има разделител „или“ и бутон „Регистрирай с Google“ — описан в следващата стъпка.
Регистрационна форма на /register с email/парола и Google бутон

Google Sign-In

Втори бутон на /register и /login — „Sign in with Google“. Кликаш → Google account picker → връщаш се вече логнат. Scope-ът е `openid email profile` (различен от Google Calendar OAuth-а, който се ползва само за календара). Имейлът от Google автоматично е верифициран — без 6-цифрен код. Ако вече имаш акаунт с имейл/парола и решиш да минеш на Google със същия имейл — двата метода се сливат автоматично (запазваме съществуващия user row и добавяме `oauth_provider=google` и `oauth_provider_id`).

Вход в съществуващ акаунт

На /login: имейл + парола (с „Покажи паролата“ toggle, чекбокс „Запомни ме“ и линк „Забравена парола?“) или Google бутон. Rate limit: 10 опита/мин на IP. Ако опиташ да влезеш с парола в акаунт, който е само Google — получаваш специфична грешка „OAUTH_ONLY“ и UI-ят те насочва към Google бутона.

Сесия

След успешен вход се сетва httpOnly cookie `rai_session` — JWT, подписан с HMAC-SHA256, с валидност 30 дни. С „Запомни ме“ cookie-то се пази дълго; без него е session-only. Излизане: `POST /api/auth/logout` (изтрива cookie-то).
Регистрация и вход · rAIceptionist Docs