Project Management
Project Management is an application that is used to track and manage multiple projects. Create Projects, Add Tasks and also label them! You can edit, archive and delete tasks as per your convinience.
#
Auth RoutesIn Project Management App
, the authentication is done with email
and password
credential fields.
You can refer documentation related to Authentication here
#
Profile RoutesThe following Route is related to profile user . This are Privately accessible route.
/api/user
#
1. GET Request URL:
/api/user
HTTP Method: GET
Request Headers:
authorization: encodedToken
Response Body:
{ data: { user: Object; }}
Functionality: This API call gets all user's data from the db.
#
Project RoutesThe following Routes are relating to Projects. These are Privately accessible routes.
/api/projects
#
1. GET Request URL:
/api/projects
HTTP Method: GET
Request Headers:
authorization: encodedToken
Response Body:
{ data: { projects: Array; }}
Functionality: This API call gets all user's projects from the db.
/api/projects/:projectId
#
2. GET Request URL:
/api/projects/:projectId
HTTP Method: GET
Request Headers:
authorization: encodedToken
Response Body:
{ data: { project: Object; }}
Functionality: This API call gets a particular user project from the db.
/api/projects
#
3. POST Request URL:
/api/projects
HTTP Method: POST
Request Headers:
authorization: encodedToken
Request Body:
{ project;}
Response Body:
{ data: { projects: Array; }}
Functionality: This API call creates a new user project in the db.
/api/projects/:projectId
#
4. POST Request URL:
/api/projects/:projectId
HTTP Method: POST
Request Headers:
authorization: encodedToken
Request Body:
{ project;}
Response Body:
{ data: { projects: Array; }}
Functionality: This API call edits a user project in the db.
/api/projects/:projectId
#
5. DELETE Request URL:
/api/projects/:projectId
HTTP Method: DELETE
Request Headers:
authorization: encodedToken
Response Body:
{ data: { projects: Array, archives: Array }}
Functionality: This API call deletes a user project and its corresponding archives in the db.
#
Task RoutesThe following Routes are relating to Task. These are Privately accessible routes.
/api/tasks/:projectId
#
1. GET Request URL:
/api/tasks/:projectId
HTTP Method: GET
Request Headers:
authorization: encodedToken
Response Body:
{ data: { tasks: Array; }}
Functionality: This API call gets all user's tasks of a particular project from the db.
/api/tasks/:projectId/:taskId
#
2. GET Request URL:
/api/tasks/:projectId/:taskId
HTTP Method: GET
Request Headers:
authorization: encodedToken
Response Body:
{ data: { task: Object; }}
Functionality: This API call gets user's task of a particular project from the db.
/api/tasks/:projectId/
#
3. POST Request URL:
/api/tasks/:projectId/
HTTP Method: POST
Request Headers:
authorization: encodedToken
Request Body:
{ task;}
Response Body:
{ data: { tasks: Array; }}
Functionality: This API call adds a task to user project from the db.
/api/tasks/:projectId/:taskId
#
4. POST Request URL:
/api/tasks/:projectId/:taskId
HTTP Method: POST
Request Headers:
authorization: encodedToken
Request Body:
{ task;}
Response Body:
{ data: { tasks: Array; }}
Functionality: This API call gets user's task of a particular project from the db.
/api/tasks/:projectId/:taskId
#
5. DELETE Request URL:
/api/tasks/:projectId/:taskId
HTTP Method: DELETE
Request Headers:
authorization: encodedToken
Response Body:
{ data: { tasks: Array; }}
Functionality: This API call gets user's task of a particular project from the db.
#
Label RoutesThe following Routes are relating to Labels. These are Privately accessible routes.
/api/labels/:projectId
#
1. GET Request URL:
/api/labels/:projectId
HTTP Method: GET
Request Headers:
authorization: encodedToken
Response Body:
{ data: { labels: Array; }}
Functionality: This API call gets all user's labels of a particular project from the db.
/api/labels/:projectId/:labelName
#
2. POST Request URL:
/api/labels/:projectId/:labelName
HTTP Method: POST
Request Headers:
authorization: encodedToken
Request Body: {}
Response Body:
{ data: { labels: Array; }}
Functionality: This API call adds a new label of a particular project from the db.
/api/labels/:projectId/:labelName/edit
#
3. POST - Request URL:
/api/labels/:projectId/:labelName/edit
- HTTP Method: POST
- Request Headers:
authorization: encodedToken
- Request Body:
{ label;}
Response Body:
{ data: { labels: Array; }}
Functionality: This API call edits a label of a particular project from the db.
/api/labels/:projectId/:labelName
#
4. DELETE Request URL:
/api/labels/:projectId/:labelName
HTTP Method: DELETE
Request Headers:
authorization: encodedToken
Response Body:
{ data: { labels: Array; }}
Functionality: This API call deletes a label of a particular project from the db.
#
Archives RoutesThe following Routes are relating to Archives. These are Privately accessible routes.
/api/archives
#
1. GET Request URL:
/api/archives
HTTP Method: GET
Request Headers:
authorization: encodedToken
Response Body:
{ data: { archives: Array; }}
Functionality: This API call gets all user's archives from the db.
/api/archives/:projectId/:taskId
#
2. POST Request URL:
/api/archives/:projectId/:taskId
HTTP Method: POST
Request Headers:
authorization: encodedToken
Request Body: {}
Response Body:
{ data: { archives: Array, tasks: Array }}
Functionality: This API call archives a task of a particular project from the db.
/api/archives/restore/:taskId
#
3. POST Request URL:
/api/archives/restore/:taskId
HTTP Method: POST
Request Headers:
authorization: encodedToken
Request Body: {}
Response Body:
{ data: { archives: Array, tasks: Array }}
Functionality: This API call restores an archived task of a particular project from the db.
/api/archives/delete/:taskId
#
4. DELETE Request URL:
/api/archives/delete/:taskId
HTTP Method: DELETE
Request Headers:
authorization: encodedToken
Response Body:
{ data: { archives: Array; }}
Functionality: This API call deletes an archived task of a particular project from the db.