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