Skip to content

alikhan902/Phone_Auth

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Тестовое задание с авторизацией по номеру телефона

Проект на Django с регистрацией и входом по одноразовому коду (OTP), а также системой инвайт-кодов. Размещен на бесплатном хостинге: https://phone-auth-52ep.onrender.com

🔐 Авторизация

Проект использует OTP (одноразовый код), отправляемый на номер телефона. Аутентификация реализована без паролей.

Этапы:

  1. /send-code/ — отправка кода по номеру телефона.
  2. /verify-code/ — подтверждение кода и вход.
  3. /register/ — регистрация нового пользователя.

📦 API Документация

🔸 POST /send-code/

Описание: Отправка OTP-кода.
Параметры:

{
  "phone_number": "+79991234567"
}

🔸 POST /verify-code/

Описание: Вход по OTP.
Параметры:

{
  "phone_number": "+79991234567",
  "code": "123456"
}

Ответ:

{
  "detail": "Успешный вход",
  "username": "testuser",
  "invite_code": "XYZ123"
}

🔸 POST /register/

Описание: Регистрация пользователя.
Параметры:

{
  "username": "newuser",
  "password": "secure_password",
  "profile": {
    "phone_number": "+79998887766"
  }
}

🔸 GET /profile/

Описание: Информация о текущем пользователе и его приглашённых.

🔐 Доступ: только авторизованные пользователи.


🔸 POST /profile/activate-code/

Описание: Активация инвайт-кода. Код после активации не изменен. Параметры:

{
  "activated_invite": "XYZ123"
}

🗃️ Используемые технологии

  • Python 3.x
  • Django
  • PostgreSQL
  • DRF (Django REST Framework)

📎 Примечания

  • В режиме разработки код возвращается в ответе. В продакшене он должен отправляться по SMS.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages