Skip to content

A simple referral tracking system built with Python. The system includes functionality for managing users and tracking referral activities.

Notifications You must be signed in to change notification settings

kaschenkkko/ReferralSystem

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Referral System

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

Referral System - API redoc

Описание проекта:

  • Авторизация по номеру телефона. Первый запрос на ввод номера телефона. Имитировать отправку 4-х значного смс-кода авторизации(задержку на сервере 1-2 сек). Второй запрос на ввод смс-кода.
  • Если пользователь ранее не авторизовывался, то записать его в бд.
  • Запрос на профиль пользователя.
  • Пользователю при первой авторизации нужно присвоить рандомно сгенерированный 6-значный инвайт-код.
  • В профиле у пользователя должна быть возможность ввести чужой инвайт-код(при вводе проверять на существование). В своем профиле можно активировать только 1 инвайт код.
  • В API профиля должен выводиться список пользователей(номеров телефона), которые ввели инвайт код текущего пользователя.

Описание API:

  • POST api/auth/: Аутентификация по номеру телефона.
  • POST api/verify/: СМС-верификация и получение JWT-токена.
  • GET api/users/: Список пользователей.
  • GET api/user/me/: Получить информацию о своём профиле.
  • GET/api/user/{id}/: Получить информацию о профиле по id.
  • POST /api/user/invitation/: Активация инвайт-кода.
  • DELETE /api/user/invitation/: Удаление инвайт-кода.

Запуск проекта:

  • Клонируйте репозиторий и перейдите в него.
  • Перейдите в папку infra и проверьте, что файл .env заполнен данными представленными ниже:
    DEBUG=True
    ALLOWED_HOSTS=127.0.0.1
    
  • Из папки infra запустите docker-compose
    ~$ docker-compose up -d --build
    
  • В контейнере web выполните миграции, создайте суперпользователя и соберите статику
    ~$ docker-compose exec web python manage.py migrate
    ~$ docker-compose exec web python manage.py createsuperuser
    ~$ docker-compose exec web python manage.py collectstatic --no-input
    

После этого проект будет доступен по url-адресу 127.0.0.1

Документация к API будет доступна по url-адресу 127.0.0.1/api/docs

About

A simple referral tracking system built with Python. The system includes functionality for managing users and tracking referral activities.

Topics

Resources

Stars

Watchers

Forks

Languages