[](https://)1. user
```
@route Post /users
@descripton Reginster new user
@body {"name","email" , "password"}
@access public
```
```
@route Get /users/page=1&limit=10
@descripton get users with paginaton
@body
@access login request
```
```
@route Get /users/me
@descripton get current user info
@body
@access login request
```
```
@route Get /users/admin
@descripton admin get information
@body
@access login request
```
```
@route Get /users/:id
@descripton get users profile
@body
@access login request
```
```
@route Put /users/:id
@descripton Update user profile
@body {"name",
"avatarUrl",
"position",
"team",
"imageUrl",
"phone1",
"phone2",
"manager",}
@access login request
```
```
@route delete /users/:id
@descripton delete user
@body
@access login request
```
2. task
```
@route Post /tasks
@descripton create new task
@body
{"name",
"dueAt",
"assignee",
"project",
"important",
"urgent"}
@access login request
```
```
@route Put /tasks/:id
@descripton update a task
@body {"name",
"dueAt",
"urgent",
"important",
"assignee",
"status",
"progress"}
@access login request
```
```
@route Put /review/:id
@descripton write a comment
@body
@access login request
```
```
@route Delete /tasks/:id
@descripton delete a task
@body
@access login request
```
```
@route Get /tasks/page=1&limit=10
@descripton get tasks with paginaton
@body
@access login request
```
```
@route Get /tasks/:id
@descripton get task profile
@body
@access login request
```
3. project
```
@route Post /projects
@descripton create new project
@body
{"name",
"description",
"team",
"assignee",
}
@access login request
```
```
@route Get /projects/page=1&limit=10
@descripton get projects with paginaton
@body
@access login request
```
```
@route Get /projects/:id
@descripton get project profile
@body
@access login request
```
```
@route Delete /projects/:id
@descripton delete a project
@body
@access login request
```
```
@route Put /projects/:id
@descripton update a project
@body {"name",
"description",
"assignee",
"status",}
@access login request
```
4. team
```
@route Post /teams
@descripton create New Team
@body {"name",
"manager"}
@access login request
```
```
@route Get/teams/page=1&limit=10
@descripton get teams with paginaton
@body
@access login request
```
```
@route Get /teams/:id
@descripton get Single Team
@body
@access login request
```
```
@route Put /teams/:id
@descripton update Single Team
@body {"name",
"manager",
"workers"}
@access login request
```
5. file
```
@route Post /files
@descripton create new file
@body {"name",
"FileUrl",
"projectId",
"taskId"}
@access login request
```
```
@route Get /files
@descripton get list files
@body
@access login request
```
6. auth
```
@route Post /auth/login
@descripton log in with username and password
@body {email , password}
@access public
```