This project implements a Task Management API with the following features:
-
Create Task:
- Input: Title, Description, Due Date
- Authorization: JWT token required
-
Create Subtask:
- Input: Task ID
-
Get All User Tasks:
- Authorization: JWT token required
- Filters: Priority, Due Date, Pagination
-
Get All User Subtasks:
- Authorization: JWT token required
- Filters: Task ID (optional)
-
Update Task:
- Authorization: JWT token required
- Updateable Fields: Due Date, Status (TODO or DONE)
-
Update Subtask:
- Authorization: JWT token required
- Updateable Field: Status (0 or 1)
-
Delete Task:
- Authorization: JWT token required
- Soft deletes the specified task.
-
Delete Subtask:
- Authorization: JWT token required
- Soft deletes the specified subtask.
-
created cron jobs Logic:
- Priority based cron job logic
- voice call cron job using twillo.
git clone https://github.com/mrcoder57/backend-assignment.git
cd backend-assignment
npm install
npm start
## Api docs usingswagger
visit https://backend-assigment1.onrender.com/api-docs/