CheckList Api
created with django rest framework and JWT(Json Web Tokens for Authentication)
Description
This API is created with help of Django rest framework and for user authentication , I have used JWT(Json Web Tokens).
Working of API : In this Api user can Checklist just like todolist, but not similar to todoList . In TodoList we can only add todo ,but can't add subitems in todo . But in CheckList API we can create CheckList and add Subitems in created checklist .
Api Features
- User Authentication by JWT
- User Authorization(logedin user can only see his/her data.)
- User Can peforn CURD operation on database in order to retrive his/her data .
Auth system
All the requests made to the API need an Authorization header with a valid token and the prefix Bearer
Authorization: Bearer
In order to obtain a valid token it's necesary to send a request POST /api/login/
with username and password. To register a new user it's necesary to make a request POST /api/register
with the params/form data:
username String
password String
password2 String
End Points
Auth
POST /api/login/
POST /api/register/
POST /api/logout/
Endpoints to access CheckList
GET /api/checklist/
-- Get all CheckList dataPOST /api/checklist/
-- Create CheckList dataGET /api/checklist/{CheckList_id}
-- Get specific CheckList dataPUT /api/checklist/{CheckList_id}
-- To Update specific CheckList dataDELETE /api/checklist/{CheckList_id}
-- To Delete specific CheckList data
Endpoints to access CheckList
GET /api/checklist/
-- Get all CheckList dataPOST /api/checklistItem/create/
-- Create CheckListItem dataGET /api/checklistItem/{CheckListItem_id}
-- Get specific CheckListItem dataPUT /api/checklistItem/{CheckListItem_id}
-- To Update specific CheckListItem dataDELETE /api/checklistItem/{CheckListItem_id}
-- To Delete specific CheckListItem data
Documentation
Refer this Documentation Pdf for more details https://github.com/shantanu1905/CheckList-Api/blob/master/CheckListApi.pdf builded with Django REST Swagger
Installation process
Install the system dependencies
- git
- pip
Get the code
- Clone the repository
git clone https://github.com/shantanu1905/CheckList-Api.git
Install the project dependencies
pip install -r requirements.txt
Run the command to generate the database
python manage.py migrate
Generate super user
python manage.py createsuperuser
Run the server
python manage.py runserver
the application will be running on port 8000 http://0.0.0.0:8000/