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 .
- 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 .
All the requests made to the API need an Authorization header with a valid token and the prefix Bearer
Authorization: Bearer <token>
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
POST /api/login/
POST /api/register/
POST /api/logout/
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
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
Refer this Documentation Pdf for more details https://github.com/shantanu1905/CheckList-Api/blob/master/CheckListApi.pdf builded with Django REST Swagger
- git
- pip
- Clone the repository
git clone https://github.com/shantanu1905/CheckList-Api.git
pip install -r requirements.txt
python manage.py migrate
python manage.py createsuperuser
python manage.py runserver
the application will be running on port 8000 http://0.0.0.0:8000/