{"id":21126591,"url":"https://github.com/foxfix/api_for_user","last_synced_at":"2026-04-27T17:05:16.984Z","repository":{"id":168516425,"uuid":"88917949","full_name":"Foxfix/api_for_User","owner":"Foxfix","description":null,"archived":false,"fork":false,"pushed_at":"2017-07-20T15:06:02.000Z","size":21,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-21T05:42:10.643Z","etag":null,"topics":["django","django-rest-framework","jwt","python3"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Foxfix.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-04-20T23:04:23.000Z","updated_at":"2018-03-22T12:49:55.000Z","dependencies_parsed_at":"2023-06-17T12:45:29.297Z","dependency_job_id":null,"html_url":"https://github.com/Foxfix/api_for_User","commit_stats":null,"previous_names":["foxfix/api_for_user"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Foxfix%2Fapi_for_User","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Foxfix%2Fapi_for_User/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Foxfix%2Fapi_for_User/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Foxfix%2Fapi_for_User/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Foxfix","download_url":"https://codeload.github.com/Foxfix/api_for_User/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243573168,"owners_count":20312879,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["django","django-rest-framework","jwt","python3"],"created_at":"2024-11-20T04:42:42.677Z","updated_at":"2025-12-29T17:14:00.280Z","avatar_url":"https://github.com/Foxfix.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# api_for_User\n\n    git clone https://github.com/Foxfix/api_for_User_AbstractUser.git\n    cd api_for_User_AbstractUser/\n    pip install -r requirements.txt\n    python manage.py runserver\n    python manage.py migrate\n    python manage.py createsuperuser\n    \n    http://127.0.0.1:8000/api/register/    регистрация клиента\n    http://127.0.0.1:8000/api/login/       вход \n    http://127.0.0.1:8000/api/id/          личные данные клиента по id (доступны только владельцу\n    http://127.0.0.1:8000/api/             список клиентов. Доступен только админу.           \n    \nПоля first_name,last_name, email, passport_number  обязательны при регистрации.\nКогда пользователь создает учетную запись, он или она должны подтвердить личность.\nЯ использовала [JWT](http://getblimp.github.io/django-rest-framework-jwt) token\nТокен генерится для каждого раза при входе. Без него доступ к информации закрыт.\n\nАдминистраторов можно создавать из админ панели, назначив им определенные права. \nДоступ к superuser простым админам закрыт. Также у них нет возможности назначать права is_staff и is_superuser.\nРазрешено только активирование зарегистрированных клиентов.\n    \nТестим помощью cURL.\n\n    curl -X GET http://127.0.0.1:8000/api/  \n    {\"detail\":\"Authentication credentials were not provided.\"}\n    \n    Cписок клиентов доступен только админу\n\n    Логинимся http://127.0.0.1:8000/api/login/  под админом, получаем токен\n  ![api](http://ipic.su/img/img7/fs/joxi_screenshot_1492730176307.1492731933.png)\n    \n    Проверяем в терминале\n    \n    curl -H \"Authorization: JWT \u003ctoken\u003e\" http://127.0.0.1:8000/api/\n    \n    Получаем весь список клиентов. При этом, если запросим детали клиента по id\n    \n    curl -H \"Authorization: JWT \u003ctoken\u003e\" http://127.0.0.1:8000/api/1/ \n    {\"detail\":\"You do not have permission to perform this action.\"}\n    \n    получим ограничение. К личной информации по api доступ есть только у владельца.\n    Админы могут просматривать личную информацию профиля клиента в админ панели.\n    Логинимся под клиетом (владельцем профиля) http://127.0.0.1:8000/api/login/\n    Получаем токен.\n    \n    curl -H \"Authorization: JWT \u003ctoken\u003e\" http://127.0.0.1:8000/api/id_клиента/\n    Получаем личную информацию по профилю клиента.\n    {\"first_name\":\"Norma\",\"last_name\":\"Backer\",\"email\":\"our@i.ua\",\"balance\":\"0.0000\",\"username\":\"norma\",\"passport_number\":\"CK123478\",\"accaunt\":true}\n    \n    При этом запрос curl -H \"Authorization: JWT \u003ctoken\u003e\" http://127.0.0.1:8000/api/id_иного_клиента/\n    Выдаст {\"detail\":\"You do not have permission to perform this action.\"}\n    т.к. доступ к личной информации других клиентов ограничен.\n \nСразу при регистрации пользователь создается не активным и ожидает одобрения админа.\nВ админ панели добавлены настройки для ограничения доступа к superuser и отдельным полям,\nопция для подтверждения профиля.\n\n ![api](https://wmpics.pics/di-0V5T.png)\n \n \n Пользователь может изменять свои данные. \n Аккаунт по умолчанию стоит в положении Open, пользователь может изменить на Close, \n тем самым закрыв аккаунт и поставив администратора в известность о возможности удаления профиля.\n \n ![api](http://ipic.su/img/img7/fs/scrin.1492894317.png) \n  ![api](http://ipic.su/img/img7/fs/close.1492894356.png) \n \n    Доп проверки для себя:\n    http://127.0.0.1:8000/login/\n    http://127.0.0.1:8000/logout/\n    http://127.0.0.1:8000/register/\n \n В  [этом](https://github.com/Foxfix/api_client) приложении дополнительные поля для user были добавлены \n иным способом, с использованием связи один-к-одному с пользовательской моделью. \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffoxfix%2Fapi_for_user","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffoxfix%2Fapi_for_user","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffoxfix%2Fapi_for_user/lists"}